@layer reset, base;
@layer reset {
  :where(html, body) {
    box-sizing: border-box;
    padding: 0;
    margin: 0;
    border: none;
  }
  :where(html) {
    text-size-adjust: 100%;
    -webkit-font-smoothing: antialiased;
  }
  :where(body) {
    min-height: 100vh;
  }
  :where(body) *,
  :where(body) *::before,
  :where(body) *::after {
    box-sizing: border-box;
    padding: 0;
    margin: 0;
    font: inherit;
    border: none;
  }
  :where(body) ul,
  :where(body) ol {
    list-style: none;
  }
  :where(body) a {
    color: inherit;
    text-decoration: none;
    cursor: pointer;
  }
  :where(body) button,
  :where(body) input,
  :where(body) select,
  :where(body) textarea {
    appearance: none;
    background: transparent;
    border: none;
    border-radius: 0;
  }
  :where(body) img,
  :where(body) svg,
  :where(body) video,
  :where(body) canvas {
    display: block;
    max-width: 100%;
    height: auto;
  }
  :where(body) img {
    width: 100%;
    max-width: 100%;
    height: auto;
  }
  :where(body) a,
  :where(body) button,
  :where(body) input[type=button],
  :where(body) input[type=submit],
  :where(body) input[type=reset],
  :where(body) *[role=button] {
    display: inline-block;
    cursor: pointer;
  }
  :where(body) a[aria-disabled=true], :where(body) a:disabled,
  :where(body) button[aria-disabled=true],
  :where(body) button:disabled,
  :where(body) input[type=button][aria-disabled=true],
  :where(body) input[type=button]:disabled,
  :where(body) input[type=submit][aria-disabled=true],
  :where(body) input[type=submit]:disabled,
  :where(body) input[type=reset][aria-disabled=true],
  :where(body) input[type=reset]:disabled,
  :where(body) *[role=button][aria-disabled=true],
  :where(body) *[role=button]:disabled {
    cursor: not-allowed;
  }
  :where(body) input[type=radio],
  :where(body) input[type=checkbox] {
    appearance: auto;
    accent-color: var(--color-sub);
  }
  :where(body) table {
    width: 100%;
    border-spacing: 0;
    border-collapse: collapse;
  }
  :where(body) table th,
  :where(body) table td {
    empty-cells: show;
  }
  :where(body) figure {
    margin: 0 !important;
  }
  :where(body) fieldset,
  :where(body) legend {
    display: contents;
  }
  :where(body) em {
    font-style: normal;
  }
  :where(body) i {
    display: inline-block;
    font-style: normal;
  }
  :where(body) details {
    cursor: pointer;
  }
  .no-reset * {
    all: revert;
  }
}
@layer base {
  :where(html) {
    scroll-behavior: smooth;
  }
  :where(body) {
    font-family: var(--font-base);
    line-height: 1;
    color: var(--color-text);
    background-color: var(--color-bg);
  }
}
:root {
  --color-bg: #000;
  --color-text: #fff;
  --color-main: #000;
  --color-sub: #d1b767;
  --font-base: Zen Old Mincho, serif;
}

/* ==========================================================================
  Wrapper
========================================================================== */
.l-wrap {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 100%;
  min-height: 100dvh;
  margin-inline: auto;
  background: center top/100% auto repeat-y url("../img/bg.webp");
}
.l-wrap main {
  flex: 1;
}

/* ==========================================================================
  Container
========================================================================== */
@layer layout {
  .l-container {
    width: 96%;
    max-width: 880px;
    margin-inline: auto;
  }
  @media (width < 750px) {
    .l-container {
      width: max(89.8666666667vw, 337px);
    }
  }
  @media (750px <= width) {
    .l-container {
      gap: min(7.2727272727vw, 64px);
    }
  }
  .l-container--full {
    width: 100%;
    max-width: 100% !important;
    padding-inline: 0;
    margin-inline: 0;
  }
  @media (1261px <= width) {
    .l-container--wide {
      max-width: 1261px;
    }
  }
  .l-container--column {
    display: flex;
    flex-flow: column wrap;
    gap: max(6.4vw, 24px);
    width: 100%;
    max-width: 100%;
  }
  @media (1261px <= width) {
    .l-container--column {
      flex-direction: row;
      gap: 0 min(2.7272727273vw, 24px);
      justify-content: space-between;
    }
  }
  .l-container__primary {
    width: 100%;
  }
  @media (750px <= width) {
    .l-container__primary {
      flex: 1;
      max-width: 880px;
    }
  }
  @media (750px <= width < 1261px) {
    .l-container__secondary {
      flex: 1;
    }
  }
  @media (1261px <= width) {
    .l-container__secondary {
      width: min(37.6136363636vw, 331px);
    }
  }
}
/* ==========================================================================
  Header
========================================================================== */
.l-header {
  position: sticky;
  top: 0;
  left: 0;
  z-index: 555;
  width: 100%;
  overflow-y: hidden;
  color: #fff;
  background: #000;
}
.l-header__inner {
  display: grid;
  grid-template-columns: auto auto;
  gap: max(4.2666666667vw, 16px);
  align-items: center;
  justify-content: space-between;
  width: 100%;
  max-width: 100%;
  height: max(10.1333333333vw, 38px);
  padding-inline: max(3.4666666667vw, 13px) max(4.2666666667vw, 16px);
  margin-inline: 0;
}
@media (750px <= width) {
  .l-header__inner {
    grid-template-columns: auto 1fr auto;
    gap: min(3.8636363636vw, 34px);
    height: min(8.6363636364vw, 76px);
    padding-inline: min(1.8181818182vw, 16px);
  }
}
@media (1261px <= width) {
  .l-header__inner {
    padding-inline: min(9.0909090909vw, 80px);
  }
}
.l-header__area1, .l-header__toggle {
  position: relative;
  z-index: 999;
}

/* ==========================================================================
  Footer
========================================================================== */
.l-footer {
  color: #fff;
  background: #000;
}
@media (width < 750px) {
  .l-footer {
    padding: max(4.2666666667vw, 16px);
  }
}
@media (750px <= width) {
  .l-footer {
    padding: min(1.9318181818vw, 17px) min(4.6590909091vw, 41px);
  }
}
.l-footer__inner {
  display: flex;
  flex-direction: column;
  margin-inline: auto;
}
@media (width < 750px) {
  .l-footer__inner {
    gap: max(4.8vw, 18px);
    width: max(88.8vw, 333px);
  }
}
@media (750px <= width) {
  .l-footer__inner {
    flex-flow: row wrap;
    gap: min(2.0454545455vw, 18px) min(16.3636363636vw, 144px);
    align-items: center;
    justify-content: center;
  }
}
.l-footer__area1 {
  flex-basis: 100%;
}
@media (width < 750px) {
  .l-footer__area4 {
    display: none;
  }
}
@media (750px <= width) {
  .l-footer__area4 {
    flex: 1;
  }
}
.l-footer__copyright {
  font-size: max(3.2vw, 12px);
  text-align: center;
}
@media (750px <= width) {
  .l-footer__copyright {
    font-size: min(1.3636363636vw, 12px);
  }
}

