@charset "UTF-8";
/* ====================
 SIZE SET
==================== */
/* ===================
 MIXIN
==================== */
/*===================================
画面サイズ
===================================*/
.c-inner {
  width: 800px;
  margin-right: auto;
  margin-left: auto;
}

.c-outer {
  width: 1000px;
  margin-right: auto;
  margin-left: auto;
}

@media screen and (max-width: 1400px) {
  .fullWidth {
    width: 100%;
  }
}
@media screen and (max-width: 1000px) {
  .c-outer {
    width: 95%;
  }
}
@media screen and (max-width: 800px) {
  .c-inner {
    width: 85%;
  }
}
@media screen and (max-width: 834px) {
  .c-inner {
    width: 85%;
  }
  .c-outer {
    width: 86%;
  }
}
/*===================================
言語設定
===================================*/
.c-lang-jp .-jp {
  display: inline;
}
.c-lang-jp .-en {
  display: none;
}
.c-lang-en .-jp {
  display: none;
}
.c-lang-en .-en {
  display: inline;
}

/*===================================
font
===================================*/
/*===================================
color
===================================*/
/*===================================
swiper
===================================*/
.splide__arrow {
  top: calc(50% - 17.5px);
  width: 35px;
  height: 35px;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  -webkit-transform-origin: center;
          transform-origin: center;
  opacity: 1;
  margin: 0;
}
.splide__arrow svg {
  display: none;
}
.splide__arrow--next {
  background-image: url(../img/common/icon_slide_arrow_next.svg);
}
.splide__arrow--prev {
  background-image: url(../img/common/icon_slide_arrow_prev.svg);
}
@media only screen and (max-width: 834px) {
  .splide__arrow {
    width: vw(40);
    height: vw(40);
  }
}

.c-btn__arrow {
  position: relative;
  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;
  width: 690px;
  height: 45px;
  font-size: 1.6rem;
  letter-spacing: 0.1em;
  line-height: 1;
  font-weight: 700;
  color: #231815;
  margin: 50px auto 0;
  border: 2px solid #231815;
}
.c-btn__arrow::after {
  content: "";
  position: absolute;
  bottom: 50%;
  right: -47px;
  display: block;
  width: 147px;
  height: 15px;
  background: url(../img/common/link_arrow_pc.svg) no-repeat center/contain;
}
.c-btn__arrow::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  background: #231815;
  -webkit-transform: scale(0, 1);
          transform: scale(0, 1);
  -webkit-transform-origin: left;
          transform-origin: left;
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
  z-index: -1;
}
@media only screen and (min-width: 835px) {
  .c-btn__arrow:hover {
    color: #fff !important;
    text-decoration: none;
  }
  .c-btn__arrow:hover::before {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
    -webkit-transform-origin: left;
            transform-origin: left;
  }
  .c-btn__arrow:not(:hover)::before {
    -webkit-transform: scale(0, 1);
            transform: scale(0, 1);
    -webkit-transform-origin: right;
            transform-origin: right;
  }
}
.c-btn__circle {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  font-size: 2.2rem;
  letter-spacing: 0.1em;
  line-height: 1.5;
  font-weight: 700;
  padding-left: 15px;
  color: #fff;
}
.c-btn__circle::after {
  content: "";
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin: 0 25px 0 15px;
  display: block;
  width: 30px;
  height: 30px;
  background: url(../img/common/link_arrow_circle.svg) no-repeat center/contain;
}
@media only screen and (min-width: 835px) {
  .c-btn__circle:hover::before {
    -webkit-transform: translateX(5px);
            transform: translateX(5px);
  }
}

@media not all, screen and (max-width: 768px) {
  .c-btn__arrow {
    width: 270px;
    height: 30px;
    font-size: 1.3rem;
    letter-spacing: 0.1em;
    line-height: 1;
    margin: 20px auto 0;
    border: 1px solid #231815;
  }
  .c-btn__arrow::after {
    right: -30px;
    width: 80px;
    height: 9px;
  }
  .c-btn__circle {
    font-size: 1.7rem;
    letter-spacing: 0.1em;
    line-height: 1.24;
    padding-left: 8px;
  }
  .c-btn__circle::after {
    margin: 0 10px 0;
    width: 23px;
    height: 23px;
  }
}
.c-txt__heading {
  font-size: 50px;
  font-weight: 900;
  text-align: center;
  letter-spacing: 0.13em;
  color: #fff;
  text-shadow: -2px -2px #231815, 0px -2px #231815, 2px -2px #231815, -2px 0px #231815, 2px 0px #231815, -2px 2px #231815, 0px 2px #231815, 2px 2px #231815;
  padding-left: 0.13em;
}
.c-txt__eyecatch {
  width: 100%;
  height: 220px;
  margin-top: 100px;
  background: url(../img/common/txt_eyecatch.svg) repeat-x center left/2100px auto;
  -webkit-animation: 20s animate-backgroundLoop linear infinite;
          animation: 20s animate-backgroundLoop linear infinite;
}

@media not all, screen and (max-width: 768px) {
  .c-txt__heading {
    font-size: 29px;
    letter-spacing: 0.13em;
    padding-left: 0.13em;
    text-shadow: -1px -1px #231815, 0px -1px #231815, 1px -1px #231815, -1px 0px #231815, 1px 0px #231815, -1px 1px #231815, 0px 1px #231815, 1px 1px #231815;
  }
  .c-txt__eyecatch {
    height: 137px;
    margin-top: 55px;
    background-size: 961px auto;
    -webkit-animation: 10s animate-backgroundLoopSP linear infinite;
            animation: 10s animate-backgroundLoopSP linear infinite;
  }
}
/* **********************
　上書き
************************* */
.hd {
  background: #e9e8e8;
  width: 200px;
}
.hd__logo p {
  display: none;
}
.hd .menu__btn {
  color: #231815 !important;
}
.hd .menu__window::before {
  background: #ffe44c;
}
.hd .menu__window.under_hs::before {
  background: #af5e58;
}
.hd .menu__window.under_jhs::before {
  background: #51b160;
}
.hd .menu__window.under_els::before {
  background: #e9e8e8;
}
.hd .menu__window a:hover {
  text-decoration: none !important;
}
.hd__nav {
  font-size: 1.5rem;
  line-height: 1.33;
  font-weight: 500;
}
.hd-links {
  width: 157px;
  margin: 15px auto 0;
}
.hd-links li {
  margin-top: 15px;
}
.hd .sp-links {
  display: none;
}

