@charset "utf-8";
/* CSS Document */

/*--------------------------------------
　Main Index
---------------------------------------*/


/*===========
inview
===========*/

.fadeIn_up {
  transform: translate(0, 100px);
  transition: all .6s ease-in-out;
  opacity: 0;
}
.fadeIn_up.is-show {
  transform: translate(0, 0);
  opacity: 1;
}
.fadeIn_up2 {
  transform: translate(0, 40px);
  transition: all .3s ease-in-out;
  opacity: 0;
}
.fadeIn_up2.is-show {
  transform: translate(0, 0);
  opacity: 1;
}

.fadeIn_up.delay1{
  transition-delay: 0.1s; 
}
.fadeIn_up.delay2{
  transition-delay: 0.2s; 
}



/*------------
　body_PC
------------*/
body {
background: none;
min-width:1280px;
}

.forTab{
position: relative;
z-index: 1;
}
.index{
}

img:not([width]) {
/*width:100%;*/
height:auto;
max-width: 100%;
}

.areaInner{
width: 110rem;
}





/*--------------------------------------
　header_PC
---------------------------------------*/
#header{
position: relative;
z-index: 14;
overflow: hidden;
}
#header::before{
}
#header::after{
}

#header .inner{
}


#header .topArea2{
}

#header .siteName h1{
display: inline-block;
letter-spacing: 0;
font-weight: 500;
}



/* mvArea */
.mvArea{position: relative;height: 90rem;height: calc(100vh - 8rem);margin: 0 0 0;background: url("./img/idx_mvbg.png") calc(50% + 40rem) 100% no-repeat;min-height: 70rem;background-size: 30% auto;}
.mvArea::before{content: "";position: absolute;z-index: 1;bottom: 4rem;right: 145rem;width: 1.7rem;height: 22rem;background: url("./img/eng_scr.png") 0 0 no-repeat#fff;background-size: 100% auto;}

/* txtArea */
.mvArea .txtArea{
position: relative;
z-index: 1;
height: calc(100vh - 8rem - 6rem);
margin: 6rem 0 0;
}

.mvArea .txtArea h2{
position: absolute;
top: 0;
right: 0;
height: 50rem;
font-family: "Zen Kaku Gothic New vt";
letter-spacing: 0.1em;
-ms-writing-mode: tb-rl;
writing-mode: vertical-rl;
font-size:4.0rem;
color: #fff;
}
.mvArea .txtArea h2 .obi{
display: inline-block;
margin: 0 0 0 4%;
padding: 2rem 0;
background: #3bb077;
}

.mvArea .txtArea h3{
position: absolute;
bottom: 2.0rem;
left: 11.5rem;
height: 40rem;
font-family: "Zen Kaku Gothic New vt";
letter-spacing: 0.1em;
-ms-writing-mode: tb-rl;
writing-mode: vertical-rl;
font-size:4.0rem;
}
.mvArea .txtArea h3 .obi{
display: inline-block;
margin: 0 4% 0 0;
padding: 1.5rem 0;
background: #fff;
}



/* slideArea */

.mvArea .slideArea{
position: absolute;
top: 10rem;
width: 100%;
height: 60rem;
overflow: hidden;
}
.mvArea .slideArea img{
}
.mvArea .slideArea .slider1{

}

.mvArea .slideArea .slick-slide{
width: 267rem;
height: 60rem;
margin-left:10rem!important;
margin-right:10rem!important;
}
.mvArea .slideArea .slick-slide img{
/*width: 100%;*/
}



/* headNote */
.mvArea .headNote{
position: absolute;
bottom: 0;
left: calc(50% - 55rem);
font-size:1.2rem;
}



/*------------
contents_PC
------------*/

#contents{
margin: 0;
border: none;
}
#contents::before{
}

.index{width: 100%;padding: 0 0 3rem;}




/*------------
indexSect_PC
------------*/
.indexSect{
position: relative;
}
.indexSect::before{
}
.indexSect .areaInner{
}
.indexSect .sectTtlArea{position: relative;margin: 10rem 0 5rem;text-align: center;}
.indexSect .sectTtl{
line-height: 1.6;
font-size:4.0rem;
}


.indexSect .sectTtl a .arr{
position: relative;
display: inline-block;
padding: 4px 9.0rem 5px 0;
background: url("./img/ccl_gr.svg") 100% calc(50% - 0px) no-repeat;
background-size: 3.1rem auto;
}
.indexSect .sectTtl a .arr::before{
content: "";
position: absolute;
top: calc(50% - .6rem);
right: 1.0rem;
width: 5.0rem;
height: .9rem;
background: url(./img/arrow_hz_long.svg) 0 100% / 5.0rem auto no-repeat;
transition: all .3s ease-in-out;
transform-origin: 0 50%;
}
.indexSect .sectTtl a .arr::after{
content: "";
position: absolute;
top: calc(50% - .6rem);
right: 6.5rem;
width: .5rem;
height: .9rem;
background: url(./img/arrow_hz_add.svg) 0 100% / .5rem auto no-repeat;
}
.indexSect .sectTtl a:hover{
opacity: 0.7;
}
.indexSect .sectTtl a:hover .arr::before{
transform: scaleX(1.2);
}

.sp_only {
  display: none;
}


.indexSect .sectTtl .ccl{
position: relative;
}
.indexSect .sectTtl .ccl::before{
content: "";
position: absolute;
z-index: -1;
top: -30%;
left: calc(50% - 0);
width: 105%;
height: 150%;
background: url(./img/mark_ccl.svg) 50% 50% no-repeat;
background-size: 100% 100%;
opacity: 1.0;
}
.indexSect .sectTtl .ccl_long::before{
background-image: url(./img/mark_ccl_long.svg);
}




/*------------
sect01_PC
------------*/
#sect01{
position: relative;
padding: 0 0 14rem;
}
#sect01::before{
}
#sect01 .sectTtlArea{
min-height: 51rem;
text-align: left;
}
#sect01 .sectTtl{padding: 4rem 0 0;}
#sect01 .sectTtl::before{
content: "";
position: absolute;
top: 0;
left: -5rem;
width: 9.4rem;
height: 8rem;
background: url("./img/h2_deco.svg") 0 0 no-repeat;
background-size: 9.4rem auto;
}
#sect01 .sectTtlArea .flame{
position: absolute;
top: 0;
right: -8rem;
}
#sect01 .sectTtlArea p{
font-size:1.8rem;
}
#sect01 .sectTtlArea p .fontL{
font-size:2.4rem;
font-weight: 500;
}
#sect01 .sectTtlArea p .ccl{
position: relative;
}
#sect01 .sectTtlArea p .ccl::before{
content: "";
position: absolute;
z-index: -1;
top: calc(50% - 3rem);
left: calc(50% - 10rem);
width: 19.5rem;
height: 6.8rem;
background: url(./img/mark_ccl_l.svg) 0 0 no-repeat;
background-size: 19.5rem 6.8rem;
opacity: 1.0;
}
#sect01 .flame {
max-width: 550px;
margin: 0 auto;
}

#sect01 .flame img {
width: 100%;
height: auto;
}


#sect01 .spv{position: relative;margin: 0 5rem;padding: 4.5rem 0 .5rem;background: #ffff;border: -4.8rem solid #00d084;}
#sect01 .spv::before{
content: "";
position: absolute;
z-index: -1;
top: 2rem;
left: 2rem;
width: 100%;
height: 100%;
background: #e8f7f0;
border: .2rem solid #00d084;
}
#sect01 .spv::after{
content: "";
position: absolute;
top: -4rem;
left: 2.2rem;
width: 1rem;
height: 19rem;
background: url(./img/eng_sps.png) 0 0 no-repeat;
background-size: 1.0rem auto;
}

#sect01 .spv .boxTtl{
position: absolute;
top: -4rem;
left: 6rem;
font-family: "Zen Kaku Gothic New vt";
letter-spacing: 0.1em;
-ms-writing-mode: tb-rl;
writing-mode: vertical-rl;
font-size:2.4rem;
}
#sect01 .spv .boxTtl .obi{
display: inline-block;
padding: 1.5rem 0;
background: #3bb077;
color: #fff;
}

#sect01 .spv .flame{
position: absolute;
top: 5rem;
right: 5rem;
display: flex;
align-items: center;
width: 26rem;
height: 16.7rem;
padding: 2rem;
background: #fff;
}


#sect01 .spv .txtArea{
padding: 0 36rem .8rem 14rem;
}
#sect01 .spv .sttl{
padding: 0 0 1.5rem;
border-bottom: .2rem solid #9ad2af;
}


/*------------
sect02_PC
------------*/
#sect02{
padding: 12rem 0 17rem;
background: #e8f7f0;
}
#sect02::before{
content: "INTERVIEW";
position: absolute;
top: 8rem;
left: 0;
width: 100%;
text-align: center;
font-family: "M PLUS 1p";
font-weight: 500;
font-size:1.8rem;
color: #3bb077;
}
#sect02 .sectTtlArea{
}
#sect02 .sectTtl{
margin: 0 0 4.5rem;
}
#sect02 .sectTtl .obi{
display: inline-block;
margin: 0 .5rem;
padding: .8rem 1rem 1rem;
background: #fff;
line-height: 1;
}
#sect02 .sectTtlArea h3{
display: inline;
border-bottom: .2rem solid #3bb077;
font-size:2.4rem;
}





#sect02 .nvArea .ulBox{
display: flex;
justify-content: space-between;
padding: 3rem 0 0;
}
#sect02 .nvArea .liBox{
width: 35.2rem;
margin: 0 0 5rem;
padding: 21rem 0 0;
background: #fff;
}
#sect02 .nvArea .liBox::before{
content: "";
position: absolute;
bottom: -4.3rem;
right: 1rem;
width: 2.6rem;
height: 13.5rem;
background: url("./img/eng_ck.png") 0 0 no-repeat;
background-size: 2.6rem auto;
}


#sect02 .nvArea .liBox .flame{
position: absolute;
top: 0;
height: 21rem;
}
#sect02 .nvArea .liBox .flame img{
width: 100%;
object-fit: cover;
}

#sect02 .nvArea .liBox .catch{
position: absolute;
z-index: 1;
top: -2rem;
font-size:1.8rem;
}
#sect02 .nvArea .liBox .catch .obi{
display: inline-block;
padding: .7rem 1rem .9rem;
background: #3bb077;
line-height: 1;
color: #fff;
}

#sect02 .nvArea .liBox .sttl{
position: absolute;
top: 8rem;
left: 2rem;
width: 18.5rem;
height: 10rem;
padding: .8rem 2rem;
background: url(./img/sct02_nail_deco.png) 0 0 no-repeat;
background-size: 18.5rem auto;
font-size:2.6rem;
}
#sect02 .nvArea .sttl .fontWrap{
display: block;
transform: rotate(-5deg);
}
#sect02 .nvArea .sttl .fontWrap span{
position: relative;
display: inline-block;
}
#sect02 .nvArea .sttl .fontWrap span::before{
content: "";
position: absolute;
bottom: .5rem;
left: 0;
width: 100%;
height: .2rem;
background: #fff600;
}


#sect02 .nvArea .liBox .spec{position: absolute;top: 23rem;right: 2rem;padding: .5rem 1.2rem .6rem;background: #fff;border-radius: 9999px;line-height: 1;font-size:1.3rem;font-weight: 500;}

#sect02 .nvArea .liBox .tags{
margin: 4rem 0 .8rem;
padding: 2.5rem 4rem 2rem 3rem;
text-align: left;
}
#sect02 .nvArea .liBox .tag{
position: relative;
display: inline-block;
min-width: 10.8rem;
margin: 0 1.0rem 1.1rem 0;
}
#sect02 .nvArea .liBox .tag::before{/* content: ""; */position: absolute;top: .3rem;left: .3rem;width: 100%;height: 100%;border: .2rem solid #222;}
#sect02 .nvArea .liBox .tag span{/* position: relative; */display: block;padding: .3rem 1.0rem .5rem;background: #222222;line-height: 1;text-align: left;color: #fff;}
#sect02 .nvArea .liBox .tag span::before{
content: "#";
}





