@charset "utf-8";
/* CSS Document */

/*----------------------------------------------------------
title
----------------------------------------------------------*/
.titleTypeA01{
font-size: 2.6rem;
font-weight: bold;
text-align: center;
margin: 0 auto 60px;
}
.titleTypeA01 b{
color: #ff7200;
}
.titleTypeA01 .pc{
display: inline;
}
.titleTypeA01 .text{
color: #239952;
font-size: 1.7rem;
margin: 0 0 25px 35px;
padding: 0 0 5px 20px;
display: inline-block;
position: relative;
}
.titleTypeA01 .text::before{
content: "";
width: 100%;
height: 2px;
background: #239952;
position: absolute;
left: -10px;
bottom: 0;
}
.titleTypeA01 .text::after{
content: "";
width: 7px;
height: 7px;
background: #239952;
border-radius: 100px;
position: absolute;
left: -13px;
bottom: -2.5px;
}
.titleTypeA01 .text .num{
width: 60px;
color: #fff;
text-align: center;
margin: 0 0 0 15px;
display: inline-block;
position: relative;
z-index: 2;
}
.titleTypeA01 .text .num::before{
content: "";
width: 20px;
height: 27px;
background: url("../images/common_ico_01.webp") no-repeat;
background-size: 100% auto;
position: absolute;
right: -15px;
top: -26px;
}
.titleTypeA01 .text .num::after{
content: "";
width: 60px;
height: 60px;
background: #239952;
border-radius: 100px;
position: absolute;
right: 0;
top: 50%;
margin-top: -32px;
z-index: -1;
}
@media (max-width: 768px){
.titleTypeA01{
font-size: 1.8rem;
margin: 0 auto 3.0rem;
}
.titleTypeA01 .pc{
display: none;
}
.titleTypeA01 .text{
font-size: 1.4rem;
margin: 0 0 2.0rem 4.0rem;
padding: 0 0 0.3rem 1.5rem;
}
.titleTypeA01 .text::before{
height: 0.2rem;
left: -1.0rem;
}
.titleTypeA01 .text::after{
width: 0.7rem;
height: 0.7rem;
left: -1.3rem;
bottom: -0.25rem;
}
.titleTypeA01 .text .num{
width: 4.8rem;
margin: 0 0 0 1.0rem;
}
.titleTypeA01 .text .num::before{
width: 1.6rem;
height: 2.1rem;
right: -1.2rem;
top: -2.0rem;
}
.titleTypeA01 .text .num::after{
width: 4.8rem;
height: 4.8rem;
right: -0.1rem;
margin-top: -2.6rem;
}
}

.titleTypeB01{
color: #239952;
font-size: 2.4rem;
font-weight: bold;
text-align: center;
margin: 0 auto 60px;
}
@media (max-width: 768px){
.titleTypeB01{
font-size: 1.8rem;
margin: 0 auto 3.0rem;
}
}