@media not all, screen and (max-width: 768px) {
  .hd {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    width: 100%;
    height: 50px;
    background: #fff;
  }
  .hd__logo {
    height: 50px;
    margin: 0;
  }
  .hd__logo p {
    display: block;
    font-size: 1.3rem;
    letter-spacing: 0.16em;
    line-height: 1;
    font-weight: 700;
  }
  .hd__logo--yodo {
    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;
    width: 50px;
    height: 50px;
    margin: 0;
  }
  .hd__logo--yodo img {
    width: 36px;
  }
  .hd__nav {
    top: 50px;
    font-size: 1.5rem;
    margin-top: 0;
  }
  .hd .menu {
    background: #e9e8e8;
  }
  .hd .menu.hs {
    background: #992d05;
  }
  .hd .menu.jhs {
    background: #00933c;
  }
  .hd .menu .homeBtn {
    background: #e9e8e8;
  }
  .hd .menu__btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    height: 60px;
    padding-top: 0;
    padding-bottom: 0;
  }
  .hd .humBtn {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 50px;
    height: 50px;
    margin-right: 0;
    background: #231815;
  }
  .hd .humBtn span {
    width: 25px;
    height: 2px;
    background: #fff !important;
    margin: auto !important;
  }
  .hd .humBtn span:nth-of-type(2) {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-8px);
            transform: translateY(-8px);
  }
  .hd .humBtn span:nth-of-type(3) {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(6px);
            transform: translateY(6px);
  }
  .hd .open span:nth-of-type(1) {
    opacity: 0;
    -webkit-transform: none;
            transform: none;
  }
  .hd .open span:nth-of-type(2) {
    width: 25px;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
  }
  .hd .open span:nth-of-type(3) {
    width: 25px;
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg);
  }
  .hd .menu__window--course--cnt .department {
    display: none;
  }
  .hd-links {
    width: 157px;
  }
  .hd-links li {
    margin-top: 15px;
  }
  .hd-links__line {
    width: 70px;
    height: 1px;
    background: #231815;
    margin: 15px auto 0;
  }
}
@media screen and (min-width: 769px) {
  .hd .menu.windowOpen .menu__window {
    left: 200px;
  }
  .hd .menu.jhs .menu__window {
    background: rgba(51, 169, 99, 0.95);
  }
  .hd .menu.hs .menu__window {
    background: rgba(173, 87, 55, 0.95);
  }
  .hd .menu__window {
    background: rgba(247, 246, 246, 0.95);
  }
  .hd .menu__window--text li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    list-style: none !important;
  }
  .hd .menu__window--text li::before {
    content: "";
    display: block;
    width: 1em;
    height: 1em;
    margin-right: 0.75em;
    background: #b7b4b2;
  }
  .hd .menu__window--back:after {
    top: 3px;
  }
  .hd .menu__window--course {
    margin-left: 0;
  }
  .hd .menu__window--list {
    margin-left: 0;
  }
  .hd .menu__window--list li {
    padding-left: 26px;
  }
  .hd .menu__window--course--cnt {
    width: 25%;
    margin-right: 0 !important;
  }
}
@media not all, screen and (max-width: 768px) {
  .hd__nav {
    height: calc(100% - 105px);
  }
  .hd .menu {
    margin-bottom: 0;
  }
  .hd .menu a:before {
    display: none;
  }
  .hd .sp-links {
    display: block;
    background: #fff;
    padding-top: 25px;
  }
  .hd .sp-links__instagram {
    display: block;
    width: 90%;
    margin: 0 auto;
  }
  .hd .sp-links__youtube {
    display: block;
    width: 90%;
    margin: 15px auto 0;
  }
  .hd .sp-links img {
    display: block !important;
  }
  .hd .sp-links .l-footer-copy {
    padding-bottom: 25px;
  }
  .hd-links {
    margin: 0;
  }
  .hd-links__list {
    position: fixed;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    z-index: 10;
  }
  .hd-links__list--foot {
    bottom: 0;
    left: 0;
    width: 100% !important;
    height: 55px;
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
    z-index: 1000;
  }
  .hd-links__list--foot li {
    width: 50%;
    margin-top: 0 !important;
  }
  .hd-links__list--foot li:nth-of-type(1) {
    background: #009db1;
  }
  .hd-links__list--foot li:nth-of-type(2) {
    background: #006ec5;
  }
  .hd-links__list--foot li img {
    width: 100%;
    height: 100%;
    max-width: none;
    max-height: none;
    -o-object-fit: contain;
       object-fit: contain;
  }
  .hd-links__list--head {
    top: 6px;
    right: 60px;
    gap: 6px;
    width: 146px !important;
    height: 38px;
    z-index: 99999;
  }
  .hd-links__list--head li {
    width: 50%;
    margin-top: 0 !important;
  }
  .hd-links img {
    display: block !important;
  }
  .hd .menu__btn:before {
    top: 50%;
    height: 17px;
    background: none !important;
    border-right: 1px solid #231815;
    border-bottom: 1px solid #231815;
    -webkit-transform: rotate(45deg) translateY(calc(-50% + 0px)) translateX(-8px);
            transform: rotate(45deg) translateY(calc(-50% + 0px)) translateX(-8px);
    -webkit-transform-origin: center;
            transform-origin: center;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  .hd .menu__btn:after {
    display: none;
  }
  .hd .menu.jhs .menu__btn:before,
  .hd .menu.hs .menu__btn:before {
    border-color: #fff;
  }
  .hd .menu__btn.windowOpen:before {
    -webkit-transform: rotate(225deg) translateY(calc(50% - 8px));
            transform: rotate(225deg) translateY(calc(50% - 8px));
  }
}
.l-footer {
  padding-top: 200px;
}
@media screen and (min-width: 1400px) {
  .l-footer .inrWidth {
    width: 90% !important;
    max-width: 1100px;
  }
}
.l-footer__wrap {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  max-width: 1000px;
}
.l-footer__figure {
  position: absolute;
  top: -145px;
  right: -50px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  font-size: 1.2rem;
  letter-spacing: 0.05em;
  line-height: 1.5;
}
.l-footer__figure img {
  width: 240px;
}
.l-footer__figure figcaption {
  position: relative;
  text-align: right;
  margin: 0 -10px 0 0;
  padding-bottom: 35px;
  z-index: 1;
}
.l-footer-info {
  width: 370px;
}
.l-footer-info__honjin {
  width: 226px;
  margin: 0 auto;
}
.l-footer-info__jhs {
  width: 312px;
  margin-top: 15px;
}
.l-footer-info__hs {
  width: 370px;
  margin-top: 15px;
}
.l-footer-info__address {
  font-size: 1.4rem;
  letter-spacing: 0.04em;
  line-height: 1.5;
  margin-top: 15px;
}
.l-footer-sitemap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 10px;
  width: 450px;
}
.l-footer-sitemap li {
  position: relative;
  width: calc(30% - 10px + 3.3333333333px);
  font-size: 1.5rem;
  letter-spacing: 0em;
  line-height: 1.47;
  text-align: center;
}
.l-footer-sitemap li:not(:nth-of-type(3n+1))::before {
  content: "";
  position: absolute;
  top: 50%;
  left: -5px;
  display: block;
  width: 1px;
  height: 1em;
  background: #231815;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.l-footer-sitemap li:nth-of-type(3n) {
  width: calc(40% - 10px + 3.3333333333px);
}
.l-footer-copy {
  font-size: 1.5rem;
  letter-spacing: 0em;
  line-height: 1.47;
  text-align: center;
  padding: 50px 0;
}

