/* =====================================================
   INTERESTING INNOVATION - INTERVIEW DETAIL（インタビュー詳細）
   style.css → sub.css の後に読み込む
   基準幅: PC 1920 / TB 768 / SP 393（1rem = 基準幅で 10px）
   ===================================================== */

/* 共通の見出し帯（--thin）は css/sub.css。ヘッダー・フッターはホームと同じ（style.css） */

/* CTA が最後のセクションなので、ベージュ背景の下余白は無し（波が CTA の下端に重なる） */
.page-interview-detail .page-bg { padding-bottom: 0; }

/* ---------- メインビジュアル（Frame 755: 1920x1080 黒 r5） ---------- */
.page-interview-detail .page-head { display: none; } /* 上のオレンジ帯は無し。写真がそのままヒーロー */
/* スクロール前はヘッダーが写真の上に乗るので、ロゴ・ナビを白に（採用トップと同じ扱い） */
.page-interview-detail .header:not(.is-scrolled) .header__logo img { filter: brightness(0) invert(1); }
@media (min-width: 1200px) {
  .page-interview-detail .header:not(.is-scrolled) .gnav__list a { color: #fff; }
  .page-interview-detail .header:not(.is-scrolled) .gnav__list a:hover { color: var(--orange); }
}
@media (max-width: 1199px) { .page-interview-detail .header:not(.is-scrolled) .menu-btn:not(.is-open) { color: #fff; } }
.ivd-mv { position: relative; height: 100svh; min-height: 48rem; margin-top: 0; background: #000; border-radius: 0; overflow: hidden; z-index: 1; } /* 全画面の写真なので角丸にしない */ /* ブラウザの高さぴったり */
.ivd-mv__photo { position: absolute; inset: 0; }
.ivd-mv__photo img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 0%; } /* 人物の顔が画面中央に近づく位置 */
.ivd-mv__info { position: absolute; left: 8rem; bottom: 8rem; z-index: 2; display: flex; flex-direction: column-reverse; align-items: flex-start; gap: 2.4rem; } /* 左下にまとめる。上がプロフィール、下がコピー */
.ivd-mv__copy { display: flex; flex-direction: column; align-items: flex-start; gap: 1.6rem; margin: 0; }
.ivd-mv__copy span { display: block; padding: 1.2rem 2.4rem; background: #fff; border-radius: .5rem; font-size: 4.8rem; font-weight: 700; line-height: 1.2; white-space: nowrap; }
.ivd-mv__profile { width: 40rem; padding: 3rem 3.3rem; background: rgba(255,255,255,.7); border-radius: .5rem; }
.ivd-mv__tag { display: inline-block; padding: .8rem 1.6rem; background: var(--orange); border-radius: .3rem; font-size: 1.6rem; font-weight: 500; line-height: 1; color: #fff; white-space: pre; }
.ivd-mv__name { display: flex; align-items: baseline; margin-top: 1rem; line-height: 1.7; }
.ivd-mv__name .ja { font-size: 3.6rem; font-weight: 600; }
.ivd-mv__name small { margin-left: .2rem; font-size: 2rem; font-weight: 600; }
.ivd-mv__data { margin-top: .2rem; font-size: 2rem; font-weight: 600; line-height: 1.7; white-space: pre; }

/* ---------- Q&A ---------- */
.ivd-qa { padding: 0 32rem; }
.ivd-qa__row { display: flex; align-items: flex-start; gap: 6.6rem; }
.ivd-qa__row--1 { margin-top: 16rem; }
.ivd-qa__row--2 { margin-top: 9.6rem; }
.ivd-qa__row--3 { margin-top: 9.6rem; }
.ivd-qa__photo { flex: none; width: 57.4rem; border-radius: .5rem; overflow: hidden; }
.ivd-qa__photo--1 { aspect-ratio: 1 / 1; }
.ivd-qa__photo--2 { aspect-ratio: 574 / 672; }
.ivd-qa__photo img { width: 100%; height: 100%; object-fit: cover; }
.ivd-qa__text { width: 64rem; }
.ivd-qa__text--wide { width: 128rem; }
.qa + .qa { margin-top: 6.4rem; }
.qa__q { display: flex; align-items: center; gap: 1.6rem; margin: 0; padding: .8rem 0; color: var(--text); }
.qa__mark { font-size: 3.2rem; font-weight: 500; line-height: 1; color: var(--orange); } /* Figma: style=IIColor/main */
.qa__text { font-size: 2.1rem; font-weight: 600; line-height: 1; }
.qa__a { margin-top: 2.4rem; font-size: 1.6rem; font-weight: 400; line-height: 1.8; color: var(--text); }

/* ---------- セクション見出し（SCHEDULE / MESSAGE） ---------- */
.ivd-sec-head { position: relative; z-index: 1; display: flex; flex-direction: column; align-items: center; gap: 1.6rem; text-align: center; } /* Figma: 見出しはカードの上端に重なる */
.ivd-sec-head__en { font-size: 1.6rem; font-weight: 700; line-height: 1; letter-spacing: -.03em; color: var(--orange); }
.ivd-sec-head__ja { font-size: 3.2rem; font-weight: 700; line-height: 1; }
.ivd-schedule { margin-top: 16rem; }
.ivd-message { margin-top: 12.6rem; }

/* 白カード（Frame 699 / 710: r24, 影 0 4 16 2%） */
.ivd-card { width: 128rem; margin: -1.3rem auto 0; background: #fff; border-radius: 2.4rem; box-shadow: 0 .4rem 1.6rem rgba(0,0,0,.02); }
.tl__empty { margin: 0; font-size: 1.8rem; font-weight: 500; line-height: 1.8; text-align: center; color: rgba(0,0,0,.6); }
.ivd-card--schedule { padding: 12.8rem 9.6rem; }
.ivd-card--message { display: flex; align-items: center; gap: 5.4rem; padding: 6.4rem; }

/* ---------- 1 日のスケジュール（タイムライン） ---------- */
.tl { display: flex; flex-direction: column; gap: 6.4rem; margin: 0; padding: 0; list-style: none; }
.tl__item { position: relative; display: grid; grid-template-columns: 7.5rem 2.4rem 1fr; column-gap: 4rem; align-items: start; }
/* 点と点をつなぐ縦線（次の項目の点まで） */
.tl__item:not(:last-child)::before { content: ""; position: absolute; left: 12.7rem; top: 1.65rem; width: 1px; height: calc(100% + 6.4rem); background: var(--orange); }
.tl__time { font-family: 'Rubik', var(--font-en); font-size: 2.2rem; font-weight: 700; line-height: 1.18; color: var(--orange); } /* Figma: Rubik Bold / style=IIColor/main */
.tl__dot { position: relative; z-index: 1; display: block; width: 1.9rem; height: 1.9rem; margin: .7rem 0 0 .3rem; background: var(--orange); border-radius: 50%; }
.tl__body { display: grid; grid-template-columns: 27.9rem 1fr; align-items: start; }
.tl__ttl { margin: 0; padding-right: 2rem; font-size: 2.1rem; font-weight: 600; line-height: 1.4; }
.tl__desc { margin: 0; font-size: 1.6rem; font-weight: 400; line-height: 1.8; }
/* カードが見えたら項目を上から順に */
.ivd-card--schedule.reveal .tl__item { opacity: 0; transform: translateY(2rem); transition: opacity .7s ease, transform .7s cubic-bezier(.2,.8,.2,1); transition-delay: calc(var(--d, 0s) + .2s); }
.ivd-card--schedule.reveal.is-visible .tl__item { opacity: 1; transform: none; }

/* ---------- 求職者の方へのメッセージ ---------- */
.ivd-message__face { flex: none; width: 32rem; height: 32rem; border-radius: 50%; overflow: hidden; }
.ivd-message__face img { width: 100%; height: 100%; object-fit: cover; }
.ivd-message__body { flex: 1; min-width: 0; color: var(--text); }
.ivd-message__head { display: flex; align-items: center; justify-content: space-between; gap: 1.6rem; }
.ivd-message__name { display: flex; align-items: baseline; margin: 0; line-height: 1; }
.ivd-message__role { font-size: 2.7rem; font-weight: 600; }
.ivd-message__ra { margin-left: 2.4rem; font-size: 2.4rem; font-weight: 600; }
.ivd-message__name small { margin-left: .4rem; font-size: 1.6rem; font-weight: 700; }
.ivd-message__tag { flex: none; padding: 1.2rem 1.6rem; background: var(--orange); border-radius: .5rem; font-size: 1.6rem; font-weight: 500; line-height: 1; color: #fff; white-space: pre; } /* Figma: own=#f26a6c → style=IIColor/main（オレンジ）を採用 */
.ivd-message__text { margin-top: 4rem; font-size: 1.8rem; font-weight: 500; line-height: 1.8; }

/* ---------- 他のインタビュー（Frame 816: 薄オレンジのグラデ + 波 + カルーセル） ---------- */
.ivd-list { position: relative; margin-top: 31.5rem; }
.ivd-list::before { content: ""; position: absolute; left: 0; top: 0; width: 100%; height: 100%; background: linear-gradient(to bottom, #ffebd8 0, rgba(255,235,216,0) 118rem); mix-blend-mode: multiply; pointer-events: none; }
.ivd-list__wave { position: absolute; left: 0; top: -6.8rem; height: 6.8rem; color: #ffebd8; mix-blend-mode: multiply; }
.ivd-list__bg-en { position: absolute; left: 0; top: -11rem; width: 100%; margin: 0; font-size: 9.6rem; font-weight: 500; line-height: 1; letter-spacing: -.03em; text-align: center; color: var(--orange); z-index: 1; }
.ivd-list__head { position: relative; padding-top: 7.9rem; text-align: center; z-index: 1; }
.ivd-list__ttl { font-size: 4rem; font-weight: 700; line-height: 1; }
.ivd-list__lead { margin-top: 1.6rem; font-size: 1.8rem; font-weight: 600; line-height: 1.4; }
.ivd-list__arrows { position: absolute; right: 12.8rem; top: 8.6rem; display: flex; gap: 1.6rem; z-index: 2; }
.ivd-list__arrow { display: flex; align-items: center; justify-content: center; width: 6rem; height: 6rem; background: #fff; border: 2px solid var(--orange); border-radius: 50%; transition: background-color .3s; }
.ivd-list__arrow i { display: block; width: 2rem; height: 1.4rem; background: var(--orange); -webkit-mask: url("data:image/svg+xml,<svg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2020%2014%22><path%20d=%22M12.6%200.3a1%201%200%200%201%201.4%200l6%206a1%201%200%200%201%200%201.4l-6%206a1%201%200%200%201-1.4-1.4L17.2%208H1a1%201%200%200%201%200-2h16.2l-4.6-4.3a1%201%200%200%201%200-1.4z%22%20fill=%22currentColor%22/></svg>") center / contain no-repeat; mask: url("data:image/svg+xml,<svg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2020%2014%22><path%20d=%22M12.6%200.3a1%201%200%200%201%201.4%200l6%206a1%201%200%200%201%200%201.4l-6%206a1%201%200%200%201-1.4-1.4L17.2%208H1a1%201%200%200%201%200-2h16.2l-4.6-4.3a1%201%200%200%201%200-1.4z%22%20fill=%22currentColor%22/></svg>") center / contain no-repeat; transition: background-color .3s, transform .3s; }
.ivd-list__arrow--prev i { transform: scaleX(-1); }
.ivd-list__arrow:hover { background: var(--orange); }
.ivd-list__arrow:hover i { background: #fff; }
.ivd-list__arrow:hover.ivd-list__arrow--next i { transform: translateX(.3rem); }
.ivd-list__arrow:hover.ivd-list__arrow--prev i { transform: scaleX(-1) translateX(.3rem); }

/* カルーセル: 中央のカードを基準に左右へ見切れる（Figma: 5 枚を gap72 で中央寄せ）。横スクロール + スナップ */
.ivd-slider { position: relative; margin-top: 10.2rem; z-index: 1; }
.ivd-slider__track { position: relative; display: flex; gap: 7.2rem; margin: 0; padding: 0 calc(50% - 23.7rem); list-style: none; overflow-x: auto; overscroll-behavior-x: contain; scroll-snap-type: x mandatory; scrollbar-width: none; cursor: grab; }
.ivd-slider__track::-webkit-scrollbar { display: none; }
.ivd-slider__track.is-drag { scroll-snap-type: none; cursor: grabbing; }
@media (hover: hover) and (pointer: fine) and (min-width: 1200px) { .ivd-slider__track, .ivd-slider__track.is-drag { cursor: none; scroll-snap-type: none; } } /* PC: DRAG カーソル + 1 枚ずつのドラッグ（js/brands.js） */
.ivd-slider__dots { justify-content: center; margin-top: 4rem; }
.ivd-slider__track .iv-card { flex: none; scroll-snap-align: center; }
.ivd-slider.reveal { opacity: 1; transform: none; filter: none; }
.ivd-slider.reveal .iv-card { opacity: 0; transform: translateY(4rem); filter: blur(.4rem); transition: opacity .8s ease, transform .8s cubic-bezier(.2,.8,.2,1), filter .8s ease; transition-delay: var(--d, 0s); }
.ivd-slider.reveal.is-visible .iv-card { opacity: 1; transform: none; filter: none; }
.ivd-list__more { position: relative; margin-top: 10.2rem; text-align: center; z-index: 1; }
.ivd-list__btn { height: 7rem; padding: 0 3.2rem 0 5rem; gap: 2.4rem; font-size: 2.1rem; }

/* ---------- インタビューカード（一覧ページと同じ部品。カード内は em） ---------- */
.iv-card { width: 47.4em; font-size: 1rem; }
.iv-card__link { display: block; color: var(--black); }
.iv-card__vis { position: relative; width: 100%; aspect-ratio: 1 / 1; overflow: hidden; }
.iv-card__vis > * { position: absolute; }
.iv-card__mark { left: 0; top: 0; width: 34.6em; } /* 見た目は sub.css の .iv-glow */
.iv-card__img { max-width: none; height: auto; transition: transform .6s cubic-bezier(.2,.8,.2,1); }
.iv-card__link:hover .iv-card__img { transform: scale(1.04); }
.iv-card--1 .iv-card__img { left: -8.2em; top: -3.4em; width: 83em; }
.iv-card--2 .iv-card__img { left: -.1em; top: 2.8em; width: 47.5em; }
.iv-card--3 .iv-card__img { left: -3.2em; top: 2.7em; width: 41.1em; }
.iv-card--4 .iv-card__img { left: 0; top: 2.1em; width: 47.4em; }
.iv-card--5 .iv-card__img { left: 6.8em; top: 2.8em; width: 33.5em; }
.iv-card__copy { right: 0; top: 0; display: flex; flex-direction: column; align-items: flex-start; gap: .8em; margin: 0; writing-mode: vertical-rl; z-index: 2; }
.iv-card__copy span { display: block; padding: .333em; background: #fff; font-size: 2.2em; font-weight: 600; line-height: 1.1; white-space: nowrap; } /* 帯の長さ＝文字数。サイズは一覧・採用トップと共通 */
.iv-card__meta { display: flex; align-items: center; justify-content: center; height: 6.4em; margin-top: .8em; padding: 1.2em 1.6em; border-radius: .3em; white-space: nowrap; }
.iv-card__name { display: flex; align-items: center; gap: .4em; }
.iv-card__name .ja { font-size: 2.4em; font-weight: 600; line-height: 1; transition: color .3s; }
.iv-card__name small { font-size: 1.6em; font-weight: 600; line-height: 1; }
.iv-card__link:hover .iv-card__name .ja { color: var(--orange); }
.iv-card__info { display: flex; align-items: center; font-size: 1.6em; font-weight: 500; line-height: 1; white-space: pre; }
.iv-card__info::before { content: ""; width: 1px; height: 1.5em; margin: 0 1.2em; background: var(--black); }

/* ---------- 採用ナビ ---------- */
.rnav { position: relative; margin-top: 20rem; z-index: 1; }
.rnav__list { display: flex; justify-content: center; margin: 0; padding: 0; list-style: none; }
.rnav__list li { padding: 0 1.6rem; border-left: 1px solid rgba(0,0,0,.5); }
.rnav__list li:last-child { border-right: 1px solid rgba(0,0,0,.5); }
.rnav__list a { display: block; width: 24rem; padding: 1.6rem 2.4rem; font-size: 2rem; font-weight: 600; line-height: 1.3; text-align: center; white-space: nowrap; transition: color .3s; }
.rnav__list a:hover, .rnav__list a[aria-current="page"] { color: var(--orange); }

/* ---------- ENTRY / 応募する（採用系ページ共通 CTA） ---------- */
.entry-cta { position: relative; height: 96rem; margin-top: 24rem; background: #ffdd78; overflow: hidden; } /* Figma: IIColor/sub */
.entry-cta__bg { position: absolute; left: -23.5rem; top: -37.9rem; width: 238.9rem; max-width: none; height: auto; }
.entry-cta__inner { position: relative; z-index: 1; padding-top: 26.7rem; text-align: center; }
.entry-cta__ttl { display: flex; flex-direction: column; align-items: center; gap: 1.6rem; }
.entry-cta__en { font-size: 9.6rem; font-weight: 700; line-height: 1; letter-spacing: -.03em; color: var(--orange); }
.entry-cta__ja { font-size: 2.4rem; font-weight: 600; line-height: 1; color: #fff; }
.entry-cta__btns { display: flex; justify-content: center; gap: 4rem; margin: 12.2rem 0 0; padding: 0; list-style: none; }
.entry-cta__btn { display: flex; align-items: center; justify-content: center; height: 10rem; padding: 0 5rem; background: #fff; border-radius: .5rem; font-size: 2.4rem; font-weight: 700; line-height: 1.5; color: var(--black); white-space: nowrap; transition: background-color .3s, color .3s; }
.entry-cta__btn:hover { background: var(--orange); color: #fff; }

/* =====================================================
   TB / SP 共通（〜1199px）
   ===================================================== */
@media (max-width: 1199px) {
  /* SP: 写真（コピー重ね）の下にプロフィールカードを置く（grid で写真とコピーを同じセルに重ねる） */
  .ivd-mv { display: block; height: 100svh; margin-top: 0; background: #000; border-radius: 0; overflow: hidden; }
  .ivd-mv__photo { position: absolute; inset: 0; background: #000; overflow: hidden; }
  .ivd-mv__photo img { object-position: 47% 50%; } /* 顔を画面中央に */
  .ivd-mv__info { left: var(--pad-x); right: var(--pad-x); bottom: 8rem; gap: 1.2rem; } /* 固定のエントリーボタンに重ならない高さ */
  .ivd-mv__copy { gap: .8rem; margin: 0; }
  .ivd-mv__copy span { padding: .6rem 1.2rem; border-radius: .3rem; font-size: 1.8rem; }
  .ivd-mv__profile { width: 100%; min-height: 0; margin: 0; padding: 1.6rem 2rem; }
  .ivd-mv__tag { padding: .6rem 1.2rem; font-size: 1.2rem; }
  .ivd-mv__name { margin-top: .6rem; }
  .ivd-mv__name .ja { font-size: 2.4rem; }
  .ivd-mv__name small { font-size: 1.4rem; }
  .ivd-mv__data { font-size: 1.4rem; }

  .ivd-qa { padding: 0 var(--pad-x); }
  .ivd-qa__row { flex-direction: column; gap: 2.4rem; }
  .ivd-qa__row--1 { margin-top: 4.8rem; }
  .ivd-qa__row--2, .ivd-qa__row--3 { margin-top: 4.8rem; }
  .ivd-qa__row--2 .ivd-qa__photo { order: -1; } /* SP は写真 → 文章の順に統一 */
  .ivd-qa__photo { width: 100%; }
  .ivd-qa__photo--2 { aspect-ratio: 4 / 3; }
  .ivd-qa__text, .ivd-qa__text--wide { width: auto; }
  .qa + .qa { margin-top: 3.2rem; }
  .qa__q { gap: 1.2rem; padding: .4rem 0; }
  .qa__mark { font-size: 2.4rem; }
  .qa__text { font-size: 1.6rem; line-height: 1.4; }
  .qa__a { margin-top: 1.2rem; font-size: 1.4rem; }

  .ivd-sec-head { gap: 1rem; }
  .ivd-sec-head__en { font-size: 1.2rem; }
  .ivd-sec-head__ja { font-size: 2.2rem; }
  .ivd-schedule { margin-top: 6.4rem; }
  .ivd-message { margin-top: 6.4rem; }
  .ivd-card { width: auto; margin: -.9rem var(--pad-x) 0; border-radius: 1.6rem; }
  .ivd-card--schedule { padding: 3.2rem 1.6rem; }
  .ivd-card--message { flex-direction: column; gap: 2.4rem; padding: 3.2rem 2rem; }

  .tl { gap: 3.2rem; }
  .tl__item { grid-template-columns: 4.6rem 1.6rem 1fr; column-gap: 1.2rem; }
  .tl__item:not(:last-child)::before { left: 6.55rem; top: .9rem; height: calc(100% + 3.2rem); }
  .tl__time { font-size: 1.4rem; line-height: 1.2; }
  .tl__dot { width: 1.2rem; height: 1.2rem; margin: .3rem 0 0 .2rem; }
  .tl__body { grid-template-columns: 1fr; }
  .tl__ttl { padding-right: 0; font-size: 1.5rem; }
  .tl__desc { margin-top: .6rem; font-size: 1.3rem; line-height: 1.7; }

  .ivd-message__face { width: 16rem; height: 16rem; }
  .ivd-message__body { width: 100%; }
  .ivd-message__head { flex-direction: column; align-items: flex-start; gap: 1.2rem; }
  .ivd-message__role { font-size: 1.8rem; }
  .ivd-message__ra { margin-left: 1.2rem; font-size: 1.8rem; }
  .ivd-message__name small { font-size: 1.2rem; }
  .ivd-message__tag { padding: .8rem 1.2rem; font-size: 1.2rem; }
  .ivd-message__text { margin-top: 2rem; font-size: 1.4rem; }

  .ivd-list { display: flex; flex-direction: column; margin-top: 8rem; }
  .ivd-list::before { background: linear-gradient(to bottom, #ffebd8 0, rgba(255,235,216,0) 100%); }
  .ivd-list__wave { top: -3rem; height: 3rem; }
  .ivd-list__bg-en { top: -5rem; font-size: 4.8rem; }
  .ivd-list__head { order: 0; padding-top: 4rem; }
  .ivd-list__ttl { font-size: 2.2rem; }
  .ivd-list__lead { margin-top: 1rem; font-size: 1.3rem; }
  .ivd-slider { order: 1; margin-top: 2.4rem; }
  .ivd-slider__track { gap: 2.4rem; padding: 0 calc(50% - 15rem); }
  .ivd-slider__track .iv-card { width: 30rem; font-size: calc(30rem / 47.4); }
  .ivd-list__arrows { position: relative; right: auto; top: auto; order: 2; justify-content: center; gap: 1.2rem; margin-top: 2.4rem; }
  .ivd-list__arrow { width: 4.4rem; height: 4.4rem; }
  .ivd-list__arrow i { width: 1.6rem; height: 1.1rem; }
  .ivd-list__more { order: 3; margin-top: 3.2rem; }
  .ivd-list__btn { height: 5.4rem; padding: 0 2.8rem 0 2rem; gap: 2rem; font-size: 1.4rem; }
  .rnav { order: 4; }

  .rnav { margin-top: 6.4rem; padding: 0 var(--pad-x); }
  .rnav__list { flex-wrap: wrap; }
  .rnav__list li { width: 50%; padding: 0; border-left: 0; border-bottom: 1px solid rgba(0,0,0,.5); }
  .rnav__list li:first-child, .rnav__list li:nth-child(2) { border-top: 1px solid rgba(0,0,0,.5); }
  .rnav__list li:nth-child(odd) { border-right: 1px solid rgba(0,0,0,.5); }
  .rnav__list li:last-child { border-right: 0; }
  .rnav__list a { width: auto; padding: 1.4rem .8rem; font-size: 1.4rem; }

  .entry-cta { height: auto; margin-top: 6.4rem; padding: 6.4rem var(--pad-x) 9.6rem; }
  .entry-cta__bg { left: 0; top: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 60%; }
  .entry-cta__inner { padding-top: 0; }
  .entry-cta__ttl { gap: 1.2rem; }
  .entry-cta__en { font-size: 6.4rem; }
  .entry-cta__ja { font-size: 1.6rem; }
  .entry-cta__btns { flex-direction: column; gap: 1.2rem; margin-top: 4rem; }
  .entry-cta__btn { height: 6.4rem; padding: 0 2rem; font-size: 1.6rem; }
}

/* =====================================================
   TB のみ（768〜1199px）
   ===================================================== */
@media (min-width: 768px) and (max-width: 1199px) {
  /* TB: PC と同じく写真の上に重ねる */
  .ivd-mv { height: 100svh; min-height: 40rem; }
  .ivd-mv__photo img { object-position: 46% 50%; }
  .ivd-mv__photo { position: absolute; inset: 0; }
  .ivd-mv__info { left: var(--pad-x); right: auto; bottom: 4rem; gap: 2rem; }
  .ivd-mv__copy { gap: 1.2rem; margin: 0; }
  .ivd-mv__copy span { padding: .8rem 1.6rem; font-size: 3rem; }
  .ivd-mv__profile { width: 34rem; margin: 0; padding: 2.4rem; }
  .ivd-mv__tag { font-size: 1.3rem; }
  .ivd-mv__name .ja { font-size: 2.8rem; }
  .ivd-mv__name small { font-size: 1.6rem; }
  .ivd-mv__data { font-size: 1.6rem; }

  .ivd-qa__row { flex-direction: row; gap: 3.2rem; }
  .ivd-qa__row--1 { margin-top: 8rem; }
  .ivd-qa__row--2, .ivd-qa__row--3 { margin-top: 6.4rem; }
  .ivd-qa__row--2 .ivd-qa__photo { order: 0; }
  .ivd-qa__photo { width: 28rem; }
  .ivd-qa__photo--2 { aspect-ratio: 574 / 672; }
  .ivd-qa__text { flex: 1; }
  .qa + .qa { margin-top: 4rem; }
  .qa__mark { font-size: 2.8rem; }
  .qa__text { font-size: 1.8rem; }
  .qa__a { margin-top: 1.6rem; font-size: 1.5rem; }

  .ivd-sec-head__en { font-size: 1.4rem; }
  .ivd-sec-head__ja { font-size: 2.8rem; }
  .ivd-schedule, .ivd-message { margin-top: 10rem; }
  .ivd-card { margin-top: -1.1rem; border-radius: 2rem; }
  .ivd-card--schedule { padding: 4.8rem 4rem; }
  .ivd-card--message { flex-direction: row; gap: 3.2rem; padding: 4rem; }

  .tl { gap: 4rem; }
  .tl__item { grid-template-columns: 6rem 2rem 1fr; column-gap: 2rem; }
  .tl__item:not(:last-child)::before { left: 8.95rem; top: 1.2rem; height: calc(100% + 4rem); }
  .tl__time { font-size: 1.8rem; }
  .tl__dot { width: 1.6rem; height: 1.6rem; margin: .5rem 0 0 .2rem; }
  .tl__ttl { font-size: 1.8rem; }
  .tl__desc { font-size: 1.5rem; }

  .ivd-message__face { width: 20rem; height: 20rem; }
  .ivd-message__head { flex-direction: row; align-items: center; }
  .ivd-message__role, .ivd-message__ra { font-size: 2.2rem; }
  .ivd-message__text { font-size: 1.5rem; }

  .ivd-list { margin-top: 12rem; }
  .ivd-list__wave { top: -5rem; height: 5rem; }
  .ivd-list__bg-en { top: -8rem; font-size: 7.2rem; }
  .ivd-list__head { padding-top: 6rem; }
  .ivd-list__ttl { font-size: 3.2rem; }
  .ivd-list__lead { font-size: 1.6rem; }
  .ivd-slider { margin-top: 4rem; }
  .ivd-slider__track { gap: 3.2rem; padding: 0 calc(50% - 16rem); }
  .ivd-slider__track .iv-card { width: 32rem; font-size: calc(32rem / 47.4); }
  .ivd-list__arrow { width: 5.2rem; height: 5.2rem; }
  .ivd-list__more { margin-top: 4rem; }

  .rnav { margin-top: 10rem; }
  .rnav__list { flex-wrap: nowrap; }
  .rnav__list li { width: auto; padding: 0 1rem; border: 0; border-left: 1px solid rgba(0,0,0,.5); }
  .rnav__list li:first-child, .rnav__list li:nth-child(2) { border-top: 0; }
  .rnav__list li:nth-child(odd) { border-right: 0; }
  .rnav__list li:last-child { border-right: 1px solid rgba(0,0,0,.5); }
  .rnav__list a { width: 15rem; padding: 1.2rem 1rem; font-size: 1.5rem; }

  .entry-cta { margin-top: 10rem; padding: 9.6rem var(--pad-x) 12rem; }
  .entry-cta__en { font-size: 8rem; }
  .entry-cta__ja { font-size: 1.9rem; }
  .entry-cta__btns { flex-direction: row; gap: 2rem; margin-top: 6.4rem; }
  .entry-cta__btn { height: 8rem; padding: 0 3.2rem; font-size: 1.9rem; }
}
@media (max-width: 767px) { .ivd-list__arrows { display: none; } } /* SP: スライダーの矢印は出さない（スワイプ + インジケーター） */
@media (max-width: 767px) { .entry-cta__en { font-size: 4.8rem; } } /* SP: ENTRY の文字を小さく（採用ページ共通でそろえる） */
/* 採用ページ内ナビ（TB/SP）: 仕事紹介・大切にしていること・募集要項と同じ枠のデザインにそろえる */
@media (max-width: 1199px) {
  .rnav__list { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; background: rgba(0,0,0,.3); border: 1px solid rgba(0,0,0,.3); }
  .rnav__list li, .rnav__list li:first-child, .rnav__list li:nth-child(2), .rnav__list li:nth-child(odd), .rnav__list li:last-child { width: auto; padding: 0; border: 0; background: var(--beige); }
  .rnav__list a { width: 100%; padding: 1.4rem .8rem; font-size: 1.4rem; }
}
@media (min-width: 768px) and (max-width: 1199px) {
  .rnav__list { grid-template-columns: repeat(4, 1fr); }
  .rnav__list a { width: 100%; padding: 1.6rem .4rem; font-size: 1.5rem; }
}
@media (max-width: 767px) { .ivd-message__face { width: 24rem; height: 24rem; } } /* SP: 求職者の方へのメッセージの写真を大きく */
@media (max-width: 767px) { .ivd-message { padding-bottom: 4rem; } } /* SP: 求職者の方へのメッセージのセクションの下を広く（次のスライダーまで 12rem） */
@media (min-width: 768px) and (max-width: 1199px) { .entry-cta__btn, .entry-cta__btns li:nth-child(n) .entry-cta__btn { height: 5.6rem; } } /* TB: ENTRY のボタンを低く（採用ページ共通でそろえる） */
@media (min-width: 768px) and (max-width: 1199px) { .entry-cta__en { font-size: 6.4rem; } } /* TB: ENTRY の文字を少し小さく（採用ページ共通） */
@media (min-width: 768px) and (max-width: 1199px) { .ivd-list__arrows { display: none; } } /* TB: インタビュースライダーの矢印は出さない */
/* TB: インタビュー本文は 1 カラム（写真 → 文章）。写真は横長でコンテンツ幅いっぱい */
@media (min-width: 768px) and (max-width: 1199px) {
  .ivd-qa__row { flex-direction: column; gap: 3.2rem; }
  .ivd-qa__row--2 .ivd-qa__photo { order: -1; }
  .ivd-qa__photo { width: 100%; }
  .ivd-qa__photo--1 { aspect-ratio: 16 / 9; }
  .ivd-qa__photo--2 { aspect-ratio: 16 / 9; }
  .ivd-qa__text { flex: none; width: auto; }
}
/* TB: ENTRY は他の採用ページと同じ見え方に（見えている高さ 543px 相当・中身を縦中央・ボタンの大きさ） */
@media (min-width: 768px) and (max-width: 1199px) {
  .entry-cta { padding-top: 16.9rem; padding-bottom: 29.1rem; }
  .entry-cta__btns { margin-top: 4.8rem; }
  .entry-cta__btn { padding: 0 3.2rem; font-size: 1.8rem; }
}
/* SP: ENTRY は採用ページ共通の形に（短いボタンを中央に縦 3 つ・矢印なし） */
@media (max-width: 767px) {
  .entry-cta__btns { display: flex; flex-direction: column; align-items: center; gap: 1.2rem; margin-top: 3.2rem; }
  .entry-cta__btns li { width: 24rem; max-width: none; }
  .entry-cta__btn, .entry-cta__btns li:nth-child(n) .entry-cta__btn { width: 100%; height: 5.2rem; padding: 0 1.6rem; justify-content: center; font-size: 1.5rem; }
  .entry-cta__btn .btn__arrow { display: none; }
  .entry-cta__ja { font-size: 1.6rem; }
}
@media (max-width: 767px) { .entry-cta { padding-top: 8rem; padding-bottom: 14.3rem; } } /* SP: ENTRY の上下の空きをそろえる（文字の上・ボタンの下とも 80px） */
.ivd-qa__photo img[src*="iv-haku-photo2"] { object-position: 66% 40%; } /* B.X. さん 2 枚目: 縦長に切り抜く PC でも人物（右寄り）が入るように */
@media (min-width: 1200px) { .ivd-qa__row--2 { align-items: stretch; } .ivd-qa__photo--2 { aspect-ratio: auto; position: relative; } .ivd-qa__photo--2 img { position: absolute; inset: 0; } } /* PC: 2 枚目の写真は横のテキストの高さに合わせる（縦長の写真でも写真側が高さを伸ばさない） */
.ivd-qa__photo img[src*="iv-kohei-photo2"] { object-position: 30% 40%; } /* K.K. さん 2 枚目: 人物（左寄り）が切れないように */
.ivd-qa__photo img[src*="iv-miya-photo2"] { object-position: 66% 40%; } /* M.S. さん 2 枚目: 人物（右寄り）が切れないように */
.ivd-qa__photo img[src*="iv-ryuko-photo2"] { object-position: 38% 40%; } /* R.N. さん 2 枚目: 人物（やや左）が切れないように */
.ivd-qa__photo img[src*="iv-yuna-photo2"] { object-position: 50% 62%; } /* Y.T. さん 2 枚目: 縦長の写真なので天井を切って人物を入れる */
@media (max-width: 767px) { .ivd-qa__photo--2 { aspect-ratio: 1 / 1; } } /* SP: インタビュー本文の写真は 2 枚とも正方形 */
/* 仮: 優菜さん（原稿・写真が届くまでの仮カード） */
.iv-card--tmp .iv-card__img { left: .7em; top: 1.4em; width: 46em; } /* Y.T. さん: 正方形のイラスト */