/* ==========================================================================
  Drawer
========================================================================== */
.l-drawer__bg, .l-drawer__body {
  position: fixed;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100vh;
  opacity: 0;
}
.l-drawer__bg {
  z-index: 666;
  background: rgba(0, 0, 0, 0.5);
}
.l-drawer__body {
  z-index: 777;
  padding-block: max(19.2vw, 72px) max(9.6vw, 36px);
  overflow-y: auto;
  background-color: #000;
  transition: left 0.5s, opacity 0.5s;
}
.l-drawer[aria-hidden=false] .l-drawer__bg,
.l-drawer[aria-hidden=false] .l-drawer__body {
  left: 0;
  opacity: 1;
}
.l-drawer .c-buttonList {
  margin-block: max(2.1333333333vw, 8px);
}

/* ==========================================================================
  Sidebar
========================================================================== */
.l-side__inner {
  display: flex;
  flex-direction: column;
  gap: max(8.5333333333vw, 32px);
}
@media (1261px <= width) {
  .l-side__inner {
    gap: min(3.6363636364vw, 32px);
  }
}

/* ==========================================================================
  Column
========================================================================== */
.l-column {
  display: flex;
  flex-direction: column;
  gap: max(6.4vw, 24px);
}
.l-column > * {
  flex-basis: 100%;
}
@media (750px <= width) {
  .l-column {
    flex-flow: row wrap;
    gap: min(4.5454545455vw, 40px);
  }
  .l-column--col2 > * {
    flex-basis: calc((100% - min(4.5454545455vw, 40px)) / 2);
  }
  .l-column--col3 > * {
    flex-basis: calc((100% - min(4.5454545455vw, 40px) * 2) / 3);
  }
  .l-column--col4 > * {
    flex-basis: calc((100% - min(4.5454545455vw, 40px) * 3) / 4);
  }
}

