@charset "UTF-8";
/*日本語*/
@import url("https://fonts.googleapis.com/css?family=Noto+Sans+JP:500|Noto+Serif+JP:500&subset=japanese");
/*@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP:300,400,500,700,900&subset=japanese');
@import url('https://fonts.googleapis.com/css?family=Teko:400,500,700');
@import url('https://fonts.googleapis.com/css?family=Quicksand:300,400,500,700');*/
/*---------------------------------------------------------------------------*/
.contents {
  width: 100%; }

.contents .contents_area {
  min-width: 1000px;
  position: relative;
  width: 100%; }
  @media screen and (max-width: 768px) {
    .contents .contents_area {
      min-width: 0; } }

.contents .contents_inner {
  margin: 0 auto;
  width: 1000px; }
  @media screen and (max-width: 768px) {
    .contents .contents_inner {
      min-width: 0;
      width: auto; } }

/*---------------------------------------------------------------------------*/
.main_area {
  overflow: hidden; }

.main_slide_area {
  overflow: hidden;
  position: relative;
  z-index: 8; }
  @media screen and (max-width: 768px) {
    .main_slide_area {
      padding: 0 0 4px;
      position: relative;
      z-index: 8; } }

.main_slide {
  /*height: 750px;*/
  height: 490px;
  width: 100%; }
  @media screen and (max-width: 768px) {
    .main_slide {
      height: auto; } }

.main_slide li {
  /*
	height: 750px;
	min-width: 1400px;
*/
  height: 490px;
  min-width: 1000px;
  overflow: hidden;
  width: 100%; }
  @media screen and (max-width: 768px) {
    .main_slide li {
      overflow: hidden;
      position: relative;
      width: 100%;
      min-width: 0;
      height: auto; } }

.main_slide li .img_frame_01 {
  background: url(/images/index/2017_main_img_01.jpg) center center no-repeat;
  background-size: cover;
  display: block;
  height: 490px;
  margin: 0 auto;
  width: 100%; }

.main_slide li .img_frame_02 {
  background: url(/images/index/main_img_02.jpg) center center no-repeat;
  background-size: cover;
  display: block;
  height: 750px;
  margin: 0 auto;
  width: 100%; }

.main_slide li .img_frame_03 {
  background: url(/images/index/main_img_03.jpg) center center no-repeat;
  background-size: cover;
  display: block;
  height: 750px;
  margin: 0 auto;
  width: 100%; }

.main_slide li .img_frame_summer {
  background: url(/images/index/main_summer_bg.jpg) center top no-repeat;
  background-size: cover;
  display: block;
  height: 633px;
  margin: 0 auto;
  position: relative;
  text-align: center;
  width: 100%;
  z-index: 10; }

.main_slide li .img_frame_summer img {
  display: inline-block;
  vertical-align: top; }

.main_slide li .img_frame_christmas {
  background: url(/images/index/main_christmas_bg.png) center top no-repeat;
  background-size: cover;
  display: block;
  height: 633px;
  margin: 0 auto;
  position: relative;
  text-align: center;
  width: 100%;
  z-index: 10; }

.main_slide li .img_frame_spring {
  background: url(/images/index/main_spring2019_1400_490_Mar.jpg) center top no-repeat;
  /*background-size: cover;*/
  display: block;
  height: 490px;
  margin: 0 auto;
  position: relative;
  text-align: center;
  width: 100%;
  z-index: 10; }

.main_slide li .shinnendo {
  background: url(/images/index/main_shinnendo2019_bg_1400_490.jpg) center top no-repeat;
  /*background-size: cover;*/
  display: block;
  height: 490px;
  margin: 0 auto;
  position: relative;
  text-align: center;
  width: 100%;
  z-index: 10; }

.main_slide li .img_frame_main {
  background: url(/images/index/main01_bg.png) center top no-repeat;
  /*background-size: cover;*/
  display: block;
  height: 490px;
  margin: 0 auto;
  position: relative;
  text-align: center;
  width: 100%;
  z-index: 10; }

.main_slide li .img_frame_main2 {
  background: url(/images/index/main02_bg.png) center top no-repeat;
  /*background-size: cover;*/
  display: block;
  height: 490px;
  margin: 0 auto;
  position: relative;
  text-align: center;
  width: 100%;
  z-index: 10; }

.main_slide li.summer_school {
  width: 100% !important; }

.main_slide li .img_frame_main3 {
  background: url(/campaign/images/summer2017/mv_bg.png) center top repeat #ffffff;
  background-size: 2500px auto;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  height: 570px;
  min-width: 1000px;
  text-align: center;
  width: 100%; }

.main_slide li .img_frame_main3 .mv {
  height: 418px;
  position: relative;
  overflow: hidden; }

.main_slide li .img_frame_main3 .mv img {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: auto; }

.main_slide li .img_frame_main3 .period {
  background-color: #21b9df;
  height: 70px;
  text-align: center;
  width: 100%; }

.main_slide li .img_frame_main3 .period img {
  display: inline; }

.main_slide li .img_frame_autumn {
  background: url(/images/index/autumn.jpg) center top no-repeat;
  display: block;
  height: 490px;
  margin: 0 auto;
  text-align: center;
  z-index: 10;
  width: 100% !important; }

.main_slide li .img_frame_autumn img {
  display: inline-block; }

.main_slide li .img_frame_spring .sp_wrap {
  width: 1000px;
  position: relative;
  margin: 0 auto; }

.main_slide li .img_frame_spring .pos1 {
  position: absolute;
  top: 0;
  left: 0; }

.main_slide li .img_frame_spring .pos2 {
  position: absolute;
  top: 0;
  right: 0; }

.main_slide li .img_frame_spring .pos3 {
  position: absolute;
  top: 334px;
  left: 0; }

.main_slide li .img_frame_spring .pos4 {
  position: absolute;
  top: 334px;
  right: 0; }

.main_slide li .img_frame_christmas img {
  display: inline-block;
  vertical-align: top; }

.main_slide li .shinnendo .sp_wrap {
  width: 1000px;
  position: relative;
  margin: 0 auto; }

.main_slide li .img_frame img {
  height: auto;
  width: 100%; }

.main_txt_01 {
  left: 50%;
  margin: 0 0 0 -5px;
  position: absolute;
  top: 170px;
  z-index: 9; }

.main_txt_02 {
  left: 50%;
  margin: 0;
  position: absolute;
  top: 278px;
  z-index: 9; }

.main_txt_03 {
  left: 50%;
  margin: 0 0 0 -5px;
  position: absolute;
  top: 320px;
  z-index: 9; }

.bnr_iid {
  margin-top: 32px;
  text-align: center; }

.bnr_area {
  /*
	background: rgba(255, 255, 255, 0.8);
	bottom: 35px;
	padding: 23px 0;
	position: absolute;
	width: 100%;
	z-index: 10;
*/
  background: white;
  padding: 23px 0;
  position: static;
  width: 100%;
  z-index: 10; }

.bnr_slide {
  height: 87px;
  overflow: hidden;
  width: 1000px; }

/*---------------------------------------------------------------------------*/
.bx-wrapper {
  margin: 0 auto; }

.bx-wrapper .bx-viewport {
  background: none;
  -moz-box-shadow: 0 0 0 #cccccc;
  -webkit-box-shadow: 0 0 0 #cccccc;
  box-shadow: 0 0 0 #cccccc;
  border: none;
  left: 0; }

.bx-wrapper .bx-prev {
  background: url(/common/base/images/allow_prev.png) left top no-repeat;
  left: -42px; }

.bx-wrapper .bx-next {
  background: url(/common/base/images/allow_next.png) left top no-repeat;
  right: -42px; }

.bx-wrapper .bx-prev:hover {
  background-position: 0 0; }

.bx-wrapper .bx-next:hover {
  background-position: 0 0; }

.bx-wrapper .bx-controls-direction a {
  position: absolute;
  top: 50%;
  margin-top: -10px;
  outline: 0;
  width: 21px;
  height: 21px;
  text-indent: -9999px;
  z-index: 90; }

.main_slide_area .bx-wrapper .bx-pager, .bx-wrapper .bx-controls-auto {
  /*
	bottom: 185px;
*/
  bottom: 10px; }

