@charset "utf-8";
/* CSS Document */

/*----------------------------------------------------------
wrap
----------------------------------------------------------*/
#wrap{
overflow: hidden;
}

/*----------------------------------------------------------
header
----------------------------------------------------------*/
#header{
background: linear-gradient(to right,#6C8BC5,#F58947);
padding: 20px 0;
}
#header .inner{
width: 1180px;
margin: 0 auto;
display: flex;
align-items: center;
justify-content: space-between;
}
#header .inner .logo{
width: 557px;
}
#header .inner .btn a{
background: #6c8bc5;
color: #fff;
font-size: 1.6rem;
font-weight: 500;
border-radius: 100px;
padding: 14px 30px 16px;
}
@media (max-width: 768px){
#header{
padding: 1.5rem 0;
}
#header .inner{
width: 100%;
padding: 0 2.0rem;
}
#header .inner .logo{
width: 70%;
padding: 0 1.7rem 0 0;
}
#header .inner .btn{
width: 30%;
}
#header .inner .btn a{
font-size: 1.1rem;
text-align: center;
padding: 0.6rem 0 0.8rem;
display: block;
}
}

/*----------------------------------------------------------
footer
----------------------------------------------------------*/
#footer{
background: #6C8BC5;
padding: 70px 0 60px;
}
#footer .inner{
width: 1140px;
color: #fff;
border-bottom: 1px solid #fff;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
align-items: flex-end;
}
#footer .inner .col01{
width: 650px;
}
#footer .inner .col01 .list{
display: flex;
flex-wrap: wrap;
}
#footer .inner .col01 .list > li{
margin: 0 30px 0 0;
}
#footer .inner .col01 .list > li a{
font-size: 1.6rem;
font-weight: 300;
display: inline-block;
position: relative;
}
#footer .inner .col01 .list > li:last-child{
margin-right: 0;
}
#footer .inner .col02{
width: 490px;
}
#footer .inner .col02 .text{
font-size: 2.0rem;
font-weight: 500;
margin: 0 0 30px;
}
#footer .inner .col02 .logoBlock{
display: flex;
}
#footer .inner .col02 .logoBlock .logo{
width: 62px;
margin: 0 10px 0 0;
}
#footer .inner .col02 .logoBlock .company{
font-size: 1.4rem;
line-height: 1.4;
}
#footer .inner .col02 .logoBlock .company b{
font-weight: 600;
line-height: 1.0;
margin: 0 0 17px;
display: block;
}
#footer .inner .copy{
width: 100%;
font-size: 1.6rem;
font-weight: 300;
text-align: center;
letter-spacing: 1px;
margin: 60px 0 40px;
}
@media (max-width: 768px){
#footer{
padding: 6.0rem 3.0rem;
}
#footer .inner{
width: 100%;
padding: 0 0 3.0rem;
display: block;
}
#footer .inner > .logo{
width: 20.0rem;
margin: 0 0 3.0rem;
}
#footer .inner .col01{
width: 100%;
margin: 0 0 3.0rem;
}
#footer .inner .col01 .list{
display: block;
}
#footer .inner .col01 .list > li{
margin: 0 0 1.0rem;
}
#footer .inner .col01 .list > li:last-child{
margin-bottom: 0;
}
#footer .inner .col02{
width: 100%;
}
#footer .inner .col02 .text{
font-size: 2.0rem;
font-weight: 500;
margin: 0 0 2.0rem;
}
#footer .inner .col02 .logoBlock{
align-items: flex-end;
}
#footer .inner .col02 .logoBlock .logo{
width: 7.3rem;
margin: 0 0 0 2.0rem;
order: 2;
}
#footer .inner .col02 .logoBlock .company{
font-size: 1.2rem;
font-weight: 300;
order: 1;
}
#footer .inner .col02 .logoBlock .company b{
font-size: 1.4rem;
font-weight: 500;
margin: 0 0 1.0rem;
}
#footer .inner .copy{
width: 100%;
font-size: 1.6rem;
font-weight: 300;
text-align: center;
letter-spacing: 1px;
margin: 60px 0 40px;
}
}

/*----------------------------------------------------------
title
----------------------------------------------------------*/
[class^="titleTypeA"]{
font-size: 2.4rem;
font-weight: 600;
text-align: center;
line-height: 1.4;
margin: 0 0 60px;
}
[class^="titleTypeA"] b{
font-size: 4.8rem;
font-weight: 500;
letter-spacing: 3px;
display: block;
}
.titleTypeA01{
color: #F38847;
}
.titleTypeA02{
color: #FFF;
}
.titleTypeA03{
color: #6C8BC5;
}
.titleTypeA04{
color: #646464;
}
@media (max-width: 768px){
[class^="titleTypeA"]{
font-size: 1.6rem;
margin: 0 0 2.5rem;
}
[class^="titleTypeA"] b{
font-size: 2.6rem;
letter-spacing: 2px;
}
}

[class^="titleTypeB"]{
font-size: 2.4rem;
font-weight: 600;
line-height: 1.0;
margin: 0 0 60px;
display: flex;
align-items: flex-end;
}
[class^="titleTypeB"] b{
font-size: 4.8rem;
font-weight: 500;
letter-spacing: 2px;
}
.titleTypeB01{
color: #fff;
justify-content: flex-start;
}
.titleTypeB01 b{
margin-right: 15px;
}
.titleTypeB02{
color: #6C8BC5;
justify-content: flex-end;
}
.titleTypeB02 b{
margin-left: 20px;
order: 2;
}
@media (max-width: 768px){
[class^="titleTypeB"]{
font-size: 1.6rem;
text-align: center;
line-height: 1.4;
margin: 0 0 2.5rem;
display: block;
}
[class^="titleTypeB"] b{
font-size: 2.4rem;
display: block;
}
.titleTypeB01 b,
.titleTypeB02 b{
margin: 0;
}
}