@media not all, screen and (max-width: 768px) {
  .l-footer {
    padding-top: 80px;
    overflow: hidden;
  }
  .l-footer__wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .l-footer__figure {
    position: relative;
    top: auto;
    right: auto;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    font-size: 0.9rem;
    letter-spacing: 0.05em;
    line-height: 1.67;
    margin-inline: auto;
  }
  .l-footer__figure img {
    width: 150px;
  }
  .l-footer__figure figcaption {
    position: absolute;
    bottom: 0;
    right: -70px;
    margin: 0;
    padding-bottom: 20px;
    text-align: left;
  }
  .l-footer-info {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 100%;
    margin-top: 25px;
  }
  .l-footer-info__houjin {
    width: 118px;
    margin: 0 auto;
  }
  .l-footer-info__jhs {
    width: 156px;
    margin: 10px auto;
  }
  .l-footer-info__hs {
    width: 185px;
    margin: 10px auto;
  }
  .l-footer-info__address {
    font-size: 1.15rem;
    letter-spacing: 0.04em;
    line-height: 1.83;
    text-align: center;
    margin-top: 15px;
  }
  .l-footer-sitemap {
    gap: 5px;
    width: 100%;
    margin-top: 25px;
  }
  .l-footer-sitemap li {
    position: relative;
    width: calc(30% - 5px + 1.6666666667px);
    font-size: 1.15rem;
    letter-spacing: 0.04em;
    line-height: 1.83;
  }
  .l-footer-sitemap li:not(:nth-of-type(3n+1))::before {
    left: -2.5px;
  }
  .l-footer-sitemap li:nth-of-type(3n) {
    width: calc(40% - 5px + 1.6666666667px);
  }
  .l-footer-copy {
    font-size: 0.9rem;
    letter-spacing: 0.05em;
    line-height: 1.67;
    padding: 25px 0 80px;
  }
  .totop {
    bottom: 65px;
  }
}
/* **********************
　上書き
************************* */
@media screen and (min-width: 769px) {
  .fullWidth {
    width: calc(100% - 200px) !important;
    margin-left: 200px;
  }
  .page__h1 {
    width: calc(100% - 200px) !important;
    margin-left: 200px;
  }
}
body {
  font-family: "Noto Sans JP", sans-serif;
}

main {
  width: 100%;
  margin: 0;
  overflow: hidden;
}

.guide {
  margin-bottom: 0;
}

.seminar section .container,
.examinee section .container {
  width: 100%;
}

ul.prt_courcelink table.cource_tbl {
  border-collapse: unset;
}

.cource_tbl td {
  vertical-align: middle;
}

#STYLE2025 {
  width: 100%;
}
#STYLE2025 .inrWidth {
  max-width: 1000px;
}
#STYLE2025 .swiper-button-prev {
  width: 40px;
  left: -33px;
  background: url(../img/common/slide_arrow_prev.svg) no-repeat center/contain;
}
#STYLE2025 .swiper-button-next {
  width: 40px;
  right: -33px;
  background: url(../img/common/slide_arrow_next.svg) no-repeat center/contain;
}
#STYLE2025 .front-fv {
  margin-top: 0 !important;
  width: calc(100% - 200px);
  margin-left: auto;
}
#STYLE2025 .front-fv__movie {
  width: 100%;
  background: #ccc;
}
#STYLE2025 .front-fv__swiper {
  position: relative;
  width: 90%;
  max-width: 950px;
  margin: 50px auto 0;
}
#STYLE2025 .front-fv__slide {
  width: 300px;
  border-radius: 10px;
  overflow: hidden;
}
#STYLE2025 .front-fv__slide img {
  width: 300px;
  height: 210px;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
#STYLE2025 .front-news__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 20px;
  margin-top: 30px;
}
#STYLE2025 .front-news__block {
  width: 50%;
}
#STYLE2025 .front-news__block--school {
  width: 100%;
}
#STYLE2025 .front-news__title {
  position: relative;
  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;
  width: 100%;
  height: 45px;
  font-size: 20px;
  text-align: center;
  font-weight: 700;
  letter-spacing: 0.2em;
  color: #fff;
  padding-left: 0.2em;
  border-radius: 15px 15px 0 0;
}
#STYLE2025 .front-news__title img {
  position: absolute;
  bottom: 0;
}
#STYLE2025 .front-news__title--hs {
  background: #992d05;
}
#STYLE2025 .front-news__title--hs img {
  left: -10px;
  width: 163px;
}
#STYLE2025 .front-news__title--jhs {
  background: #00933c;
}
#STYLE2025 .front-news__title--jhs img {
  right: 5px;
  width: 163px;
}
#STYLE2025 .front-news__article {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 20px;
  margin-top: 20px;
  font-size: 1.4rem;
  letter-spacing: 0.04em;
  line-height: 1.64;
  font-weight: 500;
}
#STYLE2025 .front-news__article li {
  width: 50%;
}
#STYLE2025 .front-news__article .article__img {
  height: 180px;
  margin-bottom: 10px;
  padding: 0;
}
#STYLE2025 .front-news__article .article__img--cat {
  font-size: 1.4rem;
  letter-spacing: 0.1em;
  line-height: 1.64;
  padding: 3px 0;
}
#STYLE2025 .front-news__article .article__img img {
  position: static;
  width: 100%;
  height: 100%;
  max-width: none;
  max-height: none;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  -webkit-transform: none;
          transform: none;
}
#STYLE2025 .front-instagram .inrWidth {
  width: 100%;
}
#STYLE2025 .front-instagram__title {
  position: relative;
  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;
  width: 100%;
  height: 72px;
  font-size: 2.8rem;
  letter-spacing: 0em;
  line-height: 1;
  font-weight: 500;
  color: #fff;
  background: -webkit-gradient(linear, left top, right top, from(#ffbb0a), color-stop(42%, #ff3287), to(#820082));
  background: linear-gradient(to right, #ffbb0a, #ff3287 42%, #820082);
}
#STYLE2025 .front-instagram__icon {
  width: 39px;
  margin-right: 0.5em;
}
#STYLE2025 .front-instagram__figure {
  position: absolute;
  bottom: 0;
  left: calc(50% - 300px);
  width: 186px;
}
#STYLE2025 .front-instagram__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 20px;
  margin-top: 20px;
}
#STYLE2025 .front-instagram__list li {
  width: calc(25% - 20px + 5px);
  height: 294px;
}
#STYLE2025 .front-instagram__list img {
  width: 100%;
  height: 100%;
  max-width: none;
  max-height: none;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
