/* ============================================================
   ANZAS v2 — page-testimonial-single.css
   /testimonials/{slug}/(体験談 個別・23件共通テンプレート)固有
   出典: 下層カンプ「Testimonials」
         (カンプの画面ラベル「個別テンプレート」)
   共通シャーシ(pages.css)と Voices カード(main.css .av2-vcard__*)を前提に、
   ①プロフィール行の余白 ②インタビュー本文(the_content)のタイポグラフィ だけを足す。
   本文は書き直さないため、現行の Q&A 構造(H3 設問 + 段落)をそのまま読ませる指定。
   ============================================================ */

/* ---------- プロフィール行(丸写真 + 名前 + 属性) ---------- */

.av2-tsingle .av2-vcard__head { margin-top: 40px; flex-wrap: wrap; }
.av2-tsingle .av2-vcard__name { font-size: 18px; }
.av2-tsingle .av2-dl { margin-top: 24px; }

/* ---------- インタビュー本文 ---------- */

.av2-tsingle .av2-entry { margin-top: 32px; font-size: 15px; line-height: 2.0; }
.av2-tsingle .av2-entry > :first-child { margin-top: 0; }
.av2-tsingle .av2-entry > :last-child { margin-bottom: 0; }
.av2-tsingle .av2-entry p { margin: 0 0 1.5em; }
.av2-tsingle .av2-entry b,
.av2-tsingle .av2-entry strong { color: var(--av2-ink); }

/* 設問見出し ─ ブルーの縦罫 + 太字(カンプ「Q. なぜセブ島留学を選びましたか？」) */
.av2-tsingle .av2-entry h2 { font-size: clamp(19px, 2.4vw, 22px); font-weight: 900; line-height: 1.7; color: var(--av2-ink); margin: 56px 0 16px; }
.av2-tsingle .av2-entry h3 { font-size: 16px; font-weight: 900; line-height: 1.7; color: var(--av2-ink); border-left: 4px solid var(--av2-brand); padding-left: 12px; margin: 40px 0 14px; }
.av2-tsingle .av2-entry h4 { font-size: 15px; font-weight: 700; line-height: 1.7; color: var(--av2-ink); margin: 32px 0 10px; }

.av2-tsingle .av2-entry ul,
.av2-tsingle .av2-entry ol { margin: 0 0 1.5em; padding-left: 1.5em; }
.av2-tsingle .av2-entry li { margin-bottom: .4em; }

.av2-tsingle .av2-entry img { max-width: 100%; height: auto; border-radius: 12px; display: block; }
.av2-tsingle .av2-entry figure { margin: 28px 0; }
.av2-tsingle .av2-entry figcaption { font-size: 12px; line-height: 1.9; color: var(--av2-cap); margin-top: 8px; }

.av2-tsingle .av2-entry blockquote { background: var(--av2-surface); border-left: 2px solid var(--av2-tint-border); border-radius: 0 12px 12px 0; padding: 20px 24px; margin: 28px 0; }
.av2-tsingle .av2-entry blockquote p:last-child { margin-bottom: 0; }

.av2-tsingle .av2-entry a { text-decoration: underline; }

/* ---------- レスポンシブ(BP は共通シャーシに合わせる) ---------- */

@media (max-width: 560px) {
  .av2-tsingle .av2-vcard__head { margin-top: 32px; gap: 12px; }
  .av2-tsingle .av2-entry h3 { font-size: 15px; margin-top: 32px; }
  .av2-tsingle .av2-entry blockquote { padding: 18px 18px; }
}
