@charset "utf-8";
/* CSS Document */
@import url(http://fonts.googleapis.com/earlyaccess/notosansjp.css);

/* ============================================================ */
/* #index
/* ============================================================ */


#index{
    font-family: Noto Sans JP;
}
#index .row_medium {
	max-width: 1280px;
    /*width: 100%;*/
}


#index .slider_area{
    width: 100%;
    margin-bottom: 80px;
}
#index .slider-img img{
    width: 100%;
}
.top_slider .slide-arrow {
    background-color: #f17fab;
    bottom: 0;
    height: 50px;
    width: 50px;
    margin: auto;
    position: absolute;
    top: 0;
    border-radius: 50%;
}
.top_slider .slide-arrow i {
    color: #fff;
    font-size: 1.8rem;
    line-height: 2;
}
.top_slider .prev-arrow {
    left: 60px;
    z-index: 10;
}
.top_slider .next-arrow {
    right: 60px;
    z-index: 10;
}
.slider_area .slick-dots{
  bottom:-40px;
}
.slider_area .slick-dots li button:before{
    font-size: 12px;
}
.slider_area .slick-dots li.slick-active button:before {
    color: #f17fab;
}

.top_voice_list .slick-dots{
  bottom:-40px;
}
.top_voice_list .slick-dots li button:before{
    font-size: 12px;
}
.top_voice_list .slick-dots li.slick-active button:before {
    color: #3BAE5B;
}


#index .flow_briefing {
    background: #FFFBDA;
}
#index #flow_briefing_top.flow_briefing {
    padding: 150px 0 0;
    background: #FFF;
    margin: 0;
}
#index #flow_briefing_top .inner{
    width: 100%;
    margin: 0 auto;
    padding: 0 0 6rem;
    background: #fff;
    border-radius: 60px;
}
#index #flow_briefing_top .inner_bg{
    width: 100%;
    max-width: 1160px;
    background: url("/img/top/bg_flow_top.png") repeat-y top left;
    background-size: contain auto;
    margin: 0 auto;
    padding: 1rem;
    border-radius: 60px;
}

#index #flow_briefing_top .flow_briefing_top_head{
    text-align: center;
}
#index #flow_briefing_top .flow_briefing_top_head .cap01{
    transform: translateY(-45%);
}
#index #flow_briefing_top .flow_briefing_top_head .cap02{
    margin: -3rem auto 0;

}
#index #flow_briefing_top .flow_briefing_top_head h2{
    color: #333;
    font-size: 4.0rem;
    font-weight: bold;
    margin: 0 auto 5rem;
}
#index #flow_briefing_top .flow{
    margin: 0 auto 0;
}
#index #flow_briefing_top .btn_box{
    padding: 30px 0 0;
    text-align: center;
}
#index #flow_briefing_top .btn_box p{
    margin: 0 0 10px;
}



/* #sns */
/* #event */
/* #sns */
#index #choice h2,
#index #sns h2,
#index #event h2,
#index #voice h2,
#index #features h2,
#search_area_index h2,
#faq h2{
    color: #333;
    text-align: center;
    font-weight: bold;
    font-size: 4.0rem;
    line-height: 1.2;
    margin: 0 0 8rem 0;
    padding: 0 0 2rem;
    background: url("/img/top/bg_tit_border.png") no-repeat bottom center;
}
#index #event h2 span{
    display: block;
    margin: 0 0 1.5rem;
}
#index #choice h2 span{
    display: block;
    margin: 0 0 1.5rem;
}

#index #features h2 span {
    padding: 0;
    font-size: 6.0rem;
}


/* #sns */
#index #sns{
    padding: 80px 0;
}
#index #sns .inner{
    max-width: 1280px;
    width: 100%;
    margin: 0 auto;
}
#index #sns .cap{
    font-size: 1.6rem;
    color: #333;
    text-align: center;
}
#index #sns .sns_box{
    margin: 5rem auto 0;
    width: 65%;
    max-width: 800px;
}
#index #sns .sns_box .sns_list{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
}
#index #sns .sns_box .sns_list li img{
    width: 100%;
    height: auto;
}
#index #sns .sns_box .sns_list li video{
    width: 100%;
    height: auto;
}
.btn_more02 {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 320px;
    height: 50px;
    border-radius: 30px;
    border: 1px solid #E5005A;
    background-color: #fff;
    font-size: 1.6rem;
    font-weight: bold;
    margin: 0 auto;
    position: relative;
    transition: all .3s;
}
.btn_more02::after{
    display: block;
    width: 18px;
    height: 19px;
    content: "";
    background: url("/img/top/ico_arrow_red.png") no-repeat center center;
    margin-left: 10px;
}
/*.btn_more02:hover {
    opacity: 0.7;
}*/
/* #campaign */
#index #campaign{
    padding: 80px 20px;
}
#index #campaign > .inner{
    max-width: 1280px;
    width: 100%;
    margin: 0 auto 0;
    padding: 0;
}
#index #campaign h2{
    text-align: center;
    margin: 0 0 8rem 0;
}

#index #campaign .cpn_list{
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 40px;
}

#index #campaign .cpn_list li{
}
#index #campaign .cpn_list li .inner{
  width: 100%;
  margin: 0 auto;
  position: relative;
}

#index #campaign .cpn_list li .inner .bana{
    background: #FFF;
    border-radius: 20px;
    display: grid;
    grid-template-columns: 210px 1fr;
}

#index #campaign .cpn_list li.cpn01 .inner .bana{
  border: 3px solid #97C305;
}
#index #campaign .cpn_list li.cpn02 .inner .bana{
  border: 3px solid #EB678E;
}
#index #campaign .cpn_list li.cpn03 .inner .bana{
  border: 3px solid #AF83D8;
}
#index #campaign .cpn_list li.cpn04 .inner .bana{
  border: 3px solid #0B004F;
}
#index #campaign .cpn_list li.cpn05 .inner .bana{
  border: 3px solid #4E81BE;
}
#index #campaign .cpn_list li.cpn06 .inner .bana{
  border: 3px solid #FAC718;
}
#index #campaign .cpn_list li.cpn07 .inner .bana{
  border: 3px solid #F06600;
}

#index #campaign .cpn_list li .inner .bana figure{
    width: 100%;
    border-radius: 18px 0 0 18px;
}

#index #campaign .cpn_list li .inner .bana figure img{
    width: 100%;
    height: auto;
    border-radius: 16px 0 0 16px;
}
#index #campaign .cpn_list li .inner .bana .cpn_tit{
    text-align: center;
    font-size: 2.8rem;
    font-weight: bold;
    line-height: 1.2;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

#index #campaign .cpn_list li.cpn01 .inner .bana .cpn_tit{
  color: #97C305;
}
#index #campaign .cpn_list li.cpn02 .inner .bana .cpn_tit{
  color: #EB678E;
}
#index #campaign .cpn_list li.cpn03 .inner .bana .cpn_tit{
  color: #AF83D8;
}
#index #campaign .cpn_list li.cpn04 .inner .bana .cpn_tit{
  color: #0B004F;
}
#index #campaign .cpn_list li.cpn05 .inner .bana .cpn_tit{
  color: #4E81BE;
}
#index #campaign .cpn_list li.cpn06 .inner .bana .cpn_tit{
  color: #FAC718;
}
#index #campaign .cpn_list li.cpn07 .inner .bana .cpn_tit{
  color: #F06600;
}

#index #campaign .cpn_list li .inner .bana .cpn_tit span{
  color: #333;
  font-size: 2.4rem;
  font-weight: bold;
}
#index #campaign .cpn_list li{
  padding: 0 0 20px;
}

 #index #campaign .cpn_list li .inner .cpn_content{
    margin:  20px 0 0;
}
 #index #campaign .cpn_list li .inner .cpn_content img{
    width: 100%;
    height: auto;
}

#index #campaign .cpn_list li .inner .cpn_area{
  position: relative;
  background: #FFF;
  margin: 20px 0 0;
}

/*---　ペア入学キャンペーン　---*/
/*---　紹介キャンペーン　---*/
/*#index #campaign .cpn_list li.cpn02 .cpn_area p img,
#index #campaign .cpn_list li.cpn06 .cpn_area p img {
    width: 100%;
    height: auto;
}
#index #campaign .cpn_list li.cpn02 .friend_cpn p{
  font-size: 1.2rem;
  font-weight: normal;
  text-align: left;
  margin: 0 0 10px 0;
}*/