#STYLE2025 .front-instagram__bannar {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 20px;
  margin-top: 100px;
  font-size: 1.7rem;
  letter-spacing: 0.08em;
  line-height: 1.29;
  font-weight: 700;
  text-align: center;
}
#STYLE2025 .front-instagram__bannar li {
  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;
  width: calc(25% - 20px + 5px);
  height: 60px;
  background: #e5e2dc;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media only screen and (min-width: 835px) {
  #STYLE2025 .front-instagram__bannar li:hover {
    opacity: 0.7;
  }
}
#STYLE2025 .front-instagram__bannar li::before {
  content: "";
  -ms-flex-negative: 0;
      flex-shrink: 0;
  display: block;
  width: 42px;
  height: 42px;
  -webkit-mask-image: url(../img/common/icon_instagram_white.svg);
          mask-image: url(../img/common/icon_instagram_white.svg);
  -webkit-mask-position: center right;
          mask-position: center right;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  margin-left: 18px;
  background: -webkit-gradient(linear, left top, right top, from(#ffbb0a), color-stop(42%, #ff3287), to(#820082));
  background: linear-gradient(to right, #ffbb0a, #ff3287 42%, #820082);
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
#STYLE2025 .front-instagram__bannar li a {
  text-decoration: none;
}
#STYLE2025 .front-instagram__bannar li a:hover {
  opacity: 1;
}
#STYLE2025 .front-instagram__bannar li.is-on {
  background: -webkit-gradient(linear, left top, right top, from(#ffbb0a), color-stop(42%, #ff3287), to(#820082));
  background: linear-gradient(to right, #ffbb0a, #ff3287 42%, #820082);
}
#STYLE2025 .front-instagram__bannar li.is-on::before {
  background: #fff;
}
#STYLE2025 .front-instagram__bannar li.is-on a {
  color: #fff;
}
#STYLE2025 .front-instagram__bannar a {
  width: 100%;
}
#STYLE2025 .front-links--next {
  position: relative;
  margin-top: -70px;
  z-index: 1;
}
#STYLE2025 .front-links__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 30px;
}
#STYLE2025 .front-links__block {
  width: calc(50% - 15px);
}
#STYLE2025 .front-links__block a {
  color: #fff;
}
#STYLE2025 .front-links__block--hs span,
#STYLE2025 .front-links__block--hs .front-links__button,
#STYLE2025 .front-links__block--hs .front-links__pamphlet {
  background: #992d05;
}
#STYLE2025 .front-links__block--jhs span,
#STYLE2025 .front-links__block--jhs .front-links__button,
#STYLE2025 .front-links__block--jhs .front-links__pamphlet {
  background: #00933c;
}
#STYLE2025 .front-links__main span {
  height: 104px;
}
#STYLE2025 .front-links__main span img {
  width: auto;
  height: 59px;
}
#STYLE2025 .front-links__button {
  height: 74px;
  margin-top: 2px;
}
#STYLE2025 .front-links__pamphlet {
  position: relative;
  font-size: 2.2rem;
  letter-spacing: 0.05em;
  line-height: 1.41;
  height: 550px;
  font-weight: 700;
  text-align: center;
  color: #fff;
  margin-top: 2px;
  padding-top: 35px;
}
#STYLE2025 .front-links__pamphlet::before, #STYLE2025 .front-links__pamphlet::after {
  content: "";
  position: absolute;
  bottom: -1px;
  right: -1px;
  width: 100%;
  height: 180px;
  background: #fff;
  clip-path: polygon(100% 100%, 100% 0%, 0% 100%);
}
#STYLE2025 .front-links__pamphlet::after {
  right: auto;
  left: -1px;
  clip-path: polygon(0% 100%, 0% 0%, 100% 100%);
}
#STYLE2025 .front-links__pamphlet a {
  position: relative;
  display: block;
  width: 300px;
  margin: 20px auto 0;
  z-index: 1;
}
#STYLE2025 .front-links__pamphlet a::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  display: block;
  width: 100%;
  height: 100%;
  -webkit-transition: 0.2s;
  transition: 0.2s;
  z-index: 2;
}
#STYLE2025 .front-links__pamphlet a::after {
  content: "";
  position: absolute;
  top: 5px;
  right: -5px;
  display: block;
  width: 100%;
  height: 100%;
  background: rgba(160, 160, 160, 0.5);
}
@media only screen and (min-width: 835px) {
  #STYLE2025 .front-links__pamphlet a:hover {
    opacity: 1;
  }
  #STYLE2025 .front-links__pamphlet a:hover::before {
    border-top: 4px solid rgb(160, 160, 160);
    border-left: 4px solid rgb(160, 160, 160);
    -webkit-transform: translate(5px, 5px);
            transform: translate(5px, 5px);
  }
  #STYLE2025 .front-links__pamphlet a:hover img {
    opacity: 1;
    -webkit-transform: translate(5px, 5px);
            transform: translate(5px, 5px);
  }
}
#STYLE2025 .front-links__pamphlet img {
  position: relative;
  -webkit-transition: 0.2s;
  transition: 0.2s;
  z-index: 1;
}
#STYLE2025 .front-links__banner {
  display: block;
  margin-top: 20px;
}
#STYLE2025 .front-links__map {
  margin-top: 50px;
}
#STYLE2025 .front-links__map p {
  font-size: 1.4rem;
  letter-spacing: 0.012em;
  line-height: 1.79;
  text-indent: -1em;
  margin-top: 1em;
  padding-left: 1em;
}
#STYLE2025 .front-uniform__wrap {
  margin-top: 30px;
}
#STYLE2025 .front-uniform__content {
  position: relative;
  margin-top: 20px;
  font-size: 1.7rem;
  letter-spacing: 0em;
  line-height: 1.82;
  font-weight: 700;
  text-align: center;
  padding: 60px 40px;
  border-radius: 20px;
}
#STYLE2025 .front-uniform__content::before {
  content: "";
  position: absolute;
  top: -70px;
  left: calc(50% - 10px);
  display: block;
  width: 20px;
  height: 75px;
  clip-path: polygon(50% 0%, 100% 100%, 0% 100%);
  z-index: 1;
}
#STYLE2025 .front-uniform__content--hs {
  background: #f1e4e0;
}
#STYLE2025 .front-uniform__content--hs::before {
  background: #f1e4e0;
}
#STYLE2025 .front-uniform__content--jhs {
  background: #d8ede1;
}
#STYLE2025 .front-uniform__content--jhs::before {
  background: #d8ede1;
}
#STYLE2025 .front-uniform__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
#STYLE2025 .front-uniform__list li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  width: 25%;
}
#STYLE2025 .front-uniform__list li:nth-of-type(n+5) {
  margin-top: 20px;
}
#STYLE2025 .front-uniform__list figcaption {
  font-size: 1.4rem;
  letter-spacing: 0.05em;
  line-height: 1.43;
  text-align: center;
  padding: 10px 0 0;
}
#STYLE2025 .front-uniform__figure {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 350px;
  pointer-events: none;
}
#STYLE2025 .front-uniform__note {
  font-size: 1.4rem;
  letter-spacing: 0.012em;
  line-height: 1.79;
  text-align: right;
  text-indent: -1em;
  margin-top: 1em;
  padding-left: 1em;
}
#STYLE2025 .front-day__wrap {
  margin-top: 30px;
}
#STYLE2025 .front-day__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
#STYLE2025 .front-day__list li {
  width: 25%;
  text-align: center;
}
#STYLE2025 .front-day__list li:nth-of-type(n+5) {
  margin-top: 20px;
}
#STYLE2025 .front-day__list dl {
  width: calc(100% - 20px);
}
#STYLE2025 .front-day__list dt {
  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;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  height: 75px;
  font-size: 1.6rem;
  letter-spacing: 0.05em;
  line-height: 1.38;
  font-weight: 700;
}
#STYLE2025 .front-day__list dd {
  font-size: 1.4rem;
  letter-spacing: 0.05em;
  line-height: 1.43;
  font-weight: 500;
  margin-top: 10px;
}
#STYLE2025 .front-day__figure {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 350px;
  pointer-events: none;
}
#STYLE2025 .front-movie {
  background: #e5e2dc;
  padding: 80px 0;
}
#STYLE2025 .front-movie__swiper {
  position: relative;
  max-width: 950px;
  margin: 70px auto 0;
}
#STYLE2025 .front-movie__slide {
  width: 300px;
  border: 2px solid #231815;
  border-radius: 10px;
  overflow: hidden;
}
#STYLE2025 .front-movie__slide img {
  width: 100%;
  height: 170px;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
