@charset "UTF-8";
/* courses.css */

/* メインビジュアルの画像(適時変更) */
#lower_mv {
	background-image: url(../../img/courses/mvSP.jpg);
}
@media screen and (min-width:769px) {
	#lower_mv {
		background-image: url(../../img/courses/mvPC.jpg);
	}
}



#lower_mv {
    background-position: left bottom !important;
}

/*========= courses ===============*/
.pad0_T {
    padding-top: 0 !important;
}
.btn {
    max-width: 340px;
}

.penmanship_merit > ul {
    width: 234px;
    display: block;
    margin: auto;
    padding-left: 0;
}


.flex_box {
    justify-content: space-between;
}

/* h1からその下のテキストまで */
#courses_heading h1 {
  color: #e15e92;
}

#courses_heading .heading_copy_box {
  margin-top: -30px;
}
#courses_heading .heading_copy {
  display: inline;
  color: #fff;
  font-size: 16px;
  line-height: 3.5;
  /* padding: 15px 0; */
  padding: 10px 0;
}
.heading_copy.is-animated strong::before {
  background-color: #e15e92;
}


#courses_heading .heading_copy strong {
  padding: 0 15px;
}

/* 個別指導・集団指導 → ご希望はこちらから */
/* h2見出し */
h2.h2decoL:before {
  width: 100%;
  max-width: 37px;
  height: 46px;
  background-image: url(../../img/courses/coursesS_icon.svg);
}

/* course_box */
.course_box {
  width: 100%;
  margin-top: 0 auto;
  background-color: #e6ffe5;
}
.courses_guidances > div:first-of-type {
  margin-bottom: 20px; /* marL */
  background-color: #daf4f8;
}

/* 個別集団 Bgcolor_box */
.course_box .bgColor_box {
  padding: 15px;
  background-color: #80b93f;
}
.courses_guidances > div:first-of-type > .bgColor_box {
  background-color: #2196c9;
}

/* 個別集団 ボックス内余白 */
.course_box_wrap {
  width: 100%;
  padding: 15px;
}

/* 個別集団 見出し */
.course_box h2 {
  font-size: 26px;
  color: #fff;
}

.course_box h2 span {
  font-size:   16px;
  vertical-align: bottom;
  margin-left: 10px;
  padding: 5px;
  color: #80b93f;
  border-radius: 5px;
  background-color: #fff;
}

.courses_guidances > div:first-of-type h2 span {
  color: #2196c9;
}

/* 個別集団 画像 */
.courses_guidances .bgImg_box {
  width:  100%;
  height: 180px;
  display: block;
  background: center center no-repeat;
  background-image: url(../../img/courses/courses_individualBg.jpg);
  background-size: cover;
}

.courses_guidances > div:first-of-type .bgImg_box {
  background-image: url(../../img/courses/courses_groupBg.jpg);
}

/* 個別集団 テキスト */
.course_box p {
  font-size: 16px;
  font-weight: bold;
  text-align: center;
}

/* 個別集団 ボタン */
.courses_guidances > div:nth-of-type(2) .btn a {
  background-color: #80b93f;
}


/*========= capacity development ===============*/
#capacity_development {
  background-color: #ffedff;
}
#capacity_development .h2decoL::before {
  content: "";
  width: 100%;
  max-width: 50px;
  height: 46px;
  display: inline-block;
  margin-right: 10px;
  background-image: url(../../img/courses/icon_crown.svg);
  background-size: contain;
}
.wrap_all {
  background-color: #fff;
  border-radius: 30px;
}
#capacity_development .wrap {
  padding: 0 7.5px;
}
#capacity_development .wrap:first-of-type {
  padding-top: 20px;
}
#capacity_development .wrap:first-of-type {
  padding-top: 20px;
}
#capacity_development .caption {
  font-size: 16px;
  font-weight: bold;
  text-align: center;
}
#capacity_development h3 {
  font-size: 20px;
}
#capacity_development .speed_reading_contents  {
  background-color: #32bddc;
  padding: 10px 10px 15px;
}
#capacity_development .oleco_contents {
  background-color: #218fc2;
  padding: 10px 10px 15px;
}
#capacity_development .speed_reading_contents h4 , #capacity_development .oleco_contents h4 {
  color: #fff;
  font-size: 33px;
  font-weight: bold;
  text-shadow: 1px 1px 2px #006280;
  text-align: center;
  letter-spacing: 0;
}
.speed_reading_english .speed_reading_contents h4 {
  font-size: 33px !important;
}
#capacity_development .speed_reading_contents h4 span , #capacity_development .oleco_contents h4 span {
  font-size: 21px;
}
.olecos {
  justify-content: space-between;
}
.olecos > p {
  width: calc(50% - 5px);
}
.all_course_cap {
  color: #fff;
  text-align: center;
  font-size: 16px;
  font-weight: bold;
}
.woman_1 , .woman_2 {
  display: none;
}
#capacity_development .check_point {
  background-color: #fff;
  padding: 15px 10px;
}
#capacity_development .check_point h5 {
  width: 100%;
  text-align: center;
}
#capacity_development .check_point h5 img {
  width: 100%;
  height: 32px;
  max-width: 200px;
}
#capacity_development .check_point h5 img.marS_B {
    margin-bottom: 10px !important;
}