/*---　企業優待制度　---*/
/*#index #campaign .cpn_list li.cpn05 .biz p {
  font-size: 1.5rem;
  font-weight: bold;
  text-align: left;
  margin-bottom: 10px;
}
#index #campaign .cpn_list li.cpn05 .biz p:nth-of-type(2){
  font-size: 1.2rem;
  font-weight: normal;
  text-align: left;
  margin: 0 0 40px 0;
}
#index #campaign .cpn_list li.cpn05 .biz p:nth-of-type(3){
  font-size: 1.2rem;
  font-weight: normal;
  text-align: left;
  margin: 0 0 40px 0;
}
#index #campaign .cpn_list li.cpn05 .biz ul{
    display: flex;
    flex-wrap: wrap;
}

#index #campaign .cpn_list li.cpn05 .biz ul li{
  flex: 0 0 55%;
  margin: 0 auto 10px;
  padding: 20px 0 20px 80px;
  background: #FDF7F7;
  border-radius: 20px 0 0 20px;
  position: relative;
}
#index #campaign .cpn_list li.cpn05 .biz ul li:nth-of-type(2){
  flex: 0 0 45%;
  padding: 20px 0 0 0;
  border-radius: 0 20px 20px 0;
}
#index #campaign .cpn_list li.cpn05 .biz ul li p:nth-of-type(1)  {
  font-size: 1.5rem;
  font-weight: bold;
  color: #3E3939;
  text-align: left;
  margin: 0 0 10px;
  line-height: 1;
}
#index #campaign .cpn_list li.cpn05 .biz ul li p:nth-of-type(1) span:nth-of-type(1) {
  font-size: 2.8rem;
  color: #E50635;
  display: inline-block;
  margin-top: 15px;
}
#index #campaign .cpn_list li.cpn05 .biz ul li p:nth-of-type(1) span:nth-of-type(2) {
  color: #E50635;
  font-size: 1.5rem;
  position: relative;
}
#index #campaign .cpn_list li.cpn05 .biz ul li p:nth-of-type(1) span:nth-of-type(2) span {
  position: absolute;
  font-size: 0.8rem;
  left: -5px;
  top: -20px;
  color: #333;
}

#index #campaign .cpn_list li.cpn05 .biz ul li p:nth-of-type(2) {
    font-size: 1.2rem;
    font-weight: normal;
    text-align: left;
    margin: 0;
}
#index #campaign .cpn_list li.cpn05 .biz ul li:nth-of-type(2) p span:nth-of-type(1) {
  font-size: 3rem;
  color: #333;
  margin-right: 15px;
}
#index #campaign .cpn_list li.cpn05 .biz ul li:nth-of-type(2) p span:nth-of-type(2) {
  font-size: 2.8rem;
  color: #E50635;
  display: inline-block;
  margin-top: 15px;
}
#index #campaign .cpn_list li.cpn05 .biz ul li:nth-of-type(2) p span:nth-of-type(3) {
  color: #E50635;
}
#index #campaign .cpn_list li.cpn05 .biz ul li .tokuten{
    position: absolute;
    top: -20px;
    left: -20px;
    width: 60px;
    height: auto;
}
#index #campaign .cpn_list li.cpn05 .biz ul li .tokuten img{
    width: 100%;
    height: auto;
}

#index #campaign .cpn_list li.cpn05 .note{
  text-align: center;
  font-size: 1.6rem;
  width: 100%;
  margin: 30px 0;
}*/

/*---　お友達・ご家族紹介キャンペーン　---*/
/*#index #campaign .cpn_list li.cpn06 .friend_cpn{
  margin: 0 0 40px 0;
}

#index #campaign .cpn_list li.cpn06 .friend_cpn p{
  font-size: 1.2rem;
  font-weight: normal;
  text-align: left;
  margin: 0 0 10px 0;
}
#index #campaign .cpn_list li.cpn06 .friend_cpn ul{
    display: flex;
    flex-wrap: wrap;
}

#index #campaign .cpn_list li.cpn06 .friend_cpn ul li{
  flex: 0 0 48%;
  margin: 0 auto 2%;
  padding: 20px 20px 10px 20px;
  background: #FDF7F7;
  border-radius: 20px;
}
#index #campaign .cpn_list li.cpn06 .friend_cpn ul li .tokuten{
  background: #E50634;
  color: #FFF;
  text-align: center;
  font-weight: bold;
  font-size: 2rem;
  margin: 0 auto 20px;
  border-radius: 50px;
  width: 70%;
}
#index #campaign .cpn_list li.cpn06 .friend_cpn ul li:nth-of-type(3){
  flex: 0 0 98%;
}
#index #campaign .cpn_list li.cpn06 .friend_cpn ul li .gift{
  font-size: 3rem;
  color: #3E3939;
  text-align: center;
  margin: 0 auto 20px;
  line-height: 1;
  font-weight: normal;
  background-color: #fff;
  border-radius: 20px;
  width: 90%;
  padding: 30px 0 20px;
}

#index #campaign .cpn_list li.cpn06 .friend_cpn ul li:nth-of-type(1) .gift:nth-of-type(1){
  margin: 80px auto 20px;
}
#index #campaign .cpn_list li.cpn06 .friend_cpn ul li .gift span:nth-of-type(1) {
  font-size: 5.4rem;
  color: #E50635;
  font-weight: bold;
  line-height: 1.6;
}
#index #campaign .cpn_list li.cpn06 .friend_cpn ul li .gift span:nth-of-type(2){
  font-size: 3.2rem;
  color: #E50635;
  font-weight: bold;
}
#index #campaign .cpn_list li.cpn06 .friend_cpn ul li .gift span:nth-of-type(3){
  font-size: 1.4rem;
}
#index #campaign .cpn_list li.cpn06 .friend_cpn ul li p:nth-of-type(2) {
    font-size: 1.4rem;
    font-weight: normal;
    text-align: left;
    margin: 0;
}
#index #campaign .cpn_list li.cpn06 .friend_cpn ul li:nth-of-type(2) .tokuten_cpn {
  font-size: 5rem;
  color: #E50635;
  font-weight: bold;
  line-height: 1.2;
  margin: 0 auto 20px;
  text-align: center;
  background-color: #fff;
  border-radius: 20px;
  width: 90%;
  padding: 30px 0 20px;
}
#index #campaign .cpn_list li.cpn06 .friend_cpn ul li:nth-of-type(2) .tokuten_cpn span {
  font-size: 1.4rem;
  color: #333;
    font-weight: normal;
}
#index #campaign .cpn_list li.cpn06 .friend_cpn ul li:nth-of-type(3) p:nth-of-type(1) span:nth-of-type(1) {
  font-size: 4rem;
  color: #E50635;
  margin-top: 15px;
  font-weight: bold;
  line-height: 1.6;
}

#index #campaign .cpn_list li.cpn06 .friend p {
  font-size: 3rem;
  font-weight: bold;
  text-align: center;
  margin-bottom: 10px;
}
#index #campaign .cpn_list li.cpn06 .friend ul{
  position: relative;
  display: flex;
  flex-wrap: wrap;
  width: 90%;
  margin: 0 auto 40px;
}
#index #campaign .cpn_list li.cpn06 .friend ul li {
  position: relative;
  -webkit-box-flex: 0;
  flex: 0 0 32%;
  padding: 10px 0 30px 0;
  margin-bottom: 10px;
  background-color: #FFF;
  box-shadow: 0px 3px 5px rgba(0, 0, 0, 0.16);
  margin-right: 2%;
  text-align: center;
}
#index #campaign .cpn_list li.cpn06 .friend ul li:nth-of-type(3) {
  margin-right: 0;
}
#index #campaign .cpn_list li.cpn06 .friend ul li h3 {
  font-size: 2.8rem;
  color: #FF066A;
  line-height: 1;
  padding: 30px 0 10px;
}
#index #campaign .cpn_list li.cpn06 .friend ul li p{
  margin: 20px 0 0;
  font-size: 1.6rem;
  color: #333;
  font-weight: normal;
  line-height: 1.8;
}
#index #campaign .cpn_list li.cpn06 .friend ul li div {
  position: absolute;
  top: 160px;
  left: 230px;
}*/

/*---　Welcome backキャンペーン　---*/
/*#index #campaign .cpn_list li.cpn07 .wb {
  overflow: hidden;
  margin-bottom: 40px;
}
#index #campaign .cpn_list li.cpn07 .wb figure {
  float: right;
}
#index #campaign .cpn_list li.cpn07 .wb p:nth-of-type(1) {
  margin: 20px 0 0;
}

#index #campaign .cpn_list li.cpn07 .wb p:nth-of-type(2) {
  margin: 30px 0;
  line-height: 1.6;
}
#index #campaign .cpn_list li.cpn07 .wb_cpn{
  width: 100%;
  margin: 0 auto 30px;
  padding: 30px;
  background: #FDF7F7;
  border-radius: 20px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
#index #campaign .cpn_list li.cpn07 .wb_cpn figure {
  max-width: 210px;
  width: 100%;
}
#index #campaign .cpn_list li.cpn07 .wb_cpn figure img {
    width: 100%;
    height: auto;
}
#index #campaign .cpn_list li.cpn07 .wb_cpn div{
  width: 55%;
}
#index #campaign .cpn_list li.cpn07 .wb_cpn p:nth-of-type(1) {
  font-size: 1.5rem;
  color: #3E3939;
  font-weight: bold;
}
#index #campaign .cpn_list li.cpn07 .wb_cpn p:nth-of-type(2) {
  font-size: 3rem;
  font-weight: bold;
  color: #3E3939;
  margin: 15px 0 10px;
  line-height: 1;
}
#index #campaign .cpn_list li.cpn07 .wb_cpn p:nth-of-type(2) img{
    width: 60px;
    height: auto;
    margin-right: 20px;
}
#index #campaign .cpn_list li.cpn07 .wb_cpn p:nth-of-type(2) span{
  font-size: 2.4rem;
  color: #E50635;
}

#index #campaign .cpn_list li.cpn07 .wb_cpn p:nth-of-type(2) span span{
  font-size: 4rem;
}

#index #campaign .cpn_list li.cpn07 .wb_cpn p:nth-of-type(3) {
  font-size: 1.0rem;
}*/

#index #campaign .btn_box {
    padding: 30px 0 0;
    width: 100%;
}
#index #campaign .btn_campaign {
    display: flex;
    align-items: center;
    justify-content: center;
    max-width: 420px;
    width: 80%;
    height: 50px;
    border-radius: 30px;
    background: #FF7E00;
    box-shadow: 0 2px 0 0 #D96B00;
    font-size: 1.6rem;
    font-weight: bold;
    color: #fff;
    margin: 0 auto;
    position: relative;
}
#index #campaign .btn_campaign::after{
    display: block;
    width: 18px;
    height: 19px;
    content: "";
    background: url("/img/top/ico_arrow_orange_w.png") no-repeat center center;
    margin-left: 10px;
}



/* #event */
#index #event{
    padding: 80px 20px;
    background: #FFFBDA;
}
#index #event .inner{
    max-width: 1280px;
    width: 100%;
    margin: 0 auto;
    padding: 0;
}
#index #event .cap{
    font-size: 1.6rem;
    color: #333;
    text-align: center;
}
#index #event .eventlist{
    width: 100%;
    margin: 4rem auto 0;
    padding: 60px 40px;
    background: #fff;
    border-radius: 40px;
}
#index #event .eventlist figure img{
    width: 100%;
    height: auto;
}


