/* ============================================================
   Kotobuki Dental Clinic — treatments page styles
   - treatments/index.html 固有のスタイル
   - common.css の後に読み込む
   ============================================================ */

/* --- Jump Tabs（診療内容ページ） --------------------------- */
.jump-tabs {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  gap: var(--space-2);
  flex-wrap: wrap;
  justify-content: center;
}
.jump-tabs a {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  padding: var(--space-2) var(--space-4);
  border-radius: var(--radius-full);
  background: var(--color-surface);
  border: 1px solid var(--color-line);
  color: var(--color-text);
  font-size: var(--size-sm);
  font-weight: 600;
  transition: background var(--transition), color var(--transition), border-color var(--transition);
}
.jump-tabs a:hover {
  background: var(--color-accent-soft);
  border-color: var(--color-accent);
  color: var(--color-accent-dark);
  opacity: 1;
}
.jump-tabs__icon {
  width: 18px;
  height: 18px;
  flex-shrink: 0;
  color: var(--color-accent-dark);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: color var(--transition);
}
.jump-tabs__icon svg {
  width: 100%;
  height: 100%;
  display: block;
}
.jump-tabs a:hover .jump-tabs__icon {
  color: var(--color-accent-dark);
}

/* --- Treatment（診療科目ブロック） ------------------------- */
.treatment {
  scroll-margin-top: 80px;   /* sticky ヘッダー分のオフセット */
}
/* 診療内容ごとの写真エリア
   - 既存の [role="img"] スタイル（common.css）を継承
   - 写真差し替え時は <div class="treatment__photo" ...> を <img> に置換可
*/
.treatment__photo {
  aspect-ratio: 16 / 9;
  width: 100%;
  border-radius: var(--radius-md);
  margin-bottom: var(--space-5);
  overflow: hidden;
}
.treatment__photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
@media (min-width: 880px) {
  .treatment__photo {
    aspect-ratio: 21 / 9;
  }
}

.treatment__title {
  font-size: var(--size-xl);
  margin: 0 0 var(--space-3);
  letter-spacing: var(--tracking-tight);
}
.treatment__intro {
  color: var(--color-text-soft);
  margin: 0 0 var(--space-6);
  font-size: var(--size-md);
}
.treatment__note {
  font-size: var(--size-sm);
  color: var(--color-text-soft);
  margin-top: var(--space-3);
}

/* --- Compare（保険 vs 自費） ----------------------------- */
.compare {
  display: grid;
  gap: var(--space-5);
  margin-top: var(--space-6);
}
@media (min-width: 720px) {
  .compare { grid-template-columns: 1fr 1fr; gap: var(--space-6); }
}
.compare__col {
  background: var(--color-surface);
  border: 1px solid var(--color-line);
  border-radius: var(--radius-md);
  padding: var(--space-6);
}
.compare__title {
  font-size: var(--size-lg);
  margin: 0 0 var(--space-3);
  color: var(--color-accent-dark);
  padding-bottom: var(--space-3);
  border-bottom: 2px solid var(--color-accent-soft);
}
.compare__col p { color: var(--color-text-soft); font-size: var(--size-sm); }