/* ==========================================================================
  Brand
========================================================================== */
.c-brand {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.c-brand__logo {
  display: block;
  width: auto;
  height: max(8vw, 30px);
}
.c-brand__logo img {
  width: auto;
  height: 100%;
}
@media (750px <= width) {
  .c-brand__logo {
    height: min(4.3181818182vw, 38px);
  }
}

/* ==========================================================================
  Global Menu
========================================================================== */
.c-global__list {
  display: flex;
  gap: min(3.8636363636vw, 34px);
  justify-content: flex-end;
  width: 100%;
  font-size: min(1.8181818182vw, 16px);
  font-weight: 700;
  letter-spacing: 0.05em;
}
.c-global__list > li > a {
  position: relative;
  display: block;
  padding: min(0.4545454545vw, 4px);
  white-space: nowrap;
}
.c-global__list > li > a::after {
  position: absolute;
  inset-inline: 0;
  bottom: 0;
  width: 100%;
  height: min(0.1136363636vw, 1px);
  margin-inline: auto;
  content: "";
  background-color: #d1b767;
  transform: scaleX(0);
  transform-origin: center;
  transition: transform 0.5s;
}
.c-global__list > li > a:hover::after {
  transform: scaleX(1);
}
.c-global__list > li > a:hover, .c-global__list > li > a:focus-visible {
  color: #d1b767;
}
.c-global__list > li:not(.is-nocurrent) > a[aria-current=page] {
  color: #d1b767;
}

/* ==========================================================================
  Header Toggle
========================================================================== */
.c-headerToggle {
  position: relative;
  z-index: 999;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: max(10.1333333333vw, 38px);
  height: max(10.1333333333vw, 38px);
}
.c-headerToggle__line {
  position: relative;
  display: block;
  width: max(8.8vw, 33px);
  height: max(6.9333333333vw, 26px);
}
.c-headerToggle__line span {
  position: absolute;
  left: 0;
  display: block;
  width: 100%;
  height: max(0.2666666667vw, 1px);
  background-color: #d1b767;
  border-radius: 100vmax;
  transition: transform 0.5s;
}
.c-headerToggle__line span:nth-child(1) {
  top: 0;
}
.c-headerToggle__line span:nth-child(2) {
  top: 50%;
  transform: translateY(-50%);
}
.c-headerToggle__line span:nth-child(3) {
  bottom: 0;
}
.c-headerToggle[aria-expanded=true] .c-headerToggle__line span:nth-child(1) {
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
}
.c-headerToggle[aria-expanded=true] .c-headerToggle__line span:nth-child(2) {
  visibility: hidden;
}
.c-headerToggle[aria-expanded=true] .c-headerToggle__line span:nth-child(3) {
  top: 50%;
  transform: translateY(-50%) rotate(-45deg);
}

/* ==========================================================================
  Header CTA
========================================================================== */
.c-headerCta {
  display: flex;
  gap: max(2.1333333333vw, 8px);
  align-items: center;
  justify-content: center;
}
@media (750px <= width) {
  .c-headerCta {
    gap: min(0.9090909091vw, 8px);
  }
}
.c-headerCta__link {
  display: block;
  width: max(90.6666666667vw, 340px);
  padding: max(3.2vw, 12px) max(4.2666666667vw, 16px);
  font-size: max(5.3333333333vw, 20px);
  font-weight: 700;
  line-height: 1.5;
  color: #000;
  text-align: center;
  letter-spacing: 0.05em;
  background-color: #d1b767;
  border: max(0.5333333333vw, 2px) solid transparent;
  border-radius: 100vmax;
  transition: background-color 0.5s, color 0.5s, border-color 0.5s;
}
@media (width < 750px) {
  .c-headerCta__link {
    margin-inline: auto;
  }
}
@media (750px <= width) {
  .c-headerCta__link {
    width: min(18.1818181818vw, 160px);
    padding: min(0.4545454545vw, 4px);
    font-size: min(1.8181818182vw, 16px);
    border-width: min(0.2272727273vw, 2px);
  }
  .c-headerCta__link:hover, .c-headerCta__link:focus-visible {
    color: #d1b767;
    background-color: #fff;
    border-color: currentcolor;
  }
}

/* ==========================================================================
  Drawer Navigation
========================================================================== */
.c-drawerNav {
  width: max(90.6666666667vw, 340px);
  padding-block: max(9.6vw, 36px);
  margin-inline: auto;
  font-size: max(5.3333333333vw, 20px);
  font-weight: 400;
}
.c-drawerNav__list {
  display: flex;
  flex-direction: column;
}
.c-drawerNav__list li {
  position: relative;
  text-align: center;
  border-bottom: max(0.5333333333vw, 2px) solid currentcolor;
}
.c-drawerNav__list li a {
  display: block;
  padding-block: max(4.2666666667vw, 16px);
}

/* ==========================================================================
  Footer Address
========================================================================== */
.c-footerAddress__title {
  padding-block: max(2.1333333333vw, 8px);
  font-size: max(3.7333333333vw, 14px);
  font-weight: 700;
}
@media (750px <= width) {
  .c-footerAddress__title {
    padding-block: min(0.9090909091vw, 8px);
    font-size: min(1.5909090909vw, 14px);
  }
}
.c-footerAddress__body {
  display: flex;
  flex-direction: column;
  gap: max(2.1333333333vw, 8px);
  font-size: max(3.2vw, 12px);
  line-height: 1.5;
}
@media (750px <= width) {
  .c-footerAddress__body {
    gap: min(0.9090909091vw, 8px);
    font-size: min(1.5909090909vw, 14px);
  }
}

/* ==========================================================================
  Footer Navigation
========================================================================== */
.c-footerNav {
  width: fit-content;
  margin-inline: auto 0;
}
.c-footerNav__list {
  display: flex;
  flex-direction: column;
  font-size: min(1.5909090909vw, 14px);
  font-weight: 700;
  letter-spacing: 0.05em;
}
.c-footerNav__list > li > a {
  position: relative;
  display: inline-block;
  padding: min(0.9090909091vw, 8px) min(0.9090909091vw, 8px) min(0.9090909091vw, 8px) 0;
  white-space: nowrap;
}
.c-footerNav__list > li > a::after {
  position: absolute;
  inset-inline: 0;
  bottom: 0;
  width: 100%;
  height: min(0.1136363636vw, 1px);
  margin-inline: auto;
  content: "";
  background-color: #d1b767;
  transform: scaleX(0);
  transform-origin: center;
  transition: transform 0.5s;
}
.c-footerNav__list > li > a:hover::after {
  transform: scaleX(1);
}
.c-footerNav__list > li > a:hover, .c-footerNav__list > li > a:focus-visible {
  color: #d1b767;
}

/* ==========================================================================
  Page Top
========================================================================== */
.c-backToTop {
  position: fixed;
  right: max(5.0666666667vw, 19px);
  bottom: max(8.8vw, 33px);
  z-index: 999;
  display: flex;
  align-items: center;
  justify-content: center;
  width: max(10.1333333333vw, 38px);
  aspect-ratio: 1/1;
  cursor: default;
  background-color: #d1b767;
  opacity: 0;
  transition: opacity 0.5s;
}
.c-backToTop::before {
  width: max(4.8vw, 18px);
  aspect-ratio: 1/1;
  content: "";
  background: center/contain no-repeat url("../img/arrow-pagetop.svg");
}
.c-backToTop.is-visible {
  cursor: pointer;
  opacity: 1;
}
@media (750px <= width) {
  .c-backToTop {
    right: min(4.6590909091vw, 41px);
    bottom: min(1.9318181818vw, 17px);
    width: min(5.4545454545vw, 48px);
  }
  .c-backToTop::before {
    width: min(2.0454545455vw, 18px);
  }
}

/* ==========================================================================
  SNS
========================================================================== */
.c-sns {
  display: flex;
  gap: max(4.2666666667vw, 16px);
  align-items: center;
}
.c-sns > * {
  width: max(6.4vw, 24px);
  height: max(6.4vw, 24px);
}
@media (width < 750px) {
  .c-sns {
    justify-content: center;
  }
}
@media (750px <= width) {
  .c-sns {
    gap: min(1.8181818182vw, 16px);
  }
  .c-sns > * {
    width: min(2.7272727273vw, 24px);
    height: min(2.7272727273vw, 24px);
  }
  .c-sns a {
    transition: opacity 0.5s;
  }
  .c-sns a:hover, .c-sns a:focus-visible {
    opacity: 0.7;
  }
}

/* ==========================================================================
  Description Box
========================================================================== */
.c-descriptionBox {
  padding: max(3.7333333333vw, 14px) max(4.2666666667vw, 16px) max(4.8vw, 18px) max(4.5333333333vw, 17px);
  font-size: max(3.7333333333vw, 14px);
  line-height: 1.4;
  background-color: #000;
  border-left: max(1.0666666667vw, 4px) solid #d1b767;
  overflow: hidden;
  border-radius: max(2.6666666667vw, 10px);
}
@media (750px <= width) {
  .c-descriptionBox {
    border-radius: min(1.1363636364vw, 10px);
  }
}
.c-descriptionBox strong {
  color: #d1b767;
}
.c-descriptionBox p + p {
  margin-top: 1.4em;
}
@media (750px <= width) {
  .c-descriptionBox {
    padding: min(2.2727272727vw, 20px) min(2.6136363636vw, 23px) min(3.0681818182vw, 27px) min(2.9545454545vw, 26px);
    font-size: min(1.8181818182vw, 16px);
    line-height: 1.8;
    border-width: min(0.5681818182vw, 5px);
  }
  .c-descriptionBox p + p {
    margin-top: 1.8em;
  }
}

/* ==========================================================================
  Sidebar
========================================================================== */
.c-sideContents {
  padding: max(6.4vw, 24px) max(4vw, 15px) max(6.4vw, 24px) max(5.0666666667vw, 19px);
  color: #fff;
  background-color: #000;
}
@media (750px <= width) {
  .c-sideContents {
    padding: min(2.7272727273vw, 24px) min(1.7045454545vw, 15px) min(2.7272727273vw, 24px) min(2.1590909091vw, 19px);
  }
}
.c-sideContents__title {
  margin-bottom: max(6.4vw, 24px);
  font-size: max(4.8vw, 18px);
  font-weight: 700;
}
@media (750px <= width) {
  .c-sideContents__title {
    margin-bottom: min(2.7272727273vw, 24px);
    font-size: min(2.0454545455vw, 18px);
  }
}

.c-sideArchives__list {
  display: flex;
  flex-direction: column;
}
.c-sideArchives__list > li {
  padding-block: max(6.4vw, 24px);
  border-bottom: max(0.2666666667vw, 1px) solid #d1b767;
}
.c-sideArchives__list > li:first-child {
  padding-top: 0;
}
@media (750px <= width) {
  .c-sideArchives__list > li {
    padding-block: min(2.7272727273vw, 24px);
    border-width: min(0.1136363636vw, 1px);
  }
}

/* ==========================================================================
  Breadcrumb
========================================================================== */
.c-breadcrumb__list {
  display: flex;
  flex-wrap: nowrap;
  gap: 0.25em;
  align-items: center;
  font-size: max(3.2vw, 12px);
  color: #d1b767;
}
@media (750px <= width) {
  .c-breadcrumb__list {
    font-size: min(1.5909090909vw, 14px);
  }
}
.c-breadcrumb__list li {
  display: flex;
  align-items: center;
  text-transform: capitalize;
}
.c-breadcrumb__list li:not(:last-child)::after {
  margin-left: 0.25em;
  content: "-";
}
.c-breadcrumb__list .label {
  font-size: max(2.6666666667vw, 10px);
}
@media (750px <= width) {
  .c-breadcrumb__list .label {
    font-size: min(1.3636363636vw, 12px);
  }
}
.c-breadcrumb__tags {
  display: flex;
  gap: 0.5em;
  align-items: center;
}
.c-breadcrumb__title {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 1;
}

/* ==========================================================================
  Button
========================================================================== */
.c-button {
  display: flex;
  gap: max(1.3333333333vw, 5px);
  align-items: center;
  justify-content: center;
  width: 100%;
  height: max(12.8vw, 48px);
  margin-inline: auto;
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(3.7333333333vw, 14px);
  font-weight: 700;
  color: #d1b767;
  background-color: #000;
  border: max(0.2666666667vw, 1px) solid currentColor;
}
.c-button::before {
  content: "";
  background: center/contain no-repeat;
  filter: invert(71%) sepia(51%) saturate(335%) hue-rotate(8deg) brightness(92%) contrast(94%);
}
@media (750px <= width) {
  .c-button {
    gap: min(0.5681818182vw, 5px);
    width: min(42.0454545455vw, 370px);
    height: min(5vw, 44px);
    font-size: min(1.5909090909vw, 14px);
    border-width: min(0.1136363636vw, 1px);
    transition: background-color 0.5s;
  }
  .c-button:hover, .c-button:focus-visible {
    background-color: rgba(255, 255, 255, 0.4);
  }
}
.c-button--documentary::before {
  width: max(4.2666666667vw, 16px);
  height: max(2.9333333333vw, 11px);
  background-image: url("../img/icon_documentary.svg");
}
@media (750px <= width) {
  .c-button--documentary::before {
    width: min(1.8181818182vw, 16px);
    height: min(1.25vw, 11px);
  }
}

.c-buttonList {
  display: flex;
  flex-direction: column;
}
.c-buttonList > li {
  margin: 0 !important;
}
@media (750px <= width) {
  .c-buttonList {
    align-items: center;
  }
}
.c-buttonList--horizontal {
  flex-direction: column;
  gap: max(4.2666666667vw, 16px);
}
@media (750px <= width) {
  .c-buttonList--horizontal {
    flex-flow: row wrap;
    gap: min(1.8181818182vw, 16px);
    align-items: center;
    justify-content: center;
  }
}
.c-buttonList--vertical {
  gap: max(4.2666666667vw, 16px);
}
@media (750px <= width) {
  .c-buttonList--vertical {
    gap: min(1.8181818182vw, 16px);
  }
}

/* ==========================================================================
  Section
========================================================================== */
.c-section {
  padding-block: max(17.0666666667vw, 64px);
}
@media (750px <= width) {
  .c-section {
    padding-block: min(7.2727272727vw, 64px);
  }
}
.c-section__header {
  display: flex;
  flex-direction: column;
  gap: max(8.5333333333vw, 32px);
  align-items: center;
  margin-bottom: max(12.8vw, 48px);
}
@media (750px <= width) {
  .c-section__header {
    flex-direction: row;
    justify-content: space-between;
    margin-bottom: min(3.6363636364vw, 32px);
  }
}
.c-section__titleGroup {
  display: flex;
  flex-direction: column;
  gap: max(4.2666666667vw, 16px);
}
@media (750px <= width) {
  .c-section__titleGroup {
    gap: min(1.8181818182vw, 16px);
  }
}
.c-section__title {
  font-size: max(7.4666666667vw, 28px);
  font-weight: 700;
}
.c-section__title--en {
  font-size: max(4.2666666667vw, 16px);
}
@media (750px <= width) {
  .c-section__title {
    font-size: min(3.6363636364vw, 32px);
  }
  .c-section__title--en {
    font-size: min(2.0454545455vw, 18px);
  }
}
.c-section__lead {
  margin-bottom: max(12.8vw, 48px);
  font-size: max(4.2666666667vw, 16px);
  line-height: 1.8;
}
@media (750px <= width) {
  .c-section__lead {
    margin-bottom: min(3.6363636364vw, 32px);
    font-size: min(2.0454545455vw, 18px);
  }
}

/* ==========================================================================
  Card
========================================================================== */
.c-card:not(:has(.c-card__link)), .c-card__link {
  display: flex;
  flex-direction: column;
  gap: max(2.1333333333vw, 8px);
}
.c-card:not(:has(.c-card__link)) figure, .c-card__link figure {
  overflow: hidden;
}
.c-card:not(:has(.c-card__link)) img, .c-card__link img {
  transition: transform 0.5s;
}
.c-card:not(:has(.c-card__link)):hover img, .c-card:not(:has(.c-card__link)):focus-visible img, .c-card__link:hover img, .c-card__link:focus-visible img {
  transform: scale(1.2);
}
@media (750px <= width) {
  .c-card:not(:has(.c-card__link)), .c-card__link {
    gap: min(0.9090909091vw, 8px);
  }
}
.c-card__body {
  display: flex;
  flex-direction: column;
  gap: max(2.1333333333vw, 8px);
  transition: opacity 0.5s;
}
@media (750px <= width) {
  .c-card__body {
    gap: min(0.9090909091vw, 8px);
  }
}
.c-card__title {
  order: 2;
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(4.2666666667vw, 16px);
  font-weight: 500;
  line-height: 1.6;
}
@media (750px <= width) {
  .c-card__title {
    font-size: min(2.2727272727vw, 20px);
  }
}
.c-card__meta {
  display: flex;
  gap: max(3.2vw, 12px);
  align-items: center;
  order: 1;
}
@media (750px <= width) {
  .c-card__meta {
    gap: min(1.3636363636vw, 12px);
  }
}
.c-card__date {
  flex-shrink: 0;
  padding-block: max(1.0666666667vw, 4px);
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(3.7333333333vw, 14px);
  line-height: 1.33;
  color: #d1b767;
}
@media (750px <= width) {
  .c-card__date {
    padding-block: min(0.4545454545vw, 4px);
    font-size: min(1.5909090909vw, 14px);
  }
}
.c-card__image {
  order: -1;
  aspect-ratio: 420/236;
  overflow: hidden;
}
.c-card__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.c-card:hover .c-card__body, .c-card:focus-visible .c-card__body {
  opacity: 0.5;
}

.c-horizCard:not(:has(.c-horizCard__link)), .c-horizCard__link {
  display: flex;
  gap: max(2.1333333333vw, 8px);
}
@media (750px <= width) {
  .c-horizCard:not(:has(.c-horizCard__link)), .c-horizCard__link {
    gap: min(0.9090909091vw, 8px);
  }
}
.c-horizCard:not(:has(.c-horizCard__link)), .c-horizCard__link {
  opacity: 1;
  transition: opacity 0.5s;
}
.c-horizCard:not(:has(.c-horizCard__link)):hover, .c-horizCard:not(:has(.c-horizCard__link)):focus-visible, .c-horizCard__link:hover, .c-horizCard__link:focus-visible {
  opacity: 0.5;
}
.c-horizCard__body {
  display: flex;
  flex-direction: column;
  gap: max(2.1333333333vw, 8px);
}
@media (750px <= width) {
  .c-horizCard__body {
    gap: min(0.9090909091vw, 8px);
  }
}
.c-horizCard__title {
  order: 2;
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(3.7333333333vw, 14px);
  font-weight: 300;
  line-height: 1.285;
}
@media (750px <= width) {
  .c-horizCard__title {
    font-size: min(1.5909090909vw, 14px);
  }
}
.c-horizCard__meta {
  display: flex;
  gap: max(2.1333333333vw, 8px);
  align-items: center;
  order: 1;
}
@media (750px <= width) {
  .c-horizCard__meta {
    gap: min(0.9090909091vw, 8px);
  }
}
.c-horizCard__date {
  flex-shrink: 0;
  padding-block: max(1.0666666667vw, 4px);
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(3.7333333333vw, 14px);
  line-height: 1.33;
  color: #d1b767;
}
@media (750px <= width) {
  .c-horizCard__date {
    padding-block: min(0.4545454545vw, 4px);
    font-size: min(1.5909090909vw, 14px);
  }
}
.c-horizCard__image {
  flex-shrink: 0;
  flex-basis: max(38.4vw, 144px);
  order: -1;
  height: max(23.7333333333vw, 89px);
  overflow: hidden;
  border-radius: max(1.3333333333vw, 5px);
}
.c-horizCard__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media (750px <= width) {
  .c-horizCard__image {
    flex-basis: min(16.3636363636vw, 144px);
    height: min(10.1136363636vw, 89px);
    border-radius: min(0.5681818182vw, 5px);
  }
}

/* ==========================================================================
  Label
========================================================================== */
.c-label {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: max(10.9333333333vw, 41px);
  height: max(4.2666666667vw, 16px);
  padding-inline: max(1.0666666667vw, 4px);
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(2.6666666667vw, 10px);
  color: #000;
  text-align: center;
  background-color: #d1b767;
}
@media (750px <= width) {
  .c-label {
    min-width: min(4.6590909091vw, 41px);
    height: min(1.8181818182vw, 16px);
    padding-inline: min(0.4545454545vw, 4px);
    font-size: min(1.1363636364vw, 10px);
  }
}

.c-categoryLabel {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: max(42.6666666667vw, 160px);
  height: max(8.5333333333vw, 32px);
  padding-inline: max(1.0666666667vw, 4px);
  font-size: max(4.2666666667vw, 16px);
  font-weight: 700;
  color: #000;
  text-align: center;
  letter-spacing: 0.05em;
  background-color: #d1b767;
  border: max(0.5333333333vw, 2px) solid transparent;
  border-radius: 100vmax;
}
@media (750px <= width) {
  .c-categoryLabel {
    width: min(18.1818181818vw, 160px);
    height: min(3.6363636364vw, 32px);
    padding-inline: min(0.4545454545vw, 4px);
    font-size: min(1.8181818182vw, 16px);
    border-width: min(0.2272727273vw, 2px);
  }
  .c-categoryLabel:is(a) {
    transition: background-color 0.5s, color 0.5s, border-color 0.5s;
  }
  .c-categoryLabel:is(a):hover, .c-categoryLabel:is(a):focus-visible {
    color: #d1b767;
    background-color: #fff;
    border-color: currentcolor;
  }
}

.c-categoryLabelList {
  display: flex;
  flex-basis: 100%;
  flex-wrap: wrap;
  gap: max(2.1333333333vw, 8px);
  align-items: center;
  margin-bottom: max(8.5333333333vw, 32px);
}
@media (750px <= width) {
  .c-categoryLabelList {
    gap: min(0.9090909091vw, 8px);
    margin-bottom: min(5.6818181818vw, 50px);
  }
}

/* ==========================================================================
  Pagination
========================================================================== */
.c-pagination {
  padding-top: max(12.8vw, 48px);
}
@media (750px <= width) {
  .c-pagination {
    padding-block: min(8.1818181818vw, 72px) min(4.5454545455vw, 40px);
  }
}
.c-pagination__body {
  display: flex;
  gap: 0 max(4.8vw, 18px);
  align-items: center;
  justify-content: center;
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(3.7333333333vw, 14px);
  font-weight: 700;
}
@media (750px <= width) {
  .c-pagination__body {
    gap: 0 min(2.0454545455vw, 18px);
    font-size: min(1.5909090909vw, 14px);
  }
}
.c-pagination > span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: max(7.2vw, 27px);
  line-height: 1;
}
.c-pagination > span i {
  width: max(4.2666666667vw, 16px);
  aspect-ratio: 1/1;
  content: "";
  background: center/contain no-repeat;
  filter: invert(89%) sepia(86%) saturate(0%) hue-rotate(257deg) brightness(102%) contrast(101%);
}
@media (750px <= width) {
  .c-pagination > span {
    height: min(3.0681818182vw, 27px);
  }
  .c-pagination > span i {
    width: min(1.8181818182vw, 16px);
  }
}
.c-pagination .page-numbers {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: max(7.2vw, 27px);
  line-height: max(7.2vw, 27px);
  color: #000;
  background-color: #595353;
  transition: background-color 0.5s;
}
@media (750px <= width) {
  .c-pagination .page-numbers {
    width: min(3.0681818182vw, 27px);
    line-height: min(3.0681818182vw, 27px);
  }
}
.c-pagination .page-numbers:hover, .c-pagination .page-numbers:focus-visible {
  background-color: #d1b767;
}
.c-pagination .page-numbers:hover i, .c-pagination .page-numbers:focus-visible i {
  filter: invert(89%) sepia(86%) saturate(0%) hue-rotate(257deg) brightness(102%) contrast(101%);
}
.c-pagination .page-numbers.current {
  background-color: #d1b767;
}
.c-pagination .page-numbers.dots, .c-pagination .page-numbers.prev, .c-pagination .page-numbers.next {
  color: #fff;
  background-color: transparent !important;
  border-color: transparent;
}
.c-pagination .page-numbers.prev, .c-pagination .page-numbers.next {
  transition: opacity 0.5s;
}
.c-pagination .page-numbers.prev:hover, .c-pagination .page-numbers.prev:focus-visible, .c-pagination .page-numbers.next:hover, .c-pagination .page-numbers.next:focus-visible {
  opacity: 0.5;
}

