@charset "utf-8";
/* CSS Document */

/*----------------------------------------------------------
shadow
----------------------------------------------------------*/
.t-shadow01{
text-shadow: 0 0 10px rgba(0, 0, 0, 0.4);
}
.t-shadow02{
text-shadow: 0 0 10px rgba(0, 0, 0, 1);
}
.i-shadow01{
filter: drop-shadow(0 0 10px rgba(0, 0, 0, 0.4));
}
.i-shadow02{
filter: drop-shadow(0 0 10px rgba(0, 0, 0, 1));
}
.b-shadow01{
box-shadow: 0 0 10px 0px rgba(0, 0, 0, 0.2);
}
.b-shadow02{
box-shadow: 0 0 10px 0px rgba(0, 0, 0, 1);
}
@media (max-width: 768px){
.t-shadow01{
text-shadow: 0 0 0.8rem rgba(0, 0, 0, 0.4);
}
.t-shadow02{
text-shadow: 0 0 0.8rem rgba(0, 0, 0, 1);
}
.i-shadow01{
filter: drop-shadow(0 0 0.8rem rgba(0, 0, 0, 0.4));
}
.i-shadow02{
filter: drop-shadow(0 0 0.8rem rgba(0, 0, 0, 1));
}
.b-shadow01{
box-shadow: 0 0 0.8rem 0px rgba(0, 0, 0, 0.2);
}
.b-shadow02{
box-shadow: 0 0 0.8rem 0px rgba(0, 0, 0, 1);
}
}

/*----------------------------------------------------------
title
----------------------------------------------------------*/
.titleTypeA01{
color: #fff;
font-size: 3.4rem;
font-weight: 800;
margin: 0 0 60px;
}
.titleTypeA01 strong{
font-size: 6.0rem;
}
.titleTypeA01 span{
border: 2px solid #fff;
border-radius: 100px;
display: inline-block;
}
.titleTypeA01 span b{
background: #fff;
font-size: 1.8rem;
border-radius: 100px;
margin: 4px;
padding: 6px 40px;
display: block;
}
@media (max-width: 768px){
.titleTypeA01{
font-size: 1.7rem;
margin: 0 0 3.0rem;
}
.titleTypeA01 strong{
font-size: 3.0rem;
}
.titleTypeA01 span{
border: 0.2rem solid #fff;
margin: 0 0 0.3rem;
}
.titleTypeA01 span b{
font-size: 1.4rem;
margin: 0.2rem;
padding: 0.3rem 2.0rem;
}
}

.titleTypeB01{
margin: 0 0 60px;
}
.titleTypeB01 > .title{
color: #fff;
font-size: 3.4rem;
font-weight: 800;
border-bottom: 1px solid #fff;
margin: 0 0 30px;
padding: 0 0 30px;
}
.titleTypeB01 > .title span{
border: 2px solid #fff;
border-radius: 100px;
margin: 0 0 10px;
display: inline-block;
}
.titleTypeB01 > .title span b{
background: #fff;
font-size: 1.8rem;
border-radius: 100px;
margin: 4px;
padding: 6px 40px;
display: block;
}
.titleTypeB01 > .text{
color: #fff;
font-size: 2.2rem;
line-height: 1.8;
}
@media (max-width: 768px){
.titleTypeB01{
margin: 0 0 3.0rem;
}
.titleTypeB01 > .title{
font-size: 2.0rem;
margin: 0 0 2.0rem;
padding: 0 0 2.0rem;
}
.titleTypeB01 > .title span{
border: 0.2rem solid #fff;
margin: 0 0 1.0rem;
}
.titleTypeB01 > .title span b{
font-size: 1.4rem;
margin: 0.2rem;
padding: 0.3rem 2.0rem;
}
.titleTypeB01 > .text{
font-size: 1.6rem;
}
}


.section02 .titleTypeA01 span{
color: #e75c7a;
}
.section03 .titleTypeA01 span{
color: #e3893f;
}
.section04 .titleTypeA01 span{
color: #e8b609;
}
.section06 .titleTypeB01 span{
color: #56a1d7;
}
.section07 .titleTypeB01 span{
color: #3751c1;
}

