body {
background:url("../img/body_bg.webp") top center no-repeat;
background-attachment: fixed;
font-family: "Zen Maru Gothic", sans-serif;
font-weight: 400;
font-size:20px;
font-style: normal;
text-align:center;
color:#502800;
}

img{
width:100%;
}

p {
line-height:1.8;
}

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

/*====================================================
HEADER
====================================================*/
#header{
width:600px;
background:#fff;
padding:10px 30px;
margin: auto;
}
#header.sticky{
position:fixed;
z-index:10001;
top:0;
left: 0;
right: 0;
background:rgba(255,255,255,0.9);
}
.flex01 {
display:flex;
justify-content:space-between;
flex-wrap: wrap;
}
h1 {
width:39%;
}
.h_btn {
width:55%;
}

@media (min-width: 751px) {
a[href^="tel:"] {
    pointer-events: none;
    cursor: default;
}
}

/*====================================================
MENU
====================================================*/

.menu {
width:300px;
position:fixed;
top:5%;
left:5%;
}
.menu_ttl {
font-size:120%;
font-weight:bold;
text-align:left;
padding-bottom:3%;
border-bottom:1px solid #502800;
margin-bottom:3%;
}
.menu_list li {
text-align:left;
margin-bottom:5%;
}

/*====================================================
CONTENTS
====================================================*/
main {
width:600px;
background:#faf5e6;
margin:0 auto;
padding-bottom:2%;
}
.w50p {
width:50%;
margin:0 auto;
}
.w90p {
width:90%;
margin:0 auto;
}

#fv {
background:url("../img/fv_bg.svg")center top no-repeat #faf5e6;
background-size:100%;
margin:2% auto ;
padding-top:3%;
}

section {
margin-top:10%;
}
#sect01 {
position:relative;
}
h2 {
font-size:200%;
font-weight:bold;
margin-bottom:7%;
}
h2 .sub {
font-size:60%;
}
.fukidashi01 {
width:20%;
position:absolute;
top:-1%;
left:18%;
}
#sect03 {
position:relative;
}
.fukidashi02 {
width:20%;
position:absolute;
top:-1.5%;
left:10%;
}

.flex02 {
display:flex;
justify-content:space-between;
flex-wrap: wrap;
align-items: baseline;
margin-top:7%;
}
.flex02 li {
width:30%;
text-align:left;
margin-bottom:3%;
}
.flex03 {
display:flex;
justify-content:space-between;
flex-wrap: wrap;
margin-top:5%;
}
.flex03 li {
width:48%;
background:#fff;
border:2px solid #502800;
border-radius:20px;
margin-bottom:4%;
padding:3% 0;
}

.w_box {
position:relative;
background:#fff;
border:4px solid #502800;
border-radius:20px;
padding:10% 4% 4%;
}
.num01,
.num02,
.num03 {
width:18.5%;
position:absolute;
top:-13%;
left:0;
right:0;
margin:auto;
}
.num02 {
top:-10%;
}
.num03 {
top:-11%;
}

.step_ttl {
font-size:200%;
font-weight:bold;
color:#2f87b6;
margin-bottom:3%;
}

.arrow {
width:9%;
margin:3% auto 10%;
}

.flex04 {
display:flex;
justify-content:space-between;
flex-wrap: wrap;
align-items:center;
margin-bottom:4%;
}
.reverse {
flex-direction: row-reverse;
}
.w60p {
width:65%;
}
.w40p {
width:35%;
}


.accordion {
background:#fff;
margin-bottom: 4%;
border-radius: 10px;
}
.accordion summary {
display: flex;
justify-content: space-between;
align-items: center;
position: relative;
padding: 1em 2em 1em 4em;
color: #2f87b6;
font-size:110%;
font-weight: 600;
text-align:left;
background:url(../img/q.webp)left 5% center no-repeat;
background-size:8%;
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 #2f87b6;
border-right: 3px solid #2f87b6;
content: '';
transition: transform .3s;
}
.accordion[open] summary::after {
transform: rotate(225deg);
}
.accordion p {
background:url(../img/a.webp) top 5px left no-repeat;
background-size:8%;
width:90%;
transform: translateY(-10px);
opacity: 0;
margin: 0 auto;
padding: .3em 0 1.5em 2.6em;
color: #502800;
border-top:1px solid #502800;
transition: transform .5s, opacity .5s;
text-align:left;
}
.accordion[open] p {
transform: none;
opacity: 1;
}



.form {
text-align:left;
margin-bottom:10px;
}
.form dt,
.form dd{
width:100%;
display:block;
}
.form dt{
font-weight:bold;
padding:0 0 1rem 0;
}
.form dt .req{
background:#f08232;
color:#fff;
padding:0 0.8rem;
margin-right:0.5em;
border-radius:1rem;
}
.form dt .n_req{
background:#aaa;
color:#fff;
padding:0 0.8rem;
margin-right:0.5em;
border-radius:1rem;
}
.form dd{
padding:0 0 1.5rem 0;
}
.form dd input[type="text"],
.form dd input[type="number"],
.form dd input[type="mail"],
.form dd textarea{
width:100%;
padding:0.7rem;
border-radius:10px;
border:none;
}
.form dd textarea{
}
.province {
width:50%;
padding:1%;
border:none;
border-radius:0.5rem;
}
.date {
width:25%;
padding:1%;
border:none;
border-radius:0.5rem;
}

.form dd textarea::placeholder,
.form dd input::placeholder {
color:#cccccc;
}
.form dd input[type=radio] {
transform: scale(1.5);
margin-right: 0.5rem;
}
.form input[type=checkbox] {
width:1rem;
transform: scale(1.5);
margin-right: 0.5rem;
}
.bg_submit {
border:none;
width:100%;
height:100px;
font-weight:bold;
display:block;
text-align:center;
color:#fff;
border-radius:3rem;
padding:1rem 1.5rem;
background:url("../img/send_btn.webp") no-repeat center center;
background-size:100%;
margin:5% auto 0;
}
.bg_submit02 {
border:none;
width:100%;
height:100px;
font-weight:bold;
display:block;
text-align:center;
color:#fff;
border-radius:3rem;
padding:1.5rem 1.5rem;
background:url("../img/send_btn02.webp") no-repeat center center;
background-size:100%;
margin:5% auto 0;
}
.bg_submit:hover{
opacity:0.7;
cursor:pointer;
}

.form_flex {
display:flex;
justify-content:space-between;
flex-wrap: wrap;
}
.form dd .form_flex input[type="text"] {
width:77%;
}


h3 {
font-size:120%;
padding-top:5%;
}

.law {
padding-top:1%;
}
.law section {
margin-top:5%;
}
.law p {
line-height:2;
}
.thanks {
padding-top:1%;
}
.thanks section {
margin-top:8%;
}

.done {
width:40%;
margin:0 auto 8%;
}
.thankyou {
font-size:150%;
font-weight:bold;
margin:0 auto 5%;
}
.link {
margin:10% auto 0;
}


.sp_ft_btn {
width:80px;
position:fixed;
right:2%;
bottom:5%;
}

/*====================================================
footer
====================================================*/

footer {
background:#2f87b6;
color:#fff;
}
footer p {
padding:1.5% 0;
}
footer p a {
color:#fff;
text-decoration:underline;
}
.privacy_mark {
width:15%;
margin:5% auto;
}

.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-family: "Zen Maru Gothic", sans-serif;
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;}