.u-bg .c-pagination .page-numbers.dots,
.u-bg .c-pagination .page-numbers.prev,
.u-bg .c-pagination .page-numbers.next {
  color: #000;
}

/* ==========================================================================
  Embed
========================================================================== */
.c-embed {
  position: relative;
}
.c-embed--16by9 {
  aspect-ratio: 16/9;
}
.c-embed--4by3 {
  aspect-ratio: 4/3;
}
.c-embed--374by700 {
  aspect-ratio: 374/700;
}
.c-embed--128by60 {
  aspect-ratio: 128/60;
}
.c-embed iframe,
.c-embed video {
  width: 100%;
  height: 100%;
}

/* ==========================================================================
  Dialog
========================================================================== */
.c-dialog {
  max-width: 90%;
  margin: auto;
  background: #fff;
}
.c-dialog[open] {
  animation: open 1s ease;
}
.c-dialog::backdrop {
  cursor: pointer;
  background: rgba(0, 0, 0, 0.7);
}
.c-dialog__open, .c-dialog__close {
  cursor: pointer;
}
.c-dialog__container {
  background: #fff;
}
.c-dialog__container > * {
  width: 100%;
}
@media (750px <= width) {
  .c-dialog__container {
    max-height: 80dvh;
  }
}
.c-dialog__close {
  position: fixed;
  top: 5%;
  right: 5%;
  display: block;
  width: max(8.5333333333vw, 32px);
  aspect-ratio: 1/1;
  content: "";
  background: center/contain no-repeat;
  background-image: url("../icons/close.svg");
  filter: invert(89%) sepia(86%) saturate(0%) hue-rotate(257deg) brightness(102%) contrast(101%);
}
@media (750px <= width) {
  .c-dialog__close {
    width: min(4.0909090909vw, 36px);
  }
}
@media (750px <= width) {
  .c-dialog__image {
    max-width: min(90.9090909091vw, 800px);
  }
}
.c-dialog__thumbnail {
  width: 100%;
}
@media (750px <= width) {
  .c-dialog__thumbnail {
    width: min(45.4545454545vw, 400px);
  }
}