/*------------
sect200_PC
------------*/
.sect200{
padding: 0 0 15rem;
background: #e8f7f0;
}
#sect203{
padding: 0 0 19rem;
}
.sect200::before{
  content: "";
  position: absolute;
  z-index: 1;
  top: -10rem;
  left: calc(50% + 50rem);
  width: 30rem;
  height: 48rem;
  background: url(./img/h1_deco2.png) 0 0 no-repeat;
  background-size: 90% auto;
  }
.sect200.tw::before{
  content: "";
  position: absolute;
  z-index: 1;
  top: -14rem;
  left: calc(50% + 55rem);
  width: 23rem;
  height: 48rem;
  background: url(./img/sct04_ill02.png) 0 0 no-repeat;
  background-size: 100% auto;
  }
.sect200 .areaInner{
padding: 9rem 0 0 5rem;
background: #fff;
}
.sect200.tw02::before{
  content: "";
  position: absolute;
  z-index: 1;
  top: -14rem;
  left: calc(50% + 55rem);
  width: 23rem;
  height: 48rem;
  background: url(./img/sum_ill.png) 0 0 no-repeat;
  background-size: 90% auto;
  }
.sect200 .areaInner::before{
content: "";
position: absolute;
top: 0;
left: -12rem;
width: 12rem;
height: 100%;
background: #fff;
}

.sect200 .areaInner::after{
content: "";
position: absolute;
top: 0;
right: -15rem;
width: 15rem;
height: 100%;
background: #fff;
}

.sect200 .obiWrap{
position: absolute;
top: -2.5rem;
left: -7.5rem;
font-family: "Zen Kaku Gothic New vt";
letter-spacing: 0.1em;
-ms-writing-mode: tb-rl;
writing-mode: vertical-rl;
font-size:3.0rem;
color: #fff;
}
.sect200 .obiWrap .obi{
display: inline-block;
padding: 1.5rem 0;
margin: 0 1rem 0 0;
background: #3bb077;
}


.sect200 .qa{
position: relative;
padding: 0 46rem 7rem 0;
min-height: 39rem;
}
.sect200 .typeB{
padding: 0 0 7rem 0rem;
}

.sect200 .qa .sttl{
margin: 0 20rem 0 0;
}

.sect200 .qa .fontWrap{
position: relative;
z-index: 1;
}
.sect200 .qa .ccl{
position: relative;
}
.sect200 .qa .ccl::before{
content: "";
position: absolute;
z-index: -1;
top: calc(50% - 0);
left: calc(50% - 0);
width: 105%;
height: 110%;
background: url(./img/mark_ccl.svg) 0 0 no-repeat;
background-size: 100% 100%;
opacity: 1.0;
}
.sect200 .qa .ccl_long::before{
background-image: url(./img/mark_ccl_long.svg);
}



.sect200 .qa .imgArea{
position: absolute;
top: 0;
right: 0;
width: 41.6rem;
text-align: right;
}
.sect200 .typeB .imgArea{
right: auto;
left: 0;
text-align: left;
}

.sect200 .qa .imgArea .flame{
height: 30rem;
}
.sect200 .qa .imgArea .flame img{
height: 30rem;
object-fit: cover;
}
.sect200 .qa .spec{
padding: 1.5rem 0 1rem;
font-weight: 500;
}

.sect200 .qa .tags{
}
.sect200 .qa .tag{
position: relative;
display: inline-block;
min-width: 10.8rem;
margin: 0 .3rem 1.1rem 1.0rem;
}
.sect200 .typeB .tag{
margin: 0 1.0rem 1.1rem .3rem;
}
.sect200 .qa .tag::before{/* content: ""; */position: absolute;top: .3rem;left: .3rem;width: 100%;height: 100%;border: .2rem solid #222;}
.sect200 .qa .tag span{position: relative;display: block;padding: .5rem 1.0rem .7rem;background: #222222;line-height: 1;text-align: left;color: #fff;}
.sect200 .qa .tag span::before{
content: "#";
}

.sect200 .linkR{position: relative;right: -47rem;margin: -2rem 0 0;} 



/* qa2col */
.sect200 .qa2col{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.sect200 .qa2col .qa{
width: 51rem;
padding: 0 0 5rem;
min-height: 0;
}
.sect200 .qa2col .qa .sttl{
display: flex;
align-items: center;
margin: 0 9rem 0 0;
}
.sect200 .qa2col .qa .catch{
display: flex;
align-items: center;
}




/* tab */
.tabArea{
padding: 0 0 9rem;
}
.tabArea .ttlArea{
padding: 0 0 3rem;
}
.tabArea h3{
text-align: center;
font-size:2.4rem;
color: #fff;
}
.tabArea h3 .obi{
display: inline-block;
padding: 1rem 1rem 1.2rem;
background: #3bb077;
line-height: 1;
}
.tabArea .ttlArea p{
text-align: center;
}

.tabArea .tab{
display: flex;
align-items: center;
justify-content: space-between;
padding: 0 19rem;
border-bottom: .2rem solid rgba(34,34,34,.5);
}
.tabArea .tab-botom{
border-bottom:none;
border-top: .2rem solid rgba(34,34,34,.5);
}

.tabArea .tablist{
position: relative;
width: 14rem;
padding: 0 0 1.5rem;
text-align: center;
font-size:2.0rem;
font-weight: 500;
cursor: pointer;
opacity: .5;
transition: all .2s ease-in-out;
}
.tabArea .tab-botom .tablist{
padding: 1.5rem 0 0;
}
.tabArea .tablist:hover{
opacity: 1;
}

.tabArea .tablist.active{
font-size:2.4rem;
opacity: 1;
}
.tabArea .tablist.active::before{
content: "";
position: absolute;
bottom: -0.4rem;
left: 0;
width: 100%;
height: .6rem;
background: #3bb077;
}
.tabArea .tablist.active::after{
content: "";
position: absolute;
bottom: -2.3rem;
left: 0;
width: 100%;
height: 1.4rem;
background: url(./img/tri1.svg) 50% 0 no-repeat;
background-size: 3.0rem auto;
}

.tabArea .tab-botom .tablist.active::before{
top: -0.4rem;
bottom: auto;
}
.tabArea .tab-botom .tablist.active::after{
top: -2.3rem;
bottom: auto;
transform: scale(1, -1);
}


/* tabcontents */
.tabArea .tabcontents{
padding: 5rem 7rem;
background: #f8f8f8;
}

.tabArea .tabcontents .tabcontents-list{
display: flex;
justify-content: space-between;
}
.tabArea .tabcontents .liBox{
display: flex;
justify-content: flex-end;
margin: 0 0 0 7rem;
padding: 2.5rem 8rem 1.0rem 0;
background: url("./img/dotline2.png") 0 100% repeat-x;
background-size: auto .2rem;
}

.tabArea .tabcontents .liBox::after{
content: "";
position: absolute;
top: 3.2rem;
left: -7rem;
width: 1.6rem;
height: 1.6rem;
background: #3bb077;
border-radius: 50%;
}
.tabArea .tabcontents .liBox::before{
content: "";
position: absolute;
top: 3.2rem;
left: -6.3rem;
width: .2rem;
height: calc(100% - 0rem);
background: #3bb077;
}

.tabArea .tabcontents .liBox .sttl{
margin: -0.2rem 0 0;
padding: 0 0 0 1.5rem;
width: 13rem;
font-size:2.0rem;
}
.tabArea .tabcontents .liBox .mainArea{
width: 67rem;
}
.tabArea .tabcontents .liBox .catch{margin: 0 0 1.5rem;font-size: 20px;color: #3bb077;text-shadow: 0 0 0.4px #3bb077;}
.tabArea .tabcontents .liBox p{
margin-top: -1rem;
}

.tabArea .tabcontents .liBox .obi{
display: inline-block;
padding: .5rem 1rem .8rem;
background: #fff;
line-height: 1;
}
.tabArea .tab1 .ulBox:first-child::before{content: "";position: absolute;z-index: 1;top: 35rem;right: 32rem;width: 13.9rem;height: 14.7rem;background: url(./img/tab_ill06.png) 0 0 no-repeat;background-size: 100% auto;}
.tabArea .tab1 .ulBox:last-child::before{content: "";position: absolute;z-index: 1;top: 19rem;right: -6rem;width: 13.9rem;height: 14.7rem;background: url(./img/tab_ill04.png) 0 0 no-repeat;background-size: 90% auto;}



/* col2 */
.tabArea .col2 .liBox{
margin: 0 0 0 5rem;
padding: 2.5rem 5rem 1.0rem 0;
}
.tabArea .col2 .liBox::after{
left: -5rem;
}
.tabArea .col2 .liBox::before{
left: -4.3rem;
}
.tabArea .col2 .liBox .sttl{
width: 8rem;
}
.tabArea .col2 .liBox .mainArea{
width: 26rem;
}


/* last-ch */
.tabArea .col2 .ulBox:first-child .liBox:last-child::before{
height: calc(100% - 3rem);
}
.tabArea .ulBox:last-child .liBox:last-child{
background: none;
}
.tabArea .ulBox:last-child .liBox:last-child::before{
background: none;
}


/* tab2 */
.tabArea .tab2 .ulBox:first-child::before{
top: 14rem;
right: -4rem;
}
.tabArea .tab2 .ulBox:last-child::before{
top: -2rem;
right: -4rem;
}
.tabArea .tab2 .ulBox:first-child::before{content: "";position: absolute;z-index: 1; top: 38rem;right: -9rem; width: 13rem;height: 14.7rem;background: url(./img/tab_ill04.png) 0 0 no-repeat;background-size: 90% auto;}
.tabArea .tab2 .ulBox:last-child::before{content: "";position: absolute;z-index: 1;top: -3rem;right: -6rem;width: 13.9rem;height: 14.7rem;background: url(./img/tab_ill02.png) 0 0 no-repeat;background-size: 97% auto;}

/* tab3 */
.tabArea .tab3 .ulBox:first-child::before{
top: 12rem;
right: -4rem;
}
.tabArea .tab3 .ulBox:last-child::before{
top: 22rem;
right: -4rem;
}

.tabArea .tab3 .ulBox:first-child::before{content: "";position: absolute;z-index: 1;top: 37rem;right: 34rem;width: 12rem;height: 14.7rem;background: url(./img/tab_ill03.png) 0 0 no-repeat;background-size: 78% auto;}
.tabArea .tab3 .ulBox:last-child::before{content: "";position: absolute;z-index: 1;top: 15rem;right: -6rem;width: 15rem;height: 16rem;background: url(./img/tab_ill05.png) 0 0 no-repeat;background-size: 110% auto;}








/*------------
sect02mid_PC
------------*/
#sect02mid{
padding: 16rem 0 12rem;
background: #e8f7f0;
}
#sect02mid::before{
content: "";
position: absolute;
top: 0;
left: calc(50% - 0.5rem);
width: 1rem;
height: 14rem;
background: url(./img/eng_pick.png) 0 0 no-repeat;
background-size: 1.0rem auto;
}
#sect02mid .sectTtlArea {
margin: 0 0 3rem;
}
#sect02mid .sectTtl{
font-size:3.2rem;
}


/* swiper */
#sect02mid .slideArea{
position: relative;
padding: 0 0 2rem;
}
#sect02mid .swiper-wrapper{
padding-left: calc((100% - 1340px)/2);
}
#sect02mid .swiper-slide{
padding: 6.0rem 0 0;
width: 38rem;
}
#sect02mid .swiper-slide .inner{
position: relative;
padding: 2.5rem 3rem 2.3rem;
background: #fff;
border: .2rem solid #c2c2c2;
border-right: none;
}