/*----------------------------------------------------------
mainVisual
----------------------------------------------------------*/
.mainVisual{
background: #fff;
padding: 30px 0 55px;
}
.mainVisual .inner{
width: 1380px;
background: url("../img/mv_bg_01_pc.jpg") no-repeat;
background-size: cover;
background-position: top center;
margin: 0 auto;
padding: 190px 0 190px 100px;
position: relative;
}
.mainVisual .inner .title{
color: #fff;
font-size: 4.8rem;
font-weight: 600;
line-height: 1.2;
margin: 0 0 25px;
}
.mainVisual .inner .text{
color: #fff;
font-size: 2.4rem;
font-weight: 600;
line-height: 1.3;
}
.mainVisual .inner .btn{
width: 350px;
position: fixed;
right: 0;
bottom: 0;
z-index: 10;
}
@media (max-width: 768px){
.mainVisual{
padding: 2.0rem;
}
.mainVisual .inner{
width: 100%;
background: url("../img/mv_bg_01_sp.jpg") no-repeat;
background-size: cover;
background-position: top center;
padding: 18.5rem 0 19.5rem 2.0rem
}
.mainVisual .inner .title{
font-size: 3.0rem;
margin: 0 0 1.5rem;
}
.mainVisual .inner .text{
font-size: 1.4rem;
}
.mainVisual .inner .btn{
width: 5.0rem;
right: 0;
bottom: 0;
}
}

/*----------------------------------------------------------
section
----------------------------------------------------------*/
.secInner01{
width: 920px;
margin: 0 auto;
padding: 100px 0;
}
@media (max-width: 768px){
.secInner01{
width: auto;
margin: 0 3.0rem;
padding: 6.0rem 0;
}
}

.secInner02{
width: 960px;
margin: 0 auto;
padding: 100px 0;
}
@media (max-width: 768px){
.secInner02{
width: auto;
margin: 0 3.0rem;
padding: 6.0rem 0;
}
}

.secInner03{
width: 1120px;
margin: 0 auto;
padding: 100px 0;
}
@media (max-width: 768px){
.secInner03{
width: auto;
margin: 0 3.0rem;
padding: 6.0rem 0;
}
}

.section01{
background: #edf2fa;
position: relative;
z-index: 1;
}
.section01::before{
content: "";
width: 557px;
height: 476px;
background: url("../img/sec01_bg_01.png") no-repeat;
background-size: 100% 100%;
position: absolute;
left: 50%;
bottom: 0;
margin-left: 164px;
z-index: -1;
}
.section01 .block{
position: relative;
z-index: 1;
}
.section01 .block .title01{
margin: 0 0 30px;
}
.section01 .block .title01 span{
background: #BFD2F7;
font-size: 4.0rem;
font-weight: 600;
line-height: 1.0;
padding-left: 25px;
display: inline-block;
}
.section01 .block .title01 span:nth-of-type(1){
padding-top: 20px;
padding-bottom: 10px;
}
.section01 .block .title01 span:nth-of-type(2){
margin-top: -8px;
padding-top: 20px;
padding-bottom: 20px;
}
.section01 .block .title02{
font-size: 2.4rem;
font-weight: 600;
margin: 0 0 20px;
}
.section01 .block .image{
width: 432px;
position: absolute;
right: 0;
top: 0;
z-index: -1;
}
.section01 .block .text{
font-size: 1.6rem;
line-height: 2.0;
}
.section01 .block .text + .text{
margin-top: 25px;
}
@media (max-width: 768px){
.section01::before{
width: 100%;
height: 32.0rem;
left: 0;
margin-left: 0;
}
.section01 .block .title01{
margin: 0 0 2.5rem;
}
.section01 .block .title01 span{
font-size: 2.3rem;
padding-left: 1.0rem;
}
.section01 .block .title01 span:nth-of-type(1){
padding-top: 1.0rem;
padding-bottom: 1.0rem;
}
.section01 .block .title01 span:nth-of-type(2){
margin-top: -0.8rem;
padding-top: 1.0rem;
padding-bottom: 1.0rem;
}
.section01 .block .title02{
font-size: 1.6rem;
margin: 0 0 2.5rem;
}
.section01 .block .image{
width: 100%;
margin: 0 0 2.5rem;
position: static;
}
.section01 .block .text{
font-size: 1.4rem;
line-height: 1.6;
}
.section01 .block .text + .text{
margin-top: 1.5rem;
}
}

.section02{
background: url("../img/sec02_bg_01_pc.jpg") no-repeat;
background-size: cover;
background-position: top center;
position: relative;
z-index: 1;
}
.section02::before{
content: "";
width: 100px;
height: 100%;
background: #fff;
opacity: 0.2;
position: absolute;
left: 50%;
margin-left: 393px;
z-index: -1;
}
.section02 .block{
background: #fff;
border-radius: 10px;
padding: 100px 0;
}
.section02 .block .title01{
font-size: 3.2rem;
font-weight: 700;
text-align: center;
line-height: 1.4;
margin: 0 0 60px;
}
.section02 .block .title02{
margin: 0 80px;
display: flex;
align-items: flex-start;
}
.section02 .block .title02 b{
font-size: 4.0rem;
font-weight: 500;
line-height: 1.0;
letter-spacing: 3px;
}
.section02 .block .title02 span{
color: #646464;
font-size: 2.4rem;
font-weight: 500;
line-height: 1.3;
padding: 8px 0 0;
}
.section02 .block .title02.typeA{
margin-top: 60px;
margin-bottom: 30px;
}
.section02 .block .title02.typeA b{
color: #6C8BC5;
padding-right: 15px;
}
.section02 .block .title02.typeB{
margin-bottom: 20px;
}
.section02 .block .title02.typeB b{
color: #F58947;
padding-right: 50px;
}
.section02 .block [class^="image"]{
margin: 0 60px 0 0;
position: relative;
z-index: 2;
}
.section02 .block [class^="image"]::before{
content: "";
width: 100vw;
height: 120px;
position: absolute;
right: 50%;
z-index: -1;
}
.section02 .block [class^="image"]::after{
content: "";
width: 100vw;
height: 120px;
background: #000;
opacity: 0.1;
position: absolute;
left: 50%;
z-index: -1;
}
.section02 .block .image01{
margin-bottom: 60px;
}
.section02 .block .image01::before{
background: #6c8cc6;
top: 30px;
}
.section02 .block .image01::after{
top: 30px;
}
.section02 .block .image02::before{
background: #ffbd95;
top: 51px;
}
.section02 .block .image02::after{
top: 51px;
}
.section02 .block .text01{
font-size: 1.6rem;
margin: 0 95px;
}
.section02 .block .text01 + .text01{
margin-top: 30px;
}
.section02 .block .text02{
color: #646464;
font-size: 1.4rem;
margin: 0 95px 60px;
}
@media (max-width: 768px){
.section02{
background: url("../img/sec02_bg_01_sp.jpg") no-repeat;
background-size: cover;
background-position: top center;
}
.section02::before{
width: 6.7rem;
margin-left: -3.35rem;
}
.section02 .block{
border-radius: 0.5rem;
padding: 3.0rem 0;
}
.section02 .block .title01{
font-size: 1.6rem;
margin: 0 0 2.5rem;
}
.section02 .block .title02{
text-align: center;
margin: 0;
display: block;
}
.section02 .block .title02 b{
font-size: 2.3rem;
letter-spacing: 2px;
margin: 0 0 5px;
display: block;
}
.section02 .block .title02 span{
font-size: 1.4rem;
padding: 0;
display: block;
}
.section02 .block .title02.typeA{
margin-top: 4.0rem;
margin-bottom: 0.5rem;
}
.section02 .block .title02.typeB{
margin-bottom: 0.5rem;
}
.section02 .block .title02.typeA b,
.section02 .block .title02.typeB b{
padding-right: 0;
}
.section02 .block .title02.typeA span{
color: #6C8BC5;
}
.section02 .block .title02.typeB span{
color: #F58947;
}
.section02 .block [class^="image"]{
width: 100vw;
margin: 0 0 0 -3.0rem;
}
.section02 .block [class^="image"]::before,
.section02 .block [class^="image"]::after{
display: none;
}
.section02 .block .image01{
margin-bottom: 2.5rem;
}
.section02 .block .text01{
font-size: 1.4rem;
margin: 0 2.5rem;
}
.section02 .block .text01 + .text01{
margin-top: 2.5rem;
}
.section02 .block .text02{
font-size: 1.0rem;
margin: 0 2.5rem 3.0rem;
}
}