/* #choice */
#index #choice{
    padding: 80px 20px;
}
#index #choice .inner{
    max-width: 1280px;
    width: 100%;
    margin: 0 auto;
    padding: 0;
    background: #fff;
}

#index #choice .age,
#index #choice .purpose{
    text-align: center;
    font-size: 2.8rem;
    font-weight: bold;
    line-height: 1.2;
    margin: 0 0 5rem 0;
}
#index #choice .age span,
#index #choice .purpose span {
    display: inline-block;
    padding: 0 4rem;
    position: relative;
}
#index #choice .age span::before,
#index #choice .purpose span::before {
    position: absolute;
    display: block;
    width: 30px;
    height: 6px;
    content: "";
    background: url("/img/top/bg_c_left.png") no-repeat center left;
    top:50%;
    left: 0;
    margin-top: -3px;
}
#index #choice .age span::after,
#index #choice .purpose span::after {
    position: absolute;
    display: block;
    width: 30px;
    height: 6px;
    content: "";
    background: url("/img/top/bg_c_right.png") no-repeat center left;
    top:50%;
    right: 0;
    margin-top: -3px;
}

#index #choice ul{
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    column-gap: 40px;
    row-gap: 60px;
}

@media screen and (max-width: 1280px)  {
    #index #choice ul{
        column-gap: 20px;
        row-gap: 30px;
    }
}

#index #choice ul:nth-of-type(1){
    margin-bottom: 8rem;
}

#index #choice ul li{
    text-align: center;
    border-radius: 20px;
    overflow: hidden;
}

#index #choice ul li a{
    display: flex;
    flex-direction: column;
}
#index #choice ul li a div{
    padding: 2.0rem 0;
    display: flex;
    flex-direction: column;
    align-content: space-around;
}
#index #choice ul li i{
    font-size: 1.6rem !important;
}
#index #choice ul li figure{
    width: 100%;
    height: auto;
    display: flex;
    align-items: center;
    justify-content: center;
}
#index #choice ul li figure img{
    width: 100%;
    height: auto;
}
#index #choice ul li h4{
    font-weight: bold;
    font-size: 2.6rem;
    line-height: 1.2;
    min-height: 65px;
}
#index #choice ul li h4 span{
    font-size: 2.0rem;
}
#index #choice ul li.elem_low h4 span{
    font-size: 1.8rem;
}
#index #choice ul li p{
    padding: 0 2.0rem;
    font-size: 1.6rem;
    margin: 10px 0;
    line-height: 1.5;
    text-align: left;
}
#index #choice ul li.minikids{
    background:url(/img/top/ico_choice01.png) no-repeat right bottom #FFE8EA;
}
#index #choice ul li.minikids h4{
    color: #EF4385;
}
#index #choice ul li.infant_thr{
    background:url(/img/top/ico_choice02.png) no-repeat right bottom #FAEBFF;
}
#index #choice ul li.infant_thr h4{
    color: #D455D7;
    padding-top: 15px;
}
#index #choice ul li.infant_old{
    background:url(/img/top/ico_choice03.png) no-repeat right bottom #E8EAFF;
}
#index #choice ul li.infant_old h4{
    color: #2B80C7;
    padding-top: 15px;
}
#index #choice ul li.elem_sm{
    background:url(/img/top/ico_choice04.png) no-repeat right bottom #FFFBE8;
}
#index #choice ul li.elem_sm h4{
    color: #EDB407;
}
#index #choice ul li.elem_sm_upp{
    background:url(/img/top/ico_choice05.png) no-repeat right bottom #FFF0E8;
}
#index #choice ul li.elem_sm_upp h4{
    color: #E55502;
}
#index #choice ul li.elem_low{
    background:url(/img/top/ico_choice06.png) no-repeat right bottom #E8F8FF;
}
#index #choice ul li.elem_low h4{
    color: #2E88D2;
}
#index #choice ul li.junior{
    background:url(/img/top/ico_window.png) no-repeat 94% 96% #F2FFE8;
}
#index #choice ul li.junior h4{
    color: #788E60;
}
#index #choice ul li.no{
    border-radius: 0;
    display: flex;
    align-items: flex-end;
}
#index #choice ul li.no a{
    color: #0071BE;
    font-size: 1.6rem;
    text-align: left;
    text-decoration: underline;
    position: relative;
    margin: 0 0 20px 0;
}
#index #choice ul li.no a .ico_blank {
        position: relative;
}
#index #choice ul li.no a .ico_blank::after {
    position: absolute;
    display: inline-block;
    content: "";
    width: 24px;
    height: 24px;
    background:url(/img/top/ico_window02.png) no-repeat center center;
    margin-left: 10px;
}


#index #choice ul li.eiken{
    background:url(/img/top/ico_choice07.png) no-repeat right bottom #FFE8EA;
}
#index #choice ul li.eiken h4{
    color: #EF4385;
}
#index #choice ul li.eiken02{
    background:url(/img/top/ico_window03.png) no-repeat 94% 96% #348FDD;
}
#index #choice ul li.eiken02 h4{
    font-size: 2.0rem;
    color: #ffffff;
    padding-top: 10px;
}
#index #choice ul li.eiken02 h4 span{
    font-size: 1.0rem;
}
#index #choice ul li.eiken02 .course_point{
    font-size: 1.2rem;
    color: #348FDD;
    border-radius: 8px;
    background: #FFF;
    padding: 5px 0;
    text-align: center;
    margin: 0 20px;
}
#index #choice ul li.eiken02 .course_point span{
    font-size: 1.6rem;
    font-weight: bold;
}
#index #choice ul li.eiken02 p{
    color: #ffffff;
}
#index #choice ul li.mantoman{
    background:url(/img/top/ico_choice08.png) no-repeat right bottom #FAEBFF;
}
#index #choice ul li.mantoman h4{
    color: #D455D7;
}
#index #choice ul li.online{
    background:url(/img/top/ico_choice09.png) no-repeat right bottom #E8EAFF;
}
#index #choice ul li.online h4{
    color: #2B80C7;
    padding-top: 15px;
}

/* btn_box */
#index .btn_box {
    padding: 60px 0 0;
    width: 100%;
}
#index .btn_orange02 {
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 2.6rem;
    font-weight: bold;
    color: #fff;
    width: 60%;
    max-width: 600px;
    height: 85px;
    border-radius: 10px;
    background: #FF7E00;
    box-shadow: 0 6px 0 0 #D96B00;
    margin: 0 auto;
    position: relative;
    transition: all .3s;
}
#index .btn_orange02:after {
    position: absolute;
    display: block;
    font-family: "Font Awesome 6 Free";
    font-size: 20px;
    font-style: normal;
    font-weight: 900;
    line-height: normal;
    content: "\f054";
    right: 20px;
}
#index .btn_orange02:hover {
    background: #ffa200;
}

/* form_btn */
#index .infno_bana_top{
    padding:60px 0;
    max-width: 860px;
    width: 100%;
    margin:0 auto;
    position: relative;
    text-align: center;
}
#index .infno_bana_top a{
    margin: 10px auto 0;
}
/* form_btn */
#index .form_btn{
    padding:60px 0;
    max-width: 610px;
    width: 100%;
    margin:0 auto;
    position: relative;
}

#index .form_btn p{
    text-align: center;
    margin-bottom: 5px;
}

#index .infno_bana_top p:nth-of-type(1),
#index .form_btn p:nth-of-type(1){
	color: #ff7e00;
    font-weight:bold;
    font-size:1.8rem;
    margin-bottom: 0;
}
#index .form_btn .icon_left{
    position: absolute;
    left:0;
    top:70px;
}

#index .form_btn .icon_rirght{
    position: absolute;
    right:0;
    top:70px;
}

#index .form_btn a{
    display: block;
    margin: 0 auto 0;
    font-weight: bold;
    line-height: 1.6;
    width: 100%;
    height: 50px;
    font-size: 2.4rem;
    text-align: center;
    padding: 4px 0 0;
}
#index .form_btn a:hover{
		text-decoration: none;
}	
#index .form_btn .icon-outer {
    background: none;
    font-size: 1.8rem !important;
    margin: 0 0 0 10px;
}
#index #visual .pickup_nomove .pickup-list_nomove ul li a {
  font-weight: normal;
}
#index #visual .pickup_nomove .pickup-list_nomove ul li a span{
  font-weight: bold;
  font-size:1.6rem;
}
#index .banner_area{
  margin: 40px auto 20px;
  max-width: 900px;
  width: 100%;
}
#index .banner_area .banner_s a:nth-of-type(1) img{
  width: 440px;
  margin: 20px 15px 0 0;
}
#index .banner_area .banner_s a:nth-of-type(2) img{
  width: 440px;
}

#index .info_bana {
  max-width: 760px;
  width: 100%;
  margin: -30px auto 60px;
}
#index .info_bana a {
  display: block;
  background: #fff;
  border-radius: 100px;
  padding: 10px;
  font-weight: bold;
  text-align: center;
  border: solid 1px #5d5d5d;
}
#index .info_bana p {
  position: relative;
}
#index .info_bana a i.icon-right {
  position: absolute;
  top: 5px;
  right: 5px;
}
#index .info_bana a i {
  margin: 0 10px 0 0;
  color: #ee0055;
}
#index .movie_area{
  max-width: 700px;
  width: 100%;
  text-align: center;
  margin: 0 auto;
}
#index .movie_area iframe {
  background: #fff;
  box-shadow: 0px 3px 15px rgba(0, 0, 0, 0.16);
  width: 100%;
  aspect-ratio: 16 / 10;
}