#sect02mid .swiper-slide .engNum{
position: absolute;
z-index: 1;
top: 0;
left: .8rem;
line-height: 1;
font-size:8.0rem;
font-weight: 500;
color: #3bb077;
opacity: .5;
}
#sect02mid .swiper-slide .catch{
margin: -2.2rem 0 .5rem;
font-size:1.8rem;
color: #fff;
}
#sect02mid .swiper-slide .catch .obi{
display: inline-block;
padding: .8rem 1rem 1.0rem;
background: #3bb077;
line-height: 1;
}
#sect02mid .swiper-slide .flame{
width: 100%;
height: 15.8rem;
}
#sect02mid .swiper-slide .flame img{
width: 100%;
height: 15.8rem;
object-fit: cover;
}

#sect02mid .swiper-slide .mainTxt{
}
#sect02mid .swiper-slide .mainTxt p{
line-height: 1.8;
}
#sect02mid .swiper-slide .subTxt{
padding: 1rem 2rem .8rem;
background: #fbf5e9;
}
#sect02mid .swiper-slide .subTxt .sttl{
margin: 0 0 .6rem;
padding: 0 0 0 2rem;
font-size:1.6rem;
color: #3bb077;
}
#sect02mid .swiper-slide .subTxt .sttl::before{
content: "";
position: absolute;
top: .8rem;
left: 0;
width: .9rem;
height: .9rem;
background: #3bb077;
border-radius: 50%;
}
#sect02mid .swiper-slide .subTxt p{
margin: 0 0 .5rem;
line-height: 1.7;
}

/* arrow swiper */
#sect02mid .swp-next, 
#sect02mid .swp-prev{
bottom: 1.8rem;
width: 6.5rem;
height: 2.2rem;
position: absolute;
z-index: 0;
cursor: pointer;
opacity: 1.0;
transition: all .2s ease-in-out;
}
#sect02mid .swp-prev{
background: url("./img/arrow_nb_rv.svg") 0 50% no-repeat;
background-size: 6.5rem auto;
left: calc(50% - 25.0rem);
}
#sect02mid .swp-next{
background: url("./img/arrow_nb.svg") 100% 50% no-repeat;
background-size: 6.5rem auto;
left: calc(50% + 25rem - 6.5rem);
}

#sect02mid .swp-prev::before{
content: "BACK";
position: absolute;
top: -2.5rem;
left: -1rem;
line-height: 1;
font-size:1.2rem;
font-family: "M PLUS 1p";
font-weight: 500;
letter-spacing: 0.1em;
}
#sect02mid .swp-next::before{
content: "NEXT";
position: absolute;
top: -2.5rem;
right: -1rem;
line-height: 1;
font-size:1.2rem;
font-family: "M PLUS 1p";
font-weight: 500;
letter-spacing: 0.1em;
}

#sect02mid .swp-next:hover, 
#sect02mid .swp-prev:hover{
opacity: .7;
}


/* arrow swiper-pagination */
#sect02mid .swiper-pagination {
padding: 6rem 0 0;
text-align:center;
}
#sect02mid .swiper-pagination-bullet{
display: inline-block;
width: 2.6rem!important;
height: .3rem!important;
margin: 0 .25rem!important;
background: #222222;
cursor: pointer;
opacity: .3;
}
#sect02mid .swiper-pagination-bullet-active{
opacity: 1;
}







/*------------
sect02bot_PC
------------*/
#sect02bot{
}
#sect02bot::before{content: "";position: absolute;top: 0;left: 0;width: 100%;height: 40%;background: #e8f7f0;}
#sect02bot .outer{
position: relative;
}
#sect02bot .outer::before{
content: "";
position: absolute;
top: 0;
left: -5rem;
width: 5rem;
height: 100%;
background: #3bb077;
}
#sect02bot .outer::after{
content: "";
position: absolute;
top: 0;
right: -5rem;
width: 5rem;
height: 100%;
background: #3bb077;
}
#sect02bot .sum {margin: 0 0 2rem;padding: 8rem 28rem 7.5rem 4rem;}
#sect02bot .sum .txtArea::before{
  content: "";
  position: absolute;
  bottom: -32rem;
  right: -30rem;
  width: 22rem;
  height: 45rem;
  background: url(./img/sum_ill.png) no-repeat;
  background-size: 100% auto;
}

#sect02bot .sum::before{
left: 0;
}
#sect02bot .sum::after{
left: -8.0rem;
}



/*------------
sect03_PC
------------*/
#sect03{padding: 15rem 0 8rem;}

#sect03::before{content: "";position: absolute;top: 6rem;left: calc(50% + 10rem);width: 61.8rem;height: 70rem;background: url(./img/idx_mvbg.png) 100% 100% no-repeat;opacity: .4;background-size: 95% auto;}



#sect03 .spv{
position: relative;
z-index: 1;
width: 55rem;
padding: 4.5rem 5rem .5rem;
background: #ffffff;
}
#sect03 .spv::before{
content: "";
position: absolute;
z-index: 2;
bottom: -1.5rem;
left: -5rem;
width: 12.7rem;
height: 12.4rem;
border: none;
background: none;
}
#sect03 .spv::after{
content: "";
position: absolute;
top: -5rem;
left: 2.2rem;
width: 1rem;
height: 19rem;
background: url(./img/eng_sps.png) 0 0 no-repeat;
background-size: 1.0rem auto;
}

#sect03 .catch{position: absolute;z-index: 1;top: 6rem;right: 0;font-size:2.4rem;padding: .8rem 1.0rem .8rem;}
#sect03 .catch::before{
content: "";
position: absolute;
z-index: -1;
top: -2rem;
left: -2rem;
width: 6rem;
height: 6rem;
background: #fff600;
border-radius: 50%;
opacity: .5;
}
#sect03 .catch::after {content: "";position: absolute;z-index: -2;top: 0;left: 0;width: 100%;height: 100%;background: #fff;opacity: .8;}

#sect03 .spv .boxTtl{
position: absolute;
top: -5rem;
left: 4.5rem;
font-family: "Zen Kaku Gothic New vt";
letter-spacing: 0.1em;
-ms-writing-mode: tb-rl;
writing-mode: vertical-rl;
font-size:2.4rem;
}
#sect03 .spv .boxTtl .obi{display: inline-block;padding: 1.5rem 0;background: #3bb077;}

#sect03 .spv .txtArea{
padding: 0 0 .5rem;
}
#sect03 .spv .sttl{
padding: 0 0 1.5rem 7.5rem;
font-size:3.2rem;   
}
#sect03 .spv .btn-web{
margin-top: 2.0rem;
}



/* slideArea */

#sect03 .slideArea{
position: absolute;
top: 20rem;
width: 100%;
height: 54.0rem;
overflow: hidden;
opacity: .5;
}
#sect03 .slideArea img{
}
#sect03 .slideArea .slider2{

}

#sect03 .slideArea .slick-slide{
width: 241rem;
height: 54.0rem;
margin-left:10rem!important;
margin-right:10rem!important;
}
#sect03 .slideArea .slick-slide img{
/*width: 100%;*/
}





/*------------
sect04_PC
------------*/
#sect04{
padding: 12rem 0 4rem;
background: #fdf8ed;
}
#sect04::before{
content: "EPISODE";
position: absolute;
top: 8rem;
left: 0;
width: 100%;
text-align: center;
font-family: "M PLUS 1p";
font-weight: 500;
font-size:1.8rem;
color: #3bb077;
}
#sect04 .sectTtlArea{
}
#sect04 .sectTtl{
padding: 0 0 4.5rem;
}
#sect04 .sectTtl::before{
content: "";
position: absolute;
bottom: 0;
left: 0;
width: 100%;
height: 2rem;
background: url(./img/sct04_ttldeco.png) 50% 0 no-repeat;
background-size: auto .2rem;
}

#sect04 .mini{
padding: 0 0 13rem;
}
#sect04 .sttl{
z-index: 1;
margin: 0 42rem -4rem 0;
padding: 2rem 3rem 2.5rem;
background: #fff;
border-radius: 0 3rem 3rem 3rem;
line-height: 1.5;
}
#sect04 .sttl::before{
content: "01";
position: absolute;
top: -5rem;
left: 1rem;
width: 100%;
height: 100%;
color: #3bb077;
line-height: 1;
font-size:7.0rem;
opacity: .5;
}

#sect04 .sttl .fontWrap {
position: relative;
z-index: 1;
}
#sect04 .sttl .ccl{
position: relative;
}
#sect04 .sttl .ccl::before{
content: "";
position: absolute;
z-index: -1;
top: calc(50% - 0);
left: calc(50% - 0);
width: 105%;
height: 110%;
background: url(./img/mark_ccl.svg) 0 0 no-repeat;
background-size: 100% 100%;
opacity: 1.0;
}
#sect04 .sttl .ccl_long::before{
background-image: url(./img/mark_ccl_long.svg);
}

#sect04 .mainTxt{
position: relative;
margin: 0 25rem 11rem 0;
padding: 6rem 17rem 3rem 0;
background: #fbefd7;
}
#sect04 .mainTxt::before{
content: "";
position: absolute;
top: 0;
left: -100vw;
width: 100vw;
height: 100%;
background: #fbefd7;
}
#sect04 .mainTxt .flame{
position: absolute;
top: 6rem;
right: -25rem;
width: 37rem;
}
#sect04 .mainTxt .flame img{
width: 37rem;
height: 26rem;
object-fit: cover;
}

/* mini2 */
#sect04 .mini2 .sttl{
margin: 0 0 -4rem 42rem;
}
#sect04 .mini2 .sttl::before{
content: "02";
}
#sect04 .mini2 .mainTxt{
margin: 0 0 11rem 25rem;
padding: 6rem 0 3rem 17rem;
}
#sect04 .mini2 .mainTxt::before{
left: auto;
right: -100vw;
}
#sect04 .mini2 .mainTxt .flame{
right: auto;
left: -25rem;
}


#sect04 .voiceArea{
position: relative;
}
#sect04 .voiceArea h4{
position: absolute;
  top: 0;
  left: 5.0rem;
  height: auto;
font-family: "Zen Kaku Gothic New vt";
letter-spacing: 0.1em;
-ms-writing-mode: tb-rl;
writing-mode: vertical-rl;
font-size:3.2rem;
color: #fff;
}
#sect04 .mini2 .voiceArea h4{
left: auto;
right: 5rem;
}
#sect04 .voiceArea h4 .obi{
position: relative;
display: inline-block;
margin: 0 4% 0 0;
padding: 1.0rem 0;
background: #3bb077;
}
#sect04 .mini2 .voiceArea h4 .obi{
display: inline-block;
margin: 0 0 0 4%;
}
#sect04 .mini1 .voiceArea h4::before{content: "";position: absolute;bottom: auto;top: 30rem;left: -14rem;width: 20rem;height: 24.4rem;background: url("./img/sct04_ill.png") no-repeat;background-size: contain;}
#sect04 .mini2 .voiceArea h4::before{content: "";position: absolute;bottom: auto;top: 30rem;left: -19rem;width: 35rem;height: 50rem;background: url("./img/sct04_ill02.png") no-repeat;background-size: 90% auto;}

#sect04 .mini2 .voiceArea h4::before{left: auto;right: -25rem;}

#sect04 .voiceArea h4 .ccl{
position: relative;
z-index: 1;
}
#sect04 .voiceArea h4 .ccl::before{
content: "";
position: absolute;
z-index: -1;
top: -5%;
left: 0;
width: 120%;
height: 110%;
background: url(./img/mark_ccl_vt.svg) 0 0 no-repeat;
background-size: 100% 100%;
opacity: .8;
}

#sect04 .voiceArea .ulBox{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin: 0 0 0 32rem;
padding: 5rem 0 0;
}
#sect04 .mini2 .voiceArea .ulBox{
margin: 0 32rem 0 0;
}

#sect04 .voiceArea .liBox{
width: 37rem;
margin: 0 0 3rem;
padding: 0 2rem 3rem 0;
}


#sect04 .voiceArea .liBox a{
position: relative;
padding: 1rem 4.5rem 2rem;
background: #fff;
letter-spacing: .05em;
font-size:1.6rem;
font-weight: 500;
}