.section03{
background: #F8F8F8;
padding: 100px 0 155px;
}
.section03 .block{
width: 920px;
margin: 0 auto;
display: flex;
align-items: flex-start;
justify-content: space-between;
position: relative;
z-index: 1;
}
.section03 .block::before{
content: "";
width: 377px;
height: 184px;
background: url("../img/sec03_txt_01.png") no-repeat;
background-size: 100% auto;
position: absolute;
right: -88px;
bottom: -92px;
z-index: -1;
}
.section03 .block .imageBlock{
width: 404px;
}
.section03 .block .imageBlock .name{
margin: 0 0 30px;
position: relative;
z-index: 1;
}
.section03 .block .imageBlock .name span{
background: #F8F8F8;
color: #F58947;
font-size: 2.0rem;
font-weight: 500;
letter-spacing: 3px;
padding: 0 22px 0 0;
display: inline-block;
}
.section03 .block .imageBlock .name span::before{
content: "";
width: 99%;
height: 1px;
background: #F58947;
position: absolute;
right: 0;
top: 50%;
z-index: -1;
}
.section03 .block .textBlock{
width: 516px;
padding: 0 0 0 55px;
}
.section03 .block .textBlock .title{
font-size: 2.4rem;
font-weight: 600;
margin: 0 0 30px;
}
.section03 .block .textBlock .text{
font-size: 1.6rem;
}
.section03 .block .textBlock .text + .text{
margin-top: 25px;
}
.section03 .block .textBlock .nameBlock{
position: absolute;
left: 0;
top: 560px;
}
.section03 .block .textBlock .nameBlock .txt01{
color: #646464;
font-size: 1.4rem;
line-height: 1.0;
margin: 0 0 10px;
}
.section03 .block .textBlock .nameBlock .txt02{
color: #646464;
font-size: 2.7rem;
line-height: 1.0;
margin: 0 0 10px;
}
.section03 .block .textBlock .nameBlock .txt03{
color: #646464;
display: flex;
align-items: flex-end;
}
.section03 .block .textBlock .nameBlock .txt03 span{
font-size: 1.6rem;
line-height: 1.0;
}
.section03 .block .textBlock .nameBlock .txt03 b{
font-size: 3.6rem;
line-height: 1.0;
font-weight: 600;
padding: 0 0 0 20px;
}
@media (max-width: 768px){
.section03{
padding: 6.0rem 0;
}
.section03 .block{
width: 100%;
margin: 0 auto;
display: block;
}
.section03 .block::before{
display: none;
}
.section03 .block .imageBlock{
width: auto;
margin: 0 3.0rem 4.0rem;
}
.section03 .block .imageBlock .name{
margin: 0 0 3.0rem;
}
.section03 .block .imageBlock .name span{
font-size: 1.8rem;
letter-spacing: 2px;
padding: 0 2.5rem 0 0;
}
.section03 .block .textBlock{
width: auto;
margin: 0 3.0rem;
padding: 0;
}
.section03 .block .textBlock .title{
font-size: 1.6rem;
text-align: left;
margin: 0 0 2.5rem;
}
.section03 .block .textBlock .text{
font-size: 1.4rem;
}
.section03 .block .textBlock .text + .text{
margin-top: 2.0rem;
}
.section03 .block .textBlock .nameBlock{
text-align: right;
margin: 0 0 4.0rem;
position: relative;
left: auto;
top: auto;
}
.section03 .block .textBlock .nameBlock::before{
content: "";
width: 18.5rem;
height: 9.2rem;
background: url("../img/sec03_txt_01.png") no-repeat;
background-size: 100% auto;
position: absolute;
right: 7.0rem;
bottom: -0.2rem;
}
.section03 .block .textBlock .nameBlock .txt01{
font-size: 1.2rem;
margin: 0 0 1.0rem;
}
.section03 .block .textBlock .nameBlock .txt02{
font-size: 1.4rem;
margin: 0 0 1.0rem;
}
.section03 .block .textBlock .nameBlock .txt03{
justify-content: flex-end;
}
.section03 .block .textBlock .nameBlock .txt03 b{
font-size: 2.4rem;
padding: 0 0 0 1.0rem;
}
}