#STYLE2025 .front-movie__slide p {
  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;
  height: 44px;
  font-size: 1.8rem;
  letter-spacing: 0.05em;
  line-height: 1.5;
  font-weight: 700;
  text-align: center;
  color: #fff;
  background-color: #8a8053;
  border-top: 2px solid #231815;
}
#STYLE2025.front-school .front-news__title--hs img {
  left: calc(50% - 350px);
  width: 190px;
}
#STYLE2025.front-school .front-news__title--jhs img {
  left: calc(50% - 350px);
  width: 114px;
}
#STYLE2025.front-school .front-news__article li {
  width: 25%;
}
#STYLE2025.front-school .front-instagram__figure {
  position: absolute;
  bottom: 0;
}
#STYLE2025.front-school .front-instagram__figure--hs1 {
  left: 0;
  bottom: -40px;
  width: 176px;
}
#STYLE2025.front-school .front-instagram__figure--hs2 {
  left: auto;
  right: -10px;
  bottom: -20px;
  width: 228px;
}
#STYLE2025.front-school .front-instagram__figure--jhs1 {
  left: 0;
  bottom: -20px;
  width: 130px;
}
#STYLE2025.front-school .front-instagram__figure--jhs2 {
  left: auto;
  right: -20px;
  bottom: -20px;
  width: 166px;
}
#STYLE2025.front-school .front-links__block--school {
  width: 100%;
}
#STYLE2025.front-school .front-links__button {
  height: 260px;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  font-size: 40px;
  margin-top: 30px;
  padding-left: 0;
}
#STYLE2025.front-school .front-links__button::after {
  margin-left: auto;
}
#STYLE2025.front-school .front-links__button img {
  width: auto;
  height: 100%;
  margin-right: 25px;
}
#STYLE2025 .direction-lead {
  margin-top: 0 !important;
  font-size: 2.7rem;
  letter-spacing: 0.08em;
  line-height: 1.93;
  font-weight: 700;
  text-align: center;
}
#STYLE2025 .direction-lead p {
  margin-top: 50px;
}
#STYLE2025 .direction-record {
  margin-top: 170px;
}
#STYLE2025 .direction-record__heading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  margin-bottom: 15px;
}
#STYLE2025 .direction-record__heading h2 {
  font-size: 3.6rem;
  letter-spacing: 0.1em;
  line-height: 1.19;
  font-weight: 700;
}
#STYLE2025 .direction-record__heading p {
  font-size: 1.4rem;
  letter-spacing: 0.012em;
  line-height: 1.79;
  font-weight: 500;
  text-indent: -1em;
  margin-left: 1em;
  padding-left: 1em;
}
#STYLE2025 .direction-record__title {
  font-size: 2.5rem;
  letter-spacing: 0.1em;
  line-height: 1.68;
  font-weight: 700;
  background: #fff5dc;
  padding: 2px 10px;
}
#STYLE2025 .direction-record__list {
  font-size: 1.5rem;
  letter-spacing: 0em;
  line-height: 1.2;
  font-weight: 500;
  margin: 30px auto 60px;
  -webkit-column-count: 3;
     -moz-column-count: 3;
          column-count: 3;
  -webkit-column-gap: 30px;
     -moz-column-gap: 30px;
          column-gap: 30px;
  -webkit-column-rule: 1px solid #231815;
     -moz-column-rule: 1px solid #231815;
          column-rule: 1px solid #231815;
}
#STYLE2025 .direction-record__list--column4 {
  -webkit-column-count: 4;
     -moz-column-count: 4;
          column-count: 4;
}
#STYLE2025 .direction-record__list li:not(:first-child) {
  margin-top: 15px;
}
#STYLE2025 .direction-record__list li:last-of-type {
  text-align: right;
}
#STYLE2025 .direction-record__column {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  gap: 30px;
  margin-top: 120px;
  padding: 45px;
  border: 3px solid #ffb10a;
  border-radius: 30px;
}
#STYLE2025 .direction-record__column h3 {
  position: absolute;
  top: -22px;
  left: 45px;
  width: 200px;
}
#STYLE2025 .direction-record__column p {
  font-size: 1.8rem;
  letter-spacing: 0em;
  line-height: 1.94;
  font-weight: 700;
}
#STYLE2025 .direction-record__column strong {
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  font-size: 3.4rem;
  letter-spacing: 0em;
  line-height: 1;
  background: url(../img/info/direction/column_line.svg) no-repeat center bottom/contain;
  margin: 0 auto 15px 0;
  padding-bottom: 15px;
}
#STYLE2025 .direction-record__figure {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 131px;
}
#STYLE2025 .direction-guidance {
  margin-top: 170px;
}
#STYLE2025 .direction-guidance__block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 30px;
  margin-top: 70px;
}
#STYLE2025 .direction-guidance__textarea {
  width: 100%;
}
#STYLE2025 .direction-guidance__textarea h3 {
  position: relative;
  font-size: 2.3rem;
  letter-spacing: 0.1em;
  line-height: 1.87;
  font-weight: 700;
  padding: 1px 10px;
  color: #fff;
  background: #ffb10a;
}
#STYLE2025 .direction-guidance__textarea h3::after {
  content: "";
  position: absolute;
  right: -1px;
  top: -1px;
  display: block;
  width: 20px;
  height: calc(100% + 2px);
  background: #fff;
  clip-path: polygon(0% 50%, 100% 0%, 100% 100%);
}
#STYLE2025 .direction-guidance__textarea p {
  font-size: 1.8rem;
  letter-spacing: 0.03em;
  line-height: 1.94;
  font-weight: 500;
  font-weight: 500;
  margin-top: 20px;
}
#STYLE2025 .direction-guidance__textarea strong {
  display: block;
  font-size: 3.4rem;
  letter-spacing: 0.03em;
  line-height: 1.38;
  font-weight: 700;
  margin-bottom: 10px;
}
#STYLE2025 .direction-guidance__textarea img {
  margin-top: 15px;
}
#STYLE2025 .direction-guidance__image {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 440px;
}
#STYLE2025 .direction-guidance__image p {
  font-size: 1.4rem;
  letter-spacing: 0.012em;
  line-height: 1.79;
  text-align: right;
  text-indent: -1em;
  margin-top: 1em;
  padding-left: 1em;
}