#sect04 .voiceArea .liBox a::before{
content: "";
position: absolute;
z-index: 1;
bottom: -3rem;
right: -2rem;
width: 7.7rem;
height: 7.7rem;
background: url(./img/sct04_mail.png) 100% 100% no-repeat;
background-size: 7.7rem auto;
}
#sect04 .voiceArea .liBox::before{
content: "";
position: absolute;
z-index: 1;
top: 2.5rem;
left: 2rem;
width: 2.0rem;
height: 1.4rem;
background: url(./img/sct04_qt1.svg) 100% 100% no-repeat;
background-size: 2.0rem auto;
}
#sect04 .voiceArea .liBox::after{
content: "";
position: absolute;
z-index: 1;
top: 2.5rem;
right: 4rem;
width: 2.0rem;
height: 1.4rem;
background: url(./img/sct04_qt2.svg) 100% 100% no-repeat;
background-size: 2.0rem auto;
}






/* modal */

/*infoエリアをはじめは非表示*/
#sect04 .infoBox{
display: none;
position: relative;
}

.md_style01{

-ms-overflow-style: none; /* IE, Edge 対応 */
scrollbar-width: none;/* Firefox 対応 */
}

.md_style01::-webkit-scrollbar{
display: none;
/* Chrome, Safari 対応 */
}

.md_style01::before{
}



/*モーダルの横幅を変更したい場合*/
.md_style01 .modaal-container{
max-width: 80rem;
background: none;
box-shadow: none;
}


.md_style01.modaal-wrapper .modaal-close {
position: fixed;
right: 0;
top: 0;
cursor: pointer;
opacity: 1;
width: 14rem;
height: 14rem;
background: url(./img/modal_close.png) 0 0 no-repeat;
background-size: 14rem auto;
border-radius: 0;
transition: all .2s ease-in-out;
}
.md_style01 .modaal-close:after, .md_style01 .modaal-close:before {
width: 0;
height: 0;
background: none;
border: none;
}

.md_style01 .modaal-content-container{
padding: 0;
}
.md_style01 .modalInner{
position: relative;
}


/* custom */
/*.md_style01 .slick-list {
overflow: visible;
}
*/

.md_style01 .modaal-container{
position: relative;
margin: 0;
}
.md_style01 .modaal-container .liBox{
position: relative;
padding: 0 2rem 3rem;
}


.md_style01 .modaal-container .inner{
position: relative;
margin: 0 0 0;
padding: 4rem 5rem;
min-height: 0;
background: #fff;
}
.md_style01 .modaal-container .catch{
font-size:2.4rem;
}
.md_style01 .modaal-container .inner::before{
content: "";
position: absolute;
z-index: 1;
top: 4.5rem;
left: 2rem;
width: 2.0rem;
height: 1.4rem;
background: url(./img/sct04_qt1.svg) 100% 100% no-repeat;
background-size: 2.0rem auto;
}
.md_style01 .modaal-container .inner::after{
content: "";
position: absolute;
z-index: 1;
top: 4.5rem;
right: 4rem;
width: 2.0rem;
height: 1.4rem;
background: url(./img/sct04_qt2.svg) 100% 100% no-repeat;
background-size: 2.0rem auto;
}


/* slider */
.slider4bs .slick-arrow:before{
content:""!important;
}
.slider4bs .slick-prev, .slider4bs .slick-next {
z-index:2;
top: calc(50% - 0);
width: 5rem;
height: 5rem;
background: url("./img/modal_prev.png") 0% 0% no-repeat;
background-size: 5rem auto;
transition: all .2s ease-in-out;
}
.slider4bs .slick-next {
background: url("./img/modal_next.png") 100% 0% no-repeat;
background-size: 5rem auto;
}
.slider4bs .slick-prev{
left:-12vw!important;
}
.slider4bs .slick-next{
left:auto;
right:-12vw!important;
}
.slider4bs .slick-slide{
margin-left: 0!important;
margin-right: 0!important;
}

.slider4bs .slick-prev:hover, 
.slider4bs .slick-next:hover{
opacity: .7;
}

/* botArea */
#sect04 .botArea{
position: relative;
padding: 10rem 0 0;
}
#sect04 .botArea::before{
content: "";
position: absolute;
z-index: 1;
top: -7rem;
left: 0;
width: 100%;
height: 15rem;
background: url(./img/eng_sum.png) 50% 0 no-repeat;
background-size: 1.0rem auto;
}
#sect04 .botArea::after{
content: "";
position: absolute;
top: -13.0rem;
left: 0;
width: 100%;
height: 18rem;
background: url("./img/ck_ccl.png") 50%  0 no-repeat;
background-size: 18rem auto;
padding: 6.5rem 0 0 6rem;
}


#sect04 .botArea .catch{
padding: 0 0 3rem;
text-align: center;
line-height: 2.1;
font-size:2.4rem;
}





/*------------
sect05_PC
------------*/
#sect05{
padding: 14rem 0 2rem;
}
#sect05 .areaInner::before{
content: "";
position: absolute;
top: -6.5rem;
left: 0;
width: 33.2rem;
height: 14rem;
background: url(./img/sct05_logo.png) 0 0 no-repeat;
background-size: 33.2rem auto;
}
#sect05 .sectTtlArea{
margin: 0 0 8rem;
}

#sect05 .slider5area{
position: relative;
margin: 0 5vw 2.5rem;
padding: 0 0 2.5rem;
background: url(./img/dotline1.png) 0 100% / auto .2rem repeat-x;
}
#sect05 .slider5area .fuki{
position: absolute;
width: 8rem;
}
#sect05 .slider5area h3{
position: absolute;
padding: 10rem 0 0 2.4rem;
text-align: right;
font-family: "Zen Kaku Gothic New vt";
letter-spacing: 0.1em;
-ms-writing-mode: tb-rl;
writing-mode: vertical-rl;
font-size:2.0rem;
}


#sect05 .slider5s{display: flex;justify-content: center; gap: 3rem;margin: 0 0 0 15rem;}
#sect05 .slider5s .slBox{width: 19vw;background: #eef6fd;padding: 4.0rem 4.0rem 4.0rem;}
#sect05 .slider5s .spec{
text-align: right;
}
#sect05 .slider5s .spec span{
padding: .5rem 1.2rem .6rem;
background: #fff;
border-radius: 9999px;
line-height: 1;
font-weight: 500;
}

#sect05 .btnsWrap{
width: 110rem;
margin: 0 auto;
padding: 2rem 0 0;
}
#sect05 .btns .btn-web a{
background: #2a64af;
color: #fff;
}
#sect05 .btns .btn-web a::before {
background: url(./img/arrow_vc.png) 99% calc(50% - .2rem) no-repeat;
background-size: 2.7rem auto;
}
#sect05 .btns .btn-web a:hover::before{
background-position: 99% calc(50% - .2rem + .5rem);
}





/*------------
sect06_PC
------------*/
#sect06{
padding: 14rem 0 5rem;
}
#sect06 .sectTtlArea{
margin: 0 0 8rem;
}
#sect06 .sectTtlArea::before{content: "";position: absolute;top: -6rem;left: 3rem;width: 20rem;height: 25rem;background: url(./img/sct06_ill01.png) 0 0 no-repeat;background-size: 90% auto;}
#sect06 .sectTtlArea::after{
content: "";
position: absolute;
top: -6rem;
right: 3rem;
width: 20rem;
height: 23rem;
background: url(./img/sct06_ill02.png) 0 0 no-repeat;
background-size: 90% auto;
}
#sect06 .sectTtl .fontS{
display: block;
font-size:2.4rem;
}

#sect06 .ulBox{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}

#sect06 .liBox{
width: 34.2rem;
background: #fbf5e9;
margin: 0 0 5rem;
padding: 3rem 3rem 1.5rem;
}
#sect06 .liBox::before {
content: "";
position: absolute;
top: -1rem;
left: 1rem;
width: 5.7rem;
height: 4.6rem;
background: url(./img/h2_deco.svg) 0 0 no-repeat;
background-size: 5.7rem auto;
}

#sect06 .liBox h3{
padding: 0 0 1.5rem;
background: url(./img/dotline2.png) 0 100% repeat-x;
background-size: auto .2rem;
letter-spacing: 0;
font-size:1.8rem;
}
#sect06 .liBox h3 a{
position: relative;
z-index: 1;
display: flex;
align-items: center;
padding: 0 6rem 0 0;
background: url("./img/ccl_gr.svg") 100% calc(50% - 0px) no-repeat;
background-size: 2.2rem auto;
}
#sect06 .liBox h3 a::before{
content: "";
position: absolute;
top: calc(50% - .5rem);
right: 1.0rem;
width: 3.5rem;
height: .7rem;
background: url(./img/arrow_hz.svg) 0 100% / 3.5rem auto no-repeat;
transition: all .3s ease-in-out;
transform-origin: 0 50%;
}
#sect06 .liBox h3 a::after{
content: "";
position: absolute;
top: calc(50% - .5rem);
right: 5.0rem;
width: .5rem;
height: .7rem;
background: url(./img/arrow_hz_add.svg) 0 100% / .5rem auto no-repeat;
}
#sect06 .liBox h3 a:hover{
opacity: 0.7;
}
#sect06 .liBox h3 a:hover::before{
transform: scaleX(1.2);
}
#sect06 .liBox h3 a:hover::after{
}


#sect06 .liBox .tag{
position: absolute;
right: 2rem;
bottom: -2rem;
display: inline-block;
margin: 0 .3rem 1.1rem 1.0rem;
}
.sect200 .typeB .tag{
margin: 0 1.0rem 1.1rem .3rem;
}
#sect06 .liBox .tag::before{/* content: ""; */position: absolute;top: .3rem;left: .3rem;width: 100%;height: 100%;border: .2rem solid #222;}
#sect06 .liBox .tag span{
position: relative;
display: block;
padding: .3rem 1.0rem .5rem;
background: #222222;
line-height: 1;
text-align: left;
color: #fff;
}
#sect06 .liBox .tag span::before{
content: "#";
}

.mainWrap p, .index p.fontBold{
	font-size: 1.8rem;
	color: #3bb077;
	background: #ffffff;
	border-radius: 1rem;
	padding: 1rem;
}






@media screen and (max-width: 480px) {



/*------------
index_SP
------------*/

.areaInner {
    width: auto;
}

body {
background: none;
min-width:32rem;
}






/*--------------------------------------
　header_SP
---------------------------------------*/
#header{
position: relative;
z-index: 14;
overflow: hidden;
}
#header::before{
}
#header::after{
}

#header .inner{
}

#header .logo {
width: 11rem;
}

#header .topArea2{
}

#header .siteName h1{
display: inline-block;
letter-spacing: 0;
font-weight: 500;
}




/* mvArea */
.mvArea{
	height: calc(100vh - 3rem);
        min-height: 0;
	/* position: relative;height: calc(100vh - 8rem);margin: 0 0 5rem;background: url("./img/idx_mvbg.png") 0 90% no-repeat;background-size: 30rem auto;min-height: 0;z-index: 11;*/}
.mvArea::before{content: "";position: absolute;bottom: 18rem;right: 4rem;width: 1rem;height: 14rem;background: url("./img/eng_scr.png") 0 0 no-repeat;background-size: 1.0rem auto;z-index: 100;}

.mvArea .visual-container {
    position: absolute; /* 浮かせ合わせて配置 */
    z-index: 0;
    bottom: 7.5rem; /* 画面の下から10%の位置（topでも可） */
    right: -5rem;
    width: 100%; /* 画面横幅に対する画像の大きさ */
    max-width: 400px; /* 大きくなりすぎないように制限 */
  }

  /* 3. 画像自体の設定（崩れ防止） */
  .mvArea .visual-container .main-img-box img {
    width: 90%; /* コンテナの幅いっぱいに広げる */
    height: auto; /* 縦横比を保つ */
    display: block;
  }


/* txtArea */
.mvArea .txtArea{position: relative;z-index: 1;height: calc(70vh - 8rem - 2.5rem);margin: 3rem 0 0;}