.section04{
background: #fff;
}
.section04 .block01{
width: 960px;
margin: 0 auto;
padding: 100px 0 60px;
}
.section04 .block01 .text{
font-size: 1.8rem;
line-height: 2.0;
margin: 0 0 60px;
}
.section04 .block01 .title{
color: #F58947;
font-size: 4.0rem;
font-weight: 500;
text-align: center;
margin: 0 0 50px;
}
.section04 .block01 .list{
display: flex;
justify-content: space-between;
}
.section04 .block01 .list > li{
width: 150px;
}
.section04 .block01 .list > li .image{
margin: 0 auto 25px;
display: block;
}
.section04 .block01 .list > li span{
width: 200px;
font-size: 2.0rem;
font-weight: 600;
text-align: center;
line-height: 1.4;
margin-left: -25px;
display: block;
}
.section04 .block02{
width: 1440px;
margin: 0 auto;
display: flex;
align-items: center;
position: relative;
z-index: 1;
}
.section04 .block02::before{
content: "";
width: 100vw;
height: 100%;
background: #F8F8F8;
position: absolute;
right: 50%;
top: 0;
z-index: -1;
}
.section04 .block02::after{
content: "";
width: 100vw;
height: 100%;
background: #fae1c9;
position: absolute;
left: 50%;
top: 0;
z-index: -1;
}
.section04 .block02 .box{
width: 50%;
padding: 120px;
position: relative;
}
.section04 .block02 .box .title{
font-size: 2.4rem;
font-weight: 600;
line-height: 1.4;
margin: 0 0 30px;
}
.section04 .block02 .box .text{
font-size: 1.6rem;
line-height: 2.0;
}
.section04 .block02 .box .image{
position: absolute;
right: -630px;
top: 50%;
margin-top: -171px;
}
.section04 .block02 .box .image figcaption{
color: #646464;
font-size: 2.0rem;
font-weight: 600;
margin: 0 0 10px;
}
.section04 .block02 .box .image img{
width: 530px;
}
@media (max-width: 768px){
.section04 .block01{
width: 100%;
padding: 6.0rem 0;
}
.section04 .block01 .text{
font-size: 1.4rem;
margin: 0 2.5rem 3.0rem
}
.section04 .block01 .title{
font-size: 2.4rem;
margin: 0 0 3.0rem;
}
.section04 .block01 .list{
margin: 0 5.0rem;
flex-wrap: wrap;
}
.section04 .block01 .list > li{
width: 12.0rem;
margin: 0 0 3.0rem;
}
.section04 .block01 .list > li:last-child{
margin: 0 auto;
}
.section04 .block01 .list > li .image{
width: 100%;
margin: 0 auto 1.7rem;
}
.section04 .block01 .list > li span{
width: 18.0rem;
font-size: 1.4rem;
margin-left: -3.0rem;
}
.section04 .block02{
width: 100%;
margin: 0 auto;
display: block;
}
.section04 .block02::before,
.section04 .block02::after{
display: none;
}
.section04 .block02 .box{
background: #F8F8F8;
width: 100%;
padding: 6.0rem 2.5rem;
}
.section04 .block02 .box .title{
color: #F58947;
font-size: 1.8rem;
text-align: center;
margin: 0 0 3.0rem;
}
.section04 .block02 .box .text{
font-size: 1.4rem;
}
.section04 .block02 .box .image{
width: 100%;
background: #f5dfcb;
border-radius: 1.0rem;
margin: 0 0 3.0rem;
padding: 3.5rem 2.2rem 3.0rem;
position: static;
}
.section04 .block02 .box .image figcaption{
font-size: 1.3rem;
text-align: center;
line-height: 1.4;
margin: 0 0 3.0rem;
}
.section04 .block02 .box .image img{
width: 100%;
}
}

.section05{
background: url("../img/sec05_bg_01_pc.jpg") no-repeat;
background-size: cover;
background-position: top center;
}
.section05 .block{
background: rgba(245,137,71,0.8);
border-radius: 10px;
padding: 60px;
}
.section05 .block .box + .box{
border-top: 2px solid #fff;
margin-top: 35px;
padding-top: 35px;
}
.section05 .block .box .image{
width: 405px;
}
.section05 .block .box:nth-child(odd) .image{
margin-right: 30px;
float: left;
}
.section05 .block .box:nth-child(even) .image{
margin-left: 30px;
float: right;
}
.section05 .block .box .title{
width: 405px;
border-bottom: 2px solid #fff;
margin: 0 0 17px;
padding: 0 0 17px;
}
.section05 .block .box .title .number{
color: rgba(0,0,0,0.0);
font-size: 4.0rem;
font-weight: 700;
line-height: 1.2;
-webkit-text-stroke: 1px #fff;
text-stroke: 1px #fff;
display: block;
}
.section05 .block .box .title b{
color: #fff;
font-size: 2.4rem;
font-weight: 600;
line-height: 1.4;
}
.section05 .block .box .text{
width: 405px;
color: #fff;
font-size: 1.6rem;
font-weight: 300;
line-height: 1.2;
}
.section05 .block .box .text b{
font-size: 2.0rem;
font-weight: 500;
line-height: 1.4;
margin: 0 0 10px;
display: block;
}
.section05 .block .box:nth-child(odd) .title,
.section05 .block .box:nth-child(odd) .text{
float: right;
}
.section05 .block .box:nth-child(even) .title,
.section05 .block .box:nth-child(even) .text{
float: left;
}
@media (max-width: 768px){
.section05{
background: url("../img/sec05_bg_01_sp.jpg") no-repeat;
background-size: cover;
background-position: top center;
}
.section05 .secInner02{
padding-top: 4.0rem;
}
.section05 .block{
border-radius: 1.0rem;
padding: 3.0rem 1.5rem;
}
.section05 .block .box + .box{
border-top: 1px solid #fff;
margin-top: 3.0rem;
padding-top: 3.0rem;
}
.section05 .block .box .image{
width: 100%;
margin: 0 0 1.5rem!important;
float: none!important;
}
.section05 .block .box .title{
width: 100%;
line-height: 1.0!important;
border-bottom: none;
margin: 0 0 2.5rem;
padding: 0;
float: none!important;
}
.section05 .block .box .title .number{
font-size: 3.2rem;
margin: 0;
display:inline-block;
}
.section05 .block .box .title b{
font-size: 1.9rem;
display: block;
}
.section05 .block .box .text{
width: 100%;
font-size: 1.4rem;
line-height: 1.4;
float: none!important;
}
.section05 .block .box .text b{
font-size: 1.75rem;
font-weight: 400;
margin: 0 0 1.0rem;
}
}