.main_slide_area .bx-wrapper .bx-pager.bx-default-pager a {
  background: #e2e2e2;
  -moz-border-radius: 6px;
  -webkit-border-radius: 6px;
  border-radius: 6px;
  display: block;
  height: 12px;
  margin: 0 6px;
  outline: 0 none;
  text-indent: -9999px;
  width: 12px; }

.main_slide_area .bx-wrapper .bx-pager.bx-default-pager a:hover,
.main_slide_area .bx-wrapper .bx-pager.bx-default-pager a.active {
  background: #919191; }

.link_txt {
  padding: 0 0 20px; }

.link_txt p {
  font-size: 20px;
  text-align: center; }

/*--------------------------------------

初期化

-------------------------------------*/
.inner1000 {
  margin: 0 auto;
  width: 1000px; }
  @media screen and (max-width: 768px) {
    .inner1000 {
      min-width: 0;
      width: 93.48%;
      margin: 0 auto; } }

@media screen and (max-width: 768px) {
  .isPC {
    display: none; } }

.isSP {
  display: none; }
  @media screen and (max-width: 768px) {
    .isSP {
      display: block; } }

@media screen and (max-width: 768px) {
  .pc_br {
    display: none; } }

.sp_br {
  display: none; }
  @media screen and (max-width: 768px) {
    .sp_br {
      display: block;
      line-height: 0; } }

/*--------------------------------------

見出し

-------------------------------------*/
.common_headline {
  font-family: 'Noto Serif JP', serif;
  font-weight: 500;
  font-size: 30px;
  text-align: center;
  letter-spacing: 0.03em; }
  @media screen and (max-width: 768px) {
    .common_headline {
      letter-spacing: 0;
      font-size: 4.8vw; } }

.common_headline b {
  display: inline-block;
  font-weight: 500;
  font-size: 46px;
  color: #00b2ee; }
  @media screen and (max-width: 768px) {
    .common_headline b {
      font-size: 6.7vw;
      line-height: 1.4; } }

.common_headline em {
  font-style: normal;
  font-size: 53px; }
  @media screen and (max-width: 768px) {
    .common_headline em {
      display: inline-block;
      font-size: 8.8vw;
      line-height: 1.1; } }

.common_headline span {
  background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(65%, transparent), color-stop(65%, #fff799), color-stop(90%, #fff799), color-stop(90%, transparent));
  background: -webkit-linear-gradient(top, transparent 0%, transparent 65%, #fff799 65%, #fff799 90%, transparent 90%);
  background: -o-linear-gradient(top, transparent 0%, transparent 65%, #fff799 65%, #fff799 90%, transparent 90%);
  background: linear-gradient(to bottom, transparent 0%, transparent 65%, #fff799 65%, #fff799 90%, transparent 90%); }

.common_headline small {
  font-size: 15px; }

.common_headline2 {
  font-family: 'Noto Serif JP', serif;
  font-weight: 500;
  font-size: 46px;
  text-align: center;
  letter-spacing: 0.03em; }
  @media screen and (max-width: 768px) {
    .common_headline2 {
      font-size: 6.2vw;
      letter-spacing: 0; } }

.common_headline2 b {
  font-weight: 500;
  color: #00b2ee; }

/*--------------------------------------

青ボタン

-------------------------------------*/
.btn_link_blue {
  display: block;
  padding: 14px 0;
  position: relative;
  background: #00b2ee;
  color: #fff !important;
  font-size: 14px;
  text-align: center;
  -webkit-transition: opacity ease 0.4s;
  -o-transition: opacity ease 0.4s;
  transition: opacity ease 0.4s; }
  @media screen and (max-width: 768px) {
    .btn_link_blue {
      padding: 3vw 0;
      font-size: 4.8vw;
      -webkit-transition: none;
      -o-transition: none;
      transition: none; } }

.btn_link_blue:hover {
  opacity: 0.7;
  text-decoration: none; }
  @media screen and (max-width: 768px) {
    .btn_link_blue:hover {
      opacity: 1; } }

.btn_link_blue:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 12px;
  width: 6px;
  height: 6px;
  border-right: 1px solid #fff;
  border-top: 1px solid #fff;
  -webkit-transform: rotate(45deg) translateY(-2px);
  -ms-transform: rotate(45deg) translateY(-2px);
  transform: rotate(45deg) translateY(-2px);
  -webkit-transform-origin: right 50% 0;
  -ms-transform-origin: right 50% 0;
  transform-origin: right 50% 0; }
  @media screen and (max-width: 768px) {
    .btn_link_blue:after {
      right: 4vw;
      width: 2vw;
      height: 2vw;
      border-right: 2px solid #fff;
      border-top: 2px solid #fff; } }

/*--------------------------------------

PICK UP下aboutus

-------------------------------------*/
.aboutus {
  min-width: 1000px;
  position: relative;
  width: 100%;
  background: #fff;
  padding-top: 55px;
  padding-bottom: 80px; }
  @media screen and (max-width: 768px) {
    .aboutus {
      min-width: 0;
      padding-top: 55px;
      padding-bottom: 80px; } }

.aboutus_lead {
  padding-top: 30px;
  text-align: center;
  line-height: 1.9;
  font-size: 16px;
  letter-spacing: 0.03em; }
  @media screen and (max-width: 768px) {
    .aboutus_lead {
      padding: 5vw 2vw 0 2vw;
      font-size: 3.5vw;
      text-align: left; } }

.aboutus_link {
  padding-top: 30px;
  text-align: center; }

.aboutus_link a {
  font-size: 16px;
  color: #00b2ee;
  text-decoration: underline; }
  @media screen and (max-width: 768px) {
    .aboutus_link a {
      font-size: 3.5vw; } }

.aboutus_link a:after {
  content: "　>"; }

.aboutus_link a:hover {
  text-decoration: none; }

/*--------------------------------------

3大特長

-------------------------------------*/
.feature {
  min-width: 1000px;
  position: relative;
  width: 100%;
  border-top: 2px solid #f4f4f4;
  padding-top: 70px;
  padding-bottom: 70px;
  background: url(https://jr.cocojuku.jp/common/base/images/bg_03.png) left top no-repeat;
  background-size: auto 100%; }
  @media screen and (max-width: 768px) {
    .feature {
      min-width: 0;
      background: url(/images/top/featureBG_sp.png) center top no-repeat;
      background-size: cover;
      padding-top: 8vw;
      padding-bottom: 10vw; } }

@media screen and (max-width: 768px) {
  .feature .inner1000 {
    width: 100%; } }

.sp_full_image {
  display: none; }
  @media screen and (max-width: 768px) {
    .sp_full_image {
      display: block;
      width: 100%;
      padding-top: 6vw; } }

.sp_full_image img {
  max-width: 100%; }

.feature_list {
  width: 820px;
  margin: 0 auto;
  padding-top: 30px; }
  @media screen and (max-width: 768px) {
    .feature_list {
      width: 93.48%;
      margin: 0 auto;
      padding-top: 6vw; } }

.feature_list li {
  width: 100%;
  background: #fff;
  height: 150px;
  border-radius: 25px 0 0 25px;
  -webkit-box-shadow: 2px 2px 0 2px rgba(0, 0, 0, 0.1);
  box-shadow: 2px 2px 0 2px rgba(0, 0, 0, 0.1);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center; }
  @media screen and (max-width: 768px) {
    .feature_list li {
      width: 96%;
      margin: 0 auto;
      background: none;
      height: auto;
      border-radius: 0;
      -webkit-box-shadow: none;
      box-shadow: none; } }

.feature_list li + li {
  margin-top: 20px; }
  @media screen and (max-width: 768px) {
    .feature_list li + li {
      margin-top: 6vw; } }

.feature_list li:nth-child(1) {
  background: #fff url(/images/top/feature_ph01_pc.jpg) no-repeat right 5px center; }

.feature_list li:nth-child(2) {
  background: #fff url(/images/top/feature_ph02_pc.jpg) no-repeat right 5px center; }

.feature_list li:nth-child(3) {
  background: #fff url(/images/top/feature_ph03_pc.jpg) no-repeat right 5px center; }

@media screen and (max-width: 768px) {
  .feature_list li:nth-child(1),
  .feature_list li:nth-child(2),
  .feature_list li:nth-child(3) {
    background: none; } }

.feature_num {
  width: 150px;
  text-align: center; }
  @media screen and (max-width: 768px) {
    .feature_num {
      width: 20%; } }

.feature_num img {
  width: 90px; }
  @media screen and (max-width: 768px) {
    .feature_num img {
      max-width: 100%; } }

.feature_subhead {
  font-size: 21px;
  color: #00b2ee;
  font-weight: 500;
  font-family: 'Noto Sans JP', sans-serif; }
  @media screen and (max-width: 768px) {
    .feature_subhead {
      padding-left: 5vw;
      font-size: 4.4vw; } }

.feature_subhead b {
  font-size: 30px;
  background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(65%, transparent), color-stop(65%, #fff799), color-stop(90%, #fff799), color-stop(90%, transparent));
  background: -webkit-linear-gradient(top, transparent 0%, transparent 65%, #fff799 65%, #fff799 90%, transparent 90%);
  background: -o-linear-gradient(top, transparent 0%, transparent 65%, #fff799 65%, #fff799 90%, transparent 90%);
  background: linear-gradient(to bottom, transparent 0%, transparent 65%, #fff799 65%, #fff799 90%, transparent 90%);
  letter-spacing: 0.03em; }
  @media screen and (max-width: 768px) {
    .feature_subhead b {
      font-size: 5vw; } }

.btn_feature {
  padding-top: 50px;
  width: 250px;
  margin: 0 auto; }
  @media screen and (max-width: 768px) {
    .btn_feature {
      padding-top: 6vw;
      width: 80%; } }

/*--------------------------------------

コース

-------------------------------------*/
.course {
  min-width: 1000px;
  position: relative;
  width: 100%;
  margin-top: 3px;
  padding-top: 70px;
  padding-bottom: 60px;
  border-top: 2px solid #f4f4f4;
  background: #fff url(/images/top/courseBG.png); }
  @media screen and (max-width: 768px) {
    .course {
      min-width: 0;
      margin-top: 0;
      padding-top: 8vw;
      padding-bottom: 10vw;
      border-top: none; } }

.course_subhead {
  width: calc(100% - 40px);
  margin: 0 auto 0 0;
  margin-top: 45px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  background: #00b2ee;
  height: 80px;
  padding-top: 12px;
  padding-left: 40px;
  position: relative;
  font-size: 40px;
  color: #fff;
  text-align: center;
  font-family: 'Noto Serif JP', serif;
  font-weight: 500;
  letter-spacing: 0.05em; }
  @media screen and (max-width: 768px) {
    .course_subhead {
      margin-top: 6vw;
      padding-top: 16px;
      font-size: 28px; } }

.course_subhead:before {
  content: "";
  display: block;
  position: absolute;
  left: calc(100% - 19px);
  top: -18px;
  border: 30px solid transparent;
  border-right: 30px solid #00b2ee;
  width: 0;
  height: 0;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
  -webkit-transform-origin: bottom right;
  -ms-transform-origin: bottom right;
  transform-origin: bottom right; }

.course_subhead:after {
  content: "";
  display: block;
  position: absolute;
  left: 100%;
  top: 40px;
  width: 40px;
  height: 40px;
  background: #00b2ee; }

.course_introduce {
  width: 100%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border: 2px solid #00b2ee;
  background: #fff;
  padding: 32px; }
  @media screen and (max-width: 768px) {
    .course_introduce {
      padding: 3.5vw; } }

.course_list {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between; }

.course_list li {
  width: 460px;
  padding: 30px 0;
  background: #fffbe2; }
  @media screen and (max-width: 768px) {
    .course_list li {
      width: 100%;
      padding: 6vw 0; } }

.course_list li + li {
  margin-top: 15px; }
  @media screen and (max-width: 768px) {
    .course_list li + li {
      margin-top: 4vw; } }

.course_name {
  width: 400px;
  margin: 0 auto;
  border: 1px solid #46aa15;
  border-radius: 25px;
  padding: 6px 0;
  background: #fff;
  text-align: center;
  color: #46aa15;
  font-weight: 500;
  font-family: 'Noto Sans JP', sans-serif;
  font-size: 26px;
  line-height: 1.1; }
  @media screen and (max-width: 768px) {
    .course_name {
      width: 90%;
      padding: 2vw 0;
      font-size: 5.4vw; } }

.course_info {
  width: 400px;
  margin: 0 auto; }
  @media screen and (max-width: 768px) {
    .course_info {
      width: 90%; } }

.course_catch {
  padding-top: 20px;
  text-align: center; }
  @media screen and (max-width: 768px) {
    .course_catch {
      padding-top: 3vw; } }

.course_catch span {
  display: inline-block;
  padding: 1px 2em 3px;
  font-weight: 500;
  font-family: 'Noto Sans JP', sans-serif;
  background: #46aa15;
  color: #fff;
  font-size: 16px; }
  @media screen and (max-width: 768px) {
    .course_catch span {
      padding: 1vw 1em;
      font-size: 3.6vw; } }

.course_target {
  padding-top: 13px;
  text-align: center;
  color: #46aa15;
  font-weight: 500;
  font-family: 'Noto Sans JP', sans-serif;
  font-size: 25px; }
  @media screen and (max-width: 768px) {
    .course_target {
      padding-top: 3vw;
      font-size: 5.4vw; } }

.course_text {
  padding-top: 20px;
  font-size: 16px;
  line-height: 1.8; }
  @media screen and (max-width: 768px) {
    .course_text {
      font-size: 3vw; } }

.btn_course {
  padding-top: 25px;
  width: 250px;
  margin: 0 auto; }
  @media screen and (max-width: 768px) {
    .btn_course {
      padding-top: 4vw;
      width: 88%; } }

.course_list li.wide {
  width: 100%;
  background: #fffbe2 url(/images/top/course_phBG_pc.jpg) no-repeat 60px 110px; }
  @media screen and (max-width: 768px) {
    .course_list li.wide {
      background: #fffbe2 url(/images/top/course_phBG_sp.jpg) no-repeat center 40vw;
      background-size: 90% auto; } }

.wide .course_info {
  width: 500px;
  margin: 0 40px 0 auto; }
  @media screen and (max-width: 768px) {
    .wide .course_info {
      width: 90%;
      margin: 0 auto; } }

.wide .course_name {
  width: 880px;
  border: 1px solid #ff8d12;
  color: #ff8d12; }
  @media screen and (max-width: 768px) {
    .wide .course_name {
      width: 90%; } }

.wide .course_catch {
  padding-top: 55px; }
  @media screen and (max-width: 768px) {
    .wide .course_catch {
      padding-top: 3vw; } }

.wide .course_catch span {
  background: #ff8d12; }

.wide .course_target {
  color: #ff8d12; }

@media screen and (max-width: 768px) {
  .wide .course_text {
    padding-top: 40vw; } }

.wide .btn_course {
  padding-top: 45px; }
  @media screen and (max-width: 768px) {
    .wide .btn_course {
      padding-top: 4vw; } }

/*--------------------------------------

料金・レッスン内容

-------------------------------------*/
.course_more {
  min-width: 1000px;
  position: relative;
  width: 100%;
  background: #eaf9ff;
  padding-top: 42px;
  padding-bottom: 80px; }
  @media screen and (max-width: 768px) {
    .course_more {
      min-width: 0;
      padding-top: 8vw;
      padding-bottom: 10vw; } }

.course_more:after {
  content: "";
  display: block;
  position: absolute;
  left: 50%;
  top: -30px;
  margin-left: -80px;
  border: 80px solid transparent;
  border-top: 45px solid #00b2ee;
  width: 0;
  height: 0; }
  @media screen and (max-width: 768px) {
    .course_more:after {
      top: -5vw;
      margin-left: -18vw;
      border: 18vw solid transparent;
      border-top: 10vw solid #00b2ee; } }

.coruse_more_list {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding-top: 30px; }
  @media screen and (max-width: 768px) {
    .coruse_more_list {
      -webkit-box-pack: start;
      -ms-flex-pack: start;
      justify-content: flex-start;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      padding-top: 6vw; } }

.coruse_more_list li {
  width: 164px; }
  @media screen and (max-width: 768px) {
    .coruse_more_list li {
      width: 33.33%;
      margin-bottom: 3vw; } }

.coruse_more_list li a {
  display: block;
  width: 154px;
  margin: 0 auto;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  text-align: center; }
  @media screen and (max-width: 768px) {
    .coruse_more_list li a {
      width: 94%; } }

.coruse_more_list li a img {
  opacity: 1;
  -webkit-transition: opacity ease 0.4s;
  -o-transition: opacity ease 0.4s;
  transition: opacity ease 0.4s; }
  @media screen and (max-width: 768px) {
    .coruse_more_list li a img {
      max-width: 100%;
      -webkit-transition: none;
      -o-transition: none;
      transition: none; } }

.coruse_more_list li a:hover {
  text-decoration: none; }

.coruse_more_list li a:hover img {
  opacity: 0.7; }
  @media screen and (max-width: 768px) {
    .coruse_more_list li a:hover img {
      opacity: 1; } }

.coruse_more_list li:nth-child(1) a {
  border: 3px solid #9fd731;
  background: #9fd731; }

.coruse_more_list li:nth-child(2) a {
  border: 3px solid #f5ab00;
  background: #f5ab00; }

.coruse_more_list li:nth-child(3) a {
  border: 3px solid #4786c9;
  background: #4786c9; }

.coruse_more_list li:nth-child(4) a {
  border: 3px solid #ee845b;
  background: #ee845b; }

.coruse_more_list li:nth-child(5) a {
  border: 3px solid #1db8c1;
  background: #1db8c1; }

.coruse_more_icon {
  width: 100%;
  text-align: center; }

.coruse_more_text {
  text-align: center;
  height: 55px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  position: relative;
  color: #fff;
  font-size: 18px;
  line-height: 1.1; }
  @media screen and (max-width: 768px) {
    .coruse_more_text {
      height: 10vw;
      font-size: 3.6vw; } }

.coruse_more_text small {
  font-size: 14px; }
  @media screen and (max-width: 768px) {
    .coruse_more_text small {
      font-size: 3.2vw; } }

.coruse_more_text:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 18px;
  width: 8px;
  height: 8px;
  border-right: 1px solid #fff;
  border-top: 1px solid #fff;
  -webkit-transform: rotate(45deg) translateY(-2px);
  -ms-transform: rotate(45deg) translateY(-2px);
  transform: rotate(45deg) translateY(-2px);
  -webkit-transform-origin: right 50% 0;
  -ms-transform-origin: right 50% 0;
  transform-origin: right 50% 0; }
  @media screen and (max-width: 768px) {
    .coruse_more_text:after {
      right: 3vw; } }

/*--------------------------------------

お近くの教室を探す

-------------------------------------*/
.search_class {
  min-width: 1000px;
  position: relative;
  width: 100%;
  background: #fff;
  padding-top: 70px; }
  @media screen and (max-width: 768px) {
    .search_class {
      min-width: 0;
      padding-top: 8vw; } }

.search_class .common_headline2 span {
  padding: 0 75px 5px 75px;
  background: url(/images/top/icon_search.png) no-repeat right bottom; }
  @media screen and (max-width: 768px) {
    .search_class .common_headline2 span {
      padding: 0 5vw 2vw 5vw;
      background: url(/images/top/icon_search.png) no-repeat right bottom;
      background-size: 100% auto; } }

.search_class_box {
  width: 100%;
  padding-top: 140px;
  padding-bottom: 140px;
  background: url(https://jr.cocojuku.jp/images/index/2017_search_img.png) no-repeat left 25px; }
  @media screen and (max-width: 768px) {
    .search_class_box {
      padding-top: 6vw;
      padding-bottom: 6vw;
      background: none; } }

.search_class_text {
  width: 430px;
  margin: 0 45px 0 auto;
  font-size: 20px;
  text-align: center; }
  @media screen and (max-width: 768px) {
    .search_class_text {
      width: 100%;
      margin: 0;
      font-size: 4vw; } }

.search_class_list {
  width: 430px;
  margin: 0 45px 0 auto;
  padding-top: 35px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }
  @media screen and (max-width: 768px) {
    .search_class_list {
      width: 100%;
      margin: 0;
      padding-top: 6vw; } }

.search_class_list li {
  width: 210px;
  margin-bottom: 10px; }
  @media screen and (max-width: 768px) {
    .search_class_list li {
      width: 48%;
      margin-bottom: 2.5vw; } }

.search_class_list li a {
  display: block;
  width: 100%;
  position: relative;
  background: #00b2ee;
  border-radius: 8px;
  padding: 12px 0;
  font-size: 16px;
  color: #fff;
  text-align: center;
  -webkit-transition: background-color ease .4s;
  -o-transition: background-color ease .4s;
  transition: background-color ease .4s; }
  @media screen and (max-width: 768px) {
    .search_class_list li a {
      padding: 3vw 0;
      font-size: 3.3vw;
      -webkit-transition: none;
      -o-transition: none;
      transition: none; } }

.search_class_list li a:hover {
  background-color: rgba(0, 178, 238, 0.7);
  text-decoration: none; }
  @media screen and (max-width: 768px) {
    .search_class_list li a:hover {
      background: #00b2ee; } }

.search_class_list li a:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 14px;
  width: 8px;
  height: 8px;
  border-right: 1px solid #fff;
  border-top: 1px solid #fff;
  -webkit-transform: rotate(45deg) translateY(-2px);
  -ms-transform: rotate(45deg) translateY(-2px);
  transform: rotate(45deg) translateY(-2px);
  -webkit-transform-origin: right 50% 0;
  -ms-transform-origin: right 50% 0;
  transform-origin: right 50% 0; }

/*--------------------------------------

声

-------------------------------------*/
.voice {
  min-width: 1000px;
  position: relative;
  width: 100%;
  background: #eaf9ff;
  padding-top: 55px;
  padding-bottom: 70px; }
  @media screen and (max-width: 768px) {
    .voice {
      min-width: 0;
      width: 93.48%;
      margin: 0 auto; } }

.voice_title {
  text-align: center; }
  @media screen and (max-width: 768px) {
    .voice_title {
      width: 100%; } }

@media screen and (max-width: 768px) {
  .voice_title img {
    max-width: 42%; } }

.voice_txt {
  padding-top: 40px;
  font-size: 16px;
  text-align: center; }
  @media screen and (max-width: 768px) {
    .voice_txt {
      padding-top: 6vw;
      font-size: 3.5vw;
      text-align: left; } }

.voice_bnr {
  padding-top: 25px;
  text-align: center; }
  @media screen and (max-width: 768px) {
    .voice_bnr {
      width: 100%; } }

@media screen and (max-width: 768px) {
  .voice_bnr img {
    max-width: 100%; } }

/*--------------------------------------

まずは無料体験＆フロー

-------------------------------------*/
.flow {
  min-width: 1000px;
  position: relative;
  width: 100%;
  background: #fff;
  padding-top: 70px;
  padding-bottom: 30px; }
  @media screen and (max-width: 768px) {
    .flow {
      min-width: 0;
      width: 93.48%;
      margin: 0 auto; } }

@media screen and (max-width: 768px) {
  .flow .common_headline {
    font-size: 4.4vw; } }

.flow_lead {
  padding-top: 260px;
  background: url(/images/top/flow_phBG_pc.jpg) no-repeat center 45px;
  background-size: 100% auto;
  text-align: center;
  font-size: 16px;
  line-height: 1.5; }
  @media screen and (max-width: 768px) {
    .flow_lead {
      padding-top: 38vw;
      background: url(/images/top/flow_phBG_sp.jpg) no-repeat center 4vw;
      background-size: 100% auto;
      text-align: left;
      font-size: 3.5vw; } }

.flow_box {
  width: 100%;
  margin-top: 50px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }
  @media screen and (max-width: 768px) {
    .flow_box {
      margin-top: 6vw;
      border: 1px solid #00b2ee; } }

.flow_headline {
  position: relative;
  font-family: 'Noto Serif JP', serif;
  font-weight: 500;
  font-size: 33px;
  text-align: center;
  letter-spacing: 0.03em;
  line-height: 1.1;
  color: #00b2ee; }
  @media screen and (max-width: 768px) {
    .flow_headline {
      font-size: 3.4vw;
      text-align: left; } }

.flow_headline span {
  display: inline-block;
  padding: 0 26px;
  background: #fff;
  position: relative;
  z-index: 10; }
  @media screen and (max-width: 768px) {
    .flow_headline span {
      width: calc(100% - 10vw);
      padding: 3vw 0 3vw 10vw;
      background: url(/images/top/icon_flow.png) no-repeat 3vw center;
      background-size: 4vw auto; } }

.flow_headline:after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: calc(50% - 1px);
  width: 100%;
  height: 3px;
  border-radius: 2px;
  background: #e9e9e9;
  z-index: 1; }
  @media screen and (max-width: 768px) {
    .flow_headline:after {
      left: auto;
      right: 0;
      top: 0;
      width: 10vw;
      height: 10vw;
      border-radius: 0;
      background: #00b2ee;
      z-index: 1; } }

@media screen and (max-width: 768px) {
  .flow_headline:before {
    content: "＋";
    display: block;
    position: absolute;
    width: 10vw;
    text-align: center;
    right: 0;
    top: 2vw;
    color: #fff;
    font-size: 5vw;
    z-index: 10; } }

@media screen and (max-width: 768px) {
  .flow_headline.isOpen:before {
    content: "－"; } }

.flow_sp_box {
  display: block; }
  @media screen and (max-width: 768px) {
    .flow_sp_box {
      display: none; } }

.flow_list {
  width: 92%;
  margin: 0 auto;
  padding-top: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between; }
  @media screen and (max-width: 768px) {
    .flow_list {
      width: 100%;
      padding-top: 0;
      display: block; } }

.flow_list li {
  width: 155px;
  height: 155px;
  border-radius: 50%;
  background: #fffbe2;
  position: relative; }
  @media screen and (max-width: 768px) {
    .flow_list li {
      width: 92%;
      height: auto;
      border-radius: 0;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      padding: 3vw 4%;
      margin-bottom: 10vw; } }

.flow_list li + li:after {
  content: "";
  position: absolute;
  top: 50%;
  right: calc(100% + 16px);
  width: 12px;
  height: 12px;
  border-right: 2px solid #00b2ee;
  border-top: 2px solid #00b2ee;
  -webkit-transform: rotate(45deg) translateY(-2px);
  -ms-transform: rotate(45deg) translateY(-2px);
  transform: rotate(45deg) translateY(-2px);
  -webkit-transform-origin: right 50% 0;
  -ms-transform-origin: right 50% 0;
  transform-origin: right 50% 0; }
  @media screen and (max-width: 768px) {
    .flow_list li + li:after {
      top: auto;
      right: auto;
      bottom: calc(100% + 3vw);
      left: 50%;
      width: 12px;
      height: 12px;
      border-right: 2px solid #00b2ee;
      border-top: none;
      border-bottom: 2px solid #00b2ee; } }

@media screen and (max-width: 768px) {
  .flow_list li:last-child {
    margin-bottom: 0; } }

.flow_num {
  padding-top: 30px;
  text-align: center; }
  @media screen and (max-width: 768px) {
    .flow_num {
      padding-top: 0;
      width: 20vw; } }

.flow_num span {
  display: inline-block;
  background: #00b2ee;
  border-radius: 3px;
  position: relative;
  padding: 3px 1.5em;
  font-family: 'Noto Serif JP', serif;
  font-weight: 500;
  font-size: 12px;
  line-height: 1.1;
  color: #fff;
  letter-spacing: 0.05em; }
  @media screen and (max-width: 768px) {
    .flow_num span {
      padding: 1vw 1.3em;
      font-size: 3vw; } }

.flow_num span:after {
  content: "";
  display: block;
  position: absolute;
  left: 50%;
  top: 100%;
  margin-left: -5px;
  border: 3px solid transparent;
  border-top: 5px solid #00b2ee;
  width: 0;
  height: 0; }
  @media screen and (max-width: 768px) {
    .flow_num span:after {
      left: calc(100% - 1px);
      top: calc(50% - 1.2vw);
      margin-left: 0;
      border: 1.2vw solid transparent;
      border-left: 2vw solid #00b2ee; } }

.flow_text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 80px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  line-height: 1.3;
  text-align: center;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.05em; }
  @media screen and (max-width: 768px) {
    .flow_text {
      display: block;
      height: auto;
      padding-left: 4vw;
      text-align: left;
      font-size: 3.8vw; } }

.lesson_caution {
  padding-top: 24px;
  font-size: 14px;
  text-align: right; }
  @media screen and (max-width: 768px) {
    .lesson_caution {
      padding-top: 3vw;
      padding-bottom: 3vw;
      font-size: 3.1vw;
      text-align: center; } }

/*---------------------------------------------------------------------------*/
.important_news_area {
  background: #fff;
  padding: 25px 0 58px; }
  @media screen and (max-width: 768px) {
    .important_news_area {
      padding: 5vw 0 8vw; } }

.news_box {
  /*	border: 3px solid #da240b;*/
  border: 3px solid #ff8d12;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
  border-radius: 3px;
  margin: 0 auto;
  padding: 0 0 24px;
  width: 925px; }
  @media screen and (max-width: 768px) {
    .news_box {
      width: 93.48%;
      border: 2px solid #ff8d12;
      padding: 10px 0; } }

.news_box .news_box_title {
  font-size: 24px;
  font-weight: normal;
  padding: 34px 0 12px;
  text-align: center; }
  @media screen and (max-width: 768px) {
    .news_box .news_box_title {
      padding: 6vw 0 2vw;
      font-size: 4vw;
      margin: 0; } }

.news_box .news_box_title span {
  /*	background: url(/common/base/images/icon_caution.png) left center no-repeat;*/
  display: inlne-block;
  line-height: 1;
  /*	padding: 10px 0 10px 66px;*/
  padding: 10px 0 10px 0px;
  vertical-align: top; }
  @media screen and (max-width: 768px) {
    .news_box .news_box_title span {
      background-size: 25px auto;
      padding: 5px 0 5px 0px; } }

.news_box .news_title {
  text-align: center; }

.news_box dl {
  border-bottom: 1px solid #e8e8e8;
  font-size: 0;
  margin: 0 50px;
  padding: 12px 30px 14px 10px; }
  @media screen and (max-width: 768px) {
    .news_box dl {
      border-bottom: 1px dotted #e6e6e6;
      margin: 0 5vw;
      padding: 8px 0; } }

.news_box dl dt,
.news_box dl dd {
  color: #414141;
  display: inline-block;
  font-size: 13px;
  vertical-align: top; }

.news_box dl dt {
  width: 100px; }

.news_box dl dd {
  max-width: 680px; }
  @media screen and (max-width: 768px) {
    .news_box dl dd {
      font-size: 2.5vw; } }

.news_box dl dd img {
  vertical-align: top; }
  @media screen and (max-width: 768px) {
    .news_box dl dd img {
      height: auto;
      vertical-align: top;
      width: 14px; } }

/*---------------------------------------------------------------------------*/
.btn_near_search {
  margin: 40px auto 45px;
  width: 735px; }

.btn_near_search a {
  background: url(/common/base/images/icon_02.png) 97% center no-repeat #00b2ee;
  display: block;
  padding: 26px 0 28px;
  text-align: center; }

/*---------------------------------------------------------------------------*/
.search_area {
  /*教室を調べる*/
  /*background: url(/common/base/images/bg_01.png) left top repeat;*/
  padding: 60px 0 68px;
  text-align: center; }

.search_area .search_title {
  margin: 0 0 28px; }

.search_area .search_box {
  position: relative; }

.search_area .search_box .search_txt {
  left: 560px;
  position: absolute;
  top: 75px;
  z-index: 8;
  font-size: 20px; }

.search_area .search_box .search_map {
  text-align: left; }

.search_area .search_box .map_btn_list {
  font-size: 0;
  left: 515px;
  position: absolute;
  text-align: left;
  top: 172px;
  width: 430px; }

.search_area .search_box .map_btn_list li {
  display: inline-block;
  margin: 0 0 10px;
  vertical-align: top; }

.search_area .search_box .map_btn_list li:nth-of-type(2n) {
  margin: 0 0 10px 10px; }

/*.search_area .search_box .map_line_01 {
	left: 635px;
	position: absolute;
	top: 200px;
	z-index: 6;
}
.search_area .search_box .map_line_02 {
	left: 602px;
	position: absolute;
	top: 296px;
	z-index: 6;
}
.search_area .search_box .map_line_03 {
	left: 580px;
	position: absolute;
	top: 374px;
	z-index: 6;
}
.search_area .search_box .map_line_04 {
	left: 472px;
	position: absolute;
	top: 288px;
	z-index: 6;
}
.search_area .search_box .map_line_05 {
	left: 510px;
	position: absolute;
	top: 392px;
	z-index: 6;
}
.search_area .search_box .map_line_06 {
	left: 265px;
	position: absolute;
	top: 365px;
	z-index: 6;
}
.search_area .search_box .map_line_07 {
	left: 210px;
	position: absolute;
	top: 454px;
	z-index: 6;
}
.search_area .search_box .btn_map_01 {
	left: 736px;
	position: absolute;
	top: 178px;
	z-index: 7;
}
.search_area .search_box .btn_map_02 {
	left: 743px;
	position: absolute;
	top: 272px;
	z-index: 7;
}
.search_area .search_box .btn_map_03 {
	left: 700px;
	position: absolute;
	top: 368px;
	z-index: 7;
}
.search_area .search_box .btn_map_04 {
	left: 348px;
	position: absolute;
	top: 242px;
	z-index: 7;
}
.search_area .search_box .btn_map_05 {
	left: 484px;
	position: absolute;
	top: 463px;
	z-index: 7;
}
.search_area .search_box .btn_map_06 {
	left: 125px;
	position: absolute;
	top: 319px;
	z-index: 7;
}
.search_area .search_box .btn_map_07 {
	left: 2px;
	position: absolute;
	top: 444px;
	z-index: 7;
}*/
/*---------------------------------------------------------------------------*/
.program_area {
  background: url(/images/index/program_bg.png) center center no-repeat;
  background-size: 100% 100%;
  padding: 95px 0 90px; }

.program_area .program_title {
  margin: 0 0 55px;
  text-align: center; }

.program_area .level_area {
  margin: 0 0 60px; }

.program_area .level_area .level_list {
  font-size: 0;
  text-align: center; }

.program_area .level_area .level_list li {
  display: inline-block;
  margin: 0 0 0 10px;
  vertical-align: top; }

.program_area .level_area .level_list li:first-of-type {
  margin: 0; }

.program_area .level_area .level_list li a:hover {
  text-decoration: none; }

.program_area .level_area .level_list li .level_text {
  background: url(/common/base/images/icon_02.png) 95% center no-repeat;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  color: #ffffff;
  font-size: 17px;
  font-weight: normal;
  height: 52px;
  line-height: 20px;
  padding: 6px 0 0;
  text-align: center; }

.program_area .level_area .level_list li .level_text span {
  font-size: 14px; }

.program_area .level_area .level_list li:nth-of-type(1) {
  background: #95c818;
  border: 3px solid #95c818; }

.program_area .level_area .level_list li:nth-of-type(2) {
  background: #f5ab00;
  border: 3px solid #f5ab00; }

.program_area .level_area .level_list li:nth-of-type(3) {
  background: #4786c9;
  border: 3px solid #4786c9; }

.program_area .level_area .level_list li:nth-of-type(4) {
  background: #ef8453;
  border: 3px solid #ef8453; }

.program_area .level_area .level_list li:nth-of-type(5) {
  background: #1db8c1;
  border: 3px solid #1db8c1; }

.program_area .level_area .level_list li:nth-of-type(6) {
  background: #46aa15;
  border: 3px solid #46aa15; }

.program_area .level_area .level_list li:nth-of-type(1) .level_text,
.program_area .level_area .level_list li:nth-of-type(5) .level_text {
  padding: 16px 0 0; }

.program_area .level_area .level_list li:nth-of-type(6) .level_text {
  font-size: 14px; }

.program_area .level_area .level_list li:nth-of-type(6) {
  margin: 0 0 0 36px;
  position: relative; }

.program_area .level_area .level_list li:nth-of-type(6)::after {
  background: #d6d6d6;
  content: '';
  height: 183px;
  left: -22px;
  position: absolute;
  top: 0;
  width: 1px; }

/*.program_area .program_parts_01 {
	border-bottom: 1px solid #dcdcdc;
	margin: 0 0 1px;
	padding: 0 0 28px;
}
.program_area .program_parts_02 {
	border-top: 1px solid #ffffff;
	margin: 0 0 45px;
	padding: 45px 0 0;
}
.program_area .program_parts_01 .box_l {
	background: #ffffff;
	-moz-box-shadow: 0 0 4px #cccccc;
	-webkit-box-shadow: 0 0 4px #cccccc;
	box-shadow: 0 0 4px #cccccc;
	float: left;
	width: 490px;
}
.program_area .program_parts_01 .box_r {
	background: #ffffff;
	-moz-box-shadow: 0 0 4px #cccccc;
	-webkit-box-shadow: 0 0 4px #cccccc;
	box-shadow: 0 0 4px #cccccc;
	float: right;
	width: 490px;
}
.program_area .program_box {
	position: relative;
}
.program_area .program_parts_02 .program_box {
	background: #ffffff;
	-moz-box-shadow: 0 0 4px #cccccc;
	-webkit-box-shadow: 0 0 4px #cccccc;
	box-shadow: 0 0 4px #cccccc;
	margin: 0 auto;
	width: 990px;
}
.program_area .program_box .program_icon {
	left: 15px;
	position: absolute;
	top: -33px;
}
.program_area .program_box .program_img {
}
.program_area .program_box .program_img a {
	display: block;
	padding: 30px 0 35px;
	text-align: center;
}
.program_area .program_txt {
	color: #ffffff;
	font-size: 15px;
	padding: 22px 35px 25px;
	text-align: left;
}
.program_area .program_txt.bg_g {
	background: #8ed14d;
}
.program_area .program_txt.bg_b {
	background: #00afec;
}
.program_area .program_img_l {
	float: left;
}
.program_area .program_img_l a {
	display: block;
	padding: 28px 32px;
}
.program_area .program_txt_r {
	font-size: 15px;
	padding: 31px 10px 0 425px;
}*/
.program_area .btn_program {
  margin: 0 auto;
  width: 360px; }

.program_area .btn_program a {
  background: url(/common/base/images/icon_03.png) 95% center no-repeat #00b2ee;
  color: #ffffff;
  font-size: 14px;
  display: block;
  padding: 14px 0;
  text-align: center; }

.program_area .btn_program a:hover {
  text-decoration: none; }

/*---------------------------------------------------------------------------*/
.reason_area {
  background: url(/common/base/images/bg_01.png) left top repeat;
  -webkit-box-shadow: 0 3px 3px -3px #eeeeee;
  -moz-box-shadow: 0 3px 3px -3px #eeeeee;
  box-shadow: 0 3px 3px -3px #eeeeee;
  overflow: hidden;
  padding: 75px 0 45px;
  text-align: center; }

.reason_area .contents_inner {
  position: relative;
  z-index: 8; }

.reason_area .reason_title {
  margin: 0 0 60px; }

.reason_area .reason_txt {
  font-size: 16px;
  line-height: 1.8;
  margin: 0 0 35px; }

.reason_area .reason_item_01 {
  left: -275px;
  position: absolute;
  top: -15px;
  z-index: 5; }

.reason_area .reason_item_02 {
  position: absolute;
  right: -130px;
  top: 145px;
  z-index: 5; }

.reason_area .reason_item_03 {
  position: absolute;
  right: 0;
  top: 0;
  z-index: 5; }

.reason_area .reason_item_04 {
  bottom: 0;
  left: -140px;
  position: absolute;
  z-index: 5; }

.reason_area .reason_point {
  margin: 0 0 50px; }

.reason_area .reason_point .reason_point_list {
  font-size: 0;
  text-align: center; }

.reason_area .reason_point .reason_point_list li {
  -moz-box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.4);
  -webkit-box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.4);
  -ms-box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.4);
  box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.4);
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: inline-block;
  margin: 0 7px;
  padding: 6px;
  vertical-align: top;
  width: 300px; }

.reason_area .reason_point .reason_point_list li .reason_point_title {
  background: #00b2ef;
  color: #ffffff;
  font-size: 15px;
  font-weight: bold;
  padding: 7px 0; }

.reason_area .reason_point .reason_point_list li .reason_point_title span {
  background: url(/images/index/2017_reason_icon.png) left center no-repeat;
  padding: 0 0 0 25px; }

.reason_area .reason_point .reason_point_list li .reason_point_text {
  color: #030000;
  font-size: 16px;
  line-height: 24px;
  padding: 10px 0; }

.reason_area .btn_reason {
  margin: 0 auto 30px;
  width: 335px; }

.reason_area .btn_reason a {
  background: url(/common/base/images/icon_03.png) 95% center no-repeat #00b2ee;
  color: #ffffff;
  font-size: 14px;
  display: block;
  padding: 14px 0;
  text-align: center; }

.reason_area .btn_reason a:hover {
  text-decoration: none; }

/*---------------------------------------------------------------------------*/
.lesson_area {
  padding: 85px 0 1px;
  /*	padding: 85px 0 75px;*/
  text-align: center; }

.lesson_area .lesson_title {
  margin: 0 0 58px; }

.lesson_area .lesson_img {
  font-size: 0;
  margin: 0 0 45px;
  text-align: center; }

.lesson_area .lesson_img span {
  display: inline-block;
  vertical-align: top; }

.lesson_area .lesson_txt {
  font-size: 16px;
  margin: 0 0 50px; }

.lesson_area .lesson_flow_title {
  margin: 0 0 25px; }

.lesson_area .lesson_flow {
  font-size: 0;
  margin: 0 0 38px; }

.lesson_area .lesson_flow span {
  display: inline-block;
  margin: 0 0 0 10px;
  vertical-align: top; }

.lesson_area .lesson_flow span:first-child {
  margin: 0; }

.lesson_area .lesson_caution {
  color: #121212;
  font-size: 14px;
  margin: 0 0 55px;
  text-align: right; }

.lesson_area .btn_lesson {
  margin: 0 auto;
  width: 562px; }

.lesson_area .btn_lesson a {
  background: url(/common/base/images/icon_02.png) 95% center no-repeat #ff8d12;
  color: #ffffff;
  display: block;
  font-size: 20px;
  font-weight: bold;
  padding: 20px 0 22px;
  text-align: center; }

.lesson_area .btn_lesson a:hover {
  text-decoration: none; }

/*---------------------------------------------------------------------------*/
.voice_area {
  background: #eaf9ff;
  padding: 60px 0 115px;
  text-align: center; }

.voice_area .voice_title {
  margin: 0 0 28px; }

.voice_area .voice_txt {
  font-size: 17px;
  margin: 0 0 55px; }

/*---------------------------------------------------------------------------*/
.contact_area {
  background: url(/images/index/contact_bg.jpg) center top no-repeat;
  background-size: cover;
  height: 368px;
  overflow: hidden;
  padding: 85px 0 0;
  text-align: center; }

.contact_area .contact_box {
  background: #ffffff;
  -moz-border-radius-topleft: 10px;
  -webkit-border-top-left-radius: 10px;
  border-top-left-radius: 10px;
  -moz-border-radius-topright: 10px;
  -webkit-border-top-right-radius: 10px;
  border-top-right-radius: 10px;
  -moz-box-shadow: 0 -2px 2px #cccccc;
  -webkit-box-shadow: 0 -2px 2px #cccccc;
  box-shadow: 0 -2px 2px #cccccc;
  left: 50%;
  margin: 0 0 0 -524px;
  padding: 30px 0 42px;
  position: absolute;
  top: 85px;
  width: 1048px; }

.contact_area .contact_title {
  color: #00afec;
  font-size: 32px;
  margin: 0 0 3px; }

.contact_area .contact_txt {
  color: #4a4a4a;
  font-size: 16px;
  margin: 0 0 24px; }

.contact_area .contact_txt a {
  color: #00b2ee;
  text-decoration: underline; }

.contact_area .contact_txt a:hover {
  color: #00b2ee;
  text-decoration: none; }

.contact_area .btn_lesson_contact {
  margin: 0 auto 12px;
  width: 560px; }

.contact_area .btn_lesson_contact a {
  background: url(/common/base/images/icon_02.png) 95% center no-repeat #ff8d12;
  color: #ffffff;
  font-size: 20px;
  font-weight: bold;
  display: block;
  padding: 20px 0 22px;
  text-align: center; }

.contact_area .btn_lesson_contact a:hover {
  text-decoration: none; }

.contact_area .contact_tel {
  border-top: 1px solid #d5d5d5;
  font-size: 0;
  margin: 0 auto;
  padding: 30px 0 0;
  width: 950px; }

.contact_area .contact_tel span {
  display: inline-block;
  vertical-align: middle; }

.contact_area .contact_tel span.contact_tel_txt {
  background: #a7a7a7;
  -moz-border-radius: 10px;
  -webkit-border-radius: 10px;
  border-radius: 10px;
  color: #ffffff;
  font-size: 16px;
  margin: 0 30px 0 0;
  padding: 5px 32px; }

/*---------------------------------------------------------------------------*/
.cm_area {
  background: url(/images/index/cm_bg.jpg) center top no-repeat;
  background-size: cover;
  padding: 45px 0;
  text-align: center; }

.cm_area .cm_title,
.cm_area .cm_data {
  display: inline-block;
  vertical-align: middle; }

.cm_area .cm_title {
  margin: 0 135px 0 0; }

.cm_area .cm_data .cm_movie {
  margin: 0 0 20px; }

\
.news_area {
  padding: 45px 0 75px; }

.news_area .news_title {
  font-size: 36px;
  font-weight: normal;
  margin: 0 0 22px;
  text-align: center; }

.news_area dl {
  border-bottom: 1px solid #e8e8e8;
  color: #414141;
  /*	font-size: 0;
	margin: 0 34px 0 52px;
	padding: 20px 10px 15px 5px;*/
  width: 100%;
  margin: 0;
  padding: 20px 0 15px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center; }
  @media screen and (max-width: 768px) {
    .news_area dl {
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      width: 96%;
      margin: 0 auto; } }

/*
.news_area dl dt,
.news_area dl dd {
	display: inline-block;
	vertical-align: top;
}
.news_area dl dt {
	font-size: 14px;
	margin: 0 22px 0 0;
	width: 185px;
}
*/
.news_area dl dt {
  width: 220px;
  padding-left: 25px;
  font-size: 14px; }
  @media screen and (max-width: 768px) {
    .news_area dl dt {
      width: 100%;
      padding-left: 0;
      font-size: 3.1vw; } }

.news_area dl dt img {
  padding: 0 0 0 10px; }
  @media screen and (max-width: 768px) {
    .news_area dl dt img {
      width: 15vw; } }

.news_area dl dd {
  font-size: 14px;
  /*	width: 690px;*/
  width: calc(100% - 245px); }
  @media screen and (max-width: 768px) {
    .news_area dl dd {
      width: 100%;
      font-size: 3.2vw; } }

.news_area dl dd img {
  padding: 0 0 0 5px;
  vertical-align: top; }

.news_area .btn_news {
  margin: 52px auto 0;
  width: 252px; }
  @media screen and (max-width: 768px) {
    .news_area .btn_news {
      width: 80%;
      margin: 0 auto;
      padding-top: 6vw; } }

.news_area .btn_news a {
  background: url(/common/base/images/icon_03.png) 95% center no-repeat #00b2ee;
  color: #ffffff;
  font-size: 14px;
  display: block;
  padding: 14px 0;
  text-align: center; }
  @media screen and (max-width: 768px) {
    .news_area .btn_news a {
      padding: 3vw 0;
      font-size: 4.8vw; } }

.news_area .btn_news a:hover {
  text-decoration: none; }

/*---------------------------------------------------------------------------*/
.contents_img_area {
  margin: 0 0 10px;
  overflow: hidden; }
  @media screen and (max-width: 768px) {
    .contents_img_area {
      display: none; } }

.contents_img_area .contents_img_list {
  font-size: 0;
  text-align: center;
  width: 100%; }

.contents_img_area .contents_img_list li {
  display: inline-block;
  vertical-align: top;
  width: 25%; }

.contents_img_area .contents_img_list li img {
  height: auto;
  width: 100%; }

/*---------------------------------------------------------------------------*/
.ssc_area {
  background: url(/images/index/ssc_bg.png) center bottom no-repeat;
  background-size: cover;
  border-bottom: 7px solid #dbf7fa;
  border-top: 7px solid #dbf7fa;
  margin: 30px 0 0;
  overflow: hidden;
  padding: 25px 0 20px;
  text-align: center; }

.ssc_area .ssc_title {
  margin: 0 0 10px; }

.ssc_area .ssc_data {
  height: 406px;
  position: relative; }

.ssc_area .ssc_data .ssc_img {
  left: 50%;
  margin: 0 0 0 -520px;
  position: absolute;
  top: 0; }

.ssc_area .ssc_data .ssc_btn {
  bottom: 55px;
  position: absolute;
  right: 192px; }

.mainli li {
  display: inline-block; }

.bnr_area2 {
  text-align: center;
  margin: 40px auto 40px;
  max-width: 1200px; }
  @media screen and (max-width: 768px) {
    .bnr_area2 {
      width: 96%;
      margin: 15px auto; } }

@media screen and (max-width: 768px) {
  .bnr_area2 h3 img {
    max-width: 100%; } }

.bnr_area3 {
  text-align: center;
  margin: 0 0 40px; }

.bnr_area2 ul {
  margin-left: -10px;
  margin-top: 30px; }

.bnr_area2 li {
  display: inline-block;
  margin-left: 10px;
  margin-bottom: 5px; }
  @media screen and (max-width: 768px) {
    .bnr_area2 li {
      display: block;
      margin-bottom: 3vw; } }

@media screen and (max-width: 768px) {
  .bnr_area2 li img {
    max-width: 100%; } }

.link_txt a {
  color: #00b2ee; }

.link_txt a:hover {
  text-decoration: none; }

/*20180115 Facebook追加---------------------------------------------------------------------*/
.news_area .contents_inner {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  /*IE10*/
  display: -webkit-flex;
  display: flex; }

.news_area dl dt, .news_area dl dd {
  display: block; }

.news {
  /*	width: 48%;*/
  width: 70%;
  margin-left: auto;
  margin-right: auto; }

.news_area dl dd {
  margin-top: 8px;
  width: auto; }

.news + .news {
  width: 45%;
  margin-left: 7%; }

/*20181026 追加---------------------------------------------------------------------*/
.board_off10k {
  padding-top: 32px; }

.board_off10k p {
  text-align: center; }

/*--------------------------------------

お知らせ

-------------------------------------*/
.news_area {
  padding-top: 70px;
  padding-bottom: 70px; }
  @media screen and (max-width: 768px) {
    .news_area {
      padding-top: 10vw;
      padding-bottom: 12vw; } }

@media screen and (max-width: 768px) {
  .news {
    width: 93.48%; } }

.news_area .common_headline2 {
  margin-bottom: 20px;
  font-size: 40px; }
  @media screen and (max-width: 768px) {
    .news_area .common_headline2 {
      margin-bottom: 5vw;
      font-size: 5vw; } }

/*20190121 追加---------------------------------------------------------------------*/
@media screen and (min-width: 769px) {
  header .header_area .header_area_in nav {
    margin: 24px 0 0;
    position: relative; }
  header .header_area .header_area_in nav ul {
    font-size: 0;
    text-align: left; }
  header .header_area .header_area_in nav > ul > li {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: inline-block;
    font-size: 14px;
    font-weight: bold;
    font-family: 'ヒラギノ明朝 Pro W3', 'Hiragino Mincho Pro', '游明朝', 'YuMincho', 'メイリオ', Meiryo, "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", sans-serif !important;
    line-height: 1;
    text-align: center;
    vertical-align: middle; }
  header .header_area .header_area_in nav > ul > li:nth-of-type(1) {
    min-width: 96px; }
  header .header_area .header_area_in nav > ul > li:nth-of-type(2) {
    min-width: 199px; }
  header .header_area .header_area_in nav > ul > li:nth-of-type(3) {
    min-width: 226px; }
  header .header_area .header_area_in nav > ul > li:nth-of-type(4) {
    min-width: 120px; }
  header .header_area .header_area_in nav > ul > li:nth-of-type(5) {
    min-width: 150px; }
  header .header_area .header_area_in nav > ul > li:nth-of-type(6) {
    min-width: 204px; }
  header .header_area .header_area_in nav > ul > li a {
    display: block;
    padding: 17px 0;
    letter-spacing: 1px; }
  header .header_area .header_area_in nav > ul > li.now_page > a {
    color: #00b2ee;
    position: relative; }
  header .header_area .header_area_in nav > ul > li.now_page > a:after {
    background-color: #00b2ee;
    content: "";
    position: absolute;
    height: 2px;
    width: calc(100% - 46px);
    top: 32px;
    left: 24px; }
  header .header_area .header_area_in nav > ul > li a:hover {
    text-decoration: none;
    color: #00afec; }
  header .header_area .header_area_in nav > ul > li {
    border-left: 1px solid #dbdbdb; }
  header .header_area .header_area_in nav ul li.btn_search {
    padding: 5px 0 5px 20px;
    margin: 0; }
  header .header_area .header_area_in nav ul li.btn_search a {
    background: url(/common/images/icon_btn_search.png) no-repeat 28px center #00b2ee;
    color: #FFF;
    padding: 12px 48px 12px 60px;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s; }
  header .header_area .header_area_in nav ul li.btn_search a:hover {
    opacity: 0.7; }
  header.header_fix .header_area nav ul li {
    font-size: 12px;
    vertical-align: top; }
  header.header_fix .header_area nav ul li:first-of-type {
    border: none; }
  header.header_fix .header_area nav ul li a {
    padding: 12px 8px; }
  header.header_fix .header_area .header_area_in nav > ul > li.now_page > a:after {
    width: calc(100% - 20px);
    left: 10px; }
  header.header_fix .header_area {
    background: #ffffff;
    border-top: none;
    -webkit-box-shadow: 0 5px 5px -5px #aaaaaa;
    -moz-box-shadow: 0 5px 5px -5px #aaaaaa;
    box-shadow: 0 5px 5px -5px #aaaaaa;
    left: 0;
    min-width: 1000px;
    position: fixed;
    top: -218px;
    width: 100%;
    z-index: 100; }
  header.header_fix .header_area .header_area_in {
    position: relative; }
  header.header_fix .header_area .sub_nav,
  header.header_fix .header_area .header_title,
  header.header_fix .header_area .header_tel {
    display: none; }
  header.header_fix .header_area nav {
    left: 65px;
    margin: 0;
    position: absolute;
    top: 13px; }
  header.header_fix .header_area nav ul li {
    height: 33px; }
  header.header_fix .header_area .header_area_in nav > ul > li:nth-of-type(1),
  header.header_fix .header_area .header_area_in nav > ul > li:nth-of-type(2),
  header.header_fix .header_area .header_area_in nav > ul > li:nth-of-type(3),
  header.header_fix .header_area .header_area_in nav > ul > li:nth-of-type(4),
  header.header_fix .header_area .header_area_in nav > ul > li:nth-of-type(5),
  header.header_fix .header_area .header_area_in nav > ul > li:nth-of-type(6) {
    min-width: 0; }
  header.header_fix .header_area nav ul li.btn_search {
    background: none;
    margin: 0;
    padding: 0 0 0 8px; }
  header.header_fix .header_area nav ul li.btn_search a {
    background: url(/common/images/icon_btn_search_fix.png) no-repeat left center;
    color: #000;
    padding: 12px 8px 12px 18px; }
  header.header_fix .header_area nav ul li.btn_search a:hover {
    color: #00afec; } }

/*20190131 追加---------------------------------------------------------------------*/
.er_msg {
  width: 1000px;
  margin: 0 auto;
  padding: 20px 0; }

.er_msg a:link,
.er_msg a:visited,
.er_msg a:hover,
.er_msg a:active {
  text-decoration: none; }

.er_msg_box {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
  border: 1px solid #7d7d7d; }

.er_msg_box dt {
  background: #7d7d7d;
  padding: 8px 0;
  color: #fff;
  text-align: center;
  font-size: 26px;
  font-weight: 700; }

.er_msg_box dd {
  padding: 12px 0; }

.er_msg_box dd p {
  width: 80%;
  margin: 0 auto;
  font-size: 18px; }
