@charset "UTF-8";
/* ==========================================================================
Base
========================================================================== */
/*!
 * @acab/reset.css
 */
*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
  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) {
  -webkit-font-smoothing: antialiased; /* テキストのレンダリングを改善 */
  block-size: 100%; /* サファリ以外のブラウザのフォールバック */
  block-size: 100dvb; /* 1dvbは動的ビューポートの長さの1%、100dvbで高さいっぱいに */
  font-family: system-ui, sans-serif; /* timeの代わりにシステムフォントを使用 */
  line-height: 1.5; /* アクセシブルな行の高さ */
}

: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;
  -webkit-border-before: 1px solid;
  border-block-start: 1px solid;
  color: inherit;
  overflow: visible;
}

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

/* .visually-hiddenは後のカスケードレイヤーを上書きするために!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 {
  --color-00-black: #222222;
  --color-00-white: #ffffff;
  --color-01-gray: #F0F0F0;
  --color-primary-main: #988C2C;
  --color-primary-sub: #AFA86F;
  --color-primary-base: #FAF7F1;
  --line-height-xl: 2;
  --line-height-l: 1.8;
  --line-height-m: 1.5;
  --line-height-s: 1;
}

/* Base
----------------------------------------------------------------- */
html {
  scroll-padding-top: 14.9333333333vw;
  font-size: 62.5%;
  scroll-behavior: smooth;
}
@media print, screen and (min-width:769px) {
  html {
    scroll-padding-top: clamp(62.9333333333px, 8.1944444444vw, 131.1111111111px);
  }
}
html:has(dialog[open]) {
  overflow: hidden;
}

body {
  -webkit-font-smoothing: antialiased;
  background-color: var(--color-00-white);
  color: var(--color-00-black);
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-size: 1.6rem;
  font-style: normal;
  font-weight: 400;
  letter-spacing: var(--letter-spacing-m);
  line-height: var(--line-height-m);
  word-break: break-all;
}
body > #svg {
  display: none;
}

:where(a) {
  color: inherit;
  text-decoration: none;
}
:where(a):hover {
  text-decoration: none;
}
:where(ol),
:where(ul),
:where(dl) {
  list-style: none;
}

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

:where(h1),
:where(h2),
:where(h3),
:where(h4),
:where(h5),
:where(h6) {
  font-size: 1.6rem;
  font-weight: normal;
}

:where(p) {
  font-size: 14px;
  font-weight: 400;
}
@media print, screen and (min-width:769px) {
  :where(p) {
    font-size: 15px;
  }
}

:where(em) {
  font-weight: 500;
}

: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) {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: var(--color-00-white);
  border: 1px solid var(--color-01-gray);
}

:where(textarea) {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: var(--color-00-white);
  border: 1px solid var(--color-01-gray);
}

:where(select) {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: var(--color-00-white);
  border: 1px solid var(--color-01-gray);
}

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

@media print, screen and (max-width:768px) {
  .pc {
    display: none !important;
  }
}
@media print, screen and (min-width:769px) {
  .sp {
    display: none !important;
  }
}
/* js-inview */
.js-inview {
  opacity: 0;
  -webkit-transition: opacity 600ms ease-out 200ms;
  transition: opacity 600ms ease-out 200ms;
}
.js-inview.-show {
  opacity: 1;
}

/* ==========================================================================
Layout
========================================================================== */
.l-header {
  background-color: var(--color-00-white);
  height: 14.9333333333vw;
  left: 0;
  position: fixed;
  top: 0;
  -webkit-transition: backgroud-color 300ms;
  transition: backgroud-color 300ms;
  width: 100%;
  z-index: 100;
}
.front-page .l-header {
  background-color: transparent;
}
.l-header.is-scroll {
  background-color: var(--color-00-white);
}
.l-header.is-scroll .l-header__logo--black {
  opacity: 1;
}
.l-header.is-scroll .l-header__burger span {
  background-color: var(--color-00-black);
}
.l-header.is-scroll .l-header__burger-text {
  color: var(--color-00-black);
}
@media print, screen and (min-width:769px) {
  .l-header {
    height: clamp(62.9333333333px, 8.1944444444vw, 131.1111111111px);
  }
}
.l-header__inner {
  height: 100%;
  padding: 2.1333333333vw 3.2vw;
}
@media print, screen and (min-width:769px) {
  .l-header__inner {
    gap: clamp(21.3333333333px, 2.7777777778vw, 44.4444444444px);
    display: grid;
    grid-template-columns: 1fr clamp(146.1333333333px, 19.0277777778vw, 304.4444444444px);
    padding: clamp(14.9333333333px, 1.9444444444vw, 31.1111111111px) clamp(65.0666666667px, 8.4722222222vw, 135.5555555556px) clamp(14.9333333333px, 1.9444444444vw, 31.1111111111px) clamp(16px, 2.0833333333vw, 33.3333333333px);
  }
}
.l-header__logo {
  -webkit-transition: display 300ms;
  transition: display 300ms;
  width: 41.0666666667vw;
}
@media print, screen and (min-width:769px) {
  .l-header__logo {
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
    width: clamp(133.3333333333px, 17.3611111111vw, 277.7777777778px);
  }
  .l-header__logo:hover {
    opacity: 0.7;
  }
}
.l-header__logo a {
  display: block;
  position: relative;
}
.l-header__logo a img {
  -webkit-transition: opacity 300ms;
  transition: opacity 300ms;
}
.l-header__logo--white {
  opacity: 1;
  z-index: 1;
}
.l-header__logo--black {
  left: 0;
  opacity: 0;
  position: absolute;
  top: 0;
  z-index: 2;
}
.l-header__list {
  display: none;
}
@media print, screen and (min-width:769px) {
  .l-header__list {
    gap: clamp(11.7333333333px, 1.5277777778vw, 24.4444444444px);
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
  }
}
@media print, screen and (min-width:769px) {
  .l-header__item a {
    background-color: var(--color-00-black);
    border: clamp(0.5333333333px, 0.0694444444vw, 1.1111111111px) solid var(--color-00-black);
    color: var(--color-00-white);
    display: block;
    font-size: clamp(7.4666666667px, 0.9722222222vw, 15.5555555556px);
    font-weight: 700;
    height: 100%;
    line-height: var(--line-height-s);
    padding: clamp(6.4px, 0.8333333333vw, 13.3333333333px) 0;
    text-align: center;
    -webkit-transition: background-color 300ms, color 300ms;
    transition: background-color 300ms, color 300ms;
    width: 100%;
  }
  .l-header__item a:hover {
    background-color: var(--color-00-white);
    color: var(--color-00-black);
  }
}
@media print, screen and (min-width:769px) {
  .l-header__item:nth-child(2) a {
    background-color: var(--color-primary-sub);
    border: clamp(0.5333333333px, 0.0694444444vw, 1.1111111111px) solid var(--color-primary-sub);
    font-family: "Viga", sans-serif;
    font-family: "Viga", sans-serif;
    font-style: normal;
    font-style: normal;
    font-weight: 400;
    font-weight: 400;
  }
  .l-header__item:nth-child(2) a:hover {
    background-color: var(--color-00-white);
    color: var(--color-primary-sub);
  }
}
.l-header__burger {
  background: none;
  border: none;
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  height: 10.6666666667vw;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  position: fixed;
  right: 3.2vw;
  top: 2.1333333333vw;
  width: 8.5333333333vw;
  z-index: 1000;
}
@media print, screen and (min-width:769px) {
  .l-header__burger {
    height: clamp(27.7333333333px, 3.6111111111vw, 57.7777777778px);
    right: clamp(12.8px, 1.6666666667vw, 26.6666666667px);
    top: clamp(17.0666666667px, 2.2222222222vw, 35.5555555556px);
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
    width: clamp(27.7333333333px, 3.6111111111vw, 57.7777777778px);
  }
  .l-header__burger:hover {
    opacity: 0.7;
  }
}
.l-header__burger-inner {
  height: 100%;
  width: 100%;
}
.l-header__burger span {
  background-color: var(--color-00-black);
  display: block;
  height: 0.5333333333vw;
  -webkit-transition: all 300ms;
  transition: all 300ms;
  width: 100%;
}
@media print, screen and (min-width:769px) {
  .l-header__burger span {
    height: clamp(1.0666666667px, 0.1388888889vw, 2.2222222222px);
  }
}
.l-header__burger span:nth-child(2) {
  -webkit-transform: translateY(2.4vw);
  transform: translateY(2.4vw);
}
@media print, screen and (min-width:769px) {
  .l-header__burger span:nth-child(2) {
    -webkit-transform: translateY(clamp(8px, 1.0416666667vw, 16.6666666667px));
    transform: translateY(clamp(8px, 1.0416666667vw, 16.6666666667px));
  }
}
.l-header__burger span:nth-child(3) {
  -webkit-transform: translateY(4.8vw);
  transform: translateY(4.8vw);
}
@media print, screen and (min-width:769px) {
  .l-header__burger span:nth-child(3) {
    -webkit-transform: translateY(clamp(16px, 2.0833333333vw, 33.3333333333px));
    transform: translateY(clamp(16px, 2.0833333333vw, 33.3333333333px));
  }
}
.home .l-header__burger span {
  background-color: var(--color-00-white);
}
.l-header__burger[aria-expanded=true] span {
  background-color: var(--color-00-black);
}
.l-header__burger[aria-expanded=true] span:nth-child(1) {
  -webkit-transform: translateY(2.4vw) rotate(45deg);
  transform: translateY(2.4vw) rotate(45deg);
  -webkit-transition: -webkit-transform 300ms ease;
  transition: -webkit-transform 300ms ease;
  transition: transform 300ms ease;
  transition: transform 300ms ease, -webkit-transform 300ms ease;
}
@media print, screen and (min-width:769px) {
  .l-header__burger[aria-expanded=true] span:nth-child(1) {
    -webkit-transform: translateY(clamp(10.6666666667px, 1.3888888889vw, 22.2222222222px)) rotate(45deg);
    transform: translateY(clamp(10.6666666667px, 1.3888888889vw, 22.2222222222px)) rotate(45deg);
  }
}
.l-header__burger[aria-expanded=true] span:nth-child(2) {
  opacity: 0;
}
.l-header__burger[aria-expanded=true] span:nth-child(3) {
  -webkit-transform: translateY(1.2vw) rotate(-45deg);
  transform: translateY(1.2vw) rotate(-45deg);
  -webkit-transition: -webkit-transform 300ms ease;
  transition: -webkit-transform 300ms ease;
  transition: transform 300ms ease;
  transition: transform 300ms ease, -webkit-transform 300ms ease;
}
@media print, screen and (min-width:769px) {
  .l-header__burger[aria-expanded=true] span:nth-child(3) {
    -webkit-transform: translateY(clamp(8px, 1.0416666667vw, 16.6666666667px)) rotate(-45deg);
    transform: translateY(clamp(8px, 1.0416666667vw, 16.6666666667px)) rotate(-45deg);
  }
}
.l-header__burger[aria-expanded=true] .l-header__burger-text {
  display: none;
}
.l-header__burger-text {
  color: var(--color-00-black);
  font-family: "Viga", sans-serif;
  font-size: 2.6666666667vw;
  font-style: normal;
  font-weight: 400;
  line-height: var(--line-height-s);
  margin: 3.2vw auto 0;
  text-align: center;
  -webkit-transition: color 300ms;
  transition: color 300ms;
}
@media print, screen and (min-width:769px) {
  .l-header__burger-text {
    font-size: clamp(6.4px, 0.8333333333vw, 13.3333333333px);
    margin: clamp(5.3333333333px, 0.6944444444vw, 11.1111111111px) auto 0;
  }
}
.home .l-header__burger-text {
  color: var(--color-00-white);
}

@media print, screen and (min-width:769px) {
  .l-footer {
    padding: 0 clamp(34.1333333333px, 4.4444444444vw, 71.1111111111px) clamp(34.1333333333px, 4.4444444444vw, 71.1111111111px) clamp(34.1333333333px, 4.4444444444vw, 71.1111111111px);
  }
}
.l-footer__inner {
  background-color: var(--color-primary-base);
  display: grid;
  grid-template-areas: "menu" "sns" "logo" "copyright";
  grid-template-columns: 1fr;
  grid-template-rows: auto auto auto auto;
  margin: 0 auto;
  padding: 45.3333333333vw 3.2vw 6.4vw;
}
@media print, screen and (min-width:769px) {
  .l-footer__inner {
    gap: clamp(35.7333333333px, 4.6527777778vw, 74.4444444444px) clamp(58.6666666667px, 7.6388888889vw, 122.2222222222px);
    border-radius: 0 0 clamp(10.6666666667px, 1.3888888889vw, 22.2222222222px) clamp(10.6666666667px, 1.3888888889vw, 22.2222222222px);
    grid-template-areas: "logo menu" "copyright sns";
    grid-template-columns: 1fr auto;
    grid-template-rows: auto auto;
    padding: clamp(105.6px, 13.75vw, 220px) clamp(94.9333333333px, 12.3611111111vw, 197.7777777778px) clamp(36.2666666667px, 4.7222222222vw, 75.5555555556px);
    width: clamp(699.7333333333px, 91.1111111111vw, 1457.7777777778px);
  }
}
.l-footer__logo {
  grid-area: logo;
  margin: 8vw auto 0;
  width: 66.6666666667vw;
}
@media print, screen and (min-width:769px) {
  .l-footer__logo {
    margin-top: 0;
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
    width: clamp(133.3333333333px, 17.3611111111vw, 277.7777777778px);
  }
  .l-footer__logo:hover {
    opacity: 0.7;
  }
}
.l-footer__menu {
  gap: 5.3333333333vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}
@media print, screen and (min-width:769px) {
  .l-footer__menu {
    gap: clamp(21.3333333333px, 2.7777777778vw, 44.4444444444px) clamp(11.7333333333px, 1.5277777778vw, 24.4444444444px);
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: clamp(13.3333333333px, 1.7361111111vw, 27.7777777778px);
  }
}
.l-footer__item {
  font-size: 3.7333333333vw;
  font-weight: 700;
  line-height: var(--line-height-s);
  text-align: center;
}
@media print, screen and (min-width:769px) {
  .l-footer__item {
    font-size: clamp(8.5333333333px, 1.1111111111vw, 17.7777777778px);
  }
}
.l-footer__item a {
  display: block;
}
@media print, screen and (min-width:769px) {
  .l-footer__item a {
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
  }
  .l-footer__item a:hover {
    opacity: 0.7;
  }
}
.l-footer__sns {
  gap: 4.2666666667vw;
  display: grid;
  grid-area: sns;
  grid-template-columns: repeat(3, 6.4vw);
  margin-top: 14.6666666667vw;
  place-content: center;
}
@media print, screen and (min-width:769px) {
  .l-footer__sns {
    gap: clamp(8.5333333333px, 1.1111111111vw, 17.7777777778px);
    grid-template-columns: repeat(3, clamp(12.8px, 1.6666666667vw, 26.6666666667px));
    margin-top: 0;
    place-content: end;
  }
}
.l-footer__sns-item a {
  display: block;
}
@media print, screen and (min-width:769px) {
  .l-footer__sns-item a {
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
  }
  .l-footer__sns-item a:hover {
    opacity: 0.7;
  }
}
.l-footer small {
  color: #999999;
  display: block;
  font-family: "Viga", sans-serif;
  font-size: 3.2vw;
  font-style: normal;
  font-weight: 400;
  margin-top: 10.6666666667vw;
  text-align: center;
}
@media print, screen and (min-width:769px) {
  .l-footer small {
    font-size: clamp(6.4px, 0.8333333333vw, 13.3333333333px);
    margin-top: 0;
    text-align: left;
  }
}

.l-main__inner {
  overflow: hidden;
}
.single-staff .l-main__inner {
  overflow: visible;
}
.single-post .l-main__inner {
  margin-top: 14.9333333333vw;
}
@media print, screen and (min-width:769px) {
  .single-post .l-main__inner {
    margin-top: clamp(62.9333333333px, 8.1944444444vw, 131.1111111111px);
  }
}

