@charset "UTF-8";
/* =========================================================================
   team.css — Doctors（Figma 実体フレーム 16070:26770・1440×2073）
   縦方向はセクション間のローカル差（次要素Y −（前要素Y＋高さ））で積む。
   ========================================================================= */

/* ---------- ヒーロー（#F8F2FF・1420×552.707・角丸13・(10.125, 11.89)） ---------- */
.team-hero {
  width: 142rem; height: 55.2707rem; margin: 1.189rem auto 0; padding-top: 0.211rem;
  background: var(--color-primary-300); border-radius: 1.3rem;
}
.team-hero__body { text-align: center; }
.team-hero__title { width: 46.788rem; margin: 6rem auto 0; }
.team-hero__desc { width: 44.5023rem; margin: 1rem auto 0; }

/* ---------- ドクター一覧（343.317×416.648 のカード 3列×2段。列間 21.29・段間 32） ---------- */
/* 1段目の上端はパネル下端より 191.6 上（y=373） */
.doctors { position: relative; margin-top: -19.1598rem; }
.doctors__grid {
  display: grid; grid-template-columns: repeat(3, 34.3317rem); column-gap: 2.129rem; row-gap: 3.2rem;
  justify-content: center;
}

main + .site-footer { margin-top: 13.181rem; }

/* =========================================================================
   SP（<1024px）— SPカンプなし：1カラム化（index の SP と同じ規約）
   ========================================================================= */
@media (max-width: 1023px) {
  .team-hero { width: auto; height: auto; margin: 0.8rem 1.2rem 0; padding: 0 0 16rem; }
  .team-hero .site-header { margin-inline: 1.6rem; }
  .team-hero__body { max-width: 72rem; margin-inline: auto; padding: 0 1.6rem; }
  .team-hero__title { width: auto; margin-top: 4rem; }
  .team-hero__desc { width: auto; max-width: 44.5023rem; }

  .doctors { margin-top: -12rem; padding: 0 var(--sp-inset); }
  .doctors__grid { grid-template-columns: minmax(0, 34.3317rem); row-gap: 2.4rem; }

  main + .site-footer { margin-top: var(--space-section); }
}

@media (min-width: 640px) and (max-width: 1023px) {
  .doctors__grid { grid-template-columns: repeat(2, minmax(0, 34.3317rem)); column-gap: 2.129rem; }
}