@media not all, screen and (max-width: 768px) {
  /* **********************
  　上書き
  ************************* */
  body {
    padding-top: 50px;
  }
  .shiroyama .minerva__blk:last-of-type {
    margin-bottom: 0 !important;
  }
  .cource_box p {
    margin: 1em 0;
  }
  #STYLE2025 .swiper-button-prev {
    width: 40px;
    left: -33px;
    background: url(../img/common/slide_arrow_prev.svg) no-repeat center/contain;
  }
  #STYLE2025 .swiper-button-next {
    width: 40px;
    right: -33px;
    background: url(../img/common/slide_arrow_next.svg) no-repeat center/contain;
  }
  #STYLE2025 .front-fv {
    width: 100%;
  }
  #STYLE2025 .front-fv__swiper {
    width: 198px;
    margin: 40px auto 0;
  }
  #STYLE2025 .front-fv__slide {
    width: 198px;
    border-radius: 5px;
  }
  #STYLE2025 .front-fv__slide img {
    height: 138px;
  }
  #STYLE2025 .front-news__wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 40px;
    margin-top: 25px;
  }
  #STYLE2025 .front-news__block {
    width: 100%;
  }
  #STYLE2025 .front-news__title {
    height: 32px;
    font-size: 15px;
    border-radius: 8px 8px 0 0;
  }
  #STYLE2025 .front-news__title--hs img {
    left: -10px;
    width: 85px;
  }
  #STYLE2025 .front-news__title--jhs {
    background: #00933c;
  }
  #STYLE2025 .front-news__title--jhs img {
    right: 5px;
    width: 85px;
  }
  #STYLE2025 .front-news__article {
    gap: 15px;
    margin-top: 15px;
    font-size: 1.15rem;
    letter-spacing: 0.04em;
    line-height: 1.61;
  }
  #STYLE2025 .front-news__article .article__img {
    height: 130px;
    margin-bottom: 5px;
    padding: 0;
  }
  #STYLE2025 .front-news__article .article__img--cat {
    padding: 3px 1em;
    font-size: 1.1rem;
    letter-spacing: 0.1em;
    line-height: 1;
  }
  #STYLE2025 .front-instagram .inrWidth {
    width: 90%;
  }
  #STYLE2025 .front-instagram__title {
    height: 42px;
    font-size: 1.7rem;
    letter-spacing: 0em;
    line-height: 1;
  }
  #STYLE2025 .front-instagram__icon {
    width: 23px;
  }
  #STYLE2025 .front-instagram__figure {
    left: calc(50% - 165px);
    width: 102px;
  }
  #STYLE2025 .front-instagram__list {
    gap: 7.5px;
    margin-top: 7.5px;
  }
  #STYLE2025 .front-instagram__list li {
    width: calc(33.33% - 7.5px + 2.5px);
    height: calc(290 / 750 * 100vw);
  }
  #STYLE2025 .front-instagram__list li:nth-of-type(n+7) {
    display: none;
  }
  #STYLE2025 .front-instagram__bannar {
    gap: 10px;
    margin-top: 55px;
    font-size: 1.3rem;
    letter-spacing: 0.08em;
    line-height: 1.31;
  }
  #STYLE2025 .front-instagram__bannar li {
    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;
    width: calc(50% - 10px + 5px);
    height: 45px;
  }
  #STYLE2025 .front-instagram__bannar li::before {
    width: 32px;
    height: 32px;
    margin-left: 9px;
  }
  #STYLE2025 .front-links--next {
    margin-top: -35px;
  }
  #STYLE2025 .front-links__wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 0;
  }
  #STYLE2025 .front-links__block {
    width: 100%;
  }
  #STYLE2025 .front-links__block:nth-of-type(n+2) {
    margin-top: 55px;
  }
  #STYLE2025 .front-links__main span {
    height: 75px;
  }
  #STYLE2025 .front-links__main span img {
    height: 48px;
  }
  #STYLE2025 .front-links__button {
    height: 55px;
  }
  #STYLE2025 .front-links__pamphlet {
    font-size: 1.7rem;
    letter-spacing: 0.05em;
    line-height: 1.35;
    height: auto;
    margin-top: 2px;
    padding: 20px 0 10px;
  }
  #STYLE2025 .front-links__pamphlet::before, #STYLE2025 .front-links__pamphlet::after {
    height: 140px;
  }
  #STYLE2025 .front-links__pamphlet a {
    width: 235px;
    margin: 10px auto 0;
  }
  #STYLE2025 .front-links__banner {
    display: block;
    margin-top: 10px;
  }
  #STYLE2025 .front-links__map {
    margin-top: 25px;
  }
  #STYLE2025 .front-links__map p {
    font-size: 0.9rem;
    letter-spacing: 0.04em;
    line-height: 1.56;
  }
  #STYLE2025 .front-uniform__wrap {
    margin-top: 25px;
  }
  #STYLE2025 .front-uniform__content {
    font-size: 1.25rem;
    letter-spacing: 0em;
    line-height: 1.68;
    padding: 40px 10px;
    border-radius: 10px;
  }
  #STYLE2025 .front-uniform__content::before {
    top: -35px;
    left: calc(50% - 7px);
    width: 14px;
    height: 37px;
  }
  #STYLE2025 .front-uniform__list {
    gap: 6px;
  }
  #STYLE2025 .front-uniform__list li {
    width: calc(50% - 3px);
  }
  #STYLE2025 .front-uniform__list li:nth-of-type(n+3) {
    margin-top: 10px;
  }
  #STYLE2025 .front-uniform__list figcaption {
    font-size: 1.05rem;
    letter-spacing: 0.05em;
    line-height: 1.43;
    padding: 5px 0 0;
  }
  #STYLE2025 .front-uniform__figure {
    right: -5vw;
    width: 221px;
  }
  #STYLE2025 .front-uniform__note {
    font-size: 0.9rem;
    letter-spacing: 0.04em;
    line-height: 1.56;
  }
  #STYLE2025 .front-day__wrap {
    margin-top: 25px;
  }
  #STYLE2025 .front-day__list li {
    width: 50%;
  }
  #STYLE2025 .front-day__list li:nth-of-type(n+3) {
    margin-top: 20px;
  }
  #STYLE2025 .front-day__list dl {
    width: calc(100% - 10px);
  }
  #STYLE2025 .front-day__list dt {
    height: 48px;
    font-size: 1rem;
    letter-spacing: 0.05em;
    line-height: 1.4;
  }
  #STYLE2025 .front-day__list dd {
    font-size: 1rem;
    letter-spacing: 0.05em;
    line-height: 1.4;
    margin-top: 5px;
    white-space: nowrap;
  }
  #STYLE2025 .front-day__figure {
    position: absolute;
    bottom: 0;
    right: 0;
    width: 350px;
    pointer-events: none;
  }
  #STYLE2025 .front-movie {
    padding: 45px 0;
  }
  #STYLE2025 .front-movie__swiper {
    width: 198px;
    margin: 35px auto 0;
  }
  #STYLE2025 .front-movie__slide {
    width: 198px;
    border: 1px solid #231815;
    border-radius: 5px;
  }
  #STYLE2025 .front-movie__slide img {
    height: 100px;
  }
  #STYLE2025 .front-movie__slide p {
    height: 28px;
    font-size: 1.15rem;
    letter-spacing: 0.05em;
    line-height: 1.3;
    border-top: 1px solid #231815;
  }
  #STYLE2025.front-school .front-news__title--hs img {
    left: calc(50% - 175px);
    width: 90px;
  }
  #STYLE2025.front-school .front-news__title--jhs img {
    left: calc(50% - 125px);
    width: 57px;
  }
  #STYLE2025.front-school .front-news__article {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  #STYLE2025.front-school .front-news__article li {
    width: calc(50% - 7.5px);
  }
  #STYLE2025.front-school .front-instagram__figure {
    position: absolute;
    bottom: 0;
  }
  #STYLE2025.front-school .front-instagram__figure--hs1 {
    left: 0;
    bottom: -10px;
    width: 80px;
  }
  #STYLE2025.front-school .front-instagram__figure--hs2 {
    left: auto;
    right: -10px;
    bottom: -10px;
    width: 110px;
  }
  #STYLE2025.front-school .front-instagram__figure--jhs1 {
    bottom: -10px;
    width: 65px;
  }
  #STYLE2025.front-school .front-instagram__figure--jhs2 {
    left: auto;
    right: -10px;
    bottom: -10px;
    width: 83px;
  }
  #STYLE2025.front-school .front-links__button {
    height: 107px;
    font-size: 16px;
    margin-top: 15px;
  }
  #STYLE2025.front-school .front-links__button img {
    width: 50%;
    -o-object-fit: cover;
       object-fit: cover;
    margin-right: 10px;
  }
  #STYLE2025 .direction-lead {
    font-size: 1.6rem;
    letter-spacing: 0.08em;
    line-height: 2;
  }
  #STYLE2025 .direction-record {
    margin-top: 80px;
  }
  #STYLE2025 .direction-record__heading h2 {
    -ms-flex-negative: 0;
        flex-shrink: 0;
    font-size: 1.8rem;
    letter-spacing: 0.1em;
    line-height: 1.19;
    font-weight: 700;
  }
  #STYLE2025 .direction-record__heading p {
    font-size: 0.95rem;
    letter-spacing: 0.04em;
    line-height: 1.47;
  }
  #STYLE2025 .direction-record__title {
    font-size: 1.6rem;
    letter-spacing: 0.1em;
    line-height: 1.63;
  }
  #STYLE2025 .direction-record__list {
    font-size: 1.4rem;
    letter-spacing: 0em;
    line-height: 1.07;
    margin: 15px auto 30px;
    -webkit-column-count: 2;
       -moz-column-count: 2;
            column-count: 2;
  }
  #STYLE2025 .direction-record__list--column4 {
    -webkit-column-count: 2;
       -moz-column-count: 2;
            column-count: 2;
  }
  #STYLE2025 .direction-record__column {
    display: block;
    margin-top: 80px;
    padding: 50px 25px;
    border: 2px solid #ffb10a;
    border-radius: 15px;
  }
  #STYLE2025 .direction-record__column::before {
    content: "";
    position: absolute;
    bottom: -22px;
    right: 100px;
    display: block;
    width: 35px;
    height: 23px;
    background: url(../img/info/direction/column_balloon.svg) no-repeat center top/contain;
  }
  #STYLE2025 .direction-record__column h3 {
    top: -11px;
    left: 2cqb;
    width: 112px;
  }
  #STYLE2025 .direction-record__column p {
    font-size: 1.35rem;
    letter-spacing: 0em;
    line-height: 1.78;
  }
  #STYLE2025 .direction-record__column strong {
    font-size: 1.8rem;
    letter-spacing: 0em;
    line-height: 1.11;
    text-align: center;
    margin: 0 auto 10px;
    padding-bottom: 5px;
  }
  #STYLE2025 .direction-record__figure {
    position: absolute;
    bottom: -75px;
    right: 40px;
    width: 60px;
  }
  #STYLE2025 .direction-guidance {
    margin-top: 80px;
  }
  #STYLE2025 .direction-guidance__block {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 15px;
    margin-top: 15px;
  }
  #STYLE2025 .direction-guidance__block:nth-of-type(n+2) {
    margin-top: 35px;
  }
  #STYLE2025 .direction-guidance__textarea {
    width: 100%;
  }
  #STYLE2025 .direction-guidance__textarea h3 {
    position: relative;
    font-size: 1.7rem;
    letter-spacing: 0.1em;
    line-height: 1.53;
  }
  #STYLE2025 .direction-guidance__textarea h3::after {
    width: 10px;
  }
  #STYLE2025 .direction-guidance__textarea p {
    font-size: 1.5rem;
    letter-spacing: 0em;
    line-height: 1.77;
    margin-top: 20px;
  }
  #STYLE2025 .direction-guidance__textarea strong {
    display: block;
    font-size: 2.3rem;
    letter-spacing: 0.03em;
    line-height: 1.37;
    margin-bottom: 10px;
  }
  #STYLE2025 .direction-guidance__textarea img {
    margin-top: 15px;
  }
  #STYLE2025 .direction-guidance__image {
    -ms-flex-negative: 0;
        flex-shrink: 0;
    width: 100%;
  }
  #STYLE2025 .direction-guidance__image p {
    font-size: 0.95rem;
    letter-spacing: 0.012em;
    line-height: 1.47;
  }
}
.u-inview {
  -webkit-animation: none !important;
          animation: none !important;
}