#capacity_development .check_point ul {
  list-style-type: disc;
  padding-left: 20px;
}
#capacity_development .check_point ul li {
  font-weight: bold;
}
.speed_reading_english_price {
  justify-content: center;
}
.speed_reading_english_price p:first-of-type {
  background-color: #fff;
  padding: 5px;
  margin-right: 10px;
  border-radius: 10px;
  font-weight: bold;
  display: flex;
  justify-content: center;
  align-items: center;
}
.speed_reading_english_price p:nth-of-type(2) {
  color: #ffff00;
  font-size: 14px;
  font-weight: bold;
  padding-top: 8px;
}
.speed_reading_english_price p:nth-of-type(2) span {
  font-size: 32px;
}
.btn_box p {
  font-size: 16px;
  text-align: center;
  font-weight: bold;
  color: #2196c9;
}
.btn_box p a:hover {
    text-decoration: underline !important;
}

/* btn_background */
.btn_box .color_g + .btn a {
  background-color: #58b922 !important;
}
.btn_box .color_br + .btn a {
  background-color: #806239 !important;
}


.btn_box .course_btn {
  width: 100%;
 padding: 20px;
 color: #fff;
 font-weight: bold;
 text-align: center;
 font-size: 16px;
 background-color: #2196c9;
 border-radius: 10px;
}
/* 
.speed_reading , .penmanship {
 border-top: 1px dotted #58b922;
}
 */
.speed_reading h3 {
 color: #58b922;
}
.speed_reading .speed_reading_contents {
 background-color: #4cd58a !important;
}
.speed_reading_contents h4 {
 font-size: 26px !important;
}
.w_80 {
 width: 80%;
 margin: 0 auto;
 text-align: center;
}
.speed_reading_contents:nth-of-type(2) {
 background-color: #58b922 !important;
}
.color_g {
color: #58b922 !important;
}
.color_g + button {
 background-color: #58b922 !important;
}
.penmanship_contetnts {
 background-image: url(../../img/courses/penmanship_bg.jpg);
 padding: 15px;
}
.penmanship_contetnts .flex_box h4 {
 text-align: center;
}
.penmanship_contetnts .flex_box h4  img {
 max-width: 180px;
}
.penmanship_contetnts .flex_box h4 , .penmanship_contetnts .flex_box p , .penmanship_contetnts .flex_box div {
 width: 100%;
}
.penmanship h3 {
 color: #806239;
}
.penmanship_merit {
 background-color: #fff;
 padding: 10px;
}
.penmanship_merit > h5 {
 font-family: 'Noto Serif JP', serif !important;
 font-size: 20px;
 text-align: center;
 color: #754c24;
}
.penmanship_merit >  ul {
 font-family: 'Noto Serif JP', serif !important;
 /* padding-left: 13%; */
}
.penmanship_merit >  ul li {
 font-size: 16px;
 font-family: 'Noto Serif JP', serif !important;
 text-align: left;
}
.penmanship_date {
 background-color: #fff;
 padding: 15px 10px 10px;
}
.penmanship_date > div {
 display: flex;
 justify-content: center;
}
.penmanship_date > div h4 {
 background-color: #806239;
 padding: 0 10px;
 text-align: center;
 color: #fff;
 font-size: 14px;
 display: flex;
 align-items: center;
 justify-content: center;
}
.penmanship_date > div p {
 margin-left: 10px;
 display: flex;
 align-items: center;
 justify-content: center;
}
.penmanship_date > div p .friday {
 color: #806239;
 border: 1px solid #806239;
 border-radius: 5px;
 padding: 5px;
 margin-right: 8px;
 text-align: center;
}
.penmanship_date > div p .saturday {
 color: #0071b0;
 border: 1px solid #0071b0;
 border-radius: 5px;
 padding: 5px;
 margin-left: 8px;
 text-align: center;
}
.penmanship_date div ~ p:first-of-type {
 font-size: 16px;
 margin: 0 15px;
 font-weight: bold;
 text-align: center;
}
.penmanship_date div ~ p:nth-of-type(2) {
 text-align: center;
}
.penmanship_price dl {
 display: flex;
 justify-content: center;
}
.penmanship_price dl dt {
 background-color: #fff;
 padding: 5px;
 border-radius: 5px;
 display: flex;
 align-items: center;
 justify-content: center;
 margin-right: 5px;
 font-size: 14px;
}
.penmanship_price dl dd {
 font-size: 14px;
 font-weight: bold;
 color: #806239;
}
.penmanship_price dl dd span {
 font-size: 30px;
}
.penmanship_price p {
 text-align: center;
}
.color_br {
 color: #754c24 !important;
}
.color_br + button {
 background-color: #754c24 !important;
}
/* --- 速読 → TERRACEにしたときの画像調整 --- */
.couse_logo,
h4 + p.marS_B {
    text-align: center;
}
.couse_logo img,
h4 + p.marS_B img {
    width: 100%;
    height: 105px;
    max-width: 300px;
}



