/* treatment.css */

.section-heading_dental {
    font-family: var(--font-catch);
    font-size: var(--font-size-xxl);
    text-align: center;
    margin-bottom: 32px;
}
.section-heading_dental small {
    display: block;
    font-family: var(--font-body);
    font-size: var(--font-size-sm);
    color: #666;
    margin-top: 4px;
}

/* ── ホワイトニングセクション ── */
#whitening {
  padding: 80px 20px;
  max-width: 1000px;
  margin: 0 auto;
}

#whitening .whitening-tags {
  display: flex;
  justify-content: center;
  gap: 16px;
  margin-bottom: 40px;
}

/* ── ホワイトニングセクション ── */
#whitening .whitening-img {
  display: block;
  width: 100%;
  max-width: 600px;
  height: 300px;            /* 高さに調整 */
  object-fit: cover;        /* 切り抜き */
  margin: 0 auto 40px;
  border-radius: 4px;
}
#whitening .whitening-content {
  display: flex;
  gap: 40px;
  flex-wrap: wrap;
}
#whitening .whitening-text {
  flex: 1 1 300px;
  font-family: var(--font-body);
  font-size: var(--font-size-md);
  line-height: var(--lh-loose);
  color: #333;
}
#whitening .whitening-text h3 {
  font-family: var(--font-catch);
  font-size: var(--font-size-lg);
  margin-bottom: 12px;
}
#whitening .whitening-text p {
  margin-bottom: 16px;
}
#whitening .whitening-note {
  font-size: var(--font-size-sm);
  color: #666;
  margin-top: 24px;
  border-top: 1px solid #ccc;
  padding-top: 16px;
}
/* ボックスリスト */
#whitening .price-list {
  margin: 40px auto 0;
  width: 100%;
  max-width: 1000px;
  border-top: 1px solid #ccc;
}
#whitening .price-item {
  display: flex;
  align-items: center;
  padding: 16px 0;
  border-bottom: 1px solid #eee;
}
#whitening .price-item:last-child {
  border-bottom: none;
}
#whitening .price-item img {
  width: 24px;
  height: auto;
  margin-right: 12px;
}
#whitening .price-item span {
  font-family: var(--font-catch);
  font-size: var(--font-size-md);
}

/* モバイル対応 */
@media (max-width: 767px) {
  #whitening .whitening-content {
    flex-direction: column;
  }
  #whitening .whitening-img {
    margin-bottom: 24px;
  }
}

/* ── 矯正セクション ── */
#orthodontic {
  background-color: var(--color-bg-base);
  padding: 80px 20px;
}

/* タグ */
#orthodontic .orthodontic-tags {
  display: flex;
  justify-content: center;
  gap: 16px;
  margin-bottom: 48px;
}

/* 各アイテム */
#orthodontic .orthodontic-content {
  max-width: 1000px;
  margin: 0 auto 60px;
  display: flex;
  flex-direction: column;
  gap: 40px;
}
#orthodontic .orthodontic-item {
  display: flex;
  align-items: center;
  gap: 24px;
}
@media (max-width: 767px) {
  #orthodontic .orthodontic-item {
    display: block;
  }
}
#orthodontic .orthodontic-img {
  flex: 0 0 300px;
  width: 100%;
  max-width: 300px;
  border-radius: 4px;
  object-fit: cover;
  height: 200px;
}
#orthodontic .orthodontic-text h3 {
  font-family: var(--font-catch);
  font-size: var(--font-size-lg);
  margin-bottom: 12px;
}
#orthodontic .orthodontic-text p {
  font-family: var(--font-body);
  font-size: var(--font-size-md);
  line-height: var(--lh-loose);
  color: #333;
}

/* ステージボックス */
#orthodontic .orthodontic-stages {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
  max-width: 1000px;
  margin: 0 auto 60px;
}
@media (max-width: 767px) {
  #orthodontic .orthodontic-stages {
    grid-template-columns: 1fr;
  }
}

/* Galaxy Align セクション */
#orthodontic .galaxy-section {
  max-width: 1000px;
  margin: 0 auto 40px;
  text-align: center;
}
#orthodontic .galaxy-section h3 {
  font-family: var(--font-catch);
  font-size: var(--font-size-xl);
  margin-bottom: 16px;
}
#orthodontic .galaxy-tags {
  display: flex;
  justify-content: center;
  gap: 16px;
  margin-bottom: 32px;
}
#orthodontic .galaxy-tag {
  background-color: var(--color-bg-mid);
  color: #fff;
  padding: 8px 16px;
  border-radius: 24px;
  font-size: var(--font-size-sm);
  text-decoration: none;
  transition: background-color 0.3s;
}
#orthodontic .galaxy-tag:hover {
  background-color: var(--color-bg-deep);
}
#orthodontic .galaxy-plans {

  margin-bottom: 40px;
}
@media (max-width: 767px) {
  #orthodontic .galaxy-plans {
    grid-template-columns: 1fr;
  }
}
#orthodontic .galaxy-plans h4 {
  font-family: var(--font-catch);
  font-size:var(--font-size-md);
  margin-bottom:20px;
}

/* 料金を見るボタン */
#orthodontic .btn-price {
  display: inline-block;
  background-color: var(--color-bg-mid);
  color: #000;
  padding: 12px 32px;
  border-radius: 24px;
  text-decoration: none;
  font-family: var(--font-body);
  font-size: var(--font-size-md);
  transition: opacity 0.3s;
}
#orthodontic .btn-price:hover {
  opacity: 0.8;
}

/* タグ共通スタイル（水色＝デフォルト） */
.tag {
  display: inline-block;
  padding: 6px 16px;
  border-radius: 24px;
  font-family: var(--font-body);
  font-size: var(--font-size-sm);
  text-decoration: none;
  margin: 0 8px 8px 0;
  box-sizing: border-box;
  background-color: var(--color-bg-mid);
}