.mvArea .txtArea h2{
position: relative;
    top: 0;
    right: auto;
    height: auto;
    -ms-writing-mode: horizontal-tb;
    writing-mode: horizontal-tb;
    font-size: 2.4rem;
    text-align: left;
    margin-left: 1rem;
    margin-bottom: 2rem;
}
.mvArea .txtArea h2 .obi{display: inline-block;margin: 0 0 0.5rem 0;padding: 0.2rem 0.7rem;background: #3bb077;font-family: "Zen Kaku Gothic New", sans-serif;}

.mvArea .txtArea h3{
  position: relative;
  bottom: 0.3rem;
  left: 0;
  height: auto;
  -ms-writing-mode: horizontal-tb;
  writing-mode: horizontal-tb;
  font-size: 1.9rem;
  text-align: left;
  margin-top: 0rem;
  margin-left: 1rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
}
.mvArea .txtArea h3 .obi{display: inline-block;margin: 0 15% 0 0;padding: 0.2rem 0.5rem;background: #fff;font-family: "Zen Kaku Gothic New", sans-serif;margin-bottom: 0.5rem;}



/* slideArea */

.mvArea .slideArea{
position: absolute;
top: 8rem;
width: 100%;
height: 34rem;
overflow: hidden;
}
.mvArea .slideArea img{
}
.mvArea .slideArea .slider1{

}

.mvArea .slideArea .slick-slide{width: 136rem;height: 34rem;margin-left:5rem!important;margin-right:5rem!important;}
.mvArea .slideArea .slick-slide img{
/*width: 100%;*/
}



/* headNote */
.mvArea .headNote{position: static;bottom: 5.5rem;left: 0;padding: 0 0 0 5%;font-size:1.1rem;line-height: 1.7;}



/*------------
contents_SP
------------*/

#contents{
margin: 0;
}
#contents::before{
}

.index{
width: 100%;
padding: 0 0 0;
}


/*------------
indexSect_SP
------------*/
.indexSect{
position: relative;
}
.indexSect::before{
}
.indexSect .areaInner{
}
.indexSect .sectTtlArea{
position: relative;
margin: 0 0 2.5rem;
text-align: center;
}
.indexSect .sectTtl{
line-height: 1.6;
font-size:2.4rem;
}

.indexSect .sectTtl a .arr{position: relative;display: inline-block;padding: 4px 6.0rem 5px;background: url("./img/ccl_gr.svg") 100% calc(50% + .1rem) no-repeat;background-size: 2.5rem auto;}
.indexSect .sectTtl a .arr::before{
content: "";
position: absolute;
top: calc(50% - .5rem);
right: 1.0rem;
width: 4.0rem;
height: .8rem;
background: url(./img/arrow_hz_long.svg) 0 100% / 4.0rem auto no-repeat;
transition: all .3s ease-in-out;
transform-origin: 0 50%;
}
.indexSect .sectTtl a .arr::after{
content: "";
position: absolute;
top: calc(50% - .5rem);
right: 5.3rem;
width: .5rem;
height: .8rem;
background: url(./img/arrow_hz_add.svg) 0 100% / .5rem auto no-repeat;
}
.indexSect .sectTtl a:hover{
opacity: 1;
}
.indexSect .sectTtl a:hover .arr::before{
transform: scaleX(1.0);
}



.indexSect .sectTtl .ccl{
position: relative;
}
.indexSect .sectTtl .ccl::before{
content: "";
position: absolute;
z-index: -1;
top: -30%;
left: calc(50% - 0);
width: 105%;
height: 150%;
background: url(./img/mark_ccl.svg) 50% 50% no-repeat;
background-size: 100% 100%;
opacity: 1.0;
}
.indexSect .sectTtl .ccl_long::before{
background-image: url(./img/mark_ccl_long.svg);
}

.indexSect .sectTtl a:hover{
opacity: 0.7;
}



/*------------
sect01_SP
------------*/
#sect01{
position: relative;
padding: 0 5% 7rem;
}
#sect01::before{
}
#sect01 .sectTtlArea{
min-height: 0;
margin: 0 0 7.5rem;
text-align: left;
}
#sect01 .sectTtl{
padding: 4rem 0 2rem .5rem;
line-height: 1.4;
}
#sect01 .sectTtl::before{
content: "";
position: absolute;
top: 1.8rem;
left: -1.5rem;
width: 4.7rem;
height: 4rem;
background: url("./img/h2_deco.svg") 0 0 no-repeat;
background-size: 4.7rem auto;
}
#sect01 .sectTtlArea .flame{
position: static;
width: 90%;
margin: 0 auto;
}
#sect01 .sectTtlArea p{
font-size:1.6rem;
}
#sect01 .sectTtlArea p .fontL{
font-size:1.9rem;
font-weight: 500;
}
#sect01 .sectTtlArea p .ccl{
position: relative;
}
#sect01 .sectTtlArea p .ccl::before{
content: "";
position: absolute;
z-index: -1;
top: calc(50% - 2rem);
left: calc(50% - 7.5rem);
width: 15.0rem;
height: 4.3rem;
background: url(./img/mark_ccl.svg) 0 0 no-repeat;
background-size: 15.0rem 4.3rem;
opacity: 1.0;
}



#sect01 .spv{position: relative;margin: 0 0;padding: 2.5rem 0 1.0rem;background: #ffffff;}
#sect01 .spv::before{
content: "";
position: absolute;
z-index: -1;
top: 1rem;
left: 1rem;
width: 100%;
height: 100%;
border: .1rem solid ##00d084;
}
#sect01 .spv::after{
width: 0;
height: 0;
background: none;
border: none;
}


#sect01 .spv .boxTtl{
position: absolute;
top: -4rem;
left: 1rem;
font-family: "Zen Kaku Gothic New vt";
letter-spacing: 0.1em;
-ms-writing-mode: tb-rl;
writing-mode: vertical-rl;
font-size:1.6rem;
}
#sect01 .spv .boxTtl .obi{display: inline-block;padding: 1.0rem 0;background: #3bb077;}

#sect01 .spv .flame{
position: static;
display: flex;
align-items: center;
width: auto;
height: 8.6rem;
padding: 4rem 5rem;
background: #fff;
}


#sect01 .spv .txtArea{padding: 0 0% 0;}
#sect01 .spv .sttl{
padding: 0 0 1.5rem 15%;
border-bottom: none;
}


/*------------
sect02_SP
------------*/
#sect02{
padding: 7rem 5% 5rem;
background: #e8f7f0;
}
#sect02::before{
content: "INTERVIEW";
position: absolute;
top: 5rem;
left: 0;
width: 100%;
text-align: center;
font-family: "M PLUS 1p";
font-weight: 500;
font-size:1.2rem;
color: #3bb077;
}
#sect02 .sectTtlArea{
}
#sect02 .sectTtl{
margin: 0 0 2.0rem;
}
#sect02 .sectTtl .obi{
display: inline-block;
margin: 0 .5rem;
padding: .6rem .8rem .8rem;
background: #fff;
line-height: 1;
}
#sect02 .sectTtlArea h3{
display: inline;
border-bottom: .2rem solid #3bb077;
font-size:1.5rem;
}





#sect02 .nvArea .ulBox{
display: block;
padding: 5rem 0 0;
}
#sect02 .nvArea .liBox{
width: auto;
margin: 0 0 5rem;
padding: 16rem 0 0;
background: #fff;
}
#sect02 .nvArea .liBox::before{
content: "";
position: absolute;
bottom: -2.7rem;
right: 1rem;
width: 1.7rem ;
height: 13.5rem;
background: url("./img/eng_ck_sp.png") 0 100% no-repeat;
background-size: 1.7rem auto;
}


#sect02 .nvArea .liBox .flame{
position: absolute;
top: 0;
height: 16rem;
overflow: hidden;
}
#sect02 .nvArea .liBox .flame img{
width: 100%;
object-fit: cover;
}

#sect02 .nvArea .liBox .catch{
position: absolute;
z-index: 1;
top: -1.5rem;
font-size:1.7rem;
}
#sect02 .nvArea .liBox .catch .obi{
display: inline-block;
padding: .5rem 1rem .6rem;
background: #3bb077;
line-height: 1;
color: #fff;
}

#sect02 .nvArea .liBox .sttl{
position: absolute;
top: 6rem;
left: 2rem;
width: 15.6rem;
height: 8.5rem;
padding: .8rem 2rem;
background: url(./img/sct02_nail_deco.png) 0 0 no-repeat;
background-size: 15.6rem auto;
font-size:2.0rem;
}
#sect02 .nvArea .sttl .fontWrap{
display: block;
transform: rotate(-5deg);
}
#sect02 .nvArea .sttl .fontWrap span{
position: relative;
display: inline-block;
}
#sect02 .nvArea .sttl .fontWrap span::before{
content: "";
position: absolute;
bottom: .2rem;
left: 0;
width: 100%;
height: .2rem;
background: #fff600;
}


#sect02 .nvArea .liBox .spec{position: absolute;top: 15rem;right: 1rem;padding: .5rem 1.2rem .6rem;background: #fff;border-radius: 9999px;line-height: 1;font-size:1.3rem;font-weight: 500;}

#sect02 .nvArea .liBox .tags{
margin: 0 0 .8rem;
padding: 2.0rem 10% 2rem 5%;
text-align: left;
}
#sect02 .nvArea .liBox .tag{
position: relative;
display: inline-block;
min-width: 10.8rem;
margin: 0 1.0rem 1.1rem 0;
}
#sect02 .nvArea .liBox .tag::before{/* content: ""; */position: absolute;top: .3rem;left: .3rem;width: 100%;height: 100%;border: .2rem solid #222;}
#sect02 .nvArea .liBox .tag span{
position: relative;
display: block;
padding: .3rem 1.0rem .5rem;
background: #222222;
line-height: 1;
text-align: left;
color: #fff;
}
#sect02 .nvArea .liBox .tag span::before{
content: "#";
}





/*------------
sect200_SP
------------*/
.sect200{
padding: 0 5% 7.5rem;
background: #e8f7f0;
}
#sect203{
padding: 0 5% 7.5rem;
}
.sect200.tw02::before{content: "";position: absolute;z-index: 1;top: 0.1rem;left: auto;right: -3rem;width: 15rem;height: 17rem;background: url(./img/sum_ill.png) 0 0 no-repeat;background-size: 80% auto;}
.sect200 .areaInner{
padding: 0 0 0;
background: #fff;
}
.sect200 .areaInner::before{
width: 0;
height: 0;
background: none;
border: none;
}
.sect200 .areaInner::after{
width: 0;
height: 0;
background: none;
border: none;
}


.sect200 .obiWrap{
position: relative;
top: -1.8rem;
left: 3%;
padding: 0 7.5rem 2rem 0;
font-family: "Zen Kaku Gothic New";
letter-spacing: 0.1em;
line-height: 1.9;
-ms-writing-mode: tb-lr;
writing-mode: horizontal-tb;
font-size:2.0rem;
color: #fff;
}
.sect200 .obiWrap .obi{
display: inline;
padding: .15rem 0;
margin: 0 0 0 0;
background: #3bb077;
line-height: 1;
}


.sect200 .qa{
position: relative;
padding: 0 5% 3.5rem;
min-height: 0;
}
.sect200 .typeB{
padding: 0 5% 3.5rem;
}

.sect200 .qa .sttl{
margin: 0 0 0 0;
}

.sect200 .qa .fontWrap{
position: relative;
z-index: 1;
}
.sect200 .qa .ccl{
position: relative;
}
.sect200 .qa .ccl::before{
content: "";
position: absolute;
z-index: -1;
top: calc(50% - 0);
left: calc(50% - 0);
width: 105%;
height: 110%;
background: url(./img/mark_ccl.svg) 0 0 no-repeat;
background-size: 100% 100%;
opacity: 1.0;
}
.sect200 .qa .ccl_long::before{
background-image: url(./img/mark_ccl_long.svg);
}



.sect200 .qa .imgArea{
position: static;
width: auto;
text-align: center;
}
.sect200 .typeB .imgArea{
text-align: center;
}