@keyframes open {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
/* ==========================================================================
  Post List
========================================================================== */
.c-postList {
  display: flex;
  flex-direction: column;
  gap: max(6.4vw, 24px);
}
@media (750px <= width) {
  .c-postList {
    gap: min(7.2727272727vw, 64px);
  }
}
.c-postList__item {
  display: flex;
  flex-direction: column;
  font-family: "Noto Sans JP", sans-serif;
  border-bottom: max(0.2666666667vw, 1px) solid #d1b767;
}
@media (750px <= width) {
  .c-postList__item {
    font-size: min(1.8181818182vw, 16px);
    border-width: min(0.1136363636vw, 1px);
  }
}
.c-postList__term {
  display: flex;
  flex-shrink: 0;
  gap: max(6.4vw, 24px);
  align-items: center;
}
@media (750px <= width) {
  .c-postList__term {
    gap: min(2.7272727273vw, 24px);
  }
}
.c-postList__definition {
  flex: 1;
}
.c-postList__date {
  font-size: max(3.7333333333vw, 14px);
  color: #d1b767;
}
@media (750px <= width) {
  .c-postList__date {
    font-size: min(1.5909090909vw, 14px);
  }
}
.c-postList__link {
  display: inline-block;
  padding-block: max(3.7333333333vw, 14px) max(2.9333333333vw, 11px);
  font-size: max(3.7333333333vw, 14px);
  line-height: 1.3;
}
@media (750px <= width) {
  .c-postList__link {
    position: relative;
    padding-block: min(1.5909090909vw, 14px);
    font-size: min(1.8181818182vw, 16px);
  }
  .c-postList__link::after {
    position: absolute;
    inset-inline: 0;
    bottom: 0;
    width: 100%;
    height: min(0.1136363636vw, 1px);
    margin-inline: auto;
    content: "";
    background-color: #d1b767;
    transform: scaleX(0);
    transform-origin: center;
    transition: transform 0.5s;
  }
  .c-postList__link::after:hover, .c-postList__link::after:focus-visible {
    transform: scaleX(1);
  }
}

/* ==========================================================================
  Post Navigation
========================================================================== */
.c-postNav {
  margin-top: max(12.8vw, 48px);
  font-family: "Noto Sans JP", sans-serif;
  color: #d1b767;
}
@media (750px <= width) {
  .c-postNav {
    margin-top: min(8.5227272727vw, 75px);
  }
}
.c-postNav__links {
  display: flex;
  gap: max(8.5333333333vw, 32px);
  align-items: center;
  justify-content: center;
  margin-inline: auto;
  font-size: max(3.7333333333vw, 14px);
}
@media (750px <= width) {
  .c-postNav__links {
    gap: min(7.9545454545vw, 70px);
    font-size: min(1.8181818182vw, 16px);
  }
}
.c-postNav__item a {
  display: flex;
  gap: 0 max(3.7333333333vw, 14px);
  align-items: center;
  padding-block: max(0.5333333333vw, 2px);
  border-bottom: max(0.2666666667vw, 1px) solid transparent;
  transition: border-color 0.5s;
}
@media (750px <= width) {
  .c-postNav__item a {
    gap: 0 min(1.5909090909vw, 14px);
    padding-block: min(0.2272727273vw, 2px);
    border-width: min(0.1136363636vw, 1px);
  }
}
.c-postNav__item a:hover, .c-postNav__item a:focus-visible {
  border-color: currentcolor;
}
.c-postNav__item.is-prev a, .c-postNav__item.is-next a {
  border-color: transparent;
  transition: opacity 0.5s;
}
.c-postNav__item.is-prev a:hover, .c-postNav__item.is-prev a:focus-visible, .c-postNav__item.is-next a:hover, .c-postNav__item.is-next a:focus-visible {
  opacity: 0.5;
}
.c-postNav__item.is-inactive {
  color: transparent;
}

.u-bg .c-postNav {
  color: #000;
}
.u-bg .c-postNav__item.is-prev a:hover, .u-bg .c-postNav__item.is-prev a:focus-visible, .u-bg .c-postNav__item.is-next a:hover, .u-bg .c-postNav__item.is-next a:focus-visible {
  color: #000;
}

/* ==========================================================================
  Page
========================================================================== */
.p-page__header {
  display: flex;
  flex-direction: column;
  gap: max(4.2666666667vw, 16px);
  justify-content: center;
  padding-block: max(8.5333333333vw, 32px);
}
@media (750px <= width) {
  .p-page__header {
    gap: min(1.8181818182vw, 16px);
    padding-block: min(6.0227272727vw, 53px) min(8.1818181818vw, 72px);
  }
}
.p-page__title {
  font-size: max(7.4666666667vw, 28px);
  font-weight: 700;
  color: #d1b767;
  text-transform: capitalize;
  letter-spacing: -0.05em;
}
@media (750px <= width) {
  .p-page__title {
    font-size: min(4.0909090909vw, 36px);
  }
}
.p-page__body {
  padding-bottom: max(12.8vw, 48px);
}
@media (750px <= width) {
  .p-page__body {
    padding-bottom: min(9.0909090909vw, 80px);
  }
}
.p-page .u-bg {
  padding-block: max(12.8vw, 48px);
}
@media (750px <= width) {
  .p-page .u-bg {
    padding-block: min(9.0909090909vw, 80px);
  }
}
.p-page__contents {
  font-size: max(4vw, 15px);
  line-height: 1.6;
}
@media (750px <= width) {
  .p-page__contents {
    font-size: min(1.8181818182vw, 16px);
    line-height: 2;
  }
}
.p-page__contents > * {
  margin-block: max(8.5333333333vw, 32px);
}
@media (750px <= width) {
  .p-page__contents > * {
    margin-block: min(8.1818181818vw, 72px);
  }
}
.p-page__contents h2 {
  padding: max(4.2666666667vw, 16px);
  font-size: max(5.3333333333vw, 20px);
  font-weight: 700;
  line-height: 1.33;
  color: #000;
  background-color: #d1b767;
}
@media (750px <= width) {
  .p-page__contents h2 {
    padding: min(2.0454545455vw, 18px);
    font-size: min(2.7272727273vw, 24px);
  }
}
.p-page__contents h3 {
  font-size: max(5.3333333333vw, 20px);
  font-weight: 700;
  line-height: 1.33;
}
@media (750px <= width) {
  .p-page__contents h3 {
    font-size: min(2.7272727273vw, 24px);
  }
}
.p-page__contents h4 {
  font-size: max(5.0666666667vw, 19px);
  font-weight: 700;
  line-height: 1.33;
}
@media (750px <= width) {
  .p-page__contents h4 {
    font-size: min(2.5vw, 22px);
  }
}
.p-page__contents h5 {
  font-size: max(4.8vw, 18px);
  font-weight: 700;
  line-height: 1.33;
}
@media (750px <= width) {
  .p-page__contents h5 {
    font-size: min(2.2727272727vw, 20px);
  }
}
.p-page__contents h6 {
  font-size: max(4.5333333333vw, 17px);
  font-weight: 700;
  line-height: 1.33;
}
@media (750px <= width) {
  .p-page__contents h6 {
    font-size: min(2.0454545455vw, 18px);
  }
}

/* ==========================================================================
  Post
========================================================================== */
.p-post {
  padding-bottom: max(12.8vw, 48px);
}
@media (750px <= width) {
  .p-post {
    padding-bottom: min(9.0909090909vw, 80px);
  }
}
.p-post__header {
  display: flex;
  flex-direction: column;
  gap: max(4.2666666667vw, 16px);
  margin-bottom: max(8.5333333333vw, 32px);
}
@media (750px <= width) {
  .p-post__header {
    gap: min(2.7272727273vw, 24px);
    margin-bottom: min(8.1818181818vw, 72px);
  }
}
.p-post__title {
  font-size: max(6.4vw, 24px);
  font-weight: 700;
  line-height: 1.33;
  letter-spacing: -0.05em;
}
@media (750px <= width) {
  .p-post__title {
    font-size: min(4.0909090909vw, 36px);
  }
}
.p-post__meta {
  display: flex;
  gap: max(6.4vw, 24px);
  align-items: center;
  padding-block: max(2.1333333333vw, 8px);
  border-bottom: max(0.2666666667vw, 1px) solid #d1b767;
}
@media (750px <= width) {
  .p-post__meta {
    gap: min(2.7272727273vw, 24px);
    padding-block: min(0.9090909091vw, 8px);
    border-width: min(0.1136363636vw, 1px);
  }
}
.p-post__date {
  font-size: max(3.7333333333vw, 14px);
  line-height: 1.33;
  color: #d1b767;
}
@media (750px <= width) {
  .p-post__date {
    font-size: min(1.5909090909vw, 14px);
  }
}
.p-post__image {
  aspect-ratio: 892/562;
  margin-bottom: max(12.8vw, 48px);
}
.p-post__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media (750px <= width) {
  .p-post__image {
    margin-bottom: min(8.1818181818vw, 72px);
  }
}
.p-post__contents {
  font-size: max(4vw, 15px);
  line-height: 1.6;
}
@media (750px <= width) {
  .p-post__contents {
    font-size: min(1.8181818182vw, 16px);
    line-height: 2;
  }
}
.p-post__contents > * {
  margin-block: max(8.5333333333vw, 32px);
}
@media (750px <= width) {
  .p-post__contents > * {
    margin-block: min(8.1818181818vw, 72px);
  }
}
.p-post__contents h2 {
  padding: max(4.2666666667vw, 16px);
  font-size: max(5.3333333333vw, 20px);
  font-weight: 700;
  line-height: 1.33;
  color: #000;
  background-color: #d1b767;
}
@media (750px <= width) {
  .p-post__contents h2 {
    padding: min(2.0454545455vw, 18px);
    font-size: min(2.7272727273vw, 24px);
  }
}
.p-post__contents h3 {
  font-size: max(5.3333333333vw, 20px);
  font-weight: 700;
  line-height: 1.33;
}
@media (750px <= width) {
  .p-post__contents h3 {
    font-size: min(2.7272727273vw, 24px);
  }
}
.p-post__contents h4 {
  font-size: max(5.0666666667vw, 19px);
  font-weight: 700;
  line-height: 1.33;
}
@media (750px <= width) {
  .p-post__contents h4 {
    font-size: min(2.5vw, 22px);
  }
}
.p-post__contents h5 {
  font-size: max(4.8vw, 18px);
  font-weight: 700;
  line-height: 1.33;
}
@media (750px <= width) {
  .p-post__contents h5 {
    font-size: min(2.2727272727vw, 20px);
  }
}
.p-post__contents h6 {
  font-size: max(4.5333333333vw, 17px);
  font-weight: 700;
  line-height: 1.33;
}
@media (750px <= width) {
  .p-post__contents h6 {
    font-size: min(2.0454545455vw, 18px);
  }
}
.p-post__contents .wp-element-button,
.p-post__contents .wp-block-button__link {
  transition: opacity 0.5s;
}
.p-post__contents .wp-element-button:hover, .p-post__contents .wp-element-button:focus-visible,
.p-post__contents .wp-block-button__link:hover,
.p-post__contents .wp-block-button__link:focus-visible {
  opacity: 0.5;
}
.p-post .u-bg {
  padding-block: max(8.5333333333vw, 32px);
}
@media (750px <= width) {
  .p-post .u-bg {
    padding-block: min(9.0909090909vw, 80px);
  }
}
.p-post .u-bg table tr {
  border-color: rgba(0, 0, 0, 0.5);
}

.single-news .p-post__contents h2,
.single-interview .p-post__contents h2 {
  padding: 0;
  color: #d1b767;
  background-color: transparent;
}

/* ==========================================================================
  Interview
========================================================================== */
@media (750px <= width) {
  .p-interviewList {
    width: 98%;
    max-width: 880px;
    margin-inline: auto;
  }
  .p-interviewList .splide__list {
    display: flex !important;
    flex-flow: row wrap;
    gap: min(8.1818181818vw, 72px) min(3.75vw, 33px);
    width: 100%;
  }
  .p-interviewList .splide__list .splide__slide {
    flex-basis: calc((100% - min(3.75vw, 33px) * 3) / 4);
  }
}
.p-interviewList a, .p-interviewList__card, .p-interviewList__cardImage {
  display: block;
  height: 100%;
}
.p-interviewList__card {
  position: relative;
}
.p-interviewList__cardBody {
  position: absolute;
  top: max(43.2vw, 162px);
  left: max(1.8666666667vw, 7px);
  z-index: 10;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  color: #d1b767;
}
@media (750px <= width) {
  .p-interviewList__cardBody {
    top: min(18.5227272727vw, 163px);
    left: min(0.7954545455vw, 7px);
  }
}
.p-interviewList__cardNum {
  font-size: max(8.5333333333vw, 32px);
}
@media (750px <= width) {
  .p-interviewList__cardNum {
    font-size: min(3.6363636364vw, 32px);
  }
}
.p-interviewList__cardName {
  margin-top: max(2.1333333333vw, 8px);
  font-size: max(3.2vw, 12px);
  line-height: 1.5;
}
@media (750px <= width) {
  .p-interviewList__cardName {
    margin-top: min(1.8181818182vw, 16px);
    font-size: min(1.8181818182vw, 16px);
    line-height: 1.375;
  }
}
.p-interviewList__cardImage {
  height: 100%;
  aspect-ratio: 197/375;
  filter: grayscale(1);
  transition: filter 0.5s;
}
.p-interviewList__cardImage img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-interviewList__card:hover .p-interviewList__cardImage, .p-interviewList__card:focus-visible .p-interviewList__cardImage {
  filter: grayscale(0);
}

.p-interviewMeta {
  display: flex;
  padding: max(3.7333333333vw, 14px) max(4.2666666667vw, 16px) max(4.8vw, 18px) max(4.5333333333vw, 17px);
  margin-bottom: max(12.8vw, 48px);
  font-size: max(3.7333333333vw, 14px);
  line-height: 1.4;
  background-color: #000;
  border-left: max(1.0666666667vw, 4px) solid #d1b767;
  overflow: hidden;
  border-radius: max(2.6666666667vw, 10px);
}
@media (750px <= width) {
  .p-interviewMeta {
    border-radius: min(1.1363636364vw, 10px);
  }
}
@media (width < 750px) {
  .p-interviewMeta {
    flex-direction: column;
    gap: max(3.2vw, 12px);
  }
}
@media (750px <= width) {
  .p-interviewMeta {
    flex-direction: row;
    justify-content: space-between;
    padding: min(1.5909090909vw, 14px) min(1.8181818182vw, 16px) min(2.0454545455vw, 18px) min(2.9545454545vw, 26px);
    margin-bottom: min(8.1818181818vw, 72px);
    font-size: min(1.8181818182vw, 16px);
    line-height: 1.8;
    border-width: min(0.5681818182vw, 5px);
  }
}
.p-interviewMeta__name {
  font-size: max(3.7333333333vw, 14px);
  font-weight: 700;
  line-height: 1.6;
}
@media (750px <= width) {
  .p-interviewMeta__name {
    font-size: min(1.8181818182vw, 16px);
    line-height: 1.8;
  }
}

.p-interviewProfile {
  border-bottom: max(0.2666666667vw, 1px) solid #d1b767;
}
@media (750px <= width) {
  .p-interviewProfile {
    border-width: min(0.1136363636vw, 1px);
  }
}
.p-interviewProfile__title {
  margin-bottom: max(6.4vw, 24px);
  font-size: max(5.3333333333vw, 20px);
  line-height: 1.33;
  color: #d1b767;
  border-bottom: max(0.2666666667vw, 1px) solid #d1b767;
}
@media (750px <= width) {
  .p-interviewProfile__title {
    margin-bottom: min(3.6363636364vw, 32px);
    font-size: min(2.7272727273vw, 24px);
    border-width: min(0.1136363636vw, 1px);
  }
}
.p-interviewProfile__list {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: max(5.3333333333vw, 20px) max(6.4vw, 24px);
  font-size: max(3.7333333333vw, 14px);
  line-height: 1.33;
}
@media (750px <= width) {
  .p-interviewProfile__list {
    gap: min(2.7272727273vw, 24px) min(4.6590909091vw, 41px);
    font-size: min(1.8181818182vw, 16px);
  }
}
.p-interviewProfile__link {
  display: flex;
  flex-direction: column;
  margin-top: max(6.4vw, 24px);
  font-family: "Noto Sans JP", sans-serif;
  font-size: max(3.7333333333vw, 14px);
  font-weight: 300;
  line-height: 1.33;
  color: #d1b767;
}
@media (750px <= width) {
  .p-interviewProfile__link {
    margin-top: min(9.0909090909vw, 80px);
    font-size: min(1.8181818182vw, 16px);
  }
}
.p-interviewProfile__link > * {
  padding-block: max(2.1333333333vw, 8px);
}
@media (750px <= width) {
  .p-interviewProfile__link > * {
    padding-block: min(0.9090909091vw, 8px);
  }
}
.p-interviewProfile__link p {
  display: flex;
  align-items: center;
}
.p-interviewProfile__link p::before {
  width: max(4vw, 15px);
  aspect-ratio: 1/1;
  margin-right: max(2.1333333333vw, 8px);
  content: "";
  background: center/contain no-repeat url("../img/icon-external.svg");
  filter: invert(71%) sepia(51%) saturate(335%) hue-rotate(8deg) brightness(92%) contrast(94%);
}
@media (750px <= width) {
  .p-interviewProfile__link p::before {
    width: min(1.7045454545vw, 15px);
    margin-right: min(1.1363636364vw, 10px);
  }
}
.p-interviewProfile__link a {
  border-bottom: max(0.2666666667vw, 1px) solid transparent;
  transition: border-color 0.5s;
}
.p-interviewProfile__link a:hover, .p-interviewProfile__link a:focus-visible {
  border-color: currentcolor;
}
@media (750px <= width) {
  .p-interviewProfile__link a {
    border-width: min(0.1136363636vw, 1px);
  }
}

.p-interviewPost__image {
  margin-bottom: max(12.8vw, 48px);
}
@media (750px <= width) {
  .p-interviewPost__image {
    margin-bottom: min(8.1818181818vw, 72px);
  }
}
.p-interviewPost .p-interviewCta {
  margin-top: max(12.8vw, 48px);
}
@media (750px <= width) {
  .p-interviewPost .p-interviewCta {
    margin-top: min(8.1818181818vw, 72px);
  }
}

.p-page:has(.p-interviewList) {
  padding-bottom: max(12.8vw, 48px);
}
@media (750px <= width) {
  .p-page:has(.p-interviewList) {
    padding-bottom: min(9.0909090909vw, 80px);
  }
}
.p-page:has(.p-interviewList) .p-page__body {
  padding-bottom: max(8.5333333333vw, 32px);
}
@media (750px <= width) {
  .p-page:has(.p-interviewList) .p-page__body {
    padding-bottom: min(8.1818181818vw, 72px);
  }
}
.p-page:has(.p-interviewList) .c-postNav {
  margin-top: max(8.5333333333vw, 32px);
}
@media (750px <= width) {
  .p-page:has(.p-interviewList) .c-postNav {
    margin-top: min(8.1818181818vw, 72px);
  }
}

/* ==========================================================================
  Colomn
========================================================================== */
.p-column__categoryList {
  display: flex;
  flex-basis: 100%;
  flex-wrap: wrap;
  gap: max(2.1333333333vw, 8px);
  align-items: center;
}
@media (750px <= width) {
  .p-column__categoryList {
    gap: min(0.9090909091vw, 8px);
  }
}
.p-column .u-bg:not(:has(.p-columnPost)) {
  position: relative;
}
.p-column .u-bg:not(:has(.p-columnPost))::before {
  position: absolute;
  inset-inline: 0;
  top: max(20.8vw, 78px);
  margin: auto;
  font-size: max(10.4vw, 39px);
  font-weight: 700;
  color: #e2dfdf;
  text-align: center;
  content: "SpotlightS Column";
}
@media (750px <= width) {
  .p-column .u-bg:not(:has(.p-columnPost))::before {
    top: min(13.1818181818vw, 116px);
    font-size: min(10.9090909091vw, 96px);
  }
}
@media (1261px <= width) {
  .p-column .u-bg:not(:has(.p-columnPost))::before {
    top: min(8.1818181818vw, 72px);
    font-size: min(15.7954545455vw, 139px);
  }
}
.p-column .u-bg:not(:has(.p-columnPost)) .p-column__categoryList {
  margin-bottom: max(12.8vw, 48px);
}
@media (750px <= width < 1261px) {
  .p-column .u-bg:not(:has(.p-columnPost)) .p-column__categoryList {
    margin-bottom: min(13.6363636364vw, 120px);
  }
}
@media (1261px <= width) {
  .p-column .u-bg:not(:has(.p-columnPost)) .p-column__categoryList {
    margin-bottom: min(15vw, 132px);
  }
}
.p-column .u-bg:not(:has(.p-columnPost)) > .l-container {
  position: relative;
  z-index: 10;
}
.p-column .u-bg:not(:has(.p-columnPost)) .l-container--column {
  background-color: #ebebeb;
}

/* ==========================================================================
  Display
========================================================================== */
.u-float--left {
  float: left;
  margin-right: max(4.2666666667vw, 16px);
  margin-bottom: max(4.2666666667vw, 16px);
}
@media (750px <= width) {
  .u-float--left {
    margin-right: min(1.8181818182vw, 16px);
    margin-bottom: min(1.8181818182vw, 16px);
  }
}
.u-float--right {
  float: right;
  margin-bottom: max(4.2666666667vw, 16px);
  margin-left: max(4.2666666667vw, 16px);
}
@media (750px <= width) {
  .u-float--right {
    margin-bottom: min(1.8181818182vw, 16px);
    margin-left: min(1.8181818182vw, 16px);
  }
}

.u-clearfix {
  display: block;
}
.u-clearfix::after {
  clear: both;
  display: block;
  content: "";
}
.u-clearfix::before {
  clear: both;
  display: block;
  content: "";
}

@media (width < 750px) {
  .u-hidden-md {
    display: none !important;
  }
}

@media (750px <= width) {
  .u-hidden-lg {
    display: none !important;
  }
}

.u-bg {
  color: #000;
  background-color: #ebebeb;
}

/* ==========================================================================
  Text Utility
========================================================================== */
.u-text--sm {
  font-size: 0.875em;
}

.u-text--highlight {
  background: #d1b767;
}

.u-text--attention {
  font-weight: 700;
  color: #d1b767;
}

.u-text--warning {
  font-weight: 700;
  color: #f00;
}

/* ==========================================================================
  Program
========================================================================== */
.u-details .u-details__summary::after {
  background-image: url("../img/chevron_down.svg");
}
.u-details.is-open .u-details__summary::after {
  background-image: url("../img/chevron_up.svg");
}

.u-parallax-section {
  opacity: 0;
  transform: translateY(50px);
  transition: opacity 0.8s ease-out, transform 0.8s ease-out;
}
.u-parallax-section.visible {
  opacity: 1;
  transform: translateY(0);
}