body {
background:url("../img/body_bg.webp") no-repeat center / cover;
background-attachment: fixed;
font-family: "Noto Sans JP", sans-serif;
color:#464851;
font-size:20px;
font-style: normal;
text-align:center;
}

// <weight>: Use a value from 200 to 900
// <uniquifier>: Use a unique and descriptive class name

img{
width:100%;
}

p {
line-height:2;
padding:4% 0;
}

li {
list-style:none;
padding:0;
}

/*====================================================
CONTENTS
====================================================*/
main {
width:750px;
background:#fff;
margin:0 auto;
position:relative;
}
.w90p {
width:90%;
margin:0 auto;
}
.w100p {
width:100%;
margin:0 auto;
}

h2 {
color:#f28749;
font-size:250%;
font-weight: 800;
font-style: normal;
padding:2% 0;
}

#header {
position:fixed;
z-index:999;
}

#fv {
padding-top:14.3%;
z-index:9999;
}

section {
}

#cta {
position:relative;
z-index:1;
}
.btn {
position:absolute;
bottom:29%;
left:0;
right:0;
margin:auto;
padding:0 5%;
}
.btn02 {
position:absolute;
bottom:38.5%;
left:6%;
width:53%;
margin:auto;
}
#cta02 {
position:relative;
z-index:1;
}
.btn03 {
position:absolute;
bottom:30.2%;
left:0;
right:0;
margin:auto;
padding:0 5%;
}
#sect03 {
background:#f5f5f5;
}

#sect04 {
background:url(../img/faq_bg.webp);
padding-top:7%;
}

.accordion {
margin:2% auto;
padding-bottom:1%;
width:90%;
border-bottom:2px dotted #f28749;
}
.accordion summary {
display: flex;
justify-content: space-between;
align-items: center;
position: relative;
padding: 1em 1em 1em 2em;
font-size:140%;
font-weight: 700;
text-align:left;
background:url(../img/q.webp) no-repeat left center;
background-size:7%;
cursor: pointer;
}
.accordion summary::-webkit-details-marker {
display: none;
}
.accordion summary::after {
transform: translateY(-25%) rotate(45deg);
width: 10px;
height: 10px;
margin-left: 10px;
border-bottom: 3px solid #000;
border-right: 3px solid #000;
content: '';
transition: transform .3s;
}
.accordion[open] summary::after {
transform: rotate(225deg);
}
.accordion p {
transform: translateY(-10px);
opacity: 0;
font-size:120%;
margin: 0 auto;
padding: 0 0 1.5em 2.5em;
font-weight: 600;
transition: transform .5s, opacity .5s;
text-align:left;
background:url(../img/a.webp) no-repeat left top;
background-size:7%;
}
.accordion[open] p {
transform: none;
opacity: 1;
}
.accordion02 {
margin-bottom:3%;
}
.accordion02 summary {
  display: flex;
  justify-content: center; /* 中央基準にしておく */
  align-items: center;
  position: relative;
  padding: 0.5em;
  margin:5% auto 0;
  color:#fff;
  background:#914d49;
  width:60%;
  border-radius:2rem;
  font-size: 110%;
  font-weight: 800;
  cursor: pointer;
}
.accordion02 summary::before,
.accordion02 summary::after {
  content: "▼";
  margin: 0 7%;
}
details[open].accordion02 summary::before,
details[open].accordion02 summary::after {
  content: "▲";
}
.accordion02 summary::-webkit-details-marker {
  display: none;
}

#sect05 {
padding:5% 0 10%;
}
#sect05 p {
font-size:90%;
line-height:1.3;
padding:2% 0;
}

/* ▼ フローティングバナー */
.floating-banner {
  position: fixed;
  bottom: -100px; /* 初期は非表示の位置 */
  left: 0;
  right: 0;
  width: 750px;
  color: #fff;
  text-align: center;
  font-weight: bold;
  transition: bottom 0.4s ease, opacity 0.4s ease;
  opacity: 0;
  z-index: 1000;
  margin:auto;
  padding:10px 40px 0;
  text-align:center;
  background:rgb(255,255,255,0.6);
}

.floating-banner.show {
  bottom: 0;     /* 表示位置 */
  opacity: 1;
}

.floating-banner.hide {
  opacity: 0;
  bottom: -100px;
}
/*====================================================
footer
====================================================*/

footer {
background:#d47272;
color:#fff;
padding:5% 0 13%;
}
footer p {
font-weight:600;
padding:0;
}
footer p a {
color:#fff;
}

.small {
font-size:80%;
}

/*====================================================
詳細設定
====================================================*/

.c_white { color:#fff;}
.c_blue { color:#2f87b6;}
.c_orange { color:#f08232;}

.mt2p {margin-top:2%;}
.mt3p {margin-top:3%;}
.mt4p {margin-top:4%;}
.mt5p {margin-top:5%;}
.mt6p {margin-top:6%;}
.mt7p {margin-top:7%;}
.mt8p {margin-top:8%;}
.mt9p {margin-top:9%;}
.mt10p {margin-top:10%;}

.mb2p {margin-bottom:2%;}
.mb3p {margin-bottom:3%;}
.mb4p {margin-bottom:4%;}
.mb5p {margin-bottom:5%;}
.mb6p {margin-bottom:6%;}
.mb7p {margin-bottom:7%;}
.mb10p {margin-bottom:10%;}

.pt1p {padding-top:1%;}
.pt2p {padding-top:2%;}
.pt3p {padding-top:3%;}
.pt5p {padding-top:5%;}
.pt10p {padding-top:10%;}

.bigger {font-size:120%; }
.big {font-size:150%; }
.fontsmall {font-size:70%; }
.fontsmaller {font-size:90%; }

.fw_b {
font-weight: 700;
font-style: normal;
font-weight:bold;
}

.ctr {text-align:center;}
.t_a_l {text-align:left;}

.t_deco_u {
text-decoration:underline;
}


.sp {display:none;}