/*===================================
オリジナル
===================================*/
.u-background-loop {
  -webkit-animation: 10s animate-backgroundLoop linear infinite;
          animation: 10s animate-backgroundLoop linear infinite;
}

/* アニメーション定義 */
@-webkit-keyframes animate-backgroundLoop {
  to {
    background-position: -2148px, 0;
  }
}
@keyframes animate-backgroundLoop {
  to {
    background-position: -2148px, 0;
  }
}
@-webkit-keyframes animate-backgroundLoopSP {
  to {
    background-position: -961px, 0;
  }
}
@keyframes animate-backgroundLoopSP {
  to {
    background-position: -961px, 0;
  }
}
.u-mask-up {
  -webkit-mask-image: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(33%, transparent), color-stop(50%, black));
  -webkit-mask-image: linear-gradient(to bottom, transparent 0%, transparent 33%, black 50%);
          mask-image: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(33%, transparent), color-stop(50%, black));
          mask-image: linear-gradient(to bottom, transparent 0%, transparent 33%, black 50%);
  -webkit-mask-size: 100% 300%;
          mask-size: 100% 300%;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: top;
          mask-position: top;
  -webkit-animation: animate-maskUp 1s ease-out forwards;
          animation: animate-maskUp 1s ease-out forwards;
}
.u-mask-down {
  -webkit-mask-image: -webkit-gradient(linear, left bottom, left top, from(transparent), color-stop(33%, transparent), color-stop(50%, black));
  -webkit-mask-image: linear-gradient(to top, transparent 0%, transparent 33%, black 50%);
          mask-image: -webkit-gradient(linear, left bottom, left top, from(transparent), color-stop(33%, transparent), color-stop(50%, black));
          mask-image: linear-gradient(to top, transparent 0%, transparent 33%, black 50%);
  -webkit-mask-size: 100% 300%;
          mask-size: 100% 300%;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: bottom;
          mask-position: bottom;
  -webkit-animation: animate-maskDown 1s ease-out forwards;
          animation: animate-maskDown 1s ease-out forwards;
}
@media only screen and (max-width: 834px) {
  .u-mask-down-sp {
    -webkit-mask-image: -webkit-gradient(linear, left bottom, left top, from(transparent), color-stop(33%, transparent), color-stop(50%, black));
    -webkit-mask-image: linear-gradient(to top, transparent 0%, transparent 33%, black 50%);
            mask-image: -webkit-gradient(linear, left bottom, left top, from(transparent), color-stop(33%, transparent), color-stop(50%, black));
            mask-image: linear-gradient(to top, transparent 0%, transparent 33%, black 50%);
    -webkit-mask-size: 100% 300%;
            mask-size: 100% 300%;
    -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat;
    -webkit-mask-position: bottom;
            mask-position: bottom;
    -webkit-animation: animate-maskDown 1s ease-out forwards;
            animation: animate-maskDown 1s ease-out forwards;
  }
}
.u-mask-left {
  -webkit-mask-image: -webkit-gradient(linear, left top, right top, from(transparent), color-stop(33%, transparent), color-stop(50%, black));
  -webkit-mask-image: linear-gradient(to right, transparent 0%, transparent 33%, black 50%);
          mask-image: -webkit-gradient(linear, left top, right top, from(transparent), color-stop(33%, transparent), color-stop(50%, black));
          mask-image: linear-gradient(to right, transparent 0%, transparent 33%, black 50%);
  -webkit-mask-size: 300% 100%;
          mask-size: 300% 100%;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: left;
          mask-position: left;
  -webkit-animation: animate-maskLeft 1s ease-out forwards;
          animation: animate-maskLeft 1s ease-out forwards;
}
.u-mask-right {
  -webkit-mask-image: -webkit-gradient(linear, right top, left top, from(transparent), color-stop(33%, transparent), color-stop(50%, black));
  -webkit-mask-image: linear-gradient(to left, transparent 0%, transparent 33%, black 50%);
          mask-image: -webkit-gradient(linear, right top, left top, from(transparent), color-stop(33%, transparent), color-stop(50%, black));
          mask-image: linear-gradient(to left, transparent 0%, transparent 33%, black 50%);
  -webkit-mask-size: 300% 100%;
          mask-size: 300% 100%;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: right;
          mask-position: right;
  -webkit-animation: animate-maskRight 1s ease-out forwards;
          animation: animate-maskRight 1s ease-out forwards;
}

