@charset "UTF-8";
/* ==========================================================================
Base
========================================================================== */
/*!
 * @acab/reset.css
 */
*,
*::before,
*::after {
  box-sizing: border-box; /* もちろん、より直感的なbox-sizingに設定 */
  margin: 0; /* マージンは0に */
  padding: 0; /* パディングも常に0に */
}

:where([hidden]:not([hidden=until-found])) {
  display: none !important; /* hiddenは非表示を意味します */
}

:where(html) {
  -webkit-text-size-adjust: none; /* iOSのランドスケープでテキストが調整されないようにする */
  color-scheme: dark light; /* ユーザーがダークテーマを好む場合、自動的にダークテーマになる */
}

@supports not (min-block-size: 100dvb) {
  :where(html) {
    block-size: 100%;
  }
}
@media (prefers-reduced-motion: no-preference) {
  :where(html:focus-within) {
    scroll-behavior: smooth; /* 何かにフォーカスがある場合のみスムーズスクロール */
  }
}
:where(body) {
  block-size: 100%; /* サファリ以外のブラウザのフォールバック */
  block-size: 100dvb; /* 1dvbは動的ビューポートの長さの1%、100dvbで高さいっぱいに */
  font-family: system-ui, sans-serif; /* timeの代わりにシステムフォントを使用 */
  line-height: 1.5; /* アクセシブルな行の高さ */
  -webkit-font-smoothing: antialiased; /* テキストのレンダリングを改善 */
}

:where(input, button, textarea, select) {
  color: inherit; /* カラーも継承 */
  font: inherit; /* フォーム コントロールは親フォントを継承 */
}

:where(textarea) {
  resize: vertical; /* テキストエリアの水平リサイズを無効に */
  resize: block;
}

:where(button, label, select, summary, [role=button], [role=option]) {
  cursor: pointer; /* インタラクティブなものにカーソルを合わせる */
}

:where(:disabled) {
  cursor: not-allowed; /* フォームコントロール無効時のカーソルを許可しない */
}

:where(label:has(> input:disabled), label:has(+ input:disabled)) {
  cursor: not-allowed; /* ラベルにもカーソルを許可しない */
}

:where(button) {
  border-style: solid; /* ボタンのボーダーのスタイルを設定しやすくする */
}

:where(a) {
  text-underline-offset: 0.2ex; /* 下線の上にスペースを追加する */
}

:where(ul, ol) {
  list-style: none; /* ビュレットを削除、必要に応じて手動で追加する */
}

:where(img, svg, video, canvas, audio, iframe, embed, object) {
  display: block; /* 置換された要素をより予測可能にする */
}

:where(img, picture, svg) {
  block-size: auto; /* アスペクト比を保持 */
  max-inline-size: 100%; /* images should never overflow past the available space */
}

:where(p, h1, h2, h3, h4, h5, h6) {
  overflow-wrap: break-word; /* 長い単語は改行 */
}

:where(h1, h2, h3) {
  line-height: calc(1em + 0.5rem); /* 見出しの行の高さを減らす */
}

:where(hr) {
  block-size: 0;
  /* より一貫性のある、スタイリッシュなhr */
  border: none;
  border-block-start: 1px solid;
  color: inherit;
  overflow: visible;
}

:where(:focus-visible) {
  /* より一貫性のある、カスタマイズ可能なフォーカスのアウトライン */
  outline: 2px solid var(--focus-color, Highlight);
  outline-offset: 2px;
}

/* .visually-hidden は base 側の定義を優先するため !important を使用 */
:where(.visually-hidden:not(:focus, :active, :focus-within, .not-visually-hidden)) {
  border: 0 !important;
  clip-path: inset(50%) !important;
  height: 1px !important;
  overflow: hidden !important;
  position: absolute !important;
  white-space: nowrap !important;
  width: 1px !important;
}

:root {
  --scroll-padding-pc: 12.8rem;
  --scroll-padding-sp: 6.4rem;
  --font-family-primary: "Noto Sans JP", hiragino sans, "Hiragino Kaku Gothic ProN", meiryo, sans-serif;
  --font-family-en: "Poppins", sans-serif;
}
:root:lang(en) {
  --font-family-primary: "Poppins", sans-serif;
}
:root:lang(ko) {
  --font-family-primary: "Noto Sans KR", sans-serif;
}
:root {
  --font-size-xs: 1.1rem;
  --font-size-small-m: 1.4rem;
  --font-size-s: 1.3rem;
  --font-size-m: 1.5rem;
  --font-size-l: 1.8rem;
  --font-size-7xl: 5.4rem;
  --font-size-8xl: 6.2rem;
  --color-blue-main: #005fd1;
  --color-blue-disable: #0069d24d;
  --color-blue-hover: #00366b;
  --color-blue-hover-light: #f5faff;
  --color-blue-bg: #f1f8ff;
  --color-pink-main: #ff0037;
  --color-pink-sub: #dc0016;
  --color-black-main: #272727;
  --color-black-sub: #717171;
  --color-black-line: #2727272e;
  --color-black-disable: #2727274d;
  --color-gray-bg: #f5f6f7;
  --color-gray-border: #e0e0e0;
  --color-white-main: #fff;
  --color-tag-1-2: #eee;
  --color-tag-1-1: #272727;
  --color-tag-2-2: #ffeff3;
  --color-tag-2-1: var(--color-pink-sub);
  --color-tag-3-2: #e1f0ff;
  --color-tag-3-1: #005cb7;
}

/* 例外: 768〜991px の狭い PC で rem 基準を縮小する。コンポーネントでは使わず _base.scss の html だけ */
html {
  font-size: 62.5%;
  scroll-behavior: smooth;
  scroll-padding-top: var(--scroll-padding-sp);
  /* 例外: 狭い PC 幅では html の rem 基準だけ下げ、サイト全体を少し小さく表示する */
}
@media print, screen and (min-width:768px) and (max-width:991px) {
  html {
    font-size: 56.25%;
  }
}
@media print, screen and (min-width:768px) {
  html {
    scroll-padding-top: var(--scroll-padding-pc);
  }
}

body {
  background-color: var(--color-white-main);
  color: var(--color-black-main);
  font-family: var(--font-family-primary);
  font-feature-settings: "palt" 1;
  font-size: 1.6rem;
  -webkit-font-smoothing: antialiased;
  font-weight: 400;
  letter-spacing: 0.03em;
  line-height: 1.7;
  padding-top: var(--scroll-padding-sp);
  word-break: break-all;
}
@media print, screen and (min-width:768px) {
  body {
    padding-top: var(--scroll-padding-pc);
  }
}
html[lang=ja] body {
  text-autospace: normal;
}
html[lang=en] body {
  overflow-wrap: break-word;
  word-break: normal;
}

::-moz-selection {
  background-color: var(--color-blue-main);
  color: var(--color-white-main);
}

::selection {
  background-color: var(--color-blue-main);
  color: var(--color-white-main);
}

:where(a) {
  color: inherit;
  text-decoration: none;
}
@media (hover: hover) {
  :where(a):hover {
    text-decoration: none;
  }
}

:where(ol),
:where(ul),
:where(dl) {
  list-style: none;
}

:where(em) {
  font-style: normal;
  font-weight: bold;
}

:where(i) {
  font-style: normal;
}

:where(img) {
  display: block;
  height: auto;
  width: 100%;
}

:where(button) {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: transparent;
  border: 0;
  border-radius: 0;
  cursor: pointer;
}

:where(input),
:where(textarea) {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: var(--color-white-main);
  border: 1px solid var(--color-black-main);
}

:where(a):focus-visible,
:where(button):focus-visible,
:where(summary):focus-visible {
  border-radius: 0.2rem;
  outline: 0.2rem solid var(--color-blue-main);
  outline-offset: 0.4rem;
  transition: outline 0.2s ease;
}

:where([tabindex="-1"]):focus {
  outline: none;
}

.visually-hidden {
  border: 0 !important;
  clip: rect(0, 0, 0, 0) !important;
  height: 1px !important;
  margin: -1px !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: absolute !important;
  white-space: nowrap !important;
  width: 1px !important;
}

/* ==========================================================================
Layout
========================================================================== */
.l-page__inner {
  margin: 0 auto;
  max-width: 1200px;
}
@media print, screen and (max-width:767px) {
  .l-page__inner {
    padding: 0 24px;
  }
}

@media print, screen and (min-width:768px) {
  .l-page-heading {
    padding: 2rem 4rem 12.8rem;
  }
  .l-page-heading .c-breadcrumb,
  .l-page-heading .c-page-title,
  .l-page-heading .c-page-title__inner {
    display: contents;
  }
  .l-page-heading .c-breadcrumb__inner {
    grid-column: 1;
    grid-row: 1;
    margin-inline: 0;
    max-width: none;
  }
  .l-page-heading .c-page-title__content {
    grid-column: 1;
    grid-row: 2;
  }
  .l-page-heading .c-page-title__language {
    align-self: center;
    grid-column: 2;
    grid-row: 1/span 2;
  }
}
@media print, screen and (min-width:768px) {
  .l-page-heading__inner {
    display: grid;
    gap: 3.2rem 4rem;
    grid-template-columns: minmax(0, 1fr) auto;
    margin-inline: auto;
    max-width: 128rem;
  }
}

/* ==========================================================================
Component（カスタムブロック以外）
========================================================================== */
.c-footer {
  background: var(--color-white-main);
  border-top: 0.4rem solid var(--color-blue-main);
  padding: 6.4rem 2.4rem;
}
@media print, screen and (min-width:768px) {
  .c-footer {
    padding: 9.6rem 4rem 11.2rem;
  }
}
.c-footer__inner {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
}
@media print, screen and (min-width:768px) {
  .c-footer__inner {
    align-items: stretch;
    display: grid;
    gap: 8.8rem 8rem;
    grid-template-areas: "logo links" "copyright links";
    grid-template-columns: auto auto;
    justify-content: space-between;
    margin-inline: auto;
    max-width: 124rem;
  }
}
.c-footer__logo {
  max-width: 26rem;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .c-footer__logo {
    grid-area: logo;
    width: 26rem;
  }
}
.c-footer__logo a {
  display: block;
}
.c-footer__logo img {
  display: block;
  height: auto;
  width: 100%;
}
.c-footer__links {
  display: grid;
  gap: 2.4rem;
  grid-template-columns: 1fr;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .c-footer__links {
    gap: 6.4rem;
    grid-area: links;
    grid-column: 2;
    grid-row: 1/3;
    grid-template-columns: auto auto;
    width: auto;
  }
}
.c-footer__nav {
  display: grid;
  gap: 0.4rem 0.8rem;
  grid-template-columns: repeat(2, 1fr);
  margin-inline: auto;
  width: 24rem;
}
@media print, screen and (min-width:768px) {
  .c-footer__nav {
    align-content: start;
    gap: 1.6rem;
    grid-template-columns: 1fr;
    margin-inline: 0;
    width: auto;
  }
}
.c-footer__nav li a {
  align-items: center;
  color: var(--color-black-main);
  color: var(--color-black-main);
  display: flex;
  font-size: var(--font-size-s);
  font-weight: 500;
  gap: 1.2rem;
  line-height: 1.75;
}
@media (hover: hover) {
  .c-footer__nav li a {
    transition: color 0.2s ease;
  }
  .c-footer__nav li a:hover, .c-footer__nav li a:focus-visible {
    color: var(--color-blue-hover);
  }
  .c-footer__nav li a:active {
    color: var(--color-blue-main);
  }
}
.c-footer__nav li a::before {
  border-top: 1px solid var(--color-blue-main);
  content: "";
  display: block;
  flex-shrink: 0;
  height: 1px;
  width: 0.6rem;
}
@media print, screen and (min-width:768px) {
  .c-footer__nav li a {
    font-size: var(--font-size-small-m);
  }
}
.c-footer__sub {
  display: flex;
  flex-flow: row wrap;
  gap: 0.4rem 1.6rem;
  justify-content: center;
}
@media print, screen and (min-width:768px) {
  .c-footer__sub {
    flex-direction: column;
    gap: 0.6rem;
    justify-content: flex-start;
  }
}
.c-footer__sub li a {
  color: var(--color-black-main);
  color: var(--color-black-main);
  font-size: var(--font-size-xs);
  font-weight: 500;
  line-height: normal;
}
@media (hover: hover) {
  .c-footer__sub li a {
    transition: color 0.2s ease;
  }
  .c-footer__sub li a:hover, .c-footer__sub li a:focus-visible {
    color: var(--color-blue-hover);
  }
  .c-footer__sub li a:active {
    color: var(--color-blue-main);
  }
}
@media print, screen and (min-width:768px) {
  .c-footer__sub li a {
    font-size: var(--font-size-s);
    line-height: 1.75;
  }
}
.c-footer__copyright {
  color: var(--color-black-main);
  font-family: var(--font-family-en);
  font-size: var(--font-size-s);
  font-weight: 500;
  line-height: normal;
}
@media print, screen and (min-width:768px) {
  .c-footer__copyright {
    align-self: end;
    font-size: var(--font-size-small-m);
    grid-area: copyright;
    line-height: 1.75;
  }
}

.c-header {
  background: var(--color-white-main);
  left: 0;
  padding: 0 0.8rem 0 1.6rem;
  position: fixed;
  right: 0;
  top: 0;
  transition: box-shadow 0.2s, padding-block 0.2s, min-height 0.2s;
  z-index: 20;
}
@media print, screen and (min-width:768px) {
  .c-header {
    align-items: center;
    display: flex;
    min-height: 12.8rem;
    padding: 2.4rem;
  }
}
body.is-scrolled .c-header {
  box-shadow: 0 0.3rem 0.3rem rgba(0, 0, 0, 0.05);
}
@media print, screen and (min-width:768px) {
  body.is-scrolled .c-header {
    min-height: 7rem;
    padding-block: 0.8rem;
  }
}
.c-header:has(.c-header__menu:popover-open) .c-header__hamburger span:nth-child(1) {
  top: 50%;
  transform: translateX(-50%) rotate(30deg);
}
.c-header:has(.c-header__menu:popover-open) .c-header__hamburger span:nth-child(2) {
  opacity: 0;
}
.c-header:has(.c-header__menu:popover-open) .c-header__hamburger span:nth-child(3) {
  top: 50%;
  transform: translateX(-50%) rotate(-30deg);
}
.c-header__inner {
  align-items: center;
  display: flex;
  gap: 0.4rem;
  height: 6.4rem;
  position: relative;
  width: 100%;
  z-index: 11;
}
@media print, screen and (min-width:768px) {
  .c-header__inner {
    gap: min(2.4rem, 2.4489795918vw);
    height: auto;
    margin-inline: auto;
    max-width: 130rem;
    min-height: 6rem;
  }
}
.c-header__logo {
  flex-shrink: 0;
  width: 9.3rem;
}
@media print, screen and (min-width:768px) {
  .c-header__logo {
    width: 17.8rem;
  }
}
.c-header__logo img {
  display: block;
  height: auto;
  width: 100%;
}
.c-header__logo a {
  display: block;
}
.c-header__menu {
  background: rgba(0, 0, 0, 0.5);
  border: 0;
  height: calc(100dvh - 6.4rem);
  inset: 6.4rem 0 0;
  margin: 0;
  overflow-y: auto;
  padding: 0;
  position: fixed;
  width: 100%;
}
.c-header__menu:not(:popover-open) {
  display: none;
}
.c-header__menu:popover-open {
  display: block;
}
@media print, screen and (min-width:768px) {
  .c-header__menu {
    background: transparent;
    height: auto;
    inset: auto;
    margin-left: auto;
    max-height: none;
    overflow: visible;
    padding: 0;
    position: static;
    width: auto;
  }
  .c-header__menu:not(:popover-open), .c-header__menu:popover-open {
    display: block;
  }
}
.c-header__nav {
  background: var(--color-white-main);
  display: block;
  padding: 3rem 2.4rem 4.8rem;
}
@media print, screen and (min-width:768px) {
  .c-header__nav {
    background: transparent;
    padding: 0;
  }
}
.c-header__nav-list {
  display: flex;
  flex-direction: column;
  gap: 0;
  list-style: none;
  margin: 0;
  padding: 0;
}
@media print, screen and (min-width:768px) {
  .c-header__nav-list {
    align-items: center;
    flex-flow: row wrap;
    gap: 0.8rem 2.4rem;
  }
}
.c-header__nav-item {
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .c-header__nav-item {
    width: auto;
  }
}
.c-header__nav-row {
  align-items: center;
  display: flex;
  justify-content: space-between;
}
@media print, screen and (min-width:768px) {
  .c-header__nav-row {
    display: block;
  }
}
.c-header__nav-row .c-header__nav-link {
  flex: 1;
  min-width: 0;
}
@media print, screen and (min-width:768px) {
  .c-header__nav-row .c-header__nav-link {
    flex: none;
  }
}
.c-header__nav-toggle {
  background: transparent;
  color: var(--color-blue-main);
  cursor: pointer;
  flex-shrink: 0;
  height: 4.4rem;
  margin-right: -1.2rem;
  position: relative;
  width: 4.4rem;
}
.c-header__nav-toggle::before, .c-header__nav-toggle::after {
  background: currentcolor;
  content: "";
  height: 0.12rem;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  transition: opacity 0.2s;
  width: 2rem;
}
.c-header__nav-toggle::after {
  transform: translate(-50%, -50%) rotate(90deg);
}
.c-header__nav-toggle[aria-expanded=true]::after {
  opacity: 0;
}
@media (hover: hover) {
  .c-header__nav-toggle {
    transition: color 0.2s;
  }
  .c-header__nav-toggle:hover {
    color: var(--color-blue-hover);
  }
}
@media print, screen and (min-width:768px) {
  .c-header__nav-toggle {
    display: none;
  }
}
.c-header__nav-sub {
  display: grid;
  grid-template-rows: 0fr;
  overflow: hidden;
  transition: grid-template-rows 0.3s ease, visibility 0.3s;
  visibility: hidden;
}
.c-header__nav-item:has([aria-expanded=true]) > .c-header__nav-sub {
  grid-template-rows: 1fr;
  visibility: visible;
}
@media (prefers-reduced-motion: reduce) {
  .c-header__nav-sub {
    transition: none;
  }
}
@media print, screen and (min-width:768px) {
  .c-header__nav-sub {
    display: none;
  }
}
.c-header__nav-sub-list {
  list-style: none;
  margin: 0;
  min-height: 0;
  overflow: hidden;
  padding: 0 0 0 1.6rem;
}
.c-header__nav-sub-item:first-child {
  padding-top: 1.6rem;
}
.c-header__nav-sub-item:last-child {
  padding-bottom: 1.6rem;
}
.c-header__nav-sub-link {
  color: var(--color-blue-main);
  display: block;
  font-size: 1.4rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  line-height: 2.75;
  transition: color 0.2s;
}
@media (hover: hover) {
  .c-header__nav-sub-link:hover {
    color: var(--color-blue-hover);
  }
}
.c-header__nav-link {
  align-items: flex-start;
  color: var(--color-blue-main);
  display: flex;
  font-size: var(--font-size-m);
  font-weight: 800;
  justify-content: space-between;
  letter-spacing: 0.08em;
  line-height: 1.3;
  padding: 1.6rem 0;
  transition: color 0.2s;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .c-header__nav-link {
    display: block;
    padding: 0;
    white-space: nowrap;
    width: auto;
  }
}
@media (hover: hover) {
  .c-header__nav-link:hover {
    color: var(--color-blue-hover);
  }
}
.c-header__nav-link-icon {
  color: var(--color-blue-main);
  flex-shrink: 0;
  height: 2rem;
  width: 2rem;
}
@media print, screen and (min-width:768px) {
  .c-header__nav-link-icon {
    display: none;
  }
}
.c-header__contact {
  flex-shrink: 0;
  margin-left: auto;
  margin-right: 0;
}
@media print, screen and (min-width:768px) {
  .c-header__contact {
    margin-left: 0;
    margin-right: 0;
  }
}
.c-header__contact-button {
  align-items: center;
  background: var(--color-blue-main);
  border-radius: 99.9rem;
  color: var(--color-white-main);
  display: inline-flex;
  font-size: 1.2rem;
  font-weight: 700;
  height: 3.4rem;
  justify-content: center;
  letter-spacing: 0.03em;
  line-height: 1;
  min-width: 10.6rem;
  padding: 0.8rem 1.6rem;
  text-align: center;
  transition: background-color 0.3s;
  white-space: nowrap;
}
@media print, screen and (min-width:768px) {
  .c-header__contact-button {
    font-size: var(--font-size-m);
    font-weight: 800;
    height: 4.4rem;
    letter-spacing: 0.08em;
    min-width: 15.6rem;
    padding: 0 3rem;
  }
}
@media (hover: hover) {
  .c-header__contact-button:hover {
    background: var(--color-blue-hover);
    color: var(--color-white-main);
  }
}
.c-header__hamburger {
  align-items: center;
  background: transparent;
  cursor: pointer;
  display: flex;
  flex-shrink: 0;
  height: 3.2rem;
  justify-content: center;
  position: relative;
  width: 4rem;
}
@media print, screen and (min-width:768px) {
  .c-header__hamburger {
    display: none;
  }
}
.c-header__hamburger span {
  background: var(--color-blue-main);
  display: block;
  height: 0.2rem;
  left: 50%;
  pointer-events: none;
  position: absolute;
  top: 50%;
  transform: translateX(-50%);
  transition: opacity 0.2s, transform 0.2s, top 0.2s;
  width: 2.2rem;
}
.c-header__hamburger span:nth-child(1) {
  top: calc(50% - 0.5rem);
}
.c-header__hamburger span:nth-child(3) {
  top: calc(50% + 0.5rem);
}

html:has(.c-header__menu:popover-open) {
  overflow: hidden;
}
@media print, screen and (min-width:768px) {
  html:has(.c-header__menu:popover-open) {
    overflow: auto;
  }
}

html.is-menu-closing {
  pointer-events: none;
}
@media print, screen and (min-width:768px) {
  html.is-menu-closing {
    pointer-events: auto;
  }
}

.c-button1 {
  margin: 0 auto;
  max-width: 32.7rem;
  padding: 0 0.4rem 0.4rem 0;
  position: relative;
}
.c-button1::before {
  background: var(--color-blue-main);
  border-radius: 0.4rem;
  content: "";
  inset: 0.4rem 0 0 0.4rem;
  pointer-events: none;
  position: absolute;
  z-index: 0;
}
@media print, screen and (min-width:768px) {
  .c-button1 {
    margin: 0;
    width: 30rem;
  }
}
.c-button1--fit .c-button1__link {
  margin: 0 auto;
  width: -moz-fit-content;
  width: fit-content;
}
.c-button1__link {
  align-items: center;
  background: var(--color-white-main);
  border: 0.2rem solid var(--color-blue-main);
  border-radius: 0.4rem;
  color: var(--color-blue-main);
  display: flex;
  justify-content: space-between;
  padding: 2rem 0.8rem 2rem 2.4rem;
  position: relative;
  width: 100%;
  z-index: 1;
}
@media (hover: hover) {
  .c-button1__link {
    transition: background-color 0.2s ease, transform 0.2s ease;
  }
  .c-button1__link:hover {
    background-color: var(--color-blue-hover-light);
    transform: translate(0.2rem, 0.2rem);
  }
  .c-button1__link:hover .c-button1__icon-arrow {
    animation: c-button1-arrow 0.6s ease forwards;
  }
}
.c-button1__icon {
  align-items: center;
  color: var(--color-blue-main);
  display: flex;
  flex-shrink: 0;
  height: 2rem;
  justify-content: center;
  overflow: hidden;
  width: 4rem;
}
.c-button1__icon-arrow {
  height: 2rem;
  width: 2rem;
}
.c-button1__text {
  font-size: var(--font-size-m);
  font-weight: 800;
  letter-spacing: 0.06em;
  line-height: 1.15;
}