/* 医科ページ用：ピンクタグに切り替え */
body.medical .tag {
  background-color: var(--color-bg-key);
}

/* ── セラミック治療セクション ── */
#ceramic {
  padding: 80px 20px;
  max-width: 1000px;
  margin: 0 auto;
}

#ceramic .ceramic-tags {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px;
  margin-bottom: 40px;
}

/* キャッチコピー */
#ceramic .ceramic-catch {
  font-family: var(--font-catch);
  font-size: var(--font-size-xxl);
  margin-bottom: 40px;
}

#ceramic .ceramic-img {
  width: 100%;
  max-width: 200px;
  border-radius: 4px;
  object-fit: cover;
}

#ceramic .ceramic-content {
  gap: 40px;
  align-items: flex-start;
}
@media (max-width: 767px) {
  #ceramic .ceramic-content {
    flex-direction: column;
    align-items: center;
  }
}

#ceramic .ceramic-text p {
  font-family: var(--font-body);
  font-size: var(--font-size-md);
  line-height: var(--lh-loose);
  color: #333;
}

#ceramic .sub-heading {
  font-family: var(--font-catch);
  font-size: var(--font-size-lg);
  margin: 40px 0 16px;
}

#ceramic .lead-text {
  font-family: var(--font-body);
  font-size: var(--font-size-md);
  line-height: var(--lh-loose);
  color: #333;
  margin-bottom: 24px;
}

#ceramic .ceramic-boxes {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  margin: 40px 0;
  background-color: #eefbf9;
}
@media (max-width: 767px) {
  #ceramic .ceramic-boxes {
    flex-direction: column;
  }
}

/* .box は main.css で共通定義済みなのでサブタイトルのみを調整 */
#ceramic .box-title {
  font-family: var(--font-catch);
  font-size: var(--font-size-md);
  margin-bottom: 8px;
  padding: 3px 10px;
  background-color: #60c9c0;
}

/* ── ラミネートベニアセクション ── */
#veneer {
  background-color: var(--color-bg-base);
  padding: 80px 20px;
}
#veneer .wrapper{
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
}

#veneer .section-heading_dental {
  margin-bottom: 40px;
}

#veneer .veneer-content {
  display: flex;
  align-items: flex-start;
  gap: 40px;
  flex-wrap: wrap;
  margin-bottom: 40px;
}

#veneer .veneer-img {
  flex: 0 0 200px;
  width: 100%;
  max-width: 200px;
  height: 200px;
  object-fit: cover;
  border-radius: 4px;
}

#veneer .veneer-text {
  flex: 1 1 300px;
  font-family: var(--font-body);
  font-size: var(--font-size-md);
  line-height: var(--lh-loose);
  color: #333;
}

/* バナー */
#veneer .veneer-banner {
  display: block;
  width: 100%;
  max-width: 600px;
  margin: 40px auto;
  height: auto;
}

@media (max-width: 767px) {
  #veneer .veneer-content {
    flex-direction: column;
    align-items: center;
  }
  #veneer .veneer-img {
    margin-bottom: 24px;
  }
}

/* ── インプラントセクション ── */
#implant {
  padding: 80px 20px;
}
#implant .section-heading_dental {
  margin-bottom: 32px;
}
#implant .section-heading_dental small {
  display: block;
  font-family: var(--font-body);
  font-size: var(--font-size-sm);
  color: #666;
  margin-top: 4px;
}

/* タグ */
#implant .implant-tags {
  display: flex;
  justify-content: center;
  gap: 16px;
  margin-bottom: 40px;
}

/* 共通タグスタイル（main.css の .tag が適用されます） */

/* コンテンツ */
#implant .implant-content {
  display: flex;
  align-items: flex-start;
  gap: 40px;
  max-width: 1000px;
  margin: 0 auto 40px;
  flex-wrap: wrap;
}
#implant .implant-img {
  flex: 0 0 200px;
  width: 100%;
  max-width: 200px;
  height: 200px;
  object-fit: cover;
  border-radius: 4px;
}
#implant .implant-text {
  flex: 1 1 300px;
  font-family: var(--font-body);
  font-size: var(--font-size-md);
  line-height: var(--lh-loose);
  color: #333;
}
#implant .implant-text p {
  margin-bottom: 16px;
}

/* モバイル対応 */
@media (max-width: 767px) {
  #implant .implant-content {
    flex-direction: column;
    align-items: center;
  }
  #implant .implant-img {
    margin-bottom: 24px;
  }
}

/* 汎用背景クラス */
.bg_base {
  background-color: var(--color-bg-base);
}

/* インプラント：１回法・２回法ボックス */
#implant .implant-methods .box {
  /* .box に padding, border-radius, margin-bottom が入っている想定 */
  border: none;      /* 線ナシ */
}
#implant .implant-methods {
  max-width: 1000px;
  margin: 0 auto 40px;
}
#implant .implant-methods .box h3 {
  font-family: var(--font-catch);
  font-size: var(--font-size-lg);
  margin-bottom: 12px;
}
#implant .implant-methods .box p {
  font-family: var(--font-body);
  font-size: var(--font-size-md);
  line-height: var(--lh-loose);
  color: #333;
}

