@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;900&display=swap');

/* CSS Document */
*{ margin:0; padding:0; box-sizing:border-box; word-break:break-all;}
div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video { margin:0; padding:0; border:0; outline:0; font-size:100%; vertical-align:baseline; background:transparent;}
ul,ol{ list-style:none;}
html,body {
margin:0 auto;
padding:0;
font-family: 'Noto Sans JP',"ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ","ＭＳ Ｐゴシック",sans-serif;
font-size:20px;
font-size-adjust: 100%;
text-size-adjust: 100%;
text-align:left;
color:#000;
min-width: 1080px;
}
@media screen and (max-width:767px){
html,body{ font-size:2.8vw; min-width:240px; max-width:767px;}
}

/*img*/
img{ border-style:none; vertical-align:bottom; padding:0; line-height:0em; max-width:100%; height:auto;}
figure{margin:0 auto; text-align:center;}

/*txt*/
p{ line-height:1.75em; margin:0 0 1em; padding:0;}
p:last-child{ margin:0;}
strong{ font-weight:bold;}
.bold { font-weight:bold;}
.normal{ font-weight:normal;}
.under_line{ text-decoration:underline;}
.line_through{ text-decoration:line-through;}

.bg_y{
background: linear-gradient(to bottom, rgba(254,228,106,0) 0%, rgba(254,228,106,0) 66%, rgba(254,228,106,1) 67%, rgba(254,228,106,1) 100%);
}

.left{ text-align:left;}
.right{ text-align:right;}
.center{ text-align:center;}

/*link*/
a{ color:inherit; text-decoration:none;}
a:hover{}
.opa{ transition: opacity 0.3s;}
.opa:hover{ opacity: 0.7;}



