@charset "UTF-8";
@layer reset, base, layout, components, pages, utilities;
:root {
  --border-width: 1px;
  --border-radius: 4px;
  --box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  --border-radius-lg: 8px;
  --border-radius-sm: 2px;
  --box-shadow-lg: 0 4px 8px rgba(0, 0, 0, 0.15);
  --box-shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.05);
  --color-bg: #F0F0F0;
  --color-border: #D9D9D9;
  --color-danger: #dc3545;
  --color-info: #17a2b8;
  --color-primary: #69C927;
  --color-primary-hover: #4faa22;
  --color-secondary: #6c757d;
  --color-secondary-hover: #545b62;
  --color-success: #28a745;
  --color-text: #111111;
  --color-text-muted: #777777;
  --color-warning: #ffc107;
  --font-family-base: Noto Sans JP, Hiragino Kaku Gothic ProN, Yu Gothic Medium, sans-serif;
  --font-family-en: Helvetica Neue, Arial, sans-serif;
  --font-family-outfit: "Outfit", sans-serif;
  --line-height-base: 1.6;
  --line-height-heading: 1.2;
  --spacing-lg: 1.5rem;
  --spacing-md: 1rem;
  --spacing-sm: 0.5rem;
  --spacing-unit: 1rem;
  --spacing-xl: 2rem;
  --spacing-xs: 0.25rem;
  --transition-base: all 0.3s ease;
  --transition-fast: all 0.15s ease;
  --transition-slow: all 0.5s ease;
  --width-pc: 1440px;
  --width-sp: 375px;
}

