@charset "UTF-8";
/*
*
* Copyright (c) 2016, AD Line Inc. All rights reserved.
* Data : 2016.04.20
*
*/
/* Googleフォント　Noto Sans,Robot,Open Sans */
@import url(https://fonts.googleapis.com/earlyaccess/notosansjapanese.css);
@import url(https://fonts.googleapis.com/css?family=Roboto:400,100,100italic,300,300italic,400italic,500,500italic,700italic,700,900);
@import url(https://fonts.googleapis.com/css?family=Open+Sans:400,300,300italic,400italic,600,600italic,700,700italic,800);
/* アイコンフォント　Google Material,Font Awesome */
@import url(https://fonts.googleapis.com/icon?family=Material+Icons);
@import url(https://maxcdn.bootstrapcdn.com/font-awesome/4.6.1/css/font-awesome.min.css);
/*****************************************************

 SCSS用
 
*****************************************************/
/*****************************************************

 Common - Layout
 
*****************************************************/
html {
  font-size: 10px; }

*, *:before, *:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box; }

body {
  position: relative;
  width: auto;
  height: auto;
  background: #FFF;
  z-index: 0;
  color: #3e2723;
  font-size: 1.4rem;
  font-family: 'Noto Sans Japanese', "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: normal;
  font-weight: normal;
  line-height: 1.5; }

.inner {
  width: 992px;
  margin: 0 auto;
  position: relative; }

.col_1 {
  width: 124px;
  padding: 0 16px;
  float: left; }

.col_2 {
  width: 248px;
  padding: 0 16px;
  float: left; }

.col_3 {
  width: 372px;
  padding: 0 16px;
  float: left; }

.col_4 {
  width: 496px;
  padding: 0 16px;
  float: left; }

.col_5 {
  width: 620px;
  padding: 0 16px;
  float: left; }

.col_6 {
  width: 744px;
  padding: 0 16px;
  float: left; }

.col_7 {
  width: 868px;
  padding: 0 16px;
  float: left; }

.col_8 {
  width: 992px;
  padding: 0 16px; }

/*****************************************************

 Common - Parts
 
*****************************************************/
/*　リンク
----------------------------------------------------*/
a {
  text-decoration: none; }

.tel_btn, .link_btn {
  display: block;
  background: #fff;
  border-radius: 30px;
  text-align: center;
  font-weight: 500;
  line-height: 1.6;
  -moz-box-shadow: 0px 0px 7px rgba(0, 0, 0, 0.3);
  -webkit-box-shadow: 0px 0px 7px rgba(0, 0, 0, 0.3);
  box-shadow: 0px 0px 7px rgba(0, 0, 0, 0.3); }

.tel_btn {
  border: #4fc3f7 solid 2px;
  color: #03a9f4;
  transition: ease-out 0.2s; }
  .tel_btn:hover {
    background: #e1f5fe;
    -moz-box-shadow: 0px 0px 0px rgba(0, 0, 0, 0.3);
    -webkit-box-shadow: 0px 0px 0px rgba(0, 0, 0, 0.3);
    box-shadow: 0px 0px 0px rgba(0, 0, 0, 0.3); }

.link_btn {
  border: #ffa726 solid 2px;
  color: #ffa726;
  transition: ease-out 0.2s; }
  .link_btn:hover {
    background: #fff2dd;
    -moz-box-shadow: 0px 0px 0px rgba(0, 0, 0, 0.3);
    -webkit-box-shadow: 0px 0px 0px rgba(0, 0, 0, 0.3);
    box-shadow: 0px 0px 0px rgba(0, 0, 0, 0.3); }

.fax {
  display: block;
  background: #fff;
  border-radius: 30px;
  text-align: center;
  font-weight: 500;
  line-height: 1.6;
  -moz-box-shadow: 0px 0px 7px rgba(0, 0, 0, 0.3);
  -webkit-box-shadow: 0px 0px 7px rgba(0, 0, 0, 0.3);
  box-shadow: 0px 0px 7px rgba(0, 0, 0, 0.3);
  border: #4fc3f7 solid 2px;
  color: #03a9f4; }
  .fax a {
    color: #03a9f4; }

/*　common
----------------------------------------------------*/
.content_h3 {
  font-size: 2.4rem;
  font-weight: 500;
  text-align: center;
  color: #03a9f4;
  border-bottom: #4fc3f7 solid 4px;
  margin-bottom: 24px;
  padding-bottom: 8px; }

.content_catch {
  font-size: 1.8rem;
  text-align: center;
  margin-bottom: 24px; }

.kids_course {
  font-size: 1.8rem;
  font-weight: 500;
  margin-bottom: 24px;
  text-align: center;
  color: #3e2723;
  line-height: 2;
  background: #f8d335; }

.jh_school_course {
  font-size: 1.8rem;
  font-weight: 500;
  margin-bottom: 24px;
  text-align: center;
  color: #fff;
  line-height: 2;
  background: #5cae57; }

.adult_course {
  font-size: 1.8rem;
  font-weight: 500;
  margin-bottom: 24px;
  text-align: center;
  color: #fff;
  line-height: 2;
  background: #f84eb7; }

.test_course {
  font-size: 1.8rem;
  font-weight: 500;
  margin-bottom: 24px;
  text-align: center;
  color: #fff;
  line-height: 2;
  background: #1c9fab; }

.private_course {
  font-size: 1.8rem;
  font-weight: 500;
  margin-bottom: 24px;
  text-align: center;
  color: #fff;
  line-height: 2;
  background: #445db8; }

.returnee_course {
  font-size: 1.8rem;
  font-weight: 500;
  margin-bottom: 24px;
  text-align: center;
  color: #fff;
  line-height: 2;
  background: #9e86fc; }

.category_all {
  background: #4fc3f7;
  color: #fff;
  text-align: center;
  padding: 2px 0; }

.category_01 {
  background: #03a9f4;
  color: #fff;
  text-align: center;
  padding: 2px 0; }

.category_02 {
  background: #5cae57;
  color: #fff;
  text-align: center;
  padding: 2px 0; }

.category_03 {
  background: #f8d335;
  color: #3e2723;
  text-align: center;
  padding: 2px 0; }

.category_04 {
  background: #f84eb7;
  color: #fff;
  text-align: center;
  padding: 2px 0; }

.twitter-timeline {
  margin-bottom: 16px !important; }

/* ページトップ
----------------------------------------------------*/
/* トピックパス
----------------------------------------------------*/
.breadcrumbs {
  padding: 32px 0 48px 0; }
  .breadcrumbs a {
    color: #4fc3f7; }
    .breadcrumbs a:hover {
      text-decoration: underline; }

/*****************************************************

 Template - Header
 
*****************************************************/
.header_h1_box {
  width: 100%;
  background: #4fc3f7; }
  .header_h1_box h1 {
    font-size: 1.1rem;
    color: #fff;
    text-align: right; }

.global_header {
  padding: 4px 0; }
  .global_header .header_logo {
    padding: 0 16px;
    float: left; }
  .global_header .header_address {
    width: 512px;
    padding: 0 16px;
    float: right; }
    .global_header .header_address p {
      font-size: 1.6rem;
      text-align: right;
      font-weight: 500;
      margin-bottom: 8px; }
    .global_header .header_address .tel_btn {
      font-size: 2.2rem;
      width: 280px;
      float: left;
      letter-spacing: 0.2rem; }
    .global_header .header_address .link_btn {
      font-size: 2.2rem;
      display: inline-block;
      width: 178px;
      float: right;
      letter-spacing: 0.2rem; }

/*****************************************************

 Template - Navigation

*****************************************************/
.global_nav {
  width: 100%;
  background: #cceefd;
  height: 56px; }
  .global_nav ul li a {
    float: left;
    display: block;
    font-size: 1.8rem;
    text-align: center;
    color: #fff;
    height: 56px;
    font-weight: 500;
    line-height: 3.1;
    text-shadow: 0px 2px 0px rgba(0, 0, 0, 0.4), 0px 2px 0px rgba(255, 255, 255, 0.4);
    transition: ease-out 0.2s; }
  .global_nav ul li .home {
    width: 170px;
    background: #4fc3f7; }
    .global_nav ul li .home:hover {
      background: #80d4f9; }
  .global_nav ul li .news {
    width: 170px;
    background: #03a9f4; }
    .global_nav ul li .news:hover {
      background: #0a9ee0; }
  .global_nav ul li .course {
    width: 170px;
    background: #4fc3f7; }
    .global_nav ul li .course:hover {
      background: #80d4f9; }
  .global_nav ul li .question {
    width: 170px;
    background: #03a9f4; }
    .global_nav ul li .question:hover {
      background: #0a9ee0; }
  .global_nav ul li .contact {
    width: 280px;
    background: #ffa726; }
    .global_nav ul li .contact:hover {
      background: #ffc268; }

/*****************************************************

 Template - Cover
 
*****************************************************/
/*2025.01.10追加*/
.new_membership img {
  width: 100%;
  height: 310px;
  object-fit: cover; }

.global_cover {
  position: relative;
  width: 100%;
  height: 1110px;
  background: url("../images/home/top_cover_online_lesson.jpg") no-repeat;
  background-size: cover;
  background-position: center;
  min-width: 960px;
  /* TOP online lesson　カバー*/ }
  .global_cover .flash_year {
    position: absolute;
    display: block;
    top: 3.5%;
    left: 0;
    right: 0;
    margin: 0 auto;
    animation: flash 2.8s ease-in-out infinite alternate; }
@keyframes flash {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
  .global_cover .cover_h2 {
    margin: 0 auto;
    width: 1008px;
    padding-top: 60px; }
    .global_cover .cover_h2 h2 {
      text-align: center;
      color: #fff;
      font-size: 3.2rem;
      line-height: 1.35;
      font-weight: 500;
      text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.6), 3px 1px 3px rgba(0, 0, 0, 0.6); }
      .global_cover .cover_h2 h2 span {
        font-size: 3.8rem; }
  .global_cover .btn_online_lesson {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 3%;
    width: 600px;
    height: auto;
    margin: 0 auto; }
    .global_cover .btn_online_lesson a {
      box-sizing: border-box;
      display: block;
      width: 100%;
      height: auto;
      padding: 16px;
      text-align: center;
      text-decoration: none;
      background: #FF3333;
      color: #FFF;
      border-bottom: solid 4px #B20000;
      border-radius: 8px;
      font-size: 2.4rem;
      font-weight: 600; }
      .global_cover .btn_online_lesson a:active {
        /*ボタンを押したとき*/
        -webkit-transform: translateY(4px);
        transform: translateY(4px);
        /*下に動く*/
        border-color: #FF3333; }

.under_cover {
  width: 100%;
  min-width: 960px;
  height: 240px;
  background: url(../images/common/under_cover01.jpg) no-repeat;
  background-position: center bottom;
  background-size: cover; }
  .under_cover h2 {
    font-size: 3.8rem;
    color: #fff;
    padding-top: 90px;
    font-weight: 500;
    text-shadow: 0px 2px 0px rgba(0, 0, 0, 0.6), 0px 2px 0px rgba(255, 255, 255, 0.6); }

/*****************************************************

 Template - Footer
 
*****************************************************/
.global_footer {
  width: 100%;
  background: #4fc3f7;
  padding: 24px 0; }
  .global_footer .footer_detail address {
    float: left;
    width: 314px;
    color: #fff;
    font-size: 1.6rem; }
  .global_footer .footer_detail .wp_social_bookmarking_light {
    float: right;
    width: 260px; }
    .global_footer .footer_detail .wp_social_bookmarking_light .wsbl_twitter {
      width: 75px; }
  .global_footer .footer_detail .tel_btn, .global_footer .footer_detail .fax {
    width: 280px;
    font-size: 2.6rem;
    border: none; }
  .global_footer .footer_detail .tel_btn {
    float: left; }
  .global_footer .footer_detail .fax {
    float: right; }

.global_copyright {
  width: 100%;
  background: #03a9f4;
  color: #fff;
  text-align: center;
  font-size: 1.2rem; }

#return {
  display: block;
  position: relative;
  width: 60px;
  height: 60px;
  border-radius: 30px;
  position: fixed;
  bottom: 150px;
  right: 16px;
  z-index: 9999;
  border: #4fc3f7 solid 2px;
  color: #03a9f4;
  font-size: 3.4rem;
  background: #fff;
  -moz-box-shadow: 0px 0px 7px rgba(0, 0, 0, 0.3);
  -webkit-box-shadow: 0px 0px 7px rgba(0, 0, 0, 0.3);
  box-shadow: 0px 0px 7px rgba(0, 0, 0, 0.3); }
  #return:hover {
    background: #cceefd; }
  #return i {
    position: absolute;
    top: 10px;
    left: 13px; }

/*****************************************************

 Page - Home
 
*****************************************************/
/* content01
----------------------------------------------------*/
.content01 {
  width: 100%;
  background: #cceefd;
  padding: 48px 0; }
  .content01 h3 {
    font-size: 2.8rem;
    text-align: center;
    margin-bottom: 16px;
    font-weight: 500; }
  .content01 .open {
    font-size: 4.5rem;
    width: 528px;
    color: #fff;
    background: #4fc3f7;
    text-align: center;
    margin: 0 auto 8px;
    font-weight: 500; }
    .content01 .open span {
      font-size: 2.6rem; }
  .content01 .free_trial {
    font-size: 5.2rem;
    margin-bottom: 16px;
    color: #03a9f4;
    font-weight: 500;
    letter-spacing: 0.2rem;
    text-align: center; }
  .content01 .free_trial_btn {
    font-size: 2.6rem;
    width: 464px;
    margin: 0 auto; }

/* content02
----------------------------------------------------*/
.content02 {
  padding: 48px 0; }
  .content02 .content_h3 {
    text-align: left; }
  .content02 .news {
    padding-bottom: 16px; }
    .content02 .news .top_news {
      color: #3e2723; }
      .content02 .news .top_news:hover {
        color: #03a9f4; }
    .content02 .news dl dt span {
      display: inline-block;
      width: 124px;
      text-align: center;
      line-height: 1.8;
      font-size: 1.4rem; }
    .content02 .news dl dd {
      border-bottom: #abb9c0 dotted 2px;
      padding-bottom: 8px;
      margin-bottom: 16px;
      line-height: 2.2; }
    .content02 .news .link_btn {
      font-size: 1.6rem;
      font-weight: 500;
      width: 216px; }

/* content03
----------------------------------------------------*/
.content03 {
  width: 100%;
  background: #fff2dd;
  padding: 48px 0; }
  .content03 figure {
    text-align: center; }

/* content04
----------------------------------------------------*/
.content04 {
  padding: 48px 0; }
  .content04 figcaption {
    font-size: 1.8rem;
    font-weight: 500;
    text-align: center;
    line-height: 2; }
  .content04 .top_course {
    margin: 0 0 24px -30px; }
  .content04 .top_course_1 {
    width: 300px;
    float: left;
    margin-left: 30px; }
  .content04 .top_course_2 {
    width: 630px;
    float: left;
    margin-left: 30px; }
  .content04 .link_btn {
    font-size: 2.6rem;
    width: 464px;
    margin: 0 auto; }
  .content04 .top_course_a {
    display: block;
    color: #3e2723; }
    .content04 .top_course_a:hover {
      opacity: 0.8; }

/* content05
----------------------------------------------------*/
.content05 {
  width: 100%;
  background: #cceefd;
  padding: 48px 0; }
  .content05 .lecturer_box {
    margin-top: 24px; }
    .content05 .lecturer_box figure {
      margin: 0 auto 16px;
      text-align: center; }
    .content05 .lecturer_box h4 {
      font-size: 1.8rem;
      font-weight: 500;
      text-align: center;
      margin-bottom: 16px;
      color: #03a9f4; }
      .content05 .lecturer_box h4 span {
        font-size: 1.4rem; }

/* content06
----------------------------------------------------*/
.content06 {
  padding: 48px 0; }
  .content06 .top_access {
    margin-bottom: 40px; }
    .content06 .top_access h4, .content06 .top_access p {
      text-align: center;
      margin-bottom: 16px; }
    .content06 .top_access p {
      font-size: 1.8rem; }
    .content06 .top_access ul {
      width: 624px;
      margin: 0 auto; }
      .content06 .top_access ul li {
        width: 280px;
        font-size: 2.6rem;
        float: left;
        margin: 0 16px; }
    .content06 .top_access .staff {
      width: 496px;
      margin: 0 auto 16px; }
      .content06 .top_access .staff img {
        width: 100%; }

/*****************************************************

 Page - Course
 
*****************************************************/
.course_content .initial_cost li {
  color: #ffa726;
  border: #ffa726 solid 2px;
  line-height: 2;
  font-size: 2rem;
  font-weight: 500;
  width: 464px;
  margin: 16px;
  border: #ffa726 solid 2px;
  text-align: center; }
  .course_content .initial_cost li span {
    font-size: 1.8rem; }
.course_content .course_box {
  margin-bottom: 48px; }
  .course_content .course_box ul {
    margin-bottom: 24px; }
    .course_content .course_box ul li {
      padding-left: 1em;
      text-indent: -1em; }
  .course_content .course_box .course_table {
    width: 100%;
    line-height: 2.2;
    font-weight: 500;
    letter-spacing: 0.1rem; }
    .course_content .course_box .course_table tr {
      font-size: 1.6rem; }
      .course_content .course_box .course_table tr .lesson_th {
        text-align: right; }
    .course_content .course_box .course_table td {
      text-align: center; }
    .course_content .course_box .course_table .lesson_td {
      text-align: right; }
      .course_content .course_box .course_table .lesson_td span {
        text-decoration: line-through; }
      .course_content .course_box .course_table .lesson_td strong {
        font-weight: bold !important;
        color: #ea2ea2; }
  .course_content .course_box .kids {
    border: #f8d335 solid 1px;
    margin-bottom: 16px; }
    .course_content .course_box .kids tr:nth-child(2n+1) {
      background: #fff2dd; }
    .course_content .course_box .kids th:not(:last-child) {
      border-right: #fff solid 1px; }
    .course_content .course_box .kids td:not(:last-child) {
      border-right: #f8d335 solid 1px; }
  .course_content .course_box .eiken_jr {
    background: #fff2dd;
    padding: 16px;
    text-align: center; }
    .course_content .course_box .eiken_jr h5 {
      font-size: 1.8rem;
      margin-bottom: 16px;
      font-weight: 500; }
      .course_content .course_box .eiken_jr h5 span {
        font-size: 2.6rem;
        background: #f8d335;
        padding: 0 8px; }
    .course_content .course_box .eiken_jr p {
      width: 712px;
      margin: 0 auto 16px; }
    .course_content .course_box .eiken_jr ul {
      width: 744px;
      margin: 0 auto; }
      .course_content .course_box .eiken_jr ul li {
        width: 340px;
        padding: 0 16px;
        float: left;
        text-align: center;
        font-size: 1.6rem; }
        .course_content .course_box .eiken_jr ul li span {
          text-decoration: underline; }
        .course_content .course_box .eiken_jr ul li a {
          color: #ffa726; }
          .course_content .course_box .eiken_jr ul li a:hover {
            color: #f8d335; }
  .course_content .course_box .course_characteristic {
    height: 63px; }
  .course_content .course_box .jh_school {
    border: #5cae57 solid 1px;
    margin-bottom: 16px; }
    .course_content .course_box .jh_school tr:nth-child(2n+1) {
      background: #ddeedc; }
    .course_content .course_box .jh_school th:not(:last-child) {
      border-right: #fff solid 1px; }
    .course_content .course_box .jh_school td:not(:last-child) {
      border-right: #5cae57 solid 1px; }
  .course_content .course_box .adult {
    border: #f84eb7 solid 1px;
    margin-bottom: 16px; }
    .course_content .course_box .adult tr:nth-child(2n+1) {
      background: #fddbf0; }
    .course_content .course_box .adult th:not(:last-child) {
      border-right: #fff solid 1px; }
    .course_content .course_box .adult td:not(:last-child) {
      border-right: #f84eb7 solid 1px; }
  .course_content .course_box .test {
    border: #1c9fab solid 1px;
    margin-bottom: 16px; }
    .course_content .course_box .test tr:nth-child(2n+1) {
      background: #d1ebed; }
    .course_content .course_box .test th:not(:last-child) {
      border-right: #fff solid 1px; }
    .course_content .course_box .test td:not(:last-child) {
      border-right: #1c9fab solid 1px; }
  .course_content .course_box .private {
    border: #445db8 solid 1px;
    margin-bottom: 16px; }
    .course_content .course_box .private tr:nth-child(2n+1) {
      background: #d9def0; }
    .course_content .course_box .private th:not(:last-child) {
      border-right: #fff solid 1px; }
    .course_content .course_box .private td:not(:last-child) {
      border-right: #445db8 solid 1px; }
  .course_content .course_box .returnee {
    border: #445db8 solid 1px;
    margin-bottom: 16px; }
    .course_content .course_box .returnee tr:nth-child(2n+1) {
      background: #d8cffe; }
    .course_content .course_box .returnee th:not(:last-child) {
      border-right: #fff solid 1px; }
    .course_content .course_box .returnee td:not(:last-child) {
      border-right: #9e86fc solid 1px; }

/*****************************************************

 Page - Contact
 
*****************************************************/
.contact_content {
  margin-bottom: 48px; }
  .contact_content .contact_table {
    border-collapse: separate;
    border-spacing: 0 16px;
    margin: 16px 0 32px; }
    .contact_content .contact_table input[type="text"], .contact_content .contact_table textarea {
      width: 100%; }
    .contact_content .contact_table th {
      width: 340px;
      padding: 8px 16px;
      background: #4fc3f7;
      color: #fff;
      vertical-align: top; }
    .contact_content .contact_table td {
      border: #4fc3f7 solid 1px;
      width: 620px;
      padding: 8px 16px; }
  .contact_content .a_button {
    width: 304px;
    height: 52px;
    position: relative;
    display: block;
    text-align: center;
    font-size: 2rem;
    font-weight: 500;
    line-height: 1.6;
    margin: 0 auto;
    padding: 8px 32px;
    background: #fff;
    border-radius: 30px;
    -moz-box-shadow: 0px 0px 7px rgba(0, 0, 0, 0.3);
    -webkit-box-shadow: 0px 0px 7px rgba(0, 0, 0, 0.3);
    box-shadow: 0px 0px 7px rgba(0, 0, 0, 0.3);
    border: #ffa726 solid 2px;
    color: #ffa726;
    transition: ease-out 0.2s; }
    .contact_content .a_button:hover {
      background: #fff2dd;
      -moz-box-shadow: 0px 0px 0px rgba(0, 0, 0, 0.3);
      -webkit-box-shadow: 0px 0px 0px rgba(0, 0, 0, 0.3);
      box-shadow: 0px 0px 0px rgba(0, 0, 0, 0.3); }
    .contact_content .a_button input {
      background: none;
      color: #ffa726;
      width: 304px;
      height: 52px;
      position: absolute;
      top: -2px;
      left: 0;
      padding-left: 20px; }
    .contact_content .a_button i {
      position: absolute;
      top: 14px;
      left: 80px; }
  .contact_content .privacy h4 {
    font-size: 1.8rem;
    color: #03a9f4;
    line-height: 1.8;
    margin-bottom: 16px;
    border-bottom: #abb9c0 dotted 2px; }
  .contact_content .privacy h5 {
    font-size: 1.6rem;
    color: #03a9f4;
    margin-bottom: 8px; }
  .contact_content .privacy p {
    margin-bottom: 24px; }

/*****************************************************

 Page - News
 
*****************************************************/
.news_content {
  margin-bottom: 48px; }
  .news_content .archive_list {
    padding-bottom: 24px;
    margin-bottom: 24px;
    border-bottom: #abb9c0 dotted 2px; }
    .news_content .archive_list figure {
      float: left;
      width: 216px;
      height: 216px;
      background: url(../images/news/no_image.jpg) no-repeat; }
    .news_content .archive_list .archive_list_detail {
      width: 464px;
      float: right; }
      .news_content .archive_list .archive_list_detail h4 {
        font-size: 1.6rem;
        color: #03a9f4;
        margin: 16px 0; }
      .news_content .archive_list .archive_list_detail span {
        width: 124px;
        display: inline-block; }
      .news_content .archive_list .archive_list_detail .link_btn {
        width: 216px;
        float: right;
        font-size: 1.6rem; }
  .news_content .pager {
    padding-top: 40px;
    text-align: center;
    font-size: 1.6rem;
    font-weight: 500; }
    .news_content .pager .current {
      background: #03a9f4;
      color: #fff; }
    .news_content .pager span,
    .news_content .pager a {
      display: inline-block;
      margin: 0 8px;
      padding: 6px 12px;
      text-align: center;
      text-decoration: none;
      color: #03a9f4;
      background: #cceefd;
      -moz-box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.3);
      -webkit-box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.3);
      box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.3); }
      .news_content .pager span:hover,
      .news_content .pager a:hover {
        background: #03a9f4;
        color: #fff;
        text-decoration: none; }
  .news_content .sidebar .side_content {
    margin-bottom: 48px;
    width: 100%;
    overflow: hidden; }
    .news_content .sidebar .side_content .side_category li a {
      display: block;
      margin-bottom: 16px;
      font-size: 1.8rem;
      line-height: 1.8;
      text-align: center;
      -moz-box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.3);
      -webkit-box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.3);
      box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.3);
      transition: ease-out 0.2s; }
    .news_content .sidebar .side_content .side_category li .category_all:hover {
      opacity: 0.7; }
    .news_content .sidebar .side_content .side_category li .category_01:hover {
      opacity: 0.7; }
    .news_content .sidebar .side_content .side_category li .category_02:hover {
      opacity: 0.7; }
    .news_content .sidebar .side_content .side_category li .category_03:hover {
      opacity: 0.7; }
    .news_content .sidebar .side_content address {
      margin-bottom: 24px; }
      .news_content .sidebar .side_content address ul li {
        margin-bottom: 8px; }
        .news_content .sidebar .side_content address ul li .tel_btn, .news_content .sidebar .side_content address ul li .fax {
          font-size: 1.6rem; }
    .news_content .sidebar .side_content .side_contact {
      display: block;
      font-size: 2.2rem;
      line-height: 2.6;
      font-weight: 500;
      text-align: center;
      background: #03a9f4;
      color: #fff;
      -moz-box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.4);
      -webkit-box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.4);
      box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.4);
      transition: ease-out 0.2s; }
      .news_content .sidebar .side_content .side_contact:hover {
        background: #4fc3f7; }

/*****************************************************

 Page - News-single
 
*****************************************************/
.single_box .single_category {
  text-align: right;
  margin-bottom: 24px; }
  .single_box .single_category span {
    width: 124px;
    display: inline-block;
    padding: 0 8px; }
.single_box .single_detail {
  padding: 0 0 48px; }
  .single_box .single_detail img {
    max-width: 100%;
    height: auto; }
  .single_box .single_detail #gallery-1 img, .single_box .single_detail #gallery-2 img, .single_box .single_detail #gallery-3 img {
    border: none; }
  .single_box .single_detail p {
    margin-bottom: 24px;
    font-size: 1.6rem;
    line-height: 2em;
    letter-spacing: 2px; }
  .single_box .single_detail strong {
    font-weight: bold; }
  .single_box .single_detail h1, .single_box .single_detail h2, .single_box .single_detail h3, .single_box .single_detail h4, .single_box .single_detail h5, .single_box .single_detail h6 {
    color: #03a9f4;
    font-size: 1.8rem;
    border-bottom: #abb9c0 dotted 2px;
    margin-bottom: 24px;
    line-height: 2;
    font-weight: 500; }
  .single_box .single_detail ol {
    padding: 0 0 20px;
    font-size: 1.6rem;
    line-height: 2em;
    letter-spacing: 2px; }
    .single_box .single_detail ol li {
      list-style-type: decimal;
      list-style-position: inside; }
  .single_box .single_detail ul {
    padding: 0 0 20px;
    font-size: 1.6rem;
    line-height: 2em;
    letter-spacing: 2px; }
    .single_box .single_detail ul li {
      list-style-type: disc;
      list-style-position: inside; }
  .single_box .single_detail p .aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto; }
  .single_box .single_detail p .alignright {
    padding: 4px;
    margin: 0 0 2px 10px;
    display: inline;
    float: right; }
  .single_box .single_detail p .alignleft {
    padding: 4px;
    margin: 0 10px 2px 0;
    display: inline;
    float: left; }
.single_box .link_btn {
  width: 280px;
  font-size: 1.8rem;
  line-height: 2;
  margin: 0 auto; }

/*****************************************************

 Page - Q & A
 
*****************************************************/
.question_content dl {
  margin-bottom: 40px; }
  .question_content dl dt {
    font-size: 1.8rem;
    color: #03a9f4;
    line-height: 1.8;
    margin-bottom: 16px;
    border-bottom: #abb9c0 dotted 2px; }
    .question_content dl dt .question {
      font-size: 2rem;
      color: #fff;
      background: #03a9f4;
      padding: 2px 8px 4px;
      margin: 0 8px 4px 0;
      line-height: 2.2; }
  .question_content dl dd {
    font-size: 1.6rem; }
    .question_content dl dd .answer {
      font-size: 2rem;
      color: #fff;
      background: #f84eb7;
      padding: 2px 8px 4px;
      margin: 0 8px 4px 0;
      line-height: 2.2; }
  .question_content dl a {
    color: #03a9f4;
    text-decoration: underline; }
    .question_content dl a:hover {
      color: #ffa726; }

/*2017.01.05　スクール規約追加*/
.contract_h4 {
  font-size: 1.8rem;
  color: #03a9f4;
  line-height: 1.8;
  margin-bottom: 16px;
  border-bottom: #abb9c0 dotted 2px; }

.contract_a {
  color: #03a9f4;
  text-decoration: underline; }
  .contract_a:hover {
    color: #ffa726; }

/*トップページ　特典追加*/
.benefits {
  width: 720px;
  margin: 0 auto 16px; }
  .benefits tr {
    color: #FF1D25;
    font-size: 3rem;
    font-weight: 500;
    margin-bottom: 16px;
    display: block; }
    .benefits tr .number {
      font-size: 4rem;
      background: #fff;
      border: #FF1D25 solid 2px;
      padding: 0 18px 2px;
      border-radius: 36px;
      margin-right: 16px;
      font-weight: 600;
      -moz-box-shadow: 0px 0px 7px rgba(0, 0, 0, 0.3);
      -webkit-box-shadow: 0px 0px 7px rgba(0, 0, 0, 0.3);
      box-shadow: 0px 0px 7px rgba(0, 0, 0, 0.3); }
    .benefits tr .sub {
      font-size: 2.4rem; }
    .benefits tr .emphasis {
      font-size: 4.4rem;
      font-weight: 600;
      line-height: 1; }

/*コース紹介・料金ページ　特典追加*/
.private_campaign img {
  transition: ease-out 0.2s; }
  .private_campaign img:hover {
    opacity: 0.7; }

/*2018.3.9 トップ改修*/
.gallery_title {
  width: 40%;
  height: auto;
  margin: 0 auto 32px;
  padding: 4px 16px;
  color: #fff;
  text-align: center;
  font-size: 2.4rem;
  font-weight: 500;
  background: #4fc3f7; }

.gallery_list {
  width: 100%;
  height: auto;
  margin-top: -24px; }
  .gallery_list li {
    float: left;
    width: 222px;
    height: auto;
    margin: 24px 0 0 24px; }
    .gallery_list li img {
      vertical-align: bottom;
      margin: 0;
      padding: 0;
      max-width: 100%;
      height: auto; }
    .gallery_list li:nth-child(4n+1) {
      margin-left: 0; }

/*2018.5.24 トップ改修（メッセージエリア追加）*/
.messege_area {
  width: 100%;
  height: auto;
  padding: 48px 0;
  background: url(../images/home/stripes-light.png); }

.massege_title {
  position: relative;
  box-sizing: border-box;
  width: 32%;
  height: auto;
  margin: 0 auto;
  padding: 4px 0 6px;
  text-align: center;
  font-size: 2.4rem;
  font-weight: bold;
  color: #333333;
  border: 3px #333333 solid;
  background: #fff; }
  .massege_title::before {
    content: "";
    position: absolute;
    left: 50%;
    bottom: -24px;
    margin-left: -15px;
    border: 12px solid transparent;
    border-top: 12px solid #FFF;
    z-index: 2; }
  .massege_title::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: -30px;
    margin-left: -17px;
    border: 14px solid transparent;
    border-top: 14px solid #333333;
    z-index: 1; }

.massege_title02 {
  position: relative;
  margin: 32px 0 48px;
  font-size: 2.2rem;
  text-align: center;
  font-weight: bold; }
  .massege_title02::before {
    content: '';
    position: absolute;
    bottom: -16px;
    display: inline-block;
    width: 80px;
    height: 4px;
    left: 50%;
    -moz-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    background-color: #FF8700;
    border-radius: 2px; }

.massage_box {
  box-sizing: border-box;
  padding-right: 354px;
  background: url(../images/home/bg_massege_02.png) bottom 26px right no-repeat; }
  .massage_box dt {
    width: 160px;
    height: auto;
    padding: 6px 16px;
    color: #333333;
    font-weight: bold;
    font-size: 1.5rem;
    text-align: center;
    background: #fff;
    border: 3px #333333 solid; }
  .massage_box dd {
    margin-top: 12px; }
  .massage_box dd + dt {
    margin-top: 24px; }

.under_line {
  background: linear-gradient(transparent 60%, rgba(255, 200, 60, 0.5) 60%); }

/*****************************************************

　2018.8.27 ページ改修　

*****************************************************/
/*トップ・ディスカウント追加
*****************************************************/
.discount_area {
  border-top: solid 5px #ffc83c;
  border-bottom: solid 5px #ffc83c;
  background-image: url(../images/home/bg_bnr_discount01.png), url(../images/home/bg_bnr_discount02.png);
  background-repeat: no-repeat;
  background-position: left top, right top;
  background-size: contain; }
  .discount_area .discount_btn {
    font-size: 2.6rem;
    width: 464px;
    margin: 0 auto 25px; }

/*トップ 体験者の声追加　181011
*****************************************************/
.voice_box {
  box-sizing: border-box;
  margin: 48px 16px 0;
  padding: 24px;
  background: #fff;
  -webkit-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.35);
  -moz-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.35);
  -ms-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.35);
  -o-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.35);
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.35); }
  .voice_box h3 {
    position: relative;
    margin-bottom: 24px;
    padding: 0 8px 8px;
    font-size: 2.4rem;
    font-weight: 500;
    color: #03a9f4;
    border-bottom: #4fc3f7 solid 4px; }
    .voice_box h3 a {
      position: absolute;
      top: 4px;
      right: 4px;
      display: inline-block;
      padding: 8px 14px 10px;
      text-align: center;
      font-size: 1.3rem;
      color: #fff;
      background: #88d7fa;
      line-height: 1;
      border-radius: 3px;
      -webkit-transition: 0.3s;
      -moz-transition: 0.3s;
      -ms-transition: 0.3s;
      -o-transition: 0.3s;
      transition: 0.3s; }
      .voice_box h3 a:hover {
        opacity: 0.8; }
      .voice_box h3 a::before {
        font-family: FontAwesome;
        content: "";
        margin-right: 3px;
        font-weight: normal; }

.tbl_voice_detail {
  width: 100%;
  height: auto;
  border-top: 1px #b3b3b3 solid;
  border-left: 1px #b3b3b3 solid; }
  .tbl_voice_detail th {
    width: 11%;
    height: auto;
    padding: 8px 4px;
    border-right: 1px #b3b3b3 solid;
    border-bottom: 1px #b3b3b3 solid;
    vertical-align: middle;
    text-align: center;
    font-weight: bold;
    background: #f2f2f2; }
  .tbl_voice_detail td {
    width: 18%;
    height: auto;
    padding: 8px 10px;
    border-right: 1px #b3b3b3 solid;
    border-bottom: 1px #b3b3b3 solid;
    vertical-align: middle;
    text-align: center; }
    .tbl_voice_detail td.short {
      width: 10%;
      height: auto; }

.wrap_qa_sheet, .wrap_qa_sheet_single {
  margin-top: 32px; }
  .wrap_qa_sheet .voice_qa, .wrap_qa_sheet_single .voice_qa {
    float: left;
    width: 80%;
    height: auto; }
    .wrap_qa_sheet .voice_qa dt, .wrap_qa_sheet_single .voice_qa dt {
      padding-left: 22px;
      font-size: 1.5rem;
      font-weight: bold;
      color: #FF4B20;
      text-indent: -22px; }
      .wrap_qa_sheet .voice_qa dt::before, .wrap_qa_sheet_single .voice_qa dt::before {
        font-family: FontAwesome;
        content: "";
        margin-right: 6px;
        font-weight: normal;
        color: #FF4B20; }
    .wrap_qa_sheet .voice_qa dd, .wrap_qa_sheet_single .voice_qa dd {
      margin-top: 6px;
      padding-bottom: 10px;
      border-bottom: 1px #cccccc dotted; }
      .wrap_qa_sheet .voice_qa dd + dt, .wrap_qa_sheet_single .voice_qa dd + dt {
        margin-top: 12px; }
  .wrap_qa_sheet .voice_sheet, .wrap_qa_sheet_single .voice_sheet {
    position: relative;
    float: right;
    width: 16.5%;
    height: auto;
    -webkit-box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.25);
    -moz-box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.25);
    -ms-box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.25);
    -o-box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.25);
    box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.25); }
    .wrap_qa_sheet .voice_sheet a, .wrap_qa_sheet_single .voice_sheet a {
      display: block;
      opacity: 0.6;
      -webkit-transition: 0.3s;
      -moz-transition: 0.3s;
      -ms-transition: 0.3s;
      -o-transition: 0.3s;
      transition: 0.3s; }
      .wrap_qa_sheet .voice_sheet a::before, .wrap_qa_sheet_single .voice_sheet a::before {
        position: absolute;
        top: 50%;
        left: 50%;
        -webkit-transform: translateY(-50%) translateX(-50%);
        transform: translateY(-50%) translateX(-50%);
        display: inline-block;
        font-family: FontAwesome;
        content: "";
        width: 45px;
        height: 45px;
        font-size: 2.2rem;
        background: #999;
        text-align: center;
        color: #fff;
        line-height: 45px;
        -webkit-border-radius: 50%;
        -moz-border-radius: 50%;
        -ms-border-radius: 50%;
        -o-border-radius: 50%;
        border-radius: 50%; }
      .wrap_qa_sheet .voice_sheet a:hover, .wrap_qa_sheet_single .voice_sheet a:hover {
        opacity: 0.9; }
        .wrap_qa_sheet .voice_sheet a:hover::before, .wrap_qa_sheet_single .voice_sheet a:hover::before {
          background: #03a9f4; }
    .wrap_qa_sheet .voice_sheet img, .wrap_qa_sheet_single .voice_sheet img {
      max-width: 100%;
      height: auto;
      vertical-align: bottom; }

.wrap_qa_sheet_single .voice_qa {
  width: 74%;
  height: auto; }
.wrap_qa_sheet_single .voice_sheet {
  width: 22.5%;
  height: auto; }

.voice_comment {
  box-sizing: border-box;
  margin-top: 24px;
  padding: 16px;
  background: #fafafa; }
  .voice_comment h4.voice_comment_title {
    display: inline-block;
    margin: 0;
    padding: 6px 24px 7px;
    background: #FFA726;
    color: #fff;
    font-size: 1.4rem;
    line-height: 1;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    -ms-border-radius: 3px;
    -o-border-radius: 3px;
    border-radius: 3px; }
  .voice_comment p.text {
    margin: 10px 0 0;
    font-size: 1.4rem;
    line-height: 1.5; }

/*キャンペーンカバー 2020.03.16追加
*****************************************************/
.campaign_cover {
  width: 100%;
  height: 640px;
  background: url(../images/home/top_cover_campaign.jpg) no-repeat;
  background-size: cover;
  background-position: center;
  min-width: 960px; }
  .campaign_cover .cover_h2 {
    margin: 0 auto;
    width: 738px;
    padding-top: 60px; }
    .campaign_cover .cover_h2 h2 {
      text-align: center;
      color: #fff;
      font-size: 3.2rem;
      line-height: 1.35;
      font-weight: 500;
      text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.6), 3px 1px 3px rgba(0, 0, 0, 0.6); }
      .campaign_cover .cover_h2 h2 span {
        font-size: 3.8rem; }
  .campaign_cover .campaign_wrap {
    margin-top: 130px;
    text-align: right;
    position: relative; }
    .campaign_cover .campaign_wrap .campaign_container {
      width: 285px;
      background: rgba(0, 0, 0, 0.6);
      padding: 10px 15px 2px;
      position: absolute;
      top: 0;
      right: -30px;
      text-align: center;
      box-sizing: border-box; }
      .campaign_cover .campaign_wrap .campaign_container .timer_container {
        width: 100%;
        display: flex;
        flex-wrap: nowrap;
        justify-content: space-around;
        align-items: flex-end;
        margin-bottom: 8px; }
        .campaign_cover .campaign_wrap .campaign_container .timer_container p:nth-of-type(1) {
          line-height: 24px;
          font-size: 20px;
          color: #FFF;
          text-align: right; }
        .campaign_cover .campaign_wrap .campaign_container .timer_container > p > .yycountdown-box {
          line-height: 31px;
          font-size: 49px;
          font-weight: bold;
          color: #FFF; }
          .campaign_cover .campaign_wrap .campaign_container .timer_container > p > .yycountdown-box .yyc-day-text {
            font-size: 20px; }
      .campaign_cover .campaign_wrap .campaign_container a {
        text-decoration: none; }
        .campaign_cover .campaign_wrap .campaign_container a:hover img {
          opacity: .7; }

/*臨時休校のテキスト追加 2020.05.28追加
*****************************************************/
.h_infobox {
  position: absolute;
  left: 50%;
  bottom: 4%;
  box-sizing: border-box;
  width: 992px;
  height: auto;
  padding: 16px 24px;
  text-align: center;
  border: 3px #c1272d solid;
  background: rgba(255, 255, 255, 0.94);
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%); }
  .h_infobox p.red {
    color: #c1272d; }

/* 2022.2.4 右固定バナー追加
----------------------------------------------------*/
/*トップ・ディスカウント追加
*****************************************************/
/*トップ・ディスカウント追加
*****************************************************/
.fixbtn_voice {
  position: fixed;
  left: 0;
  top: 200px;
  width: 46px;
  height: 235px;
  z-index: 100; }
  .fixbtn_voice img {
    width: 100%;
    height: auto; }
  .fixbtn_voice a {
    display: block;
    width: 100%;
    height: 100%;
    transition: all 0.3s;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s; }
    .fixbtn_voice a:hover {
      opacity: 0.7; }

.fixbtn_right {
  position: fixed;
  right: 0;
  top: 200px;
  width: 64px;
  height: auto;
  z-index: 100; }
  .fixbtn_right img {
    width: 100%;
    height: auto; }
  .fixbtn_right a {
    display: block;
    width: 100%;
    height: 100%;
    transition: all 0.3s;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s; }
    .fixbtn_right a:hover {
      opacity: 0.7; }

/* 2024.02.01 モーダル
----------------------------------------------------*/
.top_notice202402 {
  width: 100%;
  max-width: 700px;
  margin: 20px auto 20px;
  padding: 60px 20px;
  box-sizing: border-box;
  border: 2px solid #FF9900;
  border-radius: 14px;
  background: #fff; }

.top_notice202402 p {
  font-size: 16px;
  color: #333;
  font-weight: normal; }

.top_notice202402 p span {
  font-weight: bold;
  color: #e91e63; }

.top_notice202402 p:first-of-type {
  font-weight: bold;
  color: #e91e63;
  margin-bottom: 20px;
  font-size: 21px; }

.layer_board_bg,
.layer_board {
  position: absolute; }

.layer_board_bg {
  position: fixed;
  width: 100%;
  height: 100%;
  z-index: 1000;
  top: 0;
  left: 0;
  display: none;
  cursor: pointer;
  background: #000; }

.layer_board {
  display: none;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
  z-index: 2000; }

.btn_close {
  position: absolute;
  top: -30px;
  right: -30px;
  background: #fff;
  border-radius: 50%;
  font-size: 27px;
  text-decoration: none;
  width: 40px;
  height: 40px;
  line-height: 40px;
  text-align: center; }

@media screen and (max-width: 896px) {
  .top_notice202402 {
    width: 90%; }

  .layer_board {
    top: 0;
    left: 0;
    transform: translate(0%, 10%); }

  .btn_close {
    top: 0;
    right: 10px; } }
/*2025.03.10 動画追加*/
.movie_wrap {
  width: 97%;
  margin: 24px auto 60px; }
  .movie_wrap .content_h3 {
    text-align: left; }
  .movie_wrap .movie_container {
    width: 100%;
    display: flex;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 0 4%; }
    .movie_wrap .movie_container .movie_item {
      width: 30%;
      position: relative;
      z-index: 0;
      transition: .2s; }
      .movie_wrap .movie_container .movie_item a {
        text-decoration: none;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        z-index: 1; }
        .movie_wrap .movie_container .movie_item a:hover {
          opacity: .7; }
      .movie_wrap .movie_container .movie_item figure {
        width: 100%; }
        .movie_wrap .movie_container .movie_item figure img {
          width: 100%;
          max-width: 480px;
          height: auto; }
      .movie_wrap .movie_container .movie_item p {
        text-align: center;
        font-size: 16px; }