.section06{
background: #e8eef9;
}
.section06 .block .box{
display: flex;
}
.section06 .block .box + .box{
margin-top: 30px;
}
.section06 .block .box .step{
width: 493px;
margin: 0 30px 0 0;
}
.section06 .block .box .textBlock{
width: 437px;
}
.section06 .block .box .textBlock .title{
color: #6C8BC5;
font-size: 2.4rem;
font-weight: 600;
line-height: 1.4;
margin: 0 0 20px;
}
.section06 .block .box .textBlock .text{
font-size: 1.6rem;
}
@media (max-width: 768px){
.section06 .block .box{
display: block;
}
.section06 .block .box + .box{
margin-top: 2.0rem;
}
.section06 .block .box .step{
width: 100%;
margin: 0 0 3.0rem;
}
.section06 .block .box .textBlock{
width: 100%;
}
.section06 .block .box .textBlock .title{
font-size: 2.2rem;
font-weight: 500;
margin: 0 0 1.5rem;
}
.section06 .block .box .textBlock .text{
font-size: 1.4rem;
}
.section06 .block .box .textBlock .text + .text{
margin-top: 1.5rem;
}
}

.section07{
background: #fff;
}
.section07 .lead{
font-size: 2.0rem;
margin: 0 0 60px;
}
.section07 .block .box + .box{
margin-top: 60px;
}
.section07 .block .box .image{
width: 365px;
position: relative;
z-index: 1;
}
.section07 .block .box .image::before{
content: "";
width: 1px;
height: 100%;
background: #F58947;
position: absolute;
z-index: -1;
}
.section07 .block .box .image figcaption{
background: #fff;
color: #F58947;
font-size: 2.0rem;
font-weight: 500;
line-height: 1.0;
writing-mode: vertical-lr;
padding: 0 0 35px;
display: inline-block;
position: absolute;
top: 0;
}
.section07 .block .box:nth-child(odd) .image{
margin-right: 40px;
padding-right: 35px;
float: left;
}
.section07 .block .box:nth-child(odd) .image::before{
right: 9px;
}
.section07 .block .box:nth-child(odd) .image figcaption{
right: 0;
}
.section07 .block .box:nth-child(even) .image{
margin-left: 40px;
padding-left: 35px;
float: right;
}
.section07 .block .box:nth-child(even) .image::before{
left: 9px;
}
.section07 .block .box:nth-child(even) .image figcaption{
left: 0;
}
.section07 .block .box .titleBlock{
width: 555px;
margin: 0 0 25px;
}
.section07 .block .box .titleBlock .number{
color: #fff;
font-size: 4.8rem;
font-weight: 700;
line-height: 1.0;
letter-spacing: 2px;
text-shadow: 1px  1px 0px #F58947, -1px  1px 0px #F58947, 1px -1px 0px #F58947, -1px -1px 0px #F58947, 1px  0px 0px #F58947, 0px  1px 0px #F58947, -1px  0px 0px #F58947, 0px -1px 0px #F58947;
padding: 0 0 0 3px;
}
.section07 .block .box .titleBlock .title{
min-height: 75px;
color: #fff;
margin: -5px 0 25px;
display: flex;
align-items: center;
position: relative;
z-index: 1;
}
.section07 .block .box .titleBlock .title::before{
content: "";
width: 100vw;
height: 100%;
background: #F58947;
position: absolute;
z-index: -1;
}
.section07 .block .box .titleBlock .title::after{
content: "";
width: 70px;
height: 100%;
background: #F58947;
position: absolute;
top: 0;
z-index: -1;
}
.section07 .block .box .titleBlock .title span{
font-size: 1.3rem;
font-weight: 500;
margin: 0 20px 0 0;
}
.section07 .block .box .titleBlock .title b{
font-size: 3.2rem;
font-weight: 600;
}
.section07 .block .box .text{
width: 555px;
font-size: 1.6rem;
line-height: 2.0;
}
.section07 .block .box .text + .text{
margin-top: 40px;
}
.section07 .block .box:nth-child(odd) .text,
.section07 .block .box:nth-child(odd) .titleBlock{
float: right;
}
.section07 .block .box:nth-child(odd) .titleBlock .title{
text-align: right;
margin-left: 70px;
padding-left: 75px;
}
.section07 .block .box:nth-child(odd) .titleBlock .title::before{
left: 0;
}
.section07 .block .box:nth-child(odd) .titleBlock .title::after{
clip-path: polygon(0 0, 100% 100%, 100% 0);
left: -69px;
}
.section07 .block .box:nth-child(even) .text,
.section07 .block .box:nth-child(even) .titleBlock{
float: left;
}
.section07 .block .box:nth-child(even) .titleBlock .number{
text-align: right;
padding: 0 15px 0 0;
}
.section07 .block .box:nth-child(even) .titleBlock .title{
margin-right: 70px;
}
.section07 .block .box:nth-child(even) .titleBlock .title::before{
right: 0;
}
.section07 .block .box:nth-child(even) .titleBlock .title::after{
clip-path: polygon(0 0, 0 100%, 100% 0);
right: -69px;
}
@media (max-width: 768px){
.section07 .lead{
font-size: 1.4rem;
margin: 0 0 3.0rem;
}
.section07 .block .box + .box{
margin-top: 3.0rem;
}
.section07 .block .box .image{
width: auto;
}
.section07 .block .box .image figcaption{
padding: 0 0 3.0rem;
}
.section07 .block .box .image{
margin: 0 0 3.0rem!important;
padding: 0 3.0rem 0 0!important;
float: none!important;
}
.section07 .block .box .image::before{
left: auto!important;
right: 1.0rem!important;
}
.section07 .block .box .image figcaption{
left: auto!important;
right: 0!important;
}
.section07 .block .box .titleBlock{
width: 100%;
margin: 0 0 3.0rem;
float: none!important;
}
.section07 .block .box .titleBlock .number{
color: #F38847;
font-size: 2.4rem;
text-align: left!important;
letter-spacing: 0;
text-shadow: none;
margin: 0 0 2.0rem;
padding: 0!important;
opacity: 0.8;
}
.section07 .block .box .titleBlock .title{
min-height: 5.8rem;
text-align: left!important;
margin: 0 0 0 4.0rem!important;
padding: 0 0 0 1.5rem!important;
justify-content: space-between;
}
.section07 .block .box .titleBlock .title::before{
left: 0!important;
right: auto!important;
}
.section07 .block .box .titleBlock .title::after{
width: 4.0rem;
clip-path: polygon(0 0, 100% 100%, 100% 0)!important;
left: -3.9rem!important;
}
.section07 .block .box .titleBlock .title span{
font-size: 0.8rem;
margin: 0;
}
.section07 .block .box .titleBlock .title b{
font-size: 2.2rem;
}
.section07 .block .box .text{
width: 100%;
font-size: 1.4rem;
float: none!important;
}
.section07 .block .box .text + .text{
margin-top: 2.5rem;
}
}