/* ==========================================================================
Components
========================================================================== */
.c-nav {
  inset: 0;
  background: var(--color-primary-base);
  overflow-y: auto;
  position: fixed;
  -webkit-transform: translateX(100%);
  transform: translateX(100%);
  -webkit-transition: -webkit-transform 300ms ease;
  transition: -webkit-transform 300ms ease;
  transition: transform 300ms ease;
  transition: transform 300ms ease, -webkit-transform 300ms ease;
  z-index: 999;
}
.c-nav.is-active {
  -webkit-transform: translateX(0);
  transform: translateX(0);
}
.c-nav__inner {
  margin: 0 auto;
  padding: 2.1333333333vw 3.2vw;
}
@media print, screen and (min-width:769px) {
  .c-nav__inner {
    padding: clamp(14.9333333333px, 1.9444444444vw, 31.1111111111px) clamp(16px, 2.0833333333vw, 33.3333333333px) clamp(14.9333333333px, 1.9444444444vw, 31.1111111111px) clamp(16px, 2.0833333333vw, 33.3333333333px);
  }
}
.c-nav__header {
  display: none;
}
@media print, screen and (min-width:769px) {
  .c-nav__header {
    gap: clamp(21.3333333333px, 2.7777777778vw, 44.4444444444px);
    display: grid;
    grid-template-columns: 1fr clamp(146.1333333333px, 19.0277777778vw, 304.4444444444px);
    padding-right: clamp(49.0666666667px, 6.3888888889vw, 102.2222222222px);
  }
}
.c-nav__header-logo {
  width: 41.0666666667vw;
}
@media print, screen and (min-width:769px) {
  .c-nav__header-logo {
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
    width: clamp(133.3333333333px, 17.3611111111vw, 277.7777777778px);
  }
  .c-nav__header-logo:hover {
    opacity: 0.7;
  }
}
@media print, screen and (min-width:769px) {
  .c-nav__header-list {
    gap: clamp(11.7333333333px, 1.5277777778vw, 24.4444444444px);
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
  }
}
@media print, screen and (min-width:769px) {
  .c-nav__header-item a {
    background-color: var(--color-00-black);
    border: clamp(0.5333333333px, 0.0694444444vw, 1.1111111111px) solid var(--color-00-black);
    color: var(--color-00-white);
    display: block;
    font-size: clamp(7.4666666667px, 0.9722222222vw, 15.5555555556px);
    font-weight: 700;
    height: 100%;
    line-height: var(--line-height-s);
    padding: clamp(6.4px, 0.8333333333vw, 13.3333333333px) 0;
    text-align: center;
    -webkit-transition: background-color 300ms, color 300ms;
    transition: background-color 300ms, color 300ms;
    width: 100%;
  }
  .c-nav__header-item a:hover {
    background-color: var(--color-00-white);
    color: var(--color-00-black);
  }
}
@media print, screen and (min-width:769px) {
  .c-nav__header-item:nth-child(2) a {
    background-color: var(--color-primary-sub);
    border: clamp(0.5333333333px, 0.0694444444vw, 1.1111111111px) solid var(--color-primary-sub);
    font-family: "Viga", sans-serif;
    font-style: normal;
    font-weight: 400;
  }
  .c-nav__header-item:nth-child(2) a:hover {
    background-color: var(--color-00-white);
    color: var(--color-primary-sub);
  }
}
@media print, screen and (min-width:769px) {
  .c-nav__content {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-top: clamp(62.9333333333px, 8.1944444444vw, 131.1111111111px);
    padding: 0 clamp(53.3333333333px, 6.9444444444vw, 111.1111111111px);
  }
}
.c-nav__logo {
  width: 40vw;
}
@media print, screen and (min-width:769px) {
  .c-nav__logo {
    -webkit-box-flex: 0;
    -ms-flex: 0 1 50%;
    flex: 0 1 50%;
    padding-right: clamp(33.6px, 4.375vw, 70px);
    text-align: right;
  }
  .c-nav__logo a {
    display: inline-block;
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
  }
  .c-nav__logo a img {
    width: clamp(133.3333333333px, 17.3611111111vw, 277.7777777778px);
  }
  .c-nav__logo a:hover {
    opacity: 0.7;
  }
}
@media print, screen and (min-width:769px) {
  .c-nav__wrap {
    border-left: clamp(0.5333333333px, 0.0694444444vw, 1.1111111111px) solid var(--color-primary-sub);
    -webkit-box-flex: 0;
    -ms-flex: 0 1 50%;
    flex: 0 1 50%;
    padding-left: clamp(33.6px, 4.375vw, 70px);
  }
}
.c-nav__menu {
  gap: 0 3.2vw;
  display: grid;
  grid-template-columns: 1fr;
  margin-top: 11.7333333333vw;
}
@media print, screen and (min-width:769px) {
  .c-nav__menu {
    gap: 0 clamp(16px, 2.0833333333vw, 33.3333333333px);
    grid-auto-flow: column;
    grid-template-columns: repeat(2, clamp(132.2666666667px, 17.2222222222vw, 275.5555555556px));
    grid-template-rows: repeat(3, auto);
    margin-top: 0;
  }
}
.c-nav__item {
  border-bottom: 0.2666666667vw solid var(--color-primary-sub);
  padding: 3.2vw 0;
}
@media print, screen and (min-width:769px) {
  .c-nav__item {
    border-width: clamp(0.5333333333px, 0.0694444444vw, 1.1111111111px);
    padding: clamp(12.2666666667px, 1.5972222222vw, 25.5555555556px) 0;
  }
}
.c-nav__item:first-child {
  border-top: 0.2666666667vw solid var(--color-primary-sub);
}
@media print, screen and (min-width:769px) {
  .c-nav__item:first-child {
    border-width: clamp(0.5333333333px, 0.0694444444vw, 1.1111111111px);
  }
}
@media print, screen and (min-width:769px) {
  .c-nav__item:nth-child(4) {
    border-top: clamp(0.5333333333px, 0.0694444444vw, 1.1111111111px) solid var(--color-primary-sub);
  }
}
.c-nav__item-link {
  display: block;
  -webkit-transition: opacity 300ms;
  transition: opacity 300ms;
}
.c-nav__item-link:hover {
  opacity: 0.7;
}
.c-nav__en {
  display: block;
  font-family: "Viga", sans-serif;
  font-size: 4.8vw;
  font-style: normal;
  font-weight: 400;
  line-height: var(--line-height-s);
}
@media print, screen and (min-width:769px) {
  .c-nav__en {
    font-size: clamp(17.0666666667px, 2.2222222222vw, 35.5555555556px);
  }
}
.c-nav__ja {
  display: block;
  font-size: 3.2vw;
  font-weight: 700;
  line-height: var(--line-height-s);
  margin-top: 2.1333333333vw;
}
@media print, screen and (min-width:769px) {
  .c-nav__ja {
    font-size: clamp(8.5333333333px, 1.1111111111vw, 17.7777777778px);
    margin-top: clamp(5.3333333333px, 0.6944444444vw, 11.1111111111px);
  }
}
.c-nav__buttons {
  gap: 3.4666666667vw;
  display: grid;
  grid-template-columns: 66.1333333333vw;
  margin-top: 14.1333333333vw;
}
@media print, screen and (min-width:769px) {
  .c-nav__buttons {
    gap: clamp(16px, 2.0833333333vw, 33.3333333333px);
    grid-template-columns: repeat(2, 1fr);
    margin-top: clamp(26.6666666667px, 3.4722222222vw, 55.5555555556px);
  }
}
.c-nav__button-link {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 3.7333333333vw 0;
  width: 100%;
}
@media print, screen and (min-width:769px) {
  .c-nav__button-link {
    padding: clamp(7.4666666667px, 0.9722222222vw, 15.5555555556px) 0;
  }
}
.c-nav__button-link span {
  display: block;
  font-size: 3.7333333333vw;
  font-weight: 700;
  line-height: var(--line-height-s);
}
@media print, screen and (min-width:769px) {
  .c-nav__button-link span {
    font-size: clamp(7.4666666667px, 0.9722222222vw, 15.5555555556px);
  }
}
.c-nav__button-link--black {
  background-color: var(--color-00-black);
  color: var(--color-00-white);
}
@media print, screen and (min-width:769px) {
  .c-nav__button-link--black {
    border: clamp(0.5333333333px, 0.0694444444vw, 1.1111111111px) solid var(--color-00-black);
    -webkit-transition: background-color 300ms, color 300ms;
    transition: background-color 300ms, color 300ms;
  }
  .c-nav__button-link--black:hover {
    background-color: var(--color-00-white);
    color: var(--color-00-black);
  }
}
.c-nav__button-link--olive {
  background-color: var(--color-primary-sub);
  color: var(--color-00-white);
}
@media print, screen and (min-width:769px) {
  .c-nav__button-link--olive {
    border: clamp(0.5333333333px, 0.0694444444vw, 1.1111111111px) solid var(--color-primary-sub);
    -webkit-transition: background-color 300ms, color 300ms;
    transition: background-color 300ms, color 300ms;
  }
  .c-nav__button-link--olive:hover {
    background-color: var(--color-00-white);
    color: var(--color-primary-sub);
  }
}
.c-nav__button-link--olive span {
  font-weight: 400;
}

.c-button {
  background-color: var(--color-primary-sub);
  display: block;
  height: 100%;
  padding: 5.8666666667vw 0;
  position: relative;
  width: 100%;
}
@media print, screen and (min-width:769px) {
  .c-button {
    padding: clamp(16.5333333333px, 2.1527777778vw, 34.4444444444px) 0;
    -webkit-transition: background-color 300ms ease, border-color 300ms ease;
    transition: background-color 300ms ease, border-color 300ms ease;
  }
  .c-button:hover {
    background-color: var(--color-00-black);
  }
  .c-button:hover span {
    color: var(--color-00-white);
  }
  .c-button:hover::after {
    background-image: url(../images/icon-arrow2-white.svg);
  }
}
.c-button span {
  display: block;
  font-family: "Viga", sans-serif;
  font-size: 4.2666666667vw;
  font-style: normal;
  font-weight: 400;
  line-height: var(--line-height-s);
  margin: 0 auto;
  text-align: center;
}
@media print, screen and (min-width:769px) {
  .c-button span {
    font-size: clamp(10.6666666667px, 1.3888888889vw, 22.2222222222px);
    -webkit-transition: color 300ms ease;
    transition: color 300ms ease;
  }
}
.c-button::after {
  background-image: url(../images/icon-arrow2.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  display: block;
  height: 2.6666666667vw;
  position: absolute;
  position: absolute;
  right: 5.3333333333vw;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 2.6666666667vw;
}
@media print, screen and (min-width:769px) {
  .c-button::after {
    height: clamp(10.6666666667px, 1.3888888889vw, 22.2222222222px);
    right: clamp(13.3333333333px, 1.7361111111vw, 27.7777777778px);
    -webkit-transition: backgroud-image 300ms;
    transition: backgroud-image 300ms;
    width: clamp(10.6666666667px, 1.3888888889vw, 22.2222222222px);
  }
}
.c-button--black {
  background-color: var(--color-00-black);
}
.c-button--black span {
  color: var(--color-00-white);
}
.c-button--black::after {
  background-image: url(../images/icon-arrow2-white.svg);
}
@media print, screen and (min-width:769px) {
  .c-button--black:hover {
    background-color: var(--color-00-white);
  }
  .c-button--black:hover span {
    color: var(--color-00-black);
  }
  .c-button--black:hover::after {
    background-image: url(../images/icon-arrow2.svg);
  }
}
.c-button--white {
  background-color: var(--color-00-white);
  border: 0.2666666667vw solid var(--color-00-white);
}
.c-button--white span {
  color: var(--color-00-black);
}
.p-top-recruitment .c-button--white span {
  font-weight: 700;
}
@media print, screen and (min-width:769px) {
  .c-button--white {
    border: clamp(0.5333333333px, 0.0694444444vw, 1.1111111111px) solid var(--color-00-white);
  }
  .c-button--white:hover {
    background-color: var(--color-00-black);
  }
  .c-button--white:hover span {
    color: var(--color-00-white);
  }
}
.c-button--border {
  background-color: var(--color-00-white);
  border: 0.2666666667vw solid var(--color-00-black);
}
@media print, screen and (min-width:769px) {
  .c-button--border {
    border: clamp(0.5333333333px, 0.0694444444vw, 1.1111111111px) solid var(--color-00-black);
    -webkit-transition: background-color 300ms ease, border-color 300ms ease;
    transition: background-color 300ms ease, border-color 300ms ease;
  }
  .c-button--border:hover {
    background-color: var(--color-00-black);
  }
  .c-button--border:hover span {
    color: var(--color-00-white);
  }
  .c-button--border:hover::after {
    border-color: var(--color-00-white);
  }
}
.c-button--border span {
  color: var(--color-00-black);
}
.c-button--border::after {
  border-color: var(--color-00-black);
}

.c-cta {
  background-image: url(../images/cta-sp.webp);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  height: 66.6666666667vw;
  margin-top: 23.4666666667vw;
  padding: 0 4.2666666667vw;
}
@media print, screen and (min-width:769px) {
  .c-cta {
    background-image: url(../images/cta-pc.webp);
    background-size: cover;
    height: clamp(260.2666666667px, 33.8888888889vw, 542.2222222222px);
    margin-top: clamp(74.6666666667px, 9.7222222222vw, 155.5555555556px);
    padding: 0;
  }
}
.home .c-cta, .single-post .c-cta {
  margin-top: 0;
}
.c-cta__inner {
  background-color: var(--color-00-white);
  border-radius: 5.3333333333vw;
  padding: 6.4vw;
  -webkit-transform: translateY(35.2vw);
  transform: translateY(35.2vw);
}
@media print, screen and (min-width:769px) {
  .c-cta__inner {
    border-radius: clamp(10.6666666667px, 1.3888888889vw, 22.2222222222px);
    margin: 0 auto;
    padding: clamp(26.6666666667px, 3.4722222222vw, 55.5555555556px) clamp(18.1333333333px, 2.3611111111vw, 37.7777777778px);
    -webkit-transform: translateY(clamp(187.7333333333px, 24.4444444444vw, 391.1111111111px));
    transform: translateY(clamp(187.7333333333px, 24.4444444444vw, 391.1111111111px));
    width: clamp(509.8666666667px, 66.3888888889vw, 1062.2222222222px);
  }
}
.c-cta__text {
  font-size: 3.7333333333vw;
  font-weight: 700;
  line-height: 2.5;
  text-align: center;
}
@media print, screen and (min-width:769px) {
  .c-cta__text {
    font-size: clamp(8.5333333333px, 1.1111111111vw, 17.7777777778px);
    line-height: var(--line-height-m);
  }
}
.c-cta__button {
  margin-top: 5.3333333333vw;
}
@media print, screen and (min-width:769px) {
  .c-cta__button {
    margin-top: clamp(16.5333333333px, 2.1527777778vw, 34.4444444444px);
  }
}
.c-cta__button .c-button {
  display: block;
  height: 100%;
  margin: 0 auto;
  padding: 5.3333333333vw 0;
  width: 53.3333333333vw;
}
@media print, screen and (min-width:769px) {
  .c-cta__button .c-button {
    padding: clamp(12.8px, 1.6666666667vw, 26.6666666667px) 0;
    width: clamp(296.5333333333px, 38.6111111111vw, 617.7777777778px);
  }
}
.c-cta__button .c-button span {
  font-size: 3.7333333333vw;
}
@media print, screen and (min-width:769px) {
  .c-cta__button .c-button span {
    font-size: clamp(8.5333333333px, 1.1111111111vw, 17.7777777778px);
  }
}
@media print, screen and (min-width:769px) {
  .c-cta__button .c-button::after {
    height: clamp(8.5333333333px, 1.1111111111vw, 17.7777777778px);
    right: clamp(10.6666666667px, 1.3888888889vw, 22.2222222222px);
    width: clamp(8.5333333333px, 1.1111111111vw, 17.7777777778px);
  }
}

.c-section__inner {
  margin: 0 auto;
  padding: 0 4.2666666667vw;
}
@media print, screen and (min-width:769px) {
  .c-section__inner {
    max-width: clamp(546.1333333333px, 71.1111111111vw, 1137.7777777778px);
    padding: 0 clamp(18.1333333333px, 2.3611111111vw, 37.7777777778px);
  }
}
.c-section--mtl .c-section__inner {
  margin-top: 16vw;
}
@media print, screen and (min-width:769px) {
  .c-section--mtl .c-section__inner {
    margin-top: clamp(69.3333333333px, 9.0277777778vw, 144.4444444444px);
  }
}
.c-section--mtm .c-section__inner {
  margin-top: 12.2666666667vw;
}
@media print, screen and (min-width:769px) {
  .c-section--mtm .c-section__inner {
    margin-top: clamp(51.2px, 6.6666666667vw, 106.6666666667px);
  }
}
@media print, screen and (min-width:769px) {
  .c-section--pdn .c-section__inner {
    padding: 0 clamp(11.7333333333px, 1.5277777778vw, 24.4444444444px);
  }
}

.c-breadcrumbs {
  background-color: var(--color-01-gray);
  margin-bottom: 10.6666666667vw;
}
@media print, screen and (min-width:769px) {
  .c-breadcrumbs {
    margin-bottom: clamp(69.3333333333px, 9.0277777778vw, 144.4444444444px);
  }
}
.c-breadcrumbs__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: 2.6666666667vw 4.2666666667vw;
}
@media print, screen and (min-width:769px) {
  .c-breadcrumbs__list {
    margin: 0 auto;
    max-width: clamp(546.1333333333px, 71.1111111111vw, 1137.7777777778px);
    padding: clamp(10.6666666667px, 1.3888888889vw, 22.2222222222px) clamp(18.1333333333px, 2.3611111111vw, 37.7777777778px);
  }
}
.c-breadcrumbs__list > li {
  display: inline-block;
  font-size: 3.2vw;
  line-height: var(--line-height-m);
  position: relative;
}
@media print, screen and (min-width:769px) {
  .c-breadcrumbs__list > li {
    font-size: clamp(7.4666666667px, 0.9722222222vw, 15.5555555556px);
    line-height: var(--line-height-s);
  }
}
.c-breadcrumbs__list > li:not(:last-of-type):after {
  content: ">";
  display: inline-block;
  margin-left: 0.5em;
  margin-right: 0.5em;
}
.single-post .c-breadcrumbs {
  margin-bottom: 0;
}
.entry .c-breadcrumbs, .thanks .c-breadcrumbs {
  margin-bottom: 0;
  margin-top: 14.9333333333vw;
}
@media print, screen and (min-width:769px) {
  .entry .c-breadcrumbs, .thanks .c-breadcrumbs {
    margin-top: clamp(62.9333333333px, 8.1944444444vw, 131.1111111111px);
  }
}

.c-title1 {
  background-color: var(--color-primary-main);
  color: var(--color-00-white);
  font-size: 6.1333333333vw;
  font-weight: 700;
  letter-spacing: 0.06em;
  line-height: var(--line-height-s);
  margin: 0 auto;
  padding: 2.6666666667vw 5.3333333333vw;
  text-align: center;
}
@media print, screen and (min-width:769px) {
  .c-title1 {
    font-size: clamp(21.3333333333px, 2.7777777778vw, 44.4444444444px);
    padding: clamp(16px, 2.0833333333vw, 33.3333333333px) clamp(10.6666666667px, 1.3888888889vw, 22.2222222222px);
  }
}
.c-title1 span {
  color: var(--color-secondary-main);
}
.c-title1--sub {
  background-color: var(--color-primary-sub);
}

.c-title2 {
  font-size: 6.4vw;
  font-weight: 700;
  letter-spacing: 0.06em;
}
@media print, screen and (min-width:769px) {
  .c-title2 {
    font-size: clamp(17.0666666667px, 2.2222222222vw, 35.5555555556px);
  }
}
.c-title2--center {
  text-align: center;
}

