@charset "UTF-8";
/*! destyle.css v4.0.1 | MIT License | https://github.com/nicolas-cusan/destyle.css */
/* ボックスモデルのリセット
============================================ */
*,
::before,
::after {
  box-sizing: border-box;
  min-width: 0;
  border-style: solid;
  border-width: 0;
}

/* Document
============================================ */
/**
 * 1. すべてのブラウザで行の高さを修正。
 * 2. iOSで方向変更後のフォントサイズの調整を禁止
 * 3. iOSのリンク上の灰色のオーバーレイを削除
 */
html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: transparent;
}

/* Sections
 ============================================ */
/**
 * すべてのブラウザでマージンを削除
 */
body {
  margin: 0;
  text-size-adjust: 100%;
  line-break: strict;
  overflow-wrap: anywhere;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/**
 * IEで一貫して「main」要素をレンダリング
 */
main {
  display: block;
}

/* マージンリセット
 ============================================ */
:where(p, table, blockquote, address, pre, iframe, form, figure, dl) {
  margin: 0;
}

/* 見出し
 ============================================ */
:where(h1, h2, h3, h4, h5, h6) {
  margin: 0;
  font-size: inherit;
  font-weight: inherit;
}

/* リスト
 ============================================ */
:where(ul, ol) {
  padding: 0;
  margin: 0;
  list-style: none;
}

/* 定義リスト
 ============================================ */
:where(dt) {
  font-weight: bold;
}

:where(dd) {
  margin-left: 0;
}

/* Grouping content
 ============================================ */
/**
 * 1. Firefoxで正しいボックスサイズを追加
 * 2. EdgeとIEでオーバーフローを表示
 */
:where(hr) {
  clear: both;
  box-sizing: content-box;
  height: 0;
  margin: 0;
  overflow: visible;
  color: inherit;
  border-top-width: 1px;
}

/**
 * 1. すべてのブラウザでフォントサイズの継承と拡大縮小を修正
 * 2. すべてのブラウザーで`em`のフォントサイズが変なのを修正
 */
:where(pre) {
  font-family: monospace, monospace;
  font-size: inherit;
}

:where(address) {
  font-style: inherit;
}

:where(blockquote, q) {
  quotes: none;
}
:where(blockquote, q)::before, :where(blockquote, q)::after {
  content: none;
}

/* テキストレベルの設定
 ============================================ */
/**
 * IE10でアクティブリンクの灰色背景を削除
 */
:where(a) {
  color: inherit;
  text-decoration: none;
  background-color: transparent;
}

/**
 * 1. Chrome 57-で下部のボーダーを削除
 * 2. Chrome、Edge、IE、Opera、Safariで正しいテキスト装飾を追加
 */
:where(abbr[title]) {
  text-decoration: underline dotted;
}

/**
 * Chrome、Edge、Safariで正しいフォントウェイトを追加
 */
:where(b, strong) {
  font-weight: bolder;
}

/**
 * 1. すべてのブラウザでフォントサイズの継承と拡大縮小を修正
 * 2. すべてのブラウザーで`em`のフォントサイズが変なのを修正
 */
:where(code, kbd, samp) {
  font-family: monospace, monospace;
  font-size: inherit;
}

/**
 * すべてのブラウザで正しいフォントサイズを追加
 */
:where(small) {
  font-size: 80%;
}

/**
 * すべてのブラウザで `sub` と `sup` 要素が行の高さに影響しないようにする。
 */
:where(sub, sup) {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline;
}

:where(sub) {
  bottom: -0.25em;
}

:where(sup) {
  top: -0.5em;
}

/**
 * フォントスタイルリセット
 */
:where(address, caption, cite, code, dfn, em, th, var) {
  font-style: normal;
  font-weight: inherit;
}

/* 置換要素
 ============================================ */
/**
 * vertical-alignの差異を防ぐ
 */
:where(svg, img, embed, object, iframe) {
  vertical-align: bottom;
}

:where(img, abbr, acronym) {
  border: 0;
}

:where(img) {
  max-width: 100%;
  height: auto;
  backface-visibility: hidden;
}

a :where(img) {
  border: 0;
}

:where(audio, canvas, progress, video) {
  display: inline-block;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

/* Forms
 ============================================ */
/**
 * フォームフィールドをリセットして、スタイル設定できるようにする
 * 1. iOSは特に、システム間でフォーム要素をスタイリング可能にする
 * 2. 親要素から text-transform を継承する
 */
:where(button, input, optgroup, select, textarea) {
  padding: 0;
  margin: 0;
  font: inherit;
  vertical-align: middle;
  color: inherit;
  text-align: inherit;
  text-transform: inherit;
  -webkit-appearance: none;
  appearance: none;
  background: transparent;
  border: none;
  border-radius: 0;
}

:focus:not(:focus-visible) {
  outline: 0;
}

/**
 * クリック可能な要素のカーソルを修正
 */
:where(button, [type=button], [type=reset], [type=submit]) {
  cursor: pointer;
}

:where(button:disabled, [type=button]:disabled, [type=reset]:disabled, [type=submit]:disabled) {
  cursor: default;
}

/**
 * Firefoxのアウトラインを改善し、入力要素とボタンのスタイルを統一
 */
:-moz-focusring {
  outline: auto;
}

:where(select:disabled) {
  opacity: inherit;
}

/**
 * paddingを取り除く
 */
:where(option) {
  padding: 0;
}

/**
 * 不可視にリセット
 */
:where(fieldset) {
  min-width: 0;
  padding: 0;
  margin: 0;
  border: 0;
}

:where(legend) {
  padding: 0;
}

/**
 * Chrome、Firefox、Operaで正しいvertical-alignを追加する
 */
:where(progress) {
  vertical-align: baseline;
}

/**
 * IE 10+のデフォルトの垂直スクロールバーを削除
 */
:where(textarea) {
  overflow: auto;
}

/**
 * Chromeのインクリメントボタンとデクリメントボタンのカーソルスタイルを修正
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * Safariのアウトラインスタイルを修正
 */
[type=search] {
  outline-offset: -2px;
}

/**
 * macOSのChromeとSafariで内側のパディングを削除
 */
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. iOSとSafariでクリッカブルタイプのスタイル設定ができない問題を修正
 * 2. フォントの継承を修正
 */
::-webkit-file-upload-button {
  font: inherit;
  -webkit-appearance: button;
}

/**
 * Firefoxの外観を修正
 */
[type=number] {
  -moz-appearance: textfield;
}

/**
 * クリック可能なラベル
 */
:where(label) {
  cursor: pointer;
}

/* Interactive
 ============================================ */
/*
 * Edge、IE 10+、Firefoxで正しく表示されるようにする
 */
:where(details) {
  display: block;
}

/*
 * すべてのブラウザで正しく表示されるようにする
 */
:where(summary) {
  display: list-item;
  cursor: pointer;
  list-style: none;
}
:where(summary)::-webkit-details-marker {
  display: none;
}

/*
 * 編集可能なコンテンツのアウトラインを削除
 */
[contenteditable]:focus {
  outline: auto;
}

/* テーブル
 ============================================ */
/**
1. すべてのChromeとSafariで、テーブルのボーダー色の継承を修正
*/
:where(table) {
  font-size: 100%;
  border-spacing: 0;
  border-collapse: collapse;
  border-color: inherit;
}

:where(caption) {
  text-align: left;
}

:where(td, th) {
  padding: 0;
  vertical-align: top;
}

:where(th) {
  font-weight: bold;
  text-align: left;
}

/* Dialog
 ============================================ */
:where(dialog) {
  padding: unset;
  overflow: unset;
  color: unset;
  background-color: unset;
  border: unset;
}

/*
 * ダイアログがmodalで開いている間はダイアログ外のスクロールを禁止
 */
:root:has(dialog:modal) {
  overflow: hidden;
}

/*
 * ダイアログの背景色をリセット
 */
::backdrop {
  background-color: unset;
}

/* ========================================== */
.p-about-reasons__link, .p-common-archive__item-link, .p-highschool-waku2__ticktok, .p-highschool-movie__modal-btn, .p-highschool-life__slide-link, .p-highschool-events__card:is(a), .p-flow-highschool__link, .p-home-fv__card, .c-pagination__item--prev, .c-pagination__item--next, .c-sns-links__link, .c-sns-links__link--mask, .c-pickup-slider__slide-link, .c-calendar__link {
  transition: opacity 0.1s linear;
}
@media (any-hover: hover) {
  .p-about-reasons__link:hover, .p-common-archive__item-link:hover, .p-highschool-waku2__ticktok:hover, .p-highschool-movie__modal-btn:hover, .p-highschool-life__slide-link:hover, .p-highschool-events__card:hover:is(a), .p-flow-highschool__link:hover, .p-home-fv__card:hover, .c-pagination__item--prev:hover, .c-pagination__item--next:hover, .c-sns-links__link:hover, .c-sns-links__link--mask:hover, .c-pickup-slider__slide-link:hover, .c-calendar__link:hover {
    opacity: 0.7;
  }
}

/* base
-------------------------------------------------------------- */
html {
  font-size: 16px;
  cursor: default;
  scroll-behavior: smooth;
  scroll-padding-top: calc(var(--header-height) + 20px);
}

body {
  position: relative;
  min-height: 100dvh;
  container-type: inline-size;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 400;
  color: #1e1e1e;
  background-color: #fff;
}
@media print {
  body {
    overflow: visible;
  }
}
body::before {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999;
  width: 100%;
  height: 100%;
  pointer-events: none;
  content: "";
  background: #fff;
  transition: opacity 0.2s ease-out;
}
body.is-load::before {
  opacity: 0;
}

:root {
  --leading-trim: calc((1em - 1lh) / 2);
}
@supports not (top: 1lh) {
  :root {
    --leading-trim: 0;
  }
}

/* デバイス設定「視差効果を減らす」の時はアニメーションを極限まで短縮する
-------------------------------------------------------------- */
/* レスポンシブ
-------------------------------------------------------------- */
@media (min-width: 768px) {
  .sp {
    display: none !important;
  }
  body {
    min-width: 1200px;
  }
}
@media (max-width: 767px) {
  .pc {
    display: none !important;
  }
}
/* keyframe animation
--------------------------------------------- */
@keyframes carousel {
  100% {
    translate: -50% 0;
  }
}
@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes fadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
/* Slider */
.slick-slider {
  position: relative;
  box-sizing: border-box;
  display: block;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  display: block;
  padding: 0;
  margin: 0;
  overflow: hidden;
}
.slick-list:focus {
  outline: none;
}
.slick-list.dragging {
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  top: 0;
  left: 0;
  display: block;
  margin-right: auto;
  margin-left: auto;
}
.slick-track::before, .slick-track::after {
  display: table;
  content: "";
}
.slick-track::after {
  clear: both;
}
.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  display: none;
  height: 100%;
  min-height: 1px;
}
[dir=rtl] .slick-slide {
  float: right;
}
.slick-slide.slick-loading img {
  display: none;
}
.slick-slide.dragging img {
  pointer-events: none;
}
.slick-initialized .slick-slide {
  display: block;
}
.slick-loading .slick-slide {
  visibility: hidden;
}
.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

@keyframes modal-video {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes modal-video-inner {
  from {
    transform: scale(1.1);
  }
  to {
    transform: scale(1);
  }
}
.modal-video {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1000000;
  width: 100%;
  height: 100%;
  cursor: pointer;
  background-color: rgba(43, 46, 56, 0.9);
  opacity: 1;
  transition: opacity 0.2s ease-out;
  animation-name: modal-video;
  animation-duration: 0.2s;
  animation-timing-function: ease-out;
}

.modal-video-close {
  opacity: 0;
}
.modal-video-close .modal-video-movie-wrap {
  transform: scale(0.95);
}

.modal-video-body {
  box-sizing: border-box;
  display: flex;
  justify-content: center;
  width: 100%;
  max-width: 960px;
  height: 100%;
  padding: 0 20px;
  margin: 0 auto;
}

.modal-video-inner {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}
@media (orientation: landscape) {
  .modal-video-inner {
    box-sizing: border-box;
    padding: 10px 60px;
  }
}

.modal-video-movie-wrap {
  position: relative;
  width: 100%;
  height: 0;
  padding-bottom: 56.25%;
  background-color: #333;
  transform: scale(1);
  transition: transform 0.2s ease-out;
  animation-name: modal-video-inner;
  animation-duration: 0.2s;
  animation-timing-function: ease-out;
}
.modal-video-movie-wrap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.modal-video-close-btn {
  position: absolute;
  top: -45px;
  right: 0;
  z-index: 2;
  display: inline-block;
  width: 35px;
  height: 35px;
  overflow: hidden;
  background: transparent;
  border: none;
}
.modal-video-close-btn::before {
  transform: rotate(45deg);
}
.modal-video-close-btn::after {
  transform: rotate(-45deg);
}
.modal-video-close-btn::before, .modal-video-close-btn::after {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 4px;
  margin: auto;
  content: "";
  background: #fff;
}

/* .l-head
--------------------------------------------- */
.l-head {
  position: sticky;
  top: 0;
  left: 0;
  z-index: 110;
  width: 100%;
  background: #fff;
}
.l-head__wrap {
  display: block flex;
  align-items: center;
}
.l-head__logo {
  display: block;
  aspect-ratio: 176/34;
  background: url("../img/common/logo-shohoku.svg") no-repeat center center/contain;
}
.l-head__logo > span {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  white-space: nowrap !important;
  border: 0 !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
}
@media (min-width: 768px) {
  .l-head {
    padding-inline: 20px;
  }
  .l-head__wrap {
    max-width: 1210px;
    margin-inline: auto;
  }
  .l-head__logo {
    width: min(176px, 12.5714285714vw);
  }
  .l-head__btns {
    display: block flex;
    gap: 8px;
    align-items: center;
    justify-content: flex-end;
    margin-left: auto;
  }
  .l-head__link-btn {
    display: block;
    min-width: 7.7142857143em;
    padding: 0.7857142857em 1em 1em;
    font-size: 0.875rem;
    font-weight: 700;
    line-height: 1.2857142857;
    color: #009b77;
    text-align: center;
    border: 1px solid #009b77;
    border-radius: 10px;
    transition: color 0.2s linear, background-color 0.2s linear;
  }
  .is-tab .l-head__link-btn {
    font-size: min(14px, 1vw);
  }
}
@media (min-width: 768px) and (any-hover: hover) {
  .l-head__link-btn:hover {
    color: #fff;
    background: #009b77;
  }
}
@media (min-width: 768px) {
  .l-head__for-highschool {
    display: block;
    padding: 1.125em 1.75em;
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.5;
    color: #fff;
    text-align: center;
    background: #009b77;
    border: 1px solid #009b77;
    border-radius: 100vmax;
    transition: color 0.2s linear, background-color 0.2s linear;
  }
  .is-tab .l-head__for-highschool {
    font-size: min(16px, 1.1428571429vw);
  }
}
@media (min-width: 768px) and (any-hover: hover) {
  .l-head__for-highschool:hover {
    color: #009b77;
    background: #fff;
  }
}
@media (max-width: 767px) {
  .l-head {
    width: 100%;
    height: min(54px, 13.8461538462vw);
    box-shadow: 0 5px 0 rgba(0, 0, 0, 0.15);
  }
  .l-head__wrap {
    justify-content: space-between;
    height: 100%;
    padding-left: min(18px, 4.6153846154vw);
  }
  .l-head__logo {
    width: min(152px, 38.9743589744vw);
  }
  .l-head__hamburger {
    position: relative;
    display: block flex;
    flex-direction: column;
    gap: min(7px, 1.7948717949vw);
    align-items: center;
    justify-content: center;
    width: min(70px, 17.9487179487vw);
    height: 100%;
  }
  .l-head__hamburger::before, .l-head__hamburger::after,
  .l-head__hamburger > span {
    display: block;
    width: min(28px, 7.1794871795vw);
    height: 2px;
    background: #009b77;
    border-radius: 100vmax;
  }
  .l-head__hamburger::before, .l-head__hamburger::after {
    content: "";
    transition: rotate 0.2s ease-out;
  }
  .l-head__hamburger > span {
    overflow: hidden;
    color: transparent;
    text-indent: 110%;
    white-space: nowrap;
    transition: opacity 0.2s ease-out;
  }
  .l-head__hamburger.is-open::before, .l-head__hamburger.is-open::after {
    position: absolute;
    inset: 0;
    margin: auto;
  }
  .l-head__hamburger.is-open::before {
    rotate: 45deg;
  }
  .l-head__hamburger.is-open::after {
    rotate: -45deg;
  }
  .l-head__hamburger.is-open > span {
    opacity: 0;
  }
}

/* .l-gnav
----------------------------------- */
.l-gnav__main-link {
  position: relative;
  display: block;
}
.l-gnav__sub-link[data-icon] {
  display: block flex;
  align-items: center;
}
.l-gnav__sub-link[data-icon]::after {
  display: block;
  content: "";
  background-color: currentColor;
  mask-repeat: no-repeat;
  mask-position: center center;
  mask-size: contain;
}
.l-gnav__sub-link[data-icon=search]::after {
  aspect-ratio: 1/1;
  mask-image: url("../img/common/icn-search.svg");
}
@media (min-width: 768px) {
  .l-gnav {
    padding-top: 34px;
    margin-left: min(40px, 2.8571428571vw);
  }
  .l-gnav__sub, .l-gnav__main {
    display: block flex;
    align-items: center;
  }
  .l-gnav__sub {
    gap: min(24px, 1.7142857143vw);
  }
  .l-gnav__sub-link {
    font-size: 0.75rem;
    font-weight: 500;
    line-height: 1.5;
    color: #535353;
  }
  .is-tab .l-gnav__sub-link {
    font-size: min(12px, 0.8571428571vw);
  }
}
@media (min-width: 768px) and (any-hover: hover) {
  .l-gnav__sub-link:hover {
    text-decoration: underline;
  }
}
@media (min-width: 768px) {
  .l-gnav__sub-link[data-icon] {
    column-gap: 5px;
  }
  .l-gnav__sub-link[data-icon=search]::after {
    width: 1.25em;
  }
  .l-gnav__main {
    gap: min(25px, 1.7857142857vw);
    margin-top: 5px;
  }
  .l-gnav__main-link {
    font-size: 0.875rem;
    font-weight: 700;
    line-height: 1.5;
  }
  .is-tab .l-gnav__main-link {
    font-size: min(14px, 1vw);
  }
  .l-gnav__main-link::after {
    display: block;
    width: 100%;
    height: 3px;
    margin-top: 24px;
    pointer-events: none;
    content: "";
    background: #009b77;
    opacity: 0;
    transition: opacity 0.2s linear;
  }
}
@media (min-width: 768px) and (any-hover: hover) {
  .l-gnav__main-link:hover::after {
    opacity: 1;
  }
}
@media (min-width: 768px) {
  .l-gnav__box {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    padding: 24px min(20px, 1.4285714286vw) 28px;
    pointer-events: none;
    background: #f5f5f5;
    box-shadow: 0 5px 0 rgba(0, 0, 0, 0.1);
    opacity: 0;
    transition: opacity 0.3s ease-out;
  }
  .l-gnav__main-li.is-open .l-gnav__main-link::after {
    opacity: 1;
  }
  .l-gnav__main-li.is-open .l-gnav__box {
    pointer-events: all;
    opacity: 1;
  }
  .l-gnav__dl {
    display: block flex;
    gap: min(60px, 4.2857142857vw);
    max-width: 1250px;
    margin-inline: auto;
  }
  .l-gnav__dt {
    font-size: 0.875rem;
    font-weight: 700;
    line-height: 1.5;
    color: #000;
  }
  .is-tab .l-gnav__dt {
    font-size: min(14px, 1vw);
  }
  .l-gnav__dd {
    display: block flex;
    flex: 1 1 10%;
    gap: min(60px, 4.2857142857vw);
    min-width: 0;
  }
  .l-gnav__dd-li {
    font-size: 0.8125rem;
    font-weight: 500;
    line-height: 1.9230769231;
    color: #000;
  }
  .is-tab .l-gnav__dd-li {
    font-size: min(13px, 0.9285714286vw);
  }
}
@media (min-width: 768px) and (any-hover: hover) {
  .l-gnav__dl-link:hover {
    text-decoration: underline;
  }
}
@media (max-width: 767px) {
  .l-gnav {
    position: fixed;
    top: min(54px, 13.8461538462vw);
    left: 0;
    z-index: 100;
    width: 100%;
    height: calc(100dvh - min(54px, 13.8461538462vw));
    padding-block: min(16px, 4.1025641026vw) min(17px, 4.358974359vw);
    overflow-y: auto;
    color: #fff;
    pointer-events: none;
    background: #009b77;
    box-shadow: inset 0 5px 0 rgba(0, 0, 0, 0.15);
    opacity: 0;
    transition: opacity 0.3s ease-out;
    -ms-overflow-style: none;
    scrollbar-width: none;
  }
  .l-gnav::-webkit-scrollbar {
    display: none;
  }
  .l-gnav.is-open {
    pointer-events: all;
    opacity: 1;
  }
  .l-gnav__bnrs {
    padding-inline: min(25px, 6.4102564103vw);
  }
  .l-gnav__bnr-highschool {
    position: relative;
    display: block;
    aspect-ratio: 684/518;
    background: url("../img/common/bnr_highschool-sp.jpg") no-repeat center center/contain;
    border-radius: 2.5641025641vw;
  }
  .l-gnav__bnr-highschool-txt {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    white-space: nowrap !important;
    border: 0 !important;
    clip: rect(0 0 0 0) !important;
    clip-path: inset(50%) !important;
  }
  .l-gnav__bnr-highschool-icn {
    position: absolute;
    inset-inline: 0;
    bottom: -5.3846153846vw;
    display: block;
    width: 10.5128205128vw;
    aspect-ratio: 1/1;
    margin-inline: auto;
    background: #009b77;
    border: 1px solid #fff;
    border-radius: 50%;
  }
  .l-gnav__bnr-highschool-icn::before {
    position: absolute;
    inset: 0;
    display: block;
    width: 3.5897435897vw;
    aspect-ratio: 1/1;
    margin: auto;
    content: "";
    background: #fff;
    mask: url("../img/common/arw-lt.svg") no-repeat center center;
    mask-size: contain;
  }
  .l-gnav__bnr-request {
    position: relative;
    display: block flex;
    align-items: center;
    justify-content: center;
    height: 15.1282051282vw;
    margin-top: 9.4871794872vw;
    font-size: 4.1025641026vw;
    font-weight: 700;
    line-height: 1.5;
    text-align: center;
    border: 1px solid #fff;
    border-radius: 2.5641025641vw;
  }
  .l-gnav__bnr-request::after {
    position: absolute;
    inset-block: 0;
    right: 5.1282051282vw;
    display: block;
    width: 3.5897435897vw;
    aspect-ratio: 1/1;
    margin-block: auto;
    content: "";
    background: currentColor;
    mask: url("../img/common/arw-lt.svg") no-repeat center center;
    mask-size: contain;
  }
  .l-gnav__bnr-request > span {
    position: relative;
    display: block;
    width: fit-content;
  }
  .l-gnav__bnr-request > span::before {
    position: absolute;
    inset-block: 0;
    left: -12.8205128205vw;
    display: block;
    height: fit-content;
    margin-block: auto;
    font-size: 2.1875em;
    content: "📚";
  }
  .l-gnav__main {
    margin-top: min(21px, 5.3846153846vw);
  }
  .l-gnav__main-link {
    width: 100%;
    padding: min(24px, 6.1538461538vw) min(26px, 6.6666666667vw) min(20px, 5.1282051282vw);
    font-size: min(17px, 4.358974359vw);
    font-weight: 900;
    line-height: 1.4705882353;
    border-bottom: 1px solid #fff;
  }
  .l-gnav__main-link.js-nav-sp-trigger {
    display: block flex;
    align-items: center;
    justify-content: space-between;
  }
  .l-gnav__main-link.js-nav-sp-trigger::before, .l-gnav__main-link.js-nav-sp-trigger::after {
    display: block;
    width: min(18px, 4.6153846154vw);
    height: 2px;
    content: "";
    background: currentColor;
  }
  .l-gnav__main-link.js-nav-sp-trigger::before {
    position: absolute;
    inset-block: auto;
    right: min(26px, 6.6666666667vw);
    margin-block: auto;
    rotate: -90deg;
    transition: rotate 0.2s ease-out;
  }
  .l-gnav__main-link.js-nav-sp-trigger.is-open::before {
    rotate: 0deg;
  }
  .l-gnav__box {
    display: none;
  }
  .l-gnav__dl {
    padding: min(2px, 0.5128205128vw) min(25px, 6.4102564103vw) min(10px, 2.5641025641vw);
    font-size: min(16px, 4.1025641026vw);
    font-weight: 500;
    line-height: 1.5;
  }
  .l-gnav__dt, .l-gnav__dd-li {
    border-bottom: 1px solid #fff;
  }
  .l-gnav__dt {
    font-weight: inherit;
  }
  .l-gnav__dl-link {
    display: block;
    padding: min(24px, 6.1538461538vw) 0 min(17px, 4.358974359vw) min(20px, 5.1282051282vw);
  }
  .l-gnav__foot {
    padding-inline: min(25px, 6.4102564103vw);
    margin-top: min(22px, 5.641025641vw);
  }
  .l-gnav__sub {
    display: block flex;
    flex-wrap: wrap;
    row-gap: min(17px, 4.358974359vw);
    justify-content: space-between;
  }
  .l-gnav__sub-li {
    min-width: 46.5793304221%;
    font-size: min(16px, 4.1025641026vw);
    font-weight: 500;
    line-height: 1.5;
  }
  .l-gnav__sub-link[data-icon] {
    column-gap: min(4px, 1.1vw);
  }
  .l-gnav__sub-link[data-icon=search]::after {
    width: 0.9375em;
  }
  .l-gnav__info {
    padding-top: min(30px, 7.6923076923vw);
    margin-top: min(29px, 7.4358974359vw);
    border-top: 1px solid #fff;
  }
  .l-gnav__foot-logo {
    display: block;
    width: min(286px, 73.3333333333vw);
    aspect-ratio: 286/56;
    margin-inline: auto;
    background: #fff;
    mask: url("../img/common/logo-shohoku.svg") no-repeat center center;
    mask-size: contain;
  }
  .l-gnav__address {
    max-width: min(292px, 74.8717948718vw);
    margin: min(14px, 3.5897435897vw) auto 0;
    font-size: min(16px, 4.1025641026vw);
    line-height: 1.5;
  }
  .l-gnav__sns {
    justify-content: center;
    margin-top: min(14px, 3.5897435897vw);
  }
  .l-gnav__sns a {
    height: min(29px, 7.4358974359vw);
  }
  .l-gnav__copyright {
    margin-top: min(28px, 7.1794871795vw);
    font-size: min(16px, 4.1025641026vw);
    line-height: 1.5;
    text-align: center;
  }
}

/* .l-foot
--------------------------------------------- */
.l-foot {
  position: sticky;
  top: 100%;
  border-top: 1px solid #009b77;
}
.l-foot__logo-link {
  display: block;
}
.l-foot__logo-link img {
  display: block;
  width: 100%;
}
.l-foot__address {
  font-weight: 400;
}
.l-foot__copyright {
  line-height: 1.5714285714;
  color: #8a8a8a;
  text-align: center;
  border-top: 1px solid #009b77;
}
@media (min-width: 768px) {
  .l-foot {
    padding-inline: 20px;
  }
  .l-foot__wrap {
    display: block flex;
    flex-direction: row-reverse;
    align-items: center;
    justify-content: space-between;
    padding-block: 34px 35px;
  }
  .l-foot__info {
    display: block grid;
    grid-template-columns: repeat(2, auto);
    gap: 16px 31px;
  }
  .l-foot__logo {
    grid-column: span 2/span 2;
  }
  .l-foot__logo-link {
    width: 312px;
    max-width: 100%;
  }
  .is-tab .l-foot__logo-link {
    width: min(312px, 22.2857142857vw);
  }
  .l-foot__address {
    font-size: 0.875rem;
    line-height: 1.5714285714;
  }
  .l-foot__sns.c-sns-links {
    gap: 17px;
  }
  .l-foot__sns a {
    height: clamp(1.875rem, 2.6428571429vw, 2.3125rem);
  }
  .l-foot__nav {
    display: block flex;
    gap: min(42px, 3vw);
  }
  .l-foot__nav-li {
    font-size: 0.875rem;
    font-weight: 400;
    line-height: 1.8571428571;
  }
  .l-foot__nav-link {
    color: #009b77;
  }
}
@media (min-width: 768px) and (any-hover: hover) {
  .l-foot__nav-link:hover {
    text-decoration: underline;
  }
}
@media (min-width: 768px) {
  .l-foot__copyright {
    padding-block: 7px 12px;
    margin-inline: -20px;
    font-size: 0.875rem;
  }
}
@media (max-width: 767px) {
  body:has(.p-sp-floating) .l-foot {
    padding-bottom: min(75px, 19.2307692308vw);
  }
  .l-foot__nav {
    padding: 0 min(34px, 8.7179487179vw) min(27px, 6.9230769231vw);
  }
  .l-foot__access-link {
    position: relative;
    display: block;
    padding-block: min(15px, 3.8461538462vw) min(14px, 3.5897435897vw);
    font-size: min(14px, 3.5897435897vw);
    font-weight: 500;
    line-height: 1.8571428571;
    color: #009b77;
    text-align: center;
    border-bottom: 1px solid currentColor;
  }
  .l-foot__access-link::after {
    position: absolute;
    inset-block: 0;
    right: 0;
    display: block;
    width: min(11px, 2.8205128205vw);
    height: min(8px, 2.0512820513vw);
    margin-block: auto;
    content: "";
    background: currentColor;
    mask: url("../img/common/arw.svg") no-repeat center center;
    mask-size: contain;
  }
  .l-foot__nav-list {
    display: block flex;
    flex-wrap: wrap;
    padding-left: min(10px, 2.5641025641vw);
    margin-top: min(26px, 6.6666666667vw);
  }
  .l-foot__nav-list + .l-foot__nav-list {
    margin-top: 0;
  }
  .l-foot__nav-li {
    font-size: min(14px, 3.5897435897vw);
    font-weight: 500;
    line-height: 1.8571428571;
    color: #009b77;
  }
  .l-foot__nav-li:not(:last-child)::after {
    padding-inline: 1em;
    content: "｜";
  }
  .l-foot__info {
    padding-block: min(33px, 8.4615384615vw) min(38px, 9.6948717949vw);
    border-top: 1px solid #009b77;
  }
  .l-foot__logo, .l-foot__address {
    width: min(237px, 60.8564102564vw);
    margin-inline: auto;
  }
  .l-foot__address {
    margin-top: min(12px, 3.1923076923vw);
    font-size: min(12px, 2.978974359vw);
    font-weight: 400;
    line-height: 1.5493200207;
    color: #000;
  }
  .l-foot__sns {
    margin-top: min(16px, 4.1307692308vw);
  }
  .l-foot__sns.c-sns-links {
    gap: min(19px, 4.8717948718vw);
    justify-content: center;
  }
  .l-foot__sns a {
    height: min(31px, 7.8333333333vw);
  }
  .l-foot__copyright {
    padding-block: min(13px, 3.3333333333vw);
    font-size: min(14px, 3.5897435897vw);
  }
}

/* .l-main
----------------------------------- */
/* .l-sp-cont
----------------------------------- */
.l-sp-cont__main {
  position: relative;
}
@media (min-width: 768px) {
  .l-sp-cont {
    display: grid;
    grid-template-rows: 1fr;
    grid-template-columns: 1fr 390px 1fr;
    align-items: start;
    max-width: 1400px;
    margin-inline: auto;
  }
  .l-sp-cont__main {
    grid-row-start: 1;
    grid-column-start: 2;
    container-name: sp-cont;
    container-type: inline-size;
  }
  .l-sp-cont__pc-side, .l-sp-cont__pc-side--left, .l-sp-cont__pc-side--right {
    position: sticky;
    top: 132px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 100%;
    height: calc(100vh - 132px);
  }
}
/* .l-highschool-head
--------------------------------------------- */
.l-highschool-head {
  position: sticky;
  top: 0;
  left: 0;
  z-index: 110;
  width: 100%;
  height: min(54px, 13.8461538462vw);
  background: #fff;
}
.l-highschool-head__wrap {
  position: relative;
  z-index: 2;
  display: block flex;
  align-items: center;
  justify-content: space-between;
  height: 100%;
  padding-inline: min(18px, 4.6153846154vw) min(23px, 5.8974358974vw);
}
.l-highschool-head__wrap::before {
  position: absolute;
  inset: 0;
  z-index: 2;
  display: block;
  pointer-events: none;
  content: "";
  background: transparent;
  box-shadow: 0 5px 0 rgba(0, 0, 0, 0.15);
}
.l-highschool-head__logo {
  display: block flex;
  gap: min(13px, 3.3333333333vw);
  align-items: flex-end;
  font-size: min(14px, 3.5897435897vw);
  font-weight: 700;
  line-height: 2.5;
  color: #009b77;
}
.l-highschool-head__logo em {
  font-size: 1.4285714286em;
  line-height: 1.75;
}
.l-highschool-head__hamburger {
  position: relative;
  display: block flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  width: min(28px, 7.1794871795vw);
  height: min(21px, 5.3846153846vw);
}
.l-highschool-head__hamburger > span, .l-highschool-head__hamburger::before, .l-highschool-head__hamburger::after {
  display: block;
  width: 100%;
  height: 2px;
  background: #009b77;
  border-radius: 100vmax;
}
.l-highschool-head__hamburger > span {
  overflow: hidden;
  line-height: 0;
  color: transparent;
  text-indent: 110%;
  white-space: nowrap;
  transition: opacity 0.2s ease-out;
}
.l-highschool-head__hamburger::before, .l-highschool-head__hamburger::after {
  content: "";
  transition: rotate 0.2s ease-out;
}
.l-highschool-head__hamburger.is-open > span {
  opacity: 0;
}
.l-highschool-head__hamburger.is-open::before, .l-highschool-head__hamburger.is-open::after {
  position: absolute;
  inset: 0;
  margin: auto;
}
.l-highschool-head__hamburger.is-open::before {
  rotate: 45deg;
}
.l-highschool-head__hamburger.is-open::after {
  rotate: -45deg;
}
@media (min-width: 768px) {
  @container (max-width: 390px) {
    .l-highschool-head .pc {
      display: none;
    }
  }
  @container (min-width: 391px) {
    .l-highschool-head {
      height: auto;
      padding: 36px 20px;
      pointer-events: none;
      background: transparent;
    }
    .l-highschool-head__wrap {
      position: relative;
      max-width: 1200px;
      height: 60px;
      padding-inline: min(50px, 3.5714285714vw) min(40px, 2.8571428571vw);
      margin-inline: auto;
      color: #fff;
      pointer-events: all;
      background: #009b77;
      border-radius: 100vmax;
      box-shadow: none;
    }
    .l-highschool-head__wrap::before {
      border-radius: 100vmax;
      box-shadow: 5px 5px 0 rgba(0, 0, 0, 0.15);
    }
    .is-tab .l-highschool-head__wrap {
      max-width: 100%;
      padding-inline: min(40px, 2.8571428571vw);
    }
    .l-highschool-head__logo {
      gap: 0.5em;
      align-items: center;
      font-size: 1rem;
      line-height: 1.25;
      color: inherit;
    }
    .is-tab .l-highschool-head__logo {
      font-size: min(16px, 1.1428571429vw);
    }
    .l-highschool-head__logo em {
      font-size: 1.25em;
      line-height: inherit;
    }
    .l-highschool-head__hamburger {
      display: none;
    }
  }
}
@media (min-width: 768px) {
  body:has(.l-sp-cont) .l-highschool-head {
    background: #fff;
  }
}
/* .l-highschool-foot
--------------------------------------------- */
.l-highschool-foot {
  position: sticky;
  top: 100%;
  padding-top: min(65px, 16.6666666667vw);
  background: #fff;
}
@container (max-width: 390px) {
  body:has(.p-highschool-floating) .l-highschool-foot {
    padding-bottom: min(70px, 17.9487179487vw);
  }
}
.l-highschool-foot__info {
  padding-inline: min(30px, 7.6923076923vw);
}
.l-highschool-foot__logo {
  display: block;
  width: min(286px, 73.3333333333vw);
}
.l-highschool-foot__logo-img {
  display: block;
  width: 100%;
}
.l-highschool-foot__address-txt {
  margin-top: min(15px, 3.8461538462vw);
  font-size: min(14px, 3.5897435897vw);
  line-height: 1.5714285714;
}
.l-highschool-foot__sns {
  margin-top: min(20px, 5.1256410256vw);
}
.l-highschool-foot__sns a {
  height: min(37px, 9.4871794872vw);
}
.l-highschool-foot__nav {
  padding: min(47px, 12.0512820513vw) min(20px, 5.1282051282vw) min(39px, 9.8717948718vw);
  margin-top: min(25px, 6.4102564103vw);
  color: #009b77;
  border-block: 1px solid #009b77;
}
.l-highschool-foot__nav-box + .l-highschool-foot__nav-box {
  margin-top: min(30px, 7.6923076923vw);
}
.l-highschool-foot__nav-h, .l-highschool-foot__nav-sh {
  font-weight: 700;
}
.l-highschool-foot__nav-h {
  padding-bottom: min(17px, 4.358974359vw);
  margin-bottom: min(17px, 4.358974359vw);
  font-size: min(22px, 5.641025641vw);
  border-bottom: 1px solid #009b77;
}
.l-highschool-foot__nav-h:not(:first-child) {
  margin-top: min(30px, 7.6923076923vw);
}
.l-highschool-foot__nav-h > span {
  display: block;
  margin-block: var(--leading-trim);
}
.l-highschool-foot__nav-sh {
  margin-top: min(10px, 2.5641025641vw);
  font-size: min(17px, 4.358974359vw);
  line-height: 2.0588235294;
}
.l-highschool-foot__nav-bloc:first-child .l-highschool-foot__nav-sh {
  margin-top: 0;
}
.l-highschool-foot__nav-li {
  font-size: min(17px, 4.358974359vw);
  line-height: 2.0588235294;
}
.l-highschool-foot__nav-link::before {
  content: "- ";
}
@media (any-hover: hover) {
  .l-highschool-foot__nav-link:hover {
    text-decoration: underline;
  }
}
.l-highschool-foot__copyright {
  padding-block: min(14px, 3.5897435897vw);
  font-size: min(14px, 3.5897435897vw);
  line-height: 1.5714285714;
  color: #8a8a8a;
  text-align: center;
}
@media (min-width: 768px) {
  @container (min-width: 391px) {
    .l-highschool-foot {
      padding-top: 46px;
    }
    .l-highschool-foot__info {
      display: block flex;
      align-items: center;
      justify-content: space-between;
      max-width: 990px;
      padding-inline: 0;
      margin-inline: auto;
    }
    .l-highschool-foot__address {
      display: block flex;
      gap: 23px;
      align-items: flex-end;
    }
    .l-highschool-foot__logo {
      width: 286px;
    }
    .l-highschool-foot__address-txt {
      margin-block: 0 var(--leading-trim);
      font-size: 0.875rem;
    }
    .l-highschool-foot__sns {
      margin-top: 0;
    }
    .l-highschool-foot__sns a {
      height: 37px;
    }
    .l-highschool-foot__nav {
      padding: 46px 0 36px;
      margin-top: 28px;
    }
    .l-highschool-foot__nav-inner {
      display: block flex;
      gap: 20px;
      justify-content: space-between;
      max-width: 990px;
      margin-inline: auto;
    }
    .l-highschool-foot__nav-box + .l-highschool-foot__nav-box {
      margin-top: 0;
    }
    .l-highschool-foot__nav-h {
      padding: 0;
      margin-bottom: 8px;
      font-size: 1.125rem;
      line-height: 1.1111111111;
      border-bottom: none;
    }
    .l-highschool-foot__nav-h:not(:first-child) {
      margin-top: 24px;
    }
    .l-highschool-foot__nav-h > span {
      display: inline;
    }
    .l-highschool-foot__nav-li {
      font-size: 0.8125rem;
      font-weight: 500;
      line-height: 1.9230769231;
    }
    .l-highschool-foot__nav-group {
      display: block flex;
      gap: 30px;
    }
    .l-highschool-foot__nav-sh {
      margin-top: 0;
      font-size: 0.8125rem;
      line-height: 1.9230769231;
    }
    .l-highschool-foot__nav-sh:not(:first-child) {
      margin-top: 8px;
    }
    .l-highschool-foot__copyright {
      padding-block: 14px 13px;
      font-size: 0.875rem;
    }
  }
}
@media (max-width: 767px) {
  body:has(.p-highschool-floating) .l-highschool-foot {
    padding-bottom: 17.9487179487vw;
  }
}

/* .l-highschool-nav
--------------------------------------------- */
.l-highschool-nav {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1;
  width: 100%;
  max-height: calc(100dvh - min(54px, 13.8461538462vw));
  overflow-y: auto;
  pointer-events: none;
  background: #fff;
  opacity: 0;
  transition: opacity 0.3s ease-out;
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.l-highschool-nav::-webkit-scrollbar {
  display: none;
}
.l-highschool-nav.is-open {
  pointer-events: all;
  opacity: 1;
}
.l-highschool-nav__home {
  padding: min(32px, 8.2051282051vw) min(25px, 6.4102564103vw);
  background: #f5f5f5;
}
.l-highschool-nav__home-link {
  display: block;
  padding: min(6px, 1.5384615385vw) min(40px, 10.2564102564vw) min(16px, 4.1025641026vw);
  font-size: min(16px, 4.1025641026vw);
  font-weight: 700;
  line-height: 1.5;
  color: #009b77;
  background: #fff;
  border: 1px solid #009b77;
  border-radius: min(10px, 2.5641025641vw);
  transition: color 0.2s linear, background-color 0.2s linear;
}
.l-highschool-nav__home-link > span {
  margin-right: min(15px, 3.8461538462vw);
  font-size: 2.1875em;
  line-height: 1;
  vertical-align: bottom;
}
@media (any-hover: hover) {
  .l-highschool-nav__home-link:hover {
    color: #fff;
    background: #009b77;
  }
}
.l-highschool-nav__main {
  padding: min(30px, 7.6923076923vw) min(20px, 5.1282051282vw) min(20px, 5.1282051282vw);
  border-block: 1px solid #009b77;
}
.l-highschool-nav__main-li:nth-of-type(n+2) {
  margin-top: min(30px, 7.6923076923vw);
}
.l-highschool-nav__main-li.for-first {
  display: none;
}
.l-highschool-nav__trigger {
  display: none;
  font-weight: 700;
}
.l-highschool-nav__dl {
  color: #009b77;
}
.l-highschool-nav__dt {
  padding-bottom: min(17px, 4.358974359vw);
  font-size: min(22px, 5.641025641vw);
  font-weight: 700;
  border-bottom: 1px solid #009b77;
}
.l-highschool-nav__dt > span {
  display: block;
  margin-block: var(--leading-trim);
}
.l-highschool-nav__dd {
  margin-top: min(17px, 4.358974359vw);
  font-size: min(17px, 4.358974359vw);
  line-height: 2.0588235294;
}
.l-highschool-nav__link {
  display: block;
  width: fit-content;
  padding-left: 0.5em;
  text-indent: -0.5em;
}
.l-highschool-nav__link::before {
  content: "- ";
}
@media (any-hover: hover) {
  .l-highschool-nav__link:hover {
    text-decoration: underline;
  }
}
.l-highschool-nav__sh {
  display: block;
  font-weight: 700;
}
.l-highschool-nav__group:not(:first-child) .l-highschool-nav__sh {
  margin-top: min(10px, 2.5641025641vw);
}
.l-highschool-nav__copyright {
  padding: min(14px, 3.5897435897vw);
  font-size: min(14px, 3.5897435897vw);
  line-height: 1.5714285714;
  color: #8a8a8a;
  text-align: center;
}
@media (min-width: 768px) {
  @container (min-width: 391px) {
    .l-highschool-nav {
      position: static;
      top: 0;
      width: auto;
      height: 100%;
      max-height: none;
      pointer-events: all;
      background: transparent;
      opacity: 1;
    }
    .l-highschool-nav__home {
      display: none;
    }
    .l-highschool-nav__main {
      display: block flex;
      gap: min(17px, 1.2142857143vw);
      align-items: center;
      height: 100%;
      padding: 0;
      border: none;
    }
    .is-tab .l-highschool-nav__main {
      gap: min(15px, 1.0714285714vw);
    }
    .l-highschool-nav__main-li {
      height: 100%;
    }
    .l-highschool-nav__main-li:nth-of-type(n+2) {
      margin-top: 0;
    }
    .l-highschool-nav__main-li.for-first {
      display: block;
    }
    .l-highschool-nav__trigger {
      position: relative;
      display: block grid;
      place-content: center;
      height: 100%;
      font-size: 0.9375rem;
      line-height: 1.3333333333;
    }
    .is-tab .l-highschool-nav__trigger {
      font-size: min(14px, 1vw);
    }
    .l-highschool-nav__trigger::before {
      position: absolute;
      bottom: 0;
      left: 0;
      display: block;
      width: 100%;
      height: 3px;
      content: "";
      background: #ffec65;
      opacity: 0;
      transition: opacity 0.2s ease-out;
    }
    .is-open .l-highschool-nav__trigger::before {
      opacity: 1;
    }
    @media (min-width: 768px) and (any-hover: hover) {
      .l-highschool-nav__trigger:is(a):hover::before {
        opacity: 1;
      }
    }
    .l-highschool-nav__box {
      position: absolute;
      inset-inline: min(32px, 2.2857142857vw);
      top: 100%;
      pointer-events: none;
      opacity: 0;
      transform: translateZ(1px);
      transition: opacity 0.3s ease-out;
    }
    .is-open .l-highschool-nav__box {
      pointer-events: all;
      opacity: 1;
    }
    .l-highschool-nav__dl {
      position: relative;
      z-index: 2;
      display: block flex;
      gap: min(45px, 3.2142857143vw);
      align-items: center;
      padding: min(24px, 1.7142857143vw) min(60px, 4.2857142857vw) min(30px, 2.1428571429vw);
      background: #fff;
      border-radius: 0 0 10px 10px;
    }
    .l-highschool-nav__dt {
      width: 12.2222222222em;
      padding: 7px 0;
      font-size: 1.125rem;
      line-height: 1.1111111111;
      border-right: 2px solid currentColor;
      border-bottom: none;
    }
    .is-tab .l-highschool-nav__dt {
      font-size: min(18px, 1.2857142857vw);
    }
    .l-highschool-nav__dt > span {
      margin: 0;
    }
    .l-highschool-nav__dd {
      display: block flex;
      flex: 1 1 10%;
      gap: 0 min(34px, 2.4285714286vw);
      align-items: flex-start;
      min-width: 0;
      margin: 0;
      font-size: 0.8125rem;
      line-height: 2.1538461538;
    }
    .is-tab .l-highschool-nav__dd {
      gap: min(25px, 1.7857142857vw) min(20px, 1.4285714286vw);
      font-size: min(13px, 0.9285714286vw);
    }
    .l-highschool-nav__sh {
      width: 100%;
    }
    .is-tab .l-highschool-nav__group {
      font-size: min(12px, 0.8571428571vw);
    }
    .l-highschool-nav__group:not(:first-child) .l-highschool-nav__sh {
      margin-top: 0;
    }
    .l-highschool-nav__group:not(:has(.l-highschool-nav__sh)) {
      padding-right: 1em;
    }
    .l-highschool-nav__group:only-child .l-highschool-nav__sub-list {
      display: block flex;
      gap: 2em;
    }
    .l-highschool-nav__sub-boxs {
      display: block flex;
      column-gap: min(34px, 2.4285714286vw);
    }
    .is-tab .l-highschool-nav__sub-boxs {
      column-gap: min(20px, 1.4285714286vw);
    }
    .l-highschool-nav__shadow {
      position: absolute;
      inset: 0 -5px -5px 5px;
      z-index: 1;
      display: block;
      pointer-events: none;
      background: #000;
      border-radius: 0 0 10px 10px;
      opacity: 0.15;
    }
    .l-highschool-nav__copyright {
      display: none;
    }
  }
}
/* .l-highschool-fv
--------------------------------------------- */
.l-highschool-fv {
  font-weight: 700;
  color: #009b77;
}
.l-highschool-fv__ttl {
  font-weight: 700;
}
.l-highschool-fv__ttl--center {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}
.l-highschool-fv__ttl--column {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.l-highschool-fv__ttl-cate {
  border: solid 2px #009b77;
  font-weight: 700;
  color: #009b77;
  display: flex;
  justify-content: center;
  align-items: center;
}
.l-highschool-fv__ttl-small {
  display: block;
  line-height: 1.875;
}
.l-highschool-fv__ttl--ibuka {
  display: block;
  line-height: 1.5;
}
@media (min-width: 768px) {
  .l-highschool-fv {
    position: relative;
    max-width: 990px;
    margin-inline: auto;
  }
  .l-highschool-fv__hgroup {
    padding-top: 0.875rem;
  }
  .l-highschool-fv__hgroup-ttl {
    font-size: 1.875rem;
    line-height: 1.3333333333;
  }
  .l-highschool-fv__hgroup-txt {
    margin-block: 0.75rem 1.875rem;
    font-size: 1.0625rem;
  }
  .l-highschool-fv__ttl {
    font-size: 1.875rem;
    padding-block: 2.5rem 4.4375rem;
  }
  .l-highschool-fv__ttl-cate {
    min-width: 3.875rem;
    font-size: 0.8125rem;
    padding: 0.4375rem;
    margin-left: 1.125rem;
  }
  .l-highschool-fv__ttl-cate--margin {
    margin: 0;
  }
  .l-highschool-fv__ttl-small {
    font-size: 1rem;
    margin-top: 0.3125rem;
  }
  .l-highschool-fv__ttl--ibuka {
    font-size: 1.25rem;
    margin-bottom: 0.4375rem;
  }
  .l-highschool-fv .c-btn {
    padding-bottom: 2.25rem;
  }
}
@media (max-width: 767px) {
  .l-highschool-fv {
    padding-inline: min(14px, 3.5897435897vw);
  }
  .l-highschool-fv--gry {
    background-color: #f5f5f5;
  }
  .l-highschool-fv__hgroup {
    padding-top: min(43px, 11.0256410256vw);
    text-align: center;
  }
  .l-highschool-fv__hgroup-ttl {
    font-size: min(28px, 7.1794871795vw);
    line-height: 1.4285714286;
  }
  .l-highschool-fv__hgroup-txt {
    margin-block: min(12px, 3.0769230769vw);
    font-size: min(17px, 4.358974359vw);
    line-height: 1.4705882353;
  }
  .l-highschool-fv__ttl {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: min(142px, 36.4102564103vw);
    padding: min(19px, 4.7435897436vw) 0;
    font-size: min(30px, 7.6923076923vw);
    text-align: center;
  }
  .l-highschool-fv__ttl-cate {
    font-size: min(13px, 3.3333333333vw);
    padding: min(7px, 1.7948717949vw);
    margin-top: min(10px, 2.5641025641vw);
  }
  .l-highschool-fv__ttl-small {
    font-size: min(16px, 4.1025641026vw);
    margin-top: min(5px, 1.2820512821vw);
  }
  .l-highschool-fv__ttl--ibuka {
    font-size: min(20px, 5.1282051282vw);
    margin-bottom: min(7px, 1.7948717949vw);
  }
  .l-highschool-fv__ttl--movie {
    line-height: 1.6666666667;
  }
  .l-highschool-fv .c-btn {
    z-index: 1;
    padding-inline: min(7px, 1.7948717949vw);
    margin: 0 auto;
    transform: translateY(50%);
  }
}

/* .l-body
----------------------------------- */
.l-body {
  background-color: #f5f5f5;
}
/* .c-arw-link
----------------------------------- */
.c-arw-link {
  display: block flex;
  align-items: center;
  width: fit-content;
}
.c-arw-link__txt, .c-arw-link__txt--small, .c-arw-link__icn, .c-arw-link__simple-icn {
  display: block;
}
.c-arw-link__txt {
  font-weight: 700;
  color: #009b77;
}
.c-arw-link__icn {
  position: relative;
  aspect-ratio: 1/1;
  overflow: hidden;
  background: #009b77;
  border: 2px solid #009b77;
  border-radius: 50%;
  transition: background-color 0.2s linear;
}
.c-arw-link__icn::before {
  position: absolute;
  inset: 0;
  display: block;
  width: 35.7142857143%;
  aspect-ratio: 20/15;
  margin: auto;
  content: "";
  background: #fff;
  mask: url("../img/common/arw.svg") no-repeat center center;
  mask-size: contain;
  transition: background-color 0.2s linear;
}
.c-arw-link__simple-icn {
  position: relative;
  aspect-ratio: 20/15;
  background: currentColor;
  mask: url("../img/common/arw.svg") no-repeat center center;
  mask-size: contain;
}
@media (any-hover: hover) {
  .c-arw-link:hover .c-arw-link__icn {
    background: #fff;
  }
  .c-arw-link:hover .c-arw-link__icn::before {
    background: #009b77;
  }
  .c-arw-link:hover .c-arw-link__txt--small {
    text-decoration: underline;
  }
}
@media (min-width: 768px) {
  .c-arw-link {
    gap: 17px;
  }
  .c-arw-link__txt {
    font-size: 1.5625rem;
    line-height: 2.2;
  }
  .c-arw-link__txt--small {
    font-size: 0.9375rem;
    font-weight: 700;
    line-height: 2.1333333333;
  }
  .c-arw-link__icn {
    width: 56px;
  }
  .c-arw-link__simple-icn {
    width: 15px;
  }
}
@media (max-width: 767px) {
  .c-arw-link {
    gap: min(14px, 3.6846153846vw);
  }
  .c-arw-link:has(.c-arw-link__txt--small) {
    gap: min(7px, 1.7948717949vw);
  }
  .c-arw-link__txt {
    font-size: min(21px, 5.4871794872vw);
    line-height: 2.2009345794;
  }
  .c-arw-link__txt--small {
    font-size: min(15px, 3.8461538462vw);
    font-weight: 500;
    line-height: 2.1333333333;
  }
  .c-arw-link__icn {
    width: min(48px, 12.2128205128vw);
  }
  .c-arw-link__simple-icn {
    width: min(15px, 3.8461538462vw);
  }
}

/* .c-btn
----------------------------------- */
.c-btn__btn, .c-btn__btn--simple, .c-btn__btn--bdr, .c-btn__btn--default {
  position: relative;
  display: block flex;
  align-items: center;
  justify-content: center;
  max-width: 100%;
  font-weight: 700;
  line-height: 1.4375;
  color: #fff;
  text-align: center;
  background: #009b77;
  border: 1px solid #009b77;
  border-radius: 100vmax;
  box-shadow: 5px 5px 0 rgba(0, 0, 0, 0.15);
  transition: color 0.2s linear, background-color 0.2s linear;
}
.c-btn__btn::before, .c-btn__btn--simple::before, .c-btn__btn--bdr::before, .c-btn__btn--default::before {
  position: absolute;
  inset-block: 0;
  display: block;
  aspect-ratio: 15/12;
  margin-block: auto;
  content: "";
  background: currentColor;
  mask: url("../img/common/arw.svg") no-repeat center center;
  mask-size: contain;
}
.c-btn__btn--arw::before {
  transform: rotate(90deg);
}
.c-btn__btn--pdf::before {
  aspect-ratio: 248/263;
  mask: url("../img/common/pdf.svg") no-repeat center center;
}
.c-btn__btn--excel::before {
  aspect-ratio: 248/263;
  mask: url("../img/common/excel.svg") no-repeat center center;
}
.c-btn__btn--word::before {
  aspect-ratio: 248/263;
  mask: url("../img/common/word.svg") no-repeat center center;
}
.c-btn__btn:not(.c-btn__btn--pdf, .c-btn__btn--entrance, .c-btn__btn--web, .c-btn__btn--default)[target=_blank]::before, .c-btn__btn--simple:not(.c-btn__btn--pdf, .c-btn__btn--entrance, .c-btn__btn--web, .c-btn__btn--default)[target=_blank]::before, .c-btn__btn--bdr:not(.c-btn__btn--pdf, .c-btn__btn--entrance, .c-btn__btn--web, .c-btn__btn--default)[target=_blank]::before, .c-btn__btn--default:not(.c-btn__btn--pdf, .c-btn__btn--entrance, .c-btn__btn--web, .c-btn__btn--default)[target=_blank]::before {
  aspect-ratio: 19/17;
  mask-image: url("../img/common/icn-blank.svg");
}
.c-btn__btn--none {
  pointer-events: none;
  opacity: 0.5;
}
@media (any-hover: hover) {
  .c-btn__btn:hover, .c-btn__btn--simple:hover, .c-btn__btn--bdr:hover, .c-btn__btn--default:hover {
    color: #009b77;
    background: #fff;
  }
}
.c-btn__btn--wt {
  color: #009b77;
  background: #fff;
}
@media (any-hover: hover) {
  .c-btn__btn--wt:hover {
    color: #fff;
    background: #009b77;
  }
}
.c-btn__btn--weight {
  font-weight: 500;
}
.c-btn__btn--org {
  background: #f08300;
  border: 1px solid #f08300;
}
@media (any-hover: hover) {
  .c-btn__btn--org:hover {
    color: #f08300;
  }
}
.c-btn__btn--bis {
  background: #45b035;
  border: 1px solid #45b035;
}
@media (any-hover: hover) {
  .c-btn__btn--bis:hover {
    color: #45b035;
  }
}
.c-btn__btn--bis-wt {
  color: #45b035;
  background: #fff;
  border: 1px solid #45b035;
}
@media (any-hover: hover) {
  .c-btn__btn--bis-wt:hover {
    color: #fff;
    background: #45b035;
  }
}
.c-btn__btn--blu-wt {
  color: #3e86c1;
  background: #fff;
  border: 1px solid #3e86c1;
}
@media (any-hover: hover) {
  .c-btn__btn--blu-wt:hover {
    color: #fff;
    background: #3e86c1;
  }
}
.c-btn__btn--life {
  background: #f08300;
  border: 1px solid #f08300;
}
@media (any-hover: hover) {
  .c-btn__btn--life:hover {
    color: #f08300;
  }
}
.c-btn__btn--life-wt {
  color: #f08300;
  background: #fff;
  border: 1px solid #f08300;
}
@media (any-hover: hover) {
  .c-btn__btn--life-wt:hover {
    color: #fff;
    background: #f08300;
  }
}
.c-btn__btn--hoiku {
  background: #f8b500;
  border: 1px solid #f8b500;
}
@media (any-hover: hover) {
  .c-btn__btn--hoiku:hover {
    color: #f8b500;
  }
}
.c-btn__btn--hoiku-wt {
  color: #f8b500;
  background: #fff;
  border: 1px solid #f8b500;
}
@media (any-hover: hover) {
  .c-btn__btn--hoiku-wt:hover {
    color: #fff;
    background: #f8b500;
  }
}
.c-btn__btn--rd {
  background: #ef490d;
  border: 1px solid #ef490d;
}
@media (any-hover: hover) {
  .c-btn__btn--rd:hover {
    color: #ef490d;
  }
}
.c-btn__btn--grn {
  background-color: #00b833;
  border-color: #00b833;
}
@media (any-hover: hover) {
  .c-btn__btn--grn:hover {
    color: #00b833;
  }
}
.c-btn__btn--bdr {
  color: #009b77;
  background: #fff;
}
@media (any-hover: hover) {
  .c-btn__btn--bdr:hover {
    color: #fff;
    background: #009b77;
  }
}
.c-btn__btn--simple {
  padding-right: 1em;
  font-weight: 500;
  color: #009b77;
  background: #fff;
  box-shadow: none;
}
@media (any-hover: hover) {
  .c-btn__btn--simple:hover {
    color: #fff;
    background: #009b77;
  }
}
.c-btn__btn--subject {
  font-weight: 500;
  box-shadow: none;
}
.c-btn__btn--line {
  text-decoration: underline;
}
.c-btn--bar {
  display: block flex;
  align-items: center;
  justify-content: center;
}
.c-btn--bar::before, .c-btn--bar::after {
  display: block;
  height: 1px;
  content: "";
  background: #009b77;
}
@media (min-width: 768px) {
  .c-btn__btn, .c-btn__btn--default, .c-btn__btn--bdr, .c-btn__btn--simple {
    width: 333px;
    height: 50px;
    font-size: 1rem;
  }
  .c-btn__btn::before, .c-btn__btn--default::before, .c-btn__btn--bdr::before, .c-btn__btn--simple::before {
    right: 35px;
    width: 15px;
  }
  .c-btn__btn--arw::before {
    right: 24px;
  }
  .c-btn__btn--campus::before, .c-btn__btn--step::before {
    right: 19px;
  }
  .c-btn__btn--web::before {
    right: 28px;
  }
  .c-btn__btn--pdf::before, .c-btn__btn--excel::before, .c-btn__btn--word::before {
    right: 22px;
    width: 25px;
  }
  .c-btn__btn--simple {
    width: 300px;
    font-size: 0.8125rem;
  }
  .c-btn__btn--subject {
    width: 421px;
    font-size: 0.8125rem;
  }
  .c-btn__btn:not(.c-btn__btn--pdf, .c-btn__btn--entrance, .c-btn__btn--web, .c-btn__btn--default)[target=_blank]::before, .c-btn__btn--default:not(.c-btn__btn--pdf, .c-btn__btn--entrance, .c-btn__btn--web, .c-btn__btn--default)[target=_blank]::before, .c-btn__btn--bdr:not(.c-btn__btn--pdf, .c-btn__btn--entrance, .c-btn__btn--web, .c-btn__btn--default)[target=_blank]::before, .c-btn__btn--simple:not(.c-btn__btn--pdf, .c-btn__btn--entrance, .c-btn__btn--web, .c-btn__btn--default)[target=_blank]::before {
    right: 23px;
    width: 19px;
  }
  @container (min-width: 391px) {
    .c-btn--bar::before, .c-btn--bar::after {
      width: 227px;
    }
  }
  @container (max-width: 390px) {
    .c-btn--bar::before, .c-btn--bar::after {
      width: 18px;
    }
  }
}
@media (max-width: 767px) {
  .c-btn__btn, .c-btn__btn--default, .c-btn__btn--bdr, .c-btn__btn--simple {
    height: min(50px, 12.8205128205vw);
    font-size: min(16px, 4.1025641026vw);
  }
  .c-btn__btn::before, .c-btn__btn--default::before, .c-btn__btn--bdr::before, .c-btn__btn--simple::before {
    right: min(36px, 9.2307692308vw);
    width: min(15px, 3.8461538462vw);
  }
  .c-btn__btn--arw::before {
    right: min(24px, 6.1538461538vw);
  }
  .c-btn__btn--campus::before {
    right: min(28px, 7.1794871795vw);
  }
  .c-btn__btn--web > span {
    padding-inline: min(30px, 7.6923076923vw);
  }
  .c-btn__btn--web > span span {
    display: inline-block;
  }
  .c-btn__btn--web::before {
    right: min(20px, 5.1282051282vw);
  }
  .c-btn__btn--pdf::before, .c-btn__btn--excel::before, .c-btn__btn--word::before {
    right: min(22px, 5.641025641vw);
    width: min(25px, 6.4102564103vw);
  }
  .c-btn__btn--step::before {
    right: min(19px, 4.8717948718vw);
  }
  .c-btn__btn--simple {
    width: min(300px, 76.9230769231vw);
    font-size: min(13px, 3.3333333333vw);
  }
  .c-btn__btn--subject {
    font-size: min(13px, 3.3333333333vw);
  }
  .c-btn__btn:not(.c-btn__btn--pdf, .c-btn__btn--entrance, .c-btn__btn--web, .c-btn__btn--default)[target=_blank]::before, .c-btn__btn--default:not(.c-btn__btn--pdf, .c-btn__btn--entrance, .c-btn__btn--web, .c-btn__btn--default)[target=_blank]::before, .c-btn__btn--bdr:not(.c-btn__btn--pdf, .c-btn__btn--entrance, .c-btn__btn--web, .c-btn__btn--default)[target=_blank]::before, .c-btn__btn--simple:not(.c-btn__btn--pdf, .c-btn__btn--entrance, .c-btn__btn--web, .c-btn__btn--default)[target=_blank]::before {
    right: min(23px, 5.8974358974vw);
    width: min(19px, 4.8717948718vw);
  }
  .c-btn--bar {
    padding-inline: min(10px, 2.5641025641vw);
  }
  .c-btn--bar::before, .c-btn--bar::after {
    width: min(18px, 4.6153846154vw);
  }
  .c-btn--bar .c-btn__btn, .c-btn--bar .c-btn__btn--default, .c-btn--bar .c-btn__btn--bdr, .c-btn--bar .c-btn__btn--simple {
    flex: 1 1 5%;
    min-width: 0;
  }
}

@media (min-width: 768px) {
  .p-single-common__btn.c-btn--bar {
    padding-inline: min(10px, 2.5641025641vw);
  }
  .p-single-common__btn.c-btn--bar::before, .p-single-common__btn.c-btn--bar::after {
    width: min(18px, 4.6153846154vw);
  }
  .p-single-common__btn.c-btn--bar .c-btn__btn, .p-single-common__btn.c-btn--bar .c-btn__btn--default, .p-single-common__btn.c-btn--bar .c-btn__btn--bdr, .p-single-common__btn.c-btn--bar .c-btn__btn--simple {
    flex: 1 1 5%;
    width: auto;
    min-width: 0;
    height: min(50px, 12.8205128205vw);
    font-size: min(16px, 4.1025641026vw);
  }
  .p-single-common__btn.c-btn--bar .c-btn__btn::before, .p-single-common__btn.c-btn--bar .c-btn__btn--default::before, .p-single-common__btn.c-btn--bar .c-btn__btn--bdr::before, .p-single-common__btn.c-btn--bar .c-btn__btn--simple::before {
    right: min(36px, 9.2307692308vw);
    width: min(15px, 3.8461538462vw);
  }
}

/* .c-btn-list
----------------------------------- */
.c-btn-list, .c-btn-list--sm {
  display: block grid;
}
@media (min-width: 768px) {
  .c-btn-list, .c-btn-list--sm {
    grid-template-columns: repeat(3, 1fr);
    gap: 15px 50px;
  }
  .c-btn-list .c-btn__btn--simple, .c-btn-list--sm .c-btn__btn--simple {
    width: 100%;
  }
  .c-btn-list--sm {
    grid-template-columns: repeat(4, 1fr);
    gap: 10px 49px;
  }
  .c-btn-list--sm .c-btn__btn--simple {
    height: 35px;
  }
  .c-btn-list--sm .c-btn__btn--simple:not(.c-btn__btn--pdf, .c-btn__btn--entrance, .c-btn__btn--web)[target=_blank]::before {
    width: 13px;
  }
}
@media (max-width: 767px) {
  .c-btn-list, .c-btn-list--sm {
    row-gap: 10px;
  }
  .c-btn-list .c-btn__btn--simple, .c-btn-list--sm .c-btn__btn--simple {
    margin-inline: auto;
  }
  .c-btn-list--sm {
    grid-template-columns: repeat(2, 1fr);
    gap: min(5px, 1.3820512821vw);
  }
  .c-btn-list--sm .c-btn__btn--simple {
    width: 100%;
    height: min(27px, 7vw);
    font-size: min(10px, 2.5641025641vw);
  }
  .c-btn-list--sm .c-btn__btn--simple:not(.c-btn__btn--pdf, .c-btn__btn--entrance, .c-btn__btn--web)[target=_blank]::before {
    width: min(10px, 2.5641025641vw);
  }
}

/* .c-calendar
----------------------------------- */
.c-calendar {
  position: relative;
}
.c-calendar__ttl {
  position: absolute;
  z-index: 5;
  pointer-events: none;
  rotate: -15deg;
}
.c-calendar__bg {
  background: #fff;
}
.c-calendar__slider {
  position: relative;
  height: 100%;
  overflow: hidden;
}
.c-calendar__slider .slick-list,
.c-calendar__slider .slick-track {
  height: 100%;
}
.c-calendar__slide {
  position: relative;
  height: 100%;
}
.c-calendar__month {
  font-weight: 700;
  color: #333;
  text-align: center;
  letter-spacing: 0.05em;
}
.c-calendar__month > span {
  padding-left: 0.25em;
  font-family: "Commissioner", "Noto Sans JP", sans-serif;
  color: #009b77;
}
.c-calendar__inner {
  width: max-content;
  margin-inline: auto;
}
.c-calendar__table {
  table-layout: fixed;
}
.c-calendar__week, .c-calendar__week--sun, .c-calendar__week--sat {
  font-family: "Roboto", "Noto Sans JP", sans-serif;
  font-weight: 500;
  color: #b5bec6;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 0.02em;
}
.c-calendar__week--sun {
  color: #EF490D;
}
.c-calendar__week--sat {
  color: #3E86C1;
}
.c-calendar__day {
  position: relative;
  font-family: "Roboto", "Noto Sans JP", sans-serif;
  font-weight: 500;
  vertical-align: middle;
  color: #b6b6b6;
  text-align: center;
}
.c-calendar__day > span {
  position: relative;
  z-index: 2;
  display: block;
  pointer-events: none;
}
.c-calendar__link {
  position: absolute;
  inset: 0;
  display: block;
  aspect-ratio: 1/1;
  margin: auto;
  background: #009b77;
  border-radius: 50%;
}
.c-calendar__link > span {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  white-space: nowrap !important;
  border: 0 !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
}
.c-calendar__day:has(.c-calendar__link) {
  color: #fff;
}
.c-calendar__day:first-child .c-calendar__link {
  background: #EF490D;
}
.c-calendar__day:last-child .c-calendar__link {
  background: #3E86C1;
}
.c-calendar__legend {
  position: absolute;
  text-align: right;
}
@media (min-width: 768px) {
  .c-calendar__ttl {
    top: -9px;
    left: -38px;
  }
  .c-calendar__bg {
    border-radius: 5px;
  }
  .c-calendar__slide {
    min-height: 479px;
    padding-block: 38px 56px;
  }
  .c-calendar__month {
    font-size: 1.33125rem;
    line-height: 1.5023474178;
  }
  .c-calendar__month > span {
    font-size: 2.4995305164em;
    line-height: 0.5991735537;
  }
  .c-calendar__table {
    margin-top: 8px;
  }
  .c-calendar__week, .c-calendar__week--sun, .c-calendar__week--sat {
    padding: 0 12px 20px;
    font-size: 0.831875rem;
    line-height: 2;
  }
  .c-calendar__day {
    padding: 5px 7px;
    font-size: 1.33125rem;
    line-height: 1.8746478873;
  }
  .c-calendar__day > span {
    min-width: 39.93px;
  }
  .c-calendar__link {
    width: 40px;
  }
  .c-calendar__legend {
    right: 60px;
    bottom: 37px;
  }
  .c-calendar__arws {
    margin-top: 11px;
  }
}
@media (max-width: 767px) {
  .c-calendar__ttl {
    top: 0;
    left: -3.3333333333vw;
    width: 43.8461538462vw;
  }
  .c-calendar__bg {
    border-radius: 3.5384615385vw;
  }
  .c-calendar__slide {
    min-height: 89.7435897436vw;
    padding-block: 7.1794871795vw 10.2564102564vw;
  }
  .c-calendar__month {
    font-size: 4.0128205128vw;
    line-height: 1.5015974441;
  }
  .c-calendar__month > span {
    font-size: 2.4996805112em;
    line-height: 0.6007157464;
  }
  .c-calendar__table {
    margin-top: 1.5384615385vw;
  }
  .c-calendar__week, .c-calendar__week--sun, .c-calendar__week--sat {
    padding: 0 3.0769230769vw 3.5897435897vw;
    font-size: 2.5076923077vw;
    line-height: 2;
  }
  .c-calendar__day {
    padding: 1.7948717949vw 2.0512820513vw;
    font-size: 4.0128205128vw;
    line-height: 1.3774647887;
  }
  .c-calendar__day > span {
    min-width: 29.34px;
  }
  .c-calendar__link {
    width: 7.6846153846vw;
  }
  .c-calendar__legend {
    right: 11.2820512821vw;
    bottom: 5.1282051282vw;
  }
  .c-calendar__legend img {
    width: 46.1538461538vw;
  }
  .c-calendar__arws {
    margin-top: min(14px, 3.5897435897vw);
  }
}

/* .c-fv-copy
----------------------------------- */
.c-fv-copy__ttl-img {
  display: block;
}
.c-fv-copy__txt, .c-fv-copy__em-txt {
  font-weight: 700;
  color: #009b77;
}
.c-fv-copy__txt {
  line-height: 2.25;
}
@media (min-width: 768px) {
  .c-fv-copy__txt {
    margin-top: 38px;
    font-size: 1rem;
  }
  .c-fv-copy__em-txt {
    margin-top: 7px;
    font-size: 1.527775rem;
    line-height: 2.2500040909;
  }
}
@media (max-width: 767px) {
  .c-fv-copy {
    padding-inline: min(35px, 8.9743589744vw) min(20px, 5.1282051282vw);
  }
  .c-fv-copy__ttl-img {
    width: min(244px, 62.5051282051vw);
  }
  .c-fv-copy__txt {
    margin-top: min(39px, 10vw);
    font-size: min(16px, 4.1025641026vw);
  }
  .c-fv-copy__em-txt {
    margin-top: min(26px, 6.7025641026vw);
    font-size: min(22px, 5.6974358974vw);
    line-height: 2.2502250225;
  }
}

/* .c-headline
----------------------------------- */
.c-headline {
  padding-bottom: 0.4em;
  font-weight: 500;
  line-height: 1.32;
  border-bottom: 1px solid currentColor;
}
.c-headline--sm {
  font-weight: 700;
  line-height: 1.6666666667;
}
.c-headline__sub {
  font-size: 0.88em;
  line-height: 1.8181818182;
}
@media (min-width: 768px) {
  .c-headline {
    font-size: 1.5625rem;
  }
  .c-headline--sm {
    font-size: 1.125rem;
  }
}
@media (max-width: 767px) {
  .c-headline {
    font-size: min(25px, 6.4102564103vw);
  }
  .c-headline--sm {
    font-size: min(18px, 4.6153846154vw);
  }
}

/* .c-hgroup
----------------------------------- */
.c-hgroup {
  font-weight: 500;
  color: #009b77;
}
.c-hgroup__sub-ttl {
  position: relative;
  display: block;
  line-height: 1.5625;
  letter-spacing: 0.1em;
}
.c-hgroup__sub-ttl::before {
  position: absolute;
  top: 0.5lh;
  display: block;
  height: 1px;
  content: "";
  background: currentColor;
}
.c-hgroup__main-ttl {
  line-height: 1.0416666667;
  letter-spacing: 0.1em;
}
@media (min-width: 768px) {
  .c-hgroup {
    padding-left: 98px;
  }
  .c-hgroup__sub-ttl {
    font-size: 1rem;
  }
  .c-hgroup__sub-ttl::before {
    left: -98px;
    width: 87px;
  }
  .c-hgroup__main-ttl {
    font-size: 1.5rem;
  }
  .c-hgroup__main-ttl:not(:first-child) {
    margin-top: 17px;
  }
}
@media (max-width: 767px) {
  .c-hgroup {
    padding-inline: min(30px, 7.6923076923vw);
  }
  .c-hgroup__sub-ttl {
    font-size: min(16px, 4.1025641026vw);
  }
  .c-hgroup__sub-ttl::before {
    left: max(-30px, -7.6923076923vw);
    width: min(19px, 4.8717948718vw);
  }
  .c-hgroup__main-ttl {
    font-size: min(24px, 6.1538461538vw);
    line-height: 1.4583333333;
  }
  .c-hgroup__main-ttl:not(:first-child) {
    margin-top: min(12px, 3.0769230769vw);
  }
}

/* .c-index-list
----------------------------------- */
.c-index-list {
  color: #009b77;
}
.c-index-list__link, .c-index-list__link--sm {
  display: block;
}
@media (any-hover: hover) {
  .c-index-list__link:hover, .c-index-list__link--sm:hover {
    text-decoration: underline;
  }
}
@media (min-width: 768px) {
  .c-index-list {
    font-size: 0.875rem;
    line-height: 1.4285714286;
  }
  .c-index-list__li {
    border-bottom: 1px solid currentColor;
  }
  .c-index-list__link, .c-index-list__link--sm {
    padding-block: 14px 12px;
  }
  .c-index-list__link--sm {
    font-size: 0.9285714286em;
  }
}
@media (max-width: 767px) {
  .c-index-list {
    font-size: min(14px, 3.5897435897vw);
    line-height: 1.7857142857;
  }
  .c-index-list__li {
    border-top: 1px solid currentColor;
  }
  .c-index-list__link, .c-index-list__link--sm {
    display: block flex;
    gap: min(8px, 2.0512820513vw);
    align-items: center;
    justify-content: space-between;
    padding-block: min(14px, 3.4615384615vw);
  }
  .c-index-list__link::after, .c-index-list__link--sm::after {
    display: block;
    width: min(11px, 2.8205128205vw);
    min-width: min(11px, 2.8205128205vw);
    height: min(8px, 2.0512820513vw);
    content: "";
    background: currentColor;
    mask: url("../img/common/arw.svg") no-repeat center center;
    mask-size: contain;
  }
}

/* .c-slider-arws
----------------------------------- */
.c-slider-arws, .c-slider-arws--hoiku, .c-slider-arws--bis, .c-slider-arws--org, .c-slider-arws--bdr {
  display: block flex;
  align-items: center;
  justify-content: center;
}
.c-slider-arws__arw, .c-slider-arws__arw--sm {
  position: relative;
  display: block;
  aspect-ratio: 1/1;
  overflow: hidden;
  color: #009b77;
  background: #fff;
  border-radius: 50%;
  transition: color 0.2s linear, background-color 0.2s linear;
}
.c-slider-arws__arw::before, .c-slider-arws__arw--sm::before {
  position: absolute;
  inset: 0;
  display: block;
  width: 35.4838709677%;
  aspect-ratio: 1/1;
  margin: auto;
  content: "";
  background: currentColor;
  mask: url("../img/common/arw.svg") no-repeat center center;
  mask-size: contain;
}
@media (any-hover: hover) {
  .c-slider-arws__arw:hover, .c-slider-arws__arw--sm:hover {
    color: #fff;
    background: #009b77;
  }
}
.c-slider-arws__arw[aria-disabled=true], [aria-disabled=true].c-slider-arws__arw--sm {
  pointer-events: none;
  opacity: 0.6;
}
.c-slider-arws__arw[aria-disabled=true]::before, [aria-disabled=true].c-slider-arws__arw--sm::before {
  filter: grayscale(1);
}
.c-slider-arws__arw > span, .c-slider-arws__arw--sm > span {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  white-space: nowrap !important;
  border: 0 !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
}
.c-slider-arws__arw[data-arw=prev], [data-arw=prev].c-slider-arws__arw--sm {
  scale: -1;
}
.c-slider-arws--bdr .c-slider-arws__arw, .c-slider-arws--bdr .c-slider-arws__arw--sm {
  border: 1px solid #009b77;
}
.c-slider-arws--org .c-slider-arws__arw, .c-slider-arws--org .c-slider-arws__arw--sm {
  border: 1px solid #f08300;
  color: #f08300;
}
@media (any-hover: hover) {
  .c-slider-arws--org .c-slider-arws__arw:hover, .c-slider-arws--org .c-slider-arws__arw--sm:hover {
    color: #fff;
    background: #f08300;
  }
}
.c-slider-arws--bis .c-slider-arws__arw, .c-slider-arws--bis .c-slider-arws__arw--sm {
  border: 1px solid #45b035;
  color: #45b035;
}
@media (any-hover: hover) {
  .c-slider-arws--bis .c-slider-arws__arw:hover, .c-slider-arws--bis .c-slider-arws__arw--sm:hover {
    color: #fff;
    background: #45b035;
  }
}
.c-slider-arws--hoiku .c-slider-arws__arw, .c-slider-arws--hoiku .c-slider-arws__arw--sm {
  border: 1px solid #f8b500;
  color: #f8b500;
}
@media (any-hover: hover) {
  .c-slider-arws--hoiku .c-slider-arws__arw:hover, .c-slider-arws--hoiku .c-slider-arws__arw--sm:hover {
    color: #fff;
    background: #f8b500;
  }
}
.c-slider-arws--border .c-slider-arws__arw, .c-slider-arws--border .c-slider-arws__arw--sm {
  border: none;
}
@media (min-width: 768px) {
  .c-slider-arws, .c-slider-arws--hoiku, .c-slider-arws--bis, .c-slider-arws--org, .c-slider-arws--bdr {
    gap: 13px;
  }
  .c-slider-arws:has(.c-slider-arws__arw--sm), .c-slider-arws--bdr:has(.c-slider-arws__arw--sm), .c-slider-arws--org:has(.c-slider-arws__arw--sm), .c-slider-arws--bis:has(.c-slider-arws__arw--sm), .c-slider-arws--hoiku:has(.c-slider-arws__arw--sm) {
    gap: 12px;
  }
  .c-slider-arws__arw, .c-slider-arws__arw--sm {
    width: 45px;
  }
  .c-slider-arws__arw--sm {
    width: 31px;
  }
}
@media (max-width: 767px) {
  .c-slider-arws, .c-slider-arws--hoiku, .c-slider-arws--bis, .c-slider-arws--org, .c-slider-arws--bdr {
    gap: min(13px, 3.3333333333vw);
  }
  .c-slider-arws__arw, .c-slider-arws__arw--sm {
    width: min(45px, 11.5384615385vw);
  }
}

/* .c-pickup-slider
----------------------------------- */
.c-pickup-slider__ttl {
  font-weight: 700;
  line-height: 1.6;
  color: #009b77;
}
.c-pickup-slider__slider {
  position: relative;
  overflow: hidden;
}
.c-pickup-slider__slider:not(.slick-initialized),
.c-pickup-slider__slider .slick-track {
  display: block flex;
}
.c-pickup-slider__slide-link, .c-pickup-slider__slide-img {
  display: block;
  width: 100%;
}
@media (min-width: 768px) {
  .c-pickup-slider__ttl {
    font-size: 1.25rem;
  }
  .c-pickup-slider__cont {
    margin: 13px -6px 0;
  }
  .c-pickup-slider__slider:not(.slick-initialized),
  .c-pickup-slider__slider .slick-track {
    gap: 11px;
  }
  .c-pickup-slider__slide {
    width: 240px;
  }
  .c-pickup-slider__slider-arws {
    gap: 9px;
    margin-top: 13px;
  }
}
@media (max-width: 767px) {
  .c-pickup-slider {
    padding-inline: min(20px, 5.1282051282vw);
  }
  .c-pickup-slider__ttl {
    font-size: min(20px, 5.1282051282vw);
  }
  .c-pickup-slider__cont {
    margin: min(13px, 3.3333333333vw) max(-20px, -5.1282051282vw) 0 0;
  }
  .c-pickup-slider__slider:not(.slick-initialized),
  .c-pickup-slider__slider .slick-track {
    gap: min(11px, 2.8205128205vw);
  }
  .c-pickup-slider__slide {
    width: min(240px, 61.5384615385vw);
  }
  .c-pickup-slider__slider-arws {
    margin-top: min(15px, 3.8461538462vw);
  }
}

/* .c-sns-links
----------------------------------- */
.c-sns-links {
  display: block flex;
  align-items: center;
}
.c-sns-links__link, .c-sns-links__link--mask {
  position: relative;
  display: block;
  width: auto;
}
.c-sns-links__link[data-sns=instagram], .c-sns-links__link--mask[data-sns=instagram] {
  aspect-ratio: 1/1;
}
.c-sns-links__link[data-sns=x], .c-sns-links__link--mask[data-sns=x] {
  aspect-ratio: 1/1;
}
.c-sns-links__link[data-sns=facebook], .c-sns-links__link--mask[data-sns=facebook] {
  aspect-ratio: 1/1;
}
.c-sns-links__link[data-sns=youtube], .c-sns-links__link--mask[data-sns=youtube] {
  aspect-ratio: 53/37;
}
.c-sns-links__link[data-sns=line], .c-sns-links__link--mask[data-sns=line] {
  aspect-ratio: 1/1;
}
.c-sns-links__link > span, .c-sns-links__link--mask > span {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  white-space: nowrap !important;
  border: 0 !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
}
.c-sns-links__link {
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
}
.c-sns-links__link[data-sns=tiktok] {
  aspect-ratio: 1/1;
  background-image: url("../img/common/sns-tiktok.svg");
}
.c-sns-links__link[data-sns=instagram] {
  background-image: url("../img/common/sns-instagram_bg.jpg");
  background-size: cover;
  mask: url("../img/common/sns-instagram.svg") no-repeat center center;
  mask-size: contain;
}
.c-sns-links__link[data-sns=x] {
  background-image: url("../img/common/sns-x.svg");
}
.c-sns-links__link[data-sns=facebook] {
  background-image: url("../img/common/sns-facebook.svg");
}
.c-sns-links__link[data-sns=youtube] {
  background-image: url("../img/common/sns-youtube.svg");
}
.c-sns-links__link[data-sns=line] {
  background-image: url("../img/common/sns-line.svg");
}
.c-sns-links__link--mask {
  background: currentColor;
  mask-repeat: no-repeat;
  mask-position: center center;
  mask-size: contain;
}
.c-sns-links__link--mask[data-sns=tiktok] {
  aspect-ratio: 611/507;
  mask-image: url("../img/common/sns-tiktok-simple.svg");
}
.c-sns-links__link--mask[data-sns=instagram] {
  mask-image: url("../img/common/sns-instagram.svg");
}
.c-sns-links__link--mask[data-sns=x] {
  mask-image: url("../img/common/sns-x.svg");
}
.c-sns-links__link--mask[data-sns=facebook] {
  mask-image: url("../img/common/sns-facebook.svg");
}
.c-sns-links__link--mask[data-sns=youtube] {
  mask-image: url("../img/common/sns-youtube.svg");
}
.c-sns-links__link--mask[data-sns=line] {
  mask-image: url("../img/common/sns-line.svg");
}
@media (min-width: 768px) {
  .c-sns-links {
    gap: 20px;
  }
}
@media (max-width: 767px) {
  .c-sns-links {
    gap: min(22px, 5.641025641vw);
  }
}

/* .c-tags
----------------------------------- */
.c-tags {
  display: block flex;
  flex-wrap: wrap;
  align-items: center;
}
.c-tags__link {
  display: block;
  width: fit-content;
  font-weight: 500;
  text-align: center;
  background: #fff;
  box-shadow: 3px 3px 10px rgba(0, 0, 0, 0.05);
  transition: color 0.2s linear, background-color 0.2s linear;
}
.c-tags__link:not([data-color]) {
  color: #009b77;
}
@media (any-hover: hover) {
  .c-tags__link:not([data-color]):hover {
    color: #fff;
    background: #009b77;
  }
}
.c-tags__link[data-color=lt-green] {
  color: #45b035;
}
@media (any-hover: hover) {
  .c-tags__link[data-color=lt-green]:hover {
    color: #fff;
    background: #45b035;
  }
}
.c-tags__link[data-color=orange] {
  color: #f08300;
}
@media (any-hover: hover) {
  .c-tags__link[data-color=orange]:hover {
    color: #fff;
    background: #f08300;
  }
}
.c-tags__link[data-color=yellow] {
  color: #f8b500;
}
@media (any-hover: hover) {
  .c-tags__link[data-color=yellow]:hover {
    color: #fff;
    background: #f8b500;
  }
}
.c-tags__link--fill {
  color: #fff !important;
  border: none;
}
.c-tags__link--fill[data-color=lt-green] {
  background-color: #45b035;
}
.c-tags__link--fill[data-color=orange] {
  background-color: #f08300;
}
.c-tags__link--fill[data-color=yellow] {
  background-color: #f8b500;
}
@media (any-hover: hover) {
  .c-tags__link--fill:hover {
    opacity: 0.8;
  }
}
.c-tags__li--w100 {
  width: 100%;
}
@media (min-width: 768px) {
  .c-tags {
    gap: 15px;
  }
  .c-tags__link {
    padding-inline: 20px;
    font-size: 1.125rem;
    line-height: 2.7777777778;
    border-radius: 10px;
  }
}
@media (max-width: 767px) {
  .c-tags {
    gap: min(10px, 2.5641025641vw);
  }
  .c-tags__link {
    padding-inline: min(15px, 3.8461538462vw);
    font-size: min(16px, 4.1025641026vw);
    line-height: 2.5;
    border-radius: min(10px, 2.5641025641vw);
  }
  .c-tags__li--sp-w100 {
    width: 100%;
  }
}

/* .c-ticker
----------------------------------- */
.c-ticker {
  overflow: hidden;
}
.c-ticker__wrap, .c-ticker__bloc {
  display: block flex;
  align-items: center;
}
.c-ticker__wrap {
  width: max-content;
  animation: carousel 67s linear infinite;
  will-change: animation;
}
.c-ticker__bloc {
  width: max-content;
}
.c-ticker__txt {
  min-width: max-content;
}
/* .c-pagination
----------------------------------- */
.c-pagination {
  display: flex;
  align-items: center;
  justify-content: center;
}
.c-pagination__item {
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 500;
  color: #009B77;
  background: #fff;
  border: 1px solid #009B77;
  transition: background-color 0.2s, color 0.2s;
}
.c-pagination__item.is-active {
  color: #fff;
  background: #009B77;
}
@media (any-hover: hover) {
  .c-pagination__item:hover:not(.is-active) {
    color: #fff;
    background: #009B77;
  }
}
.c-pagination__item--prev, .c-pagination__item--next {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  border: none;
}
.c-pagination__item--prev::before, .c-pagination__item--next::before {
  display: block;
  content: "";
  background-color: #009B77;
  mask: url("../img/highschool/news/news-arrow.svg") no-repeat center center;
  mask-size: contain;
}
.c-pagination__item--next::before {
  transform: rotate(180deg);
}
@media (min-width: 768px) {
  .c-pagination {
    gap: 1.0625rem;
    margin-top: 3.1875rem;
  }
  .c-pagination__item {
    width: 2.8125rem;
    height: 2.8125rem;
    font-size: 1rem;
  }
  .c-pagination__item--prev, .c-pagination__item--next {
    width: 1.875rem;
    height: 1.875rem;
  }
  .c-pagination__item--prev::before, .c-pagination__item--next::before {
    width: 0.625rem;
    height: 1.125rem;
  }
}
@media (max-width: 767px) {
  .c-pagination {
    gap: min(10px, 2.5641025641vw);
    margin-top: min(45px, 11.5384615385vw);
  }
  .c-pagination__item {
    width: min(45px, 11.5384615385vw);
    height: min(45px, 11.5384615385vw);
    font-size: min(16px, 4.1025641026vw);
  }
  .c-pagination__item--prev, .c-pagination__item--next {
    width: min(30px, 7.6923076923vw);
    height: min(45px, 11.5384615385vw);
  }
  .c-pagination__item--prev::before, .c-pagination__item--next::before {
    width: min(10px, 2.5641025641vw);
    height: min(18px, 4.6153846154vw);
  }
}

/* .c-ttl
----------------------------------- */
.c-ttl {
  font-weight: 700;
  color: #009b77;
}
.c-ttl--org {
  color: #f08300;
}
@media (min-width: 768px) {
  .c-ttl {
    font-size: 1.25rem;
    line-height: 1.6;
    margin-bottom: 0.9375rem;
  }
}
@media (max-width: 767px) {
  .c-ttl {
    font-size: min(18px, 4.6153846154vw);
    line-height: 1.2222222222;
    margin-bottom: min(25px, 6.4102564103vw);
  }
  .c-ttl--mb {
    margin-bottom: min(15px, 3.8461538462vw);
  }
  .c-ttl--lr {
    font-size: min(22px, 5.641025641vw);
  }
}

/* .c-txt
----------------------------------- */
.c-txt {
  line-height: 1.5384615385;
}
.c-txt--md {
  line-height: 1.5625;
}
@media (min-width: 768px) {
  .c-txt {
    font-size: 0.8125rem;
  }
  .c-txt--md {
    font-size: 1rem;
  }
}
@media (max-width: 767px) {
  .c-txt {
    font-size: min(13px, 3.3333333333vw);
  }
  .c-txt--md {
    font-size: min(16px, 4.1025641026vw);
  }
}

/* .p-home
----------------------------------- */
@media (min-width: 768px) {
  .p-home {
    padding-bottom: 118px;
  }
  .p-home__pickup {
    margin-top: 47px;
  }
}
@media (max-width: 767px) {
  .p-home {
    padding-bottom: min(38px, 9.7435897436vw);
  }
  .p-home__pickup {
    margin-top: min(33px, 8.4615384615vw);
  }
}

/* .p-home-about
----------------------------------- */
.p-home-about {
  position: relative;
  z-index: 2;
}
.p-home-about__wrap {
  position: relative;
}
.p-home-about__wrap::before {
  display: block;
  content: "";
}
@media (min-width: 768px) {
  .p-home-about {
    margin-top: 56px;
  }
  .p-home-about__wrap::before {
    position: absolute;
    inset-block: 0;
    left: -6px;
    width: 376px;
    background: url("../img/home/about_img-pc.jpg") no-repeat left bottom/376px auto;
  }
  .p-home-about__bloc {
    position: relative;
    z-index: 2;
    max-width: 595px;
    padding-top: 65px;
    margin-left: auto;
  }
  .p-home-about__hgroup {
    padding-left: 0;
  }
  .p-home-about__cont {
    display: block flex;
    flex-wrap: wrap;
    column-gap: 35px;
    margin-top: 30px;
  }
  .p-home-about__list {
    flex: 1 1 40%;
    min-width: 0;
  }
}
@media (max-width: 767px) {
  .p-home-about {
    margin-top: max(-53px, -13.5897435897vw);
  }
  .p-home-about__wrap::before {
    width: 92.3076923077vw;
    height: 61.0256410256vw;
    margin-left: auto;
    background: url("../img/home/about_img-sp.jpg") no-repeat right center/cover;
    border-radius: 2.5641025641vw 0 0 2.5641025641vw;
  }
  .p-home-about__bloc {
    margin-top: min(35px, 8.9743589744vw);
  }
  .p-home-about__cont {
    padding-inline: min(30px, 7.6923076923vw);
    margin-top: min(38px, 9.7435897436vw);
  }
}

/* .p-home-future
----------------------------------- */
.p-home-future {
  position: relative;
  color: #f5f5f5;
  background: #009b77;
}
.p-home-future::before {
  display: block;
  content: "";
  background-image: url("../img/home/future_img.jpg");
  background-repeat: no-repeat;
  background-size: cover;
}
.p-home-future__wrap {
  position: relative;
  z-index: 2;
}
.p-home-future__hgroup, .p-home-future__list {
  color: inherit;
}
@media (min-width: 768px) {
  .p-home-future {
    margin-top: 56px;
  }
  .p-home-future::before {
    position: absolute;
    inset-block: 0;
    right: 0;
    width: 48.7142857143%;
    background-position: right center;
  }
  .p-home-future__bloc {
    max-width: 480px;
    padding-block: 40px;
  }
  .p-home-future__cont {
    display: block grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 29px;
    margin-top: 34px;
  }
}
@media (max-width: 767px) {
  .p-home-future {
    padding-top: min(7px, 1.7948717949vw);
    margin-top: min(26px, 6.6666666667vw);
  }
  .p-home-future::before {
    aspect-ratio: 682/340;
    background-position: center center;
  }
  .p-home-future__bloc {
    padding-block: min(36px, 9.1205128205vw) min(78px, 20vw);
  }
  .p-home-future__cont {
    padding-inline: min(30px, 7.6923076923vw);
    margin-top: min(25px, 6.4102564103vw);
  }
}

/* .p-home-fv
----------------------------------- */
.p-home-fv {
  position: relative;
  width: 100%;
  container-type: inline-size;
  overflow: hidden;
  background: #f5f5f5;
}
.p-home-fv__slider {
  position: relative;
  z-index: 1;
  width: 100%;
  overflow: hidden;
}
.p-home-fv__card {
  display: block;
}
.p-home-fv__card-img {
  display: block;
  width: 100%;
}
@media (min-width: 768px) {
  .p-home-fv__slider-arws {
    position: absolute;
    inset-inline: 0;
    bottom: 20px;
    z-index: 2;
    margin-inline: auto;
  }
}
@media (max-width: 767px) {
  .p-home-fv__slider-arws .c-slider-arws__arw {
    position: absolute;
    inset-block: 0;
    z-index: 2;
    width: min(40px, 10.2564102564vw);
    margin-block: auto;
  }
  .p-home-fv__slider-arws .c-slider-arws__arw[data-arw=prev] {
    left: min(10px, 2.5641025641vw);
  }
  .p-home-fv__slider-arws .c-slider-arws__arw[data-arw=next] {
    right: min(10px, 2.5641025641vw);
  }
}

/* .p-home-highschool
----------------------------------- */
.p-home-highschool {
  height: 100%;
}
.p-home-highschool__box {
  position: relative;
}
.p-home-highschool__box::before {
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
  content: "";
  border: 3px solid #009b77;
}
.p-home-highschool__img {
  display: block;
  width: 100%;
}
@media (min-width: 768px) {
  .p-home-highschool {
    min-width: 1200px;
    padding: 73px 20px;
  }
  .p-home-highschool__wrap {
    display: flex;
    align-items: center;
  }
  .p-home-highschool__bloc {
    width: 460px;
  }
  .p-home-highschool__fig {
    flex: 1 1 10%;
    min-width: 0;
  }
  .p-home-highschool__boxs-wrap {
    overflow: hidden;
  }
  @container (min-width: 1201px) {
    .p-home-highschool__boxs-wrap {
      margin-right: calc((50vw - 497px) * -1);
    }
  }
  @container (max-width: 1200px) {
    .p-home-highschool__boxs-wrap {
      margin-right: -103px;
    }
  }
  .p-home-highschool__boxs {
    display: block flex;
    gap: 27px;
  }
  .p-home-highschool__box {
    width: 240px;
    min-width: 240px;
  }
  .p-home-highschool__box::before {
    border-radius: 20px;
  }
  .p-home-highschool__box:nth-child(3) {
    order: 4;
  }
  .p-home-highschool__box:nth-child(4) {
    order: 3;
  }
  .p-home-highschool__box:nth-child(5) {
    order: 5;
  }
  .p-home-highschool__box:nth-child(6) {
    order: 6;
  }
  .p-home-highschool__img {
    border-radius: 20px;
  }
  .p-home-highschool__link-btn {
    margin-top: 57px;
    margin-left: auto;
  }
}
@media (max-width: 767px) {
  .p-home-highschool {
    padding: min(43px, 10.9820512821vw) min(27px, 6.9230769231vw) min(40px, 10.2564102564vw);
  }
  .p-home-highschool__bloc {
    padding: 0;
  }
  .p-home-highschool__bloc .c-fv-copy__ttl {
    width: 59.4871794872vw;
    margin-inline: auto;
  }
  .p-home-highschool__bloc .c-fv-copy__ttl-img {
    width: 100%;
  }
  .p-home-highschool__fig {
    margin-top: 5.1282051282vw;
  }
  .p-home-highschool__boxs {
    display: block grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2.5641025641vw;
  }
  .p-home-highschool__box::before {
    border-width: 2px;
    border-radius: 2.5641025641vw;
  }
  .p-home-highschool__img {
    border-radius: 2.5641025641vw;
  }
  .p-home-highschool__link-btn {
    margin-inline: auto;
    margin-top: 6.1538461538vw;
  }
}

/* .p-home-info
----------------------------------- */
.p-home-info {
  position: relative;
}
.p-home-info__head {
  color: #fff;
  background: #009b77;
}
.p-home-info__tab {
  position: relative;
  display: block;
  font-weight: 500;
}
.p-home-info__card {
  display: block flex;
  align-items: center;
  color: #009b77;
}
.p-home-info__art-date {
  width: 6.3em;
  font-family: "Commissioner", "Noto Sans JP", sans-serif;
  font-weight: 400;
  line-height: 2.2857142857;
  letter-spacing: 0.1em;
}
.p-home-info__art-cate {
  display: block;
  text-align: center;
  background: #f5f5f5;
}
.p-home-info__art-ttl {
  display: block;
}
@media (min-width: 768px) {
  .p-home-info {
    border-bottom: 1px solid #009b77;
  }
  .p-home-info::before {
    position: absolute;
    inset-block: 0;
    left: 0;
    display: block;
    width: calc((100vw - 1200px) / 2 + 2px);
    content: "";
    background: #009b77;
  }
  .p-home-info__wrap {
    position: relative;
    z-index: 2;
    display: block grid;
    grid-template-columns: 377px 1fr;
    column-gap: 57px;
  }
  .p-home-info__head {
    display: block flex;
    flex-direction: column;
    padding: 26px 0 22px 102px;
    color: #fff;
    background: #009b77;
  }
  .p-home-info__ttl {
    font-size: 1.375rem;
    font-weight: 700;
    line-height: 1.5909090909;
  }
  .p-home-info__tablist {
    padding-left: 25px;
    margin-block: 12px auto;
  }
  .p-home-info__tab {
    font-size: 0.875rem;
    line-height: 2.1428571429;
  }
}
@media (min-width: 768px) and (any-hover: hover) {
  .p-home-info__tab:hover {
    text-decoration: underline;
  }
}
@media (min-width: 768px) {
  .p-home-info__more {
    margin-top: 13px;
  }
  .p-home-info__cont {
    display: block grid;
    place-content: center start;
    padding-block: 36px;
  }
  .p-home-info__li:nth-of-type(n+2) {
    margin-top: 12px;
  }
  .p-home-info__card {
    column-gap: 10px;
  }
  .p-home-info__art-date {
    font-size: 0.875rem;
  }
  .p-home-info__art-cate {
    width: 11.6666666667em;
    font-size: 0.75rem;
    line-height: 2.1666666667;
    border-radius: 5px;
  }
  .p-home-info__art-ttl {
    flex: 1 1 10%;
    min-width: 0;
    font-size: 0.875rem;
    line-height: 2.2857142857;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
}
@media (min-width: 768px) and (any-hover: hover) {
  .p-home-info__card:hover .p-home-info__art-ttl {
    text-decoration: underline;
  }
}
@media (max-width: 767px) {
  .p-home-info__head, .p-home-info__cont {
    padding-inline: min(20px, 5.1282051282vw);
  }
  .p-home-info__head {
    display: block flex;
    flex-wrap: wrap;
    row-gap: min(5px, 1.2820512821vw);
    align-items: flex-end;
    justify-content: space-between;
    padding-block: min(89px, 22.858974359vw) min(51px, 13.0769230769vw);
  }
  .p-home-info__ttl {
    order: 1;
    font-size: min(24px, 6.1538461538vw);
    font-weight: 600;
    line-height: 1.4583333333;
  }
  .p-home-info__tablist {
    display: block grid;
    flex: 1 1 100%;
    grid-template-columns: repeat(2, 1fr);
    order: 3;
    min-width: 0;
    padding: min(20px, 5.1282051282vw) min(27px, 6.9230769231vw) min(10px, 2.6461538462vw);
    background: #018b76;
    border-radius: min(5px, 1.2820512821vw) min(5px, 1.2820512821vw) 0 0;
  }
  .p-home-info__tab {
    padding: 0 min(10px, 2.5205128205vw) min(10px, 2.5205128205vw);
    font-size: min(14px, 3.541025641vw);
    line-height: 2.1723388849;
    border-bottom: 2px solid #009b77;
  }
  .p-home-info__tab::before {
    position: absolute;
    inset-inline: 0;
    bottom: -2px;
    display: block;
    height: 2px;
    content: "";
    background: #fff;
    opacity: 0;
    transition: opacity 0.2s ease-out;
  }
  .p-home-info__tab[aria-selected=true]::before {
    opacity: 1;
  }
  .p-home-info__more {
    order: 2;
  }
  .p-home-info__cont {
    margin-top: max(-51px, -13.0769230769vw);
  }
  .p-home-info__panel {
    padding: min(22px, 5.641025641vw) min(25px, 6.4102564103vw) min(37px, 9.4871794872vw);
    background: #fff;
    border: 1px solid #009b77;
    border-radius: 0 0 min(5px, 1.2820512821vw) min(5px, 1.2820512821vw);
  }
  .p-home-info__li:nth-of-type(n+2) {
    margin-top: min(15px, 3.8461538462vw);
  }
  .p-home-info__li:nth-of-type(n+4) {
    display: none;
  }
  .p-home-info__card {
    flex-wrap: wrap;
    gap: min(5px, 1.2769230769vw) min(13px, 3.3333333333vw);
  }
  .p-home-info__art-date {
    font-size: min(14px, 3.5897435897vw);
  }
  .p-home-info__art-cate {
    width: 10.3333333333em;
    font-size: min(12px, 3.0769230769vw);
    line-height: 2;
    border-radius: min(5px, 1.2820512821vw);
  }
  .p-home-info__art-ttl {
    width: 100%;
    font-size: min(16px, 4.1025641026vw);
    font-weight: 500;
    line-height: 1.25;
  }
}

/* .p-home-subject
----------------------------------- */
.p-home-subject__cont {
  display: block grid;
}
.p-home-subject__h {
  font-weight: 500;
  color: #009b77;
}
@media (min-width: 768px) {
  .p-home-subject {
    margin-top: 89px;
  }
  .p-home-subject__cont {
    grid-template-columns: repeat(3, 1fr);
    margin-top: 28px;
  }
  .p-home-subject__h {
    margin-top: 17px;
    font-size: 1rem;
    line-height: 1.5625;
  }
  .p-home-subject__wrap {
    display: block grid;
    grid-template-columns: repeat(3, 1fr);
    column-gap: 50px;
    margin-top: 23px;
  }
  .p-home-subject__index {
    margin-top: 62px;
  }
  .p-home-subject__list {
    position: relative;
  }
  .p-home-subject__list:nth-of-type(n+2)::before {
    position: absolute;
    inset-block: 0;
    left: -25px;
    display: block;
    width: 1px;
    content: "";
    border-left: 1px dashed #009b77;
  }
}
@media (max-width: 767px) {
  .p-home-subject {
    margin-top: min(61px, 15.641025641vw);
  }
  .p-home-subject__cont {
    row-gap: min(25px, 6.4102564103vw);
    margin-top: min(38px, 9.7435897436vw);
  }
  .p-home-subject__index {
    padding-inline: min(30px, 7.6923076923vw);
    margin-top: min(55px, 14.1025641026vw);
  }
  .p-home-subject__h {
    font-size: min(16px, 4.1025641026vw);
    line-height: 1.875;
  }
  .p-home-subject__wrap {
    margin-top: min(29px, 7.4358974359vw);
  }
}

/* .p-subject-card
----------------------------------- */
.p-subject-card__bnr {
  position: relative;
  display: block;
  color: #fff;
  text-align: center;
}
.p-subject-card__copy, .p-subject-card__ttl, .p-subject-card__arw {
  display: block;
}
.p-subject-card__copy, .p-subject-card__ttl {
  font-weight: 700;
}
.p-subject-card__arw {
  position: relative;
  aspect-ratio: 1/1;
  margin-inline: auto;
  border: 1px solid currentColor;
  border-radius: 50%;
}
.p-subject-card__arw::before {
  position: absolute;
  inset: 0;
  display: block;
  width: 35.5555555556%;
  aspect-ratio: 1/1;
  margin: auto;
  content: "";
  background: currentColor;
  mask: url("../img/common/arw.svg") no-repeat center center;
  mask-size: contain;
}
.p-subject-card__fig {
  overflow: hidden;
}
.p-subject-card__img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: scale 0.3s linear;
}
@media (any-hover: hover) {
  .p-subject-card__bnr:hover .p-subject-card__img {
    scale: 1.05;
  }
}
.p-subject-card__tag::before {
  content: "#";
}
.p-subject-card[data-subject=bisinfo] .p-subject-card__bnr {
  background: #45b035;
}
.p-subject-card[data-subject=bisinfo] .p-subject-card__tags {
  color: #45b035;
}
.p-subject-card[data-subject=lifepro] .p-subject-card__bnr {
  background: #f08300;
}
.p-subject-card[data-subject=lifepro] .p-subject-card__tags {
  color: #f08300;
}
.p-subject-card[data-subject=hoiku] .p-subject-card__bnr {
  background: #f8b500;
}
.p-subject-card[data-subject=hoiku] .p-subject-card__tags {
  color: #f8b500;
}
@media (min-width: 768px) {
  .p-subject-card {
    display: block grid;
    grid-template-rows: subgrid;
    grid-row: span 2;
    row-gap: 20px;
  }
  .p-subject-card__box {
    padding-block: 25px 23px;
  }
  .p-subject-card__copy {
    font-size: 1rem;
    line-height: 1.4375;
  }
  .p-subject-card__ttl {
    margin-block: calc(var(--leading-trim) + 8px) var(--leading-trim);
    font-size: 1.5rem;
  }
  .p-subject-card__arw {
    width: 45px;
    margin-top: 25px;
  }
  .p-subject-card__bloc {
    padding-inline: 38px;
  }
  .p-subject-card__txt {
    font-size: 0.8125rem;
    line-height: 1.5384615385;
  }
  .p-subject-card__tags {
    margin-top: 7px;
    font-size: 0.8125rem;
    line-height: 1.5384615385;
  }
  .p-subject-card__tag {
    display: inline;
  }
  .p-subject-card__tag:nth-last-of-type(n+2) {
    padding-right: 0.75em;
  }
}
@media (max-width: 767px) {
  .p-subject-card__box {
    padding-block: min(25px, 6.4102564103vw);
  }
  .p-subject-card__copy {
    font-size: 3.8461538462vw;
    line-height: 1.3866666667;
  }
  .p-subject-card__ttl {
    margin-block: calc(var(--leading-trim) + min(20px, 5.0435897436vw)) var(--leading-trim);
    font-size: 5.5564102564vw;
  }
  .p-subject-card__arw {
    width: 9.6153846154vw;
    margin-top: 8.0769230769vw;
  }
  .p-subject-card__bloc {
    padding: min(18px, 4.6153846154vw) min(32px, 8.1538461538vw) 0;
  }
  .p-subject-card__txt {
    font-size: min(14px, 3.5897435897vw);
    line-height: 1.6428571429;
  }
  .p-subject-card__tags {
    display: block flex;
    flex-wrap: wrap;
    column-gap: 1em;
    margin-top: min(7px, 1.7512820513vw);
    font-size: min(11px, 2.7769230769vw);
    line-height: 1.5420129271;
  }
}

/* .p-breadcrumbs
----------------------------------- */
.p-breadcrumbs__list {
  display: block flex;
  align-items: center;
  justify-content: flex-end;
  color: #b6b6b6;
}
.p-breadcrumbs__item:first-of-type {
  text-transform: uppercase;
}
.p-breadcrumbs__item:not(:first-of-type)::before {
  padding-inline: 0.5em;
  content: "-";
}
.p-breadcrumbs__item > a {
  font-weight: 400;
  transition: color 0.2s ease-out;
}
@media (any-hover: hover) {
  .p-breadcrumbs__item > a:hover {
    color: #009b77;
  }
}
.p-breadcrumbs__item:last-child {
  font-weight: 700;
  color: #1e1e1e;
}
:has(.l-highschool-head) .p-breadcrumbs__item:last-child {
  color: #009b77;
}
@media (min-width: 768px) {
  .p-breadcrumbs {
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 990px;
    transform: translate(-50%, 100%);
  }
  .p-breadcrumbs--transform {
    bottom: -5px;
    transform: translateX(-50%);
  }
  .p-breadcrumbs__item {
    font-size: 0.6875rem;
    line-height: 4.7272727273;
  }
  .p-breadcrumbs--base {
    max-width: 994px;
    margin: 15px auto 0;
  }
  .p-breadcrumbs--base .p-breadcrumbs__item {
    line-height: 1.3636363636;
  }
}
@media (max-width: 767px) {
  .p-breadcrumbs {
    display: none;
  }
  .p-breadcrumbs--base {
    padding: min(11px, 2.8205128205vw) min(22px, 5.641025641vw) 0;
  }
  .p-breadcrumbs__item {
    max-width: 12em;
    font-size: min(11px, 2.8205128205vw);
    line-height: 1.3636363636;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
}

/* .p-flow-highschool
----------------------------------- */
.p-flow-highschool {
  background: #f5f5f5;
}
.p-flow-highschool__link {
  display: block;
}
.p-flow-highschool__img {
  display: block;
  width: 100%;
}
/* .p-local-nev
----------------------------------- */
.p-local-nev {
  border-top: 1px solid #009b77;
}
.p-local-nev__list {
  display: block grid;
}
.p-local-nev__li {
  border-bottom: 1px solid #009b77;
}
.p-local-nev__link {
  display: block flex;
  align-items: center;
  justify-content: space-between;
  color: #009b77;
}
.p-local-nev__link::after {
  display: block;
  aspect-ratio: 14/10;
  content: "";
  background: currentColor;
  mask: url("../img/common/arw.svg") no-repeat center center;
  mask-size: contain;
}
@media (any-hover: hover) {
  .p-local-nev__link:hover {
    text-decoration: underline;
  }
}
@media (min-width: 768px) {
  .p-local-nev {
    padding: 37px 30px 55px;
  }
  .p-local-nev__list {
    grid-template-columns: repeat(3, 1fr);
    column-gap: 30px;
  }
  .p-local-nev__link {
    min-height: 52px;
    padding-right: 14px;
    font-size: 0.875rem;
  }
  .p-local-nev__link--small {
    font-size: 0.75rem;
  }
  .p-local-nev__link::after {
    width: 14px;
    min-width: 14px;
  }
}
@media (max-width: 767px) {
  .p-local-nev {
    padding: min(19px, 4.8717948718vw) min(30px, 7.6923076923vw) min(30px, 7.6923076923vw);
  }
  .p-local-nev__link {
    min-height: min(52px, 13.3333333333vw);
    padding-right: min(4px, 1.0256410256vw);
    font-size: min(14px, 3.5897435897vw);
  }
  .p-local-nev__link--small {
    font-size: min(12px, 3.0769230769vw);
  }
  .p-local-nev__link::after {
    width: min(11px, 2.8205128205vw);
    min-width: min(11px, 2.8205128205vw);
  }
}

/* .p-lower-head
----------------------------------- */
.p-lower-head {
  position: relative;
  border-bottom: 1px solid #009b77;
}
.p-lower-head--bis {
  border-bottom: 1px solid #45b035;
}
.p-lower-head--life {
  border-bottom: 1px solid #f08300;
}
.p-lower-head--hoiku {
  border-bottom: 1px solid #f8b500;
}
.p-lower-head__wrap {
  position: relative;
}
.p-lower-head__ttl {
  margin-block: var(--leading-trim);
  font-weight: 700;
  line-height: 1.2;
  color: #009b77;
  text-align: center;
}
.p-lower-head--bis .p-lower-head__ttl {
  color: #45b035;
}
.p-lower-head--life .p-lower-head__ttl {
  color: #f08300;
}
.p-lower-head--hoiku .p-lower-head__ttl {
  color: #f8b500;
}
@media (min-width: 768px) {
  .p-lower-head {
    padding-inline: 30px;
  }
  .p-lower-head__wrap {
    padding-block: 69px;
  }
  .p-lower-head__ttl {
    font-size: 1.875rem;
  }
}
@media (max-width: 767px) {
  .p-lower-head {
    padding-inline: min(30px, 7.6923076923vw);
  }
  .p-lower-head__wrap {
    padding-block: min(41px, 10.4307692308vw) min(51px, 13.0820512821vw);
  }
  .p-lower-head__ttl {
    font-size: min(25px, 6.4102564103vw);
  }
}

/* .p-modal-search
----------------------------------- */
.p-modal-search[open] {
  animation: fadeIn 0.3s ease-out forwards;
}
.p-modal-search.is-hide {
  animation: fadeOut 0.3s ease-out forwards;
}
.p-modal-search__cont {
  position: relative;
  z-index: 2;
}
.p-modal-search__input-words {
  max-width: 100%;
  font-weight: 300;
  outline: transparent;
  background: #fff;
  border-radius: 100vmax;
}
.p-modal-search__input-words::placeholder {
  color: #009b77;
}
.p-modal-search__search-btn {
  position: absolute;
  inset-block: 0;
  aspect-ratio: 1/1;
  margin-block: auto;
  background: url("../img/common/icn-search.svg") no-repeat center center/contain;
}
.p-modal-search__search-btn > span {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  white-space: nowrap !important;
  border: 0 !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
}
.p-modal-search__bg {
  position: fixed;
  top: 0;
  left: 0;
  display: block;
  place-content: center;
  width: 100vw;
  height: 100lvh;
  background: rgba(30, 30, 30, 0.5);
}
.p-modal-search__bg > span {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  white-space: nowrap !important;
  border: 0 !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
}
@media (min-width: 768px) {
  .p-modal-search__input-words {
    width: 421px;
    height: 60px;
    padding-inline: 28px 38px;
    font-size: 1rem;
  }
  .p-modal-search__search-btn {
    right: 22px;
    width: 16px;
  }
}
@media (max-width: 767px) {
  .p-modal-search__input-words {
    width: 90vw;
    height: 3.75em;
    padding-inline: 1.75em 2.375em;
    font-size: min(16px, 4.1025641026vw);
  }
  .p-modal-search__search-btn {
    right: min(22px, 5.641025641vw);
    width: 1em;
  }
}

/* .p-sp-floating
----------------------------------- */
@media (max-width: 767px) {
  .p-sp-floating {
    position: fixed;
    inset-inline: min(18px, 4.6153846154vw);
    bottom: min(15px, 3.8461538462vw);
    z-index: 90;
    height: 15.3846153846vw;
    border-radius: 100vmax;
    box-shadow: 5px 5px 0 rgba(0, 0, 0, 0.15);
  }
  .p-sp-floating__btn-request, .p-sp-floating__btn-highschool {
    display: block flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    font-size: 4.1025641026vw;
    font-weight: 700;
    line-height: 1.5;
    text-align: center;
    border: 1px solid #009b77;
    border-radius: 100vmax;
  }
  .p-sp-floating__btn-request {
    padding-right: 50.1416430595%;
    color: #009b77;
    background: #fff;
  }
  .p-sp-floating__btn-highschool {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 2;
    width: 54.9575070822%;
    color: #fff;
    background: #009b77;
  }
}

/* .p-single
----------------------------------- */
/* .p-highschool
----------------------------------- */
@media (min-width: 768px) {
  .p-highschool {
    padding-bottom: 50px;
  }
  .p-highschool__pickup {
    margin-top: 30px;
  }
}
@media (max-width: 767px) {
  .p-highschool {
    padding-bottom: min(37px, 9.4871794872vw);
  }
  .p-highschool__pickup {
    margin-top: min(33px, 8.4615384615vw);
  }
}

/* .p-highschool-about
----------------------------------- */
.p-highschool-about {
  color: #009b77;
  background: #f5f5f5;
}
.p-highschool-about__ttl img {
  display: block;
  width: 100%;
}
.p-highschool-about__h {
  font-weight: 700;
}
@media (min-width: 768px) {
  .p-highschool-about {
    padding-block: 87px 62px;
    margin-top: -25px;
  }
  .p-highschool-about__wrap {
    display: block flex;
    gap: 96px;
    justify-content: center;
  }
  .p-highschool-about__ttl {
    width: 50px;
  }
  .p-highschool-about__box:nth-of-type(1) {
    order: -1;
    width: 315px;
  }
  .p-highschool-about__box:nth-of-type(2) {
    width: 376px;
  }
  .p-highschool-about__h {
    font-size: 1.375rem;
    line-height: 1.1363636364;
  }
  .p-highschool-about__tags {
    margin-top: 22px;
  }
  .p-highschool-about__sec + .p-highschool-about__sec {
    margin-top: 50px;
  }
}
@media (max-width: 767px) {
  .p-highschool-about {
    padding: min(87px, 22.3025641026vw) min(20px, 5.1282051282vw) min(76px, 19.4871794872vw);
    margin-top: max(-22px, -5.5820512821vw);
  }
  .p-highschool-about__wrap {
    display: block grid;
    grid-template-columns: min(50px, 12.8205128205vw) 1fr;
    gap: min(35px, 8.9743589744vw);
  }
  .p-highschool-about__ttl {
    grid-row: span 2/span 2;
  }
  .p-highschool-about__h {
    font-size: min(19px, 4.9564102564vw);
    line-height: 1.1381272633;
    letter-spacing: 0.1em;
  }
  .p-highschool-about__tags {
    margin-top: min(14px, 3.5897435897vw);
  }
  .p-highschool-about__sec + .p-highschool-about__sec {
    margin-top: min(35px, 8.9743589744vw);
  }
}

/* .p-calendar-modal
----------------------------------- */
.p-calendar-modal {
  position: fixed;
  inset: 0;
  z-index: 900;
  display: block grid;
  place-content: center;
  transition: opacity 0.3s ease-out;
}
.p-calendar-modal[aria-hidden=true] {
  pointer-events: none;
  opacity: 0;
}
.p-calendar-modal__box {
  position: relative;
  max-width: 100%;
  overflow-y: auto;
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.p-calendar-modal__box::-webkit-scrollbar {
  display: none;
}
.p-calendar-modal__close-btn {
  position: absolute;
  z-index: 5;
  display: block;
  aspect-ratio: 1/1;
  background: #fff;
  border-radius: 50%;
  transition: background-color 0.2s linear;
}
.p-calendar-modal__close-btn::before {
  position: absolute;
  inset: 0;
  display: block;
  width: 38.7096774194%;
  aspect-ratio: 1/1;
  margin: auto;
  content: "";
  background: #009b77;
  mask: url("../img/common/icn-close.svg") no-repeat center center;
  mask-size: contain;
  transition: background-color 0.2s linear;
}
.p-calendar-modal__close-btn > span {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  white-space: nowrap !important;
  border: 0 !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
}
@media (any-hover: hover) {
  .p-calendar-modal__close-btn:hover {
    background: #009b77;
  }
  .p-calendar-modal__close-btn:hover::before {
    background: #fff;
  }
}
.p-calendar-modal__list {
  position: relative;
  z-index: 2;
  display: block flex;
  justify-content: center;
}
.p-calendar-modal__bg {
  position: absolute;
  inset: 0;
  display: block;
  background: #000;
  opacity: 0.5;
}
@media (min-width: 768px) {
  .p-calendar-modal__box {
    padding: 58px 54px;
  }
  .p-calendar-modal__close-btn {
    top: 10px;
    right: 10px;
    width: 31px;
  }
  .p-calendar-modal__list {
    flex-wrap: wrap;
    gap: 15px;
  }
}
@media (max-width: 767px) {
  .p-calendar-modal__close-btn {
    position: fixed;
    top: min(10px, 2.5641025641vw);
    right: min(10px, 2.5641025641vw);
    width: min(30px, 7.6923076923vw);
  }
  .p-calendar-modal__list {
    flex-direction: column;
    gap: min(15px, 3.8461538462vw);
    padding: min(20px, 5.1282051282vw) min(20px, 5.1282051282vw) min(50px, 12.8205128205vw);
  }
}

/* .p-highschool-carousel
----------------------------------- */
.p-highschool-carousel {
  overflow: hidden;
}
.p-highschool-carousel__wrap, .p-highschool-carousel__group {
  display: block flex;
  width: max-content;
  white-space: nowrap;
}
.p-highschool-carousel__wrap {
  animation: carousel 25s linear infinite;
  will-change: animation;
}
.p-highschool-carousel__img {
  display: block;
  object-fit: cover;
}
@media (min-width: 768px) {
  .p-highschool-carousel__img {
    width: 138px;
    margin-inline: 10px;
  }
}
@media (max-width: 767px) {
  .p-highschool-carousel {
    width: 100vw;
    margin-inline: calc(50% - 50vw);
  }
  .p-highschool-carousel__img {
    width: min(137px, 35.241025641vw);
    margin-inline: min(10px, 2.5641025641vw);
  }
}

/* .p-highschool-events
----------------------------------- */
.p-highschool-events {
  position: relative;
  z-index: 2;
}
.p-highschool-events__h {
  font-weight: 700;
  color: #009b77;
}
.p-highschool-events__slider,
.p-highschool-events__slider .slick-track {
  display: block flex;
}
.p-highschool-events__slider .slick-slide {
  float: none;
  height: auto;
}
.p-highschool-events__card {
  display: block;
  height: 100%;
  overflow: hidden;
  background: #fff;
}
.p-highschool-events__head {
  text-align: center;
  background: #009b77;
}
[data-week=sun] .p-highschool-events__head {
  background: #EF490D;
}
[data-week=sat] .p-highschool-events__head {
  background: #3E86C1;
}
.p-highschool-events__date {
  display: block flex;
  align-items: flex-end;
  justify-content: center;
  font-weight: 700;
  color: #fff;
}
.p-highschool-events__day, .p-highschool-events__week {
  display: block;
  margin-block: var(--leading-trim);
}
.p-highschool-events__day {
  font-family: "Commissioner", "Noto Sans JP", sans-serif;
  line-height: 0.9142857143;
  letter-spacing: 0.1em;
}
.p-highschool-events__week {
  margin-inline: -0.5em;
  line-height: 2;
}
.p-highschool-events__tags {
  display: block flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  color: #fff;
}
.p-highschool-events__tag {
  font-weight: 500;
  line-height: 2.1818181818;
  text-align: center;
  border: 1px solid currentColor;
  border-radius: 100vmax;
}
.p-highschool-events__event {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-weight: 700;
  line-height: 1.4285714286;
  color: #ffec65;
}
.p-highschool-events__img {
  display: block;
  width: 100%;
  aspect-ratio: 230/128;
  object-fit: cover;
}
.p-highschool-events__copy {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  font-weight: 700;
  color: #009b77;
}
[data-week=sun] .p-highschool-events__copy {
  color: #EF490D;
}
[data-week=sat] .p-highschool-events__copy {
  color: #3E86C1;
}
@media (min-width: 768px) {
  .p-highschool-events__h {
    font-size: 1rem;
    line-height: 2;
  }
  .p-highschool-events__slider {
    margin-top: 7px;
    margin-right: calc((50vw - 497px) * -1);
  }
  .p-highschool-events__slide {
    padding-right: 15px;
  }
  .p-highschool-events__card {
    width: 230px;
    min-height: 261px;
    border-radius: 5px;
  }
  .p-highschool-events__head {
    padding-block: 10px;
  }
  .p-highschool-events__day {
    font-size: 2.1875rem;
  }
  .p-highschool-events__week {
    font-size: 1rem;
  }
  .p-highschool-events__tags {
    gap: 5px;
    margin-top: 5px;
  }
  .p-highschool-events__tag {
    padding-inline: 10px;
    font-size: 0.6875rem;
  }
  .p-highschool-events__event {
    margin-top: 3px;
    font-size: 0.875rem;
  }
  .p-highschool-events__copy {
    min-height: calc(2lh + 18px);
    padding: 8px 19px 10px;
    font-size: 1rem;
    line-height: 1.375;
  }
  .p-highschool-events__arws {
    justify-content: flex-end;
    margin-top: 13px;
  }
}
@media (max-width: 767px) {
  .p-highschool-events__h {
    font-size: min(20px, 5.1282051282vw);
    line-height: 1.6;
    text-align: center;
  }
  .p-highschool-events__slider {
    margin-top: min(14px, 3.5897435897vw);
    margin-right: max(-20px, -5.1282051282vw);
  }
  .p-highschool-events__slide {
    padding-right: min(15px, 3.8461538462vw);
  }
  .p-highschool-events__card {
    width: min(230px, 58.9743589744vw);
    min-height: min(261px, 66.9230769231vw);
    border-radius: min(5px, 1.2820512821vw);
  }
  .p-highschool-events__head {
    padding-block: min(6px, 1.5384615385vw) min(7px, 1.7948717949vw);
  }
  .p-highschool-events__day {
    font-size: min(35px, 8.9743589744vw);
  }
  .p-highschool-events__week {
    font-size: min(16px, 4.1025641026vw);
  }
  .p-highschool-events__tags {
    gap: min(5px, 1.2820512821vw);
    margin-top: min(5px, 1.2820512821vw);
  }
  .p-highschool-events__tag {
    padding-inline: min(10px, 2.5641025641vw);
    font-size: min(11px, 2.8205128205vw);
  }
  .p-highschool-events__event {
    margin-top: min(3px, 0.7692307692vw);
    font-size: min(14px, 3.5897435897vw);
  }
  .p-highschool-events__copy {
    min-height: calc(2lh + min(18px, 4.6153846154vw));
    padding: min(8px, 2.0512820513vw) min(19px, 4.8717948718vw) min(10px, 2.5641025641vw);
    font-size: min(16px, 4.1025641026vw);
    line-height: 1.36875;
  }
}

/* .p-highschool-faq
----------------------------------- */
.p-highschool-faq {
  position: relative;
  z-index: 2;
  color: #009b77;
  background: #ffec65;
}
.p-highschool-faq__wrap {
  position: relative;
  z-index: 2;
}
.p-highschool-faq__hgroup {
  width: fit-content;
  margin-inline: auto;
}
.p-highschool-faq__ttl {
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.05em;
}
.p-highschool-faq__ttl > span {
  font-size: 2.5em;
  line-height: 0.7;
}
.p-highschool-faq__tags {
  width: fit-content;
  margin-inline: auto;
}
.p-highschool-faq__img {
  position: absolute;
  inset-inline: 0;
  pointer-events: none;
  background-repeat: no-repeat;
  background-position: center center;
}
@media (min-width: 768px) {
  .p-highschool-faq {
    min-height: 390px;
    padding-block: 77px 95px;
  }
  .p-highschool-faq__ttl {
    padding-left: 66px;
    font-size: 1.25rem;
    text-indent: -66px;
  }
  .p-highschool-faq__ttl > span {
    margin-bottom: 11px;
  }
  .p-highschool-faq__tags {
    row-gap: 18px;
    max-width: 625px;
    margin-top: 22px;
  }
  .p-highschool-faq__img {
    top: -35px;
    bottom: -45px;
    background-image: url("../img/highschool/index/faq_qs-pc.png");
    background-size: 1400px auto;
  }
}
@media (max-width: 767px) {
  .p-highschool-faq {
    min-height: 167.6923076923vw;
    padding: 43.5897435897vw min(20px, 5.1282051282vw) 38.4615384615vw;
  }
  .p-highschool-faq__ttl {
    padding-left: 17.9487179487vw;
    font-size: 5.1282051282vw;
    text-indent: -17.9487179487vw;
  }
  .p-highschool-faq__ttl > span {
    margin-bottom: 2.8205128205vw;
  }
  .p-highschool-faq__tags {
    max-width: min(264px, 67.6923076923vw);
    margin-top: 3.3333333333vw;
  }
  .p-highschool-faq__img {
    top: -6.6666666667vw;
    bottom: -6.1538461538vw;
    background-image: url("../img/highschool/index/faq_qs-sp.png");
    background-size: 100% auto;
  }
}

/* .p-highschool-floating
----------------------------------- */
.p-highschool-floating {
  position: fixed;
  inset-inline: 0;
  z-index: 90;
  pointer-events: none;
}
.p-highschool-floating__bnr {
  position: relative;
  display: block;
  width: max-content;
  pointer-events: all;
  background: #fff;
  border-radius: 100vmax;
  filter: drop-shadow(5px 5px 0 rgba(0, 0, 0, 0.15));
}
.p-highschool-floating__next {
  position: absolute;
  top: 0;
  left: 0;
  display: block grid;
  place-content: center;
  height: 100%;
  font-weight: 700;
  color: #fff;
  text-align: center;
  background: #009b77;
  border: 1px solid #009b77;
  border-radius: 100vmax;
  transition: color 0.2s linear, background-color 0.2s linear;
}
@media (any-hover: hover) {
  .p-highschool-floating__next:hover {
    color: #009b77;
    background: #fff;
  }
}
.p-highschool-floating__date, .p-highschool-floating__event {
  display: block;
}
.p-highschool-floating__date {
  margin-top: var(--leading-trim);
  margin-right: -0.5em;
}
.p-highschool-floating__date-num {
  padding-left: 0.5em;
  font-family: "Commissioner", "Noto Sans JP", sans-serif;
}
.p-highschool-floating__first {
  display: block flex;
  align-items: center;
  width: 100%;
  height: 100%;
  color: #009b77;
  border: 1px solid #009b77;
  border-radius: 100vmax;
}
@media (any-hover: hover) {
  .p-highschool-floating__first:hover .p-highschool-floating__first-txt {
    text-decoration: underline;
  }
}
.p-highschool-floating__first-txt {
  display: block;
  font-weight: 700;
  text-align: center;
}
.p-highschool-floating__first-txt > em,
.p-highschool-floating__first-txt > span {
  display: block;
}
.p-highschool-floating__first-txt > em {
  font-weight: 900;
  line-height: 1.25;
}
.p-highschool-floating__first-emoji {
  display: block;
  text-align: center;
}
@media (min-width: 768px) {
  .p-highschool-floating {
    bottom: 30px;
    padding-right: min(100px, 7.1428571429vw);
  }
  .is-tab .p-highschool-floating {
    padding-right: min(20px, 1.4285714286vw);
  }
  :has(#chatplusview) .p-highschool-floating {
    bottom: 50px;
  }
  .p-highschool-floating__bnr {
    min-width: 302px;
    height: 60px;
    margin-left: auto;
  }
  .is-tab .p-highschool-floating__bnr {
    min-width: min(302px, 21.5714285714vw);
  }
  .l-sp-cont__main .p-highschool-floating {
    bottom: min(15px, 3.8461538462vw);
    min-width: 1200px;
    padding-inline: min(18px, 4.6153846154vw);
  }
  .l-sp-cont__main .p-highschool-floating .p-highschool-floating__bnr {
    margin-inline: auto;
  }
  .p-highschool-floating__next {
    min-width: 176px;
    padding-inline: 1.6666666667em;
    font-size: 0.75rem;
  }
  .is-tab .p-highschool-floating__next {
    min-width: min(176px, 12.5714285714vw);
    font-size: min(12px, 0.8571428571vw);
  }
  .p-highschool-floating__date-num {
    font-size: 1.6662916667em;
  }
  .p-highschool-floating__event {
    margin-top: 2px;
  }
  .p-highschool-floating__first {
    padding-inline: 184px 10px;
  }
  .p-highschool-floating__first-txt {
    font-size: 0.625rem;
    line-height: 1.3;
  }
  .is-tab .p-highschool-floating__first-txt {
    font-size: min(13px, 0.9285714286vw);
  }
  .p-highschool-floating__first-txt > em {
    font-size: 1.2em;
  }
  .p-highschool-floating__first-emoji {
    width: 1.2116286339em;
    font-size: 1.999375rem;
    line-height: 1.5629884339;
  }
  .is-tab .p-highschool-floating__first-emoji {
    font-size: min(32px, 2.285vw);
  }
}
@media (max-width: 767px) {
  .p-highschool-floating {
    bottom: min(15px, 3.8461538462vw);
    padding-inline: min(18px, 4.6153846154vw);
  }
  :has(#chatplusview) .p-highschool-floating {
    bottom: min(45px, 11.5384615385vw);
  }
}
@media (max-width: 767px) and (orientation: landscape) {
  :has(#chatplusview) .p-highschool-floating {
    padding-right: min(80px, 20.5128205128vw);
  }
}
@media (max-width: 767px) {
  .p-highschool-floating__bnr {
    max-width: 100%;
    height: min(60px, 15.3846153846vw);
    margin-inline: auto;
  }
}
@media (max-width: 767px) and (orientation: landscape) {
  .p-highschool-floating__bnr {
    margin-inline: auto 0;
  }
}
@media (max-width: 767px) {
  .p-highschool-floating__next {
    width: min(200px, 51.2820512821vw);
    font-size: min(12px, 3.0769230769vw);
  }
  .p-highschool-floating__date-num {
    font-size: min(20px, 5.1282051282vw);
  }
  .p-highschool-floating__first {
    padding-inline: min(215px, 55.1282051282vw) min(24px, 6.1948717949vw);
  }
  .p-highschool-floating__first-txt {
    font-size: min(11px, 2.8692307692vw);
    line-height: 1.2511170688;
  }
  .p-highschool-floating__first-txt > em {
    font-size: 1.200178731em;
  }
  .p-highschool-floating__first-emoji {
    width: 1.2117318436em;
    font-size: min(36px, 9.1794871795vw);
    line-height: 1.561452514;
  }
}

/* .p-highschool-fv
----------------------------------- */
.p-highschool-fv {
  overflow: hidden;
}
.p-highschool-fv__ticker {
  font-weight: 700;
  color: #009b77;
}
@media (min-width: 768px) {
  .p-highschool-fv {
    padding-block: 76px 43px;
  }
  .p-highschool-fv__wrap {
    display: block flex;
    flex-direction: row-reverse;
    gap: 50px;
    align-items: flex-start;
    justify-content: flex-end;
  }
  .p-highschool-fv__wrap .c-fv-copy__ttl-img {
    width: 353px;
  }
  .p-highschool-fv__wrap .c-fv-copy__em-txt {
    margin-top: 43px;
  }
  .p-highschool-fv__breadcrumbs {
    padding-inline: 20px;
  }
  .p-highschool-fv__ticker {
    margin-top: 62px;
    font-size: 3.125rem;
  }
  .p-highschool-fv__ticker .c-ticker__bloc, .p-highschool-fv__ticker .c-ticker__txt {
    padding-inline: 20px;
  }
}
@media (max-width: 767px) {
  .p-highschool-fv {
    padding-block: 10.2564102564vw 5.8974358974vw;
  }
  .p-highschool-fv__bloc {
    margin-top: min(40px, 10.2564102564vw);
  }
  .p-highschool-fv__ticker {
    margin-top: min(73px, 18.7179487179vw);
    font-size: min(32px, 8.1871794872vw);
  }
  .p-highschool-fv__ticker .c-ticker__bloc, .p-highschool-fv__ticker .c-ticker__txt {
    padding-inline: min(22px, 5.641025641vw);
  }
}

/* .p-highschool-life
----------------------------------- */
.p-highschool-life {
  position: relative;
}
.p-highschool-life__ttl {
  text-align: center;
}
.p-highschool-life__cont {
  overflow: hidden;
}
.p-highschool-life__slider {
  display: block flex;
  justify-content: center;
}
.p-highschool-life__slide-link, .p-highschool-life__slide-img {
  display: block;
}
@media (min-width: 768px) {
  .p-highschool-life {
    margin-top: 47px;
  }
  .p-highschool-life__ttl-img {
    width: 417px;
  }
  .p-highschool-life__cont {
    margin-top: 32px;
  }
  .p-highschool-life__slide {
    padding-inline: 7px;
  }
  .p-highschool-life__slide-img {
    width: 238px;
  }
  .p-highschool-life__slider-arws {
    margin-top: 21px;
  }
  .p-highschool-life__btn {
    margin-top: 22px;
  }
}
@media (max-width: 767px) {
  .p-highschool-life__ttl {
    margin-top: max(-18px, -4.6153846154vw);
  }
  .p-highschool-life__ttl-img {
    width: min(320px, 82.0512820513vw);
  }
  .p-highschool-life__cont {
    margin-top: min(26px, 6.6666666667vw);
  }
  .p-highschool-life__slide {
    padding-inline: 1.9230769231vw;
  }
  .p-highschool-life__slide-img {
    width: 60.9897435897vw;
  }
  .p-highschool-life__slider-arws {
    transform: translateY(-50%);
  }
}

/* .p-highschool-movie
----------------------------------- */
.p-highschool-movie {
  position: relative;
  background: rgba(0, 155, 119, 0.2);
}
.p-highschool-movie__hgroup {
  text-align: center;
}
.p-highschool-movie__sub-ttl {
  display: block;
  font-family: "Commissioner", "Noto Sans JP", sans-serif;
  font-weight: 700;
  color: #fff;
}
.p-highschool-movie__ttl {
  font-weight: 700;
  line-height: 1.6;
  color: #009b77;
}
.p-highschool-movie__cont {
  position: relative;
  overflow: hidden;
}
.p-highschool-movie__slider {
  display: block flex;
  justify-content: center;
}
.p-highschool-movie__slider .slick-track {
  display: block flex;
}
.p-highschool-movie__slider .slick-slide {
  float: none;
  height: auto;
}
.p-highschool-movie__modal-btn {
  display: block flex;
  flex-direction: column;
  height: 100%;
  overflow: hidden;
}
.p-highschool-movie__thumb-fig {
  position: relative;
  aspect-ratio: 660/371;
  overflow: hidden;
  background: #fff;
}
.p-highschool-movie__thumb-fig::before {
  position: absolute;
  inset: 0;
  display: block;
  content: "";
  border: 10px solid #fff;
}
.p-highschool-movie__thumb-img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.p-highschool-movie__thumb-ttl {
  display: block;
  font-weight: 700;
  line-height: 1.4;
  color: #009b77;
}
.p-highschool-movie__thumb-txt {
  line-height: 1.5384615385;
}
.p-highschool-movie__arws {
  position: absolute;
  inset-inline: 0;
  justify-content: space-between;
  margin-inline: auto;
  pointer-events: none;
}
.p-highschool-movie__arws .c-slider-arws__arw {
  pointer-events: all;
}
@media (min-width: 768px) {
  .p-highschool-movie {
    padding-top: 71px;
    border-radius: 5px;
  }
  .p-highschool-movie__sub-ttl {
    font-size: 5rem;
    line-height: 1.25;
  }
  .p-highschool-movie__ttl {
    font-size: 1.25rem;
  }
  .p-highschool-movie__cont {
    margin-top: 22px;
  }
  .p-highschool-movie__slide {
    padding-inline: 23px;
  }
  .p-highschool-movie__modal-btn {
    width: 660px;
  }
  .p-highschool-movie__thumb-fig {
    border-radius: 20px;
  }
  .p-highschool-movie__thumb-fig::before {
    border-radius: 20px;
  }
  .p-highschool-movie__thumb-bloc {
    max-width: 486px;
    margin: 20px auto 0;
  }
  .p-highschool-movie__thumb-ttl {
    font-size: 1.25rem;
  }
  .p-highschool-movie__thumb-txt {
    margin-top: 7px;
    font-size: 0.8125rem;
  }
  .p-highschool-movie__arws {
    top: 0;
    width: 690px;
    height: 371px;
  }
  .p-highschool-movie__more-btn {
    margin-top: 32px;
    translate: 0 20px;
  }
  .p-highschool-movie__more-btn::before, .p-highschool-movie__more-btn::after {
    display: none;
  }
}
@media (max-width: 767px) {
  .p-highschool-movie {
    padding-top: 11.7948717949vw;
    border-radius: min(5px, 1.2820512821vw);
  }
  .p-highschool-movie__sub-ttl {
    font-size: min(50px, 12.8205128205vw);
    line-height: 1.2;
  }
  .p-highschool-movie__ttl {
    margin-top: min(30px, 7.6923076923vw);
    font-size: min(20px, 5.1282051282vw);
  }
  .p-highschool-movie__cont {
    margin-top: min(30px, 7.6923076923vw);
  }
  .p-highschool-movie__slide {
    padding-inline: min(8px, 1.9230769231vw);
  }
  .p-highschool-movie__modal-btn {
    width: min(325px, 83.3333333333vw);
  }
  .p-highschool-movie__thumb-fig {
    border-radius: min(10px, 2.5307692308vw);
  }
  .p-highschool-movie__thumb-fig::before {
    border-width: min(7px, 1.7948717949vw);
    border-radius: min(10px, 2.5307692308vw);
  }
  .p-highschool-movie__thumb-bloc {
    padding-left: min(10px, 2.5641025641vw);
    margin-top: min(20px, 5.1282051282vw);
  }
  .p-highschool-movie__thumb-ttl {
    font-size: min(20px, 5.1282051282vw);
  }
  .p-highschool-movie__thumb-txt {
    margin-top: min(7px, 1.7948717949vw);
    font-size: min(13px, 3.3333333333vw);
  }
  .p-highschool-movie__arws {
    top: min(68px, 17.5564102564vw);
    width: min(383px, 98.2051282051vw);
  }
  .p-highschool-movie__more-btn {
    margin-top: min(36px, 9.2307692308vw);
    translate: 0 min(24px, 6.1538461538vw);
  }
}

/* .p-highschool-newest
----------------------------------- */
.p-highschool-newest {
  overflow: hidden;
}
.p-highschool-newest__head {
  display: block flex;
  color: #fff;
  background: #009b77;
}
.p-highschool-newest__ttl {
  font-weight: 700;
  line-height: 1.75;
}
.p-highschool-newest__more-link {
  display: block flex;
  align-items: center;
  justify-content: flex-end;
  width: fit-content;
  font-weight: 700;
}
.p-highschool-newest__more-link::after {
  display: block;
  aspect-ratio: 15/12;
  content: "";
  background: currentColor;
  mask: url("../img/common/arw.svg") no-repeat center center;
  mask-size: contain;
}
@media (any-hover: hover) {
  .p-highschool-newest__more-link:hover {
    text-decoration: underline;
  }
}
.p-highschool-newest__art-link {
  display: block flex;
  align-items: center;
  font-weight: 500;
  color: #009b77;
}
.p-highschool-newest__art-date {
  display: block;
  width: 6.5em;
  font-family: "Commissioner", "Noto Sans JP", sans-serif;
  letter-spacing: 0.1em;
}
.p-highschool-newest__art-tag {
  display: block;
  text-align: center;
  background: #fff;
}
.p-highschool-newest__art-ttl {
  display: block;
}
@media (any-hover: hover) {
  .p-highschool-newest__art-link:hover .p-highschool-newest__art-ttl {
    text-decoration: underline;
  }
}
@media (min-width: 768px) {
  .p-highschool-newest {
    position: relative;
    background: #f5f5f5;
  }
  .p-highschool-newest::before {
    position: absolute;
    inset-block: 0;
    left: 0;
    width: calc((100vw - 994px) / 2);
    min-width: 110px;
    content: "";
    background: #009b77;
  }
  .p-highschool-newest__wrap {
    position: relative;
    z-index: 2;
    display: block grid;
    grid-template-columns: 270px 1fr;
  }
  .p-highschool-newest__head {
    flex-direction: column;
    justify-content: flex-end;
    padding-block: 37px 42px;
  }
  .p-highschool-newest__ttl {
    font-size: 1.25rem;
  }
  .p-highschool-newest__more {
    padding-right: 75px;
    margin-top: 11px;
  }
  .p-highschool-newest__more-link {
    gap: 10px;
    margin-left: auto;
    font-size: 0.9375rem;
    line-height: 2.1333333333;
  }
  .p-highschool-newest__more-link::after {
    width: 15px;
  }
  .p-highschool-newest__cont {
    padding: 37px 0 36px 40px;
  }
  .p-highschool-newest__li:nth-of-type(n+2) {
    margin-top: 12px;
  }
  .p-highschool-newest__art-link {
    gap: 10px;
  }
  .p-highschool-newest__art-date {
    font-size: 1rem;
    line-height: 2;
  }
  .p-highschool-newest__art-tag {
    min-width: 10.7692307692em;
    font-size: 0.8125rem;
    line-height: 2;
    border-radius: 5px;
  }
  .p-highschool-newest__art-ttl {
    flex: 1 1 5%;
    min-width: 0;
    font-size: 1rem;
    line-height: 2;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
}
@media (max-width: 767px) {
  .p-highschool-newest__head {
    align-items: flex-end;
    justify-content: space-between;
    padding: min(23px, 5.8974358974vw) min(20px, 5.1282051282vw) min(40px, 10.2564102564vw);
  }
  .p-highschool-newest__ttl {
    font-size: min(20px, 5.1282051282vw);
  }
  .p-highschool-newest__more-link {
    gap: min(3px, 0.8435897436vw);
    font-size: min(14px, 3.5897435897vw);
    line-height: 2.2857142857;
  }
  .p-highschool-newest__more-link::after {
    width: min(15px, 3.8461538462vw);
  }
  .p-highschool-newest__cont {
    padding-inline: min(20px, 5.1282051282vw);
  }
  .p-highschool-newest__list {
    position: relative;
    z-index: 2;
    padding: min(22px, 5.641025641vw) min(25px, 6.4102564103vw) min(30px, 7.6923076923vw);
    margin-top: max(-25px, -6.4102564103vw);
    background: #f5f5f5;
    border-radius: min(5px, 1.2820512821vw);
  }
  .p-highschool-newest__li:nth-of-type(n+2) {
    margin-top: min(20px, 5.1282051282vw);
  }
  .p-highschool-newest__art-link {
    flex-wrap: wrap;
    column-gap: min(7px, 1.7435897436vw);
  }
  .p-highschool-newest__art-date {
    font-size: min(14px, 3.5889230769vw);
    line-height: 2.2862368541;
  }
  .p-highschool-newest__art-tag {
    min-width: 8.2483333333em;
    padding-inline: min(8px, 2.0512820513vw);
    font-size: min(12px, 3.0769230769vw);
    line-height: 2;
    border-radius: min(5px, 1.2820512821vw);
  }
  .p-highschool-newest__art-ttl {
    width: 100%;
    font-size: min(16px, 4.1016410256vw);
    line-height: 1.2502813133;
  }
}

/* .p-highschool-oc
----------------------------------- */
.p-highschool-oc {
  overflow: hidden;
  background: #ffec65;
}
.p-highschool-oc__hgroup {
  color: #009b77;
  text-align: center;
}
.p-highschool-oc__ttl, .p-highschool-oc__copy {
  font-weight: 700;
}
.p-highschool-oc__ttl {
  line-height: 1.6;
}
.p-highschool-oc__ttl > em {
  font-size: 2.5em;
}
.p-highschool-oc__cont-head {
  position: relative;
}
.p-highschool-oc__h {
  font-family: "Commissioner", "Noto Sans JP", sans-serif;
  font-weight: 700;
  color: #009b77;
}
.p-highschool-oc__h > span,
.p-highschool-oc__h > em {
  display: block;
}
.p-highschool-oc__h > span {
  margin-top: var(--leading-trim);
}
.p-highschool-oc__h > em {
  margin-bottom: var(--leading-trim);
}
.p-highschool-oc__pic {
  position: absolute;
  display: block;
}
.p-highschool-oc__btn {
  background: #ef490d;
  border-color: #ef490d;
}
@media (any-hover: hover) {
  .p-highschool-oc__btn:hover {
    color: #ef490d;
  }
}
@media (min-width: 768px) {
  .p-highschool-oc {
    padding-block: 20px 55px;
    margin-top: 31px;
  }
  .p-highschool-oc__wrap {
    margin-top: 72px;
  }
  .p-highschool-oc__ttl {
    font-size: 1.25rem;
  }
  .p-highschool-oc__ttl > em {
    padding-right: 10px;
  }
  .p-highschool-oc__copy {
    margin-top: 22px;
    font-size: 1rem;
    line-height: 1.75;
  }
  .p-highschool-oc__cont {
    display: block grid;
    grid-template-columns: 479px 1fr;
    gap: 29px 39px;
    margin-top: 47px;
  }
  .p-highschool-oc__cont-head {
    grid-row-start: 1;
    grid-column-start: 2;
  }
  .p-highschool-oc__h {
    font-size: 2.203125rem;
    line-height: 1.2482269504;
  }
  .p-highschool-oc__h > em {
    font-size: 1.6226950355em;
    line-height: 0.9615384615;
  }
  .p-highschool-oc__pic {
    right: 22px;
    bottom: -68px;
    width: 208px;
  }
  .p-highschool-oc__calendar {
    grid-row: span 2/span 2;
    grid-row-start: 1;
    grid-column-start: 1;
  }
  .p-highschool-oc__events {
    grid-column-start: 2;
  }
  .p-highschool-oc__btn {
    width: 421px;
    margin: 42px auto 0;
  }
  .p-highschool-oc__btn::before {
    right: 28px;
  }
}
@media (max-width: 767px) {
  .p-highschool-oc {
    padding: min(20px, 5.1282051282vw) min(20px, 5.1282051282vw) min(34px, 8.7179487179vw);
    margin-top: min(26px, 6.6666666667vw);
  }
  .p-highschool-oc__wrap {
    margin-top: min(50px, 12.8205128205vw);
  }
  .p-highschool-oc__ttl {
    padding-bottom: min(13px, 3.3333333333vw);
    font-size: min(20px, 5.1282051282vw);
    border-bottom: 1px solid currentColor;
  }
  .p-highschool-oc__ttl > em,
  .p-highschool-oc__ttl > span {
    display: block;
  }
  .p-highschool-oc__ttl > em {
    margin-block: var(--leading-trim);
  }
  .p-highschool-oc__ttl > span {
    margin-top: min(10px, 2.5641025641vw);
  }
  .p-highschool-oc__copy {
    margin-top: min(14px, 3.5897435897vw);
    font-size: min(15px, 3.8461538462vw);
    line-height: 1.6666666667;
  }
  .p-highschool-oc__cont {
    margin-top: min(44px, 11.2820512821vw);
  }
  .p-highschool-oc__h {
    font-size: min(33px, 8.458974359vw);
    line-height: 1.2488632919;
  }
  .p-highschool-oc__h > em {
    font-size: 1.6223097908em;
    line-height: 0.9622571001;
  }
  .p-highschool-oc__pic {
    right: max(-20px, -5.1282051282vw);
    bottom: max(-45px, -11.5384615385vw);
    z-index: 2;
    width: min(193px, 49.4871794872vw);
  }
  .p-highschool-oc__calendar {
    margin-top: min(45px, 11.5384615385vw);
  }
  .p-highschool-oc__calendar .c-slider-arws__arw--sm {
    border: 1px solid #009b77;
  }
  .p-highschool-oc__events {
    margin-top: min(26px, 6.6666666667vw);
  }
  .p-highschool-oc__btn {
    height: min(70px, 17.9487179487vw);
    margin-top: min(39px, 10vw);
  }
  .p-highschool-oc__btn::before {
    right: min(20px, 5.1282051282vw);
  }
}

/* .p-highschool-report
----------------------------------- */
.p-highschool-report {
  color: #f08300;
}
.p-highschool-report__ttl {
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
}
.p-highschool-report__wrap {
  overflow: hidden;
}
.p-highschool-report__slider,
.p-highschool-report__slider .slick-track {
  display: block flex;
}
.p-highschool-report__slider .slick-slide {
  float: none;
  height: auto;
}
.p-highschool-report__art-fig {
  aspect-ratio: 350/260;
  overflow: hidden;
}
.p-highschool-report__art-img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: scale 0.3s linear;
}
.p-highschool-report__card {
  display: block;
}
.p-highschool-report__card[data-subject=bisinfo] {
  color: #45b035;
}
.p-highschool-report__card[data-subject=lifepro] {
  color: #f08300;
}
.p-highschool-report__card[data-subject=hoiku] {
  color: #f8b500;
}
@media (any-hover: hover) {
  .p-highschool-report__card:hover .p-highschool-report__art-img {
    scale: 1.05;
  }
}
.p-highschool-report__art-company {
  display: block;
  font-weight: 700;
  line-height: 1.7857142857;
  border-bottom: 1px solid currentColor;
}
.p-highschool-report__art-ttl {
  display: block;
  font-weight: 700;
  line-height: 1.5625;
}
.p-highschool-report__art-course {
  display: block;
  width: fit-content;
  font-weight: 700;
  line-height: 2;
  color: #fff;
  text-align: center;
}
[data-subject=bisinfo] .p-highschool-report__art-course {
  background: #45b035;
}
[data-subject=lifepro] .p-highschool-report__art-course {
  background: #f08300;
}
[data-subject=hoiku] .p-highschool-report__art-course {
  background: #f8b500;
}
.p-highschool-report__art-profile {
  font-weight: 500;
  line-height: 1.3846153846;
}
.p-highschool-report__slider-arws .c-slider-arws__arw {
  color: #f08300;
  border-color: #f08300;
}
@media (any-hover: hover) {
  .p-highschool-report__slider-arws .c-slider-arws__arw:hover {
    color: #fff;
    background: #f08300;
  }
}
.p-highschool-report__btn::before, .p-highschool-report__btn::after {
  background: #f08300;
}
.p-highschool-report__btn .c-btn__btn {
  background: #f08300;
  border-color: #f08300;
}
@media (any-hover: hover) {
  .p-highschool-report__btn .c-btn__btn:hover {
    color: #f08300;
    background: #fff;
  }
}
@media (min-width: 768px) {
  .p-highschool-report {
    margin-top: 68px;
  }
  .p-highschool-report__ttl {
    font-size: 1.25rem;
  }
  .p-highschool-report__wrap {
    margin-top: 30px;
  }
  @container (min-width: 1201px) {
    .p-highschool-report__cont {
      margin-right: calc((50vw - 497px) * -1);
    }
  }
  @container (max-width: 1200px) {
    .p-highschool-report__cont {
      margin-right: -103px;
    }
  }
  .p-highschool-report__slider,
  .p-highschool-report__slider .slick-track {
    gap: 30px;
  }
  .p-highschool-report__slide {
    width: 350px;
  }
  .p-highschool-report__art-fig {
    border-radius: 13px;
  }
  .p-highschool-report__art-company {
    padding-bottom: 5px;
    margin-top: 21px;
    font-size: 0.875rem;
  }
  .p-highschool-report__art-ttl {
    margin-top: 8px;
    font-size: 1rem;
  }
  .p-highschool-report__art-course {
    padding-inline: 15px;
    margin-top: 8px;
    font-size: 0.875rem;
    border-radius: 5px;
  }
  .p-highschool-report__art-profile {
    margin-top: 9px;
    font-size: 0.8125rem;
  }
  .p-highschool-report__slider-arws:not(:empty) {
    margin-top: 43px;
  }
  .p-highschool-report__btn {
    margin-top: 70px;
  }
}
@media (max-width: 767px) {
  .p-highschool-report {
    margin-top: min(41px, 10.5512820513vw);
  }
  .p-highschool-report__ttl {
    font-size: min(20px, 5.1282051282vw);
  }
  .p-highschool-report__cont {
    margin-top: min(20px, 5.1282051282vw);
  }
  .p-highschool-report__slide {
    padding-left: min(15px, 3.8461538462vw);
  }
  .p-highschool-report__card {
    width: min(320px, 82.1025641026vw);
  }
  .p-highschool-report__art-fig {
    border-radius: min(9px, 2.1846153846vw);
  }
  .p-highschool-report__art-company {
    padding-bottom: min(5px, 1.2820512821vw);
    margin-top: min(21px, 5.3846153846vw);
    font-size: min(14px, 3.5897435897vw);
  }
  .p-highschool-report__art-ttl {
    margin-top: min(8px, 2.0512820513vw);
    font-size: min(16px, 4.1025641026vw);
  }
  .p-highschool-report__art-course {
    padding-inline: min(15px, 3.8461538462vw);
    margin-top: min(8px, 2.0512820513vw);
    font-size: min(14px, 3.5897435897vw);
    border-radius: min(5px, 1.2820512821vw);
  }
  .p-highschool-report__art-profile {
    margin-top: min(9px, 2.3076923077vw);
    font-size: min(13px, 3.3333333333vw);
  }
  .p-highschool-report__slider-arws:not(:empty) {
    margin-top: min(20px, 5.1282051282vw);
  }
  .p-highschool-report__btn {
    margin-top: min(20px, 5.1282051282vw);
  }
}

/* .p-highschool-slider
----------------------------------- */
.p-highschool-slider .slick-list {
  overflow: visible;
}
.p-highschool-slider__slide {
  opacity: 0;
}
.p-highschool-slider__slide.slick-slide {
  opacity: 1 !important;
}
.p-highschool-slider__slide.is-remove {
  z-index: 1001 !important;
}
.p-highschool-slider__box {
  position: relative;
  overflow: hidden;
  transform: rotate(3deg) translate(50px, -30px);
  transform-origin: center bottom;
  transition: opacity 1s cubic-bezier(0.215, 0.61, 0.355, 1), transform 1s cubic-bezier(0.215, 0.61, 0.355, 1);
  will-change: transform;
}
.p-highschool-slider__box::before, .p-highschool-slider__box::after {
  position: absolute;
  inset: 0;
  display: block;
  pointer-events: none;
  content: "";
}
.p-highschool-slider__box::before {
  z-index: 2;
  background: #c7c7c7;
  mix-blend-mode: multiply;
  transition: opacity 1s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.p-highschool-slider__box::after {
  z-index: 3;
  border: 3px solid #009b77;
}
.is-standby .p-highschool-slider__box {
  opacity: 0;
}
.is-next .p-highschool-slider__box {
  opacity: 1;
}
.is-view .p-highschool-slider__box {
  opacity: 1;
  transform: rotate(0deg) translate(0, 0);
}
.is-view .p-highschool-slider__box::before {
  opacity: 0;
}
.is-remove .p-highschool-slider__box {
  opacity: 1;
  animation: highschool-slide-out 1s cubic-bezier(0.215, 0.61, 0.355, 1) forwards;
}
.p-highschool-slider__img {
  display: block;
  width: 100%;
}
@media (min-width: 768px) {
  .p-highschool-slider {
    flex: 1 1 5%;
    min-width: 0;
    padding-top: 28px;
  }
  .p-highschool-slider__box {
    width: 387px;
  }
  .p-highschool-slider__box::before, .p-highschool-slider__box::after {
    border-radius: 20px;
  }
  .p-highschool-slider__img {
    border-radius: 20px;
  }
}
@media (max-width: 767px) {
  .p-highschool-slider {
    width: 73.3333333333vw;
    margin-inline: auto;
  }
  .p-highschool-slider__box {
    width: 61.0256410256vw;
  }
  .p-highschool-slider__box::before, .p-highschool-slider__box::after {
    border-radius: 3.4435897436vw;
  }
  .p-highschool-slider__box::after {
    border-width: 0.5128205128vw;
  }
  .p-highschool-slider__img {
    border-radius: 3.4435897436vw;
  }
}

@keyframes highschool-slide-out {
  0% {
    opacity: 1;
    transform: rotate(0deg) translate(0, 0);
    transform-origin: left bottom;
  }
  100% {
    opacity: 0;
    transform: rotate(-3deg) translate(-20px, -45px);
    transform-origin: left bottom;
  }
}
/* .p-highschool-story
----------------------------------- */
.p-highschool-story {
  container-type: inline-size;
  color: #f08300;
}
.p-highschool-story__ttl {
  font-weight: 700;
  line-height: 1.6;
  text-align: center;
}
.p-highschool-story__ttl > span {
  font-size: 2.5em;
  line-height: 0.7;
}
.p-highschool-story__h {
  font-weight: 700;
  text-align: center;
  letter-spacing: 0.1em;
}
.p-highschool-story__wrap {
  overflow: hidden;
}
.p-highschool-story__slider,
.p-highschool-story__slider .slick-track {
  display: block flex;
}
.p-highschool-story__slider .slick-slide {
  float: none;
  height: auto;
}
.p-highschool-story__art-fig {
  aspect-ratio: 350/242;
  overflow: hidden;
}
.p-highschool-story__art-img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: scale 0.3s linear;
}
.p-highschool-story__card {
  display: block;
}
.p-highschool-story__card[data-subject=bisinfo] {
  color: #45b035;
}
.p-highschool-story__card[data-subject=lifepro] {
  color: #f08300;
}
.p-highschool-story__card[data-subject=hoiku] {
  color: #f8b500;
}
@media (any-hover: hover) {
  .p-highschool-story__card:hover .p-highschool-story__art-img {
    scale: 1.05;
  }
}
.p-highschool-story__art-company {
  display: block;
  font-weight: 700;
  line-height: 1.3333333333;
}
.p-highschool-story__art-ttl {
  display: block;
  font-weight: 700;
  line-height: 1.4;
}
.p-highschool-story__art-course {
  display: block;
  width: fit-content;
  font-weight: 700;
  line-height: 2;
  color: #fff;
  text-align: center;
}
[data-subject=bisinfo] .p-highschool-story__art-course {
  background: #45b035;
}
[data-subject=lifepro] .p-highschool-story__art-course {
  background: #f08300;
}
[data-subject=hoiku] .p-highschool-story__art-course {
  background: #f8b500;
}
.p-highschool-story__art-profile {
  font-weight: 500;
  line-height: 1.3846153846;
}
.p-highschool-story__slider-arws .c-slider-arws__arw {
  color: #f08300;
  border-color: #f08300;
}
@media (any-hover: hover) {
  .p-highschool-story__slider-arws .c-slider-arws__arw:hover {
    color: #fff;
    background: #f08300;
  }
}
.p-highschool-story__btn::before, .p-highschool-story__btn::after {
  background: #f08300;
}
.p-highschool-story__btn .c-btn__btn {
  background: #f08300;
  border-color: #f08300;
}
@media (any-hover: hover) {
  .p-highschool-story__btn .c-btn__btn:hover {
    color: #f08300;
    background: #fff;
  }
}
@media (min-width: 768px) {
  .p-highschool-story {
    margin-top: 86px;
  }
  .p-highschool-story__ttl {
    font-size: 1.25rem;
  }
  .p-highschool-story__ttl > span {
    margin-right: 5px;
  }
  .p-highschool-story__h {
    margin-top: 45px;
    font-size: 1.25rem;
    line-height: 1.05;
  }
  .p-highschool-story__cont {
    margin-top: 24px;
  }
  @container (min-width: 1201px) {
    .p-highschool-story__cont {
      margin-right: calc((50vw - 497px) * -1);
    }
  }
  @container (max-width: 1200px) {
    .p-highschool-story__cont {
      margin-right: -103px;
    }
  }
  .p-highschool-story__slider,
  .p-highschool-story__slider .slick-track {
    gap: 30px;
  }
  .p-highschool-story__card {
    width: 350px;
  }
  .p-highschool-story__art-fig {
    border-radius: 9px;
  }
  .p-highschool-story__art-company {
    margin-top: 14px;
    font-size: 0.9375rem;
  }
  .p-highschool-story__art-ttl {
    margin-top: 7px;
    font-size: 1.25rem;
  }
  .p-highschool-story__art-course {
    padding-inline: 15px;
    margin-top: 14px;
    font-size: 0.875rem;
    border-radius: 5px;
  }
  .p-highschool-story__art-profile {
    margin-top: 9px;
    font-size: 0.8125rem;
    line-height: 1.3846153846;
  }
  .p-highschool-story__slider-arws {
    margin-top: 43px;
  }
  .p-highschool-story__btn {
    margin-top: 36px;
  }
}
@media (max-width: 767px) {
  .p-highschool-story {
    margin-top: min(76px, 19.4871794872vw);
  }
  .p-highschool-story__ttl {
    font-size: min(20px, 5.1282051282vw);
  }
  .p-highschool-story__ttl > span {
    display: block;
    margin-bottom: min(20px, 5.1282051282vw);
  }
  .p-highschool-story__h {
    margin-top: min(30px, 7.6923076923vw);
    font-size: min(20px, 5.1282051282vw);
    line-height: 1.5;
  }
  .p-highschool-story__cont {
    margin-top: min(20px, 5.1282051282vw);
  }
  .p-highschool-story__slide {
    padding-left: min(15px, 3.8461538462vw);
  }
  .p-highschool-story__card {
    width: min(320px, 82.1025641026vw);
  }
  .p-highschool-story__art-fig {
    border-radius: min(9px, 2.1846153846vw);
  }
  .p-highschool-story__art-company {
    margin-top: min(14px, 3.5897435897vw);
    font-size: min(15px, 3.8461538462vw);
  }
  .p-highschool-story__art-ttl {
    margin-top: min(7px, 1.7948717949vw);
    font-size: min(20px, 5.1282051282vw);
  }
  .p-highschool-story__art-course {
    padding-inline: min(15px, 3.8461538462vw);
    margin-top: min(14px, 3.5897435897vw);
    font-size: min(14px, 3.5897435897vw);
    border-radius: min(5px, 1.2820512821vw);
  }
  .p-highschool-story__art-profile {
    margin-top: min(9px, 2.3076923077vw);
    font-size: min(13px, 3.3333333333vw);
  }
  .p-highschool-story__slider-arws {
    margin-top: min(32px, 8.2666666667vw);
  }
  .p-highschool-story__btn {
    margin-top: min(27px, 6.9205128205vw);
  }
}

/* .p-highschool-waku2
----------------------------------- */
.p-highschool-waku2 {
  container-type: inline-size;
  overflow: hidden;
  color: #fff;
  background-color: #009b77;
  background-repeat: no-repeat;
}
.p-highschool-waku2__ttl, .p-highschool-waku2__lede {
  font-weight: 700;
}
.p-highschool-waku2__tags .c-tags__link {
  border: 1px solid #fff;
}
.p-highschool-waku2__slider-wrap {
  overflow-x: auto;
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.p-highschool-waku2__slider-wrap::-webkit-scrollbar {
  display: none;
}
.p-highschool-waku2__slider {
  display: block flex;
  width: max-content;
}
.p-highschool-waku2__insta {
  position: relative;
}
.p-highschool-waku2__insta iframe {
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  margin: 0 !important;
}
.p-highschool-waku2__ticktok {
  display: block;
  width: 100%;
}
.p-highschool-waku2__ticktok img {
  display: block;
  width: 100%;
}
@media (min-width: 768px) {
  .p-highschool-waku2 {
    padding-block: 194px 55px;
    background-image: image-set(url("../img/highschool/index/waku2_bg-pc.webp") type('image/webp'), url("../img/highschool/index/waku2_bg-pc.png") type('image/png'));
    background-position: center center;
    background-size: auto 100%;
  }
  .p-highschool-waku2__wrap {
    padding-left: 56px;
  }
  .p-highschool-waku2__ttl {
    font-size: 1.25rem;
    line-height: 1.75;
    text-indent: -56px;
  }
  .p-highschool-waku2__ttl > span {
    font-size: 2.5em;
    line-height: 0.7;
  }
  .p-highschool-waku2__lede {
    margin-top: 25px;
    font-size: 1rem;
    line-height: 1.75;
  }
  .p-highschool-waku2__tags {
    gap: 13px 15px;
    max-width: 555px;
    margin-top: 24px;
  }
  .p-highschool-waku2__tags .c-tags__link {
    padding-inline: 15px;
    font-size: 1rem;
    line-height: 2.375;
  }
  .p-highschool-waku2__slider-wrap {
    margin-top: 38px;
  }
  @container (min-width: 1201px) {
    .p-highschool-waku2__slider-wrap {
      margin-right: calc((50vw - 497px) * -1);
    }
  }
  @container (max-width: 1200px) {
    .p-highschool-waku2__slider-wrap {
      margin-right: -103px;
    }
  }
  .p-highschool-waku2__slider {
    gap: 20px;
    padding-right: 20px;
  }
  .p-highschool-waku2__slide {
    width: 179px;
  }
}
@media (max-width: 767px) {
  .p-highschool-waku2 {
    padding-block: 33.0769230769vw 16.9230769231vw;
    background-image: image-set(url("../img/highschool/index/waku2_bg01-sp.webp") type('image/webp'), url("../img/highschool/index/waku2_bg01-sp.png") type('image/png'));
    background-position: center top;
    background-size: 100% auto;
  }
  .p-highschool-waku2__wrap {
    padding-inline: min(20px, 5.1282051282vw);
  }
  .p-highschool-waku2__ttl {
    width: fit-content;
    margin-inline: auto;
    font-size: min(20px, 5.1282051282vw);
    line-height: 1.5;
    text-indent: max(-53px, -13.5897435897vw);
  }
  .p-highschool-waku2__ttl > span {
    font-size: 2.4995em;
    line-height: 0.700140028;
  }
  .p-highschool-waku2__lede {
    padding-top: min(15px, 3.8461538462vw);
    margin-top: min(25px, 6.4102564103vw);
    font-size: min(15px, 3.8461538462vw);
    line-height: 1.6666666667;
    text-align: center;
    border-top: 1px solid #fff;
  }
  .p-highschool-waku2__tags-bg {
    position: relative;
    margin-top: min(26px, 6.6666666667vw);
  }
  .p-highschool-waku2__tags-bg::before {
    position: absolute;
    inset-inline: max(-20px, -5.1282051282vw);
    bottom: -45.3846153846vw;
    display: block;
    aspect-ratio: 778/560;
    pointer-events: none;
    content: "";
    background: image-set(url("../img/highschool/index/waku2_bg02-sp.webp") type('image/webp'), url("../img/highschool/index/waku2_bg02-sp.png") type('image/png')) no-repeat center center/contain;
  }
  .p-highschool-waku2__tags {
    position: relative;
    z-index: 2;
  }
  .p-highschool-waku2__slider-wrap {
    position: relative;
    z-index: 2;
    margin-inline: max(-20px, -5.1282051282vw);
    margin-top: 31.5384615385vw;
  }
  .p-highschool-waku2__slider {
    gap: min(15px, 3.8461538462vw);
    padding-inline: min(20px, 5.1282051282vw);
  }
  .p-highschool-waku2__slide {
    width: min(179px, 45.8974358974vw);
  }
}

/* .p-event-fv
----------------------------------- */
.p-event-fv {
  position: relative;
}
.p-event-fv__bg {
  display: block;
  width: 100%;
}
.p-event-fv__bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media (min-width: 768px) {
  .p-event-fv {
    margin-top: -8.25rem;
  }
}
/* .p-event-campus
----------------------------------- */
.p-event-campus {
  position: relative;
  container-type: inline-size;
  color: #009b77;
  background-color: #ffec65;
}
.p-event-campus__ttl {
  position: absolute;
  z-index: 1;
  font-family: "Commissioner", "Noto Sans JP", sans-serif;
  font-weight: 700;
  color: #009b77;
}
.p-event-campus__inner {
  overflow: hidden;
}
.p-event-campus__wrap {
  margin-inline: auto;
}
.p-event-campus__txt-wrap {
  font-weight: 700;
}
.p-event-campus__event {
  width: 100%;
}
.p-event-campus__event-txt {
  font-weight: 500;
  line-height: 1.5625;
  color: #009b77;
}
@media (min-width: 768px) {
  .p-event-campus {
    padding-bottom: 3.3125rem;
  }
  .p-event-campus__ttl {
    top: -3.8125rem;
    font-size: 5rem;
    line-height: 1.25;
  }
  .p-event-campus__wrap {
    position: relative;
    max-width: 996px;
    margin-inline: auto;
  }
  .p-event-campus__cont {
    padding-left: 26.875rem;
  }
  .p-event-campus__txt-wrap {
    padding-top: 2.6875rem;
    margin-bottom: 1.125rem;
  }
  .p-event-campus__txt {
    margin-top: 1.4375rem;
    font-size: 1rem;
    line-height: 1.875;
  }
  .p-event-campus__event {
    padding-top: 12.5625rem;
    margin-top: -12.5625rem;
    margin-bottom: 3.4375rem;
  }
  .p-event-campus__event-txt {
    font-size: 1rem;
  }
  .p-event-campus__slider-wrap {
    position: relative;
    z-index: 2;
  }
  @container (min-width: 1201px) {
    .p-event-campus__slider-wrap {
      margin-right: calc((50vw - 498px) * -1);
    }
  }
  @container (max-width: 1200px) {
    .p-event-campus__slider-wrap {
      margin-right: -102px;
    }
  }
  .p-event-campus__btn {
    margin-top: 2.6875rem;
  }
  .p-event-campus__img {
    position: absolute;
    top: -12.125rem;
    right: 0;
    width: 15.4375rem;
  }
}
@media (max-width: 767px) {
  .p-event-campus {
    padding-bottom: min(38px, 9.7435897436vw);
  }
  .p-event-campus__ttl {
    top: max(-100px, -25.641025641vw);
    left: min(29px, 7.4358974359vw);
    font-size: min(61px, 15.641025641vw);
    line-height: 1.0655737705;
  }
  .p-event-campus__wrap {
    padding-inline: min(20px, 5.1282051282vw);
  }
  .p-event-campus__txt-wrap {
    padding-top: min(124px, 31.7948717949vw);
    padding-left: min(43px, 11.0256410256vw);
    margin-bottom: min(52px, 13.3333333333vw);
  }
  .p-event-campus__txt-wrap .c-ttl {
    width: max-content;
  }
  .p-event-campus__txt {
    max-width: min(251px, 64.358974359vw);
    font-size: min(14px, 3.5897435897vw);
    line-height: 1.8571428571;
  }
  .p-event-campus__event {
    margin-bottom: min(38px, 9.7435897436vw);
  }
  .p-event-campus__event-txt {
    font-size: min(16px, 4.1025641026vw);
  }
  .p-event-campus__slider-wrap {
    margin-right: max(-20px, -5.1282051282vw);
  }
  .p-event-campus__btn {
    margin-block: min(38px, 9.7435897436vw);
  }
  .p-event-campus__img {
    display: block;
    min-width: min(374px, 95.8974358974vw);
    margin-right: min(-20px, -5.1282051282vw);
    margin-left: auto;
  }
}

/* .p-event-schedule
----------------------------------- */
.p-event-schedule {
  background-color: #f5f5f5;
}
.p-event-schedule__table {
  width: max-content;
  font-weight: 500;
  border-collapse: collapse;
}
.p-event-schedule__table th,
.p-event-schedule__table td {
  vertical-align: middle;
  border: 1px solid #009b77;
}
.p-event-schedule__table th {
  line-height: 1.5384615385;
  color: #009b77;
  text-align: center;
}
.p-event-schedule__date {
  font-weight: 600;
  color: #009b77;
  text-align: center;
}
.p-event-schedule__day {
  line-height: 1.25;
  color: #009b77;
  text-align: center;
  background-color: #fff;
}
.p-event-schedule__day--sun {
  color: #EF490D;
}
.p-event-schedule__day--sat {
  color: #3E86C1;
}
.p-event-schedule__time {
  line-height: 1;
  color: #009b77;
  text-align: center;
  background-color: #fff;
}
.p-event-schedule__time small {
  font-size: 0.75em;
}
.p-event-schedule__desc {
  line-height: 1.2307692308;
  background-color: #fff;
}
@media (min-width: 768px) {
  .p-event-schedule {
    padding-block: 3.4375rem 3.375rem;
  }
  .p-event-schedule__wrap {
    width: 61.9375rem;
    margin-inline: auto;
  }
  .p-event-schedule__scroll {
    width: 61.9375rem;
    margin-inline: auto;
  }
  .p-event-schedule__scroll .p-campus-map__scroll-hint {
    display: none;
  }
  .p-event-schedule__table {
    margin-top: 1.25rem;
  }
  .p-event-schedule__table th {
    height: 2.0625rem;
    font-size: 0.8125rem;
  }
  .p-event-schedule__table td {
    min-height: 2.8125rem;
    padding-block: 0.296875rem;
  }
  .p-event-schedule__date {
    width: 7.75rem;
    font-size: 1.875rem;
  }
  .p-event-schedule__day {
    width: 5rem;
    font-size: 1rem;
  }
  .p-event-schedule__time {
    width: 10rem;
    font-size: 1rem;
  }
  .p-event-schedule__desc {
    width: 29.5rem;
    padding-inline: 0.6875rem;
    font-size: 0.8125rem;
  }
}
@media (max-width: 767px) {
  .p-event-schedule {
    padding-block: min(38px, 9.7435897436vw) min(41px, 10.5128205128vw);
    overflow: hidden;
  }
  .p-event-schedule__wrap {
    padding-inline: min(20px, 5.1282051282vw);
  }
  .p-event-schedule__scroll {
    position: relative;
    padding-inline: min(20px, 5.1282051282vw);
    overflow-x: scroll;
  }
  .p-event-schedule__scroll .p-campus-map__scroll-hint {
    left: 50%;
  }
  .p-event-schedule__scroll.is-hint-visible .p-campus-map__scroll-hint {
    opacity: 1;
  }
  .p-event-schedule__scroll.is-scrolled .p-campus-map__scroll-hint {
    opacity: 0;
  }
  .p-event-schedule__table {
    width: min(991px, 254.1025641026vw);
  }
  .p-event-schedule__table th {
    height: min(33px, 8.4615384615vw);
    font-size: min(13px, 3.3333333333vw);
  }
  .p-event-schedule__table td {
    min-height: min(45px, 11.5384615385vw);
    padding-block: min(5px, 1.2179487179vw);
  }
  .p-event-schedule__date {
    width: min(124px, 31.7948717949vw);
    font-size: min(30px, 7.6923076923vw);
  }
  .p-event-schedule__day {
    width: min(80px, 20.5128205128vw);
    font-size: min(16px, 4.1025641026vw);
  }
  .p-event-schedule__time {
    width: min(160px, 41.0256410256vw);
    font-size: min(16px, 4.1025641026vw);
  }
  .p-event-schedule__desc {
    width: min(472px, 121.0256410256vw);
    padding-inline: min(11px, 2.8205128205vw);
    font-size: min(13px, 3.3333333333vw);
  }
}

/* .p-event-program
----------------------------------- */
.p-event-program {
  background-color: #ffec65;
  overflow: hidden;
}
.p-event-program__ttl {
  color: #ef490d;
}
.p-event-program__cont {
  position: relative;
  z-index: 1;
}
.p-event-program__slider {
  display: flex;
  justify-content: center;
}
.p-event-program__slider .slick-list.draggable {
  overflow: visible;
}
.p-event-program__slide-inner {
  background-color: #fff;
  display: flex;
}
.p-event-program__slide-img {
  overflow: hidden;
}
.p-event-program__slide-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-event-program__slide-ttl {
  font-weight: 700;
  color: #ef490d;
}
.p-event-program__slide-txt {
  font-weight: 500;
  line-height: 1.5384615385;
}
.p-event-program__arws {
  position: absolute;
  transform: translateY(-50%);
  top: 50%;
  inset-inline: 0;
  justify-content: space-between;
  margin-inline: auto;
}
@media (min-width: 768px) {
  .p-event-program {
    padding-top: 2.5625rem;
  }
  .p-event-program__hgroup {
    margin-bottom: 1.4375rem;
  }
  .p-event-program__slide {
    padding-inline: 1.4375rem;
    filter: drop-shadow(0 0 1.875rem rgba(0, 0, 0, 0.15));
  }
  .p-event-program__slide-inner {
    width: 34.25rem;
    border-radius: 1.25rem;
    align-items: center;
    gap: 1.375rem;
    padding: 0.9375rem;
  }
  .p-event-program__slide-img {
    width: 19.8125rem;
    border-radius: 0.9375rem;
    flex-shrink: 0;
  }
  .p-event-program__slide-wrap {
    padding-right: 2.125rem;
  }
  .p-event-program__slide-ttl {
    font-size: 1.25rem;
    line-height: 1.4;
    margin-bottom: 0.8125rem;
  }
  .p-event-program__slide-txt {
    font-size: 0.8125rem;
  }
  .p-event-program__arws {
    width: 37.1875rem;
  }
}
@media (max-width: 767px) {
  .p-event-program {
    padding-top: min(38px, 9.7435897436vw);
    padding-inline: min(25px, 6.4102564103vw);
  }
  .p-event-program__hgroup {
    margin-bottom: min(17px, 4.358974359vw);
  }
  .p-event-program__ttl {
    margin-top: min(9px, 2.3076923077vw);
  }
  .p-event-program__slider .slick-track {
    display: flex;
  }
  .p-event-program__slider .slick-slide {
    height: auto;
  }
  .p-event-program__slide {
    height: 100%;
    padding-inline: min(23px, 5.8974358974vw);
    filter: drop-shadow(0 0 min(20px, 5.1282051282vw) rgba(0, 0, 0, 0.15));
  }
  .p-event-program__slide-inner {
    width: min(340px, 87.1794871795vw);
    height: 100%;
    border-radius: min(10px, 2.5641025641vw);
    flex-direction: column;
    gap: min(18px, 4.6153846154vw);
    padding: min(10px, 2.5641025641vw);
  }
  .p-event-program__slide-img {
    width: 100%;
    height: min(170px, 43.5897435897vw);
    border-radius: min(15px, 3.8461538462vw);
  }
  .p-event-program__slide-wrap {
    padding-inline: min(9px, 2.3076923077vw);
    padding-bottom: min(11px, 2.8205128205vw);
  }
  .p-event-program__slide-ttl {
    font-size: min(16px, 4.1025641026vw);
    line-height: 1.5625;
    margin-bottom: min(6px, 1.5384615385vw);
  }
  .p-event-program__slide-txt {
    font-size: min(13px, 3.3333333333vw);
  }
  .p-event-program__arws {
    width: min(379px, 97.1794871795vw);
    transform: translate(-50%, -50%);
    left: 50%;
  }
}

/* .p-event-benefit
----------------------------------- */
.p-event-benefit {
  position: relative;
  color: #fff;
  background-color: #f08300;
}
.p-event-benefit::before, .p-event-benefit::after {
  position: absolute;
  left: 0;
  width: 100%;
  pointer-events: none;
  content: "";
}
.p-event-benefit::after {
  transform: scale(-1, -1);
}
.p-event-benefit__wrap {
  position: relative;
  z-index: 1;
  margin-inline: auto;
}
.p-event-benefit__ttl {
  font-weight: 700;
  text-align: center;
}
.p-event-benefit__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}
.p-event-benefit__item {
  position: relative;
  border: solid 1px #fff;
}
.p-event-benefit__item-ttl {
  position: absolute;
  left: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 500;
  line-height: 1.3888888889;
  background-color: #f08300;
  border: solid 1px #fff;
  border-radius: 100vmax;
  transform: translateX(-50%);
}
.p-event-benefit__item-img {
  width: 100%;
}
.p-event-benefit__item-img img {
  display: block;
  margin-inline: auto;
  border-radius: 0.3125rem;
}
.p-event-benefit__item-name {
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
}
.p-event-benefit__item-txt {
  font-weight: 500;
  line-height: 1.5384615385;
}
.p-event-benefit__cont {
  position: relative;
  display: flex;
  align-items: center;
  border: solid 1px #fff;
}
.p-event-benefit__cont-item {
  display: flex;
  align-items: center;
  height: 100%;
}
.p-event-benefit__cont-name {
  font-weight: 700;
  line-height: 1.3888888889;
}
.p-event-benefit__cont-name > span {
  display: block;
  line-height: 1.6923076923;
}
.p-event-benefit__sns-copy, .p-event-benefit__sns-txt {
  font-weight: 700;
}
.p-event-benefit__sns-copy {
  line-height: 1.4;
}
.p-event-benefit__sns-copy::before {
  content: "🎁";
}
.p-event-benefit__sns-txt {
  line-height: 1.3888888889;
}
@media (min-width: 768px) {
  .p-event-benefit {
    padding-top: 2.6875rem;
  }
  .p-event-benefit::before, .p-event-benefit::after {
    height: 17.3125rem;
    content: "";
    background: url("../img/highschool/event/benefit_bg.png") no-repeat center top/cover;
  }
  .p-event-benefit::before {
    top: -10.75rem;
  }
  .p-event-benefit::after {
    bottom: -7.5rem;
  }
  .p-event-benefit__wrap {
    width: 60.125rem;
  }
  .p-event-benefit__ttl {
    margin-bottom: 3.1875rem;
    font-size: 2.1875rem;
    line-height: 0.9142857143;
  }
  .p-event-benefit__list {
    gap: 1.9375rem;
    margin-bottom: 2rem;
  }
  .p-event-benefit__item {
    padding: 1.6875rem 1.125rem;
    border-radius: 0.3125rem;
  }
  .p-event-benefit__item-ttl {
    top: -0.875rem;
    min-width: 7.25rem;
    padding-block: 0.4375rem 0.5rem;
    font-size: 1.125rem;
  }
  .p-event-benefit__item-img {
    height: 10.0625rem;
    margin-top: 1px;
    margin-bottom: 1.875rem;
  }
  .p-event-benefit__item-name {
    margin-bottom: 0.6875rem;
    font-size: 1.25rem;
  }
  .p-event-benefit__item-txt {
    margin-inline: 0.5625rem;
    font-size: 0.8125rem;
  }
  .p-event-benefit__cont {
    display: flex;
    align-items: center;
    padding: 1.0625rem 2.1875rem 1.0625rem 7.625rem;
    border-radius: 0.3125rem;
  }
  .p-event-benefit__cont-item:nth-child(n+2) {
    padding-left: 2.625rem;
    margin-left: 1.8125rem;
    border-left: solid 1px #fff;
  }
  .p-event-benefit__cont-img {
    display: block;
  }
  .p-event-benefit__cont-img--toy {
    width: 4.375rem;
    margin: -0.5rem 1.6875rem -0.125rem 0;
  }
  .p-event-benefit__cont-name {
    font-size: 1.125rem;
  }
  .p-event-benefit__cont-name > span {
    font-size: 0.8125rem;
  }
  .p-event-benefit__sns-copy {
    font-size: 0.9375rem;
  }
  .p-event-benefit__sns-copy::before {
    position: absolute;
    inset-block: 0;
    left: 2.3125rem;
    display: block;
    height: fit-content;
    margin-block: auto;
    font-size: 3.875rem;
    line-height: 0.6935483871;
  }
  .p-event-benefit__sns-txt {
    margin-top: 0.625rem;
    font-size: 1.125rem;
  }
}
@media (max-width: 767px) {
  .p-event-benefit {
    padding-top: min(62px, 15.8974358974vw);
  }
  .p-event-benefit::before, .p-event-benefit::after {
    height: min(162px, 41.5384615385vw);
    content: "";
    background: url("../img/highschool/event/benefit_bg.png") no-repeat left 40% top/cover;
  }
  .p-event-benefit::before {
    top: -124px;
  }
  .p-event-benefit::after {
    bottom: -83px;
  }
  .p-event-benefit__ttl {
    margin-bottom: min(24px, 6.1538461538vw);
    font-size: min(24px, 6.1538461538vw);
    line-height: 1.25;
  }
  .p-event-benefit__list {
    gap: min(19px, 4.8717948718vw);
    width: 100%;
    padding-inline: min(25px, 6.4102564103vw);
    padding-top: 14px;
    margin-bottom: min(18px, 4.6153846154vw);
    overflow-x: scroll;
  }
  .p-event-benefit__item {
    width: min(300px, 76.9230769231vw);
    padding: min(29px, 7.4358974359vw) min(18px, 4.6153846154vw);
    border-radius: min(5px, 1.2820512821vw);
  }
  .p-event-benefit__item-ttl {
    top: -14px;
    min-width: min(116px, 29.7435897436vw);
    padding-block: min(6px, 1.5384615385vw) min(7px, 1.7948717949vw);
    font-size: min(18px, 4.6153846154vw);
  }
  .p-event-benefit__item-img {
    height: min(161px, 41.2820512821vw);
    margin-bottom: min(27px, 6.9230769231vw);
  }
  .p-event-benefit__item-name {
    margin-bottom: min(11px, 2.8205128205vw);
    font-size: min(20px, 5.1282051282vw);
  }
  .p-event-benefit__item-txt {
    margin-inline: min(9px, 2.3076923077vw);
    font-size: 0.8125rem;
  }
  .p-event-benefit__cont {
    flex-direction: column;
    padding-block: min(33px, 8.4615384615vw) min(10px, 2.5641025641vw);
    padding-inline: min(22px, 5.641025641vw);
    margin-inline: min(25px, 6.4102564103vw);
    border-radius: min(10px, 2.5641025641vw);
  }
  .p-event-benefit__cont-item {
    justify-content: center;
    width: 100%;
  }
  .p-event-benefit__cont-item:nth-child(n+2) {
    padding-top: min(11px, 2.8205128205vw);
    margin-top: min(11px, 2.8205128205vw);
    border-top: solid 1px #fff;
  }
  .p-event-benefit__cont-img {
    display: block;
  }
  .p-event-benefit__cont-img--toy {
    width: min(62px, 15.8974358974vw);
    margin-right: min(29px, 7.4358974359vw);
  }
  .p-event-benefit__cont-name {
    font-size: min(18px, 4.6153846154vw);
  }
  .p-event-benefit__cont-name > span {
    margin-bottom: 1px;
    font-size: min(13px, 3.3333333333vw);
  }
  .p-event-benefit__sns-copy {
    display: block flex;
    gap: min(16px, 4.1025641026vw);
    align-items: center;
    justify-content: center;
    font-size: min(15px, 3.8461538462vw);
  }
  .p-event-benefit__sns-copy::before {
    font-size: min(34px, 8.5897435897vw);
    line-height: 1.4;
  }
  .p-event-benefit__sns-txt {
    margin-top: min(11px, 2.8205128205vw);
    font-size: min(18px, 4.6153846154vw);
  }
}

/* .p-event-navi
----------------------------------- */
.p-event-navi__hgroup {
  display: flex;
  flex-direction: column;
  align-items: center;
  color: #f08300;
  text-align: center;
}
.p-event-navi__sub-ttl {
  font-weight: 500;
  line-height: 1.1111111111;
}
.p-event-navi__ttl {
  font-weight: 700;
}
.p-event-navi__img-txt {
  display: block;
  margin-inline: auto;
}
.p-event-navi__work {
  margin-inline: auto;
}
.p-event-navi__work-img {
  display: block;
  width: 100%;
}
.p-event-navi__message {
  display: flex;
  flex-direction: column;
  align-items: center;
  overflow: hidden;
}
.p-event-navi__message-list {
  width: 100%;
  overflow: visible;
}
.p-event-navi__message-list .slick-list {
  overflow: visible;
}
.p-event-navi__message-item {
  position: relative;
  flex-shrink: 0;
  aspect-ratio: 1/1;
}
.p-event-navi__message-txt {
  position: absolute;
  display: block;
}
@media (min-width: 768px) {
  .p-event-navi {
    padding-top: 11.8125rem;
  }
  .p-event-navi__sub-ttl {
    margin-bottom: 1.1875rem;
    font-size: 1.125rem;
  }
  .p-event-navi__ttl {
    font-size: 2.1875rem;
    line-height: 0.8571428571;
  }
  .p-event-navi__img-txt {
    width: 100%;
    max-width: 87.5rem;
    margin-block: -7.5rem 1.3125rem;
    pointer-events: none;
  }
  .p-event-navi__work {
    width: 955px;
    margin-bottom: 1.3125rem;
  }
  .p-event-navi__work-img {
    margin-top: -2.9375rem;
    margin-right: -0.5rem;
  }
  .p-event-navi__message {
    padding-bottom: 3.375rem;
  }
  .p-event-navi__message-list {
    width: 87.5rem;
    margin-top: 4.1875rem;
  }
  .p-event-navi__message-item {
    margin-inline: 0.625rem;
  }
  .p-event-navi__message-item > img {
    border-radius: 0.3125rem;
  }
  .p-event-navi__message-txt-1 {
    top: -3rem;
    left: -3.0625rem;
    width: 6.4375rem;
  }
  .p-event-navi__message-txt-2 {
    bottom: -1.25rem;
    left: -2.125rem;
    width: 6.6875rem;
  }
  .p-event-navi__message-txt-3 {
    bottom: -1.6875rem;
    left: -2.1875rem;
    width: 5.375rem;
  }
  .p-event-navi__message-txt-4 {
    top: -2.5rem;
    left: -3.5625rem;
    width: 7.125rem;
  }
  .p-event-navi__message-txt-5 {
    top: -4.4375rem;
    left: -3.875rem;
    width: 6.8125rem;
  }
}
@media (max-width: 767px) {
  .p-event-navi {
    padding-top: min(135px, 34.6153846154vw);
  }
  .p-event-navi__sub-ttl {
    margin-bottom: min(15px, 3.8461538462vw);
    font-size: min(18px, 4.6153846154vw);
  }
  .p-event-navi__ttl {
    font-size: min(28px, 7.1794871795vw);
    line-height: 1.0714285714;
  }
  .p-event-navi__img-txt {
    width: 100%;
    margin-block: min(31px, 7.9487179487vw) min(65px, 16.6666666667vw);
  }
  .p-event-navi__img-txt img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .p-event-navi__work {
    margin-bottom: min(53px, 13.5897435897vw);
  }
  .p-event-navi__work .c-ttl {
    margin-bottom: min(18px, 4.6153846154vw);
    font-size: min(20px, 5.1282051282vw);
    text-align: center;
  }
  .p-event-navi__message {
    padding-bottom: min(74px, 18.9743589744vw);
  }
  .p-event-navi__message .c-ttl {
    margin-bottom: min(79px, 20.2564102564vw);
    font-size: min(20px, 5.1282051282vw);
    text-align: center;
  }
  .p-event-navi__message-list {
    width: min(1400px, 358.9743589744vw);
  }
  .p-event-navi__message-item {
    margin-inline: min(10px, 2.5641025641vw);
  }
  .p-event-navi__message-item > img {
    border-radius: min(5px, 1.2820512821vw);
  }
  .p-event-navi__message-txt-1 {
    top: -48px;
    left: -49px;
    width: 103px;
  }
  .p-event-navi__message-txt-2 {
    bottom: -20px;
    left: -34px;
    width: 107px;
  }
  .p-event-navi__message-txt-3 {
    bottom: -27px;
    left: -35px;
    width: 86px;
  }
  .p-event-navi__message-txt-4 {
    top: -40px;
    left: -57px;
    width: 114px;
  }
  .p-event-navi__message-txt-5 {
    top: -71px;
    left: -62px;
    width: 109px;
  }
}

/* .p-event-chara
----------------------------------- */
.p-event-chara__hgroup {
  position: relative;
  z-index: 1;
}
.p-event-chara__cont {
  display: flex;
  align-items: center;
  margin-inline: auto;
}
.p-event-chara__txt {
  font-weight: 700;
  color: #f08300;
}
.p-event-chara__txt a {
  text-decoration: underline;
}
@media (any-hover: hover) {
  .p-event-chara__txt a:hover {
    text-decoration: none;
  }
}
@media (min-width: 768px) {
  .p-event-chara {
    padding-bottom: 3.5rem;
  }
  .p-event-chara__cont {
    width: 54.8125rem;
    gap: 2.75rem;
  }
  .p-event-chara__img {
    width: 14.1875rem;
  }
  .p-event-chara__txt {
    background: url("../img/highschool/event/chara_txt-bg-pc.png") no-repeat center center/contain;
    width: 38.3125rem;
    height: 16.8125rem;
    font-size: 1.25rem;
    line-height: 1.6;
    padding-block: 2.25rem;
    padding-inline: 2.8125rem 3.8125rem;
    margin-right: -0.3125rem;
  }
}
@media (max-width: 767px) {
  .p-event-chara__wrap {
    padding-inline: min(20px, 5.1282051282vw) min(24px, 6.1538461538vw);
  }
  .p-event-chara .p-event-navi__ttl {
    line-height: 1.3571428571;
  }
  .p-event-chara__cont {
    width: 100%;
    flex-direction: column;
    margin-top: min(19px, 4.8717948718vw);
  }
  .p-event-chara__img {
    min-width: min(227px, 58.2051282051vw);
  }
  .p-event-chara__txt {
    background: url("../img/highschool/event/chara_txt-bg-sp.png") no-repeat center center/contain;
    width: min(348px, 89.2307692308vw);
    height: min(268px, 68.7179487179vw);
    font-size: min(16px, 4.1025641026vw);
    line-height: 1.5625;
    padding: min(38px, 9.7435897436vw) min(28px, 7.1794871795vw) min(20px, 5.1282051282vw) min(32px, 8.2051282051vw);
    margin-block: -97px -59px;
    position: relative;
    z-index: 1;
  }
}

/* .p-event-please
----------------------------------- */
.p-event-please__wrap, .p-event-please-faq__wrap {
  margin-inline: auto;
}
.p-event-please__ttl {
  font-weight: 700;
  color: #f08300;
  line-height: 1.2;
}
.p-event-please__ttl--small {
  color: #1e1e1e;
  line-height: 1.7777777778;
}
.p-event-please__ttl--grn {
  color: #009b77;
}
.p-event-please__txt {
  line-height: 1.5625;
}
.p-event-please__txt a {
  text-decoration: underline;
}
@media (any-hover: hover) {
  .p-event-please__txt a:hover {
    text-decoration: none;
  }
}
.p-event-please__list {
  display: grid;
}
.p-event-please__item {
  background-color: #fff;
  font-weight: 700;
  line-height: 1.25;
}
.p-event-please__item-ttl {
  font-weight: 700;
  color: #45b035;
}
.p-event-please__item-ttl--rd {
  color: #ef490d;
}
.p-event-please__item-list {
  display: flex;
  flex-wrap: wrap;
}
.p-event-please__item-item {
  width: max-content;
  font-weight: 500;
}
.p-event-please__item-item::before {
  content: "●";
  display: inline-block;
  color: #45b035;
}
.p-event-please__item-item--rd::before {
  color: #ef490d;
}
.p-event-please__item-txt {
  font-weight: 500;
  line-height: 1.8181818182;
}
.p-event-please-faq__item {
  background-color: #fff;
  border: solid 1px #f08300;
}
.p-event-please-faq__item--grn {
  border: solid 1px #009b77;
}
.p-event-please-faq__ttl {
  width: 100%;
  font-weight: 500;
  line-height: 2;
  display: flex;
  position: relative;
}
.p-event-please-faq__ttl::before {
  content: "Q";
  display: block;
  font-family: "Commissioner", "Noto Sans JP", sans-serif;
  font-weight: 700;
  color: #f08300;
  line-height: 1;
  flex-shrink: 0;
}
.p-event-please-faq__ttl--grn::before {
  color: #009b77;
}
.p-event-please-faq__txt {
  display: none;
  width: 100%;
  font-weight: 400;
}
.p-event-please-faq__txt > span {
  width: 100%;
  display: flex;
}
.p-event-please-faq__txt > span::before {
  content: "A";
  display: block;
  font-family: "Commissioner", "Noto Sans JP", sans-serif;
  font-weight: 700;
  color: #f08300;
  line-height: 1;
  flex-shrink: 0;
}
.p-event-please-faq__txt--grn > span::before {
  color: #009b77;
}
.p-event-please-faq__txt-link {
  text-decoration: underline;
}
@media (any-hover: hover) {
  .p-event-please-faq__txt-link:hover {
    text-decoration: none;
  }
}
.p-event-please-faq__icon {
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
}
.p-event-please-faq__icon::before, .p-event-please-faq__icon::after {
  content: "";
  background-color: #f08300;
  width: 100%;
  height: 1px;
  position: absolute;
  transform: translate(-50%, 50%);
  top: 50%;
  left: 50%;
  transition: transform 0.2s ease-out;
}
.p-event-please-faq__icon::after {
  transform: translate(-50%, 50%) rotate(90deg);
}
.p-event-please-faq__icon--grn::before, .p-event-please-faq__icon--grn::after {
  background-color: #009b77;
}
.p-event-please-faq__txt-item {
  display: flex;
}
.p-event-please-faq__txt-item::before {
  content: "・";
  display: block;
  flex-shrink: 0;
}
.p-event-please-faq__list .js-accordion-btn[aria-expanded=true] .p-event-please-faq__icon::after {
  transform: translate(-50%, 50%) rotate(0deg);
}
@media (min-width: 768px) {
  .p-event-please {
    background: #f5f5f5;
    padding-block: 4.5rem 5rem;
  }
  .p-event-please__wrap {
    width: 61.6875rem;
    margin-bottom: 3.75rem;
  }
  .p-event-please-faq__wrap {
    width: 62rem;
  }
  .p-event-please__ttl {
    font-size: 1.5625rem;
    margin-bottom: 1.875rem;
  }
  .p-event-please__ttl--small {
    font-size: 1.125rem;
    margin-bottom: 0.3125rem;
  }
  .p-event-please__txt {
    font-size: 1rem;
    margin-block: 0.3125rem;
  }
  .p-event-please__txt--mb {
    margin-bottom: 1.875rem;
  }
  .p-event-please__list {
    grid-template-columns: repeat(2, 1fr);
    gap: 1.8125rem;
  }
  .p-event-please__item {
    border-radius: 0.3125rem;
    padding: 1.1875rem 1.8125rem 1.25rem 2.5625rem;
  }
  .p-event-please__item-ttl {
    font-size: 1.25rem;
    margin-bottom: 0.8125rem;
  }
  .p-event-please__item-list {
    column-gap: 0.75rem;
  }
  .p-event-please__item-item {
    font-size: 0.875rem;
    line-height: 1.7857142857;
  }
  .p-event-please__item-item::before {
    margin-right: 0.3125rem;
  }
  .p-event-please__item-txt {
    font-size: 0.6875rem;
  }
  .p-event-please-faq__item {
    border-radius: 0.625rem;
  }
  .p-event-please-faq__item:not(:last-of-type) {
    margin-bottom: 0.6875rem;
  }
  .p-event-please-faq__ttl {
    font-size: 1rem;
    padding: 1.1875rem 3.75rem 1.1875rem 1.75rem;
  }
  .p-event-please-faq__ttl::before {
    font-size: 1.375rem;
    margin-right: 1rem;
    margin-top: 0.3125rem;
  }
  .p-event-please-faq__txt {
    font-size: 1rem;
    line-height: 2;
    padding: 0 3.75rem 1.1875rem 1.75rem;
  }
  .p-event-please-faq__txt > span::before {
    font-size: 1.375rem;
    margin-right: 1.125rem;
    margin-left: 0.125rem;
    margin-top: 0.3125rem;
  }
  .p-event-please-faq__icon {
    width: 1.25rem;
    height: 1.25rem;
    top: 1.5625rem;
    right: 1.9375rem;
  }
  .p-event-please-faq__icon::before, .p-event-please-faq__icon::after {
    width: 100%;
    height: 1px;
  }
}
@media (max-width: 767px) {
  .p-event-please {
    background: #ffec65;
    padding-block: min(95px, 24.358974359vw) min(101px, 25.8974358974vw);
  }
  .p-event-please__wrap {
    padding-inline: min(24px, 6.1538461538vw);
    margin-bottom: min(95px, 24.358974359vw);
  }
  .p-event-please__ttl {
    font-size: min(25px, 6.4102564103vw);
    margin-bottom: min(20px, 5.1282051282vw);
  }
  .p-event-please__ttl--small {
    font-size: min(18px, 4.6153846154vw);
    margin-bottom: min(13px, 3.3333333333vw);
  }
  .p-event-please__txt {
    font-size: min(16px, 4.1025641026vw);
    margin-block: min(13px, 3.3333333333vw);
  }
  .p-event-please__txt--mb {
    margin-bottom: min(20px, 5.1282051282vw);
  }
  .p-event-please__list {
    grid-template-columns: 1fr;
    gap: min(13px, 3.3333333333vw);
  }
  .p-event-please__item {
    border-radius: 0.3125rem;
    padding: min(20px, 5.1282051282vw) min(21px, 5.3846153846vw) min(26px, 6.6666666667vw) min(29px, 7.4358974359vw);
  }
  .p-event-please__item--he {
    max-height: min(127px, 32.5641025641vw);
  }
  .p-event-please__item-ttl {
    font-size: min(20px, 5.1282051282vw);
    margin-bottom: min(8px, 2.0512820513vw);
  }
  .p-event-please__item-list {
    column-gap: min(12px, 3.0769230769vw);
  }
  .p-event-please__item-list--row {
    display: block;
  }
  .p-event-please__item-list--row .p-event-please__item-item {
    display: inline;
  }
  .p-event-please__item-list--row .p-event-please__item-item:not(:last-of-type) {
    margin-right: min(12px, 3.0769230769vw);
  }
  .p-event-please__item-item {
    font-size: min(14px, 3.5897435897vw);
    line-height: 1.4285714286;
  }
  .p-event-please__item-item::before {
    margin-right: min(5px, 1.2820512821vw);
  }
  .p-event-please__item-txt {
    font-size: min(11px, 2.8205128205vw);
  }
  .p-event-please-faq__wrap {
    padding-inline: min(24px, 6.1538461538vw);
  }
  .p-event-please-faq__wrap .p-event-please__ttl {
    margin-bottom: min(34px, 8.7179487179vw);
  }
  .p-event-please-faq__item {
    border-radius: min(10px, 2.5641025641vw);
  }
  .p-event-please-faq__item:not(:last-of-type) {
    margin-bottom: min(6px, 1.5384615385vw);
  }
  .p-event-please-faq__ttl {
    font-size: min(16px, 4.1025641026vw);
    line-height: 1.25;
    padding-block: min(15px, 3.8461538462vw);
    padding-inline: min(28px, 7.1794871795vw) min(60px, 15.3846153846vw);
  }
  .p-event-please-faq__ttl::before {
    font-size: min(22px, 5.641025641vw);
    margin-right: min(16px, 4.1025641026vw);
  }
  .p-event-please-faq__txt {
    font-size: min(16px, 4.1025641026vw);
    line-height: 1.5625;
    padding-inline: min(28px, 7.1794871795vw) min(15px, 3.8461538462vw);
    padding-bottom: min(19px, 4.8717948718vw);
  }
  .p-event-please-faq__txt > span::before {
    font-size: min(22px, 5.641025641vw);
    margin-right: min(16px, 4.1025641026vw);
  }
  .p-event-please-faq__icon {
    width: min(20px, 5.1282051282vw);
    height: min(20px, 5.1282051282vw);
    top: min(25px, 6.4102564103vw);
    right: min(26px, 6.6666666667vw);
  }
  .p-event-please-faq__icon::before, .p-event-please-faq__icon::after {
    width: 100%;
    height: 1px;
  }
}

/* .p-oc-event
----------------------------------- */
@media (min-width: 768px) {
  .p-oc-event .p-breadcrumbs {
    transform: translate(-50%, 0);
  }
}
/* .p-time
----------------------------------- */
.p-time {
  container-type: inline-size;
  overflow: hidden;
  color: #009b77;
  background: #ffec65;
}
.p-time__hgroup {
  font-weight: 700;
}
.p-time__hgroup p small {
  font-size: 0.5333333333em;
  line-height: 1.89375;
}
.p-time-program__cont {
  color: #1e1e1e;
}
.p-time-program__img {
  width: 100%;
  aspect-ratio: 320/187;
  overflow: hidden;
}
.p-time-program__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-time-program__ttl {
  font-weight: 700;
}
.p-time-flow__img {
  width: 100%;
  aspect-ratio: 240/144;
  overflow: hidden;
}
.p-time-flow__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-time-flow__ttl {
  font-weight: 500;
  line-height: 1.125;
  color: #1e1e1e;
}
.p-time-flow__ttl small {
  font-size: 0.8125em;
  line-height: 1.3846153846;
}
.p-time__timetable {
  display: block flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}
.p-time__timetable caption {
  margin-bottom: 0.625em;
  line-height: 1.25;
  color: #009b77;
}
.p-time__timetable th,
.p-time__timetable td {
  font-weight: 400;
  line-height: 1.25;
  text-align: center;
  border-collapse: collapse;
  border: 1px solid #009b77;
}
.p-time__timetable thead th {
  background: #ffec65;
}
.p-time__timetable tbody th,
.p-time__timetable tbody td {
  background: #fff;
}
.p-time-lunch__slide {
  border: solid 1px #009b77;
}
.p-time-lunch__img {
  position: relative;
  width: 100%;
  aspect-ratio: 236/171;
}
.p-time-lunch__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-time-lunch__cat {
  position: absolute;
  left: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  width: max-content;
  max-width: 90%;
  font-weight: 500;
  text-align: center;
  background-color: #ffec65;
  border: solid 1px #009b77;
  border-radius: 100vmax;
  transform: translateX(-50%);
}
.p-time-lunch__ttl {
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  text-align: center;
  background-color: #fff;
}
.p-time-present__img {
  width: 100%;
  aspect-ratio: 240/144;
  overflow: hidden;
}
.p-time-present__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-time-present__ttl {
  font-weight: 500;
  line-height: 1.125;
  color: #1e1e1e;
}
.p-time-present__ttl small {
  font-size: 0.75em;
  line-height: 1.5;
}
.p-time-others__item {
  position: relative;
  font-weight: 500;
  line-height: 1.75;
}
.p-time-others__item::before {
  position: absolute;
  top: 0;
  content: "・";
}
@media (min-width: 768px) {
  .p-time {
    padding-block: 3.5625rem 4.125rem;
  }
  .p-time__hgroup {
    margin-bottom: 2.5rem;
    font-size: 1.875rem;
    line-height: 1;
  }
  .p-time-program__cont {
    margin-bottom: 1.875rem;
    overflow-y: auto;
    -ms-overflow-style: none;
    scrollbar-width: none;
  }
  .p-time-program__cont::-webkit-scrollbar {
    display: none;
  }
  @container (min-width: 1201px) {
    .p-time-program__cont {
      margin-right: calc(50% - 50vw);
    }
  }
  @container (max-width: 1200px) {
    .p-time-program__cont {
      margin-right: -103px;
    }
  }
  .p-time-program__slider {
    display: flex;
    width: max-content;
    margin: 0;
  }
  .p-time-program__slide {
    width: 20rem;
    margin-right: 1.0625rem;
  }
  .p-time-program__img {
    margin-bottom: 0.625rem;
    border-radius: 0.3125rem;
  }
  .p-time-program__ttl {
    margin-bottom: 0.125rem;
    font-size: 1.125rem;
    line-height: 1.5555555556;
  }
  .p-time-program__txt {
    font-size: 0.8125rem;
    font-weight: 500;
    line-height: 1.5384615385;
  }
  .p-time-flow__cont {
    margin-bottom: 1.0625rem;
    overflow-y: auto;
    -ms-overflow-style: none;
    scrollbar-width: none;
  }
  .p-time-flow__cont::-webkit-scrollbar {
    display: none;
  }
  @container (min-width: 1201px) {
    .p-time-flow__cont {
      margin-right: calc(50% - 50vw);
    }
  }
  @container (max-width: 1200px) {
    .p-time-flow__cont {
      margin-right: -103px;
    }
  }
  .p-time-flow__slider {
    display: flex;
    width: max-content;
    margin: 0;
  }
  .p-time-flow__slide {
    width: 15rem;
    margin-right: 0.6875rem;
  }
  .p-time-flow__img {
    border-radius: 0.3125rem;
  }
  .p-time-flow__ttl {
    margin-top: 0.3125rem;
    font-size: 1rem;
  }
  .p-time-flow__btn {
    margin-bottom: 2.8125rem;
  }
  .p-time__timetable {
    gap: 1.25rem;
    margin-bottom: 0.9375rem;
  }
  .p-time__timetable caption {
    font-size: 1rem;
  }
  .p-time__timetable th,
  .p-time__timetable td {
    padding-block: 0.5625rem;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.25;
  }
  .p-time__timetable th:nth-child(n+2),
  .p-time__timetable td:nth-child(n+2) {
    min-width: 9.625rem;
    padding-inline: 1.8125rem;
  }
  .p-time__timetable tr :first-child {
    width: 6.5375rem;
  }
  .p-time-timetable__btn {
    margin-bottom: 2.4375rem;
  }
  .p-time-lunch__cont {
    margin-bottom: 2.5rem;
    overflow-y: auto;
    -ms-overflow-style: none;
    scrollbar-width: none;
  }
  .p-time-lunch__cont::-webkit-scrollbar {
    display: none;
  }
  @container (min-width: 1201px) {
    .p-time-lunch__cont {
      margin-right: calc(50% - 50vw);
    }
  }
  @container (max-width: 1200px) {
    .p-time-lunch__cont {
      margin-right: -103px;
    }
  }
  .p-time-lunch__slider {
    display: flex;
    width: max-content;
    margin: 0;
  }
  .p-time-lunch__slide {
    width: 15rem;
    margin-top: 0.6875rem;
    margin-right: 0.6875rem;
    border-radius: 0.25rem;
  }
  .p-time-lunch__img img {
    border-radius: 0.25rem 0.25rem 0 0;
  }
  .p-time-lunch__cat {
    top: -0.6875rem;
    min-width: 5.6875rem;
    min-height: 1.9375rem;
    padding: 0.3125rem 0.625rem;
    font-size: 0.875rem;
    line-height: 1.4285714286;
  }
  .p-time-lunch__ttl {
    min-height: 4rem;
    padding-block: 0.625rem 0.875rem;
    font-size: 1rem;
    line-height: 1.25;
    border-radius: 0 0 0.25rem 0.25rem;
  }
  .p-time-present__cont {
    margin-bottom: 3.625rem;
    overflow-y: auto;
    -ms-overflow-style: none;
    scrollbar-width: none;
  }
  .p-time-present__cont::-webkit-scrollbar {
    display: none;
  }
  @container (min-width: 1201px) {
    .p-time-present__cont {
      margin-right: calc(50% - 50vw);
    }
  }
  @container (max-width: 1200px) {
    .p-time-present__cont {
      margin-right: -103px;
    }
  }
  .p-time-present__slider {
    display: flex;
    width: max-content;
    margin: 0;
  }
  .p-time-present__slide {
    width: 15rem;
    margin-right: 0.6875rem;
  }
  .p-time-present__img {
    border-radius: 0.3125rem;
  }
  .p-time-present__ttl {
    margin-top: 0.625rem;
    font-size: 1rem;
  }
  .p-time-others__list {
    margin-bottom: 2.5rem;
  }
  .p-time-others__item {
    padding-left: 1.5rem;
    font-size: 1rem;
  }
  .p-time-others__item::before {
    left: 0.375rem;
  }
}
@media (max-width: 767px) {
  .p-time {
    padding-block: min(80px, 20.5128205128vw) min(61px, 15.641025641vw);
  }
  .p-time__wrap {
    padding-inline: min(14px, 3.5897435897vw);
  }
  .p-time__hgroup {
    margin-bottom: min(40px, 10.2564102564vw);
    font-size: min(20px, 5.1282051282vw);
    line-height: 1.5;
  }
  .p-time__hgroup .c-ttl {
    margin-bottom: min(8px, 2.0512820513vw);
  }
  .p-time-program__cont {
    margin-bottom: min(66px, 16.9230769231vw);
  }
  .p-time-program__slide {
    width: 100%;
  }
  .p-time-program__slide:not(:last-of-type) {
    margin-bottom: min(20px, 5.1282051282vw);
  }
  .p-time-program__img {
    margin-bottom: min(15px, 3.8461538462vw);
    border-radius: min(5px, 1.2820512821vw);
  }
  .p-time-program__ttl {
    margin-bottom: min(5px, 1.2820512821vw);
    font-size: min(17px, 4.358974359vw);
    line-height: 1.1176470588;
  }
  .p-time-program__txt {
    font-size: min(16px, 4.1025641026vw);
    line-height: 1.5625;
  }
  .p-time-flow__cont {
    margin-bottom: min(25px, 6.4102564103vw);
  }
  .p-time-flow__slide {
    width: 100%;
  }
  .p-time-flow__slide:not(:last-of-type) {
    margin-bottom: min(16px, 4.1025641026vw);
  }
  .p-time-flow__img {
    border-radius: min(8px, 1.9230769231vw);
  }
  .p-time-flow__ttl {
    margin-top: min(10px, 2.5641025641vw);
    font-size: min(16px, 4.1025641026vw);
  }
  .p-time-flow__btn {
    margin-bottom: min(66px, 16.9230769231vw);
  }
  .p-time__timetable {
    flex-direction: column;
    gap: min(20px, 5.1282051282vw);
    margin-bottom: min(25px, 6.4102564103vw);
  }
  .p-time__timetable table {
    width: 100%;
  }
  .p-time__timetable caption {
    font-size: min(16px, 4.1025641026vw);
  }
  .p-time__timetable th,
  .p-time__timetable td {
    padding-block: min(8px, 2.0512820513vw);
    font-size: min(16px, 4.1025641026vw);
  }
  .p-time__timetable th:nth-child(n+2),
  .p-time__timetable td:nth-child(n+2) {
    min-width: min(154px, 39.4871794872vw);
    padding-inline: min(20px, 5.1282051282vw);
  }
  .p-time__timetable tr :first-child {
    width: min(105px, 26.8205128205vw);
  }
  .p-time-timetable__btn {
    margin-bottom: min(64px, 16.4102564103vw);
  }
  .p-time-lunch__cont {
    margin-bottom: min(68px, 17.4358974359vw);
  }
  .p-time-lunch__slide {
    width: 100%;
    margin-top: min(40px, 10.2564102564vw);
    border-radius: min(6px, 1.5384615385vw);
  }
  .p-time-lunch__img img {
    border-radius: min(6px, 1.5384615385vw) min(6px, 1.5384615385vw) 0 0;
  }
  .p-time-lunch__cat {
    top: 0;
    min-width: min(139px, 35.641025641vw);
    min-height: min(40px, 10.2564102564vw);
    padding: min(10px, 2.5641025641vw) min(15px, 3.8461538462vw);
    font-size: min(18px, 4.6153846154vw);
    line-height: 1.1111111111;
    transform: translate(-50%, -50%);
  }
  .p-time-lunch__ttl {
    min-height: min(56px, 14.358974359vw);
    padding-block: min(16px, 4.1025641026vw) min(20px, 5.1282051282vw);
    font-size: min(18px, 4.6153846154vw);
    line-height: 1.1111111111;
    border-radius: 0 0 min(6px, 1.5384615385vw) min(6px, 1.5384615385vw);
  }
  .p-time-present__cont {
    margin-bottom: min(60px, 15.3846153846vw);
  }
  .p-time-present__slide {
    width: 100%;
  }
  .p-time-present__slide:not(:last-of-type) {
    margin-bottom: min(16px, 4.1025641026vw);
  }
  .p-time-present__img {
    border-radius: min(8px, 1.9230769231vw);
  }
  .p-time-present__ttl {
    margin-top: min(10px, 2.5641025641vw);
    font-size: min(16px, 4.1025641026vw);
  }
  .p-time-others__ttl {
    margin-bottom: min(15px, 3.8461538462vw);
  }
  .p-time-others__list {
    margin-bottom: min(44px, 11.2820512821vw);
  }
  .p-time-others__item {
    padding-left: min(24px, 6.1538461538vw);
    font-size: min(16px, 4.1025641026vw);
  }
  .p-time-others__item::before {
    left: min(6px, 1.5384615385vw);
  }
}

/* .p-flow
----------------------------------- */
.p-flow {
  background: #ffec65;
  color: #009b77;
}
.p-flow__txt {
  font-weight: 500;
}
.p-flow__list {
  display: grid;
}
.p-flow__item-img {
  overflow: hidden;
}
.p-flow__item-img img {
  display: block;
  width: 100%;
  height: 100%;
}
.p-flow__item-txt {
  color: #1e1e1e;
}
.p-flow__item-txt a {
  text-decoration: underline;
}
@media (any-hover: hover) {
  .p-flow__item-txt a:hover {
    text-decoration: none;
  }
}
@media (min-width: 768px) {
  .p-flow {
    padding-block: 4.125rem 3.875rem;
  }
  .p-flow__btn {
    display: flex;
    justify-content: center;
  }
  .p-flow__btn .c-btn__btn:nth-of-type(2) {
    margin-left: 0.9375rem;
  }
  .p-flow__txt {
    font-size: 1.0625rem;
    line-height: 2.3529411765;
    margin-block: 3.625rem 2.625rem;
  }
  .p-flow__list {
    grid-template-columns: repeat(3, 15rem);
    column-gap: 0.6875rem;
    margin-bottom: 2.625rem;
  }
  .p-flow__item-img {
    border-radius: 0.3125rem;
  }
  .p-flow__item-txt {
    font-size: 0.8125rem;
    font-weight: 500;
    line-height: 1.5384615385;
    margin-top: 1rem;
  }
}
@media (max-width: 767px) {
  .p-flow {
    padding-block: min(42px, 10.7692307692vw) min(60px, 15.3846153846vw);
  }
  .p-flow__wrap {
    padding-inline: min(14px, 3.5897435897vw);
  }
  .p-flow__btn {
    padding-inline: min(7px, 1.7948717949vw);
  }
  .p-flow__btn .c-btn__btn:nth-of-type(2) {
    margin-top: min(15px, 3.8461538462vw);
  }
  .p-flow__txt {
    font-size: min(17px, 4.358974359vw);
    line-height: 1.7647058824;
    margin-block: min(43px, 11.0256410256vw);
  }
  .p-flow__txt > span {
    display: inline-block;
  }
  .p-flow__list {
    row-gap: min(20px, 5.1282051282vw);
    margin-bottom: 2.625rem;
  }
  .p-flow__item-img {
    border-radius: min(5px, 1.2820512821vw);
  }
  .p-flow__item-txt {
    font-size: min(16px, 4.1025641026vw);
    line-height: 1.5625;
    margin-top: min(15px, 3.8461538462vw);
  }
}

/* .p-consul
----------------------------------- */
.p-consul {
  color: #f08300;
}
.p-consul__hgroup {
  font-weight: 700;
}
.p-consul__txt {
  font-weight: 500;
}
.p-consul__txt > small {
  display: block;
  line-height: 2.3076923077;
}
.p-consul__list {
  display: grid;
}
.p-consul__item-img {
  overflow: hidden;
}
.p-consul__item-txt {
  color: #1e1e1e;
}
.p-consul__item-txt a {
  text-decoration: underline;
}
@media (any-hover: hover) {
  .p-consul__item-txt a:hover {
    text-decoration: none;
  }
}
@media (min-width: 768px) {
  .p-consul {
    padding-block: 5.4375rem;
  }
  .p-consul__hgroup-txt {
    font-size: 1.25rem;
    line-height: 1.6;
    margin-bottom: 0.8125rem;
  }
  .p-consul__hgroup-ttl {
    font-size: 1.875rem;
  }
  .p-consul__txt {
    font-size: 1.0625rem;
    line-height: 2.3529411765;
    margin-block: 2.125rem 3.625rem;
  }
  .p-consul__txt > small {
    font-size: 0.8125rem;
  }
  .p-consul__list {
    grid-template-columns: repeat(2, 30.625rem);
    column-gap: 0.8125rem;
    margin-bottom: 2.875rem;
  }
  .p-consul__item {
    display: flex;
    align-items: flex-end;
  }
  .p-consul__item-img {
    border-radius: 0.3125rem;
    flex-shrink: 0;
    margin-right: 0.8125rem;
  }
  .p-consul__item-txt {
    font-size: 0.8125rem;
    font-weight: 500;
    line-height: 1.5384615385;
  }
}
@media (max-width: 767px) {
  .p-consul {
    padding-block: min(42px, 10.7692307692vw) min(60px, 15.3846153846vw);
  }
  .p-consul__wrap {
    padding-inline: min(14px, 3.5897435897vw);
  }
  .p-consul__hgroup {
    text-align: center;
  }
  .p-consul__hgroup-txt {
    font-size: min(17px, 4.358974359vw);
    line-height: 1.4705882353;
    margin-bottom: min(22px, 5.641025641vw);
  }
  .p-consul__hgroup-ttl {
    font-size: min(30px, 7.6923076923vw);
  }
  .p-consul__txt {
    font-size: min(17px, 4.358974359vw);
    line-height: 1.7647058824;
    margin-block: min(39px, 10vw) min(61px, 15.641025641vw);
  }
  .p-consul__txt > small {
    font-size: min(13px, 3.3333333333vw);
  }
  .p-consul__list {
    row-gap: min(25px, 6.4102564103vw);
    margin-bottom: min(39px, 10vw);
  }
  .p-consul__item-img {
    border-radius: 0.46875rem;
  }
  .p-consul__item-img img {
    display: block;
    width: 100%;
    height: 100%;
  }
  .p-consul__item-txt {
    font-size: min(16px, 4.1025641026vw);
    line-height: 1.5625;
    margin-top: min(15px, 3.8461538462vw);
  }
}

.p-common-archive__container {
  display: grid;
  margin-inline: auto;
}
.p-common-archive__inner {
  width: 100%;
  margin-inline: auto;
}
.p-common-archive__border {
  border-bottom: 1px solid #009B77;
}
.p-common-archive__header-wrapper {
  margin-inline: auto;
}
.p-common-archive__header {
  text-align: center;
}
.p-common-archive__header-sub {
  display: block;
  font-weight: 700;
  color: #1e1e1e;
}
.p-common-archive__header-ttl {
  font-weight: 700;
  line-height: 1;
  color: #009B77;
}
.p-common-archive .p-breadcrumbs {
  position: static;
  transform: none;
}
.p-common-archive .p-breadcrumbs__list {
  display: flex;
  justify-content: flex-end;
}
.p-common-archive .p-breadcrumbs__item > span {
  color: #1e1e1e;
}
.p-common-archive__item {
  border-bottom: 1px solid #009B77;
}
.p-common-archive__item:first-child .p-common-archive__item-link {
  padding-top: 0;
}
.p-common-archive__item:last-child {
  border-bottom: none;
}
.p-common-archive__item-link {
  display: flex;
  align-items: center;
}
.p-common-archive__item-meta {
  display: flex;
  align-items: center;
}
.p-common-archive__item-date {
  font-family: "Commissioner", "Noto Sans JP", sans-serif;
  font-weight: 500;
  letter-spacing: 0.1em;
  color: #009B77;
}
.p-common-archive__item-tag {
  display: inline-block;
  font-weight: 500;
  color: #009B77;
  background: #f5f5f5;
  text-align: center;
}
.p-common-archive__item-title {
  margin: 0;
  font-weight: 500;
  line-height: 1.25;
  color: #009B77;
  flex: 1;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.p-common-archive__btn-wrap {
  display: flex;
  justify-content: center;
}
.p-common-archive__side-ttl {
  font-weight: 700;
  color: #009B77;
}
.p-common-archive__side-item {
  border-bottom: 1px solid #535353;
}
.p-common-archive__side-link {
  display: block;
  font-weight: 500;
  color: #535353;
  transition: color 0.2s;
}
.p-common-archive__side-link::before {
  margin-right: 0.5em;
  content: "-";
}
@media (any-hover: hover) {
  .p-common-archive__side-link:hover {
    color: #009B77;
  }
}
@media (min-width: 768px) {
  .p-common-archive {
    padding-bottom: 4.375rem;
  }
  .p-common-archive__container {
    grid-template-columns: 1fr 11rem;
    gap: 8.1875rem;
    max-width: 62rem;
    margin-top: 5.625rem;
  }
  .p-common-archive__inner {
    max-width: 1200px;
  }
  .p-common-archive__header-wrapper {
    max-width: 62rem;
  }
  .p-common-archive__header {
    padding-block: 0.375rem;
  }
  .p-common-archive__header-sub {
    font-size: 1rem;
  }
  .p-common-archive__header-ttl {
    margin-top: 0.9375rem;
    font-size: 1.875rem;
  }
  .p-common-archive .p-breadcrumbs {
    padding-top: 0.9375rem;
  }
  .p-common-archive__item-link {
    gap: 0.625rem;
    padding-block: 1.8125rem;
  }
  .p-common-archive__item-meta {
    gap: 0.625rem;
    width: 15.4375rem;
  }
  .p-common-archive__item-date {
    font-size: 1rem;
  }
  .p-common-archive__item-tag {
    padding: 0.25rem 0.125rem;
    font-size: 0.8125rem;
    border-radius: 0.3125rem;
    width: 8.75rem;
  }
  .p-common-archive__item-title {
    font-size: 1rem;
  }
  .p-common-archive__btn-wrap {
    margin-top: 4.1875rem;
  }
  .p-common-archive__sidebar {
    width: 11rem;
  }
  .p-common-archive__side-section:not(:first-child) {
    margin-top: 3.875rem;
  }
  .p-common-archive__side-ttl {
    font-size: 1.125rem;
  }
  .p-common-archive__side-item:first-child {
    margin-top: 0.6875rem;
  }
  .p-common-archive__side-link {
    padding-block: 0.75rem;
    font-size: 0.875rem;
  }
}
@media (max-width: 767px) {
  .p-common-archive {
    padding-bottom: 0;
  }
  .p-common-archive__container {
    display: contents;
  }
  .p-common-archive__inner {
    padding-inline: min(16px, 4.1025641026vw);
    max-width: none;
  }
  .p-common-archive__header {
    padding-block: min(34px, 8.7179487179vw) min(46px, 11.7948717949vw);
  }
  .p-common-archive__header-sub {
    font-size: min(16px, 4.1025641026vw);
  }
  .p-common-archive__header-ttl {
    margin-top: min(15px, 3.8461538462vw);
    font-size: min(30px, 7.6923076923vw);
  }
  .p-common-archive .p-breadcrumbs {
    padding-top: 0;
  }
  .p-common-archive__list {
    padding-block: min(35px, 8.9743589744vw) 0;
  }
  .p-common-archive__item-link {
    display: block;
    padding-block: min(20px, 5.1282051282vw);
  }
  .p-common-archive__item-meta {
    width: auto;
    gap: min(10px, 2.5641025641vw);
  }
  .p-common-archive__item-date {
    font-size: min(16px, 4.1025641026vw);
  }
  .p-common-archive__item-tag {
    padding: min(4px, 1.0256410256vw) min(2px, 0.5128205128vw);
    font-size: min(13px, 3.3333333333vw);
    border-radius: min(5px, 1.2820512821vw);
    width: min(140px, 35.8974358974vw);
  }
  .p-common-archive__item-title {
    margin-top: min(10px, 2.5641025641vw);
    font-size: min(16px, 4.1025641026vw);
  }
  .p-common-archive__btn-wrap {
    margin-top: min(67px, 17.1794871795vw);
    padding-inline: min(10px, 2.5641025641vw);
  }
  .p-common-archive__sidebar {
    width: auto;
    background: #f5f5f5;
    padding-block: min(55px, 14.1025641026vw) min(73px, 18.7179487179vw);
    margin-top: min(50px, 12.8205128205vw);
  }
  .p-common-archive__sidebar-inner {
    padding-inline: min(35px, 8.9743589744vw);
  }
  .p-common-archive__side-section {
    width: min(176px, 45.1282051282vw);
  }
  .p-common-archive__side-section:not(:first-child) {
    margin-top: min(62px, 15.8974358974vw);
  }
  .p-common-archive__side-ttl {
    font-size: min(18px, 4.6153846154vw);
  }
  .p-common-archive__side-item:first-child {
    margin-top: min(11px, 2.8205128205vw);
  }
  .p-common-archive__side-link {
    padding-block: min(12px, 3.0769230769vw);
    font-size: min(14px, 3.5897435897vw);
  }
}

.p-archive-campus-life {
  background-color: #f5f5f5;
  overflow-x: clip;
  margin-inline: auto;
}
.p-archive-campus-life-fv__inner {
  height: 100%;
}
.p-archive-campus-life-fv__fv {
  display: flex;
}
.p-archive-campus-life-fv__content-img {
  width: fit-content;
  margin-inline: auto;
}
.p-archive-campus-life-fv__content-img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.p-archive-campus-life-fv__fv-img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
}
.p-archive-campus-life-fv__sub-title {
  color: #009b77;
  text-align: center;
  font-weight: 700;
  line-height: 1.1666666667;
}
.p-archive-campus-life-fv__line {
  background: #fff;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  width: 100vw;
}
.p-archive-campus-life-fv__text {
  color: #009b77;
  text-align: center;
  font-weight: 500;
  line-height: 1.8666666667;
}
.p-archive-campus-life .p-archive-campus-life-interview {
  display: block;
  transition: opacity 0.1s ease-out;
  position: relative;
}
.p-archive-campus-life .p-archive-campus-life-interview img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media (any-hover: hover) {
  .p-archive-campus-life .p-archive-campus-life-interview:hover {
    opacity: 0.75;
  }
}
.p-archive-campus-life .p-archive-campus-life-interview__category {
  background-color: #45b035;
  color: #fff;
  text-align: center;
  font-weight: 700;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1;
}
.p-archive-campus-life .p-archive-campus-life-interview__category--orange {
  background-color: #f08300;
}
.p-archive-campus-life .p-archive-campus-life-interview__category--yellow {
  background-color: #f8b500;
}
@media (min-width: 768px) {
  .p-archive-campus-life {
    max-width: 24.375rem;
  }
  .p-archive-campus-life-fv__inner {
    padding-inline: 1.3125rem;
    padding-bottom: 2.5rem;
  }
  .p-archive-campus-life-fv__fv {
    gap: 0.5625rem;
    width: calc(100% + 2.625rem);
    margin-left: -1.3125rem;
    margin-right: -1.3125rem;
  }
  .p-archive-campus-life-fv__sub-title {
    font-size: 1.125rem;
    margin-top: 1.3125rem;
  }
  .p-archive-campus-life-fv__line {
    height: 0.1875rem;
    box-shadow: 0 0.1875rem 0 0 rgba(0, 0, 0, 0.05);
    margin-top: 0.8125rem;
  }
  .p-archive-campus-life-fv__content {
    padding-top: 2.8125rem;
  }
  .p-archive-campus-life-fv__text {
    font-size: 0.9375rem;
    margin-top: 2.75rem;
  }
  .p-archive-campus-life .p-archive-campus-life-interview__category {
    font-size: 0.875rem;
    padding-inline: 0.9375rem;
    padding-block: 0.375rem;
    border-radius: 0.3125rem;
    box-shadow: 0.1875rem 0.1875rem 0.625rem 0 rgba(0, 0, 0, 0.05);
    bottom: 2.375rem;
    min-width: 6.875rem;
  }
}
@media (max-width: 767px) {
  .p-archive-campus-life {
    max-width: none;
  }
  .p-archive-campus-life-fv__inner {
    padding-inline: min(21px, 5.3846153846vw);
    padding-bottom: min(40px, 10.2564102564vw);
  }
  .p-archive-campus-life-fv__fv {
    gap: min(9px, 2.3076923077vw);
    width: calc(100% + 2 * min(21px, 5.3846153846vw));
    margin-left: min(-21px, -5.3846153846vw);
    margin-right: min(-21px, -5.3846153846vw);
  }
  .p-archive-campus-life-fv__sub-title {
    font-size: min(18px, 4.6153846154vw);
    margin-top: min(21px, 5.3846153846vw);
  }
  .p-archive-campus-life-fv__line {
    height: min(3px, 0.7692307692vw);
    box-shadow: 0 min(3px, 0.7692307692vw) 0 0 rgba(0, 0, 0, 0.05);
    margin-top: min(13px, 3.3333333333vw);
  }
  .p-archive-campus-life-fv__content {
    padding-top: min(45px, 11.5384615385vw);
  }
  .p-archive-campus-life-fv__text {
    font-size: min(15px, 3.8461538462vw);
    margin-top: min(44px, 11.2820512821vw);
  }
  .p-archive-campus-life .p-archive-campus-life-interview__category {
    font-size: min(14px, 3.5897435897vw);
    padding-inline: min(15px, 3.8461538462vw);
    padding-block: min(6px, 1.5384615385vw);
    border-radius: min(5px, 1.2820512821vw);
    box-shadow: min(3px, 0.7692307692vw) min(3px, 0.7692307692vw) min(10px, 2.5641025641vw) 0 rgba(0, 0, 0, 0.05);
    bottom: min(38px, 9.7435897436vw);
    min-width: min(110px, 28.2051282051vw);
  }
}

.p-archive-career-story {
  background-color: #f5f5f5;
  overflow-x: clip;
  margin-inline: auto;
}
.p-archive-career-story__title {
  color: #009b77;
  font-weight: 700;
  line-height: 1.05;
  text-align: center;
  letter-spacing: 0.1em;
}
.p-archive-career-story__subtitle {
  text-align: center;
}
.p-archive-career-story__subtitle-emoji {
  color: #009b77;
  font-weight: 700;
  line-height: 1.3333333333;
}
.p-archive-career-story__subtitle-text {
  color: #009b77;
  font-weight: 700;
  line-height: 1.6;
  text-align: center;
}
.p-archive-career-story__description {
  color: #009b77;
  font-weight: 500;
  line-height: 1.8666666667;
  text-align: center;
  position: relative;
}
.p-archive-career-story__description::before {
  content: "";
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  background-color: #009b77;
}
@media (max-width: 767px) {
  .p-archive-career-story .p-campus-nav {
    margin-top: min(20px, 5.1282051282vw);
  }
}
@media (max-width: 767px) {
  .p-archive-career-story__card {
    scroll-margin-top: calc(var(--header-height) + min(40px, 10.2564102564vw));
  }
}
.p-archive-career-story__card:first-child {
  margin-top: 0;
}
.p-archive-career-story__card-link {
  display: block;
  transition: opacity 0.1s ease-out;
}
@media (any-hover: hover) {
  .p-archive-career-story__card-link:hover {
    opacity: 0.75;
  }
}
.p-archive-career-story__card-img-wrap {
  position: relative;
  width: 100%;
  overflow: hidden;
  aspect-ratio: 350/241;
}
.p-archive-career-story__card-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-archive-career-story__card-text {
  color: #009b77;
  font-weight: 700;
  line-height: 1.4;
}
.p-archive-career-story__card-title {
  color: #009b77;
  font-weight: 700;
  line-height: 1.3333333333;
}
.p-archive-career-story__card-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-weight: 700;
  line-height: 3.5714285714;
}
.p-archive-career-story__card-badge--green {
  background-color: #45b035;
}
.p-archive-career-story__card-badge--orange {
  background-color: #f08300;
}
.p-archive-career-story__card-badge--yellow {
  background-color: #f8b500;
}
.p-archive-career-story__card-info {
  color: #009b77;
  font-weight: 500;
  line-height: 1.3846153846;
}
@media (min-width: 768px) {
  .p-archive-career-story {
    max-width: 24.375rem;
  }
  .p-archive-career-story__header {
    padding: 2.5rem 1.125rem 0;
  }
  .p-archive-career-story__title {
    font-size: 1.25rem;
  }
  .p-archive-career-story__subtitle {
    margin-top: 2.5625rem;
  }
  .p-archive-career-story__subtitle-emoji {
    font-size: 1.875rem;
  }
  .p-archive-career-story__subtitle-text {
    font-size: 1.25rem;
    margin-top: 1.5rem;
  }
  .p-archive-career-story__description {
    font-size: 0.9375rem;
    margin-top: 2.8125rem;
  }
  .p-archive-career-story__description::before {
    width: 1.125rem;
    height: 0.0625rem;
    top: -1.25rem;
  }
  .p-archive-career-story__list {
    padding: 0 1.25rem;
    margin-top: 2.8125rem;
  }
  .p-archive-career-story__card {
    margin-top: 2.1875rem;
  }
  .p-archive-career-story__card-img-wrap {
    border-radius: 0.5rem;
  }
  .p-archive-career-story__card-content {
    margin-top: 0.875rem;
  }
  .p-archive-career-story__card-text {
    font-size: 1.25rem;
    margin-top: 0.4375rem;
  }
  .p-archive-career-story__card-title {
    font-size: 0.9375rem;
    margin-top: 0.4375rem;
  }
  .p-archive-career-story__card-meta {
    margin-top: 0.875rem;
  }
  .p-archive-career-story__card-badge {
    font-size: 0.875rem;
    border-radius: 0.3125rem;
    box-shadow: 0.1875rem 0.1875rem 0.625rem 0 rgba(0, 0, 0, 0.05);
    padding: 0 0.9375rem;
    height: 1.75rem;
  }
  .p-archive-career-story__card-info {
    font-size: 0.8125rem;
    margin-top: 0.5625rem;
  }
}
@media (max-width: 767px) {
  .p-archive-career-story {
    max-width: none;
  }
  .p-archive-career-story__header {
    padding: min(40px, 10.2564102564vw) min(18px, 4.6153846154vw) 0;
  }
  .p-archive-career-story__title {
    font-size: min(20px, 5.1282051282vw);
  }
  .p-archive-career-story__subtitle {
    margin-top: min(41px, 10.5128205128vw);
  }
  .p-archive-career-story__subtitle-emoji {
    font-size: min(30px, 7.6923076923vw);
  }
  .p-archive-career-story__subtitle-text {
    font-size: min(20px, 5.1282051282vw);
    margin-top: min(24px, 6.1538461538vw);
  }
  .p-archive-career-story__description {
    font-size: min(15px, 3.8461538462vw);
    margin-top: min(45px, 11.5384615385vw);
  }
  .p-archive-career-story__description::before {
    width: min(18px, 4.6153846154vw);
    height: min(1px, 0.2564102564vw);
    top: min(-20px, -5.1282051282vw);
  }
  .p-archive-career-story__list {
    padding: 0 min(20px, 5.1282051282vw);
    margin-top: min(45px, 11.5384615385vw);
  }
  .p-archive-career-story__card {
    margin-top: min(35px, 8.9743589744vw);
  }
  .p-archive-career-story__card-img-wrap {
    border-radius: min(8px, 2.0512820513vw);
  }
  .p-archive-career-story__card-content {
    margin-top: min(14px, 3.5897435897vw);
  }
  .p-archive-career-story__card-text {
    font-size: min(20px, 5.1282051282vw);
    margin-top: min(7px, 1.7948717949vw);
  }
  .p-archive-career-story__card-title {
    font-size: min(15px, 3.8461538462vw);
    margin-top: min(7px, 1.7948717949vw);
  }
  .p-archive-career-story__card-meta {
    margin-top: min(14px, 3.5897435897vw);
  }
  .p-archive-career-story__card-badge {
    font-size: min(14px, 3.5897435897vw);
    border-radius: min(5px, 1.2820512821vw);
    box-shadow: min(3px, 0.7692307692vw) min(3px, 0.7692307692vw) min(10px, 2.5641025641vw) 0 rgba(0, 0, 0, 0.05);
    padding: 0 min(15px, 3.8461538462vw);
    height: min(28px, 7.1794871795vw);
  }
  .p-archive-career-story__card-info {
    font-size: min(13px, 3.3333333333vw);
    margin-top: min(9px, 2.3076923077vw);
  }
}

.p-archive-documentary {
  background-color: #f5f5f5;
  overflow-x: clip;
  margin-inline: auto;
}
.p-archive-documentary__title {
  color: #009b77;
  font-weight: 700;
  line-height: 1.05;
  text-align: center;
  letter-spacing: 0.1em;
}
.p-archive-documentary__subtitle {
  color: #009b77;
  font-weight: 700;
  line-height: 1.3333333333;
  text-align: center;
}
.p-archive-documentary__description {
  color: #009b77;
  font-weight: 500;
  line-height: 1.8666666667;
  text-align: center;
  position: relative;
}
.p-archive-documentary__description::before {
  content: "";
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  background-color: #009b77;
}
@media (max-width: 767px) {
  .p-archive-documentary .p-campus-nav {
    margin-top: min(20px, 5.1282051282vw);
  }
}
@media (max-width: 767px) {
  .p-archive-documentary__card {
    scroll-margin-top: calc(var(--header-height) + min(0px, 0vw));
  }
}
.p-archive-documentary__card-link {
  display: block;
  transition: opacity 0.1s ease-out;
}
@media (any-hover: hover) {
  .p-archive-documentary__card-link:hover {
    opacity: 0.75;
  }
}
.p-archive-documentary__card-img-wrap {
  position: relative;
  width: 100%;
  overflow: hidden;
  aspect-ratio: 350/260;
}
.p-archive-documentary__card-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-archive-documentary__card-company {
  color: #009b77;
  font-weight: 700;
  line-height: 1.7857142857;
}
.p-archive-documentary__card-title {
  color: #009b77;
  font-weight: 700;
  line-height: 1.5625;
}
.p-archive-documentary__card-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-weight: 700;
  line-height: 3.5714285714;
}
.p-archive-documentary__card-badge--green {
  background-color: #45b035;
}
.p-archive-documentary__card-badge--orange {
  background-color: #f08300;
}
.p-archive-documentary__card-badge--yellow {
  background-color: #f8b500;
}
.p-archive-documentary__card-info {
  color: #009b77;
  font-weight: 500;
  line-height: 1.3846153846;
}
@media (min-width: 768px) {
  .p-archive-documentary {
    max-width: 24.375rem;
  }
  .p-archive-documentary__header {
    padding: 2.5rem 1.125rem 0;
  }
  .p-archive-documentary__title {
    font-size: 1.25rem;
  }
  .p-archive-documentary__subtitle {
    font-size: 1.875rem;
    margin-top: 1.25rem;
  }
  .p-archive-documentary__description {
    font-size: 0.9375rem;
    margin-top: 3.25rem;
  }
  .p-archive-documentary__description::before {
    width: 1.125rem;
    height: 0.0625rem;
    top: -1.25rem;
  }
  .p-archive-documentary__list {
    padding-inline: 1.25rem;
    padding-bottom: 7.3125rem;
  }
  .p-archive-documentary__card {
    padding-top: 2.375rem;
  }
  .p-archive-documentary__card-img-wrap {
    border-radius: 0.8125rem;
  }
  .p-archive-documentary__card-content {
    margin-top: 1.3125rem;
  }
  .p-archive-documentary__card-company {
    font-size: 0.875rem;
    border-bottom: 0.0625rem solid #009b77;
    padding-bottom: 0.25rem;
  }
  .p-archive-documentary__card-title {
    font-size: 1rem;
    margin-top: 0.5625rem;
  }
  .p-archive-documentary__card-meta {
    margin-top: 0.4375rem;
  }
  .p-archive-documentary__card-badge {
    font-size: 0.875rem;
    border-radius: 0.3125rem;
    box-shadow: 0.1875rem 0.1875rem 0.625rem 0 rgba(0, 0, 0, 0.05);
    padding: 0 0.9375rem;
    height: 1.75rem;
  }
  .p-archive-documentary__card-info {
    font-size: 0.8125rem;
    margin-top: 0.5625rem;
  }
}
@media (max-width: 767px) {
  .p-archive-documentary {
    max-width: none;
  }
  .p-archive-documentary__header {
    padding: min(40px, 10.2564102564vw) min(18px, 4.6153846154vw) 0;
  }
  .p-archive-documentary__title {
    font-size: min(20px, 5.1282051282vw);
  }
  .p-archive-documentary__subtitle {
    font-size: min(30px, 7.6923076923vw);
    margin-top: min(20px, 5.1282051282vw);
  }
  .p-archive-documentary__description {
    font-size: min(15px, 3.8461538462vw);
    margin-top: min(52px, 13.3333333333vw);
  }
  .p-archive-documentary__description::before {
    width: min(18px, 4.6153846154vw);
    height: min(1px, 0.2564102564vw);
    top: min(-20px, -5.1282051282vw);
  }
  .p-archive-documentary__list {
    padding-inline: min(20px, 5.1282051282vw);
    padding-bottom: min(117px, 30vw);
  }
  .p-archive-documentary__card {
    padding-top: min(38px, 9.7435897436vw);
  }
  .p-archive-documentary__card-img-wrap {
    border-radius: min(13px, 3.3333333333vw);
  }
  .p-archive-documentary__card-content {
    margin-top: min(21px, 5.3846153846vw);
  }
  .p-archive-documentary__card-company {
    font-size: min(14px, 3.5897435897vw);
    border-bottom: min(1px, 0.2564102564vw) solid #009b77;
    padding-bottom: min(4px, 1.0256410256vw);
  }
  .p-archive-documentary__card-title {
    font-size: min(16px, 4.1025641026vw);
    margin-top: min(9px, 2.3076923077vw);
  }
  .p-archive-documentary__card-meta {
    margin-top: min(7px, 1.7948717949vw);
  }
  .p-archive-documentary__card-badge {
    font-size: min(14px, 3.5897435897vw);
    border-radius: min(5px, 1.2820512821vw);
    box-shadow: min(3px, 0.7692307692vw) min(3px, 0.7692307692vw) min(10px, 2.5641025641vw) 0 rgba(0, 0, 0, 0.05);
    padding: 0 min(15px, 3.8461538462vw);
    height: min(28px, 7.1794871795vw);
  }
  .p-archive-documentary__card-info {
    font-size: min(13px, 3.3333333333vw);
    margin-top: min(9px, 2.3076923077vw);
  }
}

/* .p-campus-life-accordion
----------------------------------- */
.p-campus-life-accordion {
  margin-top: 4.8125rem;
  padding-bottom: 3.375rem;
}
@media (max-width: 767px) {
  .p-campus-life-accordion {
    margin-top: min(77px, 19.7435897436vw);
    padding-bottom: min(54px, 13.8461538462vw);
  }
}
.p-campus-life-accordion__inner {
  margin-inline: auto;
  max-width: 61.875rem;
  padding: 0 1.3125rem;
}
@media (max-width: 767px) {
  .p-campus-life-accordion__inner {
    padding: 0 min(21px, 5.3846153846vw);
  }
}
.p-campus-life-accordion__other {
  color: #009b77;
  text-align: center;
  font-weight: 700;
  font-size: 1.5rem;
}
.p-campus-life-accordion__list {
  display: flex;
  flex-direction: column;
  margin-top: 1.25rem;
  gap: 1.625rem;
}
@media (max-width: 767px) {
  .p-campus-life-accordion__list {
    margin-top: min(20px, 5.1282051282vw);
    gap: min(26px, 6.6666666667vw);
  }
}
.p-campus-life-accordion__item:has(.p-campus-life-accordion__btn--orange) .p-campus-life-accordion__article {
  border-bottom-color: #f08300;
}
.p-campus-life-accordion__item:has(.p-campus-life-accordion__btn--orange) .p-campus-life-accordion__article-course, .p-campus-life-accordion__item:has(.p-campus-life-accordion__btn--orange) .p-campus-life-accordion__article-school, .p-campus-life-accordion__item:has(.p-campus-life-accordion__btn--orange) .p-campus-life-accordion__article-text {
  color: #f08300;
}
.p-campus-life-accordion__item:has(.p-campus-life-accordion__btn--yellow) .p-campus-life-accordion__article {
  border-bottom-color: #f8b500;
}
.p-campus-life-accordion__item:has(.p-campus-life-accordion__btn--yellow) .p-campus-life-accordion__article-course, .p-campus-life-accordion__item:has(.p-campus-life-accordion__btn--yellow) .p-campus-life-accordion__article-school, .p-campus-life-accordion__item:has(.p-campus-life-accordion__btn--yellow) .p-campus-life-accordion__article-text {
  color: #f8b500;
}
.p-campus-life-accordion__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  color: #fff;
  background-color: #45b035;
  border: 1px solid #45b035;
  border-radius: 6.25rem;
  cursor: pointer;
  transition: color 0.2s ease-out, background-color 0.2s ease-out, border-color 0.2s ease-out;
  font-size: 1rem;
  line-height: 2;
  position: relative;
  padding: 0.875rem 1.25rem;
  min-height: 3.125rem;
}
@media (max-width: 767px) {
  .p-campus-life-accordion__btn {
    padding: min(14px, 3.5897435897vw) min(20px, 5.1282051282vw);
    min-height: min(50px, 12.8205128205vw);
  }
}
@media (any-hover: hover) {
  .p-campus-life-accordion__btn:hover {
    color: #45b035;
    background-color: #fff;
    border-color: #45b035;
  }
  .p-campus-life-accordion__btn:hover .p-campus-life-accordion__btn-icon::before, .p-campus-life-accordion__btn:hover .p-campus-life-accordion__btn-icon::after {
    background-color: #45b035;
  }
}
.p-campus-life-accordion__btn--orange {
  background-color: #f08300;
  border-color: #f08300;
}
@media (any-hover: hover) {
  .p-campus-life-accordion__btn--orange:hover {
    color: #f08300;
    background-color: #fff;
    border-color: #f08300;
  }
  .p-campus-life-accordion__btn--orange:hover .p-campus-life-accordion__btn-icon::before, .p-campus-life-accordion__btn--orange:hover .p-campus-life-accordion__btn-icon::after {
    background-color: #f08300;
  }
}
.p-campus-life-accordion__btn--yellow {
  background-color: #f8b500;
  border-color: #f8b500;
}
@media (any-hover: hover) {
  .p-campus-life-accordion__btn--yellow:hover {
    color: #f8b500;
    background-color: #fff;
    border-color: #f8b500;
  }
  .p-campus-life-accordion__btn--yellow:hover .p-campus-life-accordion__btn-icon::before, .p-campus-life-accordion__btn--yellow:hover .p-campus-life-accordion__btn-icon::after {
    background-color: #f8b500;
  }
}
.p-campus-life-accordion__btn[aria-expanded=true] .p-campus-life-accordion__btn-icon::after {
  transform: translate(-50%, -50%) rotate(90deg);
}
.p-campus-life-accordion__btn-text {
  font-weight: 700;
  line-height: 1.5;
}
.p-campus-life-accordion__btn-icon {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  flex-shrink: 0;
  right: 1.25rem;
  width: 1rem;
  height: 1rem;
}
@media (max-width: 767px) {
  .p-campus-life-accordion__btn-icon {
    right: min(20px, 5.1282051282vw);
    width: min(16px, 4.1025641026vw);
    height: min(16px, 4.1025641026vw);
  }
}
.p-campus-life-accordion__btn-icon::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: #fff;
  transition: background-color 0.2s ease-out;
  width: 1rem;
  height: 0.125rem;
  border-radius: 0.625rem;
}
@media (max-width: 767px) {
  .p-campus-life-accordion__btn-icon::before {
    width: min(16px, 4.1025641026vw);
    height: min(2px, 0.5128205128vw);
    border-radius: min(10px, 2.5641025641vw);
  }
}
.p-campus-life-accordion__btn-icon::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: #fff;
  transition: transform 0.3s ease-out, background-color 0.2s ease-out;
  width: 0.125rem;
  height: 1rem;
  border-radius: 0.625rem;
}
@media (max-width: 767px) {
  .p-campus-life-accordion__btn-icon::after {
    width: min(2px, 0.5128205128vw);
    height: min(16px, 4.1025641026vw);
    border-radius: min(10px, 2.5641025641vw);
  }
}
.p-campus-life-accordion__content {
  display: none;
  margin-top: 1.75rem;
}
@media (max-width: 767px) {
  .p-campus-life-accordion__content {
    margin-top: min(28px, 7.1794871795vw);
  }
}
.p-campus-life-accordion__content.is-open {
  display: block;
}
.p-campus-life-accordion__article {
  display: block;
  color: inherit;
  border-bottom: 1px solid #45b035;
  transition: opacity 0.2s ease-out;
  padding-top: 1.5rem;
}
@media (max-width: 767px) {
  .p-campus-life-accordion__article {
    padding-top: min(24px, 6.1538461538vw);
  }
}
.p-campus-life-accordion__article:first-child {
  padding-top: 0;
}
@media (any-hover: hover) {
  .p-campus-life-accordion__article:hover {
    opacity: 0.75;
  }
}
.p-campus-life-accordion__article-header {
  display: grid;
  gap: 16px;
  align-items: end;
  margin-bottom: 0.875rem;
  grid-template-columns: 5.6875rem 1fr;
}
@media (max-width: 767px) {
  .p-campus-life-accordion__article-header {
    margin-bottom: min(14px, 3.5897435897vw);
    grid-template-columns: min(91px, 23.3333333333vw) 1fr;
  }
}
.p-campus-life-accordion__article-img {
  aspect-ratio: 91/61;
  object-fit: cover;
  display: block;
  width: 100%;
  height: 100%;
}
.p-campus-life-accordion__article-course {
  color: #45b035;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.4285714286;
  margin-bottom: 0.125rem;
}
@media (max-width: 767px) {
  .p-campus-life-accordion__article-course {
    margin-bottom: min(2px, 0.5128205128vw);
  }
}
.p-campus-life-accordion__article-school {
  color: #45b035;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.4285714286;
}
.p-campus-life-accordion__article-text {
  color: #45b035;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5625;
  margin-bottom: 0.8125rem;
}
@media (max-width: 767px) {
  .p-campus-life-accordion__article-text {
    margin-bottom: min(13px, 3.3333333333vw);
  }
}

/* .p-pc-sidebar
----------------------------------- */
@media (max-width: 767px) {
  .p-pc-sidebar {
    display: none;
  }
}
@media (min-width: 768px) {
  .p-pc-sidebar {
    position: relative;
    display: grid;
    place-content: center;
    width: 100%;
    height: inherit;
  }
}
.p-pc-sidebar__link {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  text-decoration: none;
  transition: opacity 0.3s;
}
@media (any-hover: hover) {
  .p-pc-sidebar__link:hover {
    opacity: 0.7;
  }
}
.p-pc-sidebar__inner {
  display: flex;
  align-items: flex-start;
  column-gap: 0.625rem;
}
.p-pc-sidebar__icon {
  font-size: 1.5rem;
  line-height: 1.1666666667;
}
.p-pc-sidebar__contents {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.p-pc-sidebar__cate {
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.5;
  color: #009b77;
}
.p-pc-sidebar__cate:not(:last-child) {
  margin-bottom: 15px;
}
.p-pc-sidebar__title {
  font-size: 1.875rem;
  font-weight: 700;
  line-height: 1.1666666667;
  color: #009b77;
  text-align: left;
}
.p-pc-sidebar__sub {
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.3888888889;
  color: #009b77;
  text-align: left;
}
@media (min-width: 768px) {
  .p-pc-sidebar__sub {
    margin-top: 0.625rem;
  }
}
@media (max-width: 767px) {
  .p-pc-sidebar__nav {
    display: none;
  }
}
@media (min-width: 768px) {
  .p-pc-sidebar__nav {
    position: relative;
    display: grid;
    place-content: start center;
    width: 100%;
    height: 100%;
  }
  .l-sp-cont .p-pc-sidebar__nav {
    max-height: 18.4375rem;
    padding: 0 1.25rem;
    overflow-y: auto;
  }
}
.p-pc-sidebar__nav-title {
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.2222222222;
  color: #009b77;
}
@media (min-width: 768px) {
  .p-pc-sidebar__nav-title {
    margin-bottom: 1rem;
  }
}
@media (min-width: 768px) {
  .p-pc-sidebar__nav-list, .p-pc-sidebar__nav-list--all-bdr {
    display: block flex;
    flex-direction: column;
    gap: 0;
    min-width: 176px;
  }
}
@media (min-width: 768px) {
  .p-pc-sidebar__nav-item {
    position: relative;
    border-bottom: 1px solid #009b77;
  }
  .p-pc-sidebar__nav-item:last-child {
    border-bottom: none;
  }
  .p-pc-sidebar__nav-list--all-bdr .p-pc-sidebar__nav-item:last-child {
    border-bottom: 1px solid #009b77;
  }
}
.p-pc-sidebar__nav-link {
  position: relative;
  display: block;
  height: inherit;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.5;
  color: #009b77;
}
@media (min-width: 768px) {
  .p-pc-sidebar__nav-link {
    position: relative;
    padding-block: 0.5625rem;
    padding-left: 1em;
  }
  .p-pc-sidebar__nav-link::before {
    position: absolute;
    top: 0.5rem;
    left: 0;
    display: block;
    content: "-";
  }
}
@media (min-width: 768px) and (any-hover: hover) {
  .p-pc-sidebar__nav-link:hover {
    opacity: 0.7;
  }
}
.p-pc-sidebar__nav-boxs {
  display: block flex;
  column-gap: 23px;
}
.p-pc-sidebar__nav-boxs .p-pc-sidebar__nav-list, .p-pc-sidebar__nav-boxs .p-pc-sidebar__nav-list--all-bdr {
  flex: 1 1 5%;
  min-width: 0;
}

.p-single-common {
  background-color: #f5f5f5;
  overflow-x: clip;
  margin-inline: auto;
}
.p-single-common__fv {
  position: relative;
}
.p-single-common__fv-img-wrap {
  width: 100%;
  aspect-ratio: 390/275;
  overflow: hidden;
}
.p-single-common__fv-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: bottom;
}
.p-single-common__fv-content {
  width: 100%;
}
.p-single-common__content img {
  position: relative;
  max-width: 100%;
  height: auto;
  display: block;
}
.p-single-common__content h2 {
  color: #009b77;
  font-weight: 700;
  line-height: 1.6666666667;
}
.p-single-common__content h2:first-child {
  margin-top: 0;
}
.p-single-common__content p {
  color: #009b77;
  font-weight: 400;
  line-height: 1.875;
}
.p-single-common__btn {
  position: relative;
  z-index: 1;
}
@media (min-width: 768px) {
  .p-single-common {
    max-width: 24.375rem;
  }
  .p-single-common__fv-content {
    margin-top: 1.5rem;
  }
  .p-single-common__fv-inner {
    padding: 0 1rem;
  }
  .p-single-common__content {
    margin-top: 1.5rem;
  }
  .p-single-common__content-inner {
    padding: 0 1.25rem;
  }
  .p-single-common__content img {
    border-radius: 0.3125rem;
    margin-top: 1.9375rem;
  }
  .p-single-common__content h2 {
    font-size: 1.125rem;
    margin-top: 1.75rem;
  }
  .p-single-common__content p {
    font-size: 1rem;
    margin-top: 0.5625rem;
  }
  .p-single-common__btn {
    transform: translateY(1.5rem);
    margin-top: 2.125rem;
    margin-bottom: 2.75rem;
  }
}
@media (max-width: 767px) {
  .p-single-common {
    max-width: none;
  }
  .p-single-common__fv-content {
    margin-top: min(24px, 6.1538461538vw);
  }
  .p-single-common__fv-inner {
    padding: 0 min(16px, 4.1025641026vw);
  }
  .p-single-common__content {
    margin-top: min(24px, 6.1538461538vw);
  }
  .p-single-common__content-inner {
    padding: 0 min(20px, 5.1282051282vw);
  }
  .p-single-common__content img {
    border-radius: min(5px, 1.2820512821vw);
    margin-top: min(31px, 7.9487179487vw);
  }
  .p-single-common__content h2 {
    font-size: min(18px, 4.6153846154vw);
    margin-top: min(28px, 7.1794871795vw);
  }
  .p-single-common__content p {
    font-size: min(16px, 4.1025641026vw);
    margin-top: min(9px, 2.3076923077vw);
  }
  .p-single-common__btn {
    transform: translateY(min(24px, 6.1538461538vw));
    margin-top: min(34px, 8.7179487179vw);
    margin-bottom: min(44px, 11.2820512821vw);
  }
}

.p-single-common-dept {
  overflow-x: visible;
  background: linear-gradient(to bottom, #f5f5f5 0% 6%, #fff 6% 100%);
}
.p-single-common-dept__lead {
  color: #45b035;
  font-weight: 500;
  line-height: 1.6666666667;
}
.p-single-common-dept__lead--org {
  color: #f08300;
}
.p-single-common-dept__lead--yel {
  color: #f8b500;
}
.p-single-common-dept__title {
  color: #45b035;
  font-weight: 700;
}
.p-single-common-dept__title--org {
  color: #f08300;
}
.p-single-common-dept__title--yel {
  color: #f8b500;
}
.p-single-common-dept__list {
  font-weight: 500;
  line-height: 1.6666666667;
  list-style: none;
  display: grid;
  grid-auto-flow: column;
  grid-template-rows: repeat(3, auto);
}
.p-single-common-dept__img-wrap {
  overflow: hidden;
  aspect-ratio: 390/233;
}
.p-single-common-dept__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
@media (min-width: 768px) {
  .p-single-common-dept {
    margin-top: 3.125rem;
    padding: 0 1.75rem;
  }
  .p-single-common-dept__content {
    margin-top: 2.25rem;
  }
  .p-single-common-dept__lead {
    font-size: 0.9375rem;
    margin-bottom: 0.75rem;
  }
  .p-single-common-dept__title {
    font-size: 1.5625rem;
  }
  .p-single-common-dept__list {
    font-size: 0.75rem;
    margin-top: 1.1875rem;
  }
  .p-single-common-dept__img-wrap {
    width: calc(100% + 3.5rem);
    margin-left: -1.75rem;
    margin-right: -1.75rem;
    margin-top: 1.8125rem;
  }
}
@media (max-width: 767px) {
  .p-single-common-dept {
    margin-top: min(50px, 12.8205128205vw);
    padding: 0 min(28px, 7.1794871795vw);
  }
  .p-single-common-dept__content {
    margin-top: min(36px, 9.2307692308vw);
  }
  .p-single-common-dept__lead {
    font-size: min(15px, 3.8461538462vw);
    margin-bottom: min(12px, 3.0769230769vw);
  }
  .p-single-common-dept__title {
    font-size: min(25px, 6.4102564103vw);
  }
  .p-single-common-dept__list {
    font-size: min(12px, 3.0769230769vw);
    margin-top: min(19px, 4.8717948718vw);
  }
  .p-single-common-dept__img-wrap {
    width: calc(100% + 2 * min(28px, 7.1794871795vw));
    margin-left: min(-28px, -7.1794871795vw);
    margin-right: min(-28px, -7.1794871795vw);
    margin-top: min(29px, 7.4358974359vw);
  }
}

.p-single-campus-life__title {
  color: #009b77;
  font-weight: 700;
  line-height: 1.5909090909;
}
.p-single-campus-life__dept {
  display: inline-block;
  color: #fff;
  font-weight: 700;
  line-height: 1;
  background-color: #45b035;
}
.p-single-campus-life__dept--org {
  background-color: #f08300;
}
.p-single-campus-life__dept--yel {
  background-color: #f8b500;
}
.p-single-campus-life__info {
  color: #009b77;
  font-weight: 500;
  line-height: 1.3846153846;
}
@media (min-width: 768px) {
  .p-single-campus-life__title {
    font-size: 1.375rem;
  }
  .p-single-campus-life__dept {
    font-size: 0.875rem;
    border-radius: 0.3125rem;
    box-shadow: 0.1875rem 0.1875rem 0.625rem 0 rgba(0, 0, 0, 0.05);
    margin-top: 0.9375rem;
    padding: 0.4375rem 0.9375rem;
  }
  .p-single-campus-life__dept--yel {
    padding: 0.4375rem 1.6875rem;
  }
  .p-single-campus-life__info {
    font-size: 0.8125rem;
    margin-top: 0.5rem;
  }
}
@media (max-width: 767px) {
  .p-single-campus-life__title {
    font-size: min(22px, 5.641025641vw);
  }
  .p-single-campus-life__dept {
    font-size: min(14px, 3.5897435897vw);
    border-radius: min(5px, 1.2820512821vw);
    box-shadow: min(3px, 0.7692307692vw) min(3px, 0.7692307692vw) min(10px, 2.5641025641vw) 0 rgba(0, 0, 0, 0.05);
    margin-top: min(15px, 3.8461538462vw);
    padding: min(7px, 1.7948717949vw) min(15px, 3.8461538462vw);
  }
  .p-single-campus-life__dept--yel {
    padding: min(7px, 1.7948717949vw) min(27px, 6.9230769231vw);
  }
  .p-single-campus-life__info {
    font-size: min(13px, 3.3333333333vw);
    margin-top: min(8px, 2.0512820513vw);
  }
}

.p-single-career-story__company {
  color: #009b77;
  font-weight: 700;
  line-height: 1.5625;
}
.p-single-career-story__title {
  color: #009b77;
  font-weight: 700;
  line-height: 1.5909090909;
}
.p-single-career-story__badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-weight: 700;
  line-height: 3.5714285714;
}
.p-single-career-story__badge--green {
  background-color: #45b035;
}
.p-single-career-story__badge--orange {
  background-color: #f08300;
}
.p-single-career-story__badge--yellow {
  background-color: #f8b500;
}
.p-single-career-story__info {
  color: #009b77;
  font-weight: 500;
  line-height: 1.5714285714;
}
@media (min-width: 768px) {
  .p-single-career-story__company {
    font-size: 1rem;
  }
  .p-single-career-story__title {
    font-size: 1.375rem;
    margin-top: 0.9375rem;
  }
  .p-single-career-story__meta {
    border-bottom: 0.0625rem solid #009b77;
    margin-top: 0.9375rem;
    padding-bottom: 2.625rem;
  }
  .p-single-career-story__badge {
    font-size: 0.875rem;
    border-radius: 0.3125rem;
    box-shadow: 0.1875rem 0.1875rem 0.625rem 0 rgba(0, 0, 0, 0.05);
    padding: 0 1.3125rem;
    height: 1.75rem;
  }
  .p-single-career-story__badge--yellow {
    padding: 0 1.3125rem;
    height: 1.75rem;
  }
  .p-single-career-story__info {
    font-size: 0.875rem;
    margin-top: 0.3125rem;
  }
  .p-single-career-story__content {
    margin-top: 2.4375rem;
  }
}
@media (max-width: 767px) {
  .p-single-career-story__company {
    font-size: min(16px, 4.1025641026vw);
  }
  .p-single-career-story__title {
    font-size: min(22px, 5.641025641vw);
    margin-top: min(15px, 3.8461538462vw);
  }
  .p-single-career-story__meta {
    border-bottom: min(1px, 0.2564102564vw) solid #009b77;
    margin-top: min(15px, 3.8461538462vw);
    padding-bottom: min(42px, 10.7692307692vw);
  }
  .p-single-career-story__badge {
    font-size: min(14px, 3.5897435897vw);
    border-radius: min(5px, 1.2820512821vw);
    box-shadow: min(3px, 0.7692307692vw) min(3px, 0.7692307692vw) min(10px, 2.5641025641vw) 0 rgba(0, 0, 0, 0.05);
    padding: 0 min(21px, 5.3846153846vw);
    height: min(28px, 7.1794871795vw);
  }
  .p-single-career-story__badge--yellow {
    padding: 0 min(21px, 5.3846153846vw);
    height: min(28px, 7.1794871795vw);
  }
  .p-single-career-story__info {
    font-size: min(14px, 3.5897435897vw);
    margin-top: min(5px, 1.2820512821vw);
  }
  .p-single-career-story__content {
    margin-top: min(39px, 10vw);
  }
}

/* .p-single-documentary
----------------------------------- */
.p-single-documentary__company {
  color: #009b77;
  font-weight: 700;
  line-height: 1.7857142857;
}
.p-single-documentary__title {
  color: #009b77;
  font-weight: 700;
  line-height: 1.5909090909;
}
.p-single-documentary__subtitle {
  background-color: #45b035;
  color: #fff;
  font-weight: 700;
  display: inline-block;
}
.p-single-documentary__subtitle--org {
  background-color: #f08300;
}
.p-single-documentary__subtitle--yel {
  background-color: #f8b500;
}
.p-single-documentary__info {
  color: #009b77;
  font-weight: 500;
  line-height: 1.5384615385;
}
.p-single-documentary__btn .c-btn__btn {
  background-color: transparent;
  border-color: #009b77;
  color: #009b77;
}
.p-single-documentary__btn .c-btn__btn .p-single-documentary__btn-text {
  text-decoration: underline;
}
@media (any-hover: hover) {
  .p-single-documentary__btn .c-btn__btn:hover {
    background-color: #009b77;
    color: #fff;
  }
}
@media (min-width: 768px) {
  .p-single-documentary__company {
    font-size: 0.875rem;
    border-bottom: 0.0625rem solid #009b77;
    padding-bottom: 0.1875rem;
  }
  .p-single-documentary__title {
    margin-top: 0.4375rem;
    font-size: 1.375rem;
  }
  .p-single-documentary__subtitle {
    font-size: 0.875rem;
    box-shadow: 0.1875rem 0.1875rem 0.625rem 0 rgba(0, 0, 0, 0.05);
    margin-top: 0.6875rem;
    padding: 0.4375rem 0.9375rem;
    border-radius: 0.3125rem;
  }
  .p-single-documentary__info {
    margin-top: 0.5rem;
    font-size: 0.8125rem;
  }
  .p-single-documentary__wrap {
    border-bottom: 0.0625rem solid #009b77;
    border-top: 0.0625rem solid #009b77;
    margin-top: 2.5rem;
    padding-top: 2.5rem;
    padding-bottom: 4.375rem;
    margin-bottom: 3.125rem;
  }
  .p-single-documentary__btn {
    margin-top: 1.125rem;
    padding-inline: 0.5rem;
  }
}
@media (max-width: 767px) {
  .p-single-documentary__company {
    font-size: min(14px, 3.5897435897vw);
    border-bottom: min(1px, 0.2564102564vw) solid #009b77;
    padding-bottom: min(3px, 0.7692307692vw);
  }
  .p-single-documentary__title {
    margin-top: min(7px, 1.7948717949vw);
    font-size: min(22px, 5.641025641vw);
  }
  .p-single-documentary__subtitle {
    font-size: min(14px, 3.5897435897vw);
    box-shadow: min(3px, 0.7692307692vw) min(3px, 0.7692307692vw) min(10px, 2.5641025641vw) 0 rgba(0, 0, 0, 0.05);
    margin-top: min(11px, 2.8205128205vw);
    padding: min(7px, 1.7948717949vw) min(15px, 3.8461538462vw);
    border-radius: min(5px, 1.2820512821vw);
  }
  .p-single-documentary__info {
    margin-top: min(8px, 2.0512820513vw);
    font-size: min(13px, 3.3333333333vw);
  }
  .p-single-documentary__wrap {
    border-bottom: min(1px, 0.2564102564vw) solid #009b77;
    border-top: min(1px, 0.2564102564vw) solid #009b77;
    margin-top: min(40px, 10.2564102564vw);
    padding-top: min(40px, 10.2564102564vw);
    padding-bottom: min(70px, 17.9487179487vw);
    margin-bottom: min(50px, 12.8205128205vw);
  }
  .p-single-documentary__btn {
    margin-top: min(18px, 4.6153846154vw);
    padding-inline: min(8px, 2.0512820513vw);
  }
}

/* .p-news-single
----------------------------------- */
.p-news-single .c-btn__btn,
.p-news-single .c-btn__btn--campus span {
  padding-right: 10px;
}
.p-news-single .c-btn__btn--campus::before, .p-news-single .c-btn__btn--step::before {
  right: 10px;
}
.p-news-single .p-breadcrumbs__item > span {
  color: #1e1e1e;
}
.p-news-single__title {
  font-weight: 700;
  line-height: 1.25;
  color: #009B77;
}
.p-news-single__meta {
  display: flex;
  align-items: center;
}
.p-news-single__date {
  font-family: "Commissioner", "Noto Sans JP", sans-serif;
  font-weight: 500;
  color: #009B77;
  letter-spacing: 0.1em;
}
.p-news-single__tag {
  display: inline-block;
  font-weight: 500;
  color: #009B77;
  text-align: center;
  background: #f5f5f5;
}
.p-news-single__body {
  line-height: 1.875;
  color: #1e1e1e;
}
.p-news-single__body :where(p):not(:first-child) {
  margin-top: 2em;
}
.p-news-single__body :where(a) {
  text-decoration: underline;
}
.p-news-single__body :where(a) :where(img) {
  transition: opacity 0.1s linear;
}
@media (any-hover: hover) {
  .p-news-single__body :where(a):hover {
    text-decoration: none;
  }
  .p-news-single__body :where(a):hover :where(img) {
    opacity: 0.7;
  }
}
.p-news-single__images {
  display: flex;
  flex-direction: column;
}
.p-news-single__img {
  margin: 0;
}
.p-news-single__img img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: cover;
}
@media (min-width: 768px) {
  .p-news-single__title {
    font-size: 1.5625rem;
  }
  .p-news-single__meta {
    gap: 0.625rem;
    margin-top: 2.5625rem;
  }
  .p-news-single__date {
    font-size: 1rem;
  }
  .p-news-single__tag {
    width: 8.75rem;
    padding: 0.25rem 0.5rem;
    font-size: 0.8125rem;
    border-radius: 0.3125rem;
  }
  .p-news-single__body {
    margin-top: 2.25rem;
    font-size: 1rem;
  }
  .p-news-single__images {
    flex-direction: row;
    gap: 1.875rem;
    margin-top: 3.25rem;
  }
  .p-news-single__img {
    flex: 1;
    aspect-ratio: 325/228;
  }
}
@media (max-width: 767px) {
  .p-news-single {
    margin-top: min(38px, 9.7435897436vw);
  }
  .p-news-single .c-btn__btn,
  .p-news-single .c-btn__btn--campus {
    width: min(333px, 85.3846153846vw);
    margin-inline: auto;
  }
  .p-news-single__title {
    font-size: min(25px, 6.4102564103vw);
    line-height: 1.6;
  }
  .p-news-single__meta {
    gap: min(10px, 2.5641025641vw);
    margin-top: min(12px, 3.0769230769vw);
  }
  .p-news-single__date {
    font-size: min(16px, 4.1025641026vw);
  }
  .p-news-single__tag {
    width: min(140px, 35.8974358974vw);
    padding: min(4px, 1.0256410256vw) min(8px, 2.0512820513vw);
    font-size: min(13px, 3.3333333333vw);
    border-radius: min(5px, 1.2820512821vw);
  }
  .p-news-single__body {
    margin-top: min(26px, 6.6666666667vw);
    font-size: min(16px, 4.1025641026vw);
  }
  .p-news-single__images {
    gap: min(14px, 3.5897435897vw);
    margin-top: min(13px, 3.3333333333vw);
  }
  .p-news-single__img {
    aspect-ratio: 359/252;
  }
}

/* .p-event-reports
----------------------------------- */
.p-event-reports .p-common-archive__header {
  padding-block: 2.125rem 0;
}
.p-event-reports .p-common-archive__header-ttl {
  margin-top: 0;
  line-height: 1.3333333333;
}
.p-event-reports__list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2rem 2.0625rem;
}
.p-event-reports__item {
  border: 1px solid #009B77;
  border-radius: 5px;
  overflow: hidden;
  background-color: #fff;
}
.p-event-reports__item-link {
  text-decoration: none;
  color: inherit;
  display: block;
  transition: opacity 0.2s;
}
@media (any-hover: hover) {
  .p-event-reports__item-link:hover {
    opacity: 0.7;
  }
}
.p-event-reports__item-img {
  aspect-ratio: 325/180;
  overflow: hidden;
}
.p-event-reports__item-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-event-reports__item-content {
  padding: 1.1875rem 1.5625rem 1.875rem;
}
.p-event-reports__item-meta {
  display: flex;
  align-items: center;
  gap: 0.9375rem;
  margin-bottom: 0.625rem;
}
.p-event-reports__item-date {
  font-family: "Commissioner", "Noto Sans JP", sans-serif;
  font-size: 1rem;
  color: #009B77;
  font-weight: 500;
  letter-spacing: 0.1em;
}
.p-event-reports__item-tag {
  background-color: #f5f5f5;
  color: #009B77;
  font-size: 0.8125rem;
  font-weight: 500;
  padding: 0.25rem 0.875rem;
  border-radius: 0.3125rem;
}
.p-event-reports__item-title {
  font-size: 1rem;
  font-weight: 500;
  color: #009B77;
  line-height: 1.5;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
@media (max-width: 767px) {
  .p-event-reports .p-common-archive__header {
    padding-bottom: min(29px, 7.4358974359vw);
  }
  .p-event-reports__list {
    grid-template-columns: 1fr;
    gap: min(25px, 6.4102564103vw);
    margin-top: min(40px, 10.2564102564vw);
    padding-inline: min(17px, 4.358974359vw);
  }
  .p-event-reports__item-img {
    aspect-ratio: 325/180;
  }
  .p-event-reports__item-content {
    padding: min(20px, 5.1282051282vw) min(25px, 6.4102564103vw) min(30px, 7.6923076923vw);
  }
  .p-event-reports__item-meta {
    gap: min(15px, 3.8461538462vw);
    margin-bottom: min(10px, 2.5641025641vw);
  }
  .p-event-reports__item-date {
    font-size: min(16px, 4.1025641026vw);
  }
  .p-event-reports__item-tag {
    font-size: min(13px, 3.3333333333vw);
    padding: min(4px, 1.0256410256vw) min(14px, 3.5897435897vw);
  }
  .p-event-reports__item-title {
    font-size: min(16px, 4.1025641026vw);
  }
}

/* .p-apartment
----------------------------------- */
.p-apartment {
  padding-bottom: min(60px, 15.3846153846vw);
  color: #009b77;
}
.p-apartment__lede {
  padding-inline: min(16px, 4.1025641026vw);
  margin-top: min(48px, 12.3076923077vw);
  font-size: 1.125em;
  font-weight: 500;
  line-height: 1.6666666667;
  text-align: center;
}
.p-apartment__sec {
  padding-inline: min(15px, 3.8461538462vw);
  margin-top: min(38px, 9.7435897436vw);
}
.p-apartment__sec + .p-apartment__sec {
  margin-top: min(60px, 15.3846153846vw);
}
.p-apartment__h {
  margin-bottom: min(20px, 5.1282051282vw);
}
.p-apartment__partners {
  font-size: 1.125em;
  font-weight: 700;
  line-height: 1.6666666667;
}
.p-apartment__partners-name a {
  text-decoration: underline;
}
@media (any-hover: hover) {
  .p-apartment__partners-name a:hover {
    text-decoration: none;
  }
}
.p-apartment__partners-info {
  padding-left: 2em;
}
.p-apartment__btn {
  margin-top: min(20px, 5.1282051282vw);
}
.p-apartment__btn--scholarship {
  margin-top: min(34px, 8.7179487179vw);
}
.p-apartment__txt {
  font-size: 1em;
  line-height: 1.875;
}
.p-apartment__sh:nth-of-type(n+2) {
  margin-top: min(20px, 5.1282051282vw);
}
.p-apartment__sh + .p-apartment__txt {
  margin-top: min(5px, 1.2820512821vw);
}
@media (min-width: 768px) {
  .p-apartment {
    font-size: 1rem;
  }
}
@media (max-width: 767px) {
  .p-apartment {
    font-size: min(16px, 4.1025641026vw);
  }
}

/* .p-campus-calender
----------------------------------- */
.p-campus-calender {
  padding-bottom: min(58px, 14.8717948718vw);
}
.p-campus-calender__legend {
  position: sticky;
  top: calc(var(--header-height) + min(15px, 3.8461538462vw));
  z-index: 2;
}
.p-campus-calender__legend-list {
  display: block flex;
  column-gap: 1em;
  align-items: center;
  justify-content: center;
  width: fit-content;
  padding-inline: min(13px, 3.3333333333vw);
  margin-inline: auto;
  font-size: 0.9375em;
  font-weight: 500;
  line-height: 2.2;
  color: #009b77;
  background: #fff;
  border-radius: min(7px, 1.7102564103vw);
  box-shadow: 2px 2px 7px rgba(0, 0, 0, 0.05);
}
.p-campus-calender__legend-item::before {
  content: "● ";
}
.p-campus-calender__legend-item[data-grade="1"]::before {
  color: #45b035;
}
.p-campus-calender__legend-item[data-grade="2"]::before {
  color: #f08300;
}
.p-campus-calender__legend-item[data-grade=common]::before {
  color: #f8b500;
}
.p-campus-calender__cont {
  position: relative;
  z-index: 1;
  padding-inline: min(20px, 5.1282051282vw);
  margin-top: min(29px, 7.4358974359vw);
}
.p-campus-calender__sec {
  position: relative;
  display: block grid;
  grid-template-columns: min(50px, 12.8205128205vw) 1fr;
  column-gap: min(34px, 8.7179487179vw);
  color: #009b77;
  scroll-margin-top: min(40px, 10.2564102564vw);
}
.p-campus-calender__sec:not(:last-child) {
  padding-bottom: min(30px, 7.6923076923vw);
}
.p-campus-calender__sec:not(:last-child)::before {
  position: absolute;
  inset-block: 0;
  left: min(27px, 6.9230769231vw);
  display: block;
  width: 2px;
  content: "";
  background: linear-gradient(to bottom, #009b77 2px, transparent 2px) repeat-y left top;
  background-size: 2px 6px;
}
.p-campus-calender__sec-head, .p-campus-calender__sec-body {
  position: relative;
  z-index: 2;
}
.p-campus-calender__month {
  width: 100%;
  font-size: 0.9375em;
  font-weight: 500;
  line-height: 2.2;
  text-align: center;
  background: #ffec65;
  border-radius: min(7px, 1.7102564103vw);
  box-shadow: 2px 2px 7px rgba(0, 0, 0, 0.05);
}
.p-campus-calender__item:nth-of-type(n+2) {
  margin-top: min(30px, 7.6923076923vw);
}
.p-campus-calender__event {
  display: block;
  padding-left: 1.25em;
  font-size: 1.25em;
  font-weight: 500;
  line-height: 1.5;
  text-indent: -1.25em;
}
.p-campus-calender__event::before {
  color: #ffec65;
  content: "● ";
}
.p-campus-calender__event[data-grade="1"]::before {
  color: #45b035;
}
.p-campus-calender__event[data-grade="2"]::before {
  color: #f08300;
}
.p-campus-calender__event[data-grade=common]::before {
  color: #f8b500;
}
.p-campus-calender__event .no-indent {
  display: block;
}
.p-campus-calender__fig {
  margin-top: min(13px, 3.3333333333vw);
}
.p-campus-calender__fig img {
  display: block;
  width: 100%;
  border-radius: min(5px, 1.2820512821vw);
}
.p-campus-calender__txt {
  font-size: 1em;
  line-height: 1.5625;
}
.p-campus-calender__txt:not(:first-child) {
  margin-top: min(13px, 3.3333333333vw);
}
@media (min-width: 768px) {
  .p-campus-calender {
    font-size: 1rem;
  }
}
@media (max-width: 767px) {
  .p-campus-calender {
    font-size: min(16px, 4.1025641026vw);
  }
}

/* .p-campus-club
----------------------------------- */
.p-campus-club {
  padding-bottom: min(56px, 14.358974359vw);
}
.p-campus-club__sec {
  position: relative;
  z-index: 1;
  padding-inline: min(20px, 5.1282051282vw);
  margin-top: min(70px, 17.9487179487vw);
  color: #009b77;
  scroll-margin-top: min(40px, 10.2564102564vw);
}
.p-campus-club__sec + .p-campus-club__sec {
  margin-top: min(52px, 13.3333333333vw);
}
.p-campus-club__sec[data-club=sports] {
  color: #45b035;
}
.p-campus-club__sec[data-club=culture] {
  color: #f08300;
}
.p-campus-club__txt {
  font-size: 1em;
  line-height: 1.5714285714;
}
.p-campus-club__h + .p-campus-club__txt {
  margin-top: min(18px, 4.6153846154vw);
}
.p-campus-club__bloc {
  margin-top: min(35px, 8.9743589744vw);
}
.p-campus-club__bloc + .p-campus-club__bloc {
  margin-top: min(38px, 9.7435897436vw);
}
.p-campus-club__fig img {
  display: block;
  width: 100%;
  border-radius: min(5px, 1.2820512821vw);
}
.p-campus-club__name {
  margin-top: min(15px, 3.8461538462vw);
  font-size: 1.2857142857em;
  font-weight: 700;
  line-height: 1.1111111111;
}
.p-campus-club__name + * {
  margin-top: min(11px, 2.8205128205vw);
}
.p-campus-club__club-list {
  margin-top: 0.6111111111em;
  font-size: 1.2857142857em;
  font-weight: 700;
  line-height: 1.6666666667;
}
.p-campus-club__btn {
  margin-top: min(54px, 13.8461538462vw);
}
.p-campus-club__btn a {
  margin-inline: auto;
}
@media (min-width: 768px) {
  .p-campus-club__sec {
    font-size: 0.875rem;
  }
}
@media (max-width: 767px) {
  .p-campus-club__sec {
    font-size: min(14px, 3.5897435897vw);
  }
}

/* .p-gakuyukai
----------------------------------- */
.p-gakuyukai {
  padding-bottom: min(100px, 25.641025641vw);
}
.p-gakuyukai__sec {
  padding-inline: min(15px, 3.8461538462vw);
  margin-top: min(47px, 12.0512820513vw);
  color: #009b77;
}
.p-gakuyukai__sec + .p-gakuyukai__sec {
  margin-top: min(40px, 10.2564102564vw);
}
.p-gakuyukai__txt {
  font-size: 1em;
  line-height: 1.875;
}
.p-gakuyukai__txt:not(:first-child) {
  margin-top: min(20px, 5.1282051282vw);
}
.p-gakuyukai__bloc {
  margin-top: min(30px, 7.6923076923vw);
}
.p-gakuyukai__bloc + .p-gakuyukai__bloc {
  margin-top: min(35px, 8.9743589744vw);
}
.p-gakuyukai__fig img {
  display: block;
  width: 100%;
  border-radius: min(5px, 1.2820512821vw);
}
.p-gakuyukai__sh {
  margin-top: min(5px, 1.2820512821vw);
}
.p-gakuyukai__sh + .p-gakuyukai__txt {
  margin-top: min(5px, 1.2820512821vw);
}
.p-gakuyukai__btn {
  margin-top: min(63px, 16.1538461538vw);
}
.p-gakuyukai__btn a {
  margin-inline: auto;
}
@media (min-width: 768px) {
  .p-gakuyukai__sec {
    font-size: 1rem;
  }
}
@media (max-width: 767px) {
  .p-gakuyukai__sec {
    font-size: min(16px, 4.1025641026vw);
  }
}

/* .p-campus-restaurant
----------------------------------- */
.p-campus-restaurant {
  padding-bottom: min(50px, 12.8205128205vw);
}
.p-campus-restaurant__head {
  margin-inline: unset !important;
}
.p-campus-restaurant__ttl.p-campus-head__ttl {
  font-size: 1.3333333333em;
}
.p-campus-restaurant__logo {
  width: min(365px, 93.5897435897vw);
  margin: min(8px, 2.0512820513vw) auto 0;
  position: relative;
  z-index: 2;
}
.p-campus-restaurant__logo img {
  width: 100%;
}
.p-campus-restaurant__slider {
  width: 100%;
  margin-top: -32px;
}
.p-campus-restaurant__slide {
  width: 100%;
}
.p-campus-restaurant__inner {
  padding: 0 min(15px, 3.8461538462vw);
}
.p-campus-restaurant__intro {
  margin-top: min(32px, 8.2051282051vw);
  padding-bottom: min(50px, 12.8205128205vw);
  overflow: hidden;
}
.p-campus-restaurant__intro-txt {
  color: #009b77;
  font-size: 1.0714285714em;
  font-weight: 500;
  line-height: 1.8666666667;
  text-align: center;
}
.p-campus-restaurant__carousel {
  margin-top: min(30px, 7.6923076923vw);
}
.p-campus-restaurant__carousel-wrap, .p-campus-restaurant__carousel-group {
  display: block flex;
  align-items: center;
}
.p-campus-restaurant__carousel-wrap {
  width: max-content;
  animation: carousel 30s linear infinite;
  will-change: animation;
}
.p-campus-restaurant__carousel-group {
  width: max-content;
}
.p-campus-restaurant__img {
  width: min(200px, 51.2820512821vw);
  padding: 0 min(10px, 2.5641025641vw);
}
.p-campus-restaurant__img img {
  width: 100%;
  border-radius: min(5px, 1.2820512821vw);
}
.p-campus-restaurant__sec {
  margin-top: min(46px, 11.7948717949vw);
}
.p-campus-restaurant__sec-ttl {
  color: #009b77;
  font-size: 1.7857142857em;
  font-weight: 500;
  line-height: 1.332;
  padding-bottom: min(8px, 2.0512820513vw);
  border-bottom: solid 1px #009b77;
}
.p-campus-restaurant__sec-txt {
  color: #009b77;
  line-height: 1.5714285714;
  margin-top: min(24px, 6.1538461538vw);
}
.p-campus-restaurant__sec-img-wrap {
  margin-top: min(22px, 5.641025641vw);
  display: grid;
  gap: min(10px, 2.5641025641vw);
}
.p-campus-restaurant__sec-img-wrap.is-grid {
  grid-template-columns: repeat(2, 1fr);
}
.p-campus-restaurant__sec-img-wrap.is-lead-grid {
  grid-template-columns: repeat(2, 1fr);
}
.p-campus-restaurant__sec-img-wrap.is-lead-grid .p-campus-restaurant__sec-img:first-of-type {
  grid-column: 1/-1;
}
.p-campus-restaurant__sec-img {
  width: 100%;
}
.p-campus-restaurant__sec-img img {
  width: 100%;
  border-radius: min(5px, 1.2820512821vw);
}
.p-campus-restaurant__btn {
  color: #009b77;
  width: min(332px, 85.1282051282vw);
  margin: min(32px, 8.2051282051vw) auto;
  background-color: #fff;
}
@media (any-hover: hover) {
  .p-campus-restaurant__btn:hover {
    color: #fff;
    background-color: #009b77;
  }
}
.p-campus-restaurant__back-btn {
  width: 100%;
  position: absolute;
  bottom: -25px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  z-index: 2;
}
@media (min-width: 768px) {
  .p-campus-restaurant {
    font-size: 0.875rem;
  }
  .p-campus-restaurant__back-btn {
    padding-inline: min(10px, 2.5641025641vw);
  }
  .p-campus-restaurant__back-btn::before, .p-campus-restaurant__back-btn::after {
    width: min(18px, 4.6153846154vw);
  }
  .p-campus-restaurant__back-btn .c-btn__btn {
    flex: 1 1 5%;
    width: auto;
    min-width: 0;
    height: min(50px, 12.8205128205vw);
    font-size: min(16px, 4.1025641026vw);
  }
  .p-campus-restaurant__back-btn .c-btn__btn::before {
    right: min(36px, 9.2307692308vw);
    width: min(15px, 3.8461538462vw);
  }
}
@media (max-width: 767px) {
  .p-campus-restaurant {
    font-size: min(14px, 3.5897435897vw);
  }
}

/* .p-campus-ict
----------------------------------- */
.p-campus-ict {
  padding-bottom: min(100px, 25.641025641vw);
  position: relative;
}
.p-campus-ict__inner {
  padding: 0 min(20px, 5.1282051282vw);
}
.p-campus-ict__intro {
  margin-top: min(28px, 7.1794871795vw);
  padding-top: min(48px, 12.3076923077vw);
  border-top: solid 1px #009b77;
}
.p-campus-ict__intro-ttl {
  color: #009b77;
  font-size: 1.625em;
  font-weight: 700;
  text-align: center;
  line-height: 1.3461538462;
}
.p-campus-ict__intro-txt {
  color: #009b77;
  font-size: 1.125em;
  font-weight: 500;
  text-align: center;
  line-height: 1.6666666667;
  margin-top: min(8px, 2.0512820513vw);
}
.p-campus-ict__sec {
  margin-top: min(48px, 12.3076923077vw);
}
.p-campus-ict__sec-ttl {
  color: #009b77;
  font-size: 1.5625em;
  font-weight: 500;
  line-height: 1.332;
  padding-bottom: min(10px, 2.5641025641vw);
  border-bottom: solid 1px #009b77;
}
.p-campus-ict__sec-txt {
  color: #009b77;
  font-weight: 400;
  line-height: 1.875;
  margin-top: min(20px, 5.1282051282vw);
}
.p-campus-ict__sec-cont {
  margin-top: min(40px, 10.2564102564vw);
}
.p-campus-ict__blk + .p-campus-ict__blk {
  margin-top: min(48px, 12.3076923077vw);
}
.p-campus-ict__blk-ttl {
  color: #009b77;
  font-size: 1.125em;
  font-weight: 700;
  line-height: 1.6666666667;
}
.p-campus-ict__blk-txt {
  color: #009b77;
  font-weight: 400;
  line-height: 1.875;
  margin-top: 14px;
}
.p-campus-ict__blk-img {
  width: 100%;
  margin-top: min(16px, 4.1025641026vw);
}
.p-campus-ict__blk-img img {
  width: 100%;
  border-radius: min(5px, 1.2820512821vw);
}
.p-campus-ict__btn {
  width: 100%;
  position: absolute;
  bottom: -25px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  z-index: 2;
}
@media (min-width: 768px) {
  .p-campus-ict {
    font-size: 1rem;
  }
  .p-campus-ict__btn {
    padding-inline: min(10px, 2.5641025641vw);
  }
  .p-campus-ict__btn::before, .p-campus-ict__btn::after {
    width: min(18px, 4.6153846154vw);
  }
  .p-campus-ict__btn .c-btn__btn {
    flex: 1 1 5%;
    width: auto;
    min-width: 0;
    height: min(50px, 12.8205128205vw);
    font-size: min(16px, 4.1025641026vw);
  }
  .p-campus-ict__btn .c-btn__btn::before {
    right: min(36px, 9.2307692308vw);
    width: min(15px, 3.8461538462vw);
  }
}
@media (max-width: 767px) {
  .p-campus-ict {
    font-size: min(16px, 4.1025641026vw);
  }
}

/* .p-campus-days
----------------------------------- */
.p-campus-days {
  padding-bottom: min(56px, 14.358974359vw);
}
.p-campus-days__sec {
  margin-top: min(38px, 9.7435897436vw);
  scroll-margin-top: min(90px, 23.0769230769vw);
}
.p-campus-days__sec + .p-campus-days__sec {
  margin-top: min(40px, 10.2564102564vw);
}
.p-campus-days__model-img {
  width: min(369px, 94.6153846154vw);
  margin-inline: 0 auto;
}
.p-campus-days__model-img img {
  width: 100%;
  border-radius: 0 min(10px, 2.5641025641vw) min(10px, 2.5641025641vw) 0;
}
.p-campus-days__model-profile {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  flex-direction: column;
  gap: min(8px, 2.0512820513vw);
  margin-top: min(24px, 6.1538461538vw);
  padding: 0 min(24px, 6.1538461538vw);
}
.p-campus-days__model-department {
  color: #fff;
  font-size: 0.875em;
  font-weight: 700;
  border-radius: min(5px, 1.2820512821vw);
  padding: min(6px, 1.5384615385vw) min(15px, 3.8461538462vw);
  box-shadow: 3px 3px 10px rgba(0, 0, 0, 0.05);
}
.p-campus-days__model-department[data-color=lt-green] {
  background-color: #45b035;
}
.p-campus-days__model-department[data-color=orange] {
  background-color: #f08300;
}
.p-campus-days__model-department[data-color=yellow] {
  background-color: #f8b500;
}
.p-campus-days__model-name {
  color: #009b77;
  font-size: 0.8125em;
  font-weight: 500;
  line-height: 1.5384615385;
}
.p-campus-days__model-graph {
  width: min(298px, 76.4102564103vw);
  margin: min(25px, 6.4102564103vw) auto 0;
}
.p-campus-days__model-graph img {
  width: 100%;
}
.p-campus-days__schedule {
  margin-top: min(30px, 7.6923076923vw);
}
.p-campus-days__inner {
  padding: 0 min(20px, 5.1282051282vw);
}
.p-campus-days__blk {
  display: block grid;
  grid-template-columns: min(65px, 16.6666666667vw) 1fr;
  column-gap: min(20px, 5.1282051282vw);
  position: relative;
}
.p-campus-days__blk::before {
  content: "";
  display: block;
  width: 2px;
  inset-block: 0;
  background: linear-gradient(to bottom, #009b77 2px, transparent 2px) repeat-y left top;
  background-size: 2px 6px;
  position: absolute;
  left: min(34px, 8.7179487179vw);
}
.p-campus-days__blk:not(:last-of-type) {
  padding-bottom: min(30px, 7.6923076923vw);
}
.p-campus-days__blk:last-of-type {
  padding-bottom: min(42px, 10.7692307692vw);
}
.p-campus-days__blk-head {
  position: relative;
  z-index: 1;
}
.p-campus-days__time {
  color: #009b77;
  font-size: 0.9375em;
  font-weight: 500;
  line-height: 2.22;
  text-align: center;
  display: inline-block;
  width: 100%;
  background-color: #ffec65;
  border-radius: min(7px, 1.7102564103vw);
  box-shadow: 2px 2px 6.67px rgba(0, 0, 0, 0.05);
}
.p-campus-days__blk-ttl {
  color: #009b77;
  font-weight: 500;
  font-size: 1.25em;
  line-height: 1.665;
}
.p-campus-days__blk-img {
  width: min(263px, 67.4358974359vw);
  margin-top: min(14px, 3.5897435897vw);
}
.p-campus-days__blk-img img {
  width: 100%;
  border-radius: min(5px, 1.2820512821vw);
}
.p-campus-days__blk-txt {
  color: #009b77;
  font-weight: 400;
  line-height: 1.5625;
  margin-top: min(12px, 3.0769230769vw);
}
.p-campus-days__closing-img {
  width: min(317px, 81.2820512821vw);
  margin-inline: auto;
  position: relative;
  z-index: 1;
}
.p-campus-days__closing-img img {
  width: 100%;
  border-radius: min(5px, 1.2820512821vw);
}
.p-campus-days__closing-txtarea {
  background-color: #fff;
  border-radius: min(10px, 2.5641025641vw);
  margin-top: -52px;
  padding: min(82px, 21.0256410256vw) 0 min(32px, 8.2051282051vw);
}
.p-campus-days__closing-txt {
  color: #009b77;
  font-weight: 400;
  line-height: 1.5625;
  padding: 0 min(30px, 7.6923076923vw);
}
@media (min-width: 768px) {
  .p-campus-days {
    font-size: 1rem;
  }
}
@media (max-width: 767px) {
  .p-campus-days {
    font-size: min(16px, 4.1025641026vw);
  }
}

/* .p-campus-map
----------------------------------- */
.p-campus-map__fv {
  width: 100%;
  height: min(530px, 135.8974358974vw);
  background-image: url("../img/highschool/campus/map/fv.jpg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
.p-campus-map__ttl.p-campus-head__ttl {
  font-size: 1.3333333333em;
}
.p-campus-map__intro {
  margin-top: min(-20px, -5.1282051282vw);
  position: relative;
  z-index: 2;
}
.p-campus-map__nav {
  padding: 0 min(26px, 6.6666666667vw);
}
.p-campus-map__nav-list {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: min(10px, 2.5641025641vw);
}
.p-campus-map__nav-link {
  color: #009b77;
  font-size: 1.0714285714em;
  font-weight: 500;
  line-height: 2.22;
  background-color: #fff;
  border-radius: min(7px, 1.7102564103vw);
  padding: min(6px, 1.5384615385vw) min(13px, 3.4358974359vw);
  box-shadow: 3px 3px 10px rgba(0, 0, 0, 0.05);
  transition: color 0.2s linear, background-color 0.2s linear;
}
@media (any-hover: hover) {
  .p-campus-map__nav-link:hover {
    color: #fff;
    background: #009b77;
  }
}
.p-campus-map__intro-txt {
  color: #009b77;
  font-size: 1.0714285714em;
  font-weight: 500;
  line-height: 1.8666666667;
  text-align: center;
  margin-top: min(34px, 8.7179487179vw);
}
.p-campus-map__map {
  width: 100%;
  margin-top: min(28px, 7.1794871795vw);
  padding: 0 min(20px, 5.1282051282vw);
  overflow-x: auto;
  position: relative;
}
.p-campus-map__map.is-hint-visible .p-campus-map__scroll-hint {
  opacity: 1;
}
.p-campus-map__map.is-scrolled .p-campus-map__scroll-hint {
  opacity: 0;
}
.p-campus-map__map-img {
  width: min(730px, 187.1794871795vw);
}
.p-campus-map__map-img img {
  width: 100%;
}
.p-campus-map__scroll-hint {
  display: inline-block;
  width: min(102px, 26.1538461538vw);
  height: min(102px, 26.1538461538vw);
  background-image: url("../img/highschool/campus/map/scroll_hint.png");
  background-repeat: no-repeat;
  background-size: contain;
  pointer-events: none;
  position: absolute;
  top: 50%;
  left: 100%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  z-index: 2;
  opacity: 0;
  transition: opacity 0.3s ease;
}
.p-campus-map__sec {
  margin-top: min(24px, 6.1538461538vw);
  padding-bottom: min(26px, 6.6666666667vw);
}
.p-campus-map__inner {
  padding: 0 min(20px, 5.1282051282vw);
}
.p-campus-map__building + .p-campus-map__building {
  margin-top: min(34px, 8.7179487179vw);
}
.p-campus-map__building-ttl {
  color: #009b77;
  font-size: 1.7857142857em;
  font-weight: 500;
  line-height: 1.332;
  padding-bottom: min(8px, 2.0512820513vw);
  margin-bottom: min(28px, 7.1794871795vw);
  border-bottom: solid 1px #009b77;
}
.p-campus-map__building-blk {
  display: grid;
  grid-template-columns: min(54px, 13.8461538462vw) 1fr;
  gap: min(30px, 7.6923076923vw);
}
.p-campus-map__building-blk:not(:first-of-type) {
  margin-top: min(22px, 5.641025641vw);
}
.p-campus-map__building-left {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-direction: column;
}
.p-campus-map__building-floor {
  color: #009b77;
  font-weight: 400;
  line-height: 1.5714285714;
  background-color: #fff;
  border-radius: min(7px, 1.6666666667vw);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: min(54px, 13.8461538462vw);
  height: min(30px, 7.6923076923vw);
}
.p-campus-map__building-floor + .p-campus-map__building-floor {
  margin-top: min(8px, 2.0512820513vw);
}
.p-campus-map__building-icon {
  width: min(32px, 8.2051282051vw);
  margin-top: min(8px, 2.0512820513vw);
}
.p-campus-map__building-icon img {
  width: 100%;
}
.p-campus-map__building-right {
  border-bottom: solid 1px #009b77;
  padding-bottom: min(24px, 6.1538461538vw);
}
.p-campus-map__building-right--no-underline {
  border-bottom: unset;
}
.p-campus-map__building-details + .p-campus-map__building-details {
  margin-top: min(24px, 6.1538461538vw);
}
.p-campus-map__building-details > .p-campus-map__building-icon {
  margin-top: unset;
}
.p-campus-map__building-details-ttl {
  color: #009b77;
  font-size: min(20px, 5.1282051282vw);
  font-weight: 500;
  line-height: 1.5;
}
.p-campus-map__building-details-txt {
  color: #009b77;
  font-weight: 400;
  line-height: 1.5714285714;
  margin-top: min(2px, 0.5128205128vw);
}
.p-campus-map__building-details-img {
  width: 100%;
  margin-top: min(10px, 2.5641025641vw);
}
.p-campus-map__building-details-img img {
  width: 100%;
  border-radius: min(5px, 1.2820512821vw);
}
.p-campus-map__building-details-img + .p-campus-map__building-details-txt {
  margin-top: min(8px, 2.0512820513vw);
}
.p-campus-map__btn {
  color: #009b77;
  background-color: #fff;
  margin-top: min(22px, 5.641025641vw);
}
@media (any-hover: hover) {
  .p-campus-map__btn:hover {
    color: #fff;
    background-color: #009b77;
  }
}
@media (min-width: 768px) {
  .p-campus-map {
    font-size: 0.875rem;
  }
}
@media (max-width: 767px) {
  .p-campus-map {
    font-size: min(14px, 3.5897435897vw);
  }
}

/* .p-campus-head
----------------------------------- */
.p-campus-head, .p-campus-head--simple {
  margin-inline: min(16px, 4.1025641026vw);
  color: #009b77;
  text-align: center;
}
.p-campus-head--simple {
  border-bottom: 1px solid #009b77;
}
.p-campus-head--wt {
  color: #fff;
}
.p-campus-head__life {
  font-family: "Commissioner", "Noto Sans JP", sans-serif;
  font-size: 0.8666666667em;
  font-weight: 500;
  line-height: 2.1538461538;
}
.p-campus-head__life::after {
  display: block;
  width: 0.7692307692em;
  height: 1px;
  margin: 0.4615384615em auto 0;
  content: "";
  background: #009b77;
}
.p-campus-head__life--wt::after {
  background: #fff;
}
.p-campus-head__ttl {
  margin-block: calc(var(--leading-trim) + 0.5909090909em) var(--leading-trim);
  font-size: 1.4666666667em;
  font-weight: 700;
  letter-spacing: 0.1em;
}
.p-campus-head__logo {
  margin-top: 0.8666666667em;
}
.p-campus-head__logo--days {
  margin-top: 1.4666666667em;
}
.p-campus-head__logo--map {
  width: min(293px, 75.1282051282vw);
  margin: -0.9333333333em auto 0;
}
.p-campus-head__lede {
  margin-top: 1.3073333333em;
  font-size: 1em;
  font-weight: 500;
  line-height: 1.8666666667;
}
@media (min-width: 768px) {
  .p-campus-head, .p-campus-head--simple {
    font-size: 0.9375rem;
  }
  .p-campus-head {
    padding-block: 28px 30px;
  }
  .p-campus-head--simple {
    padding-block: 33px 45px;
  }
}
@media (max-width: 767px) {
  .p-campus-head, .p-campus-head--simple {
    font-size: min(15px, 3.8461538462vw);
  }
  .p-campus-head {
    padding-block: min(30px, 7.6923076923vw);
  }
  .p-campus-head--simple {
    padding-block: min(30px, 7.6923076923vw) min(45px, 11.5384615385vw);
  }
}

/* .p-campus-nav
----------------------------------- */
.p-campus-nav {
  position: sticky;
  top: calc(var(--header-height) + min(15px, 3.8461538462vw));
  z-index: 2;
  gap: min(9px, 2.3076923077vw);
  justify-content: center;
  padding-inline: min(20px, 5.1282051282vw);
  margin-inline: auto;
}
.p-campus-nav--start {
  justify-content: flex-start;
}
.p-campus-nav a {
  padding-inline: min(13px, 3.3333333333vw);
  font-size: min(15px, 3.8461538462vw);
  line-height: 2.2666666667;
  border-radius: min(7px, 1.7102564103vw);
}
/* .p-library
----------------------------------- */
.p-library {
  padding-bottom: min(30px, 7.6923076923vw);
  color: #009b77;
}
.p-library__sec {
  padding-inline: min(20px, 5.1282051282vw);
  margin-top: min(45px, 11.5384615385vw);
}
.p-library__hgroup {
  padding-bottom: min(15px, 3.8461538462vw);
  margin-bottom: min(22px, 5.641025641vw);
  border-bottom: 1px solid #009b77;
}
.p-library__ttl {
  font-size: 1.7857142857em;
  font-weight: 500;
  line-height: 1.332;
}
.p-library__sub-ttl {
  font-size: 1.2857142857em;
  font-weight: 500;
  line-height: 1.6666666667;
}
.p-library__txt {
  font-size: 1em;
  line-height: 1.5714285714;
}
.p-library__fig {
  margin-top: min(22px, 5.641025641vw);
}
.p-library__fig .p-library__txt {
  margin-top: min(20px, 5.1282051282vw);
}
.p-library__img {
  display: block;
  width: 100%;
  border-radius: min(10px, 2.5641025641vw);
}
.p-library__h {
  margin-top: min(25px, 6.4102564103vw);
  font-size: 1.2857142857em;
  font-weight: 700;
  line-height: 1.6666666667;
}
.p-library__sh {
  margin-top: min(15px, 3.8461538462vw);
  font-size: 1.1428571429em;
  font-weight: 700;
  line-height: 1.375;
}
.p-library__btn-area {
  margin-top: min(34px, 8.7179487179vw);
  transform: translateY(min(25px, 6.4102564103vw));
}
.p-library__btn + .p-library__btn, .p-library__btn--site + .p-library__btn, .p-library__btn--back + .p-library__btn, .p-library__btn + .p-library__btn--site, .p-library__btn--site + .p-library__btn--site, .p-library__btn--back + .p-library__btn--site, .p-library__btn + .p-library__btn--back, .p-library__btn--site + .p-library__btn--back, .p-library__btn--back + .p-library__btn--back {
  margin-top: min(20px, 5.1282051282vw);
}
.p-library__btn--site {
  padding-inline: min(28px, 7.1794871795vw);
}
@media (min-width: 768px) {
  .p-library {
    font-size: 0.875rem;
  }
}
@media (max-width: 767px) {
  .p-library {
    font-size: min(14px, 3.5897435897vw);
  }
}

/* .p-library-boxs
----------------------------------- */
.p-library-boxs {
  margin-inline: max(-20px, -5.1282051282vw);
  overflow-x: auto;
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.p-library-boxs::-webkit-scrollbar {
  display: none;
}
.p-library-boxs__inner {
  display: block flex;
  column-gap: min(20px, 5.1282051282vw);
  width: max-content;
  padding-inline: min(20px, 5.1282051282vw);
  margin-top: min(10px, 2.5641025641vw);
}
.p-library-boxs__box {
  width: min(200px, 51.2820512821vw);
}
.p-library-boxs__img {
  display: block;
  width: 100%;
  border-radius: min(10px, 2.5641025641vw);
}
.p-library-boxs__cap {
  display: block;
  margin-top: min(10px, 2.5641025641vw);
  font-size: 1.1428571429em;
  font-weight: 700;
  line-height: 1.25;
}
.p-library-boxs__cap small {
  display: inline-block;
  font-size: 0.8125em;
  font-weight: 500;
  line-height: 1.5384615385;
}
.p-library-boxs__txt {
  margin-top: min(10px, 2.5641025641vw);
  font-size: 1em;
  font-weight: 500;
  line-height: 1.4285714286;
}
@media (min-width: 768px) {
  .p-library-boxs {
    font-size: 0.875rem;
  }
}
@media (max-width: 767px) {
  .p-library-boxs {
    font-size: min(14px, 3.5897435897vw);
  }
}

/* .p-library-carousel
----------------------------------- */
.p-library-carousel {
  margin-top: min(45px, 11.5384615385vw);
  overflow: hidden;
}
.p-library-carousel__wrap, .p-library-carousel__group {
  display: block flex;
  column-gap: min(20px, 5.1282051282vw);
  width: max-content;
}
.p-library-carousel__wrap {
  animation: carousel 30s linear infinite;
  will-change: animation;
}
.p-library-carousel__box {
  width: min(200px, 51.2820512821vw);
}
.p-library-carousel__img {
  display: block;
  width: 100%;
  aspect-ratio: 1/1;
  object-fit: cover;
  border-radius: min(5px, 1.2820512821vw);
}

/* .p-library-head
----------------------------------- */
.p-library-head {
  padding-top: min(10px, 2.5641025641vw);
}
.p-library-head__ttl {
  text-align: center;
}
.p-library-head__ttl img {
  width: min(245px, 62.8205128205vw);
}
.p-library-head__copy {
  margin-top: 0.5769230769em;
  font-size: 1.625em;
  font-weight: 700;
  line-height: 1.3461538462;
  text-align: center;
}
.p-library-head__txt {
  margin-top: 0.8333333333em;
  font-size: 1.125em;
  font-weight: 500;
  line-height: 1.6666666667;
  text-align: center;
}
@media (min-width: 768px) {
  .p-library-head {
    font-size: 1rem;
  }
}
@media (max-width: 767px) {
  .p-library-head {
    font-size: min(16px, 4.1025641026vw);
  }
}

/* .p-faq
----------------------------------- */
.p-faq__sidebar-cate {
  font-size: 3.125rem;
  line-height: 100%;
  margin-bottom: 4px;
}
.p-faq__sidebar-title {
  font-size: 1.25rem;
  letter-spacing: 0.05em;
  line-height: 1.6;
}
@media (min-width: 768px) {
  .p-faq {
    font-size: 1rem;
  }
}
@media (max-width: 767px) {
  .p-faq {
    font-size: min(16px, 4.1025641026vw);
  }
}

/* .p-faq-head
----------------------------------- */
.p-faq-head {
  max-width: 538px;
  margin-inline: auto;
  padding-top: min(112px, 28.7179487179vw);
  position: relative;
  overflow: hidden;
}
.p-faq-head::before {
  content: "";
  width: min(510px, 130.7692307692vw);
  height: min(223px, 57.1794871795vw);
  background-image: url("../img/highschool/faq/mv_obj.svg");
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: -26px;
  left: 47.4%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  z-index: 0;
}
.p-faq-head__ttl {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: min(6px, 1.5384615385vw);
  position: relative;
  z-index: 1;
}
.p-faq-head__ttl-emoji {
  color: #009b77;
  font-size: 3.125em;
  font-weight: 700;
  line-height: 100%;
  padding-right: min(20px, 5.1282051282vw);
}
.p-faq-head__ttl-sub {
  color: #009b77;
  font-size: 1.25em;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.05em;
}
@media (min-width: 768px) {
  .p-faq-head {
    font-size: 1rem;
  }
}
@media (max-width: 767px) {
  .p-faq-head {
    font-size: min(16px, 4.1025641026vw);
  }
}

/* .p-faq-nav
----------------------------------- */
.p-faq-nav {
  margin-top: min(34px, 8.7179487179vw);
  padding: 0 min(15px, 3.8461538462vw) min(28px, 7.1794871795vw);
  position: relative;
}
.p-faq-nav::after {
  content: "";
  width: 100%;
  height: min(3px, 0.7692307692vw);
  background-color: #fff;
  box-shadow: 0 3px 0 rgba(0, 0, 0, 0.05);
  position: absolute;
  bottom: 0;
  left: 0;
}
.p-faq-nav__link {
  font-size: 15px;
  padding-inline: min(13px, 3.3333333333vw);
  background-color: #ffec65;
}
@media (min-width: 768px) {
  .p-faq-nav {
    font-size: 0.9375rem;
  }
}
@media (max-width: 767px) {
  .p-faq-nav {
    font-size: min(15px, 3.8461538462vw);
  }
}

/* .p-faq-cont
----------------------------------- */
.p-faq-cont {
  margin-top: min(47px, 12.0512820513vw);
  padding-bottom: min(37px, 9.4871794872vw);
}
.p-faq-cont__inner {
  padding: 0 min(20px, 5.1282051282vw);
}
.p-faq-cont__blk + .p-faq-cont__blk {
  margin-top: min(50px, 12.8205128205vw);
}
.p-faq-cont__blk-head {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: min(2px, 0.5128205128vw);
}
.p-faq-cont__blk-ttl {
  color: #009b77;
  font-size: 1.375em;
  line-height: 1.4545454545;
  font-weight: 700;
}
.p-faq-cont__blk-subttl {
  color: #009b77;
  font-weight: 700;
  line-height: 2;
}
.p-faq-cont__list {
  margin-top: min(20px, 5.1282051282vw);
}
.p-faq-cont__item {
  background-color: #fff;
  border: solid 1px #009b77;
  border-radius: min(10px, 2.5641025641vw);
}
.p-faq-cont__item + .p-faq-cont__item {
  margin-top: min(6px, 1.5384615385vw);
}
.p-faq-cont__btn {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: min(19px, 4.8717948718vw) min(15px, 3.8461538462vw) min(19px, 4.8717948718vw) min(28px, 7.1794871795vw);
}
.p-faq-cont__btn[aria-expanded=true] .p-faq-cont__icon::after {
  transform: translate(-50%, -50%) rotate(90deg);
}
.p-faq-cont__question {
  font-weight: 500;
  line-height: 1.25;
  min-width: min(285px, 73.0769230769vw);
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: min(16px, 4.1025641026vw);
  padding-right: min(34px, 8.7179487179vw);
}
.p-faq-cont__question::before {
  content: "Q";
  font-family: "Commissioner", "Noto Sans JP", sans-serif;
  color: #009b77;
  font-size: 1.375em;
  font-weight: 700;
  line-height: 70%;
  height: min(20px, 5.1282051282vw);
  flex-shrink: 0;
}
.p-faq-cont__icon {
  display: inline-block;
  width: min(20px, 5.1282051282vw);
  height: min(20px, 5.1282051282vw);
  flex-shrink: 0;
  position: relative;
}
.p-faq-cont__icon::before, .p-faq-cont__icon::after {
  content: "";
  background-color: #009b77;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transition: transform 0.3s ease-out;
}
.p-faq-cont__icon::before {
  display: inline-block;
  width: 100%;
  height: 1px;
}
.p-faq-cont__icon::after {
  display: inline-block;
  width: 1px;
  height: 100%;
}
.p-faq-cont__details {
  padding: 0 min(15px, 3.8461538462vw) min(19px, 4.8717948718vw) min(28px, 7.1794871795vw);
  display: none;
}
.p-faq-cont__details-over-wrap {
  overflow-x: auto;
  position: relative;
}
.p-faq-cont__details-over-wrap.is-hint-visible .p-faq-cont__scroll-hint {
  opacity: 1;
}
.p-faq-cont__details-over-wrap.is-scrolled .p-faq-cont__scroll-hint {
  opacity: 0;
}
.p-faq-cont__details-wrap {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  gap: min(16px, 4.1025641026vw);
}
.p-faq-cont__details-wrap::before {
  content: "A";
  font-family: "Commissioner", "Noto Sans JP", sans-serif;
  color: #009b77;
  font-size: 1.375em;
  font-weight: 700;
  line-height: 100%;
  flex-shrink: 0;
  padding-top: min(2px, 0.5128205128vw);
}
.p-faq-cont__details-wrap--table {
  width: max-content;
}
.p-faq-cont__details-table {
  border: solid 1px #009b77;
}
.p-faq-cont__details-table th {
  color: #009b77;
  font-size: 0.8125em;
  font-weight: 500;
  text-align: center;
  line-height: 1.5384615385;
  white-space: nowrap;
  vertical-align: middle;
  background-color: #f5f5f5;
  border-right: solid 1px #009b77;
  padding: 0 min(20px, 5vw);
}
.p-faq-cont__details-thead {
  height: min(33px, 8.4615384615vw);
}
.p-faq-cont__details-thead th:not(:last-of-type) {
  border-right: solid 1px #009b77;
}
.p-faq-cont__details-tbody th {
  height: min(53px, 13.5897435897vw);
  border-right: solid 1px #009b77;
}
.p-faq-cont__details-tbody tr {
  border-top: solid 1px #009b77;
}
.p-faq-cont__details-tbody tr td:not(:last-of-type) {
  border-right: solid 1px #009b77;
}
.p-faq-cont__details-tbody td {
  font-size: 0.8125em;
  font-weight: 500;
  line-height: 1.5384615385;
  padding: 0 min(20px, 5vw);
  vertical-align: middle;
}
.p-faq-cont__answer {
  font-weight: 400;
  line-height: 1.5625;
}
.p-faq-cont__answer-link {
  text-decoration: underline;
}
@media (any-hover: hover) {
  .p-faq-cont__answer-link:hover {
    text-decoration: unset;
  }
}
.p-faq-cont__scroll-hint {
  display: inline-block;
  width: min(102px, 26.1538461538vw);
  height: min(102px, 26.1538461538vw);
  background-image: url("../img/highschool/campus/map/scroll_hint.png");
  background-repeat: no-repeat;
  background-size: contain;
  pointer-events: none;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  z-index: 2;
  opacity: 0;
  transition: opacity 0.3s ease;
}
@media (min-width: 768px) {
  .p-faq-cont {
    font-size: 1rem;
  }
}
@media (max-width: 767px) {
  .p-faq-cont {
    font-size: min(16px, 4.1025641026vw);
  }
}

/* .p-entrance
----------------------------------- */
.p-entrance__wrap {
  margin-inline: auto;
}
.p-entrance__list {
  display: grid;
}
.p-entrance__item > a {
  background-color: #fff;
  width: 100%;
  font-weight: 700;
  color: #009b77;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
}
.p-entrance__item > a > span {
  background-color: #fff;
  border: 1px solid #009b77;
  border-radius: 50%;
  position: absolute;
  transform: translate(-50%, 100%);
  left: 50%;
  transition: color 0.2s linear, background-color 0.2s linear;
}
.p-entrance__item > a > span::before {
  position: absolute;
  inset: 0;
  display: block;
  width: 35.4838709677%;
  aspect-ratio: 1/1;
  margin: auto;
  content: "";
  background: currentColor;
  mask: url(../img/common/arw.svg) no-repeat center center;
  mask-size: contain;
}
@media (any-hover: hover) {
  .p-entrance__item > a:hover > span {
    background-color: #009b77;
    color: #fff;
  }
}
.p-entrance__ttl {
  font-weight: 700;
  color: #009b77;
}
@media (min-width: 768px) {
  .p-entrance {
    background: url("../img/highschool/entrance/entrance-pc.jpg") no-repeat center/cover;
    padding-block: 3.25rem 5.625rem;
  }
  .p-entrance__wrap {
    width: 60.125rem;
  }
  .p-entrance__list {
    grid-template-columns: repeat(3, 1fr);
    gap: 3.125rem 1.9375rem;
    margin-top: 3.25rem;
  }
  .p-entrance__item a {
    height: 7.5rem;
    border-radius: 0.3125rem;
    font-size: 1.25rem;
    line-height: 1.4;
  }
  .p-entrance__item a > span {
    width: 2.8125rem;
    height: 2.8125rem;
    bottom: 0.9375rem;
  }
  .p-entrance__ttl {
    font-size: 1.5625rem;
    line-height: 1.2;
    margin-bottom: 0.9375rem;
  }
  .p-entrance__ttl--margin {
    margin-top: 3.125rem;
  }
  .p-entrance__btn {
    margin-top: 0.9375rem;
  }
}
@media (max-width: 767px) {
  .p-entrance {
    background: url("../img/highschool/entrance/entrance-sp.jpg") no-repeat center/cover;
    padding-block: min(39px, 10vw) min(72px, 18.4615384615vw);
  }
  .p-entrance__wrap {
    padding-inline: min(15px, 3.8461538462vw);
  }
  .p-entrance__list {
    grid-template-columns: repeat(2, 1fr);
    gap: min(34px, 8.7179487179vw) min(15px, 3.8461538462vw);
    margin-top: min(36px, 9.2307692308vw);
  }
  .p-entrance__item a {
    height: min(120px, 30.7692307692vw);
    border-radius: min(5px, 1.2820512821vw);
    font-size: min(17px, 4.358974359vw);
    line-height: 1.4117647059;
  }
  .p-entrance__item a > span {
    width: min(45px, 11.5384615385vw);
    height: min(45px, 11.5384615385vw);
    bottom: min(21px, 5.3846153846vw);
  }
  .p-entrance__ttl {
    font-size: min(25px, 6.4102564103vw);
    line-height: 1.32;
    margin-bottom: min(20px, 5.1282051282vw);
  }
  .p-entrance__ttl--margin {
    margin-top: min(30px, 7.6923076923vw);
  }
  .p-entrance__btn {
    margin-top: min(15px, 3.8461538462vw);
  }
}

/* .p-entrance-capacity
----------------------------------- */
.p-entrance-capacity__wrap {
  margin-inline: auto;
}
.p-entrance-capacity__item dt {
  font-weight: 700;
}
.p-entrance-capacity__item dd {
  line-height: 1.875;
}
.p-entrance-capacity__item .grn {
  color: #45b035;
}
.p-entrance-capacity__item .org {
  color: #f08300;
}
.p-entrance-capacity__item .yel {
  color: #f8b500;
}
@media (min-width: 768px) {
  .p-entrance-capacity {
    padding-block: 3.25rem 3.125rem;
  }
  .p-entrance-capacity__wrap {
    width: 60.125rem;
  }
  .p-entrance-capacity__item {
    font-size: 1rem;
    display: flex;
    gap: 1.375rem;
  }
  .p-entrance-capacity__item dt {
    min-width: 11rem;
    line-height: 1.875;
  }
  .p-entrance-capacity__item dd {
    font-weight: 500;
  }
}
@media (max-width: 767px) {
  .p-entrance-capacity {
    padding-block: min(50px, 12.8205128205vw) min(35px, 8.9743589744vw);
  }
  .p-entrance-capacity__wrap {
    padding-inline: min(15px, 3.8461538462vw);
  }
  .p-entrance-capacity__item {
    font-size: min(18px, 4.6153846154vw);
    line-height: 1.6666666667;
  }
  .p-entrance-capacity__item:not(:last-of-type) {
    margin-bottom: min(9px, 2.3076923077vw);
  }
  .p-entrance-capacity__item dt {
    min-width: 11rem;
    line-height: 1.875;
  }
  .p-entrance-capacity__item dd {
    font-weight: 700;
  }
}

/* .p-entrance-eligibility
----------------------------------- */
.p-entrance-eligibility__wrap {
  margin-inline: auto;
}
.p-entrance-eligibility__item {
  line-height: 1.875;
  display: flex;
}
.p-entrance-eligibility__item::before {
  display: block;
  flex-shrink: 0;
}
.p-entrance-eligibility__item:nth-child(1)::before {
  content: "1.";
}
.p-entrance-eligibility__item:nth-child(2)::before {
  content: "2.";
}
.p-entrance-eligibility__item:nth-child(3)::before {
  content: "3.";
}
.p-entrance-eligibility__item:nth-child(4)::before {
  content: "4.";
}
.p-entrance-eligibility__item:nth-child(5)::before {
  content: "5.";
}
.p-entrance-eligibility__item:nth-child(6)::before {
  content: "6.";
}
.p-entrance-eligibility__item:nth-child(7)::before {
  content: "7.";
}
.p-entrance-eligibility__item:nth-child(8)::before {
  content: "8.";
}
.p-entrance-eligibility__item:nth-child(9)::before {
  content: "9.";
}
.p-entrance-eligibility__item:nth-child(10)::before {
  content: "10.";
}
.p-entrance-eligibility__item:nth-child(11)::before {
  content: "11.";
}
.p-entrance-eligibility__item:nth-child(12)::before {
  content: "12.";
}
.p-entrance-eligibility__item:nth-child(13)::before {
  content: "13.";
}
.p-entrance-eligibility__item:nth-child(14)::before {
  content: "14.";
}
.p-entrance-eligibility__item:nth-child(15)::before {
  content: "15.";
}
.p-entrance-eligibility__item:nth-child(16)::before {
  content: "16.";
}
.p-entrance-eligibility__item:nth-child(17)::before {
  content: "17.";
}
.p-entrance-eligibility__item:nth-child(18)::before {
  content: "18.";
}
.p-entrance-eligibility__item:nth-child(19)::before {
  content: "19.";
}
.p-entrance-eligibility__item:nth-child(20)::before {
  content: "20.";
}
@media (min-width: 768px) {
  .p-entrance-eligibility {
    padding-bottom: 3.1875rem;
  }
  .p-entrance-eligibility__wrap {
    width: 60.125rem;
  }
  .p-entrance-eligibility__list {
    margin-bottom: 1.9375rem;
  }
  .p-entrance-eligibility__item {
    font-size: 1rem;
    column-gap: 0.9375rem;
  }
}
@media (max-width: 767px) {
  .p-entrance-eligibility {
    padding-bottom: min(60px, 15.3846153846vw);
  }
  .p-entrance-eligibility__wrap {
    padding-inline: min(15px, 3.8461538462vw);
  }
  .p-entrance-eligibility__list {
    margin-bottom: min(33px, 8.4615384615vw);
  }
  .p-entrance-eligibility__item {
    font-size: min(16px, 4.1025641026vw);
    column-gap: min(15px, 3.8461538462vw);
  }
}

/* .p-entrance-link
----------------------------------- */
.p-entrance-link {
  background-color: #f5f5f5;
}
.p-entrance-link__wrap {
  margin-inline: auto;
}
.p-entrance-link__item {
  filter: drop-shadow(3px 3px 10px rgba(0, 0, 0, 0.05));
}
.p-entrance-link__item a {
  display: block;
  background-color: #fff;
  width: max-content;
  font-weight: 500;
  color: #009b77;
}
.p-entrance-link__item a::before {
  content: "# ";
}
@media (min-width: 768px) {
  .p-entrance-link {
    padding-block: 3.75rem;
  }
  .p-entrance-link__wrap {
    width: 55.5625rem;
  }
  .p-entrance-link__list {
    display: grid;
    grid-template-columns: 14.6875rem 7.6875rem 15.6875rem 14.6875rem;
    gap: 0.8125rem 0.9375rem;
  }
  .p-entrance-link__item a {
    border-radius: 0.625rem;
    font-size: 1rem;
    padding: 0.75rem 0.9375rem;
  }
}
@media (max-width: 767px) {
  .p-entrance-link {
    padding-block: min(66px, 16.9230769231vw);
  }
  .p-entrance-link__wrap {
    padding-inline: min(40px, 10.2564102564vw);
  }
  .p-entrance-link__list {
    display: flex;
    flex-wrap: wrap;
    gap: min(15px, 3.8461538462vw);
  }
  .p-entrance-link__item a {
    border-radius: min(10px, 2.5641025641vw);
    font-size: min(16px, 4.1025641026vw);
    padding: min(12px, 3.0769230769vw) min(15px, 3.8461538462vw);
  }
  .p-entrance-link__item:nth-of-type(1) {
    order: 1;
  }
  .p-entrance-link__item:nth-of-type(2) {
    order: 2;
  }
  .p-entrance-link__item:nth-of-type(3) {
    order: 10;
  }
  .p-entrance-link__item:nth-of-type(4) {
    order: 3;
  }
  .p-entrance-link__item:nth-of-type(5) {
    order: 4;
  }
  .p-entrance-link__item:nth-of-type(6) {
    order: 5;
  }
  .p-entrance-link__item:nth-of-type(7) {
    order: 6;
  }
  .p-entrance-link__item:nth-of-type(8) {
    order: 11;
  }
  .p-entrance-link__item:nth-of-type(9) {
    order: 7;
  }
  .p-entrance-link__item:nth-of-type(10) {
    order: 8;
  }
  .p-entrance-link__item:nth-of-type(11) {
    order: 12;
  }
  .p-entrance-link__item:nth-of-type(12) {
    order: 9;
  }
  .p-entrance-link__item:nth-of-type(13) {
    order: 13;
  }
  .p-entrance-link__item:nth-of-type(14) {
    order: 14;
  }
  .p-entrance-link__item:nth-of-type(15) {
    order: 15;
  }
}

/* .p-entrance-essential
----------------------------------- */
.p-entrance-essential__txt {
  line-height: 1.875;
}
.p-entrance-essential__ttl {
  font-weight: 700;
}
.p-entrance-essential__item {
  line-height: 1.5625;
  display: flex;
}
.p-entrance-essential__item::before {
  content: "・";
  display: block;
  flex-shrink: 0;
}
.p-entrance-essential__list {
  counter-reset: item;
}
.p-entrance-essential__list--num .p-entrance-essential__item::before {
  counter-increment: item;
  content: counter(item) ".";
  display: block;
  flex-shrink: 0;
}
@media (min-width: 768px) {
  .p-entrance-essential__cont {
    padding-block: 3.25rem;
  }
  .p-entrance-essential__cont > section:not(:last-of-type) {
    margin-bottom: 3.125rem;
  }
  .p-entrance-essential__wrap {
    width: 62rem;
    margin-inline: auto;
  }
  .p-entrance-essential__btn {
    display: flex;
    justify-content: center;
    margin-bottom: 3.3125rem;
  }
  .p-entrance-essential__btn .c-btn__btn:not(:first-of-type) {
    margin-left: 1.9375rem;
  }
  .p-entrance-essential__btn--column {
    flex-direction: column;
    align-items: center;
  }
  .p-entrance-essential__btn--column .c-btn__btn:not(:first-of-type) {
    margin-top: 1.4375rem;
    margin-left: 0;
  }
  .p-entrance-essential__txt {
    font-size: 1rem;
    margin-bottom: 1.25rem;
  }
  .p-entrance-essential__ttl {
    font-size: 1.125rem;
    line-height: 1.7777777778;
    margin-bottom: 0.625rem;
  }
  .p-entrance-essential__item {
    font-size: 1rem;
  }
  .p-entrance-essential__item::before {
    padding-inline: 0.3125rem;
  }
  .p-entrance-essential__caution {
    margin-top: 0.9375rem;
    line-height: 1.4285714286;
  }
  .p-entrance-essential__caution > span {
    display: block;
    margin-left: 0.875rem;
  }
}
@media (max-width: 767px) {
  .p-entrance-essential__cont {
    padding-block: min(41px, 10.5128205128vw) min(48px, 12.3076923077vw);
  }
  .p-entrance-essential__cont > section:not(:last-of-type) {
    margin-bottom: min(61px, 15.641025641vw);
  }
  .p-entrance-essential__wrap {
    padding-inline: min(15px, 3.8461538462vw);
  }
  .p-entrance-essential__btn {
    flex-direction: column;
    margin-bottom: min(53px, 13.5897435897vw);
  }
  .p-entrance-essential__btn .c-btn__btn:not(:first-of-type) {
    margin-top: min(15px, 3.8461538462vw);
  }
  .p-entrance-essential__txt {
    font-size: min(16px, 4.1025641026vw);
    margin-bottom: min(20px, 5.1282051282vw);
  }
  .p-entrance-essential__ttl {
    font-size: min(18px, 4.6153846154vw);
    line-height: 1.6666666667;
    margin-bottom: min(9px, 2.3076923077vw);
  }
  .p-entrance-essential__item {
    font-size: min(16px, 4.1025641026vw);
  }
  .p-entrance-essential__item::before {
    padding-inline: min(5px, 1.2820512821vw);
  }
  .p-entrance-essential__caution {
    margin-top: min(20px, 5.1282051282vw);
    line-height: 1.5714285714;
  }
}

/* .p-entrance-essential-table
----------------------------------- */
.p-entrance-essential-table__table-wrap {
  position: relative;
}
.p-entrance-essential-table__table {
  font-weight: 500;
  border-collapse: collapse;
}
.p-entrance-essential-table__table th,
.p-entrance-essential-table__table td {
  border: 1px solid #009b77;
  font-weight: 500;
  text-align: center;
  vertical-align: middle;
}
.p-entrance-essential-table__table th {
  background-color: #f5f5f5;
  color: #009b77;
  line-height: 1.5384615385;
}
.p-entrance-essential-table__table-wrap {
  width: max-content;
}
.p-entrance-essential-table__head--grn th {
  background-color: #009b77;
  color: #fff;
  border-right: 1px solid #fff;
}
.p-entrance-essential-table__txt {
  font-weight: 500;
}
@media (min-width: 768px) {
  .p-entrance-essential-table__scroll {
    width: 62rem;
    margin-inline: auto;
  }
  .p-entrance-essential-table__scroll .p-campus-map__scroll-hint {
    display: none;
  }
  .p-entrance-essential-table__scroll--deadline {
    width: 37.5rem;
  }
  .p-entrance-essential-table__table {
    width: max-content;
    font-size: 0.8125rem;
    line-height: 1.2307692308;
  }
  .p-entrance-essential-table__table td {
    padding: 0.625rem 0.3125rem;
  }
  .p-entrance-essential-table__head th {
    height: 2.0625rem;
  }
  .p-entrance-essential-table__head--fee th {
    height: 3.3125rem;
  }
  .p-entrance-essential-table__body th {
    height: 3.3125rem;
  }
  .p-entrance-essential-table__term {
    width: 7.75rem;
  }
  .p-entrance-essential-table__deadline {
    width: 7.75rem;
  }
  .p-entrance-essential-table__web {
    width: 9.375rem;
  }
  .p-entrance-essential-table__first {
    width: 9.5625rem;
  }
  .p-entrance-essential-table__result {
    width: 7.75rem;
  }
  .p-entrance-essential-table__second {
    width: 12.0625rem;
  }
  .p-entrance-essential-table__pass {
    width: 7.75rem;
  }
  .p-entrance-essential-table__period {
    width: 12.5rem;
  }
  .p-entrance-essential-table__day {
    width: 6.25rem;
  }
  .p-entrance-essential-table__web-period {
    width: 25.9375rem;
  }
  .p-entrance-essential-table__scholarship-term {
    width: 15.625rem;
  }
  .p-entrance-essential-table__ibuka {
    width: 17.625rem;
  }
  .p-entrance-essential-table__scholarship {
    width: 20rem;
  }
  .p-entrance-essential-table__scroll--deadline .p-entrance-essential-table__deadline {
    width: 12.5rem;
    height: 3.3125rem;
  }
  .p-entrance-essential-table__timing {
    width: 8.125rem;
    height: 3.3125rem;
  }
  .p-entrance-essential-table__fee {
    width: 6.25rem;
    height: 3.3125rem;
  }
  .p-entrance-essential-table__fee-75 {
    width: 4.6875rem;
  }
  .p-entrance-essential-table__txt {
    font-size: 0.8125rem;
    position: absolute;
    transform: translateY(-100%);
    top: -0.9375rem;
    right: 0;
  }
}
@media (max-width: 767px) {
  .p-entrance-essential-table__scroll {
    padding-inline: min(20px, 5.1282051282vw);
    overflow-x: scroll;
    position: relative;
  }
  .p-entrance-essential-table__scroll .p-campus-map__scroll-hint {
    left: 50%;
  }
  .p-entrance-essential-table__scroll.is-hint-visible .p-campus-map__scroll-hint {
    opacity: 1;
  }
  .p-entrance-essential-table__scroll.is-scrolled .p-campus-map__scroll-hint {
    opacity: 0;
  }
  .p-entrance-essential-table__table {
    width: max-content;
    font-size: min(13px, 3.3333333333vw);
  }
  .p-entrance-essential-table__table td {
    padding: min(10px, 2.5641025641vw) min(5px, 1.2820512821vw);
  }
  .p-entrance-essential-table__head th {
    height: min(33px, 8.4615384615vw);
  }
  .p-entrance-essential-table__head--fee th {
    height: min(53px, 13.5897435897vw);
  }
  .p-entrance-essential-table__body th {
    height: min(53px, 13.5897435897vw);
  }
  .p-entrance-essential-table__term {
    width: min(124px, 31.7948717949vw);
  }
  .p-entrance-essential-table__deadline {
    width: min(124px, 31.7948717949vw);
  }
  .p-entrance-essential-table__web {
    width: min(150px, 38.4615384615vw);
  }
  .p-entrance-essential-table__first {
    width: min(153px, 39.2307692308vw);
  }
  .p-entrance-essential-table__result {
    width: min(124px, 31.7948717949vw);
  }
  .p-entrance-essential-table__second {
    width: min(193px, 49.4871794872vw);
  }
  .p-entrance-essential-table__pass {
    width: min(124px, 31.7948717949vw);
  }
  .p-entrance-essential-table__period {
    width: min(200px, 51.2820512821vw);
  }
  .p-entrance-essential-table__day {
    width: min(100px, 25.641025641vw);
  }
  .p-entrance-essential-table__web-period {
    width: min(415px, 106.4102564103vw);
  }
  .p-entrance-essential-table__scholarship-term {
    width: min(250px, 64.1025641026vw);
  }
  .p-entrance-essential-table__ibuka {
    width: min(282px, 72.3076923077vw);
  }
  .p-entrance-essential-table__scholarship {
    width: min(320px, 82.0512820513vw);
  }
  .p-entrance-essential-table__scroll--deadline .p-entrance-essential-table__deadline {
    width: min(200px, 51.2820512821vw);
    height: min(53px, 13.5897435897vw);
  }
  .p-entrance-essential-table__timing {
    width: min(130px, 33.3333333333vw);
    height: min(53px, 13.5897435897vw);
  }
  .p-entrance-essential-table__fee {
    width: min(100px, 25.641025641vw);
    height: min(53px, 13.5897435897vw);
  }
  .p-entrance-essential-table__fee-75 {
    width: min(75px, 19.2307692308vw);
  }
  .p-entrance-essential-table__txt {
    font-size: min(13px, 3.3333333333vw);
    margin-bottom: min(10px, 2.5641025641vw);
    margin-left: min(-5px, -1.2820512821vw);
  }
}

/* .p-entrance-essential-type
----------------------------------- */
.p-entrance-essential-type__list {
  display: grid;
}
.p-entrance-essential-type__item {
  background-color: #f5f5f5;
}
.p-entrance-essential-type__hgroup-txt {
  font-weight: 700;
  line-height: 1.6666666667;
  color: #009b77;
}
.p-entrance-essential-type__hgroup-ttl {
  font-weight: 700;
  color: #009b77;
}
.p-entrance-essential-type__hgroup-sub {
  font-weight: 500;
  line-height: 1.4285714286;
}
.p-entrance-essential-type__theme {
  border-top: solid 1px #000;
  border-bottom: solid 1px #000;
}
.p-entrance-essential-type__theme-txt {
  font-weight: 500;
  display: flex;
}
.p-entrance-essential-type__theme-label {
  width: max-content;
  height: max-content;
  background-color: #fff;
  border: solid 1px #000;
  font-weight: 500;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-shrink: 0;
}
.p-entrance-essential-type__caution {
  line-height: 1.6666666667;
}
@media (min-width: 768px) {
  .p-entrance-essential-type__list {
    grid-template-columns: repeat(2, 1fr);
    column-gap: 1.8125rem;
    padding-right: 0.1875rem;
  }
  .p-entrance-essential-type__item {
    border-radius: 0.3125rem;
    padding: 1.625rem 1.5625rem 1.75rem;
  }
  .p-entrance-essential-type__hgroup {
    margin-bottom: 1.5rem;
  }
  .p-entrance-essential-type__hgroup-txt {
    font-size: 0.9375rem;
    margin-bottom: 0.5rem;
  }
  .p-entrance-essential-type__hgroup-ttl {
    font-size: 1.25rem;
    line-height: 1.25;
  }
  .p-entrance-essential-type__hgroup-sub {
    padding-bottom: 0.1875rem;
    margin-top: 0.5rem;
  }
  .p-entrance-essential-type__theme {
    padding-left: 0.875rem;
    padding-block: 1.25rem;
  }
  .p-entrance-essential-type__theme-txt {
    font-size: 1rem;
    line-height: 1.875;
  }
  .p-entrance-essential-type__theme-txt:not(:last-of-type) {
    margin-bottom: 0.625rem;
  }
  .p-entrance-essential-type__theme-label {
    min-width: 3.125rem;
    height: 1.5625rem;
    font-size: 0.75rem;
    padding-block: 0.4375rem;
    margin-right: 0.6875rem;
  }
  .p-entrance-essential-type__caution {
    font-size: 0.75rem;
    font-weight: 500;
    margin-top: 0.5625rem;
  }
}
@media (max-width: 767px) {
  .p-entrance-essential-type__list {
    grid-template-columns: 1fr;
    row-gap: min(19px, 4.8717948718vw);
  }
  .p-entrance-essential-type__item {
    border-radius: min(5px, 1.2820512821vw);
    padding: min(28px, 7.1794871795vw) min(18px, 4.6153846154vw);
  }
  .p-entrance-essential-type__hgroup {
    margin-bottom: min(22px, 5.641025641vw);
  }
  .p-entrance-essential-type__hgroup-txt {
    font-size: min(15px, 3.8461538462vw);
    margin-bottom: min(5px, 1.2820512821vw);
  }
  .p-entrance-essential-type__hgroup-ttl {
    font-size: min(22px, 5.641025641vw);
    line-height: 1.1363636364;
  }
  .p-entrance-essential-type__hgroup-sub {
    margin-top: 0.625rem;
    margin-bottom: -3px;
  }
  .p-entrance-essential-type__theme {
    padding-block: min(15px, 3.8461538462vw);
  }
  .p-entrance-essential-type__theme-txt {
    font-size: min(14px, 3.5897435897vw);
    line-height: 1.4285714286;
  }
  .p-entrance-essential-type__theme-txt:not(:last-of-type) {
    margin-bottom: min(8px, 2.0512820513vw);
  }
  .p-entrance-essential-type__theme-label {
    min-width: 3.375rem;
    height: 1.5625rem;
    font-size: min(12px, 3.0769230769vw);
    padding-block: min(7px, 1.7948717949vw);
    margin-right: min(8px, 2.0512820513vw);
  }
  .p-entrance-essential-type__caution {
    font-size: min(12px, 3.0769230769vw);
    margin-top: min(10px, 2.5641025641vw);
  }
}

/* .p-entrance-essential-step
----------------------------------- */
.p-entrance-essential-step__ttl {
  border-bottom: solid 1px #009b77;
  line-height: 1.0909090909;
  font-weight: 500;
  color: #009b77;
  display: flex;
  align-items: center;
}
.p-entrance-essential-step__ttl > span {
  border: solid 1px #009b77;
  border-radius: 100vmax;
  font-weight: 700;
  line-height: 1.6666666667;
  text-transform: uppercase;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-shrink: 0;
}
.p-entrance-essential-step__list-ttl {
  font-weight: 700;
  line-height: 1.7777777778;
}
.p-entrance-essential-step__list-ttl--small {
  line-height: 1.5625;
}
.p-entrance-essential-step__list-txt--red {
  color: #ef490d;
}
.p-entrance-essential-step__txt-list .p-entrance-essential-step__list-txt {
  display: flex;
}
.p-entrance-essential-step__txt-list .p-entrance-essential-step__list-txt::before {
  content: "・";
  display: block;
  flex-shrink: 0;
}
.p-entrance-essential-step__btn-row .c-btn__btn--wt {
  font-weight: 500;
}
.p-entrance-essential-step__caution {
  line-height: 1.6666666667;
}
.p-entrance-essential-step__caution--large {
  line-height: 1.7857142857;
}
@media (min-width: 768px) {
  .p-entrance-essential-step__list {
    margin-top: 2.5rem;
  }
  .p-entrance-essential-step__item:not(:last-of-type) {
    margin-bottom: 2.5rem;
  }
  .p-entrance-essential-step__ttl {
    font-size: 1.375rem;
    column-gap: 0.625rem;
    padding-bottom: 0.9375rem;
    margin-bottom: 0.9375rem;
  }
  .p-entrance-essential-step__ttl > span {
    font-size: 0.9375rem;
    padding: 0.1875rem 1.1875rem;
  }
  .p-entrance-essential-step__list-ttl {
    font-size: 1.125rem;
    margin-block: 1.25rem 0.9375rem;
  }
  .p-entrance-essential-step__list-ttl--small {
    font-size: 1rem;
    margin-block: 1.25rem 0.5rem;
  }
  .p-entrance-essential-step__list-ttl--margin {
    margin-block: 0.9375rem 0.5rem;
  }
  .p-entrance-essential-step__list-txt {
    font-size: 1rem;
    line-height: 1.75;
  }
  .p-entrance-essential-step__list-txt--margin {
    margin-bottom: 0.3125rem;
  }
  .p-entrance-essential-step__txt-list .p-entrance-essential-step__list-txt::before {
    padding-inline: 0.1875rem;
  }
  .p-entrance-essential-step__btn {
    margin-top: 0.9375rem;
  }
  .p-entrance-essential-step__btn-row {
    display: flex;
    margin-block: 0.625rem;
  }
  .p-entrance-essential-step__btn-row .c-btn__btn {
    width: 18.75rem;
  }
  .p-entrance-essential-step__btn-row .c-btn__btn:not(:first-of-type) {
    margin-left: 0.8125rem;
  }
  .p-entrance-essential-step__btn-row .c-btn__btn--wt {
    font-size: 0.8125rem;
  }
  .p-entrance-essential-step__caution {
    font-size: 0.75rem;
    margin-top: 0.5rem;
  }
  .p-entrance-essential-step__caution--margin {
    margin-top: 0.9375rem;
  }
  .p-entrance-essential-step__caution--large {
    font-size: 0.875rem;
    margin: 0;
  }
}
@media (max-width: 767px) {
  .p-entrance-essential-step__item:not(:last-of-type) {
    margin-bottom: min(30px, 7.6923076923vw);
  }
  .p-entrance-essential-step__ttl {
    font-size: min(22px, 5.641025641vw);
    column-gap: min(10px, 2.5641025641vw);
    padding-bottom: min(19px, 4.8717948718vw);
    margin-bottom: min(15px, 3.8461538462vw);
  }
  .p-entrance-essential-step__ttl > span {
    font-size: min(15px, 3.8461538462vw);
    padding: min(3px, 0.7692307692vw) min(19px, 4.8717948718vw);
  }
  .p-entrance-essential-step__list-ttl {
    font-size: min(18px, 4.6153846154vw);
    margin-block: min(20px, 5.1282051282vw) min(15px, 3.8461538462vw);
  }
  .p-entrance-essential-step__list-ttl--small {
    font-size: min(16px, 4.1025641026vw);
    margin-block: min(20px, 5.1282051282vw) 0;
  }
  .p-entrance-essential-step__list-ttl--margin {
    margin-block: min(15px, 3.8461538462vw) min(8px, 2.0512820513vw);
  }
  .p-entrance-essential-step__list-txt {
    font-size: min(16px, 4.1025641026vw);
    line-height: 1.5625;
  }
  .p-entrance-essential-step__list-txt--margin {
    margin-bottom: min(5px, 1.2820512821vw);
  }
  .p-entrance-essential-step__btn {
    padding-right: min(26px, 6.6666666667vw);
    margin-top: min(15px, 3.8461538462vw);
  }
  .p-entrance-essential-step__btn-row {
    padding-right: min(26px, 6.6666666667vw);
    margin-block: min(15px, 3.8461538462vw);
  }
  .p-entrance-essential-step__btn-row .c-btn__btn:not(:first-of-type) {
    margin-top: min(15px, 3.8461538462vw);
  }
  .p-entrance-essential-step__btn-row .c-btn__btn--wt {
    font-size: min(13px, 3.3333333333vw);
  }
  .p-entrance-essential-step__txt-list .p-entrance-essential-step__list-txt::before {
    padding-inline: min(3px, 0.7692307692vw);
  }
  .p-entrance-essential-step__caution {
    font-size: min(12px, 3.0769230769vw);
  }
  .p-entrance-essential-step__caution--margin {
    margin-top: min(15px, 3.8461538462vw);
  }
  .p-entrance-essential-step__caution--large {
    font-size: min(14px, 3.5897435897vw);
    margin: 0;
  }
}

/* .p-highschool-movies-top
----------------------------------- */
.p-highschool-movies-top__cont {
  margin: 0;
}
@media (min-width: 768px) {
  .p-highschool-movies-top {
    padding-block: 1.0625rem 3.75rem;
  }
}
@media (max-width: 767px) {
  .p-highschool-movies-top {
    padding-bottom: min(51px, 13.0769230769vw);
  }
}

/* .p-highschool-movies
----------------------------------- */
.p-highschool-movies {
  color: #009b77;
}
.p-highschool-movies--grn {
  color: #45b035;
}
.p-highschool-movies--org {
  color: #f08300;
}
.p-highschool-movies--yel {
  color: #f8b500;
}
.p-highschool-movies__ttl {
  font-weight: 700;
}
.p-highschool-movies__cont-modal-btn {
  display: block;
  transition: opacity 0.1s linear;
}
@media (any-hover: hover) {
  .p-highschool-movies__cont-modal-btn:hover {
    opacity: 0.7;
  }
}
.p-highschool-movies__cont-img {
  background-color: #fff;
  aspect-ratio: 660/371;
  position: relative;
  overflow: hidden;
}
.p-highschool-movies__cont-img img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-highschool-movies__thumb-ttl {
  display: block;
  font-weight: 700;
  line-height: 1.4;
}
.p-highschool-movies__thumb-txt {
  font-weight: 500;
  color: #1e1e1e;
  line-height: 1.5384615385;
}
.p-highschool-movies__slide-modal-btn {
  display: block;
  width: 100%;
  transition: opacity 0.1s linear;
}
@media (any-hover: hover) {
  .p-highschool-movies__slide-modal-btn:hover {
    opacity: 0.7;
  }
}
.p-highschool-movies__slide-img {
  background-color: #fff;
  aspect-ratio: 320/178;
  position: relative;
  overflow: hidden;
}
.p-highschool-movies__slide-img img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-highschool-movies__slide-ttl {
  display: block;
  font-weight: 700;
  line-height: 1.5625;
}
.p-highschool-movies__slide-txt {
  font-weight: 500;
  color: #1e1e1e;
  line-height: 1.5384615385;
}
@media (min-width: 768px) {
  .p-highschool-movies {
    padding-block: 3.875rem 4.875rem;
    border-top: solid 1px #009b77;
  }
  .p-highschool-movies--grn {
    border-top: solid 1px #45b035;
  }
  .p-highschool-movies--org {
    border-top: solid 1px #f08300;
  }
  .p-highschool-movies--yel {
    border-top: solid 1px #f8b500;
  }
  .p-highschool-movies__wrap {
    width: 62.125rem;
    margin-inline: auto;
  }
  .p-highschool-movies__ttl {
    font-size: 1.875rem;
    line-height: 1.0666666667;
    margin-bottom: 1.625rem;
  }
  .p-highschool-movies__cont {
    display: flex;
    align-items: flex-end;
    column-gap: 1.5625rem;
    margin-bottom: 2.25rem;
  }
  .p-highschool-movies__cont-modal-btn {
    width: 41.25rem;
    flex-shrink: 0;
  }
  .p-highschool-movies__cont-img {
    border: 10px solid #fff;
    border-radius: 20px;
  }
  .p-highschool-movies__thumb-ttl {
    font-size: 1.25rem;
    margin-bottom: 0.4375rem;
  }
  .p-highschool-movies__thumb-txt {
    font-size: 0.8125rem;
  }
  .p-highschool-movies__slider {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.25rem 1.0625rem;
  }
  .p-highschool-movies__slider-wrap {
    width: 62.125rem;
    margin-inline: auto;
  }
  .p-highschool-movies__slide {
    width: 20rem;
  }
  .p-highschool-movies__slide-img {
    border-radius: 10px;
  }
  .p-highschool-movies__slide-bloc {
    margin-top: 0.8125rem;
  }
  .p-highschool-movies__slide-ttl {
    font-size: 1rem;
    margin-bottom: 0.25rem;
  }
  .p-highschool-movies__slide-txt {
    font-size: 0.75rem;
  }
  .p-highschool-movies__arws {
    display: none;
  }
  .p-highschool-movies-more__slider {
    grid-template-columns: repeat(4, 1fr);
    column-gap: 2.375rem;
  }
  .p-highschool-movies-more__slider .p-highschool-movies__slide {
    width: 13.75rem;
  }
}
@media (max-width: 767px) {
  .p-highschool-movies {
    padding-bottom: min(51px, 13.0769230769vw);
  }
  .p-highschool-movies__wrap {
    padding-inline: min(15px, 3.8461538462vw);
  }
  .p-highschool-movies__ttl {
    font-size: min(25px, 6.4102564103vw);
    line-height: 1.32;
    margin-bottom: min(30px, 7.6923076923vw);
  }
  .p-highschool-movies__cont {
    margin-bottom: min(25px, 6.4102564103vw);
  }
  .p-highschool-movies__cont-modal-btn {
    width: 100%;
  }
  .p-highschool-movies__cont-img {
    border: 5px solid #fff;
    border-radius: 11px;
  }
  .p-highschool-movies__thumb-bloc {
    margin-top: min(15px, 3.8461538462vw);
  }
  .p-highschool-movies__thumb-ttl {
    font-size: min(20px, 5.1282051282vw);
    margin-bottom: min(7px, 1.7948717949vw);
  }
  .p-highschool-movies__thumb-txt {
    font-size: min(13px, 3.3333333333vw);
  }
  .p-highschool-movies__slider .slick-list {
    padding-inline: min(15px, 3.8461538462vw);
  }
  .p-highschool-movies__slide {
    width: min(320px, 82.0512820513vw);
    margin-right: min(20px, 5.1282051282vw);
  }
  .p-highschool-movies__slide-img {
    border-radius: 10px;
  }
  .p-highschool-movies__slide-bloc {
    margin-top: min(13px, 3.3333333333vw);
  }
  .p-highschool-movies__slide-ttl {
    font-size: min(16px, 4.1025641026vw);
    margin-bottom: min(4px, 1.0256410256vw);
  }
  .p-highschool-movies__slide-txt {
    font-size: min(13px, 3.3333333333vw);
  }
  .p-highschool-movies__arws {
    display: flex;
    justify-content: center;
    column-gap: min(13px, 3.3333333333vw);
    margin-top: min(20px, 5.1282051282vw);
  }
  .p-highschool-movies-more__slider .p-highschool-movies__slide {
    width: min(220px, 56.4102564103vw);
  }
}

/* .p-entrance-web
----------------------------------- */
.p-entrance-web__btn, .p-entrance-web__btn-caution {
  margin-inline: auto;
}
.p-entrance-web__btn-caution .c-btn__btn--wt {
  font-weight: 500;
}
.p-entrance-web__ttl {
  font-weight: 700;
  line-height: 1.4;
  margin-inline: auto;
}
.p-entrance-web__txt {
  line-height: 1.25;
}
@media (min-width: 768px) {
  .p-entrance-web {
    padding-block: 3.875rem 5.625rem;
  }
  .p-entrance-web__cont {
    padding-block: 1.9375rem 4.125rem;
  }
  .p-entrance-web__btn {
    width: 62rem;
    display: flex;
    flex-wrap: wrap;
  }
  .p-entrance-web__btn .c-btn__btn {
    width: 29.6875rem;
  }
  .p-entrance-web__btn .c-btn__btn:not(:nth-of-type(odd)) {
    margin-left: 1.5625rem;
  }
  .p-entrance-web__btn .c-btn__btn:not(:nth-of-type(1)):not(:nth-of-type(2)) {
    margin-top: 1.5rem;
  }
  .p-entrance-web__btn-caution {
    width: 62rem;
    display: flex;
    margin-top: 0.8125rem;
  }
  .p-entrance-web__btn-caution--margin {
    margin-top: 1.9375rem;
  }
  .p-entrance-web__btn-caution .c-btn__btn:not(:first-of-type) {
    margin-left: 0.8125rem;
  }
  .p-entrance-web__btn-caution .c-btn__btn--step {
    font-size: 0.875rem;
  }
  .p-entrance-web__btn-caution .c-btn__btn--wt {
    font-size: 0.8125rem;
  }
  .p-entrance-web__btn-caution .c-btn__btn--pdf {
    width: 19.875rem;
    padding-right: 2.5rem;
  }
  .p-entrance-web__btn-caution .c-btn__btn--excel {
    width: 18.75rem;
    padding-right: 1.875rem;
  }
  .p-entrance-web__ttl {
    width: 62rem;
    font-size: 1.25rem;
    margin-block: 1.25rem 0.625rem;
  }
  .p-entrance-web__txt {
    font-size: 1rem;
    margin-bottom: 0.625rem;
  }
}
@media (max-width: 767px) {
  .p-entrance-web {
    padding-block: min(50px, 12.8205128205vw) min(60px, 15.3846153846vw);
  }
  .p-entrance-web__cont {
    padding-block: min(41px, 10.5128205128vw) min(48px, 12.3076923077vw);
  }
  .p-entrance-web__btn {
    padding-inline: min(15px, 3.8461538462vw);
  }
  .p-entrance-web__btn .c-btn__btn:not(:nth-of-type(1)) {
    margin-top: min(16px, 4.1025641026vw);
  }
  .p-entrance-web__btn-caution {
    padding-inline: min(15px, 3.8461538462vw);
    margin-top: min(15px, 3.8461538462vw);
  }
  .p-entrance-web__btn-caution--margin {
    margin-top: min(20px, 5.1282051282vw);
  }
  .p-entrance-web__btn-caution .c-btn__btn:not(:first-of-type) {
    margin-top: min(16px, 4.1025641026vw);
  }
  .p-entrance-web__btn-caution .c-btn__btn--step {
    font-size: min(14px, 3.5897435897vw);
  }
  .p-entrance-web__btn-caution .c-btn__btn--wt {
    font-size: min(13px, 3.3333333333vw);
  }
  .p-entrance-web__ttl {
    font-size: min(20px, 5.1282051282vw);
    padding-inline: min(15px, 3.8461538462vw);
    margin-block: min(20px, 5.1282051282vw) min(10px, 2.5641025641vw);
  }
  .p-entrance-web__txt {
    font-size: min(16px, 4.1025641026vw);
    margin-bottom: min(10px, 2.5641025641vw);
  }
}

/* .p-entrance-scholarship
----------------------------------- */
.p-entrance-scholarship__txt {
  font-weight: 500;
  color: #ef490d;
  line-height: 1.75;
}
.p-entrance-scholarship__btn .c-btn__btn--wt {
  font-weight: 500;
}
@media (min-width: 768px) {
  .p-entrance-scholarship__txt {
    font-size: 1rem;
    margin-bottom: 0.9375rem;
  }
  .p-entrance-scholarship__wrap {
    display: flex;
    margin-bottom: 1.8125rem;
  }
  .p-entrance-scholarship__btn:not(:first-of-type) {
    margin-left: 1.5625rem;
  }
  .p-entrance-scholarship__btn .c-btn__btn--web {
    width: 29.6875rem;
    margin-bottom: 0.8125rem;
  }
  .p-entrance-scholarship__btn .c-btn__btn--wt {
    width: 21.5rem;
    font-size: 0.8125rem;
    padding-right: 2.5rem;
  }
}
@media (max-width: 767px) {
  .p-entrance-scholarship__txt {
    font-size: min(16px, 4.1025641026vw);
    margin-bottom: min(20px, 5.1282051282vw);
  }
  .p-entrance-scholarship__wrap {
    margin-bottom: min(40px, 10.2564102564vw);
  }
  .p-entrance-scholarship__btn:not(:first-of-type) {
    margin-top: min(30px, 7.6923076923vw);
  }
  .p-entrance-scholarship__btn .c-btn__btn--web {
    margin-bottom: min(16px, 4.1025641026vw);
  }
  .p-entrance-scholarship__btn .c-btn__btn--wt {
    font-size: min(13px, 3.3333333333vw);
    padding-right: min(20px, 5.1282051282vw);
  }
}

/* .p-entrance-essential-attention
----------------------------------- */
.p-entrance-essential-attention__txt strong {
  display: block;
  color: #ef490d;
}
.p-entrance-essential-attention__img-1, .p-entrance-essential-attention__img-2 {
  display: block;
  width: 100%;
}
.p-entrance-essential-attention__img-1 img, .p-entrance-essential-attention__img-2 img {
  display: block;
  width: 100%;
  height: 100%;
}
@media (min-width: 768px) {
  .p-entrance-essential-attention__txt {
    font-size: 1rem;
    line-height: 1.75;
    margin-bottom: 1rem;
  }
  .p-entrance-essential-attention__img-1 {
    width: 34.125rem;
  }
  .p-entrance-essential-attention__img-2 {
    width: 32.9375rem;
  }
}
@media (max-width: 767px) {
  .p-entrance-essential-attention__txt {
    font-size: min(16px, 4.1025641026vw);
    line-height: 1.5625;
    margin-bottom: min(16px, 4.1025641026vw);
  }
  .p-entrance-essential-attention__img-1, .p-entrance-essential-attention__img-2 {
    width: 100%;
  }
}

/* .p-entrance-practice
----------------------------------- */
.p-entrance-practice__txt {
  font-weight: 500;
  line-height: 2.3529411765;
}
.p-entrance-practice__txt--grn {
  color: #009b77;
}
.p-entrance-practice__ttl {
  font-weight: 700;
  color: #009b77;
  line-height: 1.6;
}
.p-entrance-practice__ttl--org {
  color: #f08300;
}
.p-entrance-practice__item-ttl {
  font-weight: 700;
  line-height: 1.4;
}
.p-entrance-practice__item-txt {
  line-height: 1.5625;
}
.p-entrance-practice__item-img {
  display: block;
}
.p-entrance-practice__item-img img {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 5px;
}
.p-entrance-practice__item-list-txt {
  line-height: 1.5625;
  display: flex;
}
.p-entrance-practice__item-list-txt::before {
  display: block;
  flex-shrink: 0;
}
.p-entrance-practice__item-list-txt a {
  text-decoration: underline;
}
@media (any-hover: hover) {
  .p-entrance-practice__item-list-txt a:hover {
    text-decoration: none;
  }
}
.p-entrance-practice__item-list-txt:nth-child(1)::before {
  content: "1.";
}
.p-entrance-practice__item-list-txt:nth-child(2)::before {
  content: "2.";
}
.p-entrance-practice__item-list-txt:nth-child(3)::before {
  content: "3.";
}
.p-entrance-practice__item-list-txt:nth-child(4)::before {
  content: "4.";
}
.p-entrance-practice__item-list-txt:nth-child(5)::before {
  content: "5.";
}
.p-entrance-practice__item-list-txt:nth-child(6)::before {
  content: "6.";
}
.p-entrance-practice__item-list-txt:nth-child(7)::before {
  content: "7.";
}
.p-entrance-practice__item-list-txt:nth-child(8)::before {
  content: "8.";
}
.p-entrance-practice__item-list-txt:nth-child(9)::before {
  content: "9.";
}
.p-entrance-practice__item-list-txt:nth-child(10)::before {
  content: "10.";
}
.p-entrance-practice__item-list-txt:nth-child(11)::before {
  content: "11.";
}
.p-entrance-practice__item-list-txt:nth-child(12)::before {
  content: "12.";
}
.p-entrance-practice__item-list-txt:nth-child(13)::before {
  content: "13.";
}
.p-entrance-practice__item-list-txt:nth-child(14)::before {
  content: "14.";
}
.p-entrance-practice__item-list-txt:nth-child(15)::before {
  content: "15.";
}
.p-entrance-practice__item-list-txt:nth-child(16)::before {
  content: "16.";
}
.p-entrance-practice__item-list-txt:nth-child(17)::before {
  content: "17.";
}
.p-entrance-practice__item-list-txt:nth-child(18)::before {
  content: "18.";
}
.p-entrance-practice__item-list-txt:nth-child(19)::before {
  content: "19.";
}
.p-entrance-practice__item-list-txt:nth-child(20)::before {
  content: "20.";
}
@media (min-width: 768px) {
  .p-entrance-practice {
    padding-block: 5.0625rem;
  }
  .p-entrance-practice__wrap {
    width: 60rem;
    margin-inline: auto;
  }
  .p-entrance-practice__btn {
    display: flex;
    justify-content: center;
    margin-bottom: 3.625rem;
  }
  .p-entrance-practice__txt {
    font-size: 1.0625rem;
  }
  .p-entrance-practice__list {
    margin-top: 2.3125rem;
  }
  .p-entrance-practice__ttl {
    font-size: 1.25rem;
  }
  .p-entrance-practice__item {
    display: flex;
    align-items: flex-end;
    gap: 2.0625rem;
  }
  .p-entrance-practice__item:not(:last-of-type) {
    margin-bottom: 1.875rem;
  }
  .p-entrance-practice__item-ttl {
    font-size: 1.25rem;
    margin-bottom: 1.0625rem;
  }
  .p-entrance-practice__item-txt {
    font-size: 1rem;
  }
  .p-entrance-practice__item-txt--margin {
    margin-bottom: 0.4375rem;
  }
  .p-entrance-practice__item-img {
    width: 15rem;
  }
  .p-entrance-practice__item-list-txt {
    font-size: 1rem;
  }
  .p-entrance-practice__item-list-txt::before {
    margin-inline: 0.3125rem;
  }
}
@media (max-width: 767px) {
  .p-entrance-practice {
    padding-block: min(80px, 20.5128205128vw);
  }
  .p-entrance-practice__wrap {
    padding-inline: min(15px, 3.8461538462vw);
  }
  .p-entrance-practice__btn {
    margin-bottom: min(53px, 13.5897435897vw);
  }
  .p-entrance-practice__txt {
    font-size: min(17px, 4.358974359vw);
  }
  .p-entrance-practice__list {
    margin-top: min(37px, 9.4871794872vw);
  }
  .p-entrance-practice__ttl {
    font-size: min(20px, 5.1282051282vw);
  }
  .p-entrance-practice__item:not(:last-of-type) {
    margin-bottom: min(30px, 7.6923076923vw);
  }
  .p-entrance-practice__item-ttl {
    font-size: min(20px, 5.1282051282vw);
    margin-bottom: min(17px, 4.358974359vw);
  }
  .p-entrance-practice__item-txt {
    font-size: min(16px, 4.1025641026vw);
  }
  .p-entrance-practice__item-txt--margin {
    margin-bottom: min(15px, 3.8461538462vw);
  }
  .p-entrance-practice__item-img {
    width: 100%;
    margin-top: min(20px, 5.1282051282vw);
  }
  .p-entrance-practice__item-list-txt {
    font-size: min(16px, 4.1025641026vw);
  }
  .p-entrance-practice__item-list-txt::before {
    margin-inline: min(5px, 1.2820512821vw);
  }
}

/* .p-entrance-visit
----------------------------------- */
.p-entrance-visit {
  background-color: #fffbe0;
}
@media (min-width: 768px) {
  .p-entrance-visit {
    padding-block: 3.1875rem 4.8125rem;
  }
  .p-entrance-visit__btn {
    margin-top: 1.6875rem;
  }
}
@media (max-width: 767px) {
  .p-entrance-visit {
    padding-block: min(50px, 12.8205128205vw) min(75px, 19.2307692308vw);
  }
  .p-entrance-visit__btn {
    margin-top: min(27px, 6.9230769231vw);
  }
}

/* .p-entrance-faq
----------------------------------- */
@media (min-width: 768px) {
  .p-entrance-faq {
    padding-top: 2.3125rem;
  }
  .p-entrance-faq__wrap {
    width: 60rem;
    margin-inline: auto;
  }
  .p-entrance-faq .p-event-please-faq__list {
    width: 62rem;
  }
}
@media (max-width: 767px) {
  .p-entrance-faq {
    padding-top: min(37px, 9.4871794872vw);
  }
  .p-entrance-faq__wrap {
    padding-inline: min(15px, 3.8461538462vw);
  }
}

/* .p-entrance-child
----------------------------------- */
@media (min-width: 768px) {
  .p-entrance-child__txt, .p-entrance-child__item {
    font-size: 1rem;
    line-height: 1.75;
  }
}
@media (max-width: 767px) {
  .p-entrance-child__txt, .p-entrance-child__item {
    font-size: min(16px, 4.1025641026vw);
    line-height: 1.5625;
  }
}

/* .p-entrance-ibuka
----------------------------------- */
@media (min-width: 768px) {
  .p-entrance-ibuka__caution {
    font-size: 1rem;
    margin-top: 0.9375rem;
    line-height: 1.75;
  }
}
@media (max-width: 767px) {
  .p-entrance-ibuka__caution {
    font-size: min(16px, 4.1025641026vw);
    margin-top: min(20px, 5.1282051282vw);
    line-height: 1.5625;
  }
}

/* .p-entrance-fee
----------------------------------- */
@media (min-width: 768px) {
  .p-entrance-fee__btn {
    display: flex;
    padding-top: 3.125rem;
  }
  .p-entrance-fee__btn .c-btn__btn:nth-of-type(1) {
    font-size: 0.8125rem;
  }
  .p-entrance-fee__btn .c-btn__btn:nth-of-type(2) {
    font-size: 0.875rem;
  }
  .p-entrance-fee__btn .c-btn__btn:not(:first-of-type) {
    margin-left: 1rem;
  }
}
@media (max-width: 767px) {
  .p-entrance-fee__btn {
    padding-top: min(61px, 15.641025641vw);
  }
  .p-entrance-fee__btn .c-btn__btn:nth-of-type(1) {
    font-size: min(14px, 3.5897435897vw);
  }
  .p-entrance-fee__btn .c-btn__btn:nth-of-type(2) {
    font-size: min(14px, 3.5897435897vw);
  }
  .p-entrance-fee__btn .c-btn__btn:not(:first-of-type) {
    margin-top: min(16px, 4.1025641026vw);
  }
}

/* .p-entrance-outside
----------------------------------- */
.p-entrance-outside__btn .c-btn__btn {
  text-decoration: underline;
}
@media (min-width: 768px) {
  .p-entrance-outside__btn {
    margin-top: 0.9375rem;
  }
  .p-entrance-outside__txt {
    margin-top: 3.125rem;
  }
}
@media (max-width: 767px) {
  .p-entrance-outside__btn {
    margin-top: min(15px, 3.8461538462vw);
  }
  .p-entrance-outside__txt {
    margin-top: min(61px, 15.641025641vw);
  }
}

/* .p-subject
----------------------------------- */
.p-subject__ttl {
  font-weight: 500;
}
.p-subject__ttl span {
  display: block;
  color: #1e1e1e;
}
.p-subject__ttl--bis {
  color: #45b035;
}
.p-subject__ttl--life {
  color: #f08300;
}
.p-subject__ttl--hoiku {
  color: #f8b500;
}
.p-subject__ttl--center {
  text-align: center;
}
.p-subject__ttl-sub {
  font-weight: 500;
  line-height: 1.5625;
}
.p-subject__ttl-sub--bis {
  color: #45b035;
}
.p-subject__ttl-sub--life {
  color: #f08300;
}
.p-subject__ttl-sub--hoiku {
  color: #f8b500;
}
.p-subject-link {
  display: grid;
}
.p-subject-link__item {
  position: relative;
}
@media (any-hover: hover) {
  .p-subject-link__item:hover {
    text-decoration: underline;
  }
}
.p-subject-link__item::after {
  display: block;
  aspect-ratio: 14/10;
  content: "";
  background: currentColor;
  mask: url("../img/common/arw.svg") no-repeat center center;
  mask-size: contain;
  position: absolute;
  transform: rotate(90deg);
}
.p-subject-link__item--arw::after {
  transform: none;
}
.p-subject-link--bis .p-subject-link__item {
  border-bottom: solid 1px #45b035;
  color: #45b035;
}
.p-subject-link--life .p-subject-link__item {
  border-bottom: solid 1px #f08300;
  color: #f08300;
}
.p-subject-link--hoiku .p-subject-link__item {
  border-bottom: solid 1px #f8b500;
  color: #f8b500;
}
.p-subject-link--hoiku .p-subject-link__item a {
  color: #1e1e1e;
}
@media (min-width: 768px) {
  .p-subject__ttl {
    font-size: 1.5625rem;
    text-align: center;
    letter-spacing: 0.1em;
  }
  .p-subject__ttl span {
    font-size: 1rem;
    letter-spacing: 0;
    margin-bottom: 0.8125rem;
  }
  .p-subject__ttl-sub {
    font-size: 1rem;
    margin-bottom: 0.9375rem;
  }
  .p-subject__btn {
    display: flex;
    justify-content: center;
  }
  .p-subject__btn--margin {
    margin-bottom: 1.5rem;
  }
  .p-subject-link {
    width: 62.3125rem;
    grid-template-columns: repeat(3, 1fr);
    gap: 0.1875rem 2.5rem;
    margin-inline: auto;
    margin-block: 2.8125rem 6.4375rem;
  }
  .p-subject-link__item::after {
    width: 14px;
    min-width: 14px;
    top: 20px;
    right: 12px;
  }
  .p-subject-link__item a {
    height: 3.25rem;
    display: flex;
    align-items: center;
  }
  .p-subject-link__item--arw::after {
    right: 0;
  }
  .p-subject-link--life {
    margin-block: 2.375rem 5.5rem;
  }
  .p-subject-link--hoiku {
    margin-block: 2.625rem 4.5rem;
  }
}
@media (max-width: 767px) {
  .p-subject__ttl {
    font-size: min(22px, 5.641025641vw);
    line-height: 1.5909090909;
  }
  .p-subject__ttl span {
    font-size: min(16px, 4.1025641026vw);
    margin-bottom: min(8px, 2.0512820513vw);
  }
  .p-subject__ttl-sub {
    font-size: min(16px, 4.1025641026vw);
    margin-bottom: min(15px, 3.8461538462vw);
  }
  .p-subject__btn {
    padding-inline: min(45px, 11.5384615385vw);
  }
  .p-subject__btn--margin {
    margin-bottom: min(48px, 12.3076923077vw);
  }
  .p-subject__btn .c-btn__btn:not(:first-of-type) {
    margin-top: min(15px, 3.8461538462vw);
  }
  .p-subject-link {
    grid-template-columns: 1fr;
    row-gap: min(10px, 2.5641025641vw);
    padding-inline: min(30px, 7.6923076923vw);
    margin-top: min(31px, 7.9487179487vw);
    margin-block: min(31px, 7.9487179487vw) min(53px, 13.5897435897vw);
  }
  .p-subject-link__item::after {
    width: min(14px, 3.5897435897vw);
    min-width: min(14px, 3.5897435897vw);
    top: min(10px, 2.5641025641vw);
    right: 1px;
  }
  .p-subject-link__item a {
    display: block;
    line-height: 2.1428571429;
    padding-bottom: min(6px, 1.5384615385vw);
  }
  .p-subject-link--life {
    margin-block: min(22px, 5.641025641vw) min(58px, 14.8717948718vw);
  }
}

/* .p-subject-head
----------------------------------- */
.p-subject-head {
  position: relative;
}
.p-subject-head--bis .p-subject-head__ttl,
.p-subject-head--bis .p-subject-head__copy {
  color: #45b035;
}
.p-subject-head--life .p-subject-head__ttl,
.p-subject-head--life .p-subject-head__copy {
  color: #f08300;
}
.p-subject-head--hoiku .p-subject-head__ttl {
  color: #f8b500;
}
.p-subject-head__fig .slick-list,
.p-subject-head__fig .slick-track {
  display: block;
  width: 100%;
  height: 100%;
}
.p-subject-head__img {
  display: block;
  width: 100%;
}
.p-subject-head__bloc {
  display: block grid;
}
.p-subject-head--bis .p-subject-head__bloc {
  border-bottom: solid 1px #45b035;
}
.p-subject-head--life .p-subject-head__bloc {
  border-bottom: solid 1px #f08300;
}
.p-subject-head--hoiku .p-subject-head__bloc {
  border-bottom: solid 1px #f8b500;
}
.p-subject-head__copy {
  font-weight: 500;
}
.p-subject-head__ttl {
  margin-block: var(--leading-trim);
  font-weight: 700;
}
.p-subject-head__list-wrap {
  display: flex;
}
.p-subject-head__item {
  font-weight: 500;
  line-height: 1.6666666667;
}
.p-subject-head__item::before {
  content: "-";
  display: inline-block;
  margin-right: 3px;
}
@media (min-width: 768px) {
  .p-subject-head {
    height: 300px;
  }
  .p-subject-head__fig {
    position: absolute;
    inset-block: 0;
    right: 0;
    width: min(799px, 57.0714285714%);
  }
  .p-subject-head__img {
    height: 100%;
    object-fit: cover;
  }
  .p-subject-head__bloc {
    row-gap: 21px;
    place-content: center start;
    height: 100%;
  }
  .p-subject-head__copy {
    font-size: 1rem;
    line-height: 1.5625;
  }
  .p-subject-head__ttl {
    font-size: 1.75rem;
  }
  .p-subject-head__list-wrap {
    column-gap: 1.5625rem;
    margin-top: 1rem;
  }
  .p-subject-head__item {
    font-size: 0.75rem;
  }
}
@media (max-width: 767px) {
  .p-subject-head__bloc {
    row-gap: min(10px, 2.5641025641vw);
    padding: min(24px, 6.1538461538vw) min(32px, 8.2051282051vw) min(42px, 10.7692307692vw);
  }
  .p-subject-head__copy {
    font-size: min(15px, 3.8461538462vw);
    line-height: 1.6666666667;
  }
  .p-subject-head__ttl {
    font-size: min(25px, 6.4102564103vw);
  }
  .p-subject-head__list-wrap {
    flex-wrap: wrap;
    column-gap: min(23px, 5.8974358974vw);
    margin-top: min(9px, 2.3076923077vw);
  }
  .p-subject-head__item {
    font-size: min(12px, 3.0769230769vw);
  }
}

/* .p-subject-support
----------------------------------- */
.p-subject-support__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-subject-support__ttl {
  font-weight: 700;
  letter-spacing: 0.1em;
  line-height: 1.25;
}
.p-subject-support__ttl span {
  display: block;
  color: #f8b500;
  letter-spacing: 0.1em;
  line-height: 1.25;
}
.p-subject-support__ttl--bis span {
  color: #45b035;
  line-height: 1.5;
}
.p-subject-support__ttl--life span {
  color: #f08300;
}
.p-subject-support__txt {
  line-height: 1.5384615385;
}
.p-subject-support__slide-img {
  aspect-ratio: 225/146;
  overflow: hidden;
}
.p-subject-support__slide-img img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-subject-support__slide-ttl {
  font-weight: 700;
  color: #45b035;
  line-height: 1.3846153846;
}
.p-subject-support__slide-ttl--blu {
  color: #3e86c1;
}
.p-subject-support__slide-ttl--life {
  color: #f08300;
}
.p-subject-support__slide-txt {
  line-height: 1.5;
}
@media (min-width: 768px) {
  .p-subject-support {
    padding-block: 3.5rem 5.8125rem;
  }
  .p-subject-support--life {
    padding-block: 3.5rem 5.125rem;
  }
  .p-subject-support__wrap {
    width: 61.5rem;
    margin-inline: auto;
  }
  .p-subject-support__cont {
    display: flex;
    column-gap: 2rem;
    margin-block: 3.625rem 1.5625rem;
  }
  .p-subject-support__cont--bis {
    padding-right: min(100px, 25.641025641vw);
  }
  .p-subject-support__img {
    width: 29.9375rem;
    height: 100%;
    flex-shrink: 0;
  }
  .p-subject-support__img img {
    border-radius: 0.625rem;
  }
  .p-subject-support__ttl {
    font-size: 1rem;
    margin-bottom: 0.9375rem;
  }
  .p-subject-support__ttl span {
    font-size: 1.25rem;
  }
  .p-subject-support__ttl--life span {
    margin-top: 0.5rem;
  }
  .p-subject-support__txt {
    font-size: 0.8125rem;
  }
  .p-subject-support__slider {
    width: 61.5rem;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    column-gap: 1.75rem;
    margin-inline: auto;
  }
  .p-subject-support__slide-img {
    border-radius: 0.3125rem;
    margin-bottom: 0.875rem;
  }
  .p-subject-support__slide-ttl {
    font-size: 0.8125rem;
    margin-bottom: 0.3125rem;
  }
  .p-subject-support__slide-txt {
    font-size: 0.75rem;
  }
  .p-subject-support__arws {
    display: none;
  }
  .p-subject-support__btn {
    width: 18.6875rem;
    margin-top: 2.3125rem;
    margin-inline: auto;
  }
}
@media (max-width: 767px) {
  .p-subject-support {
    padding-block: min(38px, 9.7435897436vw) min(51px, 13.0769230769vw);
  }
  .p-subject-support__wrap {
    padding-inline: min(29px, 7.4358974359vw);
  }
  .p-subject-support__cont {
    margin-block: min(30px, 7.6923076923vw) min(25px, 6.4102564103vw);
  }
  .p-subject-support__img {
    width: 100%;
    margin-bottom: min(15px, 3.8461538462vw);
  }
  .p-subject-support__img img {
    border-radius: min(3px, 0.7692307692vw);
  }
  .p-subject-support__ttl {
    font-size: min(16px, 4.1025641026vw);
    margin-bottom: min(15px, 3.8461538462vw);
  }
  .p-subject-support__ttl span {
    font-size: min(22px, 5.641025641vw);
  }
  .p-subject-support__ttl--life span {
    margin-top: min(8px, 2.0512820513vw);
  }
  .p-subject-support__txt {
    font-size: min(13px, 3.3333333333vw);
  }
  .p-subject-support__slider .slick-list {
    padding-inline: min(29px, 7.4358974359vw);
  }
  .p-subject-support__slide {
    width: min(225px, 57.6923076923vw);
    margin-right: min(28px, 7.1794871795vw);
  }
  .p-subject-support__slide-img {
    border-radius: min(5px, 1.2820512821vw);
    margin-bottom: min(14px, 3.5897435897vw);
  }
  .p-subject-support__slide-ttl {
    font-size: min(13px, 3.3333333333vw);
    margin-bottom: min(5px, 1.2820512821vw);
  }
  .p-subject-support__slide-txt {
    font-size: min(12px, 3.0769230769vw);
  }
  .p-subject-support__arws {
    display: flex;
    justify-content: center;
    column-gap: min(13px, 3.3333333333vw);
    margin-top: min(20px, 5.1282051282vw);
    margin-bottom: min(38px, 9.7435897436vw);
  }
  .p-subject-support__btn {
    padding-inline: min(45px, 11.5384615385vw);
    margin-top: min(30px, 7.6923076923vw);
  }
}

/* .p-subject-license
----------------------------------- */
.p-subject-license__ttl {
  font-weight: 500;
}
.p-subject-license__ttl--bis {
  color: #45b035;
}
.p-subject-license__ttl--media {
  color: #3e86c1;
}
.p-subject-license__ttl--other {
  color: #009b77;
}
.p-subject-license__list--bis .p-subject-license__item-ttl {
  color: #45b035;
}
.p-subject-license__list--media .p-subject-license__item-ttl {
  color: #3e86c1;
}
.p-subject-license__list--other .p-subject-license__item-ttl {
  color: #009b77;
}
.p-subject-license__item-ttl {
  display: block;
  font-weight: 500;
  color: #f08300;
}
.p-subject-license__item-txt {
  line-height: 1.5;
}
@media (min-width: 768px) {
  .p-subject-license__wrap {
    width: 62.25rem;
    margin-inline: auto;
  }
  .p-subject-license__ttl {
    font-size: 1rem;
    line-height: 1.5625;
    margin-bottom: 0.9375rem;
    pointer-events: none;
  }
  .p-subject-license__list {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr);
    gap: 1.3125rem 1.125rem;
  }
  .p-subject-license__list:not(:last-of-type) {
    margin-bottom: 3.125rem;
  }
  .p-subject-license__list--life:not(:last-of-type) {
    margin-bottom: 1.875rem;
  }
  .p-subject-license__list-wrap {
    margin-block: 2.375rem 5.125rem;
  }
  .p-subject-license__list-row {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 1.75rem;
    margin-top: 3.125rem;
  }
  .p-subject-license__list-row .p-subject-license__list {
    grid-template-columns: repeat(2, 1fr);
  }
  .p-subject-license__item-ttl {
    font-size: 0.8125rem;
    line-height: 1.6923076923;
    margin-bottom: 0.3125rem;
    cursor: auto;
  }
  .p-subject-license__item-txt {
    display: block !important;
    font-size: 0.75rem;
  }
}
@media (max-width: 767px) {
  .p-subject-license__wrap {
    padding-inline: min(30px, 7.6923076923vw);
  }
  .p-subject-license__ttl {
    width: 100%;
    font-size: min(20px, 5.1282051282vw);
    line-height: 1.25;
    margin-bottom: min(16px, 4.1025641026vw);
  }
  .p-subject-license__list {
    margin-bottom: min(40px, 10.2564102564vw);
  }
  .p-subject-license__list-wrap {
    margin-block: min(29px, 7.4358974359vw) min(66px, 16.9230769231vw);
  }
  .p-subject-license__list-row {
    display: contents;
  }
  .p-subject-license__list--bis .p-subject-license__item {
    border: solid 1px #45b035;
  }
  .p-subject-license__list--bis .p-subject-license__icon::before, .p-subject-license__list--bis .p-subject-license__icon::after {
    background-color: #45b035;
  }
  .p-subject-license__list--media .p-subject-license__item {
    border: solid 1px #3e86c1;
  }
  .p-subject-license__list--media .p-subject-license__icon::before, .p-subject-license__list--media .p-subject-license__icon::after {
    background-color: #3e86c1;
  }
  .p-subject-license__list--other .p-subject-license__item {
    border: solid 1px #009b77;
  }
  .p-subject-license__list--other .p-subject-license__icon::before, .p-subject-license__list--other .p-subject-license__icon::after {
    background-color: #009b77;
  }
  .p-subject-license__item {
    border: solid 1px #f08300;
    border-radius: min(10px, 2.5641025641vw);
    padding-bottom: min(3px, 0.7692307692vw);
  }
  .p-subject-license__item:not(:last-of-type) {
    margin-bottom: min(10px, 2.5641025641vw);
  }
  .p-subject-license__item-ttl {
    width: 100%;
    font-size: min(16px, 4.1025641026vw);
    line-height: 1.5625;
    padding: min(20px, 5.1282051282vw) min(69px, 17.6923076923vw) min(17px, 4.358974359vw) min(28px, 7.1794871795vw);
    position: relative;
  }
  .p-subject-license__item-txt {
    display: none;
    font-size: min(12px, 3.0769230769vw);
    padding: 0 min(24px, 6.1538461538vw) min(28px, 7.1794871795vw) min(31px, 7.9487179487vw);
  }
  .p-subject-license__icon {
    width: min(20px, 5.1282051282vw);
    height: min(20px, 5.1282051282vw);
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    transform: translateY(-50%);
    top: 50%;
    right: min(24px, 6.1538461538vw);
  }
  .p-subject-license__icon::before, .p-subject-license__icon::after {
    content: "";
    background-color: #f08300;
    width: 100%;
    height: 1px;
    position: absolute;
    transform: translate(-50%, 50%);
    top: 50%;
    left: 50%;
    transition: transform 0.2s ease-out;
  }
  .p-subject-license__icon::after {
    transform: translate(-50%, 50%) rotate(90deg);
  }
  .p-subject-license__list .js-accordion-btn[aria-expanded=true] .p-subject-license__icon::after {
    transform: translate(-50%, 50%) rotate(0deg);
  }
}

/* .p-subject-feature
----------------------------------- */
.p-subject-feature__img {
  width: 100%;
  overflow: hidden;
}
.p-subject-feature__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-subject-feature__list--bis .p-subject-feature__item-ttl span {
  color: #45b035;
}
.p-subject-feature__list--life .p-subject-feature__item-ttl span {
  color: #f08300;
}
.p-subject-feature__list--hoiku .p-subject-feature__item-ttl span {
  color: #f8b500;
}
.p-subject-feature__item-ttl {
  font-weight: 500;
}
.p-subject-feature__item-ttl span {
  display: block;
  font-weight: 500;
  line-height: 1.25;
}
.p-subject-feature__topics {
  background-color: #fffbe0;
  position: relative;
}
.p-subject-feature__topics-ttl {
  font-weight: 700;
  line-height: 1.6;
  text-align: center;
}
.p-subject-feature__topics-ttl span {
  display: block;
  line-height: 1.6666666667;
}
.p-subject-feature__topics-item {
  background-color: #fff;
}
.p-subject-feature__topics-item-num {
  font-weight: 700;
  line-height: 1.3333333333;
}
.p-subject-feature__topics-item-ttl {
  font-weight: 700;
  line-height: 1.3846153846;
}
.p-subject-feature__topics-item-txt {
  line-height: 1.5;
}
.p-subject-feature__topics-img {
  overflow: hidden;
}
.p-subject-feature__topics-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-subject-feature__topics--bis .p-subject-feature__topics-ttl,
.p-subject-feature__topics--bis .p-subject-feature__topics-item-num,
.p-subject-feature__topics--bis .p-subject-feature__topics-item-ttl {
  color: #45b035;
}
.p-subject-feature__topics--life .p-subject-feature__topics-ttl,
.p-subject-feature__topics--life .p-subject-feature__topics-item-num,
.p-subject-feature__topics--life .p-subject-feature__topics-item-ttl {
  color: #f08300;
}
.p-subject-feature__topics--life .p-subject-feature__topics-item-ttl {
  font-weight: 500;
  color: #1e1e1e;
  line-height: 1.5625;
}
.p-subject-feature__topics--life .p-subject-feature__topics-item-ttl em {
  font-weight: 700;
  color: #f08300;
}
.p-subject-feature__topics--hoiku .p-subject-feature__topics-ttl,
.p-subject-feature__topics--hoiku .p-subject-feature__topics-item-num,
.p-subject-feature__topics--hoiku .p-subject-feature__topics-item-ttl {
  color: #f8b500;
}
@media (min-width: 768px) {
  .p-subject-feature__wrap {
    width: 62.25rem;
    margin-inline: auto;
  }
  .p-subject-feature__list {
    width: 62.25rem;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.875rem 2.375rem;
    margin-inline: auto;
    margin-top: 2.8125rem;
  }
  .p-subject-feature__list--hoiku {
    margin-block: 2.5rem 2.25rem;
  }
  .p-subject-feature__item-ttl {
    font-size: 1rem;
    line-height: 1.25;
    margin-bottom: 0.9375rem;
  }
  .p-subject-feature__item-ttl span {
    font-size: 1.25rem;
    margin-top: 0.5rem;
  }
  .p-subject-feature__item-txt {
    font-size: 0.8125rem;
    line-height: 1.5384615385;
  }
  .p-subject-feature__item-btn {
    width: 18.6875rem;
    margin-top: 1.25rem;
    margin-inline: auto;
  }
  .p-subject-feature__img {
    border-radius: 0.625rem;
    margin-bottom: 0.9375rem;
  }
  .p-subject-feature__btn {
    width: 421px;
    margin-inline: auto;
  }
  .p-subject-feature__btn .c-btn__btn {
    width: 100%;
  }
  .p-subject-feature__topics {
    padding-block: 3.125rem;
  }
  .p-subject-feature__topics-ttl {
    font-size: 1.25rem;
    margin-bottom: 1.625rem;
  }
  .p-subject-feature__topics-ttl span {
    font-size: 1.125rem;
  }
  .p-subject-feature__topics-list {
    width: 62.25rem;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    column-gap: 0.75rem;
    margin-inline: auto;
  }
  .p-subject-feature__topics-item {
    border-radius: 0.3125rem;
    padding: 0.9375rem 1.5rem;
  }
  .p-subject-feature__topics-item-num {
    font-size: 0.9375rem;
    margin-bottom: 0.9375rem;
  }
  .p-subject-feature__topics-item-ttl {
    font-size: 0.8125rem;
    margin-bottom: 0.25rem;
  }
  .p-subject-feature__topics-item-txt {
    font-size: 0.75rem;
  }
  .p-subject-feature__topics-img {
    border-radius: 0.3125rem;
    margin-bottom: 0.625rem;
  }
  .p-subject-feature__topics--bis {
    margin-top: 3.125rem;
  }
  .p-subject-feature__topics--life {
    padding-block: 15px 4rem;
  }
  .p-subject-feature__topics--life .p-subject-feature__topics-ttl {
    margin-top: 0.75rem;
  }
  .p-subject-feature__topics--life .p-subject-feature__topics-item-ttl {
    font-size: 1rem;
    line-height: 1.5625;
  }
  .p-subject-feature__topics--life .p-subject-feature__topics-item {
    padding: 0.9375rem 1.5rem 2.625rem;
  }
  .p-subject-feature__topics--hoiku {
    margin-top: 3.75rem;
  }
}
@media (max-width: 767px) {
  .p-subject-feature__wrap {
    padding-inline: min(30px, 7.6923076923vw);
  }
  .p-subject-feature__img {
    border-radius: min(6px, 1.5384615385vw);
    margin-bottom: min(10px, 2.5641025641vw);
  }
  .p-subject-feature__list {
    margin-top: min(30px, 7.6923076923vw);
  }
  .p-subject-feature__list .slick-list {
    padding-inline: min(30px, 7.6923076923vw);
  }
  .p-subject-feature__item {
    width: min(300px, 76.9230769231vw);
    margin-right: min(25px, 6.4102564103vw);
  }
  .p-subject-feature__item-ttl {
    font-size: min(16px, 4.1025641026vw);
    line-height: 1.4375;
    margin-bottom: min(10px, 2.5641025641vw);
  }
  .p-subject-feature__item-ttl span {
    font-size: min(20px, 5.1282051282vw);
    font-weight: 500;
    line-height: 1.25;
    margin-top: min(3px, 0.7692307692vw);
  }
  .p-subject-feature__item-txt {
    font-size: min(13px, 3.3333333333vw);
    line-height: 1.6923076923;
  }
  .p-subject-feature__item-btn {
    width: 100%;
    margin-top: min(15px, 3.8461538462vw);
  }
  .p-subject-feature__arws {
    display: flex;
    justify-content: center;
    column-gap: min(13px, 3.3333333333vw);
    margin-top: min(13px, 3.3333333333vw);
  }
  .p-subject-feature__btn {
    width: 100%;
    padding-inline: min(45px, 11.5384615385vw);
    margin-top: min(36px, 9.2307692308vw);
  }
  .p-subject-feature__btn .c-btn__btn {
    width: 100%;
  }
  .p-subject-feature__topics {
    padding-block: min(60px, 15.3846153846vw) min(33px, 8.4615384615vw);
  }
  .p-subject-feature__topics-ttl {
    font-size: min(20px, 5.1282051282vw);
    margin-bottom: min(20px, 5.1282051282vw);
  }
  .p-subject-feature__topics-ttl span {
    font-size: min(18px, 4.6153846154vw);
  }
  .p-subject-feature__topics-list .slick-list {
    padding-inline: min(30px, 7.6923076923vw);
  }
  .p-subject-feature__topics-list--hoiku {
    margin-block: min(30px, 7.6923076923vw) min(43px, 11.0256410256vw);
  }
  .p-subject-feature__topics-item {
    width: min(240px, 61.5384615385vw);
    border-radius: min(5px, 1.2820512821vw);
    padding: min(15px, 3.8461538462vw) min(24px, 6.1538461538vw);
    margin-right: min(12px, 3.0769230769vw);
  }
  .p-subject-feature__topics-item-num {
    font-size: min(15px, 3.8461538462vw);
    margin-bottom: min(15px, 3.8461538462vw);
  }
  .p-subject-feature__topics-item-ttl {
    font-size: min(13px, 3.3333333333vw);
    margin-bottom: min(4px, 1.0256410256vw);
  }
  .p-subject-feature__topics-item-txt {
    font-size: min(12px, 3.0769230769vw);
  }
  .p-subject-feature__topics-img {
    border-radius: min(5px, 1.2820512821vw);
    margin-bottom: min(10px, 2.5641025641vw);
  }
  .p-subject-feature__topics-arws {
    display: flex;
    justify-content: center;
    column-gap: min(13px, 3.3333333333vw);
    margin-top: min(23px, 5.8974358974vw);
  }
  .p-subject-feature__topics--bis {
    margin-top: min(17px, 4.358974359vw);
  }
  .p-subject-feature__topics--life {
    padding-block: min(13px, 3.3333333333vw) min(33px, 8.4615384615vw);
  }
  .p-subject-feature__topics--life .p-subject-feature__topics-ttl {
    margin-top: min(32px, 8.2051282051vw);
  }
  .p-subject-feature__topics--life .p-subject-feature__topics-item-ttl {
    font-size: min(16px, 4.1025641026vw);
  }
  .p-subject-feature__topics--life .p-subject-feature__topics-item {
    padding: min(15px, 3.8461538462vw) min(24px, 6.1538461538vw) min(42px, 10.7692307692vw);
  }
  .p-subject-feature__topics--hoiku {
    margin-top: min(43px, 11.0256410256vw);
  }
}

/* .p-subject-learn
----------------------------------- */
.p-subject-learn__list--bis .p-subject-learn__item-ttl {
  color: #45b035;
}
.p-subject-learn__list--life .p-subject-learn__item-ttl {
  color: #f08300;
}
.p-subject-learn__list--hoiku .p-subject-learn__item-ttl {
  color: #f8b500;
}
.p-subject-learn__item-ttl {
  font-weight: 500;
  line-height: 1.5625;
}
.p-subject-learn__item-txt {
  line-height: 1.5384615385;
}
@media (min-width: 768px) {
  .p-subject-learn {
    padding-block: 3.75rem;
  }
  .p-subject-learn--bis {
    padding-block: 3.75rem 5.125rem;
  }
  .p-subject-learn--life {
    padding-block: 5.625rem 8.375rem;
  }
  .p-subject-learn__list {
    width: 62.3125rem;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    column-gap: 3rem;
    margin-inline: auto;
    margin-top: 2.8125rem;
  }
  .p-subject-learn__item-ttl {
    font-size: 1rem;
    margin-bottom: 1.125rem;
  }
  .p-subject-learn__item-txt {
    font-size: 0.8125rem;
    margin-bottom: 1.125rem;
  }
}
@media (max-width: 767px) {
  .p-subject-learn {
    padding-block: min(56px, 14.358974359vw) min(42px, 10.7692307692vw);
  }
  .p-subject-learn--bis {
    padding-block: min(56px, 14.358974359vw) min(55px, 14.1025641026vw);
  }
  .p-subject-learn--life {
    padding-block: min(81px, 20.7692307692vw) min(42px, 10.7692307692vw);
  }
  .p-subject-learn__list {
    margin-top: min(30px, 7.6923076923vw);
  }
  .p-subject-learn__list .slick-list {
    padding-inline: min(30px, 7.6923076923vw);
  }
  .p-subject-learn__item {
    width: min(300px, 76.9230769231vw);
    margin-right: min(12px, 3.0769230769vw);
  }
  .p-subject-learn__item-ttl {
    font-size: min(16px, 4.1025641026vw);
    margin-bottom: min(18px, 4.6153846154vw);
  }
  .p-subject-learn__item-txt {
    font-size: min(13px, 3.3333333333vw);
    margin-bottom: min(18px, 4.6153846154vw);
  }
  .p-subject-learn__arws {
    display: flex;
    justify-content: center;
    column-gap: min(13px, 3.3333333333vw);
    margin-top: min(22px, 5.641025641vw);
  }
}

/* .p-subject-bisinfo-course
----------------------------------- */
.p-subject-bisinfo-course__img {
  width: 100%;
  aspect-ratio: 479/255;
  overflow: hidden;
}
.p-subject-bisinfo-course__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-subject-bisinfo-course__item-ttl {
  font-weight: 500;
  line-height: 1.25;
}
.p-subject-bisinfo-course__item-ttl span {
  display: block;
  color: #3e86c1;
  line-height: 1.1363636364;
}
.p-subject-bisinfo-course__item-list {
  display: grid;
}
.p-subject-bisinfo-course__item-item {
  background-color: #f5f9fc;
  border: solid 1px #3e86c1;
  font-weight: 500;
  display: flex;
  align-items: center;
  justify-content: center;
}
.p-subject-bisinfo-course__item-item span {
  font-weight: 700;
  color: #3e86c1;
}
.p-subject-bisinfo-course__txt {
  line-height: 1.5384615385;
}
.p-subject-bisinfo-course__tag {
  display: flex;
  flex-wrap: wrap;
}
.p-subject-bisinfo-course__tag-item {
  background-color: #f5f9fc;
  width: max-content;
  border-radius: 100vmax;
  color: #3e86c1;
  display: flex;
  justify-content: center;
  align-items: center;
}
.p-subject-bisinfo-course__tag-item::before {
  content: "#";
  display: block;
  margin-right: 3px;
}
.p-subject-bisinfo-course__item--bis .p-subject-bisinfo-course__item-ttl span {
  color: #45b035;
}
.p-subject-bisinfo-course__item--bis .p-subject-bisinfo-course__item-item {
  background-color: #f6fbf5;
  border: solid 1px #45b035;
}
.p-subject-bisinfo-course__item--bis .p-subject-bisinfo-course__item-item span {
  color: #45b035;
}
.p-subject-bisinfo-course__item--bis .p-subject-bisinfo-course__tag-item {
  background-color: #f6fbf5;
  color: #45b035;
}
@media (min-width: 768px) {
  .p-subject-bisinfo-course {
    width: 62.25rem;
    padding-top: 5.625rem;
    margin-inline: auto;
  }
  .p-subject-bisinfo-course__ttl {
    display: none;
  }
  .p-subject-bisinfo-course__list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 2.25rem;
  }
  .p-subject-bisinfo-course__img {
    border-radius: 0.625rem;
    margin-bottom: 0.9375rem;
  }
  .p-subject-bisinfo-course__item-ttl {
    font-size: 1rem;
    margin-bottom: 0.9375rem;
  }
  .p-subject-bisinfo-course__item-ttl span {
    font-size: 1.375rem;
    margin-top: 0.5rem;
  }
  .p-subject-bisinfo-course__item-list {
    grid-template-columns: repeat(2, 1fr);
    gap: 0.3125rem;
    margin-bottom: 1.25rem;
  }
  .p-subject-bisinfo-course__item-item {
    height: 2.3125rem;
    border-radius: 0.2125rem;
    font-size: 0.8125rem;
  }
  .p-subject-bisinfo-course__txt {
    font-size: 0.8125rem;
    margin-bottom: 0.625rem;
  }
  .p-subject-bisinfo-course__tag {
    width: 26.9375rem;
    gap: 0.5rem 0.375rem;
  }
  .p-subject-bisinfo-course__tag-item {
    height: 1.875rem;
    padding-inline: 1.25rem;
  }
  .p-subject-bisinfo-course__btn {
    width: 18.6875rem;
    margin-top: 1.9375rem;
    margin-inline: auto;
  }
}
@media (max-width: 767px) {
  .p-subject-bisinfo-course {
    border-top: solid 1px #45b035;
    padding-top: min(56px, 14.358974359vw);
    padding-inline: min(30px, 7.6923076923vw);
    margin-top: min(42px, 10.7692307692vw);
  }
  .p-subject-bisinfo-course__ttl {
    font-size: min(22px, 5.641025641vw);
    font-weight: 500;
    color: #45b035;
    line-height: 1.1363636364;
    margin-bottom: min(37px, 9.4871794872vw);
  }
  .p-subject-bisinfo-course__img {
    border-radius: min(7px, 1.7948717949vw);
    margin-bottom: min(15px, 3.8461538462vw);
  }
  .p-subject-bisinfo-course__item-ttl {
    font-size: min(16px, 4.1025641026vw);
    margin-bottom: min(15px, 3.8461538462vw);
  }
  .p-subject-bisinfo-course__item-ttl span {
    font-size: min(22px, 5.641025641vw);
    margin-top: min(8px, 2.0512820513vw);
  }
  .p-subject-bisinfo-course__item:not(:last-of-type) {
    margin-bottom: min(37px, 9.4871794872vw);
  }
  .p-subject-bisinfo-course__item-list {
    grid-template-columns: 1fr;
    row-gap: min(8px, 2.0512820513vw);
    margin-bottom: min(20px, 5.1282051282vw);
  }
  .p-subject-bisinfo-course__item-item {
    height: min(37px, 9.4871794872vw);
    border-radius: min(3px, 0.8717948718vw);
    font-size: min(13px, 3.3333333333vw);
  }
  .p-subject-bisinfo-course__txt {
    font-size: min(13px, 3.3333333333vw);
    margin-bottom: min(14px, 3.5897435897vw);
  }
  .p-subject-bisinfo-course__tag {
    gap: min(8px, 2.0512820513vw) min(6px, 1.5384615385vw);
  }
  .p-subject-bisinfo-course__tag-item {
    height: 1.875rem;
    padding-inline: 1.25rem;
  }
  .p-subject-bisinfo-course__btn {
    padding-inline: min(15px, 3.8461538462vw);
    margin-top: min(20px, 5.1282051282vw);
  }
}

/* .p-subject-course
----------------------------------- */
.p-subject-course {
  background-color: #f6fbf5;
  position: relative;
  z-index: 1;
  overflow-x: clip;
}
.p-subject-course__link {
  position: sticky;
}
.p-subject-course__link-item {
  color: #45b035;
}
.p-subject-course__link-item--media {
  color: #3e86c1;
}
.p-subject-course__link-item a {
  display: flex;
  align-items: center;
}
@media (any-hover: hover) {
  .p-subject-course__link-item a:hover {
    text-decoration: underline;
  }
}
.p-subject-course__list {
  width: 100%;
}
.p-subject-course__item {
  position: relative;
}
.p-subject-course__item::after {
  content: "";
  background-color: #fff;
  width: 200vw;
  height: 9.375rem;
  position: absolute;
  bottom: 0;
  left: -50vw;
  pointer-events: none;
  z-index: -1;
}
.p-subject-course__ttl {
  font-weight: 500;
  color: #45b035;
}
.p-subject-course-field__item {
  background-color: #fff;
  border: solid 1px #45b035;
}
.p-subject-course-field__btn {
  width: 100%;
  display: flex;
  position: relative;
}
.p-subject-course-field__img {
  aspect-ratio: 1/1;
  flex-shrink: 0;
  overflow: hidden;
}
.p-subject-course-field__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-subject-course-field__ttl span {
  display: block;
  color: #45b035;
}
.p-subject-course-field__tag-item {
  font-weight: 500;
  color: #45b035;
}
.p-subject-course-field__tag-item::before {
  content: "#";
  display: inline-block;
}
.p-subject-course-field__icon {
  top: 5.375rem;
  right: 2.125rem;
}
.p-subject-course-field__icon::before, .p-subject-course-field__icon::after {
  background-color: #45b035;
}
.p-subject-course-field__list .js-accordion-btn[aria-expanded=true] .p-event-please-faq__icon::after {
  transform: translate(-50%, 50%) rotate(0deg);
}
.p-subject-course-field__txt-wrap {
  display: none;
  width: 100%;
}
.p-subject-course-field__txt {
  line-height: 1.5384615385;
}
.p-subject-course-field__item-list {
  display: flex;
  flex-wrap: wrap;
}
.p-subject-course-field__item-list-ttl {
  background-color: #f6fbf5;
  border-radius: 100vmax;
  font-weight: 500;
  color: #45b035;
  display: flex;
  justify-content: center;
  align-items: center;
}
.p-subject-course-field__item-list-txt {
  display: inline;
  line-height: 1.5;
}
.p-subject-course-field__item-list-txt::before {
  content: "●";
  display: inline;
  color: #45b035;
}
.p-subject-course-field__item-list-txt--block {
  display: block;
}
.p-subject-course__item--media {
  padding-top: 5.9375rem;
}
.p-subject-course__item--media::before {
  content: "";
  background-color: #f5f9fc;
  width: 200vw;
  height: 100%;
  top: 0;
  position: absolute;
  left: -50vw;
  pointer-events: none;
  z-index: -1;
}
.p-subject-course__item--media .p-subject-course__ttl {
  color: #3e86c1;
}
.p-subject-course__item--media .p-subject-course-field__item {
  border: solid 1px #3e86c1;
}
.p-subject-course__item--media .p-subject-course-field__ttl span {
  color: #3e86c1;
}
.p-subject-course__item--media .p-subject-course-field__icon::before, .p-subject-course__item--media .p-subject-course-field__icon::after {
  background-color: #3e86c1;
}
.p-subject-course__item--media .p-subject-course-field__tag-item {
  color: #3e86c1;
}
.p-subject-course__item--media .p-subject-course-field__item-list-ttl {
  background-color: #f5f9fc;
  color: #3e86c1;
}
.p-subject-course__item--media .p-subject-course-field__item-list-txt::before {
  color: #3e86c1;
}
@media (min-width: 768px) {
  .p-subject-course {
    padding-top: 7.75rem;
  }
  .p-subject-course__wrap {
    width: 62.9375rem;
    display: flex;
    column-gap: 5.5625rem;
    margin-inline: auto;
    position: relative;
  }
  .p-subject-course__link {
    width: 11.625rem;
    height: max-content;
    flex-shrink: 0;
    top: 6.5625rem;
  }
  .p-subject-course__link-item {
    border-bottom: solid 1px #45b035;
    font-size: 0.75rem;
    display: flex;
    align-items: center;
  }
  .p-subject-course__link-item--media {
    border-bottom: solid 1px #3e86c1;
  }
  .p-subject-course__link-item a {
    width: 100%;
    height: 2.5rem;
  }
  .p-subject-course__link-item::before {
    content: "-";
    display: block;
    margin-right: 0.25rem;
  }
  .p-subject-course__item::after {
    height: 6rem;
  }
  .p-subject-course__item:not(:last-of-type) {
    padding-bottom: 2.875rem;
  }
  .p-subject-course__item:not(:last-of-type)::after {
    height: 9.375rem;
  }
  .p-subject-course__ttl {
    font-size: 1.5625rem;
    margin-bottom: 1.875rem;
  }
  .p-subject-course-field__item {
    border-radius: 0.625rem;
    padding-bottom: 0.3125rem;
  }
  .p-subject-course-field__item:not(:last-of-type) {
    margin-bottom: 1.0625rem;
  }
  .p-subject-course-field__btn {
    column-gap: 1.375rem;
    padding: 1.3125rem 4.375rem 1rem 1.5rem;
  }
  .p-subject-course-field__img {
    width: 9.4375rem;
    height: 9.4375rem;
    border-radius: 0.3125rem;
  }
  .p-subject-course-field__ttl {
    font-size: 1rem;
    font-weight: 500;
    line-height: 1.5625;
    margin-bottom: 1.3125rem;
  }
  .p-subject-course-field__ttl span {
    font-size: 1.375rem;
    font-weight: 700;
    line-height: 1.1363636364;
    margin-top: 0.5625rem;
  }
  .p-subject-course-field__tag-item {
    display: inline-block;
    font-size: 0.75rem;
    line-height: 1.5;
  }
  .p-subject-course-field__tag-item:not(:last-of-type) {
    margin-right: 0.625rem;
  }
  .p-subject-course-field__icon {
    top: 5.375rem;
    right: 2.125rem;
  }
  .p-subject-course-field__txt-wrap {
    padding: 0 1.3125rem 1.4375rem 12.3125rem;
  }
  .p-subject-course-field__txt {
    font-size: 0.8125rem;
    margin-bottom: 0.8125rem;
  }
  .p-subject-course-field__item-list {
    align-items: center;
    gap: 0.3125rem 0.6875rem;
    margin-bottom: 0.875rem;
  }
  .p-subject-course-field__item-list-ttl {
    width: 6.3125rem;
    height: 1.625rem;
    font-size: 0.75rem;
  }
  .p-subject-course-field__item-list-desc {
    width: calc(100% - 7.625rem);
  }
  .p-subject-course-field__item-list-txt {
    font-size: 0.75rem;
  }
  .p-subject-course__btn {
    width: 18.6875rem;
    margin-inline: auto;
  }
}
@media (max-width: 767px) {
  .p-subject-course {
    padding-top: min(78px, 20vw);
  }
  .p-subject-course__wrap {
    padding-inline: min(30px, 7.6923076923vw);
  }
  .p-subject-course__link {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: min(7px, 1.7948717949vw);
    padding-inline: min(31px, 7.9487179487vw);
    margin-bottom: min(46px, 11.7948717949vw);
    top: min(80px, 20.5128205128vw);
    z-index: 2;
  }
  .p-subject-course__link-item a {
    background-color: #fff;
    width: max-content;
    height: min(34px, 8.7179487179vw);
    border-radius: min(7px, 1.6923076923vw);
    font-size: min(15px, 3.8461538462vw);
    font-weight: 500;
    justify-content: center;
    padding-inline: min(13px, 3.3333333333vw);
    filter: drop-shadow(2px 2px 6px rgba(0, 0, 0, 0.05));
  }
  .p-subject-course__item {
    padding-bottom: min(57px, 14.6153846154vw);
    scroll-margin-top: min(100px, 25.641025641vw);
  }
  .p-subject-course__item--media {
    scroll-margin-top: min(45px, 11.5384615385vw);
  }
  .p-subject-course__item:not(:last-of-type) {
    padding-bottom: min(47px, 12.0512820513vw);
  }
  .p-subject-course__item:not(:last-of-type)::after {
    height: min(131px, 33.5897435897vw);
  }
  .p-subject-course__item:last-of-type {
    padding-top: min(58px, 14.8717948718vw);
  }
  .p-subject-course__item:last-of-type::after {
    display: none;
  }
  .p-subject-course__ttl {
    font-size: min(22px, 5.641025641vw);
    line-height: 1.3636363636;
    margin-bottom: min(15px, 3.8461538462vw);
  }
  .p-subject-course-field__item {
    border-radius: min(10px, 2.5641025641vw);
    padding-bottom: min(11px, 2.8205128205vw);
  }
  .p-subject-course-field__item:not(:last-of-type) {
    margin-bottom: min(13px, 3.3333333333vw);
  }
  .p-subject-course-field__btn {
    display: flex;
    flex-wrap: wrap;
    gap: min(10px, 2.5641025641vw) min(11px, 2.8205128205vw);
    padding: min(25px, 6.4102564103vw) 1.0625rem 0.625rem 1.25rem;
  }
  .p-subject-course-field__img {
    width: min(90px, 23.0769230769vw);
    height: min(90px, 23.0769230769vw);
    border-radius: min(5px, 1.2820512821vw);
  }
  .p-subject-course-field__cont {
    display: contents;
  }
  .p-subject-course-field__ttl {
    width: calc(100% - min(132px, 33.8461538462vw));
    line-height: 1.4285714286;
  }
  .p-subject-course-field__ttl span {
    font-size: min(20px, 5.1282051282vw);
    font-weight: 500;
    line-height: 1.2;
    margin-top: min(12px, 3.0769230769vw);
  }
  .p-subject-course-field__tag {
    display: flex;
    flex-wrap: wrap;
    gap: min(4px, 1.0256410256vw) min(5px, 1.2820512821vw);
  }
  .p-subject-course-field__tag-item {
    background-color: #f6fbf5;
    width: max-content;
    height: min(30px, 7.6923076923vw);
    border-radius: 100vmax;
    font-size: min(12px, 3.0769230769vw);
    display: flex;
    justify-content: center;
    align-items: center;
    padding-inline: min(20px, 5.1282051282vw);
  }
  .p-subject-course-field__tag-item::before {
    margin-right: min(4px, 1.0256410256vw);
  }
  .p-subject-course-field__icon {
    top: min(60px, 15.3846153846vw);
    right: min(17px, 4.358974359vw);
  }
  .p-subject-course-field__txt-wrap {
    padding: 0 min(17px, 4.358974359vw) 1.4375rem min(20px, 5.1282051282vw);
  }
  .p-subject-course-field__txt {
    font-size: min(13px, 3.3333333333vw);
    margin-bottom: min(10px, 2.5641025641vw);
  }
  .p-subject-course-field__item-list {
    gap: min(10px, 2.5641025641vw) min(11px, 2.8205128205vw);
    margin-bottom: min(51px, 13.0769230769vw);
  }
  .p-subject-course-field__item-list-ttl {
    width: min(101px, 25.8974358974vw);
    height: min(26px, 6.6666666667vw);
    font-size: min(12px, 3.0769230769vw);
  }
  .p-subject-course-field__item-list-desc {
    width: calc(100% - min(122px, 31.2820512821vw));
  }
  .p-subject-course-field__item-list-txt {
    font-size: min(12px, 3.0769230769vw);
  }
}

/* .p-subject-insta
----------------------------------- */
.p-subject-insta {
  overflow-x: hidden;
}
.p-subject-insta__ttl span {
  display: block;
  font-weight: 500;
  color: #1e1e1e;
  line-height: 1.5625;
}
.p-subject-insta__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-subject-insta--bis .p-subject-insta__ttl {
  color: #45b035;
}
.p-subject-insta--life .p-subject-insta__ttl {
  color: #f08300;
}
.p-subject-insta--hoiku .p-subject-insta__ttl {
  color: #f8b500;
}
@media (min-width: 768px) {
  .p-subject-insta {
    padding-top: 4.75rem;
  }
  .p-subject-insta__wrap {
    width: 62.1875rem;
    display: flex;
    column-gap: 1.9375rem;
    margin-inline: auto;
  }
  .p-subject-insta__ttl {
    font-size: 1.5625rem;
    font-weight: 700;
    line-height: 1.6;
    text-align: center;
  }
  .p-subject-insta__ttl span {
    font-size: 1rem;
    margin-bottom: 0.3125rem;
  }
  .p-subject-insta__img {
    width: 5.375rem;
    margin-block: 1rem 1.625rem;
    margin-inline: auto;
  }
  .p-subject-insta__btn {
    width: 18.6875rem;
    margin-inline: auto;
  }
  .p-subject-insta__cont {
    flex-shrink: 0;
  }
  .p-subject-insta__slider-wrap {
    margin-top: 0;
  }
}
@media (max-width: 767px) {
  .p-subject-insta {
    padding-top: min(60px, 15.3846153846vw);
  }
  .p-subject-insta__ttl-wrap {
    display: flex;
    align-items: flex-end;
    column-gap: min(15px, 3.8461538462vw);
    padding-inline: min(30px, 7.6923076923vw);
  }
  .p-subject-insta__ttl {
    font-size: min(22px, 5.641025641vw);
    font-weight: 500;
    line-height: 1.5909090909;
  }
  .p-subject-insta__ttl span {
    font-size: min(16px, 4.1025641026vw);
    margin-bottom: min(5px, 1.2820512821vw);
  }
  .p-subject-insta__img {
    width: min(76px, 19.4871794872vw);
    flex-shrink: 0;
  }
  .p-subject-insta__btn {
    width: 100%;
    padding-inline: min(45px, 11.5384615385vw);
  }
  .p-subject-insta__slider-wrap {
    padding-inline: min(30px, 7.6923076923vw);
    margin-block: min(34px, 8.7179487179vw);
  }
}

/* .p-subject-plan
----------------------------------- */
.p-subject-plan__txt {
  font-weight: 500;
  line-height: 1.5625;
}
.p-subject-plan__cont-img {
  aspect-ratio: 375/212;
  overflow: hidden;
}
.p-subject-plan__cont-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-subject-plan__cont-ttl {
  font-weight: 700;
  line-height: 1.5625;
}
.p-subject-plan__cont-txt {
  line-height: 1.5384615385;
}
.p-subject-plan__cont-caution {
  line-height: 1.3636363636;
}
.p-subject-plan__item {
  line-height: 1.5384615385;
}
.p-subject-plan__item::before {
  content: "●";
  display: inline-block;
}
.p-subject-plan--bis .p-subject-plan__cont-ttl {
  color: #45b035;
}
.p-subject-plan--bis .p-subject-plan__item::before {
  color: #45b035;
}
.p-subject-plan--life .p-subject-plan__cont-ttl {
  color: #f08300;
}
.p-subject-plan--life .p-subject-plan__item::before {
  color: #f08300;
}
.p-subject-plan--hoiku .p-subject-plan__cont-ttl {
  color: #f8b500;
}
.p-subject-plan--hoiku .p-subject-plan__item::before {
  color: #f8b500;
}
@media (min-width: 768px) {
  .p-subject-plan {
    padding-block: 4.125rem 3.9375rem;
  }
  .p-subject-plan__wrap {
    width: 49.1875rem;
    margin-inline: auto;
  }
  .p-subject-plan__txt {
    font-size: 1rem;
    text-align: center;
    margin-block: 2.125rem;
  }
  .p-subject-plan__cont {
    display: flex;
    column-gap: 2.25rem;
  }
  .p-subject-plan__cont-img {
    width: 23.4375rem;
    border-radius: 0.625rem;
    flex-shrink: 0;
  }
  .p-subject-plan__cont-ttl {
    font-size: 1rem;
    margin-bottom: 0.625rem;
  }
  .p-subject-plan__cont-txt {
    font-size: 0.8125rem;
    margin-bottom: 0.375rem;
  }
  .p-subject-plan__cont-caution {
    font-size: 0.6875rem;
    margin-bottom: 1.25rem;
  }
  .p-subject-plan__item {
    font-size: 0.8125rem;
  }
}
@media (max-width: 767px) {
  .p-subject-plan {
    padding-block: min(62px, 15.8974358974vw) min(47px, 12.0512820513vw);
  }
  .p-subject-plan__wrap {
    padding-inline: min(27px, 6.9230769231vw);
  }
  .p-subject-plan__txt {
    font-size: min(16px, 4.1025641026vw);
    margin-block: min(8px, 2.0512820513vw) min(20px, 5.1282051282vw);
  }
  .p-subject-plan__cont-img {
    width: 100%;
    border-radius: min(9px, 2.3076923077vw);
    margin-bottom: min(10px, 2.5641025641vw);
  }
  .p-subject-plan__cont-ttl {
    font-size: min(16px, 4.1025641026vw);
    margin-bottom: min(10px, 2.5641025641vw);
  }
  .p-subject-plan__cont-txt {
    font-size: min(13px, 3.3333333333vw);
    margin-bottom: min(6px, 1.5384615385vw);
  }
  .p-subject-plan__cont-caution {
    font-size: min(11px, 2.8205128205vw);
    margin-bottom: min(10px, 2.5641025641vw);
  }
  .p-subject-plan__item {
    font-size: min(13px, 3.3333333333vw);
  }
}

/* .p-subject-facility
----------------------------------- */
.p-subject-facility {
  overflow: hidden;
}
.p-subject-facility__ttl {
  font-weight: 500;
  line-height: 1.875;
}
.p-subject-facility__img {
  width: 100%;
  aspect-ratio: 263/161;
  overflow: hidden;
}
.p-subject-facility__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-subject-facility__txt {
  line-height: 1.5384615385;
}
.p-subject-facility--bis {
  background-color: #f6fbf5;
}
.p-subject-facility--bis .p-subject-facility__ttl {
  color: #45b035;
}
.p-subject-facility--life {
  background-color: #fef9f2;
}
.p-subject-facility--life .p-subject-facility__ttl {
  color: #f08300;
}
.p-subject-facility--hoiku {
  background-color: #fffbf2;
}
.p-subject-facility--hoiku .p-subject-facility__ttl {
  color: #f8b500;
}
@media (min-width: 768px) {
  .p-subject-facility {
    padding-block: 4.625rem 1.8125rem;
  }
  .p-subject-facility__wrap {
    margin-top: 2.1875rem;
    position: relative;
  }
  .p-subject-facility__slider {
    width: 54.0625rem;
    margin-inline: auto;
  }
  .p-subject-facility__slider .slick-list.draggable {
    overflow: visible;
  }
  .p-subject-facility__slide {
    width: 16.4375rem;
    margin-inline: 1.1875rem;
  }
  .p-subject-facility__ttl {
    font-size: 1rem;
    margin-bottom: 0.625rem;
  }
  .p-subject-facility__ttl--small {
    font-size: 0.96875rem;
  }
  .p-subject-facility__img {
    border-radius: 0.3125rem;
    margin-bottom: 0.625rem;
  }
  .p-subject-facility__txt {
    font-size: 0.8125rem;
  }
  .p-subject-facility__arws {
    width: 62rem;
    justify-content: space-between;
    position: absolute;
    transform: translate(-50%, -50%);
    top: 50%;
    left: 50%;
  }
}
@media (max-width: 767px) {
  .p-subject-facility {
    padding-block: min(44px, 11.2820512821vw) min(25px, 6.4102564103vw);
  }
  .p-subject-facility__wrap {
    margin-top: min(33px, 8.4615384615vw);
  }
  .p-subject-facility__slider .slick-list {
    padding-inline: min(37px, 9.4871794872vw);
  }
  .p-subject-facility__slide {
    width: min(263px, 67.4358974359vw);
    margin-right: min(30px, 7.6923076923vw);
  }
  .p-subject-facility__ttl {
    font-size: min(16px, 4.1025641026vw);
    margin-bottom: min(10px, 2.5641025641vw);
  }
  .p-subject-facility__ttl--small {
    font-size: min(15px, 3.8461538462vw);
  }
  .p-subject-facility__img {
    border-radius: min(5px, 1.2820512821vw);
    margin-bottom: min(10px, 2.5641025641vw);
  }
  .p-subject-facility__txt {
    font-size: min(13px, 3.3333333333vw);
  }
  .p-subject-facility__arws {
    margin-top: min(26px, 6.6666666667vw);
  }
}

/* .p-subject-faq
----------------------------------- */
.p-subject-faq__list--bis .p-event-please-faq__item {
  border: solid 1px #45b035;
}
.p-subject-faq__list--bis .p-event-please-faq__ttl::before,
.p-subject-faq__list--bis .p-event-please-faq__txt span::before {
  color: #45b035;
}
.p-subject-faq__list--bis .p-event-please-faq__icon::before, .p-subject-faq__list--bis .p-event-please-faq__icon::after {
  background-color: #45b035;
}
.p-subject-faq__list--hoiku .p-event-please-faq__item {
  border: solid 1px #f8b500;
}
.p-subject-faq__list--hoiku .p-event-please-faq__ttl::before,
.p-subject-faq__list--hoiku .p-event-please-faq__txt span::before {
  color: #f8b500;
}
.p-subject-faq__list--hoiku .p-event-please-faq__icon::before, .p-subject-faq__list--hoiku .p-event-please-faq__icon::after {
  background-color: #f8b500;
}
.p-subject-faq .p-event-please-faq__txt > span p {
  display: block;
}
@media (min-width: 768px) {
  .p-subject-faq {
    padding-block: 3.5rem 3.1875rem;
  }
  .p-subject-faq__wrap {
    width: 62rem;
    margin-inline: auto;
  }
  .p-subject-faq__list {
    margin-block: 1.875rem 1.625rem;
  }
  .p-subject-faq .p-event-please-faq__txt > span p {
    margin-top: 0.9375rem;
  }
  .p-subject-faq__btn {
    width: 62.1875rem;
    display: flex;
    justify-content: center;
    column-gap: 3.0625rem;
    margin-inline: auto;
  }
  .p-subject-faq__btn--margin {
    margin-bottom: 1rem;
  }
  .p-subject-faq__btn .c-btn__btn {
    width: 18.6875rem;
  }
}
@media (max-width: 767px) {
  .p-subject-faq {
    padding-block: min(53px, 13.5897435897vw) min(32px, 8.2051282051vw);
  }
  .p-subject-faq__wrap {
    padding-inline: min(24px, 6.1538461538vw);
  }
  .p-subject-faq__list {
    margin-block: min(35px, 8.9743589744vw) 2rem;
  }
  .p-subject-faq .p-event-please-faq__txt > span p {
    margin-top: min(15px, 3.8461538462vw);
  }
  .p-subject-faq__btn {
    width: 100%;
    padding-inline: min(45px, 11.5384615385vw);
  }
  .p-subject-faq__btn--margin {
    margin-bottom: min(48px, 12.3076923077vw);
  }
  .p-subject-faq__btn .c-btn__btn:not(:first-of-type) {
    margin-top: min(15px, 3.8461538462vw);
  }
}

/* .p-subject-life-course
----------------------------------- */
.p-subject-life-course {
  background-color: #fef9f2;
}
.p-subject-life-course img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-subject-life-course__link {
  position: sticky;
}
.p-subject-life-course__link-item {
  color: #f08300;
}
.p-subject-life-course__link-item a {
  display: flex;
  align-items: center;
}
@media (any-hover: hover) {
  .p-subject-life-course__link-item a:hover {
    text-decoration: underline;
  }
}
.p-subject-life-course__item-ttl {
  font-weight: 500;
}
.p-subject-life-course__item-ttl em {
  display: block;
  line-height: 1.1363636364;
  color: #f08300;
}
.p-subject-life-course__cont-img {
  aspect-ratio: 394/267;
  overflow: hidden;
}
.p-subject-life-course__cont-ttl {
  border: solid 1px #f08300;
  border-radius: 100vmax;
  font-weight: 500;
  color: #f08300;
  display: flex;
  justify-content: center;
  align-items: center;
}
.p-subject-life-course__cont-item {
  display: inline;
  line-height: 1.5;
}
.p-subject-life-course__cont-item--block {
  display: block;
}
.p-subject-life-course__cont-item::before {
  content: "●";
  display: inline;
  color: #f08300;
}
.p-subject-life-course__slider-ttl {
  font-weight: 500;
  color: #f08300;
  line-height: 1.5625;
}
.p-subject-life-course__slide-img {
  width: 100%;
  overflow: hidden;
}
.p-subject-life-course__slide-ttl {
  font-weight: 500;
  color: #f08300;
  line-height: 1.6923076923;
}
.p-subject-life-course__slide-txt {
  line-height: 1.5;
}
@media (min-width: 768px) {
  .p-subject-life-course {
    padding-block: 4.125rem 3.4375rem;
  }
  .p-subject-life-course__wrap {
    width: 62rem;
    display: flex;
    column-gap: 4.25rem;
    margin-top: 2.9375rem;
    margin-inline: auto;
    position: relative;
  }
  .p-subject-life-course__link {
    width: 11.8125rem;
    height: max-content;
    flex-shrink: 0;
    top: 6.5625rem;
  }
  .p-subject-life-course__link-item {
    border-bottom: solid 1px #f08300;
    font-size: 0.75rem;
    display: flex;
    align-items: center;
  }
  .p-subject-life-course__link-item a {
    width: 100%;
    height: 2.5rem;
  }
  .p-subject-life-course__link-item::before {
    content: "-";
    display: block;
    margin-right: 0.25rem;
  }
  .p-subject-life-course__item:not(:last-of-type) {
    border-bottom: solid 1px #f08300;
    padding-bottom: 3.1875rem;
    margin-bottom: 3.1875rem;
  }
  .p-subject-life-course__item-ttl {
    line-height: 1.6428571429;
    margin-bottom: 0.9375rem;
  }
  .p-subject-life-course__item-ttl em {
    font-size: 1.375rem;
    margin-top: 0.3125rem;
  }
  .p-subject-life-course__cont {
    display: flex;
    column-gap: 1.6875rem;
    margin-bottom: 0.9375rem;
  }
  .p-subject-life-course__cont-img {
    width: 24.625rem;
    height: 100%;
    border-radius: 0.3125rem;
    flex-shrink: 0;
  }
  .p-subject-life-course__cont-ttl {
    width: 6.3125rem;
    height: 1.6875rem;
    font-size: 0.75rem;
    margin-bottom: 0.3125rem;
  }
  .p-subject-life-course__cont-list:not(:last-of-type) {
    margin-bottom: 1.25rem;
  }
  .p-subject-life-course__cont-item {
    font-size: 0.75rem;
  }
  .p-subject-life-course__slider {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    column-gap: 1.125rem;
  }
  .p-subject-life-course__slider-ttl {
    font-size: 1rem;
    margin-bottom: 0.5rem;
  }
  .p-subject-life-course__slide {
    width: 14.5625rem;
  }
  .p-subject-life-course__slide-img {
    border-radius: 0.3125rem;
    margin-bottom: 0.3125rem;
  }
  .p-subject-life-course__slide-ttl {
    font-size: 0.8125rem;
    margin-bottom: 0.3125rem;
  }
  .p-subject-life-course__slide-txt {
    font-size: 0.75rem;
  }
}
@media (max-width: 767px) {
  .p-subject-life-course {
    border-top: solid 1px #f08300;
    padding-block: min(56px, 14.358974359vw);
  }
  .p-subject-life-course .p-subject__ttl {
    padding-inline: min(31px, 7.9487179487vw);
  }
  .p-subject-life-course__link {
    display: flex;
    flex-wrap: wrap;
    gap: min(10px, 2.5641025641vw);
    padding-inline: min(31px, 7.9487179487vw);
    margin-block: min(44px, 11.2820512821vw) min(37px, 9.4871794872vw);
    top: min(80px, 20.5128205128vw);
    z-index: 2;
  }
  .p-subject-life-course__link-item a {
    background-color: #fff;
    width: max-content;
    height: min(34px, 8.7179487179vw);
    border-radius: min(7px, 1.6923076923vw);
    font-size: min(15px, 3.8461538462vw);
    font-weight: 500;
    justify-content: center;
    padding-inline: min(13px, 3.3333333333vw);
    filter: drop-shadow(2px 2px 6px rgba(0, 0, 0, 0.05));
  }
  .p-subject-life-course__item {
    display: flex;
    flex-direction: column;
    scroll-margin-top: min(185px, 47.4358974359vw);
  }
  .p-subject-life-course__item:not(:last-of-type) {
    margin-bottom: min(39px, 10vw);
  }
  .p-subject-life-course__item-ttl {
    line-height: 1.4285714286;
    padding-inline: min(30px, 7.6923076923vw);
    margin-bottom: min(30px, 7.6923076923vw);
  }
  .p-subject-life-course__item-ttl em {
    font-size: min(22px, 5.641025641vw);
    margin-top: min(8px, 2.0512820513vw);
  }
  .p-subject-life-course__txt-wrap {
    padding-inline: min(30px, 7.6923076923vw);
    margin-bottom: min(12px, 3.0769230769vw);
  }
  .p-subject-life-course__cont {
    display: contents;
  }
  .p-subject-life-course__cont-img {
    width: calc(100% - min(60px, 15.3846153846vw));
    border-radius: min(5px, 1.2820512821vw);
    margin-bottom: min(15px, 3.8461538462vw);
    margin-inline: auto;
    order: -1;
  }
  .p-subject-life-course__cont-ttl {
    width: min(101px, 25.8974358974vw);
    height: min(27px, 6.9230769231vw);
    font-size: min(12px, 3.0769230769vw);
    margin-bottom: min(5px, 1.2820512821vw);
  }
  .p-subject-life-course__cont-list:not(:last-of-type) {
    margin-bottom: min(10px, 2.5641025641vw);
  }
  .p-subject-life-course__cont-item {
    font-size: min(12px, 3.0769230769vw);
  }
  .p-subject-life-course__slider {
    margin-bottom: min(30px, 7.6923076923vw);
  }
  .p-subject-life-course__slider .slick-list {
    padding-inline: min(31px, 7.9487179487vw);
  }
  .p-subject-life-course__slider-ttl {
    font-size: min(16px, 4.1025641026vw);
    padding-inline: min(31px, 7.9487179487vw);
    margin-bottom: min(8px, 2.0512820513vw);
  }
  .p-subject-life-course__slide {
    width: min(233px, 59.7435897436vw);
    margin-right: min(18px, 4.6153846154vw);
  }
  .p-subject-life-course__slide-img {
    border-radius: min(5px, 1.2820512821vw);
    margin-bottom: min(5px, 1.2820512821vw);
  }
  .p-subject-life-course__slide-ttl {
    font-size: min(13px, 3.3333333333vw);
    margin-bottom: min(5px, 1.2820512821vw);
  }
  .p-subject-life-course__slide-txt {
    font-size: min(12px, 3.0769230769vw);
  }
}

/* .p-subject-licence-voice
----------------------------------- */
.p-subject-licence-voice {
  background-color: #fef9f2;
  border-top: solid 1px #f08300;
  border-bottom: solid 1px #f08300;
}
.p-subject-licence-voice__ttl {
  color: #f08300;
  font-weight: 700;
  line-height: 1.6666666667;
  text-align: center;
}
.p-subject-licence-voice__list {
  display: grid;
}
.p-subject-licence-voice__item {
  background-color: #fff;
  position: relative;
}
.p-subject-licence-voice__item-ttl {
  font-weight: 700;
  color: #f08300;
  line-height: 1.375;
}
.p-subject-licence-voice__item-txt {
  line-height: 1.5;
}
.p-subject-licence-voice__img {
  flex-shrink: 0;
}
@media (min-width: 768px) {
  .p-subject-licence-voice {
    padding-block: 3.4375rem;
    margin-bottom: 6.875rem;
  }
  .p-subject-licence-voice__wrap {
    width: 62.0625rem;
    margin-inline: auto;
  }
  .p-subject-licence-voice__ttl {
    font-size: 1.125rem;
    margin-bottom: 1.8125rem;
  }
  .p-subject-licence-voice__list {
    grid-template-columns: repeat(2, 1fr);
    gap: 0.8125rem;
  }
  .p-subject-licence-voice__item {
    border-radius: 0.3125rem;
    display: flex;
    column-gap: 1.3125rem;
    padding: 1.8125rem 1.875rem 1.75rem 2.125rem;
  }
  .p-subject-licence-voice__item-ttl {
    font-size: 1rem;
    margin-bottom: 0.75rem;
  }
  .p-subject-licence-voice__item-txt {
    font-size: 0.75rem;
  }
  .p-subject-licence-voice__img {
    width: 6.4375rem;
  }
}
@media (max-width: 767px) {
  .p-subject-licence-voice {
    padding-block: min(42px, 10.7692307692vw) min(54px, 13.8461538462vw);
    margin-bottom: min(110px, 28.2051282051vw);
  }
  .p-subject-licence-voice__wrap {
    padding-inline: min(30px, 7.6923076923vw);
  }
  .p-subject-licence-voice__ttl {
    font-size: min(18px, 4.6153846154vw);
    margin-bottom: min(23px, 5.8974358974vw);
  }
  .p-subject-licence-voice__list {
    grid-template-columns: 1fr;
    row-gap: min(13px, 3.3333333333vw);
  }
  .p-subject-licence-voice__item {
    border-radius: min(5px, 1.2820512821vw);
    padding: min(29px, 7.4358974359vw) min(21px, 5.3846153846vw) min(23px, 5.8974358974vw) min(30px, 7.6923076923vw);
  }
  .p-subject-licence-voice__item--padding {
    padding: min(29px, 7.4358974359vw) min(21px, 5.3846153846vw) min(42px, 10.7692307692vw) min(30px, 7.6923076923vw);
  }
  .p-subject-licence-voice__item-ttl {
    font-size: min(16px, 4.1025641026vw);
    margin-bottom: min(12px, 3.0769230769vw);
  }
  .p-subject-licence-voice__item-txt {
    font-size: min(12px, 3.0769230769vw);
  }
  .p-subject-licence-voice__img {
    width: min(130px, 33.3333333333vw);
    margin-inline: auto;
    margin-bottom: min(19px, 4.8717948718vw);
  }
}

/* .p-subject-life-license
----------------------------------- */
.p-subject-life-license__cont--bis .p-subject-license__ttl,
.p-subject-life-license__cont--bis .p-subject-license__item-ttl {
  color: #45b035;
}
.p-subject-life-license__cont--media .p-subject-license__ttl,
.p-subject-life-license__cont--media .p-subject-license__item-ttl {
  color: #3e86c1;
}
.p-subject-life-license__cont--other .p-subject-license__ttl,
.p-subject-life-license__cont--other .p-subject-license__item-ttl {
  color: #009b77;
}
.p-subject-life-license__ttl {
  font-weight: 500;
  line-height: 1.5625;
}
.p-subject-life-license__item-ttl {
  font-weight: 500;
  color: #f08300;
  line-height: 1.6923076923;
}
.p-subject-life-license__item-txt {
  line-height: 1.5;
}
@media (min-width: 768px) {
  .p-subject-life-license__wrap {
    width: 62.25rem;
    margin-inline: auto;
  }
  .p-subject-life-license__cont:not(:last-of-type) {
    margin-bottom: 3.125rem;
  }
  .p-subject-life-license__cont--life:not(:last-of-type) {
    margin-bottom: 1.875rem;
  }
  .p-subject-life-license__cont-wrap {
    margin-block: 2.375rem 5.125rem;
  }
  .p-subject-life-license__ttl {
    font-size: 1rem;
    margin-bottom: 0.9375rem;
    pointer-events: none;
  }
  .p-subject-life-license__list {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr);
    gap: 1.3125rem 1.125rem;
  }
  .p-subject-life-license__item-ttl {
    font-size: 0.8125rem;
    margin-bottom: 0.3125rem;
  }
  .p-subject-life-license__item-txt {
    font-size: 0.75rem;
  }
}
@media (max-width: 767px) {
  .p-subject-life-license__wrap {
    padding-inline: min(30px, 7.6923076923vw);
  }
  .p-subject-life-license__cont {
    border: solid 1px #f08300;
    border-radius: min(10px, 2.5641025641vw);
  }
  .p-subject-life-license__cont:not(:last-of-type) {
    margin-bottom: min(13px, 3.3333333333vw);
  }
  .p-subject-life-license__cont-wrap {
    margin-block: min(29px, 7.4358974359vw) min(66px, 16.9230769231vw);
  }
  .p-subject-life-license__cont--bis {
    border: solid 1px #45b035;
  }
  .p-subject-life-license__cont--bis .p-subject-license__icon::before, .p-subject-life-license__cont--bis .p-subject-license__icon::after {
    background-color: #45b035;
  }
  .p-subject-life-license__cont--media {
    border: solid 1px #3e86c1;
  }
  .p-subject-life-license__cont--media .p-subject-license__icon::before, .p-subject-life-license__cont--media .p-subject-license__icon::after {
    background-color: #3e86c1;
  }
  .p-subject-life-license__cont--other {
    border: solid 1px #009b77;
  }
  .p-subject-life-license__cont--other .p-subject-license__icon::before, .p-subject-life-license__cont--other .p-subject-license__icon::after {
    background-color: #009b77;
  }
  .p-subject-life-license__ttl {
    width: 100%;
    font-size: min(16px, 4.1025641026vw);
    padding: min(19px, 4.8717948718vw) min(66px, 16.9230769231vw) min(19px, 4.8717948718vw) min(31px, 7.9487179487vw);
    position: relative;
  }
  .p-subject-life-license__list {
    padding: 1px min(16px, 4.1025641026vw) min(19px, 4.8717948718vw) min(35px, 8.9743589744vw);
  }
  .p-subject-life-license__list.js-accordion-content {
    display: none;
    width: 100%;
  }
  .p-subject-life-license__item:not(:last-of-type) {
    margin-bottom: min(21px, 5.3846153846vw);
  }
  .p-subject-life-license__item:last-of-type {
    margin-bottom: min(14px, 3.5897435897vw);
  }
  .p-subject-life-license__item-ttl {
    font-size: min(13px, 3.3333333333vw);
    margin-bottom: min(5px, 1.2820512821vw);
  }
  .p-subject-life-license__item-txt {
    font-size: min(12px, 3.0769230769vw);
  }
  .p-subject-life-license__icon {
    width: min(20px, 5.1282051282vw);
    height: min(20px, 5.1282051282vw);
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    transform: translateY(-50%);
    top: 50%;
    right: min(24px, 6.1538461538vw);
  }
  .p-subject-life-license__icon::before, .p-subject-life-license__icon::after {
    content: "";
    background-color: #f08300;
    width: 100%;
    height: 1px;
    position: absolute;
    transform: translate(-50%, 50%);
    top: 50%;
    left: 50%;
    transition: transform 0.2s ease-out;
  }
  .p-subject-life-license__icon::after {
    transform: translate(-50%, 50%) rotate(90deg);
  }
  .p-subject-life-license__cont .js-accordion-btn[aria-expanded=true] .p-subject-license__icon::after {
    transform: translate(-50%, 50%) rotate(0deg);
  }
}

/* .p-subject-hoiku-learn
----------------------------------- */
.p-subject-hoiku-learn img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-subject-hoiku-learn__ttl {
  font-weight: 500;
  color: #f8b500;
  letter-spacing: 0.1em;
  text-align: center;
}
.p-subject-hoiku-learn__ttl em {
  display: block;
  font-weight: 700;
  color: #1e1e1e;
  letter-spacing: 0.1em;
}
.p-subject-hoiku-learn__ttl em strong {
  color: #f8b500;
  line-height: 1;
}
.p-subject-hoiku-learn__list {
  counter-reset: number;
}
.p-subject-hoiku-learn__item {
  counter-increment: number;
}
.p-subject-hoiku-learn__item-ttl {
  font-weight: 700;
  display: flex;
  align-items: center;
}
.p-subject-hoiku-learn__item-ttl::before {
  content: counter(number, decimal-leading-zero);
  background-color: #fff;
  border: solid 1px #f8b500;
  border-radius: 50%;
  font-weight: 700;
  color: #f8b500;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-shrink: 0;
}
.p-subject-hoiku-learn__item-ttl em {
  color: #f8b500;
}
.p-subject-hoiku-learn__cont-img-1, .p-subject-hoiku-learn__cont-img-2 {
  overflow: hidden;
}
.p-subject-hoiku-learn__cont-txt {
  line-height: 1.5384615385;
}
.p-subject-hoiku-learn__cont-item {
  background-color: #f8b500;
  width: 100%;
  border-radius: 100vmax;
  font-weight: 500;
  color: #fff;
  line-height: 2.4615384615;
  display: flex;
  align-items: center;
}
.p-subject-hoiku-learn__cont-item span {
  display: block;
  box-sizing: content-box;
  text-align: center;
  border-left: solid 1px #fff;
}
.p-subject-hoiku-learn__slider-ttl {
  font-weight: 500;
  color: #f8b500;
  line-height: 1.5625;
}
.p-subject-hoiku-learn__slide-img {
  width: 100%;
  overflow: hidden;
}
.p-subject-hoiku-learn__slide-ttl {
  font-weight: 500;
  color: #f8b500;
  line-height: 1.6923076923;
}
.p-subject-hoiku-learn__slide-txt {
  line-height: 1.5;
}
@media (min-width: 768px) {
  .p-subject-hoiku-learn {
    padding-block: 4.25rem 1.5rem;
  }
  .p-subject-hoiku-learn__ttl {
    font-size: 1.5625rem;
    margin-bottom: 2.6875rem;
  }
  .p-subject-hoiku-learn__ttl em {
    font-size: 2.5rem;
    margin-top: 0.875rem;
  }
  .p-subject-hoiku-learn__ttl em strong {
    font-size: 5rem;
    padding-inline: 1.25rem;
  }
  .p-subject-hoiku-learn__list {
    width: 62.1875rem;
    margin-inline: auto;
  }
  .p-subject-hoiku-learn__item:not(:last-of-type) {
    margin-bottom: 3.125rem;
  }
  .p-subject-hoiku-learn__item-ttl {
    font-size: 1.5625rem;
    margin-bottom: 1.25rem;
  }
  .p-subject-hoiku-learn__item-ttl::before {
    width: 4.6875rem;
    height: 4.6875rem;
    font-size: 1.25rem;
    margin-right: 1.9375rem;
  }
  .p-subject-hoiku-learn__item-ttl em {
    font-size: 2.5rem;
    margin-left: 1.25rem;
  }
  .p-subject-hoiku-learn__cont {
    display: flex;
    column-gap: 1.375rem;
    margin-bottom: 2.6875rem;
  }
  .p-subject-hoiku-learn__cont-img-1 {
    width: 32.25rem;
    border-radius: 0.3125rem;
    flex-shrink: 0;
  }
  .p-subject-hoiku-learn__cont-img-2 {
    width: 28.5rem;
    border-radius: 0.3125rem;
    margin-bottom: 1.3125rem;
  }
  .p-subject-hoiku-learn__cont-txt {
    font-size: 0.8125rem;
  }
  .p-subject-hoiku-learn__cont-list {
    width: 19.9375rem;
    margin-block: 0.9375rem;
  }
  .p-subject-hoiku-learn__cont-item:not(:last-of-type) {
    margin-bottom: 0.5625rem;
  }
  .p-subject-hoiku-learn__cont-item {
    font-size: 0.8125rem;
    padding-left: 1.4375rem;
    padding-block: 0.6875rem 0.75rem;
  }
  .p-subject-hoiku-learn__cont-item span {
    width: 12.625rem;
    padding-inline: 1rem;
    margin-left: 1rem;
  }
  .p-subject-hoiku-learn__slider-wrap {
    width: 62.0625rem;
    border: solid 1px #f8b500;
    border-radius: 0.625rem;
    padding: 2.625rem 2.625rem 1.9375rem;
    margin-inline: auto;
  }
  .p-subject-hoiku-learn__slider {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    column-gap: 0.875rem;
  }
  .p-subject-hoiku-learn__slider-ttl {
    font-size: 1rem;
    margin-bottom: 1.125rem;
  }
  .p-subject-hoiku-learn__slide {
    width: 18.3125rem;
  }
  .p-subject-hoiku-learn__slide-img {
    border-radius: 0.3125rem;
    margin-bottom: 0.3125rem;
  }
  .p-subject-hoiku-learn__slide-ttl {
    font-size: 0.8125rem;
    margin-bottom: 0.3125rem;
  }
  .p-subject-hoiku-learn__slide-txt {
    font-size: 0.75rem;
  }
  .p-subject-hoiku-learn__btn {
    width: 18.25rem;
    margin-top: 0.5rem;
  }
  .p-subject-hoiku-learn__btn--margin {
    margin-top: 1.75rem;
    margin-left: auto;
  }
}
@media (max-width: 767px) {
  .p-subject-hoiku-learn {
    padding-block: min(82px, 21.0256410256vw) min(11px, 2.8205128205vw);
    overflow-x: hidden;
  }
  .p-subject-hoiku-learn__ttl {
    font-size: min(21px, 5.4871794872vw);
    margin-bottom: min(43px, 11.0256410256vw);
  }
  .p-subject-hoiku-learn__ttl em {
    font-size: min(29px, 7.4358974359vw);
    margin-top: min(12px, 3.0769230769vw);
  }
  .p-subject-hoiku-learn__ttl em strong {
    font-size: min(58px, 14.8717948718vw);
    padding-inline: min(14px, 3.5897435897vw);
  }
  .p-subject-hoiku-learn__item {
    display: flex;
    flex-direction: column;
  }
  .p-subject-hoiku-learn__item:not(:last-of-type) {
    margin-bottom: min(40px, 10.2564102564vw);
  }
  .p-subject-hoiku-learn__item-ttl {
    font-size: min(20px, 5.1282051282vw);
    line-height: 1.25;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: min(14px, 3.5897435897vw);
    position: relative;
    z-index: 1;
  }
  .p-subject-hoiku-learn__item-ttl::before {
    width: min(75px, 19.2307692308vw);
    height: min(75px, 19.2307692308vw);
    font-size: min(20px, 5.1282051282vw);
    margin-top: -37px;
    margin-bottom: min(20px, 5.1282051282vw);
  }
  .p-subject-hoiku-learn__item-ttl em {
    display: block;
    font-size: min(30px, 7.6923076923vw);
    line-height: 1.3333333333;
    margin-top: min(2px, 0.5128205128vw);
  }
  .p-subject-hoiku-learn__cont {
    display: contents;
  }
  .p-subject-hoiku-learn__cont-img-1 {
    width: 100%;
    aspect-ratio: 390/249;
    order: -1;
  }
  .p-subject-hoiku-learn__cont-img-2 {
    display: none;
  }
  .p-subject-hoiku-learn__cont-txt {
    font-size: min(13px, 3.3333333333vw);
    padding-inline: min(30px, 7.6923076923vw);
  }
  .p-subject-hoiku-learn__cont-list {
    width: min(319px, 81.7948717949vw);
    box-sizing: content-box;
    padding-inline: min(30px, 7.6923076923vw);
    margin-block: min(15px, 3.8461538462vw);
  }
  .p-subject-hoiku-learn__cont-item:not(:last-of-type) {
    margin-bottom: min(9px, 2.3076923077vw);
  }
  .p-subject-hoiku-learn__cont-item {
    font-size: min(13px, 3.3333333333vw);
    padding-left: min(23px, 5.8974358974vw);
    padding-block: min(11px, 2.8205128205vw) min(12px, 3.0769230769vw);
  }
  .p-subject-hoiku-learn__cont-item span {
    width: min(202px, 51.7948717949vw);
    padding-inline: min(16px, 4.1025641026vw);
    margin-left: min(16px, 4.1025641026vw);
  }
  .p-subject-hoiku-learn__slider-wrap {
    margin-top: min(26px, 6.6666666667vw);
  }
  .p-subject-hoiku-learn__slider {
    margin-bottom: min(32px, 8.2051282051vw);
  }
  .p-subject-hoiku-learn__slider .slick-list {
    padding-inline: min(30px, 7.6923076923vw);
  }
  .p-subject-hoiku-learn__slider-ttl {
    font-size: min(16px, 4.1025641026vw);
    padding-inline: min(30px, 7.6923076923vw);
    margin-bottom: min(12px, 3.0769230769vw);
  }
  .p-subject-hoiku-learn__slide {
    width: min(293px, 75.1282051282vw);
    margin-right: min(14px, 3.5897435897vw);
  }
  .p-subject-hoiku-learn__slide-img {
    border-radius: min(5px, 1.2820512821vw);
    margin-bottom: min(5px, 1.2820512821vw);
  }
  .p-subject-hoiku-learn__slide-ttl {
    font-size: min(13px, 3.3333333333vw);
    margin-bottom: min(5px, 1.2820512821vw);
  }
  .p-subject-hoiku-learn__slide-txt {
    font-size: min(12px, 3.0769230769vw);
  }
  .p-subject-hoiku-learn__btn {
    width: 100%;
    padding-inline: min(45px, 11.5384615385vw);
    margin-top: min(25px, 6.4102564103vw);
  }
}

/* .p-subject-hoiku
----------------------------------- */
@media (min-width: 768px) {
  .p-subject-hoiku {
    padding-bottom: 3.8125rem;
  }
}
@media (max-width: 767px) {
  .p-subject-hoiku {
    padding-bottom: min(32px, 8.2051282051vw);
  }
}

/* .p-subject-hoiku-public
----------------------------------- */
.p-subject-hoiku-public__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-subject-hoiku-public-ttl {
  font-weight: 700;
  letter-spacing: 0.1em;
  line-height: 1.375;
}
.p-subject-hoiku-public-ttl span {
  display: block;
  color: #f8b500;
  letter-spacing: 0.1em;
  line-height: 1;
}
.p-subject-hoiku-public-txt {
  line-height: 1.5384615385;
}
.p-subject-hoiku-public__list {
  display: grid;
}
.p-subject-hoiku-public__item {
  border: solid 1px #f8b500;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.p-subject-hoiku-public__item-ttl {
  font-weight: 700;
  color: #f8b500;
  letter-spacing: 0.1em;
  line-height: 1.375;
  text-align: center;
}
.p-subject-hoiku-public__item-item {
  font-weight: 500;
  line-height: 1.875;
  display: flex;
}
.p-subject-hoiku-public__item-item::before {
  content: "●";
  color: #f8b500;
  flex-shrink: 0;
}
.p-subject-hoiku-public__item-item span {
  display: inline-block;
}
.p-subject-hoiku-public__name {
  font-weight: 500;
  line-height: 1.6428571429;
}
.p-subject-hoiku-public__num {
  font-weight: 700;
  line-height: 1;
}
.p-subject-hoiku-public__num em {
  color: #f8b500;
}
.p-subject-hoiku-public__num small {
  display: block;
  font-weight: 400;
  line-height: 1.5;
  margin-top: 1px;
}
@media (min-width: 768px) {
  .p-subject-hoiku-public {
    padding-block: 3.625rem 5.125rem;
  }
  .p-subject-hoiku-public__wrap {
    width: 62.125rem;
    margin-inline: auto;
  }
  .p-subject-hoiku-public__cont {
    display: flex;
    column-gap: 2.25rem;
    margin-bottom: 1.3125rem;
  }
  .p-subject-hoiku-public__img {
    width: 29.9375rem;
    height: 100%;
    flex-shrink: 0;
  }
  .p-subject-hoiku-public__img img {
    border-radius: 0.625rem;
  }
  .p-subject-hoiku-public-ttl {
    font-size: 1rem;
    margin-bottom: 1.5rem;
  }
  .p-subject-hoiku-public-ttl span {
    font-size: 1.5625rem;
    margin-top: 0.5625rem;
  }
  .p-subject-hoiku-public-txt {
    font-size: 0.8125rem;
  }
  .p-subject-hoiku-public__list {
    grid-template-columns: repeat(2, 1fr);
    column-gap: 0.875rem;
  }
  .p-subject-hoiku-public__item {
    border-radius: 0.3125rem;
    padding: 1.625rem 3.0625rem 1.5rem;
  }
  .p-subject-hoiku-public__item-ttl {
    font-size: 1rem;
  }
  .p-subject-hoiku-public__item-list {
    margin-top: 0.9375rem;
  }
  .p-subject-hoiku-public__item-item {
    font-size: 1rem;
    gap: 0.3125rem;
  }
  .p-subject-hoiku-public__item-txt {
    display: flex;
    align-items: flex-end;
    margin-top: 1.0625rem;
  }
  .p-subject-hoiku-public__num {
    font-size: 1.4875rem;
  }
  .p-subject-hoiku-public__num em {
    font-size: 4.5625rem;
  }
  .p-subject-hoiku-public__num small {
    font-size: 0.75rem;
  }
}
@media (max-width: 767px) {
  .p-subject-hoiku-public {
    padding-block: min(38px, 9.7435897436vw) min(47px, 12.0512820513vw);
  }
  .p-subject-hoiku-public__wrap {
    padding-inline: min(29px, 7.4358974359vw);
  }
  .p-subject-hoiku-public__cont {
    margin-bottom: min(18px, 4.6153846154vw);
  }
  .p-subject-hoiku-public__img {
    width: 100%;
    margin-bottom: min(15px, 3.8461538462vw);
  }
  .p-subject-hoiku-public__img img {
    border-radius: min(3px, 0.7692307692vw);
  }
  .p-subject-hoiku-public-ttl {
    font-size: min(16px, 4.1025641026vw);
    margin-bottom: min(15px, 3.8461538462vw);
  }
  .p-subject-hoiku-public-ttl span {
    font-size: min(25px, 6.4102564103vw);
    margin-top: min(6px, 1.5384615385vw);
  }
  .p-subject-hoiku-public-txt {
    font-size: min(13px, 3.3333333333vw);
  }
  .p-subject-hoiku-public__list {
    grid-template-columns: 1fr;
    row-gap: min(13px, 3.3333333333vw);
  }
  .p-subject-hoiku-public__item {
    border-radius: min(5px, 1.2820512821vw);
    padding: min(27px, 6.9230769231vw) min(18px, 4.6153846154vw) min(25px, 6.4102564103vw);
  }
  .p-subject-hoiku-public__item-ttl {
    font-size: min(16px, 4.1025641026vw);
  }
  .p-subject-hoiku-public__item-list {
    padding-inline: min(22px, 5.641025641vw);
    margin-top: min(12px, 3.0769230769vw);
  }
  .p-subject-hoiku-public__item-item {
    font-size: min(16px, 4.1025641026vw);
    gap: min(5px, 1.2820512821vw);
  }
  .p-subject-hoiku-public__item-txt {
    padding-inline: min(22px, 5.641025641vw);
    margin-top: min(21px, 5.3846153846vw);
  }
  .p-subject-hoiku-public__name span {
    display: inline-block;
  }
  .p-subject-hoiku-public__num {
    width: max-content;
    font-size: min(24px, 6.1025641026vw);
    margin-top: min(12px, 3.0769230769vw);
    margin-inline: auto;
  }
  .p-subject-hoiku-public__num em {
    font-size: min(73px, 18.7179487179vw);
  }
  .p-subject-hoiku-public__num small {
    font-size: min(12px, 3.0769230769vw);
  }
}

/* .p-subject-hoiku-flow
----------------------------------- */
.p-subject-hoiku-flow__ttl {
  font-weight: 700;
  color: #f8b500;
  text-align: center;
}
.p-subject-hoiku-flow__table {
  width: max-content;
  border-collapse: collapse;
}
.p-subject-hoiku-flow__table th,
.p-subject-hoiku-flow__table td {
  border: 1px solid #f8b500;
  font-weight: 500;
}
.p-subject-hoiku-flow__table th {
  line-height: 1.5714285714;
  text-align: center;
  vertical-align: middle;
}
.p-subject-hoiku-flow__table td {
  line-height: 1.5384615385;
}
.p-subject-hoiku-flow__year {
  background-color: #f8b500;
  color: #fff;
}
.p-subject-hoiku-flow__year:first-of-type {
  border-right: solid 1px #fff !important;
}
.p-subject-hoiku-flow__term {
  background-color: #fffbe0;
  color: #f8b500;
}
.p-subject-hoiku-flow__col:nth-of-type(3) {
  position: relative;
}
.p-subject-hoiku-flow__list--row {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.p-subject-hoiku-flow__item {
  display: flex;
}
.p-subject-hoiku-flow__item::before {
  content: "●";
  color: #f8b500;
  flex-shrink: 0;
}
.p-subject-hoiku-flow__item--child::before {
  content: "・";
  color: #1e1e1e;
}
.p-subject-hoiku-flow__item span {
  display: inline-block;
}
.p-subject-hoiku-flow__arw {
  background: url("../img/subject/hoiku/table_arw.svg") no-repeat center/contain;
  font-weight: 500;
  color: #f8b500;
  letter-spacing: 0.1em;
  line-height: 1.5714285714;
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
}
@media (min-width: 768px) {
  .p-subject-hoiku-flow {
    padding-bottom: 3.8125rem;
  }
  .p-subject-hoiku-flow__ttl {
    font-size: 1.5625rem;
    margin-bottom: 1.9375rem;
  }
  .p-subject-hoiku-flow__scroll {
    width: 62.25rem;
    margin-inline: auto;
  }
  .p-subject-hoiku-flow__scroll .p-campus-map__scroll-hint {
    display: none;
  }
  .p-subject-hoiku-flow__table td {
    font-size: 0.8125rem;
    padding: 0.9375rem 1.5625rem;
  }
  .p-subject-hoiku-flow__head th {
    height: 1.8125rem;
  }
  .p-subject-hoiku-flow__col:nth-of-type(1) {
    width: 15.5rem;
  }
  .p-subject-hoiku-flow__col:nth-of-type(2) {
    width: 12.625rem;
  }
  .p-subject-hoiku-flow__col:nth-of-type(3) {
    width: 18.4375rem;
    padding-top: 3.0625rem;
  }
  .p-subject-hoiku-flow__col:nth-of-type(4) {
    width: 15.5625rem;
    padding-top: 3.0625rem;
  }
  .p-subject-hoiku-flow__item {
    column-gap: 0.25rem;
  }
  .p-subject-hoiku-flow__item--margin {
    margin-top: 0.6875rem;
  }
  .p-subject-hoiku-flow__item--padding::before {
    padding-left: 0.9375rem;
  }
  .p-subject-hoiku-flow__arw {
    width: 24.75rem;
    height: 1.8125rem;
    font-size: 0.875rem;
    padding-left: 0.375rem;
    top: 0.6875rem;
    left: 1.5rem;
  }
}
@media (max-width: 767px) {
  .p-subject-hoiku-flow {
    padding-bottom: min(70px, 17.9487179487vw);
  }
  .p-subject-hoiku-flow__ttl {
    font-size: min(22px, 5.641025641vw);
    margin-bottom: min(24px, 6.1538461538vw);
  }
  .p-subject-hoiku-flow__scroll {
    padding-inline: min(32px, 8.2051282051vw);
    overflow-x: scroll;
    position: relative;
  }
  .p-subject-hoiku-flow__scroll .p-campus-map__scroll-hint {
    left: 50%;
  }
  .p-subject-hoiku-flow__scroll.is-hint-visible .p-campus-map__scroll-hint {
    opacity: 1;
  }
  .p-subject-hoiku-flow__scroll.is-scrolled .p-campus-map__scroll-hint {
    opacity: 0;
  }
  .p-subject-hoiku-flow__table td {
    font-size: min(13px, 3.3333333333vw);
    padding: min(15px, 3.8461538462vw) min(25px, 6.4102564103vw);
  }
  .p-subject-hoiku-flow__head th {
    height: min(29px, 7.4358974359vw);
  }
  .p-subject-hoiku-flow__col:nth-of-type(1) {
    width: min(248px, 63.5897435897vw);
  }
  .p-subject-hoiku-flow__col:nth-of-type(2) {
    width: min(202px, 51.7948717949vw);
  }
  .p-subject-hoiku-flow__col:nth-of-type(3) {
    width: min(295px, 75.641025641vw);
    padding-top: min(49px, 12.5641025641vw);
  }
  .p-subject-hoiku-flow__col:nth-of-type(4) {
    width: min(249px, 63.8461538462vw);
    padding-top: min(49px, 12.5641025641vw);
  }
  .p-subject-hoiku-flow__item {
    column-gap: min(4px, 1.0256410256vw);
  }
  .p-subject-hoiku-flow__item--margin {
    margin-top: min(11px, 2.8205128205vw);
  }
  .p-subject-hoiku-flow__item--padding::before {
    padding-left: min(15px, 3.8461538462vw);
  }
  .p-subject-hoiku-flow__arw {
    width: min(396px, 101.5384615385vw);
    height: min(29px, 7.4358974359vw);
    font-size: min(14px, 3.5897435897vw);
    padding-left: min(6px, 1.5384615385vw);
    top: min(11px, 2.8205128205vw);
    left: min(24px, 6.1538461538vw);
  }
}

/* .p-subject-hoiku-voice
----------------------------------- */
.p-subject-hoiku-voice {
  background-color: #fffbe0;
}
.p-subject-hoiku-voice__ttl {
  color: #f8b500;
  font-weight: 700;
  line-height: 1.6666666667;
  text-align: center;
}
.p-subject-hoiku-voice__list {
  display: grid;
}
.p-subject-hoiku-voice__item {
  background-color: #fff;
  position: relative;
}
.p-subject-hoiku-voice__item-ttl {
  font-weight: 700;
  color: #f8b500;
  line-height: 1.375;
}
.p-subject-hoiku-voice__item-txt {
  line-height: 1.5;
}
.p-subject-hoiku-voice__img {
  flex-shrink: 0;
  position: relative;
}
.p-subject-hoiku-voice__img-deco {
  background: url("../img/subject/hoiku/hoiku-voice_deco.svg") no-repeat center/contain;
  font-weight: 700;
  color: #f08300;
  line-height: 1.2857142857;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  z-index: 1;
}
.p-subject-hoiku-voice__btn {
  position: absolute;
}
.p-subject-hoiku-voice__btn .c-btn__btn {
  font-weight: 500;
}
@media (min-width: 768px) {
  .p-subject-hoiku-voice {
    padding-block: 2.5625rem 3.6875rem;
    margin-bottom: 2.8125rem;
  }
  .p-subject-hoiku-voice__wrap {
    width: 62.0625rem;
    margin-inline: auto;
  }
  .p-subject-hoiku-voice__ttl {
    font-size: 1.125rem;
    margin-bottom: 1.8125rem;
  }
  .p-subject-hoiku-voice__list {
    grid-template-columns: repeat(2, 1fr);
    gap: 0.8125rem;
  }
  .p-subject-hoiku-voice__item {
    border-radius: 0.3125rem;
    display: flex;
    column-gap: 1.3125rem;
    padding: 1.8125rem 1.875rem 1.75rem 2.125rem;
  }
  .p-subject-hoiku-voice__item-ttl {
    font-size: 1rem;
    margin-bottom: 0.75rem;
  }
  .p-subject-hoiku-voice__item-txt {
    font-size: 0.75rem;
  }
  .p-subject-hoiku-voice__img {
    width: 6.4375rem;
  }
  .p-subject-hoiku-voice__img-deco {
    width: 5.0625rem;
    height: 5.0625rem;
    top: -2.9375rem;
    left: -2.625rem;
  }
  .p-subject-hoiku-voice__img-txt {
    font-size: 0.75rem;
    line-height: 1.5;
    margin-top: 0.6875rem;
    white-space: nowrap;
  }
  .p-subject-hoiku-voice__btn {
    width: 18.6875rem;
    transform: translateY(50%);
    left: 6.9375rem;
    bottom: 0;
  }
  .p-subject-hoiku-voice__btn .c-btn__btn {
    font-size: 0.8125rem;
  }
}
@media (max-width: 767px) {
  .p-subject-hoiku-voice {
    padding-block: min(42px, 10.7692307692vw) min(41px, 10.5128205128vw);
    margin-bottom: min(39px, 10vw);
  }
  .p-subject-hoiku-voice__wrap {
    padding-inline: min(30px, 7.6923076923vw);
  }
  .p-subject-hoiku-voice__ttl {
    font-size: min(18px, 4.6153846154vw);
    margin-bottom: min(23px, 5.8974358974vw);
  }
  .p-subject-hoiku-voice__list {
    grid-template-columns: 1fr;
    row-gap: min(50px, 12.8205128205vw);
  }
  .p-subject-hoiku-voice__item {
    border-radius: min(5px, 1.2820512821vw);
    padding: min(29px, 7.4358974359vw) min(21px, 5.3846153846vw) min(23px, 5.8974358974vw) min(30px, 7.6923076923vw);
  }
  .p-subject-hoiku-voice__item--padding {
    padding: min(29px, 7.4358974359vw) min(21px, 5.3846153846vw) min(42px, 10.7692307692vw) min(30px, 7.6923076923vw);
  }
  .p-subject-hoiku-voice__item-ttl {
    font-size: min(16px, 4.1025641026vw);
    margin-bottom: min(12px, 3.0769230769vw);
  }
  .p-subject-hoiku-voice__item-txt {
    font-size: min(12px, 3.0769230769vw);
  }
  .p-subject-hoiku-voice__img {
    width: min(130px, 33.3333333333vw);
    margin-inline: auto;
    margin-bottom: min(19px, 4.8717948718vw);
  }
  .p-subject-hoiku-voice__img-deco {
    width: min(81px, 20.7692307692vw);
    height: min(81px, 20.7692307692vw);
    top: 0;
    left: min(-57px, -14.6153846154vw);
  }
  .p-subject-hoiku-voice__img-txt {
    font-size: min(12px, 3.0769230769vw);
    line-height: 1.3333333333;
    position: absolute;
    transform: translateX(100%);
    right: min(-4px, -1.0256410256vw);
    bottom: 0;
  }
  .p-subject-hoiku-voice__btn {
    width: 100%;
    padding-inline: min(15px, 3.8461538462vw);
    transform: translate(-50%, 100%);
    left: 50%;
    bottom: min(15px, 3.8461538462vw);
  }
  .p-subject-hoiku-voice__btn .c-btn__btn {
    font-size: min(13px, 3.3333333333vw);
  }
}

/* .p-future
----------------------------------- */
.p-future {
  container-type: inline-size;
}
.p-future__intro {
  font-weight: 500;
  color: #009b77;
  text-align: center;
}
.p-future__h {
  font-weight: 500;
  color: #009b77;
}
.p-future__h-note {
  display: block;
  font-weight: 500;
  color: #009b77;
}
@media (min-width: 768px) {
  .p-future {
    padding-bottom: 222px;
  }
  .p-future .p-breadcrumbs--base {
    margin-top: 12px;
  }
  .p-future .p-breadcrumbs__list {
    height: 52px;
  }
  .p-future__intro {
    padding-inline: 30px;
    margin-top: 6px;
    font-size: 1.125rem;
    line-height: 2.2222222222;
  }
  .p-future__sec {
    max-width: 998px;
    margin-inline: auto;
  }
  .p-future__hgroup {
    display: block flex;
    column-gap: 13px;
    align-items: flex-end;
  }
  .p-future__h {
    font-size: 1.5625rem;
    line-height: 1.212;
  }
  .p-future__h-note {
    font-size: 0.875rem;
  }
}
@media (max-width: 767px) {
  .p-future {
    padding-bottom: min(65px, 16.6666666667vw);
  }
  .p-future__intro {
    padding-inline: min(10px, 2.5641025641vw);
    margin-top: min(40px, 10.2564102564vw);
    font-size: min(16px, 4.1025641026vw);
    line-height: 1.875;
  }
  .p-future__sec {
    padding-inline: min(30px, 7.6923076923vw);
    margin-top: min(50px, 12.8205128205vw);
  }
  .p-future__h {
    font-size: min(22px, 5.641025641vw);
    line-height: 1.5909090909;
  }
  .p-future__h-note {
    margin-top: min(5px, 1.2820512821vw);
    font-size: min(14px, 3.5897435897vw);
    line-height: 2.1428571429;
  }
}

/* .p-future-center
----------------------------------- */
.p-future-center {
  border: 1px solid #009b77;
}
.p-future-center__ttl, .p-future-center__copy {
  font-weight: 500;
  color: #009b77;
}
.p-future-center__copy {
  line-height: 1.75;
}
.p-future-center__btn {
  width: fit-content;
  margin-inline: auto;
}
@media (min-width: 768px) {
  .p-future-center {
    padding: 49px 49px 43px 52px;
    margin-top: 70px;
    border-radius: 5px;
  }
  .p-future-center__ttl {
    font-size: 1.5625rem;
    line-height: 1.212;
  }
  .p-future-center__copy {
    margin-top: 13px;
    font-size: 1rem;
  }
  .p-future-center__txt {
    margin-top: 7px;
    font-size: 1rem;
    line-height: 1.5625;
  }
  .p-future-center__btn {
    margin-top: 13px;
  }
  .p-future-center__btn a {
    width: 269px;
    height: 45px;
  }
}
@media (max-width: 767px) {
  .p-future-center {
    padding: min(39px, 10vw) min(23px, 5.8974358974vw) min(36px, 9.2307692308vw);
    margin-top: min(50px, 12.8205128205vw);
    border-radius: min(5px, 1.2820512821vw);
  }
  .p-future-center__ttl {
    font-size: min(18px, 4.6153846154vw);
    line-height: 1.6666666667;
    text-align: center;
  }
  .p-future-center__copy {
    margin-top: min(13px, 3.3333333333vw);
    font-size: min(13px, 3.3333333333vw);
  }
  .p-future-center__txt {
    margin-top: min(7px, 1.7948717949vw);
    font-size: min(13px, 3.3333333333vw);
    line-height: 1.5384615385;
  }
  .p-future-center__btn {
    margin-top: min(25px, 6.3102564103vw);
  }
  .p-future-center__btn a {
    width: min(269px, 68.9692307692vw);
    height: min(45px, 11.5307692308vw);
  }
}

/* .p-future-dept
----------------------------------- */
.p-future-dept__lede {
  line-height: 1.5625;
}
.p-future-dept__img {
  display: block;
  width: 100%;
}
.p-future-dept__h {
  font-weight: 500;
  line-height: 1.5625;
  color: #009b77;
}
.p-future-dept__txt {
  line-height: 1.5384615385;
}
@media (min-width: 768px) {
  .p-future-dept {
    margin-top: 76px;
  }
  .p-future-dept__lede {
    margin-top: 30px;
    font-size: 1rem;
  }
  .p-future-dept__slider-wrap {
    max-width: 995px;
    margin-top: 15px;
  }
  .p-future-dept__slider {
    display: block grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 25px;
  }
  .p-future-dept__img {
    border-radius: 5px;
  }
  .p-future-dept__h {
    margin-top: 10px;
    font-size: 1rem;
  }
  .p-future-dept__txt {
    margin-top: 5px;
    font-size: 0.8125rem;
  }
}
@media (max-width: 767px) {
  .p-future-dept {
    overflow: hidden;
  }
  .p-future-dept__lede {
    margin-top: min(10px, 2.5641025641vw);
    font-size: min(16px, 4.1025641026vw);
  }
  .p-future-dept__slider-wrap {
    width: 100vw;
    margin: min(25px, 6.4102564103vw) calc(50% - 50vw) 0;
  }
  .p-future-dept__slider,
  .p-future-dept__slider .slick-track {
    display: block flex;
    column-gap: min(25px, 6.4102564103vw);
    padding-left: min(30px, 7.6923076923vw);
  }
  .p-future-dept__slider .slick-slide {
    float: none;
    height: auto;
  }
  .p-future-dept__slide {
    width: min(230px, 58.9743589744vw);
    min-width: min(230px, 58.9743589744vw);
  }
  .p-future-dept__img {
    border-radius: min(5px, 1.2820512821vw);
  }
  .p-future-dept__h {
    margin-top: min(10px, 2.5641025641vw);
    font-size: min(16px, 4.1025641026vw);
  }
  .p-future-dept__txt {
    margin-top: min(5px, 1.2820512821vw);
    font-size: min(13px, 3.3333333333vw);
  }
  .p-future-dept__slider-arws {
    margin-top: min(25px, 6.4102564103vw);
  }
}

/* .p-future-head
----------------------------------- */
.p-future-head {
  position: relative;
  color: #fff;
  background: #009b77;
}
.p-future-head__img {
  display: block;
  width: 100%;
}
.p-future-head__bloc {
  display: block grid;
}
.p-future-head__copy {
  font-weight: 500;
}
.p-future-head__ttl {
  margin-block: var(--leading-trim);
  font-weight: 700;
}
@media (min-width: 768px) {
  .p-future-head {
    height: 300px;
  }
  .p-future-head__fig {
    position: absolute;
    inset-block: 0;
    right: 0;
    width: min(799px, 57.0714285714%);
  }
  .p-future-head__img {
    height: 100%;
    object-fit: cover;
  }
  .p-future-head__bloc {
    row-gap: 21px;
    place-content: center start;
    height: 100%;
  }
  .p-future-head__copy {
    font-size: 1rem;
    line-height: 1.5625;
  }
  .p-future-head__ttl {
    font-size: 1.75rem;
  }
}
@media (max-width: 767px) {
  .p-future-head__bloc {
    row-gap: min(10px, 2.5641025641vw);
    padding: min(24px, 6.1538461538vw) min(32px, 8.2051282051vw) min(42px, 10.7692307692vw);
  }
  .p-future-head__copy {
    font-size: min(15px, 3.8461538462vw);
    line-height: 1.6666666667;
  }
  .p-future-head__ttl {
    font-size: min(25px, 6.4102564103vw);
  }
}

/* .p-future-ob
----------------------------------- */
.p-future-ob__slider-wrap {
  overflow: hidden;
}
.p-future-ob__slider,
.p-future-ob__slider .slick-track {
  display: block flex;
}
.p-future-ob__slider .slick-slide {
  float: none;
  height: auto;
}
@media (min-width: 768px) {
  .p-future-ob {
    margin-top: 70px;
  }
  .p-future-ob__cont {
    margin-top: 22px;
  }
  @container (min-width: 1201px) {
    .p-future-ob__slider-wrap {
      margin-right: calc((100vw - 998px) / 2 * -1);
    }
  }
  @container (max-width: 1200px) {
    .p-future-ob__slider-wrap {
      margin-right: -101px;
    }
  }
  .p-future-ob__slider,
  .p-future-ob__slider .slick-track {
    gap: 26px;
  }
  .p-future-ob__slider .p-highschool-story__card {
    width: 304px;
  }
  .p-future-ob__slider .p-highschool-story__art-fig {
    border-radius: 7px;
  }
  .p-future-ob__slider .p-highschool-story__art-company {
    margin-top: 12px;
    font-size: 0.8125rem;
  }
  .p-future-ob__slider .p-highschool-story__art-ttl {
    margin-top: 6px;
    font-size: 1.0625rem;
  }
  .p-future-ob__slider .p-highschool-story__art-course {
    padding-inline: 13px;
    margin-top: 12px;
    font-size: 0.75rem;
    border-radius: 4px;
  }
  .p-future-ob__slider .p-highschool-story__art-profile {
    margin-top: 8px;
    font-size: 0.6875rem;
  }
  .p-future-ob__slider-arws {
    margin-top: 30px;
  }
}
@media (max-width: 767px) {
  .p-future-ob {
    overflow: hidden;
  }
  .p-future-ob__cont {
    margin-top: min(26px, 6.6666666667vw);
  }
  .p-future-ob__slider-wrap {
    width: 100vw;
    margin-inline: calc(50% - 50vw);
  }
  .p-future-ob__slider .p-highschool-story__slide {
    padding-left: min(30px, 7.6923076923vw);
  }
  .p-future-ob__slider .p-highschool-story__card {
    width: min(304px, 77.9102564103vw);
  }
  .p-future-ob__slider .p-highschool-story__art-fig {
    border-radius: min(7px, 1.8948717949vw);
  }
  .p-future-ob__slider .p-highschool-story__art-company {
    margin-top: min(12px, 3.1153846154vw);
    font-size: min(13px, 3.3384615385vw);
  }
  .p-future-ob__slider .p-highschool-story__art-ttl {
    margin-top: min(6px, 1.558974359vw);
    font-size: min(17px, 4.4512820513vw);
  }
  .p-future-ob__slider .p-highschool-story__art-course {
    padding-inline: min(13px, 3.3333333333vw);
    margin-top: min(12px, 3.1153846154vw);
    font-size: min(12px, 3.1153846154vw);
    border-radius: min(4px, 1.1128205128vw);
  }
  .p-future-ob__slider .p-highschool-story__art-profile {
    margin-top: min(8px, 2.0025641026vw);
    font-size: min(11px, 2.8923076923vw);
  }
  .p-future-ob__slider-arws {
    margin-top: min(25px, 6.4102564103vw);
  }
}

/* .p-future-reason
----------------------------------- */
.p-future-reason__cont {
  display: block grid;
}
.p-future-reason__system-img {
  display: block;
  width: 100%;
}
.p-future-reason__txt {
  line-height: 1.5625;
}
.p-future-reason__slide-fig {
  aspect-ratio: 7/5;
}
.p-future-reason__slide-img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-future-reason__slide-h {
  font-weight: 500;
  line-height: 1.5625;
  color: #009b77;
}
.p-future-reason__slide-txt {
  line-height: 1.5384615385;
}
@media (min-width: 768px) {
  .p-future-reason {
    margin-top: 54px;
  }
  .p-future-reason__cont {
    grid-template-columns: 485px 1fr;
    column-gap: 28px;
    margin-top: 30px;
  }
  .p-future-reason__txt {
    margin-top: 25px;
    font-size: 1rem;
  }
  .p-future-reason__slider {
    display: block grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 21px 25px;
  }
  .p-future-reason__slide-img {
    border-radius: 5px;
  }
  .p-future-reason__slide-h {
    margin-top: 10px;
    font-size: 1rem;
  }
  .p-future-reason__slide-txt {
    margin-top: 5px;
    font-size: 0.8125rem;
  }
}
@media (max-width: 767px) {
  .p-future-reason {
    overflow: hidden;
  }
  .p-future-reason__cont {
    row-gap: min(26px, 6.7025641026vw);
    margin-top: min(27px, 6.9230769231vw);
  }
  .p-future-reason__txt {
    margin-top: min(10px, 2.5641025641vw);
    font-size: min(16px, 4.1025641026vw);
  }
  .p-future-reason__slider-wrap {
    width: 100vw;
    margin-inline: calc(50% - 50vw);
  }
  .p-future-reason__slider,
  .p-future-reason__slider .slick-track {
    display: block flex;
    column-gap: min(18px, 4.6153846154vw);
    padding-left: min(30px, 7.6923076923vw);
  }
  .p-future-reason__slider .slick-slide {
    float: none;
    height: auto;
  }
  .p-future-reason__slide {
    width: min(225px, 57.6923076923vw);
    min-width: min(225px, 57.6923076923vw);
  }
  .p-future-reason__slide-img {
    border-radius: min(5px, 1.2538461538vw);
  }
  .p-future-reason__slide-h {
    margin-top: min(10px, 2.5641025641vw);
    font-size: min(16px, 4.1025641026vw);
  }
  .p-future-reason__slide-txt {
    margin-top: min(5px, 1.2820512821vw);
    font-size: min(13px, 3.3333333333vw);
  }
  .p-future-reason__slider-arws {
    margin-top: min(27px, 6.8179487179vw);
  }
}

/* .p-future-result
----------------------------------- */
.p-future-result__cont {
  display: block grid;
}
.p-future-result__h {
  font-weight: 500;
  color: #009b77;
}
.p-future-result__txt {
  line-height: 1.5625;
}
.p-future-result__graph-img {
  display: block;
}
@media (min-width: 768px) {
  .p-future-result {
    margin-top: 75px;
  }
  .p-future-result__cont {
    grid-template-columns: 1fr 461px;
    row-gap: 17px;
    margin-top: 8px;
  }
  .p-future-result__bloc {
    grid-row-start: 1;
    grid-column-start: 2;
  }
  .p-future-result__h {
    font-size: 1.125rem;
    line-height: 1.7777777778;
  }
  .p-future-result__txt {
    margin-top: 17px;
    font-size: 1rem;
  }
  .p-future-result__fig {
    display: block grid;
    grid-row: span 2/span 2;
    grid-row-start: 1;
    grid-column-start: 1;
    place-content: end start;
  }
  .p-future-result__graph-img {
    width: 481px;
    margin-left: -29px;
  }
  .p-future-result__btns {
    grid-column-start: 2;
  }
  .p-future-result__btn {
    width: 299px;
    margin-top: 17px;
  }
  .p-future-result__btn + .p-future-result__btn {
    margin-top: 10px;
  }
}
@media (max-width: 767px) {
  .p-future-result__cont {
    row-gap: min(20px, 5.1282051282vw);
    margin-top: min(20px, 5.1282051282vw);
  }
  .p-future-result__h {
    font-size: min(18px, 4.6153846154vw);
    line-height: 1.6666666667;
  }
  .p-future-result__txt {
    margin-top: min(10px, 2.5641025641vw);
    font-size: min(16px, 4.1025641026vw);
  }
  .p-future-result__graph-img {
    width: 100%;
  }
  .p-future-result__btn + .p-future-result__btn {
    margin-top: min(10px, 2.5641025641vw);
  }
  .p-future-result__btn a {
    margin-inline: auto;
  }
}

/* .p-future-system
----------------------------------- */
.p-future-system__h, .p-future-system__sh {
  font-weight: 500;
  color: #009b77;
}
.p-future-system__img {
  display: block;
  width: 100%;
}
.p-future-system__sh {
  line-height: 1.7777777778;
}
.p-future-system__txt {
  line-height: 1.5625;
}
.p-future-system__list {
  font-weight: 500;
  line-height: 1.5625;
}
.p-future-system__li {
  padding-left: 1em;
  text-indent: -1em;
}
.p-future-system__btn a {
  margin-inline: auto;
}
@media (min-width: 768px) {
  .p-future-system {
    margin-top: 84px;
  }
  .p-future-system__h {
    margin-top: 30px;
    font-size: 1.25rem;
    line-height: 1.515;
  }
  .p-future-system__slider-wrap {
    margin-top: 15px;
  }
  .p-future-system__slider {
    display: block grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 45px;
    max-width: 996px;
  }
  .p-future-system__img {
    border-radius: 5px;
  }
  .p-future-system__sh {
    margin-top: 10px;
    font-size: 1.125rem;
  }
  .p-future-system__txt {
    margin-top: 5px;
    font-size: 1rem;
  }
  .p-future-system__list {
    padding-left: 21px;
    margin-top: 10px;
    font-size: 1rem;
  }
  .p-future-system__btn {
    margin-top: 39px;
  }
}
@media (max-width: 767px) {
  .p-future-system {
    overflow: hidden;
  }
  .p-future-system__h {
    margin-top: min(21px, 5.3846153846vw);
    font-size: min(18px, 4.6153846154vw);
    line-height: 1.6666666667;
  }
  .p-future-system__slider-wrap {
    width: 100vw;
    margin: min(15px, 3.8461538462vw) calc(50% - 50vw) 0;
  }
  .p-future-system__slider,
  .p-future-system__slider .slick-track {
    display: block flex;
    column-gap: min(26px, 6.6666666667vw);
    padding-left: min(30px, 7.6923076923vw);
  }
  .p-future-system__slider .slick-slide {
    float: none;
    height: auto;
  }
  .p-future-system__slide {
    width: min(302px, 77.4358974359vw);
    min-width: min(302px, 77.4358974359vw);
  }
  .p-future-system__img {
    border-radius: min(5px, 1.2820512821vw);
  }
  .p-future-system__sh {
    margin-top: min(10px, 2.5641025641vw);
    font-size: min(18px, 4.6153846154vw);
  }
  .p-future-system__txt {
    margin-top: min(5px, 1.2820512821vw);
    font-size: min(16px, 4.1025641026vw);
  }
  .p-future-system__list {
    padding-left: min(21px, 5.3846153846vw);
    margin-top: min(10px, 2.5641025641vw);
    font-size: min(16px, 4.1025641026vw);
  }
  .p-future-system__slider-arws {
    margin-top: min(17px, 4.358974359vw);
  }
  .p-future-system__btn {
    margin-top: min(21px, 5.3846153846vw);
  }
}

/* .p-access
----------------------------------- */
.p-access__h {
  font-weight: 500;
  color: #009b77;
}
.p-access__box {
  border: 1px solid #009b77;
}
@media (min-width: 768px) {
  .p-access {
    padding-bottom: 100px;
  }
  .p-access__wrap {
    padding-inline: 30px;
    margin-top: 25px;
  }
  .p-access__h {
    font-size: 1.5625rem;
    line-height: 1.6;
  }
  .p-access__box {
    padding: 40px 50px 53px;
    margin-top: 48px;
    border-radius: 20px;
  }
}
@media (max-width: 767px) {
  .p-access {
    padding-bottom: min(68px, 17.4358974359vw);
    border-bottom: 1px solid #009b77;
  }
  .p-access__wrap {
    margin-top: min(75px, 19.2307692308vw);
  }
  .p-access__h {
    font-size: min(24px, 6.1538461538vw);
    line-height: 1.6666666667;
    text-align: center;
  }
  .p-access__box {
    padding-block: min(45px, 11.5384615385vw) min(43px, 11.0256410256vw);
    margin: min(62px, 15.8974358974vw) min(10px, 2.5641025641vw) 0;
    border-radius: min(20px, 5.1282051282vw);
  }
}

/* .p-access-map
----------------------------------- */
.p-access-map {
  display: block grid;
}
.p-access-map__map iframe {
  width: 100%;
  height: 100%;
}
.p-access-map__txt {
  line-height: 1.5714285714;
}
@media (min-width: 768px) {
  .p-access-map {
    grid-template-rows: auto 1fr;
    grid-template-columns: 1fr 760px;
    row-gap: 22px;
  }
  .p-access-map__map {
    grid-row: span 2/span 2;
    height: 406px;
  }
  .p-access-map__txt {
    font-size: 0.875rem;
  }
}
@media (max-width: 767px) {
  .p-access-map__map {
    aspect-ratio: 392/406;
    margin-top: min(25px, 6.4102564103vw);
  }
  .p-access-map__txt {
    padding-inline: min(30px, 7.6923076923vw);
    margin-top: min(15px, 3.8461538462vw);
    font-size: min(14px, 3.5897435897vw);
  }
}

/* .p-access-nav
----------------------------------- */
.p-access-nav {
  display: block grid;
}
.p-access-nav__link {
  display: block flex;
  align-items: center;
  justify-content: space-between;
  color: #009b77;
  border-bottom: 1px solid #009b77;
}
.p-access-nav__link::after {
  display: block;
  width: 1em;
  min-width: 1em;
  aspect-ratio: 14/10;
  content: "";
  background: currentColor;
  mask: url("../img/common/arw.svg") no-repeat center center;
  mask-size: contain;
  rotate: 90deg;
}
@media (any-hover: hover) {
  .p-access-nav__link:hover {
    text-decoration: underline;
  }
}
@media (min-width: 768px) {
  .p-access-nav {
    grid-template-columns: repeat(3, 1fr);
    column-gap: 15px;
    max-width: 890px;
    margin-top: 50px;
  }
  .p-access-nav__link {
    min-height: 53px;
    padding-right: 13px;
    font-size: 0.875rem;
  }
}
@media (max-width: 767px) {
  .p-access-nav {
    max-width: min(287px, 73.5897435897vw);
    margin: min(44px, 11.341025641vw) auto 0;
  }
  .p-access-nav__link {
    min-height: min(53px, 13.5897435897vw);
    padding-right: min(13px, 3.3333333333vw);
    font-size: min(14px, 3.5897435897vw);
  }
}

/* .p-schoolbus-route
----------------------------------- */
.p-schoolbus-route__h {
  font-weight: 500;
  color: #009b77;
}
.p-schoolbus-route__boxs {
  display: block grid;
}
.p-schoolbus-route__img {
  display: block;
  width: 100%;
}
.p-schoolbus-route__txt {
  line-height: 1.2857142857;
}
@media (min-width: 768px) {
  .p-schoolbus-route {
    max-width: 886px;
    margin-top: 29px;
  }
  .p-schoolbus-route__h {
    font-size: 1.25rem;
    line-height: 1.5;
  }
  .p-schoolbus-route__boxs {
    grid-template-columns: repeat(4, 1fr);
    gap: 15px 14px;
    margin-top: 20px;
  }
  .p-schoolbus-route__img {
    border-radius: 5px;
  }
  .p-schoolbus-route__txt {
    margin-top: 10px;
    font-size: 0.875rem;
  }
}
@media (max-width: 767px) {
  .p-schoolbus-route {
    margin-top: min(19px, 4.8717948718vw);
  }
  .p-schoolbus-route__h {
    font-size: min(16px, 4.1025641026vw);
    line-height: 1.875;
    text-align: center;
  }
  .p-schoolbus-route__boxs {
    row-gap: min(15px, 3.8461538462vw);
    padding-inline: min(19px, 4.7435897436vw);
    margin-top: min(17px, 4.358974359vw);
  }
  .p-schoolbus-route__box {
    display: block flex;
    gap: min(10px, 2.5641025641vw);
    align-items: flex-end;
  }
  .p-schoolbus-route__img {
    width: min(211px, 54.1025641026vw);
    border-radius: min(5px, 1.2820512821vw);
  }
  .p-schoolbus-route__txt {
    flex: 1 1 5%;
    min-width: 0;
    font-size: min(14px, 3.5897435897vw);
  }
}

/* .p-schoolbus-schedule
----------------------------------- */
.p-schoolbus-schedule__h, .p-schoolbus-schedule__cap {
  font-weight: 500;
  color: #009b77;
}
.p-schoolbus-schedule__tables {
  display: block grid;
}
.p-schoolbus-schedule__table {
  width: 100%;
  color: #009b77;
  table-layout: fixed;
}
.p-schoolbus-schedule__table th,
.p-schoolbus-schedule__table td {
  font-weight: 400;
  text-align: center;
  border: 1px solid #009b77;
}
.p-schoolbus-schedule__table thead th,
.p-schoolbus-schedule__table thead td {
  background: #f5f5f5;
}
.p-schoolbus-schedule__cap {
  line-height: 1.875;
}
.p-schoolbus-schedule__sec {
  line-height: 1.5714285714;
}
.p-schoolbus-schedule__sh {
  font-weight: 500;
}
.p-schoolbus-schedule__txt:is(li) {
  padding-left: 1em;
  text-indent: -1em;
}
.p-schoolbus-schedule__txt:is(li)::before {
  content: "・";
}
@media (min-width: 768px) {
  .p-schoolbus-schedule {
    margin-top: 55px;
  }
  .p-schoolbus-schedule__h {
    font-size: 1.25rem;
    line-height: 1.5;
  }
  .p-schoolbus-schedule__tables {
    grid-template-columns: repeat(2, 1fr);
    gap: 14px;
    max-width: 886px;
    margin-top: 10px;
  }
  .p-schoolbus-schedule__table th,
  .p-schoolbus-schedule__table td {
    padding: 7px;
    font-size: 0.825625rem;
    line-height: 1.2490537472;
  }
  .p-schoolbus-schedule__cap {
    margin-bottom: 10px;
    font-size: 1rem;
  }
  .p-schoolbus-schedule__tb-center {
    width: 19.8119266055%;
  }
  .p-schoolbus-schedule__sec {
    display: block grid;
    grid-template-columns: 112px 1fr;
    margin-top: 30px;
    font-size: 0.875rem;
    line-height: 1.5714285714;
  }
  .p-schoolbus-schedule__sec + .p-schoolbus-schedule__sec {
    margin-top: 11px;
  }
}
@media (max-width: 767px) {
  .p-schoolbus-schedule {
    padding-inline: min(15px, 3.8461538462vw) min(14px, 3.5897435897vw);
    margin-top: min(59px, 15.1282051282vw);
  }
  .p-schoolbus-schedule__h {
    font-size: min(24px, 6.1538461538vw);
    line-height: 1.6666666667;
    text-align: center;
  }
  .p-schoolbus-schedule__tables {
    row-gap: min(17px, 4.4128205128vw);
    margin-top: min(19px, 4.8717948718vw);
  }
  .p-schoolbus-schedule__table th,
  .p-schoolbus-schedule__table td {
    padding: min(9px, 2.2230769231vw) min(5px, 1.2820512821vw);
    font-size: min(16px, 4.1025641026vw);
    line-height: 1.25;
  }
  .p-schoolbus-schedule__cap {
    margin-bottom: min(8px, 2.0512820513vw);
    font-size: min(16px, 4.1025641026vw);
  }
  .p-schoolbus-schedule__cap > span {
    display: block;
  }
  .p-schoolbus-schedule__tb-center {
    width: 16.4352941176%;
  }
  .p-schoolbus-schedule__sec {
    margin-top: min(33px, 8.5153846154vw);
    font-size: min(14px, 3.5897435897vw);
  }
  .p-schoolbus-schedule__sec + .p-schoolbus-schedule__sec {
    margin-top: min(15px, 3.8461538462vw);
  }
  .p-schoolbus-schedule__sh {
    margin-bottom: min(5px, 1.2820512821vw);
  }
}

/* .p-schoolbus-stop
----------------------------------- */
.p-schoolbus-stop {
  display: block grid;
}
.p-schoolbus-stop__h {
  font-weight: 500;
  color: #009b77;
}
.p-schoolbus-stop__map-img {
  display: block;
  width: 100%;
}
.p-schoolbus-stop__txt {
  line-height: 1.5714285714;
}
@media (min-width: 768px) {
  .p-schoolbus-stop {
    grid-template-rows: auto 1fr;
    grid-template-columns: 1fr 429px;
    gap: 19px 20px;
    max-width: 860px;
    margin-top: 67px;
  }
  .p-schoolbus-stop__h {
    font-size: 1.0625rem;
    line-height: 1.7647058824;
  }
  .p-schoolbus-stop__map {
    grid-row: span 2/span 2;
  }
  .p-schoolbus-stop__txt {
    font-size: 0.875rem;
  }
  .p-schoolbus-stop__btn {
    margin-top: 25px;
  }
}
@media (max-width: 767px) {
  .p-schoolbus-stop {
    margin-top: min(39px, 10vw);
  }
  .p-schoolbus-stop__h {
    font-size: min(24px, 6.1538461538vw);
    line-height: 1.6666666667;
    text-align: center;
  }
  .p-schoolbus-stop__map {
    margin-top: min(25px, 6.4102564103vw);
  }
  .p-schoolbus-stop__bloc {
    padding-inline: min(22px, 5.641025641vw);
    margin-top: min(15px, 3.8461538462vw);
  }
  .p-schoolbus-stop__txt {
    font-size: min(14px, 3.5897435897vw);
  }
  .p-schoolbus-stop__btn {
    margin-top: min(15px, 3.8461538462vw);
  }
  .p-schoolbus-stop__btn a {
    margin-inline: auto;
  }
}

/* .p-access-station
----------------------------------- */
.p-access-station {
  display: block grid;
}
.p-access-station__h {
  font-weight: 500;
  color: #009b77;
}
.p-access-station__txt {
  line-height: 1.5714285714;
}
.p-access-station__map-img {
  display: block;
  width: 100%;
}
@media (min-width: 768px) {
  .p-access-station {
    grid-template-columns: 1fr 507px;
    max-width: 839px;
  }
  .p-access-station__bloc {
    padding-top: 13px;
  }
  .p-access-station__h {
    font-size: 1.5625rem;
    line-height: 1.6;
  }
  .p-access-station__txt {
    margin-top: 22px;
    font-size: 0.875rem;
  }
}
@media (max-width: 767px) {
  .p-access-station {
    row-gap: min(25px, 6.4102564103vw);
    padding-inline: min(11px, 2.8205128205vw);
  }
  .p-access-station__bloc {
    padding-inline: min(7px, 1.7948717949vw);
  }
  .p-access-station__h {
    font-size: min(24px, 6.1538461538vw);
    line-height: 1.6666666667;
    text-align: center;
  }
  .p-access-station__txt {
    margin-top: min(15px, 3.8461538462vw);
    font-size: min(14px, 3.5897435897vw);
  }
}

/* .p-transit-bus
----------------------------------- */
.p-transit-bus__h {
  color: #009b77;
}
.p-transit-bus__dl {
  display: block grid;
  grid-template-columns: 3.2142857143em 1fr;
  column-gap: 0.7142857143em;
  line-height: 1.5714285714;
}
.p-transit-bus__dt, .p-transit-bus__dd {
  font-weight: 400;
}
@media (min-width: 768px) {
  .p-transit-bus {
    padding-inline: 50px;
    margin-top: 37px;
  }
  .p-transit-bus__h {
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1.25;
  }
  .p-transit-bus__dl {
    font-size: 0.875rem;
  }
  .p-transit-bus__dl:first-of-type {
    margin-top: 17px;
  }
  .p-transit-bus__btn {
    margin-top: 23px;
  }
  .p-transit-bus__btn + .p-transit-bus__btn {
    margin-top: 8px;
  }
}
@media (max-width: 767px) {
  .p-transit-bus {
    padding-inline: min(18px, 4.6153846154vw);
    margin-top: min(50px, 12.8205128205vw);
  }
  .p-transit-bus__h {
    font-size: min(24px, 6.1538461538vw);
    font-weight: 500;
    line-height: 1.6666666667;
    text-align: center;
  }
  .p-transit-bus__dl {
    font-size: min(14px, 3.5897435897vw);
  }
  .p-transit-bus__dl:first-of-type {
    margin-top: min(20px, 5.1282051282vw);
  }
  .p-transit-bus__btn {
    margin-top: min(24px, 6.1538461538vw);
  }
  .p-transit-bus__btn + .p-transit-bus__btn {
    margin-top: min(8px, 2.0512820513vw);
  }
  .p-transit-bus__btn a {
    margin-inline: auto;
  }
}

/* .p-scopp
----------------------------------- */
.p-scopp__intro {
  font-weight: 500;
  color: #009b77;
  text-align: center;
}
@media (min-width: 768px) {
  .p-scopp .p-breadcrumbs--base {
    margin-top: 0;
  }
  .p-scopp .p-breadcrumbs__list {
    height: 52px;
  }
  .p-scopp__intro {
    margin-top: 14px;
    font-size: 1.125rem;
    line-height: 2.2222222222;
  }
}
@media (max-width: 767px) {
  .p-scopp .p-breadcrumbs--base {
    margin-top: min(18px, 4.6153846154vw);
  }
  .p-scopp__intro {
    margin-top: min(43px, 11.0256410256vw);
    font-size: min(16px, 4.1025641026vw);
    line-height: 1.875;
  }
}

/* .p-scopp-contact
----------------------------------- */
.p-scopp-contact {
  background: rgba(69, 176, 53, 0.05);
}
.p-scopp-contact__ttl {
  font-weight: 500;
  color: #009b77;
  text-align: center;
}
.p-scopp-contact__lede {
  font-weight: 500;
  text-align: center;
}
.p-scopp-contact__lede em {
  font-size: 1.25em;
  color: #009b77;
}
[data-cate=highschool] .p-scopp-contact__lede em {
  color: #3e86c1;
}
.p-scopp-contact__btn a {
  margin-inline: auto;
}
[data-cate=highschool] .p-scopp-contact__btn a {
  color: #3e86c1;
  border-color: #3e86c1;
}
@media (any-hover: hover) {
  [data-cate=highschool] .p-scopp-contact__btn a:hover {
    color: #fff;
    background: #3e86c1;
  }
}
@media (min-width: 768px) {
  .p-scopp-contact {
    padding: 56px 30px;
    margin-top: 78px;
  }
  .p-scopp-contact__ttl {
    font-size: 1.5625rem;
    line-height: 1.2;
  }
  .p-scopp-contact__boxs {
    display: block flex;
    gap: 23px;
    justify-content: center;
    margin-top: 24px;
  }
  .p-scopp-contact__lede em {
    font-weight: 700;
  }
  .p-scopp-contact__btn {
    margin-top: 11px;
  }
}
@media (max-width: 767px) {
  .p-scopp-contact {
    padding: min(60px, 15.3846153846vw) min(20px, 5.1282051282vw) min(70px, 17.9487179487vw);
    margin-top: min(40px, 10.2564102564vw);
  }
  .p-scopp-contact__ttl {
    font-size: min(24px, 6.1538461538vw);
    line-height: 1.0416666667;
    letter-spacing: 0.1em;
  }
  .p-scopp-contact__boxs {
    display: block grid;
    row-gap: min(40px, 10.2564102564vw);
    margin-top: min(35px, 8.9743589744vw);
  }
  .p-scopp-contact__btn {
    margin-top: min(10px, 2.5641025641vw);
  }
}

/* .p-scopp-fv
----------------------------------- */
.p-scopp-fv {
  position: relative;
  overflow: hidden;
  color: #fff;
  background-color: #009b77;
  background-repeat: no-repeat;
  background-position: center center;
}
.p-scopp-fv__copy {
  font-weight: 500;
  line-height: 1.5625;
}
.p-scopp-fv__ttl {
  margin-block: calc(var(--leading-trim) + 0.75em) var(--leading-trim);
  font-weight: 700;
}
@media (min-width: 768px) {
  .p-scopp-fv {
    height: 457px;
    background-image: image-set(url("../img/scopp/index/fv_img-pc.webp") type('image/webp'), url("../img/scopp/index/fv_img-pc.png") type('image/png'));
    background-size: auto 100%;
  }
  .p-scopp-fv__wrap {
    padding-top: 144px;
  }
  .p-scopp-fv__copy {
    font-size: 1rem;
  }
  .p-scopp-fv__ttl {
    font-size: 1.75rem;
  }
}
@media (max-width: 767px) {
  .p-scopp-fv {
    height: 110.2564102564vw;
    background-image: image-set(url("../img/scopp/index/fv_img-sp.webp") type('image/webp'), url("../img/scopp/index/fv_img-sp.png") type('image/png'));
    background-size: cover;
  }
  .p-scopp-fv__wrap {
    padding-top: 38.9743589744vw;
    text-align: center;
  }
  .p-scopp-fv__copy {
    font-size: 4.1025641026vw;
  }
  .p-scopp-fv__ttl {
    font-size: 7.1794871795vw;
  }
}

/* .p-scopp-newest
----------------------------------- */
.p-scopp-newest {
  container-type: inline-size;
  overflow: hidden;
  background: rgba(69, 176, 53, 0.05);
}
.p-scopp-newest__ttl {
  display: block flex;
  align-items: center;
  font-weight: 500;
  line-height: 1.5625;
  color: #009b77;
}
.p-scopp-newest__ttl::before {
  display: block;
  height: 1px;
  content: "";
  background: currentColor;
}
.p-scopp-newest__ttl > span {
  flex: 1 1 5%;
  min-width: 0;
}
.p-scopp-newest__slider,
.p-scopp-newest__slider .slick-track {
  display: block flex;
}
.p-scopp-newest__slider .slick-slide {
  float: none;
  height: auto;
}
.p-scopp-newest__btn a {
  margin-inline: auto;
}
@media (min-width: 768px) {
  .p-scopp-newest {
    padding: 56px 30px;
    margin-top: 94px;
  }
  .p-scopp-newest__ttl {
    column-gap: 13px;
    font-size: 1rem;
  }
  .p-scopp-newest__ttl::before {
    width: 87px;
  }
  .p-scopp-newest__slider-wrap {
    margin-top: 29px;
  }
  @container (min-width: 1201px) {
    .p-scopp-newest__slider-wrap {
      margin-right: calc((100vw - 994px) / 2 * -1);
    }
  }
  @container (max-width: 1200px) {
    .p-scopp-newest__slider-wrap {
      margin-right: -103px;
    }
  }
  .p-scopp-newest__slider,
  .p-scopp-newest__slider .slick-track {
    gap: 17px;
  }
  .p-scopp-newest__slide {
    width: 320px;
  }
  .p-scopp-newest__slider-arws {
    margin-top: 30px;
  }
  .p-scopp-newest__btn {
    margin-top: 14px;
  }
}
@media (max-width: 767px) {
  .p-scopp-newest {
    padding-block: min(68px, 17.4358974359vw) min(70px, 17.9487179487vw);
    margin-top: min(43px, 11.0256410256vw);
  }
  .p-scopp-newest__ttl {
    column-gap: min(10px, 2.5641025641vw);
    font-size: min(16px, 4.1025641026vw);
  }
  .p-scopp-newest__ttl::before {
    width: min(19px, 4.8717948718vw);
  }
  .p-scopp-newest__slider-wrap {
    padding-left: min(33px, 8.4615384615vw);
    margin-top: min(23px, 5.8974358974vw);
  }
  .p-scopp-newest__slider,
  .p-scopp-newest__slider .slick-track {
    gap: min(17px, 4.358974359vw);
  }
  .p-scopp-newest__slide {
    width: min(320px, 82.0512820513vw);
  }
  .p-scopp-newest__slider-arws {
    margin-top: min(25px, 6.4102564103vw);
  }
  .p-scopp-newest__btn {
    margin-top: min(20px, 5.1282051282vw);
  }
}

/* .p-scopp-pillar
----------------------------------- */
.p-scopp-pillar__ttl {
  margin-block: var(--leading-trim);
  font-weight: 500;
  color: #009b77;
  text-align: center;
  letter-spacing: 0.1em;
}
.p-scopp-pillar__boxs {
  display: block grid;
}
.p-scopp-pillar__box {
  display: block;
}
.p-scopp-pillar__fig {
  aspect-ratio: 239/127;
  overflow: hidden;
}
.p-scopp-pillar__img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: scale 0.3s linear;
  will-change: transform;
}
.p-scopp-pillar__h {
  font-weight: 500;
  line-height: 1.25;
  color: #009b77;
}
[data-cate=highschool] .p-scopp-pillar__h {
  color: #3e86c1;
}
.p-scopp-pillar__txt {
  line-height: 1.5384615385;
}
.p-scopp-pillar__arw {
  display: block grid;
  place-content: center;
  aspect-ratio: 1/1;
  margin-inline: auto;
  border: 1px solid #009b77;
  border-radius: 50%;
  transition: background-color 0.2s linear;
}
.p-scopp-pillar__arw::before {
  display: block;
  aspect-ratio: 1/1;
  content: "";
  background: #009b77;
  mask: url("../img/common/arw.svg") no-repeat center center;
  mask-size: contain;
  transition: background-color 0.2s linear;
}
[data-cate=highschool] .p-scopp-pillar__arw {
  border-color: #3e86c1;
}
[data-cate=highschool] .p-scopp-pillar__arw::before {
  background: #3e86c1;
}
@media (any-hover: hover) {
  .p-scopp-pillar__box:hover .p-scopp-pillar__img {
    scale: 1.05;
  }
  .p-scopp-pillar__box:hover .p-scopp-pillar__arw {
    background: #009b77;
  }
  .p-scopp-pillar__box:hover .p-scopp-pillar__arw::before {
    background: #fff;
  }
}
@media (any-hover: hover) {
  .p-scopp-pillar__box[data-cate=highschool]:hover .p-scopp-pillar__arw {
    background: #3e86c1;
  }
}
@media (min-width: 768px) {
  .p-scopp-pillar {
    margin-top: 78px;
  }
  .p-scopp-pillar__ttl {
    font-size: 1.5625rem;
  }
  .p-scopp-pillar__boxs {
    grid-template-columns: repeat(2, 1fr);
    gap: 38px;
    margin-top: 39px;
  }
  .p-scopp-pillar__box {
    display: grid;
    grid-template-rows: subgrid;
    grid-row: 4 span;
    gap: 0;
  }
  .p-scopp-pillar__fig {
    border-radius: 10px;
  }
  .p-scopp-pillar__h {
    margin-top: 15px;
    font-size: 1.25rem;
  }
  .p-scopp-pillar__txt {
    margin-top: 15px;
  }
  .p-scopp-pillar__arw {
    width: 45px;
    margin-top: 10px;
  }
  .p-scopp-pillar__arw::before {
    width: 16px;
  }
}
@media (max-width: 767px) {
  .p-scopp-pillar {
    padding-inline: min(29px, 7.4358974359vw);
    margin-top: min(59px, 15.1282051282vw);
  }
  .p-scopp-pillar__ttl {
    font-size: min(24px, 6.1538461538vw);
  }
  .p-scopp-pillar__boxs {
    row-gap: min(30px, 7.6923076923vw);
    margin-top: min(30px, 7.6923076923vw);
  }
  .p-scopp-pillar__fig {
    border-radius: min(7px, 1.7769230769vw);
  }
  .p-scopp-pillar__h {
    margin-top: min(12px, 3.0769230769vw);
    font-size: min(20px, 5.1282051282vw);
  }
  .p-scopp-pillar__txt {
    margin-top: min(12px, 3.0769230769vw);
  }
  .p-scopp-pillar__arw {
    width: min(45px, 11.5384615385vw);
    margin-top: min(13px, 3.3333333333vw);
  }
  .p-scopp-pillar__arw::before {
    width: min(16px, 4.1025641026vw);
  }
}

/* .p-scopp-about
----------------------------------- */
.p-scopp-about__intro {
  font-weight: 500;
  color: #009b77;
  text-align: center;
}
.p-scopp-about__h, .p-scopp-about__sh {
  font-weight: 500;
  color: #009b77;
}
.p-scopp-about[data-cate=highschool] .p-lower-head {
  border-bottom-color: #3e86c1;
}
.p-scopp-about[data-cate=highschool] .p-lower-head__ttl {
  color: #3e86c1;
}
.p-scopp-about[data-cate=highschool] .p-scopp-about__intro, .p-scopp-about[data-cate=highschool] .p-scopp-about__h, .p-scopp-about[data-cate=highschool] .p-scopp-about__sh {
  color: #3e86c1;
}
.p-scopp-about[data-cate=highschool] .p-scopp-contact__ttl,
.p-scopp-about[data-cate=highschool] .p-scopp-newest__ttl {
  color: #3e86c1;
}
.p-scopp-about[data-cate=highschool] .c-btn a {
  color: #3e86c1;
  border-color: #3e86c1;
}
@media (any-hover: hover) {
  .p-scopp-about[data-cate=highschool] .c-btn a:hover {
    color: #fff;
    background: #3e86c1;
  }
}
.p-scopp-about[data-cate=highschool] .c-slider-arws__arw {
  border-color: #3e86c1;
}
.p-scopp-about[data-cate=highschool] .c-slider-arws__arw::before {
  background: #3e86c1;
}
@media (any-hover: hover) {
  .p-scopp-about[data-cate=highschool] .c-slider-arws__arw:hover {
    background: #3e86c1;
  }
  .p-scopp-about[data-cate=highschool] .c-slider-arws__arw:hover::before {
    background: #fff;
  }
}
@media (min-width: 768px) {
  .p-scopp-about .p-breadcrumbs--base {
    margin-top: -15px;
    transform: translateY(-15px);
  }
  .p-scopp-about__intro {
    margin-top: 30px;
    font-size: 1.125rem;
    line-height: 2.2222222222;
  }
  .p-scopp-about__h {
    font-size: 1.5625rem;
    line-height: 1.212;
  }
  .p-scopp-about__btn-list {
    margin-top: 17px;
  }
}
@media (max-width: 767px) {
  .p-scopp-about__intro {
    margin-top: min(27px, 6.9230769231vw);
    font-size: min(16px, 4.1025641026vw);
    line-height: 1.875;
  }
  .p-scopp-about__h {
    font-size: min(24px, 6.1538461538vw);
    line-height: 1.0416666667;
    text-align: center;
  }
  .p-scopp-about__btn-list {
    margin-top: min(10px, 2.5641025641vw);
  }
}

/* .p-scopp-about-flow
----------------------------------- */
.p-scopp-about-flow__slider,
.p-scopp-about-flow__slider .slick-track {
  display: block flex;
}
.p-scopp-about-flow__slider .slick-slide {
  float: none;
  height: auto;
}
.p-scopp-about-flow__slide {
  position: relative;
  border: 1px solid #009b77;
}
[data-cate=highschool] .p-scopp-about-flow__slide {
  border-color: #3e86c1;
}
.p-scopp-about-flow__slide:not(:last-child)::before {
  position: absolute;
  inset-block: 0;
  left: 100%;
  display: block;
  aspect-ratio: 19/37;
  margin-block: auto;
  content: "";
  background: #009b77;
  mask: url("../img/scopp/about-region/flow_arw.svg") no-repeat right center;
  mask-size: auto 100%;
}
[data-cate=highschool] .p-scopp-about-flow__slide:not(:last-child)::before {
  background: #3e86c1;
}
.p-scopp-about-flow__sh {
  font-weight: 500;
  line-height: 1.7777777778;
  color: #009b77;
}
[data-cate=highschool] .p-scopp-about-flow__sh {
  color: #3e86c1;
}
@media (min-width: 768px) {
  .p-scopp-about-flow {
    margin-top: 41px;
  }
  .p-scopp-about-flow__slider-wrap {
    margin-top: 25px;
  }
  .p-scopp-about-flow__slider {
    display: block grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    column-gap: 25px;
  }
  .p-scopp-about-flow__slide {
    padding: 14px 22px 19px;
    border-radius: 5px;
  }
  .p-scopp-about-flow__slide:not(:last-child)::before {
    width: 19px;
  }
  .p-scopp-about-flow__sh {
    font-size: 1.125rem;
  }
  .p-scopp-about-flow__txt {
    margin-top: 5px;
  }
  .p-scopp-about-flow + .p-scopp-contact {
    margin-top: 86px;
  }
}
@media (max-width: 767px) {
  .p-scopp-about-flow {
    margin-top: min(56px, 14.358974359vw);
  }
  .p-scopp-about-flow__slider-wrap {
    padding-left: min(27px, 6.9230769231vw);
    margin-top: min(21px, 5.3846153846vw);
  }
  .p-scopp-about-flow__slider,
  .p-scopp-about-flow__slider .slick-track {
    column-gap: min(25px, 6.4102564103vw);
  }
  .p-scopp-about-flow__slider::after,
  .p-scopp-about-flow__slider .slick-track::after {
    display: block;
    width: min(27px, 6.9230769231vw);
  }
  .p-scopp-about-flow__slide {
    width: min(230px, 58.9743589744vw);
    padding: min(14px, 3.5897435897vw) min(22px, 5.641025641vw) min(19px, 4.8717948718vw);
    border-radius: min(5px, 1.2820512821vw);
  }
  .p-scopp-about-flow__slide:not(:last-child)::before {
    width: min(19px, 4.8717948718vw);
  }
  .p-scopp-about-flow__sh {
    font-size: min(18px, 4.6153846154vw);
  }
  .p-scopp-about-flow__txt {
    margin-top: min(5px, 1.2820512821vw);
  }
  .p-scopp-about-flow__slider-arws {
    margin-top: min(32px, 8.2051282051vw);
  }
}

/* .p-about-region-ability
----------------------------------- */
.p-about-region-ability__slider,
.p-about-region-ability__slider .slick-track {
  display: block flex;
}
.p-about-region-ability__slider .slick-slide {
  float: none;
  height: auto;
}
.p-about-region-ability__img {
  display: block;
  width: 100%;
}
.p-about-region-ability__sh {
  font-weight: 500;
}
@media (min-width: 768px) {
  .p-about-region-ability {
    margin-top: 55px;
  }
  .p-about-region-ability__slider-wrap {
    margin-top: 28px;
  }
  .p-about-region-ability__slider {
    display: block grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 25px;
    padding-right: 5px;
  }
  .p-about-region-ability__img {
    border-radius: 5px;
  }
  .p-about-region-ability__sh {
    margin-top: 10px;
    font-size: 1.125rem;
    line-height: 1.7777777778;
  }
  .p-about-region-ability__txt {
    margin-top: 5px;
    font-size: 1rem;
    line-height: 1.5625;
  }
}
@media (max-width: 767px) {
  .p-about-region-ability {
    margin-top: min(56px, 14.358974359vw);
    overflow: hidden;
  }
  .p-about-region-ability__slider-wrap {
    padding-left: min(29px, 7.4358974359vw);
    margin-top: min(23px, 5.8974358974vw);
  }
  .p-about-region-ability__slider,
  .p-about-region-ability__slider .slick-track {
    gap: min(25px, 6.4102564103vw);
  }
  .p-about-region-ability__slide {
    width: min(230px, 58.9743589744vw);
    min-width: min(230px, 58.9743589744vw);
  }
  .p-about-region-ability__img {
    border-radius: min(5px, 1.2820512821vw);
  }
  .p-about-region-ability__sh {
    margin-top: min(10px, 2.5641025641vw);
    font-size: min(16px, 4.1025641026vw);
    line-height: 1.5625;
  }
  .p-about-region-ability__txt {
    margin-top: min(5px, 1.2820512821vw);
    font-size: min(14px, 3.5897435897vw);
    line-height: 1.4285714286;
  }
  .p-about-region-ability__slider-arws {
    margin-top: min(25px, 6.4102564103vw);
  }
}

/* .p-about-region-carousel
----------------------------------- */
.p-about-region-carousel {
  overflow: hidden;
}
.p-about-region-carousel__wrap {
  display: block flex;
  width: max-content;
  animation: carousel 30s linear infinite;
  will-change: animation;
}
.p-about-region-carousel__img img {
  display: block;
  width: 100%;
}
@media (min-width: 768px) {
  .p-about-region-carousel__img {
    width: 1400px;
  }
}
@media (max-width: 767px) {
  .p-about-region-carousel {
    margin-top: min(27px, 6.9230769231vw);
  }
  .p-about-region-carousel__img {
    width: min(960px, 246.0307692308vw);
  }
}

/* .p-scopp-program
----------------------------------- */
@media (min-width: 768px) {
  .p-scopp-program {
    margin-top: 101px;
  }
  .p-scopp-program__lede {
    margin-top: 20px;
  }
  .p-scopp-program__sec {
    margin-top: 52px;
  }
  .p-scopp-program__sec + .p-scopp-program__sec {
    margin-top: 40px;
  }
  .p-scopp-program__txt {
    margin-top: 5px;
  }
}
@media (max-width: 767px) {
  .p-scopp-program {
    padding-inline: min(29px, 7.4358974359vw);
    margin-top: min(54px, 13.8461538462vw);
  }
  .p-scopp-program__lede {
    margin-top: min(30px, 7.6923076923vw);
  }
  .p-scopp-program__sec {
    margin-top: min(42px, 10.7692307692vw);
  }
  .p-scopp-program__sec + .p-scopp-program__sec {
    margin-top: min(21px, 5.3846153846vw);
  }
  .p-scopp-program__txt {
    margin-top: min(5px, 1.2820512821vw);
  }
}

/* .p-scopp-program-others
----------------------------------- */
.p-scopp-program-others {
  display: block grid;
}
.p-scopp-program-others__img {
  display: block;
  width: 100%;
}
@media (min-width: 768px) {
  .p-scopp-program-others {
    grid-template-columns: repeat(3, 1fr);
    gap: 30px 46px;
    margin-top: 48px;
  }
  .p-scopp-program-others__img {
    border-radius: 5px;
  }
  .p-scopp-program-others .p-scopp-about__sh {
    margin-top: 10px;
  }
  .p-scopp-program-others__txt, .p-scopp-program-others__btn {
    margin-top: 5px;
  }
}
@media (max-width: 767px) {
  .p-scopp-program-others {
    row-gap: min(50px, 12.8205128205vw);
    margin-top: min(29px, 7.3948717949vw);
  }
  .p-scopp-program-others__img {
    border-radius: min(6px, 1.4102564103vw);
  }
  .p-scopp-program-others .p-scopp-about__sh {
    margin-top: min(10px, 2.5641025641vw);
  }
  .p-scopp-program-others__txt {
    margin-top: min(5px, 1.2820512821vw);
  }
  .p-scopp-program-others__btn {
    margin-top: min(20px, 5.1282051282vw);
  }
  .p-scopp-program-others__btn a {
    margin-inline: auto;
  }
}

/* .p-about-region-result
----------------------------------- */
.p-about-region-result__boxs {
  display: block grid;
}
.p-about-region-result__img {
  display: block;
  width: 100%;
}
.p-about-region-result__sh {
  font-weight: 500;
  color: #009b77;
}
@media (min-width: 768px) {
  .p-about-region-result {
    margin-top: 50px;
  }
  .p-about-region-result__boxs {
    grid-template-columns: repeat(3, 1fr);
    gap: 47px;
    margin-top: 28px;
  }
  .p-about-region-result__img {
    border-radius: 5px;
  }
  .p-about-region-result__sh {
    margin-top: 10px;
  }
  .p-about-region-result__txt {
    margin-top: 5px;
  }
}
@media (max-width: 767px) {
  .p-about-region-result {
    padding-inline: min(29px, 7.4358974359vw);
    margin-top: min(65px, 16.6666666667vw);
  }
  .p-about-region-result__boxs {
    row-gap: min(25px, 6.4102564103vw);
    margin-top: min(30px, 7.6923076923vw);
  }
  .p-about-region-result__img {
    border-radius: min(5px, 1.3794871795vw);
  }
  .p-about-region-result__sh {
    margin-top: min(15px, 3.8461538462vw);
    letter-spacing: 0.1em;
  }
  .p-about-region-result__txt {
    margin-top: min(5px, 1.2820512821vw);
  }
}

/* .p-scopp-visiting-class
----------------------------------- */
.p-scopp-visiting-class {
  display: block grid;
}
.p-scopp-visiting-class__img {
  display: block;
  width: 100%;
}
.p-scopp-visiting-class__notice {
  display: block;
  margin-top: 0.3076923077em;
  color: #3e86c1;
  text-align: center;
}
.p-scopp-visiting-class__table {
  width: 100%;
}
.p-scopp-visiting-class__table th,
.p-scopp-visiting-class__table td {
  border: 1px solid #3e86c1;
}
.p-scopp-visiting-class__table th a,
.p-scopp-visiting-class__table td a {
  text-decoration: underline;
}
@media (any-hover: hover) {
  .p-scopp-visiting-class__table th a:hover,
  .p-scopp-visiting-class__table td a:hover {
    text-decoration: none;
  }
}
.p-scopp-visiting-class__table th {
  font-weight: 500;
  vertical-align: middle;
  color: #3e86c1;
  text-align: center;
  background: #f5f5f5;
}
.p-scopp-visiting-class__contact-btn a {
  margin-inline: auto;
}
@media (min-width: 768px) {
  .p-scopp-visiting-class {
    grid-template-columns: 302px 1fr;
    column-gap: 47px;
    margin-top: 44px;
  }
  .p-scopp-visiting-class__img {
    border-radius: 5px;
  }
  .p-scopp-visiting-class .p-scopp-about__sh {
    margin-top: 10px;
  }
  .p-scopp-visiting-class__txt {
    margin-top: 5px;
  }
  .p-scopp-visiting-class__btn {
    margin-top: 16px;
  }
  .p-scopp-visiting-class__btn + .p-scopp-visiting-class__btn {
    margin-top: 9px;
  }
  .p-scopp-visiting-class__btn a {
    padding-inline: 16px 52px;
    font-size: 0.8125rem;
  }
  .p-scopp-visiting-class__table th,
  .p-scopp-visiting-class__table td {
    font-size: 0.8125rem;
    line-height: 1.5384615385;
  }
  .p-scopp-visiting-class__table th {
    padding: 12px;
  }
  .p-scopp-visiting-class__table th:first-child {
    width: 124px;
  }
  .p-scopp-visiting-class__table td {
    padding: 12px 24px 12px 34px;
  }
  .p-scopp-visiting-class__contact-btn {
    margin-top: 9px;
  }
}
@media (max-width: 767px) {
  .p-scopp-visiting-class {
    row-gap: min(34px, 8.8384615385vw);
    margin-top: min(20px, 5.1282051282vw);
  }
  .p-scopp-visiting-class__img {
    border-radius: min(6px, 1.4102564103vw);
  }
  .p-scopp-visiting-class .p-scopp-about__sh {
    margin-top: min(10px, 2.5641025641vw);
  }
  .p-scopp-visiting-class__txt {
    margin-top: min(5px, 1.2820512821vw);
  }
  .p-scopp-visiting-class__btn {
    margin-top: min(20px, 5.1282051282vw);
  }
  .p-scopp-visiting-class__btn + .p-scopp-visiting-class__btn {
    margin-top: min(9px, 2.3076923077vw);
  }
  .p-scopp-visiting-class__btn a {
    padding-inline: min(16px, 4.1025641026vw) min(52px, 13.3333333333vw);
    margin-inline: auto;
    font-size: min(13px, 3.3333333333vw);
  }
  .p-scopp-visiting-class__table th,
  .p-scopp-visiting-class__table td {
    font-size: min(13px, 3.3333333333vw);
  }
  .p-scopp-visiting-class__table th {
    padding: min(16px, 4.1025641026vw) min(5px, 1.2820512821vw);
    line-height: 1.5384615385;
  }
  .p-scopp-visiting-class__table th:first-child {
    width: min(80px, 20.5128205128vw);
  }
  .p-scopp-visiting-class__table td {
    padding: min(12px, 3.0769230769vw) min(12px, 3.0769230769vw) min(12px, 3.0769230769vw) min(20px, 5.1282051282vw);
    line-height: 1.1538461538;
  }
  .p-scopp-visiting-class__contact-btn {
    margin-top: min(20px, 5.1282051282vw);
  }
}

/* .p-scopp-document
----------------------------------- */
.p-scopp-document__h {
  font-weight: 700;
  color: #009b77;
}
@media (min-width: 768px) {
  .p-scopp-document .p-breadcrumbs--base {
    margin-top: -15px;
    transform: translateY(-15px);
  }
  .p-scopp-document__cont {
    padding: 110px 30px 90px;
  }
  .p-scopp-document__sec + .p-scopp-document__sec {
    margin-top: 71px;
  }
  .p-scopp-document__h {
    font-size: 1.5625rem;
    line-height: 1.212;
  }
  .p-scopp-document__txt {
    margin-top: 20px;
  }
  .p-scopp-document__list {
    margin-top: 30px;
  }
}
@media (max-width: 767px) {
  .p-scopp-document__cont {
    padding: min(75px, 19.2307692308vw) min(29px, 7.4358974359vw) min(62px, 15.9256410256vw);
  }
  .p-scopp-document__sec + .p-scopp-document__sec {
    margin-top: min(34px, 8.7692307692vw);
  }
  .p-scopp-document__h {
    font-size: min(24px, 6.1538461538vw);
    line-height: 1.0416666667;
    text-align: center;
  }
  .p-scopp-document__txt {
    margin-top: min(15px, 3.8461538462vw);
  }
  .p-scopp-document__list {
    margin-top: min(30px, 7.6923076923vw);
  }
}

/* .p-attempt
----------------------------------- */
.p-attempt__bg > :first-child {
  margin-top: 0;
}
.p-attempt__bg > :last-child {
  margin-bottom: 0;
}
.p-attempt__archive {
  display: block grid;
}
.p-attempt__article .p-news-single__tag {
  width: fit-content;
  padding-inline: 2.1666666667em;
  color: #fff;
}
.p-attempt__article[data-cate=region] .p-news-single__title, .p-attempt__article[data-cate=region] .p-news-single__date {
  color: #009b77;
}
.p-attempt__article[data-cate=region] .p-news-single__tag {
  background: #009b77;
}
.p-attempt__article[data-cate=highschool] .p-news-single__title, .p-attempt__article[data-cate=highschool] .p-news-single__date {
  color: #3e86c1;
}
.p-attempt__article[data-cate=highschool] .p-news-single__tag {
  background: #3e86c1;
}
@media (min-width: 768px) {
  .p-attempt .p-breadcrumbs--base {
    margin-top: -15px;
    transform: translateY(-15px);
  }
  .p-attempt__bg {
    padding: 52px 30px 142px;
  }
  .p-attempt__archive {
    grid-template-columns: repeat(2, 1fr);
    gap: 30px 45px;
  }
  .p-attempt__pagination {
    margin-top: 65px;
  }
  :has(.p-attempt__archive) .p-attempt__sidebar {
    padding-top: 41px;
  }
  .p-attempt__article .p-news-single__tag {
    font-size: 0.75rem;
  }
}
@media (max-width: 767px) {
  .p-attempt__bg {
    padding-top: min(30px, 7.6923076923vw);
  }
  .p-attempt__archive {
    row-gap: min(30px, 7.6923076923vw);
  }
}

/* .p-attempt-card
----------------------------------- */
.p-attempt-card {
  display: block;
}
.p-attempt-card__fig {
  aspect-ratio: 320/187;
  overflow: hidden;
}
.p-attempt-card__img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: scale 0.3s linear;
  will-change: transform;
}
@media (any-hover: hover) {
  .p-attempt-card:hover .p-attempt-card__img {
    scale: 1.05;
  }
}
.p-attempt-card__info {
  display: block flex;
  align-items: center;
}
.p-attempt-card__cate {
  display: block;
  width: fit-content;
  padding-inline: 0.5em;
  line-height: 2.1666666667;
  color: #fff;
  text-align: center;
  background: #009b77;
}
[data-cate=highschool] .p-attempt-card__cate {
  background: #3e86c1;
}
.p-attempt-card__date {
  display: block;
  font-family: "Commissioner", "Noto Sans JP", sans-serif;
  line-height: 1.7857142857;
}
.p-attempt-card__ttl {
  display: block;
  font-weight: 500;
  color: #009b77;
}
[data-cate=highschool] .p-attempt-card__ttl {
  color: #3e86c1;
}
.p-attempt-card__txt {
  line-height: 1.5384615385;
}
@media (min-width: 768px) {
  .p-attempt-card__fig {
    margin-bottom: 20px;
    border-radius: 5px;
  }
  .p-attempt-card__info {
    column-gap: 18px;
  }
  .p-attempt-card__cate {
    min-width: 100px;
    font-size: 0.75rem;
    border-radius: 5px;
  }
  .p-attempt-card__date {
    font-size: 0.875rem;
  }
  .p-attempt-card__ttl {
    margin-top: 5px;
  }
  .p-attempt-card__txt {
    margin-top: 5px;
  }
}
@media (max-width: 767px) {
  .p-attempt-card__fig {
    margin-bottom: min(20px, 5.1282051282vw);
    border-radius: min(5px, 1.2820512821vw);
  }
  .p-attempt-card__info {
    column-gap: min(14px, 3.5897435897vw);
  }
  .p-attempt-card__cate {
    min-width: min(100px, 25.641025641vw);
    font-size: min(12px, 3.0769230769vw);
    border-radius: min(5px, 1.2820512821vw);
  }
  .p-attempt-card__date {
    font-size: min(14px, 3.5897435897vw);
  }
  .p-attempt-card__ttl {
    margin-top: min(5px, 1.2820512821vw);
  }
  .p-attempt-card__txt {
    margin-top: min(5px, 1.2820512821vw);
  }
}

/* .p-about
----------------------------------- */
.p-about__ttl {
  font-weight: 500;
  text-align: center;
}
.p-about__ttl--wt {
  color: #fff;
}
.p-about__ttl-color {
  font-weight: 700;
}
.p-about__ttl-color--grn {
  color: #009b77;
}
.p-about__ttl-color--yel {
  color: #ffec65;
}
@media (min-width: 768px) {
  .p-about__ttl {
    font-size: 1.5625rem;
    line-height: 1.2;
  }
  .p-about__ttl-color {
    font-size: 2.1875rem;
  }
  .p-about__inner {
    width: 1027px;
    margin-inline: auto;
    padding: 0 20px;
  }
}
@media (max-width: 767px) {
  .p-about__ttl {
    font-size: min(20px, 5.1282051282vw);
    line-height: 2;
  }
  .p-about__ttl span {
    display: inline-block;
  }
  .p-about__ttl-color {
    font-size: min(30px, 7.6923076923vw);
    display: inline-block;
    margin-top: min(-20px, -5.1282051282vw);
  }
  .p-about__inner {
    padding: 0 min(20px, 5.1282051282vw);
  }
}

/* .p-about-kv
----------------------------------- */
.p-about-kv {
  width: 100%;
  overflow-x: clip;
  position: relative;
}
.p-about-kv__wrap {
  margin-inline: auto;
  position: relative;
}
.p-about-kv__slide, .p-about-kv__img, .p-about-kv__pic {
  display: block;
  width: 100%;
}
.p-about-kv__slide img, .p-about-kv__img img, .p-about-kv__pic img {
  width: 100%;
}
.p-about-kv__slider {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
}
.p-about-kv__slide-img, .p-about-kv__slide-pic {
  width: 100%;
}
.p-about-kv__slide-img img, .p-about-kv__slide-pic img {
  width: 100%;
}
.p-about-kv__btn-wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.p-about-kv__btn--line::before {
  aspect-ratio: 15/12 !important;
  mask-image: url("../img/common/arw.svg") !important;
}
.p-about-kv__btn-obj {
  flex-shrink: 0;
}
.p-about-kv__btn-obj--pamphlet {
  font-weight: 700;
  line-height: 1.0666666667;
}
.p-about-kv__btn-txt {
  font-weight: 700;
  line-height: 2;
}
.p-about-kv__marquee {
  background-color: #fff;
}
.p-about-kv__marquee-wrap, .p-about-kv__marquee-group {
  display: block flex;
  align-items: center;
}
.p-about-kv__marquee-wrap {
  width: max-content;
  animation: carousel 30s linear infinite;
  will-change: animation;
}
.p-about-kv__marquee-group {
  width: max-content;
}
.p-about-kv__marquee-item {
  color: #009b77;
  font-weight: 400;
}
@media (min-width: 768px) {
  .p-about-kv {
    height: 563px;
    margin-top: -132px;
  }
  .p-about-kv__wrap {
    max-width: 1092px;
    height: 491px;
  }
  .p-about-kv__img {
    max-width: 1092px;
    position: absolute;
    top: 0;
    left: 50.6%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
  }
  .p-about-kv__slider {
    width: 618px;
    top: 0;
  }
  .p-about-kv__btn-wrap {
    margin-inline: auto;
    max-width: 961px;
    padding-top: 365px;
  }
  .p-about-kv__btn {
    width: 346px;
    height: 50px;
    gap: 6px;
  }
  .p-about-kv__btn::before {
    right: 25px;
  }
  .p-about-kv__btn--pamphlet {
    padding-right: 30px;
  }
  .p-about-kv__btn--line {
    padding-right: 36px;
  }
  .p-about-kv__btn--line::before {
    width: 15px !important;
  }
  .p-about-kv__btn--line .bg,
  .p-about-kv__btn--line .txt {
    transition: fill 0.2s linear;
  }
}
@media (min-width: 768px) and (any-hover: hover) {
  .p-about-kv__btn--line:hover .bg {
    fill: #00b833;
  }
  .p-about-kv__btn--line:hover .txt {
    fill: #fff;
  }
}
@media (min-width: 768px) {
  .p-about-kv__btn-obj--pamphlet {
    font-size: 1.875rem;
  }
  .p-about-kv__btn-obj--line svg {
    width: 33px;
    height: 31.4px;
  }
  .p-about-kv__btn-txt {
    font-size: 1rem;
  }
  .p-about-kv__marquee {
    position: absolute;
    bottom: -1px;
    left: 0;
  }
  .p-about-kv__marquee-wrap {
    padding: 11px 0 9px;
    border-top: solid 2px #009b77;
    border-bottom: solid 2px #009b77;
  }
  .p-about-kv__marquee-item {
    font-size: 1.875rem;
    line-height: 1.6666666667;
    padding: 0 20px;
  }
}
@media (max-width: 767px) {
  .p-about-kv {
    margin-top: min(52px, 13.3333333333vw);
    padding-bottom: min(5px, 1.2820512821vw);
  }
  .p-about-kv__slider {
    width: 100%;
    bottom: 0;
  }
  .p-about-kv__btn-wrap {
    flex-direction: column;
    gap: min(8px, 2.0512820513vw);
    margin-top: min(29px, 7.4358974359vw);
  }
  .p-about-kv__btn {
    width: min(346px, 88.7179487179vw);
    height: min(50px, 12.8205128205vw);
    gap: min(4px, 1.0256410256vw);
  }
  .p-about-kv__btn::before {
    right: min(25px, 6.4102564103vw);
  }
  .p-about-kv__btn--pamphlet {
    padding-right: min(24px, 6.1538461538vw);
  }
  .p-about-kv__btn--line {
    padding-right: min(31px, 7.9487179487vw);
  }
  .p-about-kv__btn--line::before {
    width: min(15px, 3.8461538462vw) !important;
  }
  .p-about-kv__btn-obj--pamphlet {
    font-size: min(30px, 7.6923076923vw);
  }
  .p-about-kv__btn-obj--line svg {
    width: min(33px, 8.4615384615vw);
    height: min(31px, 8.0512820513vw);
  }
  .p-about-kv__btn-txt {
    font-size: min(16px, 4.1025641026vw);
  }
  .p-about-kv__marquee-wrap {
    padding: min(7px, 1.7948717949vw) 0;
    border-top: solid 1px #009b77;
    border-bottom: solid 1px #009b77;
  }
  .p-about-kv__marquee-item {
    font-size: min(20px, 5.1282051282vw);
    line-height: 1.7;
    padding: 0 min(13px, 3.3333333333vw);
  }
}

/* .p-about-reasons
----------------------------------- */
.p-about-reasons__slider {
  display: block flex;
  justify-content: center;
}
.p-about-reasons__img {
  width: 100%;
  overflow: hidden;
}
.p-about-reasons__img img {
  width: 100%;
}
@media (min-width: 768px) {
  .p-about-reasons {
    margin-top: 48px;
  }
  .p-about-reasons__cont {
    margin-top: 36px;
    position: relative;
  }
  .p-about-reasons__slide {
    width: 442px;
    padding-right: 20px;
  }
  .p-about-reasons__img {
    border-radius: 20px;
  }
  .p-about-reasons__slider-arws {
    width: 100%;
    margin-top: 20px;
    justify-content: center;
    pointer-events: none;
  }
  .p-about-reasons__slider-arws .slick-arrow {
    pointer-events: all;
  }
}
@media (max-width: 767px) {
  .p-about-reasons {
    margin-top: min(54px, 13.8461538462vw);
    padding: 0 min(20px, 5.1282051282vw);
    overflow: hidden;
  }
  .p-about-reasons__cont {
    margin-top: min(15px, 3.8461538462vw);
  }
  .p-about-reasons__slider {
    margin-right: min(-20px, -5.1282051282vw);
  }
  .p-about-reasons__slide {
    width: min(325px, 83.3333333333vw);
    padding-right: min(14px, 3.5897435897vw);
  }
  .p-about-reasons__img {
    border-radius: min(14px, 3.5897435897vw);
  }
  .p-about-reasons__slider-arws {
    margin-top: min(29px, 7.4358974359vw);
  }
}

/* .p-about-data
----------------------------------- */
.p-about-data {
  background-color: #f5f5f5;
}
.p-about-data__list {
  display: grid;
}
.p-about-data__item {
  background-color: #fff;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-direction: column;
}
.p-about-data__item-head {
  font-weight: 500;
  display: block;
  width: 100%;
  text-align: center;
  border-bottom: solid 1px #000;
}
.p-about-data__data-wrap {
  display: flex;
  align-items: flex-end;
  justify-content: center;
}
.p-about-data__data-wrap--start {
  justify-content: flex-start;
}
.p-about-data__data-wrap--nowrap {
  white-space: nowrap;
}
.p-about-data__data-num {
  font-family: "Commissioner", "Noto Sans JP", sans-serif;
  color: #009b77;
  font-weight: 700;
}
.p-about-data__data-field {
  font-weight: 500;
}
.p-about-data__data-txt {
  font-weight: 500;
}
.p-about-data__data-txt-wrap {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
}
@media (min-width: 768px) {
  .p-about-data {
    margin-top: 62px;
    padding: 78px 0;
  }
  .p-about-data__list {
    margin-top: 48px;
    grid-template-columns: repeat(4, 1fr);
    gap: 13px 9px;
  }
  .p-about-data__item {
    height: 223px;
    padding: 21px 16px 0;
    border-radius: 5px;
  }
  .p-about-data__item-head {
    font-size: 1.0625rem;
    font-weight: 500;
    line-height: 1.1764705882;
    padding-bottom: 9px;
  }
  .p-about-data__data {
    margin-top: 22px;
  }
  .p-about-data__data-wrap {
    gap: 6px;
  }
  .p-about-data__data-wrap + .p-about-data__data-wrap {
    margin-top: -12px;
  }
  .p-about-data__data-wrap--nowrap {
    margin-top: -8px !important;
    gap: 6px;
  }
  .p-about-data__data-wrap-box {
    display: flex;
    align-items: flex-end;
    gap: 4px;
  }
  .p-about-data__data-num {
    font-size: 3.4375rem;
  }
  .p-about-data__data-num--xs {
    font-size: 1.25rem;
  }
  .p-about-data__data-num--s {
    font-size: 1.5625rem;
    margin-left: -10px;
  }
  .p-about-data__data-num--m {
    font-size: 2.8125rem;
  }
  .p-about-data__data-field {
    font-size: 1.25rem;
    line-height: 1.85;
  }
  .p-about-data__data-field--s {
    font-size: 1rem;
  }
  .p-about-data__data-txt {
    font-size: 0.8125rem;
    line-height: 1.5384615385;
    margin-top: 21px;
  }
  .p-about-data__data-txt-wrap {
    gap: 9px;
  }
  .p-about-data__data-txt-wrap + .p-about-data__data-txt-wrap {
    margin-top: 1px;
  }
  .p-about-data__data-txt-label {
    font-size: 10px;
    padding-top: 2px;
  }
}
@media (max-width: 767px) {
  .p-about-data {
    margin-top: min(24px, 6.1538461538vw);
    padding: min(48px, 12.3076923077vw) 0 min(53px, 13.5897435897vw);
  }
  .p-about-data__list {
    margin-top: min(16px, 4.1025641026vw);
    grid-template-columns: repeat(2, 1fr);
    gap: min(9px, 2.3076923077vw) min(10px, 2.5641025641vw);
  }
  .p-about-data__item {
    padding: min(15px, 3.8461538462vw) min(16px, 4.1025641026vw) min(12px, 3.0769230769vw);
    border-radius: min(4px, 1.0256410256vw);
  }
  .p-about-data__item-head {
    font-size: min(12px, 3.0769230769vw);
    line-height: 1.1764705882;
    padding-bottom: min(7px, 1.7948717949vw);
  }
  .p-about-data__data {
    margin-top: min(14px, 3.5897435897vw);
  }
  .p-about-data__data-wrap {
    gap: min(6px, 1.5384615385vw);
  }
  .p-about-data__data-wrap + .p-about-data__data-wrap {
    margin-top: min(-8px, -2.0512820513vw);
  }
  .p-about-data__data-wrap--nowrap {
    margin-top: min(2px, 0.5128205128vw) !important;
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    flex-direction: column;
    gap: 0;
  }
  .p-about-data__data-wrap-box {
    display: flex;
    align-items: flex-end;
    gap: min(6px, 1.5384615385vw);
  }
  .p-about-data__data-num {
    font-size: min(40px, 10.2564102564vw);
  }
  .p-about-data__data-num--xs {
    font-size: min(14px, 3.5897435897vw);
  }
  .p-about-data__data-num--s {
    font-size: min(18px, 4.6153846154vw);
    margin-left: min(-6px, -1.5384615385vw);
  }
  .p-about-data__data-field {
    font-size: min(14px, 3.5897435897vw);
    line-height: 1.9285714286;
  }
  .p-about-data__data-field--s {
    font-size: min(14px, 3.5897435897vw);
  }
  .p-about-data__data-txt {
    font-size: min(12px, 3.0769230769vw);
    line-height: 1.3333333333;
    margin-top: min(16px, 4.1025641026vw);
  }
  .p-about-data__data-txt-wrap {
    gap: min(6px, 1.5384615385vw);
  }
  .p-about-data__data-txt-wrap + .p-about-data__data-txt-wrap {
    margin-top: min(9px, 2.3076923077vw);
  }
  .p-about-data__data-txt-label {
    font-size: min(10px, 2.5641025641vw);
    padding-top: min(2px, 0.5128205128vw);
    flex-shrink: 0;
  }
}

/* .p-about-curriculum
----------------------------------- */
.p-about-curriculum {
  background-color: #009b77;
}
.p-about-curriculum__blk-ttl {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}
.p-about-curriculum__blk-ttl-head {
  color: #fff;
  font-weight: 500;
  line-height: 1.1111111111;
}
.p-about-curriculum__blk-ttl-main {
  color: #ffec65;
  font-weight: 700;
  text-align: center;
}
.p-about-curriculum__link {
  position: relative;
}
.p-about-curriculum__link > span {
  background-color: #009b77;
  border: 1px solid #fff;
  border-radius: 50%;
  position: absolute;
  transition: color 0.2s linear, background-color 0.2s linear, border-color 0.2s linear;
}
.p-about-curriculum__link > span::before {
  position: absolute;
  inset: 0;
  display: block;
  width: 35.4838709677%;
  aspect-ratio: 1/1;
  margin: auto;
  content: "";
  background: #fff;
  mask: url(../img/common/arw.svg) no-repeat center center;
  mask-size: contain;
}
@media (any-hover: hover) {
  .p-about-curriculum__link:hover > span {
    background-color: #fff;
    border-color: #009b77;
    color: #009b77;
  }
  .p-about-curriculum__link:hover > span::before {
    background: #009b77;
  }
}
.p-about-curriculum__slide-head {
  color: #fff;
  font-weight: 700;
  line-height: 1.3888888889;
  text-align: center;
}
.p-about-curriculum__slide-head--grn {
  background-color: #45b035;
}
.p-about-curriculum__slide-head--rd {
  background-color: #F08300;
}
.p-about-curriculum__slide-head--yel {
  background-color: #F8B500;
}
.p-about-curriculum__slide-img {
  width: 100%;
}
.p-about-curriculum__slide-img img {
  width: 100%;
}
.p-about-curriculum__slide-txtblk {
  background-color: #fff;
}
.p-about-curriculum__slide-ttl {
  font-weight: 700;
}
.p-about-curriculum__slide-ttl--grn {
  color: #45b035;
}
.p-about-curriculum__slide-ttl--rd {
  color: #F08300;
}
.p-about-curriculum__slide-ttl--yel {
  color: #F8B500;
}
.p-about-curriculum__slide-txt {
  font-weight: 500;
  line-height: 1.5384615385;
}
.p-about-curriculum__carrier-ttl {
  color: #fff;
  font-weight: 700;
  text-align: center;
}
.p-about-curriculum__carrier-ttl-sub {
  display: inline-block;
}
.p-about-curriculum__carrier-wrap {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}
.p-about-curriculum__carrier-img img {
  width: 100%;
}
.p-about-curriculum__carrier-item-ttl {
  color: #fff;
  font-weight: 700;
  line-height: 1.25;
}
.p-about-curriculum__carrier-department {
  color: #fff;
  font-weight: 500;
  line-height: 1.25;
  display: inline-block;
}
.p-about-curriculum__carrier-txt {
  color: #fff;
  font-weight: 500;
  line-height: 1.5384615385;
}
.p-about-curriculum__carrier-slide {
  position: relative;
}
.p-about-curriculum__carrier-slide-period {
  color: #009b77;
  font-weight: 700;
  line-height: 1.1538461538;
  background-color: #ffec65;
  border-radius: 100vmax;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  left: 0;
  z-index: 1;
}
.p-about-curriculum__carrier-slide-img {
  overflow: hidden;
}
.p-about-curriculum__carrier-slide-img img {
  width: 100%;
}
.p-about-curriculum__carrier-slide-ttl {
  color: #fff;
  font-weight: 700;
  line-height: 1.4705882353;
}
.p-about-curriculum__carrier-slide-txt {
  color: #fff;
  font-weight: 500;
  line-height: 1.5384615385;
}
@media (any-hover: hover) {
  .p-about-curriculum__carrier-btn-link:hover {
    border-color: #fff;
  }
}
.p-about-curriculum__carrier-btn-link--bdr {
  border-color: #fff;
}
.p-about-curriculum__learning-slide-img {
  width: 100%;
  overflow: hidden;
}
.p-about-curriculum__learning-slide-img img {
  width: 100%;
}
.p-about-curriculum__learning-slide-subttl {
  color: #fff;
  font-weight: 700;
  line-height: 1.5625;
  white-space: nowrap;
  display: block;
}
.p-about-curriculum__learning-slide-ttl {
  color: #ffec65;
  font-weight: 700;
  line-height: 1.25;
}
.p-about-curriculum__learning-slide-txt {
  color: #fff;
  font-weight: 500;
  line-height: 1.5384615385;
}
@media (any-hover: hover) {
  .p-about-curriculum__learning-btn-link:hover {
    border-color: #fff;
  }
}
@media (min-width: 768px) {
  .p-about-curriculum {
    padding: 104px 0 112px;
  }
  .p-about-curriculum__blk--01 {
    margin-top: 64px;
  }
  .p-about-curriculum__blk--02 {
    margin-top: 86px;
  }
  .p-about-curriculum__blk--03 {
    margin-top: 64px;
  }
  .p-about-curriculum__link > span {
    width: 45px;
    height: 45px;
    left: 50%;
    bottom: -22px;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
  }
  .p-about-curriculum__link + .c-btn {
    margin-top: 45px;
  }
  .p-about-curriculum__blk-ttl-head {
    font-size: 1.125rem;
  }
  .p-about-curriculum__blk-ttl-main {
    font-size: 2.1875rem;
    margin-top: 14px;
  }
  .p-about-curriculum__carrier-ttl-sub {
    font-size: 1.25rem;
    line-height: 1.25;
    margin-top: 16px;
  }
  .p-about-curriculum__slide-head {
    font-size: 1.125rem;
    padding: 20px;
    border-radius: 5px 5px 0 0;
  }
  .p-about-curriculum__slider {
    margin-top: 37px;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 42px;
  }
  .p-about-curriculum__slide-txtblk {
    margin-top: -1px;
    padding: 22px 26px 27px;
    border-radius: 0 0 5px 5px;
    height: 210px;
  }
  .p-about-curriculum__slide-ttl {
    font-size: 1.25rem;
  }
  .p-about-curriculum__slide-txt {
    font-size: 0.8125rem;
    margin-top: 10px;
  }
  .p-about-curriculum__carrier {
    margin-top: 40px;
  }
  .p-about-curriculum__carrier + .p-about-curriculum__carrier {
    margin-top: 66px;
  }
  .p-about-curriculum__carrier-ttl {
    font-size: 1.4375rem;
    line-height: 1.0869565217;
    display: flex;
    align-items: center;
    gap: 18px;
  }
  .p-about-curriculum__carrier-ttl::before, .p-about-curriculum__carrier-ttl::after {
    content: "";
    flex: 1;
    background-color: #fff;
    height: 1px;
  }
  .p-about-curriculum__carrier-wrap {
    gap: 48px;
    margin-top: 31px;
  }
  .p-about-curriculum__carrier-img {
    width: 467px;
  }
  .p-about-curriculum__carrier-item-ttl {
    font-size: 1.25rem;
    margin-top: 19px;
  }
  .p-about-curriculum__carrier-department {
    font-size: 1rem;
    margin-top: 3px;
  }
  .p-about-curriculum__carrier-txt {
    font-size: 0.8125rem;
    margin-top: 10px;
  }
  .p-about-curriculum__carrier-slider {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 35px;
    margin-top: 45px;
  }
  .p-about-curriculum__carrier-slide-img {
    width: 220px;
    border-radius: 5px;
  }
  .p-about-curriculum__carrier-slide-ttl {
    font-size: 1.0625rem;
    margin-top: 8px;
  }
  .p-about-curriculum__carrier-slide-txt {
    font-size: 0.8125rem;
  }
  .p-about-curriculum__carrier-slide-period {
    width: 62px;
    height: 62px;
    top: -29px;
  }
  .p-about-curriculum__carrier-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 32px;
  }
  .p-about-curriculum__carrier-btn-link--bdr::before {
    right: 18px;
  }
  .p-about-curriculum__learning-slider {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 34px;
    margin-top: 45px;
  }
  .p-about-curriculum__learning-slide {
    width: 220px;
  }
  .p-about-curriculum__learning-slide-img {
    border-radius: 5px;
  }
  .p-about-curriculum__learning-slide-subttl {
    font-size: 1rem;
    margin-top: 13px;
  }
  .p-about-curriculum__learning-slide-ttl {
    font-size: 1.25rem;
    margin-top: 1px;
  }
  .p-about-curriculum__learning-slide-txt {
    font-size: 0.8125rem;
    margin-top: 6px;
    height: 100px;
  }
  .p-about-curriculum__learning-btn {
    margin-top: 10px;
  }
  .p-about-curriculum__learning-btn-link {
    width: 211px;
    height: 40px;
  }
  .p-about-curriculum__learning-btn-link::before {
    right: 24px;
  }
  .p-about-curriculum__learning-btn-txt {
    font-size: 0.875rem;
  }
}
@media (max-width: 767px) {
  .p-about-curriculum {
    padding: min(53px, 13.5897435897vw) 0 min(47px, 12.0512820513vw);
    overflow: hidden;
  }
  .p-about-curriculum__blk--01 {
    margin-top: min(28px, 7.1794871795vw);
  }
  .p-about-curriculum__blk--02 {
    margin-top: min(75px, 19.2307692308vw);
  }
  .p-about-curriculum__blk--03 {
    margin-top: min(91px, 23.3333333333vw);
  }
  .p-about-curriculum__link > span {
    display: block;
    width: min(45px, 11.5384615385vw);
    height: min(45px, 11.5384615385vw);
    position: relative;
    left: 0;
    right: 0;
    bottom: 23px;
    margin-inline: auto;
  }
  .p-about-curriculum__link + .c-btn {
    margin-top: min(45px, 11.5384615385vw);
  }
  .p-about-curriculum__blk-ttl-head {
    font-size: min(18px, 4.6153846154vw);
  }
  .p-about-curriculum__blk-ttl-main {
    font-size: min(30px, 7.6923076923vw);
    line-height: 1.3333333333;
    margin-top: min(18px, 4.6153846154vw);
  }
  .p-about-curriculum__slide-head {
    font-size: min(18px, 4.6153846154vw);
    padding: min(20px, 5.1282051282vw);
    border-radius: min(5px, 1.2820512821vw) min(5px, 1.2820512821vw) 0 0;
  }
  .p-about-curriculum__slider {
    display: block flex;
    justify-content: center;
    margin: min(29px, 7.4358974359vw) min(-20px, -5.1282051282vw) 0 0;
  }
  .p-about-curriculum__slider .slick-list {
    padding-bottom: min(30px, 7.6923076923vw);
  }
  .p-about-curriculum__slide {
    width: min(320px, 82.0512820513vw);
    padding-right: min(20px, 5.1282051282vw);
  }
  .p-about-curriculum__slide-txtblk {
    padding: min(21px, 5.3846153846vw) min(26px, 6.6666666667vw) min(27px, 6.9230769231vw);
    border-radius: 0 0 min(5px, 1.2820512821vw) min(5px, 1.2820512821vw);
    height: min(210px, 53.8461538462vw);
  }
  .p-about-curriculum__slide-ttl {
    font-size: min(20px, 5.1282051282vw);
  }
  .p-about-curriculum__slide-txt {
    font-size: min(13px, 3.3333333333vw);
    margin-top: min(13px, 3.3333333333vw);
  }
  .p-about-curriculum__carrier {
    margin-top: min(30px, 7.6923076923vw);
  }
  .p-about-curriculum__carrier + .p-about-curriculum__carrier {
    margin-top: min(38px, 9.7435897436vw);
  }
  .p-about-curriculum__carrier-ttl {
    font-size: min(20px, 5.1282051282vw);
    line-height: 1.5;
  }
  .p-about-curriculum__carrier-wrap {
    flex-direction: column;
    gap: min(25px, 6.4102564103vw);
    margin-top: min(27px, 6.9230769231vw);
  }
  .p-about-curriculum__carrier-img {
    width: 100%;
  }
  .p-about-curriculum__carrier-item-ttl {
    font-size: min(20px, 5.1282051282vw);
    margin-top: min(15px, 3.8461538462vw);
  }
  .p-about-curriculum__carrier-department {
    font-size: min(16px, 4.1025641026vw);
    margin-top: min(6px, 1.5384615385vw);
  }
  .p-about-curriculum__carrier-txt {
    font-size: min(13px, 3.3333333333vw);
    margin-top: min(10px, 2.5641025641vw);
  }
  .p-about-curriculum__carrier-slider {
    display: block flex;
    justify-content: center;
    margin: min(10px, 2.5641025641vw) min(-20px, -5.1282051282vw) 0 0;
  }
  .p-about-curriculum__carrier-slider .slick-list {
    padding-top: min(30px, 7.6923076923vw);
  }
  .p-about-curriculum__carrier-slide {
    width: min(240px, 61.5384615385vw);
    padding-right: min(20px, 5.1282051282vw);
  }
  .p-about-curriculum__carrier-slide-img {
    width: min(220px, 56.4102564103vw);
    border-radius: min(5px, 1.2820512821vw);
  }
  .p-about-curriculum__carrier-slide-ttl {
    font-size: min(17px, 4.358974359vw);
    margin-top: min(8px, 2.0512820513vw);
  }
  .p-about-curriculum__carrier-slide-txt {
    font-size: min(13px, 3.3333333333vw);
  }
  .p-about-curriculum__carrier-slide-period {
    width: min(62px, 15.8974358974vw);
    height: min(62px, 15.8974358974vw);
    top: -29px;
  }
  .p-about-curriculum__carrier-btn {
    margin-top: min(21px, 5.3846153846vw);
  }
  .p-about-curriculum__carrier-btn-link--bdr::before {
    right: min(18px, 4.6153846154vw);
  }
  .p-about-curriculum__carrier-slider-arws {
    margin-top: min(20px, 5.1282051282vw);
  }
  .p-about-curriculum__learning-slider {
    display: block flex;
    justify-content: center;
    margin: min(35px, 8.9743589744vw) min(-20px, -5.1282051282vw) 0 0;
  }
  .p-about-curriculum__learning-slider .slick-list {
    padding-bottom: min(5px, 1.2820512821vw);
  }
  .p-about-curriculum__learning-slide {
    width: min(240px, 61.5384615385vw);
    padding-right: min(20px, 5.1282051282vw);
  }
  .p-about-curriculum__learning-slide-img {
    border-radius: min(5px, 1.2820512821vw);
  }
  .p-about-curriculum__learning-slide-subttl {
    font-size: min(16px, 4.1025641026vw);
    margin-top: min(13px, 3.3333333333vw);
  }
  .p-about-curriculum__learning-slide-ttl {
    font-size: min(20px, 5.1282051282vw);
    margin-top: min(1px, 0.2564102564vw);
  }
  .p-about-curriculum__learning-slide-txt {
    font-size: min(13px, 3.3333333333vw);
    margin-top: min(6px, 1.5384615385vw);
    height: min(100px, 25.641025641vw);
  }
  .p-about-curriculum__learning-btn {
    margin-top: min(10px, 2.5641025641vw);
  }
  .p-about-curriculum__learning-btn-link {
    font-size: min(14px, 3.5897435897vw);
    width: min(208px, 53.3333333333vw);
    height: min(40px, 10.2564102564vw);
  }
  .p-about-curriculum__learning-btn-link::before {
    right: min(24px, 6.1538461538vw);
  }
  .p-about-curriculum__learning-slider-arws {
    margin-top: min(40px, 10.2564102564vw);
  }
}

/* .p-about-certification
----------------------------------- */
.p-about-certification__list {
  display: grid;
}
.p-about-certification__img {
  overflow: hidden;
}
.p-about-certification__img img {
  width: 100%;
}
.p-about-certification__item-ttl {
  font-weight: 700;
  line-height: 1.25;
}
.p-about-certification__item-ttl--grn {
  color: #45B035;
}
.p-about-certification__item-ttl--rd {
  color: #F08300;
}
.p-about-certification__item-ttl--yel {
  color: #F8B500;
}
.p-about-certification__btn-link--grn {
  color: #45B035;
  background-color: #fff;
  border-color: #45B035;
}
@media (any-hover: hover) {
  .p-about-certification__btn-link--grn:hover {
    color: #fff;
    background-color: #45B035;
    border-color: #fff;
  }
}
.p-about-certification__btn-link--rd {
  color: #F08300;
  background-color: #fff;
  border-color: #F08300;
}
@media (any-hover: hover) {
  .p-about-certification__btn-link--rd:hover {
    color: #fff;
    background-color: #F08300;
    border-color: #fff;
  }
}
.p-about-certification__btn-link--yel {
  color: #F8B500;
  background-color: #fff;
  border-color: #F8B500;
}
@media (any-hover: hover) {
  .p-about-certification__btn-link--yel:hover {
    color: #fff;
    background-color: #F8B500;
    border-color: #fff;
  }
}
@media (min-width: 768px) {
  .p-about-certification {
    margin-top: 69px;
    padding-bottom: 58px;
  }
  .p-about-certification__list {
    grid-template-columns: repeat(3, 1fr);
    gap: 44px;
    margin-top: 38px;
  }
  .p-about-certification__img {
    width: 300px;
    border-radius: 5px;
  }
  .p-about-certification__item-ttl {
    font-size: 20px;
    margin-top: 13px;
  }
  .p-about-certification__item-btn {
    margin-top: 17px;
  }
}
@media (max-width: 767px) {
  .p-about-certification {
    margin-top: min(50px, 12.8205128205vw);
    padding-bottom: min(57px, 14.6153846154vw);
  }
  .p-about-certification__list {
    grid-template-columns: repeat(1, 1fr);
    gap: min(30px, 7.6923076923vw);
    margin-top: min(14px, 3.5897435897vw);
  }
  .p-about-certification__img {
    width: 100%;
    border-radius: min(6px, 1.5384615385vw);
  }
  .p-about-certification__item-ttl {
    font-size: min(20px, 5.1282051282vw);
    text-align: center;
    margin-top: min(10px, 2.5641025641vw);
  }
  .p-about-certification__item-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: min(10px, 2.5641025641vw);
  }
  .p-about-certification__btn-link {
    width: min(300px, 76.9230769231vw);
  }
}

/* .u-bg
----------------------------------- */
.u-bg--beige {
  background-color: #fff5e6;
}
.u-bg--sky {
  background-color: #d3e6f0;
}
.u-bg--gry {
  background-color: #f5f5f5;
}
.u-bg--grn {
  background-color: rgba(69, 176, 53, 0.05);
}
@media (max-width: 767px) {
  .u-bg__sp--grn {
    background-color: rgba(69, 176, 53, 0.05);
  }
}

/* .u-wrap
----------------------------------- */
@media (min-width: 768px) {
  .u-wrap {
    max-width: 994px;
    margin-inline: auto;
  }
  .u-wrap--wide {
    max-width: 1200px;
    margin-inline: auto;
  }
  .u-wrap--mid {
    max-width: 1060px;
    padding-inline: 30px;
    margin-inline: auto;
  }
  .u-wrap--pc-w100 {
    max-width: 1400px;
    margin-inline: auto;
  }
}
/* .u-ta
----------------------------------- */
.u-ta--left {
  text-align: left;
}
.u-ta--center {
  text-align: center;
}
.u-ta--right {
  text-align: right;
}

/* .u-td
----------------------------------- */
.u-td--underline {
  text-decoration: underline;
}
/* .u-mg
----------------------------------- */
@media (min-width: 768px) {
  .u-mg--04 {
    margin-top: 4px;
  }
  .u-mg--08 {
    margin-top: 8px;
  }
  .u-mg--11 {
    margin-top: 11px;
  }
  .u-mg--bottom--10 {
    margin-bottom: -10px;
  }
}
@media (max-width: 767px) {
  .u-mg--bottom--10 {
    margin-bottom: min(-10px, -2.5641025641vw);
  }
}