/*ヘッダー*/
header{ background: #fff; padding: 10px 20px;}
header figure.logo{ text-align: left; line-height: 0;}
header figure.logo img{ height: 50px;}
@media screen and (max-width:767px){
header{ padding: 1.875vw;}
header figure.logo img{ height: 7.5vw;}
}

/*フッター*/
footer{}

/*メイン*/
#content{ overflow:hidden;}
section{ width:100%; margin:0 auto;}
.maincontent{ padding:0; margin:0 auto; width: 1080px;}
@media screen and (max-width:767px){
.maincontent{ padding:0; margin:0 auto; width:85%;}
}

/*tit*/
h1,h2,h3,h4,h5,h6{ line-height: 1.25em; letter-spacing: 0;}



/*form-parts*/
::placeholder{ color: #aaa; line-height: 1.25em;}
::-ms-input-placeholder{ color: #aaa; line-height: 1.25em;}
input[type=submit], button{ -webkit-appearance: none;}
input, textarea, select, button{ width:100%; padding: 0.25em 0.5em; font-size: 0.9rem; line-height: 1.25em; box-sizing: border-box; outline: none; border: none; color:#000; font-family: 'Noto Sans JP',"ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ","ＭＳ Ｐゴシック",sans-serif; vertical-align: bottom; background: #eff1f0;}
textarea{ text-align: left; height: 4.25em; font-weight: normal;}
@media screen and (max-width:767px){
input, textarea, select, button{ padding: 0.5em 0.5em; font-size: 1rem;}
textarea{ height: 6em;}
}



/*fv*/
#fv{ background: #000; padding: 60px 0; position: relative; z-index: 5;}
#fv{ background: linear-gradient(135deg,  rgba(25,50,120,1) 0%,rgba(90,125,190,1) 100%);}
#fv .maincontent{ display: flex; align-items: center;}
#fv #fv_txt{ width: calc(100% - 460px); margin-right: 40px;}
#fv #fv_txt .free dl{ display: flex; align-items: center; color: #fff;}
#fv #fv_txt .free dl dt strong{ display: flex; align-items: center; justify-content: center; width: 80px; background: #fff; color: #2e4997; font-size: 1.4rem; line-height: 1em; font-weight: 900; padding: 0.25em;}
#fv #fv_txt .free dl dd{ width: calc(100% - 100px); margin-left: 20px;}
#fv #fv_txt .free dl dd p{ font-size: 1rem; font-weight: bold; line-height: 1.5em;}
#fv #fv_txt h1{ font-size: 3rem; color: #fff; margin: 40px auto 60px;}
#fv #fv_txt .relation{ display: inline-block; padding: 0 80px 20px; position: relative;}
#fv #fv_txt .relation:before{ content: ""; width: 80px; height: 160px; background: url("../images/fv_ico.png") left bottom no-repeat; background-size: 100%; position: absolute; left: 0; bottom: 0;}
#fv #fv_txt .relation:after{ content: ""; width: 80px; height: 160px; background: url("../images/fv_ico.png") left bottom no-repeat; background-size: 100%; position: absolute; right: 0; bottom: 0; transform: rotateY(180deg);}
#fv #fv_txt .relation dl dt{ font-size: 2.4rem; color: #f5dd6d; font-weight: bold; margin-bottom: 0;}
#fv #fv_txt .relation dl dd p{ font-size: 1.4rem; color: #f5dd6d; font-weight: bold; line-height: 1.5em;}

#fv #fv_form{ width: 440px; background: #fff; padding: 20px 40px; border-radius: 20px;}
#fv #fv_form h2{ text-align: center; font-size: 1.2rem; font-weight: bold; margin-bottom: 10px;}
#fv #fv_form dl{ margin: 5px auto;}
#fv #fv_form dl dt{ font-size: 0.8rem; margin-bottom: 5px;}
#fv #fv_form dl dt span{ font-weight: bold; color: #d61349; margin-left: 0.5em;}
#fv #fv_form dl dd{ margin-bottom: 10px;}
#fv #fv_form .formrun-system-show{ color: #d61349; font-size: 0.6rem;}
#fv #fv_form .pv_check{ display: flex; align-items: center; font-size: 0.8rem;}
#fv #fv_form .pv_check input[type="checkbox"]{ width: auto; margin: 0; padding: 0;}
#fv #fv_form .pv_check a{ text-decoration: underline; margin: 0 0.5em;}
#fv #fv_form .pv_check a:hover{ text-decoration: none;}

#fv #fv_form button{ margin-top: 20px; background: #d61349; color: #fff; font-size: 0.8rem; font-weight: bold; text-align: center; padding: 0.75em; position: relative; cursor: pointer; transition: 0.3s;}
#fv #fv_form button:hover{ opacity: 0.7;}
#fv #fv_form button i{ position: absolute; right: 1em; top: 50%; transform: translateY(-50%);}
@media screen and (max-width:767px){
#fv{ padding: 10% 7.5%;}
#fv .maincontent{ display: block; width: 100%;}
#fv #fv_txt{ width: 100%; margin: 0;}
#fv #fv_txt .free dl dt strong{ width: 12.5vw; font-size: 1.4rem; padding: 0.5em 0;}
#fv #fv_txt .free dl dd{ width: calc(100% - 15vw); margin-left: 2.5vw;}
#fv #fv_txt .free dl dd p{ font-size: 1rem;}
#fv #fv_txt h1{ font-size: 3rem; margin: 3.75% auto 5%;}
#fv #fv_txt .relation{ padding: 0 10vw 1.25vw;}
#fv #fv_txt .relation:before{ width: 10vw; height: 20vw;}
#fv #fv_txt .relation:after{ width: 10vw; height: 20vw;}
#fv #fv_txt .relation dl dt{ font-size: 2.4rem;}
#fv #fv_txt .relation dl dd p{ font-size: 1.4rem;}

#fv #fv_form{ width: 100%; padding: 3.75vw 7.5vw; margin-top: 7.5%; border-radius: 2.5vw;}
#fv #fv_form h2{ font-size: 1.4rem; margin-bottom: 2.5%;}
#fv #fv_form dl{ margin: 1.25vw auto;}
#fv #fv_form dl dt{ font-size: 1rem; margin-bottom: 1.25vw;}
#fv #fv_form dl dd{ margin-bottom: 5%;}
#fv #fv_form .formrun-system-show{ font-size: 0.8rem;}
#fv #fv_form .pv_check{ font-size: 1rem;}
#fv #fv_form button{ margin-top: 5%; font-size: 1.2rem;}
}



/*cta*/
.cta{ background: #fff; padding: 40px 0;}
.cta figure.btn{ display: flex; align-items: center; justify-content: center;}
.cta figure.btn a{ display: flex; align-items: center; justify-content: center; width: 600px; height: 80px; background: #d61349; color: #fff; font-size: 1.2rem; font-weight: bold; text-align: center; padding: 0.75em; position: relative; transition: 0.3s;}
.cta figure.btn a:hover{ opacity: 0.7;}
.cta figure.btn a i{ position: absolute; right: 1em; top: 50%; transform: translateY(-50%);}
@media screen and (max-width:767px){
.cta{ padding: 10% 0;}
.cta figure.btn{ display: flex; align-items: center; justify-content: center;}
.cta figure.btn a{ display: flex; align-items: center; justify-content: center; width: 100%; height: auto; background: #d61349; color: #fff; font-size: 1.2rem; font-weight: bold; text-align: center; padding: 1em 0.75em; position: relative; cursor: pointer; transition: 0.3s;}
.cta figure.btn a:hover{ opacity: 0.7;}
.cta figure.btn a i{ position: absolute; right: 1em; top: 50%; transform: translateY(-50%);}
}



/*sec01*/
#sec01{ position: relative; z-index: 1;}
#sec01:before{ content: ""; width: 0; height: 0; border-style: solid; border-width: 600px 0px 0px 100vw; border-color: transparent transparent transparent #f8f8f8; position: absolute; left: 0; bottom: 0; z-index: -1;}
#sec01 .maincontent{ border-top: 1px solid #ccc; padding: 80px 0;}
#sec01 dl{ display: flex; align-items: center; justify-content: space-between;}
#sec01 dl dt{ width: 540px;}
#sec01 dl dt h2{ font-size: 2.4rem; color: #e5004c; margin-bottom: 20px;}
#sec01 dl dt p{ font-size: 0.9rem;}
#sec01 dl dt figure.btn{ display: flex; align-items: center; justify-content: center;}
#sec01 dl dt figure.btn a{ display: flex; align-items: center; justify-content: center; width: 100%; background: #d61349; color: #fff; font-size: 1.2rem; font-weight: bold; text-align: center; padding: 0.75em; position: relative; cursor: pointer; transition: 0.3s;}
#sec01 dl dt figure.btn a:hover{ opacity: 0.7;}
#sec01 dl dt figure.btn a i{ position: absolute; right: 1em; top: 50%; transform: translateY(-50%);}
#sec01 dl dd{ width: 480px;}
@media screen and (max-width:767px){
#sec01:before{ border-width: 200vw 0px 0px 100vw;}
#sec01 .maincontent{ padding: 10% 0;}
#sec01 dl{ display: block;}
#sec01 dl dt{ width: 100%; text-align: center;}
#sec01 dl dt h2{ font-size: 2.4rem; margin-bottom: 2.5%;}
#sec01 dl dt p{ font-size: 0.9rem;}
#sec01 dl dd{ width: 100%; margin-top: 10%;}

#sec01 dl dd figure.btn{ display: flex; align-items: center; justify-content: center; margin-top: 10%;}
#sec01 dl dd figure.btn a{ display: flex; align-items: center; justify-content: center; width: 100%; background: #d61349; color: #fff; font-size: 1.2rem; font-weight: bold; text-align: center; padding: 0.75em; position: relative; cursor: pointer; transition: 0.3s;}
#sec01 dl dd figure.btn a:hover{ opacity: 0.7;}
#sec01 dl dd figure.btn a i{ position: absolute; right: 1em; top: 50%; transform: translateY(-50%);}
}



/*sec02*/
#sec02{ background: #f8f8f8; padding: 80px 0;}
#sec02 h2{ text-align: center; display: flex; align-items: center; justify-content: center; margin-bottom: 30px;}
#sec02 h2 span img{ height: 48px;}
#sec02 h2 strong{ font-size: 2rem; line-height: 1em; margin-left: 0.25em;}
#sec02 p.txt{ text-align: center;}

#sec02 .list{ position: relative; padding-top: 40px; margin-top: 20px;}
#sec02 .list:before{ content: ""; width: 120px; height: 4px; background: #000; position: absolute; left: 0; right: 0; top: 0; margin: auto;}
#sec02 .list ul{ display: flex; justify-content: center;}
#sec02 .list ul li{ width: calc(25% -  10px); margin: 0 5px;}
#sec02 .list ul li p.worry{ background: #fff; display: flex; align-items: center; justify-content: center; width: 100%; height: 80px; font-size: 0.8rem; line-height: 1.5em; border-radius: 20px; position: relative; margin-bottom: 35px;}
#sec02 .list ul li p.worry:after{ content: ""; width: 0; height: 0; border-style: solid; border-width: 25px 50px 0px 50px; border-color: #ffffff transparent transparent transparent; position: absolute; left: 0; right: 0; bottom: -24px; margin: auto;}
#sec02 .list ul li dl dt{ background: #fff; padding: 20px;}
#sec02 .list ul li dl dt h3{ text-align: center; font-size: 1rem; color: #e5004c; margin-bottom: 10px;}
#sec02 .list ul li dl dt figure img{ width: 180px;}
#sec02 .list ul li dl dd{ background: #092886; color: #fff; display: flex; align-items: center; justify-content: center; width: 100%; height: 120px; font-size: 0.8rem; line-height: 1.5em; font-weight: bold; padding: 1em; border-radius: 0 0 20px 20px;}
@media screen and (max-width:767px){
#sec02{ padding: 10% 0;}
#sec02 h2{ margin-bottom: 5%;}
#sec02 h2 span img{ height: 7.5vw;}
#sec02 h2 strong{ font-size: 2rem;}

#sec02 .list{ padding-top: 10%; margin-top: 5%;}
#sec02 .list:before{ width: 20vw; height: 4px;}

#sec02 .list ul{ display: block;}
#sec02 .list ul li{ width: 100%; margin: 10% auto 0;}
#sec02 .list ul li:first-child{ margin-top: 0;}

#sec02 .list ul li p.worry{ height: 10vw; font-size: 1rem; border-radius: 1.25vw; margin-bottom: 7.5vw;}
#sec02 .list ul li p.worry:after{ border-width: 5vw 15vw 0px 15vw; bottom: -4.75vw;}
#sec02 .list ul li dl dt{ padding: 7.5%;}
#sec02 .list ul li dl dt h3{ font-size: 1.2rem; margin-bottom: 2.5%;}
#sec02 .list ul li dl dt figure img{ width: 50%;}
#sec02 .list ul li dl dd{ height: 15vw; font-size: 1.2rem; border-radius: 0 0 1.25vw 1.25vw;}

#sec02 figure.btn{ display: flex; align-items: center; justify-content: center; margin-top: 10%;}
#sec02 figure.btn a{ display: flex; align-items: center; justify-content: center; width: 100%; background: #d61349; color: #fff; font-size: 1.2rem; font-weight: bold; text-align: center; padding: 0.75em; position: relative; cursor: pointer; transition: 0.3s;}
#sec02 figure.btn a:hover{ opacity: 0.7;}
#sec02 figure.btn a i{ position: absolute; right: 1em; top: 50%; transform: translateY(-50%);}
}



/*sec03*/
#sec03{ background: #f8f8f8; padding: 80px 0;}
#sec03 h2{ text-align: center; display: flex; align-items: center; justify-content: center; font-size: 2rem; margin-bottom: 30px;}
#sec03 p.txt{ text-align: center;}

#sec03 .list{ position: relative; padding-top: 40px; margin-top: 20px; margin-bottom: 60px;}
#sec03 .list:before{ content: ""; width: 120px; height: 4px; background: #000; position: absolute; left: 0; right: 0; top: 0; margin: auto;}
#sec03 .list ul{ display: flex; justify-content: center;}
#sec03 .list ul li{ width: calc(33.33% -  20px); margin: 0 10px; border-radius: 20px; overflow: hidden;}
#sec03 .list ul li dl dd{ background: #fff; padding: 20px;}
#sec03 .list ul li dl dd h3{ font-size: 1.2rem;}
#sec03 .list ul li dl dd p.size{ font-size: 0.8rem; color: #092887; font-weight: bold; margin-bottom: 5px;}
#sec03 .list ul li dl dd .price{ display: flex; background: #f8f8f8; padding: 5px 10px;}
#sec03 .list ul li dl dd .price strong{ font-size: 1rem; width: 4.5em;}
#sec03 .list ul li dl dd .price span{ flex: 1; font-size: 1rem;}

#sec03 figure.btn{ display: flex; align-items: center; justify-content: center; width: 600px; height: 80px;}
#sec03 figure.btn a{ display: flex; align-items: center; justify-content: center; width: 100%; border: 3px solid #000; color: #000; font-size: 1.2rem; font-weight: bold; text-align: center; padding: 0.75em; position: relative; cursor: pointer; transition: 0.3s;}
#sec03 figure.btn a:hover{ background: #000; color: #fff;}
#sec03 figure.btn a i{ position: absolute; right: 1em; top: 50%; transform: translateY(-50%);}
@media screen and (max-width:767px){
#sec03{ padding: 10% 0; background: #192f75;}
#sec03 h2{ font-size: 2rem; margin-bottom: 5%; color: #fff;}
#sec03 p.txt{ color: #fff;}

#sec03 .list{ padding-top: 10%; margin-top: 5%; margin-bottom: 10%;}
#sec03 .list:before{ width: 20vw; height: 4px; background: #fff;}
#sec03 .list ul{ display: block; width: 92.5%; margin: 0 auto;}
#sec03 .list ul li{ width: 100%; margin: 10% auto; border-radius: 2.5vw;}
#sec03 .list ul li:first-child{ margin-top: 0;}
#sec03 .list ul li dl dt img{ width: 100%;}
#sec03 .list ul li dl dd{ padding: 5%;}
#sec03 .list ul li dl dd h3{ font-size: 1.2rem; padding-left: 2.5vw;}
#sec03 .list ul li dl dd p.size{ font-size: 0.8rem; padding-left: 2.5vw; margin-bottom: 2.5%;}
#sec03 .list ul li dl dd .price{ padding: 1.875vw 2.5vw;}
#sec03 .list ul li dl dd .price strong{ font-size: 1rem; width: 6em;}
#sec03 .list ul li dl dd .price span{ flex: 1; font-size: 1rem;}

#sec03 figure.btn{ width: 100%; height: auto;}
#sec03 figure.btn a{ border: 1px solid #fff; color: #fff; font-size: 1.2rem; padding: 0.75em;}
#sec03 figure.btn a:hover{ background: #fff; color: #192f75;}
}



/*sec04*/
#sec04{ background: #f8f8f8; padding: 80px 0;}
#sec04 h2{ padding: 0 0.5em 0.75em; position: relative; font-size: 2rem;}
#sec04 h2 strong{ color: #092987;}
#sec04 h2:before{ content: ""; width: 100%; height: 3px; background: #d4d3d2; position: absolute; left: 0; bottom: 0;}
#sec04 h2:after{ content: ""; width: 100px; height: 3px; background: #092887; position: absolute; left: 0; bottom: 0;}

#sec04 .reason dl{ display: flex; justify-content: space-between; padding: 0 40px;}
#sec04 .reason dl dt{ width: 540px; border-bottom: 2px solid #d4d3d2; padding: 30px 0 0;}
#sec04 .reason dl dt .num{ display: inline-block; font-size: 2.4rem; line-height: 1em; font-weight: bold; color: #092987; margin-bottom: 0.25em;}
#sec04 .reason dl dt h3{ font-size: 1.5rem; line-height: 1.5em; margin-bottom: 0.5em;}
#sec04 .reason dl dt h3 strong{ color: #092987;}
#sec04 .reason dl dt p{ font-size: 0.8rem; line-height: 1.5em;}
#sec04 .reason dl dd{ width: 420px; padding: 30px 0;}

#sec04 .support{ margin-top: 60px; background: #fff; padding: 60px;}
#sec04 .support dl{ display: flex; justify-content: space-between; align-items: center;}
#sec04 .support dl dt{ width: 420px;}
#sec04 .support dl dd{ width: 520px;}
#sec04 .support dl dd h3{ font-size: 1.5rem; margin-bottom: 20px;}
#sec04 .support dl dd h3 strong{ color: #092987;}
#sec04 .support dl dd p{ font-size: 0.8rem; line-height: 1.5em;}
#sec04 .support dl dd ul{ background: #f8f8f8; padding: 20px;}
#sec04 .support dl dd ul li{ padding-left: 1.5em; font-size: 0.8rem; line-height: 1.5em; position: relative;}
#sec04 .support dl dd ul li i{ color: #092987; line-height: 1.5em; position: absolute; left: 0; top: 0.125em;}
@media screen and (max-width:767px){
#sec04{ padding: 10% 0 0;}
#sec04 h2{ font-size: 2rem; text-align: center;}
#sec04 h2:before{ display: none;}
#sec04 h2:after{ display: none;}

#sec04 .reason dl{ flex-direction: column-reverse; align-items: center; justify-content: center; padding: 0; margin-top: 10%;}
#sec04 .reason dl:first-child{ margin-top: 5%;}
#sec04 .reason dl:last-child dt{ border-bottom: none;}
#sec04 .reason dl dt{ width: 100%; border-bottom: 2px solid #d4d3d2; padding: 7.5% 0;}
#sec04 .reason dl dt .num{ display: inline-block; font-size: 2.4rem; line-height: 1em; margin-bottom: 0.5em;}
#sec04 .reason dl dt h3{ font-size: 1.5rem; margin-bottom: 0.5em;}
#sec04 .reason dl dt p{ font-size: 0.9rem;}
#sec04 .reason dl dd{ width: 100%; padding: 0;}

#sec04 .support{ width: calc(100% + 15vw); margin: 0 0 0 -7.5vw; padding: 10% 7.5%;}
#sec04 .support dl{ flex-direction: column; justify-content: center; align-items: center;}
#sec04 .support dl dt{ width: 100%; margin-bottom: 7.5%;}
#sec04 .support dl dd{ width: 100%;}
#sec04 .support dl dd h3{ font-size: 1.5rem; margin-bottom: 0.5em;;}
#sec04 .support dl dd p{ font-size: 0.9rem;}
#sec04 .support dl dd ul{ padding: 2.5% 5%;}
#sec04 .support dl dd ul li{ font-size: 0.9rem;}
}



/*sec05*/
#sec05{ background: #f8f8f8; padding: 80px 0;}
#sec05 h2{ text-align: center; display: flex; align-items: center; justify-content: center; font-size: 2rem; margin-bottom: 30px;}
#sec05 p.txt{ text-align: center;}

#sec05 .step{ position: relative; padding-top: 40px; margin-top: 20px;}
#sec05 .step:before{ content: ""; width: 120px; height: 4px; background: #000; position: absolute; left: 0; right: 0; top: 0; margin: auto;}
#sec05 .step ul{ display: flex;}
#sec05 .step ul li{ width: calc(33.33% - 20px); margin: 0 10px; border-radius: 20px; border-top: 20px solid #092887; background: #fff; padding: 20px; position: relative;}
#sec05 .step ul li:not(:last-child):after{ content: "\f054"; font-family: "Font Awesome 5 Free"; font-weight: 900; display: flex; align-items: center; justify-content: center; width: 60px; height: 60px; background: #092887; color: #fff; border-radius: 50%; position: absolute; right: -40px; top: 120px; z-index: 5;}
#sec05 .step ul li h3{ display: flex; flex-direction: column;}
#sec05 .step ul li h3 span{ font-size: 0.8rem; color: #092887;}
#sec05 .step ul li h3 strong{ font-size: 1.2rem;}
#sec05 .step ul li figure{ margin: 10px auto;}
#sec05 .step ul li figure img{ width: 150px;}
#sec05 .step ul li p{ font-size: 0.8rem; line-height: 1.5em; text-align: justify; font-feature-settings: "palt";}

#sec05 .step ul li figure.btn{ display: flex; align-items: center; justify-content: center; width: 100%; margin-top: 20px;}
#sec05 .step ul li figure.btn a{ display: flex; align-items: center; justify-content: center; width: 100%; height: 48px; background: #d61349; color: #fff; font-size: 0.8rem; font-weight: bold; text-align: center; padding: 0 0.75em; position: relative; cursor: pointer; transition: 0.3s;}
#sec05 .step ul li figure.btn a:hover{ opacity: 0.7;}
#sec05 .step ul li figure.btn a i{ position: absolute; right: 1em; top: 50%; transform: translateY(-50%);}
@media screen and (max-width:767px){
#sec05{ padding: 10% 0;}
#sec05 h2{ margin-bottom: 5%;}
#sec05 h2 strong{ font-size: 2rem;}

#sec05 .step{ padding-top: 10%; margin-top: 5%;}
#sec05 .step:before{ width: 20vw; height: 4px;}
#sec05 .step ul{ display: block;}
#sec05 .step ul li{ width: 85%; margin: 15vw auto 0; border-radius: 2.5vw; border-top: 5vw solid #092887; padding: 5%;}
#sec05 .step ul li:first-child{ margin-top: 0;}
#sec05 .step ul li:not(:last-child):after{  width: 10vw; height: 10vw; left: 0; right: 0; top: auto; bottom: -12.5vw; transform: rotate(90deg); margin: auto;}

#sec05 .step ul li h3 span{ font-size: 1rem; margin-bottom: 0.25em;}
#sec05 .step ul li h3 strong{ font-size: 1.4rem;}
#sec05 .step ul li figure{ margin: 2.5% auto;}
#sec05 .step ul li figure img{ width: 50%;}
#sec05 .step ul li p{ font-size: 1rem;}

#sec05 .step ul li figure.btn{ display: flex; align-items: center; justify-content: center; margin-top: 5%;}
#sec05 .step ul li figure.btn a{ display: flex; align-items: center; justify-content: center; width: 100%; background: #d61349; color: #fff; font-size: 1.2rem; font-weight: bold; text-align: center; padding: 0.75em; position: relative; cursor: pointer; transition: 0.3s;}
#sec05 .step ul li figure.btn a:hover{ opacity: 0.7;}
#sec05 .step ul li figure.btn a i{ position: absolute; right: 1em; top: 50%; transform: translateY(-50%);}
}



/*sec06*/
#sec06{ background: #f8f8f8; padding: 80px 0;}
#sec06 h2{ text-align: center; display: flex; align-items: center; justify-content: center; font-size: 2rem; margin-bottom: 30px;}
#sec06 p.txt{ text-align: center;}

#sec06 .faq{ position: relative; padding-top: 40px; margin-top: 20px;}
#sec06 .faq:before{ content: ""; width: 120px; height: 4px; background: #000; position: absolute; left: 0; right: 0; top: 0; margin: auto;}
#sec06 .faq dl{ background: #fff; padding: 20px 40px 20px 110px; border-radius: 20px; margin-top: 20px; position: relative;}
#sec06 .faq dl:before{ content: "Q."; position: absolute; left: 40px; top: 20px; font-size: 2.4rem; font-weight: bold; line-height: 1em;}
#sec06 .faq dl dt{ font-size: 1.2rem; font-weight: bold; margin-bottom: 10px;}
#sec06 .faq dl dd p{ font-size: 0.8rem; line-height: 1.5em;}
@media screen and (max-width:767px){
#sec06{ padding: 10% 0;}
#sec06 h2{ font-size: 2rem; margin-bottom: 5%;}

#sec06 .faq{ padding-top: 10%; margin-top: 5%;}
#sec06 .faq:before{ width: 20vw; height: 4px;}

#sec06 .faq dl{ padding: 5% 5%; border-radius: 1.25vw; margin-top: 5%;}
#sec06 .faq dl:before{ content: "Q."; left: 5vw; top: 3.75vw; font-size: 1.6rem;}
#sec06 .faq dl dt{ font-size: 1.2rem; padding-left: 8.75vw; margin-bottom: 2.5%;}
#sec06 .faq dl dd p{ font-size: 0.9rem;}
}



/*sec07*/
#sec07{ background: #f8f8f8; padding: 80px 0;}
#sec07 h2{ text-align: center; display: flex; align-items: center; justify-content: center; font-size: 2rem; margin-bottom: 30px;}

#sec07 .company{ margin-top: 60px;}
#sec07 .company table{ width: 100%; border-collapse: collapse; border-spacing: 0; font-size: 0.8rem; line-height: 1.5em;}
#sec07 .company table th{ vertical-align: middle; padding: 1.5em; width: 240px; border: 1px solid #000; border-left: none; font-weight: normal;}
#sec07 .company table td{ vertical-align: middle; padding: 1.5em; border: 1px solid #000; border-left: none; border-right: none;}
#sec07 .company table tr:first-child th,
#sec07 .company table tr:first-child td{ border-top: none;}
#sec07 .company table tr:last-child th,
#sec07 .company table tr:last-child td{ border-bottom: none;}
@media screen and (max-width:767px){
#sec07{ padding: 10% 0;}
#sec07 h2{ font-size: 2rem; margin-bottom: 5%;}

#sec07 .company{ margin-top: 7.5%;}
#sec07 .company table{ font-size: 0.95rem;}
#sec07 .company table th{ padding: 1em 0.5em; width: 7.5em;}
#sec07 .company table td{ padding: 1em 1em;}
}





@media print, screen and (min-width:768px){
.smp{ display:none !important;}
}
@media screen and (max-width:767px){
.pc{ display:none !important;}
}