/*========= min-769 ===============*/
@media screen and (min-width: 769px) {
  /* PC画面でのみ、旗のsvgの背景画像を追加 */
  .BGflag:before {
      background-image:  url(../../img/courses/icon_courses-flagPC.svg);
    }
  /* PC画面でのみ、キラキラしたsvgの背景画像を追加 */
  .kiraDeco:before {
    background-image:  url(../../img/courses/kiraDecoL.svg),
                       url(../../img/courses/kiraDecoR.svg);
  }

  /*========= group guidance ===============*/
  .course_box_wrap .btn {
    max-width: 330px;
    max-width: min(340px, 43vw);
  }
  
  #courses_heading .pc_blk > div:first-of-type {
    padding-top: 3%;
    background-image: url(../../img/courses/courses_main.jpg);
    background-size: 55%;
    background-repeat: no-repeat;
    background-position: right 0px top 0px;
    padding-bottom: 7%;
  }
  #courses_heading h1 {
    text-align: left;
    font-size: min(4vw, 50px);
    margin: 0 0 10px;
  }
  #courses_heading .heading_copy {
    font-size: min(2.5vw, 30px);
    background-color: #e15e92;
    line-height: 3;
  }
  #courses_heading .heading_read {
    margin-top: 15px;
    font-size: min(2vw, 20px);
  }

  h2.h2decoL:before {
    width: 100%;
    max-width: 80px;
    height:   100px;
  }

  /* 個別指導・集団指導 → ご希望はこちらから */
  .flex_box.courses_guidances {
    justify-content: center;
  }

  /* course_box */
  .course_box {
    width: 50%;
  }
  .courses_guidances > div:first-of-type {
    margin-bottom: 0;
  }
  /* course_wrap */
  .course_box_wrap {
    padding: 0 0 60px 0;
  }
  /* 個別集団 Bgcolor_box */
  .course_box .bgColor_box {
    padding: 20px;
  }
  /* 個別集団 見出し */
  .course_box h2 {
    font-size: 40px;
  }
  .course_box h2 span {
    font-size: 20px;
    margin-left: 20px; /* ここ調整必要!!!!! */
    padding:   10px;
    white-space: nowrap;
  }
  /* 個別集団 画像 */
  .courses_guidances .bgImg_box {
    height: 285px;
  }
  /* 個別集団 テキスト */
  .course_box p {
    font-size: 20px;
    font-size: min(2.3vw,20px);
  }



/*========= capacity development ===============*/
  section > .wrap.wrap_all {
      padding-top: 40px !important;
  }
  #capacity_development .speed_reading_english , .speed_reading , .penmanship {
	  width: 100%;
	  max-width: 500px !important;
	  margin: 0 auto;
  }
  #capacity_development .wrap.speed_reading_english {
    padding-top: 0 !important;  
  }
