@charset "utf-8";

/*----------------------------------------------------------
mainVisual
----------------------------------------------------------*/
.mainVisual{
background: url("/assets/images/top/mv_bg_01_pc.webp"), #999;
background-position: top center, top center;
background-size: auto auto, auto auto;
background-repeat: no-repeat, repeat;
padding: 70px 0 30px;
}
.mainVisual .inner{
width: 1000px;
margin: 0 auto;
}
.mainVisual .inner .title01{
text-align: center;
margin: 0 0 60px;
}
.mainVisual .inner .block01{
display: flex;
align-items: center;
justify-content: center;
}
.mainVisual .inner .block01 .text01{
color: #fff;
font-size: 3.0rem;
font-weight: bold;
text-align: right;
text-shadow: 0 0 10px rgba(0, 0, 0, 0.4);
margin: 0 40px 0 0;
}
.mainVisual .inner .block01 .list01{
display: flex;
}
.mainVisual .inner .block01 .list01 > li{
width: 160px;
height: 160px;
background: linear-gradient(#1fbab1,#25c071);
color: #fff;
font-size: 2.0rem;
font-weight: bold;
text-align: center;
line-height: 1.4;
border-radius: 100px;
box-shadow: 0 0 10px 0px rgba(0, 0, 0, 0.2);
margin: 0 15px 0 0;
padding: 2px 0 0 2px;
display: flex;
align-items: center;
justify-content: center;
}
.mainVisual .inner .block01 .list01 > li:last-child{
margin-right: 0;
}
@media (max-width: 768px){
.mainVisual{
background: url("/assets/images/top/mv_bg_01_sp.webp"), #999;
background-position: top center, top center;
background-size: 100% auto, auto auto;
background-repeat: no-repeat, repeat;
padding: 6.0rem 0 2.0rem;
}
.mainVisual .inner{
width: 100%;
padding: 0 2.0rem;
}
.mainVisual .inner .title01{
text-align: right;
margin: 0 0 12.0rem;
}
.mainVisual .inner .title01 img{
width: 18.0rem;
height: auto;
}
.mainVisual .inner .block01{
display: block;
}
.mainVisual .inner .block01 .text01{
font-size: 2.2rem;
margin: 0 0 1.5rem;
}
.mainVisual .inner .block01 .list01{
width: 100%;
justify-content: space-between;
}
.mainVisual .inner .block01 .list01 > li{
width: 10.5rem;
height: 10.5rem;
font-size: 1.4rem;
margin: 0;
padding: 0.2rem 0 0 0.2rem;
}
}

/*----------------------------------------------------------
section
----------------------------------------------------------*/
[class^="section"] .secInner01{
width: 1000px;
margin: 0 auto;
}
@media (max-width: 768px){
[class^="section"] .secInner01{
width: 100%;
padding: 0 2.0rem;
}
}

/*----------------------------------------------------------
sectionA
----------------------------------------------------------*/
.sectionA01{
padding: 80px 0;
position: relative;
}
.sectionA01::before{
content: "";
width: 80px;
height: 30px;
clip-path: polygon(0 0, 50% 100%, 100% 0);
position: absolute;
left: 50%;
bottom: -29px;
transform: translateX(-50%);
z-index: 2;
}
.sectionA01.bg_blue{
background: linear-gradient(#e1f1f9,#c2e9fc);
}
.sectionA01.bg_blue::before{
background: #c2e9fc;
}
.sectionA01.bg_green{
background: linear-gradient(#ebfff5,#b8eed2);
}
.sectionA01.bg_green::before{
background: #b8eed2;
}
.sectionA01 [class^="block_title"]{
text-align: center;
}
.sectionA01 [class^="block_title"] h2{
border-width: 2px;
border-style: solid;
border-radius: 100px;
display: inline-block;
}
.sectionA01 [class^="block_title"] h2 span{
color: #fff;
font-weight: bold;
border-radius: 100px;
margin: 4px;
display: inline-block;
}
.sectionA01 .block_title01{
margin: 0 0 40px;
}
.sectionA01 .block_title01 h2{
border-color: var(--color_blue01);
}
.sectionA01 .block_title01 h2 span{
background: var(--color_blue01);
font-size: 1.8rem;
padding: 15px 80px 13px;
}
.sectionA01 .block_title01 h2 span strong{
font-size: 2.6rem;
}
.sectionA01 .block_title02{
margin: 0 0 60px;
}
.sectionA01 .block_title02 h2{
border-color: var(--color_green01);
}
.sectionA01 .block_title02 h2 span{
background: var(--color_green01);
font-size: 2.2rem;
padding: 15px 80px 13px;
display: flex;
align-items: center;
}
.sectionA01 .block_title02 h2 span img{
margin: 0 10px 0 0;
}
.sectionA01 .block_image01{
margin: 0 0 60px;
}
.sectionA01 .block_image01 .box01{
margin: 0 0 20px;
padding: 0 0 100px;
display: flex;
align-items: center;
justify-content: center;
position: relative;
}
.sectionA01 .block_image01 .box01::before{
content: "";
width: 4px;
height: 40px;
background: #b4cfdc;
position: absolute;
left: 50%;
bottom: 40px;
transform: translateX(-50%);
}
.sectionA01 .block_image01 .box01::after{
content: "";
width: 530px;
height: 40px;
border-left: 4px solid #b4cfdc;
border-right: 4px solid #b4cfdc;
border-top: 4px solid #b4cfdc;
position: absolute;
left: 50%;
bottom: 0;
transform: translateX(-50%);
}
.sectionA01 .block_image01 .box01 .logo01{
margin: 0 20px 0 0;
}
.sectionA01 .block_image01 .box01 .text01{
font-size: 1.8rem;
font-weight: bold;
text-align: center;
line-height: 1.4;
}
.sectionA01 .block_image01 .box01 .text01 span{
font-size: 1.4rem;
font-weight: normal;
padding: 0 40px;
display: inline-block;
position: relative;
}
.sectionA01 .block_image01 .box01 .text01 span::before{
content: "";
width: 25px;
height: 1px;
border-top: 1px solid var(--color_black01);
position: absolute;
left: 0;
top: 50%;
transform: translateY(-50%);
}
.sectionA01 .block_image01 .box01 .text01 span::after{
content: "";
width: 25px;
height: 1px;
border-top: 1px solid var(--color_black01);
position: absolute;
right: 0;
top: 50%;
transform: translateY(-50%);
}
.sectionA01 .block_image01 .box02{
display: flex;
justify-content: space-between;
}
.sectionA01 .block_image01 .box02 [class^="col"]{
width: 480px;
}
.sectionA01 .block_image01 .box02 [class^="col"] .logo01{
min-height: 65px;
text-align: center;
margin: 0 0 25px;
display: flex;
align-items: center;
justify-content: center;
}
.sectionA01 .block_image01 .box02 [class^="col"] .list01{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.sectionA01 .block_image01 .box02 [class^="col"] .list01 > li{
width: calc((100% - 20px) / 3);
background: #fff;
font-size: 1.4rem;
font-weight: bold;
text-align: center;
border-radius: 100px;
box-shadow: 0 0 5px 0px rgba(0, 0, 0, 0.05);
padding: 10px 0 8px;
}
.sectionA01 .block_image01 .box02 .col01 .list01 > li{
color: var(--color_blue01);
}
.sectionA01 .block_image01 .box02 .col02 .list01 > li{
color: var(--color_green01);
}
.sectionA01 .block_image02{
display: flex;
align-items: center;
justify-content: center;
}
.sectionA01 .block_image02 .text01{
font-size: 2.0rem;
font-weight: bold;
line-height: 1.8;
margin: 0 60px 0 0;
}
.sectionA01 .block_image02 .text01 span{
border-bottom: 4px dotted var(--color_blue01);
display: inline-block;
}
.sectionA01 .block_image02 .text01 span b{
font-size: 2.4rem;
}
.sectionA01 .block_image03{
margin: 0 0 20px;
}
.sectionA01 .block_image03 .box01{
margin: 0 0 40px;
}
.sectionA01 .block_image03 .box01 .title01{
color: var(--color_green01);
font-size: 2.2rem;
font-weight: bold;
text-align: center;
margin: 0 0 20px;
}
.sectionA01 .block_image03 .box01 .text01{
font-size: 1.8rem;
text-align: center;
line-height: 1.8;
}
.sectionA01 .block_image03 .box01 .text01 + .text01{
margin-top: 15px;
}
.sectionA01 .block_image03 .box02{
display: flex;
align-items: center;
justify-content: center;
}
.sectionA01 .block_image03 .box02 .list01{
width: 200px;
margin: 0 30px 0 0;
}
.sectionA01 .block_image03 .box02 .list01 > li{
background: #fff;
color: var(--color_green01);
font-size: 1.6rem;
font-weight: bold;
text-align: center;
border-radius: 100px;
box-shadow: 0 0 5px 0px rgba(0, 0, 0, 0.05);
margin: 0 0 10px;
padding: 10px 0 8px;
}
.sectionA01 .block_image03 .box02 .list01 > li:last-child{
margin-bottom: 0;
}
.sectionA01 .logo01{
display: flex;
align-items: center;
justify-content: center;
}
.sectionA01 .logo01 span{
font-size: 1.4rem;
font-weight: bold;
line-height: 1.4;
margin: 0 0 0 20px;
}
@media (max-width: 768px){
.sectionA01{
padding: 4.0rem 0;
}
.sectionA01::before{
width: 2.0rem;
height: 1.5rem;
bottom: -1.4rem;
}
.sectionA01 [class^="block_title"] h2{
border-width: 1px;
}
.sectionA01 [class^="block_title"] h2 span{
margin: 0.2rem;
}
.sectionA01 .block_title01{
margin: 0 0 2.0rem;
}
.sectionA01 .block_title01 h2{
display: block;
}
.sectionA01 .block_title01 h2 span{
font-size: 1.4rem;
padding: 1.0rem 0 0.8rem;
display: block;
}
.sectionA01 .block_title01 h2 span strong{
font-size: 2.0rem;
}
.sectionA01 .block_title02{
margin: 0 0 3.0rem;
}
.sectionA01 .block_title02 h2 span{
font-size: 1.8rem;
padding: 1.5rem 2.5rem 1.3rem;
}
.sectionA01 .block_title02 h2 span img{
width: 20.0rem;
height: auto;
margin: 0 0.5rem 0 0;
}
.sectionA01 .block_image01{
margin: 0 0 2.0rem;
}
.sectionA01 .block_image01 .box01{
margin: 0 0 1.5rem;
padding: 0 0 8.5rem;
display: block;
}
.sectionA01 .block_image01 .box01::before{
width: 0.3rem;
height: 2.5rem;
bottom: 4.0rem;
}
.sectionA01 .block_image01 .box01::after{
width: 18.0rem;
height: 4.0rem;
border-left: 0.3rem solid #b4cfdc;
border-right: 0.3rem solid #b4cfdc;
border-top: 0.3rem solid #b4cfdc;
}
.sectionA01 .block_image01 .box01 .logo01{
text-align: center;
margin: 0 0 1.0rem;
}
.sectionA01 .block_image01 .box01 .logo01 img{
width: 8.5rem;
height: auto;
}
.sectionA01 .block_image01 .box01 .text01{
font-size: 1.4rem;
}
.sectionA01 .block_image01 .box01 .text01 span{
font-size: 1.2rem;
padding: 0 1.5rem;
}
.sectionA01 .block_image01 .box01 .text01 span::before,
.sectionA01 .block_image01 .box01 .text01 span::after{
width: 1.0rem;
}
.sectionA01 .block_image01 .box02{
display: flex;
justify-content: space-between;
}
.sectionA01 .block_image01 .box02 [class^="col"]{
width: 50%;
}
.sectionA01 .block_image01 .box02 [class^="col"] .logo01{
min-height: 3.0rem;
margin: 0 0 1.5rem;
}
.sectionA01 .block_image01 .box02 .col01 .logo01 img{
width: 10.5rem;
height: auto;
}
.sectionA01 .block_image01 .box02 .col02 .logo01 img{
width: 13.6rem;
height: auto;
}
.sectionA01 .block_image01 .box02 [class^="col"] .list01{
padding: 0 1.0rem;
display: block;
}
.sectionA01 .block_image01 .box02 [class^="col"] .list01 > li{
width: 100%;
font-size: 1.2rem;
margin: 0 0 1.0rem;
padding: 0.7rem 0 0.5rem;
}
.sectionA01 .block_image01 .box02 [class^="col"] .list01 > li:last-child{
margin-bottom: 0;
}
.sectionA01 .block_image02{
justify-content: space-between;
}
.sectionA01 .block_image02 .image{
width: 9.0rem;
height: auto;
}
.sectionA01 .block_image02 .text01{
width: calc(100% - 10.5rem);
font-size: 1.4rem;
text-align: center;
line-height: 1.6;
margin: 0;
}
.sectionA01 .block_image02 .text01 span{
border-bottom: 0.3rem dotted var(--color_blue01);
}
.sectionA01 .block_image02 .text01 span b{
font-size: 1.6rem;
}
.sectionA01 .block_image03{
margin: 0 0 1.0rem;
}
.sectionA01 .block_image03 .box01{
margin: 0 0 3.0rem;
}
.sectionA01 .block_image03 .box01 .title01{
font-size: 1.6rem;
margin: 0 0 2.0rem;
}
.sectionA01 .block_image03 .box01 .text01{
font-size: 1.4rem;
}
.sectionA01 .block_image03 .box01 .text01 + .text01{
margin-top: 1.5rem;
}
.sectionA01 .block_image03 .box02 .image{
width: 50%;
height: auto;
}
.sectionA01 .block_image03 .box02 .list01{
width: 50%;
text-align: center;
margin: 0;
}
.sectionA01 .block_image03 .box02 .list01 > li{
font-size: 1.4rem;
margin: 0 0 1.0rem;
padding: 0.5rem 1.5rem 0.3rem;
display: inline-block;
}
.sectionA01 .logo01 img{
width: 5.5rem;
height: auto;
}
.sectionA01 .logo01 span{
font-size: 1.0rem;
margin: 0 0 0 1.0rem;
}
}

/*----------------------------------------------------------
sectionB
----------------------------------------------------------*/
section[class^="sectionB"]{
padding: 80px 0;
overflow: hidden;
position: relative;
z-index: 1;
}
@media (max-width: 768px){
section[class^="sectionB"]{
padding: 4.0rem 0;
}
}

.sectionB01.bg_blue{
background: var(--color_blue01);
}
.sectionB01.bg_blue .block_title01 .ttl01{
border-color: #fff;
}
.sectionB01.bg_blue .block_title01 .ttl01 span{
background: #fff;
color: var(--color_blue01);
}
.sectionB01.bg_blue .block_title01 .title01,
.sectionB01.bg_blue .block_contents01 .box01 .title01,
.sectionB01.bg_blue .block_contents01 .box01 .text01,
.sectionB01.bg_blue .block_btn01 .notes01{
color: #fff;
}

.sectionB01.bg_white{
background: #fff;
}
.sectionB01.bg_white .block_title01 .ttl01{
border-color: var(--color_blue01);
}
.sectionB01.bg_white .block_title01 .ttl01 span{
background: var(--color_blue01);
color: #fff;
}
.sectionB01.bg_white .block_title01 .title01,
.sectionB01.bg_white .block_contents01 .box01 .title01{
color: var(--color_blue01);
}
.sectionB01.bg_white .block_btn01 .notes01{
color: var(--color_orange01);
}

.sectionB02.bg_green{
background: var(--color_green01);
}
.sectionB02.bg_green .block_title01 .ttl01{
border-color: #fff;
}
.sectionB02.bg_green .block_title01 .ttl01 span{
background: #fff;
color: var(--color_green01);
}
.sectionB02.bg_green .block_title01 .title01,
.sectionB02.bg_green .block_contents01 .box01 .title01,
.sectionB02.bg_green .block_contents01 .box01 .text01,
.sectionB02.bg_green .block_btn01 .notes01{
color: #fff;
}

.sectionB02.bg_white{
background: #fff;
}
.sectionB02.bg_white .block_title01 .ttl01{
border-color: var(--color_green01);
}
.sectionB02.bg_white .block_title01 .ttl01 span{
background: var(--color_green01);
color: #fff;
}
.sectionB02.bg_white .block_title01 .title01,
.sectionB02.bg_white .block_contents01 .box01 .title01{
color: var(--color_green01);
}
.sectionB02.bg_white .block_btn01 .notes01{
color: var(--color_orange01);
}

section[class^="sectionB"]#sec_blog::before{
content: "";
width: 344px;
height: 282px;
background: url("/assets/images/top/secB_bg_01.webp") top center / 100% auto no-repeat;
position: absolute;
right: 50%;
top: 47px;
margin-right: -436px;
z-index: -1;
}
section[class^="sectionB"]#sec_counseling::before{
content: "";
width: 320px;
height: 270px;
background: url("/assets/images/top/secB_bg_02.webp") top center / 100% auto no-repeat;
position: absolute;
right: 50%;
top: 40px;
margin-right: -455px;
z-index: -1;
}
section[class^="sectionB"]#sec_shindan::before{
content: "";
width: 220px;
height: 268px;
background: url("/assets/images/top/secB_bg_03.webp") top center / 100% auto no-repeat;
position: absolute;
right: 50%;
top: 37px;
margin-right: -417px;
z-index: -1;
}
section[class^="sectionB"]#sec_job::before{
content: "";
width: 224px;
height: 254px;
background: url("/assets/images/top/secB_bg_04.webp") top center / 100% auto no-repeat;
position: absolute;
right: 50%;
top: 52px;
margin-right: -407px;
z-index: -1;
}
section[class^="sectionB"]#sec_company::before{
content: "";
width: 340px;
height: 274px;
background: url("/assets/images/top/secB_bg_05.webp") top center / 100% auto no-repeat;
position: absolute;
right: 50%;
top: 26px;
margin-right: -527px;
z-index: -1;
}
@media (max-width: 768px){
section[class^="sectionB"]#sec_blog::before{
width: 18.7rem;
height: 15.3rem;
right: 0.7rem;
top: 3.0rem;
margin-right: 0;
}
section[class^="sectionB"]#sec_counseling::before{
width: 19.2rem;
height: 16.1rem;
right: 0.9rem;
top: 2.0rem;
margin-right: 0;
}
section[class^="sectionB"]#sec_shindan::before{
width: 13.1rem;
height: 15.9rem;
right: 0.7rem;
top: 1.3rem;
margin-right: 0;
}
section[class^="sectionB"]#sec_job::before{
width: 13.5rem;
height: 15.3rem;
right: 1.0rem;
top: 2.0rem;
margin-right: 0;
}
section[class^="sectionB"]#sec_company::before{
width: 20.7rem;
height: 16.7rem;
right: -2.0rem;
top: 3.3rem;
margin-right: 0;
}
}