@layer components {
  @keyframes thunder-reveal {
    to {
      clip-path: inset(0 0 0 0);
    }
  }
  .thunder_01-svg {
    clip-path: inset(0 0 100% 0);
    animation: thunder-reveal 4s 0.12s cubic-bezier(0.2, 0.8, 0.2, 1) forwards;
    will-change: clip-path;
  }
  @media (max-width: 768px) {
    .thunder_01-svg {
      animation-duration: 3.8s;
    }
  }
  @media (prefers-reduced-motion: reduce) {
    .thunder_01-svg {
      animation: none;
      clip-path: inset(0 0 0 0);
    }
  }
  .thunder_02-svg {
    clip-path: inset(0 100% 0 0);
    will-change: clip-path;
  }
  .thunder_02.is-revealed .thunder_02-svg {
    animation: thunder-reveal 4s cubic-bezier(0.2, 0.8, 0.2, 1) forwards;
  }
  @media (max-width: 768px) {
    .thunder_02.is-revealed .thunder_02-svg {
      animation-duration: 3.8s;
    }
  }
  @media (prefers-reduced-motion: reduce) {
    .thunder_02-svg {
      clip-path: inset(0 0 0 0);
    }
    .thunder_02.is-revealed .thunder_02-svg {
      animation: none;
    }
  }
  .thunder_04-svg {
    clip-path: inset(0 100% 0 0);
    will-change: clip-path;
  }
  .thunder_04.is-revealed .thunder_04-svg {
    animation: thunder-reveal 4s cubic-bezier(0.2, 0.8, 0.2, 1) forwards;
  }
  @media (max-width: 768px) {
    .thunder_04.is-revealed .thunder_04-svg {
      animation-duration: 3.8s;
    }
  }
  @media (prefers-reduced-motion: reduce) {
    .thunder_04-svg {
      clip-path: inset(0 0 0 0);
    }
    .thunder_04.is-revealed .thunder_04-svg {
      animation: none;
    }
  }
  .thunder_11-svg {
    clip-path: inset(0 100% 0 0);
    will-change: clip-path;
  }
  .thunder_11.is-revealed .thunder_11-svg {
    animation: thunder-reveal 4s cubic-bezier(0.2, 0.8, 0.2, 1) forwards;
  }
  @media (max-width: 768px) {
    .thunder_11.is-revealed .thunder_11-svg {
      animation-duration: 3.8s;
    }
  }
  @media (prefers-reduced-motion: reduce) {
    .thunder_11-svg {
      clip-path: inset(0 0 0 0);
    }
    .thunder_11.is-revealed .thunder_11-svg {
      animation: none;
    }
  }
  .thunder_03-svg {
    clip-path: inset(0 0 100% 0);
    will-change: clip-path;
  }
  .thunder_03.is-revealed .thunder_03-svg {
    animation: thunder-reveal 4s cubic-bezier(0.2, 0.8, 0.2, 1) forwards;
  }
  @media (max-width: 768px) {
    .thunder_03.is-revealed .thunder_03-svg {
      animation-duration: 3.8s;
    }
  }
  @media (prefers-reduced-motion: reduce) {
    .thunder_03-svg {
      clip-path: inset(0 0 0 0);
    }
    .thunder_03.is-revealed .thunder_03-svg {
      animation: none;
    }
  }
  .thunder_05-svg {
    clip-path: inset(0 0 100% 0);
    will-change: clip-path;
  }
  .thunder_05.is-revealed .thunder_05-svg {
    animation: thunder-reveal 4s cubic-bezier(0.2, 0.8, 0.2, 1) forwards;
  }
  @media (max-width: 768px) {
    .thunder_05.is-revealed .thunder_05-svg {
      animation-duration: 3.8s;
    }
  }
  @media (prefers-reduced-motion: reduce) {
    .thunder_05-svg {
      clip-path: inset(0 0 0 0);
    }
    .thunder_05.is-revealed .thunder_05-svg {
      animation: none;
    }
  }
  .thunder_06-svg {
    clip-path: inset(0 0 100% 0);
    will-change: clip-path;
  }
  .thunder_06.is-revealed .thunder_06-svg {
    animation: thunder-reveal 4s cubic-bezier(0.2, 0.8, 0.2, 1) forwards;
  }
  @media (max-width: 768px) {
    .thunder_06.is-revealed .thunder_06-svg {
      animation-duration: 3.8s;
    }
  }
  @media (prefers-reduced-motion: reduce) {
    .thunder_06-svg {
      clip-path: inset(0 0 0 0);
    }
    .thunder_06.is-revealed .thunder_06-svg {
      animation: none;
    }
  }
  .thunder_07-svg {
    clip-path: inset(0 0 100% 0);
    will-change: clip-path;
  }
  .thunder_07.is-revealed .thunder_07-svg {
    animation: thunder-reveal 4s cubic-bezier(0.2, 0.8, 0.2, 1) forwards;
  }
  @media (max-width: 768px) {
    .thunder_07.is-revealed .thunder_07-svg {
      animation-duration: 3.8s;
    }
  }
  @media (prefers-reduced-motion: reduce) {
    .thunder_07-svg {
      clip-path: inset(0 0 0 0);
    }
    .thunder_07.is-revealed .thunder_07-svg {
      animation: none;
    }
  }
  .thunder_08-svg {
    clip-path: inset(0 0 100% 0);
    will-change: clip-path;
  }
  .thunder_08.is-revealed .thunder_08-svg {
    animation: thunder-reveal 4s cubic-bezier(0.2, 0.8, 0.2, 1) forwards;
  }
  @media (max-width: 768px) {
    .thunder_08.is-revealed .thunder_08-svg {
      animation-duration: 3.8s;
    }
  }
  @media (prefers-reduced-motion: reduce) {
    .thunder_08-svg {
      clip-path: inset(0 0 0 0);
    }
    .thunder_08.is-revealed .thunder_08-svg {
      animation: none;
    }
  }
  .thunder_09-svg {
    clip-path: inset(0 100% 0 0);
    will-change: clip-path;
  }
  .thunder_09.is-revealed .thunder_09-svg {
    animation: thunder-reveal 3.2s cubic-bezier(0.2, 0.8, 0.2, 1) forwards;
  }
  @media (max-width: 768px) {
    .thunder_09.is-revealed .thunder_09-svg {
      animation-duration: 3s;
    }
  }
  @media (prefers-reduced-motion: reduce) {
    .thunder_09-svg {
      clip-path: inset(0 0 0 0);
    }
    .thunder_09.is-revealed .thunder_09-svg {
      animation: none;
    }
  }
  .thunder_10-svg.pc {
    clip-path: inset(0 0 100% 0);
    will-change: clip-path;
  }
  .thunder_10-svg.sp {
    clip-path: inset(0 100% 0 0);
    will-change: clip-path;
  }
  .thunder_10.is-revealed .thunder_10-svg.pc {
    animation: thunder-reveal 4s cubic-bezier(0.2, 0.8, 0.2, 1) forwards;
  }
  @media (max-width: 768px) {
    .thunder_10.is-revealed .thunder_10-svg.pc {
      animation-duration: 3.8s;
    }
  }
  .thunder_10.is-revealed .thunder_10-svg.sp {
    animation: thunder-reveal 3.2s cubic-bezier(0.2, 0.8, 0.2, 1) forwards;
  }
  @media (max-width: 768px) {
    .thunder_10.is-revealed .thunder_10-svg.sp {
      animation-duration: 3s;
    }
  }
  @media (prefers-reduced-motion: reduce) {
    .thunder_10-svg.pc, .thunder_10-svg.sp {
      clip-path: inset(0 0 0 0);
    }
    .thunder_10.is-revealed .thunder_10-svg.pc, .thunder_10.is-revealed .thunder_10-svg.sp {
      animation: none;
    }
  }
}
@layer reset {
  *, ::before, ::after {
    box-sizing: border-box;
    border-width: 0;
    border-style: solid;
  }
  :where(html) {
    line-height: 1.15;
    -webkit-tap-highlight-color: transparent;
    -webkit-text-size-adjust: 100%;
  }
  :where(body) {
    margin: 0;
  }
  :where(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-weight: inherit;
    font-size: inherit;
  }
  :where(ul, ol) {
    margin: 0;
    padding: 0;
    list-style: none;
  }
  :where(dt) {
    font-weight: bold;
  }
  :where(dd) {
    margin-left: 0;
  }
  :where(hr) {
    clear: both;
    overflow: visible;
    box-sizing: content-box;
    margin: 0;
    height: 0;
    border-top-width: 1px;
    color: inherit;
  }
  :where(pre) {
    font-size: inherit;
    font-family: monospace, monospace;
  }
  :where(address) {
    font-style: inherit;
  }
  :where(a) {
    background-color: transparent;
    color: inherit;
    text-decoration: none;
  }
  :where(abbr[title]) {
    text-decoration: underline dotted;
  }
  :where(b, strong) {
    font-weight: bolder;
  }
  :where(code, kbd, samp) {
    font-size: inherit;
    font-family: monospace, monospace;
  }
  :where(small) {
    font-size: 80%;
  }
  :where(sub, sup) {
    position: relative;
    vertical-align: baseline;
    font-size: 75%;
    line-height: 0;
  }
  :where(sub) {
    bottom: -0.25em;
  }
  :where(sup) {
    top: -0.5em;
  }
  :where(svg, img, embed, object, iframe) {
    vertical-align: bottom;
  }
  :where(button, input, optgroup, select, textarea) {
    appearance: none;
    margin: 0;
    padding: 0;
    border-radius: 0;
    background: transparent;
    color: inherit;
    vertical-align: middle;
    text-align: inherit;
    text-transform: inherit;
    font: inherit;
    -webkit-appearance: none;
  }
  :where(button, [type=button], [type=reset], [type=submit]) {
    cursor: pointer;
  }
  :where(button:disabled,
  [type=button]:disabled,
  [type=reset]:disabled,
  [type=submit]:disabled) {
    cursor: default;
  }
  :-moz-focusring {
    outline: auto;
  }
  :where(select:disabled) {
    opacity: inherit;
  }
  :where(option) {
    padding: 0;
  }
  :where(fieldset) {
    margin: 0;
    padding: 0;
    min-width: 0;
  }
  :where(legend) {
    padding: 0;
  }
  :where(progress) {
    vertical-align: baseline;
  }
  :where(textarea) {
    overflow: auto;
  }
  :where([type=number]::-webkit-inner-spin-button,
  [type=number]::-webkit-outer-spin-button) {
    height: auto;
  }
  :where([type=search]) {
    outline-offset: -2px;
  }
  :where([type=search]::-webkit-search-decoration) {
    -webkit-appearance: none;
  }
  ::-webkit-file-upload-button {
    font: inherit;
    -webkit-appearance: button;
  }
  :where([type=number]) {
    -moz-appearance: textfield;
  }
  :where(label[for]) {
    cursor: pointer;
  }
  :where(details) {
    display: block;
  }
  :where(summary) {
    display: list-item;
  }
  :where([contenteditable]:focus) {
    outline: auto;
  }
  :where(table) {
    border-collapse: collapse;
    border-color: inherit;
  }
  :where(caption) {
    text-align: left;
  }
  :where(td, th) {
    padding: 0;
    vertical-align: top;
  }
  :where(th) {
    text-align: left;
    font-weight: bold;
  }
}
@layer base {
  html {
    font-size: 16px;
    scroll-behavior: smooth;
    overflow-x: clip;
  }
  body {
    font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic Medium", sans-serif;
    color: #111111;
    background: #ffffff;
    font-size: 1rem;
    font-weight: 500;
    line-height: 1.6;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    max-width: 100%;
    overflow-x: clip;
  }
  h1, h2, h3, h4, h5, h6 {
    line-height: var(--line-height-heading);
  }
  a {
    transition: opacity 0.3s ease;
  }
  a:hover {
    opacity: 0.7;
  }
  :where(a) {
    color: inherit;
  }
  img {
    max-width: 100%;
    height: auto;
    display: block;
    vertical-align: bottom;
  }
}
@layer layout {
  .header {
    width: 100%;
    z-index: 200;
    background: rgba(255, 255, 255, 0.3);
    -webkit-backdrop-filter: blur(12px);
    backdrop-filter: blur(5px);
  }
  @media (min-width: 769px) {
    .header {
      position: sticky;
      top: 0;
    }
  }
  @media (max-width: 768px) {
    .header {
      position: fixed;
      top: 0;
      left: 0;
    }
    .header:has(.header-nav.is-open) {
      background: #ffffff;
      -webkit-backdrop-filter: none;
      backdrop-filter: none;
    }
    .header:has(.header-nav.is-open) .header-inner {
      background: #ffffff;
    }
  }
  .header-inner {
    display: flex;
    align-items: stretch;
    height: clamp(72px, 8.33vw, 120px);
    max-width: 100%;
    margin: 0 auto;
    padding: clamp(16px, 2.5vw, 36px) clamp(16px, 2.78vw, 40px);
    gap: clamp(8px, 1.39vw, 20px);
  }
  @media (max-width: 768px) {
    .header-inner {
      padding: 0 0 0 20px;
      height: 64px;
      gap: 0;
    }
  }
  .header-logo {
    display: flex;
    align-items: center;
    gap: 12px;
    width: clamp(168px, 31.25vw, 450px);
    flex-shrink: 1;
    min-width: 0;
    margin-right: auto;
  }
  .header-logo a,
  .header-logo picture,
  .header-logo img {
    display: block;
    width: 100%;
    height: auto;
  }
  @media (max-width: 768px) {
    .header-logo {
      width: 140px;
      flex-shrink: 0;
      padding: 8px 0;
    }
  }
  @media (max-width: 768px) {
    .header-nav {
      display: none;
    }
    .header-nav.is-open {
      display: block;
      position: fixed;
      top: 64px;
      left: 0;
      width: 100%;
      height: calc(100dvh - 64px);
      background: #fff;
      z-index: 199;
      overflow-y: auto;
      padding-top: 26px;
    }
    .header-nav.is-open .header-nav-list {
      flex-direction: column;
      align-items: stretch;
      gap: 0;
      height: auto;
      padding: 0 20px;
    }
    .header-nav.is-open .header-nav-item {
      border-bottom: 1px solid #D9D9D9;
    }
    .header-nav.is-open .header-nav-item-link {
      padding: 20px 0;
      font-size: 16px;
      height: auto;
      width: 100%;
    }
  }
  @media (max-width: 768px) and (max-width: 768px) {
    .header-nav.is-open .header-nav-item-link {
      position: relative;
      padding: 22px 8px;
      font-size: 18px;
      line-height: 1.2;
    }
    .header-nav.is-open .header-nav-item-link::after {
      content: "";
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      right: 8px;
      width: 20px;
      height: 16px;
      background-image: url(../img/common/arrow_grn.png);
      background-size: contain;
      background-repeat: no-repeat;
      background-position: center center;
    }
  }
  @media (max-width: 768px) {
    .header-nav.is-open .header-nav-item--request {
      width: 100%;
      height: auto;
    }
    .header-nav.is-open .header-nav-item-link--request {
      padding: 22px 8px;
      background-color: transparent;
      color: #111111;
    }
    .header-nav.is-open .header-nav-item-link--request::after {
      content: "";
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      right: 8px;
      width: 20px;
      height: 16px;
      background-image: url(../img/common/open_icon_grn.png);
      background-size: contain;
    }
  }
  .header-nav-list {
    display: flex;
    align-items: stretch;
    gap: clamp(8px, 1.67vw, 24px);
    height: 100%;
    min-width: 0;
  }
  .header-nav-item {
    display: flex;
    align-items: center;
    min-width: 0;
  }
  .header-nav-item-link {
    display: flex;
    align-items: center;
    width: 100%;
    height: 100%;
    font-size: clamp(11px, 0.97vw, 14px);
    line-height: 1.2;
    font-weight: 500;
    transition: color 0.2s;
  }
  @media (hover: hover) {
    .header-nav-item-link:hover {
      color: #69C927;
      opacity: 1;
    }
  }
  .header-nav-item-link--request {
    position: relative;
    color: #ffffff;
    font-size: clamp(12px, 1.11vw, 16px);
    background-color: #111111;
    width: clamp(108px, 9.72vw, 140px);
    height: 100%;
    transition: background-color 0.2s;
    padding: 0 clamp(28px, 3.06vw, 44px) 0 clamp(16px, 2.22vw, 32px);
    white-space: nowrap;
    flex-shrink: 0;
  }
  .header-nav-item-link--request::after {
    content: "";
    position: absolute;
    top: 54%;
    transform: translateY(-50%);
    right: clamp(10px, 1.39vw, 20px);
    background-image: url(../img/common/open_icon_wht.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
    width: clamp(12px, 1.11vw, 16px);
    height: clamp(12px, 1.11vw, 16px);
  }
  @media (hover: hover) {
    .header-nav-item-link--request:hover {
      color: #ffffff;
      background-color: #69C927;
      opacity: 1;
    }
  }
  .header-hamburger {
    display: none;
  }
  @media (max-width: 768px) {
    .header-hamburger {
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: center;
      gap: 5px;
      background: none;
      border: none;
      cursor: pointer;
      margin-left: auto;
      width: 64px;
      height: 64px;
      background-color: #111111;
    }
    .header-hamburger span {
      display: block;
      height: 2px;
      background: #111111;
      border-radius: 2px;
      transition: transform 0.3s, width 0.3s;
      background-color: #69C927;
      transform-origin: center;
    }
    .header-hamburger span:first-child {
      width: 32px;
    }
    .header-hamburger span:last-child {
      width: 18px;
    }
    .header-hamburger.is-active span:first-child {
      width: 32px;
      transform: translateY(3.5px) rotate(45deg);
    }
    .header-hamburger.is-active span:last-child {
      width: 32px;
      transform: translateY(-3.5px) rotate(-45deg);
    }
  }
}
@layer layout {
  .footer {
    position: relative;
    z-index: 1;
    padding: 40px 0 120px;
    background-color: #111;
    margin-top: -1px;
  }
  @media (max-width: 768px) {
    .footer {
      padding: 20px 0 40px;
    }
  }
  .footer-contact-list {
    display: flex;
    flex-direction: column;
    gap: 20px;
  }
  @media (max-width: 768px) {
    .footer-contact-list {
      width: calc(100% + 40px - 16px);
      margin-left: -12px;
    }
  }
  .footer-contact-list-item {
    background-color: #fff;
    transition: background-color 0.25s;
  }
  @media (hover: hover) {
    .footer-contact-list-item:hover {
      background-color: #69C927;
    }
  }
  .footer-contact-list-item-link {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, min(500px, 42%));
    gap: clamp(20px, 3vw, 31px);
    align-items: start;
    padding: clamp(12px, 1.39vw, 20px) clamp(12px, 1.39vw, 20px) clamp(12px, 1.39vw, 20px) clamp(16px, 2.22vw, 32px);
  }
  @media (max-width: 768px) {
    .footer-contact-list-item-link {
      position: relative;
      padding: 20px 12px 12px;
      grid-template-columns: 1fr;
      grid-auto-flow: row;
      gap: 48px;
    }
    .footer-contact-list-item-link::after {
      content: "";
      position: absolute;
      bottom: 12px;
      right: 12px;
      width: 72px;
      height: 64px;
      background: url(../img/common/arrow_blk.png) no-repeat center center/contain;
    }
  }
  @media (hover: hover) {
    .footer-contact-list-item-link:hover {
      opacity: 1;
    }
    .footer-contact-list-item-link:hover .footer-contact-list-item-img img {
      transform: scale(1.1);
    }
  }
  .footer-contact-list-item-body {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 24px;
    height: 100%;
    min-width: 0;
  }
  @media (min-width: 769px) {
    .footer-contact-list-item-body {
      padding-right: clamp(72px, 9.72vw, 140px);
    }
    .footer-contact-list-item-body::after {
      content: "";
      position: absolute;
      bottom: 0;
      right: 0;
      width: clamp(72px, 9.1vw, 131px);
      height: clamp(60px, 7.64vw, 110px);
      background: url(../img/common/arrow_blk.png) no-repeat center center/contain;
    }
  }
  .footer-contact-list-item-body-title {
    font-size: clamp(32px, 4.44vw, 64px);
    line-height: 1;
    padding-top: 16px;
  }
  @media (max-width: 768px) {
    .footer-contact-list-item-body-title {
      font-size: 32px;
      padding-top: 0;
    }
  }
  .footer-contact-list-item-body-desc {
    font-weight: 400;
  }
  @media (max-width: 768px) {
    .footer-contact-list-item-body-desc {
      font-size: 14px;
    }
  }
  .footer-contact-list-item-img {
    min-width: 0;
    width: 100%;
    overflow: hidden;
  }
  @media (max-width: 768px) {
    .footer-contact-list-item-img {
      width: 120px;
      max-width: none;
    }
  }
  .footer-contact-list-item-img img {
    display: block;
    width: 100%;
    height: auto;
    transition: transform 0.4s;
  }
  .footer-logo-list {
    padding: clamp(48px, 6.67vw, 96px) 0;
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: clamp(72px, 9.1vw, 131px) clamp(72px, 9.1vw, 131px) auto;
    align-items: start;
    width: 100%;
  }
  @media (max-width: 768px) {
    .footer-logo-list {
      grid-template-rows: 64px 64px auto;
      padding: 64px 0;
    }
  }
  .footer-logo-list-item {
    color: #434343;
    font-size: clamp(32px, 4.44vw, 64px);
    font-family: var(--font-family-outfit);
    font-weight: 400;
    letter-spacing: -0.05em;
    line-height: 0.8;
  }
  @media (max-width: 768px) {
    .footer-logo-list-item {
      font-size: 24px;
      line-height: 1;
    }
  }
  .footer-logo-list-item:nth-child(1) {
    grid-row: 1;
    justify-self: start;
  }
  .footer-logo-list-item:nth-child(2) {
    grid-row: 2;
    justify-self: center;
  }
  .footer-logo-list-item:nth-child(3) {
    grid-row: 3;
    justify-self: end;
    font-family: var(--font-family-base);
    letter-spacing: 0;
    line-height: 1;
  }
  @media (min-width: 769px) {
    .footer-logo-list-item:nth-child(3) {
      width: min(333px, 23.1vw);
      font-size: clamp(28px, 3.47vw, 50px);
    }
  }
  .footerNav {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    color: #fff;
  }
  @media (max-width: 768px) {
    .footerNav {
      flex-direction: column;
      gap: 64px;
      align-items: flex-start;
    }
  }
  .footerNav-links {
    display: flex;
    gap: clamp(32px, 4.44vw, 64px);
    color: #fff;
  }
  @media (max-width: 768px) {
    .footerNav-links {
      gap: 40px;
    }
  }
  .footerNav-links-list {
    display: flex;
    flex-direction: column;
    gap: clamp(24px, 2.78vw, 40px);
  }
  @media (max-width: 768px) {
    .footerNav-links-list {
      gap: 24px;
    }
  }
  .footerNav-links-list-item {
    font-size: clamp(22px, 2.78vw, 40px);
    line-height: 1.2;
  }
  @media (max-width: 768px) {
    .footerNav-links-list-item {
      font-size: 16px;
    }
  }
  .footerNav-links-list-item-link:not(.request-link) {
    display: inline;
    text-decoration: none;
    padding-bottom: 6px;
    box-decoration-break: clone;
    -webkit-box-decoration-break: clone;
    background-image: linear-gradient(currentColor, currentColor);
    background-repeat: no-repeat;
    background-position: left bottom;
    background-size: 0% 2px;
    transition: background-size 0.3s ease;
  }
  @media (hover: hover) {
    .footerNav-links-list-item-link:not(.request-link):hover {
      opacity: 1;
      background-size: 100% 2px;
    }
  }
  .footerNav-links-list-item-link.request-link {
    display: inline-flex;
    align-items: baseline;
    width: fit-content;
    text-decoration: none;
    padding-bottom: 6px;
    background-image: linear-gradient(currentColor, currentColor);
    background-repeat: no-repeat;
    background-position: left bottom;
    background-size: 0% 2px;
    transition: background-size 0.3s ease;
    gap: 16px;
  }
  @media (hover: hover) {
    .footerNav-links-list-item-link.request-link:hover {
      text-decoration: none;
      opacity: 1;
      background-size: 100% 2px;
    }
  }
  @media (max-width: 768px) {
    .footerNav-links-list-item-link.request-link {
      gap: 4px;
    }
  }
  .footerNav-links-list-item-icon {
    display: inline-block;
    width: 0.55em;
    flex-shrink: 0;
    line-height: 0;
  }
  @media (max-width: 768px) {
    .footerNav-links-list-item-icon {
      width: 0.75em;
    }
  }
  .footerNav-links-list-item-icon img {
    display: block;
    width: 100%;
    height: auto;
  }
  .footerNav-links-sub-list {
    display: grid;
    grid-template-columns: auto auto;
    grid-template-rows: auto auto;
    row-gap: 64px;
    column-gap: 48px;
    justify-content: end;
  }
  @media (max-width: 768px) {
    .footerNav-links-sub-list {
      display: flex;
      flex-direction: column;
      row-gap: 28px;
    }
  }
  .footerNav-links-sub-list-item {
    font-size: 16px;
    line-height: 1;
    text-decoration: underline;
  }
  .footerNav-links-sub-list-item:nth-child(1) {
    position: relative;
    grid-column: 1;
    grid-row: 1;
    padding-left: 46px;
  }
  .footerNav-links-sub-list-item:nth-child(1)::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 30px;
    height: 30px;
    background-image: url(../img/common/icon_insta.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
  }
  .footerNav-links-sub-list-item:nth-child(2) {
    position: relative;
    grid-column: 2;
    grid-row: 1;
    padding-left: 46px;
  }
  .footerNav-links-sub-list-item:nth-child(2)::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 30px;
    height: 30px;
    background-image: url(../img/common/icon_insta.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
  }
  .footerNav-links-sub-list-item:nth-child(3) {
    font-size: 16px;
    line-height: 1.6;
    grid-column: 1/-1;
    grid-row: 2;
    justify-self: end;
    text-decoration: none;
  }
  @media (max-width: 768px) {
    .footerNav-links-sub-list-item:nth-child(3) {
      font-size: 12px;
      justify-self: start;
      padding-top: 48px;
    }
  }
}
@layer components {
  .btn-more {
    position: relative;
    width: fit-content;
    line-height: 1;
    border-bottom: 1px solid #111111;
    padding: 12px 93px 24px 4px;
    display: inline-block;
    transform-origin: center bottom;
    transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.2s;
  }
  @media (hover: hover) {
    .btn-more:hover {
      opacity: 1;
      transform: scale(1.1);
    }
  }
  @media (max-width: 768px) {
    .btn-more.sp {
      margin: 50px auto 0;
      display: block;
    }
  }
  .btn-more::after {
    content: "";
    position: absolute;
    bottom: 20px;
    right: 0;
    width: 38px;
    height: 32px;
    background: url(../img/common/arrow_grn.png) no-repeat center center/cover;
  }
  .btn-more02 {
    position: relative;
    width: fit-content;
    font-size: 14px;
    line-height: 1;
    padding: 10px 56px 20px 4px;
    border-bottom: 1px solid #111111;
    display: inline-block;
    transform-origin: center bottom;
    transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.2s;
  }
  @media (hover: hover) {
    .btn-more02:hover {
      opacity: 1;
      transform: scale(1.1);
    }
  }
  @media (max-width: 768px) {
    .btn-more02 {
      font-size: 12px;
      padding: 8px 48px 17px 4px;
    }
  }
  @media (max-width: 768px) {
    .btn-more02.sp {
      margin: 50px auto 0;
      display: block;
      width: fit-content;
    }
  }
  .btn-more02::after {
    content: "";
    position: absolute;
    bottom: 16px;
    right: 0;
    width: 33px;
    height: 28px;
    background-image: url(../img/common/arrow_grn.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
  }
  @media (max-width: 768px) {
    .btn-more02::after {
      width: 29px;
      height: 24px;
      bottom: 12px;
    }
  }
  .btn-more03 {
    position: relative;
    width: fit-content;
    font-size: 16px;
    line-height: 1;
    padding: 12px 48px 24px 4px;
    border-bottom: 1px solid #111111;
    margin: 141px 0 0 auto;
    display: inline-block;
    transform-origin: center bottom;
    transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.2s;
  }
  @media (hover: hover) {
    .btn-more03:hover {
      opacity: 1;
      transform: scale(1.1);
    }
  }
  @media (max-width: 768px) {
    .btn-more03.sp {
      margin: 50px auto 0;
      display: block;
      width: fit-content;
    }
  }
  .btn-more03::after {
    content: "";
    position: absolute;
    bottom: 20px;
    right: 0;
    width: 38px;
    height: 32px;
    background-image: url(../img/common/arrow_grn.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
  }
  .btn-more04 {
    position: relative;
    width: fit-content;
    font-size: 14px;
    line-height: 1;
    padding: 10px 98px 20px 4px;
    border-bottom: 1px solid #111111;
    display: inline-block;
    transform-origin: center bottom;
    transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.2s;
  }
  @media (hover: hover) {
    .btn-more04:hover {
      opacity: 1;
      transform: scale(1.1);
    }
  }
  @media (max-width: 768px) {
    .btn-more04 {
      font-size: 12px;
      padding: 8px 84px 17px 4px;
    }
  }
  @media (max-width: 768px) {
    .btn-more04.sp {
      margin: 50px auto 0;
      display: block;
    }
  }
  .btn-more04::after {
    content: "";
    position: absolute;
    bottom: 17px;
    right: 0;
    width: 33px;
    height: 28px;
    background-image: url(../img/common/arrow_grn.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
  }
  @media (max-width: 768px) {
    .btn-more04::after {
      width: 29px;
      height: 24px;
      bottom: 12px;
    }
  }
  .btn-pdf {
    position: relative;
    width: fit-content;
    padding: 10px 81px 27px 4px;
    border-bottom: 1px solid #111;
    line-height: 1;
    display: inline-block;
    transform-origin: center bottom;
    transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.2s;
  }
  @media (hover: hover) {
    .btn-pdf:hover {
      opacity: 1;
      transform: scale(1.1);
    }
  }
  .btn-pdf::after {
    content: "";
    position: absolute;
    bottom: 20px;
    right: 0;
    width: 38px;
    height: 32px;
    background-image: url(../img/common/icon_pdf.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
  }
  .btn-back {
    position: relative;
    margin-top: 120px;
    font-size: 14px;
    line-height: 1;
    border-bottom: 1px solid #111111;
    padding: 14px 4px 20px 76px;
    width: fit-content;
    text-align: right;
    display: inline-block;
    transform-origin: center bottom;
    transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.2s;
  }
  @media (hover: hover) {
    .btn-back:hover {
      opacity: 1;
      transform: scale(1.1);
    }
  }
  .btn-back::before {
    content: "";
    position: absolute;
    bottom: 16px;
    left: 0;
    width: 38px;
    height: 32px;
    background: url(../img/common/arrow_back.png) no-repeat center center/cover;
  }
  .btn-blank {
    position: relative;
    width: fit-content;
    padding: 12px 93px 24px 4px;
    border-bottom: 1px solid #111;
    line-height: 1;
    display: inline-block;
    transform-origin: center bottom;
    transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.2s;
  }
  @media (hover: hover) {
    .btn-blank:hover {
      opacity: 1;
      transform: scale(1.1);
    }
  }
  @media (max-width: 768px) {
    .btn-blank {
      padding: 10px 98px 20px 4px;
      font-size: 14px;
    }
  }
  .btn-blank::after {
    content: "";
    position: absolute;
    bottom: 20px;
    right: 0;
    width: 38px;
    height: 32px;
    background-image: url(../img/common/open_icon_grn.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
  }
  @media (max-width: 768px) {
    .btn-blank::after {
      width: 33px;
      height: 28px;
      bottom: 16px;
    }
  }
}
@layer components {
  .card {
    overflow: hidden;
    border-radius: var(--border-radius);
    background: #fff;
    box-shadow: var(--box-shadow);
    transition: var(--transition-base);
  }
  @container (min-width: 400px) {
    .card-body {
      padding: var(--spacing-lg);
    }
    .card-title {
      font-size: 1.5rem;
    }
  }
  @container (min-width: 600px) {
    .card {
      display: grid;
      grid-template-columns: 200px 1fr;
    }
    .card-image {
      height: 100%;
      object-fit: cover;
    }
  }
  .card:hover {
    box-shadow: var(--box-shadow-lg);
  }
  .card-image {
    width: 100%;
    height: auto;
    object-fit: cover;
  }
  .card-body {
    padding: var(--spacing-md);
  }
  .card-title {
    margin-bottom: var(--spacing-sm);
    color: var(--color-text);
    font-weight: bold;
    font-size: 1.25rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .card-text {
    color: var(--color-text-muted);
    font-size: 1rem;
    line-height: var(--line-height-base);
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    line-clamp: 3;
  }
}
@layer components {
  .modal {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1000;
    display: flex;
    visibility: hidden;
    align-items: center;
    justify-content: center;
    padding: var(--spacing-md);
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    opacity: 0;
    transition: var(--transition-base);
  }
  .modal.is-active {
    visibility: visible;
    opacity: 1;
  }
  .modal-content {
    position: relative;
    overflow-y: auto;
    padding: var(--spacing-xl);
    max-width: 600px;
    max-height: 90vh;
    width: 100%;
    border-radius: var(--border-radius-lg);
    background: #fff;
    box-shadow: var(--box-shadow-lg);
    transition: var(--transition-base);
    transform: scale(0.9);
  }
  .modal.is-active .modal-content {
    transform: scale(1);
  }
  .modal-close {
    position: absolute;
    top: var(--spacing-md);
    right: var(--spacing-md);
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    width: 40px;
    height: 40px;
    border: none;
    background: transparent;
    color: var(--color-text);
    font-size: 1.5rem;
    line-height: 1;
    cursor: pointer;
    transition: var(--transition-fast);
  }
  .modal-close:hover {
    color: var(--color-primary);
    transform: rotate(90deg);
  }
  .modal-title {
    margin-bottom: var(--spacing-md);
    font-weight: bold;
    font-size: 1.5rem;
    line-height: var(--line-height-heading);
  }
  .modal-text {
    margin-bottom: var(--spacing-lg);
    color: var(--color-text-muted);
    line-height: var(--line-height-base);
  }
}
@layer components {
  .accordion-item {
    border-bottom: 1px solid var(--color-border);
  }
  .accordion-item:first-child {
    border-top: 1px solid var(--color-border);
  }
  .accordion-trigger {
    position: relative;
    width: 100%;
    padding: var(--spacing-md) var(--spacing-lg) var(--spacing-md) 0;
    border: none;
    background: transparent;
    text-align: left;
    font-weight: 500;
    font-size: 1rem;
    cursor: pointer;
    transition: var(--transition-fast);
  }
  .accordion-trigger::after {
    position: absolute;
    top: 50%;
    right: 0;
    width: 12px;
    height: 12px;
    margin-top: -6px;
    border-right: 2px solid var(--color-text);
    border-bottom: 2px solid var(--color-text);
    transform: rotate(45deg);
    transition: var(--transition-fast);
    content: "";
  }
  .accordion-trigger:hover {
    color: var(--color-primary);
  }
  .accordion-trigger[aria-expanded=true] {
    color: var(--color-primary);
  }
  .accordion-trigger[aria-expanded=true]::after {
    transform: rotate(225deg);
  }
  .accordion-content {
    max-height: 0;
    padding: 0 var(--spacing-lg);
    overflow: hidden;
    transition: max-height 0.3s ease, padding 0.3s ease;
  }
  .accordion-item.is-open .accordion-content {
    max-height: 1000px;
    padding: 0 var(--spacing-lg) var(--spacing-md);
  }
  .accordion-content-text {
    margin: 0;
    color: var(--color-text-muted);
    line-height: var(--line-height-base);
  }
}
@layer components {
  .form-group {
    margin-bottom: var(--spacing-lg);
  }
  .form-label {
    display: block;
    margin-bottom: var(--spacing-xs);
    font-weight: 500;
    font-size: 0.875rem;
    color: var(--color-text);
  }
  .form-required {
    margin-left: var(--spacing-xs);
    color: var(--color-danger);
    font-size: 0.75rem;
  }
  .form-input, .form-select, .form-textarea {
    width: 100%;
    padding: var(--spacing-sm) var(--spacing-md);
    border: 1px solid var(--color-border);
    border-radius: var(--border-radius);
    background: #fff;
    font-size: 1rem;
    line-height: var(--line-height-base);
    transition: var(--transition-fast);
  }
  .form-input:focus, .form-select:focus, .form-textarea:focus {
    outline: none;
    border-color: var(--color-primary);
    box-shadow: 0 0 0 3px rgba(0, 123, 255, 0.1);
  }
  .form-input:invalid:not(:focus):not(:placeholder-shown), .form-select:invalid:not(:focus):not(:placeholder-shown), .form-textarea:invalid:not(:focus):not(:placeholder-shown) {
    border-color: var(--color-danger);
  }
  .form-textarea {
    resize: vertical;
    min-height: 120px;
  }
  .form-error {
    display: block;
    margin-top: var(--spacing-xs);
    color: var(--color-danger);
    font-size: 0.75rem;
    opacity: 0;
    transition: var(--transition-fast);
  }
  .form-error:not(:empty) {
    opacity: 1;
  }
  .form-group:has(.form-input:invalid:not(:focus):not(:placeholder-shown)) .form-error,
  .form .form-group.has-error .form-error {
    opacity: 1;
  }
}
@layer components {
  .sectionHeaderTitle {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 12px;
  }
  @media (max-width: 768px) {
    .sectionHeaderTitle {
      gap: 8px;
    }
  }
  .sectionHeaderTitle-ja {
    font-size: clamp(48px, 6.39vw, 92px);
    line-height: 1.2;
    letter-spacing: -0.05em;
  }
  @media (max-width: 768px) {
    .sectionHeaderTitle-ja {
      font-size: 40px;
      line-height: 1.3;
    }
  }
  .sectionHeaderTitle-en {
    position: relative;
    font-size: 20px;
    font-weight: 400;
    font-family: var(--font-family-outfit);
    line-height: 1;
    padding-left: 22px;
  }
  @media (max-width: 768px) {
    .sectionHeaderTitle-en {
      font-size: 14px;
      padding-left: 16px;
    }
  }
  .sectionHeaderTitle-en::before {
    content: "";
    position: absolute;
    top: 3px;
    left: 8px;
    width: 6px;
    height: 6px;
    background-color: #69C927;
  }
  @media (max-width: 768px) {
    .sectionHeaderTitle-en::before {
      width: 4px;
      height: 4px;
      top: 2px;
    }
  }
  .sectionHeaderTitle-lead {
    width: fit-content;
    margin: 0 0 0 auto;
    font-weight: 400;
  }
  @media (max-width: 768px) {
    .sectionHeaderTitle-lead {
      margin: 40px 0 0;
      font-size: 14px;
      line-height: 1.8;
    }
  }
  .homeMain .sectionHeaderTitle-ja {
    opacity: 0;
    transform: translateY(18px);
    transition: opacity 0.85s cubic-bezier(0.22, 1, 0.36, 1), transform 0.85s cubic-bezier(0.22, 1, 0.36, 1);
  }
  .homeMain .sectionHeaderTitle-ja.is-revealed {
    opacity: 1;
    transform: translateY(0);
  }
  @media (prefers-reduced-motion: reduce) {
    .homeMain .sectionHeaderTitle-ja {
      opacity: 1;
      transform: none;
      transition: none;
    }
  }
  .contentsSectionTitle {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 12px;
  }
  @media (max-width: 768px) {
    .contentsSectionTitle {
      gap: 8px;
    }
  }
  .contentsSectionTitle-ja {
    font-size: clamp(32px, 3.89vw, 56px);
    line-height: 1.3;
    letter-spacing: -0.05em;
    font-weight: 500;
  }
  @media (max-width: 768px) {
    .contentsSectionTitle-ja {
      font-size: 32px;
      line-height: 1.3;
    }
  }
  .contentsSectionTitle-en {
    position: relative;
    font-size: 20px;
    font-weight: 400;
    font-family: var(--font-family-outfit);
    line-height: 1;
    padding-left: 22px;
  }
  @media (max-width: 768px) {
    .contentsSectionTitle-en {
      font-size: 14px;
      padding-left: 16px;
    }
  }
  .contentsSectionTitle-en::before {
    content: "";
    position: absolute;
    top: 3px;
    left: 8px;
    width: 6px;
    height: 6px;
    background-color: #69C927;
  }
  @media (max-width: 768px) {
    .contentsSectionTitle-en::before {
      width: 4px;
      height: 4px;
      top: 2px;
    }
  }
  .standalonePageHero {
    overflow-x: clip;
  }
  .standalonePageHero-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 48px;
  }
  @media (max-width: 768px) {
    .standalonePageHero-header {
      flex-direction: column;
      align-items: center;
    }
  }
  @media (max-width: 768px) {
    .standalonePageHero-header.about {
      margin: 0 auto;
      align-items: flex-start;
    }
  }
  .standalonePageHero-header-group {
    width: min(764px, 100%);
  }
  @media (max-width: 768px) {
    .standalonePageHero-header-group {
      width: 100%;
    }
  }
  .standalonePageHero-header-title {
    font-size: clamp(48px, 6.39vw, 92px);
    line-height: 1.2;
    padding-top: clamp(48px, 6.94vw, 100px);
  }
  @media (max-width: 768px) {
    .standalonePageHero-header-title {
      font-size: 48px;
      line-height: 1.2;
      letter-spacing: -0.05em;
      padding-top: 74px;
    }
    .standalonePageHero-header-title.fz40 {
      font-size: 40px;
    }
  }
  .standalonePageHero-header-desc {
    width: fit-content;
    line-height: 1.8;
    letter-spacing: 0.05em;
    padding-top: 80px;
    margin: 0 0 0 auto;
  }
  @media (max-width: 768px) {
    .standalonePageHero-header-desc {
      padding-top: 48px;
      margin: 0;
      font-size: 14px;
    }
  }
  .standalonePageHero-header-img.standalone01 {
    width: min(402px, 100%);
  }
  @media (max-width: 768px) {
    .standalonePageHero-header-img.standalone01 {
      width: 100%;
    }
  }
  .standalonePageHero-header-img.standalone02 {
    width: min(548px, 100%);
  }
  @media (max-width: 768px) {
    .standalonePageHero-header-img.standalone02 {
      width: 100%;
    }
  }
}
@layer components {
  .breadcrumb {
    padding: 8px 0 20px;
  }
  .breadcrumb-list {
    font-size: 0;
    line-height: 1.6;
  }
  .breadcrumb-list-item {
    display: inline;
    font-size: 12px;
    line-height: 1;
  }
  @media (max-width: 768px) {
    .breadcrumb-list-item {
      line-height: 1.8;
    }
  }
  .breadcrumb-list-item a {
    color: inherit;
    text-decoration: underline;
    transition: color 0.2s, opacity 0.2s;
  }
  @media (hover: hover) {
    .breadcrumb-list-item a:hover {
      color: #69C927;
      opacity: 1;
    }
  }
  .breadcrumb-list-item:not(:last-child)::after {
    content: "";
    display: inline-block;
    width: 8px;
    height: 1px;
    margin: 0 16px;
    background-color: #818181;
    vertical-align: middle;
  }
  @media (max-width: 768px) {
    .breadcrumb-list-item:not(:last-child)::after {
      margin: 0 8px;
    }
  }
  .breadcrumb-list-item.active {
    color: #818181;
    text-decoration: none;
  }
}
@layer components {
  .thunder_01 {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    width: 1433px;
    max-width: 1478px;
    margin-inline: auto;
    pointer-events: none;
    z-index: 0;
  }
  @media (max-width: 768px) {
    .thunder_01 {
      left: 50%;
      right: auto;
      width: 603px;
      max-width: none;
      margin-inline: 0;
      transform: translateX(-50%);
      height: auto;
      top: -17px;
    }
  }
  .thunder_01 svg {
    display: block;
    width: 100%;
    height: auto;
  }
  .thunder_02 {
    position: absolute;
    top: 51%;
    left: -68px;
    width: 1544px;
    pointer-events: none;
    z-index: 0;
  }
  @media (max-width: 768px) {
    .thunder_02 {
      top: 43%;
      left: -100px;
      width: 646px;
    }
  }
  .thunder_03 {
    position: absolute;
    top: -17px;
    left: 50%;
    transform: translateX(-50%);
    width: 1105px;
    pointer-events: none;
    z-index: 0;
  }
  @media (max-width: 768px) {
    .thunder_03 {
      top: -12px;
      width: 498px;
      height: 766px;
    }
  }
  .thunder_04 {
    position: absolute;
    top: 46px;
    left: 0;
    width: 100%;
    pointer-events: none;
    z-index: 0;
  }
  @media (max-width: 768px) {
    .thunder_04 {
      top: 66px;
      width: 436px;
      height: 214px;
      left: -6px;
    }
  }
  .thunder_05 {
    position: absolute;
    top: -13px;
    left: 50%;
    transform: translateX(-50%);
    width: 1264px;
    height: 1746px;
    max-width: none;
    pointer-events: none;
    z-index: 0;
  }
  @media (max-width: 768px) {
    .thunder_05 {
      width: 462px;
      height: 1441px;
      left: -110px;
      transform: none;
      top: -70px;
    }
  }
  .thunder_05 svg {
    display: block;
    width: 100%;
    height: 100%;
  }
  .thunder_06 {
    position: absolute;
    top: -137px;
    max-width: 1328px;
    pointer-events: none;
    z-index: -1;
  }
  @media (max-width: 768px) {
    .thunder_06 {
      width: 466px;
      top: -12px;
      right: 0;
    }
  }
  .thunder_07 {
    position: absolute;
    top: -380px;
    right: 0;
    max-width: 1059px;
    pointer-events: none;
    z-index: -1;
  }
  @media (max-width: 768px) {
    .thunder_07 {
      width: 450px;
      top: -160px;
      right: 0;
    }
  }
  .thunder_08 {
    position: absolute;
    top: -120px;
    right: 0;
    max-width: 1264px;
    pointer-events: none;
    z-index: -1;
  }
  @media (max-width: 768px) {
    .thunder_08 {
      top: -68px;
      right: 0;
      width: 335px;
    }
  }
  .thunder_09 {
    position: absolute;
    left: 0;
    max-width: 1512px;
    pointer-events: none;
    z-index: -1;
  }
  @media (max-width: 768px) {
    .thunder_09 {
      top: 210px;
      width: 375px;
    }
  }
  .thunder_10 {
    position: absolute;
    top: -177px;
    right: -170px;
    max-width: 688px;
    pointer-events: none;
    z-index: -1;
  }
  @media (max-width: 768px) {
    .thunder_10 {
      top: 190px;
      right: initial;
      left: 0;
      width: 403px;
    }
  }
  .thunder_11 {
    position: absolute;
    top: 70px;
    left: -8px;
    width: 100%;
    max-width: 1446px;
    pointer-events: none;
    z-index: -1;
  }
  @media (max-width: 768px) {
    .thunder_11 {
      display: none;
    }
  }
  .thunder_02 svg {
    display: block;
    width: 100%;
    height: auto;
  }
  .thunder_03 svg {
    display: block;
    width: 100%;
    height: auto;
  }
  .thunder_04 svg {
    display: block;
    width: 100%;
    height: auto;
  }
  .thunder_06 svg {
    display: block;
    width: 100%;
    height: auto;
  }
  .thunder_07 svg {
    display: block;
    width: 100%;
    height: auto;
  }
  .thunder_08 svg {
    display: block;
    width: 100%;
    height: auto;
  }
  .thunder_09 svg {
    display: block;
    width: 100%;
    height: auto;
  }
  .thunder_10 svg {
    display: block;
    width: 100%;
    height: auto;
  }
  .thunder_11 svg {
    display: block;
    width: 100%;
    height: auto;
  }
}
@layer components {
  .hover-underline {
    display: inline;
    text-decoration: none;
    padding-bottom: 6px;
    box-decoration-break: clone;
    -webkit-box-decoration-break: clone;
    background-image: linear-gradient(currentColor, currentColor);
    background-repeat: no-repeat;
    background-position: left bottom;
    background-size: 0% 2px;
    transition: background-size 0.3s ease;
  }
}
@layer pages {
  main.homeMain {
    isolation: isolate;
    overflow-x: clip;
  }
  .homeHero {
    position: relative;
    padding: 0 0 148px;
    overflow: visible;
  }
  @media (max-width: 768px) {
    .homeHero {
      padding: 44px 0 0;
    }
  }
  @media (min-width: 769px) {
    .homeHero .thunder_01 {
      top: -120px;
    }
  }
  @media (max-width: 768px) {
    .homeHero .thunder_01 {
      top: -74px;
    }
  }
  .homeHero .wrap {
    position: relative;
    z-index: 1;
  }
  .homeHero-main {
    max-width: min(994px, 100%);
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 9px;
    padding: 88px 0 0;
  }
  @media (max-width: 768px) {
    .homeHero-main {
      padding: 0;
      gap: 6px;
    }
  }
  .homeHero-main-block {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .homeHero-main-block:first-child {
    align-self: flex-start;
  }
  @media (max-width: 768px) {
    .homeHero-main-block:first-child {
      align-self: center;
    }
  }
  .homeHero-main-block:first-child .homeHero-main-block-img {
    border-radius: 50%;
    width: clamp(90px, 9.72vw, 140px);
    margin-left: clamp(-32px, -3.47vw, -50px);
  }
  @media (max-width: 768px) {
    .homeHero-main-block:first-child .homeHero-main-block-img {
      width: 100px;
      transform: translateX(-7px);
      margin-left: 0;
    }
  }
  .homeHero-main-block:nth-child(2) {
    margin: 0 0 0 auto;
  }
  @media (max-width: 768px) {
    .homeHero-main-block:nth-child(2) {
      margin: 0 auto;
    }
  }
  .homeHero-main-block:nth-child(2) .homeHero-main-block-img {
    border-radius: 0;
    -webkit-mask-image: url("../img/top/slide2_01.png");
    mask-image: url("../img/top/slide2_01.png");
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    width: clamp(160px, 18.47vw, 266px);
  }
  @media (max-width: 768px) {
    .homeHero-main-block:nth-child(2) .homeHero-main-block-img {
      align-self: center;
      width: 146px;
      transform: translateX(-8px);
    }
  }
  .homeHero-main-block:last-child {
    align-self: end;
  }
  @media (max-width: 768px) {
    .homeHero-main-block:last-child {
      align-self: flex-end;
    }
  }
  .homeHero-main-block-text {
    font-weight: 500;
    line-height: 1.2;
    letter-spacing: 0.02em;
    font-size: clamp(56px, 7.78vw, 112px);
    color: #69C927;
    text-align: center;
  }
  @media (max-width: 768px) {
    .homeHero-main-block-text {
      font-size: 32px;
      letter-spacing: -0.05em;
      text-align: left;
    }
  }
  .homeHero-main-block-text .homeHero-char {
    display: inline-block;
    opacity: 0;
    transform: translateY(0.28em);
    transition: opacity 1.15s cubic-bezier(0.22, 1, 0.36, 1), transform 1.15s cubic-bezier(0.22, 1, 0.36, 1);
    transition-delay: calc(var(--home-hero-line, 0) * 0.38s + var(--i, 0) * 0.07s);
  }
  .homeHero-main-block-text.is-animated .homeHero-char {
    opacity: 1;
    transform: translateY(0);
  }
  @media (prefers-reduced-motion: reduce) {
    .homeHero-main-block-text .homeHero-char {
      opacity: 1;
      transform: none;
      transition: none;
    }
  }
  .homeHero-main-block-img {
    position: relative;
    display: block;
    flex-shrink: 0;
    overflow: hidden;
  }
  .homeHero-main-block-img img {
    display: block;
    width: 100%;
    height: auto;
    opacity: 0;
    transform: scale(1);
    transform-origin: center center;
    transition: opacity 1.4s ease-in-out;
    pointer-events: none;
    will-change: opacity, transform;
  }
  .homeHero-main-block-img img:first-child {
    position: relative;
  }
  .homeHero-main-block-img img:not(:first-child) {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .homeHero-main-block-img img.is-active {
    opacity: 1;
    animation: homeHeroZoom 2.8s ease-out forwards;
  }
  @keyframes homeHeroZoom {
    from {
      transform: scale(1);
    }
    to {
      transform: scale(1.12);
    }
  }
  @media (prefers-reduced-motion: reduce) {
    .homeHero-main-block-img img {
      transition: none;
      animation: none;
    }
    .homeHero-main-block-img img:not(.is-active) {
      display: none;
    }
  }
  .homeHero-middle-lead {
    padding-top: 77px;
    line-height: 1.8;
    letter-spacing: 0.05em;
  }
  @media (max-width: 768px) {
    .homeHero-middle-lead {
      padding-top: 108px;
      font-size: 14px;
      line-height: 1.6;
      letter-spacing: 0.05em;
    }
  }
  .homeHero-message {
    padding-top: 75px;
  }
  @media (max-width: 768px) {
    .homeHero-message {
      overflow: hidden;
      width: 100vw;
      margin: 0 calc(50% - 50vw);
    }
  }
  .homeHero-message-list {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    width: 100%;
    max-width: 1360px;
    margin-left: auto;
    margin-right: auto;
    gap: 0;
  }
  @media (max-width: 768px) {
    .homeHero-message-list {
      gap: 20px;
      width: calc(100vw - 16px);
      max-width: none;
      margin-left: calc(50% - 50vw + 8px);
      margin-right: 0;
    }
  }
  .homeHero-message-list-item {
    flex: 0 0 auto;
    white-space: nowrap;
    font-size: 14px;
    line-height: 1.2;
    font-weight: 400;
    letter-spacing: -0.05em;
  }
  @media (max-width: 768px) {
    .homeHero-message-list-item {
      width: max-content;
      font-size: 10px;
      line-height: 1.2;
      letter-spacing: -0.05em;
    }
  }
  .homeHero-message-main {
    display: flex;
    flex-direction: column;
    gap: 0;
    padding-top: 31px;
    overflow: hidden;
  }
  @media (min-width: 769px) {
    .homeHero-message-main {
      width: 100vw;
      margin-left: calc(50% - 50vw);
      margin-right: 0;
    }
  }
  .homeHero-message-main.is-marquee {
    display: block;
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: 0;
  }
  .homeHero-message-main-track {
    display: flex;
    width: max-content;
    will-change: transform;
    animation: homeHeroMarquee 48s linear infinite;
  }
  .homeHero-message-main-group {
    display: flex;
    flex-direction: column;
    flex-shrink: 0;
    padding-right: 0.4em;
  }
  .homeHero-message-main-text {
    display: block;
    font-family: "Helvetica Neue", "Arial", sans-serif;
    font-size: clamp(96px, 13.19vw, 190px);
    font-weight: 400;
    line-height: 1;
    font-family: var(--font-family-outfit);
    letter-spacing: -0.05em;
    color: #E9E9E9;
    white-space: nowrap;
  }
  @media (max-width: 768px) {
    .homeHero-message-main-text {
      font-size: 64px;
    }
  }
  .homeHero-message-main-text:last-child {
    transform: translate(0.12em, -0.04em);
  }
  @media (max-width: 768px) {
    .homeHero-message-main-text:last-child {
      transform: translate(0.08em, 0);
    }
  }
  @media (prefers-reduced-motion: reduce) {
    .homeHero-message-main-track {
      animation: none;
    }
  }
  @keyframes homeHeroMarquee {
    from {
      transform: translateX(0);
    }
    to {
      transform: translateX(-50%);
    }
  }
}
@layer pages {
  .homeReveal {
    opacity: 0;
    transform: translateY(24px);
    transition: opacity 0.9s cubic-bezier(0.22, 1, 0.36, 1), transform 0.9s cubic-bezier(0.22, 1, 0.36, 1);
    transition-delay: var(--reveal-delay, 0ms);
    will-change: opacity, transform;
  }
  .homeReveal.is-revealed {
    opacity: 1;
    transform: translateY(0);
  }
  @media (prefers-reduced-motion: reduce) {
    .homeReveal {
      opacity: 1;
      transform: none;
      transition: none;
    }
  }
}
@layer pages {
  .homeDoublemajor {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    padding: 160px 0 246px;
  }
  @media (max-width: 768px) {
    .homeDoublemajor {
      padding: 96px 0 124px;
    }
  }
  .homeDoublemajor-list {
    position: relative;
    z-index: 1;
    margin-left: -40px;
    padding-top: 80px;
  }
  @media (max-width: 768px) {
    .homeDoublemajor-list {
      max-width: 100%;
      margin: 0 auto;
      display: flex;
      flex-direction: column;
      gap: 48px;
      padding-top: 40px;
    }
  }
  .homeDoublemajor-list-item {
    margin: 0 auto;
  }
  @media (max-width: 768px) {
    .homeDoublemajor-list-item {
      margin: 0;
    }
  }
  .homeDoublemajor-list-item-link {
    display: inline-block;
    max-width: 100%;
    transform-origin: center center;
    transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1);
  }
  .homeDoublemajor-list-item-link img,
  .homeDoublemajor-list-item-link picture {
    display: block;
    width: 100%;
    height: auto;
  }
  @media (hover: hover) and (pointer: fine) {
    .homeDoublemajor-list-item-link:hover {
      transform: scale(1.1);
      opacity: 1;
    }
  }
  @media (min-width: 769px) {
    .homeDoublemajor-list-item:first-child {
      padding: 0 10px 0 0;
      width: min(1181px, 100vw - 40px);
      max-width: 100%;
      margin: 0 0 0 auto;
    }
  }
  @media (max-width: 768px) {
    .homeDoublemajor-list-item:first-child {
      width: min(92.8vw, 100%);
    }
  }
  @media (min-width: 769px) {
    .homeDoublemajor-list-item:last-child {
      width: min(784px, 100vw - 80px);
      max-width: 100%;
      margin: 0 auto 0 0;
    }
  }
  @media (max-width: 768px) {
    .homeDoublemajor-list-item:last-child {
      margin-left: 20px;
      width: min(84.8vw, 100%);
    }
  }
}
@layer pages {
  .homeColumn {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    padding: 120px 0 200px;
    z-index: 0;
    background-color: #69c927;
    background-image: url(../img/common/bg.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
  }
  @media (max-width: 768px) {
    .homeColumn {
      padding: 64px 0 96px;
    }
  }
  .homeColumn > .wrap {
    position: relative;
    z-index: 1;
  }
  .homeColumn .sectionHeaderTitle-en::before {
    background-color: #ffffff;
  }
  .homeColumn-header {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
  }
  .homeColumn-more {
    position: relative;
    display: inline-flex;
    align-items: center;
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 0.04em;
    border-bottom: 1px solid #111111;
    padding: 0 92px 24px 4px;
    transform-origin: center bottom;
    transition: color 0.2s, border-color 0.2s, transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.2s;
  }
  @media (max-width: 768px) {
    .homeColumn-more {
      left: 50%;
      transform: translateX(-50%);
      padding: 0 92px 20px 4px;
    }
  }
  @media (hover: hover) {
    .homeColumn-more:hover {
      opacity: 1;
      transform: scale(1.1);
    }
  }
  @media (max-width: 768px) and (hover: hover) {
    .homeColumn-more:hover {
      opacity: 1;
      transform: translateX(-50%) scale(1.1);
    }
  }
  .homeColumn-more::after {
    content: "";
    position: absolute;
    top: -10%;
    right: 0;
    width: 38px;
    height: 32px;
    background: url(../img/common/arrow_blk.png) no-repeat center center/cover;
  }
  .homeColumn-grid {
    display: grid;
    grid-template-columns: 1fr 580px;
    gap: 40px;
    margin-top: 80px;
  }
  @media (max-width: 768px) {
    .homeColumn-grid {
      display: flex;
      gap: 20px;
      margin: 32px -20px 48px;
      padding: 0 20px;
      overflow-x: auto;
      overflow-y: hidden;
      -webkit-overflow-scrolling: touch;
      scrollbar-width: none;
      -ms-overflow-style: none;
    }
    .homeColumn-grid::-webkit-scrollbar {
      display: none;
    }
  }
  .homeColumn-subList {
    display: flex;
    flex-direction: column;
    gap: 40px;
  }
  @media (max-width: 768px) {
    .homeColumn-subList {
      flex-direction: row;
      flex-shrink: 0;
      gap: 20px;
    }
  }
  .homeColumn-subList .homeColumn-card-body {
    padding: 0 0 0 28px;
  }
  @media (max-width: 768px) {
    .homeColumn-subList .homeColumn-card-body {
      padding: 16px 0 0 0;
    }
  }
  .homeColumn-subList .homeColumn-card-body-text {
    font-size: 16px;
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    line-clamp: 3;
    padding-bottom: 6px;
  }
  .homeColumn-card {
    transition: box-shadow 0.25s;
  }
  @media (max-width: 768px) {
    .homeColumn-card {
      flex-shrink: 0;
      width: 280px;
    }
  }
  .homeColumn-card-link {
    display: flex;
    flex-direction: column;
    height: 100%;
  }
  @media (hover: hover) {
    .homeColumn-card-link:hover {
      opacity: 1;
    }
    .homeColumn-card-link:hover .homeColumn-card-img img {
      transform: scale(1.1);
    }
    .homeColumn-card-link:hover .homeColumn-card-body-text .hover-underline {
      background-size: 100% 2px;
    }
  }
  .homeColumn-card-link--row {
    flex-direction: row;
    align-items: stretch;
  }
  @media (max-width: 768px) {
    .homeColumn-card-link--row {
      flex-direction: column;
    }
  }
  .homeColumn-card-link--row .homeColumn-card-img {
    width: 246px;
    aspect-ratio: 246/164;
  }
  @media (max-width: 768px) {
    .homeColumn-card-link--row .homeColumn-card-img {
      width: 100%;
      aspect-ratio: 844/474;
    }
  }
  .homeColumn-card-link--row .homeColumn-card-body {
    flex: 1;
    min-width: 0;
  }
  .homeColumn-card-img {
    flex-shrink: 0;
    overflow: hidden;
    width: 100%;
    max-width: 740px;
    aspect-ratio: 740/493;
  }
  @media (max-width: 768px) {
    .homeColumn-card-img {
      width: 100%;
      max-width: none;
      aspect-ratio: 844/474;
    }
  }
  .homeColumn-card-img img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transition: transform 0.4s;
  }
  .homeColumn-card-body {
    padding: 20px 0;
    display: flex;
    flex-direction: column;
    gap: 20px;
  }
  @media (max-width: 768px) {
    .homeColumn-card-body {
      padding: 16px 0 0;
      gap: 16px;
    }
  }
  .homeColumn-card-body-top {
    display: flex;
    align-items: center;
    gap: 12px;
  }
  @media (max-width: 768px) {
    .homeColumn-card-body-top {
      justify-content: space-between;
    }
  }
  .homeColumn-card-body-date {
    font-weight: 400;
    letter-spacing: 0.1em;
  }
  @media (max-width: 768px) {
    .homeColumn-card-body-date {
      font-size: 14px;
      line-height: 1;
    }
  }
  .homeColumn-card-body-cat {
    display: inline-block;
    font-size: 12px;
    padding: 8px 15px;
    border-radius: 2px;
    width: -moz-fit-content;
    width: fit-content;
    border: 1px solid #111111;
    border-radius: 90px;
  }
  @media (max-width: 768px) {
    .homeColumn-card-body-cat {
      font-size: 12px;
      padding: 8px 16px;
    }
  }
  .homeColumn-card-body-text {
    font-size: 24px;
    font-weight: 400;
    line-height: 1.6;
  }
  @media (max-width: 768px) {
    .homeColumn-card-body-text {
      font-size: 16px;
    }
  }
  .homeColumn-card--main .homeColumn-card-body {
    padding: 20px 0;
  }
  .homeColumn-card--main .homeColumn-card-img {
    aspect-ratio: 740/493;
    max-width: 740px;
  }
  @media (max-width: 768px) {
    .homeColumn-card--main .homeColumn-card-img {
      max-width: none;
      aspect-ratio: 844/474;
    }
  }
}
@layer pages {
  .homeAbout {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    padding: 120px 0 206px;
  }
  @media (max-width: 768px) {
    .homeAbout {
      padding: 64px 0 96px;
    }
  }
  .homeAbout .wrap {
    position: relative;
    z-index: 1;
  }
  .homeAbout-header {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
  }
  @media (max-width: 768px) {
    .homeAbout-header {
      flex-direction: column;
      align-items: flex-start;
    }
  }
  .homeAbout-list {
    display: grid;
    grid-template-columns: minmax(0, 740fr) 48px minmax(0, 540fr);
    grid-template-rows: auto auto;
    row-gap: 102px;
    align-items: start;
    margin-top: 80px;
  }
  @media (max-width: 768px) {
    .homeAbout-list {
      grid-template-columns: 1fr;
      row-gap: 40px;
      margin-top: 64px;
    }
  }
  .homeAbout-list-item {
    min-width: 0;
  }
  @media (max-width: 768px) {
    .homeAbout-list-item {
      width: 100%;
    }
  }
  .homeAbout-list-item:nth-child(1) {
    grid-column: 1;
    grid-row: 1;
    width: 100%;
    max-width: 740px;
  }
  @media (max-width: 768px) {
    .homeAbout-list-item:nth-child(1) {
      max-width: none;
    }
  }
  .homeAbout-list-item:nth-child(2) {
    grid-column: 3;
    grid-row: 1/-1;
    align-self: start;
    width: 100%;
    max-width: 540px;
    margin-top: 300px;
  }
  @media (max-width: 768px) {
    .homeAbout-list-item:nth-child(2) {
      max-width: none;
      grid-column: auto;
      grid-row: auto;
      margin-top: 0;
      padding-left: 75px;
    }
  }
  .homeAbout-list-item:nth-child(3) {
    grid-column: 1;
    grid-row: 2;
    width: 100%;
    max-width: 480px;
    margin: 0 48px 0 auto;
  }
  @media (max-width: 768px) {
    .homeAbout-list-item:nth-child(3) {
      max-width: none;
      grid-column: auto;
      grid-row: auto;
      padding-right: 75px;
    }
  }
  .homeAbout-list-item-link {
    display: block;
  }
  @media (hover: hover) {
    .homeAbout-list-item-link:hover {
      opacity: 1;
    }
    .homeAbout-list-item-link:hover .homeAbout-list-item-img img {
      transform: scale(1.1);
    }
    .homeAbout-list-item-link:hover .homeAbout-list-item-title .hover-underline,
    .homeAbout-list-item-link:hover .homeAbout-list-item-desc .hover-underline {
      background-size: 100% 2px;
    }
  }
  .homeAbout-list-item-img {
    overflow: hidden;
  }
  .homeAbout-list-item-img img {
    width: 100%;
    height: auto;
    display: block;
    transition: transform 0.4s;
  }
  .homeAbout-list-item-body {
    position: relative;
    padding-top: 24px;
    padding-right: 76px;
    display: flex;
    flex-direction: column;
    gap: 16px;
  }
  @media (max-width: 768px) {
    .homeAbout-list-item-body {
      padding-top: 12px;
      padding-right: 48px;
      gap: 8px;
    }
  }
  .homeAbout-list-item-body::after {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    width: 60px;
    height: 52px;
    background: url(../img/common/arrow_grn.png) no-repeat center center/cover;
  }
  @media (max-width: 768px) {
    .homeAbout-list-item-body::after {
      width: 32px;
      height: 26px;
    }
  }
  .homeAbout-list-item-title {
    font-size: 32px;
    line-height: 1.4;
  }
  @media (max-width: 768px) {
    .homeAbout-list-item-title {
      font-size: 24px;
      line-height: 1.6;
    }
  }
  .homeAbout-list-item-desc {
    font-size: 16px;
    line-height: 1.6;
    font-weight: 400;
  }
  @media (max-width: 768px) {
    .homeAbout-list-item-desc {
      font-size: 14px;
    }
  }
}
@layer pages {
  .homeInstagram {
    position: relative;
    padding: 120px 0 170px;
    background-color: #69c927;
    background-image: url(../img/common/bg.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    overflow: hidden;
    isolation: isolate;
    z-index: 0;
    margin-bottom: -1px;
  }
  @media (max-width: 768px) {
    .homeInstagram {
      padding: 64px 0 96px;
    }
  }
  .homeInstagram::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -1px;
    height: 2px;
    background-color: #69c927;
    z-index: 0;
    pointer-events: none;
  }
  .homeInstagram .wrap {
    position: relative;
    z-index: 1;
  }
  .homeInstagram .sectionHeaderTitle-en::before {
    background-color: #fff;
  }
  .homeInstagram-contents {
    position: relative;
    z-index: 1;
    max-width: 1440px;
    margin: 0 auto;
  }
  @media (max-width: 768px) {
    .homeInstagram-contents {
      max-width: 100%;
      margin-top: 64px;
      padding: 0 20px;
    }
  }
  .homeInstagram-contents-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 120px;
  }
  @media (max-width: 768px) {
    .homeInstagram-contents-list {
      grid-template-columns: 1fr;
      gap: 64px;
    }
  }
  @media (min-width: 769px) {
    .homeInstagram-contents-list-item:nth-child(1) {
      margin-top: -6px;
    }
    .homeInstagram-contents-list-item:nth-child(1) .homeInstagram-contents-list-item-body {
      padding-left: 20px;
    }
    .homeInstagram-contents-list-item:nth-child(2) {
      margin-top: 185px;
    }
    .homeInstagram-contents-list-item:nth-child(2) .homeInstagram-contents-list-item-body {
      margin: 0 auto 0 0;
      padding-right: 104px;
    }
    .homeInstagram-contents-list-item:nth-child(2) .homeInstagram-contents-list-item-body:after {
      right: 20px;
    }
  }
  @media (hover: hover) {
    .homeInstagram-contents-list-item:hover a {
      opacity: 1;
    }
    .homeInstagram-contents-list-item:hover .homeInstagram-contents-list-item-grid-box img,
    .homeInstagram-contents-list-item:hover .homeInstagram-contents-list-item-grid-feed .sbi_photo img {
      transform: scale(1.1);
    }
    .homeInstagram-contents-list-item:hover .homeInstagram-contents-list-item-body-title .hover-underline,
    .homeInstagram-contents-list-item:hover .homeInstagram-contents-list-item-body-text .hover-underline {
      background-size: 100% 2px;
    }
  }
  .homeInstagram-contents-list-item-grid-box {
    width: 100%;
    overflow: hidden;
  }
  .homeInstagram-contents-list-item-grid-box img {
    width: 100%;
    height: auto;
    display: block;
    transition: transform 0.4s;
  }
  .homeInstagram-contents-list-item-grid-feed {
    width: 100%;
  }
  .homeInstagram-contents-list-item-grid-feed #sb_instagram,
  .homeInstagram-contents-list-item-grid-feed .sbi {
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
  }
  .homeInstagram-contents-list-item-grid-feed #sbi_images,
  .homeInstagram-contents-list-item-grid-feed .sbi_images {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 4px !important;
    float: none !important;
    width: 100% !important;
  }
  .homeInstagram-contents-list-item-grid-feed .sbi_item {
    width: 100% !important;
    float: none !important;
    padding: 0 !important;
    margin: 0 !important;
    aspect-ratio: 1/1;
    overflow: hidden;
  }
  .homeInstagram-contents-list-item-grid-feed .sbi_photo,
  .homeInstagram-contents-list-item-grid-feed .sbi_photo_wrap,
  .homeInstagram-contents-list-item-grid-feed .sbi_imgLiquid_bgSize {
    width: 100% !important;
    height: 100% !important;
  }
  .homeInstagram-contents-list-item-grid-feed .sbi_photo img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover;
    transition: transform 0.4s;
  }
  .homeInstagram-contents-list-item-grid-feed .sbi_follow_btn,
  .homeInstagram-contents-list-item-grid-feed .sbi_load_btn,
  .homeInstagram-contents-list-item-grid-feed .sbi_header,
  .homeInstagram-contents-list-item-grid-feed #sbi_load {
    display: none !important;
  }
  .homeInstagram-contents-list-item-body {
    position: relative;
    display: block;
    padding: 40px 84px 0 0;
    max-width: 496px;
    margin: 0 0 0 auto;
    color: inherit;
    text-decoration: none;
  }
  @media (max-width: 768px) {
    .homeInstagram-contents-list-item-body {
      padding: 20px 48px 0 0;
      max-width: 100%;
      margin: 0;
    }
  }
  .homeInstagram-contents-list-item-body::after {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    width: 60px;
    height: 52px;
    background: url(../img/common/open_icon_blk.png) no-repeat center center/contain;
  }
  @media (max-width: 768px) {
    .homeInstagram-contents-list-item-body::after {
      width: 32px;
      height: 26px;
    }
  }
  .homeInstagram-contents-list-item-body-title {
    font-size: 32px;
    line-height: 1.6;
    margin-bottom: 16px;
  }
  @media (max-width: 768px) {
    .homeInstagram-contents-list-item-body-title {
      font-size: 24px;
    }
  }
  .homeInstagram-contents-list-item-body-text {
    line-height: 1.6;
    font-weight: 400;
  }
  @media (max-width: 768px) {
    .homeInstagram-contents-list-item-body-text {
      font-size: 14px;
    }
  }
}
@layer pages {
  .aboutFeatures {
    padding: 204px 0 148px;
  }
  @media (max-width: 768px) {
    .aboutFeatures {
      padding: 96px 0;
    }
  }
  @media (max-width: 768px) {
    .aboutFeatures .contentsDetail-other-header-title {
      font-size: 40px;
    }
  }
  .aboutFeatures-list {
    margin-top: 84px;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 32px;
  }
  @media (max-width: 768px) {
    .aboutFeatures-list {
      grid-template-columns: 1fr;
      gap: 38px;
      margin-top: 64px;
    }
  }
  .aboutFeatures-list-item {
    position: relative;
  }
  @media (min-width: 769px) {
    .aboutFeatures-list-item:not(:last-child) {
      border-right: 1px solid #D9D9D9;
      padding-right: 32px;
    }
  }
  @media (max-width: 768px) {
    .aboutFeatures-list-item:not(:last-child) {
      border-bottom: 1px solid #D9D9D9;
      padding-bottom: 38px;
    }
  }
  .aboutFeatures-list-item-header {
    display: flex;
    justify-content: space-between;
    margin-bottom: 24px;
  }
  .aboutFeatures-list-item-header-icon {
    width: 80px;
  }
  @media (max-width: 768px) {
    .aboutFeatures-list-item-header-icon {
      width: 64px;
    }
  }
  .aboutFeatures-list-item-header-title {
    position: absolute;
    top: 0;
    right: 32px;
    font-size: 20px;
    line-height: 1;
    font-weight: 400;
    writing-mode: vertical-rl;
    color: #69C927;
  }
  @media (max-width: 768px) {
    .aboutFeatures-list-item-header-title {
      top: -14px;
      right: 0;
    }
  }
  .aboutFeatures-list-item-title {
    font-size: 24px;
    margin-bottom: 40px;
  }
  @media (max-width: 768px) {
    .aboutFeatures-list-item-title {
      margin-bottom: 24px;
      line-height: 1.6;
    }
  }
  .aboutFeatures-list-item-text {
    font-weight: 400;
  }
  @media (max-width: 768px) {
    .aboutFeatures-list-item-text {
      font-size: 14px;
    }
  }
}
@layer pages {
  .aboutIntroduction {
    padding: 120px 0 160px;
    background-color: #F0F0F0;
  }
  @media (max-width: 768px) {
    .aboutIntroduction {
      padding: 64px 0 96px;
    }
  }
  .aboutIntroduction-list {
    position: relative;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 120px;
  }
  @media (max-width: 768px) {
    .aboutIntroduction-list {
      grid-template-columns: 1fr;
      gap: 108px;
    }
  }
  @media (min-width: 769px) {
    .aboutIntroduction-list::after {
      content: "";
      position: absolute;
      top: 0;
      left: 50%;
      transform: translateX(-50%);
      width: 1px;
      height: 100%;
      background-color: #D9D9D9;
    }
  }
  @media (min-width: 769px) {
    .aboutIntroduction-list-item {
      display: flex;
      flex-direction: column;
      height: 100%;
    }
  }
  .aboutIntroduction-list-item-header {
    display: flex;
    flex-direction: column;
    gap: 12px;
  }
  @media (max-width: 768px) {
    .aboutIntroduction-list-item-header {
      gap: 8px;
    }
  }
  .aboutIntroduction-list-item-header-title {
    font-size: 48px;
    line-height: 1.3;
    letter-spacing: -0.05em;
  }
  @media (min-width: 769px) {
    .aboutIntroduction-list-item-header-title {
      min-height: 2.6em;
    }
  }
  @media (max-width: 768px) {
    .aboutIntroduction-list-item-header-title {
      font-size: 32px;
    }
  }
  .aboutIntroduction-list-item-header-sub {
    position: relative;
    font-weight: 400;
    font-family: var(--font-family-outfit);
    line-height: 1;
    padding-left: 18px;
  }
  @media (max-width: 768px) {
    .aboutIntroduction-list-item-header-sub {
      font-size: 14px;
      padding-left: 16px;
    }
  }
  .aboutIntroduction-list-item-header-sub::before {
    content: "";
    position: absolute;
    top: 3px;
    left: 8px;
    width: 6px;
    height: 6px;
    background-color: #69C927;
  }
  @media (max-width: 768px) {
    .aboutIntroduction-list-item-header-sub::before {
      top: 2px;
      left: 4px;
      width: 4px;
      height: 4px;
    }
  }
  .aboutIntroduction-list-item-content {
    display: flex;
    justify-content: space-between;
    margin-top: 48px;
  }
  @media (min-width: 769px) {
    .aboutIntroduction-list-item-content {
      flex: 1;
      min-height: 0;
    }
  }
  @media (max-width: 768px) {
    .aboutIntroduction-list-item-content {
      display: grid;
      grid-template-columns: 1fr auto;
      grid-template-areas: "title title" "text num";
      column-gap: 0;
      row-gap: 24px;
      align-items: center;
    }
  }
  @media (min-width: 769px) {
    .aboutIntroduction-list-item-content-sentence {
      flex: 1;
      min-width: 0;
      line-height: 1.8;
    }
  }
  @media (max-width: 768px) {
    .aboutIntroduction-list-item-content-sentence {
      display: contents;
      line-height: 1.6;
    }
  }
  .aboutIntroduction-list-item-content-sentence-title {
    font-size: 32px;
    line-height: 1.4;
    margin-bottom: 24px;
  }
  @media (min-width: 769px) {
    .aboutIntroduction-list-item-content-sentence-title {
      min-height: 4.2em;
    }
  }
  @media (max-width: 768px) {
    .aboutIntroduction-list-item-content-sentence-title {
      grid-area: title;
      font-size: 24px;
      margin-bottom: 0;
    }
  }
  .aboutIntroduction-list-item-content-sentence-text {
    font-weight: 400;
  }
  @media (max-width: 768px) {
    .aboutIntroduction-list-item-content-sentence-text {
      grid-area: text;
      font-size: 16px;
      line-height: 1.6;
    }
  }
  .aboutIntroduction-list-item-content-num {
    width: 236px;
    transform: translateY(-20px);
  }
  @media (max-width: 768px) {
    .aboutIntroduction-list-item-content-num {
      width: 109px;
      transform: none;
    }
  }
  @media (min-width: 769px) {
    .aboutIntroduction-list-item-fields {
      display: flex;
      flex-direction: column;
      min-height: 0;
      margin-top: 33px;
    }
  }
  @media (max-width: 768px) {
    .aboutIntroduction-list-item-fields {
      margin-top: 40px;
    }
  }
  .aboutIntroduction-list-item-fields-row {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    padding: 16px 8px 32px;
    border-top: 1px solid #D9D9D9;
  }
  @media (min-width: 769px) {
    .aboutIntroduction-list-item-fields-row {
      flex: 1;
      align-content: flex-start;
    }
  }
  @media (max-width: 768px) {
    .aboutIntroduction-list-item-fields-row {
      gap: 12px;
      padding: 12px 8px 24px;
      column-gap: 20px;
    }
  }
  .aboutIntroduction-list-item-fields-row-icon {
    width: 32px;
  }
  @media (max-width: 768px) {
    .aboutIntroduction-list-item-fields-row-icon {
      width: 24px;
    }
  }
  .aboutIntroduction-list-item-fields-row-title {
    width: 270px;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.5;
  }
  @media (min-width: 769px) {
    .aboutIntroduction-list-item-fields-row-title {
      flex: 1;
      min-width: 270px;
      min-height: 3em;
    }
  }
  @media (max-width: 768px) {
    .aboutIntroduction-list-item-fields-row-title {
      flex: 1;
      width: auto;
      min-width: 0;
      font-size: 16px;
    }
  }
  .aboutIntroduction-list-item-fields-row-text {
    width: 218px;
    font-size: 14px;
    font-weight: 400;
  }
  @media (max-width: 768px) {
    .aboutIntroduction-list-item-fields-row-text {
      flex-basis: 100%;
      width: 100%;
      padding-left: 44px;
    }
  }
  .aboutIntroduction .btn-more {
    display: flex;
    margin: 48px 0 0 auto;
  }
  @media (max-width: 768px) {
    .aboutIntroduction .btn-more {
      margin: 40px auto 0;
    }
  }
}
@layer pages {
  .aboutPageHero {
    position: relative;
    overflow-x: clip;
  }
  .aboutPageHero-header {
    min-width: 0;
  }
  @media (max-width: 768px) {
    .aboutPageHero-header {
      position: relative;
    }
  }
  .aboutPageHero-header-top {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: clamp(24px, 3vw, 40px);
  }
  .aboutPageHero-header-body {
    min-width: 0;
  }
  @media (min-width: 769px) {
    .aboutPageHero-header-body {
      display: grid;
      grid-template-columns: minmax(0, 647fr) minmax(0, 670fr);
      column-gap: clamp(24px, 3vw, 40px);
      align-items: flex-start;
      padding-top: 64px;
    }
  }
  @media (max-width: 768px) {
    .aboutPageHero-header-body {
      display: flex;
      flex-direction: column;
    }
  }
  .aboutPageHero-header-title {
    min-width: 0;
    padding-top: 140px;
    font-size: clamp(40px, 5.56vw, 80px);
    line-height: 1.2;
  }
  @media (max-width: 768px) {
    .aboutPageHero-header-title {
      padding-top: 74px;
      font-size: 40px;
    }
  }
  @media (min-width: 769px) {
    .aboutPageHero-header-title--wide {
      width: max-content;
      max-width: none;
    }
  }
  .aboutPageHero-header-side {
    flex-shrink: 0;
    writing-mode: vertical-rl;
    font-size: clamp(20px, 2.22vw, 32px);
    line-height: 1;
    font-weight: 400;
  }
  @media (min-width: 769px) {
    .aboutPageHero-header-side {
      position: absolute;
      right: 40px;
      top: -40px;
    }
  }
  @media (max-width: 768px) {
    .aboutPageHero-header-side {
      position: absolute;
      right: 0;
      top: -40px;
      font-size: 20px;
    }
  }
  .aboutPageHero-header-desc {
    min-width: 0;
    line-height: 1.8;
    letter-spacing: 0.05em;
  }
  @media (max-width: 768px) {
    .aboutPageHero-header-desc {
      padding: 48px 0 24px;
      font-size: 14px;
    }
  }
  @media (min-width: 769px) {
    .aboutPageHero-header-img {
      width: 100%;
      max-width: 670px;
      min-width: 0;
      justify-self: end;
      padding-top: 10px;
    }
  }
  @media (max-width: 768px) {
    .aboutPageHero-header-img {
      width: 271px;
      margin: 0 0 0 auto;
    }
  }
  .aboutPageHero-header-img img {
    display: block;
    width: 100%;
    height: auto;
  }
  @media (min-width: 769px) {
    .aboutPageHero.design .aboutPageHero-header-body {
      padding-top: 18px;
    }
  }
  @media (min-width: 769px) {
    .aboutPageHero.design .aboutPageHero-header-desc {
      padding-top: 46px;
    }
  }
  @media (min-width: 769px) {
    .aboutPageHero.design .aboutPageHero-header-img {
      padding: 0;
    }
  }
}
@layer pages {
  .aboutFlex {
    display: grid;
    column-gap: 96px;
    align-items: start;
    min-width: 0;
  }
  @media (max-width: 768px) {
    .aboutFlex {
      grid-template-columns: 1fr;
    }
  }
  @media (min-width: 769px) {
    .aboutFlex {
      padding-top: 160px;
      grid-template-columns: 216px minmax(0, 1fr);
    }
  }
  @media (min-width: 769px) {
    .aboutFlex-body {
      display: contents;
    }
    .aboutFlex-sideMenu {
      grid-column: 1;
      grid-row: 1/-1;
      background-color: #ffffff;
    }
    .aboutFlex-body > :not(.aboutQualification, .aboutFeaturedCourses, .aboutProject, .aboutStudyProgram, .aboutInstagramLog) {
      grid-column: 2;
    }
  }
  .aboutFlex-sideMenu {
    position: sticky;
    background-color: transparent;
    height: -moz-fit-content;
    height: fit-content;
    top: 130px;
    z-index: 3;
  }
  @media (min-width: 769px) {
    .aboutFlex-sideMenu {
      width: 216px;
      min-width: 216px;
      max-width: 216px;
    }
  }
  @media (max-width: 768px) {
    .aboutFlex-sideMenu {
      min-width: 0;
      position: fixed;
      top: initial;
      bottom: 0;
      left: 0;
      width: 100%;
      background-color: #fff;
      z-index: 50;
      box-shadow: 0 -1px 0 #D9D9D9, 0 -4px 10px rgba(0, 0, 0, 0.08);
    }
  }
  .aboutFlex-sideMenu-title {
    color: #69C927;
    font-size: 24px;
    font-family: var(--font-family-outfit);
    line-height: 1;
    font-weight: 400;
    letter-spacing: -0.05em;
  }
  @media (max-width: 768px) {
    .aboutFlex-sideMenu-title {
      display: none;
    }
  }
  .aboutFlex-sideMenu-title.is-over-project {
    color: #BFF0B1;
  }
  .aboutFlex-sideMenu-list {
    padding: 32px 0 0;
    display: flex;
    flex-direction: column;
    gap: 24px;
  }
  @media (max-width: 768px) {
    .aboutFlex-sideMenu-list {
      flex-direction: row;
      flex-wrap: nowrap;
      padding: 0 20px;
      gap: 0;
      overflow-x: auto;
      overflow-y: hidden;
      -webkit-overflow-scrolling: touch;
      scrollbar-width: none;
      -ms-overflow-style: none;
    }
    .aboutFlex-sideMenu-list::-webkit-scrollbar {
      display: none;
    }
  }
  @media (min-width: 769px) {
    .aboutFlex-sideMenu-list-item {
      position: relative;
      border-bottom: 1px solid #D9D9D9;
    }
    .aboutFlex-sideMenu-list-item::after {
      content: "";
      position: absolute;
      bottom: 14px;
      right: 0;
      width: 23px;
      height: 16px;
      background-image: url(../img/common/arrow_blk02.png);
      background-size: contain;
      background-repeat: no-repeat;
      background-position: center center;
    }
  }
  @media (max-width: 768px) {
    .aboutFlex-sideMenu-list-item {
      flex-shrink: 0;
      width: fit-content;
      height: 56px;
    }
  }
  .aboutFlex-sideMenu-list-item-link {
    display: inline-block;
    width: 100%;
    height: 100%;
    font-size: 14px;
    line-height: 1.4;
    padding: 0 4px 12px;
    transition: color 0.2s;
  }
  @media (max-width: 768px) {
    .aboutFlex-sideMenu-list-item-link {
      width: fit-content;
      height: fit-content;
      font-size: 12px;
      line-height: 1;
      display: flex;
      align-items: center;
      justify-content: center;
      padding: 22px 12px;
    }
  }
  @media (hover: hover) {
    .aboutFlex-sideMenu-list-item-link:hover {
      color: #69C927;
      opacity: 1;
    }
  }
  .aboutFlex-sideMenu-list-item-link.active {
    color: #69C927;
    opacity: 1;
  }
  @media (max-width: 768px) {
    .aboutFlex-sideMenu-list-item-link.active {
      border-top: 2px solid #69C927;
    }
  }
  .aboutFlex-sideMenu-list-item-link.is-over-project, .aboutFlex-sideMenu-list-item-link.active.is-over-project {
    color: #BFF0B1;
  }
  @media (min-width: 769px) and (hover: hover) {
    .aboutFlex-sideMenu-list-item-link.is-over-project:hover {
      color: #BFF0B1;
      opacity: 1;
    }
  }
  .aboutFlex-sideMenu-mark {
    writing-mode: vertical-rl;
    font-size: 20px;
    line-height: 1;
    font-weight: 400;
    color: #69C927;
  }
  @media (max-width: 768px) {
    .aboutFlex-sideMenu-mark {
      display: none;
    }
  }
  .aboutFlex-sideMenu-mark.is-over-project {
    color: #BFF0B1;
  }
  .aboutFlex-body {
    width: 100%;
    min-width: 0;
  }
  @media (max-width: 768px) {
    .aboutFlex-body {
      padding: 96px 0 0;
    }
  }
  #Vision, #Qualification, #Steps, #Project, #StudyProgram, #LearningProgram, #Faculty, #InstagramLog, #FeaturedCourses {
    scroll-margin-top: 120px;
  }
  @media (max-width: 768px) {
    #Vision, #Qualification, #Steps, #Project, #StudyProgram, #LearningProgram, #Faculty, #InstagramLog, #FeaturedCourses {
      scroll-margin-top: 60px;
    }
  }
}
@layer pages {
  .aboutVision {
    padding-bottom: 160px;
  }
  @media (max-width: 768px) {
    .aboutVision {
      padding-bottom: 96px;
    }
  }
  .aboutVision-list {
    padding-top: 80px;
    display: flex;
    flex-direction: column;
    gap: 64px;
  }
  @media (max-width: 768px) {
    .aboutVision-list {
      padding-top: 64px;
      gap: 56px;
    }
  }
  .aboutVision-list-item {
    display: grid;
    grid-template-columns: clamp(160px, 19.44vw, 280px) minmax(0, 1fr);
    gap: clamp(24px, 3.5vw, 48px);
    padding-top: 48px;
    border-top: 1px solid #D9D9D9;
  }
  @media (max-width: 768px) {
    .aboutVision-list-item {
      grid-template-columns: 1fr;
      gap: 24px;
      padding-top: 33px;
    }
  }
  .aboutVision-list-item-img {
    min-width: 0;
    width: 100%;
  }
  .aboutVision-list-item-img img {
    display: block;
    width: 100%;
    height: auto;
  }
  @media (max-width: 768px) {
    .aboutVision-list-item-img {
      height: 335px;
    }
    .aboutVision-list-item-img img {
      object-fit: cover;
      height: 100%;
    }
  }
  .aboutVision-list-item-body {
    position: relative;
    min-width: 0;
    overflow-x: clip;
    padding-top: 51px;
  }
  @media (max-width: 768px) {
    .aboutVision-list-item-body {
      padding-top: 0;
    }
  }
  .aboutVision-list-item-body-sub {
    display: block;
    font-size: 24px;
    padding-bottom: 16px;
  }
  @media (max-width: 768px) {
    .aboutVision-list-item-body-sub {
      font-size: 18px;
      padding-bottom: 12px;
    }
  }
  .aboutVision-list-item-body-title {
    font-size: clamp(32px, 3.89vw, 56px);
    line-height: 1;
    padding-bottom: 96px;
  }
  @media (max-width: 768px) {
    .aboutVision-list-item-body-title {
      font-size: 28px;
      padding-bottom: 24px;
    }
  }
  @media (max-width: 768px) {
    .aboutVision-list-item-body-text {
      font-size: 14px;
      margin-right: 44px;
    }
  }
  .aboutVision-list-item-body-side {
    position: absolute;
    top: -12px;
    right: 0;
    font-size: 24px;
    color: #69C927;
    line-height: 1;
    font-weight: 400;
    writing-mode: vertical-rl;
  }
  @media (max-width: 768px) {
    .aboutVision-list-item-body-side {
      font-size: 20px;
      top: -14px;
    }
  }
}
@layer pages {
  .aboutQualification {
    position: relative;
    isolation: isolate;
    padding: 120px 0 160px;
  }
  @media (max-width: 768px) {
    .aboutQualification .pc {
      display: none;
    }
  }
  @media (min-width: 769px) {
    .aboutQualification .sp {
      display: none;
    }
  }
  @media (min-width: 769px) {
    .aboutQualification {
      grid-column: 1/-1;
      display: grid;
      grid-template-columns: 216px 1fr;
      gap: 96px;
    }
  }
  @media (max-width: 768px) {
    .aboutQualification {
      padding: 64px 0 96px;
    }
  }
  .aboutQualification::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    z-index: -1;
    pointer-events: none;
    left: calc(50% - 50vw);
    width: 100vw;
    background-color: #F0F0F0;
  }
  .aboutQualification-inner {
    position: relative;
    z-index: 1;
    max-width: 1048px;
    width: 100%;
    min-width: 0;
    margin: 0 auto;
  }
  @media (min-width: 769px) {
    .aboutQualification-inner {
      grid-column: 2;
      margin: 0;
    }
  }
  .aboutQualification-inner-body {
    display: flex;
    justify-content: space-between;
    padding-top: 48px;
  }
  @media (min-width: 769px) {
    .aboutQualification-inner-body {
      gap: clamp(20px, 2.78vw, 40px);
      min-width: 0;
      align-items: flex-start;
    }
  }
  @media (max-width: 768px) {
    .aboutQualification-inner-body {
      flex-direction: column;
      padding-top: 32px;
    }
  }
  .aboutQualification-inner-body-intro {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 160px;
  }
  @media (min-width: 769px) {
    .aboutQualification-inner-body-intro {
      flex: 0 1 auto;
      min-width: 0;
      max-width: min(420px, 42%);
      gap: clamp(80px, 11.1vw, 160px);
    }
  }
  .aboutQualification-inner-body-list {
    display: grid;
    grid-template-rows: repeat(5, auto);
    grid-auto-flow: column;
  }
  @media (min-width: 769px) {
    .aboutQualification-inner-body-list {
      flex: 1 1 0;
      min-width: 0;
      max-width: min(626px, 100%);
      width: 100%;
      grid-template-columns: minmax(0, 240fr) minmax(0, 354fr);
      column-gap: clamp(16px, 2.22vw, 32px);
    }
  }
  @media (max-width: 768px) {
    .aboutQualification-inner-body-list {
      width: 100%;
      padding-top: 48px;
      grid-template-columns: 1fr;
      grid-template-rows: none;
      grid-auto-flow: row;
      column-gap: 0;
    }
  }
  .aboutQualification-inner-body-list-item {
    line-height: 1;
    border-bottom: 1px solid #D9D9D9;
    padding: 20px 0;
  }
  @media (max-width: 768px) {
    .aboutQualification-inner-body-list-item {
      padding: 16px 0 17px 4px;
      font-size: 14px;
    }
  }
  .aboutQualification .contentsDetail-other-header-desc {
    padding-top: 0;
  }
  .aboutQualification .btn-more {
    margin: 0;
    padding: 12px clamp(40px, 4.44vw, 64px) 24px 4px;
    font-size: clamp(12px, 1.11vw, 16px);
  }
  @media (min-width: 769px) {
    .aboutQualification .btn-more {
      white-space: nowrap;
    }
  }
  @media (max-width: 768px) {
    .aboutQualification .btn-more {
      margin: 48px auto 0;
      font-size: 16px;
      padding: 12px 64px 24px 4px;
    }
  }
  @media (min-width: 769px) {
    .aboutQualification .btn-more::after {
      width: clamp(28px, 2.64vw, 38px);
      height: clamp(24px, 2.22vw, 32px);
      bottom: clamp(14px, 1.39vw, 20px);
    }
  }
}
@layer pages {
  .aboutSteps {
    padding: 120px 0 160px;
  }
  @media (max-width: 768px) {
    .aboutSteps {
      padding: 64px 0 96px;
    }
  }
  .aboutSteps-detail {
    margin-top: 80px;
  }
  @media (max-width: 768px) {
    .aboutSteps-detail {
      margin-top: 64px;
    }
  }
  .aboutSteps-detail-title {
    font-size: 40px;
    line-height: 1;
    color: #69C927;
    margin-bottom: 32px;
  }
  @media (max-width: 768px) {
    .aboutSteps-detail-title {
      font-size: 28px;
      line-height: 1.4;
    }
  }
  .aboutSteps-detail-text {
    font-weight: 400;
    line-height: 1.8;
  }
  @media (max-width: 768px) {
    .aboutSteps-detail-text {
      font-size: 14px;
      line-height: 1.6;
    }
  }
  .aboutSteps-detail-body {
    margin-top: 32px;
    display: flex;
    justify-content: space-between;
  }
  @media (max-width: 768px) {
    .aboutSteps-detail-body {
      margin-top: 64px;
      flex-direction: column-reverse;
    }
  }
  .aboutSteps-detail-body-list {
    padding-top: 57px;
    display: flex;
    flex-direction: column;
    gap: 24px;
  }
  @media (max-width: 768px) {
    .aboutSteps-detail-body-list {
      padding-top: 29px;
    }
  }
  .aboutSteps-detail-body-list-item-title {
    position: relative;
    line-height: 1;
    padding-left: 14px;
    margin-bottom: 12px;
  }
  .aboutSteps-detail-body-list-item-title::before {
    content: "";
    position: absolute;
    top: 3px;
    left: 4px;
    width: 6px;
    height: 6px;
    background-color: #69C927;
  }
  .aboutSteps-detail-body-list-item-list {
    border: 1px solid #D9D9D9;
    padding: 20px;
    display: flex;
    flex-direction: column;
    gap: 8px;
  }
  .aboutSteps-detail-body-list-item-list-item {
    position: relative;
    line-height: 1;
    font-size: 14px;
    padding-left: 12px;
  }
  .aboutSteps-detail-body-list-item-list-item::before {
    content: "";
    position: absolute;
    top: 5px;
    left: 0;
    width: 4px;
    height: 4px;
    background-color: #69C927;
  }
  .aboutSteps-detail-img {
    max-width: 700px;
  }
  .aboutSteps-content {
    padding-top: 120px;
  }
  @media (max-width: 768px) {
    .aboutSteps-content {
      padding-top: 64px;
    }
  }
  .aboutSteps-content-block:not(:last-child) {
    margin-bottom: 32px;
  }
  @media (max-width: 768px) {
    .aboutSteps-content-block:not(:last-child) {
      margin-bottom: 64px;
    }
  }
  .aboutSteps-content-block-subtitle {
    position: relative;
    font-size: clamp(36px, 4.44vw, 64px);
    font-weight: 400;
    line-height: 1;
    color: #69C927;
    font-family: var(--font-family-outfit);
    margin: 0 32px 0 0;
  }
  @media (max-width: 768px) {
    .aboutSteps-content-block-subtitle {
      display: block;
      width: 100%;
      font-size: 48px;
    }
  }
  .aboutSteps-content-block-subtitle::after {
    content: "";
    background-color: #D9D9D9;
    position: absolute;
    bottom: 20px;
    width: min(923px, 100vw - 200px);
    height: 1px;
    left: clamp(80px, 8.68vw, 125px);
  }
  @media (max-width: 768px) {
    .aboutSteps-content-block-subtitle::after {
      left: 107px;
      width: calc(100% - 107px);
    }
  }
  .aboutSteps-content-block-subtitle-annual {
    font-size: 24px;
    line-height: 1.6;
    padding-left: 6px;
    font-weight: 500;
    font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic Medium", sans-serif;
  }
  @media (max-width: 768px) {
    .aboutSteps-content-block-subtitle-annual {
      font-size: 20px;
    }
  }
  .aboutSteps-content-block-body {
    display: flex;
    justify-content: space-between;
    margin-top: 24px;
  }
  @media (max-width: 768px) {
    .aboutSteps-content-block-body {
      flex-direction: column;
      gap: 48px;
      margin-top: 20px;
    }
  }
  .aboutSteps-content-block-intro-title {
    font-size: 32px;
    line-height: 1.4;
    margin-bottom: 24px;
  }
  @media (max-width: 768px) {
    .aboutSteps-content-block-intro-title {
      font-size: 24px;
      margin-bottom: 20px;
    }
  }
  .aboutSteps-content-block-intro-text {
    font-weight: 400;
  }
  @media (max-width: 768px) {
    .aboutSteps-content-block-intro-text {
      font-size: 14px;
      line-height: 1.6;
    }
  }
  .aboutSteps-content-block-intro-img {
    margin-top: 48px;
  }
  @media (max-width: 768px) {
    .aboutSteps-content-block-intro-img {
      margin: 32px auto 0;
      width: 100%;
    }
    .aboutSteps-content-block-intro-img img {
      width: 100%;
    }
  }
  .aboutSteps-content-block-subjects {
    width: 536px;
  }
  @media (max-width: 768px) {
    .aboutSteps-content-block-subjects {
      width: 100%;
    }
  }
  .aboutSteps-content-block-subjects-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
  }
  @media (max-width: 768px) {
    .aboutSteps-content-block-subjects-list {
      gap: 8px;
    }
  }
  .aboutSteps-content-block-subjects-list-item {
    background-color: #F7F7F7;
    padding: 20px 24px 24px;
    display: flex;
    justify-content: space-between;
  }
  @media (max-width: 768px) {
    .aboutSteps-content-block-subjects-list-item {
      padding: 20px;
      flex-direction: column;
      gap: 8px;
    }
  }
  .aboutSteps-content-block-subjects-list-item-title {
    position: relative;
    line-height: 1;
    padding-left: 14px;
  }
  @media (max-width: 768px) {
    .aboutSteps-content-block-subjects-list-item-title {
      font-size: 14px;
    }
  }
  .aboutSteps-content-block-subjects-list-item-title::before {
    content: "";
    position: absolute;
    top: 2px;
    left: 0;
    width: 6px;
    height: 6px;
    background-color: #69C927;
  }
  .aboutSteps-content-block-subjects-list-item-text {
    font-weight: 400;
    width: 298px;
  }
  @media (max-width: 768px) {
    .aboutSteps-content-block-subjects-list-item-text {
      width: 100%;
      font-size: 14px;
    }
  }
  @media (min-width: 769px) {
    .aboutSteps-content-block:last-child .aboutSteps-content-block-intro-img {
      width: 213px;
    }
    .aboutSteps-content-block:last-child .aboutSteps-content-block-intro-img img {
      width: 213px;
      height: 213px;
      object-fit: cover;
    }
  }
  @media (max-width: 768px) {
    .aboutSteps-content-block:last-child .aboutSteps-content-block-intro-img {
      width: 223px;
      margin: 32px auto 0 0;
    }
  }
}
@layer pages {
  .aboutFeaturedCourses {
    position: relative;
    isolation: isolate;
    padding: 120px 0 160px;
  }
  @media (min-width: 769px) {
    .aboutFeaturedCourses {
      grid-column: 1/-1;
      display: grid;
      grid-template-columns: 216px 1fr;
      gap: 96px;
      row-gap: 66px;
    }
    .aboutFeaturedCourses > * {
      grid-column: 2;
      position: relative;
      z-index: 1;
    }
  }
  @media (max-width: 768px) {
    .aboutFeaturedCourses {
      padding: 64px 0 96px;
    }
  }
  .aboutFeaturedCourses::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    z-index: -1;
    pointer-events: none;
    left: calc(50% - 50vw);
    width: 100vw;
    background-color: #F0F0F0;
  }
  .aboutFeaturedCourses-content {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
  }
  @media (max-width: 768px) {
    .aboutFeaturedCourses-content {
      grid-template-columns: 1fr;
      gap: 24px;
      margin-top: 64px;
    }
  }
  .aboutFeaturedCourses-content-block {
    border: 1px solid #D9D9D9;
    padding: 32px;
  }
  @media (max-width: 768px) {
    .aboutFeaturedCourses-content-block {
      padding: 32px 20px 32px;
    }
  }
  .aboutFeaturedCourses-content-block-sub {
    position: relative;
    font-size: 14px;
    line-height: 1;
    color: #69C927;
    padding: 0 18px;
    margin-bottom: 16px;
  }
  .aboutFeaturedCourses-content-block-sub::before {
    content: "（";
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    color: #69C927;
    font-size: 14px;
    line-height: 1;
  }
  .aboutFeaturedCourses-content-block-sub::after {
    content: "）";
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    color: #69C927;
    font-size: 14px;
    line-height: 1;
  }
  .aboutFeaturedCourses-content-block-title {
    font-size: 32px;
    line-height: 1.4;
    margin: 16px 0 32px;
    letter-spacing: -0.05em;
  }
  @media (max-width: 768px) {
    .aboutFeaturedCourses-content-block-title {
      font-size: 24px;
      margin: 12px 0 24px;
    }
  }
  .aboutFeaturedCourses-content-block-text {
    font-weight: 400;
  }
  @media (max-width: 768px) {
    .aboutFeaturedCourses-content-block-text {
      font-size: 14px;
      line-height: 1.6;
    }
  }
  .aboutFeaturedCourses-content-block-start {
    position: relative;
    font-size: 24px;
    line-height: 1;
    margin: 48px 0 20px;
    display: block;
    padding-left: 16px;
  }
  @media (max-width: 768px) {
    .aboutFeaturedCourses-content-block-start {
      font-size: 18px;
      margin: 32px 0 12px;
    }
  }
  .aboutFeaturedCourses-content-block-start:before {
    content: "";
    position: absolute;
    top: 3px;
    left: 0;
    width: 8px;
    height: 8px;
    background-color: #69C927;
  }
  .aboutFeaturedCourses-content-block-list {
    display: flex;
    flex-direction: column;
    gap: 4px;
  }
  @media (max-width: 768px) {
    .aboutFeaturedCourses-content-block-list {
      gap: 2px;
    }
  }
  .aboutFeaturedCourses-content-block-list-item {
    line-height: 1.8;
    font-weight: 400;
    list-style: disc;
    list-style-position: inside;
    text-indent: -1.5rem;
    padding-left: 1.5rem;
  }
  @media (max-width: 768px) {
    .aboutFeaturedCourses-content-block-list-item {
      text-indent: -1rem;
      padding-left: 1rem;
      font-size: 14px;
    }
  }
}
@layer pages {
  .aboutProject {
    position: relative;
    isolation: isolate;
    padding: 120px 0 160px;
  }
  @media (max-width: 768px) {
    .aboutProject {
      padding: 64px 0 96px;
    }
  }
  @media (min-width: 769px) {
    .aboutProject {
      grid-column: 1/-1;
      display: grid;
      grid-template-columns: 216px 1fr;
      gap: 96px;
      row-gap: 80px;
    }
    .aboutProject > * {
      grid-column: 2;
      position: relative;
      z-index: 1;
    }
  }
  .aboutProject::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    z-index: -1;
    pointer-events: none;
    left: calc(50% - 50vw);
    width: 100vw;
    background-color: #69c927;
    background-image: url(../img/common/bg.png);
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
  }
  .aboutProject .contentsDetail-other-header-desc {
    padding-top: 48px;
  }
  @media (max-width: 768px) {
    .aboutProject .contentsDetail-other-header-desc {
      padding-top: 24px;
      font-size: 14px;
    }
  }
  .aboutProject .contentsDetail-other-header-sub::before {
    background-color: #fff;
  }
  .aboutProject-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 80px;
    row-gap: 64px;
  }
  @media (max-width: 768px) {
    .aboutProject-list {
      grid-template-columns: 1fr;
      margin-top: 64px;
      row-gap: 56px;
    }
  }
  .aboutProject-list-item {
    padding-left: 32px;
  }
  @media (max-width: 768px) {
    .aboutProject-list-item {
      padding-left: 0;
    }
  }
  .aboutProject-list-item:not(:last-child) {
    border-left: 1px solid #519E1D;
  }
  @media (max-width: 768px) {
    .aboutProject-list-item:not(:last-child) {
      border-left: none;
      border-top: 1px solid #519E1D;
      padding-top: 32px;
    }
  }
  .aboutProject-list-item:last-child {
    display: flex;
    justify-content: flex-end;
    align-items: flex-end;
  }
  @media (max-width: 768px) {
    .aboutProject-list-item:last-child {
      justify-content: center;
      align-items: center;
      margin: 8px auto 0;
    }
  }
  .aboutProject-list-item-img {
    max-width: 340px;
  }
  @media (max-width: 768px) {
    .aboutProject-list-item-img {
      max-width: 100%;
    }
  }
  .aboutProject-list-item-img img {
    margin: 0 auto;
  }
  .aboutProject-list-item-title {
    font-size: 32px;
    line-height: 1.4;
    padding: 24px 0 20px;
  }
  @media (max-width: 768px) {
    .aboutProject-list-item-title {
      font-size: 24px;
      padding: 20px 0 16px;
    }
  }
  .aboutProject-list-item-text {
    font-weight: 400;
  }
  @media (max-width: 768px) {
    .aboutProject-list-item-text {
      font-size: 14px;
    }
  }
}
@layer pages {
  .aboutInstagramLog {
    position: relative;
    isolation: isolate;
    padding: 120px 0 160px;
  }
  @media (min-width: 769px) {
    .aboutInstagramLog {
      grid-column: 1/-1;
      display: grid;
      grid-template-columns: 216px 1fr;
      gap: 96px;
      row-gap: 80px;
    }
    .aboutInstagramLog > * {
      grid-column: 2;
      position: relative;
      z-index: 1;
    }
  }
  @media (max-width: 768px) {
    .aboutInstagramLog {
      padding: 64px 0 96px;
    }
  }
  .aboutInstagramLog::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    z-index: -1;
    pointer-events: none;
    left: calc(50% - 50vw);
    width: 100vw;
    background-color: #F0F0F0;
  }
  @media (max-width: 768px) {
    .aboutInstagramLog-content {
      margin-top: 64px;
    }
  }
  .aboutInstagramLog-content-title {
    font-size: 32px;
    line-height: 1;
    margin-bottom: 32px;
  }
  @media (max-width: 768px) {
    .aboutInstagramLog-content-title {
      font-size: 24px;
    }
  }
  .aboutInstagramLog-content-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 48px;
    row-gap: 32px;
  }
  @media (max-width: 768px) {
    .aboutInstagramLog-content-list {
      grid-template-columns: 1fr;
      row-gap: 20px;
    }
  }
  .aboutInstagramLog-content-list-item-link {
    position: relative;
    display: inline-block;
    width: 100%;
    font-size: 18px;
    line-height: 1.6;
    border-bottom: 1px solid #111;
    padding: 11px 30px 20px 0;
  }
  @media (max-width: 768px) {
    .aboutInstagramLog-content-list-item-link {
      font-size: 16px;
      padding: 13px 29px 20px 0;
    }
  }
  .aboutInstagramLog-content-list-item-link::after {
    content: "";
    position: absolute;
    bottom: 20px;
    right: 0;
    width: 30px;
    height: 30px;
    background-image: url(../img/about/design/insta.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
  }
  @media (max-width: 768px) {
    .aboutInstagramLog-content-list-item-link::after {
      width: 29px;
      height: 29px;
    }
  }
}
@layer pages {
  .aboutStudyProgram {
    position: relative;
    isolation: isolate;
    padding: 120px 0 160px;
  }
  @media (min-width: 769px) {
    .aboutStudyProgram {
      grid-column: 1/-1;
      display: grid;
      grid-template-columns: 216px 1fr;
      gap: 96px;
    }
    .aboutStudyProgram > * {
      grid-column: 2;
      position: relative;
      z-index: 1;
    }
  }
  @media (max-width: 768px) {
    .aboutStudyProgram {
      padding: 64px 0 96px;
    }
  }
  .aboutStudyProgram::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    z-index: -1;
    pointer-events: none;
    left: calc(50% - 50vw);
    width: 100vw;
    background-color: #F0F0F0;
  }
  @media (max-width: 768px) {
    .aboutStudyProgram .contentsDetail-other-header-desc {
      padding-top: 20px;
    }
  }
  .aboutStudyProgram-content {
    margin-top: 80px;
    display: flex;
    flex-direction: column;
    gap: 120px;
  }
  @media (max-width: 768px) {
    .aboutStudyProgram-content {
      margin-top: 64px;
      gap: 64px;
    }
  }
  .aboutStudyProgram-content-block-title {
    position: relative;
    font-size: 32px;
    line-height: 1;
    padding-left: 64px;
  }
  @media (max-width: 768px) {
    .aboutStudyProgram-content-block-title {
      font-size: 24px;
      padding-left: 44px;
    }
  }
  .aboutStudyProgram-content-block-title::before {
    content: "";
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
    width: 48px;
    height: 48px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
  }
  @media (max-width: 768px) {
    .aboutStudyProgram-content-block-title::before {
      width: 32px;
      height: 32px;
    }
  }
  .aboutStudyProgram-content-block:first-child .aboutStudyProgram-content-block-title::before {
    background-image: url(../img/about/flags.png);
  }
  .aboutStudyProgram-content-block:last-child .aboutStudyProgram-content-block-title::before {
    background-image: url(../img/about/earth.png);
  }
  .aboutStudyProgram-content-block-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 48px;
    margin-top: 32px;
    row-gap: 80px;
  }
  @media (max-width: 768px) {
    .aboutStudyProgram-content-block-list {
      display: flex;
      flex-wrap: nowrap;
      gap: 20px;
      width: calc(100% + 20px);
      margin-top: 24px;
      margin-left: 0;
      padding-right: 20px;
      row-gap: 0;
      overflow-x: auto;
      overflow-y: hidden;
      -webkit-overflow-scrolling: touch;
      scrollbar-width: none;
      -ms-overflow-style: none;
    }
    .aboutStudyProgram-content-block-list::-webkit-scrollbar {
      display: none;
    }
  }
  @media (max-width: 768px) {
    .aboutStudyProgram-content-block-list-item {
      display: flex;
      flex-direction: column;
      flex-shrink: 0;
      width: 280px;
    }
  }
  .aboutStudyProgram-content-block-list-item-body {
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding-top: 20px;
  }
  @media (max-width: 768px) {
    .aboutStudyProgram-content-block-list-item-body {
      flex: 1;
    }
  }
  .aboutStudyProgram-content-block-list-item-body-tag-list {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
  }
  @media (max-width: 768px) {
    .aboutStudyProgram-content-block-list-item-body-tag-list {
      row-gap: 8px;
    }
  }
  .aboutStudyProgram-content-block-list-item-body-tag-list-item {
    position: relative;
    line-height: 1;
    color: #69C927;
    padding-left: 12px;
  }
  @media (max-width: 768px) {
    .aboutStudyProgram-content-block-list-item-body-tag-list-item {
      font-size: 14px;
    }
  }
  .aboutStudyProgram-content-block-list-item-body-tag-list-item::before {
    content: "#";
    position: absolute;
    top: 0;
    left: 0;
    font-size: 16px;
    line-height: 1;
    color: #69C927;
  }
  @media (max-width: 768px) {
    .aboutStudyProgram-content-block-list-item-body-tag-list-item::before {
      font-size: 14px;
    }
  }
  .aboutStudyProgram-content-block-list-item-title {
    font-size: 24px;
    line-height: 1.4;
  }
  @media (max-width: 768px) {
    .aboutStudyProgram-content-block-list-item-title {
      font-size: 20px;
    }
  }
  .aboutStudyProgram-content-block-list-item-text {
    font-weight: 400;
    padding-bottom: 8px;
  }
  @media (max-width: 768px) {
    .aboutStudyProgram-content-block-list-item-text {
      font-size: 14px;
      line-height: 1.6;
      min-height: 89.6px;
    }
  }
  .aboutStudyProgram-content-block-list-item-detail {
    display: flex;
    flex-wrap: wrap;
    gap: 48px;
    row-gap: 4px;
  }
  @media (max-width: 768px) {
    .aboutStudyProgram-content-block-list-item-detail {
      flex-direction: column;
      row-gap: 8px;
    }
  }
  .aboutStudyProgram-content-block-list-item-detail-row {
    display: flex;
    align-items: center;
    gap: 8px;
  }
  .aboutStudyProgram-content-block-list-item-detail-term {
    font-size: 14px;
    line-height: 1;
    background-color: #fff;
    padding: 7px 8px;
    text-align: center;
  }
  @media (max-width: 768px) {
    .aboutStudyProgram-content-block-list-item-detail-term {
      min-width: 88px;
      height: 28px;
      font-size: 12px;
      padding: 8px 0;
    }
  }
  .aboutStudyProgram-content-block-list-item-detail-desc {
    font-size: 14px;
  }
  @media (max-width: 768px) {
    .aboutStudyProgram-content-block-list-item-detail-desc {
      font-size: 12px;
      line-height: 1.4;
    }
  }
}
@layer pages {
  .aboutFaculty {
    min-width: 0;
    overflow: visible;
  }
  .aboutFaculty-content {
    display: flex;
    gap: 40px;
    align-items: stretch;
    min-width: 0;
    overflow: visible;
  }
  @media (max-width: 1439px) and (min-width: 769px) {
    .aboutFaculty-content {
      gap: 20px;
      justify-content: space-between;
    }
  }
  @media (max-width: 768px) {
    .aboutFaculty-content {
      flex-direction: column;
      gap: 64px;
    }
  }
  .aboutFaculty-body {
    flex: 0 0 448px;
    width: 448px;
    padding: 40px 0 99px;
    display: flex;
    flex-direction: column;
    gap: 80px;
  }
  @media (max-width: 1439px) and (min-width: 769px) {
    .aboutFaculty-body {
      flex: 0 1 448px;
      width: auto;
      max-width: 448px;
      min-width: 0;
    }
  }
  @media (max-width: 768px) {
    .aboutFaculty-body {
      display: grid;
      grid-template-columns: 1fr 120px;
      column-gap: 32px;
      row-gap: 8px;
      flex: none;
      max-width: none;
      width: 100%;
      padding: 64px 0 0;
      margin: 0 auto;
    }
  }
  .aboutFaculty-body-img {
    width: 160px;
    margin: 0 0 0 auto;
  }
  @media (max-width: 1439px) and (min-width: 769px) {
    .aboutFaculty-body-img {
      width: clamp(120px, 11.1vw, 160px);
    }
  }
  @media (max-width: 768px) {
    .aboutFaculty-body-img {
      grid-column: 2;
      grid-row: 1/3;
      align-self: start;
      margin: 0;
      width: 120px;
    }
  }
  .aboutFaculty-img {
    flex: 1 1 0;
    min-width: 0;
    width: auto;
    margin-right: -40px;
    align-self: stretch;
  }
  .aboutFaculty-img picture,
  .aboutFaculty-img img {
    display: block;
    width: 100%;
    height: auto;
  }
  @media (max-width: 1439px) and (min-width: 769px) {
    .aboutFaculty-img {
      flex: 0 1 auto;
      width: clamp(240px, 26vw, 400px);
      max-width: 400px;
      margin-left: auto;
      overflow: hidden;
    }
    .aboutFaculty-img picture {
      height: 100%;
    }
    .aboutFaculty-img img {
      height: 100%;
      object-fit: cover;
      object-position: center;
    }
  }
  @media (max-width: 768px) {
    .aboutFaculty-img {
      flex: none;
      width: calc(100% + 40px);
      margin: 0 -20px;
      overflow: visible;
    }
    .aboutFaculty-img picture,
    .aboutFaculty-img img {
      height: auto;
      object-fit: initial;
    }
  }
  .aboutFaculty .btn-more {
    margin: 52px 0 auto 0;
  }
  @media (max-width: 768px) {
    .aboutFaculty .btn-more {
      grid-column: 1/-1;
      grid-row: 4;
      margin: 0;
    }
  }
  @media (max-width: 768px) {
    .aboutFaculty .contentsDetail-other-header-group {
      display: contents;
    }
  }
  @media (max-width: 768px) {
    .aboutFaculty .contentsDetail-other-header-title {
      grid-column: 1;
      grid-row: 1;
      align-self: end;
    }
  }
  @media (max-width: 768px) {
    .aboutFaculty .contentsDetail-other-header-sub {
      grid-column: 1;
      grid-row: 2;
      align-self: start;
    }
  }
  @media (max-width: 768px) {
    .aboutFaculty .contentsDetail-other-header-desc {
      grid-column: 1/-1;
      grid-row: 3;
      width: 100%;
      padding-top: 0;
      line-height: 1.8;
      margin: 24px 0 40px;
    }
  }
}
@layer pages {
  .aboutLearningProgram {
    padding: 120px 0 160px;
  }
  @media (max-width: 768px) {
    .aboutLearningProgram {
      padding: 64px 0 96px;
    }
  }
  .aboutLearningProgram-accordion {
    margin-top: 80px;
    display: flex;
    flex-direction: column;
    gap: 16px;
  }
  .aboutLearningProgram-accordion-item {
    border: 1px solid #D9D9D9;
  }
  .aboutLearningProgram-accordion-item-header {
    display: block;
    width: 100%;
    margin: 0;
    padding: 0;
    border: none;
    background: transparent;
    text-align: left;
    cursor: pointer;
  }
  .aboutLearningProgram-accordion-item-header:focus-visible {
    outline: 2px solid #69C927;
    outline-offset: -2px;
  }
  .aboutLearningProgram-accordion-item-header-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    width: 100%;
    margin: 0;
    padding: 36px 32px;
    font-size: 24px;
    font-weight: 500;
    line-height: 1;
    color: #111111;
    background-color: transparent;
    box-sizing: border-box;
  }
  @media (max-width: 768px) {
    .aboutLearningProgram-accordion-item-header-title {
      padding: 24px 16px 24px 20px;
      font-size: 20px;
      line-height: 1.4;
    }
  }
  .aboutLearningProgram-accordion-item-header-title::after {
    content: "";
    flex-shrink: 0;
    width: 39px;
    height: 32px;
    background: center/39px 32px no-repeat;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='39' height='32' viewBox='0 0 39 32' fill='none'%3E%3Cpath d='M7 5.5C3.8 9.2 3.8 22.8 7 26.5' stroke='%2369C927' stroke-width='1.5' stroke-linecap='round'/%3E%3Cpath d='M32 5.5C35.2 9.2 35.2 22.8 32 26.5' stroke='%2369C927' stroke-width='1.5' stroke-linecap='round'/%3E%3Crect x='10.5' y='15.5' width='18' height='1' fill='%2369C927'/%3E%3Crect x='19' y='7' width='1' height='18' fill='%2369C927'/%3E%3C/svg%3E");
  }
  .aboutLearningProgram-accordion-item.is-open .aboutLearningProgram-accordion-item-header-title {
    background-color: #F0F0F0;
  }
  .aboutLearningProgram-accordion-item.is-open .aboutLearningProgram-accordion-item-header-title::after {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='39' height='32' viewBox='0 0 39 32' fill='none'%3E%3Cpath d='M7 5.5C3.8 9.2 3.8 22.8 7 26.5' stroke='%2369C927' stroke-width='1.5' stroke-linecap='round'/%3E%3Cpath d='M32 5.5C35.2 9.2 35.2 22.8 32 26.5' stroke='%2369C927' stroke-width='1.5' stroke-linecap='round'/%3E%3Crect x='10.5' y='15.5' width='18' height='1' fill='%2369C927'/%3E%3C/svg%3E");
  }
  .aboutLearningProgram-accordion-item-body {
    display: grid;
    grid-template-rows: 0fr;
    padding: 0 32px;
    overflow: hidden;
    transition: grid-template-rows 0.35s ease, padding 0.35s ease;
  }
  @media (max-width: 768px) {
    .aboutLearningProgram-accordion-item-body {
      padding: 0 20px;
    }
  }
  .aboutLearningProgram-accordion-item.is-open .aboutLearningProgram-accordion-item-body {
    grid-template-rows: 1fr;
    padding: 32px;
  }
  @media (max-width: 768px) {
    .aboutLearningProgram-accordion-item.is-open .aboutLearningProgram-accordion-item-body {
      padding: 32px 20px;
    }
  }
  .aboutLearningProgram-accordion-item-body > .aboutLearningProgram-accordion-item-body-content {
    min-height: 0;
    overflow: hidden;
  }
  .aboutLearningProgram-accordion-item.is-open .aboutLearningProgram-accordion-item-body > .aboutLearningProgram-accordion-item-body-content {
    overflow: visible;
  }
  .aboutLearningProgram-accordion-item-body-content-title {
    font-size: 20px;
    line-height: 1;
    position: relative;
    padding-left: 16px;
  }
  @media (max-width: 768px) {
    .aboutLearningProgram-accordion-item-body-content-title {
      font-size: 18px;
    }
  }
  .aboutLearningProgram-accordion-item-body-content-title::before {
    content: "";
    position: absolute;
    top: 3px;
    left: 0;
    width: 8px;
    height: 8px;
    background-color: #69C927;
  }
  .aboutLearningProgram-accordion-item-body-content-title:not(:first-child) {
    margin-top: 48px;
  }
  @media (max-width: 768px) {
    .aboutLearningProgram-accordion-item-body-content-title:not(:first-child) {
      margin-top: 32px;
    }
  }
  .aboutLearningProgram-accordion-item-body-content-list {
    margin: 16px 0 0 8px;
  }
  @media (max-width: 768px) {
    .aboutLearningProgram-accordion-item-body-content-list {
      margin: 12px 0 0 4px;
    }
  }
  .aboutLearningProgram-accordion-item-body-content-list-item {
    line-height: 1.8;
    text-indent: -1rem;
    padding-left: 1rem;
    list-style: disc;
    list-style-position: inside;
  }
  @media (max-width: 768px) {
    .aboutLearningProgram-accordion-item-body-content-list-item {
      font-size: 14px;
      line-height: 1.6;
    }
  }
  .aboutLearningProgram-accordion-item-body-content-list-item::marker {
    margin-right: 0;
  }
  .aboutLearningProgram-courses {
    margin-top: 24px;
  }
  .aboutLearningProgram-courses-cols {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    column-gap: 8px;
    row-gap: 16px;
    align-items: stretch;
  }
  @media (max-width: 768px) {
    .aboutLearningProgram-courses-cols {
      grid-template-columns: 1fr;
      gap: 12px;
      align-items: start;
    }
  }
  .aboutLearningProgram-courses-cols--count1 {
    grid-template-columns: minmax(0, 1fr);
  }
  .aboutLearningProgram-courses-cols--count2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  @media (max-width: 768px) {
    .aboutLearningProgram-courses-cols--count2 {
      grid-template-columns: 1fr;
    }
  }
  .aboutLearningProgram-courses-cols--count3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  @media (max-width: 768px) {
    .aboutLearningProgram-courses-cols--count3 {
      grid-template-columns: 1fr;
    }
  }
  .aboutLearningProgram-courses-cols--cols2 {
    grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
    gap: 8px;
    align-items: stretch;
  }
  @media (max-width: 768px) {
    .aboutLearningProgram-courses-cols--cols2 {
      grid-template-columns: 1fr;
      gap: 12px;
    }
  }
  .aboutLearningProgram-courses-cols--cols2 > .aboutLearningProgram-courses-cols-item .aboutLearningProgram-courses-cols-item-list {
    flex: 1;
    min-height: 0;
  }
  .aboutLearningProgram-courses-cols--cols2 .aboutLearningProgram-courses-cols-item-list--nested {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto auto;
  }
  @media (max-width: 768px) {
    .aboutLearningProgram-courses-cols--cols2 .aboutLearningProgram-courses-cols-item-list--nested {
      display: flex;
      flex-direction: column;
    }
  }
  .aboutLearningProgram-courses-cols--cols2 .aboutLearningProgram-courses-cols-item-list--nested > .aboutLearningProgram-courses-cols-item-list-item:not(:last-child)::after {
    content: none;
  }
  .aboutLearningProgram-courses-cols--cols2 .aboutLearningProgram-courses-cols-item-list--nested > .aboutLearningProgram-courses-cols-item-list-item[data-slot=tl] {
    grid-column: 1;
    grid-row: 1;
  }
  .aboutLearningProgram-courses-cols--cols2 .aboutLearningProgram-courses-cols-item-list--nested > .aboutLearningProgram-courses-cols-item-list-item[data-slot=tr] {
    grid-column: 2;
    grid-row: 1;
    justify-content: flex-start;
  }
  .aboutLearningProgram-courses-cols--cols2 .aboutLearningProgram-courses-cols-item-list--nested > .aboutLearningProgram-courses-cols-item-list-item[data-slot=bl] {
    grid-column: 1;
    grid-row: 2;
  }
  .aboutLearningProgram-courses-cols--cols2 .aboutLearningProgram-courses-cols-item-list--nested > .aboutLearningProgram-courses-cols-item-list-item[data-slot=br] {
    grid-column: 2;
    grid-row: 2;
  }
  @media (max-width: 768px) {
    .aboutLearningProgram-courses-cols--cols2 .aboutLearningProgram-courses-cols-item-list--nested > .aboutLearningProgram-courses-cols-item-list-item[data-slot=tl], .aboutLearningProgram-courses-cols--cols2 .aboutLearningProgram-courses-cols-item-list--nested > .aboutLearningProgram-courses-cols-item-list-item[data-slot=tr], .aboutLearningProgram-courses-cols--cols2 .aboutLearningProgram-courses-cols-item-list--nested > .aboutLearningProgram-courses-cols-item-list-item[data-slot=bl], .aboutLearningProgram-courses-cols--cols2 .aboutLearningProgram-courses-cols-item-list--nested > .aboutLearningProgram-courses-cols-item-list-item[data-slot=br] {
      grid-column: auto;
      grid-row: auto;
    }
    .aboutLearningProgram-courses-cols--cols2 .aboutLearningProgram-courses-cols-item-list--nested > .aboutLearningProgram-courses-cols-item-list-item:not(:last-child) {
      position: relative;
    }
    .aboutLearningProgram-courses-cols--cols2 .aboutLearningProgram-courses-cols-item-list--nested > .aboutLearningProgram-courses-cols-item-list-item:not(:last-child)::after {
      content: "";
      position: absolute;
      left: 16px;
      right: 16px;
      bottom: 0;
      height: 1px;
      background-color: #D9D9D9;
    }
  }
  .aboutLearningProgram-courses-cols--cols2 .aboutLearningProgram-courses-cols-item-list--nested.aboutLearningProgram-courses-cols-item-list--has-bl > .aboutLearningProgram-courses-cols-item-list-item[data-slot=tl] {
    position: relative;
  }
  .aboutLearningProgram-courses-cols--cols2 .aboutLearningProgram-courses-cols-item-list--nested.aboutLearningProgram-courses-cols-item-list--has-bl > .aboutLearningProgram-courses-cols-item-list-item[data-slot=tl]::after {
    content: "";
    position: absolute;
    left: 24px;
    right: 24px;
    bottom: 0;
    height: 1px;
    background-color: #D9D9D9;
  }
  .aboutLearningProgram-courses-cols--cols2 .aboutLearningProgram-courses-cols-item-list--nested.aboutLearningProgram-courses-cols-item-list--has-br > .aboutLearningProgram-courses-cols-item-list-item[data-slot=tr] {
    position: relative;
  }
  .aboutLearningProgram-courses-cols--cols2 .aboutLearningProgram-courses-cols-item-list--nested.aboutLearningProgram-courses-cols-item-list--has-br > .aboutLearningProgram-courses-cols-item-list-item[data-slot=tr]::after {
    content: "";
    position: absolute;
    left: 24px;
    right: 24px;
    bottom: 0;
    height: 1px;
    background-color: #D9D9D9;
  }
  @media (max-width: 768px) {
    .aboutLearningProgram-courses-cols--cols2 .aboutLearningProgram-courses-cols-item-list--nested.aboutLearningProgram-courses-cols-item-list--has-bl > .aboutLearningProgram-courses-cols-item-list-item[data-slot=tl]::after, .aboutLearningProgram-courses-cols--cols2 .aboutLearningProgram-courses-cols-item-list--nested.aboutLearningProgram-courses-cols-item-list--has-br > .aboutLearningProgram-courses-cols-item-list-item[data-slot=tr]::after {
      content: none;
    }
  }
  .aboutLearningProgram-courses-cols--cols2 > .aboutLearningProgram-courses-cols-item:last-child .aboutLearningProgram-courses-cols-item-list-item {
    flex: 0 0 auto;
    justify-content: flex-start;
  }
  .aboutLearningProgram-courses-cols-item {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 8px;
    min-width: 0;
    height: 100%;
  }
  @media (max-width: 768px) {
    .aboutLearningProgram-courses-cols-item {
      flex-direction: row;
      align-items: stretch;
      gap: 12px;
      height: auto;
    }
  }
  .aboutLearningProgram-courses-cols-item:nth-child(1) {
    z-index: 3;
  }
  .aboutLearningProgram-courses-cols-item:nth-child(2) {
    z-index: 2;
  }
  .aboutLearningProgram-courses-cols-item:nth-child(3) {
    z-index: 1;
  }
  .aboutLearningProgram-courses-cols-item-label {
    position: relative;
    isolation: isolate;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    height: auto;
    min-height: 48px;
    margin-bottom: 0;
    padding: 12px 16px 12px 28px;
    color: #ffffff;
    font-size: 20px;
    font-weight: 500;
    line-height: 1.2;
    text-align: center;
  }
  @media (max-width: 768px) {
    .aboutLearningProgram-courses-cols-item-label {
      width: 48px;
      height: auto;
      min-height: 0;
      align-self: stretch;
      flex-shrink: 0;
      padding: 16px 0;
      writing-mode: vertical-rl;
      text-orientation: mixed;
      font-size: 16px;
      letter-spacing: 0.1em;
      background-color: transparent;
    }
  }
  .aboutLearningProgram-courses-cols-item-label::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background-color: #69C927;
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%, 18px 50%);
  }
  .aboutLearningProgram-courses-cols-item-label::after {
    content: "";
    position: absolute;
    top: 0;
    right: -18px;
    z-index: -1;
    width: 20px;
    height: 100%;
    background-color: #69C927;
    clip-path: polygon(0 0, 100% 50%, 0 100%);
    pointer-events: none;
  }
  @media (max-width: 768px) {
    .aboutLearningProgram-courses-cols-item-label::before {
      content: "";
      clip-path: polygon(0 0, 100% 0, 100% calc(100% - 12px), 50% 100%, 0 calc(100% - 12px));
    }
    .aboutLearningProgram-courses-cols-item-label::after {
      content: none;
    }
  }
  .aboutLearningProgram-courses-cols-item:first-child .aboutLearningProgram-courses-cols-item-label {
    padding-left: 16px;
  }
  .aboutLearningProgram-courses-cols-item:first-child .aboutLearningProgram-courses-cols-item-label::before {
    clip-path: none;
  }
  @media (max-width: 768px) {
    .aboutLearningProgram-courses-cols-item:first-child .aboutLearningProgram-courses-cols-item-label {
      padding: 16px 0;
    }
    .aboutLearningProgram-courses-cols-item:first-child .aboutLearningProgram-courses-cols-item-label::before {
      clip-path: polygon(0 0, 100% 0, 100% calc(100% - 12px), 50% 100%, 0 calc(100% - 12px));
    }
  }
  .aboutLearningProgram-courses-cols-item:last-child .aboutLearningProgram-courses-cols-item-label {
    padding-right: 28px;
  }
  .aboutLearningProgram-courses-cols-item:last-child .aboutLearningProgram-courses-cols-item-label::before {
    clip-path: polygon(0 0, calc(100% - 18px) 0, 100% 50%, calc(100% - 18px) 100%, 0 100%, 18px 50%);
  }
  .aboutLearningProgram-courses-cols-item:last-child .aboutLearningProgram-courses-cols-item-label::after {
    content: none;
  }
  @media (max-width: 768px) {
    .aboutLearningProgram-courses-cols-item:last-child .aboutLearningProgram-courses-cols-item-label {
      padding: 16px 0;
    }
    .aboutLearningProgram-courses-cols-item:last-child .aboutLearningProgram-courses-cols-item-label::before {
      clip-path: polygon(0 0, 100% 0, 100% calc(100% - 12px), 50% 100%, 0 calc(100% - 12px));
    }
    .aboutLearningProgram-courses-cols-item:last-child .aboutLearningProgram-courses-cols-item-label::after {
      content: none;
    }
  }
  .aboutLearningProgram-courses-cols-item:first-child:last-child .aboutLearningProgram-courses-cols-item-label {
    padding-left: 16px;
  }
  .aboutLearningProgram-courses-cols-item:first-child:last-child .aboutLearningProgram-courses-cols-item-label::before {
    clip-path: polygon(0 0, calc(100% - 18px) 0, 100% 50%, calc(100% - 18px) 100%, 0 100%);
  }
  @media (max-width: 768px) {
    .aboutLearningProgram-courses-cols-item:first-child:last-child .aboutLearningProgram-courses-cols-item-label {
      padding: 16px 0;
    }
    .aboutLearningProgram-courses-cols-item:first-child:last-child .aboutLearningProgram-courses-cols-item-label::before {
      clip-path: polygon(0 0, 100% 0, 100% calc(100% - 12px), 50% 100%, 0 calc(100% - 12px));
    }
    .aboutLearningProgram-courses-cols-item:first-child:last-child .aboutLearningProgram-courses-cols-item-label::after {
      content: none;
    }
  }
  .aboutLearningProgram-courses-cols-item-list {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    min-height: 0;
    border: 1px solid #D9D9D9;
    background-color: #ffffff;
  }
  @media (max-width: 768px) {
    .aboutLearningProgram-courses-cols-item-list {
      flex: 1;
      min-width: 0;
    }
  }
  .aboutLearningProgram-courses-cols-item-list-item {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    gap: 12px;
    padding: 20px 24px 24px;
  }
  @media (max-width: 768px) {
    .aboutLearningProgram-courses-cols-item-list-item {
      padding: 16px 20px 20px;
      gap: 8px;
    }
  }
  .aboutLearningProgram-courses-cols-item-list-item:not(:last-child) {
    position: relative;
    padding: 24px 24px 20px;
  }
  @media (max-width: 768px) {
    .aboutLearningProgram-courses-cols-item-list-item:not(:last-child) {
      padding: 20px 20px 16px;
    }
  }
  .aboutLearningProgram-courses-cols-item-list-item:not(:last-child)::after {
    content: "";
    position: absolute;
    left: 24px;
    right: 24px;
    bottom: 0;
    height: 1px;
    background-color: #D9D9D9;
  }
  @media (max-width: 768px) {
    .aboutLearningProgram-courses-cols-item-list-item:not(:last-child)::after {
      left: 16px;
      right: 16px;
    }
  }
  .aboutLearningProgram-courses-cols-item-list-item-title {
    color: #69C927;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.4;
  }
  @media (max-width: 768px) {
    .aboutLearningProgram-courses-cols-item-list-item-title {
      font-size: 16px;
    }
  }
  .aboutLearningProgram-courses-cols-item-list-item-text {
    color: #111111;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.6;
  }
  @media (min-width: 769px) {
    @supports (grid-template-rows: subgrid) {
      .aboutLearningProgram-courses-cols:not(.aboutLearningProgram-courses-cols--cols2) > .aboutLearningProgram-courses-cols-item {
        display: grid;
        grid-template-rows: subgrid;
        grid-row: span 7;
        height: auto;
        gap: 0;
      }
      .aboutLearningProgram-courses-cols:not(.aboutLearningProgram-courses-cols--cols2) > .aboutLearningProgram-courses-cols-item > .aboutLearningProgram-courses-cols-item-label {
        margin-bottom: 8px;
      }
      .aboutLearningProgram-courses-cols:not(.aboutLearningProgram-courses-cols--cols2) > .aboutLearningProgram-courses-cols-item > .aboutLearningProgram-courses-cols-item-list {
        display: grid;
        grid-template-rows: subgrid;
        grid-row: 2/span 6;
        flex: none;
        min-height: 0;
      }
      .aboutLearningProgram-courses-cols:not(.aboutLearningProgram-courses-cols--cols2) > .aboutLearningProgram-courses-cols-item > .aboutLearningProgram-courses-cols-item-list > .aboutLearningProgram-courses-cols-item-list-item {
        display: grid;
        grid-template-rows: subgrid;
        grid-row: span 2;
        gap: 0;
      }
      .aboutLearningProgram-courses-cols:not(.aboutLearningProgram-courses-cols--cols2) > .aboutLearningProgram-courses-cols-item > .aboutLearningProgram-courses-cols-item-list > .aboutLearningProgram-courses-cols-item-list-item > .aboutLearningProgram-courses-cols-item-list-item-title {
        margin-bottom: 12px;
      }
    }
  }
  .aboutLearningProgram-courses-related {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 20px;
    margin-top: 16px;
    padding: 20px;
    background-color: #F0F0F0;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.6;
  }
  @media (max-width: 768px) {
    .aboutLearningProgram-courses-related {
      padding: 20px;
      font-size: 14px;
      gap: 12px;
    }
  }
  .aboutLearningProgram-courses-related-label {
    font-size: 16px;
    line-height: 1;
    font-weight: 500;
    flex-shrink: 0;
  }
  @media (max-width: 768px) {
    .aboutLearningProgram-courses-related-label {
      font-size: 14px;
    }
  }
}
@layer pages {
  .contentsHero {
    padding: 100px 0 305px;
  }
  @media (max-width: 768px) {
    .contentsHero {
      padding: 66px 0 160px;
    }
  }
  .contentsHero-title {
    font-size: clamp(48px, 6.39vw, 92px);
    line-height: 1.2;
    font-weight: 500;
  }
  @media (max-width: 768px) {
    .contentsHero-title {
      font-size: 40px;
      letter-spacing: -0.05em;
    }
  }
}
.contentsPageHero {
  padding: 80px 0 306px;
}
@media (max-width: 768px) {
  .contentsPageHero {
    padding: 54px 0 94px;
  }
}
.contentsPageHero-header {
  display: flex;
  flex-direction: column;
  gap: 32px;
}
@media (max-width: 768px) {
  .contentsPageHero-header {
    gap: 20px;
  }
}
.contentsPageHero-header-sub {
  position: relative;
  width: fit-content;
  font-size: 18px;
  line-height: 1;
  color: #69C927;
  padding: 0 20px;
}
@media (max-width: 768px) {
  .contentsPageHero-header-sub {
    font-size: 14px;
    padding: 0 16px;
  }
}
.contentsPageHero-header-sub::before {
  content: "（";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  color: #69C927;
  font-size: 18px;
  line-height: 1;
}
@media (max-width: 768px) {
  .contentsPageHero-header-sub::before {
    font-size: 14px;
  }
}
.contentsPageHero-header-sub::after {
  content: "）";
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  color: #69C927;
  font-size: 18px;
  line-height: 1;
}
@media (max-width: 768px) {
  .contentsPageHero-header-sub::after {
    font-size: 14px;
  }
}
.contentsPageHero-header-title {
  font-size: clamp(40px, 5.56vw, 80px);
  line-height: 1;
  letter-spacing: -0.05em;
}
@media (max-width: 768px) {
  .contentsPageHero-header-title {
    font-size: 32px;
    line-height: 1.4;
  }
}
.contentsPageHero.facultyPageHero {
  padding-bottom: 80px;
}
@media (max-width: 768px) {
  .contentsPageHero.facultyPageHero {
    padding-bottom: 139px;
  }
}