.c-typography {
  font-size: 4.2666666667vw;
  line-height: var(--line-height-m);
  margin-top: 5.3333333333vw;
}
@media print, screen and (min-width:769px) {
  .c-typography {
    font-size: clamp(8.5333333333px, 1.1111111111vw, 17.7777777778px);
    margin-top: clamp(10.6666666667px, 1.3888888889vw, 22.2222222222px);
  }
}
@media print, screen and (min-width:769px) {
  .c-typography--center {
    text-align: center;
  }
}

.c-staff-list {
  gap: 8vw;
  display: grid;
  grid-template-columns: 1fr;
}
@media print, screen and (min-width:769px) {
  .c-staff-list {
    gap: clamp(25.6px, 3.3333333333vw, 53.3333333333px) clamp(22.9333333333px, 2.9861111111vw, 47.7777777778px);
    display: grid;
    grid-template-columns: repeat(3, 1fr);
  }
}
.c-staff-list__item {
  margin: 0 auto;
  max-width: 65.6vw;
  position: relative;
}
@media print, screen and (min-width:769px) {
  .c-staff-list__item {
    margin: 0;
    max-width: auto;
  }
}
.c-staff-list__link {
  display: block;
}
@media print, screen and (min-width:769px) {
  .c-staff-list__link {
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
  }
  .c-staff-list__link:hover {
    opacity: 0.7;
  }
}
.c-staff-list__image img {
  aspect-ratio: 286/368;
  border-radius: 8vw;
  -o-object-fit: cover;
  object-fit: cover;
}
@media print, screen and (min-width:769px) {
  .c-staff-list__image img {
    aspect-ratio: 300/379;
    border-radius: clamp(16px, 2.0833333333vw, 33.3333333333px);
  }
}
.c-staff-list__lead {
  position: absolute;
  top: 69.3333333333vw;
}
@media print, screen and (min-width:769px) {
  .c-staff-list__lead {
    top: clamp(167.4666666667px, 21.8055555556vw, 348.8888888889px);
  }
}
.c-staff-list__lead span {
  background-color: var(--color-primary-sub);
  display: block;
  font-size: 4.2666666667vw;
  font-weight: 700;
  letter-spacing: -0.02em;
  line-height: var(--line-height-s);
  margin-top: 1.6vw;
  padding: 1.8666666667vw 2.1333333333vw;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media print, screen and (min-width:769px) {
  .c-staff-list__lead span {
    font-size: clamp(10.6666666667px, 1.3888888889vw, 22.2222222222px);
    margin-top: clamp(3.2px, 0.4166666667vw, 6.6666666667px);
    padding: clamp(2.6666666667px, 0.3472222222vw, 5.5555555556px) clamp(3.7333333333px, 0.4861111111vw, 7.7777777778px);
  }
}
.c-staff-list__detail {
  gap: 3.4666666667vw;
  display: grid;
  grid-template-areas: "role year" "name name";
  grid-template-columns: auto auto;
  grid-template-rows: auto auto;
  margin-top: 8vw;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media print, screen and (min-width:769px) {
  .c-staff-list__detail {
    gap: clamp(8.5333333333px, 1.1111111111vw, 17.7777777778px) clamp(4.8px, 0.625vw, 10px);
    margin-top: clamp(18.1333333333px, 2.3611111111vw, 37.7777777778px);
  }
}
.c-staff-list__role {
  display: block;
  font-size: 3.2vw;
  font-weight: 700;
  grid-area: role;
  line-height: var(--line-height-s);
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media print, screen and (min-width:769px) {
  .c-staff-list__role {
    font-size: clamp(8.5333333333px, 1.1111111111vw, 17.7777777778px);
  }
}
.c-staff-list__year {
  display: block;
  font-size: 3.2vw;
  font-weight: 700;
  grid-area: year;
  line-height: var(--line-height-s);
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media print, screen and (min-width:769px) {
  .c-staff-list__year {
    font-size: clamp(8.5333333333px, 1.1111111111vw, 17.7777777778px);
  }
}
.c-staff-list__name {
  font-size: 5.3333333333vw;
  font-weight: 700;
  grid-area: name;
  line-height: var(--line-height-s);
}
@media print, screen and (min-width:769px) {
  .c-staff-list__name {
    font-size: clamp(12.8px, 1.6666666667vw, 26.6666666667px);
  }
}

.c-fv {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  height: 66.6666666667vw;
  margin-top: 14.9333333333vw;
}
.post-type-archive-staff .c-fv {
  background-image: url(../images/staff/fv.webp);
}
.blog .c-fv {
  background-image: url(../images/blog/fv.webp);
}
.details .c-fv {
  background-image: url(../images/details/fv.webp);
}
.faq .c-fv {
  background-image: url(../images/faq/fv.webp);
}
.about-us .c-fv {
  background-image: url(../images/about-us/fv.webp);
}
.career .c-fv {
  background-image: url(../images/career/fv.webp);
}
.benefits .c-fv {
  background-image: url(../images/benefits/fv.webp);
}
@media print, screen and (min-width:769px) {
  .c-fv {
    background-size: cover;
    height: clamp(180.8px, 23.5416666667vw, 376.6666666667px);
    margin-top: clamp(62.9333333333px, 8.1944444444vw, 131.1111111111px);
  }
}
.c-fv__inner {
  gap: 2.6666666667vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  height: 100%;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 0 4.2666666667vw;
}
@media print, screen and (min-width:769px) {
  .c-fv__inner {
    gap: clamp(9.6px, 1.25vw, 20px);
    margin: 0 auto;
    max-width: clamp(546.1333333333px, 71.1111111111vw, 1137.7777777778px);
    padding: 0 clamp(18.1333333333px, 2.3611111111vw, 37.7777777778px);
  }
}
.c-fv__main {
  background-color: var(--color-00-white);
  display: block;
  font-family: "Viga", sans-serif;
  font-size: 13.3333333333vw;
  font-style: normal;
  font-weight: 400;
  line-height: var(--line-height-s);
  padding: 0.8vw 2.6666666667vw;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media print, screen and (min-width:769px) {
  .c-fv__main {
    font-size: clamp(34.1333333333px, 4.4444444444vw, 71.1111111111px);
    padding: clamp(1.6px, 0.2083333333vw, 3.3333333333px) clamp(5.3333333333px, 0.6944444444vw, 11.1111111111px);
  }
}
.c-fv__sub {
  background-color: var(--color-00-white);
  display: block;
  font-size: 5.3333333333vw;
  font-weight: 700;
  margin-top: 2.6666666667vw;
  padding: 0.8vw 2.6666666667vw 1.3333333333vw 2.6666666667vw;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media print, screen and (min-width:769px) {
  .c-fv__sub {
    font-size: clamp(12.8px, 1.6666666667vw, 26.6666666667px);
    margin-top: clamp(9.6px, 1.25vw, 20px);
    padding: clamp(1.6px, 0.2083333333vw, 3.3333333333px) clamp(5.3333333333px, 0.6944444444vw, 11.1111111111px) clamp(2.6666666667px, 0.3472222222vw, 5.5555555556px) clamp(5.3333333333px, 0.6944444444vw, 11.1111111111px);
  }
}
.c-fv__lead {
  background-color: var(--color-00-white);
  color: var(--color-primary-main);
  font-size: 3.7333333333vw;
  font-weight: 700;
  padding: 0.8vw 2.6666666667vw;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media print, screen and (min-width:769px) {
  .c-fv__lead {
    font-size: clamp(8.5333333333px, 1.1111111111vw, 17.7777777778px);
    padding: clamp(1.6px, 0.2083333333vw, 3.3333333333px) clamp(5.3333333333px, 0.6944444444vw, 11.1111111111px);
  }
}

.c-blog-list {
  gap: 2.6666666667vw;
  display: grid;
  grid-template-columns: 1fr;
  margin-top: 12.8vw;
}
@media print, screen and (min-width:769px) {
  .c-blog-list {
    gap: clamp(12.2666666667px, 1.5972222222vw, 25.5555555556px) clamp(27.7333333333px, 3.6111111111vw, 57.7777777778px);
    grid-template-columns: repeat(2, 1fr);
    margin-top: clamp(32px, 4.1666666667vw, 66.6666666667px);
  }
}
.c-blog-list__link {
  gap: 4.8vw;
  background-color: var(--color-00-white);
  border-radius: 2.6666666667vw;
  display: grid;
  grid-template-columns: 32vw 1fr;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}
@media print, screen and (min-width:769px) {
  .c-blog-list__link {
    gap: clamp(12.2666666667px, 1.5972222222vw, 25.5555555556px);
    border-radius: clamp(5.3333333333px, 0.6944444444vw, 11.1111111111px);
    grid-template-columns: clamp(83.2px, 10.8333333333vw, 173.3333333333px) 1fr;
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
  }
  .c-blog-list__link:hover {
    opacity: 0.7;
  }
}
.c-blog-list__image {
  margin-bottom: 0;
}
.c-blog-list__image img {
  aspect-ratio: 1/1;
  border-radius: 2.6666666667vw 0vw 0vw 2.6666666667vw;
  -o-object-fit: cover;
  object-fit: cover;
  width: 100%;
}
@media print, screen and (min-width:769px) {
  .c-blog-list__image img {
    aspect-ratio: 158/182;
    border-radius: clamp(5.3333333333px, 0.6944444444vw, 11.1111111111px) clamp(0px, 0vw, 0px) clamp(0px, 0vw, 0px) clamp(5.3333333333px, 0.6944444444vw, 11.1111111111px);
  }
}
.c-blog-list__content {
  gap: 2.1333333333vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  height: 100%;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 2.1333333333vw 2.1333333333vw 2.1333333333vw 0;
}
@media print, screen and (min-width:769px) {
  .c-blog-list__content {
    gap: clamp(5.3333333333px, 0.6944444444vw, 11.1111111111px);
    padding: clamp(10.6666666667px, 1.3888888889vw, 22.2222222222px) clamp(12.2666666667px, 1.5972222222vw, 25.5555555556px) clamp(10.6666666667px, 1.3888888889vw, 22.2222222222px) 0;
  }
}
.c-blog-list__category {
  gap: 1.0666666667vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 3.2vw;
  line-height: var(--line-height-s);
}
@media print, screen and (min-width:769px) {
  .c-blog-list__category {
    gap: clamp(2.1333333333px, 0.2777777778vw, 4.4444444444px);
    font-size: clamp(7.4666666667px, 0.9722222222vw, 15.5555555556px);
  }
}
.c-blog-list__category::before {
  background-image: url("../images/icon-blog.svg");
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  display: block;
  height: 3.2vw;
  width: 3.2vw;
}
@media print, screen and (min-width:769px) {
  .c-blog-list__category::before {
    height: clamp(7.4666666667px, 0.9722222222vw, 15.5555555556px);
    width: clamp(7.4666666667px, 0.9722222222vw, 15.5555555556px);
  }
}
.c-blog-list__title {
  text-underline-offset: 0.5333333333vw;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  display: -webkit-box;
  font-size: 3.7333333333vw;
  font-weight: 700;
  line-height: var(--line-height-m);
  overflow: hidden;
  text-decoration: underline;
  text-overflow: ellipsis;
}
@media print, screen and (min-width:769px) {
  .c-blog-list__title {
    text-underline-offset: clamp(1.0666666667px, 0.1388888889vw, 2.2222222222px);
    font-size: clamp(9.6px, 1.25vw, 20px);
    margin-top: clamp(5.3333333333px, 0.6944444444vw, 11.1111111111px);
  }
}
.c-blog-list__date {
  font-size: 3.2vw;
  line-height: var(--line-height-s);
  margin-top: auto;
}
@media print, screen and (min-width:769px) {
  .c-blog-list__date {
    font-size: clamp(6.4px, 0.8333333333vw, 13.3333333333px);
  }
}
.blog .c-blog-list .c-blog-list__link {
  background-color: var(--color-primary-base);
}

.c-list {
  border-top: 0.2666666667vw dotted var(--color-00-black);
  margin-top: 6.4vw;
}
@media print, screen and (min-width:769px) {
  .c-list {
    border-top: none;
    margin-top: clamp(60.2666666667px, 7.8472222222vw, 125.5555555556px);
  }
}
.c-list__wrap {
  gap: 2.1333333333vw;
  border-bottom: 0.2666666667vw dotted var(--color-00-black);
  display: grid;
  grid-template-columns: 1fr;
  padding: 4.2666666667vw 0;
}
@media print, screen and (min-width:769px) {
  .c-list__wrap {
    gap: clamp(16px, 2.0833333333vw, 33.3333333333px);
    border-bottom: clamp(0.5333333333px, 0.0694444444vw, 1.1111111111px) dotted var(--color-00-black);
    grid-template-columns: clamp(106.6666666667px, 13.8888888889vw, 222.2222222222px) 1fr;
    padding: clamp(19.2px, 2.5vw, 40px) 0;
  }
}
.c-list__wrap:first-child {
  padding-top: 0;
}
.c-list__title {
  font-size: 4.2666666667vw;
  font-weight: 700;
}
@media print, screen and (min-width:769px) {
  .c-list__title {
    font-size: clamp(8.5333333333px, 1.1111111111vw, 17.7777777778px);
  }
}
.c-list__description {
  font-size: 4.2666666667vw;
}
@media print, screen and (min-width:769px) {
  .c-list__description {
    font-size: clamp(8.5333333333px, 1.1111111111vw, 17.7777777778px);
  }
}
.c-list__description ul {
  list-style: disc;
  padding-left: 6.4vw;
}
@media print, screen and (min-width:769px) {
  .c-list__description ul {
    padding-left: clamp(12.8px, 1.6666666667vw, 26.6666666667px);
  }
}

.c-page-navigation {
  margin-top: 6.4vw;
}
@media print, screen and (min-width:769px) {
  .c-page-navigation {
    margin-top: clamp(60.2666666667px, 7.8472222222vw, 125.5555555556px);
  }
}
.c-page-navigation__list {
  gap: 6.6666666667vw;
  display: grid;
  grid-template-columns: 1fr;
  margin-top: 6.4vw;
}
@media print, screen and (min-width:769px) {
  .c-page-navigation__list {
    gap: clamp(26.1333333333px, 3.4027777778vw, 54.4444444444px);
    grid-template-columns: repeat(3, 1fr);
    margin-top: clamp(37.3333333333px, 4.8611111111vw, 77.7777777778px);
  }
}
.c-page-navigation__link {
  background-color: var(--color-primary-base);
  border: 0.2666666667vw solid var(--color-00-black);
  border-radius: 10.6666666667vw;
  display: block;
  padding: 4.2666666667vw;
}
@media print, screen and (min-width:769px) {
  .c-page-navigation__link {
    border: clamp(0.5333333333px, 0.0694444444vw, 1.1111111111px) solid var(--color-00-black);
    border-radius: 10.6666666667vw;
    padding: clamp(9.6px, 1.25vw, 20px);
    -webkit-transition: background-color 300ms;
    transition: background-color 300ms;
  }
  .c-page-navigation__link:hover {
    background-color: var(--color-00-black);
  }
  .c-page-navigation__link:hover span {
    color: var(--color-00-white);
  }
  .c-page-navigation__link:hover span::after {
    background-image: url(../images/icon-allow-white.svg);
  }
}
.c-page-navigation__link span {
  gap: 4.2666666667vw;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 4.8vw;
  font-weight: 700;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  line-height: var(--line-height-s);
}
@media print, screen and (min-width:769px) {
  .c-page-navigation__link span {
    gap: clamp(7.4666666667px, 0.9722222222vw, 15.5555555556px);
    font-size: clamp(10.6666666667px, 1.3888888889vw, 22.2222222222px);
    -webkit-transition: color 300ms;
    transition: color 300ms;
  }
}
.c-page-navigation__link span::after {
  background-image: url(../images/icon-allow.svg);
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  display: block;
  height: 4.8vw;
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
  width: 4.8vw;
}
@media print, screen and (min-width:769px) {
  .c-page-navigation__link span::after {
    height: clamp(10.6666666667px, 1.3888888889vw, 22.2222222222px);
    -webkit-transition: background-image 300ms;
    transition: background-image 300ms;
    width: clamp(10.6666666667px, 1.3888888889vw, 22.2222222222px);
  }
}

/* ==========================================================================
Project
========================================================================== */
.p-top-fv {
  overflow: hidden;
  position: relative;
}
.p-top-fv__slider {
  height: 177.8666666667vw;
  margin: 0 auto;
  overflow: hidden;
  position: relative;
  width: 100%;
}
@media print, screen and (min-width:769px) {
  .p-top-fv__slider {
    height: clamp(438.9333333333px, 57.1527777778vw, 914.4444444444px);
  }
}
.p-top-fv__item {
  background-repeat: no-repeat;
  background-size: cover;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
.p-top-fv__item-01 {
  -webkit-animation: slide-animation-01 12s infinite;
  animation: slide-animation-01 12s infinite;
  background-image: url("../images/top/fv01.webp");
  background-position: -146.6666666667vw center;
}
@media print, screen and (min-width:769px) {
  .p-top-fv__item-01 {
    background-position: center;
  }
}
.p-top-fv__item-02 {
  -webkit-animation: slide-animation-02 12s infinite;
  animation: slide-animation-02 12s infinite;
  background-image: url("../images/top/fv02.webp");
  background-position: center;
}
.p-top-fv__title {
  bottom: 45.3333333333vw;
  color: var(--color-00-white);
  -webkit-filter: drop-shadow(0 1.0666666667vw 1.0666666667vw rgba(0, 0, 0, 0.25));
  filter: drop-shadow(0 1.0666666667vw 1.0666666667vw rgba(0, 0, 0, 0.25));
  font-family: "Viga", sans-serif;
  font-size: 12.8vw;
  font-style: normal;
  font-weight: 400;
  left: 3.2vw;
  letter-spacing: 0;
  line-height: 1.2;
  position: absolute;
  z-index: 4;
}
@media print, screen and (min-width:769px) {
  .p-top-fv__title {
    bottom: clamp(196.2666666667px, 25.5555555556vw, 408.8888888889px);
    -webkit-filter: drop-shadow(0 clamp(2.1333333333px, 0.2777777778vw, 4.4444444444px) clamp(2.1333333333px, 0.2777777778vw, 4.4444444444px) rgba(0, 0, 0, 0.25));
    filter: drop-shadow(0 clamp(2.1333333333px, 0.2777777778vw, 4.4444444444px) clamp(2.1333333333px, 0.2777777778vw, 4.4444444444px) rgba(0, 0, 0, 0.25));
    font-size: clamp(51.2px, 6.6666666667vw, 106.6666666667px);
    left: clamp(35.2px, 4.5833333333vw, 73.3333333333px);
    position: absolute;
    z-index: 4;
  }
}
.p-top-fv__subtitle {
  background-color: var(--color-00-black);
  bottom: 32vw;
  padding: 1.6vw 3.2vw;
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media print, screen and (min-width:769px) {
  .p-top-fv__subtitle {
    bottom: clamp(117.3333333333px, 15.2777777778vw, 244.4444444444px);
    padding: clamp(9.0666666667px, 1.1805555556vw, 18.8888888889px) clamp(19.7333333333px, 2.5694444444vw, 41.1111111111px) clamp(9.0666666667px, 1.1805555556vw, 18.8888888889px) clamp(35.2px, 4.5833333333vw, 73.3333333333px);
  }
}
.p-top-fv__subtitle span {
  color: var(--color-00-white);
  font-size: 3.2vw;
  font-weight: 700;
  line-height: var(--line-height-s);
}
@media print, screen and (min-width:769px) {
  .p-top-fv__subtitle span {
    font-size: clamp(12.8px, 1.6666666667vw, 26.6666666667px);
  }
}
.p-top-fv__subtitle::after {
  background-color: var(--color-00-black);
  clip-path: polygon(0 0, 100% 0, 0% 100%, 0 100%);
  content: "";
  display: block;
  height: 100%;
  position: absolute;
  right: -3.2vw;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 3.4666666667vw;
}
@media print, screen and (min-width:769px) {
  .p-top-fv__subtitle::after {
    right: clamp(-32.2222222222px, -2.0138888889vw, -15.4666666667px);
    width: clamp(16px, 2.0833333333vw, 33.3333333333px);
  }
}
.p-top-fv__news {
  border-radius: 13.3333333333vw;
  bottom: 12vw;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: grid;
  grid-template-columns: 13.8666666667vw 1fr;
  height: 12.8vw;
  left: 50%;
  margin: 0 auto;
  position: absolute;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  width: 93.6vw;
}
@media print, screen and (min-width:769px) {
  .p-top-fv__news {
    background-color: var(--color-00-white);
    border-radius: clamp(26.6666666667px, 3.4722222222vw, 55.5555555556px);
    bottom: clamp(53.3333333333px, 6.9444444444vw, 111.1111111111px);
    grid-template-columns: clamp(99.2px, 12.9166666667vw, 206.6666666667px) 1fr clamp(99.2px, 12.9166666667vw, 206.6666666667px);
    height: clamp(33.0666666667px, 4.3055555556vw, 68.8888888889px);
    left: calc(50% - clamp(9.6px, 1.25vw, 20px));
    width: clamp(673.6px, 87.7083333333vw, 1403.3333333333px);
  }
  .p-top-fv__news:hover .p-top-fv__news-title {
    opacity: 0.7;
  }
  .p-top-fv__news:hover .p-top-fv__news-text {
    opacity: 0.7;
  }
  .p-top-fv__news:hover .p-top-fv__news-more {
    opacity: 0.7;
  }
  .p-top-fv__news:hover .p-top-fv__news-more::after {
    opacity: 0.7;
  }
}
.p-top-fv__news-title {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background-color: var(--color-00-black);
  border-radius: 13.3333333333vw 0 0 13.3333333333vw;
  color: var(--color-00-white);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-family: "Viga", sans-serif;
  font-size: 2.6666666667vw;
  font-style: normal;
  font-weight: 400;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  line-height: var(--line-height-s);
  text-align: center;
}
@media print, screen and (min-width:769px) {
  .p-top-fv__news-title {
    border-radius: clamp(26.6666666667px, 3.4722222222vw, 55.5555555556px) 0 0 clamp(26.6666666667px, 3.4722222222vw, 55.5555555556px);
    font-size: clamp(12.8px, 1.6666666667vw, 26.6666666667px);
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
  }
}
.p-top-fv__news-text {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background-color: var(--color-00-white);
  border-bottom: 0.2666666667vw solid var(--color-00-black);
  border-radius: 0 13.3333333333vw 13.3333333333vw 0;
  border-top: 0.2666666667vw solid var(--color-00-black);
  color: var(--color-00-black);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 3.2vw;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  line-height: 1.2;
  padding-left: 2.6666666667vw;
}
@media print, screen and (min-width:769px) {
  .p-top-fv__news-text {
    border-radius: 0;
    border-width: clamp(0.5333333333px, 0.0694444444vw, 1.1111111111px);
    font-size: clamp(8.5333333333px, 1.1111111111vw, 17.7777777778px);
    padding-left: clamp(48px, 6.25vw, 100px);
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
  }
}
.p-top-fv__news-more {
  display: none;
}
@media print, screen and (min-width:769px) {
  .p-top-fv__news-more {
    gap: clamp(3.2px, 0.4166666667vw, 6.6666666667px);
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background-color: var(--color-00-white);
    border-bottom: clamp(0.5333333333px, 0.0694444444vw, 1.1111111111px) solid var(--color-00-black);
    border-left: clamp(0.5333333333px, 0.0694444444vw, 1.1111111111px) solid var(--color-00-white);
    border-radius: 0 clamp(26.6666666667px, 3.4722222222vw, 55.5555555556px) clamp(26.6666666667px, 3.4722222222vw, 55.5555555556px) 0;
    border-right: clamp(0.5333333333px, 0.0694444444vw, 1.1111111111px) solid var(--color-00-black);
    border-top: clamp(0.5333333333px, 0.0694444444vw, 1.1111111111px) solid var(--color-00-black);
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-family: "Viga", sans-serif;
    font-size: clamp(7.4666666667px, 0.9722222222vw, 15.5555555556px);
    font-style: normal;
    font-weight: 400;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    line-height: var(--line-height-s);
    -webkit-transform: translateX(clamp(-1.1111111111px, -0.0694444444vw, -0.5333333333px));
    transform: translateX(clamp(-1.1111111111px, -0.0694444444vw, -0.5333333333px));
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
    width: calc(100% + clamp(0.5333333333px, 0.0694444444vw, 1.1111111111px));
  }
  .p-top-fv__news-more::after {
    background-image: url(../images/icon-arrow2.svg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    display: block;
    height: clamp(5.3333333333px, 0.6944444444vw, 11.1111111111px);
    -webkit-transition: border-color 300ms ease;
    transition: border-color 300ms ease;
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
    width: clamp(5.3333333333px, 0.6944444444vw, 11.1111111111px);
  }
}
@-webkit-keyframes slide-animation-01 {
  0% {
    opacity: 0;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
  10% {
    opacity: 1;
  }
  40% {
    opacity: 1;
  }
  51% {
    opacity: 0;
    -webkit-transform: scale(1.15);
    transform: scale(1.15);
  }
  90% {
    opacity: 0;
  }
  100% {
    opacity: 0;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}
@keyframes slide-animation-01 {
  0% {
    opacity: 0;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
  10% {
    opacity: 1;
  }
  40% {
    opacity: 1;
  }
  51% {
    opacity: 0;
    -webkit-transform: scale(1.15);
    transform: scale(1.15);
  }
  90% {
    opacity: 0;
  }
  100% {
    opacity: 0;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}
@-webkit-keyframes slide-animation-02 {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 0;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
  60% {
    opacity: 1;
  }
  90% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
  }
}
@keyframes slide-animation-02 {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 0;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
  60% {
    opacity: 1;
  }
  90% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
  }
}

.p-top-slider__inner {
  margin: 2.6666666667vw auto 0;
  position: relative;
}
@media print, screen and (min-width:769px) {
  .p-top-slider__inner {
    margin: clamp(21.3333333333px, 2.7777777778vw, 44.4444444444px) auto 0;
  }
}
.p-top-slider__title {
  bottom: -2.6666666667vw;
  left: 50%;
  position: absolute;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  z-index: 1;
}
@media print, screen and (min-width:769px) {
  .p-top-slider__title {
    bottom: clamp(12.8px, 1.6666666667vw, 26.6666666667px);
  }
}
.p-top-slider__title span {
  margin-inline: auto;
  background-color: var(--color-00-white);
  display: block;
  font-size: 6.4vw;
  font-weight: 700;
  line-height: var(--line-height-s);
  margin-top: 1.8666666667vw;
  padding: 3.2vw 3.4666666667vw;
  text-align: center;
  white-space: nowrap;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media print, screen and (min-width:769px) {
  .p-top-slider__title span {
    font-size: clamp(21.3333333333px, 2.7777777778vw, 44.4444444444px);
    margin-top: clamp(3.7333333333px, 0.4861111111vw, 7.7777777778px);
    padding: clamp(8.5333333333px, 1.1111111111vw, 17.7777777778px) clamp(6.4px, 0.8333333333vw, 13.3333333333px);
  }
}
.p-top-slider__list {
  gap: 4.2666666667vw;
}
@media print, screen and (min-width:769px) {
  .p-top-slider__list {
    gap: clamp(18.1333333333px, 2.3611111111vw, 37.7777777778px);
  }
}
.p-top-slider__track {
  overflow: visible;
  -webkit-transform: translateX(-4.2666666667vw);
  transform: translateX(-4.2666666667vw);
}
@media print, screen and (min-width:769px) {
  .p-top-slider__track {
    -webkit-transform: translateX(clamp(-37.7777777778px, -2.3611111111vw, -18.1333333333px));
    transform: translateX(clamp(-37.7777777778px, -2.3611111111vw, -18.1333333333px));
  }
}
.p-top-slider__item {
  margin-top: 0;
  width: 72vw !important;
}
@media print, screen and (min-width:769px) {
  .p-top-slider__item {
    width: clamp(269.8666666667px, 35.1388888889vw, 562.2222222222px) !important;
  }
}
.p-top-slider__item img {
  border-radius: 16vw;
}
@media print, screen and (min-width:769px) {
  .p-top-slider__item img {
    border-radius: clamp(32px, 4.1666666667vw, 66.6666666667px);
  }
}
.p-top-slider__item:nth-child(even) {
  margin-top: 6.9333333333vw;
}
@media print, screen and (min-width:769px) {
  .p-top-slider__item:nth-child(even) {
    margin-top: clamp(18.6666666667px, 2.4305555556vw, 38.8888888889px);
  }
}
.p-top-slider__item:not(.splide__slide--clone):nth-child(even) {
  margin-top: 6.9333333333vw;
}
@media print, screen and (min-width:769px) {
  .p-top-slider__item:not(.splide__slide--clone):nth-child(even) {
    margin-top: clamp(18.6666666667px, 2.4305555556vw, 38.8888888889px);
  }
}

.p-top-lead__inner {
  background-image: url(../images/top/lead.webp);
  background-position: top center;
  background-repeat: no-repeat;
  background-size: contain;
  margin-top: 16vw;
}
@media print, screen and (min-width:769px) {
  .p-top-lead__inner {
    margin-top: clamp(43.7333333333px, 5.6944444444vw, 91.1111111111px);
  }
}
.p-top-lead__text {
  font-size: 4.8vw;
  font-weight: 700;
  line-height: 2.5;
  margin-top: 10.6666666667vw;
  text-align: center;
}
@media print, screen and (min-width:769px) {
  .p-top-lead__text {
    font-size: clamp(19.2px, 2.5vw, 40px);
    line-height: var(--line-height-l);
    margin-top: clamp(27.7333333333px, 3.6111111111vw, 57.7777777778px);
  }
}
.p-top-lead__text:first-child {
  margin-top: 0;
}
.p-top-lead__button {
  margin: 10.6666666667vw auto 0;
  width: 73.8666666667vw;
}
@media print, screen and (min-width:769px) {
  .p-top-lead__button {
    margin: clamp(32px, 4.1666666667vw, 66.6666666667px) auto 0;
    width: clamp(189.3333333333px, 24.6527777778vw, 394.4444444444px);
  }
}

.p-top-member__inner {
  margin-top: 19.7333333333vw;
}
@media print, screen and (min-width:769px) {
  .p-top-member__inner {
    margin: clamp(61.8666666667px, 8.0555555556vw, 128.8888888889px) auto 0;
    max-width: clamp(546.1333333333px, 71.1111111111vw, 1137.7777777778px);
    padding: 0 clamp(18.1333333333px, 2.3611111111vw, 37.7777777778px);
    position: relative;
  }
}
.p-top-member .p-top-title {
  padding-inline: 4.2666666667vw;
}
@media print, screen and (min-width:769px) {
  .p-top-member .p-top-title {
    padding-inline: 0;
  }
}
@media print, screen and (min-width:769px) {
  .p-top-member .p-top-title__en {
    left: clamp(-183.3333333333px, -11.4583333333vw, -88px);
  }
}
.p-top-member .c-typography {
  padding-inline: 4.2666666667vw;
}
@media print, screen and (min-width:769px) {
  .p-top-member .c-typography {
    padding-inline: clamp(0px, 0vw, 0px);
  }
}
.p-top-member__wrap {
  margin-top: 13.3333333333vw;
}
@media print, screen and (min-width:769px) {
  .p-top-member__wrap {
    margin-top: clamp(21.3333333333px, 2.7777777778vw, 44.4444444444px);
    width: calc(100% + clamp(221.8666666667px, 28.8888888889vw, 462.2222222222px));
  }
}
.p-top-member__slider {
  gap: 8vw;
}
@media print, screen and (min-width:769px) {
  .p-top-member__slider {
    gap: 0;
  }
}
.p-top-member__item {
  margin-top: 0;
  position: relative;
  width: 65.6vw !important;
}
@media print, screen and (min-width:769px) {
  .p-top-member__item {
    margin-right: clamp(27.7333333333px, 3.6111111111vw, 57.7777777778px);
    width: clamp(160px, 20.8333333333vw, 333.3333333333px) !important;
  }
}
.p-top-member__item:nth-child(even) {
  margin-top: 6.9333333333vw;
}
@media print, screen and (min-width:769px) {
  .p-top-member__item:nth-child(even) {
    margin-top: clamp(19.2px, 2.5vw, 40px);
  }
}
.p-top-member__item:not(.splide__slide--clone):nth-child(even) {
  margin-top: 6.9333333333vw;
}
@media print, screen and (min-width:769px) {
  .p-top-member__item:not(.splide__slide--clone):nth-child(even) {
    margin-top: clamp(19.2px, 2.5vw, 40px);
  }
}
.p-top-member__link {
  display: block;
}
@media print, screen and (min-width:769px) {
  .p-top-member__link {
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
  }
  .p-top-member__link:hover {
    opacity: 0.7;
  }
}
.p-top-member__image img {
  aspect-ratio: 286/368;
  border-radius: 8vw;
  -o-object-fit: cover;
  object-fit: cover;
}
@media print, screen and (min-width:769px) {
  .p-top-member__image img {
    border-radius: clamp(16px, 2.0833333333vw, 33.3333333333px);
  }
}
.p-top-member__lead {
  position: absolute;
  top: 69.3333333333vw;
}
@media print, screen and (min-width:769px) {
  .p-top-member__lead {
    top: clamp(176px, 22.9166666667vw, 366.6666666667px);
  }
}
.p-top-member__lead span {
  background-color: var(--color-primary-sub);
  display: block;
  font-size: 4.2666666667vw;
  font-weight: 700;
  line-height: var(--line-height-s);
  margin-top: 1.6vw;
  padding: 1.8666666667vw 2.1333333333vw;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media print, screen and (min-width:769px) {
  .p-top-member__lead span {
    font-size: clamp(10.6666666667px, 1.3888888889vw, 22.2222222222px);
    margin-top: clamp(3.2px, 0.4166666667vw, 6.6666666667px);
    padding: clamp(2.6666666667px, 0.3472222222vw, 5.5555555556px) clamp(3.7333333333px, 0.4861111111vw, 7.7777777778px);
  }
}
.p-top-member__detail {
  gap: 3.4666666667vw;
  display: grid;
  grid-template-areas: "role year" "name name";
  grid-template-columns: auto auto;
  grid-template-rows: auto auto;
  margin-top: 8vw;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media print, screen and (min-width:769px) {
  .p-top-member__detail {
    gap: clamp(8.5333333333px, 1.1111111111vw, 17.7777777778px) clamp(4.8px, 0.625vw, 10px);
    margin-top: clamp(18.1333333333px, 2.3611111111vw, 37.7777777778px);
  }
}
.p-top-member__role {
  display: block;
  font-size: 3.2vw;
  font-weight: 700;
  grid-area: role;
  line-height: var(--line-height-s);
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media print, screen and (min-width:769px) {
  .p-top-member__role {
    font-size: clamp(8.5333333333px, 1.1111111111vw, 17.7777777778px);
  }
}
.p-top-member__year {
  display: block;
  font-size: 3.2vw;
  font-weight: 700;
  grid-area: year;
  line-height: var(--line-height-s);
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media print, screen and (min-width:769px) {
  .p-top-member__year {
    font-size: clamp(8.5333333333px, 1.1111111111vw, 17.7777777778px);
  }
}
.p-top-member__name {
  font-size: 5.3333333333vw;
  font-weight: 700;
  grid-area: name;
  line-height: var(--line-height-s);
}
@media print, screen and (min-width:769px) {
  .p-top-member__name {
    font-size: clamp(12.8px, 1.6666666667vw, 26.6666666667px);
  }
}
.p-top-member__button {
  margin: 10.6666666667vw auto 0;
  width: 73.8666666667vw;
}
@media print, screen and (min-width:769px) {
  .p-top-member__button {
    margin: clamp(32px, 4.1666666667vw, 66.6666666667px) auto 0;
    width: clamp(189.3333333333px, 24.6527777778vw, 394.4444444444px);
  }
}
.p-top-member .splide__arrows {
  display: none;
}
@media print, screen and (min-width:769px) {
  .p-top-member .splide__arrows {
    gap: clamp(10.6666666667px, 1.3888888889vw, 22.2222222222px);
    bottom: clamp(-157.7777777778px, -9.8611111111vw, -75.7333333333px);
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
    height: clamp(37.3333333333px, 4.8611111111vw, 77.7777777778px);
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    position: absolute;
    right: 0;
    -webkit-transform: translateX(-294%);
    transform: translateX(-294%);
  }
  .p-top-member .splide__arrows .splide__arrow {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border: clamp(0.5333333333px, 0.0694444444vw, 1.1111111111px) solid var(--color-00-black);
    border-radius: 50%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: clamp(30.9333333333px, 4.0277777778vw, 64.4444444444px);
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-transition: -webkit-transform 300ms;
    transition: -webkit-transform 300ms;
    transition: transform 300ms;
    transition: transform 300ms, -webkit-transform 300ms;
    width: clamp(30.9333333333px, 4.0277777778vw, 64.4444444444px);
  }
  .p-top-member .splide__arrows .splide__arrow img {
    -webkit-transition: -webkit-transform 300ms;
    transition: -webkit-transform 300ms;
    transition: transform 300ms;
    transition: transform 300ms, -webkit-transform 300ms;
    width: clamp(9.6px, 1.25vw, 20px);
  }
  .p-top-member .splide__arrows .splide__arrow--prev img {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
  }
  .p-top-member .splide__arrows .splide__arrow:hover {
    -webkit-transform: scale(1.4);
    transform: scale(1.4);
  }
}
.p-top-member__noarticle {
  font-size: 4.2666666667vw;
}
@media print, screen and (min-width:769px) {
  .p-top-member__noarticle {
    font-size: clamp(8.5333333333px, 1.1111111111vw, 17.7777777778px);
  }
}

.p-top-blog {
  background-color: var(--color-primary-base);
}
@media print, screen and (min-width:769px) {
  .p-top-blog .p-top-title__en {
    left: clamp(-52.2222222222px, -3.2638888889vw, -25.0666666667px);
  }
}
.p-top-blog__inner {
  padding: 13.8666666667vw 4.2666666667vw 8.8vw;
}
@media print, screen and (min-width:769px) {
  .p-top-blog__inner {
    padding: clamp(27.7333333333px, 3.6111111111vw, 57.7777777778px) clamp(18.1333333333px, 2.3611111111vw, 37.7777777778px) clamp(42.6666666667px, 5.5555555556vw, 88.8888888889px);
    position: relative;
  }
}
.p-top-blog__button-wrap {
  margin-top: 13.8666666667vw;
}
@media print, screen and (min-width:769px) {
  .p-top-blog__button-wrap {
    margin-top: 0;
    position: absolute;
    right: clamp(28.8px, 3.75vw, 60px);
    top: clamp(42.6666666667px, 5.5555555556vw, 88.8888888889px);
  }
}
.p-top-blog__button {
  gap: 3.2vw;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media print, screen and (min-width:769px) {
  .p-top-blog__button {
    gap: clamp(7.4666666667px, 0.9722222222vw, 15.5555555556px);
    height: clamp(37.3333333333px, 4.8611111111vw, 77.7777777778px);
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
  }
  .p-top-blog__button:hover .p-top-blog__arrow {
    -webkit-transform: scale(1.4);
    transform: scale(1.4);
  }
}
.p-top-blog__button span {
  text-underline-offset: 0.5333333333vw;
  font-family: "Viga", sans-serif;
  font-size: 4.2666666667vw;
  font-style: normal;
  font-weight: 400;
  line-height: var(--line-height-s);
  text-decoration: underline;
}
@media print, screen and (min-width:769px) {
  .p-top-blog__button span {
    text-underline-offset: clamp(1.0666666667px, 0.1388888889vw, 2.2222222222px);
    font-size: clamp(8.5333333333px, 1.1111111111vw, 17.7777777778px);
  }
}
.p-top-blog__arrow {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background-color: var(--color-00-white);
  border: 0.2666666667vw solid var(--color-00-black);
  border-radius: 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 15.4666666667vw;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 15.4666666667vw;
}
@media print, screen and (min-width:769px) {
  .p-top-blog__arrow {
    border: clamp(0.5333333333px, 0.0694444444vw, 1.1111111111px) solid var(--color-00-black);
    height: clamp(30.9333333333px, 4.0277777778vw, 64.4444444444px);
    -webkit-transition: -webkit-transform 300ms;
    transition: -webkit-transform 300ms;
    transition: transform 300ms;
    transition: transform 300ms, -webkit-transform 300ms;
    width: clamp(30.9333333333px, 4.0277777778vw, 64.4444444444px);
  }
}
.p-top-blog__arrow img {
  width: 4.8vw;
}
@media print, screen and (min-width:769px) {
  .p-top-blog__arrow img {
    -webkit-transition: -webkit-transform 300ms;
    transition: -webkit-transform 300ms;
    transition: transform 300ms;
    transition: transform 300ms, -webkit-transform 300ms;
    width: clamp(9.6px, 1.25vw, 20px);
  }
}
.p-top-blog__noarticle {
  font-size: 4.2666666667vw;
  margin-top: 10.6666666667vw;
}
@media print, screen and (min-width:769px) {
  .p-top-blog__noarticle {
    font-size: clamp(8.5333333333px, 1.1111111111vw, 17.7777777778px);
    margin-top: clamp(32px, 4.1666666667vw, 66.6666666667px);
  }
}
.p-top-blog .p-top-title + .c-typography {
  margin-top: 4.2666666667vw;
}
@media print, screen and (min-width:769px) {
  .p-top-blog .p-top-title + .c-typography {
    margin-top: clamp(12.8px, 1.6666666667vw, 26.6666666667px);
  }
}

@media print, screen and (min-width:769px) {
  .p-top-benefits .p-top-title {
    margin: 0 auto;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
  .p-top-benefits .p-top-title__en {
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
  }
}
.p-top-benefits__inner {
  margin: 19.2vw auto 21.3333333333vw;
}
@media print, screen and (min-width:769px) {
  .p-top-benefits__inner {
    margin: clamp(59.7333333333px, 7.7777777778vw, 124.4444444444px) auto clamp(57.0666666667px, 7.4305555556vw, 118.8888888889px);
  }
}
.p-top-benefits__list {
  gap: 9.6vw;
  display: grid;
  grid-template-columns: 1fr;
  margin-top: 13.3333333333vw;
}
@media print, screen and (min-width:769px) {
  .p-top-benefits__list {
    gap: clamp(50.1333333333px, 6.5277777778vw, 104.4444444444px);
    grid-template-columns: repeat(2, 1fr);
    margin-top: clamp(60.8px, 7.9166666667vw, 126.6666666667px);
  }
}
.p-top-benefits__link {
  display: block;
  margin-bottom: 9.6vw;
  position: relative;
}
@media print, screen and (min-width:769px) {
  .p-top-benefits__link {
    margin-bottom: clamp(10.6666666667px, 1.3888888889vw, 22.2222222222px);
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
  }
  .p-top-benefits__link:hover {
    opacity: 0.7;
  }
  .p-top-benefits__link:hover .p-top-benefits__arrow {
    right: clamp(5.3333333333px, 0.6944444444vw, 11.1111111111px);
  }
}
.p-top-benefits__en {
  position: absolute;
  right: 16vw;
}
@media print, screen and (min-width:769px) {
  .p-top-benefits__en {
    right: clamp(10.6666666667px, 1.3888888889vw, 22.2222222222px);
  }
}
.p-top-benefits__en span {
  font-family: "Viga", sans-serif;
  font-size: 3.7333333333vw;
  font-style: normal;
  font-weight: 400;
  letter-spacing: 0.15em;
  line-height: var(--line-height-s);
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
}
@media print, screen and (min-width:769px) {
  .p-top-benefits__en span {
    font-size: clamp(12.8px, 1.6666666667vw, 26.6666666667px);
  }
}
.p-top-benefits__arrow {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background-color: var(--color-00-black);
  border-radius: 50%;
  bottom: 10.6666666667vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 11.2vw;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 5.3333333333vw 3.2vw;
  position: absolute;
  right: 16vw;
  width: 11.2vw;
}
@media print, screen and (min-width:769px) {
  .p-top-benefits__arrow {
    bottom: clamp(35.2px, 4.5833333333vw, 73.3333333333px);
    height: clamp(30.9333333333px, 4.0277777778vw, 64.4444444444px);
    padding: clamp(15.4666666667px, 2.0138888889vw, 32.2222222222px) clamp(11.2px, 1.4583333333vw, 23.3333333333px);
    right: clamp(10.6666666667px, 1.3888888889vw, 22.2222222222px);
    -webkit-transition: right 300ms;
    transition: right 300ms;
    width: clamp(30.9333333333px, 4.0277777778vw, 64.4444444444px);
  }
}
.p-top-benefits__ja {
  background-color: var(--color-primary-sub);
  bottom: -3.7333333333vw;
  font-size: 6.4vw;
  font-weight: 700;
  left: 50%;
  line-height: var(--line-height-s);
  padding: 1.8666666667vw;
  position: absolute;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  white-space: nowrap;
}
@media print, screen and (min-width:769px) {
  .p-top-benefits__ja {
    bottom: clamp(5.3333333333px, 0.6944444444vw, 11.1111111111px);
    font-size: clamp(17.0666666667px, 2.2222222222vw, 35.5555555556px);
    padding: clamp(3.7333333333px, 0.4861111111vw, 7.7777777778px);
  }
}
.p-top-benefits__image {
  margin: 0 auto;
  width: 66.6666666667vw;
}
@media print, screen and (min-width:769px) {
  .p-top-benefits__image {
    width: clamp(229.3333333333px, 29.8611111111vw, 477.7777777778px);
  }
}

.p-top-title {
  position: relative;
}
.p-top-title__en {
  color: rgba(151, 151, 151, 0.1);
  display: block;
  font-family: "Poppins", sans-serif;
  font-size: 21.3333333333vw;
  font-style: normal;
  font-weight: 400;
  line-height: var(--line-height-s);
  overflow: hidden;
  position: absolute;
  white-space: nowrap;
  z-index: 0;
}
@media print, screen and (min-width:769px) {
  .p-top-title__en {
    font-size: clamp(72.5333333333px, 9.4444444444vw, 151.1111111111px);
  }
}
.p-top-title__ja {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 8.5333333333vw;
  font-weight: 700;
  height: 21.3333333333vw;
  line-height: var(--line-height-s);
}
@media print, screen and (min-width:769px) {
  .p-top-title__ja {
    font-size: clamp(27.7333333333px, 3.6111111111vw, 57.7777777778px);
    height: clamp(72.5333333333px, 9.4444444444vw, 151.1111111111px);
  }
}
.p-top-title__ja span {
  text-underline-offset: 1.0666666667vw;
  text-decoration: underline;
}
@media print, screen and (min-width:769px) {
  .p-top-title__ja span {
    text-underline-offset: clamp(4.2666666667px, 0.5555555556vw, 8.8888888889px);
  }
}
@media print, screen and (min-width:769px) {
  .p-top-title + .c-typography {
    margin-top: clamp(4.2666666667px, 0.5555555556vw, 8.8888888889px);
  }
}

.p-top-recruitment {
  background-color: var(--color-primary-base);
}
@media print, screen and (min-width:769px) {
  .p-top-recruitment .p-top-title {
    margin: 0 auto;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
  .p-top-recruitment .p-top-title__en {
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
  }
}
.p-top-recruitment__inner {
  padding: 8.8vw 4.2666666667vw 24vw;
}
@media print, screen and (min-width:769px) {
  .p-top-recruitment__inner {
    padding: clamp(17.0666666667px, 2.2222222222vw, 35.5555555556px) clamp(18.1333333333px, 2.3611111111vw, 37.7777777778px) clamp(74.6666666667px, 9.7222222222vw, 155.5555555556px);
  }
}
.p-top-recruitment__list {
  gap: 5.0666666667vw;
  display: grid;
  grid-template-columns: 1fr;
  margin-top: 7.4666666667vw;
}
@media print, screen and (min-width:769px) {
  .p-top-recruitment__list {
    gap: clamp(8.5333333333px, 1.1111111111vw, 17.7777777778px);
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(2, auto);
    margin-top: clamp(32px, 4.1666666667vw, 66.6666666667px);
  }
}
.p-top-recruitment__item .c-button {
  padding: 8.5333333333vw 0;
}
@media print, screen and (min-width:769px) {
  .p-top-recruitment__item .c-button {
    padding: clamp(26.6666666667px, 3.4722222222vw, 55.5555555556px) 0;
  }
}
.p-top-recruitment__item .c-button span {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-size: 5.3333333333vw;
  font-style: normal;
}
@media print, screen and (min-width:769px) {
  .p-top-recruitment__item .c-button span {
    font-size: clamp(10.6666666667px, 1.3888888889vw, 22.2222222222px);
  }
}
.p-top-recruitment__item .c-button::after {
  height: 5.3333333333vw;
  width: 5.3333333333vw;
}
@media print, screen and (min-width:769px) {
  .p-top-recruitment__item .c-button::after {
    height: clamp(12.8px, 1.6666666667vw, 26.6666666667px);
    width: clamp(12.8px, 1.6666666667vw, 26.6666666667px);
  }
}
@media print, screen and (min-width:769px) {
  .p-top-recruitment__item:last-child {
    grid-column: 1/3;
  }
}

.p-staff-details {
  background-color: var(--color-primary-base);
}
.p-staff-details__inner {
  padding: 30.9333333333vw 4.2666666667vw 16vw;
}
@media print, screen and (min-width:769px) {
  .p-staff-details__inner {
    gap: clamp(45.3333333333px, 5.9027777778vw, 94.4444444444px);
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: grid;
    grid-template-columns: 1fr clamp(152.5333333333px, 19.8611111111vw, 317.7777777778px);
    margin: 0 auto;
    max-width: clamp(546.1333333333px, 71.1111111111vw, 1137.7777777778px);
    padding: clamp(104px, 13.5416666667vw, 216.6666666667px) clamp(18.1333333333px, 2.3611111111vw, 37.7777777778px) clamp(22.9333333333px, 2.9861111111vw, 47.7777777778px);
  }
}
.p-staff-details__title {
  background-color: var(--color-00-white);
  font-size: 6.4vw;
  font-weight: 700;
  padding: 0.8vw 2.6666666667vw;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media print, screen and (min-width:769px) {
  .p-staff-details__title {
    font-size: clamp(19.2px, 2.5vw, 40px);
    padding: clamp(1.6px, 0.2083333333vw, 3.3333333333px) clamp(5.3333333333px, 0.6944444444vw, 11.1111111111px);
  }
}
.p-staff-details__lead {
  background-color: var(--color-00-white);
  font-size: 4.8vw;
  font-weight: 700;
  margin-top: 2.6666666667vw;
  padding: 0.8vw 2.6666666667vw;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media print, screen and (min-width:769px) {
  .p-staff-details__lead {
    font-size: clamp(12.8px, 1.6666666667vw, 26.6666666667px);
    margin-top: clamp(9.6px, 1.25vw, 20px);
    padding: clamp(1.6px, 0.2083333333vw, 3.3333333333px) clamp(5.3333333333px, 0.6944444444vw, 11.1111111111px);
  }
}
.p-staff-details__role {
  color: var(--color-primary-main);
  font-size: 3.2vw;
  font-weight: 700;
  margin-top: 6.4vw;
}
@media print, screen and (min-width:769px) {
  .p-staff-details__role {
    font-size: clamp(7.4666666667px, 0.9722222222vw, 15.5555555556px);
    margin-top: clamp(16px, 2.0833333333vw, 33.3333333333px);
  }
}
.p-staff-details__wrap {
  gap: 2.6666666667vw;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: end;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 3.2vw;
}
@media print, screen and (min-width:769px) {
  .p-staff-details__wrap {
    gap: clamp(10.6666666667px, 1.3888888889vw, 22.2222222222px);
    margin-top: clamp(6.4px, 0.8333333333vw, 13.3333333333px);
  }
}
.p-staff-details__name {
  font-size: 4.8vw;
  font-weight: 700;
}
@media print, screen and (min-width:769px) {
  .p-staff-details__name {
    font-size: clamp(12.8px, 1.6666666667vw, 26.6666666667px);
  }
}
.p-staff-details__year {
  font-size: 3.7333333333vw;
}
@media print, screen and (min-width:769px) {
  .p-staff-details__year {
    font-size: clamp(8.5333333333px, 1.1111111111vw, 17.7777777778px);
  }
}
.p-staff-details__text {
  line-height: var(--line-height-l);
}
.p-staff-details__image {
  margin-top: 5.3333333333vw;
}
@media print, screen and (min-width:769px) {
  .p-staff-details__image {
    margin-top: 0;
  }
}
.p-staff-details__image img {
  aspect-ratio: 1/1;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center top;
  object-position: center top;
}
@media print, screen and (min-width:769px) {
  .p-staff-details__image img {
    aspect-ratio: 286/386;
  }
}

.p-staff-column {
  position: relative;
}
.p-staff-column__inner {
  padding: 0 4.2666666667vw 18.6666666667vw;
}
@media print, screen and (min-width:769px) {
  .p-staff-column__inner {
    gap: clamp(29.8666666667px, 3.8888888889vw, 62.2222222222px);
    display: grid;
    grid-template-columns: 1fr clamp(106.6666666667px, 13.8888888889vw, 222.2222222222px);
    margin: 0 auto;
    max-width: clamp(546.1333333333px, 71.1111111111vw, 1137.7777777778px);
    min-height: 100vh;
    overflow: visible;
    padding: 0 clamp(18.1333333333px, 2.3611111111vw, 37.7777777778px) clamp(57.0666666667px, 7.4305555556vw, 118.8888888889px);
    position: relative;
  }
}
.p-staff-column__aside {
  display: none;
}
@media print, screen and (min-width:769px) {
  .p-staff-column__aside {
    -ms-flex-item-align: start;
    align-self: start;
    display: block;
    position: sticky;
    top: clamp(62.9333333333px, 8.1944444444vw, 131.1111111111px);
  }
}
@media print, screen and (min-width:769px) {
  .p-staff-column__main {
    -ms-flex-item-align: start;
    align-self: start;
  }
}
.p-staff-column__main h2 {
  font-size: 5.3333333333vw;
  font-weight: 700;
  margin-top: 4vw;
  position: relative;
}
@media print, screen and (min-width:769px) {
  .p-staff-column__main h2 {
    font-size: clamp(12.8px, 1.6666666667vw, 26.6666666667px);
    margin-top: clamp(12.2666666667px, 1.5972222222vw, 25.5555555556px);
  }
}
.p-staff-column__main h2 + p {
  margin-top: 8vw;
}
@media print, screen and (min-width:769px) {
  .p-staff-column__main h2 + p {
    margin-top: clamp(26.6666666667px, 3.4722222222vw, 55.5555555556px);
  }
}
.p-staff-column__main h2:first-child {
  margin-top: 0;
}
.p-staff-column__main h2::before {
  background-color: var(--color-00-black);
  content: "";
  display: block;
  height: 0.2666666667vw;
  left: -4.2666666667vw;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 2.6666666667vw;
}
@media print, screen and (min-width:769px) {
  .p-staff-column__main h2::before {
    height: clamp(0.5333333333px, 0.0694444444vw, 1.1111111111px);
    left: 0;
    -webkit-transform: translate(-102%, -50%);
    transform: translate(-102%, -50%);
    width: 100%;
  }
}
.p-staff-column__main p {
  font-size: 4.2666666667vw;
  line-height: var(--line-height-l);
  margin-top: 4vw;
}
@media print, screen and (min-width:769px) {
  .p-staff-column__main p {
    font-size: clamp(8.5333333333px, 1.1111111111vw, 17.7777777778px);
    margin-top: clamp(12.2666666667px, 1.5972222222vw, 25.5555555556px);
  }
}
.p-staff-column__main ul,
.p-staff-column__main ol {
  margin-top: 8vw;
  padding-left: 1em;
}
@media print, screen and (min-width:769px) {
  .p-staff-column__main ul,
  .p-staff-column__main ol {
    margin-top: clamp(26.6666666667px, 3.4722222222vw, 55.5555555556px);
  }
}
.p-staff-column__main ul {
  list-style: disc;
}
.p-staff-column__main li {
  font-size: 4.2666666667vw;
  line-height: var(--line-height-l);
}
@media print, screen and (min-width:769px) {
  .p-staff-column__main li {
    font-size: clamp(8.5333333333px, 1.1111111111vw, 17.7777777778px);
  }
}

@media print, screen and (min-width:769px) {
  .p-staff-aside__title {
    font-size: clamp(7.4666666667px, 0.9722222222vw, 15.5555555556px);
    font-weight: 700;
  }
  .p-staff-aside__navigation {
    margin-top: clamp(6.9333333333px, 0.9027777778vw, 14.4444444444px);
  }
  .p-staff-aside__list {
    list-style: disc;
    padding-left: 1em;
  }
  .p-staff-aside__list a {
    color: #999999;
    display: block;
    font-size: clamp(7.4666666667px, 0.9722222222vw, 15.5555555556px);
    font-weight: 700;
    margin-top: clamp(8.5333333333px, 1.1111111111vw, 17.7777777778px);
    -webkit-transition: color 300ms;
    transition: color 300ms;
  }
  .p-staff-aside__list a[aria-current=location] {
    color: var(--color-00-black);
  }
}

.p-blog-navigation__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-top: 10.6666666667vw;
}
@media print, screen and (min-width:769px) {
  .p-blog-navigation__inner {
    margin-top: clamp(52.2666666667px, 6.8055555556vw, 108.8888888889px);
  }
}
.p-blog-navigation__inner span,
.p-blog-navigation__inner a {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background-color: var(--color-00-white);
  border: 1px solid var(--color-00-black);
  border-radius: 50%;
  color: var(--color-00-black);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 3.7333333333vw;
  height: 11.2vw;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 11.2vw;
}
@media print, screen and (min-width:769px) {
  .p-blog-navigation__inner span,
  .p-blog-navigation__inner a {
    font-size: clamp(7.4666666667px, 0.9722222222vw, 15.5555555556px);
    height: clamp(30.9333333333px, 4.0277777778vw, 64.4444444444px);
    width: clamp(30.9333333333px, 4.0277777778vw, 64.4444444444px);
  }
}
@media print, screen and (min-width:769px) {
  .p-blog-navigation__inner a {
    -webkit-transition: background-color 300ms ease-in, color 300ms ease-in;
    transition: background-color 300ms ease-in, color 300ms ease-in;
  }
  .p-blog-navigation__inner a:hover {
    background-color: var(--color-00-black);
    color: var(--color-00-white);
  }
}
.p-blog-navigation__inner span.current {
  background-color: var(--color-00-black);
  color: var(--color-00-white);
}
.p-blog-navigation__inner span:not(:last-child),
.p-blog-navigation__inner a:not(:last-child) {
  margin-right: 4.2666666667vw;
}
@media print, screen and (min-width:769px) {
  .p-blog-navigation__inner span:not(:last-child),
  .p-blog-navigation__inner a:not(:last-child) {
    margin-right: clamp(17.0666666667px, 2.2222222222vw, 35.5555555556px);
  }
}

.p-blog-details {
  background-color: var(--color-primary-base);
  padding: 6.9333333333vw 5.3333333333vw;
}
@media print, screen and (min-width:769px) {
  .p-blog-details {
    padding: clamp(18.1333333333px, 2.3611111111vw, 37.7777777778px) 10.6666666667vw clamp(74.1333333333px, 9.6527777778vw, 154.4444444444px);
  }
}
.p-blog-details__inner {
  background-color: var(--color-00-white);
  border-radius: 2.6666666667vw;
  padding: 5.3333333333vw 5.3333333333vw;
}
@media print, screen and (min-width:769px) {
  .p-blog-details__inner {
    border-radius: clamp(5.3333333333px, 0.6944444444vw, 11.1111111111px);
    margin: 0 auto;
    max-width: clamp(426.6666666667px, 55.5555555556vw, 888.8888888889px);
    padding: clamp(21.3333333333px, 2.7777777778vw, 44.4444444444px) clamp(21.3333333333px, 2.7777777778vw, 44.4444444444px);
  }
}
.p-blog-details__wrap {
  gap: 2.1333333333vw;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media print, screen and (min-width:769px) {
  .p-blog-details__wrap {
    gap: clamp(8.5333333333px, 1.1111111111vw, 17.7777777778px);
  }
}
.p-blog-details__category {
  gap: 1.0666666667vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 3.2vw;
  line-height: var(--line-height-s);
}
@media print, screen and (min-width:769px) {
  .p-blog-details__category {
    gap: clamp(2.1333333333px, 0.2777777778vw, 4.4444444444px);
    font-size: clamp(7.4666666667px, 0.9722222222vw, 15.5555555556px);
  }
}
.p-blog-details__category::before {
  background-image: url("../images/icon-blog.svg");
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  display: block;
  height: 3.2vw;
  width: 3.2vw;
}
@media print, screen and (min-width:769px) {
  .p-blog-details__category::before {
    height: clamp(7.4666666667px, 0.9722222222vw, 15.5555555556px);
    width: clamp(7.4666666667px, 0.9722222222vw, 15.5555555556px);
  }
}
.p-blog-details__date {
  font-size: 3.2vw;
  line-height: var(--line-height-s);
  margin-top: auto;
}
@media print, screen and (min-width:769px) {
  .p-blog-details__date {
    font-size: clamp(6.4px, 0.8333333333vw, 13.3333333333px);
  }
}
.p-blog-details__title {
  font-size: 6.4vw;
  font-weight: 700;
  line-height: 1.2;
  margin-top: 4.2666666667vw;
}
@media print, screen and (min-width:769px) {
  .p-blog-details__title {
    font-size: clamp(17.0666666667px, 2.2222222222vw, 35.5555555556px);
    margin-top: clamp(12.8px, 1.6666666667vw, 26.6666666667px);
  }
}
.p-blog-details__image {
  margin-top: 6.4vw;
}
@media print, screen and (min-width:769px) {
  .p-blog-details__image {
    margin-top: clamp(21.3333333333px, 2.7777777778vw, 44.4444444444px);
  }
}
.p-blog-details__image img {
  aspect-ratio: 720/411;
  -o-object-fit: cover;
  object-fit: cover;
}
.p-blog-details__main h2 {
  font-size: 5.3333333333vw;
  font-weight: 700;
  margin-top: 4vw;
  position: relative;
}
@media print, screen and (min-width:769px) {
  .p-blog-details__main h2 {
    font-size: clamp(12.8px, 1.6666666667vw, 26.6666666667px);
    margin-top: clamp(12.2666666667px, 1.5972222222vw, 25.5555555556px);
  }
}
.p-blog-details__main h2 + p {
  margin-top: 8vw;
}
@media print, screen and (min-width:769px) {
  .p-blog-details__main h2 + p {
    margin-top: clamp(26.6666666667px, 3.4722222222vw, 55.5555555556px);
  }
}
.p-blog-details__main h2:first-child {
  margin-top: 0;
}
.p-blog-details__main p {
  font-size: 4.2666666667vw;
  line-height: var(--line-height-l);
  margin-top: 4vw;
}
@media print, screen and (min-width:769px) {
  .p-blog-details__main p {
    font-size: clamp(8.5333333333px, 1.1111111111vw, 17.7777777778px);
    margin-top: clamp(12.2666666667px, 1.5972222222vw, 25.5555555556px);
  }
}
.p-blog-details__main ul,
.p-blog-details__main ol {
  margin-top: 8vw;
  padding-left: 1em;
}
@media print, screen and (min-width:769px) {
  .p-blog-details__main ul,
  .p-blog-details__main ol {
    margin-top: clamp(26.6666666667px, 3.4722222222vw, 55.5555555556px);
  }
}
.p-blog-details__main ul {
  list-style: disc;
}
.p-blog-details__main li {
  font-size: 4.2666666667vw;
  line-height: var(--line-height-l);
}
@media print, screen and (min-width:769px) {
  .p-blog-details__main li {
    font-size: clamp(8.5333333333px, 1.1111111111vw, 17.7777777778px);
  }
}

.p-blog-pagenation {
  background-color: var(--color-01-gray);
}
.p-blog-pagenation__list {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: repeat(2, auto);
  margin: 0 auto;
  padding: 4vw 5.3333333333vw;
}
@media print, screen and (min-width:769px) {
  .p-blog-pagenation__list {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: 1fr;
    max-width: clamp(546.1333333333px, 71.1111111111vw, 1137.7777777778px);
    padding: clamp(16px, 2.0833333333vw, 33.3333333333px) clamp(26.6666666667px, 3.4722222222vw, 55.5555555556px);
    position: relative;
  }
}
.p-blog-pagenation__item:first-child::after {
  background-color: var(--color-00-black);
  content: "";
  display: block;
  height: 0.2666666667vw;
  margin: 2.6666666667vw auto;
  width: 100%;
}
@media print, screen and (min-width:769px) {
  .p-blog-pagenation__item:first-child::after {
    height: calc(100% - clamp(32px, 4.1666666667vw, 66.6666666667px));
    left: 50%;
    margin: 0;
    position: absolute;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: clamp(0.5333333333px, 0.0694444444vw, 1.1111111111px);
  }
}
.p-blog-pagenation__item:first-child .p-blog-pagenation__link {
  padding-inline: 8vw;
}
@media print, screen and (min-width:769px) {
  .p-blog-pagenation__item:first-child .p-blog-pagenation__link {
    padding-inline: clamp(24px, 3.125vw, 50px);
  }
}
.p-blog-pagenation__item:first-child .p-blog-pagenation__link::before {
  left: 1.6vw;
  -webkit-transform: translateY(-50%) rotate(-135deg);
  transform: translateY(-50%) rotate(-135deg);
}
@media print, screen and (min-width:769px) {
  .p-blog-pagenation__item:first-child .p-blog-pagenation__link::before {
    left: clamp(4.8px, 0.625vw, 10px);
  }
}
.p-blog-pagenation__item:first-child .p-blog-pagenation__link::after {
  left: 0;
}
@media print, screen and (min-width:769px) {
  .p-blog-pagenation__item:last-child {
    justify-items: end;
  }
}
.p-blog-pagenation__item:last-child .p-blog-pagenation__link {
  padding-inline: 8vw;
}
@media print, screen and (min-width:769px) {
  .p-blog-pagenation__item:last-child .p-blog-pagenation__link {
    padding-inline: clamp(24px, 3.125vw, 50px);
  }
}
.p-blog-pagenation__item:last-child .p-blog-pagenation__link::before {
  right: 1.6vw;
  -webkit-transform: translateY(-50%) rotate(45deg);
  transform: translateY(-50%) rotate(45deg);
}
@media print, screen and (min-width:769px) {
  .p-blog-pagenation__item:last-child .p-blog-pagenation__link::before {
    right: clamp(4.8px, 0.625vw, 10px);
  }
}
.p-blog-pagenation__item:last-child .p-blog-pagenation__link::after {
  right: 0;
}
.p-blog-pagenation__link {
  display: block;
  position: relative;
}
@media print, screen and (min-width:769px) {
  .p-blog-pagenation__link {
    -webkit-transition: opacity 300ms ease;
    transition: opacity 300ms ease;
  }
  .p-blog-pagenation__link:hover {
    opacity: 0.7;
  }
}
.p-blog-pagenation__link::before {
  border-right: 0.5333333333vw solid var(--color-00-black);
  border-top: 0.5333333333vw solid var(--color-00-black);
  content: "";
  height: 1.8666666667vw;
  position: absolute;
  top: 50%;
  width: 1.8666666667vw;
}
@media print, screen and (min-width:769px) {
  .p-blog-pagenation__link::before {
    border-right: clamp(1.6px, 0.2083333333vw, 3.3333333333px) solid var(--color-00-black);
    border-top: clamp(1.6px, 0.2083333333vw, 3.3333333333px) solid var(--color-00-black);
    height: clamp(4.8px, 0.625vw, 10px);
    right: clamp(13.3333333333px, 1.7361111111vw, 27.7777777778px);
    width: clamp(4.8px, 0.625vw, 10px);
  }
}
.p-blog-pagenation__link::after {
  border: 0.2666666667vw solid var(--color-00-black);
  border-radius: 50%;
  content: "";
  display: block;
  height: 4.8vw;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 4.8vw;
}
@media print, screen and (min-width:769px) {
  .p-blog-pagenation__link::after {
    border: clamp(1.0666666667px, 0.1388888889vw, 2.2222222222px) solid var(--color-00-black);
    height: clamp(12.8px, 1.6666666667vw, 26.6666666667px);
    -webkit-transition: border-color 300ms ease;
    transition: border-color 300ms ease;
    width: clamp(12.8px, 1.6666666667vw, 26.6666666667px);
  }
}
.p-blog-pagenation__title {
  font-size: 3.7333333333vw;
}
@media print, screen and (min-width:769px) {
  .p-blog-pagenation__title {
    font-size: clamp(8.5333333333px, 1.1111111111vw, 17.7777777778px);
  }
}
.p-blog-pagenation__date {
  font-size: 2.6666666667vw;
}
@media print, screen and (min-width:769px) {
  .p-blog-pagenation__date {
    font-size: clamp(6.4px, 0.8333333333vw, 13.3333333333px);
  }
}

.p-benefits-voice {
  gap: 6.4vw;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: repeat(3, auto);
  margin-top: 8vw;
}
@media print, screen and (min-width:769px) {
  .p-benefits-voice {
    gap: clamp(19.2px, 2.5vw, 40px) clamp(24.5333333333px, 3.1944444444vw, 51.1111111111px);
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(2, auto);
    margin-top: clamp(12.8px, 1.6666666667vw, 26.6666666667px);
  }
}
.p-benefits-voice__item:first-child {
  grid-row: 2/3;
}
@media print, screen and (min-width:769px) {
  .p-benefits-voice__item:first-child {
    grid-row: 1/2;
  }
}
.p-benefits-voice__item:nth-child(2) {
  grid-row: 3/4;
}
@media print, screen and (min-width:769px) {
  .p-benefits-voice__item:nth-child(2) {
    grid-row: 1/2;
  }
}
.p-benefits-voice__year {
  color: var(--color-primary-main);
  font-size: 3.7333333333vw;
  font-weight: 700;
}
@media print, screen and (min-width:769px) {
  .p-benefits-voice__year {
    font-size: clamp(8.5333333333px, 1.1111111111vw, 17.7777777778px);
  }
}
.p-benefits-voice__name {
  font-size: 5.3333333333vw;
  font-weight: 700;
}
@media print, screen and (min-width:769px) {
  .p-benefits-voice__name {
    font-size: clamp(12.8px, 1.6666666667vw, 26.6666666667px);
  }
}
.p-benefits-voice__image {
  grid-row: 1/2;
  margin-bottom: 0;
}
@media print, screen and (min-width:769px) {
  .p-benefits-voice__image {
    grid-column: 1/3;
    grid-row: 2/3;
  }
}

.p-faq {
  border-bottom: 0.2666666667vw solid var(--color-primary-main);
  cursor: pointer;
}
@media print, screen and (min-width:769px) {
  .p-faq {
    border-bottom: clamp(0.5333333333px, 0.0694444444vw, 1.1111111111px) solid var(--color-primary-main);
  }
}
.p-faq:first-of-type {
  margin-top: 6.4vw;
}
@media print, screen and (min-width:769px) {
  .p-faq:first-of-type {
    margin-top: clamp(60.2666666667px, 7.8472222222vw, 125.5555555556px);
  }
}
.p-faq:first-of-type {
  border-top: 0.2666666667vw solid var(--color-primary-main);
}
@media print, screen and (min-width:769px) {
  .p-faq:first-of-type {
    border-top: clamp(0.5333333333px, 0.0694444444vw, 1.1111111111px) solid var(--color-primary-main);
  }
}
.p-faq.is-opened .p-faq__icon::after {
  -webkit-transform: translate(0, -50%) rotate(0deg);
  transform: translate(0, -50%) rotate(0deg);
}
.p-faq__query {
  gap: 6.4vw;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  list-style: none;
  padding: 9.6vw 0 9.6vw 8vw;
}
@media print, screen and (min-width:769px) {
  .p-faq__query {
    gap: clamp(12.8px, 1.6666666667vw, 26.6666666667px);
    padding: clamp(19.2px, 2.5vw, 40px) 0 clamp(19.2px, 2.5vw, 40px) clamp(16px, 2.0833333333vw, 33.3333333333px);
  }
}
.p-faq__query::marker, .p-faq__query::-webkit-details-marker {
  content: "";
  display: none;
}
.p-faq__title {
  display: block;
  font-size: 4.2666666667vw;
  line-height: var(--line-height-m);
  position: relative;
}
@media print, screen and (min-width:769px) {
  .p-faq__title {
    font-size: clamp(8.5333333333px, 1.1111111111vw, 17.7777777778px);
  }
}
.p-faq__title::before {
  color: var(--color-primary-main);
  content: "Q";
  display: block;
  font-family: "Viga", sans-serif;
  font-size: 6.4vw;
  font-style: normal;
  font-weight: 400;
  left: -8vw;
  line-height: var(--line-height-m);
  position: absolute;
  top: -1.0666666667vw;
}
@media print, screen and (min-width:769px) {
  .p-faq__title::before {
    font-size: clamp(12.8px, 1.6666666667vw, 26.6666666667px);
    left: clamp(-33.3333333333px, -2.0833333333vw, -16px);
    top: clamp(-4.4444444444px, -0.2777777778vw, -2.1333333333px);
  }
}
.p-faq__icon {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 4.2666666667vw;
  flex: 0 0 4.2666666667vw;
  height: 4.2666666667vw;
  position: relative;
  width: 4.2666666667vw;
}
@media print, screen and (min-width:769px) {
  .p-faq__icon {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 clamp(8.5333333333px, 1.1111111111vw, 17.7777777778px);
    flex: 0 0 clamp(8.5333333333px, 1.1111111111vw, 17.7777777778px);
    height: clamp(8.5333333333px, 1.1111111111vw, 17.7777777778px);
    width: clamp(8.5333333333px, 1.1111111111vw, 17.7777777778px);
  }
}
.p-faq__icon::before, .p-faq__icon::after {
  background-color: var(--color-primary-main);
  border-radius: 0.5333333333vw;
  content: "";
  display: block;
  height: 0.5333333333vw;
  position: absolute;
  right: 0;
  top: calc(50% + 0.8vw);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 100%;
}
@media print, screen and (min-width:769px) {
  .p-faq__icon::before, .p-faq__icon::after {
    border-radius: clamp(1.0666666667px, 0.1388888889vw, 2.2222222222px);
    height: clamp(1.0666666667px, 0.1388888889vw, 2.2222222222px);
    top: calc(50% + clamp(1.6px, 0.2083333333vw, 3.3333333333px));
  }
}
.p-faq__icon::after {
  -webkit-transform: translate(0, -50%) rotate(90deg);
  transform: translate(0, -50%) rotate(90deg);
  -webkit-transition: -webkit-transform 300ms;
  transition: -webkit-transform 300ms;
  transition: transform 300ms;
  transition: transform 300ms, -webkit-transform 300ms;
}
.p-faq__content {
  overflow: hidden;
}
.p-faq__content-inner {
  padding: 0 5.8666666667vw 9.6vw 8vw;
}
@media print, screen and (min-width:769px) {
  .p-faq__content-inner {
    padding: 0 clamp(11.7333333333px, 1.5277777778vw, 24.4444444444px) clamp(19.2px, 2.5vw, 40px) clamp(16px, 2.0833333333vw, 33.3333333333px);
  }
}

.p-career {
  margin-top: 6.4vw;
}
@media print, screen and (min-width:769px) {
  .p-career {
    margin-top: clamp(60.2666666667px, 7.8472222222vw, 125.5555555556px);
  }
}
.p-career__image {
  margin: 9.6vw 0 6.4vw;
}
@media print, screen and (min-width:769px) {
  .p-career__image {
    margin: clamp(25.6px, 3.3333333333vw, 53.3333333333px) 0 clamp(19.2px, 2.5vw, 40px);
  }
}
.p-career__list {
  margin-top: 12.2666666667vw;
}
@media print, screen and (min-width:769px) {
  .p-career__list {
    margin-top: clamp(48px, 6.25vw, 100px);
  }
}
.p-career__item {
  margin-top: 6.4vw;
}
@media print, screen and (min-width:769px) {
  .p-career__item {
    margin-top: clamp(20.2666666667px, 2.6388888889vw, 42.2222222222px);
  }
}
.p-career__title {
  background-color: var(--color-primary-sub);
  border-radius: 2.6666666667vw;
  font-size: 5.3333333333vw;
  font-weight: 700;
  line-height: var(--line-height-s);
  padding: 3.2vw 4.2666666667vw;
}
@media print, screen and (min-width:769px) {
  .p-career__title {
    border-radius: clamp(5.3333333333px, 0.6944444444vw, 11.1111111111px);
    font-size: clamp(12.8px, 1.6666666667vw, 26.6666666667px);
    padding: clamp(6.4px, 0.8333333333vw, 13.3333333333px) clamp(10.6666666667px, 1.3888888889vw, 22.2222222222px);
  }
}
.p-career__title + p {
  margin-top: 9.6vw;
}
@media print, screen and (min-width:769px) {
  .p-career__title + p {
    margin-top: clamp(26.6666666667px, 3.4722222222vw, 55.5555555556px);
  }
}

.p-about-list {
  margin-top: 6.4vw;
}
@media print, screen and (min-width:769px) {
  .p-about-list {
    margin-top: clamp(45.8666666667px, 5.9722222222vw, 95.5555555556px);
  }
}
.p-about-list__item {
  gap: 4.2666666667vw;
  background-color: var(--color-primary-base);
  border-radius: 2.6666666667vw;
  display: grid;
  grid-template-columns: 5.3333333333vw 1fr;
  grid-template-rows: repeat(2, auto);
  margin-top: 9.3333333333vw;
  padding: 6.6666666667vw 6.9333333333vw 5.3333333333vw;
}
@media print, screen and (min-width:769px) {
  .p-about-list__item {
    gap: clamp(19.2px, 2.5vw, 40px) clamp(10.6666666667px, 1.3888888889vw, 22.2222222222px);
    border-radius: clamp(5.3333333333px, 0.6944444444vw, 11.1111111111px);
    grid-template-columns: clamp(25.6px, 3.3333333333vw, 53.3333333333px) 1fr;
    margin-top: clamp(18.6666666667px, 2.4305555556vw, 38.8888888889px);
    padding: clamp(21.3333333333px, 2.7777777778vw, 44.4444444444px) clamp(42.6666666667px, 5.5555555556vw, 88.8888888889px) clamp(16px, 2.0833333333vw, 33.3333333333px);
  }
}
.p-about-list__number {
  font-size: 3.7333333333vw;
  grid-column: 1/2;
  line-height: var(--line-height-s);
  margin-left: 2.6666666667vw;
  margin-top: 0.8vw;
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media print, screen and (min-width:769px) {
  .p-about-list__number {
    font-size: clamp(9.6px, 1.25vw, 20px);
    margin-left: clamp(9.6px, 1.25vw, 20px);
    margin-top: clamp(1.6px, 0.2083333333vw, 3.3333333333px);
  }
}
.p-about-list__number::before {
  border: 0.2666666667vw solid var(--color-00-black);
  border-radius: 50%;
  content: "";
  display: block;
  height: 8vw;
  left: 50%;
  position: absolute;
  top: -1.8666666667vw;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  width: 8vw;
}
@media print, screen and (min-width:769px) {
  .p-about-list__number::before {
    border: clamp(0.5333333333px, 0.0694444444vw, 1.1111111111px) solid var(--color-00-black);
    height: clamp(25.6px, 3.3333333333vw, 53.3333333333px);
    top: clamp(-15.5555555556px, -0.9722222222vw, -7.4666666667px);
    width: clamp(25.6px, 3.3333333333vw, 53.3333333333px);
  }
}
.p-about-list__title {
  font-size: 4.8vw;
  font-weight: 700;
  grid-column: 2/3;
}
@media print, screen and (min-width:769px) {
  .p-about-list__title {
    font-size: clamp(10.6666666667px, 1.3888888889vw, 22.2222222222px);
  }
}
.p-about-list__text {
  grid-column: 1/3;
  grid-row: 2/3;
  margin-top: 0;
}
.p-about-message {
  margin-top: 6.4vw;
}
@media print, screen and (min-width:769px) {
  .p-about-message {
    gap: clamp(8.5333333333px, 1.1111111111vw, 17.7777777778px);
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    margin-top: clamp(45.8666666667px, 5.9722222222vw, 95.5555555556px);
  }
}
.p-about-message__image {
  margin-bottom: 0;
}
.p-about-message__wrap {
  margin-top: 6.4vw;
}
@media print, screen and (min-width:769px) {
  .p-about-message__wrap {
    margin-top: clamp(9.6px, 1.25vw, 20px);
  }
}
.p-about-message__title {
  font-size: 6.4vw;
  font-weight: 700;
  line-height: var(--line-height-m);
}
@media print, screen and (min-width:769px) {
  .p-about-message__title {
    font-size: clamp(17.0666666667px, 2.2222222222vw, 35.5555555556px);
    -webkit-transform: translateX(clamp(-88.8888888889px, -5.5555555556vw, -42.6666666667px));
    transform: translateX(clamp(-88.8888888889px, -5.5555555556vw, -42.6666666667px));
  }
}
.p-about-message__content {
  margin-top: 9.6vw;
}
@media print, screen and (min-width:769px) {
  .p-about-message__content {
    margin-top: clamp(23.4666666667px, 3.0555555556vw, 48.8888888889px);
  }
}
.p-about-message__content .c-typography {
  line-height: 2;
}
@media print, screen and (min-width:769px) {
  .p-about-message__content .c-typography {
    margin-top: clamp(16px, 2.0833333333vw, 33.3333333333px);
  }
}
.p-about-message__sign {
  margin-top: 6.4vw;
  width: 49.3333333333vw;
}
@media print, screen and (min-width:769px) {
  .p-about-message__sign {
    margin-top: clamp(12.8px, 1.6666666667vw, 26.6666666667px);
    width: clamp(98.6666666667px, 12.8472222222vw, 205.5555555556px);
  }
}

.p-about-service {
  margin-top: 6.4vw;
}
@media print, screen and (min-width:769px) {
  .p-about-service {
    margin: clamp(45.8666666667px, 5.9722222222vw, 95.5555555556px) clamp(-24.4444444444px, -1.5277777778vw, -11.7333333333px) 0;
  }
}
.p-about-service__item {
  gap: 9.6vw;
  border-bottom: 0.2666666667vw solid var(--color-primary-sub);
  display: grid;
  grid-template-columns: 1fr;
  padding: 8vw 0;
}
@media print, screen and (min-width:769px) {
  .p-about-service__item {
    gap: 0 clamp(24.5333333333px, 3.1944444444vw, 51.1111111111px);
    -ms-flex-line-pack: center;
    align-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border-bottom: clamp(0.5333333333px, 0.0694444444vw, 1.1111111111px) solid var(--color-primary-sub);
    grid-template-columns: repeat(2, 1fr);
    padding: clamp(26.6666666667px, 3.4722222222vw, 55.5555555556px) clamp(11.7333333333px, 1.5277777778vw, 24.4444444444px);
  }
}
.p-about-service__item:last-child {
  border-bottom: none;
}
@media print, screen and (min-width:769px) {
  .p-about-service__image {
    margin-bottom: 0;
  }
}
.p-about-service__image img {
  border-radius: 5.3333333333vw;
}
@media print, screen and (min-width:769px) {
  .p-about-service__image img {
    border-radius: clamp(10.6666666667px, 1.3888888889vw, 22.2222222222px);
  }
}
.p-about-service__title {
  color: var(--color-primary-main);
  font-size: 6.4vw;
  font-weight: 700;
}
@media print, screen and (min-width:769px) {
  .p-about-service__title {
    font-size: clamp(17.0666666667px, 2.2222222222vw, 35.5555555556px);
    grid-area: title;
  }
}
.p-about-service__lead {
  font-size: 5.3333333333vw;
  font-weight: 700;
}
@media print, screen and (min-width:769px) {
  .p-about-service__lead {
    font-size: clamp(12.8px, 1.6666666667vw, 26.6666666667px);
    margin-top: clamp(16px, 2.0833333333vw, 33.3333333333px);
  }
}
.p-about-service .c-typography {
  margin-top: 0;
}
@media print, screen and (min-width:769px) {
  .p-about-service .c-typography {
    margin-top: clamp(16px, 2.0833333333vw, 33.3333333333px);
  }
}

.p-entry {
  background-color: var(--color-primary-base);
  padding: 6.4vw 4.2666666667vw;
}
@media print, screen and (min-width:769px) {
  .p-entry {
    padding: clamp(18.1333333333px, 2.3611111111vw, 37.7777777778px);
  }
}
.p-entry__content {
  background-color: var(--color-00-white);
  border-radius: 2.6666666667vw;
  margin: 0 auto;
  padding: 8.5333333333vw 4.2666666667vw 0;
}
@media print, screen and (min-width:769px) {
  .p-entry__content {
    border-radius: clamp(5.3333333333px, 0.6944444444vw, 11.1111111111px);
    max-width: clamp(469.3333333333px, 61.1111111111vw, 977.7777777778px);
    padding: clamp(30.9333333333px, 4.0277777778vw, 64.4444444444px) clamp(37.8666666667px, 4.9305555556vw, 78.8888888889px) 0;
  }
}
.p-entry__lead {
  padding-bottom: 12.2666666667vw;
}
@media print, screen and (min-width:769px) {
  .p-entry__lead {
    padding-bottom: clamp(51.2px, 6.6666666667vw, 106.6666666667px);
  }
}
.p-entry__title {
  text-align: center;
}
.p-entry__title--en {
  display: block;
  font-size: 5.3333333333vw;
  margin-bottom: 4.2666666667vw;
}
@media print, screen and (min-width:769px) {
  .p-entry__title--en {
    font-size: clamp(12.8px, 1.6666666667vw, 26.6666666667px);
    margin-bottom: clamp(14.9333333333px, 1.9444444444vw, 31.1111111111px);
  }
}
.p-entry__title--jp {
  display: block;
  font-size: 6.4vw;
  font-weight: 700;
  line-height: 1.3;
}
@media print, screen and (min-width:769px) {
  .p-entry__title--jp {
    font-size: clamp(17.0666666667px, 2.2222222222vw, 35.5555555556px);
  }
}
.p-entry__title--jp span {
  color: var(--color-primary-main);
}
.p-entry .c-typography {
  margin-top: 9.0666666667vw;
}
@media print, screen and (min-width:769px) {
  .p-entry .c-typography {
    margin: clamp(10.6666666667px, 1.3888888889vw, 22.2222222222px) auto 0;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
}
.p-entry .c-typography span {
  color: var(--color-primary-main);
}
.p-entry__button {
  margin: 9.0666666667vw auto 0;
  width: 73.8666666667vw;
}
@media print, screen and (min-width:769px) {
  .p-entry__button {
    margin: clamp(26.6666666667px, 3.4722222222vw, 55.5555555556px) auto 0;
    width: clamp(189.3333333333px, 24.6527777778vw, 394.4444444444px);
  }
}

.p-form {
  border-top: 0.2666666667vw dotted var(--color-primary-sub);
  padding-bottom: 8.5333333333vw;
  padding-top: 12.2666666667vw;
}
@media print, screen and (min-width:769px) {
  .p-form {
    border-top: clamp(0.5333333333px, 0.0694444444vw, 1.1111111111px) dotted var(--color-primary-sub);
    padding-bottom: clamp(30.9333333333px, 4.0277777778vw, 64.4444444444px);
    padding-top: clamp(51.2px, 6.6666666667vw, 106.6666666667px);
  }
}
.p-form__wrap {
  gap: 6.4vw;
  display: grid;
  grid-template-columns: 1fr;
}
@media print, screen and (min-width:769px) {
  .p-form__wrap {
    gap: clamp(14.4px, 1.875vw, 30px);
  }
}
.p-form__item {
  gap: 2.1333333333vw;
  display: grid;
  grid-template-columns: 1fr;
}
@media print, screen and (min-width:769px) {
  .p-form__item {
    gap: clamp(18.1333333333px, 2.3611111111vw, 37.7777777778px);
    grid-template-columns: clamp(69.3333333333px, 9.0277777778vw, 144.4444444444px) 1fr;
  }
  .p-form__item:has(textarea) {
    margin-top: clamp(18.1333333333px, 2.3611111111vw, 37.7777777778px);
  }
}
.p-form__item label {
  font-size: 4.2666666667vw;
}
@media print, screen and (min-width:769px) {
  .p-form__item label {
    font-size: clamp(8.5333333333px, 1.1111111111vw, 17.7777777778px);
    -webkit-transform: translateY(clamp(10.6666666667px, 1.3888888889vw, 22.2222222222px));
    transform: translateY(clamp(10.6666666667px, 1.3888888889vw, 22.2222222222px));
  }
}
.p-form__item:has(.p-form__privacy) {
  display: block;
  font-size: 3.2vw;
  margin: 0 auto;
  padding-top: 12.2666666667vw;
}
@media print, screen and (min-width:769px) {
  .p-form__item:has(.p-form__privacy) {
    font-size: clamp(7.4666666667px, 0.9722222222vw, 15.5555555556px);
    padding-top: clamp(48px, 6.25vw, 100px);
  }
}
.p-form__item > .c-typography {
  margin-top: 0;
}
.p-form__required {
  color: var(--color-primary-sub);
  margin-left: 0.5333333333vw;
}
@media print, screen and (min-width:769px) {
  .p-form__required {
    margin-left: clamp(1.0666666667px, 0.1388888889vw, 2.2222222222px);
  }
}
.p-form__item input[type=text],
.p-form__item input[type=email],
.p-form__item input[type=tel],
.p-form__item textarea,
.p-form__item select {
  background-color: var(--color-primary-base);
  border: 0.2666666667vw solid var(--color-primary-sub);
  border-radius: 2.6666666667vw;
  font-size: 4.2666666667vw;
  padding: 3.2vw;
  width: 100%;
}
@media print, screen and (min-width:769px) {
  .p-form__item input[type=text],
  .p-form__item input[type=email],
  .p-form__item input[type=tel],
  .p-form__item textarea,
  .p-form__item select {
    border: clamp(0.5333333333px, 0.0694444444vw, 1.1111111111px) solid var(--color-primary-sub);
    border-radius: clamp(5.3333333333px, 0.6944444444vw, 11.1111111111px);
    font-size: clamp(8.5333333333px, 1.1111111111vw, 17.7777777778px);
    padding: clamp(8px, 1.0416666667vw, 16.6666666667px) clamp(10.6666666667px, 1.3888888889vw, 22.2222222222px);
  }
}
.p-form__item input[type=text]::-webkit-input-placeholder, .p-form__item input[type=email]::-webkit-input-placeholder, .p-form__item input[type=tel]::-webkit-input-placeholder, .p-form__item textarea::-webkit-input-placeholder, .p-form__item select::-webkit-input-placeholder {
  border-color: #757575;
}
.p-form__item input[type=text]::-moz-placeholder, .p-form__item input[type=email]::-moz-placeholder, .p-form__item input[type=tel]::-moz-placeholder, .p-form__item textarea::-moz-placeholder, .p-form__item select::-moz-placeholder {
  border-color: #757575;
}
.p-form__item input[type=text]:-ms-input-placeholder, .p-form__item input[type=email]:-ms-input-placeholder, .p-form__item input[type=tel]:-ms-input-placeholder, .p-form__item textarea:-ms-input-placeholder, .p-form__item select:-ms-input-placeholder {
  border-color: #757575;
}
.p-form__item input[type=text]::-ms-input-placeholder, .p-form__item input[type=email]::-ms-input-placeholder, .p-form__item input[type=tel]::-ms-input-placeholder, .p-form__item textarea::-ms-input-placeholder, .p-form__item select::-ms-input-placeholder {
  border-color: #757575;
}
.p-form__item input[type=text]::placeholder,
.p-form__item input[type=email]::placeholder,
.p-form__item input[type=tel]::placeholder,
.p-form__item textarea::placeholder,
.p-form__item select::placeholder {
  border-color: #757575;
}
.p-form__item input[type=text]:focus,
.p-form__item input[type=email]:focus,
.p-form__item input[type=tel]:focus,
.p-form__item textarea:focus,
.p-form__item select:focus {
  border-color: var(--color-00-black);
  -webkit-box-shadow: 0 0 0 2 rgba(200, 157, 40, 0.2);
  box-shadow: 0 0 0 2 rgba(200, 157, 40, 0.2);
  outline: none;
}
.p-form__item select {
  padding: 4vw 3.2vw;
}
@media print, screen and (min-width:769px) {
  .p-form__item select {
    padding: clamp(9.6px, 1.25vw, 20px) clamp(10.6666666667px, 1.3888888889vw, 22.2222222222px);
  }
}
.p-form__item textarea {
  min-height: 64vw;
  resize: vertical;
}
@media print, screen and (min-width:769px) {
  .p-form__item textarea {
    min-height: clamp(128px, 16.6666666667vw, 266.6666666667px);
  }
}
.p-form__birth {
  font-size: 4.2666666667vw;
  margin-bottom: 5.6vw;
}
@media print, screen and (min-width:769px) {
  .p-form__birth {
    gap: clamp(8px, 1.0416666667vw, 16.6666666667px) clamp(9.0666666667px, 1.1805555556vw, 18.8888888889px);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    font-size: clamp(8.5333333333px, 1.1111111111vw, 17.7777777778px);
    margin-bottom: clamp(11.2px, 1.4583333333vw, 23.3333333333px);
  }
}
.p-form__birth input[name=birth-year],
.p-form__birth select[name=birth-month],
.p-form__birth select[name=birth-day] {
  width: 44.8vw;
}
@media print, screen and (min-width:769px) {
  .p-form__birth input[name=birth-year],
  .p-form__birth select[name=birth-month],
  .p-form__birth select[name=birth-day] {
    width: clamp(89.6px, 11.6666666667vw, 186.6666666667px);
  }
}
.p-form__birth select[name=birth-month],
.p-form__birth select[name=birth-day] {
  font-size: 3.2vw;
}
@media print, screen and (min-width:769px) {
  .p-form__birth select[name=birth-month],
  .p-form__birth select[name=birth-day] {
    font-size: clamp(6.4px, 0.8333333333vw, 13.3333333333px);
  }
}
.p-form__birth-year {
  gap: 0.8vw;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  position: relative;
}
@media print, screen and (min-width:769px) {
  .p-form__birth-year {
    gap: clamp(1.6px, 0.2083333333vw, 3.3333333333px);
    -webkit-box-flex: 1;
    -ms-flex: 1 0 100%;
    flex: 1 0 100%;
  }
}
.p-form__birth .p-form__unit {
  padding-top: 3.2vw;
}
@media print, screen and (min-width:769px) {
  .p-form__birth .p-form__unit {
    padding-top: clamp(8.5333333333px, 1.1111111111vw, 17.7777777778px);
  }
}
.p-form__birth-select {
  margin-top: 2.1333333333vw;
  position: relative;
}
@media print, screen and (min-width:769px) {
  .p-form__birth-select {
    margin-top: 0;
  }
}
.p-form__birth-select::after {
  border-bottom: 0.2666666667vw solid var(--color-00-black);
  border-right: 0.2666666667vw solid var(--color-00-black);
  content: "";
  display: block;
  height: 2.1333333333vw;
  left: 39.4666666667vw;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%) rotate(45deg);
  transform: translateY(-50%) rotate(45deg);
  width: 2.1333333333vw;
}
@media print, screen and (min-width:769px) {
  .p-form__birth-select::after {
    border-bottom: clamp(0.5333333333px, 0.0694444444vw, 1.1111111111px) solid var(--color-00-black);
    border-right: clamp(0.5333333333px, 0.0694444444vw, 1.1111111111px) solid var(--color-00-black);
    height: clamp(4.2666666667px, 0.5555555556vw, 8.8888888889px);
    left: clamp(78.9333333333px, 10.2777777778vw, 164.4444444444px);
    width: clamp(4.2666666667px, 0.5555555556vw, 8.8888888889px);
  }
}
.p-form__birth .wpcf7-not-valid-tip {
  bottom: -37.3333333333vw;
  position: absolute;
  white-space: nowrap;
}
@media print, screen and (min-width:769px) {
  .p-form__birth .wpcf7-not-valid-tip {
    bottom: clamp(-106.6666666667px, -6.6666666667vw, -51.2px);
  }
}
.p-form .wpcf7-list-item {
  display: block;
  margin: 0;
}
.p-form .wpcf7-list-item label {
  position: relative;
}
.p-form .wpcf7-list-item:has(input[type=checkbox]) .wpcf7-list-item-label:before {
  border-radius: 0;
}
.p-form .wpcf7-list-item:has(input[name=privacy]) .wpcf7-list-item-label {
  gap: 2.1333333333vw;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 3.7333333333vw;
}
@media print, screen and (min-width:769px) {
  .p-form .wpcf7-list-item:has(input[name=privacy]) .wpcf7-list-item-label {
    gap: clamp(6.4px, 0.8333333333vw, 13.3333333333px);
    font-size: clamp(7.4666666667px, 0.9722222222vw, 15.5555555556px);
    -webkit-transform: translateY(clamp(0px, 0vw, 0px));
    transform: translateY(clamp(0px, 0vw, 0px));
  }
}
.p-form .wpcf7-list-item:has(input[name=privacy]) .wpcf7-list-item-label::before {
  height: 3.7333333333vw;
  width: 3.7333333333vw;
}
@media print, screen and (min-width:769px) {
  .p-form .wpcf7-list-item:has(input[name=privacy]) .wpcf7-list-item-label::before {
    height: clamp(8.5333333333px, 1.1111111111vw, 17.7777777778px);
    width: clamp(8.5333333333px, 1.1111111111vw, 17.7777777778px);
  }
}
.p-form .wpcf7-list-item input[name=privacy]:checked + .wpcf7-list-item-label::after {
  left: 0.8vw;
}
@media print, screen and (min-width:769px) {
  .p-form .wpcf7-list-item input[name=privacy]:checked + .wpcf7-list-item-label::after {
    left: clamp(1.6px, 0.2083333333vw, 3.3333333333px);
  }
}
.p-form__radio .wpcf7-list-item label, .p-form__check .wpcf7-list-item label,
.p-form .wpcf7-form-control-wrap[data-name=privacy] label {
  -webkit-transition: opacity 300ms ease;
  transition: opacity 300ms ease;
}
.p-form__radio .wpcf7-list-item label:hover, .p-form__check .wpcf7-list-item label:hover,
.p-form .wpcf7-form-control-wrap[data-name=privacy] label:hover {
  opacity: 0.6;
}
.p-form__radio .wpcf7-list-item label .wpcf7-list-item-label, .p-form__check .wpcf7-list-item label .wpcf7-list-item-label, .p-form__privacy .wpcf7-list-item label .wpcf7-list-item-label {
  gap: 2.1333333333vw;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media print, screen and (min-width:769px) {
  .p-form__radio .wpcf7-list-item label .wpcf7-list-item-label, .p-form__check .wpcf7-list-item label .wpcf7-list-item-label, .p-form__privacy .wpcf7-list-item label .wpcf7-list-item-label {
    gap: clamp(6.4px, 0.8333333333vw, 13.3333333333px);
  }
}
.p-form__check-button, .p-form__privacy-button {
  border-radius: 0;
}
@media print, screen and (min-width:769px) {
  .p-form .wpcf7-list-item {
    margin-top: clamp(10.6666666667px, 1.3888888889vw, 22.2222222222px);
  }
  .p-form .wpcf7-list-item:first-child {
    margin-top: 0;
  }
}
.p-form .wpcf7-list-item-label::before {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background-color: var(--color-primary-base);
  border: 0.2666666667vw solid var(--color-primary-sub);
  border-radius: 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 4.8vw;
  position: relative;
  width: 4.8vw;
}
@media print, screen and (min-width:769px) {
  .p-form .wpcf7-list-item-label::before {
    border: clamp(0.5333333333px, 0.0694444444vw, 1.1111111111px) solid var(--color-primary-sub);
    height: clamp(12.8px, 1.6666666667vw, 26.6666666667px);
    width: clamp(12.8px, 1.6666666667vw, 26.6666666667px);
  }
}
.p-form .wpcf7-list-item-label::after {
  content: "";
  left: 0;
  position: absolute;
}
.p-form input[type=radio] {
  opacity: 0;
  position: absolute;
  z-index: -1;
}
.p-form input[type=radio]:focus + .wpcf7-list-item-label::before {
  outline: 0.2666666667vw solid var(--color-00-black);
  outline-offset: 0.2666666667vw;
}
@media print, screen and (min-width:769px) {
  .p-form input[type=radio]:focus + .wpcf7-list-item-label::before {
    outline: clamp(0.5333333333px, 0.0694444444vw, 1.1111111111px) solid var(--color-00-black);
    outline-offset: clamp(0.5333333333px, 0.0694444444vw, 1.1111111111px);
  }
}
.p-form input[type=radio]:checked + .wpcf7-list-item-label::after {
  background-color: var(--color-00-black);
  border-radius: 50%;
  content: "";
  display: block;
  height: 2.1333333333vw;
  left: 1.3333333333vw;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 2.1333333333vw;
}
@media print, screen and (min-width:769px) {
  .p-form input[type=radio]:checked + .wpcf7-list-item-label::after {
    height: clamp(5.3333333333px, 0.6944444444vw, 11.1111111111px);
    left: clamp(3.7333333333px, 0.4861111111vw, 7.7777777778px);
    width: clamp(5.3333333333px, 0.6944444444vw, 11.1111111111px);
  }
}
.p-form input[type=radio]:checked + .p-form__privacy-button::after {
  height: 1.6vw;
  width: 1.6vw;
}
@media print, screen and (min-width:769px) {
  .p-form input[type=radio]:checked + .p-form__privacy-button::after {
    height: clamp(4.2666666667px, 0.5555555556vw, 8.8888888889px);
    width: clamp(4.2666666667px, 0.5555555556vw, 8.8888888889px);
  }
}
.p-form input[type=checkbox] {
  opacity: 0;
  position: absolute;
  z-index: -1;
}
.p-form input[type=checkbox]:focus + .wpcf7-list-item-label::before {
  outline: 0.2666666667vw solid var(--color-00-black);
  outline-offset: 0.2666666667vw;
}
@media print, screen and (min-width:769px) {
  .p-form input[type=checkbox]:focus + .wpcf7-list-item-label::before {
    outline: clamp(0.5333333333px, 0.0694444444vw, 1.1111111111px) solid var(--color-00-black);
    outline-offset: clamp(0.5333333333px, 0.0694444444vw, 1.1111111111px);
  }
}
.p-form input[type=checkbox]:checked + .wpcf7-list-item-label::after {
  background-color: var(--color-00-black);
  content: "";
  display: block;
  height: 2.1333333333vw;
  left: 1.3333333333vw;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 2.1333333333vw;
}
@media print, screen and (min-width:769px) {
  .p-form input[type=checkbox]:checked + .wpcf7-list-item-label::after {
    height: clamp(5.3333333333px, 0.6944444444vw, 11.1111111111px);
    left: clamp(3.7333333333px, 0.4861111111vw, 7.7777777778px);
    width: clamp(5.3333333333px, 0.6944444444vw, 11.1111111111px);
  }
}
.p-form input[type=checkbox] .wpcf7-list-item-label {
  border-radius: 0;
}
.p-form__submit {
  font-size: 4.2666666667vw;
  margin-top: 8.5333333333vw;
  text-align: center;
}
@media print, screen and (min-width:769px) {
  .p-form__submit {
    font-size: clamp(8.5333333333px, 1.1111111111vw, 17.7777777778px);
    margin: clamp(16px, 2.0833333333vw, 33.3333333333px) auto 0;
    -webkit-transition: color 0.3s;
    transition: color 0.3s;
    width: clamp(136.5333333333px, 17.7777777778vw, 284.4444444444px);
  }
  .p-form__submit:hover {
    color: var(--color-00-white);
  }
}
.p-form__submit .wpcf7-spinner::before {
  background-color: var(--color-primary-main);
}
.p-form__submit .c-button {
  height: 16.5333333333vw;
  padding: 0;
}
.p-form__submit .c-button:disabled {
  opacity: 0.5;
  pointer-events: none;
}
@media print, screen and (min-width:769px) {
  .p-form__submit .c-button {
    height: clamp(29.8666666667px, 3.8888888889vw, 62.2222222222px);
  }
}
.p-form__submit .c-button::after {
  display: none;
}

.wpcf7 form.sent .wpcf7-response-output,
.wpcf7 form.invalid .wpcf7-response-output {
  background-color: var(--color-primary-base);
  border: 0.2666666667vw solid var(--color-primary-sub);
  border-color: #dc3232 !important;
  border-radius: 2.6666666667vw;
  color: #dc3232;
  font-size: 4.2666666667vw;
  margin: 0 0 4.2666666667vw;
  padding: 3.2vw;
}
@media print, screen and (min-width:769px) {
  .wpcf7 form.sent .wpcf7-response-output,
  .wpcf7 form.invalid .wpcf7-response-output {
    border: clamp(0.5333333333px, 0.0694444444vw, 1.1111111111px) solid var(--color-primary-sub);
    border-radius: clamp(5.3333333333px, 0.6944444444vw, 11.1111111111px);
    font-size: clamp(8.5333333333px, 1.1111111111vw, 17.7777777778px);
    margin: 0 0 clamp(17.0666666667px, 2.2222222222vw, 35.5555555556px);
    padding: clamp(8.5333333333px, 1.1111111111vw, 17.7777777778px) clamp(10.6666666667px, 1.3888888889vw, 22.2222222222px) clamp(8.5333333333px, 1.1111111111vw, 17.7777777778px);
  }
}

.wpcf7 form.sent .wpcf7-response-output,
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {
  border-color: var(--color-primary-sub);
}

.wpcf7 form .wpcf7-not-valid-tip {
  font-size: 3.7333333333vw;
  margin-top: 0.5333333333vw;
}
@media print, screen and (min-width:769px) {
  .wpcf7 form .wpcf7-not-valid-tip {
    font-size: clamp(7.4666666667px, 0.9722222222vw, 15.5555555556px);
    margin-top: clamp(2.1333333333px, 0.2777777778vw, 4.4444444444px);
  }
}

/* CF7の入力系をライトスキームで固定 念の為*/
.wpcf7 input,
.wpcf7 textarea,
.wpcf7 select {
  color-scheme: light;
}

/* オートフィル時の色を明示的に上書き */
.wpcf7 input:-webkit-autofill,
.wpcf7 textarea:-webkit-autofill,
.wpcf7 select:-webkit-autofill {
  -webkit-text-fill-color: var(--color-00-black) !important; /* 文字色も指定 */
  border-color: var(--color-primary-sub); /* 枠があれば */
  /* 背景は box-shadow の内側塗りで強制上書き */
  -webkit-box-shadow: 0 0 0 1000px var(--color-primary-base) inset !important;
  box-shadow: 0 0 0 1000px var(--color-primary-base) inset !important;
  caret-color: #757575; /* キャレット色 */
}

/* フォーカス時も同様に維持したければ */
.wpcf7 input:-webkit-autofill:focus,
.wpcf7 textarea:-webkit-autofill:focus,
.wpcf7 select:-webkit-autofill:focus {
  -webkit-box-shadow: 0 0 0 1000px var(--color-primary-base) inset !important;
  box-shadow: 0 0 0 1000px var(--color-primary-base) inset !important;
}

/* ==========================================================================
Utility
========================================================================== */
.u-small {
  display: block;
  font-size: 2.9333333333vw;
  text-align: right;
}
@media print, screen and (min-width:769px) {
  .u-small {
    font-size: clamp(8.5333333333px, 1.1111111111vw, 17.7777777778px);
  }
}