@charset "utf-8";
html { width: 100%; height: 100%; }
:root{
--green:#309E27;
--dark-green:#237E30;
--lite-green:#C5DA29;
--orange:#FF8912;
--red:#FF2A2A;
--black:#222;
--small:66%;
--mid:88%;
--size_basic:16px;
--size_basic_lg:18px;
--size_lg:24px;
--size_xlg:32px;
--size_xxlg:48px;
}

.green{ color:var(--green);}
.dark-green{ color:var(--dark-green);}
.lite-green{ color:var(--lite-green);} 
.orange{ color:var(--orange);} 
.red{ color: var(--red);}

br.linebreak{display: none;}

body {
font:normal var(--size_basic) "Noto Sans JP","Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
font-optical-sizing: auto;color: var(--black);
}
/*　メイン　*/
main { width: calc(100% - 0px); margin: auto;}
section{padding: 66px 0;}

/* メインビジュアル　*/
.main-visual {
    width: 100%;
    max-height: 655px;
    height: 100%;
    background: url(../img/bg.png) no-repeat;
    background-position-x: center;
    position: relative;
    overflow: hidden;
    }

.main-visual__pc{ display: block; }
.main-visual__sp{ display:none; }

.main-visual__text {max-width: 960px;width: calc(100% - 45px);margin: auto;height: 100%;display: flex;flex-direction: column;justify-content: center;align-items: flex-start;position: relative;padding-top: 0.25vh;}

.main-visual__text-box{width: 65.5%;position: relative;}

.main-visual__text
h2{color: var(--dark-green);font-weight: 700;margin: 22px 0.5em 7px;font-size: clamp(18px,3.2vw ,25px);letter-spacing: -0.015em;text-align: left;padding: revert;width: 120%;}
.main-visual__text h2 span.green{ border-bottom: 5px solid var(--lite-green); }

.main-visual__text
h3{color: var(--green);font-size: clamp(19px, 1.95vw, 24px);font-weight: 600;display: flex;justify-content: space-evenly;align-items: center;width: 100%;text-align: center;padding: 1px 13px 0 3px;margin: 0px auto 13px;}