@layer pages {
  .contentsList-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
  }
  @media (max-width: 768px) {
    .contentsList-header {
      flex-direction: column;
      align-items: flex-start;
    }
  }
  .contentsList-container--archive {
    padding-bottom: 200px;
  }
  @media (max-width: 768px) {
    .contentsList-container--archive {
      padding-bottom: 120px;
    }
  }
  .contentsList-container--archive .contentsList-faculty {
    padding-bottom: 0;
  }
  .contentsList-department-list {
    display: flex;
    flex-direction: column;
    gap: 40px;
    padding-bottom: 160px;
  }
  @media (max-width: 768px) {
    .contentsList-department-list {
      padding-bottom: 120px;
    }
  }
  .contentsList-department-list-item:not(:first-child) {
    padding-top: 160px;
  }
  @media (max-width: 768px) {
    .contentsList-department-list-item:not(:first-child) {
      padding-top: 120px;
    }
  }
  .contentsList-shared {
    padding-bottom: 160px;
  }
  @media (max-width: 768px) {
    .contentsList-shared {
      padding-bottom: 120px;
    }
  }
  .contentsList-article-list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 47px;
    row-gap: 80px;
    margin-top: 64px;
  }
  @media (max-width: 768px) {
    .contentsList-article-list {
      margin-top: 40px;
      display: flex;
      flex-wrap: nowrap;
      gap: 20px;
      width: calc(100vw - 16px);
      margin-left: calc(50% - 50vw + 20px);
      overflow-x: auto;
      overflow-y: hidden;
      -webkit-overflow-scrolling: touch;
      padding-right: 20px;
      -ms-overflow-style: none;
      scrollbar-width: none;
    }
    .contentsList-article-list::-webkit-scrollbar {
      display: none;
    }
  }
  .contentsList-article-list.vertical {
    margin-top: 0;
  }
  @media (max-width: 768px) {
    .contentsList-article-list.vertical {
      width: 100%;
      display: flex;
      flex-direction: column;
      align-items: stretch;
      gap: 40px;
      row-gap: 64px;
      padding: 0;
      margin-left: 0;
    }
    .contentsList-article-list.vertical .contentsList-article-list-item {
      width: 100%;
      max-width: 100%;
      flex-shrink: 1;
    }
    .contentsList-article-list.vertical .contentsList-article-list-item-thumb {
      width: 100%;
      max-width: 100%;
      aspect-ratio: 422/237;
    }
    .contentsList-article-list.vertical .contentsList-article-list-item-card-body {
      width: 100%;
      max-width: 100%;
    }
  }
  @media (max-width: 768px) {
    .contentsList-article-list-item {
      flex-shrink: 0;
      width: 280px;
    }
  }
  @media (min-width: 769px) {
    .contentsList-article-list-item-link {
      display: flex;
      flex-direction: column;
      height: 100%;
    }
  }
  @media (hover: hover) {
    .contentsList-article-list-item-link:hover {
      opacity: 1;
    }
    .contentsList-article-list-item-link:hover .contentsList-article-list-item-thumb img {
      transform: scale(1.1);
    }
    .contentsList-article-list-item-link:hover .contentsList-article-list-item-card-title .hover-underline,
    .contentsList-article-list-item-link:hover .contentsList-article-list-item-card-desc .hover-underline {
      background-size: 100% 2px;
    }
  }
  .contentsList-article-list-item-thumb {
    aspect-ratio: 422/237;
    width: 100%;
    overflow: hidden;
  }
  @media (max-width: 768px) {
    .contentsList-article-list-item-thumb {
      width: 280px;
      aspect-ratio: 422/237;
    }
  }
  .contentsList-article-list-item-thumb img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
    transition: transform 0.4s;
  }
  @media (min-width: 769px) {
    .contentsList-article-list-item-card {
      height: 100%;
      display: flex;
      flex-direction: column;
    }
  }
  .contentsList-article-list-item-card-body {
    position: relative;
    padding: 20px 0 27px;
    display: flex;
    flex-direction: column;
    gap: 8px;
  }
  @media (min-width: 769px) {
    .contentsList-article-list-item-card-body {
      flex: 1;
    }
  }
  @media (max-width: 768px) {
    .contentsList-article-list-item-card-body {
      padding: 16px 48px 0 0;
      width: 280px;
      box-sizing: border-box;
    }
  }
  .contentsList-article-list-item-card-body::after {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    width: 38px;
    height: 32px;
    background: url(../img/common/arrow_grn.png) no-repeat center center/cover;
  }
  @media (max-width: 768px) {
    .contentsList-article-list-item-card-body::after {
      width: 29px;
      height: 24px;
      right: 0;
    }
  }
  .contentsList-article-list-item-card-date {
    font-size: 14px;
    line-height: 1;
    font-weight: 400;
    color: #818181;
    font-family: var(--font-family-outfit);
  }
  @media (max-width: 768px) {
    .contentsList-article-list-item-card-date {
      font-size: 12px;
    }
  }
  .contentsList-article-list-item-card-title {
    font-size: 20px;
    font-weight: 500;
    margin-bottom: 8px;
    line-height: 1.5;
  }
  @media (max-width: 768px) {
    .contentsList-article-list-item-card-title {
      font-size: 16px;
    }
  }
  .contentsList-article-list-item-card-desc {
    font-weight: 400;
    line-height: 1.6;
    margin-bottom: 24px;
    min-width: 0;
    max-width: 100%;
  }
  @media (max-width: 768px) {
    .contentsList-article-list-item-card-desc {
      font-size: 14px;
      width: auto;
      margin-bottom: 0;
      padding-right: 0;
    }
  }
  .contentsList-pagination {
    display: flex;
    justify-content: center;
    align-items: flex-end;
    gap: 64px;
    margin: 120px auto 0;
  }
  @media (max-width: 768px) {
    .contentsList-pagination {
      gap: 32px;
      margin: 80px auto 0;
    }
  }
  .contentsList-pagination-prev, .contentsList-pagination-next {
    position: relative;
    font-size: 20px;
    line-height: 1;
    font-weight: 400;
    font-family: var(--font-family-outfit);
    color: var(--color-primary);
    padding: 0 4px 14px;
  }
  @media (max-width: 768px) {
    .contentsList-pagination-prev, .contentsList-pagination-next {
      font-size: 16px;
      padding-bottom: 8px;
    }
  }
  .contentsList-pagination-prev.is-disabled, .contentsList-pagination-next.is-disabled {
    opacity: 0.35;
    pointer-events: none;
  }
  .contentsList-pagination-prev::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 14px;
    left: -32px;
    width: 16px;
    height: 16px;
    margin: auto 0;
    background: url(../img/common/prev.png) no-repeat center center/cover;
  }
  @media (max-width: 768px) {
    .contentsList-pagination-prev::before {
      width: 12px;
      height: 12px;
      left: -20px;
      bottom: 8px;
    }
  }
  .contentsList-pagination-prev::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: -32px;
    right: 0;
    height: 1px;
    background-color: #111;
  }
  @media (max-width: 768px) {
    .contentsList-pagination-prev::after {
      left: -20px;
    }
  }
  .contentsList-pagination-next::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    right: -32px;
    height: 1px;
    background-color: #111;
  }
  @media (max-width: 768px) {
    .contentsList-pagination-next::before {
      right: -20px;
    }
  }
  .contentsList-pagination-next::after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 14px;
    right: -32px;
    width: 16px;
    height: 16px;
    margin: auto 0;
    background: url(../img/common/next.png) no-repeat center center/cover;
  }
  @media (max-width: 768px) {
    .contentsList-pagination-next::after {
      width: 12px;
      height: 12px;
      right: -20px;
      bottom: 8px;
    }
  }
  .contentsList-pagination-list {
    display: flex;
    gap: 20px;
    align-items: center;
  }
  @media (max-width: 768px) {
    .contentsList-pagination-list {
      gap: 12px;
    }
  }
  .contentsList-pagination-list-item {
    font-size: 24px;
    line-height: 1;
    font-weight: 400;
    border-bottom: 1px solid #111111;
    padding: 12px 2.5px;
  }
  @media (max-width: 768px) {
    .contentsList-pagination-list-item {
      font-size: 16px;
      padding: 8px 3.5px;
    }
  }
  .contentsList-pagination-list-item.active {
    background-color: #111111;
    color: #ffffff;
    padding: 12px 20px;
    border: none;
  }
  @media (max-width: 768px) {
    .contentsList-pagination-list-item.active {
      padding: 8px 13px;
    }
  }
  .contentsList-pagination-list-item.active .contentsList-pagination-list-item-link {
    pointer-events: none;
  }
}
@layer pages {
  .contentsList-faculty {
    padding-bottom: 160px;
  }
  .contentsList-faculty-list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 47px;
    margin-top: 64px;
    row-gap: 80px;
  }
  @media (max-width: 768px) {
    .contentsList-faculty-list {
      display: flex;
      flex-wrap: nowrap;
      gap: 20px;
      width: calc(100vw - 20px);
      margin-left: calc(50% - 50vw + 20px);
      overflow-x: auto;
      overflow-y: hidden;
      -webkit-overflow-scrolling: touch;
      padding-right: 20px;
      gap: 20px;
      margin-top: 40px;
      -ms-overflow-style: none;
      scrollbar-width: none;
    }
    .contentsList-faculty-list::-webkit-scrollbar {
      display: none;
    }
  }
  .contentsList-faculty-list.vertical {
    margin-top: 0;
  }
  @media (max-width: 768px) {
    .contentsList-faculty-list.vertical {
      width: 100%;
      display: flex;
      flex-direction: column;
      gap: 64px;
      padding: 0;
      margin-left: 0;
    }
    .contentsList-faculty-list.vertical .contentsList-faculty-list-item {
      width: 100%;
    }
    .contentsList-faculty-list.vertical .contentsList-faculty-list-item-thumb {
      width: 100%;
      max-width: 100%;
      aspect-ratio: 422/237;
    }
    .contentsList-faculty-list.vertical .contentsList-faculty-list-item-text {
      width: calc(100% - 36px);
      max-width: none;
    }
    .contentsList-faculty-list.vertical .contentsList-faculty-list-item-name {
      top: 20px;
    }
  }
  .contentsList-faculty-list-item {
    position: relative;
  }
  @media (max-width: 768px) {
    .contentsList-faculty-list-item {
      flex-shrink: 0;
      width: 280px;
    }
  }
  .contentsList-faculty-list-item-thumb {
    aspect-ratio: 422/237;
    width: 100%;
    overflow: hidden;
  }
  @media (max-width: 768px) {
    .contentsList-faculty-list-item-thumb {
      width: 280px;
      aspect-ratio: 422/237;
    }
  }
  .contentsList-faculty-list-item-thumb img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
    transition: transform 0.4s;
  }
  .contentsList-faculty-list-item-body {
    position: relative;
    padding: 20px 8px 40px;
    display: flex;
    flex-direction: column;
    gap: 8px;
  }
  @media (max-width: 768px) {
    .contentsList-faculty-list-item-body {
      padding: 16px 8px 24px;
    }
  }
  .contentsList-faculty-list-item-link {
    position: relative;
    display: flex;
    flex-direction: column;
    height: auto;
    min-height: 0;
  }
  .contentsList-faculty-list-item-link::after {
    content: "";
    position: absolute;
    bottom: 40px;
    right: 8px;
    width: 38px;
    height: 32px;
    background: url(../img/common/arrow_grn.png) no-repeat center center/cover;
  }
  @media (max-width: 768px) {
    .contentsList-faculty-list-item-link::after {
      content: none;
    }
  }
  @media (hover: hover) {
    .contentsList-faculty-list-item-link:hover {
      opacity: 1;
    }
    .contentsList-faculty-list-item-link:hover .contentsList-faculty-list-item-thumb img {
      transform: scale(1.1);
    }
    .contentsList-faculty-list-item-link:hover .contentsList-faculty-list-item-title .hover-underline,
    .contentsList-faculty-list-item-link:hover .contentsList-faculty-list-item-text .hover-underline {
      background-size: 100% 2px;
    }
  }
  .contentsList-faculty-list-item-date {
    color: #818181;
    font-family: var(--font-family-outfit);
    font-size: 14px;
    line-height: 1;
    font-weight: 400;
    flex-shrink: 0;
  }
  @media (max-width: 768px) {
    .contentsList-faculty-list-item-date {
      font-size: 12px;
    }
  }
  .contentsList-faculty-list-item-title {
    font-size: 20px;
    line-height: 1.4;
    margin-bottom: 8px;
    flex-shrink: 0;
  }
  @media (max-width: 768px) {
    .contentsList-faculty-list-item-title {
      font-size: 16px;
      line-height: 1.6;
    }
  }
  .contentsList-faculty-list-item-text {
    font-size: 14px;
    font-weight: 400;
    line-height: 1.6;
    margin-bottom: 16px;
    min-width: 0;
    max-width: 100%;
    flex-shrink: 0;
  }
  @media (max-width: 768px) {
    .contentsList-faculty-list-item-text {
      position: relative;
      width: calc(100% - 36px);
      margin-bottom: 0;
    }
    .contentsList-faculty-list-item-text::after {
      content: "";
      position: absolute;
      top: auto;
      bottom: 0;
      right: -36px;
      transform: none;
      width: 29px;
      height: 24px;
      background: url(../img/common/arrow_grn.png) no-repeat center center/cover;
    }
  }
  .contentsList-faculty-list-item-name {
    width: fit-content;
    line-height: 1;
    background-color: #69C927;
    padding: 8px;
    flex-shrink: 0;
  }
  @media (max-width: 768px) {
    .contentsList-faculty-list-item-name {
      position: absolute;
      right: 8px;
      top: 16px;
      font-size: 14px;
      padding: 5px 8px;
    }
  }
}
@layer pages {
  .contentsBottomlink-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
    margin: 0 auto 160px;
  }
  @media (max-width: 768px) {
    .contentsBottomlink-list {
      grid-template-columns: 1fr;
      gap: 12px;
      margin: 0 auto 96px;
    }
  }
  .contentsBottomlink-list-item {
    padding: 20px 20px 36px;
    background-color: #F0F0F0;
  }
  @media (max-width: 768px) {
    .contentsBottomlink-list-item {
      padding: 12px 12px 32px;
    }
  }
  .contentsBottomlink-list-item-link {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 48px;
  }
  @media (max-width: 768px) {
    .contentsBottomlink-list-item-link {
      gap: 24px;
    }
  }
  .contentsBottomlink-list-item-link::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 88px;
    height: 72px;
    background-image: url(../img/common/arrow_blk.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
  }
  @media (max-width: 768px) {
    .contentsBottomlink-list-item-link::after {
      width: 58px;
      height: 48px;
    }
  }
  @media (hover: hover) {
    .contentsBottomlink-list-item-link:hover {
      opacity: 1;
    }
    .contentsBottomlink-list-item-link:hover .contentsBottomlink-list-item-img img {
      transform: scale(1.1);
    }
    .contentsBottomlink-list-item-link:hover .contentsBottomlink-list-item-title .hover-underline {
      background-size: 100% 2px;
    }
  }
  .contentsBottomlink-list-item-body {
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding-left: 12px;
  }
  .contentsBottomlink-list-item-img {
    width: 180px;
    overflow: hidden;
  }
  @media (max-width: 768px) {
    .contentsBottomlink-list-item-img {
      width: 100px;
    }
  }
  .contentsBottomlink-list-item-img img {
    display: block;
    width: 100%;
    height: auto;
    transition: transform 0.4s;
  }
  .contentsBottomlink-list-item-sub {
    line-height: 1;
    letter-spacing: -0.05em;
  }
  @media (max-width: 768px) {
    .contentsBottomlink-list-item-sub {
      font-size: 14px;
    }
  }
  .contentsBottomlink-list-item-title {
    font-size: 40px;
    line-height: 1;
    letter-spacing: -0.05em;
  }
  @media (max-width: 768px) {
    .contentsBottomlink-list-item-title {
      font-size: 28px;
    }
  }
}
@layer pages {
  .contentsDetail-header {
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding-bottom: 33px;
    border-bottom: 1px solid #D9D9D9;
  }
  @media (max-width: 768px) {
    .contentsDetail-header {
      padding-bottom: 24px;
    }
  }
  .contentsDetail-header-category {
    position: relative;
    width: fit-content;
    font-size: 18px;
    line-height: 1;
    color: #69C927;
    padding: 0 20px;
  }
  @media (max-width: 768px) {
    .contentsDetail-header-category {
      font-size: 14px;
      padding: 0 16px;
    }
  }
  .contentsDetail-header-category::before {
    content: "（";
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    color: #69C927;
    font-size: 18px;
    line-height: 1;
  }
  @media (max-width: 768px) {
    .contentsDetail-header-category::before {
      font-size: 14px;
    }
  }
  .contentsDetail-header-category::after {
    content: "）";
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    color: #69C927;
    font-size: 18px;
    line-height: 1;
  }
  @media (max-width: 768px) {
    .contentsDetail-header-category::after {
      font-size: 14px;
    }
  }
  .contentsDetail-header-title {
    font-size: 40px;
    margin-top: 8px;
  }
  @media (max-width: 768px) {
    .contentsDetail-header-title {
      font-size: 24px;
      margin-top: 4px;
    }
  }
  .contentsDetail-header-date {
    font-size: 14px;
    line-height: 1;
    font-weight: 400;
    font-family: var(--font-family-outfit);
    color: #818181;
  }
  @media (max-width: 768px) {
    .contentsDetail-header-date {
      font-size: 12px;
    }
  }
  .contentsDetail-container {
    padding: 100px 0 200px;
  }
  @media (max-width: 768px) {
    .contentsDetail-container {
      padding: 54px 0 120px;
    }
  }
  .contentsDetail-flex {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 216px;
    justify-content: space-between;
    gap: 96px;
    min-width: 0;
  }
  @media (max-width: 768px) {
    .contentsDetail-flex {
      grid-template-columns: 1fr;
      gap: 0;
    }
  }
  .contentsDetail-main {
    min-width: 0;
    max-width: 100%;
  }
  .contentsDetail-main img,
  .contentsDetail-main figure,
  .contentsDetail-main .wp-block-image,
  .contentsDetail-main .wp-block-gallery {
    max-width: 100%;
  }
  .contentsDetail-main img {
    display: block;
    width: auto;
    max-width: 100%;
    height: auto;
  }
  .contentsDetail-main figure,
  .contentsDetail-main .wp-block-image {
    min-width: 0;
  }
  .contentsDetail-mv {
    margin: 48px 0 0;
  }
  @media (max-width: 768px) {
    .contentsDetail-mv {
      margin-top: 32px;
    }
  }
  .contentsDetail-mv img {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;
  }
  .contentsDetail-body {
    padding: 80px 48px 0;
  }
  @media (max-width: 768px) {
    .contentsDetail-body {
      padding: 64px 0 0;
    }
  }
  .contentsDetail-body > *:first-child {
    margin-top: 0;
  }
  .contentsDetail-body p,
  .contentsDetail-body .wp-block-paragraph {
    font-weight: 400;
    line-height: 1.8;
    margin: 0;
  }
  @media (max-width: 768px) {
    .contentsDetail-body p,
    .contentsDetail-body .wp-block-paragraph {
      font-size: 14px;
      line-height: 1.6;
    }
  }
  .contentsDetail-body p + p,
  .contentsDetail-body .wp-block-paragraph + .wp-block-paragraph {
    margin-top: 16px;
  }
  .contentsDetail-body figure,
  .contentsDetail-body .wp-block-image,
  .contentsDetail-body .wp-block-gallery {
    margin: 64px 0;
  }
  @media (max-width: 768px) {
    .contentsDetail-body figure,
    .contentsDetail-body .wp-block-image,
    .contentsDetail-body .wp-block-gallery {
      margin: 48px 0;
    }
  }
  .contentsDetail-body figcaption,
  .contentsDetail-body .wp-element-caption {
    font-size: 14px;
    font-weight: 400;
    margin-top: 12px;
  }
  @media (max-width: 768px) {
    .contentsDetail-body figcaption,
    .contentsDetail-body .wp-element-caption {
      font-size: 12px;
    }
  }
  .contentsDetail-body h2,
  .contentsDetail-body .wp-block-heading:is(h2) {
    position: relative;
    font-size: 32px;
    padding-bottom: 33px;
    margin: 64px 0 40px;
  }
  @media (max-width: 768px) {
    .contentsDetail-body h2,
    .contentsDetail-body .wp-block-heading:is(h2) {
      font-size: 20px;
      padding-bottom: 20px;
      margin: 48px 0 32px;
    }
  }
  .contentsDetail-body h2::before,
  .contentsDetail-body .wp-block-heading:is(h2)::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 32px;
    height: 1px;
    background-color: #69C927;
    z-index: 2;
  }
  .contentsDetail-body h2::after,
  .contentsDetail-body .wp-block-heading:is(h2)::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #D9D9D9;
    z-index: 0;
  }
  .contentsDetail-body h3,
  .contentsDetail-body .wp-block-heading:is(h3) {
    position: relative;
    font-size: 18px;
    line-height: 1.8;
    font-weight: 500;
    background-color: #F5F5F5;
    padding: 12px 12px 12px 19px;
    margin: 64px 0 32px;
  }
  @media (max-width: 768px) {
    .contentsDetail-body h3,
    .contentsDetail-body .wp-block-heading:is(h3) {
      font-size: 16px;
      line-height: 1.6;
      padding-left: 18px;
      margin: 48px 0 24px;
    }
  }
  .contentsDetail-body h3::before,
  .contentsDetail-body .wp-block-heading:is(h3)::before {
    content: "";
    position: absolute;
    top: 16px;
    bottom: 16px;
    left: 0;
    width: 3px;
    background-color: #69C927;
  }
  @media (max-width: 768px) {
    .contentsDetail-body h3::before,
    .contentsDetail-body .wp-block-heading:is(h3)::before {
      width: 2px;
    }
  }
  .contentsDetail-body ul,
  .contentsDetail-body ol,
  .contentsDetail-body .wp-block-list {
    margin: 40px 0;
    padding-left: 20px;
  }
  @media (max-width: 768px) {
    .contentsDetail-body ul,
    .contentsDetail-body ol,
    .contentsDetail-body .wp-block-list {
      margin: 32px 0;
    }
  }
  .contentsDetail-body ul,
  .contentsDetail-body ul.wp-block-list {
    list-style: disc;
  }
  .contentsDetail-body ol,
  .contentsDetail-body ol.wp-block-list {
    list-style: decimal;
  }
  .contentsDetail-body li {
    font-weight: 400;
  }
  @media (max-width: 768px) {
    .contentsDetail-body li {
      font-size: 14px;
    }
  }
  .contentsDetail-body li + li {
    margin-top: 12px;
  }
  .contentsDetail-body li::marker {
    color: #69C927;
  }
  .contentsDetail-body blockquote,
  .contentsDetail-body .wp-block-quote {
    border: 1px solid #D9D9D9;
    padding: 24px 32px;
    font-weight: 400;
    margin: 64px 0;
  }
  @media (max-width: 768px) {
    .contentsDetail-body blockquote,
    .contentsDetail-body .wp-block-quote {
      font-size: 14px;
      padding: 20px;
      margin: 48px 0;
    }
  }
  .contentsDetail-body blockquote p,
  .contentsDetail-body .wp-block-quote p {
    margin: 0;
  }
  .contentsDetail-body blockquote a,
  .contentsDetail-body .wp-block-quote a {
    display: block;
    margin-top: 24px;
    color: #69C927;
    text-decoration: underline;
  }
  @media (max-width: 768px) {
    .contentsDetail-body blockquote a,
    .contentsDetail-body .wp-block-quote a {
      font-size: 14px;
      margin-top: 12px;
    }
  }
  .contentsDetail .btn-back {
    color: inherit;
    text-decoration: none;
  }
  @media (max-width: 768px) {
    .contentsDetail .btn-back {
      margin-top: 96px;
    }
  }
  @media (hover: hover) {
    .contentsDetail .btn-back:hover {
      color: inherit;
      opacity: 1;
    }
  }
  @media (min-width: 769px) {
    .contentsDetail-sideMenu {
      position: sticky;
      height: fit-content;
      top: 130px;
      width: 216px;
      min-width: 216px;
      max-width: 216px;
    }
  }
  @media (max-width: 768px) {
    .contentsDetail-sideMenu {
      display: none;
    }
  }
  .contentsDetail-sideMenu-title {
    color: #69C927;
    font-size: 24px;
    font-family: var(--font-family-outfit);
    line-height: 1;
    font-weight: 400;
    letter-spacing: -0.05em;
  }
  .contentsDetail-sideMenu-list {
    padding: 32px 0 0;
    display: flex;
    flex-direction: column;
    gap: 32px;
  }
  .contentsDetail-sideMenu-list-item {
    position: relative;
    font-size: 14px;
    line-height: 1.4;
    padding: 0 0 12px 4px;
    border-bottom: 1px solid #D9D9D9;
  }
  .contentsDetail-sideMenu-list-item::after {
    content: "";
    position: absolute;
    bottom: 12px;
    right: 0;
    width: 23px;
    height: 16px;
    background-image: url(../img/common/arrow_grn.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
  }
  .contentsDetail-sideMenu-list-item-link {
    display: inline-block;
    width: 100%;
    height: 100%;
    transition: color 0.2s;
  }
  @media (hover: hover) {
    .contentsDetail-sideMenu-list-item-link:hover {
      color: #69C927;
      opacity: 1;
    }
  }
  .contentsDetail-other {
    background-color: #F0F0F0;
    padding: 120px 0 160px;
  }
  @media (max-width: 768px) {
    .contentsDetail-other {
      padding: 64px 0 96px;
    }
  }
  .contentsDetail-other-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    padding-bottom: 16px;
  }
  @media (max-width: 768px) {
    .contentsDetail-other-header {
      justify-content: center;
    }
  }
  .contentsDetail-other-header-group {
    display: flex;
    flex-direction: column;
    gap: 12px;
  }
  @media (max-width: 768px) {
    .contentsDetail-other-header-group {
      gap: 8px;
    }
  }
  .contentsDetail-other-header-title {
    font-size: clamp(32px, 3.89vw, 56px);
    line-height: 1.3;
    letter-spacing: -0.05em;
  }
  @media (max-width: 768px) {
    .contentsDetail-other-header-title {
      font-size: 32px;
    }
  }
  .contentsDetail-other-header-sub {
    position: relative;
    font-weight: 400;
    font-family: var(--font-family-outfit);
    line-height: 1;
    padding-left: 18px;
  }
  .contentsDetail-other-header-sub::before {
    content: "";
    position: absolute;
    top: 3px;
    left: 4px;
    width: 6px;
    height: 6px;
    background-color: #69C927;
  }
  .contentsDetail-other-header-desc {
    line-height: 1.8;
    font-weight: 400;
    padding: 36px 20px 0 0;
  }
  @media (max-width: 768px) {
    .contentsDetail-other-header-desc {
      padding: 24px 0 0 0;
      font-size: 14px;
      line-height: 1.6;
    }
  }
  .contentsDetail-other-empty {
    margin-top: 40px;
    color: #818181;
    font-size: 16px;
    line-height: 1.6;
  }
  @media (max-width: 768px) {
    .contentsDetail-other-empty {
      margin-top: 24px;
      font-size: 14px;
      text-align: center;
    }
  }
}
.contentsDetail-mv {
  margin: 0;
  padding-top: 48px;
}