/*----------------------------------------------------------
button
----------------------------------------------------------*/
[class^="btnTypeA"]{
font-weight: 800;
text-align: center;
}
[class^="btnTypeA"] .btn a{
background: linear-gradient(to right, #e96d42, #ffa229);
color: #fff;
text-align: center;
border-radius: 100px;
position: relative;
}
[class^="btnTypeA"] .btn a:hover{
background: linear-gradient(to right, #ff2d2d, #ff9000);
}
[class^="btnTypeA"] .btn a::before{
content: "";
width: 14px;
height: 20px;
background: #fff;
clip-path: polygon(0 0, 0% 100%, 100% 50%);
position: absolute;
right: 40px;
top: 50%;
transform: translateY(-50%);
}
@media (max-width: 768px){
[class^="btnTypeA"] .btn a{
display: block;
}
[class^="btnTypeA"] .btn a::before{
width: 0.7rem;
height: 1.0rem;
right: 2.0rem;
}
}

.btnTypeA01 .txt{
color: #fff;
font-size: 2.0rem;
margin: 0 0 15px;
}
.btnTypeA01 .btn a{
width: 600px;
font-size: 3.2rem;
padding: 18px 0 20px;
}
@media (max-width: 768px){
.btnTypeA01 .txt{
font-size: 1.6rem;
margin: 0 0 1.0rem;
}
.btnTypeA01 .btn a{
width: 100%;
font-size: 2.0rem;
padding: 1.5rem 0 1.7rem;
}
}

.btnTypeA02.type02{
margin: 0 0 30px;
}
.btnTypeA02 .txt{
font-size: 1.6rem;
margin: 0 0 10px;
}
.btnTypeA02 .btn a{
width: 400px;
font-size: 2.4rem;
padding: 15px 0;
}
@media (max-width: 768px){
.btnTypeA02 .txt{
font-size: 1.3rem;
margin: 0 0 1.0rem;
}
.btnTypeA02 .btn a{
width: 100%;
font-size: 2.0rem;
padding: 1.2rem 0;
}
}

.btnTypeB01{
width: 400px;
background: #2e2e2e;
font-weight: 800;
text-align: center;
border-radius: 20px 0 0 0;
padding: 20px 0;
position: fixed;
right: 0;
bottom: 0;
z-index: 10;
transition: 0.3s;
transform: translateY(101%);
}
.btnTypeB01.active{
transform: translateY(0);
}
.btnTypeB01 .btn a{
background: linear-gradient(to right, #e96d42, #ffa229);
color: #fff;
font-size: 2.0rem;
text-align: center;
border-radius: 100px;
padding: 15px 80px;
position: relative;
}
.btnTypeB01 .btn a:hover{
background: linear-gradient(to right, #ff2d2d, #ff9000);
}
.btnTypeB01 .btn a::before{
content: "";
width: 8px;
height: 14px;
background: #fff;
clip-path: polygon(0 0, 0% 100%, 100% 50%);
position: absolute;
right: 40px;
top: 50%;
transform: translateY(-50%);
}
.btnTypeB01 .txt{
color: #fff;
font-size: 1.6rem;
margin: 0 0 10px;
}
@media (max-width: 768px){
.btnTypeB01{
width: 100%;
border-radius: 2.0rem 2.0rem 0 0;
padding: 1.0rem 2.0rem 1.5rem;
}
.btnTypeB01 .btn a{
font-size: 1.6rem;
padding: 1.0rem 0;
display: block;
}
.btnTypeB01 .btn a::before{
width: 0.7rem;
height: 1.0rem;
right: 2.0rem;
}
.btnTypeB01 .txt{
font-size: 1.2rem;
margin: 0 0 1.0rem;
}
}


.btnTypeC01{
text-align: center;
}
.btnTypeC01 a{
background: linear-gradient(to right, #e96d42, #ffa229);
color: #fff;
font-size: 2.0rem;
font-weight: 800;
text-align: center;
border-radius: 100px;
padding: 10px 80px;
position: relative;
}
.btnTypeC01 a:hover{
background: linear-gradient(to right, #ff2d2d, #ff9000);
}
.btnTypeC01 a::before{
content: "";
width: 8px;
height: 14px;
background: #fff;
clip-path: polygon(0 0, 0% 100%, 100% 50%);
position: absolute;
right: 40px;
top: 50%;
transform: translateY(-50%);
}
@media (max-width: 768px){
.btnTypeC01{
margin: 0 2.0rem;
}
.btnTypeC01 a{
font-size: 1.8rem;
padding: 1.2rem 0;
display: block;
}
.btnTypeC01 a::before{
width: 0.7rem;
height: 1.0rem;
right: 2.0rem;
}
}

.btnTypeD01{
width: 100%;
text-align: center;
}
.btnTypeD01 a{
background: linear-gradient(to right, #e96d42, #ffa229);
color: #fff;
font-size: 2.0rem;
font-weight: 800;
text-align: center;
border-radius: 100px;
padding: 15px 80px;
position: relative;
}
.btnTypeD01 a:hover{
background: linear-gradient(to right, #ff2d2d, #ff9000);
}
.btnTypeD01 a::before{
content: "";
width: 8px;
height: 14px;
background: #fff;
clip-path: polygon(0 0, 0% 100%, 100% 50%);
position: absolute;
right: 40px;
top: 50%;
transform: translateY(-50%);
}
@media (max-width: 768px){
.btnTypeD01{
width: auto;
margin: 0 1.0rem;
}
.btnTypeD01 a{
font-size: 1.6rem;
padding: 1.2rem 0;
display: block;
}
.btnTypeD01 a::before{
width: 0.7rem;
height: 1.0rem;
right: 2.0rem;
}
}

/*----------------------------------------------------------
block
----------------------------------------------------------*/
.blockTypeA01 .block{
background: #fff;
border-radius: 40px;
overflow: hidden;
}
.blockTypeA01 .block + .block{
margin-top: 60px;
}
.blockTypeA01 .block .title{
color: #fff;
font-size: 2.2rem;
font-weight: 800;
text-align: center;
padding: 12px 0;
}
.blockTypeA01 .block > .box{
padding: 30px;
display: flex;
align-items: center;
}
.blockTypeA01 .block > .box img{
border-radius: 20px;
}
.blockTypeA01 .block > .box .text{
font-size: 1.6rem;
line-height: 1.8;
margin: 0 0 0 30px;
}
.blockTypeA01 .block > .box .text b{
font-weight: 800;
}
.blockTypeA01 .block .accBlock{
display: none;
}
.blockTypeA01 .block .moreBtn{
width: 400px;
border-radius: 100px;
margin: 0 auto 30px;
position: relative;
cursor: pointer;
}
.blockTypeA01 .block .moreBtn.open{
margin-top: 30px;
}
.blockTypeA01 .block .moreBtn::before{
content: "";
width: 22px;
height: 22px;
background: #fff;
border-radius: 100px;
position: absolute;
right: 30px;
top: 50%;
transform: translateY(-50%);
z-index: 2;
}
.blockTypeA01 .block .moreBtn span{
color: #fff;
font-size: 1.6rem;
font-weight: 800;
text-align: center;
border-radius: 100px;
padding: 7px 0;
display: block;
position: relative;
}
.blockTypeA01 .block .moreBtn span::before{
content: "";
width: 14px;
height: 2px;
position: absolute;
right: 34px;
top: 50%;
transform: translateY(-50%);
z-index: 2;
}
.blockTypeA01 .block .moreBtn span::after{
content: "";
width: 2px;
height: 14px;
position: absolute;
right: 40px;
top: 50%;
transform: translateY(-50%);
z-index: 2;
}
.blockTypeA01 .block .moreBtn.open span,
.blockTypeA01 .block .moreBtn.open span::before,
.blockTypeA01 .block .moreBtn.open span::after{
background: #959595!important;
}
.blockTypeA01 .block .moreBtn.open span::after{
display: none;
}
@media (max-width: 768px){
.blockTypeA01 .block{
border-radius: 2.0rem;
}
.blockTypeA01 .block + .block{
margin-top: 2.0rem;
}
.blockTypeA01 .block .title{
font-size: 1.7rem;
padding: 1.5rem 0;
}
.blockTypeA01 .block > .box{
padding: 0;
display: block;
}
.blockTypeA01 .block > .box img{
border-radius: 0;
}
.blockTypeA01 .block > .box .text{
font-size: 1.4rem;
margin: 2.0rem;
}
.blockTypeA01 .block .moreBtn{
width: auto;
margin: 0 2.0rem 2.0rem;
}
.blockTypeA01 .block .moreBtn.open{
margin: 1.0rem 2.0rem;
}
.blockTypeA01 .block .moreBtn::before{
width: 1.7rem;
height: 1.7rem;
right: 6.0rem;
}
.blockTypeA01 .block .moreBtn span{
font-size: 1.4rem;
padding: 0.7rem;
}
.blockTypeA01 .block .moreBtn span::before{
width: 1.1rem;
height: 0.2rem;
right: 6.35rem;
}
.blockTypeA01 .block .moreBtn span::after{
width: 0.2rem;
height: 1.1rem;
right: 6.8rem;
}
}

.blockTypeA01 .block .accBlock.chigaumikata{
background: url("../images/sec02_01_bg_01.webp");
background-size: 100px auto;
padding: 60px;
}
.blockTypeA01 .block .accBlock.chigaumikata .ttl01{
width: 800px;
color: #fff;
font-size: 1.6rem;
text-align: center;
border-top: 4px solid #fff;
border-bottom: 4px solid #fff;
margin: 0 auto 40px;
padding: 15px 0;
}
.blockTypeA01 .block .accBlock.chigaumikata .ttl01 b{
font-size: 2.4rem;
border-bottom: 2px solid #fff;
margin: 0 0 15px;
padding: 0 0 15px;
display: block;
}
.blockTypeA01 .block .accBlock.chigaumikata .block01{
margin: 0 auto 60px;
}
.blockTypeA01 .block .accBlock.chigaumikata .block01 > .box{
display: flex;
align-items: center;
justify-content: center;
}
.blockTypeA01 .block .accBlock.chigaumikata .block01 > .box + .box{
margin-top: 25px;
}
.blockTypeA01 .block .accBlock.chigaumikata .block01 > .box .txt{
width: 500px;
background: #f8f1df;
font-size: 1.6rem;
font-weight: 800;
border-radius: 10px;
margin: 0 0 0 30px;
padding: 20px 30px;
position: relative;
}
.blockTypeA01 .block .accBlock.chigaumikata .block01 > .box .txt::before{
content: "";
background: #f8f1df;
width: 11px;
height: 18px;
clip-path: polygon(100% 0, 0 50%, 100% 100%);
position: absolute;
left: -10px;
top: 50%;
transform: translateY(-50%);
}
.blockTypeA01 .block .accBlock.chigaumikata .block01 > .box:nth-child(even) img{
order: 2;
}
.blockTypeA01 .block .accBlock.chigaumikata .block01 > .box:nth-child(even) .txt{
margin: 0 30px 0 0;
order: 1;
}
.blockTypeA01 .block .accBlock.chigaumikata .block01 > .box:nth-child(even) .txt::before{
clip-path: polygon(0 0, 100% 50%, 0 100%);
left: auto;
right: -10px;
}
.blockTypeA01 .block .accBlock.chigaumikata .block02{
margin: 0 0 40px;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.blockTypeA01 .block .accBlock.chigaumikata .block02 > .box{
width: 425px;
min-height: 360px;
background: #fff;
border-radius: 20px;
margin: 0 0 30px;
padding: 30px 0;
position: relative;
}
@media (min-width: 769px){
.blockTypeA01 .block .accBlock.chigaumikata .block02 > .box:nth-last-child(-n+2){
min-height: 400px;
margin-bottom: 0;
}
}
.blockTypeA01 .block .accBlock.chigaumikata .block02 > .box .ttl02{
color: #cf4c22;
font-size: 2.2rem;
font-weight: 800;
text-align: center;
margin: 0 0 10px;
}
.blockTypeA01 .block .accBlock.chigaumikata .block02 > .box .txt{
font-size: 1.6rem;
text-align: center;
line-height: 1.8;
}
.blockTypeA01 .block .accBlock.chigaumikata .block02 > .box .txt b{
color: #cf4c22;
font-weight: 800;
}
.blockTypeA01 .block .accBlock.chigaumikata .block02 > .box img{
position: absolute;
left: 50%;
bottom: 20px;
transform: translateX(-50%);
}
.blockTypeA01 .block .accBlock.chigaumikata .btnTypeA02 .txt{
color: #fff;
}
@media (max-width: 768px){
.blockTypeA01 .block .accBlock.chigaumikata{
background-size: 10.0rem auto;
padding: 3.0rem 2.0rem 2.0rem;
}
.blockTypeA01 .block .accBlock.chigaumikata .ttl01{
width: 100%;
font-size: 1.4rem;
border-top: 0.3rem solid #fff;
border-bottom: 0.3rem solid #fff;
margin: 0 auto 2.0rem;
padding: 1.2rem 0;
}
.blockTypeA01 .block .accBlock.chigaumikata .ttl01 b{
font-size: 1.8rem;
border-bottom: 0.1rem solid #fff;
margin: 0 0 1.2rem;
padding: 0 0 1.2rem;
}
.blockTypeA01 .block .accBlock.chigaumikata .block01{
margin: 0 auto 3.0rem;
}
.blockTypeA01 .block .accBlock.chigaumikata .block01 > .box + .box{
margin-top: 2.0rem;
}
.blockTypeA01 .block .accBlock.chigaumikata .block01 > .box img{
width: 5.5rem;
height: auto;
}
.blockTypeA01 .block .accBlock.chigaumikata .block01 > .box .txt{
width: calc(100% - 6.5rem);
font-size: 1.4rem;
border-radius: 1.0rem;
margin: 0 0 0 1.0rem;
padding: 1.0rem 0 1.0rem 1.5rem;
}
.blockTypeA01 .block .accBlock.chigaumikata .block01 > .box .txt::before{
width: 0.6rem;
height: 1.0rem;
left: -0.5rem;
}
.blockTypeA01 .block .accBlock.chigaumikata .block01 > .box:nth-child(even) .txt{
margin: 0 1.5rem 0 0;
}
.blockTypeA01 .block .accBlock.chigaumikata .block01 > .box:nth-child(even) .txt::before{
right: -0.5rem;
}
.blockTypeA01 .block .accBlock.chigaumikata .block02{
margin: 0 0 2.0rem;
display: block;
}
.blockTypeA01 .block .accBlock.chigaumikata .block02 > .box{
width: 100%;
min-height: auto;
border-radius: 1.0rem;
margin: 0 0 2.0rem;
padding: 2.0rem 0;
}
.blockTypeA01 .block .accBlock.chigaumikata .block02 > .box:last-child{
margin-bottom: 0;
}
.blockTypeA01 .block .accBlock.chigaumikata .block02 > .box .ttl02{
font-size: 1.8rem;
margin: 0 0 1.0rem;
}
.blockTypeA01 .block .accBlock.chigaumikata .block02 > .box .txt{
font-size: 1.4rem;
margin: 0 0 1.5rem;
}
.blockTypeA01 .block .accBlock.chigaumikata .block02 > .box img{
width: calc(100% - 4.0rem);
height: auto;
margin: 0 2.0rem;
display: block;
position: static;
transform: translateX(0);
}
}

.blockTypeA01 .block .accBlock.tekisei{
color: #082950;
}
.blockTypeA01 .block .accBlock.tekisei .block01{
background: url("../images/sec02_02_bg_01.webp");
padding: 60px 140px;
display: flex;
}
.blockTypeA01 .block .accBlock.tekisei .block01 > .box{
margin: 0 0 0 60px;
display: flex;
flex-wrap: wrap;
align-content: center;
}
.blockTypeA01 .block .accBlock.tekisei .block01 > .box .txt{
font-size: 1.6rem;
line-height: 1.8;
}
.blockTypeA01 .block .accBlock.tekisei .block01 > .box .txt + .txt{
margin-top: 20px;
}
.blockTypeA01 .block .accBlock.tekisei .block02{
background: #ffe286;
padding: 60px 140px;
}
.blockTypeA01 .block .accBlock.tekisei .block02 > .box{
background: #fff;
margin: 0 auto;
padding: 40px 60px 20px;
}
.blockTypeA01 .block .accBlock.tekisei .block02 > .box .ttl,
.blockTypeA01 .block .accBlock.tekisei .block03 .ttl01{
font-size: 2.2rem;
font-weight: 800;
text-align: center;
margin: 0 0 20px;
}
.blockTypeA01 .block .accBlock.tekisei .block02 > .box .txt{
font-size: 1.6rem;
line-height: 1.8;
margin: 0 0 20px;
}
.blockTypeA01 .block .accBlock.tekisei .block02 > .box img{
margin: 0 auto;
display: block;
}
.blockTypeA01 .block .accBlock.tekisei .block03{
background: #d9f0ee;
padding: 60px 140px;
}
.blockTypeA01 .block .accBlock.tekisei .block03 .list{
text-align: center;
margin: 0 0 60px;
}
.blockTypeA01 .block .accBlock.tekisei .block03 .list ul{
text-align: left;
display: inline-block;
}
.blockTypeA01 .block .accBlock.tekisei .block03 .list ul > li{
font-size: 1.6rem;
margin: 0 0 20px;
padding: 0 0 0 34px;
position: relative;
}
.blockTypeA01 .block .accBlock.tekisei .block03 .list ul > li:last-child{
margin-bottom: 0;
}
.blockTypeA01 .block .accBlock.tekisei .block03 .list ul > li::before{
content: "";
width: 30px;
height: 26px;
background: url("../images/sec02_02_ico_01.webp") no-repeat;
background-size: 100% auto;
position: absolute;
left: 0;
top: -1px;
}
.blockTypeA01 .block .accBlock.tekisei .block03 .ttl02{
text-align: center;
margin: 0 0 30px;
}
.blockTypeA01 .block .accBlock.tekisei .block03 .ttl02 span{
background: #11284a;
color: #fff;
font-size: 1.6rem;
font-weight: bold;
border-radius: 100px;
padding: 6px 40px;
position: relative;
}
.blockTypeA01 .block .accBlock.tekisei .block03 .ttl02 span::before{
content: "";
width: 22px;
height: 14px;
background: #11284a;
clip-path: polygon(50% 100%, 0 0, 100% 0);
position: absolute;
left: 50%;
bottom: -13px;
transform: translateX(-50%);
}
.blockTypeA01 .block .accBlock.tekisei .block03 img{
margin: 0 auto 40px;
display: block;
}
@media (max-width: 768px){
.blockTypeA01 .block .accBlock.tekisei .block01{
background-size: 3.8rem;
padding: 4.0rem 2.0rem;
display: block;
}
.blockTypeA01 .block .accBlock.tekisei .block01 img{
width: 100%;
height: auto;
margin: 0 0 2.0rem;
}
.blockTypeA01 .block .accBlock.tekisei .block01 > .box{
margin: 0;
display: block;
}
.blockTypeA01 .block .accBlock.tekisei .block01 > .box .txt{
font-size: 1.4rem;
}
.blockTypeA01 .block .accBlock.tekisei .block01 > .box .txt + .txt{
margin-top: 2.0rem;
}
.blockTypeA01 .block .accBlock.tekisei .block02{
padding: 4.0rem 2.0rem;
}
.blockTypeA01 .block .accBlock.tekisei .block02 > .box{
padding: 3.0rem 2.0rem 2.0rem;
}
.blockTypeA01 .block .accBlock.tekisei .block02 > .box .ttl,
.blockTypeA01 .block .accBlock.tekisei .block03 .ttl01{
font-size: 1.6rem;
margin: 0 0 1.5rem;
}
.blockTypeA01 .block .accBlock.tekisei .block02 > .box .txt{
font-size: 1.4rem;
margin: 0 0 1.0rem;
}
.blockTypeA01 .block .accBlock.tekisei .block02 > .box img{
width: 100%;
height: auto;
}
.blockTypeA01 .block .accBlock.tekisei .block03{
padding: 4.0rem 2.0rem;
}
.blockTypeA01 .block .accBlock.tekisei .block03 .list{
margin: 0 0 4.0rem;
}
.blockTypeA01 .block .accBlock.tekisei .block03 .list ul > li{
font-size: 1.4rem;
margin: 0 0 1.5rem;
padding: 0 0 0 2.5rem;
}
.blockTypeA01 .block .accBlock.tekisei .block03 .list ul > li::before{
width: 2.0rem;
height: 1.6rem;
top: 0.2rem;
}
.blockTypeA01 .block .accBlock.tekisei .block03 .ttl02{
margin: 0 0 1.3rem;
}
.blockTypeA01 .block .accBlock.tekisei .block03 .ttl02 span{
font-size: 1.4rem;
padding: 0.6rem 0;
display: block;
}
.blockTypeA01 .block .accBlock.tekisei .block03 .ttl02 span::before{
width: 1.5rem;
height: 0.8rem;
bottom: -0.7rem;
}
.blockTypeA01 .block .accBlock.tekisei .block03 img{
width: 100%;
height: auto;
margin: 0 auto 2.0rem;
}
}

.blockTypeA01 .block .course{
padding: 30px 30px 0;
}
.blockTypeA01 .block .course .block01{
background: #fff3f6;
border-radius: 20px;
overflow: hidden;
}
.blockTypeA01 .block .course .block01 + .block01{
margin-top: 30px;
}
.blockTypeA01 .block .course .block01:nth-of-type(5){
margin-bottom: 30px;
}
.blockTypeA01 .block .course .block01 .ttl01{
background: #e75c7a;
color: #fff;
font-size: 2.0rem;
text-align: center;
padding: 10px 0;
}
.blockTypeA01 .block .course .block01 > .box{
padding: 30px;
display: flex;
flex-wrap: wrap;
align-items: center;
}
.blockTypeA01 .block .course .block01 > .box img{
border-radius: 0 40px 0 40px;
}
.blockTypeA01 .block .course .block01 > .box .textBlock{
width: 480px;
padding: 0 0 0 30px;
}
.blockTypeA01 .block .course .block01 > .box .textBlock .ttl02{
text-align: center;
margin: 0 0 15px;
position: relative;
z-index: 1;
}
.blockTypeA01 .block .course .block01 > .box .textBlock .ttl02::before{
content: "";
width: 100%;
height: 1px;
background: #e75c7a;
position: absolute;
left: 0;
top: 50%;
z-index: -1;
}
.blockTypeA01 .block .course .block01 > .box .textBlock .ttl02 span{
background: #fff3f6;
color: #e75c7a;
font-size: 1.8rem;
font-weight: 800;
padding: 0 20px;
display: inline-block;
}
.blockTypeA01 .block .course .block01 > .box .textBlock .list > li{
width: 100%;
background: #fff;
font-size: 1.8rem;
font-weight: 800;
border-radius: 10px;
margin: 0 0 10px;
display: table;
overflow: hidden;
}
.blockTypeA01 .block .course .block01 > .box .textBlock .list > li:last-child{
margin-bottom: 0;
}
.blockTypeA01 .block .course .block01 > .box .textBlock .list > li .num{
width: 40px;
background: #e75c7a;
color: #fff;
text-align: center;
padding: 10px 0;
display: table-cell;
vertical-align: middle;
}
.blockTypeA01 .block .course .block01 > .box .textBlock .list > li .txt{
padding: 10px 20px;
display: table-cell;
vertical-align: middle;
}
.blockTypeA01 .block .course .block01 > .box .textBlock + .txt{
font-size: 1.6rem;
margin: 20px 0 30px;
}
@media (max-width: 768px){
.blockTypeA01 .block .course{
padding: 0 2.0rem 2.0rem;
}
.blockTypeA01 .block .course .block01{
border-radius: 1.0rem;
padding: 0 0 2.0rem;
}
.blockTypeA01 .block .course .block01 + .block01{
margin-top: 2.0rem;
}
.blockTypeA01 .block .course .block01:nth-of-type(5){
margin-bottom: 0;
}
.blockTypeA01 .block .course .block01 .ttl01{
font-size: 1.5rem;
padding: 0.8rem 0;
}
.blockTypeA01 .block .course .block01 > .box{
padding: 0;
display: block;
}
.blockTypeA01 .block .course .block01 > .box img{
border-radius: 0;
margin: 0 0 1.0rem;
}
.blockTypeA01 .block .course .block01 > .box .textBlock{
width: 100%;
padding: 0 1.0rem 1.0rem;
}
.blockTypeA01 .block .course .block01 > .box .textBlock .ttl02{
margin: 0 0 1.0rem;
}
.blockTypeA01 .block .course .block01 > .box .textBlock .ttl02 span{
font-size: 1.5rem;
padding: 0 2.0rem;
}
.blockTypeA01 .block .course .block01 > .box .textBlock .list > li{
font-size: 1.3rem;
border-radius: 0.5rem;
margin: 0 0 0.5rem;
}
.blockTypeA01 .block .course .block01 > .box .textBlock .list > li .num{
width: 2.0rem;
padding: 1.0rem;
}
.blockTypeA01 .block .course .block01 > .box .textBlock .list > li .txt{
padding: 1.0rem 0 1.0rem 1.0rem;
}
.blockTypeA01 .block .course .block01 > .box .textBlock + .txt{
font-size: 1.4rem;
margin: 0 1.0rem 1.5rem;
}
}

.section02 .blockTypeA01 .block .title{
background: #9c1b37;
}
.section02 .blockTypeA01 .block > .box .text b{
color: #e75c7a;
}
.section02 .blockTypeA01 .block .moreBtn span,
.section02 .blockTypeA01 .block .moreBtn span::before,
.section02 .blockTypeA01 .block .moreBtn span::after{
background: #e75c7a;
}
.section03 .blockTypeA01 .block .title{
background: #914d15;
}
.section03 .blockTypeA01 .block > .box .text b{
color: #e3893f;
}
.section03 .blockTypeA01 .block .moreBtn span,
.section03 .blockTypeA01 .block .moreBtn span::before,
.section03 .blockTypeA01 .block .moreBtn span::after{
background: #e3893f;
}
.section04 .blockTypeA01 .block .title{
background: #8f6f00;
}
.section04 .blockTypeA01 .block > .box .text b{
color: #e8b609;
}

/*----------------------------------------------------------
animation
----------------------------------------------------------*/
@keyframes floatY{
0%{ transform: translateY(-15%); }
100%{ transform: translateY(15%); }
}

@keyframes scroll-right{
from{ transform: translateX(0); }
to{ transform: translateX(-100%); }
}

/*----------------------------------------------------------
mainVisual
----------------------------------------------------------*/
.mainVisual{
background: url("../images/mv_bg_01_pc.webp"),#999999;
background-repeat: no-repeat,no-repeat;
background-position: top center,top center;
padding: 70px 0 30px;
}
.mainVisual .inner{
width: 1000px;
margin: 0 auto;
}
.mainVisual .inner .title{
text-align: center;
letter-spacing: 2px;
margin: 0 auto 50px;
}
.mainVisual .inner .title span{
color: #fff;
font-size: 5.2rem;
font-weight: 800;
line-height: 1.4;
text-align: left;
writing-mode: vertical-rl;
-webkit-writing-mode: vertical-rl;
-ms-writing-mode: vertical-rl;
display: inline-block;
}
.mainVisual .inner .title span strong{
font-size: 7.0rem;
}
.mainVisual .inner .block{
margin: 0 0 30px;
display: flex;
align-items: center;
justify-content: center;
}
.mainVisual .inner .block .text01{
text-align: right;
margin: 0 40px 0 0;
}
.mainVisual .inner .block .text01 span{
color: #fff;
font-size: 3.0rem;
font-weight: 800;
display: block;
}
.mainVisual .inner .block .list{
display: flex;
}
.mainVisual .inner .block .list > li + li{
margin-left: 15px;
}
.mainVisual .inner .block .list > li a{
width: 160px;
height: 160px;
background: linear-gradient(135deg, #98e36b, #239952);
color: #fff;
font-size: 2.0rem;
font-weight: 800;
text-align: center;
line-height: 1.4;
border-radius: 100px;
padding: 0 0 2px 2px;
display: flex;
align-items: center;
justify-content: center;
}
@media (max-width: 768px){
.mainVisual{
background: url("../images/mv_bg_01_sp.webp"),#999999;
background-repeat: no-repeat,no-repeat;
background-size: 100% auto, 100% 100%;
background-position: top center,top center;
padding: 4.5rem 0 2.0rem;
}
.mainVisual .inner{
width: auto;
margin: 0 2.0rem;
}
.mainVisual .inner .title{
text-align: right;
margin: 0 auto 16.0rem;
}
.mainVisual .inner .title span{
font-size: 3.2rem;
}
.mainVisual .inner .title span strong{
font-size: 4.4rem;
}
.mainVisual .inner .block{
margin: 0 0 1.0rem;
display: block;
}
.mainVisual .inner .block .text01{
margin: 0 0 1.3rem;
}
.mainVisual .inner .block .text01 span{
font-size: 1.8rem;
}
.mainVisual .inner .block .text01 img{
width: 22.5rem;
height: auto;
}
.mainVisual .inner .block .list{
justify-content: space-between;
}
.mainVisual .inner .block .list > li + li{
margin-left: 0;
}
.mainVisual .inner .block .list > li a{
width: 10.5rem;
height: 10.5rem;
font-size: 1.4rem;
padding: 0 0 2px 2px;
}
}

.arrowBlock{
padding: 50px 0 0;
position: relative;
}
.arrowBlock::before{
content: "";
width: 100%;
height: 80px;
background: #fff;
clip-path: polygon(50% 100%, 0 0, 100% 0);
position: absolute;
left: 0;
bottom: -79px;
}
.arrowBlock .text{
width: 600px;
color: #cc2b4e;
font-size: 2.4rem;
font-weight: 800;
text-align: center;
margin: 0 auto;
position: relative;
}
.arrowBlock .text b{
font-size: 3.2rem;
}
.arrowBlock .text::before{
content: "";
width: 60px;
height: 90px;
background: url("../images/sec01_ico_01.webp") no-repeat;
background-size: 100% auto;
position: absolute;
left: -60px;
top: -5px;
z-index: 2;
animation: floatY 1s ease-in-out infinite alternate-reverse;
}
.arrowBlock .text::after{
content: "";
width: 60px;
height: 90px;
background: url("../images/sec01_ico_01.webp") no-repeat;
background-size: 100% auto;
position: absolute;
right: -60px;
top: -5px;
z-index: 2;
animation: floatY 1s ease-in-out infinite alternate-reverse;
}
@media (max-width: 768px){
.arrowBlock{
padding: 1.5rem 0 0.5rem;
}
.arrowBlock::before{
height: 3.0rem;
bottom: -2.9rem;
}
.arrowBlock .text{
width: 100%;
font-size: 1.4rem;
}
.arrowBlock .text b{
font-size: 1.8rem;
}
.arrowBlock .text::before{
width: 3.0rem;
height: 4.4rem;
left: 2.0rem;
top: -0.5rem;
}
.arrowBlock .text::after{
width: 3.0rem;
height: 4.4rem;
right: 2.0rem;
top: -0.5rem;
}
}

/*----------------------------------------------------------
section
----------------------------------------------------------*/
[class^="section"]{
overflow: hidden;
}
[class^="section"] .secInner01{
width: 1000px;
margin: 0 auto;
}
[class^="section"] .secInner02{
width: 1000px;
margin: 0 auto;
padding: 100px 0;
position: relative;
z-index: 1;
}
[class^="section"] .secInner02::before{
content: "";
position: absolute;
z-index: -1;
}
[class^="section"] [class^="secInner03"]{
width: 1000px;
margin: 0 auto;
}
[class^="section"] .secInner03-01{
padding: 100px 0 0;
position: relative;
z-index: 1;
}
[class^="section"] .secInner03-02{
padding: 0 0 100px;
}
@media (max-width: 768px){
[class^="section"] .secInner01{
width: auto;
margin: 0 2.0rem;
}
[class^="section"] .secInner02{
width: auto;
margin: 0 2.0rem;
padding: 4.0rem 0;
}
[class^="section"] [class^="secInner03"]{
width: auto;
margin: 0 2.0rem;
}
[class^="section"] .secInner03-01{
padding: 4.0rem 0 0;
}
[class^="section"] .secInner03-02{
padding: 0 0 4.0rem;
}
}

/* --- section01 --- */
.section01{
background: url("../images/sec01_bg_01.webp"),#02ace9;
background-repeat: no-repeat,no-repeat;
background-size: 100% auto,100% 100%;
background-position: bottom center,top center;
padding: 120px 0 140px;
position: relative;
}
.section01::before{
content: "";
width: 50%;
height: 80px;
background: #fff;
clip-path: polygon(0 0, 0% 100%, 100% 100%);
position: absolute;
left: 0;
bottom: -1px;
z-index: 2;
}
.section01::after{
content: "";
width: 50%;
height: 80px;
background: #fff;
clip-path: polygon(100% 0, 0% 100%, 100% 100%);
position: absolute;
right: 0;
bottom: -1px;
z-index: 2;
}
.section01 .text{
color: #fff;
font-size: 2.2rem;
font-weight: 800;
text-align: center;
line-height: 2.0;
}
.section01 .text + .text{
margin-top: 30px;
}
.section01 .text img{
margin-top: 30px;
}
@media (max-width: 768px){
.section01{
background-size: 200% auto,100% 100%;
background-position: bottom left,top center;
padding: 5.0rem 0 6.0rem;
}
.section01::before{
width: 50%;
height: 3.0rem;
}
.section01::after{
width: 50%;
height: 3.0rem;
}
.section01 .text{
font-size: 1.6rem;
}
.section01 .text + .text{
margin-top: 2.5rem;
}
.section01 .text img{
width: 25.0rem;
height: auto;
margin-top: 1.0rem;
}
}

/* --- section02 --- */
.section02{
background: #e75c7a;
}
.section02 .secInner02{
padding-top: 120px;
}
.section02 .secInner02::before{
width: 320px;
height: 270px;
background: url("../images/sec03_bg_02.webp") no-repeat;
background-size: 100% auto;
right: 45px;
top: 85px;
}
@media (max-width: 768px){
.section02 .secInner02{
padding-top: 6.0rem;
}
.section02 .secInner02::before{
width: 19.2rem;
height: 16.1rem;
right: -0.9rem;
top: 2.0rem;
}
}

/* --- section03 --- */
.section03{
background: #e3893f;
}
.section03 .secInner02::before{
width: 240px;
height: 290px;
background: url("../images/sec02_bg_02.webp") no-repeat;
background-size: 100% auto;
right: 75px;
top: 90px;
}
@media (max-width: 768px){
.section03 .secInner02::before{
width: 13.1rem;
height: 15.9rem;
right: -0.7rem;
top: 3.7rem;
}
}

/* --- section04 --- */
.section04{
background: #e8b609;
}
.section04 .secInner02::before{
width: 240px;
height: 272px;
background: url("../images/sec04_bg_01.webp") no-repeat;
background-size: 100% auto;
right: 70px;
top: 90px;
}
@media (max-width: 768px){
.section04 .secInner02::before{
width: 13.5rem;
height: 15.3rem;
right: -1.2rem;
top: 2.0rem;
}
}

/* --- section05 --- */
.section05{
background: #56ab38;
}
.section05 .title{
background: url("../images/sec05_bg_01.webp"),#808b90;
background-repeat: no-repeat,no-repeat;
background-size: auto 100%,100% 100%;
background-position: top center,top center;
color: #fff;
font-size: 3.4rem;
font-weight: 800;
text-align: center;
padding: 150px 0;
}
.section05 .title b{
font-size: 6.0rem;
padding: 0 20px;
display: inline-block;
position: relative;
}
.section05 .title b::before{
content: "";
width: 100px;
height: 2px;
background: #fff;
position: absolute;
left: -100px;
top: 50%;
transform: translateY(-50%);
}
.section05 .title b::after{
content: "";
width: 100px;
height: 2px;
background: #fff;
position: absolute;
right: -100px;
top: 50%;
transform: translateY(-50%);
}
.section05 .block{
width: 800px;
margin: 0 auto;
}
.section05 .block > .box + .box{
margin-top: 100px;
}
.section05 .block > .box .ttl{
border-bottom: 1px solid #fff;
margin: 0 0 25px;
padding: 0 0 30px;
display: flex;
align-items: center;
}
.section05 .block > .box .ttl .num{
width: 80px;
height: 80px;
background: #fff;
color: #56ab38;
font-size: 6.0rem;
font-weight: 800;
margin: 0 20px 0 0;
padding: 0 0 5px;
display: flex;
justify-content: center;
align-items: center;
}
.section05 .block > .box .ttl .txt{
color: #fff;
font-size: 2.4rem;
font-weight: 800;
}
.section05 .block > .box .ttl .txt b{
font-size: 4.0rem;
}
.section05 .block > .box .text{
color: #fff;
font-size: 2.0rem;
line-height: 2.0;
}
@media (max-width: 768px){
.section05 .title{
background: url("../images/sec05_bg_01.webp") no-repeat;
background-size: auto 100%;
background-position: 40% 50%;
font-size: 1.9rem;
padding: 7.0rem 0;
}
.section05 .title b{
font-size: 3.0rem;
padding: 0 1.5rem;
}
.section05 .title b::before{
width: 5.0rem;
height: 0.1rem;
left: -5.0rem;
}
.section05 .title b::after{
width: 5.0rem;
height: 1px;
right: -5.0rem;
}
.section05 .block{
width: 100%;
}
.section05 .block > .box + .box{
margin-top: 4.0rem;
}
.section05 .block > .box .ttl{
margin: 0 0 1.5rem;
padding: 0 0 1.5rem;
}
.section05 .block > .box .ttl .num{
width: 5.0rem;
height: 5.0rem;
font-size: 2.5rem;
margin: 0 1.5rem 0 0;
padding: 0 0 5px;
}
.section05 .block > .box .ttl .txt{
font-size: 1.6rem;
}
.section05 .block > .box .ttl .txt b{
font-size: 2.2rem;
}
.section05 .block > .box .text{
font-size: 1.4rem;
}
}

/* --- section06 --- */
.section06{
background: #56a1d7;
}
.section06 .secInner03-01::before{
content: "";
width: 340px;
height: 274px;
background: url("../images/sec06_bg_01.webp") no-repeat;
background-size: 100% auto;
position: absolute;
right: 50px;
top: 70px;
z-index: -1;
}
.section06 .logoList{
margin: 0 0 60px;
display: flex;
overflow: hidden;
}
.section06 .logoList ul{
display: flex;
animation: scroll-right 60s infinite linear 0.5s both;
}
.section06 .logoList ul > li{
background: #fff;
border-radius: 20px;
margin: 0 20px 0 0;
padding: 20px;
display: inline-block;
}
.section06 .ttl{
text-align: center;
margin: 0 0 25px;
}
.section06 .ttl span{
color: #fff;
font-size: 2.2rem;
font-weight: 800;
text-align: left;
padding: 0 0 0 75px;
display: inline-block;
position: relative;
}
.section06 .ttl span::before{
content: "";
width: 60px;
height: 54px;
background: url("../images/sec06_ico_01.webp") no-repeat;
background-size: 100% auto;
position: absolute;
left: 0;
top: 50%;
transform: translateY(-50%);
}
.section06 .list{
width: 830px;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.section06 .list > li{
width: 410px;
background: #fff;
font-size: 1.8rem;
font-weight: 800;
border-radius: 10px;
margin: 0 0 10px;
padding: 15px 0 15px 60px;
position: relative;
}
@media (min-width: 769px){
.section06 .list > li:nth-last-child(-n+2){
margin-bottom: 0;
}
}
.section06 .list > li::before{
content: "";
width: 25px;
height: 25px;
background: url("../images/sec06_ico_02.webp") no-repeat;
background-size: 100% auto;
position: absolute;
left: 21px;
top: 50%;
transform: translateY(-50%);
}
@media (max-width: 768px){
.section06 .secInner03-01::before{
width: 20.7rem;
height: 16.7rem;
right: -3.0rem;
top: 3.3rem;
}
.section06 .logoList{
margin: 0 0 3.0rem;
}
.section06 .logoList ul > li{
border-radius: 1.0rem;
margin: 0 0.5rem 0 0;
padding: 1.2rem 1.0rem;
}
.section06 .logoList ul > li img{
width: 9.0rem;
height: auto;
}
.section06 .ttl{
margin: 0 0 2.0rem;
}
.section06 .ttl span{
font-size: 1.5rem;
padding: 0 0 0 5.5rem;
}
.section06 .ttl span::before{
width: 4.6rem;
height: 4.0rem;
}
.section06 .list{
width: 100%;
display: block;
}
.section06 .list > li{
width: 100%;
font-size: 1.4rem;
border-radius: 0.5rem;
margin: 0 0 1.0rem;
padding: 1.0rem 1.0rem 1.0rem 5.0rem;
}
.section06 .list > li::before{
width: 1.8rem;
height: 1.8rem;
left: 2.0rem;
}
}

/* --- section07 --- */
.section07{
background: #3751c1;
}
.section07 .secInner02::before{
width: 320px;
height: 238px;
background: url("../images/sec07_bg_01.webp") no-repeat;
background-size: 100% auto;
right: 50px;
top: 45px;
}
.section07 .list{
display: flex;
justify-content: center;
}
.section07 .list > li{
margin: 0 40px 0 0;
}
.section07 .list > li:last-child{
margin-right: 0;
}
.section07 .list > li img{
border-radius: 20px;
margin: 0 0 10px;
}
.section07 .list > li span{
color: #fff;
font-size: 1.6rem;
text-align: center;
display: block;
}
@media (max-width: 768px){
.section07 .secInner02::before{
width: 14.1rem;
height: 10.4rem;
right: -1.0rem;
top: 2.0rem;
}
.section07 .list > li{
width: calc((100% - 2.0rem) / 3);
margin: 0 1.0rem 0 0;
}
.section07 .list > li:last-child{
margin-right: 0;
}
.section07 .list > li img{
border-radius: 1.0rem;
margin: 0 0 0.7rem;
}
.section07 .list > li span{
font-size: 1.2rem;
}
}

/* --- section08 --- */
.section08{
background: #7462cc;
}
.section08 .title{
color: #fff;
font-size: 3.4rem;
font-weight: 800;
text-align: center;
margin: 0 0 60px;
}
.section08 .block{
width: 840px;
margin: 0 auto;
}
.section08 .block > .box{
color: #fff;
border-top: 1px solid #fff;
}
.section08 .block > .box .question{
font-size: 1.8rem;
padding: 20px 0;
display: flex;
position: relative;
cursor: pointer;
}
.section08 .block > .box:last-child .question{
border-bottom: 1px solid #fff;
}
.section08 .block > .box .question::before{
content: "";
width: 24px;
height: 2px;
background: #fff;
position: absolute;
right: 20px;
top: 50%;
transform: translateY(-50%);
}
.section08 .block > .box .question::after{
content: "";
width: 2px;
height: 24px;
background: #fff;
position: absolute;
right: 30px;
top: 50%;
transform: translateY(-50%);
transition: 0.3s;
}
.section08 .block > .box .question.active::after{
transform: translateY(-50%) rotate(180deg);
opacity: 0;
}
.section08 .block > .box .question .num{
padding: 0 10px 0 20px;
}
.section08 .block > .box .answer{
border-top: 1px solid #fff;
padding: 20px 0 40px;
display: none;
}
.section08 .block > .box:last-child .answer{
border-top: none;
padding-bottom: 0;
}
.section08 .block > .box .answer .txt{
background: #fff;
color: #2f2855;
font-size: 1.6rem;
line-height: 1.8;
border-radius: 10px;
padding: 30px 60px;
}
.section08 .block > .box .answer .txt a{
color: #e96d42;
text-decoration: underline;
display: inline;
}
@media (max-width: 768px){
.section08 .title{
font-size: 2.0rem;
margin: 0 0 4.0rem;
}
.section08 .block{
width: 100%;
}
.section08 .block > .box .question{
font-size: 1.4rem;
padding: 1.5rem 0;
}
.section08 .block > .box .question::before{
width: 2.0rem;
height: 0.2rem;
right: 0;
}
.section08 .block > .box .question::after{
width: 0.2rem;
height: 2.0rem;
right: 1.0rem;
}
.section08 .block > .box .question .num{
padding: 0 1.0rem;
}
.section08 .block > .box .answer{
padding: 1.0rem 0 2.0rem;
}
.section08 .block > .box .answer .txt{
font-size: 1.4rem;
border-radius: 1.0rem;
padding: 2.0rem;
}
}

/* --- section09 --- */
.section09{
background: #f6f6f6;
}
.section09 .title{
text-align: center;
margin: 0 0 40px;
}
.section09 .title span{
text-align: left;
padding: 0 180px 0 0;
display: inline-block;
position: relative;
}
.section09 .title span::before{
content: "";
width: 170px;
height: 220px;
background: url("../images/sec09_img_01.webp") no-repeat;
background-size: 100% auto;
position: absolute;
right: 0;
top: 50%;
transform: translateY(-50%);
}
.section09 .title span strong{
font-size: 4.0rem;
}
.section09 .title span b{
font-size: 2.0rem;
margin: 15px 0 0;
display: block;
}
.section09 .lead{
width: 840px;
background: #fff;
font-size: 1.6rem;
line-height: 1.8;
border-radius: 20px;
margin: 0 auto 80px;
padding: 20px 40px;
}
.section09 .block{
width: 840px;
margin: 0 auto;
}
.section09 .block + .block{
margin-top: 60px;
}
.section09 .block .ttl{
width: 440px;
text-align: center;
border-bottom: 1px solid #222;
margin: 0 auto 60px;
padding: 0 0 12px;
position: relative;
}
.section09 .block .ttl::before{
content: "";
width: 380px;
height: 1px;
background: #222;
position: absolute;
left: 50%;
bottom: -8px;
transform: translateX(-50%);
}
.section09 .block .ttl span{
font-size: 3.0rem;
font-weight: 800;
display: inline-block;
position: relative;
}
.section09 .block .ttl.type01 span{
padding: 0 0 0 52px;
}
.section09 .block .ttl.type01 span::before{
content: "";
width: 32px;
height: 40px;
background: url("../images/sec09_ico_01.webp") no-repeat;
background-size: 100% auto;
position: absolute;
left: 0;
top: 5px;
}
.section09 .block .ttl.type02 span{
padding: 0 0 0 62px;
}
.section09 .block .ttl.type02 span::before{
content: "";
width: 42px;
height: 40px;
background: url("../images/sec09_ico_02.webp") no-repeat;
background-size: 100% auto;
position: absolute;
left: 0;
top: 4px;
}
.section09 .block .list{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.section09 .block .list > li{
width: 25%;
font-size: 1.2rem;
text-align: center;
}
.section09 .block .list > li img{
margin: 0 auto 15px;
display: block;
}
.section09 .block .list > li span{
font-size: 1.4rem;
font-weight: 800;
margin: 0 0 5px;
display: block;
}
.section09 .block .txt{
font-size: 1.4rem;
line-height: 1.8;
}
.section09 .block .txt + .txt{
margin-top: 30px;
}
.section09 .block .txt b{
font-size: 1.6rem;
font-weight: 800;
display: block;
}
@media (max-width: 768px){
.section09 .title{
margin: 0 0 3.0rem;
}
.section09 .title span{
padding: 0;
display: block;
}
.section09 .title span::before{
width: 8.6rem;
height: 11.0rem;
right: -1.2rem;
top: -0.9rem;
transform: translateY(0);
}
.section09 .title span strong{
font-size: 1.9rem;
}
.section09 .title span b{
font-size: 1.2rem;
margin: 1.0rem 0 0;
}
.section09 .lead{
width: 100%;
font-size: 1.2rem;
border-radius: 1.0rem;
margin: 0 auto 4.0rem;
padding: 2.0rem;
}
.section09 .block{
width: 100%;
}
.section09 .block + .block{
margin-top: 5.0rem;
}
.section09 .block .ttl{
width: 24.0rem;
margin: 0 auto 3.0rem;
padding: 0 0 1.0rem;
}
.section09 .block .ttl::before{
width: 15.0rem;
bottom: -0.4rem;
}
.section09 .block .ttl span{
font-size: 1.8rem;
}
.section09 .block .ttl.type01 span{
padding: 0 0 0 3.0rem;
}
.section09 .block .ttl.type01 span::before{
width: 1.9rem;
height: 2.4rem;
top: 0.35rem;
}
.section09 .block .ttl.type02 span{
padding: 0 0 0 3.7rem;
}
.section09 .block .ttl.type02 span::before{
width: 2.6rem;
height: 2.4rem;
top: 0.2rem;
}
.section09 .block .list > li{
width: 50%;
font-size: 1.0rem;
}
.section09 .block .list > li:nth-last-child(-n+2){
margin-top: 2.0rem;
}
.section09 .block .list > li img{
width: 8.5rem;
height: auto;
margin: 0 auto 1.0rem;
}
.section09 .block .list > li span{
font-size: 1.2rem;
margin: 0 0 0.5rem;
}
.section09 .block .txt{
font-size: 1.2rem;
}
.section09 .block .txt + .txt{
margin-top: 3.0rem;
}
.section09 .block .txt b{
font-size: 1.2rem;
}
}

/* --- section010 --- */
.section10{
background: url("../images/sec10_bg_01.webp"),#8e9196;
background-repeat: no-repeat,no-repeat;
background-size: auto 100%,100% 100%;
background-position: top center,top center;
padding: 160px 0;
}
.section10 .text{
width: 1000px;
color: #fff;
font-size: 4.4rem;
font-weight: 800;
text-align: right;
margin: 0 auto;
}
.section10 .text b{
font-size: 5.8rem;
}
.section10 .text img{
margin: 40px 35px 0 0;
}
@media (max-width: 768px){
.section10{
background-position: 30% 50%,top center;
padding: 10.0rem 0 8.0rem;
}
.section10 .text{
width: auto;
font-size: 1.8rem;
margin: 0 2.0rem;
}
.section10 .text b{
font-size: 2.4rem;
}
.section10 .text img{
width: 18.0rem;
height: auto;
margin: 2.5rem 1.5rem 0 0;
}
}

/*----------------------------------------------------------
complete
----------------------------------------------------------*/
#complete{
background: #e3893f;
}
.completeBlock{
width: 1000px;
margin: 0 auto;
padding: 40px 0;
}
.completeBlock .title{
color: #fff;
font-size: 3.6rem;
font-weight: 800;
text-align: center;
letter-spacing: 2px;
margin: 0 0 40px;
}
.completeBlock .title span{
background: #fff;
color: #e3893f;
font-size: 2.0rem;
font-weight: 800;
text-align: center;
letter-spacing: 0;
border-radius: 100px;
margin: 0 0 10px;
padding: 3px 40px;
display: inline-block;
}
.completeBlock .block{
display: flex;
justify-content: space-between;
}
.completeBlock .block .box{
width: 480px;
background: #fff;
border-radius: 20px;
padding: 0 0 20px;
overflow: hidden;
}
.completeBlock .block .box .ttl{
background: #914d15;
color: #fff;
font-size: 2.0rem;
font-weight: 800;
text-align: center;
padding: 10px 0;
}
.completeBlock .block .box img{
width: 100%;
height: auto;
margin: 0 0 15px;
display: block;
}
.completeBlock .block .box .text{
font-size: 1.4rem;
line-height: 1.8;
margin: 0 30px 15px;
}
.completeBlock .block .box .text b{
color: #e3893f;
font-weight: 800;
}
@media (max-width: 768px){
.completeBlock{
width: auto;
margin: 0 2.0rem;
padding: 3.0rem 0;
}
.completeBlock .title{
font-size: 2.2rem;
margin: 0 0 2.0rem;
}
.completeBlock .title span{
font-size: 1.6rem;
margin: 0 0 1.0rem;
padding: 0.3rem 2.0rem;
}
.completeBlock .block{
display: block;
}
.completeBlock .block .box{
width: 100%;
border-radius: 2.0rem;
padding: 0 0 2.0rem;
}
.completeBlock .block .box + .box{
margin-top: 2.0rem;
}
.completeBlock .block .box .ttl{
font-size: 1.6rem;
padding: 1.0rem 0;
}
.completeBlock .block .box img{
margin: 0 0 1.5rem;
}
.completeBlock .block .box .text{
font-size: 1.4rem;
margin: 0 2.0rem 1.5rem;
}
}