/* ============================================================
   「骨が足りない」と言われた方へ（bone-care）
   設置: 医院詳細ページ main.css 末尾に追記
   構造は .pain-care と同じカード型。.pain-care の直下に従属ブロックとして置くため1段下げる:
   英語ラベルなし／左罫はグレー／h2 24/28px・本文 16/18px
   上paddingは0（.pain-care の下paddingで間隔を取る）。.pain-care 直下以外に置く場合は上paddingを 32px/48px に戻す
   トンマナ: design/tone-and-manner.md（Section 2 情報階層ルール: h2と下位要素の差4px以上を維持）
   ============================================================ */
.bone-care { background: #fff; padding: 0 16px 32px; }
.bone-care__inner {
  max-width: 860px; margin: 0 auto;
  background: #fff;
  border-left: 3px solid #e5e5e5;
  border-radius: 8px;
  padding: 24px 20px;
}
.bone-care__heading { margin-bottom: 12px; }
/* h2: 同型カード .pain-care（26/32px）の従属ブロックとして 24/28px。下位の本文 16/18px との差は8px以上 */
.bone-care__title {
  font-size: 24px; font-weight: bold; color: #333; line-height: 1.6;
}
.bone-care__title span { color: #0b5da2; }
.bone-care__lead {
  font-size: 16px; color: #555; line-height: 1.8; margin-bottom: 12px;
}
.bone-care__options {
  list-style: none; margin: 0 0 16px; padding: 0;
}
.bone-care__option {
  position: relative; padding-left: 18px;
  font-size: 16px; color: #555; line-height: 1.8;
}
.bone-care__option + .bone-care__option { margin-top: 6px; }
.bone-care__option::before {
  content: ""; position: absolute; left: 0; top: 0.8em;
  width: 6px; height: 6px; border-radius: 50%; background: #0b5da2;
}
.bone-care__option strong { color: #333; font-weight: 600; }
/* 注記: 自由診療・リスク等の必須表記のため #777 ではなく #666（コントラスト比 5.7:1）*/
.bone-care__note {
  font-size: 14px; color: #666; line-height: 1.8; margin-bottom: 20px;
}
.bone-care__link { margin-top: 4px; display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; }
.bone-care__btn {
  display: inline-flex; align-items: center; position: relative;
  font-size: 16px; font-weight: bold; color: #0b5da2;
  border: 1px solid #0b5da2; background: transparent;
  padding: 12px 44px 12px 20px; border-radius: 4px; min-height: 60px;
  text-decoration: none; transition: background 0.2s ease, color 0.2s ease;
}
.bone-care__btn svg {
  position: absolute; right: 16px; top: 50%; transform: translateY(-50%);
  width: 16px; height: 16px;
}

@media (max-width: 767px) {
  .bone-care { padding: 0 16px 24px; }
  .bone-care__inner { padding: 20px 16px; }
  .bone-care__btn { display: flex; justify-content: center; width: 100%; font-size: 16px; }
}
@media (min-width: 768px) {
  .bone-care { padding: 0 20px 48px; }
  .bone-care__inner { padding: 32px 28px; }
  .bone-care__title { font-size: 28px; }
  .bone-care__lead { font-size: 18px; }
  .bone-care__option { font-size: 18px; }
  .bone-care__note { font-size: 16px; }
  .bone-care__btn { font-size: 18px; padding: 14px 48px 14px 24px; min-height: 64px; }
  .bone-care__btn:hover { background: #0b5da2; color: #fff; }
  .bone-care__btn:hover svg { color: #fff; }
}

/* FAQ冒頭の自由診療注記（faq-notice.html）。アコーディオンの外に常時表示するため本文と同じ 16/18px・#555 */
.idental-faq__heading-sub:has(+ .idental-faq__notice) { margin-bottom: 20px; }
.idental-faq__notice {
  background: #fff;
  border-left: 3px solid #0b5da2;
  border-radius: 4px;
  padding: 14px 16px;
  font-size: 16px; line-height: 1.8; color: #555;
  margin: 0 0 32px;
}
@media (min-width: 768px) {
  .idental-faq__notice { font-size: 18px; padding: 16px 20px; margin-bottom: 40px; }
}