/* #student */
/*#index #student{
	padding:80px 0;
	overflow:hidden;
}
#index #student .inner{
	max-width:1280px;
	margin:0 auto;
	width:100%;
}

#index #student h2 {
    color: #333;
    text-align: center;
    font-weight: bold;
    font-size: 2.8rem;
    line-height: 1.2;
    margin: 0 0 5rem 0;
}

#index #student .student_photolist{
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    column-gap: 30px;
    row-gap: 30px;
}

#index #student .student_photolist li img{
    width: 100%;
    height: auto;
}*/

/* #features */
#index #features {
    padding: 80px 20px;
    background: #EEF8FF;
}

#index #features .inner{
	max-width: 1280px;
	margin:0 auto;
	width: 100%;
}

#index #features .features_list {
    width: 100%;
    display: flex;
    flex-wrap : wrap;
    column-gap: 20px;
    row-gap: 30px;
    justify-content: center;
}

#index #features .features_list li {
    width: calc( (100% - 40px) / 3);
    background: #fff;
    border-top: 12px solid #FFBF8A;
    border-radius: 10px;
    padding: 3rem;
    box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.10);
}
#index #features .features_list li h3 {
    text-align: center;
    font-size: 2.4rem;
    font-weight: bold;
}    

#index #features .features_list li figure {
    width: 80%;
    margin: 3.0rem auto;
}
#index #features .features_list li figure img {
    width: 100%;
    height: auto;
}
#index #features .features_list li .features_txt {
}
/*#index #features .features_list li .features_txt .num_img {
    float: left;
    width: 145px;
    margin: 60px 30px 60px 0;
}*/
#index #features .features_list li .features_txt p {
    font-size: 1.6rem;
    line-height: 1.8;
}    



/* #success */
#index #success{
	background-color:#F2F2F2;
	padding:80px 0;
}

#index #success .inner{
	max-width:1280px;
	margin:0 auto;
	width:100%;
    text-align: center;
}
#index #success .success_img{
    position: relative;
    margin-bottom: 5rem;
}
#index #success .success_img::before{
    position: absolute;
    content: "";
    top: 50%;
    left: 50%;
    background: url("/img/bg_success.png") top center no-repeat;
    width: 1080px;
    height: 250px;
    margin-left: -540px;
    margin-top: -125px;
}
#index #success h2 {
	font-size: 3.0rem;
    font-weight: bold;
    margin-bottom: 5rem;
}
#index #success .success_num {
    max-width: 55rem;
    width: 45%;
	margin:0 auto;
    position: relative;
}
#index #success .success_num::before{
    position: absolute;
    content: "";
    top: -30px;
    left: 50%;
    background: url("/img/bg_success02.png") top center no-repeat;
    width: 553px;
    height: 55px;
    margin-left: -276.5px;
}

#index #success .success_num h3 {
	font-size: 2.5rem;
    font-weight: bold;
    margin-bottom: 1rem;
}
#index #success .success_num h3 span:nth-of-type(1) {
	font-size: 6rem;
    color: #FF7E00;
}
#index #success .success_num h3 span:nth-of-type(2) {
	font-size: 2.7rem;
}
#index #success .success_num > div {
    text-align: left;
}


/* search */

#search_area_index .selectbox {
    height: 46px;
    border: 1px solid #999999;
}

#search_area_index .selectbox select {
    height: 44px;
}
#search_area_index .selectbox::before {
    background: #E5005A;
}
#search_area_index .selectbox::before, .selectbox::after {
    width: 40px;
}
#search_area_index input[type="text"] {
    height: 46px;
}

@media only screen and (min-width: 721px) {
    #search_area_index{
        padding: 80px 20px;
    }
    #search_area_index .search_box {
        background:#FFF4F5;
        border-radius: 10px;
        padding: 30px 50px;
    }
    #search_area_index .search_box .inner {
        padding: 30px 0 0;
    }

    #search_area_index .search_box h3 {
        padding: 15px 0;
        font-size: 2.0rem;
        font-weight: bold;
        line-height: 1;
        border-bottom: 1px solid #E5005A;
    }

    #search_area_index .search_box .input_item {
      display: flex;
      flex-direction: column;
      justify-content: center;
    }

    #search_area_index .search_box .input_item .note {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 40px;
              flex: 0 0 40px;
      padding: 5px 0 0;
      font-size: 1.2rem;
    }

    #search_area_index .search_box .input_item input[type="text"] {
        width: 100%;
    }

    #search_area_index .search_box [class^="btn_"] {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        width: 100%;
        min-width: inherit;
        margin: 30px 0 0;
        font-weight: bold;
    }

    #search_area_index .tab_box #search_pref {
      display: block !important;
      position: relative;
      float: left;
      width: 70%;
      max-width: 840px;
      max-height: 565px;
      padding:  0 0;
      background: #fff;
      /*----- #tohoku -----*/
      /*----- #kanto -----*/
      /*----- #tokai -----*/
      /*----- #kansai -----*/
      /*----- #chugoku -----*/
    }

    #search_area_index .tab_box #search_pref h3 {
      text-align: center;
      font-size: 2.8rem;
      font-weight: bold;
      line-height: 1.2;
    }

    #search_area_index .tab_box #search_pref figure {
      position: absolute;
      top: 90px;
      left: 200px;
    }

    #search_area_index .tab_box #search_pref dl {
      position: absolute;
      background: rgba(255, 255, 255, 0.5);
      text-align: center;
      border-radius: 10px;
    }

    #search_area_index .tab_box #search_pref dl dt {
        font-size: 2.0rem;
        font-weight: bold;
        line-height: 1;
        border-radius: 8px 8px 0 0;
        padding: 10px 10px;
        color: #fff;
    }

    #search_area_index .tab_box #search_pref dl dd {
        font-size: 1.6rem;
        display: grid;
        gap: 10px;
        padding: 10px 10px;
    }

    #search_area_index .tab_box #search_pref dl dd a {
      flex: 0 0 70px;
      display: flex;
      align-items: center;
      justify-content: center;
      height: 36px;
      border-radius: 100px;
    }

    #search_area_index .tab_box #search_pref dl dd a:hover {
      opacity: 0.7;
    }

    #search_area_index .tab_box #search_pref dl#tohoku {
        border: 1px solid #2E88D2;
    }
    #search_area_index .tab_box #search_pref dl#tohoku dt {
        background: #2E88D2;
    }
    #search_area_index .tab_box #search_pref dl#tohoku dd {
        grid-template-columns: repeat(1, 1fr);
    }
    #search_area_index .tab_box #search_pref dl#tohoku a {
        background: #DBEFFF;
    }
    #search_area_index .tab_box #search_pref dl#kanto {
        border: 1px solid #11A73B;
    }
    #search_area_index .tab_box #search_pref dl#kanto dt {
        background: #11A73B;
    }
    #search_area_index .tab_box #search_pref dl#kanto dd {
        grid-template-columns: repeat(2, 1fr);
    }
    #search_area_index .tab_box #search_pref dl#kanto a {
        background: #D3F5DD;
    }
    #search_area_index .tab_box #search_pref dl#tokai {
        border: 1px solid #BD7DE2;
    }
    #search_area_index .tab_box #search_pref dl#tokai dt {
        background: #BD7DE2;
    }
    #search_area_index .tab_box #search_pref dl#tokai dd {
        grid-template-columns: repeat(4, 1fr);
    }
    #search_area_index .tab_box #search_pref dl#tokai a {
        background: #F4E4FD;
    }
    #search_area_index .tab_box #search_pref dl#kansai {
        border: 1px solid #F56B7B;
    }
    #search_area_index .tab_box #search_pref dl#kansai dt {
        background: #F56B7B;
    }            
    #search_area_index .tab_box #search_pref dl#kansai dd {
        grid-template-columns: repeat(3, 1fr);
    }            
    #search_area_index .tab_box #search_pref dl#kansai a {
        background: #FFE9EB;
    }            
    #search_area_index .tab_box #search_pref dl#chugoku {
        border: 1px solid #F29300;
    }
    #search_area_index .tab_box #search_pref dl#chugoku dt {
        background: #F29300;
    }
    #search_area_index .tab_box #search_pref dl#chugoku dd {
        grid-template-columns: repeat(3, 1fr);
    }
    #search_area_index .tab_box #search_pref dl#chugoku a {
        background: #FFF1DA;
    }
    #search_area_index .tab_box #search_pref #tohoku {
      top: 80px;
      right: 0;
      width: 130px;
    }

    #search_area_index .tab_box #search_pref #tohoku dd {
      justify-content: center;
    }

    #search_area_index .tab_box #search_pref #kanto {
      top: 295px;
      right: 0;
      width: 245px;
    }

    #search_area_index .tab_box #search_pref #kanto dd {
      justify-content: space-between;
    }

    #search_area_index .tab_box #search_pref #tokai {
      top: 500px;
      right: 0;
      width: 475px;
    }

    #search_area_index .tab_box #search_pref #kansai{
      top: 80px;
      left: 0;
      width: 360px;
    }

    #search_area_index .tab_box #search_pref #chugoku {
      top: 240px;
      left: 0;
      width: 360px;
    }

    #search_area_index .tab_box #search_area {
      display: block;
      /*margin: 0 0 30px 900px;*/
      margin: 0 0 30px 72%;
    }

    #search_area_index .tab_box #search_area .selectbox {
      width: 100%;
    }

    #search_area_index .tab_box + #search_keyword {
      /*margin: 0 0 0 900px;*/
      margin: 0 0 0 72%;
    }

    #search_area_index .tab_box + #search_keyword input[type="text"] {
      min-width: 240px;
    }
}
@media only screen and (max-width: 1280px) {
    #search_area_index .search_box {
        padding: 20px 20px;
    }
    #search_area_index .tab_box #search_pref figure {
      position: absolute;
      left: 120px;
    }
}