/* ── インプラント治療の流れ ── */
#implant .implant-flow {
  max-width: 1000px;
  margin: 0 auto 60px;
}
#implant .implant-flow h3 {
  font-family: var(--font-catch);
  font-size: var(--font-size-xl);
  margin-bottom: 24px;
}
#implant .implant-flow .implant-step {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  margin-bottom: 32px;
}
#implant .implant-flow .step-number {
  flex: 0 0 40px;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background-color: var(--color-bg-mid);
  color: #fff;
  font-family: var(--font-body);
  font-size: var(--font-size-md);
  display: flex;
  align-items: center;
  justify-content: center;
}
#implant .implant-flow .step-content h4 {
  font-family: var(--font-catch);
  font-size: var(--font-size-lg);
  margin: 0 0 8px;
}
#implant .implant-flow .step-content p {
  font-family: var(--font-body);
  font-size: var(--font-size-md);
  line-height: var(--lh-loose);
  margin: 0;
}
/* モバイル時は縦並び */
@media (max-width: 767px) {
  #implant .implant-flow .implant-step {
    flex-direction: column;
    align-items: flex-start;
  }
  #implant .implant-flow .step-number {
    margin-bottom: 8px;
  }
}
/* ── インプラント注意事項 ── */
#implant .implant-alerts {
  max-width: 1000px;
  margin: 0 auto 60px;
}
#implant .implant-alerts h3 {
  font-family: var(--font-catch);
  font-size: var(--font-size-xl);
  margin-bottom: 24px;
}
#implant .implant-alerts h4 {
  font-family: var(--font-catch);
  font-size: var(--font-size-lg);
  margin: 32px 0 8px;
}
#implant .implant-alerts p,
#implant .implant-alerts ul {
  font-family: var(--font-body);
  font-size: var(--font-size-md);
  line-height: var(--lh-loose);
  margin-bottom: 16px;
}
#implant .implant-alerts ul {
  padding-left: 1em;
}
#implant .implant-alerts ul li {
  margin-bottom: 4px;
}
/* ── インプラント：価格と品質 ── */
#implant .implant-quality {
  background-color: var(--color-bg-base);
  padding: 80px 20px;
}
#implant .implant-quality .wrapper {
  max-width: 1000px;
  margin: 0 auto;
}
#implant .implant-quality h3 {
  font-family: var(--font-catch);
  font-size: var(--font-size-xl);
  margin-bottom: 24px;
}
#implant .implant-quality p {
  font-family: var(--font-body);
  font-size: var(--font-size-md);
  line-height: var(--lh-loose);
  margin-bottom: 16px;
}
#implant .implant-quality .btn-wrap {
  text-align: center;
  margin-top: 32px;
}

/* ── ガミースマイル改善セクション ── */
#gummysmile {

}
#gummysmile .section-heading_dental {
  margin-bottom: 32px;
}

.gummy_waku{
  background-color: var(--color-bg-base);
  padding: 80px 20px;
}

/* タグ */
#gummysmile .gummy-tags {
  text-align: center;
  margin-bottom: 40px;
}

/* メインコンテンツ */
#gummysmile .gummy-content {
  display: flex;
  align-items: flex-start;
  gap: 40px;
  max-width: 1000px;
  margin: 0 auto 40px;
}
#gummysmile .gummy-img {
  width: 100%;
  max-width: 200px;
  object-fit: cover;
  border-radius: 4px;
}
#gummysmile .gummy-text {
  font-family: var(--font-body);
  font-size: var(--font-size-md);
  line-height: var(--lh-loose);
}
#gummysmile .gummy-text p {
  margin-bottom: 16px;
}
#gummysmile .gummy-note {
  font-size: var(--font-size-sm);
  color: #666;
  margin-top: 24px;
  border-top: 1px solid #ccc;
  padding-top: 16px;
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
}

/* モバイル対応 */
@media (max-width: 767px) {
  #gummysmile .gummy-content {
    flex-direction: column;
    align-items: center;
  }
  #gummysmile .gummy-img {
    margin-bottom: 24px;
  }
}

/* ── クリーニングセクション ── */
#cleaning {
  padding: 80px 20px;
  max-width: 1000px;
  margin: 0 auto;
}
#cleaning .section-heading_dental {
  margin-bottom: 32px;
}

/* タグ */
#cleaning .cleaning-tags {
  text-align: center;
  margin-bottom: 40px;
}

/* 各アイテム */
#cleaning .cleaning-item {
  margin-bottom: 40px;
}
#cleaning .cleaning-box-title {
  display: inline-block;
  background-color: var(--color-bg-mid);
  color: #000;
  padding: 8px 16px;
  font-family: var(--font-body);
  font-size: var(--font-size-md);
  margin-bottom: 12px;
}
#cleaning .cleaning-item p {
  font-family: var(--font-body);
  font-size: var(--font-size-md);
  line-height: var(--lh-loose);
  color: #333;
}

/* 注意事項 */
#cleaning .cleaning-note {
  font-size: var(--font-size-sm);
  color: #666;
  margin-bottom: 40px;
  line-height: var(--lh-normal);
}

/* モバイル対応 */
@media (max-width: 767px) {
  #cleaning .cleaning-item,
  #cleaning .cleaning-note {
    padding: 0 10px;
  }
}

/* ── 美容入れ歯セクション ── */
#dentures {
  background-color: var(--color-bg-base);
  padding: 80px 20px;
}
#dentures .wrapper {
  max-width: 1000px;
  margin: 0 auto;
}
#dentures .section-heading_dental {
  margin-bottom: 32px;
}

/* タグ群 */
#dentures .dentures-tags {
  text-align: center;
  margin-bottom: 40px;
}

/* 特徴パネル */
#dentures .dentures-features {
  display: flex;
  justify-content: center;
  gap: 40px;
  margin-bottom: 48px;
}
#dentures .feature-item {
  width: 240px;
  height: 240px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  padding: 8px;
}

#dentures .feature-text {
  font-family: var(--font-body);
  font-size: var(--font-size-sm);
  line-height: var(--lh-normal);
  text-align: center;
}

/* 詳細ボックス群 */
#dentures .dentures-boxes {
  display: flex;
  flex-direction: column;
  gap: 24px;
  margin-bottom: 40px;
}
/* .box / .box-title は main.css 共通 */
#dentures .box {
  background-color: #fff;
  padding: 20px;
}
#dentures .box-title {
  background-color: var(--color-bg-mid);
  padding: 6px 12px;
  border-radius: 4px;
  display: inline-block;
  margin-bottom: 12px;
}