/* アニメーション定義 */
@-webkit-keyframes animate-maskUp {
  to {
    -webkit-mask-position: bottom;
            mask-position: bottom;
  }
}
@keyframes animate-maskUp {
  to {
    -webkit-mask-position: bottom;
            mask-position: bottom;
  }
}
@-webkit-keyframes animate-maskDown {
  to {
    -webkit-mask-position: top;
            mask-position: top;
  }
}
@keyframes animate-maskDown {
  to {
    -webkit-mask-position: top;
            mask-position: top;
  }
}
@-webkit-keyframes animate-maskLeft {
  to {
    -webkit-mask-position: right;
            mask-position: right;
  }
}
@keyframes animate-maskLeft {
  to {
    -webkit-mask-position: right;
            mask-position: right;
  }
}
@-webkit-keyframes animate-maskRight {
  to {
    -webkit-mask-position: left;
            mask-position: left;
  }
}
@keyframes animate-maskRight {
  to {
    -webkit-mask-position: left;
            mask-position: left;
  }
}
/*===================================
フェードイン
===================================*/
.u-fade-in {
  opacity: 0;
  -webkit-animation: animate-fadein 0.8s forwards;
          animation: animate-fadein 0.8s forwards;
  will-change: transform opacity;
}
.u-fade-up {
  opacity: 0;
  -webkit-animation: animate-fadeUp 0.8s forwards;
          animation: animate-fadeUp 0.8s forwards;
  will-change: transform opacity;
}
.u-fade-down {
  opacity: 0;
  -webkit-animation: animate-fadeDown 0.8s forwards;
          animation: animate-fadeDown 0.8s forwards;
  will-change: transform opacity;
}
.u-fade-left {
  opacity: 0;
  -webkit-animation: animate-fadeInLeft 0.8s forwards;
          animation: animate-fadeInLeft 0.8s forwards;
  will-change: transform opacity;
}
.u-fade-right {
  opacity: 0;
  -webkit-animation: animate-fadeInRight 0.8s forwards;
          animation: animate-fadeInRight 0.8s forwards;
  will-change: transform opacity;
}

@-webkit-keyframes animate-fadein {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes animate-fadein {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@-webkit-keyframes animate-fadeUp {
  from {
    opacity: 0;
    -webkit-transform: translate(0, 25px);
            transform: translate(0, 25px);
  }
  to {
    opacity: 1;
    -webkit-transform: translate(0);
            transform: translate(0);
  }
}
@keyframes animate-fadeUp {
  from {
    opacity: 0;
    -webkit-transform: translate(0, 25px);
            transform: translate(0, 25px);
  }
  to {
    opacity: 1;
    -webkit-transform: translate(0);
            transform: translate(0);
  }
}
@-webkit-keyframes animate-fadeDown {
  from {
    opacity: 0;
    -webkit-transform: translate(0, -50px);
            transform: translate(0, -50px);
  }
  to {
    opacity: 1;
    -webkit-transform: translate(0);
            transform: translate(0);
  }
}
@keyframes animate-fadeDown {
  from {
    opacity: 0;
    -webkit-transform: translate(0, -50px);
            transform: translate(0, -50px);
  }
  to {
    opacity: 1;
    -webkit-transform: translate(0);
            transform: translate(0);
  }
}
@-webkit-keyframes animate-fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate(-50px, 0);
            transform: translate(-50px, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate(0);
            transform: translate(0);
  }
}
@keyframes animate-fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate(-50px, 0);
            transform: translate(-50px, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate(0);
            transform: translate(0);
  }
}
@-webkit-keyframes animate-fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate(50px, 0);
            transform: translate(50px, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate(0);
            transform: translate(0);
  }
}
@keyframes animate-fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate(50px, 0);
            transform: translate(50px, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate(0);
            transform: translate(0);
  }
}
/*===================================
回転
===================================*/
.rotateX {
  -webkit-animation: animate-rotateX 8s forwards;
          animation: animate-rotateX 8s forwards;
}

.rotateXcenter {
  -webkit-animation: animate-rotateX 8s forwards;
          animation: animate-rotateX 8s forwards;
}

@-webkit-keyframes animate-rotateX {
  from {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
  to {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}

@keyframes animate-rotateX {
  from {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
  to {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
@-webkit-keyframes animate-rotateXcenter {
  from {
    -webkit-transform: translate(-50%, -50%) rotate(0);
            transform: translate(-50%, -50%) rotate(0);
  }
  to {
    -webkit-transform: translate(-50%, -50%) rotate(360deg);
            transform: translate(-50%, -50%) rotate(360deg);
  }
}
@keyframes animate-rotateXcenter {
  from {
    -webkit-transform: translate(-50%, -50%) rotate(0);
            transform: translate(-50%, -50%) rotate(0);
  }
  to {
    -webkit-transform: translate(-50%, -50%) rotate(360deg);
            transform: translate(-50%, -50%) rotate(360deg);
  }
}
/*==================================================
スーッ
===================================*/
.slideIn {
  -webkit-animation: animate-slideIn 0.4s linear forwards;
          animation: animate-slideIn 0.4s linear forwards;
}

@-webkit-keyframes animate-slideIn {
  from {
    -webkit-transform: translate(-100%, 0);
            transform: translate(-100%, 0);
  }
  to {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
}

@keyframes animate-slideIn {
  from {
    -webkit-transform: translate(-100%, 0);
            transform: translate(-100%, 0);
  }
  to {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
}
/*==================================================
滑らかに変形して出現
===================================*/
.smooth {
  -webkit-animation: animate-smooth 1s forwards;
          animation: animate-smooth 1s forwards;
  -webkit-transform-origin: left;
          transform-origin: left;
  opacity: 0;
}

@-webkit-keyframes animate-smooth {
  from {
    -webkit-transform: translate3d(0, 100%, 0) skewY(12deg);
            transform: translate3d(0, 100%, 0) skewY(12deg);
    opacity: 0;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0) skewY(0);
            transform: translate3d(0, 0, 0) skewY(0);
    opacity: 1;
  }
}

@keyframes animate-smooth {
  from {
    -webkit-transform: translate3d(0, 100%, 0) skewY(12deg);
            transform: translate3d(0, 100%, 0) skewY(12deg);
    opacity: 0;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0) skewY(0);
            transform: translate3d(0, 0, 0) skewY(0);
    opacity: 1;
  }
}
.u-mt10 {
  margin-top: 10px;
}

.u-mt20 {
  margin-top: 20px;
}

.u-mt30 {
  margin-top: 30px;
}

.u-mt40 {
  margin-top: 40px;
}

.u-mt50 {
  margin-top: 50px;
}

.u-mt60 {
  margin-top: 60px;
}

.u-mt70 {
  margin-top: 70px;
}

.u-mt80 {
  margin-top: 80px;
}

.u-mt90 {
  margin-top: 90px;
}

.u-mt100 {
  margin-top: 100px;
}

.u-tal {
  text-align: left;
}

.u-tac {
  text-align: center;
}

.u-tac {
  text-align: right;
}

@media only screen and (max-width: 834px) {
  .u-mt10 {
    margin-top: 10px;
  }
  .u-mt20 {
    margin-top: 10px;
  }
  .u-mt30 {
    margin-top: 13px;
  }
  .u-mt40 {
    margin-top: 20px;
  }
  .u-mt50 {
    margin-top: 20px;
  }
  .u-mt60 {
    margin-top: 30px;
  }
  .u-mt70 {
    margin-top: 30px;
  }
  .u-mt80 {
    margin-top: 35px;
  }
  .u-mt90 {
    margin-top: 45px;
  }
  .u-mt100 {
    margin-top: 60px;
  }
}