/* #school_search */
#search_area_index #school_search {
	display: block;
	background: url(/img/bg_school_02.png) 0 0 repeat #c4e7c8;
	margin: 20px 0;
}

#search_area_index #school_search .bg{
    position:relative;
    width: 960px;
    margin:0 auto;
    background: url(/img/img_map.png) 40% 50% no-repeat;
}


#search_area_index #school_search .inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 960px;
  height: 280px;
  margin: 0 auto;
  padding: 0 0 0 650px;
}

#search_area_index #school_search .inner h2 {
  font-size: 3rem;
  font-weight: bold;
  line-height: 1.2;
}

#search_area_index #school_search .inner p {
  margin: 15px 0 25px;
}

#search_area_index #school_search #search_keyword{
	position:absolute;
	top: 25px;
	left: 0;
	width: 350px;
}

/*#search_area_index #school_search a:hover [class^="btn_"] {
  background: #faccde;
}
*/

#search_area_index #school_search .search_box {
  padding: 25px 28px 30px;
  background:#FFF;
  background-color: rgba( 255, 255, 255, 0.55 );
}


#search_area_index #school_search .search_box h2 {
  margin: 0 0 25px;
  text-align: center;
  font-size: 2.8rem;
  font-weight: bold;
  line-height: 1.2;
}

#search_area_index #school_search .search_box [class^="btn_"] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  min-width: inherit;
  margin: 30px 0 0;
}

#search_area_index #school_search .search_box .input_item input[type="text"] {
    width: 100%;
}

#search_area_index #school_search .school_area{
	width:960px;
	margin:0 auto;
	padding-bottom:40px;
}

#search_area_index #school_search .school_area h3{
  margin: 0 0 15px;
  font-size: 2.0rem;
  font-weight: bold;
}

#search_area_index #school_search .school_area p{
  font-size: 1.4rem;
  font-weight: bold;
}

#search_area_index #school_search .school_area a{
  text-decoration:underline;
  font-weight: normal;
}

#search_area_index #school_search  .school_area table th{
	text-align:left;
}

#search_area_index #school_search  .school_area table td span{
	margin:0 5px;
}

/* voice */
#index #voice{
	padding: 80px 0;
	overflow:hidden;
}
#index #voice .inner{
	/*max-width:1280px;*/
	margin:0 auto;
	width:100%;
}

#index #voice h2 {
    color: #333;
    text-align: center;
    font-weight: bold;
    font-size: 3.0rem;
    line-height: 1.2;
    margin: 0 0 5rem 0;
}

#index .top_voice_list {
    /*display: flex;
    flex-wrap: wrap;
    justify-content: left;*/
    /*width: 1080px;*/
    width: 100%;
    margin: 0 auto 5rem;
}
#index .top_voice_list ul {
    width: 100%;
}
#index .top_voice_list ul li.top_voice_list_item {
    /*width: 30%;*/
    margin: 0 15px 0;
    position: relative;
    border-radius: 10px;
    border-style: solid;
    border-width: 2px;
    border-color: #11A73B;
}

/*#index .top_voice_list ul li:nth-child(4n+1) {
    border-color: #6692F7;
}
#index .top_voice_list ul li:nth-child(4n+2) {
    border-color: #FC6BA1;
}
#index .top_voice_list ul li:nth-child(4n+3) {
    border-color: #75C5EA;
}
#index .top_voice_list ul li:nth-child(4n+4) {
    border-color: #F78E57;
}*/

#index .top_voice_list ul li.top_voice_list_item .data_box {
    border-radius: 10px 10px 0 0;
    background: linear-gradient(to bottom,  #ffffff 0%,#ffffff 30%,#ffffff 30%,#edfcee 30%,#edfcee 100%);
    display: grid;
    grid-template-columns: 200px 1fr;
    gap: 20px;
    padding: 20px 20px;
}

#index .top_voice_list ul li.top_voice_list_item .data_box figure {
    position: relative;
    overflow: hidden;
    width: 200px;
    height: auto;
    /*height: 200px;
    border-radius: 100px;*/
}
@media screen and (max-width: 1280px)  {
    #index .top_voice_list ul li.top_voice_list_item .data_box {
        grid-template-columns: 150px 1fr;
        gap: 20px;
        padding: 20px 20px;
    }
    #index .top_voice_list ul li.top_voice_list_item .data_box figure {
        width: 150px;
        height: auto;
        /*height: 150px;
        border-radius: 75px;*/
    }
}
@media screen and (max-width: 1080px)  {
    #index .top_voice_list ul li.top_voice_list_item .data_box {
        grid-template-columns: 120px 1fr;
        gap: 20px;
        padding: 20px 20px;
    }
    #index .top_voice_list ul li.top_voice_list_item .data_box figure {
        width: 120px;
        height: auto;
        /*height: 120px;
        border-radius: 60px;*/
    }
}


#index .top_voice_list ul li.top_voice_list_item .data_box figure img {
    position: absolute;
    width: 100%;
    height: auto;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
#index .top_voice_list ul li.top_voice_list_item .data_box .data_box_head {
    padding: 35% 0 0;
    font-size: 2.0rem;
    font-weight: bold;
}
#index .top_voice_list ul li.top_voice_list_item .faq_box .faq_list {
    padding: 30px 25px;
    font-size: 1.6rem;
    margin: 0;
}
#index .top_voice_list ul li.top_voice_list_item .faq_box .faq_list li + li {
    margin-top: 20px;
}
#index .top_voice_list ul li.top_voice_list_item .faq_box .faq_list h5 {
    font-size: 1.6rem;
}
#index .top_voice_list ul li.top_voice_list_item .faq_box .faq_list h5::before {
    content: "Q．";
    font-weight: bold;
}
#index .top_voice_list ul li.top_voice_list_item .faq_box .faq_list p {
    border-radius: 20px 20px 20px 0;
    padding: 25px;
    background: #FFFBDA;
    font-size: 1.4rem;
    margin-top: 10px;
}


#index .top_voice_list ul li:nth-child(-n+3) {
    margin-top: 0;
}
.top_voice_list .slick-track {
  display: flex;
}
.top_voice_list .slick-slide {
  height: auto !important;
}

.slide-arrow {
    background-color: #FF7E00;
    bottom: 0;
    height: 50px;
    width: 50px;
    margin: auto;
    position: absolute;
    top: 0;
    border-radius: 50%;
}
.slide-arrow i {
    color: #fff;
    font-size: 1.8rem;
}
.prev-arrow {
    left: -25px;
    z-index: 10;
}
.next-arrow {
    right: -25px;
    z-index: 10;
}
button {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  outline: none;
  padding: 0;
}

.btn_more {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0 4px;
    width: 335px;
    height: 60px;
    border-radius: 30px;
    border: 1px solid #FF7E00;
    background-color: #FF7E00;
    color: #fff;
    font-size: 2.0rem;
    margin: 0 auto;
    position: relative;
}
.btn_more i {
    position: absolute;
    right: 20px;
    top: 18px;
}
/*.btn_more:hover {
    border:2px solid #FF7E00;
    background-color: #fff;
    color: #FF7E00;
    cursor: pointer;
}*/


/* efforts */
#index #efforts{
	background-color: #EDFCEE;
	padding: 80px 0;
}
#index #efforts .inner{
	max-width:1280px;
	margin: 0 auto;
	width: 100%;
}

#index #efforts .caption {
    color: #333;
    text-align: center;
    font-size: 3rem;
    font-weight: bold;
    margin: 0 auto 6rem;
}

#index #efforts div .efforts_u {
	text-align: center;
	font-size: 1.8rem;
	margin-bottom:80px;
}
#index #efforts div .efforts_u:after {
	border-bottom: 10px solid #E8DECE;
	width: 450px;
	content: "";
	display: block;
	margin: -10px auto 0 auto;
}
#index #efforts .efforts_list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 40px;
	max-width: 840px;
	margin: 0 auto;
	width:100%;
}

#index #efforts .efforts_list li {
    background: #fff;
    border-radius: 20px;
    position: relative;
    box-shadow: 0 0 12px 0 rgba(0, 0, 0, 0.10);
}

#index #efforts .efforts_list li h2 {
	font-size:2.4rem;
	font-weight:bold;
	text-align:center;
    color: #fff;
    line-height: 1.3;
    padding: 2.5rem 3rem;
    border-radius: 20px 20px 0 0;
}
#index #efforts .efforts_list li:nth-child(1) h2 {
    background: #FF8F8F;
}
#index #efforts .efforts_list li:nth-child(2) h2 {
    background: #FFA417;
}

#index #efforts .efforts_list li figure {
    width: 100%;
    height: auto;
    padding: 3rem 3rem 0;
}
#index #efforts .efforts_list li figure img {
    width: 100%;
    height: auto;
}
#index #efforts .efforts_list li > div {
    padding: 3rem;
}

#index #efforts .efforts_list li .efforts_cap{
    font-size: 1.4rem;
    font-weight: bold;
    color: #4D4D4D;
    text-align: center;
    border-radius: 5px;
    background: #F2F2F2;
    padding: 1rem 0;
}
#index #efforts .efforts_list li .efforts_txt {
	font-size:1.4rem;
    line-height: 1.8;
    margin-top: 10px;
}
#index #efforts .efforts_list li .efforts_txt:not(:last-child) {
    margin-bottom: 3rem;
}

.read-more,
.read-more02,
.read-more03 {
    position: relative;
}

.read-more .read-txt,
.read-more02 .read-txt02 {
    display: -webkit-box;
    position: relative;
    margin-top: 30px;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1; /* 開く前に見せたい行数を指定 */
}

.read-more03:has(:checked) .read-txt03 {
    max-height: inherit;
}
.read-more:has(:checked) .read-txt,
.read-more02:has(:checked) .read-txt02,
.read-more03:has(:checked) .read-txt03 {
    display: block;
}