/* モバイル対応 */
@media (max-width: 767px) {
  #dentures .dentures-features {
    gap: 24px;
  }
}

/* ── その他セクション ── */
.others-section {
  background-color: #fff;
  padding: 80px 20px;
}
.others-section .wrapper {
  max-width: 1000px;
  margin: 0 auto;
}
.others-section .section-heading_dental {
  margin-bottom: 40px;
}

/* 項目グループ */
.others-item + .others-item {
  margin-top: 48px;
}

/* タイトル＋ボタン */
.others-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px solid #ccc;
  padding-bottom: 8px;
  margin-bottom: 16px;
}
.others-header h3 {
  font-family: var(--font-catch);
  font-size: var(--font-size-md);
  margin: 0;
}

/* 小さめの料金ボタン */
.btn-price--small {
  padding: 8px 16px;
  font-size: var(--font-size-sm);
}
@media (max-width: 767px) {
  .others-header {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
  }
  .btn-price--small {
    width: auto;
  }
}

/* 本文 */
.others-body p {
  font-family: var(--font-body);
  font-size: var(--font-size-md);
  line-height: var(--lh-loose);
  margin-bottom: 16px;
}
.others-body .note {
  font-size: var(--font-size-sm);
  color: #666;
}

/* 美容施術ページ専用 */
body.medical .treatment-section {
  background-color: var(--color-bg-light);
  padding: 80px 20px;
  max-width: 1000px;
  margin: 0 auto;
}

body.medical .section-heading_dental {
  font-family: var(--font-catch);
  font-size: var(--font-size-xxl);
  text-align: center;
  margin-bottom: 32px;
}

/* タグ群 */
body.medical .tags {
  text-align: center;
  margin-bottom: 40px;
}
body.medical .tags .tag {
  background-color: var(--color-bg-deep-key);
}

/* メインコンテンツ */
body.medical .treatment-content {
  display: flex;
  gap: 40px;
  align-items: flex-start;
  flex-wrap: wrap;
  margin-bottom:80px;
}
body.medical .treatment-img {
  flex: 0 0 200px;
  width: 100%;
  max-width: 200px;
  object-fit: cover;
  border-radius: 4px;
}
body.medical .treatment-text {
  flex: 1;
  font-family: var(--font-body);
  font-size: var(--font-size-md);
  line-height: var(--lh-loose);
  color: #333;
}
body.medical .treatment-text .lead-text {
  font-family: var(--font-catch);
  font-size: var(--font-size-xxl);
  margin-bottom: 16px;
}

/* ボタン周りは menu.css の .btn-wrap/.btn-price--medical を適用 */

@media (max-width: 767px) {
  body.medical .treatment-content {
    flex-direction: column;
    align-items: center;
  }
  body.medical .treatment-img {
    margin-bottom: 24px;
  }
}
/* ── 点滴セクション ── */
#drip {
  background-color: var(--color-bg-light-key);
  padding: 80px 20px;
}
#drip .wrapper {
  max-width: 1000px;
  margin: 0 auto;
}
#drip .section-heading_dental {
  margin-bottom: 32px;
}

/* タグ群（共通 .tag を利用） */
#drip .tags {
  text-align: center;
  margin-bottom: 40px;
}

/* メインコンテンツ */
#drip .treatment-content {
  display: flex;
  align-items: flex-start;
  gap: 40px;
  flex-wrap: wrap;
  margin-bottom: 40px;
}
#drip .treatment-img {
  flex: 0 0 200px;
  width: 100%;
  max-width: 200px;
  border-radius: 4px;
  object-fit: cover;
}
#drip .treatment-text {
  flex: 1 1 300px;
  font-family: var(--font-body);
  font-size: var(--font-size-md);
  line-height: var(--lh-loose);
}
#drip .treatment-note {
  font-size: var(--font-size-sm);
  color: #333;
  margin-bottom: 40px;
}

/* 各メニューアイテム */
#drip .treatment-item {
  margin-bottom: 40px;
}
#drip .treatment-item-header {
  display: flex;
  align-items: center;
  gap: 12px;
}
#drip .treatment-item-title {
  display: inline-block;
  background-color: var(--color-bg-deep-key);
  padding: 8px 16px;
  font-family: var(--font-body);
  font-size: var(--font-size-md);
  
}
#drip .treatment-item-icon {
  width: 24px;
  height: auto;
}
#drip .treatment-item-time {
  font-family: var(--font-body);
  font-size: var(--font-size-md);
}
#drip .treatment-item-text {
  margin-top: 16px;
  font-family: var(--font-body);
  font-size: var(--font-size-m);
  line-height: var(--lh-loose);
}

/* トッピングメニュー */
#drip .topping-box {
  background-color: #fff;
  padding: 20px;
  margin-bottom: 80px;
}
#drip .topping-title {
  font-family: var(--font-catch);
  font-size: var(--font-size-lg);
  margin-bottom: 16px;
}

/* モバイル対応 */
@media (max-width: 767px) {
  #drip .treatment-content {
    flex-direction: column;
    align-items: center;
  }
  #drip .treatment-img {
    margin-bottom: 24px;
  }
}
/* ── 脂肪溶解注射 ── */
#fatdissolve {
  background-color: #fff;
  padding: 80px 20px;
}
#fatdissolve .wrapper {
  max-width: 1000px;
  margin: 0 auto;
}

/* 見出し（medical） */
#fatdissolve .section-heading_medical {
  font-family: var(--font-catch);
  font-size: var(--font-size-xxl);
  text-align: center;
  margin-bottom: 24px;
}
#fatdissolve .section-heading_medical small {
  display: block;
  font-family: var(--font-body);
  font-size: var(--font-size-sm);
  color: #666;
  margin-top: 4px;
}