#capacity_development .check_point {
    min-height: 264px;
}
  #capacity_development .check_point h5 img {
      width: 100%;
  }
  #capacity_development .speed_reading_contents , #capacity_development .oleco_contents {
	  padding: 2em;
  }
  .penmanship_price dl {
	  justify-content: center;
  }
  .penmanship_contetnts .flex_box h4 img {
	  max-width: 300px;
  }
  
  @media screen and (max-width: 986px) {
    /* 個別集団2カラム落ち_maarginL対策*/
    .course_box h2 span {
        max-width: 218px;
        height: 40px;
        display: block;
        line-height: 20px;
        vertical-align: middle;
        margin: 10px auto;
    }
  }
}

  /*========= min-900 ===============*/
  @media screen and (min-width: 900px) {
	  #capacity_development .speed_reading_english , .speed_reading , .penmanship {
		  max-width: 900px !important;
	  }
	  .oleco_contents {
		  margin-bottom: 0 !important;
	  }
	  #capacity_development .speed_reading_english .box_f {
		  display: flex;
	  }
	  .pc_speed_reading > div {
		  display: flex;
		  margin-bottom: 40px;
	  }
	  #capacity_development .speed_reading_english .box_f > div {
		  width: 50%;
	  }
	  .speed_reading_contents {
		  width: 50%;
	  }
      .speed_reading_contents h4 {
          font-size: 26px !important;
          font-size: min(26px,2.6vw) !important;
       }
	  .speed_reading_contents:nth-of-type(2) {
		  margin-bottom: 0 !important;
	  }
	  .penmanship .box_f {
		  display: flex;
		  justify-content: space-between;
	  }
	  .penmanship .box_f p , .penmanship .penmanship_merit {
		  width: 32% !important;
	  }
	  .penmanship_merit > ul {
		  padding-left: 5%;
	  }
	  .penmanship_date {
		  display: flex;
		  justify-content: center;
		  align-items: center;
 		  padding: 15px 10px;
	  }
	  .penmanship_date > div {
		  margin-bottom: 0 !important;
	  }
	  .penmanship_date > p {
		  margin-bottom: 0 !important;
	  }
	  .penmanship_price {
		  display: flex;
		  justify-content: center;
		  align-items: center;
	  }
	  .penmanship_price dl {
		  margin-bottom: 0 !important;
	  }
	}

@media screen and (min-width: 960px) {
  .pc_br2 {
    display: none;
  }
  #courses_heading .heading_copy {
    line-height: 2.5;
  }
}

