@charset "utf-8";

/*
-----------------------------------------------
▼基本デザイン 2024
----------------------------------------------- */

* {
box-sizing:border-box;
margin:0;
padding:0;
border:0;
font-style:normal;
word-break:normal;
word-wrap:break-word;
}

body {
-webkit-text-size-adjust:100%;
line-height:1.6;
color:#333;
-webkit-font-smoothing:subpixel-antialiased;
}

html {font-size: 62.5%; /* ベースを10pxに指定 */}
body {
  font-size: 16px;
  font-size: 1.6rem;
  font-family: "Noto Sans JP", sans-serif;
  font-style: normal;
}

@media screen and (max-width: 767px) {
body {
  font-size: 14px;
  font-size: 1.4rem;
}
}

article,aside,figure,footer,header,main,menu,nav,section {
display:block;
}
audio,canvas,video {
display:inline-block;
}
img {
vertical-align:bottom;
}
input,select {
font-size:100%;
vertical-align:middle;
}
ul,ol {
list-style-type:none;
}
h1,h2,h3,h4,h5,h6,strong {
-webkit-font-smoothing:antialiased;
}
table {
border-collapse:collapse;
border-spacing:0;
}

a {
color:#0066cc;
text-decoration:underline;
}

a:hover,a:active {
text-decoration:underline;
color:#0081d6;
}

a .hv-img {
transition:opacity 0.5s ease-in-out;
}

a:hover .hv-img {
opacity:0.7;
}

/* clearfix */
.cf:after {
display:block;
content:"";
clear:both;
}

@media screen and (max-width: 768px) {
* {
outline:0;
}
}

/*
-----------------------------------------------
flex
----------------------------------------------- */
.flex01{
display:flex;
flex-wrap:wrap;
}

.flex02{
display:flex;
flex-wrap:nowrap;
}

.flex03{
display:flex;
flex-wrap:wrap-reverse;
}

.c-between{
justify-content:space-between;
}

.c-around{
justify-content:space-around;
}

.c-start{
justify-content:flex-start;
}

.c-center{
justify-content:center;
}

.c-end{
justify-content:flex-end;
}

.al-end{
align-items:flex-end;
}

.al-center{
align-items:center;
}

.al-start{
align-items:flex-start;
}

/*
-----------------------------------------------
brなど
----------------------------------------------- */

@media screen and (min-width: 767px) {
.sponly{
display:none;
}
}

@media screen and (max-width: 767px) {
.pconly{
display:none;
}
}

/*
-----------------------------------------------
ディスプレイ
----------------------------------------------- */
.ds-b{display:block;}
.ds-i{display:inline;}
.ds-ib{display:inline-block;}

/*
-----------------------------------------------
寄せ
----------------------------------------------- */
.tac{
text-align:center;
margin-left:auto;
margin-right:auto;
}

.tac-all{
text-align:center;
margin-left:auto;
margin-right:auto;
}

.tal{text-align:left;}
.tar{text-align:right;}

@media screen and (max-width: 767px) {
.tac{
text-align:left;
}
}

/*
-----------------------------------------------
画像のサイズ
----------------------------------------------- */
.mx-img{
max-width:100%;
width:auto;
height:auto;
}

.wd100{width:100%;
height:auto;
}

/*
-----------------------------------------------
font-size
----------------------------------------------- */
.f14{font-size:1.4rem;}
.f15{font-size:1.5rem;}
.f16{font-size:1.6rem;}
.f17{font-size:1.7rem;}
.f18{font-size:1.8rem;}
.f19{font-size:1.9rem;}
.f20{font-size:2.0rem;}
.f22{font-size:2.2rem;}
.f23{font-size:2.3rem;}
.f24{font-size:2.4rem;}
.f25{font-size:2.5rem;}
.f26{font-size:2.6rem;}
.f28{font-size:2.8rem;}
.f30{font-size:3.0rem;}
.f32{font-size:3.2rem;}

/* SP */
@media screen and (max-width: 767px) {
.f16{font-size:1.4rem;}
.f17{font-size:1.5rem;}
.f18{font-size:1.6rem;}
.f20{font-size:1.7rem;}
.f24{font-size:1.8rem;}
.f28{font-size:2.0rem;}
.f30{font-size:2.2rem;}
.f32{font-size:2.4rem;}
}


/*-----------------------------------------------
▼pagetop
----------------------------------------------- */
/*#pagetop {
display:none;
position:fixed;
right:3%;
bottom:4%;
z-index:600;
}
#pagetop a {
display:block;
width:48px;
height:48px;
opacity:.8;
}
#pagetop a:hover {
opacity:.88;
text-decoration:none;
}
@media (max-width:736px) {
#pagetop {
right:10px;
bottom:10px;
}

}*/

h1,h2,h3,h4,h5{
font-weight:bold;
}

strong{
font-weight:bold !important;
}


/* iOSでのデフォルトスタイルをリセット */
input[type="submit"],
input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
  display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
  outline-offset: -2px;
}
/* css_end */