/* タグ */
#fatdissolve .tags {
  text-align: center;
  margin-bottom: 32px;
}

/* 画像＋リード */
#fatdissolve .treatment-content {
  display: flex;
  align-items: flex-start;
  gap: 40px;
  flex-wrap: wrap;
  margin-bottom: 24px;
}
#fatdissolve .treatment-img {
  width: 100%;
  max-width: 200px;
  border-radius: 4px;
  object-fit: cover;
}

#fatdissolve .treatment-text .lead-text {
  font-family: var(--font-body);
  font-size: var(--font-size-m);
  line-height: var(--lh-loose);
  color: #333;
}

/* サークル特徴 */
#fatdissolve .feature-circles {
  display: flex;
  justify-content: center;
  width: 100%;
  max-width: 600px;
  margin: 0 auto;
  margin-bottom: 40px;
  margin-top: 40px;
}
#fatdissolve .feature-circles img {
  width: 33%;
  height: auto;
  display: block;
}

/* 本文 */
#fatdissolve .fatdissolve-desc {
  font-family: var(--font-body);
  font-size: var(--font-size-md);
  line-height: var(--lh-loose);
  margin-bottom:40px;
}
#fatdissolve .subtitle {
  font-family: var(--font-catch);
  font-size: var(--font-size-md);
  margin: 16px 0 8px;
}
#fatdissolve .note-list {
  margin: 8px 0 0 1.2em;
  padding: 0;
}
#fatdissolve .note-list li {
  list-style: disc;
  margin-bottom: 4px;
}

/* レスポンシブ */
@media (max-width: 767px) {
  #fatdissolve .treatment-content {
    flex-direction: column;
    align-items: center;
  }
  #fatdissolve .treatment-img {
    margin-bottom: 16px;
  }
}
/* ── スーパー小顔注射（BNLS） ── */
#bnls{
  background-color: var(--color-bg-light-key);
  padding: 100px 20px 80px;
}
#bnls .wrapper{
  max-width: 1000px;
  margin: 0 auto;
}

/* 見出し（医科共通） */
#bnls .section-heading_medical{
  font-family: var(--font-catch);
  font-size: var(--font-size-xxl);
  text-align: center;
  margin-bottom: 40px;
}
#bnls .section-heading_medical small{
  display:block;
  font-family: var(--font-body);
  font-size: var(--font-size-sm);
  color:#666;
  margin-top:6px;
}

/* 小見出し＋本文 */
#bnls .bnls-subtitle{
  font-family: var(--font-catch);
  font-size: var(--font-size-md);
  margin: 0 0 12px;
}
#bnls .bnls-desc{
  font-family: var(--font-body);
  font-size: var(--font-size-m);
  line-height: var(--lh-loose);
  color:#222;
  margin-bottom: 48px;
}

/* モバイル */
@media (max-width: 767px){
  #bnls{ padding: 72px 20px; }
  #bnls .section-heading_medical{ margin-bottom: 32px; }
}
/* ── 水光注射 ── */
#waterlight{ background:#fff; padding:80px 20px; }
#waterlight .wrapper{ max-width:1000px; margin:0 auto; }

#waterlight .section-heading_medical{
  font-family:var(--font-catch);
  font-size:var(--font-size-xxl);
  text-align:center;
  margin-bottom:24px;
}
#waterlight .section-heading_medical small{
  display:block; font-family:var(--font-body);
  font-size:var(--font-size-sm); color:#666; margin-top:4px;
}

#waterlight .treatment-content{
  display:flex; gap:40px; align-items:flex-start;
  flex-wrap:wrap; margin-bottom:24px;
}
#waterlight .treatment-img{
  width:100%; max-width:200px; object-fit:cover; border-radius:4px;
}
#waterlight .treatment-text{

  font-size:var(--font-size-m); line-height:var(--lh-loose); color:#333;
}

/* Q&A */
#waterlight .qa-heading{ font-family:var(--font-catch); font-size:var(--font-size-lg); margin:24px 0 8px; }
#waterlight .qa-block{ margin-bottom:16px; }
#waterlight .qa-q{
  position:relative; padding-left:28px;
  font-size:var(--font-size-md); margin:12px 0 4px;
}
#waterlight .qa-q::before{
  content:""; position:absolute; left:0; top:2px;
  width:18px; height:18px; background:url("../img/icon_jewelry.svg") no-repeat center/contain;
}
#waterlight .qa-a{ font-size:var(--font-size-m); line-height:var(--lh-normal); color:#333; }

@media (max-width:767px){
  #waterlight .treatment-content{ flex-direction:column; align-items:center; }
  #waterlight .treatment-img{ margin-bottom:16px; }
}

/* ── キラリ注射 ── */
#kirari{
  width:100%;
  max-width:100%;
  background-color: var(--color-bg-light-key);
  padding: 80px 0;
}
#kirari .kirari-inner{
  max-width:1000px;
  margin:0 auto;
  padding:0 20px;
  box-sizing:border-box;
}

/* 見出し */
#kirari .section-heading_medical{
  font-family: var(--font-catch);
  font-size: var(--font-size-xxl);
  text-align:center;
  margin:0 0 24px;
}
#kirari .section-heading_medical small{
  display:block;
  font-family: var(--font-body);
  font-size: var(--font-size-sm);
  color:#666;
  margin-top:4px;
}

/* リード文 */
#kirari .kirari-lead{
  font-family: var(--font-body);
  font-size: var(--font-size-m);
  line-height: var(--lh-loose);
  color:#333;
  margin: 0 auto 20px;
}

/* 所要時間（時計） */
#kirari .kirari-time{
  display:flex;
  align-items:center;
  gap:10px;
  margin: 8px 0 28px;
  font-family: var(--font-body);
  font-size: var(--font-size-md);
  color:#222;
}
#kirari .kirari-time img{
  width:22px; height:auto; display:block;
}