section[class^="sectionB"] .block_title01{
margin: 0 0 50px;
}
section[class^="sectionB"] .block_title01 .ttl01{
margin: 0 0 15px;
border-width: 2px;
border-style: solid;
border-radius: 100px;
display: inline-block;
}
section[class^="sectionB"] .block_title01 .ttl01 span{
font-size: 1.6rem;
font-weight: bold;
border-radius: 100px;
margin: 4px;
padding: 7px 20px 5px;
display: block;
}
section[class^="sectionB"] .block_title01 .title01{
font-size: 3.2rem;
font-weight: bold;
line-height: 1.4;
letter-spacing: 2px;
}
section[class^="sectionB"] .block_title01 .title01 span{
font-size: 6.0rem;
}
section[class^="sectionB"] .block_title02{
border-bottom: 1px solid #fff;
margin: 0 0 30px;
padding: 0 0 30px;
}
section[class^="sectionB"] .block_title02 .title01{
color: #fff;
font-size: 3.4rem;
font-weight: bold;
line-height: 1.4;
}
section[class^="sectionB"] .block_contents01{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
section[class^="sectionB"] .block_contents01 + .block_contents01,
section[class^="sectionB"] .block_btn01 + .block_contents01{
margin-top: 100px;
}
section[class^="sectionB"] .block_contents01 .image01{
box-shadow: 0 0 10px 0px rgba(0, 0, 0, 0.1);
}
section[class^="sectionB"] .block_contents01 .box01{
width: 520px;
padding: 10px 0 0;
}
section[class^="sectionB"] .block_contents01 .box01 .title01{
font-size: 2.0rem;
font-weight: bold;
margin: 0 0 15px;
padding: 0 0 0 45px;
position: relative;
}
section[class^="sectionB"] .block_contents01 .box01 .title01::before{
content: "";
width: 32px;
height: 30px;
position: absolute;
left: 0;
top: 50%;
transform: translateY(-50%);
}
section[class^="sectionB"] .block_contents01 .box01 .title01.ico_book_blue::before{
background: url("/assets/images/top/secB_ico_book01_blue.webp") top center / 100% auto no-repeat;
}
section[class^="sectionB"] .block_contents01 .box01 .title01.ico_book_white::before{
background: url("/assets/images/top/secB_ico_book01_white.webp") top center / 100% auto no-repeat;
}
section[class^="sectionB"] .block_contents01 .box01 .title01.ico_star_green::before{
background: url("/assets/images/top/secB_ico_star01_green.webp") top center / 100% auto no-repeat;
}
section[class^="sectionB"] .block_contents01 .box01 .title01.ico_star_white::before{
background: url("/assets/images/top/secB_ico_star01_white.webp") top center / 100% auto no-repeat;
}
section[class^="sectionB"] .block_contents01 .box01 .text01{
font-size: 1.6rem;
line-height: 1.8;
}
section[class^="sectionB"] .block_list01{
margin: 40px 0 0;
}
section[class^="sectionB"] .block_list01 .list01{
width: 830px;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
section[class^="sectionB"] .block_list01 .list01 > li{
width: calc((100% - 10px ) / 2);
background: #fff;
color: var(--color_green01);
font-size: 1.6rem;
font-weight: bold;
text-align: center;
border-radius: 10px;
margin: 0 0 10px;
padding: 15px 0 13px;
}
@media (min-width: 769px){
section[class^="sectionB"] .block_list01 .list01 > li:nth-last-child(-n+2){
margin-bottom: 0;
}
}
section[class^="sectionB"] .block_list02 .title01{
text-align: center;
margin: 0 0 25px;
}
section[class^="sectionB"] .block_list02 .title01 span{
color: #fff;
font-size: 2.2rem;
font-weight: bold;
text-align: left;
padding: 0 0 0 75px;
display: inline-block;
position: relative;
}
section[class^="sectionB"] .block_list02 .title01 span::before{
content: "";
width: 60px;
height: 54px;
background: url("/assets/images/top/secB02_ico_01.webp") top center / 100% auto no-repeat;
position: absolute;
left: 0;
top: 50%;
transform: translateY(-50%);
}
section[class^="sectionB"] .block_list02 .list01{
width: 830px;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
section[class^="sectionB"] .block_list02 .list01 > li{
width: calc((100% - 10px) / 2);
background: #ff8888;
color: #fff;
font-size: 1.6rem;
font-weight: bold;
border-radius: 10px;
margin: 0 0 10px;
padding: 15px 0 13px 65px;
position: relative;
}
@media (min-width: 769px){
section[class^="sectionB"] .block_list02 .list01 > li:nth-last-child(-n+2){
margin-bottom: 0;
}
}
section[class^="sectionB"] .block_list02 .list01 > li::before{
content: "";
width: 30px;
height: 5px;
background: #fff;
position: absolute;
left: 20px;
top: 50%;
transform: translateY(-50%) rotate(-45deg);
}
section[class^="sectionB"] .block_list02 .list01 > li::after{
content: "";
width: 30px;
height: 5px;
background: #fff;
position: absolute;
left: 20px;
top: 50%;
transform: translateY(-50%) rotate(45deg);
}
section[class^="sectionB"] .block_list03 .lead01{
color: #fff;
font-size: 2.0rem;
line-height: 2.0;
margin: 0 0 40px;
}
section[class^="sectionB"] .block_list03 .list01{
display: flex;
justify-content: center;
}
section[class^="sectionB"] .block_list03 .list01 > li{
width: 180px;
margin: 0 40px 0 0;
}
section[class^="sectionB"] .block_list03 .list01 > li:last-child{
margin-right: 0;
}
section[class^="sectionB"] .block_list03 .list01 > li .image01{
border-radius: 10px;
box-shadow: 0 0 10px 0px rgba(0, 0, 0, 0.1);
display: block;
}
section[class^="sectionB"] .block_list03 .list01 > li span{
color: #fff;
font-size: 1.6rem;
text-align: center;
margin: 10px 0 0;
display: block;
}
section[class^="sectionB"] .block_btn01{
width: 100%;
margin: 40px 0 0;
}
section[class^="sectionB"] .block_btn01 .btn01{
text-align: center;
}
section[class^="sectionB"] .block_btn01 .btn01 a{
background: linear-gradient(#ffc000,#ff9600);
color: #fff;
font-size: 2.4rem;
font-weight: bold;
border-radius: 100px;
padding: 20px 160px;
display: inline-block;
position: relative;
}
section[class^="sectionB"] .block_btn01 .btn01 a::before{
content: "";
width: 14px;
height: 18px;
background: #fff;
clip-path: polygon(0 0, 0% 100%, 100% 50%);
position: absolute;
right: 30px;
top: 50%;
transform: translateY(-50%);
}
section[class^="sectionB"] .block_btn01 .notes01{
font-size: 1.4rem;
text-align: center;
margin: 15px 0 0;
}
section[class^="sectionB"] .block_logoList01{
margin: 60px 0;
display: flex;
overflow: hidden;
}
section[class^="sectionB"] .block_logoList01 ul{
display: flex;
animation: scroll-right 60s infinite linear 0.5s both;
}
section[class^="sectionB"] .block_logoList01 ul > li{
background: #fff;
border-radius: 20px;
margin: 0 20px 0 0;
padding: 20px;
display: inline-block;
}
@media (max-width: 768px){
section[class^="sectionB"] .block_title01{
margin: 0 0 2.5rem;
}
section[class^="sectionB"] .block_title01 .ttl01{
margin: 0 0 1.0rem;
border-width: 1px;
}
section[class^="sectionB"] .block_title01 .ttl01 span{
font-size: 1.4rem;
margin: 0.2rem;
padding: 0.7rem 2.0rem 0.5rem;
}
section[class^="sectionB"] .block_title01 .title01{
font-size: 1.7rem;
letter-spacing: 0;
}
section[class^="sectionB"] .block_title01 .title01 span{
font-size: 3.0rem;
}
section[class^="sectionB"] .block_title02{
margin: 0 0 3.0rem;
padding: 0 0 3.0rem;
}
section[class^="sectionB"] .block_title02 .title01{
font-size: 1.9rem;
}
section[class^="sectionB"] .block_contents01{
display: block;
}
section[class^="sectionB"] .block_contents01 + .block_contents01,
section[class^="sectionB"] .block_btn01 + .block_contents01{
margin-top: 4.0rem;
}
section[class^="sectionB"] .block_contents01 .image01{
width: 100%;
margin: 0 0 2.5rem;
}
section[class^="sectionB"] .block_contents01 .box01{
width: 100%;
padding: 0;
}
section[class^="sectionB"] .block_contents01 .box01 .title01{
font-size: 1.6rem;
margin: 0 0 1.0rem;
padding: 0 0 0 2.7rem;
}
section[class^="sectionB"] .block_contents01 .box01 .title01::before{
width: 2.0rem;
height: 1.9rem;
}
section[class^="sectionB"] .block_contents01 .box01 .text01{
font-size: 1.4rem;
}
section[class^="sectionB"] .block_list01{
margin: 2.0rem 0 0;
}
section[class^="sectionB"] .block_list01 .list01{
width: 100%;
display: block;
}
section[class^="sectionB"] .block_list01 .list01 > li{
width: 100%;
font-size: 1.4rem;
border-radius: 0.5rem;
margin: 0 0 0.5rem;
padding: 1.0rem 0 0.8rem;
}
section[class^="sectionB"] .block_list01 .list01 > li:last-child{
margin-bottom: 0;
}
section[class^="sectionB"] .block_list02 .title01{
margin: 0 0 2.0rem;
}
section[class^="sectionB"] .block_list02 .title01 span{
font-size: 1.4rem;
padding: 0 0 0 6.0rem;
}
section[class^="sectionB"] .block_list02 .title01 span::before{
width: 4.6rem;
height: 4.1rem;
}
section[class^="sectionB"] .block_list02 .list01{
width: 100%;
display: block;
}
section[class^="sectionB"] .block_list02 .list01 > li{
width: 100%;
font-size: 1.4rem;
border-radius: 0.5rem;
margin: 0 0 0.5rem;
padding: 1.0rem 0 1.0rem 4.5rem;
}
section[class^="sectionB"] .block_list02 .list01 > li:last-child{
margin-bottom: 0;
}
section[class^="sectionB"] .block_list02 .list01 > li::before,
section[class^="sectionB"] .block_list02 .list01 > li::after{
width: 2.0rem;
height: 0.3rem;
left: 1.5rem;
}
section[class^="sectionB"] .block_list03 .lead01{
font-size: 1.4rem;
margin: 0 0 3.0rem;
}
section[class^="sectionB"] .block_list03 .list01 > li{
width: calc((100% - 2.0rem) / 3);
margin: 0 1.0rem 0 0;
}
section[class^="sectionB"] .block_list03 .list01 > li .image01{
border-radius: 1.0rem;
}
section[class^="sectionB"] .block_list03 .list01 > li span{
font-size: 1.2rem;
margin: 1.0rem 0 0;
}
section[class^="sectionB"] .block_btn01{
margin: 3.0rem 0 0;
}
section[class^="sectionB"] .block_btn01 .btn01 a{
font-size: 2.0rem;
padding: 1.5rem 0 1.3rem;
display: block;
}
section[class^="sectionB"] .block_btn01 .btn01 a::before{
width: 1.0rem;
height: 1.2rem;
right: 2.0rem;
}
section[class^="sectionB"] .block_btn01 .notes01{
font-size: 1.2rem;
margin: 1.0rem 0 0;
}
section[class^="sectionB"] .block_logoList01{
margin: 3.0rem 0;
}
section[class^="sectionB"] .block_logoList01 ul > li{
border-radius: 1.0rem;
margin: 0 0.5rem 0 0;
padding: 1.2rem 1.0rem;
}
section[class^="sectionB"] .block_logoList01 ul > li img{
width: 9.0rem;
height: auto;
}
}

/*----------------------------------------------------------
sectionC
----------------------------------------------------------*/
.sectionC01{
padding: 0 0 80px;
}
.sectionC01 > .title01{
background: url("/assets/images/top/secC01_bg_01.webp"),#808b90;
background-position: top center, top center;
background-size: auto 100%, 100% 100%;
background-repeat: no-repeat, repeat;
color: #fff;
font-size: 3.4rem;
font-weight: bold;
text-align: center;
margin: 0 0 80px;
padding: 120px 0;
}
.sectionC01 > .title01 span{
font-size: 6.0rem;
padding: 0 120px;
display: inline-block;
position: relative;
}
.sectionC01 > .title01 span::before{
content: "";
width: 100px;
height: 2px;
background: #fff;
position: absolute;
left: 0;
top: 50%;
transform: translateY(-50%);
}
.sectionC01 > .title01 span::after{
content: "";
width: 100px;
height: 2px;
background: #fff;
position: absolute;
right: 0;
top: 50%;
transform: translateY(-50%);
}
.sectionC01 .block_point01{
width: 830px;
margin: 0 auto;
}
.sectionC01 .block_point01 .box01 + .box01{
margin-top: 80px;
}
.sectionC01 .block_point01 .box01 .title01{
width: 100%;
border-bottom: 1px solid var(--color_blue01);
margin: 0 0 20px;
padding: 0 0 25px;
display: flex;
align-items: center;
}
.sectionC01 .block_point01 .box01 .title01 .num{
width: 70px;
height: 70px;
background: var(--color_blue01);
color: #fff;
font-size: 4.6rem;
font-weight: bold;
line-height: 1.0;
margin: 0 20px 0 0;
padding: 4px 0 0 2px;
display: flex;
align-items: center;
justify-content: center;
}
.sectionC01 .block_point01 .box01 .title01 .txt{
color: var(--color_blue01);
font-size: 2.4rem;
font-weight: bold;
}
.sectionC01 .block_point01 .box01 .title01 .txt b{
font-size: 4.0rem;
}
.sectionC01 .block_point01 .box01 .text01{
font-size: 1.8rem;
line-height: 2.0;
}
@media (max-width: 768px){
.sectionC01{
padding: 0 0 4.0rem;
}
.sectionC01 > .title01{
background: url("/assets/images/top/secC01_bg_01.webp") 40% 50% / auto 100% no-repeat;
font-size: 1.9rem;
margin: 0 0 4.0rem;
padding: 8.0rem 0;
}
.sectionC01 > .title01 span{
font-size: 3.0rem;
padding: 0 7.0rem;
}
.sectionC01 > .title01 span::before,
.sectionC01 > .title01 span::after{
width: 5.0rem;
height: 1px;
}
.sectionC01 .block_point01{
width: 100%;
}
.sectionC01 .block_point01 .box01 + .box01{
margin-top: 3.0rem;
}
.sectionC01 .block_point01 .box01 .title01{
margin: 0 0 1.5rem;
padding: 0 0 2.0rem;
}
.sectionC01 .block_point01 .box01 .title01 .num{
width: 4.5rem;
height: 4.5rem;
font-size: 2.5rem;
margin: 0 1.2rem 0 0;
padding: 0.4rem 0 0 0.2rem;
}
.sectionC01 .block_point01 .box01 .title01 .txt{
font-size: 1.6rem;
line-height: 1.4;
}
.sectionC01 .block_point01 .box01 .title01 .txt b{
font-size: 2.0rem;
}
.sectionC01 .block_point01 .box01 .text01{
font-size: 1.4rem;
}
}

/*----------------------------------------------------------
sectionD
----------------------------------------------------------*/
.sectionD01{
padding: 80px 0;
}
.sectionD01 .title01{
color: var(--color_blue01);
font-size: 3.4rem;
font-weight: bold;
text-align: center;
margin: 0 0 60px;
}
.sectionD01 .block_faq01 .box01{
border-top: 1px solid var(--color_blue01);
padding: 30px 40px;
}
.sectionD01 .block_faq01 .box01:last-of-type{
border-bottom: 1px solid var(--color_blue01);
}
.sectionD01 .block_faq01 .box01 .question{
width: 100%;
color: var(--color_blue01);
font-size: 1.8rem;
font-weight: bold;
padding: 0 30px 0 0;
display: flex;
position: relative;
cursor: pointer;
}
.sectionD01 .block_faq01 .box01 .question::before{
content: "";
width: 30px;
height: 2px;
border-bottom: 2px solid var(--color_blue01);
position: absolute;
right: 0;
top: 50%;
transform: translateY(-50%);
}
.sectionD01 .block_faq01 .box01 .question::after{
content: "";
width: 30px;
height: 2px;
border-bottom: 2px solid var(--color_blue01);
position: absolute;
right: 0;
top: 50%;
transform: translateY(-50%) rotate(90deg);
transition: 0.3s;
}
.sectionD01 .block_faq01 .box01 .question.active::after{
transform: translateY(-50%) rotate(-90deg);
opacity: 0;
}
.sectionD01 .block_faq01 .box01 .question span{
margin: 0 10px 0 0;
display: block;
}
.sectionD01 .block_faq01 .box01 .answer{
padding: 20px 0 0;
display: none;
}
.sectionD01 .block_faq01 .box01 .answer .text01{
font-size: 1.6rem;
line-height: 1.8;
}
.sectionD01 .block_faq01 .box01 .answer .text01 + .text01{
margin-top: 15px;
}
.sectionD01 .block_faq01 .box01 .answer .text01 a{
color: var(--color_orange01);
text-decoration: underline;
display: inline;
}
.sectionD01 .block_faq01 .box01 .answer .text01 a.arrow{
padding: 0 0 0 16px;
position: relative;
}
.sectionD01 .block_faq01 .box01 .answer .text01 a.arrow::before{
content: "";
width: 10px;
height: 12px;
background: var(--color_orange01);
clip-path: polygon(0 0, 0% 100%, 100% 50%);
position: absolute;
left: 0;
top: 4px;
}
@media (max-width: 768px){
.sectionD01{
padding: 4.0rem 0;
}
.sectionD01 .title01{
font-size: 1.9rem;
margin: 0 0 3.0rem;
}
.sectionD01 .block_faq01 .box01{
padding: 1.5rem 0 1.5rem 1.0rem;
}
.sectionD01 .block_faq01 .box01 .question{
font-size: 1.4rem;
padding: 0 1.5rem 0 0;
}
.sectionD01 .block_faq01 .box01 .question::before,
.sectionD01 .block_faq01 .box01 .question::after{
width: 1.5rem;
height: 1px;
border-bottom: 1px solid var(--color_blue01);
}
.sectionD01 .block_faq01 .box01 .question span{
width: 2.5rem;
margin: 0;
}
.sectionD01 .block_faq01 .box01 .answer{
padding: 1.5rem 1.5rem 0 2.5rem;
}
.sectionD01 .block_faq01 .box01 .answer .text01{
font-size: 1.4rem;
}
.sectionD01 .block_faq01 .box01 .answer .text01 + .text01{
margin-top: 1.0rem;
}
.sectionD01 .block_faq01 .box01 .answer .text01 a.arrow{
padding: 0 0 0 16px;
position: relative;
}
.sectionD01 .block_faq01 .box01 .answer .text01 a.arrow::before{
width: 1.0rem;
height: 1.2rem;
top: 0.4rem;
}
}

/*----------------------------------------------------------
animation
----------------------------------------------------------*/
@keyframes scroll-right{
from{ transform: translateX(0); }
to{ transform: translateX(-100%); }
}