/*----------------------------------------------------------
mainVisual
----------------------------------------------------------*/
.mainVisual{
margin: 0 auto 20px;
}
.mainVisual .btn{
text-align: center;
}
.mainVisual .btn a{
width: 500px;
background: #ff7200;
color: #fff;
font-size: 2.4rem;
font-weight: bold;
border-bottom: 7px solid #ce5c00;
border-radius: 15px;
padding: 23px 0 20px;
position: relative;
}
.mainVisual .btn a::before{
content: "";
width: 14px;
height: 18px;
background: #fff;
clip-path: polygon(0 0, 0% 100%, 100% 50%);
position: absolute;
right: 30px;
top: 50%;
margin-top: -9px;
}
.mainVisual .inner{
background: url("../images/mv_bg_01_pc.webp") no-repeat;
background-size: cover;
background-position: top center;
border-radius: 0 0 80px 80px;
margin: 0 60px 20px;
padding: 50px 0 60px;
}
.mainVisual .inner .title{
width: 580px;
margin: 0 auto 20px;
}
.mainVisual .inner .list{
margin: 0 auto 50px;
display: flex;
justify-content: center;
}
.mainVisual .inner .list > li{
width: 130px;
height: 130px;
background: linear-gradient(135deg, #98e36b, #239952);
color: #fff;
font-size: 1.8rem;
font-weight: bold;
text-align: center;
line-height: 1.4;
border-radius: 100px;
margin: 0 15px;
display: flex;
justify-content: center;
align-items: center;
}
.mainVisual .inner .text{
text-align: center;
}
.mainVisual .inner .text b{
background: #fff;
padding: 5px 20px 3px;
display: inline-block;
}
.mainVisual .inner .text b span{
color: #239952;
font-size: 2.0rem;
font-weight: bold;
}
@media (max-width: 768px){
.mainVisual{
margin: 0 auto 1.0rem;
}
.mainVisual .btn a{
width: auto;
font-size: 1.8rem;
border-bottom: 0.6rem solid #ce5c00;
border-radius: 1.0rem;
margin: 0 2.0rem;
padding: 1.3rem 0 1.0rem;
display: block;
position: relative;
}
.mainVisual .btn a::before{
width: 0.9rem;
height: 1.3rem;
right: 1.5rem;
margin-top: -0.65rem;
}
.mainVisual .inner{
background: url("../images/mv_bg_01_sp.webp") no-repeat;
background-size: cover;
background-position: top center;
border-radius: 0 0 3.0rem 3.0rem;
margin: 0 1.0rem 1.0rem;
padding: 8.5rem 0 9.0rem;
}
.mainVisual .inner .title{
width: 34.6rem;
margin: 0 auto 1.5rem;
}
.mainVisual .inner .list{
margin: 0 1.0rem 4.0rem;
justify-content: space-between;
}
.mainVisual .inner .list > li{
width: 10.0rem;
height: 10.0rem;
font-size: 1.4rem;
margin: 0;
}
.mainVisual .inner .text b{
background: none;
padding: 0;
display: block;
}
.mainVisual .inner .text b span{
background: #fff;
font-size: 1.6rem;
padding: 0.5rem 2.0rem 0.3rem;
display: inline-block;
}
.mainVisual .inner .text b br + span{
margin-top: 0.8rem;
}
}

/*----------------------------------------------------------
section
----------------------------------------------------------*/
[class^="section"].typeA{
background: #fbf7f0;
}
[class^="section"].typeB{
background: #fff;
}
[class^="section"].typeC{
background: #ececec;
}
[class^="section"].typeD{
background: #e2fced;
}

[class^="section"][class*="bg"]{
position: relative;
}
[class^="section"][class*="bg"]::after{
content: "";
width: 100%;
height: 120px;
position: absolute;
left: 0;
bottom: -119px;
z-index: 2;
}
[class^="section"].typeA.bg01::after{
background: url("../images/wave_bg_01.webp") no-repeat;
background-size: 100% 100%;
transform: scale(-1,1);
}
[class^="section"].typeA.bg02::after{
background: url("../images/wave_bg_01.webp") no-repeat;
background-size: 100% 100%;
}
[class^="section"].typeB.bg01::after{
background: url("../images/wave_bg_02.webp") no-repeat;
background-size: 100% 100%;
transform: scale(-1,1);
}
[class^="section"].typeB.bg02::after{
background: url("../images/wave_bg_02.webp") no-repeat;
background-size: 100% 100%;
}
[class^="section"].typeC.bg01::after{
background: url("../images/wave_bg_03.webp") no-repeat;
background-size: 100% 100%;
transform: scale(-1,1);
}
[class^="section"].typeC.bg02::after{
background: url("../images/wave_bg_03.webp") no-repeat;
background-size: 100% 100%;
}
[class^="section"].typeD.bg01::after{
background: url("../images/wave_bg_03.webp") no-repeat;
background-size: 100% 100%;
transform: scale(-1,1);
}
[class^="section"].typeD.bg02::after{
background: url("../images/wave_bg_04.webp") no-repeat;
background-size: 100% 100%;
}
@media (max-width: 768px){
[class^="section"][class*="bg"]::after{
height: 5.0rem;
bottom: -4.9rem;
}
}

[class^="section"] [class^="secInner0"]{
width: 1000px;
margin: 0 auto;
padding: 120px 0 80px;
}
@media (max-width: 768px){
[class^="section"] [class^="secInner0"]{
padding: 6.0rem 0 4.0rem;
}
[class^="section"] .secInner01{
width: auto;
margin: 0 2.0rem;
}
[class^="section"] .secInner02{
width: auto;
}
}

/*-- section01 --*/
.section01 .title01{
background: url("../images/sec01_bg_01.webp") no-repeat;
background-size: cover;
background-position: top center;
text-align: center;
padding: 70px 0;
}
.section01 .title01 img{
width: 460px;
}
.section01 .secInner{
width: 1000px;
margin: 0 auto;
padding: 80px 0;
}
.section01 .secInner .title02{
text-align: center;
margin: 0 auto 40px;
}
.section01 .secInner .title02 img{
width: auto;
height: 73px;
}
.section01 .secInner .text01{
font-size: 1.8rem;
text-align: center;
line-height: 2.0;
}
.section01 .secInner .text01 + .text01{
margin-top: 20px;
}
.section01 .secInner .text01 b{
color: #239952;
}
.section01 .secInner .text02{
color: #716757;
font-size: 1.8rem;
font-weight: bold;
text-align: center;
}
.section01 .secInner .text02 img{
width: 260px;
margin: 20px auto 0;
display: block;
}
.section01 .secInner .image{
width: 900px;
margin: 50px auto;
display: block;
}
@media (max-width: 768px){
.section01 .title01{
padding: 3.0rem 0;
}
.section01 .title01 img{
width: 29.0rem;
}
.section01 .secInner{
width: 100%;
padding: 4.0rem 0;
}
.section01 .secInner .title02{
margin: 0 auto 2.0rem;
}
.section01 .secInner .title02 img{
height: 6.0rem;
}
.section01 .secInner .text01{
font-size: 1.6rem;
}
.section01 .secInner .text01 + .text01{
margin-top: 2.0rem;
}
.section01 .secInner .text02{
font-size: 1.6rem;
line-height: 2.0;
}
.section01 .secInner .text02 img{
width: 19.5rem;
margin: 2.0rem auto 0;
}
.section01 .secInner .image{
width: 100%;
margin: 4.0rem 0;
}
}

/*-- section02 --*/
.section02 .block{
display: flex;
align-items: center;
}
.section02 .block .text{
width: 400px;
font-size: 1.8rem;
text-align: center;
line-height: 2.2;
}
.section02 .block .list > li{
width: 200px;
text-align: center;
float: left;
}
.section02 .block .list > li img{
width: 180px;
margin: 0 0 10px;
}
.section02 .block .list > li span{
color: #716757;
font-size: 1.6rem;
font-weight: bold;
display: block;
}
@media (max-width: 768px){
.section02 .block{
display: block;
}
.section02 .block .text{
width: 100%;
font-size: 1.6rem;
line-height: 2.0;
margin: 0 0 2.0rem;
}
.section02 .block .list > li{
width: 33.3%;
}
.section02 .block .list > li img{
width: 10.5rem;
margin: 0 0 0.5rem;
}
.section02 .block .list > li span{
font-size: 1.4rem;
}
}

/*-- section03 --*/
.section03 .titleTypeA01{
margin-bottom: 30px!important;
}
.section03 .block{
width: 700px;
margin: 0 auto;
display: flex;
align-items: center;
}
.section03 .block .text{
width: 510px;
font-size: 1.8rem;
text-align: center;
line-height: 2.2;
}
.section03 .block .text b{
color: #ff7200;
font-size: 2.0rem;
}
.section03 .block .image{
width: 190px;
}
@media (max-width: 768px){
.section03 .titleTypeA01{
margin-bottom: 3.0rem!important;
}
.section03 .block{
width: 100%;
justify-content: space-between;
}
.section03 .block .text{
width: auto;
font-size: 1.6rem;
line-height: 1.8;
}
.section03 .block .text b{
font-size: 1.6rem;
}
.section03 .block .image{
width: 12.5rem;
}
}

/*-- section04 --*/
.section04{
position: relative;
}
.section04::before{
content: "";
width: 60px;
height: 60px;
background: url("../images/sec04_ico_01.webp") no-repeat;
background-size: 100% auto;
position: absolute;
left: 50%;
bottom: -30px;
margin-left: -30px;
z-index: 2;
}
.section04 .secInner01{
text-align: center;
}
.section04 .block01{
margin: 0 0 70px 30px;
display: inline-block;
}
.section04 .block01 .box{
padding: 0 0 55px;
display: flex;
position: relative;
z-index: 2;
}
.section04 .block01 .box::before{
content: "";
width: 2px;
height: 100%;
background: #239952;
position: absolute;
left: 36px;
top: 0;
z-index: -1;
}
.section04 .block01 .box:last-of-type{
padding: 0;
}
.section04 .block01 .box:last-of-type::before{
display: none;
}
.section04 .block01 .box .num{
width: 70px;
height: 70px;
background: #239952;
border-radius: 100px;
display: flex;
align-items: center;
justify-content: center;
}
.section04 .block01 .box .num img{
width: 20px;
}
.section04 .block01 .box .textBlock .title{
color: #239952;
font-size: 2.0rem;
font-weight: bold;
text-align: left;
margin: 0 0 20px;
padding: 0 0 7px 25px;
position: relative;
}
.section04 .block01 .box .textBlock .title::before{
content: "";
width: 230px;
height: 2px;
background: #239952;
position: absolute;
left: 0;
bottom: 0;
}
.section04 .block01 .box .textBlock .title::after{
content: "";
width: 7px;
height: 7px;
background: #239952;
border-radius: 100px;
position: absolute;
left: 230px;
bottom: -2.5px;
}
.section04 .block01 .box .textBlock .text{
font-size: 1.8rem;
text-align: left;
padding: 0 0 0 25px;
}
.section04 .block01 .box .textBlock .text b{
color: #ff7200;
}
.section04 .block02 .title{
margin: 0 0 35px;
}
.section04 .block02 .title span{
background: #239952;
color: #fff;
font-size: 2.0rem;
font-weight: bold;
border-radius: 100px;
padding: 10px 40px 8px;
display: inline-block;
}
.section04 .block02 .list{
display: flex;
flex-wrap: wrap;
justify-content: center;
}
.section04 .block02 .list > li{
width: 320px;
margin: 0 5px 10px;
}
.section04 .block02 .list > li a{
background: #fbf7f0;
font-size: 1.6rem;
font-weight: bold;
text-align: left;
border: 1px solid #716757;
border-radius: 10px;
-moz-box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.1);
-webkit-box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.1);
-ms-box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.1);
box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.1);
padding: 20px 10px 18px 60px;
position: relative;
display: block;
}
.section04 .block02 .list > li a::before{
content: "";
width: 20px;
height: 20px;
background: #fff;
border: 2px solid #afafaf;
position: absolute;
left: 20px;
top: 50%;
margin-top: -10px;
}
@media (min-width: 769px){
.section04 .block02 .list > li:nth-last-child(-n+2){
margin-bottom: 0;
}
.section04 .block02 .list > li a:hover{
background: #fbe7e7;
}
}
@media (max-width: 768px){
.section04::before{
width: 4.0rem;
height: 4.0rem;
bottom: -2.0rem;
margin-left: -2.0rem;
}
.section04 .block01{
margin: 0 0 4.5rem;
display: block;
}
.section04 .block01 .box{
padding: 0 0 3.5rem;
}
.section04 .block01 .box::before{
width: 0.2rem;
left: 3.1rem;
}
.section04 .block01 .box .num{
width: 6.0rem;
height: 6.0rem;
}
.section04 .block01 .box .num img{
width: 1.8rem;
}
.section04 .block01 .box .textBlock .title{
font-size: 1.8rem;
margin: 0 0 1.0rem;
padding: 0 0 0.6rem 2.0rem;
}
.section04 .block01 .box .textBlock .title::before{
width: 17.5rem;
height: 0.2rem;
}
.section04 .block01 .box .textBlock .title::after{
width: 0.7rem;
height: 0.7rem;
left: 17.4rem;
bottom: -0.3rem;
}
.section04 .block01 .box .textBlock .text{
font-size: 1.5rem;
padding: 0 0 0 2.0rem;
}
.section04 .block02 .title{
margin: 0 0 1.5rem;
}
.section04 .block02 .title span{
font-size: 1.5rem;
padding: 0.8rem 0 0.6rem;
display: block;
}
.section04 .block02 .list{
display: block;
}
.section04 .block02 .list > li{
width: 100%;
margin: 0 0 1.0rem;
}
.section04 .block02 .list > li a{
font-size: 1.3rem;
border-radius: 1.0rem;
padding: 2.0rem 0 1.8rem 3.7rem;
}
.section04 .block02 .list > li a::before{
width: 1.4rem;
height: 1.4rem;
left: 1.0rem;
margin-top: -0.9rem;
}
}