.read-more .read-txt::after,
.read-more02 .read-txt02::after {
    display: block;
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 60px;
    background: #fff;
    content: '';
}

@media screen and (max-width: 720px)  {
    .read-more03 .read-txt03 {
        max-height: 460px;
        overflow: hidden;
    }
    .read-more03 .read-txt03::after {
        display: block;
        position: absolute;
        left: 0;
        bottom: 0;
        width: 100%;
        height: 100px;
        background: linear-gradient(180deg, hsla(0, 0%, 100%, 0) 0, hsla(0, 0%, 100%, 1) 35%, hsla(0, 0%, 100%, 1) 0, #fff);
        content: '';
    }
}


.read-more:has(:checked) .read-txt::after,
.read-more02:has(:checked) .read-txt02::after {
    content: none;
}

.read-more03:has(:checked) .read-txt03::after {
    content: none;
}

.read-more label,
.read-more02 label,
.read-more03 label {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    left: 50%;
    width: 80%;
    height: 50px;
    border-radius: 25px;
    border: 1px solid #E5005A;
    background-color: #fff;
    color: #333;
    font-size: 1.6rem;
    margin-left: -40%;
}
.read-more label {
    bottom: -55px;
}
.read-more02 label {
    bottom: 30px;
}
.read-more03 label {
    bottom: 30px;
}

@media only screen and (max-width: 1280px) {
    .read-more label {
        bottom: 0px;
    }
}

.read-more label:hover,
.read-more02 label:hover,
.read-more03 label:hover {
    cursor: pointer;
}

.read-more:has(:checked) label,
.read-more02:has(:checked) label,
.read-more03:has(:checked) label {
    display: none;
}

.read-more label::after,
.read-more02 label::after,
.read-more03 label::after {
    transform: rotate(90deg);
    width: 18px;
    height: 19px;
    content: "";
    background: url(/img/top/ico_arrow_red.png) no-repeat center center;
    margin-left: 10px;
}
/*.read-more label:hover::after{
    background-color: #333333;
}*/

.read-more input,
.read-more02 input,
.read-more03 input {
    display: none;
}

#index #faq{
	padding:40px 0 0;
}

#index .faq_list dt {
    background: #F2F2F2;
}
#index .faq_list dt:first-child {
    margin-top: 0;
}
#index .faq_list dd {
    border: 10px solid #F2F2F2;
}

/* ============================================================ */
/* .top-movie-box
/* ============================================================ */

#index .top-movie-box{
  width: 100%;
  padding-top: 56.25%;
  position: relative;
  z-index: 0;
  overflow: hidden;
}
#index .movie-cover{
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  transition: opacity 0.5s;
}
#index .movie-cover::before{
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  /*z-index: 1;*/
  z-index: -1;
}

#index #movie{
  width: 100%;
  height: 320px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  z-index: 1;
  /*z-index: -1;*/
}

@media only screen and (min-width: 1440px) {
#index .top-movie-box{
    /*padding-top: 810px;*/
}
}
#index #visual .pickup_nomove .pickup-list_nomove{
    max-width: 1200px;
}
#index #visual .pickup {
    background: #f8f5f0;
}
#photo,
#photo2 {
    width: 450px;
    height: 320px;
    margin: 0 auto;
    text-align: left;
    overflow: hidden;
    position: relative;
    margin-left: 20px;
    z-index: 0;
}

#photo img,
#photo2 img{
    top: 0;
    left: 0;
    position: absolute;
}

.qp{
    max-width: 1280px;
    width: 100%;
    margin:20px auto;
}
            
.qp img{
    width: 100%;
}

@media screen and (min-width: 721px)  {
    #info .ttl {
    text-align: center;
    font-size: 4rem;
    font-weight: bold;
    line-height: 1.2;
	margin: 80px 0 40px;
}
#visual figure {
    position: inherit;
    height: inherit;
    overflow: hidden;
}
#visual figure img {
    position: inherit;
    top: inherit;
    left: inherit;
    min-width: 100%;
    min-height: 100%;
    -webkit-transform: none;
    transform: none;
}
#index #visual .pickup_nomove .pickup-list_nomove ul li {
    top: 0;
}
}


/* ============================================================ */
/* SP
/* ============================================================ */


@media screen and (max-width: 720px) {
    
.top_slider .slide-arrow {
    height: 30px;
    width: 30px;
}
.top_slider .slide-arrow i {
    font-size: 1.5rem;
    line-height: 2;
}
.top_slider .prev-arrow {
    left: 10px;
}
.top_slider .next-arrow {
    right: 10px;
}


    
#index #choice h2,
#index #sns h2,
#index #event h2,
#index #voice h2,
#index #features h2,
#search_area_index h2,
#faq h2{
    font-size: 2.4rem;
    margin: 0 0 3rem 0;
}
#index .btn_box {
    padding: 30px 20px 0;
}
.btn_more02 {
    width: 80%;
    height: 40px;
    border-radius: 20px;
    font-size: 1.2rem;
}
.btn_more02::after {
    width: 14px;
    height: 15px;
    background: url(/img/top/ico_arrow_red.png) no-repeat center center;
    background-size: contain;
    margin-left: 10px;
}

/* #sns */
#index #sns{
    padding: 50px 0;
}
#index #sns .inner{
    max-width: inherit;
    width: 100%;
    padding: 0 20px;
}
#index #sns .cap{
    font-size: 1.4rem;
}
#index #sns .sns_box{
    margin: 3rem auto 0;
    width: 100%;
    max-width: inherit;
}
#index #sns .sns_box .sns_list{
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
}
    
/* #campaignchoice */
#index #campaign {
    padding: 50px 0;
}    
#index #campaign > .inner {
    max-width: inherit;
    width: 100%;
    padding: 0 20px;
}
#index #campaign h2 {
    margin: 0 0 3rem 0;
}
#index #campaign .cpn_list {
    grid-template-columns: 1fr;
    gap: 20px;
}

#index #campaign .cpn_list li .inner .bana {
    grid-template-columns: 1fr;
}
#index #campaign .cpn_list li .inner .bana figure {
    width: 100%;
    min-height: 150px;
    border-radius: 18px 18px 0 0;
}
#index #campaign .cpn_list li .inner .bana figure img {
    border-radius: 18px 18px 0 0;
}
#index #campaign .cpn_list li .inner .bana .cpn_tit {
    padding: 30px 0;
    font-size: 2.8rem;
}
   
#index #campaign .cpn_list li.cpn02 .inner .cpn_area p,
#index #campaign .cpn_list li.cpn06 .inner .cpn_area p{
    font-size: 1.2rem;
    margin-bottom: 0;
}
#index #campaign .cpn_list li .wb_cpn{
    border-radius: 10px;
}
#index #campaign .cpn_list li.cpn07 .wb_cpn {
    width: 100%;
    margin: 0 auto 30px;
    padding: 30px;
    background: #FDF7F7;
    border-radius: 20px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
#index #campaign .cpn_list li.cpn07 .wb_cpn figure {
    max-width: 364px;
    width: 100%;
}
#index #campaign .cpn_list li.cpn07 .wb_cpn div {
    width: 100%;
    font-size: 1.6rem;
    text-align: center;
}
#index #campaign .cpn_list li.cpn07 .wb_cpn p:nth-of-type(1) {
    font-size: 2rem;
    color: #3E3939;
    font-weight: bold;
}
#index #campaign .cpn_list li.cpn07 .wb_cpn p:nth-of-type(2) {
    font-size: 3rem;
    font-weight: bold;
    color: #3E3939;
    margin: 15px 0 10px;
    line-height: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
}
#index #campaign .cpn_list li.cpn07 .wb_cpn p:nth-of-type(2) span {
    font-size: 4rem;
    color: #E50635;
}
#index #campaign .cpn_list li.cpn07 .wb_cpn p:nth-of-type(2) span span {
    font-size: 6rem;
}
#index #campaign .cpn_list li.cpn07 .wb_cpn p:nth-of-type(2) img {
    width: 90px;
    margin-right: 0;
}
#index #campaign .cpn_list li.cpn07 .wb_cpn p:nth-of-type(3) {
    margin-right: 0;
    font-size: 1.2rem;
    text-align: left;
}
#index #campaign .cpn_list li.cpn06 .friend_cpn {
    margin: 0 0 0 0;
}
#index #campaign .cpn_list li.cpn05 .biz ul li {
    flex: 0 0 100%;
    margin: 0 auto 0;
    padding: 0;
}
#index #campaign .cpn_list li.cpn05 .biz ul li .tokuten {
    width: 18%;
    top: -15px;
    left: -5px;
}
#index #campaign .cpn_list li.cpn05 .biz ul li .tokuten img {
    width: 100%;
}
#index #campaign .cpn_list li.cpn05 .biz ul li p:nth-of-type(1) {
    font-size: 3rem;
    font-weight: bold;
    color: #3E3939;
    text-align: left;
    margin: 0 0 10px;
    line-height: 1;
}
#index #campaign .cpn_list li.cpn05 .biz ul li p:nth-of-type(1) {
    font-size: 1.6rem;
    padding: 8% 0 0 20%;
}
#index #campaign .cpn_list li.cpn05 .biz ul li:nth-of-type(2) {
    flex: 0 0 100%;
    border-radius: 0 0 20px 20px;
    padding: 0;
}
#index #campaign .cpn_list li.cpn05 .biz ul li:nth-of-type(2) p:nth-of-type(1) {
    font-size: 1.6rem;
    padding: 0;
    text-align: center;
    margin: 0 0 20px;
}
#index #campaign .cpn_list li.cpn05 .biz ul li:nth-of-type(2) p span:nth-of-type(3) {
    font-size: 2.4rem;
}
#index #campaign .cpn_list li.cpn05 .biz ul li p:nth-of-type(1) span:nth-of-type(1) {
    font-size: 3.6rem;
    margin-top: 10px;
}
#index #campaign .cpn_list li.cpn05 .biz ul li p:nth-of-type(1) span:nth-of-type(2) span {
    font-size: 1rem;
}
#index #campaign .cpn_list li.cpn05 .biz ul li p:nth-of-type(1) span:nth-of-type(2) {
    font-size: 2.4rem;
    margin-top: 0;
}
#index #campaign .cpn_list li.cpn05 .biz ul li p:nth-of-type(2) {
    font-size: 1.1rem;
    margin: 0 0 0 20px;
}
#index #campaign .cpn_list li.cpn05 .biz p:nth-of-type(3) {
    font-size: 1.1rem;
    margin-top: 5px;
}
#index #campaign .cpn_list li.cpn05 .biz ul li:nth-of-type(2) p span:nth-of-type(2) {
    font-size: 3.6rem;
    margin-top: 5px;
}