.sect200 .qa .imgArea .flame{
height: 18rem;
}
.sect200 .qa .imgArea .flame img{
height: 18rem;
object-fit: cover;
}
.sect200 .qa .spec{
padding: .7rem 0 1rem;
font-weight: 500;
}

.sect200 .qa .tags{
}
.sect200 .qa .tag{
position: relative;
display: inline-block;
min-width: 10.8rem;
margin: 0 .3rem 1.1rem 1.0rem;
}
.sect200 .typeB .tag{
margin: 0 1.0rem 1.1rem .3rem;
}
.sect200 .qa .tag::before{/* content: ""; */position: absolute;top: .3rem;left: .3rem;width: 100%;height: 100%;border: .2rem solid #222;}
.sect200 .qa .tag span{
position: relative;
display: block;
padding: .3rem 1.0rem .5rem;
background: #222222;
line-height: 1;
text-align: left;
color: #fff;
}
.sect200 .qa .tag span::before{
content: "#";
}
.sect200 .btn-link{
position: static;
margin: 0 0 0;
} 
.sect200 .linkR{
position: static;
margin: 0 0 0;
} 



/* qa2col */
.sect200 .qa2col{
display: block;
}
.sect200 .qa2col .qa{
width: auto;
padding: 0 5% 2.5rem;
min-height: 0;
}
.sect200 .qa2col .qa .sttl{
display: block;
margin: 0 0 0 0;
}
.sect200 .qa2col .qa .catch{
display: block;
}




/* tab */
.tabArea{
padding: 0 5% 4.5rem;
}
.tabArea .ttlArea{
padding: 0 0 1.5rem;
}
.tabArea h3{
text-align: center;
line-height: 1.9;
font-size:1.7rem;
color: #fff;
}
.tabArea h3 .obi{
display: inline;
padding: .15rem 0;
background: #3bb077;
line-height: 1;
}
.tabArea .ttlArea p{
text-align: left;
}

.tabArea .tab{
display: flex;
align-items: center;
justify-content: space-between;
padding: 0 0;
border-bottom: .2rem solid rgba(34,34,34,.5);
}
.tabArea .tab-botom{
border-bottom:none;
border-top: .2rem solid rgba(34,34,34,.5);
}

.tabArea .tablist{
position: relative;
width: 8.5rem;
padding: 0 0 .6rem;
text-align: center;
font-size:1.2rem;
font-weight: 500;
cursor: pointer;
opacity: .5;
}
.tabArea .tab-botom .tablist{
padding: .6rem 0 0;
}
.tabArea .tablist:hover{
opacity: .5;
}


.tabArea .tablist.active{
font-size:1.5rem;
opacity: 1;
}
.tabArea .tablist.active::before{
content: "";
position: absolute;
bottom: -0.3rem;
left: 0;
width: 100%;
height: .4rem;
background: #3bb077;
}
.tabArea .tablist.active::after{
content: "";
position: absolute;
bottom: -1.5rem;
left: 0;
width: 100%;
height: .9rem;
background: url(./img/tri1.svg) 50% 0 no-repeat;
background-size: 1.8rem auto;
}

.tabArea .tab-botom .tablist.active::before{
top: -0.3rem;
bottom: auto;
}
.tabArea .tab-botom .tablist.active::after{
top: -1.5rem;
bottom: auto;
transform: scale(1, -1);
}


/* tabcontents */
.tabArea .tabcontents{
padding: 2rem 5%;
background: #f8f8f8;
}

.tabArea .tabcontents .tabcontents-list{
display: block;
}
.tabArea .tabcontents .liBox{
display: block;
margin: 0 0 0 2.5rem;
padding: 2.5rem 0 1.0rem 0;
background: url("./img/dotline2.png") 0 100% repeat-x;
background-size: auto .2rem;
}

.tabArea .tabcontents .liBox::after{
content: "";
position: absolute;
top: 3.2rem;
left: -2.5rem;
width: 1.3rem;
height: 1.3rem;
background: #3bb077;
border-radius: 50%;
}
.tabArea .tabcontents .liBox::before{
content: "";
position: absolute;
top: 3.2rem;
left: -2.0rem;
width: .2rem;
height: calc(100% - 0rem);
background: #3bb077;
}

.tabArea .tabcontents .liBox .sttl{
margin: 0 0 .8rem;
padding: 0 0 0;
width: auto;
font-size:1.8rem;
}
.tabArea .tabcontents .liBox .mainArea{
width: auto;
}
.tabArea .tabcontents .liBox .catch{
margin: 0 0 1.5rem;
font-size:1.6rem;
line-height: 1.9;
}
.tabArea .tabcontents .liBox p{
margin-top: -1rem;
}

.tabArea .tabcontents .liBox .obi{
display: inline;
padding: .15rem 0;
background: #fff;
line-height: 1;
}
.tabArea .tabcontents .ulBox::before{
width: 0;
height: 0;
background: none;
border: none;
}


/* col2 */
.tabArea .col2 .liBox{
margin: 0 0 0 2.5rem;
padding: 2.5rem 0 1.0rem 0;
}
.tabArea .col2 .liBox::after{
left: -2.5rem;
}
.tabArea .col2 .liBox::before{
left: -2.0rem;
}
.tabArea .col2 .liBox .sttl{
width: auto;
}
.tabArea .col2 .liBox .mainArea{
width: auto;
}


/* last-ch */
.tabArea .col2 .ulBox:first-child .liBox:last-child::before{
height: calc(100% - 0rem);
}
.tabArea .ulBox:last-child .liBox:last-child{
background: none;
}
.tabArea .ulBox:last-child .liBox:last-child::before{
background: none;
}


/* tab2 */
.tabArea .tab2 .ulBox:first-child::before{top: 22rem;right: -5rem;background-size: 75% auto;}
.tabArea .tab2 .ulBox:last-child::before{
top: -6rem;
right: -2rem;
}

/* tab3 */
.tabArea .tab3 .ulBox:first-child::before{top: 32rem;right: -3rem;transform: scaleX(-1);}
.tabArea .tab3 .ulBox:last-child::before{top: 20rem;right: -3rem;}










/*------------
sect02mid_SP
------------*/
#sect02mid{
padding: 7rem 0 8rem;
background: #e8f7f0;
}
#sect02mid::before{
content: "";
position: absolute;
top: -3.5rem;
left: calc(50% - 0.5rem);
width: .8rem;
height: 14rem;
background: url(./img/eng_pick_sp.png) 0 0 no-repeat;
background-size: .8rem auto;
}
#sect02mid .sectTtlArea {
margin: 0 0 1rem;
}
#sect02mid .sectTtl{
font-size:2.0rem;
}

#sect02mid .note{
position: absolute;
width: 100%;
top: 1rem;
text-align: center;
font-size:1.3rem;
color: #999;
}


/* swiper */
#sect02mid .slideArea{
position: relative;
padding: 0 0 2rem;
}
#sect02mid .swiper-wrapper{
padding: 0 0 0;
}
#sect02mid .swiper-slide{
padding: 5rem 0 0;
width: 38rem;
}
#sect02mid .swiper-slide .inner{
position: relative;
padding: 2.2rem 5% 2.0rem;
background: #fff;
border: .2rem solid #c2c2c2;
border-right: .2rem solid #c2c2c2;
}

#sect02mid .swiper-slide .engNum{
position: absolute;
z-index: 1;
top: 0;
left: .8rem;
line-height: 1;
font-size:7.0rem;
font-weight: 500;
color: #3bb077;
opacity: .5;
}
#sect02mid .swiper-slide .catch{
margin: -1.6rem 0 .5rem;
font-size:1.7rem;
color: #fff;
}
#sect02mid .swiper-slide .catch .obi{
display: inline-block;
padding: .6rem .8rem .8rem;
background: #3bb077;
line-height: 1;
}
#sect02mid .swiper-slide .flame{
width: 100%;
height: 14rem;
}
#sect02mid .swiper-slide .flame img{
width: 100%;
height: 14rem;
object-fit: cover;
}

#sect02mid .swiper-slide .mainTxt{
}
#sect02mid .swiper-slide .mainTxt p{
line-height: 1.8;
}
#sect02mid .swiper-slide .subTxt{
padding: 1rem 5% .8rem;
background: #fbf5e9;
}
#sect02mid .swiper-slide .subTxt .sttl{
margin: 0 0 .6rem;
padding: 0 0 0 2rem;
font-size:1.6rem;
color: #3bb077;
}
#sect02mid .swiper-slide .subTxt .sttl::before{
content: "";
position: absolute;
top: .8rem;
left: 0;
width: .9rem;
height: .9rem;
background: #3bb077;
border-radius: 50%;
}
#sect02mid .swiper-slide .subTxt p{
margin: 0 0 .5rem;
line-height: 1.7;
}

/* arrow swiper */
#sect02mid .swp-next, 
#sect02mid .swp-prev{
bottom: 1.8rem;
width: 6.5rem;
height: 2.2rem;
position: absolute;
z-index: 0;
cursor: pointer;
opacity: 1.0;
}
#sect02mid .swp-prev{
background: url("./img/arrow_nb_rv.svg") 0 50% no-repeat;
background-size: 6.5rem auto;
left: 2%;
}
#sect02mid .swp-next{
background: url("./img/arrow_nb.svg") 100% 50% no-repeat;
background-size: 6.5rem auto;
left: auto;
right: 2%;
}

#sect02mid .swp-prev::before{
content: "BACK";
position: absolute;
top: -2.5rem;
left: 0;
line-height: 1;
font-size:1.3rem;
font-family: "M PLUS 1p";
font-weight: 500;
letter-spacing: 0.1em;
}
#sect02mid .swp-next::before{
content: "NEXT";
position: absolute;
top: -2.5rem;
right: 0;
line-height: 1;
font-size:1.3rem;
font-family: "M PLUS 1p";
font-weight: 500;
letter-spacing: 0.1em;
}

#sect02mid .swp-next:hover, 
#sect02mid .swp-prev:hover{
opacity: 1.0;
}





/* arrow swiper-pagination */
#sect02mid .swiper-pagination {
padding: 4rem 0 0;
text-align:center;
}
#sect02mid .swiper-pagination-bullet{
display: inline-block;
width: 1.8rem!important;
height: .2rem!important;
margin: 0 .20rem!important;
background: #222222;
cursor: pointer;
opacity: .3;
}
#sect02mid .swiper-pagination-bullet-active{
opacity: 1;
}







/*------------
sect02bot_SP
------------*/
#sect02bot{
padding: 4rem 5%;
}
#sect02bot::before{
content: "";
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 80%;
background: #e8f7f0;
}
#sect02bot .outer{
position: relative;
}
#sect02bot .outer::before{
width: 0;
height: 0;
background: none;
border: none;
}
#sect02bot .outer::after{
width: 0;
height: 0;
background: none;
border: none;
}

#sect02bot .sum {
margin: 0 0 5rem;
padding: 3.5rem 5% 3.5rem;
}
#sect02bot .sum .txtArea::before{bottom: -11rem;right: -2rem;width: 10rem;height: 12rem;background: url(./img/sum_ill.png) 0 100% no-repeat;background-size: 100% auto;}

#sect02bot .sum::before{
left: 1.5rem;
}
#sect02bot .sum::after{
left: -3.0rem;
}



/*------------
sect03_SP
------------*/
#sect03{
padding: 0 0 6rem;
}

#sect03::before{
content: "";
position: absolute;
top: -2rem;
left: auto;
right: -5rem;
width: 32rem;
height: 20rem;
background: url(./img/idx_mvbg.png) 100% 0 no-repeat;
background-size: 32rem auto;
opacity: .4;
}



#sect03 .spv{position: relative;z-index: 1;width: auto;margin: 0 5%;padding: 3.0rem 5% .5rem;background: #ffffff;}
#sect03 .spv::before{/* content: ""; *//* position: absolute; *//* z-index: 2; *//* bottom: .5rem; *//* left: 0; *//* width: 6.4rem; *//* height: 7rem; *//* background: url(./img/sct03_ill.png) 0 0 no-repeat; *//* background-size: 6.4rem auto; */}
#sect03 .spv::after{
width: 0;
height: 0;
background: none;
border: none;
}