/* 小見出し */
#kirari .kirari-subtitle{
  font-family: var(--font-catch);
  font-size: var(--font-size-md);
  margin: 0 0 16px;
}

/* 4カード */
#kirari .kirari-info-grid{
  display:grid;
  grid-template-columns: repeat(4, 1fr);
  gap:24px;
}
#kirari .kirari-card{
  background:#fff;
  text-align:center;
  padding:28px 16px;
  box-sizing:border-box;
}
#kirari .kirari-card h3{
  font-family: var(--font-catch);
  font-size: var(--font-size-md);
  margin:0 0 8px;
}
#kirari .kirari-card p{
  font-family: var(--font-body);
  font-size: var(--font-size-sm);
  line-height: var(--lh-normal);
  color:#333;
  margin:0;
}

/* レスポンシブ */
@media (max-width: 1024px){
  #kirari .kirari-info-grid{ grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 640px){
  #kirari{ padding:56px 0; }
  #kirari .kirari-info-grid{ grid-template-columns: 1fr; }
}

/* ── ボトックス ── */
#botox{
  background:#fff;
  padding:80px 20px;
}
#botox .wrapper{
  max-width:1000px;
  margin:0 auto;
}
#botox .section-heading_medical{
  font-family: var(--font-catch);
  font-size: var(--font-size-xxl);
  text-align:center;
  margin-bottom:24px;
}
#botox .section-heading_medical small{
  display:block;
  font-family: var(--font-body);
  font-size: var(--font-size-sm);
  color:#666;
  margin-top:4px;
}

/* 画像＋説明 */
#botox .treatment-content{
  display:flex;
  gap:40px;
  align-items:flex-start;
  flex-wrap:wrap;
  margin-bottom:24px;
}
#botox .treatment-img{
  width:100%;
  max-width:200px;
  border-radius:4px;
  object-fit:cover;
}
#botox .treatment-text{
  flex:1 1 300px;
  font-family: var(--font-body);
  font-size: var(--font-size-m);
  line-height: var(--lh-loose);
  color:#333;
}

/* 効果ボックス */
#botox .effect-grid{
  display:grid;
  grid-template-columns: repeat(2,1fr);
  gap:24px;
  margin:24px 0 16px;
}
#botox .effect-box{
  background: var(--color-bg-light-key);
  padding:16px 16px 12px;
  box-sizing:border-box;
}
#botox .effect-title{
  background: var(--color-bg-deep-key);
  color:#000;
  display:inline-block;
  padding:8px 14px;
  border-radius:0; /* タイトル帯は角丸なし */
  font-family: var(--font-body);
  font-size: var(--font-size-lg);
  margin-bottom:10px;
      width: 100%;
    max-width: 100%;
    box-sizing: border-box;
}

/* ダイヤの箇条書き */
#botox .diamond-list{
  padding-left:0;
  margin:0;
  list-style:none;
  font-family: var(--font-body);
  font-size: var(--font-size-md);
  line-height: var(--lh-normal);
  color:#333;
}
#botox .diamond-list li{
  margin:8px 0;
  padding-left:24px;
  position:relative;
}
#botox .diamond-list li::before{
  content:"";
  position:absolute;
  left:0; top:2px;
  width:16px; height:16px;
  background:url("../img/icon_jewelry.svg") no-repeat center/16px 16px;
}

/* 注意文 */
#botox .botox-notes{
  font-family: var(--font-body);
  font-size: var(--font-size-md);
  line-height: var(--lh-loose);
  color:#333;
  margin-top:8px;
}
#botox .subtitle{
  font-family: var(--font-catch);
  font-size: var(--font-size-md);
  margin:16px 0 6px;
}

/* 術後の生活 4カード */
#botox .aftercare-title{
  font-family: var(--font-catch);
  font-size: var(--font-size-md);
  margin: 20px 0 12px;
}
#botox .aftercare-grid{
  display:grid;
  grid-template-columns: repeat(4,1fr);
  gap:16px;
}
#botox .aftercare-card{
  background: var(--color-bg-light-key);
  text-align:center;
  padding:20px 12px;
}
#botox .aftercare-card h3{
  font-family: var(--font-catch);
  font-size: var(--font-size-md);
  margin:0 0 6px;
}
#botox .aftercare-card p{
  font-family: var(--font-body);
  font-size: var(--font-size-sm);
  line-height: var(--lh-normal);
  margin:0;
}

/* NG事項 */
#botox .botox-caution{
  margin-top:14px;
  font-family: var(--font-body);
  font-size: var(--font-size-sm);
  color:#333;
}

/* レスポンシブ */
@media (max-width: 900px){
  #botox .effect-grid{ grid-template-columns:1fr; }
  #botox .aftercare-grid{ grid-template-columns: repeat(2,1fr); }
}
@media (max-width: 540px){
  #botox .treatment-content{
    flex-direction:column;
    align-items:center;
  }
  #botox .aftercare-grid{ grid-template-columns: 1fr; }
}

/* ── ヒアルロン酸 ── */
#hyaluron {
  width: 100%;
  background-color: var(--color-bg-light-key); /* 薄いピンク（医科） */
}
#hyaluron .wrapper {
  max-width: 1000px;
  margin: 0 auto;
  padding: 80px 20px;
  box-sizing: border-box;
}

/* 見出し（共通 medical） */
#hyaluron .section-heading_medical {
  font-family: var(--font-catch);
  font-size: var(--font-size-xxl);
  text-align: center;
  margin: 0 0 24px;
}
#hyaluron .section-heading_medical small {
  display: block;
  font-family: var(--font-body);
  font-size: var(--font-size-sm);
  color: #666;
  margin-top: 4px;
}