#index #campaign .btn_campaign{
    font-size: 1.4rem;
    width: 90%;
}
#index #campaign .btn_campaign::after {
    width: 14px;
    height: 15px;
    background-size: contain;
    margin-left: 5px;
}
    

/* #choice */
#index #choice{
    padding: 50px 0;
    margin: 0 auto;
}
#index #choice h2{
    font-size: 2.4rem;
    margin: 0 0 3rem 0;
}
#index #choice h2 span{
}
#index #choice .inner {
    padding: 0 20px;
}
    
#index #choice .age,
#index #choice .purpose{
    font-size: 1.8rem;
}

#index #choice ul {
    grid-template-columns: 1fr;
    column-gap: 0;
    row-gap: 20px;
}    
    
#index #choice ul li {
}
#index #choice ul li.no {
    border-radius: 0;
    padding: 20px 0 0; 
}   
  #index #choice ul li.no a:after {
    width: 24px;
    height: 24px;
    background:url(/img/top/ico_window02.png) no-repeat center center;
    right: 50px;
}
  
#index #choice ul li figure {
    height: 200px;
    overflow-y: hidden;
}    
    
#index #choice ul li figure img{
    width: 100%;
    height: auto;
}
    
#index #choice ul li h4{
    font-size: 2.0rem;
    line-height: 1.2;
    min-height: inherit;
}
#index #choice ul li h4 span{
    font-size: 1.6rem;
}
#index #choice ul li.infant_thr h4,
#index #choice ul li.infant_old h4,
#index #choice ul li.eiken02 h4,
#index #choice ul li.online h4 {
    padding-top:0;
}    
#index #choice ul li.eiken02 h4{
    line-height: 1.2;
}
    
#index #choice ul li.eiken02 .course_point{
    margin: 10px 0 0;
}

#index #choice ul li p{
    font-size: 1.4rem;
    margin: 10px 0;
}
#index #choice ul li p span{
    font-size: 1.2rem;
}

/* #event */
#index #event{
}
#index #event .inner {
    max-width: inherit;
    width: 100%;
    margin: 0 auto 0;
    padding: 0 20px;
}
#index #event .cap {
    font-size: 1.4rem;
}

#index #event .eventlist{
    width: 100%;
    margin: 4rem auto 0;
    padding: 30px 20px;
    border-radius: 20px;
}

#index #event .eventlist figure img{
    width: auto;
    height: 450px;
}
#index #event .eventlist .scr_h {
    padding: 0 0 10px 0;
}
#index #event .eventlist div::-webkit-scrollbar {
    background: #CCCCCC;
    height: 4px;
}
#index #event .eventlist div::-webkit-scrollbar-thumb {
    background-color: #11A73B;
}    

#index .infno_bana_top {
    padding: 30px 20px;
    max-width: inherit;
}

#index .form_btn {
    padding: 15px 15px 30px;
    max-width: 610px;
    width: 100%;
    margin: 0 auto;
    position: relative;
}

#index .form_btn p{
    margin-bottom:0;
}
    
#index .infno_bana_top p:nth-of-type(1),
#index .form_btn p:nth-of-type(1){
    font-size:1.4rem;
}
#index .form_btn .icon_left {
    left: 10px;
    top: 50px;
    width: 12%;
}

#index .form_btn .icon_rirght{
    position: absolute;
    right: 10px;
    top: 48px;
    width: 15%;
}
#index .form_btn .icon_rirght img,
#index .form_btn .icon_left img{
    width: 100%;
}

#index .form_btn a{
    font-size: 1.6rem;
    position: relative;
    display: block;
    align-items: center;
    justify-content: center;
    background: #ff7e00;
    border-radius: 100px;
    color: #fff;
    text-align: center;
    line-height: 1.6;
    outline: none;
    -webkit-transition: all .3s;
    transition: all .3s;
    cursor: pointer;
    width: 100%;
    /*margin-top: 10px;*/
    padding: 5px 0;
    height: auto;
    font-weight: bold;
}
#index .form_btn a .icon-outer{
    margin: 0 15px 0 0;
    background: #d16700;
    color: #fff;
    font-size: 1.2rem;
    text-align: center;
    line-height: 20px;
    width: 20px;
    height: 20px;
    border-radius: 50%;
}
#index .form_btn .icon-outer{
    background: none !important;
    font-size: 1.6rem !important;
    margin: 0 0 0 10px !important;
}
#index #visual .pickup {
  position: relative;
  padding: 20px 15px 5px 0;
  margin-bottom: 20px;
}
  #index #visual .pickup_nomove .pickup-list_nomove ul li a span{
  display: block;
  margin-left: 13px;
}
#index .banner_area .banner_w img{
  padding: 0 20px;
  width: 100%;
}
#index .banner_area .banner_s a:nth-of-type(1) img,
#index .banner_area .banner_s a:nth-of-type(2) img{
  padding: 0 20px;
  width: 100%;
  margin-top: 15px;
}
#index .info_bana {
  margin: 20px auto 40px;
  width: 80%;
}
#index .movie_area{
  width: 90%;
  margin:0 auto 30px;
}
#index .movie_area iframe {
  background: #fff;
  box-shadow: 0px 3px 15px rgba(0, 0, 0, 0.16);
  width: 100%;
  aspect-ratio: 16 / 11;
}

#info .ttl {
    text-align: center;
    font-size: 2.3rem;
    font-weight: bold;
    line-height: 1.2;
    padding: 40px 30px 30px;
}

#photo,
#photo2{
    width: 100%;
    height: 280px;
    margin: 0 auto;
    text-align: left;
    overflow: hidden;
    position: relative;
    margin-left: 0;
}

.qp{
    width: 100%;
    margin:20px auto;
}

}


/* ============================================================ */
/* .emg_i
/* ============================================================ */
@media screen and (min-width:721px){
    .emg_i {
        padding: 30px;
        background: #fff2f7;
        border: #ffe5ef 10px solid;
        max-width: 1110px;
        margin: 20px auto 0 auto;
    }
    .emg_i h3 {
        padding: 0 0 10px;
        font-size: 2rem;
        font-weight: bold;
        line-height: 1.5;
        color: #ee0055;
    }
    .emg_i a {
        font-weight: bold;
        color: #ee0055;
    }
    .emg_i p {
        font-size: 1.3rem;
        line-height: 1.5;
    }
}

@media screen and (max-width:720px){
    .emg_i {
        padding: 30px;
        background: #fff2f7;
        border: #ffe5ef 10px solid;
        margin: 0 10px 10px;
    }
    .emg_i h3 {
        padding: 0 0 10px;
        font-size: 1.8rem;
        font-weight: bold;
        line-height: 1.5;
        color: #ee0055;
    }
    .emg_i a {
        font-weight: bold;
        color: #ee0055;
    }
    .emg_i p {
        font-size: 1.3rem;
        line-height: 1.5;
    }
    
    .main_txt{
        padding: 20px 15px 20px;
    } 
    .main_txt img{
        width: 100%;
        height: auto;
    } 
    
#index #faq{
	padding: 0 20px;
}

#index .faq_list {
    margin:0 auto 30px;
}

#index .faq_list dt{
  -webkit-border-radius: 10px 10px 0 0;
  border-radius: 10px 10px 0 0;

}

 /* #success */
/*#index #success{
	padding:50px 15px;
}

#index #success .success_img{
    position: relative;
    width: 70%;
    margin:0 auto 5rem;
    z-index: 1;
}
#index #success .success_img::before{
    position: absolute;
    content: "";
    top: 50%;
    left: 50%;
    background: url("/img/bg_success.png") top center no-repeat;
    background-size: cover;
    width: 150%;
    height: 100px;
    margin-left: -75%;
    margin-top: -20%;
    z-index: -1;
}
#index #success .success_img img{
    width: 100%;
    height: auto;
}

#index #success h2 {
	font-size: 2.2rem;
    font-weight: bold;
    margin-bottom: 5rem;
}
#index #success .success_num {
    max-width: inherit;
    width: 100%;
}
#index #success .success_num::before{
    position: absolute;
    content: "";
    top: -20px;
    left: 50%;
    background: url("/img/bg_success02.png") top center no-repeat;
    background-size: cover;
    width: 100%;
    height: 35px;
    margin-left: -50%;
}

#index #success .success_num h3 {
	font-size: 1.8rem;
    margin-bottom: 1rem;
}
#index #success .success_num h3 span:nth-of-type(1) {
	font-size: 5.4rem;
}
#index #success .success_num h3 span:nth-of-type(2) {
	font-size: 1.6rem;
}
#index #success .success_num > div {
    text-align: left;
}
#index #success .success_num > div p {
    font-size: 1.2rem;
}
*/

/* search */
#search_area_index .row_medium {
    margin: 0 15px;
}
#search_area_index .search_box {
    background:#FFF;
    border: none;
    border-radius: 10px;
    padding: 30px 25px;
}
#search_area_index #search_keyword.search_box {
    background:#FFF4F5;
}
#search_area_index .search_box .inner {
    padding: 20px 0 0;
}