/*-- section05 --*/
.section05 .secInner01{
padding-top: 80px!important;
}
.section05 .block{
background: #fff;
border-radius: 20px;
-moz-box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.1);
-webkit-box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.1);
-ms-box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.1);
box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.1);
padding: 0 0 30px;
overflow: hidden;
}
.section05 .block + .block{
margin-top: 40px;
}
.section05 .block .title01{
background: #239952;
color: #fff;
font-size: 2.4rem;
text-align: center;
margin: 0 0 20px;
padding: 12px 0 10px;
}
.section05 .block .box{
margin: 0 30px 25px;
display: flex;
flex-wrap: wrap;
align-items: center;
}
.section05 .block .box .imageBlock{
width: 420px;
position: relative;
}
.section05 .block .box .imageBlock img{
border-radius: 0 40px 0 40px;
}
.section05 .block .box .imageBlock .list{
display: flex;
position: absolute;
right: 10px;
bottom: 10px;
}
.section05 .block .box .imageBlock .list > li{
width: 60px;
color: #fff;
font-size: 1.4rem;
font-weight: bold;
text-align: center;
border-radius: 3px;
padding: 4px 0 2px;
}
.section05 .block .box .imageBlock .list > li.type01{
background: #49a1f2;
}
.section05 .block .box .imageBlock .list > li.type02{
background: #fc93a0;
}
.section05 .block .box .imageBlock .list > li.type03{
background: #debf12;
}
.section05 .block .box .imageBlock .list > li + li{
margin-left: 10px;
}
.section05 .block .box .pointBlock{
width: 520px;
padding: 0 0 0 30px;
}
.section05 .block .box .pointBlock .title02{
text-align: center;
margin: 0 0 15px;
position: relative;
}
.section05 .block .box .pointBlock .title02::before{
content: "";
width: 100%;
height: 2px;
background: #239952;
position: absolute;
left: 0;
top: 50%;
margin-top: -1px;
}
.section05 .block .box .pointBlock .title02 span{
background: #fff;
color: #239952;
font-size: 1.8rem;
font-weight: bold;
padding: 0 20px;
display: inline-block;
position: relative;
}
.section05 .block .box .pointBlock .title02 span::before{
content: "";
width: 7px;
height: 7px;
background: #239952;
border-radius: 100px;
position: absolute;
left: -3px;
top: 50%;
margin-top: -3.5px;
}
.section05 .block .box .pointBlock .title02 span::after{
content: "";
width: 7px;
height: 7px;
background: #239952;
border-radius: 100px;
position: absolute;
right: -3px;
top: 50%;
margin-top: -3.5px;
}
.section05 .block .box .pointBlock .list > li{
width: 100%;
background: #f2f2f2;
font-size: 1.8rem;
font-weight: bold;
border-radius: 10px;
margin: 0 0 10px;
display: table;
overflow: hidden;
}
.section05 .block .box .pointBlock .list > li:last-child{
margin-bottom: 0;
}
.section05 .block .box .pointBlock .list > li .num{
width: 40px;
background: #239952;
color: #fff;
text-align: center;
padding: 10px 0 8px;
display: table-cell;
vertical-align: middle;
}
.section05 .block .box .pointBlock .list > li .txt{
padding: 10px 20px 8px;
display: table-cell;
vertical-align: middle;
}
.section05 .block .text{
font-size: 1.6rem;
line-height: 1.8;
margin: 0 30px 20px;
}
.section05 .block .btn{
text-align: center;
}
.section05 .block .btn a{
width: 460px;
background: #ff7200;
color: #fff;
font-size: 2.0rem;
font-weight: bold;
border-bottom: 7px solid #ce5c00;
border-radius: 15px;
padding: 12px 0 10px;
position: relative;
}
.section05 .block .btn a::before{
content: "";
width: 14px;
height: 18px;
background: #fff;
clip-path: polygon(0 0, 0% 100%, 100% 50%);
position: absolute;
right: 30px;
top: 50%;
margin-top: -9px;
}
.section05 .block .btn + .link{
text-align: center;
margin: 15px 0 0;
}
.section05 .block .btn + .link a{
color: #ff7200;
font-size: 1.6rem;
font-weight: bold;
text-decoration: underline;
padding: 0 25px 0 0;
display: inline-block;
position: relative;
}
.section05 .block .btn + .link a::before{
content: "";
width: 18px;
height: 18px;
background: #ff7200;
border-radius: 100px;
position: absolute;
right: 0;
top: 50%;
transform: translateY(-50%);
}
.section05 .block .btn + .link a::after{
content: "";
width: 6px;
height: 10px;
background: #fff;
clip-path: polygon(0 0, 0% 100%, 100% 50%);
position: absolute;
right: 5px;
top: 50%;
transform: translateY(-50%);
}
@media (max-width: 768px){
.section05 .secInner01{
padding-top: 4.0rem!important;
}
.section05 .block{
border-radius: 1.5rem;
padding: 0 0 2.0rem;
}
.section05 .block + .block{
margin-top: 2.0rem;
}
.section05 .block .title01{
font-size: 1.7rem;
margin: 0 0 1.0rem;
padding: 1.2rem 0 1.0rem;
}
.section05 .block .box{
margin: 0 2.0rem 1.5rem;
display: block;
}
.section05 .block .box .imageBlock{
width: 100%;
margin: 0 0 1.0rem;
}
.section05 .block .box .imageBlock img{
border-radius: 0 2.0rem 0 2.0rem;
}
.section05 .block .box .imageBlock .list{
right: 1.0rem;
bottom: 1.0rem;
}
.section05 .block .box .imageBlock .list > li{
width: 5.0rem;
font-size: 1.2rem;
border-radius: 0.3rem;
padding: 0.5rem 0 0.3rem;
}
.section05 .block .box .imageBlock .list > li + li{
margin-left: 0.5rem;
}
.section05 .block .box .pointBlock{
width: 100%;
padding: 0;
}
.section05 .block .box .pointBlock .title02{
margin: 0 0 1.0rem;
}
.section05 .block .box .pointBlock .title02::before{
height: 0.1rem;
margin-top: -0.1rem;
}
.section05 .block .box .pointBlock .title02 span{
font-size: 1.3rem;
padding: 0 1.3rem;
}
.section05 .block .box .pointBlock .title02 span::before{
width: 0.6rem;
height: 0.6rem;
left: -0.3rem;
margin-top: -0.45rem;
}
.section05 .block .box .pointBlock .title02 span::after{
width: 0.6rem;
height: 0.6rem;
right: -0.3rem;
margin-top: -0.45rem;
}
.section05 .block .box .pointBlock .list > li{
font-size: 1.3rem;
border-radius: 1.0rem;
margin: 0 0 0.5rem;
}
.section05 .block .box .pointBlock .list > li .num{
width: 3.0rem;
padding: 1.0rem 0 0.8rem;
}
.section05 .block .box .pointBlock .list > li .txt{
padding: 1.0rem 0 0.8rem 1.0rem;
}
.section05 .block .text{
font-size: 1.4rem;
margin: 0 2.0rem 1.5rem;
}
.section05 .block .btn{
margin: 0 2.0rem;
}
.section05 .block .btn a{
width: 100%;
font-size: 1.6rem;
border-bottom: 0.6rem solid #ce5c00;
border-radius: 1.0rem;
padding: 1.3rem 0 1.0rem;
}
.section05 .block .btn a::before{
width: 0.9rem;
height: 1.3rem;
right: 1.5rem;
margin-top: -0.65rem;
}
.section05 .block .btn + .link{
margin: 1.0rem 0 0;
}
.section05 .block .btn + .link a{
font-size: 1.4rem;
padding: 0 2.0rem 0 0;
}
.section05 .block .btn + .link a::before{
width: 1.6rem;
height: 1.6rem;
}
.section05 .block .btn + .link a::after{
width: 0.5rem;
height: 0.8rem;
right: 0.5rem;
}
}

