/* ==========================================================================
   先輩インタビュー(interview) — /interview/01〜06/index.php 共通スタイル
   ========================================================================== */

.page-interview main {
  max-width: none;
  margin: 0;
  padding: 0;
}

.interview-hero {
  width: 100vw;
  margin-left: calc(-50vw + 50%);
  background-color: var(--color-primary);
  padding-block: 70px;
}

.interview-hero__inner {
  max-width: var(--width-content-gutter);
  margin-inline: auto;
  padding-inline: 20px;
}

.interview-hero__heading {
  position: relative;
  margin: 0 0 56px;
  line-height: 1.2;
}

/*  白25%(ネイビーに対して)の透かし文字。 */
.interview-hero__watermark {
  display: block;
  color: color-mix(in srgb, white 25%, var(--color-primary));
  font-size: 6.9375rem; /* 111px */
  font-weight: var(--font-weight-bold);
  letter-spacing: 0.02em;
}

.interview-hero__title {
  display: block;
  margin-top: -2.4rem;
  color: var(--color-bg);
  font-size: 2.8125rem; /* 45px */
  font-weight: var(--font-weight-medium);
}

/* --- 白カード --- */
.interview-card {
  margin-bottom: 64px;
  padding: 25px 25px 20px;
  background-color: var(--color-bg);
  border-radius: 24px;
}

.interview-profile {
  display: grid;
  grid-template-columns: minmax(0, 460px) 1fr;
  gap: 48px;
  align-items: center;
  margin-bottom: 56px;
}

.interview-profile__photo img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 8px;
  object-fit: cover;
}

.interview-profile__catchcopy {
  margin: 0 0 32px;
  color: var(--color-primary);
  font-size: 1.75rem; /* 28px */
  font-weight: var(--font-weight-semibold);
  line-height: 1.5;
}

.interview-profile__role {
  margin: 0 0 20px;
  color: var(--color-text);
  font-family: var(--font-round);
  font-size: 1.6875rem; /* 27px */
  font-weight: var(--font-weight-light);
}

.interview-profile__meta {
  margin: 0;
  color: var(--color-text);
  font-family: var(--font-round);
  font-size: 1rem; /* 16px */
  font-weight: var(--font-weight-bold);
  line-height: 1.9;
}

/* --- Q&A --- */
.interview-qa {
  margin-inline: 75px;
}

.interview-qa__item {
  margin-bottom: 40px;
}

.interview-qa__q {
  margin: 0 0 12px;
  color: var(--color-primary);
  font-family: var(--font-round);
  font-size: 1.1875rem; /* 19px */
  font-weight: var(--font-weight-bold);
  line-height: 1.6;
}

.interview-qa__a {
  margin: 0 0 12px;
  color: var(--color-text);
  font-family: var(--font-round);
  font-size: 1rem; /* 16px */
  font-weight: var(--font-weight-normal);
  line-height: 1.9;
}

.interview-qa__a:last-child {
  margin-bottom: 0;
}

.interview-qa__photo {
  margin: 0 0 40px;
}

.interview-qa__photo img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 8px;
}

/* ==========================================================================
   SP(max-width: 768px)
   ========================================================================== */
@media (max-width: 768px) {
  .interview-hero {
    padding-top: 40px;
  }

  .interview-hero__heading {
    margin-bottom: 24px;
  }

  .interview-hero__watermark {
    font-size: 2.8125rem; /* 45px */
  }

  .interview-hero__title {
    margin-top: -1.3rem;
    font-size: 1.4375rem; /* 23px */
  }

  .interview-card {
    margin-bottom: 40px;
    padding: 32px 20px 40px;
    border-radius: 16px;
  }

  .interview-profile {
    grid-template-columns: 1fr;
    gap: 24px;
    margin-bottom: 40px;
  }

  .interview-profile__catchcopy {
    margin-bottom: 24px;
    font-size: 1.4375rem; /* 23px */
  }

  .interview-profile__role {
    margin-bottom: 16px;
  }

  .interview-qa {
    margin-inline: 0;
}

  .interview-qa__item {
    margin-bottom: 32px;
  }

  .interview-qa__photo {
    margin-bottom: 32px;
  }

  .btn-entry {
    width: 100%;
    max-width: 320px;
  }
}