/* タグ */
#hyaluron .tags {
  text-align: center;
  margin-bottom: 32px;
}

/* 下線付き小見出し */
#hyaluron .hl-underline {
  font-family: var(--font-catch);
  font-size: var(--font-size-lg);
  padding-bottom: 8px;
  border-bottom: 1px solid rgba(0,0,0,0.2);
  margin: 28px 0 12px;
}

/* 本文 */
#hyaluron p {
  font-family: var(--font-body);
  font-size: var(--font-size-m);
  line-height: var(--lh-loose);
  color: #333;
  margin: 0 0 14px;
}
#hyaluron .note {
  font-size: var(--font-size-sm);
  color: #555;
}

/* レスポンシブ */
@media (max-width: 767px) {
  #hyaluron .wrapper { padding: 56px 16px; }
  #hyaluron .hl-underline { margin-top: 24px; }
}

/* ── JALUPRO ── */
#jalupro {
  background:#fff;
  padding: 80px 20px;
}
#jalupro .wrapper{
  max-width:1000px;
  margin:0 auto;
}

/* タイトル */
#jalupro .section-heading_medical{
  font-family: var(--font-catch);
  font-size: var(--font-size-xxl);
  text-align:center;
  margin:0 0 24px;
}

/* タグ（既存の .tag を利用） */
#jalupro .tags{ text-align:center; margin-bottom:32px; }

/* メイン・レイアウト */
#jalupro .jalupro-content{
  display:flex;
  align-items:flex-start;
  gap:40px;
  flex-wrap:wrap;
  margin-bottom:24px;
}
#jalupro .jalupro-img{
  width:100%;
  max-width:200px;
  border-radius:4px;
  object-fit:cover;
}
#jalupro .jalupro-text{
  flex:1 1 300px;
  font-family:var(--font-body);
  font-size:var(--font-size-m);
  line-height:var(--lh-loose);
  color:#333;
}
#jalupro .jalupro-catch{
  font-family: var(--font-catch); /* ヒラギノ角ゴ指定想定 */
  font-weight:700;
  font-size: var(--font-size-xl); /* 少し大きめ */
  margin: 0 0 12px;
}

/* pill 見出し */
#jalupro .pill-title{
  display:inline-block;
  background-color: var(--color-bg-deep-key);
  padding:6px 12px;
  margin:24px 0 8px;
  font-family:var(--font-body);
  font-size:var(--font-size-sm);
}

/* 丸アイコン列（折り返しなし） */
#jalupro .jalupro-icons{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:40px;
  flex-wrap:nowrap;            /* 常に横並び */
  margin: 28px auto 40px;
  max-width: 720px;
}
#jalupro .jalupro-icons img{
  width:200px;
  height:auto;
  display:block;
}

/* SP */
@media (max-width:767px){
  #jalupro .jalupro-content{ gap:24px; }
  #jalupro .jalupro-icons{ gap:16px; max-width:100%; }
  #jalupro .jalupro-icons img{ width:30vw; } /* 3つ横並びのまま縮小 */
}

/* ── 表面麻酔（クリーム麻酔） ── */
#topical{
  background: var(--color-bg-light-key);
  padding: 60px 20px;
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
  margin-bottom: 80px;
}
#topical .wrapper{
  max-width: 1000px;
  margin: 0 auto;
}

/* 見出し行：左右フレックス＋下線 */
#topical .topical-head{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding-bottom: 12px;
  border-bottom: 2px solid rgba(0,0,0,.25); /* 下線 */
  margin-bottom: 16px;
}
#topical .topical-title{
  font-family: var(--font-catch);
  font-size: var(--font-size-xl);
  margin: 0;
}

/* 小さめ料金ボタン */
.btn-price--small{
  font-size: var(--font-size-sm);
  padding: 8px 20px;
  border-radius: 20px;
}

/* 本文 */
#topical .topical-desc{
  font-family: var(--font-body);
  font-size: var(--font-size-m);
  line-height: var(--lh-loose);
  margin: 0;
}

/* SP調整：狭い時はボタンが下に回っても余白きれいに */
@media (max-width: 767px){
  #topical .topical-head{ flex-wrap: wrap; }
  #topical .btn-price--small{ margin-top: 8px; }
}

/* ── 薄毛治療 ── */
#hair{
  background: var(--color-bg-light-key);
}
#hair .wrapper{
  max-width: 1000px;
  margin: 0 auto;
  padding: 80px 20px;
}

/* 見出し（医科） */
#hair .section-heading_medical{
  font-family: var(--font-catch);
  font-size: var(--font-size-xxl);
  text-align: center;
  margin: 0 0 20px;
}
#hair .section-heading_medical small{
  display: block;
  font-family: var(--font-body);
  font-size: var(--font-size-sm);
  color: #666;
  margin-top: 4px;
}

/* タグ */
#hair .tags{
  text-align: center;
  margin-bottom: 24px;
}

/* キャッチ・本文 */
#hair .hair-catch{
  font-family: var(--font-body);
  font-size: var(--font-size-lg);
  font-weight: 600;
  margin: 8px 0 12px;
}
#hair .hair-desc{
  font-family: var(--font-body);
  font-size: var(--font-size-m);
  line-height: var(--lh-loose);
}
#hair .subtitle{
  font-family: var(--font-catch);
  font-size: var(--font-size-md);
  margin: 24px 0 8px;
}
#hair .note-list{
  margin: 0 0 8px 1.2em;
  padding: 0;
}
#hair .note-list li{
  list-style: disc;
  margin: 2px 0 6px;
}

/* SP 調整 */
@media (max-width: 767px){
  #hair .hair-catch{ font-size: var(--font-size-md); }
}

/* ── ピーリング ── */
#peeling{
  background:#fff;
  padding:80px 20px;
}
#peeling .wrapper{
  max-width:1000px;
  margin:0 auto;
}