#sect03 .catch{
position: relative;
z-index: 1;
top:0;
right: auto;
left: 0;
margin: 0 6% 13rem;
font-size:1.8rem;
}
#sect03 .catch::before{
content: "";
position: absolute;
z-index: -1;
top: -1.2rem;
left: -1.5rem;
width: 4rem;
height: 4rem;
background: #fff600;
border-radius: 50%;
opacity: .5;
}
#sect03 .catch::after{content: "";position: absolute;z-index: -2;top: 0;left: 0;width: 32rem;height: 100%;background: #fff;opacity: .8;}

#sect03 .spv .boxTtl{
position: absolute;
top: -4rem;
left: 1rem;
font-family: "Zen Kaku Gothic New vt";
letter-spacing: 0.1em;
-ms-writing-mode: tb-rl;
writing-mode: vertical-rl;
font-size:1.6rem;
}
#sect03 .spv .boxTtl .obi{display: inline-block;padding: 1.0rem 0;background: #3bb077;}

#sect03 .spv .txtArea{
padding: 0 0 .5rem;
}
#sect03 .spv .sttl{
padding: 0 0 1.5rem 15%;
font-size:2.0rem;   
}
#sect03 .spv .btn-web{
width: 95%;
margin-top: 1.5rem;
}



/* slideArea */

#sect03 .slideArea{
position: absolute;
top: 3rem;
width: 100%;
height: 30rem;
overflow: hidden;
opacity: .5;
}
#sect03 .slideArea img{
}
#sect03 .slideArea .slider2{

}

#sect03 .slideArea .slick-slide{
width: 126rem;
height: 30rem;
margin-left:10rem!important;
margin-right:10rem!important;
}
#sect03 .slideArea .slick-slide img{
/*width: 100%;*/
}





/*------------
sect04_SP
------------*/
#sect04{
padding: 7rem 5% 5rem;
background: #fdf8ed;
}
#sect04::before{
content: "EPISODE";
position: absolute;
top: 5rem;
left: 0;
width: 100%;
text-align: center;
font-family: "M PLUS 1p";
font-weight: 500;
        font-size: 1.2rem;
color: #3bb077;
}
#sect04 .sectTtlArea{
}
#sect04 .sectTtl{
padding: 0 0 3.5rem;
}
#sect04 .sectTtl::before{
content: "";
position: absolute;
bottom: 0;
left: 0;
width: 100%;
height: 2rem;
background: url(./img/sct04_ttldeco_sp.png) 50% 0 no-repeat;
background-size: auto .2rem;
}

#sect04 .mini{
padding: 0 0 3.5rem;
}
#sect04 .sttl{
z-index: 1;
margin: 0 5% -4rem 0;
padding: 1.8rem 5% 2.5rem;
background: #fff;
border-radius: 0 2rem 2rem 2rem;
line-height: 1.5;
}
#sect04 .sttl::before{
content: "01";
position: absolute;
top: -3rem;
left: 1rem;
width: 100%;
height: 100%;
color: #3bb077;
line-height: 1;
font-size:4.0rem;
opacity: .5;
}

#sect04 .sttl .fontWrap {
position: relative;
z-index: 1;
}
#sect04 .sttl .ccl{
position: relative;
}
#sect04 .sttl .ccl::before{
content: "";
position: absolute;
z-index: -1;
top: calc(50% - 0);
left: calc(50% - 0);
width: 105%;
height: 110%;
background: url(./img/mark_ccl.svg) 0 0 no-repeat;
background-size: 100% 100%;
opacity: 1.0;
}
#sect04 .sttl .ccl_long::before{
background-image: url(./img/mark_ccl_long.svg);
}

#sect04 .mainTxt{
position: relative;
margin: 0 0 6.5rem 0;
padding: 6rem 5% 1.5rem 0;
background: #fbefd7;
}
#sect04 .mainTxt::before{
content: "";
position: absolute;
top: 0;
left: -100vw;
width: 100vw;
height: 100%;
background: #fbefd7;
}
#sect04 .mainTxt .flame{
position: static;
width: 100%;
}
#sect04 .mainTxt .flame img{
width: 100%;
height: 18rem;
object-fit: cover;
}
#sect04 .mini .voiceArea h4::before{bottom: auto;top: 3.5rem;left: auto;right: 17rem;background-size:60%;}

/* mini2 */
#sect04 .mini2 .sttl{
margin: 0 0 -4rem 5%;
}
#sect04 .mini2 .sttl::before{
content: "02";
}
#sect04 .mini2 .mainTxt{
margin: 0 0 6.5rem;
padding: 6rem 0 1.5rem 5%;
}
#sect04 .mini2 .mainTxt::before{
left: auto;
right: -100vw;
}
#sect04 .mini2 .mainTxt .flame{
right: auto;
left: 0;
}


#sect04 .voiceArea{
position: relative;
}
#sect04 .voiceArea h4{
position: relative;
top: 0;
left: 0;
height: auto;
font-family: "Zen Kaku Gothic New";
letter-spacing: 0.1em;
-ms-writing-mode: tb-lr;
writing-mode: horizontal-tb;
font-size:2.0rem;
color: #fff;
padding: 0 5rem 0 0;
line-height: 2.0;
display: block;
width: fit-content;
margin-left: auto;
margin-right: 0;
text-align: right;
padding: 0 1rem 0 1rem;
}
#sect04 .mini2 .voiceArea h4{
left: 0;
right: 0;
}
#sect04 .voiceArea h4 .obi{
position: relative;
display: inline;
margin: 0 0 0 0;
padding: .2rem 0;
background: #3bb077;
}
#sect04 .mini2 .voiceArea h4 .obi{
display: inline;
margin: 0 0 0 0;
}
#sect04 .voiceArea h4::before{
content: "";
position: absolute;
bottom: auto;
top: -4rem;
left: auto;
right: -2rem;
width: 9.5rem;
height: 10rem;
background: url("./img/sct04_ill.png") 0 0 no-repeat;
background-size: 9.5rem auto;
}
#sect04 .mini2 .voiceArea h4::before{bottom: auto;top: -1rem;left: auto;right: 0rem;background-size: 50%;}

#sect04 .voiceArea h4 .ccl{
position: relative;
}
#sect04 .voiceArea h4 .ccl::before{
content: "";
position: absolute;
top: 3%;
left: calc(50% - 0);
width: 105%;
height: 110%;
background: url(./img/mark_ccl.svg) 0 10% no-repeat;
background-size: 100% 100%;
opacity: .8;
}

#sect04 .voiceArea .ulBox{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin: 0 0 0 1%;
padding: 4rem 0 0;
}
#sect04 .mini2 .voiceArea .ulBox{
margin: 0 0 0 1%;
}

#sect04 .voiceArea .liBox{
width: 48%;
margin: 0 0 1.5rem;
padding: 0 1rem 2.5rem 0;
}
#sect04 .voiceArea .liBox a::before{
content: "";
position: absolute;
z-index: 1;
bottom: -1.5rem;
right: -1rem;
width: 4.6rem;
height: 4.6rem;
background: url(./img/sct04_mail.png) 100% 100% no-repeat;
background-size: 4.6rem auto;
}

#sect04 .voiceArea .liBox a{
position: relative;
padding: .5rem 12% 1.5rem;
background: #fff;
letter-spacing: 0;
font-size:1.5rem;
font-weight: 500;
}
#sect04 .voiceArea .liBox::before{
content: "";
position: absolute;
top: 1.5rem;
left: 3%;
width: 1.2rem;
height: 1.0rem;
background: url(./img/sct04_qt1.svg) 100% 0 no-repeat;
background-size: 1.2rem auto;
}
#sect04 .voiceArea .liBox::after{
content: "";
position: absolute;
top: 1.5rem;
right: calc(3% + 1rem);
width: 1.2rem;
height: 1.0rem;
background: url(./img/sct04_qt2.svg) 100% 0 no-repeat;
background-size: 1.2rem auto;
}
#sect04 .voiceArea .liBox p{
line-height: 1.7;
}




/* modal */

/*infoエリアをはじめは非表示*/
#sect04 .infoBox{
display: none;
position: relative;
}

.md_style01{

-ms-overflow-style: none; /* IE, Edge 対応 */
scrollbar-width: none;/* Firefox 対応 */
}

.md_style01::-webkit-scrollbar{
display: none;
/* Chrome, Safari 対応 */
}

.md_style01::before{
}



/*モーダルの横幅を変更したい場合*/
.md_style01 .modaal-container{
max-width: 98vw;
background: none;
box-shadow: none;
}


.md_style01.modaal-wrapper .modaal-close {
position: fixed;
right: 0;
top: 0;
cursor: pointer;
opacity: 1;
width: 7rem;
height: 7rem;
background: url(./img/modal_close.png) 0 0 no-repeat;
background-size: 7rem auto;
border-radius: 0;
transition: all .2s ease-in-out;
}
.md_style01 .modaal-close:after, .md_style01 .modaal-close:before {
width: 0;
height: 0;
background: none;
border: none;
}

.md_style01 .modaal-content-container{
padding: 0;
}
.md_style01 .modalInner{
position: relative;
}


/* custom */
/*.md_style01 .slick-list {
overflow: visible;
}
*/

.md_style01 .modaal-container{
position: relative;
margin: 0;
}
.md_style01 .modaal-container .liBox{
position: relative;
padding: 0 2rem 3rem;
}


.md_style01 .modaal-container .inner{
position: relative;
width: auto;
max-width:100%;
margin:0 3rem 0 0;
padding: 3rem 7%;
min-height: 0;
background: #fff;
box-sizing: border-box;
word-wrap: break-word;
}
.md_style01 .modaal-container .catch{
font-size:1.8rem;
}
	
.md_style01 .modaal-container .inner::before{
content: "";
position: absolute;
top: 1.5rem;
left: 3%;
width: 1.2rem;
height: 1.0rem;
background: url(./img/sct04_qt1.svg) 100% 100% no-repeat;
background-size: 1.2rem auto;
}
.md_style01 .modaal-container .inner::after{
content: "";
position: absolute;
top: 1.5rem;
right: 3%;
width: 1.2rem;
height: 1.0rem;
background: url(./img/sct04_qt2.svg) 100% 100% no-repeat;
background-size: 1.2rem auto;
}


/* slider */
.slider4bs .slick-arrow:before{
content:""!important;
}
.slider4bs .slick-prev, .slider4bs .slick-next {
z-index:2;
top: auto;
bottom: -4rem;
width: 4rem;
height: 4rem;
background: url("./img/modal_prev.png") 0% 0% no-repeat;
background-size: 4rem auto;
}
.slider4bs .slick-next {
background: url("./img/modal_next.png") 100% 0% no-repeat;
background-size: 4rem auto;
}
.slider4bs .slick-prev{
left:-1rem!important;
}
.slider4bs .slick-next{
left:auto;
right:3rem!important;
}
.slider4bs .slick-slide{
margin-left: 0!important;
margin-right: 0!important;
}

.slider4bs .slick-prev:hover, 
.slider4bs .slick-next:hover{
opacity: 1.0;
}




/* botArea */
#sect04 .botArea{
position: relative;
padding: 10rem 0 0;
}
#sect04 .botArea::before{
content: "";
position: absolute;
z-index: 1;
top: -1rem;
left: 0;
width: 100%;
height: 15rem;
background: url(./img/eng_sum_sp.png) 50% 0 no-repeat;
background-size: .8rem auto;
}
#sect04 .botArea::after{
content: "";
position: absolute;
top: -4.0rem;
left: 0;
width: 100%;
height: 10rem;
background: url(./img/ck_ccl.png) 50% 0 no-repeat;
background-size: 10rem auto;
padding: 3.5rem 0 0;
}


#sect04 .botArea .catch{
padding: 0 0 1rem;
text-align: center;
line-height: 2.1;
font-size:1.8rem;
}