.section08{
background: #F5F5F5;
}
.section08 .logo figcaption{
color: #646464;
font-size: 1.2rem;
text-align: right;
line-height: 1.4;
margin: 20px 0 0;
}
@media (max-width: 768px){
.section08 .logo figcaption{
font-size: 1.0rem;
margin: 1.5rem 0 0;
}
}

.section09{
background: linear-gradient(to right,#6C8BC5,#F58947);
}
.section09 .title{
color: #fff;
font-size: 2.4rem;
font-weight: 600;
text-align: center;
line-height: 1.0;
margin: 0 0 25px;
}
.section09 .title b{
width: 392px;
margin: 0 auto 20px;
display: block;
}
.section09 .lead{
color: #fff;
font-size: 1.6rem;
text-align: center;
line-height: 1.4;
margin: 0 0 60px;
}
.section09 .block{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.section09 .block .box{
width: 300px;
min-height: 360px;
background: #fff;
border-radius: 5px;
padding: 15px;
}
.section09 .block .box:nth-child(-n+3){
margin-bottom: 30px;
}
.section09 .block .box .ttl{
color: #F58947;
font-size: 2.1rem;
font-weight: 500;
line-height: 1.0;
border-bottom: 1px solid #F58947;
margin: 25px 0 10px;
padding: 0 0 10px;
}
.section09 .block .box .list > li{
font-size: 1.4rem;
line-height: 1.8;
padding: 0 0 0 10px;
position: relative;
}
.section09 .block .box .list > li::before{
content: "・";
position: absolute;
left: 0;
}
@media (max-width: 768px){
.section09 .title{
font-size: 1.6rem;
line-height: 1.4;
margin: 0 0 3.0rem;
}
.section09 .title b{
width: 22.4rem;
margin: 0 auto 1.0rem;
}
.section09 .lead{
font-size: 1.4rem;
font-weight: 300;
text-align: left;
margin: 0 0 3.0rem;
}
.section09 .block{
display: block;
}
.section09 .block .box{
width: 100%;
min-height: 31.0rem;
border-radius: 0;
padding: 1.5rem;
}
.section09 .block .box:nth-child(-n+5){
margin-bottom: 3.0rem!important;
}
.section09 .block .box:last-child{
min-height: auto;
}
.section09 .block .box .ttl{
font-size: 2.0rem;
margin: 2.0rem 0 1.0rem;
padding: 0 0 1.0rem;
}
.section09 .block .box .list > li{
font-size: 1.2rem;
padding: 0 0 0 1.0rem;
}
}

.section10{
background: #F0F0F0;
}
.section10 .block{
background: #fff;
border-radius: 10px;
padding: 60px;
display: flex;
flex-wrap: wrap;
}
.section10 .block .title{
width: 100%;
font-size: 2.4rem;
font-weight: 500;
margin: 0 0 30px;
order: 1;
}
.section10 .block .text{
font-size: 1.6rem;
line-height: 2.0;
order: 2;
}
.section10 .block .nameBlock{
width: 100%;
margin: 50px 0 30px;
padding: 0 0 0 297px;
position: relative;
order: 3
}
.section10 .block .nameBlock .name{
font-size: 1.6rem;
font-weight: 700;
}
.section10 .block .nameBlock .logo01{
width: 267px;
position: absolute;
left: 0;
top: 0;
}
.section10 .block .list{
width: 100%;
margin: 0 0 40px;
padding: 0 0 0 297px;
order: 4;
}
.section10 .block .list dt{
font-size: 1.6rem;
font-weight: 700;
line-height: 2.0;
}
.section10 .block .list dd{
font-size: 1.6rem;
line-height: 2.0;
}
.section10 .block .logo02{
width: 520px;
margin: 0 auto;
order: 5;
}
@media (max-width: 768px){
.section10 .block{
border-radius: 0.5rem;
padding: 2.5rem;
display: block;
}
.section10 .block .title{
font-size: 1.6rem;
font-weight: 400;
margin: 0 0 1.5rem;
}
.section10 .block .text{
font-size: 1.2rem;
}
.section10 .block .text + .text{
margin-top: 1.0rem;
}
.section10 .block .nameBlock{
margin: 0 0 3.5rem;
padding: 0;
}
.section10 .block .nameBlock .name{
font-size: 1.2rem;
text-align: center;
font-weight: 400;
}
.section10 .block .nameBlock .logo01{
width: 21.6rem;
margin: 0 auto 0.5rem;
display: block;
position: static;
}
.section10 .block .list{
margin: 3.0rem 0 2.0rem;
padding: 0;
}
.section10 .block .list dt{
font-size: 1.2rem;
}
.section10 .block .list dd{
font-size: 1.2rem;
}
.section10 .block .logo02{
width: 100%;
padding: 0 1.0rem;
}
}

.section11{
background: #fff;
}
.section11 .block{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: flex-start;
}
.section11 .block .box{
width: 465px;
border: 1px solid #F58947;
border-radius: 10px;
margin: 0 0 30px;
overflow: hidden;
}
.section11 .block .box:last-child{
margin-bottom: 0;
}
.section11 .block .box .question{
min-height: 80px;
background: #fef4ed;
display: flex;
align-items: center;
position: relative;
cursor: pointer;
}
.section11 .block .box .question::before{
content: "";
width: 20px;
height: 20px;
border-right: 1px solid #F58947;
border-bottom: 1px solid #F58947;
transform: rotate(45deg);
position: absolute;
right: 25px;
top: 50%;
margin-top: -15px;
transition: 0.3s;
}
.section11 .block .box .question.active::before{
transform: rotate(-135deg);
margin-top: -5px;
}
.section11 .block .box .question span{
font-size: 1.4rem;
font-weight: 400;
padding: 5px 45px 5px 50px;
display: block;
position: relative;
}
.section11 .block .box .question span::before{
content: "Q.";
font-weight: 500;
position: absolute;
left: 20px;
top: 50%;
margin-top: -12px;
}
.section11 .block .box .answer{
min-height: 190px;
border-top: 1px solid #F58947;
padding: 5px 20px;
display: flex;
align-items: center;
position: relative;
}
.section11 .block .box .answer .text{
font-size: 1.4rem;
}
@media (max-width: 768px){
.section11 .block{
display: block;
}
.section11 .block .box{
width: 100%;
border-radius: 1.0rem;
margin: 0 0 1.5rem;
}
.section11 .block .box .question{
min-height: auto;
display: block;
}
.section11 .block .box .question::before{
width: 1.5rem;
height: 1.5rem;
right: 2.5rem;
margin-top: -1.2rem;
}
.section11 .block .box .question.active::before{
margin-top: -0.5rem;
}
.section11 .block .box .question span{
font-size: 1.4rem;
padding: 2.0rem 6.0rem 2.0rem 2.0rem;
}
.section11 .block .box .question span::before{
content: "Q.";
font-weight: 400;
position: static;
margin-top: 0;
}
.section11 .block .box .answer{
min-height: auto;
padding: 2.0rem;
display: block;
}
.section11 .block .box .answer .text{
font-size: 1.3rem;
}
}

.section12{
background: #F3F3F3;
}
.section12 .title{
font-size: 2.4rem;
font-weight: 600;
text-align: center;
margin: 0 0 20px;
}
.section12 .lead{
font-size: 1.6rem;
text-align: center;
margin: 0 0 60px;
}
.section12 form{
background: #fff;
border-radius: 10px;
padding: 60px;
}
.section12 form .ttl{
background: #F58947;
border-radius: 10px;
margin: 0 0 30px;
padding: 12px 12px 12px 20px;
display: flex;
justify-content: space-between;
align-items: center;
}
.section12 form .ttl b{
color: #fff;
font-size: 1.6rem;
font-weight: 700;
}
.section12 form .ttl span{
background: #fff;
color: #646464;
font-size: 1.6rem;
text-align: center;
line-height: 1.0;
border-radius: 2.5px;
padding: 10px 18px;
display: inline-block;
}
.section12 form .block01{
margin: 0 0 40px;
display: flex;
justify-content: flex-end;
align-items: center;
}
.section12 form .block01 .name{
font-size: 1.6rem;
font-weight: 500;
text-align: right;
margin: 0 35px 0 0;
}
.section12 form .block01 input{
width: 450px;
color: #646464;
font-size: 1.6rem;
font-weight: 500;
border: 1px solid #000;
border-radius: 10px;
padding: 20px;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
}
.section12 form .block01 .selectBox{
width: 450px;
position: relative;
z-index: 1;
}
.section12 form .block01 .selectBox::before{
content: "";
width: 18px;
height: 24px;
background: url("../img/sec12_ico_01.png") no-repeat;
background-size: 100% auto;
position: absolute;
right: 30px;
top: 50%;
margin-top: -12px;
z-index: -1;
}
.section12 form .block01 select{
width: 100%;
background: none;
color: #646464;
font-size: 1.6rem;
font-weight: 500;
border: 1px solid #000;
border-radius: 10px;
padding: 20px 50px 20px 20px;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
}
.section12 form .block02{
margin: 0 0 40px;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: flex-start;
}
.section12 form .block02 .box{
width: 485px;
border: 1px solid #000;
border-radius: 10px;
margin: 0 0 30px;
overflow: hidden;
}
.section12 form .block02 .box:last-child{
margin-bottom: 0;
}
.section12 form .block02 .box .question{
font-size: 1.6rem;
padding: 20px 45px 20px 20px;
position: relative;
cursor: pointer;
}
.section12 form .block02 .box .question::before{
content: "";
width: 17px;
height: 17px;
border-right: 1px solid #000;
border-bottom: 1px solid #000;
transform: rotate(45deg);
position: absolute;
right: 25px;
top: 50%;
margin-top: -15px;
transition: 0.3s;
}
.section12 form .block02 .box .question.active::before{
transform: rotate(-135deg);
top: 43px;
}
.section12 form .block02 .box .list{
background: #fef4ed;
border-top: 1px solid #000;
padding: 30px;
}
.section12 form .block02 .box .list > li{
margin: 0 0 15px;
}
.section12 form .block02 .box .list > li:last-child{
margin-bottom: 0;
}
.section12 form .block03{
margin: 0 0 60px;
}
.section12 form .block03 .list{
display: flex;
flex-wrap: wrap;
}
.section12 form .block03 .list > li{
width: 25%;
margin: 0 0 30px;
}
.section12 form .block03 .list > li:nth-last-child(-n+4){
margin-bottom: 0;
}
.section12 form .block04{
margin: 0 0 60px;
}
.section12 form .block04 .text{
font-size: 1.8rem;
font-weight: 500;
text-align: center;
line-height: 1.4;
margin: 0 0 30px;
}
.section12 form .block04 textarea{
width: 100%;
height: 326px;
font-size: 1.6rem;
border: 1px solid #646464;
border-radius: 10px;
padding: 30px;
resize: none;
}
.section12 form [class^="block"] input::placeholder,
.section12 form [class^="block"] textarea::placeholder{
color: #D9D9D9;
}
.section12 form [class^="block"] input:focus,
.section12 form [class^="block"] select:focus,
.section12 form [class^="block"] textarea:focus{
outline: 0;
}
.section12 form [class^="block"] .list > li label span{
font-size: 1.6rem;
font-weight: 500;
line-height: 1.0;
padding: 10px 0 10px 60px;
display: block;
position: relative;
}
.section12 form [class^="block"] .list > li label span::before{
content: "";
width: 40px;
height: 40px;
background: #fff;
border: 1px solid #000;
border-radius: 5px;
position: absolute;
left: 0;
top: 50%;
margin-top: -20px;
}
.section12 form [class^="block"] .list > li label input:checked + span::after{
content: "";
width: 14px;
height: 21px;
border-right: 4px solid #F58947;
border-bottom: 4px solid #F58947;
transform: rotate(40deg);
position: absolute;
left: 12px;
top: 4px;
}
.section12 form [class^="block"] .list > li label input{
display: none;
}
.section12 form .form_btn{
width: 100%;
background: #6C8BC5;
color: #fff;
font-size: 2.6rem;
font-weight: 700;
text-align: center;
line-height: 1.0;
border-radius: 10px;
padding: 30px 0;
position: relative;
overflow: hidden;
cursor: pointer;
}
@media (max-width: 768px){
.section12 .title{
font-size: 1.6rem;
margin: 0 0 3.0rem;
}
.section12 .lead{
font-size: 1.4rem;
text-align: left;
margin: 0 0 3.5rem;
}
.section12 form{
border-radius: 0.5rem;
padding: 2.0rem 1.5rem;
}
.section12 form .ttl{
border-radius: 0.5rem;
margin: 0 0 1.5rem;
padding: 1.0rem 0.5rem 1.0rem 1.0rem;
}
.section12 form .ttl b{
font-size: 1.3rem;
line-height: 1.4;
}
.section12 form .ttl span{
width: 4.8rem;
font-size: 1.0rem;
line-height: 1.0;
border-radius: 0.25rem;
padding: 0.8rem 0;
}
.section12 form .block01{
margin: 0 0 2.0rem;
}
.section12 form .block01 .name{
font-size: 1.2rem;
margin: 0 2.0rem 0 0;
}
.section12 form .block01 input{
width: 17.8rem;
font-size: 1.2rem;
border-radius: 0.5rem;
padding: 1.0rem;
}
.section12 form .block01 .selectBox{
width: 17.8rem;
}
.section12 form .block01 .selectBox::before{
width: 1.2rem;
height: 1.8rem;
right: 1.0rem;
margin-top: -0.8rem;
}
.section12 form .block01 select{
font-size: 1.2rem;
border-radius: 0.5rem;
padding: 1.0rem 1.5rem 1.0rem 1.0rem;
}
.section12 form .block02{
margin: 0 0 2.0rem;
}
.section12 form .block02 .box{
width: 100%;
border-radius: 0.5rem;
margin: 0 0 1.0rem;
}
.section12 form .block02 .box .question{
font-size: 1.2rem;
padding: 1.0rem 3.0rem 1.0rem 1.0rem;
}
.section12 form .block02 .box .question::before{
width: 0.6rem;
height: 0.6rem;
right: 1.2rem;
margin-top: -0.4rem;
}
.section12 form .block02 .box .question.active::before{
top: 2.2rem;
}
.section12 form .block02 .box .list{
padding: 2.0rem;
}
.section12 form .block02 .box .list > li{
margin: 0 0 1.0rem;
}
.section12 form .block03{
margin: 0 0 2.0rem;
}
.section12 form .block03 .list{
padding: 0 1.5rem;
}
.section12 form .block03 .list > li{
width: 50%;
margin: 0 0 1.0rem!important;
}
.section12 form .block03 .list > li:last-child{
margin-bottom: 0!important;
}
.section12 form .block04{
margin: 0 0 2.0rem;
}
.section12 form .block04 .text{
font-size: 1.15rem;
text-align: left;
line-height: 1.6;
margin: 0 0 2.0rem;
}
.section12 form .block04 textarea{
height: 14.0rem;
font-size: 1.15rem;
border-radius: 0.5rem;
padding: 1.2rem;
}
.section12 form [class^="block"] .list > li label span{
font-size: 1.2rem;
padding: 0.5rem 0 0.5rem 3.5rem;
}
.section12 form [class^="block"] .list > li label span::before{
width: 2.0rem;
height: 2.0rem;
border-radius: 0.4rem;
margin-top: -1.0rem;
}
.section12 form [class^="block"] .list > li label input:checked + span::after{
width: 0.4rem;
height: 1.1rem;
border-right: 0.4rem solid #F58947;
border-bottom: 0.4rem solid #F58947;
left: 0.8rem;
top: 0.3rem;
}
.section12 form .form_btn{
font-size: 1.3rem;
border-radius: 0.5rem;
padding: 1.0rem 0.7rem;
}
}

.accBlock{
display: none;
}


/*----------------------------------------------------------
hover
----------------------------------------------------------*/
@media (min-width: 769px){
#header .inner .btn a{
position: relative;
overflow: hidden;
}
#header .inner .btn a span{
position: relative;
z-index: 1;
}
#header .inner .btn a:hover span{
color: #F58947;
}
#header .inner .btn a::before{
content: "";
width: 100%;
height: 100%;
background: #fff;
position: absolute;
left: 0;
top: 0;
transition: 0.3s;
opacity: 0;
}
#header .inner .btn a:hover::before{
opacity: 1;
}

#footer .inner .col01 .list > li a::before{
content: "";
width: 0%;
height: 1px;
background: #fff;
position: absolute;
left: 0;
bottom: -3px;
transition: 0.3s;
}
#footer .inner .col01 .list > li a:hover::before{
width: 100%;
}

.mainVisual .inner .btn a{
display: inline-block;
position: relative;
}
.mainVisual .inner .btn a::before{
content: "";
width: 100%;
height: 100%;
background: url("../img/mv_btn_01_pc_on.png") no-repeat;
background-size: 100% auto;
position: absolute;
left: 0;
top: 0;
opacity: 0;
transition: 0.3s;
}
.mainVisual .inner .btn a:hover::before{
opacity: 1;
}

.section12 form .form_btn span{
position: relative;
z-index: 1;
}
.section12 form .form_btn::before{
content: "";
width: 100%;
height: 100%;
background: #F58947;
position: absolute;
left: 0;
top: 0;
opacity: 0;
transition: 0.3s;
}
.section12 form .form_btn:hover::before{
opacity: 1;
}
}