#search_area_index .search_box h3 {
    padding: 0 0 15px;
    font-size: 1.6rem;
    font-weight: bold;
    line-height: 1;
    border-bottom: 1px solid #E5005A;
}
    
#search_area_index .search_box .input_item {
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin: 0 0 30px 0;
}

#search_area_index .search_box .input_item .note {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 40px;
          flex: 0 0 40px;
  padding: 5px 0 0;
  font-size: 1.2rem;
}

#search_area_index .search_box .input_item input[type="text"] {
  width: 100%;
}


#index #search_area_index .local_nav {
  margin: 0 20px 25px;
  border-top: none;
    overflow: hidden;
}

#index #search_area_index .local_nav .tab {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

#index #search_area_index .local_nav .tab li {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 50%;
          flex: 0 0 50%;
}

#index #search_area_index .local_nav .tab li a {
    display: block;
    background: #EBEBEB;
    font-weight: bold;
    text-align: center;
    height: 45px;
    line-height: 45px;
    border-radius: 10px 10px 0 0;
    padding: 0;
}

#index #search_area_index .local_nav .tab li.active a {
    border-top: 1px solid #E5005A;
    border-right: 1px solid #E5005A;
    border-left: 1px solid #E5005A;
    background: #FFF;
}
#index #search_area_index .local_nav .tab li:not(.active) a {
    color: #808080;
    border-bottom: 1px solid #E5005A;
}

#school_index .tab_box {
  /* #search_pref
		----------------------------------------------------------- */
  /* #search_area
		----------------------------------------------------------- */
}

#index .tab_box #search_pref {
  padding: 0 0;
  background: #fff;
}

#index .tab_box #search_pref dl dt {
    padding: 5px 10px;
    color: #fff;
    font-weight: bold;
    border-radius: 5px;
}

#index .tab_box #search_pref dl#tohoku dt {    
    background: #2E88D2;
}   
#index .tab_box #search_pref dl#kanto dt {    
    background: #11A73B;
}   
#index .tab_box #search_pref dl#tokai dt {    
    background: #BD7DE2;
}   
#index .tab_box #search_pref dl#kansai dt {    
    background: #F56B7B;
}   
#index .tab_box #search_pref dl#chugoku dt {    
    background: #F29300;
} 

#index .tab_box #search_pref dl dd {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
    margin: 10px 0 0;
}

#index .tab_box #search_pref dl dd a {
    width: 100%;
    height: 40px;
    text-align: center;
    border-radius: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
}
    
#index .tab_box #search_pref dl#tohoku dd a {    
    background: #DBEFFF;
}   
#index .tab_box #search_pref dl#kanto dd a {    
    background: #D3F5DD;
}   
#index .tab_box #search_pref dl#tokai dd a {    
    background: #F4E4FD;
}   
#index .tab_box #search_pref dl#kansai dd a {    
    background: #FFE9EB;
}   
#index .tab_box #search_pref dl#chugoku dd a {    
    background: #FFF1DA;
} 

#index .tab_box #search_pref dl + dl {
    margin: 20px 0 0;
}

#index .tab_box #search_area {
    padding: 10px 15px 0;
    border: none;
}

#index .tab_box #search_area .input_item {
    display: flex;
    margin-top: 0;
}

#index .tab_box #search_area .input_item .selectbox {
    margin: 0;
}

#index .tab_box #search_area .input_item .note {
    height: 40px;
}

#index .tab_box + #search_keyword {
    margin: 40px 0 0;
}

/* voice */
#index #voice{
	padding: 50px 0;
}

#index .top_voice_list {
    width: 100%;
    margin: 0 auto 3rem;
}
#index .top_voice_list ul {
    width: 100%;
}

#index .top_voice_list ul li.top_voice_list_item .data_box {
    border-radius: 10px 10px 0 0;
    background: linear-gradient(to bottom,  #ffffff 0%,#ffffff 30%,#ffffff 30%,#edfcee 30%,#edfcee 100%);
    display: grid;
    grid-template-columns: 120px 1fr;
    gap: 20px;
    padding: 20px 20px;
}

#index .top_voice_list ul li.top_voice_list_item .data_box figure {
    position: relative;
    /*z-index: 1;*/
    overflow: hidden;
    width: 120px;
    height: auto;
    /*height: 120px;
    border-radius: 60px;*/
}
#index .top_voice_list ul li.top_voice_list_item .data_box figure img {
}
#index .top_voice_list ul li.top_voice_list_item .data_box .data_box_head {
    padding: 35% 0 0;
    font-size: 1.2rem;
}
#index .top_voice_list ul li.top_voice_list_item .faq_box .faq_list {
    padding: 20px 20px;
    font-size: 1.4rem;
    margin: 0;
}
#index .top_voice_list ul li.top_voice_list_item .faq_box .faq_list p {
    border-radius: 20px 20px 20px 0;
    padding: 20px;
    background: #FFFBDA;
    font-size: 1.4rem;
    margin-top: 10px;
}

.slide-arrow {
    bottom: 0;
    height: 40px;
    width: 40px;
    top: 0;
    border-radius: 50%;
}
.slide-arrow i {
    color: #fff;
    font-size: 1.6rem;
}
.prev-arrow {
    left: -30px;
}
.next-arrow {
    right: -30px;
}
.btn_more {
    gap: 0 4px;
    width: 300px;
    height: 45px;
    border-radius: 23px;
    color: #fff;
    font-size: 2.0rem;
    margin: 0 auto;
    position: relative;
}
.btn_more i {
    position: absolute;
    right: 20px;
    top: 10px;
}

/* efforts */
    
/* efforts */
#index #efforts{
	padding: 50px 0;
}
#index #efforts .inner{
	max-width: inherit;
	margin: 0 auto;
	width: 100%;
    padding: 0 20px;
}
#index #efforts .caption{
    font-size: 1.8rem;
    margin: 0 auto 3rem;
}
#index #efforts .efforts_list {
    grid-template-columns: 1fr;
    gap: 20px;
    max-width: inherit;
}
#index #efforts .efforts_list li h2 {
    font-size: 2.2rem;
    padding: 2rem 1.5rem;
    border-radius: 20px 20px 0 0;
    }
#index #efforts div ul li .efforts_cap {
    font-size: 1.8rem;
}
.read-more .read-txt,
.read-more02 .read-txt02 {
}
.read-more .read-txt::after, .read-more02 .read-txt02::after {
}  
.read-more label,
.read-more02 label,
.read-more03 label {
    width: 80%;
    height: 40px;
    border-radius: 20px;
    font-size: 1.2rem;
}
.read-more label {
    bottom: 0;
}
.read-more02 label {
    bottom: 0;
}
.read-more03 label {
    bottom: 0;
}

.read-more label::after,
.read-more02 label::after,
.read-more03 label::after {
    width: 14px;
    height: 15px;
    background-size: contain;
}
    
    
/* #student */
/*#index #student{
	padding:50px 0;
}

#index #student h2 {
    font-size: 2.4rem;
    margin: 0 0 3rem 0;
}

#index #student .student_photolist {
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 15px;
    row-gap: 15px;
}*/
    
#index #features {
    padding: 50px 0;
}
   
#index #features h2 {
    font-size: 2.4rem;
    margin: 0 0 3rem 0;
}
#index #features h2 span {
    padding: 0;
    font-size: 4.0rem;
}
#index #features h2 span span {
    padding: 0;
    font-size: 3rem;
}
#index #features .inner{
	width:100%;
    padding: 0 20px;
}

#index #features .features_list {
    grid-template-columns: 1fr;
    gap: 20px;
}

#index #features .features_list li {
    display: block;
    width: 100%;
}

#index #features .features_list li h3 {
    font-size: 1.8rem;
}    
#index #features .features_list li figure {
    width: 100%;
    margin-bottom: 2rem;
}
#index #features .features_list li figure img {
    width: 100%;
    height: auto;
}
#index #features .features_list li .features_txt {
    padding: 0;
}

#index #features .features_list li .features_txt p {
    margin: 20px 0 0;
    font-size: 1.4rem;
}
    
#index .btn_orange02 {
    font-size: 1.8rem;
    text-align: center;
    width: 100%;
    max-width: inherit;
    height: 85px;
}
#index .infno_bana_top .btn_orange02{
    height: 70px;
}
 

#index #flow_briefing_top.flow_briefing {
    padding: 100px 0 0;
}
#index #flow_briefing_top .inner{
    width: 100%;
    margin: 0 auto;
    padding: 0 2rem 5rem;
    border-radius: 20px;
}
#index #flow_briefing_top .inner_bg{
    width: 100%;
    max-width: inherit;
    padding: 0.8rem;
    border-radius: 20px;
}

#index #flow_briefing_top .flow_briefing_top_head{
    text-align: center;
}
#index #flow_briefing_top .flow_briefing_top_head .cap01{
    width: 90%;
    margin: 0 auto;
    transform: translateY(-45%);
}
#index #flow_briefing_top .flow_briefing_top_head .cap02{
    width: 70%;
    margin: 0 auto;
    margin: -3rem auto 0;
}
#index #flow_briefing_top .btn_box p{
    width: 70%;
    margin: 0 auto 10px;
}
#index #flow_briefing_top .flow_briefing_top_head .cap01 img,
#index #flow_briefing_top .flow_briefing_top_head .cap02 img,
#index #flow_briefing_top .btn_box p img{
    width: 100%;
    height: auto;
}
#index #flow_briefing_top .flow_briefing_top_head h2{
    font-size: 2.4rem;
    margin: 0 auto 5rem;
}
#index #flow_briefing_top .flow li div h3 {
        font-weight: bold;
        font-size: 1.6rem;
        margin: 0 0 0;
}

#index .flow_briefing .flow{
    margin: 0 auto;
}
#index .flow_briefing .flow li:last-child figure {
    margin: 0 10px 0 0;
}
    
}