.main-visual__text
h3 .over45{padding: 1px 3px 1px 8px;border-radius: 0px;line-height: 1.42;color: #FFFF;width: 193px;position: relative;font-size: 90%;background-image: linear-gradient(to right, #9EC20C, #309e27);}
h3 .over45:before {
    content: "";
    display: block;
    width: 0;
    height: 0;
    border-top: 5px solid transparent;
    border-bottom: 5px solid transparent;
    border-left: 5px solid #009688;
    position: absolute;
    top: 37%;
    right: -5px;
}

.main-visual__title {margin: 2.0vh 0;width: 100%;position: relative;text-align: center;}
.main-visual__title
img {margin: auto;}

.main-visual__CEO {
    /* position: absolute; */
    color: var(--dark-green);
    font-weight: 500;
    text-align: left;
    display: block;
    margin: 1em auto;
    text-align: center;
    font-size: clamp(15px, 1vw, 16.5px);
    bottom: 0vh;
    right: 5%;
}

.main-visual .divide-fire{
position: absolute;
left: 54.5%;
top: 10.5%;}
.main-visual .photo{position: absolute;top: 0%;width: 39%;z-index: -1;right: -1.5%;z-index: 0;}


/* 申込ボタン */

.apply {display: none; text-align: center;background-image: linear-gradient(to left, #309e27, #70B418);}
.apply__box{max-width: 480px;width: 100%;margin: 5px auto 30px;}
.apply__detail{
display: flex;
margin: 11px auto;
max-width: 465px;
width: 100%;
justify-content: space-between;}

.apply__detail
div:first-child{border-radius: 1px;
background: #FFF;
height: 26px;
width: 25%;
display:flex;
justify-content: center;
align-items: center;
color: var(--green);
font-weight: 500;}
.apply__detail
div:last-child{color: #fff;
text-align: left;
width: 65%;
max-width: 600px;
margin: 0 5%;}


.apply__button {
    margin: 1.75em auto;
    background-color:var(--orange);
    border-radius: 45px;
    text-align: center;
    color: #fff;
    font-weight: 500;
    font-size: clamp(18px, 3vw, 24px);
    width: 100%;
    max-width: 525px;
    line-height: 3;
    transition: 0.3s;
    display: block;
    cursor: pointer;
    position: relative;
}

.apply__button
a { display: block; color: inherit; text-decoration: none; }
.apply__button:hover { background-color:var(--red); transition: .3s ease;}

.apply__button:after {content: url(../img/arrow.svg);display: inline-block;position: absolute;width: 22px;right: 23px;top: 3%;}



.popup_wrap input {
  display: none;
}

.popup_overlay {
  display: flex;
  justify-content: center;
  overflow: auto;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.7);
  opacity: 0;
  transition: opacity 0.5s, transform 0s 0.5s;
  transform: scale(0);
}

.popup_trigger {
  position: absolute;
  width: 100%;
  height: 100%;
}

.popup_content {
  position: relative;
  align-self: center;
  width: 90%;
  max-width: 800px;
  padding: 30px;
  background: #fff;
  line-height: 1.66;
  transition: 0.5s;
  border-radius: 5px;
  font-size: 21px;
  color: var(--dark-green);
  font-weight: 500;
}

.close_btn {
  position: absolute;
  top: 1px;
  right: 8px;
  font-size: 21px;
  cursor: pointer;
}

.popup_wrap input:checked ~ .popup_overlay {
  opacity: 1;
  transform: scale(1);
  transition: opacity 0.5s;
}














/*　無料招待　*/
.invitate { text-align: center; padding: 65px 0; position: relative; }

.invitate h2 {font-weight: 800;color: var(--green);margin-bottom: 6px;font-size: clamp(35px, 5.0vw, 63px);}
.invitate h2 .red{font-weight: 900;font-size: 113%;}
.invitate h3 {color: var(--green);font-weight: bold;font-size: clamp(21px, 5.0vw, 29px);max-width: 333px;margin: auto;padding: 0.05em 0;border-top: 1px solid #ddd;border-bottom: 1px solid #ddd;}
.invitate h4{font-weight: 600;font-size: clamp(16px, 2vw, 18px);}
.invitate p{width: 100%;max-width: 758px;margin: 0 auto 4em;font-size: var(--size_basic_lg);color: var(--dark-green);font-weight: 700;}

.invitate .gift__box{
    background: #FEFFF2;
    border: 1px solid var(--lite-green);
    border-radius: 8px;
    max-width: 572px;
    margin: 25px auto 0;
    padding: 11px 45px;
    text-align: center;
    }


    .invitate .gift__contents h4{
       padding: 0px 0 8px;
       margin-bottom: 8px;
       font-size:25px;
       font-weight: 600;
       color: var(--green);
       border-bottom: 1px dotted var(--lite-green);
       } 


/*　勉強会　*/
.seminer {width: 100%;margin: 0px auto;padding: 88px 0 88px;text-align: center;background-image: linear-gradient(to right, #F6F9F9, #F5F8F8);}
.seminer .divide-fire{ position: absolute; left: 50%; margin: -65px 0 0 155px; }

.seminer .divide-fire
img{ width: 145px; }

.seminer h3 { font-size:var(--size_lg); color: var(--dark-green); font-weight: bold; font-size: var(--size_xlg)}
.seminer h2 { font-weight: 900; color: var(--green); font-size: clamp(32px, 5.0vw, 48px); letter-spacing: -0.033em; background-image: linear-gradient(to right, #9EC20C, #309e27); background-clip: text; -webkit-text-fill-color: transparent; line-height: 1.33; margin: 13px auto; }
.seminer h4 {font-weight: bold;font-size: 21px;color: var(--dark-green);margin: 41px auto 11px;}

.seminer__boxes{display: flex;margin: 20px auto;max-width: 960px;width: calc(100% - 40px);justify-content: space-around;}

.seminer__box {background: #FFF;width: 32.75%;border-radius: 1px;padding: 21px 5px;border: 1px solid #c8d5c6;}
.seminer__boxcont {font-size: clamp(18px, 2.2vw, 18px);font-weight: 600;}
.seminer__num { width: 60px; margin: 0 auto; }
.seminer__title {color: var(--dark-green);margin: 25px auto 5px;}
.seminer .slantline{ max-width: 388px; margin: 11px auto; } 

.seminer .supple{font-size: var(--size_basic);}

.youtube{position: relative;margin-top: -25px;text-align: center;}

.youtube p{color:var(--dark-green);font-size: var(--size_basic_lg);margin-bottom: 18px;margin-top: 38px;font-weight: 600;}
.youtube div{max-width: 860px;width: 100%;margin: auto;}
.youtube-ratio iframe { width: 100%; aspect-ratio: 16 / 9; border: 0;}


.guidence{ text-align: center;}
.guidence__head{background-image: linear-gradient(to right, #9EC20C, #309e27);margin: auto;padding: 5px;color: #FFF;width: 90%;max-width: 480px;border-radius: 3px;line-height: 1.65;font-size: clamp(16px, 3vw, 23px);}
.guidence__fee{color: var(--dark-green);font-weight: 900;margin: 11px auto;}

.guidence__fee .green,.guidence__fee .red{ font-size: clamp(38px, 7vw, 81px); }

.guidence__box{background: #FEFFF2;border: 1px solid var(--lite-green);border-radius: 3px;max-width: 572px;margin: 20px auto;padding: 5px 25px;font-size: var(--size_basic);}
.guidence__contents{ display: flex; text-align: left; margin: 0px 0px; padding: 25px 0; border-bottom: 1px dashed var(--lite-green); }

.guidence__contents:last-child{border: 0;}
.guidence__contents b{line-height: 2;}
.guidence__contents div:first-child{width: 23%;line-height: 2;}
.guidence__contents div:last-child{width: 75%;line-height: 2;}

.guidence__days{ display: flex;}


/*　フッター　*/
.other {width: 100%;padding: var(--size_basic) 0;background: url(../img/foot_bg.png) no-repeat #F5F8F8;background-position:center 2000px;}

.q-a,.review{margin: 65px auto;line-height: 1.75;}
.q-a h2,.review h2{text-align: center;font-weight: 500;font-size: clamp(16px, 3vw, 21px);background-image: linear-gradient(to right, #9EC20C, #309e27);margin: 0 auto 2em;padding: 2px;color: #FFF;width: 100%;max-width: 500px;border-radius: 0px;line-height: 2.25;border-radius: 3px;}
.q-a__box, .review__box{margin: 8px auto;border-radius: 4px;max-width: 760px;padding: 5px 0;width: calc(100% - 40px);}

.q-a__box{text-align: left;max-width: 660px;}

.toggle { display: none; }
.option {position: relative;margin-bottom: 1em;/* max-width: 780px; */margin: auto;}
.q-a_title, .q-a_content {-webkit-backface-visibility: hidden;backface-visibility: hidden;transform: translateZ(0);transition: all 0.25s;}
.q-a_title { border-top: solid 1px #BEDFBD; padding: 1em; display: block;}
.q-a_title span{color: var(--dark-green);}
.q-a_title img{width: 18px;margin-right: 3%;}
.q-a_title:before {content: url(../img/Q_icon.svg);position: absolute;right: 1.25em;transition: all 0.25s;}
.q-a_title:after { transform: rotate(90deg); }
.q-a_content {max-height: 0;overflow: hidden;max-width: 600px;}
.q-a_content p {margin: 0 0 2em;padding-left: 9.25%;}
.toggle:checked + .q-a_title + .q-a_content {max-height: 400px;transition: all .8s;}
.toggle:checked + .q-a_title:before {/* transform: rotate(180deg) !important; */filter: hue-rotate(25deg);top: 0.75em;transform: scale(1, -1);}

.review__box{padding: 2.5%;background: #FFF;border: 1px solid #c8d5c6;}
.review__upper{display: flex;justify-content: space-between;}
.review__upper h3{margin: 5px auto 11px;font-size: 95%;}
.review__upper div:first-child{width: 20%;text-align: center;}
.review__upper div:first-child img{width: 80%;display: block;margin: 0 auto 0.5em;}
.review__upper div:last-child{width: 75%;}

.review__box ul.review__others{margin: 1.75em 0 0 1.25em; list-style-type: disc;}
.review p{margin: 0 0 11px;}

.footer-link{font-size: 12px; text-align: center; padding: 2em 0 0 ;}
.footer-link a{padding: 0 1em;}
.footer-copyright{ font-size: 13px; text-align: center; padding: 2em 0 ; }

@media screen and (min-width: 1600px) {
.main-visual{background-size: cover;}
}

@media screen and (max-width: 1599px) {
    .main-visual{background-size: auto;}
}


@media screen and (max-width: 1023px) {
.main-visual {margin: auto;max-height: 583px;}

.main-visual__title{max-width: 600px;width: 100%;margin: 1.5vh 0;}
.main-visual__title img { margin: auto;}



.main-visual__text .over45{ width: 31%!important; padding: 3px 5px 3px 7px!important; font-size: 91%!important; }
.main-visual__text-box{}
.main-visual__text h2{font-size: clamp(18px, 2.65vw, 26px);margin: 18px 0 16px;letter-spacing: 0.035em;}
.main-visual__text h3{margin: 6px auto 1.5vh;width: 98%;}
.main-visual__CEO {/* max-width: 71%; *//* bottom: 0vh; *//* right: 3%; */}
.main-visual .divide-fire{width: 149px;left: 55.5%;top: 10.5%;}
.main-visual .photo{bottom: 0;width: clamp(355px, 1.25vw, 715px);left: 52.5%;right: auto;margin-left: 7%;}

.main-visual .apply__button {max-width: 432px;margin: 2.15vh auto 18px;}

.invitate{ padding: 57px 0; }

.invitate h2 .red{font-weight: 900;}
.invitate h3{ font-size: var(--size_lg); }

}




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

  br.linebreak{display: block}

.main-visual {width: 100%;max-height: fit-content;height: auto;}
.main-visual__title img {width: 100%;}


.main-visual__text {width: calc(100% - 20px);padding-top: 0.5%;justify-content: space-around;justify-content: flex-start;}
.main-visual__text h2{width: 100%;margin: 0px 0 8px;}
.main-visual__text h3{width: 100%;align-items: flex-start;margin: 6px 0;font-size: 16px;}
.main-visual__CEO {width: 100%;margin-top: 7vh;}
.main-visual .divide-fire{width: 100%;}
.main-visual .photo{width: 100%;top: 0;bottom: 0;height: 100%;}


.main-visual__pc{ display: none; }
.main-visual__sp{display:block;margin-bottom: -3px;}

.contents{width: 90%;margin: auto;position: relative;}

.apply{display: block;padding: 18px 0 15px;}
.apply__box{width: 100%;}
.apply__detail{width: 100%;flex-direction: column;}

.apply__detail div:first-child { width: 75%; height: 32px; margin: auto; border-radius: 3px; }
.apply__detail div:last-child { text-align: center; width: 100%; margin: 15px auto; }

/* .apply__button {width: 85%;max-width: 400px;margin: 21px auto 3px;} */

/* .apply__button ~ img{ width: 85%;  max-width: 320px;}
.apply__button:after{top: 3.5px;} */

.invitate{ padding: 48px 0; }

.seminer .divide-fire{margin: -86px 0 0 136px;}

.seminer__boxes{flex-direction: column;width: 100%;}
.seminer__box {width: 100%;margin: 5px auto;}

.youtube p{ font-size: 16px; }

.guidence__fee .arrow{transform: rotate(90deg); display: inline-block;}


.guidence__contents div:first-child{line-height: 1;margin: 0 0 15px;width: 45%;}
.guidence__days{flex-direction: column;}

.review__upper div:first-child{ display: contents; }
.review__upper{flex-direction: column;}
.review-1{order: 1;width: 38%;letter-spacing:-0.05em;}
.review-2{order: 2;max-width: 362px;width: 45%;}
.review-3{ order: 3; }
.review__upper div:last-child{margin: 0 0 24px;}
.review__upper div:last-child ,.guidence__contents div:last-child {width: 100%;margin: 0px auto;}

.other {background-position:center 2700px;}
}

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

.main-visual {width: 100%;height: auto;}
.main-visual__title img {width: 100%;}

.main-visual__text {width: calc(100% - 20px);padding-top: 0.5%;justify-content: space-around;justify-content: flex-start;}
.main-visual__text h2{width: 100%;margin: 0px 0 8px;font-size: clamp(17px, 2.9vw, 24px);text-align: center;}
.main-visual__text h3{width: 100%;/* flex-direction: column; */align-items: flex-start;margin: 6px 0;font-size: 16px;max-width: 100%;flex-direction: column;}
.main-visual__CEO {width: 100%;margin-top: 2vh;max-width: unset;}
.main-visual .divide-fire{width: 100%;}

section{padding: 21px 0;}


.apply__box{width: 100%;}
.apply__detail{width: 100%;flex-direction: column;}

.apply__detail div:first-child { width: 75%; height: 32px; margin: auto; border-radius: 3px; }
.apply__detail div:last-child { text-align: center; width: 100%; margin: 15px auto; }
.apply__button {width: 100%;max-width: 390px;margin: 15px auto 3px;font-size: var(--size_basic_lg);line-height: 2.65;}
.guidence .apply__button {max-width: none;width: 100%;}
.apply__button ~ img{ width: 85%;  max-width: 320px;}

.guidence .apply__button:after {content: none;}

.invitate h2{line-height: 1.25;margin-bottom: 25px;margin-top: 0.5em;}

.invitate h3{ font-size: var(--size_lg); line-height: 1.25; }
.invitate .gift__box h4{font-size: 21px;}
.invitate .gift__box{padding: 11px 25px;}

.seminer {padding: 58px 0;}
.seminer .divide-fire {margin: -88px 0 0 48px;}
.seminer .divide-fire img{ width: 125px; }
.seminer h3{ font-size: var(--size_lg); }
.seminer .slant{display: none;}


.seminer .supple{font-size:80%;}

.guidence__box{ padding: 5px 15px; }

.q-a__box, .review__box{padding: 5% 5%;width: 100%;}

.q-a__box p{ width: 100%; text-align: left; margin: 0 0 16px; }


.q-a_title {position: relative;padding-left: 0.25em;}
.q-a_title span{ width: 96%; display: block; }
.q-a_title img{margin-right: 3%;}
.q-a_title:before {content: url(../img/Q_icon.svg);position: absolute;right: 1.25em;transition: all 0.3s;top: 1.25em;right: 0;}
.q-a_title:after { transform: rotate(90deg); }
.q-a_content { max-height: 0; overflow: hidden; }
.q-a_content p {padding-left: 0.25em;}
.toggle:checked + .q-a_title + .q-a_content {margin: 1em 0;}
.toggle:checked + .q-a_title:before { top: 1em; }

.other {background-position:center 3800px;}
}