/*------------
sect05_SP
------------*/
#sect05{
padding: 9rem 0 2rem;
}
#sect05 .areaInner::before{
content: "";
position: absolute;
top: -6.5rem;
left: 1rem;
width: 20rem;
height: 8rem;
background: url(./img/sct05_logo.png) 0 0 no-repeat;
background-size: 20rem auto;
}
#sect05 .sectTtlArea{
margin: 0 0 2rem;
padding: 0 0 3rem;
background: url(./img/dotline1.png) 0 100% / auto .2rem repeat-x;
}

#sect05 .slider5area{
position: relative;
margin: 0 0 2.5rem;
padding: 0 0 2.5rem;
background: url(./img/dotline1.png) 0 100% / auto .2rem repeat-x;
}
#sect05 .slider5area .fuki{
position: absolute;
left: 2%;
width: 6rem;
}
#sect05 .slider5area h3{
position: static;
padding: 1rem 0 .5rem 22%;
text-align: left;
font-family: "Zen Kaku Gothic New";
letter-spacing: 0.1em;
-ms-writing-mode: tb-lr;
writing-mode: horizontal-tb;
font-size:2.0rem;
}
#sect05 .slider5area .note{
margin: 0 0 1rem;
text-align: center;
font-size: 1.3rem;
color: #999;
}


/* slider */
#sect05 .slider5s{
display: block;
justify-content: space-between;
margin: 0 0 0; 
padding: 0 0 5rem;
}

#sect05 .slider5s .slBox{
width: auto;
background: #eef6fd;
padding: 2.5rem 5% 2rem;
}
#sect05 .slider5s .slick-slide{
margin-left:.5rem!important;
margin-right:.5rem!important;
}


#sect05 .slider5s .slick-arrow:before{
content:""!important;
}
#sect05 .slider5s .slick-prev, #sect05 .slider5s .slick-next {
z-index:2;
top:auto;
bottom: -3.0rem;
width: 5.0rem;
height: 5rem;
background: url(./img/arrow_nb2_rv.png) 0 100% no-repeat;
background-size: 5.0rem auto;
}
#sect05 .slider5s .slick-next {
background-image: url(./img/arrow_nb2.png);
}
#sect05 .slider5s .slick-prev{
left:5%!important;
}
#sect05 .slider5s .slick-next{
left:auto!important;
right: 5%!important;
}



#sect05 .slider5s .slick-dots{
bottom: -1rem;
margin: 0;
padding: 0;
}
#sect05 .slider5s .slick-dots li button {
position: relative;
text-indent: -9999px;
}
#sect05 .slider5s .slick-dots li::before {
width: 1.8rem !important;
height: .2rem !important;
background: #222;
border: none;
border-radius: 0;
}
#sect05 .slider5s .slick-dots li {
margin: 0 .20rem;
}
#sect05 .slider5s .slick-dots li::before{
opacity: .5;
}
#sect05 .slider5s .slick-dots li.slick-active::before{
opacity: 1;
}






#sect05 .slider5s .spec{
margin: 0 0 1.5rem;
text-align: left;
}
#sect05 .slider5s .spec span{
padding: .3rem 1.2rem .4rem;
background: #fff;
border-radius: 9999px;
line-height: 1;
font-weight: 500;
}

#sect05 .btnsWrap{
width: auto;
margin: 0 auto;
padding: 1rem 0 0;
}
#sect05 .btns .btn-web{
margin-top: 3.0rem;
}
#sect05 .btns .btn-web a{
background: #2a64af;
color: #fff;
}
#sect05 .btns .btn-web a::before {
background: url(./img/arrow_vc.png) 99% calc(50% - .2rem) no-repeat;
background-size: 2.5rem auto;
}
#sect05 .btns .btn-web a:hover::before{
background-position: 99% calc(50% - .2rem);
}






/*------------
sect06_SP
------------*/
#sect06{
padding: 3rem 0 3rem;
}
#sect06 .sectTtlArea{
margin: 0 0 4rem;
}
#sect06 .sectTtlArea::before{content: "";position: absolute;top: -1rem;left: -0.5rem;width: 9rem;height: 20rem;background: url(./img/sct06_ill01.png) 0 0 no-repeat;background-size: 9rem auto;}
#sect06 .sectTtlArea::after{content: "";position: absolute;top: -1rem;right: -1rem;width: 9rem;height: 20rem;background: url(./img/sct06_ill02.png) 0 0 no-repeat;background-size: 9rem auto;}
#sect06 .sectTtl .fontS{
display: block;
font-size:1.8rem;
}

#sect06 .ulBox{
display: block;
padding: 0 5%;
}

#sect06 .liBox{
width: auto;
background: #fbf5e9;
margin: 0 0 4rem;
padding: 2rem 5% 2.0rem;
}
#sect06 .liBox::before {
content: "";
position: absolute;
top: -1rem;
left: -0.5rem;
width: 4.7rem;
height: 4.6rem;
background: url(./img/h2_deco.svg) 0 0 no-repeat;
background-size: 4.7rem auto;
}

#sect06 .liBox h3{
min-height: 5rem;
padding: 0 0 1.5rem;
background: url(./img/dotline2.png) 0 100% repeat-x;
background-size: auto .2rem;
letter-spacing: 0;
font-size:1.8rem;
}
#sect06 .liBox h3 a{
position: relative;
z-index: 1;
display: flex;
align-items: center;
padding: 0 13% 0 0;
background: url("./img/ccl_gr.svg") 100% calc(50% - 0px) no-repeat;
background-size: 1.7rem auto;
}
#sect06 .liBox h3 a::before{
content: "";
position: absolute;
top: calc(50% - .5rem);
right: .5rem;
width: 2.8rem;
height: .6rem;
background: url(./img/arrow_hz.svg) 0 100% / 2.8rem auto no-repeat;
transition: all .3s ease-in-out;
transform-origin: 0 50%;
}
#sect06 .liBox h3 a::after{
content: "";
position: absolute;
top: calc(50% - .5rem);
right: 3.5rem;
width: .4rem;
height: .6rem;
background: url(./img/arrow_hz_add.svg) 0 100% / .5rem auto no-repeat;
}
#sect06 .liBox h3 a:hover{
opacity: 1;
}
#sect06 .liBox h3 a:hover::before{
transform: scaleX(1.0);
}
#sect06 .liBox h3 a:hover::after{
}


#sect06 .liBox .tag{
position: absolute;
right: 3%;
bottom: -2rem;
display: inline-block;
margin: 0 .3rem 1.1rem 1.0rem;
}
.sect200 .typeB .tag{
margin: 0 1.0rem 1.1rem .3rem;
}
#sect06 .liBox .tag::before{/* content: ""; */position: absolute;top: .3rem;left: .3rem;width: 100%;height: 100%;border: .2rem solid #222;}
#sect06 .liBox .tag span{
position: relative;
display: block;
padding: .3rem 1.0rem .5rem;
background: #222222;
line-height: 1;
text-align: left;
color: #fff;
}
#sect06 .liBox .tag span::before{
content: "#";
}

.tabArea .tab1 .ulBox:first-child::before{content: "";position: absolute;z-index: 1;top: 20rem;right: -5rem;width: 13.9rem;height: 14rem;background: url(./img/tab_ill06.png) 0 0 no-repeat;background-size: 90% auto;}
.tabArea .tab1 .ulBox:last-child::before{content: "";position: absolute;z-index: 1;top: 28rem;right: -5rem;width: 13.9rem;height: 14.7rem;background: url(./img/tab_ill04.png) 0 0 no-repeat;background-size: 75% auto;}



/* PCでは非表示 */
.sp_only {
  display: none;
}
  .sp_only {
    display: block;
  }

  /* ボックス全体のコンテナ */
  .mvArea .checklist-container {
    position: relative;
    margin: 20px 20px 20px;
    z-index: 10;
    top: 1rem;
  }

  /* 枠線のボックス */
  .mvArea .media-info-box {
    border:.2rem solid #e5e5e5;
    background: rgb(255 255 255 / 8%);
    padding: 10px 17px 20px 17px;
    backdrop-filter: blur(4px);
  }

  /* タイトルを枠線の上に配置 */
  .mvArea .info-title {
    position: relative;
    top: 0;
    left: 0;
    transform: none;
    margin: 0 0 7px 0;
    color: #36a16d;
    font-size: 1.6rem;
    font-family: "Zen Kaku Gothic New", sans-serif;
  }

  /* リスト部分 */
  .mvArea .info-list {
    margin: 0;
    padding: 0;
    list-style: none;
  }

  .mvArea .info-list li {
    position: relative;
    padding-left: 28px;
    margin-bottom: 12px;
    font-size: 1.4rem;
    line-height: 1.4;
    color: #222;
    display: flex;
    align-items: center;
  }

  .mvArea .info-list li:last-child {
    margin-bottom: 0;
  }

  /* チェックアイコンの再現（緑の四角に白のチェック） */
  .mvArea .info-list li::before {
    content: "";
    position: absolute;
    left: 0;
    width: 16px;
    height: 16px;
    border-radius: 2px;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><rect width='24' height='24' rx='2' fill='%2336a16d'/><path d='M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z' fill='white'/></svg>");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
  }
}


/*  End_SP */

}


/* =========================
   INDEX
========================= */

.fastindex {margin: 0 0 16rem;}



/* ---- タイトル ---- */

.fastindex__title {
  display: flex;
  align-items: baseline;
  gap: 20px;
  margin-bottom: 0;
}

.fastindex__title-en {
  font-family: "M PLUS 1p";
  font-size: 51px;
  font-weight: 500;
  letter-spacing: 0.05em;
  color: #3bb077;
}

.fastindex__title-ja {
  font-size: 2rem;
  font-weight: 500;
}

/* ---- ボックス ---- */

.fastindex__box {
  display: flex;
  border: .2rem solid #c2c2c2;
  border-radius: 0;
  background: #ffffff;
}

/* ---- 各アイテム ---- */

.fastindex__item {
	    width: 26%;
	    position: relative;
	    text-align: center;
	    font-weight: 600;
	    font-size: 16px;
	    line-height: 1.6;
}
.fastindex__item a{
  position: relative;
  display: block;
  padding: 50px 20px 42px;
  text-align: center;
  font-weight: 500;
  text-decoration: none;
}

.fastindex__item:nth-child(1) {
  width: 30%;
}

/* 区切り線 */
.fastindex__item:not(:last-child) {
  border-right: 1px dashed #999;
}

/* ---- 番号（BEFORE） ---- */

.fastindex__item::before {
  content: attr(data-num);
  position: absolute;
  top: 10px;
  left: 50%;
  transform: translateX(-50%);
  font-family: "M PLUS 1p", sans-serif;
  font-size: 24px;
  font-weight: 500;
  letter-spacing: 0.1em;
  color: #3bb077;
}

.fastindex__item a::before {
     content: "";
    position: absolute;
    bottom: -1.5rem;
    left: 90%;
    transform: translateX(-50%) rotate(90deg);
    width: 6rem;
    height: 2.1rem;
    background: url(./img/arrow_nb.svg) 0 0 no-repeat#fff;
    background-size: 5.6rem auto;
}


@media screen and (max-width: 480px) {
.fastindex {
  margin: 0 0 6rem;
  padding: 0 5%;
}
.fastindex__title-en {
    font-size: 30px;
}
  .fastindex__title-ja {
    font-size: 1.6rem;
}
  .fastindex__box {
  display: block;
}
  .fastindex__item a {
    padding: 20px 0 20px 46px;
    text-align: left;
}

.fastindex__item {
	    width: 100%;
}
.fastindex__item:nth-child(1) {
  width: 100%;
}

.fastindex__item:not(:last-child) {
  border-right: none;
  border-bottom: 1px dashed #999;
  font-size: 15px;
}
  .fastindex__item::before {
    font-size: 18px;
    top: 31%;
    left: 23px;
}
	.fastindex__item a::before {
    bottom: -0.2rem;
    left: 83%;
        transform: rotate(90deg);
      background-size: 4.5rem auto;
}


/* End_PC */















