@charset "UTF-8";
/* Scss Document */
/* Scss Document */
/* Scss Document */
.mainimg { position: relative; padding-bottom: 100px; margin-bottom: 60px; }
.mainimg .mainimg_ttl { position: absolute; z-index: 10; top: 30%; right: 9.33%; text-shadow: 0 3px 10px rgba(0, 0, 0, 0.16); font-size: 2.5rem; color: #fff; font-family: FP-ヒラギノUD丸ゴ StdN W6, FP-HiraginoUDSansRStdN-W6, YuGothic, "游ゴシック体", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro", "sans-serif"; }
@media (min-width: 390px) { .mainimg .mainimg_ttl { font-size: calc( 2.5rem + ( 1vw - 3.9px ) * 1.8518518519 ); } }
@media (min-width: 1200px) { .mainimg .mainimg_ttl { font-size: 4rem; } }
.mainimg .mainimg__slide { position: relative; width: auto; height: 80vh; min-height: 520px; overflow: hidden; }
.mainimg .mainimg__slide img { position: absolute; width: 100%; left: 50%; transform: translateX(-50%); width: auto; height: 100%; }
.mainimg .swiper-container-horizontal > .swiper-pagination-bullets, .mainimg .swiper-pagination-custom, .mainimg .swiper-pagination-fraction { bottom: 30px; right: -10px; left: auto; width: 60px; height: 25px; transform: rotate(90deg); }
.mainimg .swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet { margin: 0 6px; }
.mainimg .swiper-pagination-bullet { opacity: 1; background: #fff; }
.mainimg .swiper-pagination-bullet-active { opacity: 1; background: #004087; }
.mainimg .mainimg__step { position: absolute; z-index: 2; top: 45%; right: 0px; background: #004087; padding: 20px 0px 20px 20px; border-radius: 12px 0 0 12px; color: #fff; font-weight: bold; }
.mainimg .mainimg__step-ttl { margin-bottom: 5px; font-size: 1.5rem; font-weight: bold; color: #FFF257; }
.mainimg .mainimg__img { position: absolute; z-index: 2; }
.mainimg .mainimg__img-01 { width: 40%; max-width: 240px; left: 2%; bottom: 0; }
.mainimg .mainimg__img-02 { width: 22%; max-width: 120px; left: 34%; bottom: 10%; }
.mainimg:after { content: ''; position: absolute; z-index: 1; left: 0; bottom: 100px; width: 0; height: 0; border-style: solid; border-width: 0 65vw 70px 35vw; border-color: transparent transparent #F5F5F5 transparent; }

.about { position: relative; padding-bottom: 40px; }
.about .about__copy { margin-bottom: 15px; color: #004087; font-size: 1.8rem; font-weight: bold; text-align: center; line-height: 1.6666666667; }
@media (min-width: 390px) { .about .about__copy { font-size: calc( 1.8rem + ( 1vw - 3.9px ) * 0.2469135802 ); } }
@media (min-width: 1200px) { .about .about__copy { font-size: 2rem; } }
.about .about__txt { font-size: 1.4rem; line-height: 1.7333333333; }
@media (min-width: 390px) { .about .about__txt { font-size: calc( 1.4rem + ( 1vw - 3.9px ) * 0.1234567901 ); } }
@media (min-width: 1200px) { .about .about__txt { font-size: 1.5rem; } }
.about:after { content: ''; position: absolute; z-index: 1; left: 0; bottom: -70px; width: 0; height: 0; border-style: solid; border-width: 70px 35vw 0 65vw; border-color: #F5F5F5 transparent transparent transparent; }

.ability { padding: 100px 0; overflow: hidden; background: url("/img/home/bg_about.png") #fff repeat; }
.ability .ability__inner { position: relative; }
.ability .ability__box { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -webkit-flex-flow: row wrap; -ms-flex-flow: row wrap; flex-flow: row wrap; -webkit-align-content: flex-start; -ms-flex-line-pack: start; align-content: flex-start; -webkit-box-pack: justify; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-align: center; -webkit-align-items: center; -ms-flex-align: center; align-items: center; margin-bottom: 20px; }
.ability .ability__box .ability__name { flex: 0 1 60px; width: 60px; max-width: 60px; }
.ability .ability__box .ability__name-jp { font-size: 5rem; font-weight: bold; text-align: left; line-height: 1; }
.ability .ability__box .ability__name-en { font-style: italic; font-size: 1.3rem; font-weight: bold; text-align: left; letter-spacing: 0.1em; }
.ability .ability__box .ability__list-dt { flex: 0 1 calc(100% - 70px); width: calc(100% - 70px); max-width: calc(100% - 70px); }
.ability .ability__box .ability__box-dt { background-position: right; background-size: cover; padding: 2.66% 0% 2.66% 0%; padding: 25px 0px; max-width: 340px; text-align: center; font-size: 1.6rem; font-weight: bold; }
.ability .ability__box.ability__spirit .ability__name { color: #AD0A18; }
.ability .ability__box.ability__spirit .ability__box-dt { background-image: url("/img/home/tag_red.png"); }
.ability .ability__box.ability__tec .ability__name { color: #FFF257; }
.ability .ability__box.ability__tec .ability__box-dt { background-image: url("/img/home/tag_ye.png"); }
.ability .ability__box.ability__body .ability__name { color: #004087; }
.ability .ability__box.ability__body .ability__box-dt { background-image: url("/img/home/tag_bl.png"); }
.ability .ability__img { position: absolute; }
.ability .ability__img-01 { left: 2%; top: -30px; width: 15%; max-width: 60px; }
.ability .ability__img-02 { right: 0; bottom: -120px; width: 40%; max-width: 160px; }

.course .course__copy { margin-bottom: 40px; font-weight: bold; text-align: center; line-height: 1.7142857143; }
.course .course__box { margin-bottom: 40px; text-align: center; }
.course .course__box-copy { display: inline-block; position: relative; margin-bottom: 15px; font-weight: bold; color: #004087; font-size: 1.6rem; font-family: FP-ヒラギノUD丸ゴ StdN W6, FP-HiraginoUDSansRStdN-W6, YuGothic, "游ゴシック体", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro", "sans-serif"; }
.course .course__box-copy:before, .course .course__box-copy:after { content: ''; position: absolute; bottom: 0; width: 1px; height: 80%; background: #004087; }
.course .course__box-copy:before { left: -20px; transform: rotate(-40deg); }
.course .course__box-copy:after { right: -20px; transform: rotate(40deg); }
.course .course__box a { padding: 30px 30px 20px; box-sizing: border-box; border-radius: 26px; background: #fff; box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16); font-weight: bold; }
.course .course__box figure { margin-bottom: 20px; }
.course .course__box .course__name { font-size: 1.6rem; font-weight: bold; }
@media (min-width: 390px) { .course .course__box .course__name { font-size: calc( 1.6rem + ( 1vw - 3.9px ) * 0.2469135802 ); } }
@media (min-width: 1200px) { .course .course__box .course__name { font-size: 1.8rem; } }
.course .course__box .course__dt { margin-bottom: 10px; font-size: 1.4rem; }
@media (min-width: 390px) { .course .course__box .course__dt { font-size: calc( 1.4rem + ( 1vw - 3.9px ) * 0.1234567901 ); } }
@media (min-width: 1200px) { .course .course__box .course__dt { font-size: 1.5rem; } }
.course .course__box .course__btn { padding: 20px; border-radius: 30px; position: relative; }
.course .course__box .course__btn:after { display: block; content: ''; position: absolute; width: 100%; top: 50%; transform: translateY(-50%); right: 20px; position: absolute; width: 6px; height: 6px; border-top: 1px solid; border-right: 1px solid; top: 50%; transform: rotate(45deg) translate(0%, -50%); }
.course .course__box.course__yoji a { border: 7px solid #E6FF7B; }
.course .course__box.course__yoji .course__btn { background: #E6FF7B; }
.course .course__box.course__enji a { border: 7px solid #FFC1CF; }
.course .course__box.course__enji .course__btn { background: #FFC1CF; }
.course .course__box.course__el-school a { border: 7px solid #B4E2FF; }
.course .course__box.course__el-school .course__btn { background: #B4E2FF; }
.course .btn { margin-bottom: 20px; }

.promise { padding: 9.33% 9.33% 9.33% 9.33%; background: url("/img/home/bg_promise_sp.jpg") center/cover no-repeat; }
.promise .promise__wrap { background: rgba(255, 255, 255, 0.85); padding: 8% 8% 8% 8%; }
.promise .promise__ttl { font-size: 2.5rem; margin-bottom: 20px; }
@media (min-width: 390px) { .promise .promise__ttl { font-size: calc( 2.5rem + ( 1vw - 3.9px ) * 0.5617977528 ); } }
@media (min-width: 1280px) { .promise .promise__ttl { font-size: 3rem; } }
.promise .promise__ttl-num { font-size: 3.5rem; color: #AD0A18; }
@media (min-width: 390px) { .promise .promise__ttl-num { font-size: calc( 3.5rem + ( 1vw - 3.9px ) * 0.6172839506 ); } }
@media (min-width: 1200px) { .promise .promise__ttl-num { font-size: 4rem; } }
.promise .promise__box { display: inline-block; margin-bottom: 10px; background: linear-gradient(transparent 60%, #FFF257 60%); font-family: FP-ヒラギノUD丸ゴ StdN W6, FP-HiraginoUDSansRStdN-W6, YuGothic, "游ゴシック体", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro", "sans-serif"; font-size: 1.8rem; }
@media (min-width: 390px) { .promise .promise__box { font-size: calc( 1.8rem + ( 1vw - 3.9px ) * -0.2469135802 ); } }
@media (min-width: 1200px) { .promise .promise__box { font-size: 1.6rem; } }
.promise .promise__box .promise__num { margin-right: 10px; font-size: 2rem; color: #AD0A18; }
.promise .promise__box .promise__mark { color: #AD0A18; }

.staff .staff__ttl { margin-bottom: 50px; }
.staff .staff__list { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -webkit-flex-flow: row wrap; -ms-flex-flow: row wrap; flex-flow: row wrap; -webkit-align-content: flex-start; -ms-flex-line-pack: start; align-content: flex-start; -webkit-box-pack: justify; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; }
.staff .staff__box { flex: 0 1 46%; width: 46%; max-width: 46%; margin-bottom: 40px; text-align: center; font-weight: bold; }
.staff .staff__box .staff__img { margin-bottom: 20px; }
.staff .staff__box .staff__position { margin-bottom: 10px; color: #004087; }
.staff .staff__box .staff__name { margin-bottom: 5px; font-size: 1.6rem; }
.staff .staff__box:last-child { margin-bottom: 0; }

.news .news__list { margin-bottom: 60px; }
.news .news__list a { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -webkit-flex-flow: row wrap; -ms-flex-flow: row wrap; flex-flow: row wrap; -webkit-align-content: flex-start; -ms-flex-line-pack: start; align-content: flex-start; -webkit-box-pack: justify; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-align: start; -webkit-align-items: flex-start; -ms-flex-align: start; align-items: flex-start; -webkit-box-pack: start; -webkit-justify-content: flex-start; -ms-flex-pack: start; justify-content: flex-start; position: relative; padding: 20px 0; border-bottom: 1px solid #C3C3C3; font-size: 1.3rem; }
@media (min-width: 390px) { .news .news__list a { font-size: calc( 1.3rem + ( 1vw - 3.9px ) * 0.2469135802 ); } }
@media (min-width: 1200px) { .news .news__list a { font-size: 1.5rem; } }
.news .news__list a:after { display: block; content: ''; position: absolute; width: 100%; top: 50%; transform: translateY(-50%); right: 20px; position: absolute; width: 6px; height: 6px; border-top: 1px solid; border-right: 1px solid; top: 50%; transform: rotate(45deg) translate(0%, -50%); }
.news .news__list .news__date { flex: 0 1 100px; width: 100px; max-width: 100px; font-size: 1.2rem; color: #004087; }
@media (min-width: 390px) { .news .news__list .news__date { font-size: calc( 1.2rem + ( 1vw - 3.9px ) * 0.1234567901 ); } }
@media (min-width: 1200px) { .news .news__list .news__date { font-size: 1.3rem; } }
.news .news__list .news__txt { flex: 0 1 calc(100% - 140px); width: calc(100% - 140px); max-width: calc(100% - 140px); font-size: 1.4rem; font-weight: bold; text-overflow: ellipsis; overflow: hidden; white-space: nowrap; }
@media (min-width: 390px) { .news .news__list .news__txt { font-size: calc( 1.4rem + ( 1vw - 3.9px ) * 0.1234567901 ); } }
@media (min-width: 1200px) { .news .news__list .news__txt { font-size: 1.5rem; } }

/*------------------------------
		769px以上
------------------------------*/
@media screen and (min-width: 769px) { .mainimg { margin-bottom: 0; }
  .mainimg .swiper-container-horizontal > .swiper-pagination-bullets, .mainimg .swiper-pagination-custom, .mainimg .swiper-pagination-fraction { bottom: auto; top: 42%; }
  .mainimg .mainimg__step { top: auto; bottom: 12%; right: 4%; padding: 20px; border-radius: 12px; }
  .mainimg .mainimg__img-01 { width: 35%; max-width: 310px; left: 4%; bottom: -70px; }
  .mainimg .mainimg__img-02 { width: 18%; max-width: 170px; bottom: 6%; }
  .about .about__wrap { width: 65%; max-width: 500px; margin-left: auto; text-align: left; }
  .about .about__ttl { text-align: left; }
  .about .about__copy { text-align: left; }
  .ability .ability__box .ability__list-dt { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -webkit-flex-flow: row wrap; -ms-flex-flow: row wrap; flex-flow: row wrap; -webkit-align-content: flex-start; -ms-flex-line-pack: start; align-content: flex-start; -webkit-box-pack: justify; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; }
  .ability .ability__box .ability__list-dt .ability__box-dt { flex: 0 1 48%; width: 48%; max-width: 48%; }
  .course .course__box .course__btn { transition: .3s; }
  .course .course__box a:hover { opacity: 1; }
  .course .course__box a:hover .course__btn { background: #fff; }
  .course .course__box.course__yoji a:hover { background: #E6FF7B; }
  .course .course__box.course__enji a:hover { background: #FFC1CF; }
  .course .course__box.course__el-school a:hover { background: #B4E2FF; }
  .course .course__btn-wrap { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -webkit-flex-flow: row wrap; -ms-flex-flow: row wrap; flex-flow: row wrap; -webkit-align-content: flex-start; -ms-flex-line-pack: start; align-content: flex-start; -webkit-box-pack: justify; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-pack: center; -webkit-justify-content: center; -ms-flex-pack: center; justify-content: center; }
  .course .course__btn-wrap .btn { flex: 0 1 48%; width: 48%; max-width: 48%; max-width: 320px; margin: 0 2%; }
  .promise { background-image: url("/img/home/bg_promise_pc.jpg"); }
  .promise .promise__wrap { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -webkit-flex-flow: row wrap; -ms-flex-flow: row wrap; flex-flow: row wrap; -webkit-align-content: flex-start; -ms-flex-line-pack: start; align-content: flex-start; -webkit-box-pack: justify; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; }
  .promise .promise__wrap > * { flex: 0 1 48%; width: 48%; max-width: 48%; }
  .promise .promise__wrap .promise__ttl { text-align: left; line-height: 1.6666666667; }
  .staff .staff__inner { max-width: 600px; }
  .staff .staff__box { flex: 0 1 30%; width: 30%; max-width: 30%; margin-bottom: 0px; }
  .news .news__list a { padding: 30px 20px; }
  .news .news__list a:hover { opacity: 1; background: #E5E5E5; }
  .news .news__list .news__txt { line-height: 1; } }
/*------------------------------
		801px以上
------------------------------*/
@media screen and (min-width: 801px) { .ability { padding: 150px 0 100px; }
  .ability .ability__box .ability__name { flex: 0 1 100px; width: 100px; max-width: 100px; }
  .ability .ability__box .ability__list-dt { flex: 0 1 calc(100% - 120px); width: calc(100% - 120px); max-width: calc(100% - 120px); }
  .ability .ability__box .ability__list-dt .ability__box-dt { flex: 0 1 31%; width: 31%; max-width: 31%; }
  .ability .ability__img-01 { top: -100px; }
  .course .course__list { display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-orient: horizontal; -webkit-box-direction: normal; -webkit-flex-flow: row wrap; -ms-flex-flow: row wrap; flex-flow: row wrap; -webkit-align-content: flex-start; -ms-flex-line-pack: start; align-content: flex-start; -webkit-box-pack: justify; -webkit-justify-content: space-between; -ms-flex-pack: justify; justify-content: space-between; }
  .course .course__box { flex: 0 1 31%; width: 31%; max-width: 31%; } }
/*------------------------------
		1021px以上
------------------------------*/
@media screen and (min-width: 1001px) { .ability .ability__img-01 { width: 8%; max-width: 100px; left: -4%; }
  .ability .ability__img-02 { right: -200px; max-width: 200px; }
  .promise { padding: 60px 0; }
  .promise .promise__wrap { -webkit-box-pack: end; -webkit-justify-content: flex-end; -ms-flex-pack: end; justify-content: flex-end; max-width: 800px; padding: 50px; box-sizing: border-box; }
  .promise .promise__wrap .promise__ttl { flex: 0 1 auto; width: auto; max-width: auto; margin-right: 8%; }
  .promise .promise__wrap .promise__list { flex: 0 1 40%; width: 40%; max-width: 40%; } }
/*------------------------------
		1221px以上
------------------------------*/
@media screen and (min-width: 1201px) { .mainimg .mainimg__slide { height: 60vh; max-height: 640px; }
  .mainimg .mainimg__slide img { width: 110%; height: auto; }
  .mainimg .mainimg__step { padding: 20px 40px; }
  .mainimg .mainimg__img-01 { left: 14%; }
  .course .course__copy { margin-bottom: 60px; }
  .course .course__list { margin-bottom: 50px; }
  .course .course__box { margin-bottom: 0; } }

/*# sourceMappingURL=style.css.map */