/* 見出し */
#peeling .section-heading_medical{
  font-family:var(--font-catch);
  font-size:var(--font-size-xxl);
  text-align:center;
  margin-bottom:24px;
}
#peeling .section-heading_medical small{
  display:block;
  font-family:var(--font-body);
  font-size:var(--font-size-sm);
  color:#666;
  margin-top:4px;
}

/* タグ */
#peeling .tags{
  text-align:center;
  margin-bottom:32px;
}

/* 上部レイアウト */
#peeling .peeling-top{
  display:flex;
  align-items:flex-start;
  gap:40px;
  margin-bottom:24px;
}
#peeling .peeling-img{
  width:100%;
  max-width:200px;
  height:auto;
  object-fit:cover;
  border-radius:4px;
}
#peeling .peeling-lead p{
  font-family:var(--font-body);
  font-size:var(--font-size-md);
  line-height:var(--lh-loose);
  color:#333;
}

/* 説明ボックス */
#peeling .peeling-box{ margin:20px 0; }
#peeling .subhead{
  font-family:var(--font-catch);
  font-size:var(--font-size-md);
  margin:0 0 8px;
}
#peeling .disc-list{
  margin:8px 0 0 1.2em;
  padding:0;
}
#peeling .disc-list li{
  list-style:disc;
  margin-bottom:4px;
}

/* コース群 */
#peeling .course-block{ margin:28px 0; }
#peeling .course-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  padding:0 0 10px;
  border-bottom:2px solid #cfcfcf;
}
#peeling .course-title{
  display:inline-block;
  background:var(--color-bg-deep-key);
  padding:8px 16px;
  font-family:var(--font-body);
  font-size:var(--font-size-md);
  color:#000;
}
#peeling .course-time{
  display:flex;
  align-items:center;
  gap:8px;
  font-family:var(--font-body);
  font-size:var(--font-size-sm);
}
#peeling .course-time img{ width:18px; height:auto; }
#peeling .course-body{
  padding-top:16px;
  font-family:var(--font-body);
  font-size:var(--font-size-md);
  line-height:var(--lh-loose);
}

/* モバイル */
@media (max-width:767px){
  #peeling .peeling-top{
    flex-direction:column;
    align-items:center;
  }
  #peeling .peeling-img{ margin-bottom:16px; }
}

/* ── 糸リフト ── */
#threadlift{
  background: var(--color-bg-light-key);
  padding: 80px 20px;
  width:100%;
  max-width: 95%;
  margin-bottom: 100px;
}
#threadlift .wrapper{
  max-width:1000px;
  margin:0 auto;
}

/* 見出し */
#threadlift .section-heading_medical{
  font-family:var(--font-catch);
  font-size:var(--font-size-xxl);
  text-align:center;
  margin-bottom:24px;
}
#threadlift .section-heading_medical small{
  display:block;
  font-family:var(--font-body);
  font-size:var(--font-size-sm);
  color:#666;
  margin-top:4px;
}

/* タグ */
#threadlift .tags{ text-align:center; margin-bottom:32px; }

/* 上部：画像＋キャッチ */
#threadlift .thread-top{
  display:flex;
  align-items:flex-start;
  gap:40px;
  flex-wrap:wrap;
  margin-bottom:16px;
}
#threadlift .thread-img{
  width:100%;
  max-width:200px;
  object-fit:cover;
  border-radius:4px;
}
#threadlift .catch{
  font-family:var(--font-catch);
  font-size:var(--font-size-xl);
  line-height:1.5;
  margin:0;
}

/* 本文 */
#threadlift .thread-desc p{
  font-family:var(--font-body);
  font-size:var(--font-size-md);
  line-height:var(--lh-loose);
  color:#333;
}

/* 白ボックス */
#threadlift .white-box{
  background:#fff;
  padding:14px 16px;
  margin:20px 0 24px;
  border-left:4px solid var(--color-bg-deep-key);
  box-sizing:border-box;
}

/* ラベル見出し（濃いピンク帯） */
#threadlift .label-heading{
  display:inline-block;
  background:var(--color-bg-deep-key);
  color:#000;            /* 白抜き禁止 */
  padding:6px 12px;
  margin:8px 0 16px;
  font-family:var(--font-body);
  font-size:var(--font-size-sm);
}

/* サブ見出し（h3） */
#threadlift .thread-h3{
  font-family:var(--font-catch);
  font-size:var(--font-size-lg);
  margin:24px 0 8px;
}

/* 箇条書き */
#threadlift .disc-list{
  margin:8px 0 8px 1.2em;
  padding:0;
}
#threadlift .disc-list li{ list-style:disc; margin-bottom:4px; }

/* 生活カード */
#threadlift .life-cards{
  display:flex;
  gap:16px;
  flex-wrap:wrap;
  margin:12px 0 28px;
}
#threadlift .life-card{
  background:#fff;
  border:1px solid #eee;
  padding:16px 12px;
  text-align:center;
  flex:1 1 210px;
  box-sizing:border-box;
}
#threadlift .life-card h5{
  font-family:var(--font-catch);
  font-size:var(--font-size-md);
  margin:0 0 6px;
}
#threadlift .life-card p{
  margin:0;
  font-family:var(--font-body);
  font-size:var(--font-size-sm);
}

/* セクション内h4（通常見出し） */
#threadlift .thread-h4,
#threadlift .thread-h4 + p,
#threadlift p{
  font-family:var(--font-body);
  line-height:var(--lh-loose);
  color:#333;
}
#threadlift .thread-h4{
  font-size:var(--font-size-md);
  margin:24px 0 8px;
}

/* モバイル */
@media (max-width:767px){
  #threadlift .thread-top{
    flex-direction:column;
    align-items:center;
    gap:16px;
  }
  #threadlift .thread-img{ margin-bottom:8px; max-width: 100%; }
}