/*========= min-1170 ===============*/
  @media screen and (min-width: 1170px) {
    /*==== 下層共通になる予定 ====*/
    /* heading */
    /* h2 */
    h2.h2_bgBorder {
      font-size: 30px;
      padding: 20px;
    }
    /* h3 */
    h3.h3_underLine {
      font-size: 16px;
      margin-bottom: 20px;
      padding-bottom: 20px;
    }
    /* content */
    li, p {
      font-size: 16px;
    }
    /* decoration */
    /* テキスト下の区切りのボーダー(上下「PC余白M」分のアキ) */
    .cont_borderB {
      margin-bottom: 40px;
      padding-bottom: 40px;
    }
    /*========= all course ===============*/
	 #capacity_development .speed_reading_english , .speed_reading , .penmanship {
      width: 100%;
      max-width: 100% !important;
      margin: 0 auto;
	 }
    #capacity_development .wrap:first-of-type {
      padding-top: 40px !important;
    }
    #capacity_development .h2decoL::before {
      max-width: 70px;
      height: 53px;
    }
    #capacity_development .wrap {
      padding: 60px;
      margin-bottom: 40px;
    }
    #capacity_development h3 {
      font-size: 40px;
    }
    #capacity_development .caption {
      font-size: 26px;
    }
    .woman_1 , .woman_2 {
      display: block;
    }
    .speed_reading_english {
      border: 1px solid #218ec1;
      box-shadow: 3px 3px 0px #d3d3d3;
      padding: 40px !important;
    }
    .speed_reading_english h4 {
      font-size: 40px !important;
      padding-bottom: 15px !important;
      padding-top: 0 !important;
      line-height: 1;
    }
    .speed_reading_english h4 + p {
    text-align: left;
    max-width: 320px;
    height: 90px;
    margin: auto auto auto 0;
    }
    .speed_reading_english .speed_reading_contents h4 {
          font-size: 40px !important;
      }
    #capacity_development .speed_reading_contents h4 span, #capacity_development .oleco_contents h4 span {
      font-size: 26px;
    }
    .speed_reading {
      border: 1px solid #58b922;
      box-shadow: 3px 3px 0px #d3d3d3;
      padding: 40px !important;
    }
    .speed_reading h3 {
      padding-top: 0 !important;
    }
    .speed_reading_english > h3 + div {
      display: flex;
      position: relative;
    }
    .woman_1 {
      position: absolute;
      top: 0;
      left: 30%;

    }
    .woman_1 img {
      max-width: 270px;
    }
    .speed_reading_english > h3 + div + p {
      text-align: center;
    }
    #capacity_development .speed_reading_contents {
      padding: 20px;
    }
    .speed_reading_contents:nth-of-type(2) {
      margin-bottom: 0 !important;
    }
    #capacity_development .oleco_contents {
      width: 50%;
      padding: 20px;
      margin-bottom: 0 !important;
    }
    #capacity_development .oleco_contents h4 {
      text-align: right;
    }
    #capacity_development .oleco_contents .all_course_cap {
      text-align: right;
    }
    .olecos {
      max-width: 360px;
      height: 100px;
      margin: auto 0 auto auto;
    }
    #capacity_development .speed_reading_contents h4 {
      text-align: left;
      font-size: 27px;
      letter-spacing: 0.05em !important;
    }
    .w_80 {
      margin: auto auto auto 0;
      text-align: left;
    }
    .w_80 img {
      max-width: 260px;
      height: 90px;
    }
    .all_course_cap {
      text-align: left;
      font-size: 16px;
    }
    .speed_reading_contents:nth-of-type(2) .all_course_cap {
      text-align: right;
    }
    .speed_reading_contents .pc_speed_english {
      text-align: right;
      max-width: 320px;
      margin: auto 0 auto auto;
    }
    .speed_reading_english_price {
      justify-content: start;
    }
    .speed_reading_english_price p:nth-of-type(2) {
      font-size: 20px;
    }
    .speed_reading_english_price p:nth-of-type(2) span {
      font-size: 45px;
    }
    .speed_reading_english_price p:first-of-type {
      display: flex;
      justify-content: center;
      align-items: center;
      padding: 0 10px;
    }
    #capacity_development .speed_reading_contents:nth-of-type(2) h4 {
      text-align: right;
    }
    #capacity_development .check_point ul li {
      font-size: 14px;
    }
    .pc_speed_reading {
      display: flex;
      margin-bottom: 40px;
      position: relative;
    }
    .pc_speed_reading > div {
      margin-bottom: 0 !important;
	}
    .woman_2 {
      position: absolute;
      top: 7%;
      left: 34%;
      max-width: 310px;
      height: auto;
    }
    .penmanship {
      border: 1px solid #806239;
      box-shadow: 3px 3px 0px #d3d3d3;
      padding: 40px !important;
    }
    .penmanship.wrap {
        margin-bottom: 0 !important;
    }
    .penmanship_contetnts {
      padding: 25px;
    }
    .penmanship_contetnts .flex_box h4 img {
      max-width: 455px;
    }
    .penmanship_merit > p {
      width: 100% !important;
      margin-bottom: 10px !important;
    }
    .penmanship_merit > ul {
      padding-left: 10%;
    }
    .penmanship_date {
      padding: 15px;
      display: flex;
      justify-content: center;
    }
    .penmanship_date > div {
      margin-bottom: 0 !important;
    }
    .penmanship_date > div h4 {
      font-size: 16px;

      padding: 5px 10px;
    }
    .penmanship_date div ~ p:first-of-type , .penmanship_date div ~ p:nth-of-type(2) {
      margin-bottom: 0 !important;
      margin: 0 15px;
      font-size: 20px;
      display: flex;
      justify-content: center;
      align-items: center;
    }
    .penmanship_date div ~ p:nth-of-type(2) {
      font-size: 16px;
    }
    .penmanship_price {
      display: flex;
      justify-content: center;
      flex-wrap: wrap;
    }
    .penmanship_price dl {
      width: calc(50% - 10px);
      justify-content: center;
	  margin-bottom: 20px !important;
    }
    .penmanship_price dl dd span {
      font-size: 45px;
      letter-spacing: 0.1;
    }
    .penmanship_price dl dt , .penmanship_price dl dd {
      padding: 0 10px;
      font-size: 16px;
    }
    .penmanship_price dl dd {
      font-size: 16px;
    }
    #capacity_development .check_point {
      min-height: auto;
    }
    .pc_speed_reading ~ p , .penmanship_contetnts ~ p {
      text-align: center;
    }
    .btn_box p {
      font-size: 20px;
    }
    .btn_box .course_btn {
      width: 100%;
      max-width: 330px;
      margin: 0 auto;
      display: block;
      font-size: 24px;
    }
    .pc_bt_none {
      padding-bottom: 0px !important;
    }
    .caption {
      font-size: 16px;
      font-weight: bold;
      text-align: center;
    }
    /* --- 速読 → TERRACEにしたときの画像調整 --- */
    .woman_2 + h4 + p.w_80.marS_B {
        text-align: left;
    }
    .couse_logo,
    h4 + p.marS_B,
    .couse_logo img,
    h4 + p.marS_B img {
        height: auto;
        max-width: 300px;
    }
    .couse_logo img {
        height: 100px    !important;
        max-width: 280px !important;
    }
  }