/*-- section06 --*/
.section06 .text01{
font-size: 2.0rem;
text-align: center;
margin: 0 0 40px;
}
.section06 .logo{
margin: 0 0 70px;
}
.section06 .title{
text-align: center;
margin: 0 0 30px;
}
.section06 .title span{
color: #ff5a5a;
font-size: 2.0rem;
font-weight: bold;
text-align: left;
padding: 0 0 0 75px;
display: inline-block;
position: relative;
}
.section06 .title 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%;
margin-top: -27px;
}
.section06 .list{
width: 830px;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.section06 .list > li{
width: 410px;
background: #ff8585;
color: #fff;
font-size: 1.8rem;
font-weight: bold;
border-radius: 10px;
margin: 0 0 10px;
padding: 17px 0 15px 60px;
position: relative;
}
.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%;
margin-top: -12px;
}
@media (max-width: 768px){
.section06 .text01{
font-size: 1.6rem;
margin: 0 0 2.5rem;
}
.section06 .logo{
margin: 0 0 5.0rem;
}
.section06 .title{
margin: 0 0 1.5rem;
}
.section06 .title span{
font-size: 1.6rem;
line-height: 1.4;
padding: 0 0 0 4.5rem;
}
.section06 .title span::before{
width: 3.6rem;
height: 3.5rem;
margin-top: -1.8rem;
}
.section06 .list{
width: 100%;
display: block;
}
.section06 .list > li{
width: 100%;
font-size: 1.4rem;
border-radius: 0.5rem;
margin: 0 0 0.5rem;
padding: 1.2rem 0 1.0rem 4.5rem;
}
.section06 .list > li::before{
width: 1.8rem;
height: 1.8rem;
left: 1.7rem;
margin-top: -0.9rem;
}
}