@keyframes c-button1-arrow {
  0% {
    opacity: 1;
    transform: translateX(0);
  }
  45% {
    opacity: 0;
    transform: translateX(100%);
  }
  46% {
    opacity: 0;
    transform: translateX(-100%);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
.c-page-title {
  padding: 4rem 2.4rem 9.6rem;
}
@media print, screen and (min-width:768px) {
  .c-page-title {
    padding: 3.2rem 4rem 12.8rem;
  }
}
@media print, screen and (min-width:768px) {
  html[lang=en] .c-page-title, html[lang=ko] .c-page-title {
    padding: 3.2rem 4rem 10rem;
  }
}
@media print, screen and (max-width:767px) {
  .c-page-title:has(+ .p-service-services), .l-page-heading:has(+ .p-service-services) .c-page-title {
    padding-bottom: 4.6rem;
  }
}
.c-page-title__inner {
  display: grid;
  gap: 9.2rem;
  grid-template-columns: 1fr;
  margin-inline: auto;
  max-width: 128rem;
}
@media print, screen and (min-width:768px) {
  .c-page-title__inner {
    align-items: start;
    gap: 4rem;
  }
  .c-page-title__inner:not(:has(.c-page-title__language)) {
    grid-template-columns: 1fr;
  }
  .c-page-title__inner:has(.c-page-title__language) {
    grid-template-columns: 1fr auto;
  }
}
.c-page-title__content {
  display: grid;
  gap: 2.4rem;
  grid-template-columns: 1fr;
}
@media print, screen and (min-width:768px) {
  .c-page-title__content {
    gap: 4rem;
  }
}
html[lang=en] .c-page-title__content, html[lang=ko] .c-page-title__content {
  gap: 0;
}
@media print, screen and (min-width:768px) {
  html[lang=en] .c-page-title__content, html[lang=ko] .c-page-title__content {
    gap: 0;
  }
}
.c-page-title__title {
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
}
@media print, screen and (min-width:768px) {
  .c-page-title__title {
    gap: 0;
  }
}
.c-page-title__title-primary {
  color: var(--color-blue-main);
  font-family: var(--font-family-en);
  font-size: 4.5rem;
  font-weight: 700;
  line-height: 1.25;
  word-break: keep-all;
}
.c-page-title__title-primary::first-letter {
  color: var(--color-pink-main);
}
@media print, screen and (min-width:768px) {
  .c-page-title__title-primary {
    font-size: var(--font-size-8xl);
    line-height: 1.6;
  }
}
.c-page-title__title-secondary {
  color: var(--color-blue-main);
  font-family: var(--font-family-primary);
  font-feature-settings: "palt" 1;
  font-size: var(--font-size-l);
  font-weight: 800;
  letter-spacing: 0.08em;
  line-height: 1.15;
}
.c-page-title__description {
  color: var(--color-black-main);
  font-family: var(--font-family-primary);
  font-size: var(--font-size-m);
  font-weight: 500;
  line-height: 1.75;
  overflow-wrap: break-word;
}
@media print, screen and (min-width:768px) {
  .c-page-title__description {
    font-size: var(--font-size-l);
  }
}
.c-page-title__language {
  align-items: center;
  border-left: 0.2rem solid var(--color-blue-main);
  display: flex;
  flex-direction: row;
  gap: 0;
  justify-content: space-between;
  padding: 0 0 0 0.8rem;
}
@media print, screen and (min-width:768px) {
  .c-page-title__language {
    align-items: stretch;
    flex-direction: column;
    gap: 2.4rem;
    justify-content: flex-start;
    padding-inline: 2rem;
  }
}
@media print, screen and (min-width:768px) {
  html[lang=en] .c-page-title__language, html[lang=ko] .c-page-title__language {
    margin-bottom: auto;
  }
}
.c-page-title__language-label {
  color: var(--color-black-sub);
  font-family: var(--font-family-en);
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.75;
}
.c-page-title__language-list {
  display: flex;
  flex-direction: row;
  gap: 1.2rem;
  list-style: none;
  margin: 0;
  padding: 0;
}
@media print, screen and (min-width:768px) {
  .c-page-title__language-list {
    flex-direction: column;
  }
}
.c-page-title__language-current {
  color: var(--color-blue-main);
  font-family: var(--font-family-en);
  font-size: var(--font-size-small-m);
  font-weight: 700;
  line-height: 1.3;
}
@media print, screen and (min-width:768px) {
  .c-page-title__language-current {
    font-size: 1.6rem;
  }
}
.c-page-title__language-link {
  color: var(--color-black-main);
  font-family: var(--font-family-en);
  font-size: var(--font-size-small-m);
  font-weight: 700;
  line-height: 1.3;
  text-decoration: none;
}
@media (hover: hover) {
  .c-page-title__language-link {
    transition: color 0.2s ease;
  }
  .c-page-title__language-link:hover {
    color: var(--color-blue-main);
  }
}
@media print, screen and (min-width:768px) {
  .c-page-title__language-link {
    font-size: 1.6rem;
  }
}

.c-page-title-img {
  padding: 4rem 2.4rem 0;
}
@media print, screen and (min-width:768px) {
  .c-page-title-img {
    padding-inline: 4rem;
  }
}
.p-brand .c-page-title-img {
  padding-bottom: 9.6rem;
}
@media print, screen and (min-width:768px) {
  .p-brand .c-page-title-img {
    padding-bottom: 12.8rem;
  }
}
.c-page-title-img__inner {
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
}
@media print, screen and (min-width:768px) {
  .c-page-title-img__inner {
    gap: 3.2rem;
    margin-inline: auto;
    max-width: 128rem;
  }
}
.c-page-title-img__title {
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
  margin: 0;
  padding-top: 1.6rem;
}
@media print, screen and (min-width:768px) {
  .c-page-title-img__title {
    align-items: flex-end;
    flex-direction: row;
    gap: 3.2rem;
    min-height: 12.6rem;
    padding-top: 0;
  }
}
.c-page-title-img__logo img {
  display: block;
  height: auto;
  max-width: 100%;
}
.p-brand.-comics .c-page-title-img__logo {
  display: block;
  height: 4.8rem;
  width: 24.5rem;
}
@media print, screen and (min-width:768px) {
  .p-brand.-comics .c-page-title-img__logo {
    height: 6.4rem;
    width: 32.7rem;
  }
}
.p-brand.-comics .c-page-title-img__logo img {
  height: 100%;
  width: 100%;
}
.p-brand.-creators .c-page-title-img__logo {
  display: block;
  height: 8.4rem;
  width: 25.5rem;
}
@media print, screen and (min-width:768px) {
  .p-brand.-creators .c-page-title-img__logo {
    height: 10.4rem;
    width: 31.6rem;
  }
}
.p-brand.-creators .c-page-title-img__logo img {
  height: 100%;
  width: 100%;
}
.p-brand.-amucomi .c-page-title-img__logo {
  display: block;
  height: 8.4rem;
  width: 19.9rem;
}
@media print, screen and (min-width:768px) {
  .p-brand.-amucomi .c-page-title-img__logo {
    height: 10.4rem;
    width: 24.7rem;
  }
}
.p-brand.-amucomi .c-page-title-img__logo img {
  height: 100%;
  width: 100%;
}
.c-page-title-img__name {
  color: var(--color-blue-main);
  font-family: var(--font-family-primary);
  font-feature-settings: "palt" 1;
  font-size: 1.6rem;
  font-weight: 800;
  line-height: 1.5;
}
@media print, screen and (min-width:768px) {
  .c-page-title-img__name {
    font-feature-settings: normal;
    font-size: var(--font-size-l);
    letter-spacing: 0.06em;
    white-space: nowrap;
  }
}
.c-page-title-img__description {
  color: var(--color-black-main);
  font-family: var(--font-family-primary);
  font-size: var(--font-size-m);
  font-weight: 500;
  line-height: 1.75;
  margin: 0;
}
@media print, screen and (min-width:768px) {
  .c-page-title-img__description {
    font-size: var(--font-size-l);
  }
}

.c-breadcrumb {
  padding: 3.2rem 2.4rem 0;
}
@media print, screen and (max-width:767px) {
  .c-breadcrumb {
    display: none;
  }
}
@media print, screen and (min-width:768px) {
  .c-breadcrumb {
    padding: 2rem 4rem 0;
  }
}
.c-breadcrumb__inner {
  margin-inline: auto;
  max-width: 128rem;
}
.c-breadcrumb__nav {
  background: var(--color-gray-bg);
  border-radius: 99.9rem;
  display: inline-block;
  max-width: 100%;
  overflow-x: auto;
  padding: 1rem 2.6rem;
  vertical-align: top;
  width: -moz-fit-content;
  width: fit-content;
}
.c-breadcrumb__list {
  display: flex;
  flex-wrap: nowrap;
  gap: 1.2rem;
  margin: 0;
  white-space: nowrap;
}
.c-breadcrumb__item {
  align-items: center;
  color: var(--color-black-main);
  display: inline-flex;
  flex-shrink: 0;
  font-family: var(--font-family-primary);
  font-size: 1.2rem;
  font-weight: 800;
  gap: 1.2rem;
  line-height: 1.3;
}
.c-breadcrumb__link {
  color: var(--color-black-sub);
  text-decoration: none;
}
@media (hover: hover) {
  .c-breadcrumb__link {
    transition: color 0.2s ease;
  }
  .c-breadcrumb__link:hover {
    color: var(--color-black-main);
  }
}
.c-breadcrumb__separator {
  background-color: var(--color-black-sub);
  border-radius: 50%;
  flex-shrink: 0;
  height: 0.4rem;
  width: 0.4rem;
}

.c-local-nav {
  padding: 0 2.4rem 4rem;
}
@media print, screen and (min-width:768px) {
  .c-local-nav {
    padding: 2rem 4rem 6.4rem;
  }
}
html[lang=en] .c-local-nav, html[lang=ko] .c-local-nav {
  padding: 0 2.4rem;
}
@media print, screen and (min-width:768px) {
  html[lang=en] .c-local-nav, html[lang=ko] .c-local-nav {
    padding: 2rem 4rem 0;
  }
}
.u-pc-only:has(+ .c-section) .c-local-nav {
  padding-bottom: 0;
}
.c-local-nav__inner {
  margin-inline: auto;
  max-width: 128rem;
}
.c-local-nav__list {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem 1.4rem;
  margin: 0;
}
@media print, screen and (min-width:768px) {
  .c-local-nav__list {
    gap: 2.1rem;
    justify-content: center;
  }
}
.c-local-nav__link {
  align-items: center;
  color: var(--color-black-main);
  display: flex;
  font-family: var(--font-family-primary);
  font-size: var(--font-size-s);
  font-weight: 800;
  gap: 0.4rem;
  line-height: 1.75;
  text-decoration: none;
  white-space: nowrap;
}
@media print, screen and (min-width:768px) {
  .c-local-nav__link {
    font-size: var(--font-size-m);
  }
}
@media (hover: hover) {
  .c-local-nav__link {
    transition: color 0.25s ease, transform 0.25s ease;
  }
  .c-local-nav__link:hover {
    color: var(--color-blue-hover);
  }
  .c-local-nav__link:hover .c-local-nav__link-icon-arrow {
    transform: rotate(90deg) translateX(15%);
  }
}
.c-local-nav__link-icon {
  align-items: center;
  display: flex;
  flex-shrink: 0;
  height: 1.8rem;
  justify-content: center;
  width: 2rem;
}
.c-local-nav__link-icon-arrow {
  height: 1.275rem;
  transform: rotate(90deg);
  transition: transform 0.25s ease;
  width: 1.275rem;
}

.c-title1 {
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
}
@media print, screen and (min-width:768px) {
  .c-title1 {
    gap: 0;
  }
}
.c-title1__primary {
  color: var(--color-blue-main);
  font-family: var(--font-family-en);
  font-size: var(--font-size-7xl);
  font-weight: 700;
  line-height: 1;
  word-break: keep-all;
}
.c-title1__primary::first-letter {
  color: var(--color-pink-main);
}
@media print, screen and (min-width:768px) {
  .c-title1__primary {
    font-size: var(--font-size-8xl);
    line-height: 1.6;
  }
}
.c-title1__secondary {
  color: var(--color-blue-main);
  font-family: var(--font-family-primary);
  font-feature-settings: "palt" 1;
  font-size: var(--font-size-l);
  font-weight: 800;
  letter-spacing: 0.08em;
  line-height: 1.15;
}

.c-title2 {
  align-items: flex-start;
  display: flex;
  gap: 1.6rem;
}
.c-title2:has(.c-title2__lead) {
  flex-wrap: wrap;
  gap: 3.2rem 1.6rem;
}
@media print, screen and (min-width:768px) {
  .c-title2 {
    align-items: center;
    gap: 3.2rem;
  }
}
.c-title2::before {
  background-color: var(--color-pink-main);
  content: "";
  flex-shrink: 0;
  height: 3.2rem;
  margin: 0.3rem 0;
  width: 0.8rem;
}
@media print, screen and (min-width:768px) {
  .c-title2::before {
    margin: 0;
  }
}
.c-title2__text {
  color: var(--color-blue-main);
  font-family: var(--font-family-primary);
  font-size: 2.8rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  line-height: 1.3;
}
@media print, screen and (min-width:768px) {
  .c-title2__text {
    font-size: 3.4rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    line-height: 1.5;
  }
}
.p-service-news .c-title2__text {
  font-family: var(--font-family-en);
  font-size: 3.6rem;
  letter-spacing: 0;
  line-height: 1;
}
@media print, screen and (min-width:768px) {
  .p-service-news .c-title2__text {
    font-size: 4.4rem;
    line-height: 1.6;
  }
}
html[lang=en] .c-title2__text {
  letter-spacing: 0;
}
.c-title2__lead {
  color: var(--color-black-main);
  flex: 0 0 100%;
  font-size: var(--font-size-m);
  font-weight: 500;
  letter-spacing: 0;
  line-height: 2;
  margin: 0;
}

.c-section {
  padding: 9.6rem 2.4rem;
}
.c-section:has(.c-section__bg) {
  overflow: hidden;
  position: relative;
}
.c-section:has(.c-section__bg) > *:not(.c-section__bg) {
  position: relative;
  z-index: 1;
}
@media print, screen and (min-width:768px) {
  .c-section {
    padding: 12.8rem 4rem;
  }
}
.c-section__bg {
  display: block;
  height: 58.7rem;
  left: -3.9rem;
  max-width: none;
  -o-object-fit: cover;
  object-fit: cover;
  pointer-events: none;
  position: absolute;
  top: 18.5rem;
  width: 50.8rem;
  z-index: 0;
}
@media print, screen and (min-width:768px) {
  .c-section__bg {
    height: 79.8rem;
    left: 50%;
    -o-object-fit: contain;
    object-fit: contain;
    top: -1rem;
    transform: translateX(-50%);
    width: 144rem;
  }
}
.c-section__inner {
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
  margin-inline: auto;
  max-width: 112rem;
  position: relative;
  width: 100%;
  z-index: 1;
}
@media print, screen and (min-width:768px) {
  .c-section__inner {
    gap: 4.6rem;
  }
}
.c-section--bg-blue {
  background-color: var(--color-blue-bg);
}
.c-section--of-hidden {
  overflow: hidden;
}

.c-link-list {
  background-color: var(--color-white-main);
  border: 1px solid color-mix(in srgb, var(--color-blue-main) 25%, transparent);
  list-style: none;
  margin: 0;
  padding: 0;
  width: 100%;
}
.c-link-list__item {
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
  padding: 3.2rem 2.4rem;
}
.c-link-list__item:not(:last-child) {
  border-bottom: 1px solid color-mix(in srgb, var(--color-blue-main) 25%, transparent);
}
@media print, screen and (min-width:768px) {
  .c-link-list__item {
    align-items: center;
    flex-direction: row;
    justify-content: space-between;
    padding: 3.2rem 4.6rem;
  }
}
.c-link-list__item .c-button1 {
  margin-inline: 0;
  max-width: none;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .c-link-list__item .c-button1 {
    flex-shrink: 0;
    width: 30rem;
  }
}
.c-link-list__label {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 0.2rem 0.8rem;
  margin: 0;
}
@media print, screen and (min-width:768px) {
  .c-link-list__label {
    flex-wrap: nowrap;
    gap: 1.6rem;
  }
}
.c-link-list__name {
  color: var(--color-black-main);
  font-family: var(--font-family-primary);
  font-size: var(--font-size-m);
  font-weight: 500;
  line-height: 1.75;
}
@media print, screen and (min-width:768px) {
  .c-link-list__name {
    line-height: 2;
  }
}
.c-link-list__name--en {
  color: var(--color-black-main);
  font-family: var(--font-family-en);
  font-size: 2rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  line-height: 1.5;
  margin: 0;
}
@media print, screen and (min-width:768px) {
  .c-link-list__name--en {
    line-height: 1.5;
  }
}
.c-link-list__pdf {
  display: block;
  flex-shrink: 0;
  height: 2.4rem;
  width: 1.8rem;
}

.c-cta1 {
  background-color: #e2f0ff;
  border-radius: 1.6rem;
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
  overflow: clip;
  padding: 6.4rem 3.2rem;
  position: relative;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .c-cta1 {
    align-items: center;
    flex-direction: row;
    gap: 4.6rem;
    height: 26.9rem;
    justify-content: space-between;
    padding: 0 11.3rem 0 8.4rem;
  }
}
.c-cta1__bg {
  display: block;
  height: 100%;
  inset: 0;
  -o-object-fit: cover;
  object-fit: cover;
  pointer-events: none;
  position: absolute;
  width: 100%;
}
.c-cta1__content {
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
  position: relative;
  width: 100%;
  z-index: 1;
}
@media print, screen and (min-width:768px) {
  .c-cta1__content {
    gap: 1rem;
    max-width: 52.2rem;
  }
}
.c-cta1__title {
  color: var(--color-black-main);
  font-family: var(--font-family-primary);
  font-size: 2.2rem;
  font-weight: 800;
  letter-spacing: 0;
  line-height: 1.5;
  margin: 0;
}
@media print, screen and (min-width:768px) {
  .c-cta1__title {
    font-size: 2.4rem;
    letter-spacing: 0.06em;
    line-height: 1.3;
  }
}
.c-cta1__text {
  color: var(--color-black-main);
  font-family: var(--font-family-primary);
  font-size: var(--font-size-m);
  font-weight: 500;
  line-height: 2;
  margin: 0;
}
.c-cta1 .c-button1 {
  margin-inline: 0;
  max-width: none;
  position: relative;
  width: 100%;
  z-index: 1;
}
@media print, screen and (min-width:768px) {
  .c-cta1 .c-button1 {
    flex-shrink: 0;
    width: 30rem;
  }
}

@media print, screen and (min-width:768px) {
  .c-home-news-list {
    margin-left: auto;
    max-width: 93.8rem;
    width: 100%;
  }
}
.c-home-news-list__item {
  border-top: 0.2rem solid var(--color-blue-main);
}
@media print, screen and (min-width:768px) {
  .c-home-news-list__item {
    border-top-width: 0.3rem;
  }
}
.c-home-news-list__item:last-child {
  border-bottom: 0.2rem solid var(--color-blue-main);
}
@media print, screen and (min-width:768px) {
  .c-home-news-list__item:last-child {
    border-bottom-width: 0.3rem;
  }
}
.c-home-news-list__link {
  background-color: var(--color-white-main);
  color: var(--color-black-main);
  display: grid;
  gap: 0.4rem 0.8rem;
  grid-template-columns: 1fr 2rem;
  grid-template-rows: auto auto;
  padding-block: 2.4rem;
}
@media (hover: hover) {
  .c-home-news-list__link:hover .c-home-news-list__icon-arrow {
    animation: c-home-news-list-arrow 0.6s ease forwards;
  }
  .c-home-news-list__link:hover::before {
    opacity: 0;
  }
}
@media print, screen and (min-width:768px) {
  .c-home-news-list__link {
    align-items: center;
    background-image: radial-gradient(circle, #e5f0fa 0.2rem, transparent 0.2rem), radial-gradient(circle, #e5f0fa 0.2rem, transparent 0.2rem);
    background-position: 0 0, 0.5rem 0.5rem;
    background-size: 1rem 1rem;
    display: flex;
    gap: 4.6rem;
    padding: 3.2rem 4.6rem;
    position: relative;
    transition: background-color 0.2s ease;
  }
  .c-home-news-list__link::before {
    background-color: var(--color-white-main);
    content: "";
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    transition: opacity 0.2s ease;
    width: 100%;
    z-index: 0;
  }
}
.c-home-news-list__meta {
  align-items: center;
  display: flex;
  gap: 0.8rem;
  grid-column: 1;
  grid-row: 1;
}
@media print, screen and (min-width:768px) {
  .c-home-news-list__meta {
    flex-direction: column;
    flex-shrink: 0;
    gap: 0.8rem;
    position: relative;
    z-index: 1;
  }
}
.c-home-news-list__tag {
  align-items: center;
  border-radius: 0.4rem;
  display: flex;
  flex-shrink: 0;
  font-size: 1.2rem;
  font-weight: 800;
  justify-content: center;
  line-height: 1.3;
  padding: 0.4rem;
  width: 11.2rem;
}
.c-home-news-list__tag--info {
  background-color: var(--color-tag-1-2);
  color: var(--color-tag-1-1);
}
.c-home-news-list__tag--press {
  background-color: var(--color-tag-3-2);
  color: var(--color-tag-3-1);
}
.c-home-news-list__tag--important {
  background-color: var(--color-tag-2-2);
  color: var(--color-tag-2-1);
}
.c-home-news-list__date {
  font-family: var(--font-family-en);
  font-size: var(--font-size-s);
  font-weight: 500;
  line-height: 1;
  white-space: nowrap;
}
.c-home-news-list__title {
  -webkit-box-orient: vertical;
  display: -webkit-box;
  font-size: var(--font-size-m);
  font-weight: 500;
  grid-column: 1;
  grid-row: 2;
  -webkit-line-clamp: 2;
  line-height: 1.6;
  overflow: hidden;
}
@media print, screen and (min-width:768px) {
  .c-home-news-list__title {
    flex: 1;
    grid-column: auto;
    grid-row: auto;
    -webkit-line-clamp: 1;
    min-width: 0;
    position: relative;
    z-index: 1;
  }
}
.c-home-news-list__icon {
  align-items: center;
  align-self: center;
  color: var(--color-blue-main);
  display: flex;
  flex-shrink: 0;
  grid-column: 2;
  grid-row: 1/-1;
  height: 2rem;
  justify-content: center;
  overflow: hidden;
  width: 2rem;
}
@media print, screen and (min-width:768px) {
  .c-home-news-list__icon {
    grid-column: auto;
    grid-row: auto;
    margin-inline: -2rem;
    position: relative;
    width: 4rem;
    z-index: 1;
  }
}
.c-home-news-list__icon-arrow {
  height: 2rem;
  width: 2rem;
}

@keyframes c-home-news-list-arrow {
  0% {
    opacity: 1;
    transform: translateX(0);
  }
  45% {
    opacity: 0;
    transform: translateX(100%);
  }
  46% {
    opacity: 0;
    transform: translateX(-100%);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
.c-home-overview-list {
  display: grid;
  gap: 3.2rem;
}
@media print, screen and (min-width:768px) {
  .c-home-overview-list {
    gap: 0.8rem 6.4rem;
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: auto auto auto;
  }
}
@media print, screen and (min-width:768px) {
  .c-home-overview-list__item {
    display: grid;
    grid-row: span 3;
    grid-template-rows: subgrid;
  }
}
.c-home-overview-list__link {
  color: inherit;
  display: grid;
  row-gap: 0.8rem;
}
@media (hover: hover) {
  .c-home-overview-list__link:hover .c-home-overview-list__description,
  .c-home-overview-list__link:hover .c-home-overview-list__name-text {
    color: var(--color-blue-hover);
  }
  .c-home-overview-list__link:hover .c-home-overview-list__name-icon-arrow {
    animation: c-home-overview-list-arrow 0.6s ease forwards;
  }
  .c-home-overview-list__link:hover .c-home-overview-list__image {
    box-shadow: 0.3rem 0.3rem 0 var(--color-blue-main);
    transform: translate(0.3rem, 0.3rem);
  }
}
@media print and (hover: hover), screen and (hover: hover) and (min-width:768px) {
  .c-home-overview-list__link:hover .c-home-overview-list__image {
    box-shadow: 0.4rem 0.4rem 0 var(--color-blue-main);
    transform: translate(0.4rem, 0.4rem);
  }
}
@media print, screen and (min-width:768px) {
  .c-home-overview-list__link {
    grid-row: span 3;
    grid-template-rows: subgrid;
  }
}
.c-home-overview-list__image {
  align-items: center;
  aspect-ratio: 327/176;
  background-color: var(--color-white-main);
  border: 0.3rem solid var(--color-blue-main);
  box-shadow: 0.6rem 0.6rem 0 var(--color-blue-main);
  display: flex;
  justify-content: center;
  margin-bottom: 1rem;
  min-width: 0;
  overflow: hidden;
}
@media (hover: hover) {
  .c-home-overview-list__image {
    transition: box-shadow 0.2s ease, transform 0.2s ease;
  }
}
@media print, screen and (min-width:768px) {
  .c-home-overview-list__image {
    aspect-ratio: 378/219;
    border-width: 0.4rem;
    box-shadow: 0.8rem 0.8rem 0 var(--color-blue-main);
    margin-bottom: 1.6rem;
  }
}
.c-home-overview-list__image img {
  display: block;
  height: 41.8%;
  max-width: 100%;
  width: auto;
}
.c-home-overview-list__image--comics img {
  height: 35.7%;
}
.c-home-overview-list__name {
  align-items: center;
  display: flex;
  gap: 1.6rem;
  justify-content: space-between;
}
.c-home-overview-list__name-text {
  color: var(--color-blue-main);
  font-size: var(--font-size-l);
  font-weight: 800;
  letter-spacing: 0.06em;
  line-height: 1.5;
}
@media (hover: hover) {
  .c-home-overview-list__name-text {
    transition: color 0.2s ease;
  }
}
.c-home-overview-list__name-icon {
  align-items: center;
  color: var(--color-blue-main);
  display: flex;
  flex-shrink: 0;
  height: 2rem;
  justify-content: center;
  overflow: hidden;
  width: 2rem;
}
.c-home-overview-list__name-icon-arrow {
  height: 2rem;
  width: 2rem;
}
.c-home-overview-list__description {
  color: var(--color-black-main);
  font-size: var(--font-size-m);
  font-weight: 500;
  letter-spacing: 0.03em;
  line-height: 1.75;
}
@media (hover: hover) {
  .c-home-overview-list__description {
    transition: color 0.2s ease;
  }
}

@keyframes c-home-overview-list-arrow {
  0% {
    opacity: 1;
    transform: translateX(0);
  }
  45% {
    opacity: 0;
    transform: translateX(100%);
  }
  46% {
    opacity: 0;
    transform: translateX(-100%);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
.c-partner-list {
  display: grid;
  gap: 2.1rem 4.3rem;
  grid-template-columns: repeat(auto-fill, minmax(11.2rem, 15rem));
  justify-content: center;
  margin-inline: auto;
  margin-top: 2.4rem;
  max-width: 72.9rem;
}
@media print, screen and (min-width:768px) {
  .c-partner-list {
    gap: 3.9rem 5.4rem;
    grid-template-columns: repeat(auto-fill, 18.9rem);
    margin-top: 0;
    max-width: 91.8rem;
  }
}
.c-partner-list__item {
  align-items: center;
  display: flex;
  height: 6rem;
  justify-content: center;
}
@media print, screen and (min-width:768px) {
  .c-partner-list__item {
    height: 7.6rem;
  }
}
.c-partner-list__image {
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  width: 100%;
}

.c-label-list {
  display: grid;
  gap: 1.5rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .c-label-list {
    gap: 2.4rem;
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
}
.c-label-list__item {
  align-items: center;
  background-color: var(--color-white-main);
  display: flex;
  height: 6.6rem;
  justify-content: center;
  overflow: hidden;
}
@media print, screen and (min-width:768px) {
  .c-label-list__item {
    height: 8.7rem;
  }
}
.c-label-list__link {
  align-items: center;
  display: flex;
  height: 100%;
  justify-content: center;
  width: 100%;
}
.c-label-list__image {
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  width: 100%;
}

.c-article-nav {
  align-items: center;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  width: 100%;
}
.c-article-nav__prev {
  justify-self: start;
}
.c-article-nav__back {
  justify-self: center;
}
.c-article-nav__next {
  justify-self: end;
}
.c-article-nav__link {
  align-items: center;
  color: var(--color-blue-main);
  display: inline-flex;
  font-size: var(--font-size-m);
  font-weight: 700;
  gap: 0.8rem;
  letter-spacing: 0;
  line-height: 1.75;
  white-space: nowrap;
}
@media (hover: hover) {
  .c-article-nav__link {
    transition: color 0.2s ease;
  }
  .c-article-nav__link:hover, .c-article-nav__link:focus-visible {
    color: var(--color-blue-hover);
  }
}
@media print, screen and (min-width:768px) {
  .c-article-nav__link {
    font-size: var(--font-size-l);
  }
}
.c-article-nav__icon {
  flex-shrink: 0;
  height: 1.6rem;
  width: 1.6rem;
}
@media print, screen and (min-width:768px) {
  .c-article-nav__icon {
    height: 2rem;
    width: 2rem;
  }
}
.c-article-nav__icon--prev {
  transform: rotate(180deg);
}

.c-pagination {
  align-items: center;
  display: flex;
  justify-content: space-between;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .c-pagination {
    gap: 4rem;
    justify-content: center;
    width: auto;
  }
}
.c-pagination__prev {
  flex-shrink: 0;
  width: 2rem;
}
.c-pagination__next {
  flex-shrink: 0;
  width: 2rem;
}
.c-pagination__arrow {
  align-items: center;
  color: var(--color-blue-main);
  display: flex;
  justify-content: center;
}
@media (hover: hover) {
  .c-pagination__arrow {
    transition: color 0.2s ease;
  }
  .c-pagination__arrow:hover, .c-pagination__arrow:focus-visible {
    color: var(--color-blue-hover);
  }
}
.c-pagination__icon {
  flex-shrink: 0;
  height: 2rem;
  width: 2rem;
}
.c-pagination__icon--prev {
  transform: rotate(180deg);
}
.c-pagination__list {
  align-items: center;
  display: flex;
  gap: 2.4rem;
  list-style: none;
  margin: 0;
  padding: 0;
}
.c-pagination__link {
  color: var(--color-black-main);
  font-family: var(--font-family-en);
  font-size: var(--font-size-m);
  font-weight: 500;
  line-height: 1.75;
  text-decoration: none;
}
@media (hover: hover) {
  .c-pagination__link {
    transition: color 0.2s ease;
  }
  .c-pagination__link:hover, .c-pagination__link:focus-visible {
    color: var(--color-blue-hover);
  }
}
@media print, screen and (min-width:768px) {
  .c-pagination__link {
    font-size: var(--font-size-l);
  }
}
.c-pagination__link--current {
  color: var(--color-blue-main);
  pointer-events: none;
}
.c-pagination__ellipsis {
  color: var(--color-black-main);
  font-family: var(--font-family-en);
  font-size: var(--font-size-m);
  font-weight: 500;
  line-height: 1.75;
}
@media print, screen and (min-width:768px) {
  .c-pagination__ellipsis {
    font-size: var(--font-size-l);
  }
}

.c-category-nav__list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem;
  list-style: none;
  margin: 0;
  padding: 0;
}
@media print, screen and (min-width:768px) {
  .c-category-nav__list {
    justify-content: center;
  }
}
.c-category-nav__link {
  background-color: var(--color-white-main);
  border: 1px solid var(--color-blue-main);
  border-radius: 0.4rem;
  color: var(--color-blue-main);
  display: inline-flex;
  font-family: var(--font-family-primary);
  font-size: var(--font-size-m);
  font-weight: 700;
  line-height: 1.5;
  padding: 0.6rem 1.6rem;
  text-decoration: none;
  white-space: nowrap;
}
@media (hover: hover) {
  .c-category-nav__link {
    transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
  }
  .c-category-nav__link:hover, .c-category-nav__link:focus-visible {
    background-color: var(--color-blue-hover-light);
    border-color: var(--color-blue-hover);
    color: var(--color-blue-hover);
  }
}
.c-category-nav__link--current {
  background-color: var(--color-blue-main);
  border-color: var(--color-blue-main);
  color: var(--color-white-main);
  pointer-events: none;
}

.c-news-tag {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  list-style: none;
  margin: 0;
  padding: 0;
}
.c-news-tag__item {
  color: var(--color-pink-sub);
  font-size: var(--font-size-m);
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.5;
  white-space: nowrap;
}

.c-card-slide-3,
.c-card-slide-5 {
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
}
@media print, screen and (min-width:768px) {
  .c-card-slide-3,
  .c-card-slide-5 {
    gap: 4.8rem;
  }
}
.c-card-slide-3__head,
.c-card-slide-5__head {
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
}
.c-card-slide-3__lead,
.c-card-slide-5__lead {
  color: var(--color-black-main);
  font-size: var(--font-size-m);
  font-weight: 500;
  letter-spacing: 0;
  line-height: 2;
}
.c-card-slide-3__slider,
.c-card-slide-5__slider {
  position: relative;
  width: 100%;
}
.c-card-slide-3__slider .splide__track,
.c-card-slide-5__slider .splide__track {
  overflow: visible;
}
.c-card-slide-3__image,
.c-card-slide-5__image {
  aspect-ratio: 3/2;
  background-color: #b4b4b4;
  overflow: hidden;
  width: 100%;
}
.c-card-slide-3__image a,
.c-card-slide-5__image a {
  background-color: var(--color-white-main);
  display: block;
  height: 100%;
}
@media (hover: hover) {
  .c-card-slide-3__image a:hover img,
  .c-card-slide-5__image a:hover img {
    opacity: 0.7;
  }
}
.c-card-slide-3__image img,
.c-card-slide-5__image img {
  display: block;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  width: 100%;
}
@media (hover: hover) {
  .c-card-slide-3__image img,
  .c-card-slide-5__image img {
    transition: opacity 0.2s ease;
  }
}
.c-card-slide-3__info,
.c-card-slide-5__info {
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
  margin-top: 1.6rem;
}
@media print, screen and (min-width:768px) {
  .c-card-slide-3__info,
  .c-card-slide-5__info {
    margin-top: 2.4rem;
  }
}
.c-card-slide-3__name,
.c-card-slide-5__name {
  color: var(--color-black-main);
  font-size: 1.6rem;
  font-weight: 800;
  letter-spacing: 0;
  line-height: 1.5;
}
@media print, screen and (min-width:768px) {
  .c-card-slide-3__name,
  .c-card-slide-5__name {
    font-size: var(--font-size-l);
    letter-spacing: 0.06em;
  }
}
.c-card-slide-3__detail,
.c-card-slide-5__detail {
  color: var(--color-black-main);
  font-size: var(--font-size-s);
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.5;
}
@media print, screen and (min-width:768px) {
  .c-card-slide-3__detail,
  .c-card-slide-5__detail {
    font-size: var(--font-size-m);
    line-height: 2;
  }
}
.c-card-slide-3__arrow.splide__arrow,
.c-card-slide-5__arrow.splide__arrow {
  align-items: center;
  background: var(--color-white-main);
  border: 0.2rem solid var(--color-blue-main);
  border-radius: 0.4rem;
  box-shadow: 0.4rem 0.4rem 0 var(--color-blue-main);
  display: flex;
  height: 4.4rem;
  justify-content: center;
  opacity: 1;
  padding: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 4.4rem;
  z-index: 2;
}
.c-card-slide-3__arrow.splide__arrow:disabled,
.c-card-slide-5__arrow.splide__arrow:disabled {
  opacity: 0.4;
}
@media (hover: hover) {
  .c-card-slide-3__arrow.splide__arrow,
  .c-card-slide-5__arrow.splide__arrow {
    transition: background-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
  }
  .c-card-slide-3__arrow.splide__arrow:hover:not(:disabled),
  .c-card-slide-5__arrow.splide__arrow:hover:not(:disabled) {
    background-color: var(--color-blue-hover-light);
    box-shadow: 0.2rem 0.2rem 0 var(--color-blue-main);
    opacity: 1;
    transform: translate(0.2rem, calc(-50% + 0.2rem));
  }
  .c-card-slide-3__arrow.splide__arrow:hover:not(:disabled) .c-card-slide-3__arrow-icon-arrow,
  .c-card-slide-3__arrow.splide__arrow:hover:not(:disabled) .c-card-slide-5__arrow-icon-arrow,
  .c-card-slide-5__arrow.splide__arrow:hover:not(:disabled) .c-card-slide-3__arrow-icon-arrow,
  .c-card-slide-5__arrow.splide__arrow:hover:not(:disabled) .c-card-slide-5__arrow-icon-arrow {
    animation: c-card-slide-arrow 0.6s ease forwards;
  }
}
@media print, screen and (min-width:768px) {
  .c-card-slide-3__arrow.splide__arrow,
  .c-card-slide-5__arrow.splide__arrow {
    height: 6.4rem;
    width: 6.4rem;
  }
}
.c-card-slide-3__arrow.splide__arrow svg,
.c-card-slide-5__arrow.splide__arrow svg {
  fill: none;
  transform: none;
}
.c-card-slide-3__arrow--prev.splide__arrow--prev,
.c-card-slide-5__arrow--prev.splide__arrow--prev {
  left: 0;
}
@media print, screen and (min-width:768px) {
  .c-card-slide-3__arrow--prev.splide__arrow--prev,
  .c-card-slide-5__arrow--prev.splide__arrow--prev {
    left: 2rem;
  }
}
.c-card-slide-3__arrow--prev.splide__arrow--prev .c-card-slide-3__arrow-icon,
.c-card-slide-3__arrow--prev.splide__arrow--prev .c-card-slide-5__arrow-icon,
.c-card-slide-5__arrow--prev.splide__arrow--prev .c-card-slide-3__arrow-icon,
.c-card-slide-5__arrow--prev.splide__arrow--prev .c-card-slide-5__arrow-icon {
  transform: rotate(180deg);
}
.c-card-slide-3__arrow--next.splide__arrow--next,
.c-card-slide-5__arrow--next.splide__arrow--next {
  right: 0;
}
@media print, screen and (min-width:768px) {
  .c-card-slide-3__arrow--next.splide__arrow--next,
  .c-card-slide-5__arrow--next.splide__arrow--next {
    right: 2rem;
  }
}
.c-card-slide-3__arrow-icon,
.c-card-slide-5__arrow-icon {
  align-items: center;
  color: var(--color-blue-main);
  display: flex;
  height: 1.6rem;
  justify-content: center;
  overflow: hidden;
  width: 3.2rem;
}
@media print, screen and (min-width:768px) {
  .c-card-slide-3__arrow-icon,
  .c-card-slide-5__arrow-icon {
    height: 2rem;
    width: 4rem;
  }
}
.c-card-slide-3__arrow-icon-arrow,
.c-card-slide-5__arrow-icon-arrow {
  display: block;
  height: 1.6rem;
  width: 1.6rem;
}
@media print, screen and (min-width:768px) {
  .c-card-slide-3__arrow-icon-arrow,
  .c-card-slide-5__arrow-icon-arrow {
    height: 2rem;
    width: 2rem;
  }
}

@keyframes c-card-slide-arrow {
  0% {
    opacity: 1;
    transform: translateX(0);
  }
  45% {
    opacity: 0;
    transform: translateX(100%);
  }
  46% {
    opacity: 0;
    transform: translateX(-100%);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
.c-faq {
  display: flex;
  flex-direction: column;
  gap: 6.4rem;
  margin-inline: auto;
  max-width: 112rem;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .c-faq {
    gap: 4.8rem;
  }
}
.c-faq__header {
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
}
@media print, screen and (min-width:768px) {
  .c-faq__header {
    align-items: center;
    flex-direction: row;
    justify-content: space-between;
  }
  .c-faq__header .c-title2 {
    align-self: flex-start;
    flex: 0 0 auto;
  }
}
.c-faq__nav {
  margin-inline: -2.4rem;
  overflow-x: auto;
  padding-inline: 2.4rem;
  width: calc(100% + 4.8rem);
}
@media print, screen and (min-width:768px) {
  .c-faq__nav {
    margin-inline: 0;
    overflow: visible;
    padding-inline: 0;
    width: auto;
  }
}
.c-faq__nav-list {
  align-items: center;
  display: flex;
  flex-wrap: nowrap;
  gap: 1.4rem;
  margin: 0;
  width: -moz-max-content;
  width: max-content;
}
@media print, screen and (min-width:768px) {
  .c-faq__nav-list {
    flex-wrap: wrap;
    gap: 0.8rem 2.1rem;
    justify-content: flex-end;
    width: auto;
  }
}
.c-faq__nav-link {
  align-items: center;
  color: var(--color-black-main);
  display: flex;
  font-family: var(--font-family-primary);
  font-size: var(--font-size-s);
  font-weight: 800;
  gap: 0.4rem;
  line-height: 1.75;
  text-decoration: none;
  white-space: nowrap;
}
@media print, screen and (min-width:768px) {
  .c-faq__nav-link {
    font-size: var(--font-size-m);
  }
}
@media (hover: hover) {
  .c-faq__nav-link {
    transition: color 0.25s ease, transform 0.25s ease;
  }
  .c-faq__nav-link:hover {
    color: var(--color-blue-hover);
  }
  .c-faq__nav-link:hover .c-faq__nav-icon-arrow {
    transform: rotate(90deg) translateX(15%);
  }
}
.c-faq__nav-icon {
  align-items: center;
  display: flex;
  flex-shrink: 0;
  height: 1.8rem;
  justify-content: center;
  width: 2rem;
}
.c-faq__nav-icon-arrow {
  height: 1.275rem;
  transform: rotate(90deg);
  transition: transform 0.25s ease;
  width: 1.275rem;
}
.c-faq__body {
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
}
@media print, screen and (min-width:768px) {
  .c-faq__body {
    gap: 4.8rem;
  }
}
.c-faq__group {
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
}
@media print, screen and (min-width:768px) {
  .c-faq__group {
    gap: 3.2rem;
  }
}
.c-faq__group-title {
  color: var(--color-black-main);
  font-family: var(--font-family-primary);
  font-size: 1.6rem;
  font-weight: 800;
  letter-spacing: 0;
  line-height: 1.5;
  margin: 0;
}
@media print, screen and (min-width:768px) {
  .c-faq__group-title {
    font-size: var(--font-size-l);
    letter-spacing: 0.06em;
  }
}
.c-faq__list {
  display: flex;
  flex-direction: column;
  width: 100%;
}
.c-faq__item {
  background-color: var(--color-white-main);
  border-top: 1px solid #bfd9f4;
}
.c-faq__item:last-child {
  border-bottom: 1px solid #bfd9f4;
}
.c-faq__summary {
  align-items: center;
  cursor: pointer;
  display: flex;
  gap: 2.4rem;
  justify-content: space-between;
  list-style: none;
  padding: 2.4rem 1.6rem;
}
.c-faq__summary::-webkit-details-marker {
  display: none;
}
@media print, screen and (min-width:768px) {
  .c-faq__summary {
    padding: 3.2rem;
  }
}
.c-faq__question {
  align-items: flex-start;
  display: flex;
  flex: 1;
  gap: 0.8rem;
  min-width: 0;
}
@media print, screen and (min-width:768px) {
  .c-faq__question {
    align-items: center;
  }
}
.c-faq__question-text {
  color: var(--color-black-main);
  font-family: var(--font-family-primary);
  font-size: 1.6rem;
  font-weight: 800;
  letter-spacing: 0;
  line-height: 1.5;
}
@media print, screen and (min-width:768px) {
  .c-faq__question-text {
    font-size: var(--font-size-l);
    letter-spacing: 0.06em;
  }
}
.c-faq__mark {
  flex-shrink: 0;
  font-family: var(--font-family-en);
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.2;
}
.c-faq__mark--q {
  color: var(--color-pink-main);
}
.c-faq__mark--a {
  color: var(--color-blue-main);
}
.c-faq__icon {
  border: 1px solid var(--color-blue-main);
  border-radius: 50%;
  display: block;
  flex-shrink: 0;
  height: 2.4rem;
  position: relative;
  width: 2.4rem;
}
@media print, screen and (min-width:768px) {
  .c-faq__icon {
    height: 2.8rem;
    width: 2.8rem;
  }
}
.c-faq__icon::before, .c-faq__icon::after {
  background-color: var(--color-blue-main);
  content: "";
  left: 50%;
  position: absolute;
  top: 50%;
  translate: -50% -50%;
}
.c-faq__icon::before {
  height: 1px;
  width: 1.2rem;
}
.c-faq__icon::after {
  height: 1.2rem;
  rotate: 0deg;
  width: 1px;
}
@media (prefers-reduced-motion: no-preference) {
  .c-faq__icon::after {
    transition: rotate 0.3s ease;
  }
}
.c-faq__item[open]:not(.c-faq__item--closing) .c-faq__icon::after {
  rotate: 90deg;
}
.c-faq__panel {
  display: grid;
  grid-template-rows: 0fr;
}
@media (prefers-reduced-motion: no-preference) {
  .c-faq__panel {
    transition: grid-template-rows 0.4s ease;
  }
}
.c-faq__item[open]:not(.c-faq__item--closing) .c-faq__panel {
  grid-template-rows: 1fr;
}
.c-faq__answer {
  min-height: 0;
  overflow: hidden;
}
.c-faq__answer-inner {
  align-items: baseline;
  display: flex;
  gap: 0.8rem;
  padding: 0 1.6rem 2.4rem;
}
@media print, screen and (min-width:768px) {
  .c-faq__answer-inner {
    padding: 0 3.2rem 3.2rem;
  }
}
.c-faq__answer-body {
  color: var(--color-black-main);
  flex: 1;
  font-family: var(--font-family-primary);
  font-size: var(--font-size-m);
  font-weight: 500;
  letter-spacing: 0.14em;
  line-height: 2;
  min-width: 0;
}
@media print, screen and (min-width:768px) {
  .c-faq__answer-body {
    padding-right: 4.8rem;
  }
}
.c-faq__answer-text {
  margin: 0;
}
.c-faq__answer-text + .c-faq__answer-text {
  margin-top: 1.6rem;
}

/* ==========================================================================
Component（カスタムブロック）
========================================================================== */
/* ==========================================================================
Project
========================================================================== */
@media print, screen and (min-width:768px) {
  .p-home__background {
    overflow-x: clip;
    position: relative;
  }
  .p-home__background-image {
    aspect-ratio: 724/673;
    background-image: url("../images/home/home_bg2.svg");
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    height: auto;
    position: absolute;
    z-index: -1;
  }
  .p-home__background-image--image1 {
    left: calc(50% + 20.4rem);
    top: -13.9rem;
    width: 72.3rem;
  }
  .p-home__background-image--image2 {
    left: calc(50% - 83.5rem);
    top: 42.4rem;
    width: 71.7rem;
  }
  .p-home__background-image--image3 {
    left: calc(50% + 32rem);
    top: 88rem;
    width: 87.4rem;
  }
}

.p-home-hero__main {
  margin-top: 5.3rem;
  pointer-events: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}
@media print, screen and (min-width:768px) {
  .p-home-hero__main {
    height: 52rem;
    margin-bottom: 8rem;
    margin-top: 4rem;
  }
}
.p-home-hero__main-logo {
  aspect-ratio: 498/520;
  margin: 0 auto;
  position: relative;
  width: 26.5rem;
}
@media print, screen and (min-width:768px) {
  .p-home-hero__main-logo {
    width: 49.8rem;
  }
}
.p-home-hero__main-logo img {
  display: block;
  height: auto;
  margin: 0 auto;
}
.p-home-hero__main-logo-part {
  display: block;
  height: auto;
  position: absolute;
}
.p-home-hero__main-logo-part--copy1 {
  aspect-ratio: 36.13/27.69;
  left: 12.928%;
  top: 6.416%;
  width: 8.363%;
}
.p-home-hero__main-logo-part--copy2 {
  aspect-ratio: 30.34/38.59;
  left: 21.465%;
  top: 1.656%;
  width: 7.023%;
}
.p-home-hero__main-logo-part--copy3 {
  aspect-ratio: 14.26/12.22;
  left: 29.604%;
  top: 6.391%;
  width: 3.301%;
}
.p-home-hero__main-logo-part--copy4 {
  aspect-ratio: 30.69/32.61;
  left: 34.366%;
  top: 0.601%;
  width: 7.104%;
}
.p-home-hero__main-logo-part--copy5 {
  aspect-ratio: 31.12/30.51;
  left: 42.641%;
  top: 0.341%;
  width: 7.204%;
}
.p-home-hero__main-logo-part--copy6 {
  aspect-ratio: 36.87/35.08;
  left: 51.301%;
  top: -0.222%;
  width: 8.535%;
}
.p-home-hero__main-logo-part--copy7 {
  aspect-ratio: 26.37/33.77;
  left: 60.542%;
  top: 1.04%;
  width: 6.104%;
}
.p-home-hero__main-logo-part--copy8 {
  aspect-ratio: 22.32/17.03;
  left: 67.56%;
  top: 6.068%;
  width: 5.167%;
}
.p-home-hero__main-logo-part--copy9 {
  aspect-ratio: 36.13/30.28;
  left: 72.718%;
  top: 5.383%;
  width: 8.363%;
}
.p-home-hero__main-logo-part--copy10 {
  aspect-ratio: 24.9/29.06;
  left: 80.789%;
  top: 8.519%;
  width: 5.764%;
}
.p-home-hero__main-logo-part--no {
  aspect-ratio: 287.96/276.09;
  left: 15.78%;
  top: 13.627%;
  transform-origin: 64.13% 94.96%;
  width: 66.657%;
}
.p-home-hero__main-logo-part--name1 {
  aspect-ratio: 85.17/90.34;
  left: -0.231%;
  top: 79.768%;
  width: 19.715%;
}
.p-home-hero__main-logo-part--name2 {
  aspect-ratio: 49.35/73.83;
  left: 19.315%;
  top: 82.495%;
  width: 11.424%;
}
.p-home-hero__main-logo-part--name3 {
  aspect-ratio: 46.09/47.02;
  left: 30.391%;
  top: 87.234%;
  width: 10.669%;
}
.p-home-hero__main-logo-part--name4 {
  aspect-ratio: 65.27/71.66;
  left: 42.424%;
  top: 82.045%;
  width: 15.109%;
}
.p-home-hero__main-logo-part--name5 {
  aspect-ratio: 61.98/79.53;
  left: 58.938%;
  top: 81.643%;
  width: 14.347%;
}
.p-home-hero__main-logo-part--name6 {
  aspect-ratio: 57.85/49.63;
  left: 72.565%;
  top: 88.502%;
  width: 13.391%;
}
.p-home-hero__main-logo-part--name7 {
  aspect-ratio: 70.24/79.24;
  left: 83.972%;
  top: 81.384%;
  width: 16.259%;
}
.p-home-hero__main-logo-exclamation1 {
  aspect-ratio: 183/270;
  display: block;
  height: auto;
  left: 14%;
  position: absolute;
  top: 13.5%;
  transform-origin: 100% 100%;
  width: 9.75rem;
}
@media print, screen and (min-width:768px) {
  .p-home-hero__main-logo-exclamation1 {
    width: 18.3rem;
  }
}
.p-home-hero__main-logo-exclamation2 {
  aspect-ratio: 65/65;
  display: block;
  height: auto;
  left: 52%;
  position: absolute;
  top: 65.5%;
  transform-origin: center center;
  width: 3.47rem;
}
@media print, screen and (min-width:768px) {
  .p-home-hero__main-logo-exclamation2 {
    width: 6.5rem;
  }
}
.p-home-hero__main-comics {
  overflow: hidden;
}
@media print, screen and (min-width:768px) {
  .p-home-hero__main-comics {
    margin-top: -39.8rem;
  }
}
.p-home-hero__main-comics-list {
  align-items: center;
  display: flex;
  justify-content: center;
}
@media print, screen and (max-width:767px) {
  .p-home-hero__main-comics-list {
    gap: 1.6rem;
    padding-bottom: 3.6rem;
    padding-top: 2.8rem;
  }
}
@media print, screen and (min-width:768px) {
  .p-home-hero__main-comics-list {
    gap: 4rem;
    padding-bottom: 14rem;
    padding-top: 4rem;
  }
}
.p-home-hero__main-comics-item {
  aspect-ratio: 147/208;
  transform: rotate(-14deg);
}
@media print, screen and (max-width:767px) {
  .p-home-hero__main-comics-item {
    flex: 0 0 5.5rem;
    width: 5.5rem;
  }
  .p-home-hero__main-comics-item img {
    filter: drop-shadow(0.5rem 0.5rem 0.6rem rgba(0, 0, 0, 0.12));
    will-change: transform, filter;
  }
}
@media print, screen and (min-width:768px) {
  .p-home-hero__main-comics-item {
    flex: 0 0 14.7rem;
    width: 14.7rem;
  }
  .p-home-hero__main-comics-item[data-js-list-comic="3"] {
    margin-right: 17.4rem;
  }
  .p-home-hero__main-comics-item[data-js-list-comic="4"] {
    margin-left: 17.4rem;
  }
}
.p-home-hero__main-comics-item img {
  height: 100%;
  left: 0;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center;
  position: absolute;
  top: 0;
  transform: scale(0);
  width: 100%;
  z-index: 1;
}
.p-home-hero__main-comics-item img:nth-child(n+2) {
  visibility: hidden;
}
.p-home-hero__main-comics-exclamation {
  aspect-ratio: 4.294/5.675;
  position: relative;
}
@media print, screen and (max-width:767px) {
  .p-home-hero__main-comics-exclamation {
    flex: 0 0 4.3rem;
    width: 4.3rem;
  }
}
@media print, screen and (min-width:768px) {
  .p-home-hero__main-comics-exclamation {
    flex: 0 0 11.5rem;
    width: 11.5rem;
  }
  .p-home-hero__main-comics-exclamation[data-js-list-exclamation="3"] {
    visibility: hidden;
  }
}
.p-home-hero__main-comics-exclamation1 {
  aspect-ratio: 183/270;
  display: block;
  height: auto;
  left: 0;
  position: absolute;
  top: 0;
  transform: scale(0);
  transform-origin: 100% 100%;
  width: 3.1rem;
}
@media print, screen and (min-width:768px) {
  .p-home-hero__main-comics-exclamation1 {
    width: 8.3rem;
  }
}
.p-home-hero__main-comics-exclamation2 {
  aspect-ratio: 65/65;
  bottom: 0;
  display: block;
  height: auto;
  position: absolute;
  right: 0;
  transform: scale(0);
  transform-origin: center center;
  width: 1.1rem;
}
@media print, screen and (min-width:768px) {
  .p-home-hero__main-comics-exclamation2 {
    width: 3rem;
  }
}
.p-home-hero__scroll {
  display: grid;
  gap: 0.9rem;
  grid-template-areas: "text" "guide";
  grid-template-rows: auto 6.1rem;
  justify-items: center;
  margin: 0 auto 3.2rem;
}
.p-home-hero__scroll-text {
  color: var(--color-blue-main);
  font-family: var(--font-family-en);
  font-size: var(--font-size-m);
  font-weight: 700;
  grid-area: text;
  line-height: 1.15;
  text-align: center;
  width: -moz-fit-content;
  width: fit-content;
}
.p-home-hero__scroll-line {
  background-color: var(--color-blue-main);
  grid-area: guide;
  height: 4.8rem;
  justify-self: center;
  width: 1px;
}
.p-home-hero__scroll-circle {
  animation: p-home-hero-scroll-circle 1.15s ease-out infinite;
  aspect-ratio: 1;
  background-color: var(--color-blue-main);
  border-radius: 50%;
  grid-area: guide;
  height: 0.6rem;
  place-self: start center;
  position: relative;
  width: 0.6rem;
}
.p-home-hero__scroll-circle::before {
  background-color: var(--color-blue-main);
  border-radius: 50%;
  content: "";
  height: 2.4rem;
  left: -0.9rem;
  opacity: 0.05;
  position: absolute;
  top: -0.9rem;
  width: 2.4rem;
}
.p-home-hero__bubble {
  list-style: none;
  margin: 0;
  margin: 0 auto;
  padding: 0;
  width: -moz-fit-content;
  width: fit-content;
}
@media print, screen and (min-width:768px) {
  .p-home-hero__bubble {
    height: 27.3rem;
    position: relative;
    width: 86.1rem;
  }
}
.p-home-hero__bubble-mission-vision, .p-home-hero__bubble-anniversary {
  position: relative;
}
.p-home-hero__bubble-mission-vision::after, .p-home-hero__bubble-anniversary::after {
  background-color: var(--color-blue-main);
  content: "";
  height: 100%;
  left: 1.2rem;
  pointer-events: none;
  position: absolute;
  top: 1.2rem;
  width: 100%;
  z-index: 0;
}
@media print, screen and (min-width:768px) {
  .p-home-hero__bubble-mission-vision::after, .p-home-hero__bubble-anniversary::after {
    left: 1rem;
    top: 1rem;
  }
}
.p-home-hero__bubble-mission-vision a, .p-home-hero__bubble-anniversary a {
  align-items: center;
  display: flex;
  height: 100%;
  justify-content: center;
  position: relative;
  width: 100%;
  z-index: 1;
}
@media (hover: hover) {
  .p-home-hero__bubble-mission-vision a, .p-home-hero__bubble-anniversary a {
    transition: transform 0.2s ease;
  }
  .p-home-hero__bubble-mission-vision a::before, .p-home-hero__bubble-anniversary a::before {
    transition: opacity 0.2s ease;
  }
  .p-home-hero__bubble-mission-vision a:hover, .p-home-hero__bubble-anniversary a:hover {
    transform: translate(0.6rem, 0.6rem);
  }
}
@media print and (hover: hover), screen and (hover: hover) and (min-width:768px) {
  .p-home-hero__bubble-mission-vision a:hover, .p-home-hero__bubble-anniversary a:hover {
    transform: translate(0.5rem, 0.5rem);
  }
}
@media (hover: hover) {
  .p-home-hero__bubble-mission-vision a:hover .p-home-hero__bubble-icon-arrow, .p-home-hero__bubble-anniversary a:hover .p-home-hero__bubble-icon-arrow {
    animation: p-home-hero-bubble-arrow 0.6s ease forwards;
  }
  .p-home-hero__bubble-mission-vision a:hover::before, .p-home-hero__bubble-anniversary a:hover::before {
    opacity: 0.05;
  }
}
.p-home-hero__bubble-mission-vision a::before, .p-home-hero__bubble-anniversary a::before {
  background-color: var(--color-blue-main);
  content: "";
  height: 100%;
  left: 0;
  opacity: 0;
  pointer-events: none;
  position: absolute;
  top: 0;
  width: 100%;
}
.p-home-hero__bubble-mission-vision {
  aspect-ratio: 293/160;
  width: 28.8rem;
}
.p-home-hero__bubble-mission-vision::after {
  -webkit-mask-image: url("../images/home/hero_bubble_mission_vision_sp.svg");
  mask-image: url("../images/home/hero_bubble_mission_vision_sp.svg");
  mask-mode: alpha;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
}
@media print, screen and (min-width:768px) {
  .p-home-hero__bubble-mission-vision::after {
    -webkit-mask-image: url("../images/home/hero_bubble_mission_vision_pc.svg");
    mask-image: url("../images/home/hero_bubble_mission_vision_pc.svg");
  }
}
@media print, screen and (max-width:767px) {
  .p-home-hero__bubble-mission-vision .p-home-hero__bubble-content {
    gap: 0.1rem 0.6rem;
  }
}
.p-home-hero__bubble-mission-vision .p-home-hero__bubble-logo img {
  width: 18.4rem;
}
@media print, screen and (min-width:768px) {
  .p-home-hero__bubble-mission-vision .p-home-hero__bubble-logo img {
    width: 21.4rem;
  }
}
@media print, screen and (max-width:767px) {
  .p-home-hero__bubble-mission-vision {
    z-index: 2;
  }
}
@media print, screen and (min-width:768px) {
  .p-home-hero__bubble-mission-vision {
    aspect-ratio: 427/235;
    width: 42rem;
  }
}
.p-home-hero__bubble-mission-vision a {
  background-image: url("../images/home/hero_bubble_mission_vision_sp.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  -webkit-mask-image: url("../images/home/hero_bubble_mission_vision_sp.svg");
  mask-image: url("../images/home/hero_bubble_mission_vision_sp.svg");
  mask-mode: alpha;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
}
@media print, screen and (max-width:767px) {
  .p-home-hero__bubble-mission-vision a {
    align-items: flex-start;
    justify-content: flex-start;
    padding: 3.8rem 2.3rem 7.4rem 3.8rem;
  }
}
@media print, screen and (min-width:768px) {
  .p-home-hero__bubble-mission-vision a {
    background-image: url("../images/home/hero_bubble_mission_vision_pc.svg");
    -webkit-mask-image: url("../images/home/hero_bubble_mission_vision_pc.svg");
    mask-image: url("../images/home/hero_bubble_mission_vision_pc.svg");
    padding-bottom: 5rem;
    padding-right: 2rem;
  }
}
.p-home-hero__bubble-anniversary {
  aspect-ratio: 354/172;
  margin-left: -0.7rem;
  margin-top: -2.5rem;
  width: 34.8rem;
}
.p-home-hero__bubble-anniversary::after {
  -webkit-mask-image: url("../images/home/hero_bubble_anniversary_sp.svg");
  mask-image: url("../images/home/hero_bubble_anniversary_sp.svg");
  mask-mode: alpha;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
}
@media print, screen and (min-width:768px) {
  .p-home-hero__bubble-anniversary::after {
    -webkit-mask-image: url("../images/home/hero_bubble_anniversary_pc.svg");
    mask-image: url("../images/home/hero_bubble_anniversary_pc.svg");
  }
}
@media print, screen and (max-width:767px) {
  .p-home-hero__bubble-anniversary .p-home-hero__bubble-content {
    gap: 0.4rem;
  }
}
@media print, screen and (max-width:767px) {
  .p-home-hero__bubble-anniversary .p-home-hero__bubble-text {
    margin-left: 1rem;
  }
}
.p-home-hero__bubble-anniversary .p-home-hero__bubble-icon-arrow {
  transform: rotate(-45deg);
}
.p-home-hero__bubble-anniversary .p-home-hero__bubble-logo img {
  width: 21.7rem;
}
@media print, screen and (min-width:768px) {
  .p-home-hero__bubble-anniversary .p-home-hero__bubble-logo img {
    width: 25.5rem;
  }
}
@media print, screen and (min-width:768px) {
  .p-home-hero__bubble-anniversary {
    aspect-ratio: 538/225;
    left: 33.1rem;
    margin-left: 0;
    margin-top: 0;
    position: absolute;
    top: 5.3rem;
    width: 53rem;
  }
}
.p-home-hero__bubble-anniversary a {
  background-image: url("../images/home/hero_bubble_anniversary_sp.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  -webkit-mask-image: url("../images/home/hero_bubble_anniversary_sp.svg");
  mask-image: url("../images/home/hero_bubble_anniversary_sp.svg");
  mask-mode: alpha;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
}
@media (hover: hover) {
  .p-home-hero__bubble-anniversary a:hover .p-home-hero__bubble-icon-arrow {
    animation: p-home-hero-bubble-arrow-up 0.6s ease forwards;
  }
}
@media print, screen and (max-width:767px) {
  .p-home-hero__bubble-anniversary a {
    align-items: flex-start;
    justify-content: flex-start;
    padding: 5rem 3.4rem 7.1rem 4.9rem;
  }
}
@media print, screen and (min-width:768px) {
  .p-home-hero__bubble-anniversary a {
    background-image: url("../images/home/hero_bubble_anniversary_pc.svg");
    -webkit-mask-image: url("../images/home/hero_bubble_anniversary_pc.svg");
    mask-image: url("../images/home/hero_bubble_anniversary_pc.svg");
    padding-bottom: 4rem;
    padding-left: 3rem;
  }
}
.p-home-hero__bubble-content {
  color: inherit;
  display: grid;
  gap: 0.4rem 0.8rem;
  grid-template-areas: "text icon" "logo icon";
  grid-template-columns: auto auto;
  place-content: start center;
  text-decoration: none;
}
.p-home-hero__bubble-text {
  color: var(--color-blue-main);
  font-feature-settings: "palt" 1;
  font-size: 1.2rem;
  font-weight: 800;
  grid-area: text;
  line-height: 1.4;
  text-align: center;
  white-space: nowrap;
}
@media print, screen and (min-width:768px) {
  .p-home-hero__bubble-text {
    font-size: var(--font-size-small-m);
  }
}
.p-home-hero__bubble-logo {
  grid-area: logo;
}
.p-home-hero__bubble-logo img {
  display: block;
  height: auto;
  margin: 0 auto;
}
.p-home-hero__bubble-icon {
  align-items: center;
  align-self: center;
  border: 1px solid var(--color-blue-main);
  border-radius: 50%;
  color: var(--color-blue-main);
  display: flex;
  grid-area: icon;
  height: 3.7rem;
  justify-content: center;
  overflow: hidden;
  width: 3.7rem;
}
@media print, screen and (min-width:768px) {
  .p-home-hero__bubble-icon {
    height: 5rem;
    width: 5rem;
  }
}
.p-home-hero__bubble-icon-arrow {
  height: 1.4rem;
  width: 1.4rem;
}
@media print, screen and (min-width:768px) {
  .p-home-hero__bubble-icon-arrow {
    height: 1.8rem;
    width: 1.8rem;
  }
}
@media (prefers-reduced-motion: reduce) {
  .p-home-hero__scroll-circle {
    animation: none;
  }
  .p-home-hero__main-comics-exclamation1, .p-home-hero__main-comics-exclamation2, .p-home-hero__main-comics-item img {
    transform: scale(1);
  }
}

@keyframes p-home-hero-scroll-circle {
  0% {
    opacity: 1;
    transform: translateY(-100%);
  }
  65.217%, 73.913% {
    opacity: 1;
    transform: translateY(4.8rem);
  }
  73.914%, 100% {
    opacity: 0;
    transform: translateY(4.8rem);
  }
}
@keyframes p-home-hero-bubble-arrow {
  0% {
    opacity: 1;
    transform: translateX(0);
  }
  45% {
    opacity: 0;
    transform: translateX(100%);
  }
  46% {
    opacity: 0;
    transform: translateX(-100%);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes p-home-hero-bubble-arrow-up {
  0% {
    opacity: 1;
    transform: translate(0, 0) rotate(-45deg);
  }
  45% {
    opacity: 0;
    transform: translate(100%, -100%) rotate(-45deg);
  }
  46% {
    opacity: 0;
    transform: translate(-100%, 100%) rotate(-45deg);
  }
  100% {
    opacity: 1;
    transform: translate(0, 0) rotate(-45deg);
  }
}
.p-home-overview {
  background-image: url("../images/home/home_bg1_sp.webp");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  border-bottom: 0.4rem solid var(--color-blue-main);
  border-top: 0.4rem solid var(--color-blue-main);
  padding: 12.8rem 2.4rem;
  position: relative;
}
@media print, screen and (min-width:768px) {
  .p-home-overview {
    background-image: url("../images/home/home_bg1_pc.webp");
    padding: 17.6rem 4rem 18.4rem;
  }
}
.p-home-overview__exclamation {
  aspect-ratio: 445/595;
  height: auto;
  pointer-events: none;
  position: absolute;
  right: 0.8rem;
  top: -4rem;
  width: 20rem;
  z-index: 0;
}
@media print, screen and (min-width:768px) {
  .p-home-overview__exclamation {
    right: 1.9rem;
    top: -13.4rem;
    width: 44.5rem;
  }
}
.p-home-overview__exclamation img {
  height: auto;
  width: 100%;
}
.p-home-overview__inner {
  display: grid;
  gap: 3.2rem;
  grid-template-columns: 1fr;
  margin-inline: auto;
  position: relative;
  z-index: 1;
}
@media print, screen and (min-width:768px) {
  .p-home-overview__inner {
    gap: 8rem;
    grid-template-areas: "title lead" "list list";
    grid-template-columns: auto 1fr;
    max-width: 128rem;
  }
}
@media print, screen and (min-width:768px) {
  .p-home-overview__title {
    grid-area: title;
  }
}
.p-home-overview__lead {
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
}
@media print, screen and (min-width:768px) {
  .p-home-overview__lead {
    gap: 3.2rem;
    grid-area: lead;
    margin-inline: auto;
    margin-top: 2.8rem;
    max-width: 68rem;
  }
}
.p-home-overview__heading {
  display: flex;
  flex-wrap: wrap;
  gap: 1.2rem 0;
}
@media print, screen and (min-width:768px) {
  .p-home-overview__heading {
    gap: 1.6rem 0;
  }
}
.p-home-overview__heading-line > span {
  background-color: var(--color-blue-main);
  color: var(--color-white-main);
  display: block;
  font-feature-settings: "palt" 1;
  font-size: 3.4rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  line-height: 1;
  padding: 0.1em 0.4rem 0.2em;
  width: -moz-fit-content;
  width: fit-content;
}
@media print, screen and (min-width:768px) {
  .p-home-overview__heading-line > span {
    font-size: 4.2rem;
  }
}
.p-home-overview__heading-line:first-child {
  flex-basis: 100%;
}
.p-home-overview__text {
  color: var(--color-black-main);
  font-feature-settings: "palt" 1;
  font-size: var(--font-size-m);
  font-weight: 500;
  letter-spacing: 0.03em;
  line-height: 2;
}
@media print, screen and (min-width:768px) {
  .p-home-overview__text {
    line-height: 2.25;
  }
}
.p-home-overview__list {
  margin-top: 1.4rem;
}
@media print, screen and (min-width:768px) {
  .p-home-overview__list {
    grid-area: list;
    margin-top: 0;
  }
}

.p-home-recruit {
  padding: 12.8rem 2.4rem 0;
}
@media print, screen and (min-width:768px) {
  .p-home-recruit {
    padding: 24rem 4rem 0;
  }
}
.p-home-recruit__inner {
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
  margin-inline: auto;
}
@media print, screen and (min-width:768px) {
  .p-home-recruit__inner {
    align-items: center;
    display: grid;
    gap: 6.4rem 4rem;
    grid-template-areas: "title image" "lead image" "button button";
    grid-template-columns: minmax(0, 54fr) minmax(0, 70fr);
    max-width: 128rem;
  }
}
@media print, screen and (min-width:768px) {
  .p-home-recruit__title {
    grid-area: title;
  }
}
.p-home-recruit__image {
  border: 0.3rem solid var(--color-blue-main);
  box-shadow: 0.6rem 0.6rem 0 var(--color-blue-main);
}
@media print, screen and (min-width:768px) {
  .p-home-recruit__image {
    align-self: start;
    border-width: 0.4rem;
    box-shadow: 0.8rem 0.8rem 0 var(--color-blue-main);
    grid-area: image;
  }
}
.p-home-recruit__image img {
  display: block;
  height: auto;
  width: 100%;
}
.p-home-recruit__lead {
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
}
@media print, screen and (min-width:768px) {
  .p-home-recruit__lead {
    gap: 3.2rem;
    grid-area: lead;
  }
}
.p-home-recruit__heading {
  display: flex;
  flex-wrap: wrap;
  gap: 1.2rem 0;
}
@media print, screen and (min-width:768px) {
  .p-home-recruit__heading {
    gap: 1.6rem 0;
  }
}
.p-home-recruit__heading-line > span {
  background-color: var(--color-blue-main);
  color: var(--color-white-main);
  display: block;
  font-feature-settings: "palt" 1;
  font-size: 3.4rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  line-height: 1;
  padding: 0.1em 0.4rem 0.2em;
  width: -moz-fit-content;
  width: fit-content;
}
@media print, screen and (min-width:768px) {
  .p-home-recruit__heading-line > span {
    font-size: 4.2rem;
  }
}
.p-home-recruit__text {
  color: var(--color-black-main);
  font-feature-settings: "palt" 1;
  font-size: var(--font-size-m);
  font-weight: 500;
  letter-spacing: 0.03em;
  line-height: 2;
}
@media print, screen and (min-width:768px) {
  .p-home-recruit__text {
    line-height: 2.25;
    max-width: 40rem;
  }
}
@media print, screen and (min-width:768px) {
  .p-home-recruit__button {
    grid-area: button;
    justify-self: end;
  }
}

.p-home-movie {
  padding: 12.8rem 2.4rem;
  position: relative;
}
@media print, screen and (min-width:768px) {
  .p-home-movie {
    padding: 16rem 4rem 11.2rem;
  }
}
.p-home-movie::before {
  background-color: var(--color-blue-main);
  bottom: 8.8rem;
  content: "";
  display: block;
  height: 28.6rem;
  left: 0;
  position: absolute;
  width: 100%;
  z-index: -1;
}
@media print, screen and (min-width:768px) {
  .p-home-movie::before {
    bottom: 0;
    height: min(40rem, 28.264vw);
  }
}
.p-home-movie__exclamation {
  aspect-ratio: 445/595;
  bottom: 0;
  height: auto;
  left: -4.8rem;
  pointer-events: none;
  position: absolute;
  width: 22.8rem;
  z-index: 2;
}
@media print, screen and (min-width:768px) {
  .p-home-movie__exclamation {
    bottom: -16rem;
    left: calc(50% - 78rem);
    width: 41.8rem;
  }
}
@media print and (max-width: 1360px), screen and (min-width:768px) and (max-width: 1360px) {
  .p-home-movie__exclamation {
    left: -10rem;
  }
}
.p-home-movie__exclamation img {
  height: auto;
  width: 100%;
}
.p-home-movie__inner {
  display: grid;
  gap: 2.4rem;
  grid-template-columns: 1fr;
  margin-inline: auto;
  position: relative;
  z-index: 1;
}
@media print, screen and (min-width:768px) {
  .p-home-movie__inner {
    gap: 2.4rem 9.2rem;
    grid-template-areas: "media title" "media caption";
    grid-template-columns: minmax(0, 96fr) minmax(20.7rem, 21fr);
    max-width: 128rem;
  }
}
@media print, screen and (min-width:768px) {
  .p-home-movie__inner .c-title1 {
    align-self: start;
    grid-area: title;
  }
}
@media print, screen and (min-width:768px) {
  .p-home-movie__inner .c-title1 .c-title1__primary {
    white-space: nowrap;
  }
}
.p-home-movie__media {
  border: 0.3rem solid var(--color-blue-main);
  filter: drop-shadow(0.6rem 0.6rem 0 var(--color-blue-main));
}
@media print, screen and (min-width:768px) {
  .p-home-movie__media {
    align-self: start;
    border-width: 0.4rem;
    filter: drop-shadow(0.8rem 0.8rem 0 var(--color-blue-main));
    grid-area: media;
  }
}
.p-home-movie__media-slider .splide__slide__container {
  aspect-ratio: 327/192;
}
.p-home-movie__media-slider .splide__slide__container img {
  display: block;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  width: 100%;
}
.p-home-movie__media-slider .splide__video__play {
  background: transparent url("../images/home/movie_play.svg") center/contain no-repeat;
  height: 4.1rem;
  opacity: 1;
  width: 4.1rem;
}
@media print, screen and (min-width:768px) {
  .p-home-movie__media-slider .splide__video__play {
    height: 12rem;
    width: 12rem;
  }
}
.p-home-movie__media-slider .splide__video__play::after {
  content: none;
}
.p-home-movie__caption {
  margin-inline-start: auto;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .p-home-movie__caption {
    align-self: end;
    grid-area: caption;
    margin-inline-start: 0;
  }
}
.p-home-movie__caption-slider .splide__arrow {
  background: transparent;
  height: 2.6rem;
  opacity: 1;
  padding: 0;
  position: static;
  transform: none;
  width: 1.5rem;
}
.p-home-movie__caption-slider .splide__arrow--prev {
  order: 1;
}
.p-home-movie__caption-slider .splide__arrow--prev .p-home-movie__arrow {
  transform: scaleX(-1);
}
.p-home-movie__caption-slider .splide__arrow--next {
  order: 3;
}
.p-home-movie__caption-slider .splide__arrows {
  display: contents;
}
.p-home-movie__caption-slider .splide__pagination {
  align-items: center;
  display: flex;
  gap: 1.8rem;
  order: 2;
  padding: 0;
  position: static;
}
.p-home-movie__caption-slider .splide__pagination li {
  display: flex;
  line-height: 1;
  margin: 0;
}
.p-home-movie__caption-slider .splide__pagination__page {
  background: var(--color-white-main);
  border: 0;
  border-radius: 50%;
  display: block;
  height: 0.8rem;
  margin: 0;
  opacity: 0.3;
  padding: 0;
  width: 0.8rem;
}
.p-home-movie__caption-slider .splide__pagination__page.is-active {
  opacity: 1;
  transform: none;
}
.p-home-movie__caption-text {
  color: var(--color-white-main);
  font-feature-settings: "palt" 1;
  font-size: var(--font-size-small-m);
  font-weight: 500;
  letter-spacing: 0.03em;
  line-height: 1.75;
}
@media print, screen and (max-width:767px) {
  .p-home-movie__caption-text {
    text-align: right;
  }
}
@media print, screen and (min-width:768px) {
  .p-home-movie__caption-text {
    text-align: left;
  }
}
.p-home-movie__controls {
  align-items: center;
  display: flex;
  gap: 3.2rem;
  height: 2.6rem;
  justify-content: space-between;
  margin: 1.2rem auto 0;
  width: -moz-fit-content;
  width: fit-content;
}
@media print, screen and (min-width:768px) {
  .p-home-movie__controls {
    margin: 0.4rem auto 0 0;
  }
}
.p-home-movie__arrow {
  color: var(--color-white-main);
  display: block;
  height: 2.6rem;
  width: 1.5rem;
}

.p-home-news {
  padding: 6.4rem 2.4rem 12.8rem;
}
@media print, screen and (min-width:768px) {
  .p-home-news {
    padding: 10.4rem 4rem 18.4rem;
  }
}
.p-home-news__inner {
  display: grid;
  gap: 3.2rem;
  grid-template-columns: 1fr;
  margin-inline: auto;
}
@media print, screen and (min-width:768px) {
  .p-home-news__inner {
    gap: 6.4rem;
    grid-template-areas: "title list" "title button";
    grid-template-columns: auto 1fr;
    max-width: 128rem;
  }
}
@media print, screen and (min-width:768px) {
  .p-home-news__title {
    grid-area: title;
  }
}
@media print, screen and (min-width:768px) {
  .p-home-news__list {
    grid-area: list;
  }
}
@media print, screen and (min-width:768px) {
  .p-home-news__button {
    grid-area: button;
    justify-self: end;
  }
}

.p-news-detail {
  padding: 2.4rem 2.4rem 12.8rem;
}
@media print, screen and (min-width:768px) {
  .p-news-detail {
    padding: 3.2rem 4rem 12.8rem;
  }
}
.p-news-detail__inner {
  margin-inline: auto;
  max-width: 128rem;
}
.p-news-detail__header {
  padding-bottom: 4.8rem;
}
@media print, screen and (min-width:768px) {
  .p-news-detail__header {
    padding-bottom: 12.8rem;
  }
}
.p-news-detail__title {
  color: var(--color-blue-main);
  font-family: var(--font-family-primary);
  font-size: 2.8rem;
  font-weight: 800;
  letter-spacing: 0;
  line-height: 1.5;
  margin: 0;
  overflow-wrap: break-word;
}
@media print, screen and (min-width:768px) {
  .p-news-detail__title {
    font-size: 4.2rem;
    letter-spacing: 0.06em;
  }
}
.p-news-detail__body {
  margin-inline: auto;
  max-width: 98rem;
}
.p-news-detail__meta {
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
}
@media print, screen and (min-width:768px) {
  .p-news-detail__meta {
    gap: 1.6rem;
  }
}
.p-news-detail__meta-info {
  align-items: center;
  display: flex;
  gap: 1.6rem;
}
.p-news-detail__meta-date {
  color: var(--color-black-main);
  font-size: var(--font-size-m);
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.5;
  white-space: nowrap;
}
.p-news-detail__eyecatch {
  margin-bottom: 5.6rem;
  margin-top: 4rem;
}
@media print, screen and (min-width:768px) {
  .p-news-detail__eyecatch {
    margin-bottom: 9.6rem;
    margin-top: 4.8rem;
  }
}
.p-news-detail__eyecatch-image {
  display: block;
  height: auto;
  margin-inline: auto;
  max-width: 78.6rem;
  width: 100%;
}
.p-news-detail__content {
  color: var(--color-black-main);
  margin-top: 4rem;
}
@media print, screen and (min-width:768px) {
  .p-news-detail__content {
    margin-top: 4.8rem;
  }
}
.p-news-detail__content > * {
  margin: 0;
}
.p-news-detail__content > *:not(:first-child) {
  margin-top: 4rem;
}
@media print, screen and (min-width:768px) {
  .p-news-detail__content > *:not(:first-child) {
    margin-top: 4.8rem;
  }
}
.p-news-detail__content > p + p:not(:first-child) {
  margin-top: 3.2rem;
}
.p-news-detail__content > h4 + *:not(:first-child),
.p-news-detail__content > h5 + *:not(:first-child),
.p-news-detail__content > h6 + *:not(:first-child) {
  margin-top: 1.6rem;
}
@media print, screen and (min-width:768px) {
  .p-news-detail__content > h4 + *:not(:first-child),
  .p-news-detail__content > h5 + *:not(:first-child),
  .p-news-detail__content > h6 + *:not(:first-child) {
    margin-top: 2.4rem;
  }
}
.p-news-detail__content h1 {
  color: var(--color-blue-main);
  font-size: 2.8rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  line-height: 1.4;
}
@media print, screen and (min-width:768px) {
  .p-news-detail__content h1 {
    font-size: 4rem;
    letter-spacing: 0.12em;
  }
}
.p-news-detail__content h2 {
  align-items: flex-start;
  color: var(--color-blue-main);
  display: flex;
  font-size: 2.6rem;
  font-weight: 800;
  gap: 1.6rem;
  letter-spacing: 0.08em;
  line-height: 1.5;
}
.p-news-detail__content h2::before {
  background: var(--color-pink-main);
  content: "";
  flex-shrink: 0;
  height: 3.2rem;
  width: 0.8rem;
}
@media print, screen and (min-width:768px) {
  .p-news-detail__content h2 {
    align-items: center;
    font-size: 3.4rem;
    gap: 3.2rem;
    letter-spacing: 0.12em;
  }
}
.p-news-detail__content h3 {
  color: var(--color-black-main);
  font-size: 2.2rem;
  font-weight: 800;
  letter-spacing: 0;
  line-height: 1.5;
}
@media print, screen and (min-width:768px) {
  .p-news-detail__content h3 {
    font-size: 2.4rem;
    letter-spacing: 0.14em;
  }
}
.p-news-detail__content h4 {
  color: var(--color-black-main);
  font-size: 1.6rem;
  font-weight: 800;
  letter-spacing: 0;
  line-height: 1.5;
}
@media print, screen and (min-width:768px) {
  .p-news-detail__content h4 {
    font-size: var(--font-size-l);
    letter-spacing: 0.06em;
  }
}
.p-news-detail__content h5 {
  color: var(--color-black-main);
  font-size: var(--font-size-m);
  font-weight: 800;
  letter-spacing: 0.06em;
  line-height: 1.5;
}
.p-news-detail__content h6 {
  color: var(--color-black-sub);
  font-size: var(--font-size-small-m);
  font-weight: 800;
  letter-spacing: 0.06em;
  line-height: 1.5;
}
.p-news-detail__content p {
  color: var(--color-black-main);
  font-size: var(--font-size-m);
  font-weight: 500;
  letter-spacing: 0;
  line-height: 2;
}
.p-news-detail__content strong {
  font-weight: 800;
}
.p-news-detail__content ul,
.p-news-detail__content ol {
  color: var(--color-black-main);
  font-size: var(--font-size-m);
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.5;
  padding-inline-start: 2.4rem;
}
.p-news-detail__content ul {
  list-style-type: disc;
}
.p-news-detail__content ol {
  list-style-type: decimal;
}
.p-news-detail__content li:not(:last-child) {
  margin-bottom: 0.8rem;
}
.p-news-detail__content blockquote {
  border: 1px solid #bfd9f4;
  border-radius: 1.6rem;
  color: var(--color-black-main);
  font-size: var(--font-size-m);
  font-weight: 500;
  letter-spacing: 0;
  line-height: 2;
  padding: 2.4rem 4.8rem;
  position: relative;
}
.p-news-detail__content blockquote::before, .p-news-detail__content blockquote::after {
  color: var(--color-blue-main);
  font-size: 3.4rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  line-height: 1;
  position: absolute;
}
.p-news-detail__content blockquote::before {
  content: "“";
  left: 1.6rem;
  top: 2.4rem;
}
.p-news-detail__content blockquote::after {
  bottom: 1.2rem;
  content: "”";
  right: 1.6rem;
}
@media print, screen and (min-width:768px) {
  .p-news-detail__content blockquote {
    padding: 2.4rem 5.6rem;
  }
}
.p-news-detail__content blockquote p {
  margin: 0;
}
.p-news-detail__content blockquote p + p {
  margin-top: 1.6rem;
}
.p-news-detail__content table {
  border-collapse: collapse;
  width: 100%;
}
.p-news-detail__content th,
.p-news-detail__content td {
  border: 1px solid #bfd9f4;
  color: var(--color-black-main);
  font-size: var(--font-size-m);
  letter-spacing: 0;
  line-height: 1.75;
  overflow-wrap: anywhere;
  padding: 1.2rem;
  text-align: left;
  vertical-align: top;
}
@media print, screen and (min-width:768px) {
  .p-news-detail__content th,
  .p-news-detail__content td {
    padding: 1.6rem 2.4rem;
  }
}
.p-news-detail__content th {
  background: var(--color-blue-bg);
  font-weight: 800;
}
.p-news-detail__content td {
  font-weight: 500;
}
.p-news-detail__content hr {
  border: 0;
  border-top: 1px solid #bfd9f4;
}
.p-news-detail__content img {
  display: block;
  height: auto;
  max-width: 100%;
}
.p-news-detail__content iframe {
  max-width: 100%;
}
.p-news-detail__content figure {
  margin: 0;
}
.p-news-detail__content figcaption {
  color: var(--color-black-sub);
  font-size: var(--font-size-s);
  letter-spacing: 0;
  line-height: 1.5;
  margin-top: 0.8rem;
}
.p-news-detail__content a {
  color: var(--color-blue-main);
  font-weight: 800;
  letter-spacing: 0;
  line-height: 1.5;
}
.p-news-detail__content a[target=_blank] {
  align-items: center;
  display: inline-flex;
  gap: 0.8rem;
}
.p-news-detail__content a[target=_blank]::after {
  background-color: currentcolor;
  content: "";
  flex-shrink: 0;
  height: 2.2rem;
  -webkit-mask-image: url("data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%3E%3Cpath%20d%3D%22M8.7311%2014.9426L15.5211%208.15261M15.6015%2016.0741V8.07227H7.59961%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.2%22%2F%3E%3Cpath%20d%3D%22M22.6001%2011.5996C22.6001%2013.7752%2021.955%2015.9019%2020.7463%2017.7109C19.5376%2019.5198%2017.8196%2020.9297%2015.8096%2021.7623C13.7996%2022.5948%2011.5879%2022.8127%209.45411%2022.3882C7.32032%2021.9638%205.3603%2020.9162%203.82193%2019.3778C2.28355%2017.8394%201.2359%2015.8794%200.811464%2013.7456C0.387027%2011.6118%200.604864%209.40008%201.43743%207.39009C2.26999%205.3801%203.67989%203.66214%205.48883%202.45344C7.29777%201.24475%209.42451%200.599609%2011.6001%200.599609%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.2%22%20stroke-miterlimit%3D%2210%22%2F%3E%3C%2Fsvg%3E");
  mask-image: url("data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%3E%3Cpath%20d%3D%22M8.7311%2014.9426L15.5211%208.15261M15.6015%2016.0741V8.07227H7.59961%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.2%22%2F%3E%3Cpath%20d%3D%22M22.6001%2011.5996C22.6001%2013.7752%2021.955%2015.9019%2020.7463%2017.7109C19.5376%2019.5198%2017.8196%2020.9297%2015.8096%2021.7623C13.7996%2022.5948%2011.5879%2022.8127%209.45411%2022.3882C7.32032%2021.9638%205.3603%2020.9162%203.82193%2019.3778C2.28355%2017.8394%201.2359%2015.8794%200.811464%2013.7456C0.387027%2011.6118%200.604864%209.40008%201.43743%207.39009C2.26999%205.3801%203.67989%203.66214%205.48883%202.45344C7.29777%201.24475%209.42451%200.599609%2011.6001%200.599609%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.2%22%20stroke-miterlimit%3D%2210%22%2F%3E%3C%2Fsvg%3E");
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: contain;
  mask-size: contain;
  width: 2.2rem;
}
@media (hover: hover) {
  .p-news-detail__content a {
    transition: color 0.2s ease;
  }
  .p-news-detail__content a:hover, .p-news-detail__content a:focus-visible {
    color: var(--color-blue-hover);
  }
}
.p-news-detail__content .mt-image-center {
  margin-inline: auto;
}
.p-news-detail__content .mt-image-right {
  margin-left: auto;
}
.p-news-detail__content .mt-be-columns {
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
}
@media print, screen and (min-width:768px) {
  .p-news-detail__content .mt-be-columns {
    flex-direction: row;
    gap: 4.8rem;
  }
}
.p-news-detail__content .mt-be-column {
  flex: 1 1 0;
  min-width: 0;
}
.p-news-detail__content .mt-be-column > * {
  margin: 0;
}
.p-news-detail__content .mt-be-column > *:not(:first-child) {
  margin-top: 2.4rem;
}
.p-news-detail__contact {
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
  margin-top: 5.6rem;
}
@media print, screen and (min-width:768px) {
  .p-news-detail__contact {
    gap: 4.8rem;
    margin-top: 9.6rem;
  }
}
.p-news-detail__article-nav {
  margin-top: 4.8rem;
}
@media print, screen and (min-width:768px) {
  .p-news-detail__article-nav {
    margin-top: 6.4rem;
  }
}

.p-news-list__list {
  display: flex;
  flex-direction: column;
  list-style: none;
  margin: 0;
  padding: 0;
}
.p-news-list__link {
  border-bottom: 1px solid #bfd9f4;
  color: var(--color-black-main);
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
  padding-bottom: 2.4rem;
  text-decoration: none;
}
@media print, screen and (min-width:768px) {
  .p-news-list__link {
    align-items: center;
    flex-direction: row;
    gap: 4rem;
    padding-block: 2.4rem;
  }
}
.p-news-list__item:not(:first-child) .p-news-list__link {
  padding-top: 2.4rem;
}
.p-news-list__image {
  align-items: center;
  aspect-ratio: 3/2;
  display: flex;
  flex-shrink: 0;
  justify-content: center;
  overflow: hidden;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .p-news-list__image {
    width: 31.2rem;
  }
}
.p-news-list__image img {
  display: block;
  flex-shrink: 0;
  height: auto;
  max-height: 100%;
  max-width: 100%;
  width: auto;
}
.p-news-list__body {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 1.6rem;
  min-width: 0;
  width: 100%;
}
.p-news-list__meta {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem;
}
.p-news-list__date {
  color: var(--color-black-main);
  font-family: var(--font-family-en);
  font-size: var(--font-size-s);
  font-weight: 500;
  line-height: 1;
  white-space: nowrap;
}
.p-news-list__title {
  -webkit-box-orient: vertical;
  color: var(--color-black-main);
  display: -webkit-box;
  font-family: var(--font-family-primary);
  font-size: var(--font-size-m);
  font-weight: 700;
  -webkit-line-clamp: 3;
  line-height: 1.75;
  overflow: hidden;
  text-align: justify;
}
@media print, screen and (min-width:768px) {
  .p-news-list__title {
    font-size: var(--font-size-l);
    -webkit-line-clamp: 2;
  }
}
.p-news-list__pagination {
  display: flex;
  justify-content: center;
  margin-top: 4.8rem;
}
@media print, screen and (min-width:768px) {
  .p-news-list__pagination {
    margin-top: 6.4rem;
  }
}

.p-home-partner {
  padding: 12.8rem 2.4rem;
}
@media print, screen and (min-width:768px) {
  .p-home-partner {
    padding: 17.6rem 4rem 18.4rem;
  }
}
.p-home-partner__inner {
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
  margin-inline: auto;
}
@media print, screen and (min-width:768px) {
  .p-home-partner__inner {
    flex-direction: row;
    gap: 8rem;
    justify-content: space-between;
    max-width: 128rem;
  }
}
@media print, screen and (min-width:768px) {
  .p-home-partner__title {
    flex: 0 0 auto;
    margin-top: -0.8rem;
  }
}
@media print, screen and (min-width:768px) {
  .p-home-partner__list {
    flex: 1 1 auto;
    min-width: 0;
  }
}

.p-home-profile {
  background-color: var(--color-blue-bg);
  border-top: 0.4rem solid var(--color-blue-main);
  padding: 12.8rem 2.4rem;
  position: relative;
}
@media print, screen and (min-width:768px) {
  .p-home-profile {
    padding: 17.6rem 4rem 21.6rem;
  }
}
.p-home-profile__inner {
  display: grid;
  gap: 3.2rem;
  grid-template-columns: 1fr;
  margin-inline: auto;
}
@media print, screen and (min-width:768px) {
  .p-home-profile__inner {
    align-items: start;
    gap: 4rem;
    grid-template-areas: "title button" "map map" "details station";
    grid-template-columns: auto auto;
    justify-content: space-between;
    max-width: 128rem;
    width: 100%;
  }
}
@media print, screen and (min-width:768px) {
  .p-home-profile__title {
    grid-area: title;
  }
}
.p-home-profile__map {
  aspect-ratio: 327/444;
  height: auto;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .p-home-profile__map {
    aspect-ratio: 1260/444;
    grid-area: map;
  }
}
.p-home-profile__map iframe {
  border: 0;
  height: 100%;
  width: 100%;
}
.p-home-profile__details {
  border-left: 1px solid var(--color-blue-main);
  color: var(--color-black-main);
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
  padding-left: 1.6rem;
}
@media print, screen and (min-width:768px) {
  .p-home-profile__details {
    border-left-width: 0.2rem;
    gap: 0;
    grid-area: details;
    justify-content: center;
    letter-spacing: 0.03em;
    padding: 0.8rem 2.4rem;
  }
}
.p-home-profile__name {
  font-size: var(--font-size-m);
  font-weight: 800;
  line-height: 1.5;
}
@media print, screen and (min-width:768px) {
  .p-home-profile__name {
    line-height: 1.75;
  }
}
.p-home-profile__address {
  font-size: var(--font-size-m);
  font-weight: 500;
  line-height: 1.6;
}
@media print, screen and (min-width:768px) {
  .p-home-profile__address {
    line-height: 1.75;
  }
}
.p-home-profile__station {
  display: flex;
  flex-direction: column;
  gap: 0;
}
@media print, screen and (min-width:768px) {
  .p-home-profile__station {
    flex-flow: row wrap;
    gap: 0 4rem;
    grid-area: station;
    justify-content: end;
  }
}
@media print and (max-width: 1000px), screen and (min-width:768px) and (max-width: 1000px) {
  .p-home-profile__station {
    flex-flow: column nowrap;
  }
}
.p-home-profile__station-list {
  display: grid;
  gap: 0.2rem;
  grid-template-columns: 1fr;
}
@media print, screen and (min-width:768px) {
  .p-home-profile__station-list {
    flex: 0 0 auto;
  }
}
.p-home-profile__station-item {
  font-size: var(--font-size-s);
  font-weight: 500;
  line-height: 1.6;
}
@media print, screen and (min-width:768px) {
  .p-home-profile__button {
    grid-area: button;
    justify-self: end;
    margin-top: 1.6rem;
  }
}

.p-company-fv-slider {
  overflow-x: clip;
}
.p-company-fv-slider .splide__slide {
  height: 10.2rem;
  width: 7.2rem;
}
@media print, screen and (min-width:768px) {
  .p-company-fv-slider .splide__slide {
    height: 20.8rem;
    width: 14.7rem;
  }
}
.p-company-fv-slider .splide__slide img {
  height: 100%;
  max-inline-size: none;
  -o-object-fit: cover;
  object-fit: cover;
  width: 100%;
}

.p-company-vision {
  padding: 9.6rem 2.4rem 0;
}
@media print, screen and (min-width:768px) {
  .p-company-vision {
    padding: 12.4rem 4rem 0;
  }
}
.p-company-vision__inner {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  margin-inline: auto;
  max-width: 112rem;
  position: relative;
}
@media print, screen and (min-width:768px) {
  .p-company-vision__inner {
    gap: 2.4rem;
  }
}
.p-company-vision__title {
  color: var(--color-pink-main);
  font-family: var(--font-family-en);
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.5;
  position: relative;
  z-index: 1;
}
@media print, screen and (max-width:767px) {
  .p-company-vision__title {
    text-align: center;
  }
}
@media print, screen and (min-width:768px) {
  .p-company-vision__title {
    font-size: 3.7rem;
  }
}
.p-company-vision__text {
  color: var(--color-black-main);
  font-family: var(--font-family-primary);
  font-size: 3.2rem;
  font-weight: 800;
  line-height: 1.6;
  position: relative;
  z-index: 1;
}
@media print, screen and (max-width:767px) {
  .p-company-vision__text {
    text-align: center;
  }
}
@media print, screen and (min-width:768px) {
  .p-company-vision__text {
    font-feature-settings: "palt" 1;
    font-size: 5.2rem;
    letter-spacing: 0.08em;
    line-height: 1.5;
  }
}
.p-company-vision__exclamation {
  aspect-ratio: 402/537;
  height: auto;
  pointer-events: none;
  position: absolute;
  right: -1rem;
  top: -15.8rem;
  width: 14.3rem;
  z-index: 0;
}
@media print, screen and (min-width:768px) {
  .p-company-vision__exclamation {
    right: -3rem;
    top: -21.3rem;
    width: 40.2rem;
  }
}
.p-company-vision__exclamation img {
  height: auto;
  width: 100%;
}

.p-company-mission {
  padding: 5rem 2.4rem 9.6rem;
}
@media print, screen and (min-width:768px) {
  .p-company-mission {
    padding: 9.1rem 4rem 12.8rem;
  }
}
.p-company-mission__inner {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 1.8rem;
  margin-inline: auto;
  max-width: 112rem;
}
@media print, screen and (min-width:768px) {
  .p-company-mission__inner {
    align-items: start;
    gap: 3.7rem;
  }
}
.p-company-mission__title {
  color: var(--color-pink-main);
  font-family: var(--font-family-en);
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.5;
}
@media print, screen and (min-width:768px) {
  .p-company-mission__title {
    font-size: 3.7rem;
  }
}
.p-company-mission__content {
  container-type: inline-size;
  width: 100%;
}
.p-company-mission__list {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 1.3rem;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .p-company-mission__list {
    gap: 2.7rem;
  }
}
@container (min-width: 112rem) {
  .p-company-mission__list {
    flex-direction: row;
  }
}
.p-company-mission__item {
  align-items: center;
  color: var(--color-black-main);
  display: flex;
  flex-direction: column;
  font-family: var(--font-family-primary);
  font-size: 1.9rem;
  font-weight: 800;
  gap: 1.3rem;
  letter-spacing: 0.06em;
  line-height: 1.5;
  text-align: center;
}
@media print, screen and (min-width:768px) {
  .p-company-mission__item {
    gap: 2.7rem;
  }
}
.p-company-mission__item::after {
  background-color: var(--color-blue-main);
  border-radius: 50%;
  content: "";
  display: block;
  flex-shrink: 0;
  height: 1.2rem;
  width: 1.2rem;
}
.p-company-mission__item:last-child::after {
  content: none;
}
@container (min-width: 112rem) {
  .p-company-mission__item {
    flex-direction: row;
    text-align: start;
    white-space: nowrap;
  }
}

.p-company-top-message {
  background-color: var(--color-blue-bg);
  border-bottom: 0.4rem solid var(--color-blue-main);
  border-top: 0.4rem solid var(--color-blue-main);
  padding: 9.6rem 2.4rem;
}
@media print, screen and (min-width:768px) {
  .p-company-top-message {
    padding: 12.8rem 4rem;
  }
}
.p-company-top-message__inner {
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
  margin-inline: auto;
  max-width: 112rem;
}
@media print, screen and (min-width:768px) {
  .p-company-top-message__inner {
    gap: 4.6rem;
  }
}
.p-company-top-message__content {
  display: flex;
  flex-direction: column;
  gap: 4.6rem;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .p-company-top-message__content {
    gap: 9.2rem;
  }
}
.p-company-top-message__media {
  aspect-ratio: 1;
  border-radius: 2.4rem;
  overflow: hidden;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .p-company-top-message__media {
    aspect-ratio: 1120/528;
    border-radius: 3.2rem;
  }
}
.p-company-top-message__media img {
  height: 100%;
  max-inline-size: none;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center 20%;
  object-position: center 20%;
  width: 100%;
}
.p-company-top-message__body {
  display: flex;
  flex-direction: column;
  gap: 4rem;
}
@media print, screen and (min-width:768px) {
  .p-company-top-message__body {
    margin-inline: auto;
    max-width: 86.4rem;
    width: 100%;
  }
}
.p-company-top-message__heading {
  color: var(--color-black-main);
  font-family: var(--font-family-primary);
  font-size: 3.4rem;
  font-weight: 800;
  line-height: 1.5;
}
@media print, screen and (min-width:768px) {
  .p-company-top-message__heading {
    font-size: 3.8rem;
  }
}
.p-company-top-message__heading-accent {
  color: var(--color-pink-main);
}
.p-company-top-message__text {
  color: var(--color-black-main);
  display: flex;
  flex-direction: column;
  font-family: var(--font-family-primary);
  font-size: var(--font-size-m);
  font-weight: 500;
  gap: 2em;
  line-height: 2;
}
.p-company-top-message__sign {
  display: flex;
  flex-direction: column;
  gap: 4rem;
}
@media print, screen and (min-width:768px) {
  .p-company-top-message__sign {
    align-items: flex-start;
    flex-direction: row;
    justify-content: space-between;
  }
}
.p-company-top-message__profile {
  display: flex;
  flex-direction: column;
  gap: 0.9rem;
}
.p-company-top-message__role {
  color: var(--color-black-main);
  font-family: var(--font-family-primary);
  font-size: var(--font-size-m);
  font-weight: 800;
  letter-spacing: 0.08em;
  line-height: 2;
}
.p-company-top-message__name {
  align-items: center;
  display: flex;
  gap: 1.9rem;
  white-space: nowrap;
}
.p-company-top-message__name-primary {
  color: var(--color-black-main);
  font-family: var(--font-family-primary);
  font-size: 2.4rem;
  font-weight: 800;
  letter-spacing: 0.14em;
  line-height: 2;
}
.p-company-top-message__name-secondary {
  color: var(--color-black-main);
  font-family: var(--font-family-en);
  font-size: var(--font-size-m);
  font-weight: 500;
  line-height: 2;
}
.p-company-top-message__logo {
  align-self: center;
  width: 26.7rem;
}
@media print, screen and (min-width:768px) {
  .p-company-top-message__logo {
    align-self: auto;
    flex-shrink: 0;
    width: 29.3rem;
  }
}
.p-company-top-message__logo img {
  display: block;
  height: auto;
  width: 100%;
}

.p-company-overview {
  padding: 9.6rem 2.4rem 0;
}
@media print, screen and (min-width:768px) {
  .p-company-overview {
    padding: 12.8rem 4rem 0;
  }
}
.p-company-overview__inner {
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
  margin-inline: auto;
  max-width: 112rem;
}
@media print, screen and (min-width:768px) {
  .p-company-overview__inner {
    gap: 4.9rem;
  }
}
.p-company-overview__list {
  margin: 0;
  width: 100%;
}
.p-company-overview__item {
  border-top: 1px solid color-mix(in srgb, var(--color-blue-main) 25%, transparent);
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
  padding: 2.4rem 0;
}
.p-company-overview__item:last-child {
  border-bottom: 1px solid color-mix(in srgb, var(--color-blue-main) 25%, transparent);
  gap: 1.2rem;
}
@media print, screen and (min-width:768px) {
  .p-company-overview__item {
    flex-direction: row;
    gap: 3.2rem;
    padding: 2.4rem 1.6rem;
  }
  .p-company-overview__item:last-child {
    gap: 3.2rem;
  }
}
.p-company-overview__term {
  color: var(--color-black-main);
  font-family: var(--font-family-primary);
  font-size: var(--font-size-m);
  font-weight: 800;
  line-height: 1.5;
  margin: 0;
}
@media print, screen and (min-width:768px) {
  .p-company-overview__term {
    flex-shrink: 0;
    letter-spacing: 0.06em;
    line-height: 1.75;
    width: 25.6rem;
  }
}
.p-company-overview__item:last-child .p-company-overview__term {
  display: none;
}
@media print, screen and (min-width:768px) {
  .p-company-overview__item:last-child .p-company-overview__term {
    display: block;
  }
}
.p-company-overview__desc {
  color: var(--color-black-main);
  font-family: var(--font-family-primary);
  font-size: var(--font-size-m);
  font-weight: 500;
  line-height: 1.5;
  margin: 0;
}
@media print, screen and (min-width:768px) {
  .p-company-overview__desc {
    flex: 1;
    min-width: 0;
  }
}
.p-company-overview__item:last-child .p-company-overview__desc {
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
}
@media print, screen and (min-width:768px) {
  .p-company-overview__item:last-child .p-company-overview__desc {
    gap: 0.6rem;
  }
}
.p-company-overview__access-heading {
  color: var(--color-black-main);
  font-family: var(--font-family-primary);
  font-size: var(--font-size-m);
  font-weight: 800;
  line-height: 1.5;
  margin: 0;
}
.p-company-overview__access-list {
  display: grid;
  gap: 0;
  grid-template-columns: 1fr;
  margin: 0;
}
@media print, screen and (min-width:768px) {
  .p-company-overview__access-list {
    gap: 0 3.2rem;
    grid-auto-flow: column;
    grid-template-columns: auto auto;
    grid-template-rows: repeat(3, auto);
    justify-content: start;
  }
}
@media print, screen and (min-width:768px) {
  html[lang=en] .p-company-overview__access-list, html[lang=ko] .p-company-overview__access-list {
    gap: 0;
    grid-auto-flow: row;
    grid-template-columns: 1fr;
  }
}
.p-company-overview__access-item {
  color: var(--color-black-main);
  font-family: var(--font-family-primary);
  font-size: var(--font-size-m);
  font-weight: 500;
  line-height: 1.5;
}
.p-company-overview__map-link {
  align-items: center;
  color: var(--color-blue-main);
  display: flex;
  font-family: var(--font-family-primary);
  font-size: var(--font-size-m);
  font-weight: 800;
  gap: 0.8rem;
  line-height: 1.5;
  width: -moz-fit-content;
  width: fit-content;
}
@media print, screen and (min-width:768px) {
  .p-company-overview__map-link {
    margin-top: 1.2rem;
  }
}
@media (hover: hover) {
  .p-company-overview__map-link {
    transition: color 0.2s ease;
  }
  .p-company-overview__map-link:hover {
    color: var(--color-blue-hover);
  }
}
.p-company-overview__map-link-icon {
  align-items: center;
  border: 1px solid currentcolor;
  border-radius: 50%;
  display: flex;
  flex-shrink: 0;
  height: 2.2rem;
  justify-content: center;
  overflow: hidden;
  width: 2.2rem;
}
.p-company-overview__map-link-icon-arrow {
  display: block;
  height: 1.1rem;
  transform: rotate(-45deg);
  width: 1.1rem;
}

.p-company-subsidiary {
  padding: 9.6rem 2.4rem;
}
@media print, screen and (min-width:768px) {
  .p-company-subsidiary {
    padding: 12.8rem 4rem;
  }
}
html[lang=en] .p-company-subsidiary, html[lang=ko] .p-company-subsidiary {
  padding: 9.6rem 2.4rem;
}
@media print, screen and (min-width:768px) {
  html[lang=en] .p-company-subsidiary, html[lang=ko] .p-company-subsidiary {
    padding: 9.6rem 4rem 12.8rem;
  }
}
html[lang=ko] .p-company-subsidiary {
  padding: 9.6rem 2.4rem 0;
}
@media print, screen and (min-width:768px) {
  html[lang=ko] .p-company-subsidiary {
    padding: 9.6rem 4rem 0;
  }
}
.p-company-subsidiary__inner {
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
  margin-inline: auto;
  max-width: 112rem;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .p-company-subsidiary__inner {
    gap: 4.6rem;
  }
}
.p-company-subsidiary__inner + .p-company-subsidiary__inner {
  margin-top: 3.2rem;
}
@media print, screen and (min-width:768px) {
  .p-company-subsidiary__inner + .p-company-subsidiary__inner {
    margin-top: 9.6rem;
  }
}
.p-company-subsidiary__list {
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .p-company-subsidiary__list {
    gap: 4.6rem;
  }
}
.p-company-subsidiary__summary {
  align-items: center;
  border-bottom: 1px solid color-mix(in srgb, var(--color-blue-main) 25%, transparent);
  color: var(--color-black-main);
  display: flex;
  justify-content: space-between;
  list-style: none;
  padding-bottom: 1.6rem;
  width: 100%;
}
.p-company-subsidiary__summary::-webkit-details-marker {
  display: none;
}
@media (hover: hover) {
  .p-company-subsidiary__summary {
    transition: color 0.2s ease;
  }
  .p-company-subsidiary__summary:hover {
    color: var(--color-blue-main);
  }
}
.p-company-subsidiary__name {
  color: inherit;
  flex: 1;
  font-family: var(--font-family-primary);
  font-size: var(--font-size-l);
  font-weight: 800;
  line-height: 1.5;
  min-width: 0;
  padding-right: 1.6rem;
}
@media print, screen and (min-width:768px) {
  .p-company-subsidiary__name {
    font-size: 2.1rem;
  }
}
.p-company-subsidiary__icon {
  border: 1px solid var(--color-blue-main);
  border-radius: 50%;
  display: block;
  flex-shrink: 0;
  height: 2.6rem;
  position: relative;
  width: 2.6rem;
}
.p-company-subsidiary__icon::before, .p-company-subsidiary__icon::after {
  background-color: var(--color-blue-main);
  content: "";
  left: 50%;
  position: absolute;
  top: 50%;
  translate: -50% -50%;
}
.p-company-subsidiary__icon::before {
  height: 1px;
  width: 1.2rem;
}
.p-company-subsidiary__icon::after {
  height: 1.2rem;
  rotate: 0deg;
  width: 1px;
}
@media (prefers-reduced-motion: no-preference) {
  .p-company-subsidiary__icon::after {
    transition: rotate 0.3s ease;
  }
}
.p-company-subsidiary__item[open]:not(.p-company-subsidiary__item--closing) .p-company-subsidiary__icon::after {
  rotate: 90deg;
}
.p-company-subsidiary__panel {
  display: grid;
  grid-template-rows: 0fr;
}
@media (prefers-reduced-motion: no-preference) {
  .p-company-subsidiary__panel {
    transition: grid-template-rows 0.4s ease;
  }
}
.p-company-subsidiary__item[open]:not(.p-company-subsidiary__item--closing) .p-company-subsidiary__panel {
  grid-template-rows: 1fr;
}
.p-company-subsidiary__content {
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
  min-height: 0;
  overflow: hidden;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .p-company-subsidiary__content {
    align-items: flex-start;
    flex-direction: row;
    gap: 3.2rem;
    justify-content: space-between;
  }
}
.p-company-subsidiary__info {
  margin: 0;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .p-company-subsidiary__info {
    display: flex;
    flex: 1;
    flex-direction: column;
    gap: 1.6rem;
    min-width: 0;
    padding-top: 3.2rem;
  }
}
.p-company-subsidiary__info-item {
  display: grid;
  gap: 0.8rem;
  grid-template-columns: 0.4rem minmax(0, 1fr);
  padding-top: 2.4rem;
}
.p-company-subsidiary__info-item::before {
  align-self: center;
  background-color: var(--color-blue-main);
  border-radius: 50%;
  content: "";
  grid-column: 1;
  grid-row: 1;
  height: 0.4rem;
  width: 0.4rem;
}
@media print, screen and (min-width:768px) {
  .p-company-subsidiary__info-item {
    align-items: center;
    gap: 1.6rem;
    grid-template-columns: 0.4rem 13rem minmax(0, 1fr);
    padding-top: 0;
  }
}
@media print, screen and (min-width:768px) {
  html[lang=en] .p-company-subsidiary__info-item::before {
    align-self: start;
    margin-top: 0.7em;
  }
}
@media print, screen and (min-width:768px) {
  html[lang=en] .p-company-subsidiary__info-item {
    align-items: flex-start;
    grid-template-columns: 0.4rem 22rem minmax(0, 1fr);
  }
}
.p-company-subsidiary__term {
  color: var(--color-black-main);
  font-family: var(--font-family-primary);
  font-size: var(--font-size-m);
  font-weight: 800;
  grid-column: 2;
  grid-row: 1;
  line-height: 1.5;
  margin: 0;
  min-height: 2.4rem;
}
@media print, screen and (min-width:768px) {
  .p-company-subsidiary__term {
    letter-spacing: 0.06em;
    line-height: 1.75;
    min-height: 0;
  }
}
.p-company-subsidiary__desc {
  color: var(--color-black-main);
  font-family: var(--font-family-primary);
  font-size: var(--font-size-m);
  font-weight: 500;
  grid-column: 2;
  grid-row: 2;
  line-height: 1.5;
  margin: 0;
}
@media print, screen and (min-width:768px) {
  .p-company-subsidiary__desc {
    grid-column: 3;
    grid-row: 1;
  }
}
.p-company-subsidiary__link {
  color: inherit;
}
@media (hover: hover) {
  .p-company-subsidiary__link {
    transition: color 0.2s ease;
  }
  .p-company-subsidiary__link:hover {
    color: var(--color-blue-main);
  }
}
.p-company-subsidiary__logo {
  align-items: center;
  background-color: var(--color-white-main);
  border-radius: 1.6rem;
  display: flex;
  height: 12rem;
  justify-content: center;
  overflow: hidden;
  width: 100%;
}
.p-company-subsidiary__logo img {
  height: 12rem;
  max-inline-size: none;
  -o-object-fit: contain;
  object-fit: contain;
  width: 16rem;
}
@media print, screen and (min-width:768px) {
  .p-company-subsidiary__logo {
    border-radius: 0;
    flex-shrink: 0;
    height: 10.9rem;
    margin-top: 3.2rem;
    width: 20rem;
  }
  .p-company-subsidiary__logo img {
    height: 100%;
    width: 100%;
  }
}

.p-company-history {
  background-color: var(--color-blue-bg);
  border-bottom: 0.4rem solid var(--color-blue-main);
  border-top: 0.4rem solid var(--color-blue-main);
  overflow: clip;
  padding: 9.6rem 2.4rem;
}
@media print, screen and (min-width:768px) {
  .p-company-history {
    padding: 12.8rem 4rem;
  }
}
.p-company-history__inner {
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
  margin-inline: auto;
  max-width: 112rem;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .p-company-history__inner {
    gap: 5.2rem;
  }
}
.p-company-history__timeline {
  margin-left: calc(50% - 50vw);
  overflow-x: auto;
  padding-inline: calc(50vw - 50%);
  scrollbar-width: thin;
  width: 100vw;
}
@media print, screen and (min-width:768px) {
  .p-company-history__timeline {
    padding-bottom: 2rem;
    scrollbar-color: var(--color-tag-3-2) transparent;
  }
}
.p-company-history__timeline::-webkit-scrollbar {
  height: 0.8rem;
}
.p-company-history__timeline::-webkit-scrollbar-track {
  background-color: transparent;
}
.p-company-history__timeline::-webkit-scrollbar-thumb {
  border-radius: 99.9rem;
}
@media print, screen and (min-width:768px) {
  .p-company-history__timeline::-webkit-scrollbar-thumb {
    background-color: var(--color-tag-3-2);
  }
}
.p-company-history__list {
  display: flex;
  gap: 3.4rem;
  margin: 0;
  padding: 0;
  width: -moz-max-content;
  width: max-content;
}
@media print, screen and (min-width:768px) {
  .p-company-history__list {
    gap: 9rem;
  }
}
.p-company-history__item {
  align-items: center;
  display: flex;
  flex-direction: column;
  flex-shrink: 0;
  gap: 4.2rem;
  overflow: visible;
  position: relative;
  width: 27.4rem;
}
.p-company-history__item:focus-visible {
  border-radius: 0.2rem;
  outline: 0.2rem solid var(--color-blue-main);
  outline-offset: 0.4rem;
  transition: outline 0.2s ease;
}
.p-company-history__item::after {
  background-color: var(--color-blue-main);
  content: "";
  height: 0.2rem;
  left: 58%;
  pointer-events: none;
  position: absolute;
  top: 1.1rem;
  width: calc(100% - 1rem);
}
@media print, screen and (min-width:768px) {
  .p-company-history__item::after {
    left: 56.5%;
    width: calc(100% + 5rem);
  }
}
.p-company-history__item:first-child::before {
  border-top: 0.2rem dotted var(--color-blue-main);
  content: "";
  left: 0;
  pointer-events: none;
  position: absolute;
  top: 1.1rem;
  width: calc(50% - 2.2rem);
}
.p-company-history__item:last-child::after {
  background-color: transparent;
  border-top: 0.2rem dotted var(--color-blue-main);
  height: 0;
  left: auto;
  right: 0;
  width: calc(50% - 2.2rem);
}
@media print, screen and (min-width:768px) {
  .p-company-history__item {
    width: 32.3rem;
  }
  .p-company-history__item::after {
    width: calc(100% + 5rem);
  }
}
.p-company-history__marker {
  background-color: var(--color-blue-bg);
  border: 0.4rem solid var(--color-blue-main);
  border-radius: 50%;
  display: block;
  flex-shrink: 0;
  height: 2.4rem;
  position: relative;
  width: 2.4rem;
  z-index: 1;
}
.p-company-history__card {
  align-items: center;
  background-color: var(--color-white-main);
  border-radius: 2.4rem;
  display: flex;
  flex-direction: column;
  gap: 0.2rem;
  min-height: 34.6rem;
  padding: 2.4rem 3.2rem;
  width: 100%;
}
.p-company-history__year {
  color: var(--color-blue-main);
  font-family: var(--font-family-en);
  font-size: 4.5rem;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.75;
  margin: 0;
  text-align: center;
  width: 100%;
}
.p-company-history__text {
  color: var(--color-black-main);
  font-family: var(--font-family-primary);
  font-size: var(--font-size-small-m);
  font-weight: 500;
  line-height: 2;
  margin: 0;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .p-company-history__text {
    font-size: var(--font-size-m);
  }
}

.p-company-download {
  padding: 9.6rem 2.4rem 0;
}
@media print, screen and (min-width:768px) {
  .p-company-download {
    padding: 12.8rem 4rem 0;
  }
}
.p-company-download__inner {
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
  margin-inline: auto;
  max-width: 112rem;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .p-company-download__inner {
    gap: 4.6rem;
  }
}
.p-company-download__note {
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
}
.p-company-download__note-title {
  color: var(--color-black-main);
  font-family: var(--font-family-primary);
  font-size: 2.1rem;
  font-weight: 800;
  line-height: 1.3;
  margin: 0;
}
.p-company-download__note-text {
  color: var(--color-black-main);
  font-family: var(--font-family-primary);
  font-size: var(--font-size-m);
  font-weight: 500;
  line-height: 2;
  margin: 0;
}

.p-company-cta {
  padding: 9.6rem 2.4rem;
}
@media print, screen and (min-width:768px) {
  .p-company-cta {
    padding: 12.8rem 4rem;
  }
}
.p-company-cta__inner {
  margin-inline: auto;
  max-width: 112rem;
  width: 100%;
}

.p-brand {
  overflow-x: hidden;
}

.p-brand-about {
  background-color: #fdecea;
  background-image: url("/assets/images/service/brand_bg1_sp.webp");
  background-position: center top;
  background-repeat: no-repeat;
  background-size: cover;
  border-top: 0.4rem solid var(--color-blue-main);
  padding: 6.4rem 2.4rem 9.6rem;
}
@media print, screen and (min-width:768px) {
  .p-brand-about {
    background-image: url("/assets/images/service/brand_bg1_pc.webp");
    padding: 12.8rem 4rem;
  }
}
.p-brand-about__inner {
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
  margin-inline: auto;
  max-width: 112rem;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .p-brand-about__inner {
    display: grid;
    gap: 6.4rem 8rem;
    grid-template-columns: minmax(0, 56rem) minmax(0, 48rem);
    justify-content: space-between;
  }
}
@media print, screen and (min-width:768px) {
  .p-brand-about__body {
    max-width: 56rem;
  }
}
.p-brand-about__title {
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
  margin: 0;
}
@media print, screen and (min-width:768px) {
  .p-brand-about__title {
    gap: 0.8rem;
  }
}
.p-brand-about__title-line > span {
  background-color: var(--color-blue-main);
  color: var(--color-white-main);
  display: block;
  font-family: var(--font-family-primary);
  font-size: 3.4rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  line-height: 1;
  padding: 0.1em 0.4rem 0.2em;
  width: -moz-fit-content;
  width: fit-content;
}
@media print, screen and (min-width:768px) {
  .p-brand-about__title-line > span {
    font-size: 4.2rem;
    padding: 0.1em 0.8rem 0.2em;
  }
}
.p-brand-about__title-line > span::-moz-selection {
  background-color: var(--color-white-main);
  color: var(--color-blue-main);
}
.p-brand-about__title-line > span::selection {
  background-color: var(--color-white-main);
  color: var(--color-blue-main);
}
.p-brand-about__text {
  display: flex;
  flex-direction: column;
  gap: 3rem;
  margin-top: 3.2rem;
}
@media print, screen and (min-width:768px) {
  .p-brand-about__text {
    margin-top: 4.8rem;
  }
}
.p-brand-about__text p {
  color: var(--color-black-main);
  font-family: var(--font-family-primary);
  font-size: var(--font-size-m);
  font-weight: 500;
  line-height: 2;
  margin: 0;
}
.p-brand-about__media {
  order: -1;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .p-brand-about__media {
    max-width: 48rem;
    order: 0;
  }
}
.p-brand-about__media img {
  display: block;
  height: auto;
  width: 100%;
}
.p-brand-about .p-brand-cta1 {
  margin-top: 1.6rem;
}
@media print, screen and (min-width:768px) {
  .p-brand-about .p-brand-cta1 {
    grid-column: 1/-1;
    margin-top: 0;
  }
}

.p-brand-creator {
  background-color: var(--color-blue-bg);
  border-top: 0.4rem solid var(--color-blue-main);
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
  padding: 9.6rem 2.4rem;
}
@media print, screen and (min-width:768px) {
  .p-brand-creator {
    gap: 4.8rem;
    padding: 12.8rem 4rem;
  }
}
.p-brand-creator__inner {
  margin-inline: auto;
  max-width: 112rem;
  width: 100%;
}
.p-brand-creator__head {
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
}
.p-brand-creator__lead {
  color: var(--color-black-main);
  font-size: var(--font-size-m);
  font-weight: 500;
  letter-spacing: 0;
  line-height: 2;
  margin: 0;
}
.p-brand-creator .c-card-slide-3__head {
  display: none;
}

.p-brand-cta1 {
  background-color: var(--color-white-main);
  border-radius: 1.6rem;
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
  padding: 2.4rem;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .p-brand-cta1 {
    align-items: center;
    flex-direction: row;
    gap: 4.6rem;
    justify-content: space-between;
    padding: 3.2rem 4.6rem;
  }
}
.p-brand-cta1__content {
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
}
@media print, screen and (min-width:768px) {
  .p-brand-cta1__content {
    gap: 1.6rem;
    max-width: 59rem;
  }
}
.p-brand-cta1__title {
  color: var(--color-black-main);
  font-family: var(--font-family-primary);
  font-size: 1.8rem;
  font-weight: 800;
  letter-spacing: 0.14em;
  line-height: 1.5;
  margin: 0;
}
@media print, screen and (min-width:768px) {
  .p-brand-cta1__title {
    font-size: 2rem;
    letter-spacing: 0.08em;
  }
}
.p-brand-cta1__text {
  color: var(--color-black-main);
  font-family: var(--font-family-primary);
  font-size: var(--font-size-m);
  font-weight: 500;
  line-height: 2;
  margin: 0;
}
.p-brand-cta1__actions {
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .p-brand-cta1__actions {
    flex-shrink: 0;
    gap: 2.4rem;
    width: 39.1rem;
  }
}
.p-brand-cta1__actions .c-button1 {
  margin-inline: 0;
  max-width: none;
  width: 100%;
}
.p-brand-cta1__stores {
  display: flex;
  gap: 0.8rem;
  margin: 0;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .p-brand-cta1__stores {
    gap: 1.6rem;
  }
}
.p-brand-cta1__store {
  list-style: none;
  width: 13.5rem;
}
@media print, screen and (min-width:768px) {
  .p-brand-cta1__store {
    width: 18.7rem;
  }
}
.p-brand-cta1__store a {
  display: block;
}
@media (hover: hover) {
  .p-brand-cta1__store a {
    transition: opacity 0.2s ease;
  }
  .p-brand-cta1__store a:hover {
    opacity: 0.7;
  }
}
.p-brand-cta1__store img {
  display: block;
  height: auto;
  width: 100%;
}

.p-brand-feature {
  border-top: 0.4rem solid var(--color-blue-main);
  padding: 9.6rem 2.4rem;
}
@media print, screen and (min-width:768px) {
  .p-brand-feature {
    padding: 12.8rem 4rem;
  }
}
.p-brand-feature__inner {
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
  margin-inline: auto;
  max-width: 112rem;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .p-brand-feature__inner {
    gap: 4.8rem;
  }
}
.p-brand-feature__head {
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
}
.p-brand-feature__lead {
  color: var(--color-black-main);
  font-family: var(--font-family-primary);
  font-size: 1.8rem;
  font-weight: 800;
  letter-spacing: 0.14em;
  line-height: 1.5;
  margin: 0;
}
@media print, screen and (min-width:768px) {
  .p-brand-feature__lead {
    font-size: 2rem;
    letter-spacing: 0.08em;
  }
}
.p-brand-feature__list {
  display: flex;
  flex-direction: column;
  gap: 4.8rem;
  list-style: none;
  margin: 0;
  padding: 0;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .p-brand-feature__list {
    display: grid;
    gap: 4.8rem;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
.p-brand-feature__item {
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
  list-style: none;
}
@media print, screen and (min-width:768px) {
  .p-brand-feature__item {
    gap: 3.2rem;
  }
}
.p-brand-feature__media {
  width: 100%;
}
.p-brand-feature__media img {
  display: block;
  height: auto;
  width: 100%;
}
.p-brand-feature__label {
  color: var(--color-pink-main);
  font-family: var(--font-family-en);
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.5;
  margin: 0;
}
@media print, screen and (min-width:768px) {
  .p-brand-feature__label {
    font-size: 1.6rem;
  }
}
.p-brand-feature__title {
  color: var(--color-black-main);
  font-family: var(--font-family-primary);
  font-size: 1.8rem;
  font-weight: 800;
  letter-spacing: 0.14em;
  line-height: 1.5;
  margin: -1.6rem 0 0;
}
@media print, screen and (min-width:768px) {
  .p-brand-feature__title {
    font-size: 2rem;
    letter-spacing: 0.08em;
    margin-top: -2.4rem;
  }
}
.p-brand-feature__text p {
  color: var(--color-black-main);
  font-family: var(--font-family-primary);
  font-size: var(--font-size-m);
  font-weight: 500;
  line-height: 2;
  margin: 0;
}

.p-brand-label {
  border-top: 0.4rem solid var(--color-blue-main);
  padding: 9.6rem 2.4rem;
}
@media print, screen and (min-width:768px) {
  .p-brand-label {
    padding: 12.8rem 4rem;
  }
}
.p-brand-label__inner {
  display: flex;
  flex-direction: column;
  gap: 0;
  margin-inline: auto;
  max-width: 112rem;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .p-brand-label__inner {
    gap: 4.6rem;
  }
}
.p-brand-label__cards {
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
  margin-top: 9.6rem;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .p-brand-label__cards {
    gap: 4.8rem;
    margin-top: 5rem;
  }
}
.p-brand-label__card {
  background-color: #e2f0ff;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  border-radius: 1.6rem;
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
  overflow: hidden;
  padding: 6.4rem 3.2rem;
  position: relative;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .p-brand-label__card {
    padding: 6.4rem 8rem;
  }
}
.p-brand-label__card--artist {
  background-image: url("/assets/images/service/amucomi/label_manga_artist_bg_sp.webp");
}
@media print, screen and (min-width:768px) {
  .p-brand-label__card--artist {
    background-image: url("/assets/images/service/amucomi/label_manga_artist_bg_pc.webp");
    display: grid;
    gap: 4.8rem 8rem;
    grid-template-areas: "title title" "body media";
    grid-template-columns: 1fr 34.4rem;
  }
  .p-brand-label__card--artist .p-brand-label__card-title {
    grid-area: title;
  }
  .p-brand-label__card--artist .p-brand-label__card-media {
    grid-area: media;
    height: 22.9rem;
    width: 34.4rem;
  }
  .p-brand-label__card--artist .p-brand-label__card-body {
    gap: 4.8rem;
    grid-area: body;
  }
}
.p-brand-label__card--partner {
  background-image: url("/assets/images/service/amucomi/label_partner_bg_sp.webp");
}
@media print, screen and (min-width:768px) {
  .p-brand-label__card--partner {
    background-image: url("/assets/images/service/amucomi/label_partner_bg_pc.webp");
    gap: 3.2rem;
  }
  .p-brand-label__card--partner .p-brand-label__card-title {
    margin-bottom: 1.6rem;
  }
  .p-brand-label__card--partner .p-brand-label__card-media {
    height: 100%;
  }
  .p-brand-label__card--partner .p-brand-label__card-body {
    align-items: flex-end;
    flex-direction: row;
    gap: 8rem;
  }
}
.p-brand-label__card .c-button1 {
  margin-inline: 0;
  max-width: none;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .p-brand-label__card .c-button1 {
    flex-shrink: 0;
    width: 30rem;
  }
}
.p-brand-label__card-title {
  color: var(--color-black-main);
  font-family: var(--font-family-primary);
  font-size: 2.2rem;
  font-weight: 800;
  line-height: 1.5;
  position: relative;
  z-index: 1;
}
@media print, screen and (min-width:768px) {
  .p-brand-label__card-title {
    font-size: 2.4rem;
    letter-spacing: 0.14em;
  }
}
.p-brand-label__card-media {
  overflow: hidden;
  position: relative;
  width: 100%;
  z-index: 1;
}
.p-brand-label__card-media picture,
.p-brand-label__card-media img {
  display: block;
  height: auto;
  -o-object-fit: contain;
  object-fit: contain;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .p-brand-label__card-media picture,
  .p-brand-label__card-media img {
    height: 100%;
  }
}
.p-brand-label__card-body {
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
  position: relative;
  width: 100%;
  z-index: 1;
}
.p-brand-label__card-text {
  color: var(--color-black-main);
  display: flex;
  flex-direction: column;
  font-family: var(--font-family-primary);
  font-size: var(--font-size-m);
  font-weight: 500;
  gap: 1.6rem;
  line-height: 2;
  width: 100%;
}
.p-brand-label__card-note {
  font-size: var(--font-size-s);
  line-height: 1.75;
}

.p-service-news {
  border-top: 0.4rem solid var(--color-blue-main);
  overflow: hidden;
  padding: 9.6rem 2.4rem;
}
@media print, screen and (min-width:768px) {
  .p-service-news {
    padding: 12.8rem 4rem;
  }
}
.p-brand .p-service-news {
  background-color: var(--color-blue-bg);
}
.p-service-news__inner {
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
  margin-inline: auto;
  max-width: 112rem;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .p-service-news__inner {
    gap: 4.8rem;
  }
}
.p-service-news__head {
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
}
.p-service-news__lead {
  color: var(--color-black-main);
  font-size: var(--font-size-m);
  font-weight: 500;
  letter-spacing: 0;
  line-height: 2;
  margin: 0;
}
.p-service-news .c-card-slide-5__head {
  display: none;
}
.p-service-news .p-brand-cta1 {
  margin-top: 0.8rem;
}
@media print, screen and (min-width:768px) {
  .p-service-news .p-brand-cta1 {
    margin-top: 4.8rem;
  }
}

.p-brand-overview {
  border-top: 0.4rem solid var(--color-blue-main);
  padding: 9.6rem 2.4rem;
}
@media print, screen and (min-width:768px) {
  .p-brand-overview {
    padding: 12.8rem 4rem;
  }
}
.p-brand-overview__inner {
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
  margin-inline: auto;
  max-width: 112rem;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .p-brand-overview__inner {
    gap: 4.6rem;
  }
}
.p-brand-overview__actions {
  background-color: var(--color-blue-bg);
  border: 1px solid #bfd9f4;
  border-radius: 1.6rem;
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
  padding: 3.2rem 2.4rem;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .p-brand-overview__actions {
    flex-direction: row;
    gap: 6.3rem;
    justify-content: space-between;
    padding: 3.2rem 4.6rem;
  }
}
.p-brand-overview__actions .c-button1 {
  display: flex;
  margin-inline: 0;
  max-width: none;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .p-brand-overview__actions .c-button1 {
    width: 30rem;
  }
}
.p-brand-overview__actions .c-button1 .c-button1__link {
  flex: 1;
}

.p-service-services {
  background-color: var(--color-blue-bg);
  background-image: url("/assets/images/service/services_bg_sp.webp");
  background-position: center top;
  background-repeat: no-repeat;
  background-size: cover;
  border-top: 0.4rem solid var(--color-blue-main);
  padding: 9.6rem 2.4rem;
}
@media print, screen and (min-width:768px) {
  .p-service-services {
    background-image: url("/assets/images/service/services_bg_pc.webp");
    padding: 12.8rem 4rem;
  }
}
.p-service-services__inner {
  display: flex;
  flex-direction: column;
  gap: 6.4rem;
  margin-inline: auto;
  max-width: 126rem;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .p-service-services__inner {
    gap: 9.6rem;
  }
}
.p-service-services__item {
  display: grid;
  gap: 3.2rem;
}
@media print, screen and (min-width:768px) {
  .p-service-services__item {
    gap: 8rem;
    grid-template-columns: 1fr 1fr;
  }
}
@media print, screen and (min-width:768px) {
  .p-service-services__item--reverse .p-service-services__media {
    order: 1;
  }
}
@media print, screen and (min-width:768px) {
  .p-service-services__item:first-of-type .p-service-services__body {
    margin-top: 1.357rem;
  }
}
@media print, screen and (min-width:768px) {
  .p-service-services__item:nth-of-type(2) .p-service-services__body {
    margin-top: -0.643rem;
  }
}
@media print, screen and (min-width:768px) {
  .p-service-services__item:last-of-type .p-service-services__body {
    margin-top: 0.857rem;
  }
}
.p-service-services__media {
  background-color: var(--color-white-main);
  border: 0.4rem solid var(--color-blue-main);
  box-shadow: 0.6rem 0.6rem 0 var(--color-blue-main);
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .p-service-services__media {
    box-shadow: 0.8rem 0.8rem 0 var(--color-blue-main);
    min-width: 0;
  }
}
.p-service-services__media img {
  display: block;
  height: auto;
  width: 100%;
}
.p-service-services__body {
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .p-service-services__body {
    gap: 3.2rem;
    min-width: 0;
  }
}
.p-service-services__title {
  margin: 0;
}
.p-service-services__title img {
  display: block;
  height: auto;
  margin-inline: auto;
  max-height: 10.4rem;
  max-width: 100%;
  width: auto;
}
@media print, screen and (min-width:768px) {
  .p-service-services__title img {
    margin-inline: 0;
  }
}
.p-service-services__title-text {
  color: var(--color-blue-main);
  font-size: 2.4rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  line-height: 1.5;
  margin-top: 3.2rem;
}
.p-service-services__text {
  color: var(--color-black-main);
  font-size: var(--font-size-m);
  font-weight: 500;
  letter-spacing: 0;
  line-height: 2;
}
.p-service-services__text p {
  margin: 0;
}
html[lang=en] .p-service-services__text p {
  letter-spacing: 0.06em;
}
html[lang=en] .p-service-services__text p:not(:first-child) {
  margin-top: 1em;
}
.p-service-services .c-button1 {
  margin-inline: 0;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .p-service-services .c-button1 {
    width: 30rem;
  }
}
@media print, screen and (min-width:768px) {
  .p-service-services__cta-inner {
    margin-inline: auto;
    max-width: 112rem;
    width: 100%;
  }
}

.p-recruit-gallery {
  overflow: hidden;
  padding-top: 8rem;
}
@media print, screen and (min-width:768px) {
  .p-recruit-gallery {
    padding-inline: 12.8rem;
  }
}
@media print, screen and (max-width:767px) {
  .p-recruit-gallery.c-section {
    padding-top: 0;
  }
}
.p-recruit-gallery .c-card-slide-3,
.p-recruit-gallery .c-card-slide-5 {
  margin-inline: auto;
  max-width: 112rem;
  position: relative;
  z-index: 1;
}

.p-recruit-jobs {
  border-bottom: 0.4rem solid var(--color-blue-main);
  border-top: 0.4rem solid var(--color-blue-main);
  overflow: hidden;
}
.p-recruit-jobs__inner {
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
  margin-inline: auto;
  max-width: 112rem;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .p-recruit-jobs__inner {
    gap: 9.6rem;
  }
}
.p-recruit-jobs__cta {
  align-items: center;
  background-color: var(--color-white-main);
  border: 0.3rem solid var(--color-blue-main);
  border-radius: 1.6rem;
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
  padding: 2.4rem;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .p-recruit-jobs__cta {
    gap: 4rem;
    padding: 3.2rem 4.6rem;
  }
}
.p-recruit-jobs__cta .c-button1 {
  margin-inline: auto;
  max-width: none;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .p-recruit-jobs__cta .c-button1 {
    width: 30rem;
  }
}
.p-recruit-jobs__cta-content {
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
  text-align: center;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .p-recruit-jobs__cta-content {
    gap: 1.6rem;
  }
}
.p-recruit-jobs__cta-title {
  color: var(--color-blue-main);
  font-family: var(--font-family-primary);
  font-size: 2.6rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  line-height: 1.5;
  margin: 0;
}
@media print, screen and (min-width:768px) {
  .p-recruit-jobs__cta-title {
    font-size: 3.4rem;
    letter-spacing: 0.12em;
  }
}
.p-recruit-jobs__cta-text {
  color: var(--color-black-main);
  font-family: var(--font-family-primary);
  font-size: var(--font-size-m);
  font-weight: 500;
  letter-spacing: 0;
  line-height: 2;
  margin: 0;
}
.p-recruit-jobs__feature {
  background-color: #e2f0ff;
  background-image: url("../images/common/block_bg_sp.webp");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  border-radius: 1.6rem;
  display: grid;
  gap: 3.2rem;
  grid-template-areas: "title" "image" "text" "button";
  overflow: hidden;
  padding: 6.4rem 3.2rem;
  position: relative;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .p-recruit-jobs__feature {
    background-image: url("../images/common/block_bg_pc.webp");
    gap: 4.8rem 8rem;
    grid-template-areas: "title title" "text image" "button image";
    grid-template-columns: minmax(0, 1fr) 34.4rem;
    padding: 6.4rem 8rem;
  }
}
.p-recruit-jobs__feature-button {
  grid-area: button;
  position: relative;
  z-index: 1;
}
.p-recruit-jobs__feature-button .c-button1 {
  margin: 0;
  max-width: none;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .p-recruit-jobs__feature-button .c-button1 {
    width: 30rem;
  }
}
.p-recruit-jobs__feature-title {
  color: var(--color-black-main);
  font-family: var(--font-family-primary);
  font-size: 2.2rem;
  font-weight: 800;
  grid-area: title;
  letter-spacing: 0;
  line-height: 1.5;
  margin: 0;
  position: relative;
  z-index: 1;
}
@media print, screen and (min-width:768px) {
  .p-recruit-jobs__feature-title {
    font-size: 2.4rem;
    letter-spacing: 0.14em;
  }
}
.p-recruit-jobs__feature-text {
  color: var(--color-black-main);
  font-family: var(--font-family-primary);
  font-size: var(--font-size-m);
  font-weight: 500;
  grid-area: text;
  letter-spacing: 0;
  line-height: 2;
  margin: 0;
  position: relative;
  z-index: 1;
}
.p-recruit-jobs__feature-image {
  aspect-ratio: 344/258;
  grid-area: image;
  overflow: hidden;
  position: relative;
  width: 100%;
  z-index: 1;
}
.p-recruit-jobs__feature-image img {
  display: block;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  width: 100%;
}

.p-recruit-info__inner {
  display: flex;
  flex-direction: column;
  gap: 7.2rem;
  margin-inline: auto;
  max-width: 112rem;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .p-recruit-info__inner {
    gap: 9.6rem;
  }
}
.p-recruit-info__group {
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
  scroll-margin-top: 3.2rem;
}
@media print, screen and (min-width:768px) {
  .p-recruit-info__group {
    gap: 4.6rem;
    scroll-margin-top: 0;
  }
}
.p-recruit-info__heading {
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
}
@media print, screen and (min-width:768px) {
  .p-recruit-info__heading {
    align-items: center;
    flex-direction: row;
  }
}
.p-recruit-info__note {
  color: var(--color-black-main);
  font-family: var(--font-family-primary);
  font-size: var(--font-size-m);
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.5;
  margin: 0;
}
.p-recruit-info__list {
  margin: 0;
  width: 100%;
}
.p-recruit-info__item {
  border-top: 1px solid var(--color-blue-main);
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
  padding: 2.4rem 0;
}
.p-recruit-info__item:first-child {
  border-top: none;
}
.p-recruit-info__item:last-child {
  border-bottom: 1px solid var(--color-blue-main);
}
@media print, screen and (min-width:768px) {
  .p-recruit-info__item {
    flex-direction: row;
    gap: 3.2rem;
    padding: 2.4rem 1.6rem;
  }
}
.p-recruit-info__item--head {
  display: none;
}
@media print, screen and (min-width:768px) {
  .p-recruit-info__item--head {
    display: flex;
  }
}
.p-recruit-info__term {
  color: var(--color-black-main);
  font-family: var(--font-family-primary);
  font-size: var(--font-size-m);
  font-weight: 800;
  letter-spacing: 0.06em;
  line-height: 1.75;
  margin: 0;
}
@media print, screen and (min-width:768px) {
  .p-recruit-info__term {
    flex-shrink: 0;
    width: 25.6rem;
  }
}
.p-recruit-info__desc {
  color: var(--color-black-main);
  font-family: var(--font-family-primary);
  font-size: var(--font-size-m);
  font-weight: 500;
  line-height: 1.5;
  margin: 0;
}
@media print, screen and (min-width:768px) {
  .p-recruit-info__desc {
    flex: 1;
    min-width: 0;
  }
}
.p-recruit-info__desc p {
  margin: 0;
}
.p-recruit-info__desc p + p {
  margin-top: 2.4rem;
}
.p-recruit-info__periods {
  align-items: start;
  -moz-column-gap: 2.4rem;
  column-gap: 2.4rem;
  display: grid;
  grid-template-columns: max-content minmax(0, 1fr);
}
.p-recruit-info__period-date {
  min-width: 0;
}
.p-recruit-info__bullets {
  list-style: none;
  margin: 0;
  padding: 0;
}
.p-recruit-info__bullets li {
  padding-left: 1em;
  position: relative;
}
.p-recruit-info__bullets li::before {
  content: "・";
  left: 0;
  position: absolute;
}

.p-recruit-faq {
  border-bottom: 0.4rem solid var(--color-blue-main);
  border-top: 0.4rem solid var(--color-blue-main);
}

.p-contact .c-page-title {
  padding-bottom: 9.6rem;
}
@media print, screen and (min-width:768px) {
  .p-contact .c-page-title {
    padding-bottom: 12.8rem;
  }
}

.p-contact-faq {
  background-color: var(--color-blue-bg);
  border-bottom: 0.4rem solid var(--color-blue-main);
  border-top: 0.4rem solid var(--color-blue-main);
  padding: 9.6rem 2.4rem;
}
@media print, screen and (min-width:768px) {
  .p-contact-faq {
    padding: 12.8rem 4rem;
  }
}

.p-contact-link {
  padding: 9.6rem 2.4rem;
}
@media print, screen and (min-width:768px) {
  .p-contact-link {
    padding: 12.8rem 4rem;
  }
}
.p-contact-link__inner {
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
  margin-inline: auto;
  max-width: 112rem;
  width: 100%;
}
.p-contact-link__lead {
  color: var(--color-black-main);
  font-size: var(--font-size-m);
  font-weight: 500;
  letter-spacing: 0;
  line-height: 2;
}
.p-contact-link__lead p {
  margin: 0;
}
.p-contact-link__list {
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
  list-style: none;
  margin: 0;
  padding: 0;
}
@media print, screen and (min-width:768px) {
  .p-contact-link__list {
    display: grid;
    gap: 4.8rem;
    grid-template-columns: 1fr 1fr;
    margin-top: 1.6rem;
  }
}
.p-contact-link__item {
  background-color: var(--color-blue-bg);
  border: 1px solid #bfd9f4;
  border-radius: 1.6rem;
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
  padding: 2.4rem;
}
@media print, screen and (min-width:768px) {
  .p-contact-link__item {
    align-items: center;
    flex-direction: row;
    gap: 4.6rem;
    padding: 3.2rem;
  }
}
.p-contact-link__logo {
  display: flex;
  justify-content: center;
  margin: 0 auto;
}
@media print, screen and (min-width:768px) {
  .p-contact-link__logo {
    flex: 1;
    min-width: 0;
  }
}
.p-contact-link__logo.-comics {
  width: 20.5rem;
}
.p-contact-link__logo.-creators {
  width: 21.7rem;
}
.p-contact-link__logo.-amucomi img {
  width: 17.1rem;
}
@media print, screen and (min-width:768px) {
  .p-contact-link__logo.-amucomi img {
    width: 16.4rem;
  }
}
.p-contact-link__logo img {
  display: block;
  height: auto;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .p-contact-link__body {
    flex: 1;
    min-width: 0;
  }
}
.p-contact-link__name {
  color: var(--color-black-main);
  font-size: var(--font-size-l);
  font-weight: 800;
  letter-spacing: 0.14em;
  line-height: 1.5;
  margin: 0;
}
@media print, screen and (min-width:768px) {
  .p-contact-link__name {
    font-size: 2rem;
    letter-spacing: 0.08em;
  }
}
.p-contact-link__actions {
  display: flex;
  flex-direction: row;
  gap: 2.4rem;
  list-style: none;
  margin: 1.6rem 0 0;
  padding: 0;
}
@media print, screen and (min-width:768px) {
  .p-contact-link__actions {
    flex-direction: column;
    gap: 1.2rem;
    margin-top: 1.6rem;
  }
}
.p-contact-link__link {
  align-items: center;
  color: var(--color-blue-main);
  display: flex;
  font-size: var(--font-size-m);
  font-weight: 800;
  gap: 0.8rem;
  line-height: 1.5;
  text-decoration: none;
}
@media (hover: hover) {
  .p-contact-link__link:hover {
    color: var(--color-blue-hover);
  }
}
@media print, screen and (min-width:768px) {
  .p-contact-link__link {
    letter-spacing: 0.06em;
  }
}
.p-contact-link__link-icon {
  height: 1.6rem;
  width: 1.6rem;
}
.p-contact-link__link-icon-arrow {
  display: block;
  height: 1.4rem;
  width: 1.2rem;
}
.p-contact-link__note {
  color: var(--color-black-main);
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 1.5;
  margin: 1.6rem 0 0;
}
@media print, screen and (min-width:768px) {
  .p-contact-link__note {
    font-size: var(--font-size-s);
    line-height: 1.75;
  }
}

.p-sitemap-list {
  padding: 0 2.4rem 9.6rem;
}
@media print, screen and (min-width:768px) {
  .p-sitemap-list {
    padding: 0 16rem 12.8rem;
  }
}
.p-sitemap-list__inner {
  margin-inline: auto;
  max-width: 112rem;
}
.p-sitemap-list__list {
  list-style: none;
  margin: 0;
  padding: 0;
}
@media print, screen and (min-width:768px) {
  .p-sitemap-list__list {
    align-items: start;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
.p-sitemap-list__item {
  padding-block: 2.4rem;
}
@media print, screen and (min-width:768px) {
  .p-sitemap-list__item {
    padding: 3rem 2.5rem;
  }
}
.p-sitemap-list__link {
  align-items: center;
  border-bottom: 1px solid #bfd9f4;
  color: var(--color-black-main);
  display: flex;
  font-size: 1.6rem;
  font-weight: 800;
  justify-content: space-between;
  letter-spacing: 0;
  line-height: 1.5;
  padding: 1rem 0 2.3rem;
  text-decoration: none;
}
@media print, screen and (min-width:768px) {
  .p-sitemap-list__link {
    font-size: var(--font-size-l);
    letter-spacing: 0.06em;
    padding-bottom: 2.8rem;
  }
}
@media (hover: hover) {
  .p-sitemap-list__link {
    transition: color 0.25s ease;
  }
  .p-sitemap-list__link:hover {
    color: var(--color-blue-hover);
  }
  .p-sitemap-list__link:hover .p-sitemap-list__link-icon {
    color: var(--color-blue-hover);
  }
}
.p-sitemap-list__link-icon {
  color: var(--color-blue-main);
  flex-shrink: 0;
  height: 2rem;
  transition: color 0.25s ease;
  width: 2rem;
}
@media (hover: hover) {
  .p-sitemap-list__link--nolink:hover {
    color: var(--color-black-main);
  }
}
.p-sitemap-list__sub {
  list-style: none;
  margin: 0;
  padding: 2.4rem 0 0;
}
.p-sitemap-list__sub-link {
  color: var(--color-blue-main);
  display: block;
  font-size: var(--font-size-m);
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.5;
  padding-block: 0.4rem;
  text-decoration: none;
}
@media (hover: hover) {
  .p-sitemap-list__sub-link {
    transition: color 0.25s ease;
  }
  .p-sitemap-list__sub-link:hover {
    color: var(--color-blue-hover);
  }
}

.p-recruit-cta {
  padding: 8rem 2.4rem;
}
@media print, screen and (min-width:768px) {
  .p-recruit-cta {
    padding: 12.8rem 4rem;
  }
}
.p-recruit-cta__inner {
  margin-inline: auto;
  max-width: 112rem;
  width: 100%;
}

.p-privacy-info {
  padding: 0 2.4rem 9.6rem;
}
@media print, screen and (min-width:768px) {
  .p-privacy-info {
    padding: 0 16rem 12.8rem;
  }
}
.p-privacy-info .-mb0 {
  margin-bottom: 0;
}
.p-privacy-info .-fwb {
  font-weight: 800;
}
.p-privacy-info__inner {
  display: flex;
  flex-direction: column;
  margin-inline: auto;
  max-width: 112rem;
  width: 100%;
}
.p-privacy-info__block {
  display: flex;
  flex-direction: column;
}
.p-privacy-info__heading {
  color: var(--color-black-main);
  font-size: 2.2rem;
  font-weight: 800;
  letter-spacing: 0;
  line-height: 2;
  margin: 1.6rem 0 0.8rem;
}
@media print, screen and (min-width:768px) {
  .p-privacy-info__heading {
    font-size: 2.4rem;
    letter-spacing: 0.14em;
    margin-bottom: 1.6rem;
    margin-top: 4rem;
  }
}
.p-privacy-info__block:first-child > .p-privacy-info__heading {
  margin-top: 0;
}
@media print, screen and (min-width:768px) {
  .p-privacy-info__block:first-child > .p-privacy-info__heading {
    margin-top: 0;
  }
}
.p-privacy-info__heading--chapter {
  font-size: var(--font-size-l);
  letter-spacing: 0.14em;
}
@media print, screen and (min-width:768px) {
  .p-privacy-info__heading--chapter {
    font-size: 2rem;
    letter-spacing: 0.08em;
  }
}
.p-privacy-info__meta {
  color: var(--color-black-main);
  font-size: var(--font-size-m);
  font-weight: 500;
  letter-spacing: 0;
  line-height: 2;
  margin: 0 0 1.6rem;
  text-align: right;
}
@media print, screen and (min-width:768px) {
  .p-privacy-info__meta {
    margin-bottom: 3.2rem;
  }
}
.p-privacy-info__body {
  color: var(--color-black-main);
  font-size: var(--font-size-m);
  font-weight: 500;
  letter-spacing: 0;
  line-height: 2;
}
.p-privacy-info__body p {
  letter-spacing: 0;
  line-height: 2;
  margin: 0 0 1.6rem;
}
@media print, screen and (min-width:768px) {
  .p-privacy-info__body p {
    margin-bottom: 2.4rem;
  }
}
.p-privacy-info__body ul,
.p-privacy-info__body ol {
  letter-spacing: 0;
  line-height: 2;
  margin: 0 0 1.6rem;
  padding-inline-start: 2.4rem;
}
@media print, screen and (min-width:768px) {
  .p-privacy-info__body ul,
  .p-privacy-info__body ol {
    margin-bottom: 3.2rem;
  }
}
.p-privacy-info__body ul {
  list-style-type: disc;
}
.p-privacy-info__body ol {
  list-style-type: decimal;
}
.p-privacy-info__body ol[type=a] {
  list-style-type: lower-alpha;
}
.p-privacy-info__body ol[type=i] {
  list-style-type: lower-roman;
}
.p-privacy-info__body ol:not([type]) > li:has(> p):not(:last-child) {
  margin-bottom: 2.4rem;
}
@media print, screen and (min-width:768px) {
  .p-privacy-info__body ol:not([type]) > li:has(> p):not(:last-child) {
    margin-bottom: 3.2rem;
  }
}
.p-privacy-info__body ol:not([type]) > li:has(> p)::marker {
  font-weight: 800;
}
.p-privacy-info__body ol:not([type]) > li:has(> p) > p:first-child {
  font-weight: 800;
  margin-bottom: 0.8rem;
}
@media print, screen and (min-width:768px) {
  .p-privacy-info__body ol:not([type]) > li:has(> p) > p:first-child {
    margin-bottom: 0;
  }
}
.p-privacy-info__body ol ol:not([type]) > li:has(> p):not(:last-child) {
  margin-bottom: 0.8rem;
}
.p-privacy-info__body ol ol:not([type]) > li:has(> p) > p:first-child {
  margin-bottom: 0.4rem;
}
.p-privacy-info__body ul > li:has(> p) > p:first-child {
  font-weight: 800;
  margin-bottom: 0;
}
.p-privacy-info__body table {
  border-bottom: 1px solid color-mix(in srgb, var(--color-blue-main) 25%, transparent);
  border-collapse: collapse;
  border-top: 1px solid color-mix(in srgb, var(--color-blue-main) 25%, transparent);
  margin-bottom: 1.6rem;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .p-privacy-info__body table {
    margin-bottom: 3.2rem;
  }
}
.p-privacy-info__body thead {
  clip-path: inset(50%);
  height: 1px;
  overflow: hidden;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}
@media print, screen and (min-width:768px) {
  .p-privacy-info__body thead {
    clip-path: none;
    height: auto;
    overflow: visible;
    position: static;
    white-space: normal;
    width: auto;
  }
}
.p-privacy-info__body tr {
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
  padding: 1.6rem 0.8rem;
}
@media print, screen and (min-width:768px) {
  .p-privacy-info__body tr {
    display: table-row;
    padding: 0;
  }
}
.p-privacy-info__body tbody tr + tr {
  border-top: 1px solid color-mix(in srgb, var(--color-blue-main) 25%, transparent);
}
.p-privacy-info__body th,
.p-privacy-info__body td {
  line-height: 1.75;
  text-align: left;
  vertical-align: top;
}
@media print, screen and (min-width:768px) {
  .p-privacy-info__body th,
  .p-privacy-info__body td {
    padding: 1.6rem 2.4rem;
  }
}
.p-privacy-info__body th {
  background-color: var(--color-blue-bg);
  font-weight: 800;
  letter-spacing: 0.06em;
}
@media print, screen and (min-width:768px) {
  .p-privacy-info__body th {
    border-bottom: 1px solid color-mix(in srgb, var(--color-blue-main) 25%, transparent);
  }
}
.p-privacy-info__body td {
  font-weight: 500;
  letter-spacing: 0;
  overflow-wrap: anywhere;
}
@media print, screen and (min-width:768px) {
  .p-privacy-info__body td {
    width: 60%;
  }
}
.p-privacy-info__body td:first-child {
  font-weight: 800;
}
@media print, screen and (min-width:768px) {
  .p-privacy-info__body td:first-child {
    font-weight: 500;
    width: 40%;
  }
}
.p-privacy-info__body a {
  color: var(--color-blue-main);
  text-decoration: none;
}
@media (hover: hover) {
  .p-privacy-info__body a:hover {
    color: var(--color-blue-hover);
  }
}
.p-privacy-info__body .p-privacy-info__ol-paren {
  counter-reset: paren;
  list-style: none;
  padding-inline-start: 3.2rem;
}
.p-privacy-info__body .p-privacy-info__ol-paren > li {
  counter-increment: paren;
  position: relative;
}
.p-privacy-info__body .p-privacy-info__ol-paren > li::before {
  content: "(" counter(paren) ")";
  font-weight: 800;
  left: -3.2rem;
  position: absolute;
  top: 0;
  width: 3.2rem;
}
.p-privacy-info__body .p-privacy-info__ol-paren.-upper {
  counter-reset: paren-upper;
}
.p-privacy-info__body .p-privacy-info__ol-paren.-upper > li {
  counter-increment: paren-upper;
}
.p-privacy-info__body .p-privacy-info__ol-paren.-upper > li::before {
  content: "(" counter(paren-upper, upper-alpha) ")";
}
.p-privacy-info__body .p-privacy-info__ol-paren.-lower {
  counter-reset: paren-lower;
}
.p-privacy-info__body .p-privacy-info__ol-paren.-lower > li {
  counter-increment: paren-lower;
}
.p-privacy-info__body .p-privacy-info__ol-paren.-lower > li::before {
  content: counter(paren-lower, lower-alpha) ")";
}
.p-privacy-info__body .p-privacy-info__ul-no-style {
  list-style: none;
}
.p-privacy-info__contact {
  margin-bottom: 1.6rem;
}
@media print, screen and (min-width:768px) {
  .p-privacy-info__contact {
    margin-bottom: 2.4rem;
  }
}
.p-privacy-info__contact p {
  color: var(--color-black-main);
  font-size: var(--font-size-m);
  font-weight: 500;
  letter-spacing: 0;
  line-height: 2;
  margin: 0;
}
.p-privacy-info__subheading {
  color: var(--color-black-main);
  font-size: var(--font-size-m);
  font-weight: 800;
  letter-spacing: 0;
  line-height: 2;
  margin: 0;
}
@media print, screen and (min-width:768px) {
  .p-privacy-info__subheading {
    letter-spacing: 0.06em;
  }
}
.p-privacy-info__em {
  font-weight: 800;
}
.p-privacy-info__adobe-reader {
  display: flex;
  flex-direction: row;
  gap: 0.8rem;
}
.p-privacy-info__adobe-reader a {
  display: block;
  height: 27px;
  width: 73.5px;
}
@media (hover: hover) {
  .p-privacy-info__adobe-reader a:hover {
    opacity: 0.8;
  }
}
.p-privacy-info__adobe-reader a img {
  height: 100%;
  width: 100%;
}

.p-compliance-customer-harassment {
  padding: 0 2.4rem 9.6rem;
}
@media print, screen and (min-width:768px) {
  .p-compliance-customer-harassment {
    padding: 0 16rem 12.8rem;
  }
}
.p-compliance-customer-harassment__inner {
  display: flex;
  flex-direction: column;
  gap: 4rem;
  margin-inline: auto;
  max-width: 112rem;
  width: 100%;
}
@media print, screen and (min-width:768px) {
  .p-compliance-customer-harassment__inner {
    gap: 4.8rem;
  }
}
.p-compliance-customer-harassment__block {
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
}
.p-compliance-customer-harassment__body {
  color: var(--color-black-main);
  font-size: var(--font-size-m);
  font-weight: 500;
  letter-spacing: 0;
  line-height: 2;
}
.p-compliance-customer-harassment__body p {
  margin: 0;
}
.p-compliance-customer-harassment__heading {
  color: var(--color-black-main);
  font-size: 2.2rem;
  font-weight: 800;
  letter-spacing: 0;
  line-height: 1.5;
  margin: 0;
}
@media print, screen and (min-width:768px) {
  .p-compliance-customer-harassment__heading {
    font-size: 2.4rem;
    letter-spacing: 0.14em;
  }
}
.p-compliance-customer-harassment__list {
  color: var(--color-black-main);
  font-size: var(--font-size-m);
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.5;
  list-style: disc;
  margin: 0;
  padding-inline-start: 2.4rem;
}
.p-compliance-customer-harassment__list li:not(:last-child) {
  margin-bottom: 0.8rem;
}
.p-compliance-customer-harassment__note {
  color: var(--color-black-main);
  font-size: var(--font-size-s);
  font-weight: 500;
  letter-spacing: 0;
  line-height: 2;
  margin: 0;
}
@media print, screen and (min-width:768px) {
  .p-compliance-customer-harassment__note {
    line-height: 1.75;
  }
}

.p-recruit-interview {
  overflow: hidden;
  padding: 4rem 2.4rem 9.6rem;
  position: relative;
}
@media print, screen and (min-width:768px) {
  .p-recruit-interview {
    padding: 6.4rem 4rem 21.6rem;
  }
}
.p-recruit-interview__bg {
  display: block;
  height: 52.5rem;
  left: -6.4rem;
  max-width: none;
  -o-object-fit: cover;
  object-fit: cover;
  pointer-events: none;
  position: absolute;
  top: 3.2rem;
  width: 51.6rem;
}
@media print, screen and (min-width:768px) {
  .p-recruit-interview__bg {
    height: auto;
    left: 50%;
    top: 5rem;
    transform: translateX(-50%);
    width: 144rem;
  }
}
.p-recruit-interview__inner {
  margin-inline: auto;
  max-width: 128rem;
  position: relative;
  z-index: 1;
}
.p-recruit-interview__hero {
  display: grid;
  isolation: isolate;
  margin-bottom: 14.2rem;
  position: relative;
  row-gap: 4.8rem;
}
@media print, screen and (min-width:768px) {
  .p-recruit-interview__hero {
    align-items: start;
    gap: 0 8rem;
    grid-template-columns: repeat(2, 1fr);
    margin-bottom: 8rem;
  }
}
.p-recruit-interview__hero-body {
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
}
@media print, screen and (min-width:768px) {
  .p-recruit-interview__hero-body {
    gap: 3.2rem;
    min-height: 40rem;
  }
}
.p-recruit-interview__hero-image {
  aspect-ratio: 1500/1000;
  background-color: #b4b4b4;
  overflow: hidden;
  width: 100%;
}
.p-recruit-interview__hero-image img {
  display: block;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  width: 100%;
}
.p-recruit-interview__hero-lead {
  color: var(--color-white-main);
  margin-top: -1.6rem;
  padding-bottom: 4rem;
  position: relative;
}
.p-recruit-interview__hero-lead::before {
  background-color: var(--color-blue-main);
  content: "";
  inset: -8.8rem calc(50% - 50vw) 0;
  position: absolute;
  z-index: -1;
}
@media print, screen and (min-width:768px) {
  .p-recruit-interview__hero-lead::before {
    inset: 0 calc(50% - 50vw);
  }
}
@media print, screen and (min-width:768px) {
  .p-recruit-interview__hero-lead {
    grid-column: 1/-1;
    margin-top: -10.6rem;
    padding-block: 5.6rem;
  }
}
.p-recruit-interview__hero-lead p {
  font-size: var(--font-size-m);
  font-weight: 500;
  line-height: 2;
}
@media print, screen and (min-width:768px) {
  .p-recruit-interview__hero-lead p {
    max-width: 56rem;
  }
}
.p-recruit-interview__eyebrow {
  color: var(--color-black-main);
  font-size: var(--font-size-m);
  font-weight: 800;
  letter-spacing: 0;
  line-height: 1.5;
}
@media print, screen and (min-width:768px) {
  .p-recruit-interview__eyebrow {
    letter-spacing: 0.06em;
  }
}
.p-recruit-interview__title {
  color: var(--color-blue-main);
  font-size: 2.6rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  line-height: 1.5;
  margin: 0;
  overflow-wrap: break-word;
}
@media print, screen and (min-width:768px) {
  .p-recruit-interview__title {
    font-size: 3.4rem;
    letter-spacing: 0.12em;
    padding-bottom: 14rem;
  }
}
.p-recruit-interview__intro {
  margin-bottom: 4rem;
  margin-inline: auto;
  max-width: 98rem;
}
@media print, screen and (min-width:768px) {
  .p-recruit-interview__intro {
    margin-bottom: 4.8rem;
  }
}
.p-recruit-interview__intro p {
  color: var(--color-black-main);
  font-size: 1.6rem;
  font-weight: 800;
  line-height: 1.5;
  text-align: justify;
}
@media print, screen and (min-width:768px) {
  .p-recruit-interview__intro p {
    font-size: 1.8rem;
    letter-spacing: 0.06em;
    white-space: nowrap;
  }
}
.p-recruit-interview__accent {
  color: var(--color-blue-main);
}
.p-recruit-interview__profile {
  align-items: center;
  background-color: var(--color-blue-bg);
  border: 1px solid #bfd9f4;
  border-radius: 1.6rem;
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
  margin-bottom: 4rem;
  margin-inline: auto;
  max-width: 98rem;
  padding: 3.3rem 2.5rem;
}
@media print, screen and (min-width:768px) {
  .p-recruit-interview__profile {
    align-items: flex-start;
    flex-direction: row;
    gap: 4rem;
    margin-bottom: 4.8rem;
    padding: 4.1rem;
  }
}
.p-recruit-interview__profile-icon {
  background-color: #b4b4b4;
  flex-shrink: 0;
  height: 16rem;
  width: 16rem;
}
.p-recruit-interview__profile-icon img {
  display: block;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  width: 100%;
}
.p-recruit-interview__profile-body {
  width: 100%;
}
.p-recruit-interview__profile-title {
  color: var(--color-black-main);
  font-size: 2.2rem;
  font-weight: 800;
  line-height: 1.5;
  margin: 0 0 1.6rem;
}
@media print, screen and (min-width:768px) {
  .p-recruit-interview__profile-title {
    font-size: 2.4rem;
    letter-spacing: 0.14em;
  }
}
.p-recruit-interview__profile-role, .p-recruit-interview__profile-joined, .p-recruit-interview__profile-name {
  color: var(--color-black-main);
  font-size: var(--font-size-m);
  font-weight: 500;
  line-height: 2;
  margin: 0;
}
.p-recruit-interview__body {
  margin-inline: auto;
  max-width: 98rem;
}
.p-recruit-interview__section {
  margin-bottom: 4rem;
}
@media print, screen and (min-width:768px) {
  .p-recruit-interview__section {
    margin-bottom: 4.8rem;
  }
}
.p-recruit-interview__heading {
  color: var(--color-black-main);
  font-size: 2.2rem;
  font-weight: 800;
  line-height: 1.5;
  margin: 0 0 2rem;
}
@media print, screen and (min-width:768px) {
  .p-recruit-interview__heading {
    font-size: 2.4rem;
    letter-spacing: 0.14em;
    margin-bottom: 2.4rem;
  }
}
.p-recruit-interview__question {
  align-items: baseline;
  border-top: 1px solid #bfd9f4;
  color: var(--color-black-main);
  display: flex;
  font-size: 1.8rem;
  font-weight: 800;
  gap: 1.1rem;
  letter-spacing: 0.14em;
  line-height: 1.5;
  margin: 0;
  padding-block: 2.4rem;
}
@media print, screen and (min-width:768px) {
  .p-recruit-interview__question {
    font-size: 2rem;
    letter-spacing: 0.08em;
    padding-block: 3.2rem;
  }
}
.p-recruit-interview__answer {
  align-items: baseline;
  display: flex;
  gap: 1.1rem;
  padding-bottom: 2.4rem;
}
@media print, screen and (min-width:768px) {
  .p-recruit-interview__answer {
    padding-bottom: 3.2rem;
  }
}
.p-recruit-interview__speech {
  align-items: flex-start;
  display: flex;
  gap: 1.1rem;
  padding-bottom: 2.4rem;
}
@media print, screen and (min-width:768px) {
  .p-recruit-interview__speech {
    padding-bottom: 3.2rem;
  }
}
.p-recruit-interview__heading + .p-recruit-interview__speech {
  border-top: 1px solid #bfd9f4;
  padding-top: 2.4rem;
}
@media print, screen and (min-width:768px) {
  .p-recruit-interview__heading + .p-recruit-interview__speech {
    padding-top: 3.2rem;
  }
}
.p-recruit-interview__answer-body, .p-recruit-interview__speech-body {
  flex: 1;
  min-width: 0;
}
@media print, screen and (min-width:768px) {
  .p-recruit-interview__answer-body, .p-recruit-interview__speech-body {
    padding-right: 3.2rem;
  }
}
.p-recruit-interview__answer-body p, .p-recruit-interview__speech-body p {
  color: var(--color-black-main);
  font-size: var(--font-size-m);
  font-weight: 500;
  line-height: 2;
  margin: 0;
}
.p-recruit-interview__answer-body p + p, .p-recruit-interview__speech-body p + p {
  margin-top: 1.6rem;
}
.p-recruit-interview__answer-body a, .p-recruit-interview__speech-body a {
  color: var(--color-blue-main);
}
@media (hover: hover) {
  .p-recruit-interview__answer-body a, .p-recruit-interview__speech-body a {
    transition: color 0.2s ease;
  }
  .p-recruit-interview__answer-body a:hover, .p-recruit-interview__answer-body a:focus-visible, .p-recruit-interview__speech-body a:hover, .p-recruit-interview__speech-body a:focus-visible {
    color: var(--color-blue-hover);
  }
}
.p-recruit-interview__mark {
  flex-shrink: 0;
  font-family: var(--font-family-en);
  font-size: 2rem;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1;
}
.p-recruit-interview__question .p-recruit-interview__mark {
  color: var(--color-pink-main);
}
.p-recruit-interview__answer .p-recruit-interview__mark {
  color: var(--color-blue-main);
  padding-top: 1rem;
}
.p-recruit-interview__speech .p-recruit-interview__mark {
  font-family: var(--font-family-primary);
  font-size: 1.8rem;
  padding-top: 0.5rem;
  width: 5em;
}
.p-recruit-interview__speech--blue .p-recruit-interview__mark {
  color: var(--color-blue-main);
}
.p-recruit-interview__speech--pink .p-recruit-interview__mark {
  color: var(--color-pink-main);
}
.p-recruit-interview__speech--black .p-recruit-interview__mark {
  color: var(--color-black-main);
}
.p-recruit-interview__quote {
  align-items: flex-start;
  border: 1px solid #bfd9f4;
  border-radius: 1.6rem;
  display: flex;
  gap: 1.6rem;
  margin-top: 2rem;
  padding: 2.4rem;
}
.p-recruit-interview__quote::before, .p-recruit-interview__quote::after {
  color: var(--color-blue-main);
  flex-shrink: 0;
  font-size: 3.4rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  line-height: 1;
}
.p-recruit-interview__quote::before {
  content: "“";
}
.p-recruit-interview__quote::after {
  content: "”";
}
@media print, screen and (min-width:768px) {
  .p-recruit-interview__quote {
    margin-top: 2.4rem;
  }
}
.p-recruit-interview__quote p {
  color: var(--color-black-main);
  flex: 1;
  font-size: var(--font-size-m);
  font-weight: 500;
  line-height: 2;
  margin: 0;
}
.p-recruit-interview__figure {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  margin: 4rem auto 0;
}
@media print, screen and (min-width:768px) {
  .p-recruit-interview__figure {
    gap: 1.2rem;
    margin-top: 4.8rem;
    width: 59rem;
  }
}
.p-recruit-interview__figure img {
  aspect-ratio: 1500/1000;
  background-color: #b4b4b4;
  display: block;
  height: auto;
  -o-object-fit: cover;
  object-fit: cover;
  width: 100%;
}
.p-recruit-interview__figure figcaption {
  color: var(--color-black-main);
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 1.5;
  margin: 0;
  overflow-wrap: break-word;
}
@media print, screen and (min-width:768px) {
  .p-recruit-interview__figure figcaption {
    font-size: var(--font-size-s);
  }
}
.p-recruit-interview__actions {
  align-items: center;
  background-color: var(--color-blue-bg);
  border: 1px solid #bfd9f4;
  border-radius: 1.6rem;
  display: flex;
  flex-direction: column;
  gap: 4rem;
  margin-bottom: 4rem;
  margin-inline: auto;
  max-width: 98rem;
  padding: 3.3rem 1.4rem;
}
@media print, screen and (min-width:768px) {
  .p-recruit-interview__actions {
    flex-direction: row;
    gap: 4rem;
    justify-content: center;
    margin-bottom: 4.8rem;
    padding: 3.2rem 4.6rem;
  }
}
.p-recruit-interview__actions .c-button1 {
  margin: 0;
  width: 30rem;
}
.p-recruit-interview__actions .c-button1:only-child {
  width: 100%;
}
.p-recruit-interview .c-article-nav {
  margin-inline: auto;
  max-width: 98rem;
}

/* ==========================================================================
Utility
========================================================================== */
.u-no-underline {
  border-bottom: none !important;
  padding-bottom: 0 !important;
}

.u-sp-only {
  display: none;
}
@media print, screen and (max-width:767px) {
  .u-sp-only {
    display: block !important;
  }
}

@media print, screen and (max-width:767px) {
  .u-pc-only {
    display: none !important;
  }
  .u-sp-margin {
    margin: 0 !important;
  }
}