@media (max-width: 768px) {
  .contentsDetail-mv {
    padding-top: 32px;
  }
}
.contentsDetail-body {
  padding-top: 80px;
}

@media (max-width: 768px) {
  .contentsDetail-body {
    padding-top: 64px;
  }
}
.contentsDetail-body > *:first-child {
  margin-top: 0;
}

.contentsDetail-body h2,
.contentsDetail-body .wp-block-heading:is(h2) {
  margin: 64px 0 40px;
}

.contentsDetail-body h3,
.contentsDetail-body .wp-block-heading:is(h3) {
  margin: 64px 0 32px;
}

.contentsDetail-body ul,
.contentsDetail-body ol,
.contentsDetail-body .wp-block-list {
  margin: 40px 0;
  padding-left: 20px;
}

.contentsDetail-body blockquote,
.contentsDetail-body .wp-block-quote {
  margin: 64px 0;
  border: 1px solid #d9d9d9;
  padding: 24px 32px;
}

.contentsDetail-body figure,
.contentsDetail-body .wp-block-image {
  margin: 64px 0;
}

.contentsDetail-body .contentsDetail-body-link,
.contentsDetail-body .contentsDetail-body-link strong,
.contentsDetail-body span:has(> .contentsDetail-body-link) {
  color: #69C927 !important;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.contentsDetail-body .contentsDetail-body-link:hover,
.contentsDetail-body .contentsDetail-body-link:hover strong {
  color: #4faa22 !important;
  opacity: 1;
}

.contentsDetail-body img {
  display: block;
  width: auto;
  max-width: 100%;
  height: auto;
}

.contentsDetail-main img,
.contentsDetail-main figure,
.contentsDetail-main .wp-block-image {
  max-width: 100%;
}

.contentsDetail-main figure,
.contentsDetail-main .wp-block-image {
  min-width: 0;
}

@media (max-width: 768px) {
  .contentsDetail-body h2,
  .contentsDetail-body .wp-block-heading:is(h2) {
    margin: 48px 0 32px;
  }
  .contentsDetail-body h3,
  .contentsDetail-body .wp-block-heading:is(h3) {
    margin: 48px 0 24px;
  }
  .contentsDetail-body ul,
  .contentsDetail-body ol,
  .contentsDetail-body .wp-block-list {
    margin: 32px 0;
  }
  .contentsDetail-body blockquote,
  .contentsDetail-body .wp-block-quote {
    margin: 48px 0;
    padding: 20px;
  }
  .contentsDetail-body figure,
  .contentsDetail-body .wp-block-image {
    margin: 48px 0;
  }
}
@layer pages {
  .facultyNav-list {
    display: flex;
    align-items: center;
    gap: 48px;
    padding: 305px 0 80px;
  }
  @media (max-width: 768px) {
    .facultyNav-list {
      flex-direction: column;
      padding: 160px 22px 64px;
      gap: 32px;
    }
  }
  .facultyNav-list-item {
    padding: 0 4px 20px;
    border-bottom: 1px solid #D9D9D9;
  }
  @media (max-width: 768px) {
    .facultyNav-list-item {
      padding: 0 0 17px;
    }
  }
  .facultyNav-list-item-link {
    position: relative;
    display: block;
    width: 290px;
    font-size: 20px;
    line-height: 1;
  }
  @media (max-width: 768px) {
    .facultyNav-list-item-link {
      font-size: 16px;
    }
  }
  .facultyNav-list-item-link::after {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    width: 32px;
    height: 22px;
    background-image: url(../img/common/arrow_blk02.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
  }
}
@layer pages {
  .facultyProfile-container:first-child {
    padding-bottom: 200px;
  }
  @media (max-width: 768px) {
    .facultyProfile-container:first-child {
      padding-bottom: 120px;
    }
  }
  .facultyProfile-container:last-child {
    padding-bottom: 160px;
  }
  @media (max-width: 768px) {
    .facultyProfile-container:last-child {
      padding-bottom: 96px;
    }
  }
  .facultyProfile-list {
    margin-top: 64px;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 48px;
    row-gap: 80px;
  }
  @media (max-width: 768px) {
    .facultyProfile-list {
      grid-template-columns: 1fr;
      gap: 0;
      row-gap: 64px;
    }
  }
  .facultyProfile-list-item {
    padding: 20px 8px 0;
    display: flex;
    flex-direction: column;
  }
  @media (max-width: 768px) {
    .facultyProfile-list-item {
      border-top: 1px solid #D9D9D9;
    }
  }
  .facultyProfile-list-item-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 32px;
    margin-bottom: 24px;
  }
  @media (max-width: 768px) {
    .facultyProfile-list-item-header {
      width: 100%;
      margin: 0 auto 20px;
      justify-content: space-between;
      align-items: flex-end;
      width: 100%;
      gap: 24px;
    }
  }
  .facultyProfile-list-item-header-en {
    font-size: 14px;
    font-family: var(--font-family-outfit);
    font-weight: 400;
    line-height: 1;
    color: #69C927;
  }
  @media (max-width: 768px) {
    .facultyProfile-list-item-header-en {
      font-size: 12px;
    }
  }
  .facultyProfile-list-item-header-name {
    font-size: 36px;
    line-height: 1;
    padding: 16px 0 0;
  }
  @media (max-width: 768px) {
    .facultyProfile-list-item-header-name {
      font-size: 24px;
      padding: 12px 0 0;
    }
  }
  .facultyProfile-list-item-header-name-role {
    display: inline-block;
    white-space: nowrap;
    padding-left: 12px;
    font-weight: 400;
    font-size: 16px;
    line-height: 1;
    color: #818181;
  }
  @media (max-width: 768px) {
    .facultyProfile-list-item-header-name-role {
      padding-left: 8px;
      font-size: 14px;
    }
  }
  .facultyProfile-list-item-header-img {
    flex-shrink: 0;
    width: 142px;
    height: 142px;
  }
  @media (max-width: 768px) {
    .facultyProfile-list-item-header-img {
      width: 100px;
      height: 100px;
    }
  }
  .facultyProfile-list-item-header-img img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 15%;
    transform-origin: center center;
    border-radius: 50%;
  }
  .facultyProfile-list-item-body {
    background-color: #F7F7F7;
    padding: 20px;
    display: flex;
    flex-direction: column;
    gap: 16px;
    flex: 1;
    margin-bottom: 32px;
  }
  @media (max-width: 768px) {
    .facultyProfile-list-item-body {
      gap: 12px;
    }
  }
  .facultyProfile-list-item-body-courses {
    position: relative;
    line-height: 1;
    padding-left: 14px;
  }
  @media (max-width: 768px) {
    .facultyProfile-list-item-body-courses {
      font-size: 14px;
    }
  }
  .facultyProfile-list-item-body-courses::before {
    content: "";
    position: absolute;
    top: 2px;
    left: 0;
    width: 6px;
    height: 6px;
    background-color: #69C927;
  }
  .facultyProfile-list-item-body-subject-list {
    margin: 0;
    padding: 0;
    list-style: none;
    font-size: 0;
    line-height: 1.6;
  }
  .facultyProfile-list-item-body-subject-list-item {
    display: inline;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.6;
  }
  .facultyProfile-list-item-body-subject-list-item:not(:last-child)::after {
    content: "／";
    padding: 0 3px;
  }
  .facultyProfile-list-item-footer {
    display: flex;
    gap: 32px;
  }
  @media (max-width: 768px) {
    .facultyProfile-list-item-footer {
      align-items: center;
      justify-content: center;
      gap: 23px;
    }
  }
  #Communication,
  #Symbiotic_design {
    scroll-margin-top: 120px;
  }
  @media (max-width: 768px) {
    #Communication,
    #Symbiotic_design {
      scroll-margin-top: 64px;
    }
  }
  #Symbiotic_design {
    scroll-margin-top: 200px;
  }
  @media (max-width: 768px) {
    #Symbiotic_design {
      scroll-margin-top: 64px;
    }
  }
}
@layer pages {
  .facultyDetail {
    position: relative;
    padding: 100px 0 200px;
    overflow-x: clip;
  }
  @media (max-width: 768px) {
    .facultyDetail {
      padding: 34px 0 120px;
    }
  }
  .facultyDetail + .facultyDetail-other {
    padding-bottom: 148px;
  }
  @media (max-width: 768px) {
    .facultyDetail + .facultyDetail-other {
      padding-bottom: 96px;
    }
  }
  .facultyDetail-contents {
    display: flex;
    justify-content: space-between;
    gap: 40px;
  }
  @media (max-width: 768px) {
    .facultyDetail-contents {
      flex-direction: column;
      gap: 0;
    }
  }
  .facultyDetail-header {
    width: clamp(280px, 33.3vw, 480px);
    min-width: 0;
  }
  @media (max-width: 768px) {
    .facultyDetail-header {
      width: 100%;
    }
  }
  .facultyDetail-header-sub {
    position: relative;
    display: block;
    width: fit-content;
    font-size: 18px;
    color: #69C927;
    line-height: 1;
    padding: 0 20px;
    margin-bottom: 24px;
  }
  @media (max-width: 768px) {
    .facultyDetail-header-sub {
      font-size: 14px;
      margin-bottom: 20px;
      padding: 0 16px;
    }
  }
  .facultyDetail-header-sub::before {
    content: "（";
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    color: #69C927;
    font-size: 18px;
    line-height: 1;
  }
  @media (max-width: 768px) {
    .facultyDetail-header-sub::before {
      font-size: 14px;
    }
  }
  .facultyDetail-header-sub::after {
    content: "）";
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    color: #69C927;
    font-size: 18px;
    line-height: 1;
  }
  @media (max-width: 768px) {
    .facultyDetail-header-sub::after {
      font-size: 14px;
    }
  }
  .facultyDetail-header-title {
    font-size: clamp(40px, 5.56vw, 80px);
    line-height: 1;
    margin-bottom: 208px;
  }
  @media (max-width: 768px) {
    .facultyDetail-header-title {
      font-size: 40px;
      margin-bottom: 164px;
    }
  }
  .facultyDetail-header-title-role {
    display: inline-block;
    white-space: nowrap;
    font-size: 24px;
    line-height: 1;
    padding-left: 20px;
  }
  @media (max-width: 768px) {
    .facultyDetail-header-title-role {
      font-size: 18px;
      padding-left: 12px;
    }
  }
  .facultyDetail-header-img {
    width: 200px;
    height: 267px;
    flex-shrink: 0;
  }
  @media (max-width: 768px) {
    .facultyDetail-header-img {
      display: none;
    }
  }
  .facultyDetail-header-img img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center 15%;
    object-position: center 15%;
    transform-origin: center center;
    clip-path: inset(0 round 90px);
  }
  .facultyDetail-body {
    width: min(760px, 100%);
    min-width: 0;
  }
  @media (max-width: 768px) {
    .facultyDetail-body {
      width: 100%;
    }
  }
  .facultyDetail-body-list {
    display: flex;
    flex-direction: column;
  }
  .facultyDetail-body-list-item {
    padding: 40px 8px;
    border-bottom: 1px solid #D9D9D9;
  }
  @media (min-width: 769px) {
    .facultyDetail-body-list-item:first-child {
      border-top: 1px solid #D9D9D9;
    }
  }
  @media (max-width: 768px) {
    .facultyDetail-body-list-item {
      padding: 32px 8px;
    }
  }
  .facultyDetail-body-list-item-title {
    font-size: 20px;
    line-height: 1;
    margin-bottom: 16px;
  }
  @media (max-width: 768px) {
    .facultyDetail-body-list-item-title {
      font-size: 16px;
      margin-bottom: 12px;
    }
  }
  .facultyDetail-body-list-item-text {
    font-weight: 400;
  }
  @media (max-width: 768px) {
    .facultyDetail-body-list-item-text {
      font-size: 14px;
    }
  }
  .facultyDetail-body-list-item-text a[target=_blank] {
    color: #69C927;
  }
  .facultyDetail-other .contentsDetail-other-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    padding-bottom: 16px;
  }
  .facultyDetail-other .contentsList-faculty-list-item-link::after {
    bottom: 0;
  }
}
@layer pages {
  .admissionHero .standalonePageHero-header {
    gap: 67px;
  }
  @media (max-width: 768px) {
    .admissionHero .standalonePageHero-header {
      position: relative;
      flex-direction: column;
      gap: 0;
      margin: 0 auto;
    }
  }
  .admissionHero .standalonePageHero-header-title-line {
    display: block;
  }
  .admissionHero .standalonePageHero-header-title-line:last-child {
    padding-left: 134px;
  }
  @media (max-width: 768px) {
    .admissionHero .standalonePageHero-header-title-line:last-child {
      padding-left: 29px;
      padding-top: 8px;
    }
  }
  .admissionHero .standalonePageHero-header-desc {
    padding-top: 163px;
    margin: 0;
  }
  @media (max-width: 768px) {
    .admissionHero .standalonePageHero-header-desc {
      padding-top: 98px;
    }
  }
  .admissionHero .standalonePageHero-header-img {
    margin: 168px 0 0 auto;
  }
  @media (max-width: 768px) {
    .admissionHero .standalonePageHero-header-img {
      position: absolute;
      right: 0;
      top: 100px;
      z-index: -1;
      width: clamp(140px, 36.5vw, 280px);
      margin: 0 0 0 auto;
    }
  }
  .admissionHero .standalonePageHero-header-side {
    writing-mode: vertical-rl;
    font-size: 32px;
    line-height: 1;
    font-weight: 400;
    padding-top: 8px;
  }
  @media (max-width: 768px) {
    .admissionHero .standalonePageHero-header-side {
      position: absolute;
      top: -50px;
      right: 0;
      font-size: 20px;
      line-height: 1;
      padding: 0;
    }
  }
}
@layer pages {
  .admissionDesired {
    padding-top: 163px;
  }
  @media (max-width: 768px) {
    .admissionDesired {
      padding-top: 96px;
    }
  }
  .admissionDesired-content {
    display: flex;
    justify-content: space-between;
    gap: 120px;
  }
  @media (max-width: 768px) {
    .admissionDesired-content {
      flex-direction: column;
      gap: 64px;
    }
  }
  .admissionDesired-content-list {
    display: flex;
    flex-direction: column;
    width: 864px;
  }
  @media (max-width: 768px) {
    .admissionDesired-content-list {
      width: 100%;
    }
  }
  .admissionDesired-content-list-item {
    padding: 48px 0 64px;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 24px;
    border-top: 1px solid #D9D9D9;
    border-bottom: 1px solid #D9D9D9;
  }
  @media (max-width: 768px) {
    .admissionDesired-content-list-item {
      display: grid;
      grid-template-columns: 1fr auto;
      column-gap: 16px;
      row-gap: 24px;
      padding: 24px 0 56px;
    }
  }
  .admissionDesired-content-list-item:last-of-type {
    border-bottom: none;
    padding-bottom: 0;
  }
  .admissionDesired-content-list-item-num {
    position: relative;
    color: #69C927;
    font-size: 20px;
    font-family: var(--font-family-outfit);
    line-height: 1;
    font-weight: 400;
    padding: 0 22px;
    flex-shrink: 0;
  }
  @media (max-width: 768px) {
    .admissionDesired-content-list-item-num {
      grid-column: 2;
      grid-row: 1;
      align-self: start;
      font-size: 16px;
      padding: 0 18px;
    }
  }
  .admissionDesired-content-list-item-num::before {
    content: "（";
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    color: #69C927;
    font-size: 20px;
    line-height: 1;
  }
  @media (max-width: 768px) {
    .admissionDesired-content-list-item-num::before {
      font-size: 16px;
    }
  }
  .admissionDesired-content-list-item-num::after {
    content: "）";
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    color: #69C927;
    font-size: 20px;
    line-height: 1;
  }
  @media (max-width: 768px) {
    .admissionDesired-content-list-item-num::after {
      font-size: 16px;
    }
  }
  .admissionDesired-content-list-item-title {
    font-size: 32px;
    line-height: 1.4;
  }
  @media (max-width: 768px) {
    .admissionDesired-content-list-item-title {
      grid-column: 1;
      grid-row: 1;
      align-self: start;
      font-size: 24px;
    }
  }
  .admissionDesired-content-list-item-text {
    width: 380px;
    font-weight: 400;
  }
  @media (max-width: 768px) {
    .admissionDesired-content-list-item-text {
      grid-column: 1/-1;
      grid-row: 2;
      width: 100%;
    }
  }
}
@layer pages {
  .admissionMenu {
    padding: 160px 0;
    position: relative;
  }
  @media (max-width: 768px) {
    .admissionMenu {
      padding: 120px 0 96px;
    }
  }
  .admissionMenu-list {
    display: grid;
    grid-template-columns: minmax(0, 540fr) minmax(0, 330fr) minmax(0, 330fr);
    grid-template-rows: auto auto;
    column-gap: 80px;
    align-items: start;
  }
  @media (max-width: 768px) {
    .admissionMenu-list {
      grid-template-columns: 1fr;
      grid-template-rows: auto auto auto;
      column-gap: 0;
      row-gap: 40px;
    }
  }
  .admissionMenu-list-item {
    min-width: 0;
  }
  @media (hover: hover) {
    .admissionMenu-list-item:hover .admissionMenu-list-item-img img {
      transform: scale(1.1);
    }
    .admissionMenu-list-item:hover .admissionMenu-list-item-title .hover-underline,
    .admissionMenu-list-item:hover .admissionMenu-list-item-text .hover-underline {
      background-size: 100% 2px;
    }
    .admissionMenu-list-item:hover .btn-blank {
      opacity: 1;
    }
  }
  .admissionMenu-list-item-img {
    overflow: hidden;
  }
  .admissionMenu-list-item-img img {
    display: block;
    width: 100%;
    height: auto;
    transition: transform 0.4s;
  }
  .admissionMenu-list-item:nth-child(2) {
    padding-top: 180px;
  }
  @media (max-width: 768px) {
    .admissionMenu-list-item:nth-child(2) {
      padding-top: 0;
      padding-left: 75px;
    }
  }
  .admissionMenu-list-item:last-child {
    padding-top: 80px;
  }
  @media (max-width: 768px) {
    .admissionMenu-list-item:last-child {
      padding-top: 0;
      padding-right: 75px;
    }
  }
  .admissionMenu-list-item-body {
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding-top: 16px;
  }
  @media (max-width: 768px) {
    .admissionMenu-list-item-body {
      gap: 8px;
      padding-top: 12px;
    }
  }
  .admissionMenu-list-item-title {
    font-size: 28px;
    line-height: 1.4;
  }
  @media (max-width: 768px) {
    .admissionMenu-list-item-title {
      font-size: 24px;
    }
  }
  .admissionMenu-list-item-text {
    font-weight: 400;
  }
  @media (max-width: 768px) {
    .admissionMenu-list-item-text {
      font-size: 14px;
    }
  }
  .admissionMenu-list-item .btn-blank {
    margin-top: 8px;
  }
  @media (max-width: 768px) {
    .admissionMenu-list-item .btn-blank {
      margin-top: 16px;
    }
  }
}
@layer pages {
  .careerData {
    padding: 204px 0 200px;
  }
  @media (max-width: 768px) {
    .careerData .pc {
      display: none;
    }
  }
  @media (min-width: 769px) {
    .careerData .sp {
      display: none;
    }
  }
  @media (max-width: 768px) {
    .careerData {
      padding: 96px 0;
    }
  }
  @media (max-width: 768px) {
    .careerData .contentsDetail-other-header-title {
      font-size: 40px;
    }
  }
  .careerData-content {
    display: flex;
    flex-wrap: wrap;
    gap: 32px;
  }
  @media (min-width: 769px) {
    .careerData-content {
      --career-data-row-gap: 64px;
    }
  }
  @media (max-width: 768px) {
    .careerData-content {
      display: grid;
      grid-template-columns: 120px 1fr;
      gap: 16px;
    }
  }
  .careerData-content-box {
    min-width: 0;
  }
  @media (min-width: 769px) {
    .careerData-content-box:first-child {
      flex: 0 0 calc((100% - var(--career-data-row-gap)) * 502 / 1296);
      max-width: 502px;
    }
  }
  @media (max-width: 768px) {
    .careerData-content-box:first-child {
      grid-column: 1/-1;
      grid-row: 1;
      flex: none;
      margin-bottom: 32px;
    }
  }
  .careerData-content-box:nth-child(2), .careerData-content-box:nth-child(5), .careerData-content-box:nth-child(6) {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    background-color: #F0F0F0;
    padding: 20px 20px 32px 20px;
  }
  @media (max-width: 768px) {
    .careerData-content-box:nth-child(2), .careerData-content-box:nth-child(5), .careerData-content-box:nth-child(6) {
      padding: 20px 20px 24px 20px;
    }
  }
  @media (min-width: 769px) {
    .careerData-content-box:nth-child(2) .careerData-content-box-title, .careerData-content-box:nth-child(5) .careerData-content-box-title, .careerData-content-box:nth-child(6) .careerData-content-box-title {
      padding-right: 100px;
    }
  }
  @media (min-width: 769px) {
    .careerData-content-box:nth-child(2) {
      flex: 0 0 calc((100% - var(--career-data-row-gap)) * 502 / 1296);
      max-width: 502px;
    }
  }
  @media (max-width: 768px) {
    .careerData-content-box:nth-child(2) {
      grid-column: 1/-1;
      grid-row: 2;
      flex: none;
    }
  }
  .careerData-content-box:nth-child(2)::after {
    content: "";
    position: absolute;
    top: 20px;
    right: 20px;
    width: 80px;
    height: 80px;
    background-image: url(../img/career/career-icon01.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
  }
  @media (max-width: 768px) {
    .careerData-content-box:nth-child(2)::after {
      width: 64px;
      height: 64px;
    }
  }
  @media (min-width: 769px) {
    .careerData-content-box:nth-child(3) {
      flex: 0 0 calc((100% - var(--career-data-row-gap)) * 292 / 1296);
      max-width: 292px;
    }
  }
  @media (max-width: 768px) {
    .careerData-content-box:nth-child(3) {
      grid-column: 1;
      grid-row: 4;
      flex: none;
      align-self: start;
      height: 182px;
    }
  }
  @media (min-width: 769px) {
    .careerData-content-box:nth-child(4) {
      flex: 0 0 calc((100% - var(--career-data-row-gap)) * 340 / 1296);
      max-width: 340px;
    }
  }
  @media (max-width: 768px) {
    .careerData-content-box:nth-child(4) {
      grid-column: 1;
      grid-row: 5;
      flex: none;
      align-self: start;
      height: 164px;
    }
  }
  @media (min-width: 769px) {
    .careerData-content-box:nth-child(5) {
      flex: 0 0 calc((100% - var(--career-data-row-gap)) * 664 / 1296);
      max-width: 664px;
    }
  }
  @media (max-width: 768px) {
    .careerData-content-box:nth-child(5) {
      grid-column: 1/-1;
      grid-row: 3;
      flex: none;
    }
  }
  .careerData-content-box:nth-child(5)::after {
    content: "";
    position: absolute;
    top: 20px;
    right: 20px;
    width: 80px;
    height: 80px;
    background-image: url(../img/career/career-icon02.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
  }
  @media (max-width: 768px) {
    .careerData-content-box:nth-child(5)::after {
      width: 64px;
      height: 64px;
    }
  }
  .careerData-content-box:nth-child(5) .careerData-content-box-inner {
    flex-direction: row;
    align-items: flex-end;
    gap: 32px;
  }
  @media (max-width: 768px) {
    .careerData-content-box:nth-child(5) .careerData-content-box-inner {
      flex-direction: column;
      align-items: flex-start;
      gap: 12px;
    }
  }
  .careerData-content-box:nth-child(5) .careerData-content-box-inner-number {
    font-size: clamp(72px, 9.17vw, 132px);
  }
  @media (max-width: 768px) {
    .careerData-content-box:nth-child(5) .careerData-content-box-inner-number {
      font-size: 80px;
    }
  }
  @media (min-width: 769px) {
    .careerData-content-box:nth-child(6) {
      flex: 0 0 calc((100% - var(--career-data-row-gap)) * 292 / 1296);
      max-width: 292px;
    }
  }
  @media (max-width: 768px) {
    .careerData-content-box:nth-child(6) {
      grid-column: 2;
      grid-row: 4/6;
      flex: none;
      align-self: stretch;
    }
  }
  .careerData-content-box:nth-child(6)::after {
    content: "";
    position: absolute;
    top: 20px;
    right: 20px;
    width: 80px;
    height: 80px;
    background-image: url(../img/career/career-icon05.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
  }
  @media (max-width: 768px) {
    .careerData-content-box:nth-child(6)::after {
      width: 64px;
      height: 64px;
    }
  }
  @media (max-width: 768px) {
    .careerData-content-box:nth-child(6) .careerData-content-box-title {
      margin: 78px 0 32px 4px;
    }
  }
  .careerData-content-box:nth-child(6) .careerData-content-box-inner-number {
    font-size: clamp(56px, 6.67vw, 96px);
  }
  @media (max-width: 768px) {
    .careerData-content-box:nth-child(6) .careerData-content-box-inner-number {
      font-size: 64px;
    }
  }
  @media (max-width: 768px) {
    .careerData-content-box:nth-child(6) .careerData-content-box-inner-text {
      padding-left: 6px;
    }
  }
  .careerData-content-box-img {
    height: 100%;
  }
  .careerData-content-box-img img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .careerData-content-box-title {
    position: relative;
    font-size: 18px;
    line-height: 1.4;
    padding-left: 24px;
  }
  @media (max-width: 768px) {
    .careerData-content-box-title {
      font-size: 16px;
    }
  }
  .careerData-content-box-title::before {
    content: "";
    position: absolute;
    top: 6px;
    left: 0;
    width: 8px;
    height: 8px;
    background-color: #69C927;
  }
  .careerData-content-box-inner {
    display: flex;
    flex-direction: column;
    gap: 12px;
  }
  .careerData-content-box-inner-number {
    font-size: clamp(80px, 11.11vw, 160px);
    line-height: 1;
    font-weight: 400;
    font-family: var(--font-family-outfit);
    color: #69C927;
    letter-spacing: -0.02em;
  }
  @media (max-width: 768px) {
    .careerData-content-box-inner-number {
      font-size: 96px;
    }
  }
  .careerData-content-box-inner-number-percent {
    font-size: 40px;
    line-height: 1;
    font-weight: 700;
    font-family: var(--font-family-outfit);
    color: #69C927;
  }
  @media (max-width: 768px) {
    .careerData-content-box-inner-number-percent {
      font-size: 32px;
    }
  }
  .careerData-content-box-inner-text {
    font-weight: 400;
  }
  @media (max-width: 768px) {
    .careerData-content-box-inner-text {
      font-size: 14px;
    }
  }
}
@layer pages {
  .careerEmployment {
    padding-bottom: 200px;
  }
  @media (max-width: 768px) {
    .careerEmployment {
      padding-bottom: 96px;
    }
  }
  .careerEmployment-content {
    margin-top: 80px;
  }
  @media (max-width: 768px) {
    .careerEmployment-content {
      margin-top: 16px;
    }
  }
  .careerEmployment-content-list {
    display: flex;
    flex-direction: column;
    gap: 96px;
  }
  @media (max-width: 768px) {
    .careerEmployment-content-list {
      gap: 89px;
    }
  }
  .careerEmployment-content-list-item {
    margin-top: 48px;
  }
  .careerEmployment-content-list-item:first-child .careerEmployment-content-list-item-title::before {
    content: "";
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
    width: 48px;
    height: 48px;
    background-image: url(../img/career/career-icon03.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
  }
  @media (max-width: 768px) {
    .careerEmployment-content-list-item:first-child .careerEmployment-content-list-item-title::before {
      width: 32px;
      height: 32px;
    }
  }
  .careerEmployment-content-list-item:last-child {
    margin-top: 0;
  }
  .careerEmployment-content-list-item:last-child .careerEmployment-content-list-item-title::before {
    content: "";
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
    width: 48px;
    height: 48px;
    background-image: url(../img/career/career-icon04.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
  }
  @media (max-width: 768px) {
    .careerEmployment-content-list-item:last-child .careerEmployment-content-list-item-title::before {
      width: 32px;
      height: 32px;
    }
  }
  @media (max-width: 768px) {
    .careerEmployment-content-list-item-mv {
      margin-bottom: 40px;
    }
  }
  .careerEmployment-content-list-item-title {
    position: relative;
    font-size: 32px;
    line-height: 1;
    padding-left: 64px;
    margin-bottom: 24px;
  }
  @media (max-width: 768px) {
    .careerEmployment-content-list-item-title {
      font-size: 24px;
      padding-left: 48px;
    }
  }
  .careerEmployment-content-list-item-lead {
    font-weight: 400;
  }
  @media (max-width: 768px) {
    .careerEmployment-content-list-item-lead {
      margin-top: 14px;
    }
  }
  .careerEmployment-content-list-item-body {
    display: grid;
    grid-template-columns: minmax(0, 466fr) minmax(0, 466fr) minmax(0, 340fr);
    gap: 24px;
    margin-top: 48px;
  }
  @media (max-width: 768px) {
    .careerEmployment-content-list-item-body {
      display: flex;
      flex-direction: column;
      gap: 16px;
      margin-top: 32px;
    }
  }
  .careerEmployment-content-list-item-body-box {
    min-width: 0;
  }
  .careerEmployment-content-list-item-body-box:not(:last-child) {
    border: 1px solid #D9D9D9;
    padding: 24px 32px;
  }
  .careerEmployment-content-list-item-body-box:last-child {
    justify-self: end;
  }
  @media (max-width: 768px) {
    .careerEmployment-content-list-item-body-box:last-child {
      justify-self: auto;
    }
  }
  .careerEmployment-content-list-item-body-box-title {
    color: #69C927;
    font-size: 18px;
    margin-bottom: 16px;
  }
  @media (max-width: 768px) {
    .careerEmployment-content-list-item-body-box-title {
      font-size: 16px;
    }
  }
  .careerEmployment-content-list-item-body-box-list {
    display: flex;
    flex-direction: column;
  }
  .careerEmployment-content-list-item-body-box-list-item {
    font-size: 14px;
    line-height: 1.8;
    font-weight: 400;
  }
  .careerEmployment-content-list-item-body-box-img {
    width: 100%;
    max-width: 340px;
  }
  @media (max-width: 768px) {
    .careerEmployment-content-list-item-body-box-img {
      width: 100%;
      max-width: none;
    }
  }
}
@layer pages {
  .careerSupport {
    position: relative;
  }
  @media (min-width: 769px) {
    .careerSupport::before {
      content: "";
      background-image: url(../img/career/career-img06.png);
      background-size: cover;
      background-position: center;
      background-repeat: no-repeat;
      width: 100%;
      height: 752px;
      position: absolute;
      top: 0;
      left: 50%;
      transform: translateX(-50%);
    }
  }
  .careerSupport-content {
    padding-top: 420px;
  }
  @media (max-width: 768px) {
    .careerSupport-content {
      padding: 48px 0 96px;
    }
  }
  .careerSupport-content-inner {
    position: relative;
    max-width: 1120px;
    margin: 0 auto 0 -40px;
    background-color: #fff;
    padding: 96px 120px 160px 40px;
  }
  @media (min-width: 769px) {
    .careerSupport-content-inner::before {
      content: "";
      position: absolute;
      top: 0;
      bottom: 0;
      right: 100%;
      width: 100vw;
      background-color: #fff;
      pointer-events: none;
    }
  }
  @media (max-width: 768px) {
    .careerSupport-content-inner {
      width: 100%;
      padding: 0;
      margin: 0;
    }
  }
  .careerSupport .contentsDetail-other-header {
    align-items: flex-start;
    padding: 0;
  }
  @media (max-width: 768px) {
    .careerSupport .contentsDetail-other-header {
      flex-direction: column;
      gap: 32px;
    }
  }
  .careerSupport .contentsDetail-other-header-desc {
    padding-top: 0;
    display: flex;
    flex-direction: column;
    gap: 76px;
  }
  @media (max-width: 768px) {
    .careerSupport .contentsDetail-other-header-desc {
      gap: 48px;
    }
  }
}
@layer pages {
  .access {
    padding: 114px 0 160px;
  }
  @media (max-width: 768px) {
    .access {
      padding: 96px 0;
    }
  }
  .access-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 120px;
  }
  @media (max-width: 768px) {
    .access-list {
      grid-template-columns: 1fr;
      gap: 64px;
    }
  }
  .access-list-item {
    display: flex;
    flex-direction: column;
    gap: 32px;
  }
  .access-list-item:last-child {
    padding-top: 160px;
  }
  @media (max-width: 768px) {
    .access-list-item:last-child {
      padding-top: 0;
    }
  }
  .access-list-item-map {
    width: 100%;
    height: 465px;
  }
  @media (max-width: 768px) {
    .access-list-item-map {
      height: 300px;
    }
  }
  .access-list-item-map iframe {
    width: 100%;
    height: 100%;
  }
  .access-list-item-body {
    display: flex;
    flex-direction: column;
  }
  .access-list-item-body-sub {
    font-size: 18px;
    line-height: 1;
    color: #69C927;
  }
  @media (max-width: 768px) {
    .access-list-item-body-sub {
      font-size: 14px;
    }
  }
  .access-list-item-body-title {
    font-size: clamp(24px, 2.78vw, 40px);
    line-height: 1;
    padding: 32px 0 24px;
  }
  @media (max-width: 768px) {
    .access-list-item-body-title {
      font-size: 24px;
      padding: 20px 0;
    }
  }
  .access-list-item-body-address {
    font-size: 14px;
    line-height: 1;
    font-weight: 400;
  }
  .access-list-item-body-table {
    margin-top: 48px;
  }
  @media (max-width: 768px) {
    .access-list-item-body-table {
      margin-top: 40px;
    }
  }
  .access-list-item-body-table-row {
    border-top: 1px solid #D9D9D9;
  }
  .access-list-item-body-table-row-ttl {
    padding: 30px 32px 20px 8px;
    width: 168px;
  }
  @media (max-width: 768px) {
    .access-list-item-body-table-row-ttl {
      font-size: 14px;
      width: 80px;
      padding: 16px 8px;
    }
  }
  .access-list-item-body-table-row-data {
    font-weight: 400;
    padding: 20px 8px 20px 0;
  }
  @media (max-width: 768px) {
    .access-list-item-body-table-row-data {
      width: 231px;
      font-size: 14px;
      padding: 16px 8px;
    }
  }
}
@layer pages {
  .contact {
    background-color: #F0F0F0;
    padding: 120px 0 160px;
  }
  @media (max-width: 768px) {
    .contact {
      padding: 64px 0 96px;
    }
  }
  .contact-content {
    display: grid;
    align-items: start;
    min-width: 0;
    width: 100%;
  }
  @media (min-width: 769px) {
    .contact-content {
      --contact-content-gap: max(32px, calc(100% - 1200px));
      grid-template-columns: minmax(0, 383fr) minmax(0, 817fr);
      column-gap: var(--contact-content-gap);
    }
  }
  @media (max-width: 768px) {
    .contact-content {
      grid-template-columns: 1fr;
      gap: 48px;
    }
  }
  .contact-list {
    display: flex;
    flex-direction: column;
    min-width: 0;
  }
  .contact-list-item {
    padding: 11px 12px 58px 8px;
    border-top: 1px solid #D9D9D9;
    display: flex;
    justify-content: space-between;
    align-items: start;
    min-width: 0;
    gap: 16px;
  }
  @media (max-width: 768px) {
    .contact-list-item {
      padding: 32px 0 56px 0;
      flex-direction: column-reverse;
      align-items: center;
      gap: 24px;
    }
    .contact-list-item:last-child {
      padding-bottom: 0;
    }
  }
  .contact-list-item-img {
    max-width: 180px;
    flex-shrink: 0;
    min-width: 0;
  }
  @media (max-width: 768px) {
    .contact-list-item-img {
      max-width: 100%;
      width: 100%;
    }
  }
  .contact-list-item-img img {
    display: block;
    width: 100%;
    height: auto;
    margin: 0 auto;
  }
  .contact-list-item:last-child {
    border-bottom: 1px solid #D9D9D9;
  }
  @media (max-width: 768px) {
    .contact-list-item:last-child {
      border-bottom: none;
      padding-bottom: 0;
    }
  }
  .contact-list-item-body {
    display: flex;
    flex-direction: column;
    gap: 16px;
    flex: 1 1 auto;
    min-width: 0;
  }
  @media (max-width: 768px) {
    .contact-list-item-body {
      width: 100%;
      gap: 12px;
    }
  }
  .contact-list-item-body-title {
    padding: 47px 0 16px;
    font-size: 32px;
    line-height: 1;
  }
  @media (max-width: 768px) {
    .contact-list-item-body-title {
      padding: 0 0 12px;
      font-size: 24px;
    }
  }
  .contact-list-item-body-tell, .contact-list-item-body-email {
    position: relative;
    font-family: "Outfit", sans-serif;
    font-size: 20px;
    line-height: 1;
    font-weight: 300;
    padding-left: 40px;
  }
  @media (max-width: 768px) {
    .contact-list-item-body-tell, .contact-list-item-body-email {
      font-size: 18px;
      padding-left: 32px;
    }
  }
  .contact-list-item-body-tell::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 24px;
    height: 24px;
    background: url(../img/common/icon_tell.svg) no-repeat center center/contain;
  }
  @media (max-width: 768px) {
    .contact-list-item-body-tell::before {
      width: 20px;
      height: 20px;
    }
  }
  @media (min-width: 769px) {
    .contact-list-item-body-email {
      word-break: break-all;
    }
  }
  .contact-list-item-body-email::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 24px;
    height: 24px;
    background: url(../img/common/icon_mail.svg) no-repeat center center/contain;
  }
  @media (max-width: 768px) {
    .contact-list-item-body-email::before {
      width: 20px;
      height: 20px;
    }
  }
  .contact-list-item-body-email a {
    transition: color 0.2s;
  }
  @media (hover: hover) {
    .contact-list-item-body-email a:hover {
      color: #69C927;
      opacity: 1;
    }
  }
}
@layer utilities {
  .text-center {
    text-align: center;
  }
  .text-left {
    text-align: left;
  }
  .text-right {
    text-align: right;
  }
  .m-sm {
    margin: var(--spacing-sm);
  }
  .mt-sm {
    margin-top: var(--spacing-sm);
  }
  .mr-sm {
    margin-right: var(--spacing-sm);
  }
  .ml-sm {
    margin-left: var(--spacing-sm);
  }
  .mb-sm {
    margin-bottom: var(--spacing-sm);
  }
  .mx-sm {
    margin-inline: var(--spacing-sm);
  }
  .my-sm {
    margin-block: var(--spacing-sm);
  }
  .p-sm {
    padding: var(--spacing-sm);
  }
  .pt-sm {
    padding-top: var(--spacing-sm);
  }
  .pr-sm {
    padding-right: var(--spacing-sm);
  }
  .pb-sm {
    padding-bottom: var(--spacing-sm);
  }
  .px-sm {
    padding-inline: var(--spacing-sm);
  }
  .py-sm {
    padding-block: var(--spacing-sm);
  }
  .m-md {
    margin: var(--spacing-md);
  }
  .mt-md {
    margin-top: var(--spacing-md);
  }
  .mr-md {
    margin-right: var(--spacing-md);
  }
  .ml-md {
    margin-left: var(--spacing-md);
  }
  .mb-md {
    margin-bottom: var(--spacing-md);
  }
  .mx-md {
    margin-inline: var(--spacing-md);
  }
  .my-md {
    margin-block: var(--spacing-md);
  }
  .p-md {
    padding: var(--spacing-md);
  }
  .pt-md {
    padding-top: var(--spacing-md);
  }
  .pr-md {
    padding-right: var(--spacing-md);
  }
  .pb-md {
    padding-bottom: var(--spacing-md);
  }
  .px-md {
    padding-inline: var(--spacing-md);
  }
  .py-md {
    padding-block: var(--spacing-md);
  }
  .m-lg {
    margin: var(--spacing-lg);
  }
  .mt-lg {
    margin-top: var(--spacing-lg);
  }
  .mr-lg {
    margin-right: var(--spacing-lg);
  }
  .ml-lg {
    margin-left: var(--spacing-lg);
  }
  .mb-lg {
    margin-bottom: var(--spacing-lg);
  }
  .mx-lg {
    margin-inline: var(--spacing-lg);
  }
  .my-lg {
    margin-block: var(--spacing-lg);
  }
  .p-lg {
    padding: var(--spacing-lg);
  }
  .pt-lg {
    padding-top: var(--spacing-lg);
  }
  .pr-lg {
    padding-right: var(--spacing-lg);
  }
  .pb-lg {
    padding-bottom: var(--spacing-lg);
  }
  .px-lg {
    padding-inline: var(--spacing-lg);
  }
  .py-lg {
    padding-block: var(--spacing-lg);
  }
  .m-xl {
    margin: var(--spacing-xl);
  }
  .mt-xl {
    margin-top: var(--spacing-xl);
  }
  .mr-xl {
    margin-right: var(--spacing-xl);
  }
  .ml-xl {
    margin-left: var(--spacing-xl);
  }
  .mb-xl {
    margin-bottom: var(--spacing-xl);
  }
  .mx-xl {
    margin-inline: var(--spacing-xl);
  }
  .my-xl {
    margin-block: var(--spacing-xl);
  }
  .p-xl {
    padding: var(--spacing-xl);
  }
  .pt-xl {
    padding-top: var(--spacing-xl);
  }
  .pr-xl {
    padding-right: var(--spacing-xl);
  }
  .pb-xl {
    padding-bottom: var(--spacing-xl);
  }
  .px-xl {
    padding-inline: var(--spacing-xl);
  }
  .py-xl {
    padding-block: var(--spacing-xl);
  }
  .none {
    display: none;
  }
  @media (max-width: 768px) {
    .pc {
      display: none;
    }
  }
  @media (min-width: 769px) {
    .sp {
      display: none;
    }
  }
  .wrap {
    margin: 0 auto;
  }
  @media (min-width: 769px) {
    .wrap {
      max-width: 1440px;
      padding: 0 40px;
    }
  }
  @media (max-width: 768px) {
    .wrap {
      padding: 0 20px;
    }
  }
  main {
    position: relative;
  }
  @media (max-width: 768px) {
    main {
      padding-top: 64px;
    }
  }
}

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