/*-- section07 --*/
.section07 .notes{
font-size: 1.4rem;
font-weight: bold;
text-align: right;
margin: 10px 0 0;
}
.section07 .block{
display: flex;
align-items: stretch;
justify-content: space-between;
}
.section07 .block .box{
width: 235px;
background: #fff;
border-radius: 10px;
-moz-box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.1);
-webkit-box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.1);
-ms-box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.1);
box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.1);
padding: 24px 0 20px;
display: flex;
align-items: center;
position: relative;
}
.section07 .block .box::before{
content: "";
width: 80px;
height: 8px;
background: #b4a894;
position: absolute;
left: 50%;
top: -4px;
margin-left: -40px;
}
.section07 .block .box .text{
width: 100%;
font-size: 1.4rem;
text-align: center;
line-height: 1.8;
}
@media (max-width: 768px){
.section07 .notes{
font-size: 1.2rem;
margin: 1.0rem 0 0;
}
.section07 .block{
display: block;
}
.section07 .block .box{
width: auto;
text-align: center;
border-radius: 0 1.5rem 1.5rem 0;
margin: 0 2.0rem 0 0;
padding: 2.0rem 0;
display: block;
}
.section07 .block .box::before{
width: 0.4rem;
height: 4.5rem;
left: auto;
right: -0.2rem;
top: 50%;
margin-left: 0;
margin-top: -2.25rem;
}
.section07 .block .box:nth-child(even){
border-radius: 1.5rem 0 0 1.5rem;
margin: 0 0 0 2.0rem;
}
.section07 .block .box:nth-child(even)::before{
left: -0.2rem;
right: auto;
}
.section07 .block .box + .box{
margin-top: 2.0rem;
}
.section07 .block .box .text{
width: auto;
font-size: 1.4rem;
text-align: left;
line-height: 2.0;
display: inline-block;
}
}

