@charset "UTF-8";
/***************************
mv
****************************/
.mv {
  text-align: center; }
  .mv p {
    display: none; }
  .mv img {
    width: 100%;
    height: auto; }

@media screen and (min-width: 1000px) {
  header {
    padding: 0;
    position: absolute;
    top: 100px;
    left: 90px;
    text-align: center; }
    header h1, header p {
      float: none; }
    header h1 {
      margin-bottom: 40px; }
      header h1 img {
        width: 170px;
        height: auto; }

  .mv {
    height: 690px;
    width: calc(100%-360px);
    position: relative;
    box-sizing: border-box;
    margin-left: 360px;
    background: url("../images/top/mv_bg2.jpg") no-repeat center center;
    background-size: cover; }
    .mv > img {
      display: none; }
    .mv p {
      position: absolute;
      display: block;
      top: 270px;
      left: -270px; } }
/***************************
mv_merit
****************************/
.mv_merit {
  padding: 20px 20px 40px; }
  .mv_merit h2 {
    text-align: center;
    font-size: min(3.9vw, 36px);
    margin-bottom: 15px; }
    .mv_merit h2 b {
      font-size: min(7.2vw, 66px);
      background: #1e1d4c;
      color: #fffd6f; }
    .mv_merit h2 span {
      background: #1e1d4c;
      color: #fffd6f; }
  .mv_merit dl {
    zoom: 1;
    overflow: hidden;
    margin-bottom: 10px; }
  .mv_merit dt {
    margin-right: 3vw;
    float: left; }
    .mv_merit dt img {
      width: 15vw;
      max-width: 80px;
      height: auto; }
  .mv_merit dd {
    float: left;
    font-size: min(4.3vw, 25px);
    display: inline-block;
    line-height: 1.1;
    font-weight: bold; }
    .mv_merit dd span {
      display: block;
      font-size: min(6.9vw, 41px);
      border-bottom: 3px solid #e0332e; }

@media screen and (min-width: 768px) and (max-width: 1000px) {
  .mv_merit {
    text-align: center; }
    .mv_merit div {
      display: inline-block;
      margin: 0 auto; }
    .mv_merit dd {
      text-align: left; } }
@media screen and (min-width: 1000px) {
  .mv_merit {
    padding: 0;
    width: 1000px;
    margin: 60px auto; }
    .mv_merit h2 {
      margin-bottom: 15px;
      margin-bottom: 30px; }
    .mv_merit div {
      display: flex;
      justify-content: center; }
      .mv_merit div dl {
        margin: 0 20px; }
    .mv_merit dt {
      margin-right: 10px; } }
/***************************
btn_area
****************************/
.btn_area {
  background: #1e1d4c;
  background: linear-gradient(90deg, #1e1d4c 0%, #1e1d4c 50%, #e0332e 50%, #e0332e 100%);
  padding: 10px;
  margin-bottom: 60px; }
  .btn_area div {
    background: #fff;
    padding: 20px 0;
    text-align: center; }
  .btn_area h3 {
    font-size: min(5.2vw, 30px);
    font-weight: bold;
    margin-bottom: 20px; }
  .btn_area ul {
    display: flex;
    justify-content: center;
    margin-bottom: 15px; }
  .btn_area li {
    width: 39%;
    margin: 0 3%; }
    .btn_area li img {
      width: 100%;
      height: auto; }
      .btn_area li img.pc {
        display: none; }
  .btn_area p {
    font-size: 1.2rem; }

@media screen and (min-width: 768px) and (max-width: 1000px) {
  .btn_area {
    width: 600px;
    margin: 0 auto 60px; }
    .btn_area li {
      width: 30%;
      margin: 0 5%; } }
@media screen and (min-width: 1000px) {
  .btn_area {
    width: 1000px;
    margin: 0 auto 90px; }
    .btn_area li {
      width: auto;
      margin: 0 30px; }
      .btn_area li img {
        width: auto;
        height: auto; }
        .btn_area li img.pc {
          display: block; }
        .btn_area li img.sp {
          display: none; }
    .btn_area a img {
      transition: 0.3s; }
    .btn_area a:hover img {
      opacity: 0.8; } }
/***************************
reason
****************************/
.reason_ttl {
  margin: -20px 20px 40px;
  text-align: center; }
  .reason_ttl img {
    width: 100%;
    height: auto;
    max-width: 550px; }

@media screen and (min-width: 1000px) {
  .reason_ttl {
    margin: 20px 0px 40px; } }
/***************************
reason1
****************************/
.reason1 {
  padding: 0 20px 40px; }
  .reason1 h3 {
    border: 4px solid #1e1d4c;
    border-radius: 15px;
    background: url("../images/top/bg_dot.png") repeat center top;
    padding: 30px 20px 20px;
    font-size: 2rem;
    position: relative;
    margin-bottom: 30px; }
    .reason1 h3 b {
      color: #e0332e; }
    .reason1 h3 span {
      color: #e0332e;
      font-size: 4.2rem;
      position: absolute;
      width: 50px;
      height: 50px;
      text-align: center;
      display: block;
      top: -35px;
      left: 50%;
      margin-left: -25px;
      z-index: 1; }
      .reason1 h3 span:after {
        content: "";
        display: block;
        width: 50px;
        height: 10px;
        background: #fff;
        position: absolute;
        top: 27px;
        left: 0;
        z-index: -1; }
  .reason1 > p {
    text-align: center;
    font-size: 2rem;
    line-height: 1.2;
    margin-bottom: 25px; }
    .reason1 > p span {
      font-size: 2.4rem;
      border-bottom: 3px solid #e0332e; }
    .reason1 > p b {
      font-size: 3.6rem;
      display: inline-block;
      margin-right: 15px; }
  .reason1 dl {
    margin-bottom: 4px; }
    .reason1 dl dt {
      background: #f4f2ea;
      position: relative;
      padding: 10px 30px 10px 15px;
      font-size: 2rem;
      line-height: 1.4;
      font-weight: bold;
      transition: 0.3s; }
      .reason1 dl dt:after, .reason1 dl dt:before {
        content: "";
        display: block;
        width: 8px;
        height: 3px;
        border-radius: 3px;
        background: #010101;
        position: absolute;
        top: 50%; }
      .reason1 dl dt:after {
        right: 15px;
        transform: rotate(45deg); }
      .reason1 dl dt:before {
        right: 10px;
        transform: rotate(-45deg); }
    .reason1 dl.on dt:after {
      transform: rotate(-45deg); }
    .reason1 dl.on dt:before {
      transform: rotate(45deg); }
    .reason1 dl:nth-of-type(n+2) dd {
      display: none; }
    .reason1 dl dt span {
      display: block;
      font-size: 1.6rem;
      font-weight: normal; }
    .reason1 dl dd figure {
      text-align: center; }
      .reason1 dl dd figure img {
        width: 100%;
        height: auto; }
    .reason1 dl dd p {
      padding: 15px 0; }
      .reason1 dl dd p b {
        color: #e0332e;
        font-weight: normal; }

@media screen and (min-width: 768px) and (max-width: 1000px) {
  .reason1 dl dd {
    zoom: 1;
    overflow: hidden;
    padding: 15px 0; }
    .reason1 dl dd figure {
      float: left;
      width: 45%;
      margin-right: 5%; }
    .reason1 dl dd p {
      float: left;
      width: 45%;
      padding: 0; } }
@media screen and (min-width: 1000px) {
  .reason1 {
    padding: 0 0 35px;
    width: 1000px;
    margin: 0 auto; }
    .reason1 h3 {
      padding: 12px 20px 28px; }
      .reason1 h3 span {
        color: #e0332e;
        font-size: 4.2rem;
        position: relative;
        width: auto;
        height: auto;
        text-align: center;
        display: inline-block;
        padding-right: 10px;
        top: 8px;
        left: 0;
        margin-left: 0px;
        z-index: 1;
        line-height: 1; }
        .reason1 h3 span:after {
          content: "";
          display: none;
          width: 0px;
          height: 0px; }
    .reason1 .acc {
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap; }
    .reason1 dl {
      margin-bottom: 0px;
      width: 300px;
      margin-bottom: 40px; }
      .reason1 dl dt:after, .reason1 dl dt:before {
        content: "";
        display: none;
        width: 0px;
        height: 0px; }
      .reason1 dl:nth-of-type(n+2) dd {
        display: block; } }
/***************************
reason2
****************************/
.reason2 {
  padding: 0 0 60px; }
  .reason2 h3 {
    border: 4px solid #1e1d4c;
    border-radius: 15px;
    background: url("../images/top/bg_dot.png") repeat center top;
    padding: 30px 20px 20px;
    font-size: 2rem;
    position: relative;
    margin-bottom: 30px;
    margin: 0 20px 30px; }
    .reason2 h3 b {
      color: #e0332e; }
    .reason2 h3 span {
      color: #e0332e;
      font-size: 4.2rem;
      position: absolute;
      width: 50px;
      height: 50px;
      text-align: center;
      display: block;
      top: -35px;
      left: 50%;
      margin-left: -25px;
      z-index: 1; }
      .reason2 h3 span:after {
        content: "";
        display: block;
        width: 50px;
        height: 10px;
        background: #fff;
        position: absolute;
        top: 27px;
        left: 0;
        z-index: -1; }
  .reason2 .merit {
    background: #fffd6f;
    padding: 20px 20px 1px;
    margin-bottom: 30px; }
    .reason2 .merit dl {
      zoom: 1;
      overflow: hidden;
      margin-bottom: 20px; }
    .reason2 .merit dt {
      margin-right: 3vw;
      float: left; }
      .reason2 .merit dt img {
        width: 15vw;
        max-width: 80px;
        height: auto; }
    .reason2 .merit dd {
      float: left;
      font-size: min(4.3vw, 25px);
      display: inline-block;
      line-height: 1.2;
      font-weight: bold; }
      .reason2 .merit dd span {
        display: block;
        font-size: min(6.9vw, 41px);
        border-bottom: 3px solid #e0332e;
        padding-bottom: 3px; }
  .reason2 .shot {
    margin: 0 20px 30px;
    background: #f4f2ea;
    padding: 20px 40px;
    text-align: center; }
    .reason2 .shot h4 {
      color: #e0332e;
      margin-bottom: 10px;
      border-bottom: 3px dotted #e0332e;
      font-size: min(5vw, 20px); }
    .reason2 .shot figure {
      margin-bottom: 20px; }
      .reason2 .shot figure img {
        width: 100%;
        height: auto; }
    .reason2 .shot p {
      font-size: 1.8rem;
      font-weight: bold;
      background: #fff;
      padding: 15px 0 25px;
      border-radius: 10px;
      position: relative; }
      .reason2 .shot p b {
        border-bottom: 3px solid #e0332e;
        padding-bottom: 3px; }
      .reason2 .shot p:before {
        content: "";
        width: 16px;
        height: 8px;
        background: url("../images/top/icon_hukidasi.png") no-repeat center bottom;
        position: absolute;
        top: -8px;
        left: 50%;
        margin-left: -8px; }
  .reason2 .shot_slider {
    position: relative; }
    .reason2 .shot_slider .slick-prev, .reason2 .shot_slider .slick-next {
      position: absolute;
      top: 0;
      z-index: 100;
      width: 50px;
      text-indent: -9999px;
      background-size: 9px auto;
      background-color: transparent;
      background-repeat: no-repeat;
      border: none;
      height: 100%; }
    .reason2 .shot_slider .slick-prev {
      left: -20px;
      background-image: url("../images/top/icon_prev.png");
      background-position: left center; }
    .reason2 .shot_slider .slick-next {
      right: -20px;
      background-image: url("../images/top/icon_next.png");
      background-position: right center; }
    .reason2 .shot_slider .slick-prev {
      background-position: left center; }
    .reason2 .shot_slider .slick-next {
      background-position: right center; }
  .reason2 .naitei {
    padding: 0 20px; }
    .reason2 .naitei h4 {
      position: relative;
      padding: 0 0 0 75px;
      font-size: 1.2rem;
      margin-bottom: 15px;
      font-weight: normal; }
      .reason2 .naitei h4 img {
        position: absolute;
        top: -20px;
        left: 0; }
      .reason2 .naitei h4 span {
        font-size: 2.2rem;
        color: #e0332e;
        font-weight: bold;
        display: block; }
    .reason2 .naitei p {
      font-size: 1.6rem; }

@media screen and (min-width: 768px) and (max-width: 1000px) {
  .reason2 .merit {
    padding: 40px 15% 21px; }
  .reason2 .shot figure {
    margin: 0 10px 20px; }
  .reason2 .shot p {
    margin: 0 10px; } }
@media screen and (min-width: 1000px) {
  .reason2 {
    padding: 0 0 60px;
    width: 1000px;
    margin: 0 auto; }
    .reason2 h3 {
      padding: 12px 20px 28px;
      margin: 0 0 30px; }
      .reason2 h3 span {
        color: #e0332e;
        font-size: 4.2rem;
        position: relative;
        width: auto;
        height: auto;
        text-align: center;
        display: inline-block;
        padding-right: 10px;
        top: 8px;
        left: 0;
        margin-left: 0px;
        z-index: 1;
        line-height: 1; }
        .reason2 h3 span:after {
          content: "";
          display: none;
          width: 0px;
          height: 0px; }
    .reason2 .merit {
      padding: 20px 40px 20px;
      margin-bottom: 30px;
      display: flex;
      justify-content: space-around;
      text-align: center; }
      .reason2 .merit dl {
        zoom: 1;
        overflow: hidden;
        margin-bottom: 0px; }
      .reason2 .merit dt {
        margin-right: 0vw;
        float: none;
        margin-bottom: 10px; }
        .reason2 .merit dt img {
          max-width: 80px;
          height: auto; }
      .reason2 .merit dd {
        float: none;
        font-size: 19px; }
        .reason2 .merit dd span {
          font-size: 30px; }
    .reason2 .shot {
      margin: 0 0 30px; }
      .reason2 .shot h4 {
        margin-bottom: 20px;
        border-bottom: 3px dotted #e0332e;
        font-size: 24px; }
      .reason2 .shot figure {
        margin: 0 10px 20px; }
        .reason2 .shot figure img {
          width: 100%;
          height: auto; }
      .reason2 .shot p {
        margin: 0 10px; } }
/***************************
reason3
****************************/
.reason3 {
  padding: 0 20px 40px; }
  .reason3 h3 {
    border: 4px solid #1e1d4c;
    border-radius: 15px;
    background: url("../images/top/bg_dot.png") repeat center top;
    padding: 30px 20px 20px;
    font-size: 2rem;
    position: relative;
    margin-bottom: 30px; }
    .reason3 h3 b {
      color: #e0332e; }
    .reason3 h3 span {
      color: #e0332e;
      font-size: 4.2rem;
      position: absolute;
      width: 50px;
      height: 50px;
      text-align: center;
      display: block;
      top: -35px;
      left: 50%;
      margin-left: -25px;
      z-index: 1; }
      .reason3 h3 span:after {
        content: "";
        display: block;
        width: 50px;
        height: 10px;
        background: #fff;
        position: absolute;
        top: 27px;
        left: 0;
        z-index: -1; }
  .reason3 dl {
    margin-bottom: 4px; }
    .reason3 dl dt {
      background: #f4f2ea;
      position: relative;
      padding: 10px 30px 10px 15px;
      font-size: 2rem;
      line-height: 1.4;
      font-weight: bold;
      transition: 0.3s; }
      .reason3 dl dt:after, .reason3 dl dt:before {
        content: "";
        display: block;
        width: 8px;
        height: 3px;
        border-radius: 3px;
        background: #010101;
        position: absolute;
        top: 50%; }
      .reason3 dl dt:after {
        right: 15px;
        transform: rotate(45deg); }
      .reason3 dl dt:before {
        right: 10px;
        transform: rotate(-45deg); }
    .reason3 dl.on dt:after {
      transform: rotate(-45deg); }
    .reason3 dl.on dt:before {
      transform: rotate(45deg); }
    .reason3 dl:nth-of-type(n+2) dd {
      display: none; }
    .reason3 dl dt {
      padding: 20px 30px 20px 15px; }
    .reason3 dl dd article {
      display: flex;
      align-items: center;
      padding: 10px 0; }
    .reason3 dl dd figure {
      margin-right: 10px;
      flex-basis: 134px; }
    .reason3 dl dd p {
      font-size: 1.6rem;
      color: #e0332e;
      flex-shrink: 100; }

@media screen and (min-width: 1000px) {
  .reason3 {
    padding: 0 0 60px;
    width: 1000px;
    margin: 0 auto; }
    .reason3 h3 {
      padding: 12px 20px 28px; }
      .reason3 h3 span {
        color: #e0332e;
        font-size: 4.2rem;
        position: relative;
        width: auto;
        height: auto;
        text-align: center;
        display: inline-block;
        padding-right: 10px;
        top: 8px;
        left: 0;
        margin-left: 0px;
        z-index: 1;
        line-height: 1; }
        .reason3 h3 span:after {
          content: "";
          display: none;
          width: 0px;
          height: 0px; }
    .reason3 .acc {
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap; }
    .reason3 dl {
      margin-bottom: 0px;
      width: 320px;
      margin-bottom: 20px; }
      .reason3 dl dt:after, .reason3 dl dt:before {
        content: "";
        display: none;
        width: 0px;
        height: 0px; }
      .reason3 dl:nth-of-type(n+2) dd {
        display: block; }
      .reason3 dl dt {
        padding: 10px 20px; } }
/***************************
reason4
****************************/
.reason4 {
  padding: 0 20px 60px; }
  .reason4 h3 {
    border: 4px solid #1e1d4c;
    border-radius: 15px;
    background: url("../images/top/bg_dot.png") repeat center top;
    padding: 30px 20px 20px;
    font-size: 2rem;
    position: relative;
    margin-bottom: 30px; }
    .reason4 h3 b {
      color: #e0332e; }
    .reason4 h3 span {
      color: #e0332e;
      font-size: 4.2rem;
      position: absolute;
      width: 50px;
      height: 50px;
      text-align: center;
      display: block;
      top: -35px;
      left: 50%;
      margin-left: -25px;
      z-index: 1; }
      .reason4 h3 span:after {
        content: "";
        display: block;
        width: 50px;
        height: 10px;
        background: #fff;
        position: absolute;
        top: 27px;
        left: 0;
        z-index: -1; }
  .reason4 .acc {
    margin-bottom: 60px; }
  .reason4 dl {
    margin-bottom: 4px; }
    .reason4 dl dt {
      background: #f4f2ea;
      position: relative;
      padding: 10px 30px 10px 15px;
      font-size: 2rem;
      line-height: 1.4;
      font-weight: bold;
      transition: 0.3s; }
      .reason4 dl dt:after, .reason4 dl dt:before {
        content: "";
        display: block;
        width: 8px;
        height: 3px;
        border-radius: 3px;
        background: #010101;
        position: absolute;
        top: 50%; }
      .reason4 dl dt:after {
        right: 15px;
        transform: rotate(45deg); }
      .reason4 dl dt:before {
        right: 10px;
        transform: rotate(-45deg); }
    .reason4 dl.on dt:after {
      transform: rotate(-45deg); }
    .reason4 dl.on dt:before {
      transform: rotate(45deg); }
    .reason4 dl:nth-of-type(n+2) dd {
      display: none; }
    .reason4 dl dt {
      padding: 20px 30px 20px 15px; }
    .reason4 dl dd figure {
      text-align: center; }
      .reason4 dl dd figure img {
        width: 100%;
        height: auto; }
    .reason4 dl dd p {
      padding: 15px 0; }
      .reason4 dl dd p b {
        color: #e0332e;
        font-weight: normal; }
  .reason4 .advice {
    padding: 0 20px; }
    .reason4 .advice h4 {
      position: relative;
      padding: 0 0 0 75px;
      font-size: 1.2rem;
      margin-bottom: 15px;
      font-weight: normal; }
      .reason4 .advice h4 img {
        position: absolute;
        top: -20px;
        left: 0; }
      .reason4 .advice h4 span {
        font-size: 2.2rem;
        color: #e0332e;
        font-weight: bold;
        display: block; }
    .reason4 .advice p {
      font-size: 1.6rem; }

@media screen and (min-width: 768px) and (max-width: 1000px) {
  .reason4 dl dd {
    zoom: 1;
    overflow: hidden;
    padding: 15px 0; }
    .reason4 dl dd figure {
      float: left;
      width: 45%;
      margin-right: 5%; }
    .reason4 dl dd p {
      float: left;
      width: 45%;
      padding: 0; } }
@media screen and (min-width: 1000px) {
  .reason4 {
    padding: 0 0 60px;
    width: 1000px;
    margin: 0 auto; }
    .reason4 h3 {
      padding: 12px 20px 28px; }
      .reason4 h3 span {
        color: #e0332e;
        font-size: 4.2rem;
        position: relative;
        width: auto;
        height: auto;
        text-align: center;
        display: inline-block;
        padding-right: 10px;
        top: 8px;
        left: 0;
        margin-left: 0px;
        z-index: 1;
        line-height: 1; }
        .reason4 h3 span:after {
          content: "";
          display: none;
          width: 0px;
          height: 0px; }
    .reason4 .acc {
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap;
      margin-bottom: 30px; }
    .reason4 dl {
      margin-bottom: 0px;
      width: 320px;
      margin-bottom: 20px; }
      .reason4 dl dt:after, .reason4 dl dt:before {
        content: "";
        display: none;
        width: 0px;
        height: 0px; }
      .reason4 dl:nth-of-type(n+2) dd {
        display: block; }
      .reason4 dl dt {
        padding: 10px 20px; } }
/***************************
course
****************************/
.course {
  margin-bottom: 60px; }
  .course h2 {
    border-bottom: 4px solid #e0332e;
    background: url("../images/top/bg_dot.png") repeat center top;
    padding: 15px 20px;
    font-size: 3rem;
    font-weight: bold;
    margin-bottom: 40px; }
  .course .course_slider {
    margin: 0 40px;
    position: relative; }
    .course .course_slider .slick-prev, .course .course_slider .slick-next {
      position: absolute;
      top: 0;
      z-index: 100;
      width: 50px;
      text-indent: -9999px;
      background-size: 9px auto;
      background-color: transparent;
      background-repeat: no-repeat;
      border: none;
      height: 100%; }
    .course .course_slider .slick-prev {
      left: -20px;
      background-image: url("../images/top/icon_prev.png");
      background-position: left center; }
    .course .course_slider .slick-next {
      right: -20px;
      background-image: url("../images/top/icon_next.png");
      background-position: right center; }
    .course .course_slider .slick-prev {
      left: -25px; }
    .course .course_slider .slick-next {
      right: -25px; }
  .course figure {
    margin-bottom: 15px; }
    .course figure img {
      width: 100%;
      height: auto; }
  .course h3 {
    font-size: 2rem;
    margin-bottom: 10px;
    font-weight: bold; }
  .course p {
    font-size: 1.6rem;
    margin-bottom: 10px; }
  .course article div {
    background: #f4f2ea;
    padding: 20px 20px 5px; }
  .course dl {
    margin-bottom: 15px;
    font-size: 1.6rem; }
  .course dt {
    font-weight: bold; }
  .course dd span {
    font-size: 1.2rem; }

@media screen and (min-width: 768px) and (max-width: 1000px) {
  .course article {
    zoom: 1;
    overflow: hidden; }
  .course figure {
    float: left;
    margin-bottom: 15px;
    margin-right: 15px;
    width: 45%; }
    .course figure.w100 {
      width: 100%;
      text-align: center; }
      .course figure.w100 img {
        width: 45%;
        height: auto;
        margin: 0 auto; }
  .course h3, .course p {
    float: left;
    width: 50%; }
  .course article div {
    clear: both;
    float: none;
    width: 100%;
    padding: 20px 20px 15px; }
  .course dl {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 5px; }
  .course dt {
    margin-right: 10px; } }
@media screen and (min-width: 1000px) {
  .course {
    width: 1000px;
    margin: 0 auto 90px; }
    .course article {
      zoom: 1;
      overflow: hidden; }
    .course figure {
      float: left;
      margin-bottom: 0px;
      margin-right: 15px;
      width: 450px; }
      .course figure.w100 {
        width: 100%;
        text-align: center; }
        .course figure.w100 img {
          width: 450px;
          height: auto;
          margin: 0 auto; }
    .course h3, .course p, .course article div {
      float: left;
      width: 455px; }
    .course dl {
      display: flex;
      flex-wrap: wrap; }
    .course dt {
      margin-right: 10px; } }
/***************************
instructor
****************************/
.instructor {
  margin-bottom: 40px; }
  .instructor h2 {
    border-bottom: 4px solid #e0332e;
    background: url("../images/top/bg_dot.png") repeat center top;
    padding: 15px 20px;
    font-size: 3rem;
    font-weight: bold;
    margin-bottom: 40px; }
  .instructor .instructor_slider {
    margin: 0 40px;
    position: relative; }
    .instructor .instructor_slider .slick-prev, .instructor .instructor_slider .slick-next {
      position: absolute;
      top: 0;
      z-index: 100;
      width: 50px;
      text-indent: -9999px;
      background-size: 9px auto;
      background-color: transparent;
      background-repeat: no-repeat;
      border: none;
      height: 100%; }
    .instructor .instructor_slider .slick-prev {
      left: -20px;
      background-image: url("../images/top/icon_prev.png");
      background-position: left center; }
    .instructor .instructor_slider .slick-next {
      right: -20px;
      background-image: url("../images/top/icon_next.png");
      background-position: right center; }
    .instructor .instructor_slider .slick-prev {
      left: -25px; }
    .instructor .instructor_slider .slick-next {
      right: -25px; }
  .instructor figure {
    margin-bottom: 15px; }
    .instructor figure img {
      width: 100%;
      height: auto; }
  .instructor h3 {
    font-size: 2rem;
    margin-bottom: 10px;
    font-weight: bold; }
  .instructor ul {
    margin-bottom: 10px; }
  .instructor li {
    font-size: 1.4rem;
    list-style: disc;
    margin-left: 20px;
    overflow: visible; }
  .instructor p {
    font-size: 1.6rem;
    margin-bottom: 10px; }

@media screen and (min-width: 768px) and (max-width: 1000px) {
  .instructor figure {
    float: left;
    margin-right: 15px;
    width: 45%; }
    .instructor figure.w100 {
      width: 100%;
      text-align: center; }
      .instructor figure.w100 img {
        width: 45%;
        height: auto;
        margin: 0 auto; }
  .instructor h3, .instructor p, .instructor ul {
    float: left;
    width: 50%; } }
@media screen and (min-width: 1000px) {
  .instructor {
    width: 1000px;
    margin: 0 auto 90px; }
    .instructor article {
      zoom: 1;
      overflow: hidden; }
    .instructor figure {
      float: left;
      margin-bottom: 0px;
      margin-right: 15px;
      width: 450px; }
      .instructor figure.w100 {
        width: 100%;
        text-align: center; }
        .instructor figure.w100 img {
          width: 450px;
          height: auto;
          margin: 0 auto; }
    .instructor h3, .instructor p, .instructor ul {
      float: left;
      width: 455px; } }
/***************************
voice
****************************/
.voice {
  background: #f4f2ea;
  padding: 30px 20px;
  margin-bottom: 60px; }
  .voice h2 {
    margin-bottom: 30px;
    text-align: center; }
    .voice h2 img {
      width: 100%;
      height: auto;
      max-width: 500px; }
  .voice article {
    margin-bottom: 30px; }
  .voice dl {
    display: flex;
    align-items: center;
    margin-bottom: 10px; }
  .voice dt {
    margin-right: 10px;
    flex-basis: 96px; }
  .voice dd {
    flex-shrink: 100;
    font-size: 2rem;
    color: #e0332e;
    font-weight: bold; }
    .voice dd span {
      font-size: 1.2rem;
      font-weight: normal;
      display: block;
      color: #010101; }
  .voice p {
    padding: 20px;
    background: #fff;
    font-size: 1.6rem;
    border-radius: 15px;
    position: relative; }
    .voice p:before {
      content: "";
      width: 16px;
      height: 8px;
      background: url("../images/top/icon_hukidasi.png") no-repeat center bottom;
      position: absolute;
      top: -8px;
      left: 47px;
      margin-left: -8px; }

@media screen and (min-width: 1000px) {
  .voice {
    padding: 30px 0px;
    margin-bottom: 90px; }
    .voice article {
      width: 1000px;
      margin: 0 auto 30px; } }
/***************************
faq
****************************/
.faq {
  margin-bottom: 50px; }
  .faq h2 {
    border-bottom: 4px solid #e0332e;
    background: url("../images/top/bg_dot.png") repeat center top;
    padding: 15px 20px;
    font-size: 3rem;
    font-weight: bold;
    margin-bottom: 40px; }
  .faq dl {
    margin: 0 20px 40px; }
  .faq dt {
    font-size: 2rem;
    color: #1e1d4c;
    font-weight: bold;
    border-bottom: 3px dotted #1e1d4c;
    padding-bottom: 5px;
    margin-bottom: 10px; }
  .faq dd {
    font-size: 1.6rem; }
    .faq dd span {
      color: #e0332e;
      font-weight: bold;
      display: block;
      margin-bottom: 5px;
      font-size: 2rem; }

@media screen and (min-width: 1000px) {
  .faq {
    width: 1000px;
    margin: 0 auto 90px; } }
/***************************
doc 資料請求
****************************/
#doc {
  margin: 0 20px 60px;
  border: 5px solid #e0332e;
  box-sizing: border-box;
  line-height: 1.3;
  font-size: 1.6rem; }
  #doc h2 {
    background: #e0332e;
    text-align: center;
    color: #fff;
    font-size: 2.8rem;
    font-weight: bold;
    padding: 5px 0 10px;
    position: relative;
    top: -2px; }
    #doc h2 span {
      font-weight: normal;
      font-size: 1.6rem;
      display: block; }
  #doc dl {
    padding: 20px; }
  #doc dt {
    margin-bottom: 5px; }
    #doc dt span {
      display: block;
      font-size: 1.3rem; }
  #doc dd {
    margin-bottom: 10px; }
    #doc dd input {
      padding: 3px 5px;
      box-sizing: border-box;
      border-radius: 5px;
      border: 1px solid #ccc;
      width: 100%;
      margin-bottom: 10px; }
    #doc dd select {
      padding: 3px 5px;
      box-sizing: border-box;
      border-radius: 5px;
      border: 1px solid #ccc;
      background: #fff; }
    #doc dd #postal {
      width: 90px; }
    #doc dd .zip {
      display: inline-block;
      margin-left: 10px;
      background: #1e1d4c;
      color: #fff;
      text-align: center;
      padding: 3px 10px;
      border-radius: 15px;
      position: relative;
      top: -5px; }
  #doc p {
    margin: 0 20px 30px; }
    #doc p input {
      border: none;
      background: #e0332e;
      color: #fff;
      text-align: center;
      width: 100%;
      font-size: 2rem;
      font-weight: normal;
      padding: 10px 0;
      border-radius: 25px; }

@media screen and (min-width: 1000px) {
  #doc {
    margin: 0 auto 90px;
    width: 1000px; } }