/*-- section08 --*/
.section08 .block{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.section08 .block .box{
width: 490px;
margin: 0 0 20px;
}
.section08 .block .box .question{
width: 100%;
background: #e3f8eb;
font-size: 1.6rem;
font-weight: bold;
border: 1px solid #239952;
border-bottom: 4px solid #239952;
padding: 20px 60px 20px 20px;
display: table;
position: relative;
cursor: pointer;
}
.section08 .block .box .question::before{
content: "";
width: 30px;
height: 30px;
background: #239952;
border-radius: 100px;
position: absolute;
right: 20px;
top: 50%;
margin-top: -15px;
}
.section08 .block .box .question::after{
content: "";
width: 8px;
height: 8px;
border-right: 2px solid #fff;
border-bottom: 2px solid #fff;
transform: rotate(45deg);
position: absolute;
right: 30px;
top: 50%;
margin-top: -6px;
transition: 0.3s;
}
.section08 .block .box .question.active::after{
transform: rotate(-135deg);
margin-top: -3px;
}
.section08 .block .box .question span{
width: 40px;
color: #239952;
display: table-cell;
vertical-align: top;
}
.section08 .block .box .answer{
background: #fff;
font-size: 1.6rem;
border: 1px solid #239952;
border-bottom: 4px solid #239952;
margin: 10px 0 0;
padding: 20px;
display: none;
}
.section08 .block .box .answer a{
color: #2f84f1;
text-decoration: underline;
}
@media (max-width: 768px){
.section08 .block{
display: block;
}
.section08 .block .box{
width: 100%;
margin: 0 0 1.5rem;
}
.section08 .block .box .question{
font-size: 1.4rem;
border-bottom: 0.4rem solid #239952;
padding: 1.5rem 4.0rem 1.3rem 1.5rem;
}
.section08 .block .box .question::before{
width: 3.0rem;
height: 3.0rem;
right: 1.0rem;
margin-top: -1.5rem;
}
.section08 .block .box .question::after{
width: 0.8rem;
height: 0.8rem;
border-right: 0.2rem solid #fff;
border-bottom: 0.2rem solid #fff;
right: 2.0rem;
margin-top: -0.6rem;
}
.section08 .block .box .question.active::after{
margin-top: -0.3rem;
}
.section08 .block .box .question span{
width: auto;
}
.section08 .block .box .answer{
font-size: 1.4rem;
border-bottom: 0.4rem solid #239952;
margin: 1.0rem 0 0;
padding: 1.5rem;
}
}

/*-- section09 --*/
.section09 .title01{
text-align: center;
margin: 0 auto 40px;
}
.section09 .title01 img{
width: auto;
height: 73px;
}
.section09 .block01{
border-bottom: 2px solid #239952;
margin: 0 0 40px;
padding: 0 0 40px;
position: relative;
}
.section09 .block01::before{
content: "";
width: 7px;
height: 7px;
background: #239952;
border-radius: 100px;
position: absolute;
left: 0;
bottom: -4px;
}
.section09 .block01::after{
content: "";
width: 7px;
height: 7px;
background: #239952;
border-radius: 100px;
position: absolute;
right: 0;
bottom: -4px;
}
.section09 .block01 > .text{
width: 800px;
margin: 0 auto;
}
.section09 .block01 .box{
margin: 0 0 25px;
display: flex;
justify-content: center;
align-items: center;
}
.section09 .block01 .box .title{
font-weight: bold;
padding: 0 0 0 25px;
order: 2;
}
.section09 .block01 .box .title strong{
color: #239952;
font-size: 2.4rem;
margin: 0 0 10px;
display: block;
}
.section09 .block01 .box .image{
width: 140px;
order: 1;
}
.section09 .block02{
display: flex;
}
.section09 .block02 [class^="box"]{
width: 50%;
}
.section09 .block02 [class^="box"] .title{
text-align: center;
margin: 0 0 30px;
}
.section09 .block02 [class^="box"] .title span{
color: #239952;
font-size: 2.2rem;
display: inline-block;
position: relative;
}
.section09 .block02 .box01 .title span{
padding: 0 0 0 40px;
}
.section09 .block02 .box01 .title span::before{
content: "";
width: 25px;
height: 32px;
background: url("../images/sec09_ico_01.webp") no-repeat;
background-size: 100% auto;
position: absolute;
left: 0;
top: 1px;
}
.section09 .block02 .box02 .title span{
padding: 0 0 0 50px;
}
.section09 .block02 .box02 .title span::before{
content: "";
width: 34px;
height: 32px;
background: url("../images/sec09_ico_02.webp") no-repeat;
background-size: 100% auto;
position: absolute;
left: 0;
top: -2px;
}
.section09 .block02 .box01{
width: 460px;
padding: 0 40px 0 0;
}
.section09 .block02 .box01 .book{
display: flex;
flex-wrap: wrap;
}
.section09 .block02 .box01 .book .image{
width: 50%;
text-align: center;
margin: 0 0 20px;
}
.section09 .block02 .box01 .book .image:nth-last-of-type(-n+2){
margin-bottom: 0;
}
.section09 .block02 .box01 .book .image img{
width: 100px;
margin: 0 0 10px;
}
.section09 .block02 .box01 .book .image figcaption{
font-size: 1.4rem;
font-weight: bold;
}
.section09 .block02 .box01 .book .image figcaption span{
font-size: 1.2rem;
font-weight: normal;
display: block;
}
.section09 .block02 .box02{
width: 540px;
position: relative;
}
.section09 .block02 .box02::before{
content: "";
width: 100%;
height: 110px;
background: url("../images/sec09_img_06.webp") no-repeat;
background-size: 100% auto;
background-position: bottom center;
position: absolute;
left: 0;
bottom: 8px;
}
.section09 .block02 .box02 .text + .text{
margin-top: 20px;
}
.section09 .block02 .box02 .text b{
display: block;
}
@media (max-width: 768px){
.section09 .secInner02{
padding-bottom: 6.0rem;
}
.section09 .title01{
margin: 0 auto 2.0rem;
}
.section09 .title01 img{
height: 6.0rem;
}
.section09 .block01{
border-bottom: 0.2rem solid #239952;
margin: 0 2.0rem 3.0rem;
padding: 0 0 3.0rem;
}
.section09 .block01::before{
width: 0.7rem;
height: 0.7rem;
bottom: -0.4rem;
}
.section09 .block01::after{
width: 0.7rem;
height: 0.7rem;
bottom: -0.4rem;
}
.section09 .block01 > .text{
width: 100%;
font-size: 1.4rem;
}
.section09 .block01 .box{
margin: 0 0 1.5rem;
justify-content: space-between;
}
.section09 .block01 .box .title{
font-size: 1.4rem;
font-weight: bold;
padding: 0;
order: 1;
}
.section09 .block01 .box .title strong{
font-size: 1.6rem;
margin: 0 0 0.5rem;
}
.section09 .block01 .box .image{
width: 10.0rem;
order: 2;
}
.section09 .block02{
display: block;
}
.section09 .block02 [class^="box"]{
width: 100%;
}
.section09 .block02 [class^="box"] .title{
margin: 0 0 2.0rem;
}
.section09 .block02 [class^="box"] .title span{
font-size: 1.8rem;
}
.section09 .block02 .box01 .title span{
padding: 0 0 0 3.0rem;
}
.section09 .block02 .box01 .title span::before{
width: 1.9rem;
height: 2.4rem;
top: 0.1rem;
}
.section09 .block02 .box02 .title span{
padding: 0 0 0 3.8rem;
}
.section09 .block02 .box02 .title span::before{
width: 2.6rem;
height: 2.4rem;
top: -2px;
}
.section09 .block02 .box01{
width: 100%;
margin: 0 0 3.0rem;
padding: 0 0 10.5rem;
position: relative;
}
.section09 .block02 .box01::before{
content: "";
width: 100%;
height: 7.8rem;
background: url("../images/sec09_img_06.webp") no-repeat;
background-size: auto 100%;
background-position: bottom center;
position: absolute;
left: 0;
bottom: 0;
}
.section09 .block02 .box01 .book .image{
margin: 0 0 1.5rem;
}
.section09 .block02 .box01 .book .image img{
width: 8.5rem;
margin: 0 0 1.0rem;
}
.section09 .block02 .box01 .book .image figcaption{
font-size: 1.2rem;
}
.section09 .block02 .box01 .book .image figcaption span{
font-size: 1.0rem;
}
.section09 .block02 .box02{
width: auto;
margin: 0 2.0rem;
}
.section09 .block02 .box02::before{
display: none;
}
.section09 .block02 .box02 .text{
font-size: 1.4rem;
}
.section09 .block02 .box02 .text + .text{
margin-top: 1.5rem;
}
}

/*----------------------------------------------------------
float
----------------------------------------------------------*/
.floatBtn{
position: fixed;
right: 0;
bottom: 0;
z-index: 10;
opacity: 0;
transition: 0.3s;
}
.floatBtn.active{
opacity: 1;
}
.floatBtn a{
background: #ff7200;
color: #fff;
font-size: 1.8rem;
font-weight: bold;
text-align: center;
border-radius: 15px 0 0 0;
padding: 20px 60px;
position: relative;
}
.floatBtn a::before{
content: "";
width: 12px;
height: 16px;
background: #fff;
clip-path: polygon(0 0, 0% 100%, 100% 50%);
position: absolute;
right: 20px;
top: 50%;
margin-top: -9px;
}
@media (max-width: 768px){
.floatBtn{
width: 100%;
background: rgba(0,0,0,0.6);
padding: 1.0rem;
}
.floatBtn a{
font-size: 1.8rem;
border-bottom: 0.6rem solid #ce5c00;
border-radius: 1.0rem;
padding: 1.3rem 0 1.0rem;
display: block;
}
.floatBtn a::before{
width: 0.9rem;
height: 1.3rem;
right: 1.5rem;
margin-top: -0.65rem;
}
}

/*----------------------------------------------------------
other
----------------------------------------------------------*/
@media (min-width: 769px){
.hover a{
transition: 0.3s;
}
.hover a:hover{
opacity: 0.7;
}
}