@charset "UTF-8";

:root {
  --rem-scale: 1;
}

html {
  scroll-padding-top: calc(var(--header-h, 120px) + 20px);
}

body {
  font-family: "Noto Sans JP", sans-serif;
  color: #10355d;
  font-weight: 400;
  background-color: #f2f2f2;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.main {
  container-type: inline-size;
}

img {
  max-width: 100%;
  height: auto;
}

a[href^="tel:"] {
  pointer-events: none;
}

a {
  transition: opacity 0.3s;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

/* Remove default padding */

ul,
ol {
  padding: 0;
}

/* Remove default margin */

body,
h1,
h2,
h3,
h4,
p,
ul,
ol,
figure,
blockquote,
dl,
dd {
  margin: 0;
}

/* Set core root defaults */

html {
  scroll-behavior: smooth;
}

/* Set core body defaults */

body {
  min-height: 100vh;
  text-rendering: optimizeSpeed;
  line-height: 1.5;
}

/* Remove list styles on ul, ol elements with a class attribute */

ul,
ol {
  list-style: none;
}

/* A elements that don't have a class get default styles */

a:not([class]) {
  -webkit-text-decoration-skip: ink;
          text-decoration-skip-ink: auto;
}

a {
  text-decoration: none;
}

/* Make images easier to work with */

img {
  max-width: 100%;
  display: block;
  width: 100%;
}

/* Natural flow and rhythm in articles by default */

article > * + * {
  margin-top: 1em;
}

/* Inherit fonts for inputs and buttons */

input,
button,
textarea,
select {
  font: inherit;
}

/* Blur images when they have no alt attribute */

img:not([alt]) {
  filter: blur(10px);
}

/* フォームリセット */

input,
button,
select,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: transparent;
  border: none;
  border-radius: 0;
  font: inherit;
  outline: none;
}

textarea {
  resize: vertical;
}

input[type=checkbox],
input[type=radio] {
  display: none;
}

input[type=submit],
input[type=button],
label,
button,
select {
  cursor: pointer;
}

select::-ms-expand {
  display: none;
}

/* ========================================
  アニメーション共通
======================================== */

/* --- js-sticky-cover ------------------------------------------------ */

/*
  画面いっぱいの画像を貼り付かせ、スクロールに合わせて次の画像が
  下からせり上がって切り替わる演出。

  仕組み:
  - 親（.js-sticky-cover）に高さを持たせ、中の .js-sticky-cover__stage を
    position: sticky で貼り付ける。position: fixed は使わない
    （.main の container-type: inline-size が fixed の包含ブロックになるため）
  - 画像は grid の同一セルに重ね、2枚目以降を clip-path で下から開く
  - 画像自体は scale で拡大しておき、枠の中を縦にずらす（パララックス本体）

  JS（anime.js）が流し込む値:
  --sc-progress … 貼り付き区間の進捗 0〜1（画像のスライドに使う）
  --sc-reveal   … 切り替えの進捗 0〜1（前後に静止区間を持たせたもの）
*/

.js-sticky-cover {
  --sc-progress: 0;
  --sc-reveal: 0;
  --sc-scale: 1;
}

.js-sticky-cover__stage {
  position: sticky;
  top: 0;
  overflow: hidden;
  width: 100%;
  height: 100vh;
  height: 100svh;
}

.js-sticky-cover__list {
  display: grid;
  width: 100%;
  height: 100%;
}

.js-sticky-cover-item {
  grid-area: 1/1;
  overflow: hidden;
  width: 100%;
  height: 100%;
}

.js-sticky-cover-item + .js-sticky-cover-item {
  -webkit-clip-path: inset(calc((1 - var(--sc-reveal)) * 100%) 0 0 0);
          clip-path: inset(calc((1 - var(--sc-reveal)) * 100%) 0 0 0);
}

.js-sticky-cover-item__inner {
  display: block;
  width: 100%;
  height: 100%;
  transform: translate3d(0, calc((var(--sc-scale) - 1) * 100% * var(--sc-progress)), 0);
}

.js-sticky-cover-item__inner img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transform: scale(var(--sc-scale));
  transform-origin: bottom center;
}

.js-sticky-cover.is-sticky-cover-active .js-sticky-cover-item__inner {
  will-change: transform;
}

/* アニメーション効果を削除・軽減の設定をした場合に有効化するスタイル */

/* --- スクロール出現アニメーション ------------------------------------------------ */

/*
  トンマナ: 医療／介護／教育（安心・優しさ・清潔・穏やか）

  1. 見出し … 1文字ずつ下から押し上げ（js-split-up）
  2. 画像   … 下から50pxフェードアップ。横並びは時差（js-fadeIn-up-single / js-fadeIn-ups）
               テキストブロックは動かさない
  3. マーカー … 帯が左から右へ伸びる（js-marker）。本文が出た少しあとに走らせる
  4. FV     … 初回訪問のみオープニング（is-fv-opening。CSSアニメーションで自走）

  初期状態（非表示）は <html class="is-anime-ready"> が付いているときだけ当てる。
  JS が動かない環境で要素が永久に消えるのを避けるため、
  クラスは head のインラインスクリプトで付け、一定時間で自動解除する。
*/

/* 1. 見出し — 1文字ずつ下から */

.is-anime-ready .js-split-up {
  overflow: hidden;
}

.is-anime-ready .js-split-up > span {
  display: inline-block;
  opacity: 0;
  transform: translateY(105%);
  transition: opacity 700ms cubic-bezier(0.22, 1, 0.36, 1), transform 700ms cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: calc(var(--anime-i, 0) * 45ms);
}

.is-anime-ready .js-split-up--line > span {
  display: block;
}

.is-anime-ready .js-split-up--inline {
  display: inline-block;
  vertical-align: bottom;
}

.is-anime-ready .js-split-up.is-inview > span {
  opacity: 1;
  transform: none;
}

/* 2. 画像 — ほとんど動かさず、ゆっくりふわっと出す */

/*
  見出し（1文字ずつ下から押し上げ）と動きがかぶって見えたので、
  上下の移動量を 50px → 16px に減らし、代わりに時間をかけてフェードさせる。
  見出し＝跳ね上がる / 画像＝にじみ出る、と役割を分ける。
*/

.is-anime-ready .js-fadeIn-up-single,
.is-anime-ready .js-fadeIn-ups {
  opacity: 0;
  transform: translateY(16px);
  transition: opacity 1400ms cubic-bezier(0.33, 1, 0.68, 1), transform 1400ms cubic-bezier(0.33, 1, 0.68, 1);
}

.is-anime-ready .js-fadeIn-ups {
  transition-delay: calc(var(--anime-i, 0) * 200ms);
}

.is-anime-ready .js-fadeIn-up-single.is-inview,
.is-anime-ready .js-fadeIn-ups.is-inview {
  opacity: 1;
  transform: none;
}

/* 3. マーカー — 左から右へ伸びる */

.is-anime-ready .js-marker {
  background-size: 0% clamp(0.56875 * 1rem, 0.8125 * 1rem * var(--rem-scale), 1.38125 * 1rem);
  transition: background-size 700ms cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: 500ms;
}

.is-anime-ready .js-marker.is-inview {
  background-size: 100% clamp(0.56875 * 1rem, 0.8125 * 1rem * var(--rem-scale), 1.38125 * 1rem);
}

/* 4. FV オープニング — 初回訪問のみ。青い面が全画面から半円へ縮む */

/*
  0.3s キャッチ → 0.75s リード文 → コピーが出揃ってから
  1.4s 青が1.2秒かけて半円へ縮む（透かしロゴも所定位置へ）
  → 1.7s スライダーが乗る → 2.0s ヘッダー・固定ボタン・バッジ → 2.65s 完了

  イージングはスクロール用（$anime-ease）と分ける。
  $anime-ease は最初の3割で8割動くので、開幕の大きな動きに使うとせわしなく感じる。

  すべて CSS アニメーションで動かし、JS は <html> へのクラス付け外しだけを担う。
  animation-fill-mode: both なので、クラスが外れた時点の見た目＝通常状態になる。
  クラスは head のインラインスクリプトで付けるため、anime.js が落ちても再生される。
*/

.is-fv-opening .top-fv {
  z-index: 50;
  height: max(100dvh, clamp(39.375 * 1rem, 56.25 * 1rem * var(--rem-scale), 95.625 * 1rem));
  margin-bottom: min(0px, clamp(39.375 * 1rem, 56.25 * 1rem * var(--rem-scale), 95.625 * 1rem) - 100dvh);
}

.is-fv-opening .top-fv__bg {
  animation: fv-open-bg 1200ms cubic-bezier(0.33, 1, 0.68, 1) 1400ms both;
}

.is-fv-opening .top-fv__watermark {
  animation: fv-open-watermark 1200ms cubic-bezier(0.33, 1, 0.68, 1) 1400ms both;
}

.is-fv-opening .top-fv__catch-line {
  display: inline-block;
  overflow: hidden;
  vertical-align: bottom;
}

.is-fv-opening .top-fv__catch-text {
  display: block;
  animation: fv-open-line 900ms cubic-bezier(0.33, 1, 0.68, 1) 300ms both;
}

.is-fv-opening .top-fv__lead {
  animation: fv-open-soft 800ms cubic-bezier(0.33, 1, 0.68, 1) 750ms both;
}

.is-fv-opening .top-fv__badges {
  animation: fv-open-soft 650ms cubic-bezier(0.33, 1, 0.68, 1) 2000ms both;
}

.is-fv-opening .top-fv__slider {
  animation: fv-open-fade 700ms cubic-bezier(0.33, 1, 0.68, 1) 1700ms both;
}

.is-fv-opening .header,
.is-fv-opening .side-nav,
.is-fv-opening .sp-cta {
  animation: fv-open-fade 650ms cubic-bezier(0.33, 1, 0.68, 1) 2000ms both;
}

@keyframes fv-open-bg {
  from {
    transform: translateX(-50%) scale(2.2);
  }

  to {
    transform: translateX(-50%) scale(1);
  }
}

@keyframes fv-open-watermark {
  from {
    transform: translate(calc(clamp(22.8375 * 1rem, 32.625 * 1rem * var(--rem-scale), 55.4625 * 1rem) * -1), calc(clamp(5.99375 * 1rem, 8.5625 * 1rem * var(--rem-scale), 14.55625 * 1rem) * -1));
  }

  to {
    transform: none;
  }
}

@keyframes fv-open-watermark-sp {
  from {
    transform: translate(calc(clamp(7 * 1rem, 10 * 1rem * var(--rem-scale), 17 * 1rem) * -1), calc(clamp(10.36875 * 1rem, 14.8125 * 1rem * var(--rem-scale), 25.18125 * 1rem) * -1));
  }

  to {
    transform: none;
  }
}

@keyframes fv-open-line {
  from {
    opacity: 0;
    transform: translateY(110%);
  }

  to {
    opacity: 1;
    transform: none;
  }
}

@keyframes fv-open-soft {
  from {
    opacity: 0;
    transform: translateY(16px);
  }

  to {
    opacity: 1;
    transform: none;
  }
}

@keyframes fv-open-fade {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

/* ========================================
  共通パーツ
======================================== */

/* --- レイアウト・ユーティリティ ------------------------------------------------ */

/* 共通パーツ */

.inner {
  width: 100%;
  max-width: clamp(49 * 1rem, 70 * 1rem * var(--rem-scale), 119 * 1rem);
  padding-inline: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  margin-inline: auto;
}

.heading-lg {
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
  font-weight: 700;
  color: #10355d;
  line-height: 1.4;
  text-align: center;
}

.icon-arrow-down {
  display: block;
  flex-shrink: 0;
  width: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  height: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  background-image: url("../img/common/icon-arrow-down.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

.text-body {
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 1.8;
}

.icon-chevron {
  display: block;
  flex-shrink: 0;
  width: clamp(0.663425 * 1rem, 0.94775 * 1rem * var(--rem-scale), 1.611175 * 1rem);
  height: clamp(0.35735 * 1rem, 0.5105 * 1rem * var(--rem-scale), 0.86785 * 1rem);
  background-image: url("../img/common/icon-chevron.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

.icon-check {
  display: block;
  flex-shrink: 0;
  width: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  height: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  background-image: url("../img/common/icon-check.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

.u-sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.pic {
  display: contents;
}

.pic source {
  display: none;
}

.br-sp {
  display: none;
}

.tab-show {
  display: none;
}

.sp-show {
  display: none;
}

/* --- ロゴ ------------------------------------------------ */

.logo {
  display: flex;
  align-items: center;
  width: clamp(13.125 * 1rem, 18.75 * 1rem * var(--rem-scale), 31.875 * 1rem);
  height: clamp(2.975 * 1rem, 4.25 * 1rem * var(--rem-scale), 7.225 * 1rem);
  background-color: #fff;
  border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
}

.logo:focus-visible {
  outline: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem) solid #145aa6;
  outline-offset: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem);
}

.logo__image {
  width: 100%;
  height: 100%;
}

.logo--footer {
  width: clamp(15.70625 * 1rem, 22.4375 * 1rem * var(--rem-scale), 38.14375 * 1rem);
  height: clamp(3.54375 * 1rem, 5.0625 * 1rem * var(--rem-scale), 8.60625 * 1rem);
}

/* --- バッジ（駐車場完備 等） ------------------------------------------------ */

.badge-list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
}

.badge {
  padding: clamp(0.13125 * 1rem, 0.1875 * 1rem * var(--rem-scale), 0.31875 * 1rem) clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
  font-size: clamp(0.56875 * 1rem, 0.8125 * 1rem * var(--rem-scale), 1.38125 * 1rem);
  font-weight: 400;
  color: #fff;
  line-height: 1.4;
  background-color: #1767be;
  border-radius: clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem);
}

/* --- タグ（見出し下の小見出しラベル） ------------------------------------------------ */

.tag {
  display: inline;
  padding: clamp(0.30625 * 1rem, 0.4375 * 1rem * var(--rem-scale), 0.74375 * 1rem) clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  line-height: 2.1;
  border-radius: clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem);
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
}

.tag--light {
  font-size: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
  color: #10355d;
  background-color: #fff;
}

.tag--fill {
  font-size: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  color: #fff;
  background-color: #145aa6;
}

.tag--lg {
  font-size: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

/* --- マーカー（本文中の太字＋帯） ------------------------------------------------ */

.marker {
  font-weight: 700;
  background-image: linear-gradient(#10355d 0 0);
  background-size: 100% clamp(0.56875 * 1rem, 0.8125 * 1rem * var(--rem-scale), 1.38125 * 1rem);
  background-repeat: no-repeat;
  background-position: 0 92%;
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
}

.marker--light {
  background-image: linear-gradient(#fff 0 0);
}

/* --- セクション見出し ------------------------------------------------ */

.section-title {
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
  font-weight: 700;
  color: #10355d;
  line-height: 1.4;
  text-align: center;
}

/* --- 下層ページ 見出し帯・サブ見出し ------------------------------------------------ */

.heading-band {
  display: flex;
  align-items: flex-end;
  width: 100%;
  height: clamp(2.45 * 1rem, 3.5 * 1rem * var(--rem-scale), 5.95 * 1rem);
  padding: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem) clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem);
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(1.225 * 1rem, 1.75 * 1rem * var(--rem-scale), 2.975 * 1rem);
  font-weight: 700;
  color: #fff;
  line-height: 1.2;
  background-color: #145aa6;
  border-radius: clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem);
}

.heading-sub {
  width: 100%;
  padding: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem);
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  font-weight: 700;
  color: #145aa6;
  line-height: 1.8;
  border-bottom: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem) solid #145aa6;
}

/* --- もっと詳しく／矢印リンク ------------------------------------------------ */

.more {
  display: inline-flex;
  align-items: center;
  gap: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
}

.more:focus-visible {
  outline: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem) solid #145aa6;
  outline-offset: clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem);
}

.more__text {
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  font-weight: 700;
  color: #10355d;
  line-height: 1.4;
  white-space: nowrap;
}

.more__icon {
  display: block;
  flex-shrink: 0;
  width: clamp(2.23125 * 1rem, 3.1875 * 1rem * var(--rem-scale), 5.41875 * 1rem);
  height: clamp(2.23125 * 1rem, 3.1875 * 1rem * var(--rem-scale), 5.41875 * 1rem);
  background-image: url("../img/common/icon-arrow.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  transition: transform 0.3s;
}

.more--light .more__text {
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  color: #fff;
}

.more--light .more__icon {
  width: clamp(1.53125 * 1rem, 2.1875 * 1rem * var(--rem-scale), 3.71875 * 1rem);
  height: clamp(1.53125 * 1rem, 2.1875 * 1rem * var(--rem-scale), 3.71875 * 1rem);
  background-image: url("../img/common/icon-arrow-white.svg");
}

.more--light {
  gap: clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
}

.more--light:focus-visible {
  outline-color: #fff;
}

.more--light[data-size=lg] {
  gap: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
}

.more--light[data-size=lg] .more__text {
  font-size: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.more--light[data-size=lg] .more__icon {
  width: clamp(2.23125 * 1rem, 3.1875 * 1rem * var(--rem-scale), 5.41875 * 1rem);
  height: clamp(2.23125 * 1rem, 3.1875 * 1rem * var(--rem-scale), 5.41875 * 1rem);
}

/* --- ボタン ------------------------------------------------ */

.btn {
  gap: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  padding: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem) clamp(0.9625 * 1rem, 1.375 * 1rem * var(--rem-scale), 2.3375 * 1rem);
  background-color: #fff;
  border-radius: clamp(0.2625 * 1rem, 0.375 * 1rem * var(--rem-scale), 0.6375 * 1rem);
}

/* --- 予約CTA ------------------------------------------------ */

.cta {
  position: relative;
  z-index: 0;
  display: flex;
  align-items: flex-start;
  gap: clamp(1.70625 * 1rem, 2.4375 * 1rem * var(--rem-scale), 4.14375 * 1rem);
  width: 100%;
  max-width: clamp(39.375 * 1rem, 56.25 * 1rem * var(--rem-scale), 95.625 * 1rem);
  padding: clamp(1.00625 * 1rem, 1.4375 * 1rem * var(--rem-scale), 2.44375 * 1rem) clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem) clamp(0.9625 * 1rem, 1.375 * 1rem * var(--rem-scale), 2.3375 * 1rem) clamp(1.79375 * 1rem, 2.5625 * 1rem * var(--rem-scale), 4.35625 * 1rem);
  margin-inline: auto;
  background-color: #fff;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.cta__mark {
  flex-shrink: 0;
  width: clamp(5.6 * 1rem, 8 * 1rem * var(--rem-scale), 13.6 * 1rem);
  height: clamp(5.6 * 1rem, 8 * 1rem * var(--rem-scale), 13.6 * 1rem);
}

.cta__lead {
  font-size: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  font-weight: 500;
  color: #10355d;
  line-height: 1.4;
}

.cta__tel {
  display: flex;
  align-items: center;
  gap: clamp(0.30625 * 1rem, 0.4375 * 1rem * var(--rem-scale), 0.74375 * 1rem);
  margin-top: clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem);
}

.cta__tel::after {
  content: "";
  position: absolute;
  inset: 0;
}

.cta__tel:focus-visible {
  outline: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem) solid #145aa6;
  outline-offset: clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem);
}

.cta__tel-icon {
  display: block;
  flex-shrink: 0;
  width: clamp(2.1 * 1rem, 3 * 1rem * var(--rem-scale), 5.1 * 1rem);
  height: clamp(2.1 * 1rem, 3 * 1rem * var(--rem-scale), 5.1 * 1rem);
  background-color: #10355d;
  -webkit-mask-image: url("../img/common/icon-tel-solid.png");
          mask-image: url("../img/common/icon-tel-solid.png");
  transform: rotate(180deg);
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
}

.cta__tel-number {
  font-size: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
  font-weight: 700;
  color: #10355d;
  letter-spacing: 0.05em;
  line-height: 1.2;
  white-space: nowrap;
}

.cta__hours {
  margin-top: clamp(0.30625 * 1rem, 0.4375 * 1rem * var(--rem-scale), 0.74375 * 1rem);
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 500;
  color: #10355d;
  line-height: 1.2;
}

.cta__hours-sat {
  white-space: nowrap;
}

/* --- PC固定サイドナビ ------------------------------------------------ */

.side-nav {
  position: fixed;
  z-index: 90;
  top: 50%;
  right: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  width: clamp(2.625 * 1rem, 3.75 * 1rem * var(--rem-scale), 6.375 * 1rem);
  padding-block: clamp(0.74375 * 1rem, 1.0625 * 1rem * var(--rem-scale), 1.80625 * 1rem) clamp(0.9625 * 1rem, 1.375 * 1rem * var(--rem-scale), 2.3375 * 1rem);
  background-color: #61b8ff;
  border-top-left-radius: clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
  border-bottom-left-radius: clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
  transform: translateY(-50%);
}

.side-nav__item {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.side-nav__item:focus-visible {
  outline: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem) solid #fff;
  outline-offset: calc(clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem) * -1);
}

.side-nav__item--divided {
  position: relative;
  z-index: 0;
  margin-top: clamp(0.83125 * 1rem, 1.1875 * 1rem * var(--rem-scale), 2.01875 * 1rem);
  padding-top: clamp(0.74375 * 1rem, 1.0625 * 1rem * var(--rem-scale), 1.80625 * 1rem);
}

.side-nav__item--divided::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  width: clamp(1.575 * 1rem, 2.25 * 1rem * var(--rem-scale), 3.825 * 1rem);
  height: clamp(0.04375 * 1rem, 0.0625 * 1rem * var(--rem-scale), 0.10625 * 1rem);
  background-color: #fff;
  transform: translateX(-50%);
}

.side-nav__icon {
  width: clamp(1.4 * 1rem, 2 * 1rem * var(--rem-scale), 3.4 * 1rem);
  height: auto;
  margin-bottom: clamp(0.2625 * 1rem, 0.375 * 1rem * var(--rem-scale), 0.6375 * 1rem);
}

.side-nav__text {
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 500;
  color: #fff;
  letter-spacing: 0.1875em;
  line-height: 1.4;
  writing-mode: vertical-rl;
}

/* --- SP固定CTA ------------------------------------------------ */

.sp-cta {
  position: fixed;
  z-index: 90;
  bottom: 0;
  left: 0;
  display: none;
  width: 100%;
  height: clamp(2.625 * 1rem, 3.75 * 1rem * var(--rem-scale), 6.375 * 1rem);
  background-color: #61b8ff;
  container-type: inline-size;
}

.sp-cta__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 88%;
  height: 100%;
  margin-inline: auto;
}

.sp-cta__item {
  display: flex;
  align-items: center;
  gap: clamp(0.2625 * 1rem, 0.375 * 1rem * var(--rem-scale), 0.6375 * 1rem);
  height: clamp(1.925 * 1rem, 2.75 * 1rem * var(--rem-scale), 4.675 * 1rem);
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 500;
  color: #fff;
  line-height: 1.4;
  white-space: nowrap;
}

.sp-cta__item:focus-visible {
  outline: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem) solid #fff;
  outline-offset: calc(clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem) * -1);
}

.sp-cta__item--icon {
  justify-content: center;
  min-width: clamp(1.925 * 1rem, 2.75 * 1rem * var(--rem-scale), 4.675 * 1rem);
}

.sp-cta__tel-icon {
  display: block;
  width: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  height: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  background-color: #fff;
  transform: scaleY(-1);
  -webkit-mask-image: url("../img/common/icon-tel.png");
          mask-image: url("../img/common/icon-tel.png");
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
}

.sp-cta__line-icon {
  width: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  height: auto;
}

.sp-cta__divider {
  display: block;
  flex-shrink: 0;
  width: clamp(0.04375 * 1rem, 0.0625 * 1rem * var(--rem-scale), 0.10625 * 1rem);
  height: clamp(1.925 * 1rem, 2.75 * 1rem * var(--rem-scale), 4.675 * 1rem);
  background-color: #fff;
}

/* --- 下層ページのFV ------------------------------------------------ */

.page-head {
  position: relative;
  z-index: 0;
  overflow: hidden;
  height: clamp(18.8125 * 1rem, 26.875 * 1rem * var(--rem-scale), 45.6875 * 1rem);
}

.page-head__bg {
  position: absolute;
  top: calc(clamp(7.39375 * 1rem, 10.5625 * 1rem * var(--rem-scale), 17.95625 * 1rem) * -1);
  left: 50%;
  overflow: hidden;
  display: block;
  width: max(clamp(92.4875 * 1rem, 132.125 * 1rem * var(--rem-scale), 224.6125 * 1rem), 132.2vw);
  height: clamp(26.20625 * 1rem, 37.4375 * 1rem * var(--rem-scale), 63.64375 * 1rem);
  background-color: #145aa6;
  border-radius: 50%;
  transform: translateX(-50%);
}

.page-head__watermark {
  position: absolute;
  top: calc(clamp(8.8375 * 1rem, 12.625 * 1rem * var(--rem-scale), 21.4625 * 1rem) * -1);
  left: calc(50% - clamp(23.646875 * 1rem, 33.78125 * 1rem * var(--rem-scale), 57.428125 * 1rem));
  display: block;
  width: clamp(47.29375 * 1rem, 67.5625 * 1rem * var(--rem-scale), 114.85625 * 1rem);
  height: clamp(47.29375 * 1rem, 67.5625 * 1rem * var(--rem-scale), 114.85625 * 1rem);
  background-image: url("../img/fv/fv-watermark.svg");
  background-size: contain;
  background-repeat: no-repeat;
}

.page-head__title {
  position: relative;
  z-index: 10;
  padding-top: clamp(10.10625 * 1rem, 14.4375 * 1rem * var(--rem-scale), 24.54375 * 1rem);
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(1.575 * 1rem, 2.25 * 1rem * var(--rem-scale), 3.825 * 1rem);
  font-weight: 700;
  color: #fff;
  line-height: 1.5;
  text-align: center;
}

/* ========================================
  Breadcrumb
======================================== */

.breadcrumb {
  padding-top: clamp(0.21875 * 1rem, 0.3125 * 1rem * var(--rem-scale), 0.53125 * 1rem);
}

.breadcrumb__list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: clamp(0.13125 * 1rem, 0.1875 * 1rem * var(--rem-scale), 0.31875 * 1rem);
  font-size: clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem);
}

.breadcrumb__item {
  font-size: clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 1.4;
}

.breadcrumb__item + .breadcrumb__item::before {
  content: ">";
  margin-right: clamp(0.13125 * 1rem, 0.1875 * 1rem * var(--rem-scale), 0.31875 * 1rem);
}

.breadcrumb__link {
  color: inherit;
}

.breadcrumb__link:visited {
  color: inherit;
}

.breadcrumb__link:focus-visible {
  outline: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem) solid #145aa6;
  outline-offset: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem);
}

.error-404 {
  padding-block: clamp(3.5 * 1rem, 5 * 1rem * var(--rem-scale), 8.5 * 1rem) clamp(5.25 * 1rem, 7.5 * 1rem * var(--rem-scale), 12.75 * 1rem);
  text-align: center;
}

.error-404 .btn {
  margin-top: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
  margin-inline: auto;
}

/* ========================================
  ヘッダー
======================================== */

/* --- ヘッダー本体 ------------------------------------------------ */

.header {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100;
  width: 100%;
  height: clamp(5.25 * 1rem, 7.5 * 1rem * var(--rem-scale), 12.75 * 1rem);
  container-type: inline-size;
}

.header__bar {
  position: relative;
  z-index: 100;
  display: flex;
  align-items: center;
  gap: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  width: 100%;
  max-width: clamp(56.875 * 1rem, 81.25 * 1rem * var(--rem-scale), 138.125 * 1rem);
  height: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
  margin-top: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  margin-inline: auto;
  padding-inline: clamp(0.74375 * 1rem, 1.0625 * 1rem * var(--rem-scale), 1.80625 * 1rem) clamp(1.00625 * 1rem, 1.4375 * 1rem * var(--rem-scale), 2.44375 * 1rem);
  background-color: #10355d;
  border-radius: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
}

.header__logo {
  flex-shrink: 0;
}

.header__contents {
  display: flex;
  flex: 1;
  flex-direction: column;
  justify-content: center;
  gap: clamp(0.65625 * 1rem, 0.9375 * 1rem * var(--rem-scale), 1.59375 * 1rem);
}

.header__utility {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: clamp(0.48125 * 1rem, 0.6875 * 1rem * var(--rem-scale), 1.16875 * 1rem);
}

.header__sns {
  display: block;
  flex-shrink: 0;
  width: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  height: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  margin-left: clamp(0.30625 * 1rem, 0.4375 * 1rem * var(--rem-scale), 0.74375 * 1rem);
}

.header__sns:focus-visible {
  outline: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem) solid #fff;
  outline-offset: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem);
}

.header__tel {
  display: flex;
  align-items: center;
  gap: clamp(0.21875 * 1rem, 0.3125 * 1rem * var(--rem-scale), 0.53125 * 1rem);
  font-size: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  font-weight: 500;
  color: #fff;
  letter-spacing: 0.1em;
  line-height: 1.2;
}

.header__tel:focus-visible {
  outline: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem) solid #fff;
  outline-offset: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem);
}

.header__tel-icon {
  display: block;
  flex-shrink: 0;
  width: clamp(0.83125 * 1rem, 1.1875 * 1rem * var(--rem-scale), 2.01875 * 1rem);
  height: clamp(0.83125 * 1rem, 1.1875 * 1rem * var(--rem-scale), 2.01875 * 1rem);
  background-color: #fff;
  -webkit-mask-image: url("../img/common/icon-tel.png");
          mask-image: url("../img/common/icon-tel.png");
  transform: scaleY(-1);
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
}

.header__nav-list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

.header__nav-item {
  position: relative;
  z-index: 100;
}

.header__nav-link {
  display: block;
  padding-block: 0;
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 500;
  color: #fff;
  line-height: 1.4;
  white-space: nowrap;
}

.header__nav-link:focus-visible {
  outline: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem) solid #fff;
  outline-offset: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem);
}

.header__nav-link--heading {
  padding-inline: 0;
  text-align: left;
  cursor: default;
}

.header__hamburger {
  position: relative;
  z-index: 110;
  display: none;
  flex-shrink: 0;
  width: clamp(1.925 * 1rem, 2.75 * 1rem * var(--rem-scale), 4.675 * 1rem);
  height: clamp(1.925 * 1rem, 2.75 * 1rem * var(--rem-scale), 4.675 * 1rem);
  margin-left: auto;
}

.header__hamburger:focus-visible {
  outline: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem) solid #fff;
  outline-offset: calc(clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem) * -1);
}

.header__hamburger-line {
  position: absolute;
  z-index: 110;
  left: clamp(0.30625 * 1rem, 0.4375 * 1rem * var(--rem-scale), 0.74375 * 1rem);
  display: block;
  width: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  height: 0;
  border: 0 solid #fff;
  border-top-width: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem);
  transition: transform 0.3s;
}

.header__hamburger-line:nth-of-type(1) {
  top: clamp(0.74375 * 1rem, 1.0625 * 1rem * var(--rem-scale), 1.80625 * 1rem);
}

.header__hamburger-line:nth-of-type(2) {
  top: clamp(1.18125 * 1rem, 1.6875 * 1rem * var(--rem-scale), 2.86875 * 1rem);
}

.header__hamburger.is-active .header__hamburger-line:nth-of-type(1) {
  transform: translateY(clamp(0.21875 * 1rem, 0.3125 * 1rem * var(--rem-scale), 0.53125 * 1rem)) rotate(30deg);
}

.header__hamburger.is-active .header__hamburger-line:nth-of-type(2) {
  transform: translateY(calc(clamp(0.21875 * 1rem, 0.3125 * 1rem * var(--rem-scale), 0.53125 * 1rem) * -1)) rotate(-30deg);
}

/* --- PCグローバルナビのドロップダウン ------------------------------------------------ */

.dropdown {
  position: absolute;
  z-index: 110;
  top: calc(100% + clamp(1.26875 * 1rem, 1.8125 * 1rem * var(--rem-scale), 3.08125 * 1rem));
  left: 0;
  visibility: hidden;
  opacity: 0;
  width: clamp(14.9625 * 1rem, 21.375 * 1rem * var(--rem-scale), 36.3375 * 1rem);
  padding: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  background-color: #d8ecfd;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  transition: opacity 0.3s, visibility 0.3s;
}

.dropdown::before {
  content: "";
  position: absolute;
  bottom: 100%;
  left: 0;
  width: 100%;
  height: clamp(1.26875 * 1rem, 1.8125 * 1rem * var(--rem-scale), 3.08125 * 1rem);
}

.header__nav-item--parent:focus-within .dropdown {
  visibility: visible;
  opacity: 1;
}

.dropdown__top {
  display: flex;
  align-items: center;
  gap: clamp(0.2625 * 1rem, 0.375 * 1rem * var(--rem-scale), 0.6375 * 1rem);
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 700;
  color: #10355d;
  line-height: 1.49;
}

.dropdown__top::before {
  content: "";
  flex-shrink: 0;
  width: clamp(0.48125 * 1rem, 0.6875 * 1rem * var(--rem-scale), 1.16875 * 1rem);
  height: clamp(0.48125 * 1rem, 0.6875 * 1rem * var(--rem-scale), 1.16875 * 1rem);
  background-color: #145aa6;
  border-radius: 50%;
}

.dropdown__top:focus-visible {
  outline: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem) solid #145aa6;
  outline-offset: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem);
}

.dropdown__top + .dropdown__list {
  margin-top: clamp(0.9625 * 1rem, 1.375 * 1rem * var(--rem-scale), 2.3375 * 1rem);
}

.dropdown__list {
  display: flex;
  flex-direction: column;
  gap: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.dropdown__link {
  display: flex;
  align-items: center;
  gap: clamp(0.2625 * 1rem, 0.375 * 1rem * var(--rem-scale), 0.6375 * 1rem);
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 1.4;
}

.dropdown__link::before {
  content: "";
  flex-shrink: 0;
  width: clamp(0.48125 * 1rem, 0.6875 * 1rem * var(--rem-scale), 1.16875 * 1rem);
  height: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem);
  background-color: #145aa6;
  border-radius: clamp(0.04375 * 1rem, 0.0625 * 1rem * var(--rem-scale), 0.10625 * 1rem);
}

.dropdown__link:focus-visible {
  outline: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem) solid #145aa6;
  outline-offset: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem);
}

/* --- SPドロワー ------------------------------------------------ */

.drawer {
  position: fixed;
  z-index: 90;
  inset: 0;
  visibility: hidden;
  display: none;
  flex-direction: column;
  overflow-y: auto;
  padding-block: clamp(3.7625 * 1rem, 5.375 * 1rem * var(--rem-scale), 9.1375 * 1rem) clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
  opacity: 0;
  background-color: #10355d;
  container-type: inline-size;
  transition: opacity 0.3s, visibility 0.3s;
}

.drawer.is-active {
  visibility: visible;
  opacity: 1;
}

.drawer__nav {
  display: flex;
  flex: 1;
  align-items: center;
  justify-content: center;
}

.drawer__list {
  width: clamp(14.4375 * 1rem, 20.625 * 1rem * var(--rem-scale), 35.0625 * 1rem);
}

.drawer__item {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 6 2'%3E%3Ccircle cx='1' cy='1' r='1' fill='rgb(20,90,166)'/%3E%3C/svg%3E");
  background-position: left bottom;
  background-size: clamp(0.2625 * 1rem, 0.375 * 1rem * var(--rem-scale), 0.6375 * 1rem) clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem);
  background-repeat: repeat-x;
}

.drawer__link {
  display: block;
  width: 100%;
  padding: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem) clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
  font-size: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
  font-weight: 500;
  color: #fff;
  line-height: 1.4;
}

.drawer__link:focus-visible {
  outline: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem) solid #fff;
  outline-offset: calc(clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem) * -1);
}

.drawer__toggle {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem) clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
  font-size: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
  font-weight: 500;
  color: #fff;
  line-height: 1.4;
  text-align: left;
}

.drawer__toggle:focus-visible {
  outline: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem) solid #fff;
  outline-offset: calc(clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem) * -1);
}

.drawer__toggle-icon {
  flex-shrink: 0;
  width: clamp(0.48125 * 1rem, 0.6875 * 1rem * var(--rem-scale), 1.16875 * 1rem);
  height: clamp(0.48125 * 1rem, 0.6875 * 1rem * var(--rem-scale), 1.16875 * 1rem);
  border-right: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem) solid #fff;
  border-bottom: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem) solid #fff;
  transform: translateY(calc(clamp(0.13125 * 1rem, 0.1875 * 1rem * var(--rem-scale), 0.31875 * 1rem) * -1)) rotate(45deg);
  transition: transform 0.3s;
}

.drawer__toggle[aria-expanded=true] .drawer__toggle-icon {
  transform: translateY(clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem)) rotate(-135deg);
}

.drawer__panel {
  display: grid;
  grid-template-rows: 0fr;
  visibility: hidden;
  overflow: hidden;
  margin-block: 0;
  padding: 0 clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  background-color: #d8ecfd;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  transition: grid-template-rows 0.3s ease, margin 0.3s ease, padding 0.3s ease, visibility 0.3s;
}

.drawer__panel.is-open {
  grid-template-rows: 1fr;
  visibility: visible;
  margin-block: clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem) clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  padding-block: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.drawer__panel-inner {
  min-height: 0;
  overflow: hidden;
}

.drawer__tel {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  margin-top: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
  font-size: clamp(0.9625 * 1rem, 1.375 * 1rem * var(--rem-scale), 2.3375 * 1rem);
  font-weight: 500;
  color: #fff;
  letter-spacing: 0.1em;
  line-height: 1.4;
}

.drawer__tel:focus-visible {
  outline: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem) solid #fff;
  outline-offset: clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem);
}

.drawer__tel-icon {
  display: block;
  flex-shrink: 0;
  width: clamp(0.91875 * 1rem, 1.3125 * 1rem * var(--rem-scale), 2.23125 * 1rem);
  height: clamp(0.91875 * 1rem, 1.3125 * 1rem * var(--rem-scale), 2.23125 * 1rem);
  background-color: #fff;
  -webkit-mask-image: url("../img/common/icon-tel.png");
          mask-image: url("../img/common/icon-tel.png");
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
}

.is-drawer-open .sp-cta {
  display: none;
}

.drawer__sns {
  display: block;
  width: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  height: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  margin-top: clamp(1.1375 * 1rem, 1.625 * 1rem * var(--rem-scale), 2.7625 * 1rem);
  margin-inline: auto;
}

.drawer__sns:focus-visible {
  outline: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem) solid #fff;
  outline-offset: clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem);
}

.drawer__sns img {
  filter: brightness(0) invert(1);
}

/* ========================================
  フッター
======================================== */

.footer {
  position: relative;
  z-index: 0;
  overflow: hidden;
  container-type: inline-size;
  padding-block: clamp(6.95625 * 1rem, 9.9375 * 1rem * var(--rem-scale), 16.89375 * 1rem) clamp(2.40625 * 1rem, 3.4375 * 1rem * var(--rem-scale), 5.84375 * 1rem);
  background-image: -webkit-image-set(url("../img/footer/footer-01.webp") type("image/webp"), url("../img/footer/footer-01.jpg") type("image/jpeg"));
  background-image: image-set(url("../img/footer/footer-01.webp") type("image/webp"), url("../img/footer/footer-01.jpg") type("image/jpeg"));
  background-size: cover;
  background-position: center;
}

.footer::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  background-color: rgba(20, 90, 166, 0.86);
}

.footer__inner {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
}

.footer__info {
  width: clamp(21.7875 * 1rem, 31.125 * 1rem * var(--rem-scale), 52.9125 * 1rem);
}

.footer__logo {
  width: -moz-fit-content;
  width: fit-content;
}

.footer__address {
  margin-top: clamp(1.575 * 1rem, 2.25 * 1rem * var(--rem-scale), 3.825 * 1rem);
  font-size: clamp(0.56875 * 1rem, 0.8125 * 1rem * var(--rem-scale), 1.38125 * 1rem);
  font-style: normal;
}

.footer__address-main {
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #fff;
  line-height: 1.8;
}

.footer__address-sub {
  font-size: clamp(0.56875 * 1rem, 0.8125 * 1rem * var(--rem-scale), 1.38125 * 1rem);
  font-weight: 400;
  color: #fff;
  line-height: 1.8;
}

.footer__address-main + .footer__address-sub {
  margin-top: clamp(0.2625 * 1rem, 0.375 * 1rem * var(--rem-scale), 0.6375 * 1rem);
}

.footer__access {
  margin-top: clamp(0.83125 * 1rem, 1.1875 * 1rem * var(--rem-scale), 2.01875 * 1rem);
}

.footer__tel {
  margin-top: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 700;
  color: #fff;
  letter-spacing: 0.05em;
  line-height: 1.4;
}

.footer__tel-link {
  color: inherit;
}

.footer__tel-link:focus-visible {
  outline: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem) solid #fff;
  outline-offset: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem);
}

.footer__sns {
  display: block;
  width: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  height: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  margin-top: clamp(0.91875 * 1rem, 1.3125 * 1rem * var(--rem-scale), 2.23125 * 1rem);
}

.footer__sns:focus-visible {
  outline: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem) solid #fff;
  outline-offset: clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem);
}

.footer__hours {
  margin-top: clamp(1.575 * 1rem, 2.25 * 1rem * var(--rem-scale), 3.825 * 1rem);
}

.footer__hours-label {
  width: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
  padding-block: clamp(0.30625 * 1rem, 0.4375 * 1rem * var(--rem-scale), 0.74375 * 1rem);
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 700;
  color: #145aa6;
  letter-spacing: 0.3em;
  line-height: 1;
  text-align: center;
  text-indent: 0.3em;
  background-color: #fff;
  border-radius: clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem);
}

.footer__table {
  width: 100%;
  margin-top: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 6 2'%3E%3Ccircle cx='1' cy='1' r='1' fill='rgb(255,255,255)'/%3E%3C/svg%3E"), url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 6 2'%3E%3Ccircle cx='1' cy='1' r='1' fill='rgb(255,255,255)'/%3E%3C/svg%3E");
  background-position: left top, left bottom;
  background-size: clamp(0.2625 * 1rem, 0.375 * 1rem * var(--rem-scale), 0.6375 * 1rem) clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem);
  background-repeat: repeat-x;
  border-collapse: collapse;
  table-layout: fixed;
}

.footer__table th,
.footer__table td {
  padding-block: clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
  font-weight: 400;
  color: #fff;
  letter-spacing: 0.05em;
  line-height: 1.4;
  text-align: center;
}

.footer__table thead th {
  padding-block: clamp(0.65625 * 1rem, 0.9375 * 1rem * var(--rem-scale), 1.59375 * 1rem);
}

.footer__table thead tr {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 6 2'%3E%3Ccircle cx='1' cy='1' r='1' fill='rgb(255,255,255)'/%3E%3C/svg%3E");
  background-position: left bottom;
  background-size: clamp(0.2625 * 1rem, 0.375 * 1rem * var(--rem-scale), 0.6375 * 1rem) clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem);
  background-repeat: repeat-x;
}

.footer__table tbody tr:nth-child(1) th,
.footer__table tbody tr:nth-child(1) td {
  padding-block: clamp(0.56875 * 1rem, 0.8125 * 1rem * var(--rem-scale), 1.38125 * 1rem) clamp(0.2625 * 1rem, 0.375 * 1rem * var(--rem-scale), 0.6375 * 1rem);
}

.footer__table tbody tr:nth-child(2) th,
.footer__table tbody tr:nth-child(2) td {
  padding-block: clamp(0.2625 * 1rem, 0.375 * 1rem * var(--rem-scale), 0.6375 * 1rem) clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
}

.footer__table th:first-child {
  width: 29%;
  padding-inline: 0 clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem);
}

.footer__note {
  display: flex;
  flex-wrap: wrap;
  gap: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) clamp(1.4875 * 1rem, 2.125 * 1rem * var(--rem-scale), 3.6125 * 1rem);
  margin-top: clamp(0.39375 * 1rem, 0.5625 * 1rem * var(--rem-scale), 0.95625 * 1rem);
  margin-left: clamp(1.26875 * 1rem, 1.8125 * 1rem * var(--rem-scale), 3.08125 * 1rem);
}

.footer__note-item {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.56875 * 1rem, 0.8125 * 1rem * var(--rem-scale), 1.38125 * 1rem);
  font-weight: 400;
  color: #fff;
  letter-spacing: 0.05em;
  line-height: 1.3;
}

.footer__nav {
  display: flex;
  justify-content: space-between;
  gap: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
  width: clamp(16.84375 * 1rem, 24.0625 * 1rem * var(--rem-scale), 40.90625 * 1rem);
}

.footer__nav-col {
  width: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
}

.footer__nav-col--narrow {
  width: clamp(3.71875 * 1rem, 5.3125 * 1rem * var(--rem-scale), 9.03125 * 1rem);
}

.footer__nav-list {
  display: flex;
  flex-direction: column;
  gap: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
}

.footer__nav-link {
  display: block;
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 700;
  color: #fff;
  line-height: 1.5;
}

.footer__nav-link:focus-visible {
  outline: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem) solid #fff;
  outline-offset: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem);
}

.footer__nav-link--top {
  font-size: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
}

.footer__nav-sublist {
  display: flex;
  flex-direction: column;
  gap: clamp(0.74375 * 1rem, 1.0625 * 1rem * var(--rem-scale), 1.80625 * 1rem);
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

.footer__nav-sublink {
  display: block;
  font-size: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
  font-weight: 400;
  color: #fff;
  line-height: 1.4;
}

.footer__nav-sublink:focus-visible {
  outline: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem) solid #fff;
  outline-offset: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem);
}

.footer__copyright {
  margin-top: clamp(5.38125 * 1rem, 7.6875 * 1rem * var(--rem-scale), 13.06875 * 1rem);
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem);
  font-weight: 400;
  color: #fff;
  line-height: 1.4;
  text-align: center;
}

.footer__pagetop {
  position: absolute;
  z-index: 10;
  right: clamp(clamp(0.65625 * 1rem, 0.9375 * 1rem * var(--rem-scale), 1.59375 * 1rem), calc(50% - clamp(24.5 * 1rem, 35 * 1rem * var(--rem-scale), 59.5 * 1rem) - clamp(3.9375 * 1rem, 5.625 * 1rem * var(--rem-scale), 9.5625 * 1rem)), clamp(6.5625 * 1rem, 9.375 * 1rem * var(--rem-scale), 15.9375 * 1rem));
  bottom: clamp(5.29375 * 1rem, 7.5625 * 1rem * var(--rem-scale), 12.85625 * 1rem);
  display: block;
  width: clamp(2.625 * 1rem, 3.75 * 1rem * var(--rem-scale), 6.375 * 1rem);
  height: clamp(2.625 * 1rem, 3.75 * 1rem * var(--rem-scale), 6.375 * 1rem);
  background-image: url("../img/common/icon-arrow-lg.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  transform: rotate(-90deg);
  transition: transform 0.3s;
}

.footer__pagetop:focus-visible {
  outline: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem) solid #fff;
  outline-offset: clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem);
}

/* ========================================
  TOPページ
======================================== */

/* --- FV ------------------------------------------------ */

.top-fv {
  position: relative;
  z-index: 0;
  overflow: hidden;
  height: clamp(39.375 * 1rem, 56.25 * 1rem * var(--rem-scale), 95.625 * 1rem);
}

.top-fv__bg {
  position: absolute;
  top: calc(clamp(18.4625 * 1rem, 26.375 * 1rem * var(--rem-scale), 44.8375 * 1rem) * -1);
  left: 50%;
  overflow: hidden;
  width: max(clamp(92.4875 * 1rem, 132.125 * 1rem * var(--rem-scale), 224.6125 * 1rem), 132.2vw);
  height: clamp(49.39375 * 1rem, 70.5625 * 1rem * var(--rem-scale), 119.95625 * 1rem);
  background-color: #145aa6;
  border-radius: 50%;
  transform: translateX(-50%);
}

.top-fv__watermark {
  position: absolute;
  top: clamp(15.4 * 1rem, 22 * 1rem * var(--rem-scale), 37.4 * 1rem);
  left: calc(50% + clamp(7.503125 * 1rem, 10.71875 * 1rem * var(--rem-scale), 18.221875 * 1rem));
  display: block;
  width: clamp(30.58125 * 1rem, 43.6875 * 1rem * var(--rem-scale), 74.26875 * 1rem);
  height: clamp(30.58125 * 1rem, 43.6875 * 1rem * var(--rem-scale), 74.26875 * 1rem);
  background-image: url("../img/fv/fv-watermark.svg");
  background-size: contain;
  background-repeat: no-repeat;
}

.top-fv__badges {
  display: none;
}

.top-fv__body {
  position: relative;
  z-index: 10;
  padding-top: clamp(12.3375 * 1rem, 17.625 * 1rem * var(--rem-scale), 29.9625 * 1rem);
}

.top-fv__catch {
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
  font-weight: 700;
  color: #fff;
  letter-spacing: 0.05em;
  line-height: 1.45;
  text-align: center;
}

.top-fv__lead {
  margin-top: clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem);
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  font-weight: 400;
  color: #fff;
  letter-spacing: 0.05em;
  line-height: 1.45;
  text-align: center;
}

.top-fv__catch-line,
.top-fv__lead-line {
  display: inline;
}

.top-fv__slider {
  position: absolute;
  z-index: 10;
  top: clamp(22.1375 * 1rem, 31.625 * 1rem * var(--rem-scale), 53.7625 * 1rem);
  left: 0;
  width: 100%;
}

.top-fv__slider .swiper-wrapper {
  transition-timing-function: linear;
}

.top-fv__slide {
  position: relative;
  overflow: hidden;
  width: clamp(14.13125 * 1rem, 20.1875 * 1rem * var(--rem-scale), 34.31875 * 1rem);
  height: clamp(17.19375 * 1rem, 24.5625 * 1rem * var(--rem-scale), 41.75625 * 1rem);
  -webkit-mask-image: url("../img/fv/mask-tooth.svg");
          mask-image: url("../img/fv/mask-tooth.svg");
  -webkit-mask-size: 100% 100%;
          mask-size: 100% 100%;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
}

.top-fv__slide--logo {
  background-color: #fff;
}

.top-fv__logo {
  position: absolute;
  top: 28.5%;
  left: 30.03%;
  width: 39.94%;
  height: auto;
}

.top-fv__img {
  position: absolute;
  max-width: none;
}

.top-fv__img--01 {
  top: -2.55%;
  left: -70.64%;
  width: 227.5%;
  height: 125.04%;
}

.top-fv__img--02 {
  top: 0;
  left: -28.13%;
  width: 181.77%;
  height: 100.08%;
}

.top-fv__img--03 {
  top: -22.16%;
  left: -59.81%;
  width: 225.66%;
  height: 124.02%;
}

.top-fv__img--04 {
  top: -45.08%;
  left: -50.69%;
  width: 283.16%;
  height: 170.36%;
}

.top-fv__img--05 {
  top: -15.03%;
  left: -51.15%;
  width: 215.15%;
  height: 118.16%;
}

.top-fv__img--06 {
  top: -22.65%;
  left: -97.52%;
  width: 259.75%;
  height: 142.24%;
}

.top-fv__img--07 {
  top: -9.92%;
  left: -57.42%;
  width: 215.48%;
  height: 118.07%;
}

.top-fv__img--08 {
  top: -32.82%;
  left: -65.47%;
  width: 244.27%;
  height: 133.84%;
}

/* --- 当院について ------------------------------------------------ */

.top-about {
  padding-top: clamp(7 * 1rem, 10 * 1rem * var(--rem-scale), 17 * 1rem);
}

.top-about__title {
  margin-bottom: clamp(3.0625 * 1rem, 4.375 * 1rem * var(--rem-scale), 7.4375 * 1rem);
}

.top-about__block {
  position: relative;
  z-index: 0;
  padding-top: clamp(3.19375 * 1rem, 4.5625 * 1rem * var(--rem-scale), 7.75625 * 1rem);
}

.top-about__block + .top-about__block {
  margin-top: clamp(1.61875 * 1rem, 2.3125 * 1rem * var(--rem-scale), 3.93125 * 1rem);
}

.top-about__band {
  position: absolute;
  z-index: -1;
  top: clamp(1.575 * 1rem, 2.25 * 1rem * var(--rem-scale), 3.825 * 1rem);
  left: 0;
  display: block;
  max-width: 100%;
  width: calc(50% + clamp(18.9 * 1rem, 27 * 1rem * var(--rem-scale), 45.9 * 1rem));
  height: clamp(17.98125 * 1rem, 25.6875 * 1rem * var(--rem-scale), 43.66875 * 1rem);
  background-color: #dfe4eb;
  background-image: url("../img/common/texture-gray.png");
  background-repeat: repeat;
  border-radius: 0 clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem) clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem) 0;
}

.top-about__block--reverse .top-about__band {
  right: 0;
  left: auto;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem) 0 0 clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.top-about__card {
  margin-left: max(0px, 50% - clamp(23.625 * 1rem, 33.75 * 1rem * var(--rem-scale), 57.375 * 1rem));
  padding-block: clamp(1.79375 * 1rem, 2.5625 * 1rem * var(--rem-scale), 4.35625 * 1rem) clamp(2.3625 * 1rem, 3.375 * 1rem * var(--rem-scale), 5.7375 * 1rem);
  background-color: #145aa6;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem) 0 0 clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.top-about__block--reverse .top-about__card {
  margin-inline: 0 max(0px, 50% - clamp(23.625 * 1rem, 33.75 * 1rem * var(--rem-scale), 57.375 * 1rem));
  padding-bottom: clamp(5.38125 * 1rem, 7.6875 * 1rem * var(--rem-scale), 13.06875 * 1rem);
  border-radius: 0 clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem) clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem) 0;
}

.top-about__card-inner {
  display: flex;
  align-items: flex-start;
  gap: clamp(2.7125 * 1rem, 3.875 * 1rem * var(--rem-scale), 6.5875 * 1rem);
  width: min(clamp(47.25 * 1rem, 67.5 * 1rem * var(--rem-scale), 114.75 * 1rem), 100%);
  padding-left: clamp(2.275 * 1rem, 3.25 * 1rem * var(--rem-scale), 5.525 * 1rem);
}

.top-about__block--reverse .top-about__card-inner {
  flex-direction: row-reverse;
  width: min(clamp(47.25 * 1rem, 67.5 * 1rem * var(--rem-scale), 114.75 * 1rem), 100%);
  margin-left: auto;
  padding-inline: 0 clamp(2.275 * 1rem, 3.25 * 1rem * var(--rem-scale), 5.525 * 1rem);
}

.top-about__body {
  width: clamp(19.075 * 1rem, 27.25 * 1rem * var(--rem-scale), 46.325 * 1rem);
}

.top-about__block--pair .top-about__body {
  width: clamp(20.65 * 1rem, 29.5 * 1rem * var(--rem-scale), 50.15 * 1rem);
}

.top-about__heading {
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  font-weight: 700;
  color: #fff;
  line-height: 1.5;
}

.top-about__badge {
  margin-top: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
}

.top-about__text {
  font-size: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
  font-weight: 400;
  color: #fff;
  line-height: 2;
}

.top-about__badge + .top-about__text {
  margin-top: clamp(1.225 * 1rem, 1.75 * 1rem * var(--rem-scale), 2.975 * 1rem);
}

.top-about__sup {
  font-size: 0.645em;
  vertical-align: super;
}

.top-about__note {
  margin-top: clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem);
  font-size: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  font-weight: 400;
  color: #fff;
  line-height: 1.6;
}

.top-about__photos {
  flex-shrink: 0;
  width: clamp(23.1875 * 1rem, 33.125 * 1rem * var(--rem-scale), 56.3125 * 1rem);
  margin-top: calc(clamp(4.9875 * 1rem, 7.125 * 1rem * var(--rem-scale), 12.1125 * 1rem) * -1);
}

.top-about__photo {
  width: 100%;
  aspect-ratio: 530/376;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: bottom;
     object-position: bottom;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.top-about__block--pair .top-about__photos {
  display: flex;
  align-items: flex-start;
  gap: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
  width: clamp(21.6125 * 1rem, 30.875 * 1rem * var(--rem-scale), 52.4875 * 1rem);
}

.top-about__block--pair .top-about__photo {
  width: clamp(10.5 * 1rem, 15 * 1rem * var(--rem-scale), 25.5 * 1rem);
  aspect-ratio: 240/360;
}

.top-about__block--pair .pic:last-child .top-about__photo {
  margin-top: clamp(3.63125 * 1rem, 5.1875 * 1rem * var(--rem-scale), 8.81875 * 1rem);
}

.top-about__more {
  display: flex;
  width: -moz-fit-content;
  width: fit-content;
  margin-top: clamp(2.40625 * 1rem, 3.4375 * 1rem * var(--rem-scale), 5.84375 * 1rem);
  margin-left: auto;
}

/* --- 治療について ------------------------------------------------ */

.top-treatment {
  padding-top: clamp(7 * 1rem, 10 * 1rem * var(--rem-scale), 17 * 1rem);
}

.top-treatment__title {
  margin-bottom: clamp(3.325 * 1rem, 4.75 * 1rem * var(--rem-scale), 8.075 * 1rem);
}

.top-treatment__cards {
  display: flex;
  gap: clamp(2.625 * 1rem, 3.75 * 1rem * var(--rem-scale), 6.375 * 1rem);
}

.top-treatment__card {
  position: relative;
  z-index: 0;
  overflow: hidden;
  width: clamp(22.3125 * 1rem, 31.875 * 1rem * var(--rem-scale), 54.1875 * 1rem);
  height: clamp(14.30625 * 1rem, 20.4375 * 1rem * var(--rem-scale), 34.74375 * 1rem);
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.top-treatment__card:focus-visible {
  outline: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem) solid #145aa6;
  outline-offset: clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem);
}

.top-treatment__card::after {
  content: "";
  position: absolute;
  z-index: 1;
  inset: 0;
  background-color: rgba(20, 90, 166, 0.16);
  border-radius: inherit;
}

.top-treatment__card-img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.top-treatment__btn {
  position: absolute;
  z-index: 10;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.top-treatment__first {
  position: relative;
  z-index: 0;
  margin-top: clamp(3.9375 * 1rem, 5.625 * 1rem * var(--rem-scale), 9.5625 * 1rem);
  padding-bottom: clamp(7 * 1rem, 10 * 1rem * var(--rem-scale), 17 * 1rem);
}

.top-treatment__first::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: clamp(1.26875 * 1rem, 1.8125 * 1rem * var(--rem-scale), 3.08125 * 1rem);
  left: 0;
  width: 100%;
  height: calc(100% - clamp(1.26875 * 1rem, 1.8125 * 1rem * var(--rem-scale), 3.08125 * 1rem));
  background-color: #6b8fc0;
  background-image: url("../img/common/texture-blue.png");
  background-repeat: repeat;
}

.top-treatment__first-title {
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(1.575 * 1rem, 2.25 * 1rem * var(--rem-scale), 3.825 * 1rem);
  font-weight: 700;
  color: #10355d;
  line-height: 1.57;
  text-align: center;
}

.top-treatment__list {
  display: flex;
  align-items: stretch;
  gap: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  margin-top: clamp(3.15 * 1rem, 4.5 * 1rem * var(--rem-scale), 7.65 * 1rem);
}

.top-treatment__item {
  position: relative;
  z-index: 0;
  min-width: 0;
  width: clamp(14.875 * 1rem, 21.25 * 1rem * var(--rem-scale), 36.125 * 1rem);
  min-height: clamp(16.625 * 1rem, 23.75 * 1rem * var(--rem-scale), 40.375 * 1rem);
  padding: clamp(2.3625 * 1rem, 3.375 * 1rem * var(--rem-scale), 5.7375 * 1rem) clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem) clamp(2.49375 * 1rem, 3.5625 * 1rem * var(--rem-scale), 6.05625 * 1rem);
  background-color: #fff;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.top-treatment__icon {
  position: absolute;
  top: calc(clamp(1.18125 * 1rem, 1.6875 * 1rem * var(--rem-scale), 2.86875 * 1rem) * -1);
  left: 50%;
  display: block;
  width: clamp(2.3625 * 1rem, 3.375 * 1rem * var(--rem-scale), 5.7375 * 1rem);
  height: clamp(2.3625 * 1rem, 3.375 * 1rem * var(--rem-scale), 5.7375 * 1rem);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  transform: translateX(-50%);
}

.top-treatment__icon--reserve {
  background-image: url("../img/treatment/icon-reserve.svg");
}

.top-treatment__icon--consent {
  background-image: url("../img/treatment/icon-consent.svg");
}

.top-treatment__icon--sterilize {
  background-image: url("../img/treatment/icon-sterilize.svg");
}

.top-treatment__item-title {
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  font-weight: 700;
  color: #10355d;
  line-height: 1.45;
  text-align: center;
}

.top-treatment__item-body {
  width: clamp(11.375 * 1rem, 16.25 * 1rem * var(--rem-scale), 27.625 * 1rem);
  margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  margin-inline: auto;
}

.top-treatment__item-text {
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 1.6;
}

.top-treatment__item-body--narrow .top-treatment__item-text {
  line-height: 1.5;
}

/* --- パララックス ------------------------------------------------ */

.top-parallax {
  height: 400vh;
}

/*
  SP: カードが重なる（2026-10-02 ユーザー指示）
  1. 「治療について」から1枚目まで、すき間なくつながったまま一緒にスクロールする
  2. 1枚目が止まる位置（ヘッダーと下部固定ボタンの間の中央）に来たら、
     「治療について」も一緒にその場で止まる（画像の上にグレーの空きを出さない）
  3. 2枚目は1枚目のすぐ下に並んでスクロールしてきて、止まっている1枚目に重なる
  4. 院内紹介も2枚目のすぐ下に続いて上がってきて、止まった2枚目に重なっていく

  画像は高さ 65svh（クライアント回答「100vhから少し小さく」）。止まる位置 --px-top は
  画面の上下中央 (100 - 65) / 2 = 17.5svh から、ヘッダー(86)と固定ボタン(60)の差の半分 13 だけ下げた値。
  2枚とも同じ位置に sticky で止め、後ろの2枚目が上に重なる（JS の切り替え値は使わない）。
  「治療について」は .top-stack の範囲で sticky にし、下端が --px-top に来たところで止める
  （自分の高さは anime.js が --top-treatment-h に入れる）。
*/

/* --- 院内紹介 ------------------------------------------------ */

.top-clinic {
  position: relative;
  z-index: 1;
  margin-top: -100vh;
  margin-top: -100svh;
  padding-block: clamp(7 * 1rem, 10 * 1rem * var(--rem-scale), 17 * 1rem) clamp(7 * 1rem, 10 * 1rem * var(--rem-scale), 17 * 1rem);
  background-color: #f2f2f2;
}

.top-clinic__title {
  margin-bottom: clamp(3.0625 * 1rem, 4.375 * 1rem * var(--rem-scale), 7.4375 * 1rem);
}

.top-clinic__row {
  position: relative;
  z-index: 0;
  padding-bottom: clamp(1.79375 * 1rem, 2.5625 * 1rem * var(--rem-scale), 4.35625 * 1rem);
}

.top-clinic__row + .top-clinic__row {
  margin-top: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
}

.top-clinic__band {
  position: absolute;
  z-index: -1;
  top: clamp(3.10625 * 1rem, 4.4375 * 1rem * var(--rem-scale), 7.54375 * 1rem);
  right: 0;
  left: calc(50% + clamp(0.91875 * 1rem, 1.3125 * 1rem * var(--rem-scale), 2.23125 * 1rem));
  display: block;
  height: clamp(14.21875 * 1rem, 20.3125 * 1rem * var(--rem-scale), 34.53125 * 1rem);
  background-color: #145aa6;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem) 0 0 clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.top-clinic__row--reverse .top-clinic__band {
  right: calc(50% + clamp(0.91875 * 1rem, 1.3125 * 1rem * var(--rem-scale), 2.23125 * 1rem));
  left: 0;
  border-radius: 0 clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem) clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem) 0;
}

.top-clinic__inner {
  display: flex;
  align-items: flex-start;
  gap: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
}

.top-clinic__row--reverse .top-clinic__inner {
  flex-direction: row-reverse;
}

.top-clinic__body {
  width: clamp(18.59375 * 1rem, 26.5625 * 1rem * var(--rem-scale), 45.15625 * 1rem);
}

.top-clinic__text {
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  font-size: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 2;
}

.top-clinic__text--narrow {
  line-height: 1.8;
}

.top-clinic__photos {
  display: flex;
  flex-shrink: 0;
  gap: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
}

.top-clinic__photo {
  width: clamp(8.53125 * 1rem, 12.1875 * 1rem * var(--rem-scale), 20.71875 * 1rem);
  aspect-ratio: 195/355;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.top-clinic__more {
  display: flex;
  width: -moz-fit-content;
  width: fit-content;
  margin-top: clamp(0.83125 * 1rem, 1.1875 * 1rem * var(--rem-scale), 2.01875 * 1rem);
  margin-left: auto;
}

/* --- スタッフ紹介 ------------------------------------------------ */

.top-staff {
  position: relative;
  z-index: 0;
  overflow-x: clip;
  overflow-y: visible;
  padding-top: clamp(6.2125 * 1rem, 8.875 * 1rem * var(--rem-scale), 15.0875 * 1rem);
  background-color: #f2f2f2;
}

.top-staff::before {
  content: "";
  position: absolute;
  z-index: -2;
  top: clamp(12.29375 * 1rem, 17.5625 * 1rem * var(--rem-scale), 29.85625 * 1rem);
  right: 0;
  bottom: 0;
  left: 0;
  background-color: #145aa6;
}

.top-staff__bg {
  position: absolute;
  z-index: -1;
  top: 0;
  left: 50%;
  display: block;
  width: max(clamp(92.4875 * 1rem, 132.125 * 1rem * var(--rem-scale), 224.6125 * 1rem), 132.2vw);
  height: clamp(49.39375 * 1rem, 70.5625 * 1rem * var(--rem-scale), 119.95625 * 1rem);
  background-color: #145aa6;
  border-radius: 50%;
  transform: translateX(-50%);
}

.top-staff__title {
  margin-bottom: clamp(3.0625 * 1rem, 4.375 * 1rem * var(--rem-scale), 7.4375 * 1rem);
  color: #fff;
}

.top-staff__doctor {
  display: flex;
  align-items: flex-start;
  gap: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
}

.top-staff__doctor + .top-staff__doctor {
  margin-top: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
}

.top-staff__photo {
  flex-shrink: 0;
  width: clamp(16.3625 * 1rem, 23.375 * 1rem * var(--rem-scale), 39.7375 * 1rem);
  aspect-ratio: 374/455;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: top;
     object-position: top;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.top-staff__body {
  flex: 1;
}

.top-staff__text {
  margin-top: clamp(1.4875 * 1rem, 2.125 * 1rem * var(--rem-scale), 3.6125 * 1rem);
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #fff;
  line-height: 2;
}

.top-staff__name {
  width: -moz-fit-content;
  width: fit-content;
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  color: #fff;
  line-height: 1.75;
}

.top-staff__role {
  display: block;
  font-size: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
}

.top-staff__person {
  display: block;
  font-size: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

/* --- 推薦バナー（平面化した1枚画像で支給） --- */

.top-staff__banner {
  overflow: hidden;
  display: block;
  width: clamp(27.5625 * 1rem, 39.375 * 1rem * var(--rem-scale), 66.9375 * 1rem);
  margin-top: clamp(3.5 * 1rem, 5 * 1rem * var(--rem-scale), 8.5 * 1rem);
  margin-inline: auto;
  border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
}

.top-staff__banner:focus-visible {
  outline: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem) solid #fff;
  outline-offset: clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem);
}

.top-staff__banner-img {
  width: 100%;
  height: auto;
}

/* --- スタッフ一同 ------------------------------- */

.top-staff__lead-tag {
  margin-top: clamp(3.5 * 1rem, 5 * 1rem * var(--rem-scale), 8.5 * 1rem);
  text-align: center;
}

.top-staff__lead {
  margin-top: clamp(1.925 * 1rem, 2.75 * 1rem * var(--rem-scale), 4.675 * 1rem);
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #fff;
  line-height: 1.8;
}

.top-staff__group {
  position: relative;
  z-index: 0;
  margin-top: clamp(4.50625 * 1rem, 6.4375 * 1rem * var(--rem-scale), 10.94375 * 1rem);
}

.top-staff__group::after {
  content: "";
  position: absolute;
  z-index: 1;
  inset: 0;
  background-color: rgba(20, 90, 166, 0.3);
}

.top-staff__group-img {
  width: 100%;
  aspect-ratio: 1600/600;
  -o-object-fit: cover;
     object-fit: cover;
}

.top-staff__btns {
  position: absolute;
  z-index: 10;
  bottom: clamp(2.05625 * 1rem, 2.9375 * 1rem * var(--rem-scale), 4.99375 * 1rem);
  left: 50%;
  display: flex;
  gap: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  transform: translateX(-50%);
}

/* --- お知らせ ------------------------------------------------ */

.top-news {
  padding-top: clamp(7.13125 * 1rem, 10.1875 * 1rem * var(--rem-scale), 17.31875 * 1rem);
}

.top-news__inner {
  max-width: clamp(41.125 * 1rem, 58.75 * 1rem * var(--rem-scale), 99.875 * 1rem);
}

.top-news__title {
  margin-bottom: clamp(3.0625 * 1rem, 4.375 * 1rem * var(--rem-scale), 7.4375 * 1rem);
}

.top-news__item {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 6 2'%3E%3Ccircle cx='1' cy='1' r='1' fill='rgb(20,90,166)'/%3E%3C/svg%3E");
  background-position: left bottom;
  background-size: clamp(0.2625 * 1rem, 0.375 * 1rem * var(--rem-scale), 0.6375 * 1rem) clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem);
  background-repeat: repeat-x;
}

.top-news__link {
  display: flex;
  gap: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  padding: clamp(1.225 * 1rem, 1.75 * 1rem * var(--rem-scale), 2.975 * 1rem) clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem) clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

.top-news__link:focus-visible {
  outline: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem) solid #145aa6;
  outline-offset: calc(clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem) * -1);
}

.top-news__date {
  flex: 0 0 clamp(4.725 * 1rem, 6.75 * 1rem * var(--rem-scale), 11.475 * 1rem);
  align-self: center;
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 1.4;
}

.top-news__label {
  min-width: 0;
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 700;
  color: #10355d;
  letter-spacing: 0.05em;
  line-height: 1.8;
}

.top-news__more {
  display: flex;
  width: -moz-fit-content;
  width: fit-content;
  margin-top: clamp(2.625 * 1rem, 3.75 * 1rem * var(--rem-scale), 6.375 * 1rem);
  margin-left: auto;
}

/* --- Instagramバナー（平面化した1枚画像で支給） --- */

.top-news__banner {
  overflow: hidden;
  display: block;
  width: clamp(30.625 * 1rem, 43.75 * 1rem * var(--rem-scale), 74.375 * 1rem);
  margin-top: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
  margin-inline: auto;
  border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
}

.top-news__banner:focus-visible {
  outline: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem) solid #a61490;
  outline-offset: clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem);
}

.top-news__banner-img {
  width: 100%;
  height: auto;
}

/* --- FAQ ------------------------------------------------ */

.top-faq {
  padding-top: clamp(7 * 1rem, 10 * 1rem * var(--rem-scale), 17 * 1rem);
}

.top-faq__inner {
  max-width: clamp(41.125 * 1rem, 58.75 * 1rem * var(--rem-scale), 99.875 * 1rem);
}

.top-faq__title {
  margin-bottom: clamp(3.0625 * 1rem, 4.375 * 1rem * var(--rem-scale), 7.4375 * 1rem);
}

.top-faq__list {
  display: flex;
  flex-direction: column;
  gap: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.top-faq__toggle {
  display: flex;
  align-items: center;
  gap: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  width: 100%;
  padding: clamp(1.4875 * 1rem, 2.125 * 1rem * var(--rem-scale), 3.6125 * 1rem);
  text-align: left;
  background-color: #145aa6;
  border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
}

.top-faq__toggle:focus-visible {
  outline: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem) solid #145aa6;
  outline-offset: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem);
}

.top-faq__mark {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  width: clamp(1.575 * 1rem, 2.25 * 1rem * var(--rem-scale), 3.825 * 1rem);
  height: clamp(1.575 * 1rem, 2.25 * 1rem * var(--rem-scale), 3.825 * 1rem);
  font-size: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  font-weight: 500;
  color: #145aa6;
  line-height: 1;
  background-color: #fff;
  border-radius: 50%;
}

.top-faq__question {
  flex: 1;
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
  font-weight: 700;
  color: #fff;
  line-height: 1.45;
}

.top-faq__icon {
  position: relative;
  z-index: 0;
  flex-shrink: 0;
  width: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
  height: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
}

.top-faq__icon::before,
.top-faq__icon::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem);
  background-color: #fff;
  transform: translateY(-50%);
}

.top-faq__icon::after {
  transition: transform 0.3s;
  transform: translateY(-50%) rotate(90deg);
}

.top-faq__toggle[aria-expanded=true] .top-faq__icon::after {
  transform: translateY(-50%) rotate(0deg);
}

.top-faq__panel {
  display: grid;
  grid-template-rows: 0fr;
  visibility: hidden;
  overflow: hidden;
  padding: 0 clamp(2.625 * 1rem, 3.75 * 1rem * var(--rem-scale), 6.375 * 1rem);
  transition: grid-template-rows 0.3s ease, padding 0.3s ease, visibility 0.3s;
}

.top-faq__panel.is-open {
  grid-template-rows: 1fr;
  visibility: visible;
  padding-block: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem) clamp(1.575 * 1rem, 2.25 * 1rem * var(--rem-scale), 3.825 * 1rem);
}

.top-faq__panel-inner {
  min-height: 0;
  overflow: hidden;
}

.top-faq__answer {
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 500;
  color: #10355d;
  line-height: 1.8;
}

.top-faq__answer + .top-faq__answer {
  margin-top: clamp(1.26875 * 1rem, 1.8125 * 1rem * var(--rem-scale), 3.08125 * 1rem);
}

/* --- 予約・相談 ------------------------------------------------ */

.top-reserve {
  padding-block: clamp(7 * 1rem, 10 * 1rem * var(--rem-scale), 17 * 1rem) clamp(7 * 1rem, 10 * 1rem * var(--rem-scale), 17 * 1rem);
}

.top-reserve__title {
  margin-bottom: clamp(3.0625 * 1rem, 4.375 * 1rem * var(--rem-scale), 7.4375 * 1rem);
}

.top-reserve__lead {
  margin-bottom: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 1.8;
  text-align: center;
}

.top-reserve__lead-line {
  display: block;
}

/* ========================================
  ABOUTページ（当院について）
======================================== */

/* --- 見出し＋左右2カラムの共通ブロック ------------------------------------------------ */

.about-row {
  position: relative;
  z-index: 0;
  margin-top: clamp(3.0625 * 1rem, 4.375 * 1rem * var(--rem-scale), 7.4375 * 1rem);
}

.about-row__band {
  position: absolute;
  z-index: -1;
  top: clamp(1.4875 * 1rem, 2.125 * 1rem * var(--rem-scale), 3.6125 * 1rem);
  left: 0;
  display: block;
  width: calc(50% - clamp(7.21875 * 1rem, 10.3125 * 1rem * var(--rem-scale), 17.53125 * 1rem));
  height: clamp(17.5 * 1rem, 25 * 1rem * var(--rem-scale), 42.5 * 1rem);
  background-color: #145aa6;
  border-radius: 0 clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem) clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem) 0;
}

.about-row--reverse .about-row__band {
  right: 0;
  left: auto;
  top: clamp(1.35625 * 1rem, 1.9375 * 1rem * var(--rem-scale), 3.29375 * 1rem);
  height: clamp(12.81875 * 1rem, 18.3125 * 1rem * var(--rem-scale), 31.13125 * 1rem);
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem) 0 0 clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.about-row__inner {
  display: flex;
  align-items: flex-start;
  gap: clamp(2.14375 * 1rem, 3.0625 * 1rem * var(--rem-scale), 5.20625 * 1rem);
}

.about-row--reverse .about-row__inner {
  flex-direction: row-reverse;
}

.about-row__photo {
  flex-shrink: 0;
  width: clamp(17.5 * 1rem, 25 * 1rem * var(--rem-scale), 42.5 * 1rem);
  aspect-ratio: 400/399;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.about-row__body {
  flex: 1;
}

.about-row__text {
  display: flex;
  flex-direction: column;
  gap: clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem);
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 2;
}

.about-row__note {
  font-size: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  line-height: 1.6;
}

/* --- 特徴 ------------------------------------------------ */

.about-feature {
  position: relative;
  z-index: 0;
  margin-top: clamp(6.0375 * 1rem, 8.625 * 1rem * var(--rem-scale), 14.6625 * 1rem);
  padding-block: 0;
}

.about-feature::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: clamp(1.96875 * 1rem, 2.8125 * 1rem * var(--rem-scale), 4.78125 * 1rem);
  left: 0;
  width: 100%;
  height: clamp(26.29375 * 1rem, 37.5625 * 1rem * var(--rem-scale), 63.85625 * 1rem);
  background-image: -webkit-image-set(url("../img/about/about-05.webp") type("image/webp"), url("../img/about/about-05.jpg") type("image/jpeg"));
  background-image: image-set(url("../img/about/about-05.webp") type("image/webp"), url("../img/about/about-05.jpg") type("image/jpeg"));
  background-size: cover;
  background-position: center;
}

.about-feature__title {
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
  font-weight: 700;
  color: #10355d;
  line-height: 1.5;
}

.about-feature__line {
  display: block;
}

.about-feature__accent {
  color: #145aa6;
}

.about-feature__card {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  width: 100%;
  max-width: clamp(31.9375 * 1rem, 45.625 * 1rem * var(--rem-scale), 77.5625 * 1rem);
  margin-top: clamp(9.625 * 1rem, 13.75 * 1rem * var(--rem-scale), 23.375 * 1rem);
  margin-inline: auto;
  padding: clamp(1.925 * 1rem, 2.75 * 1rem * var(--rem-scale), 4.675 * 1rem) clamp(2.0125 * 1rem, 2.875 * 1rem * var(--rem-scale), 4.8875 * 1rem) clamp(2.1 * 1rem, 3 * 1rem * var(--rem-scale), 5.1 * 1rem);
  background-color: rgba(255, 255, 255, 0.86);
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.about-feature__tag .tag {
  font-size: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
}

.about-feature__text {
  display: flex;
  flex-direction: column;
  gap: clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem);
  width: 100%;
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 1.6;
}

/* --- 専門性・特徴 ------------------------------------------------ */

.about-spec {
  margin-top: clamp(7.175 * 1rem, 10.25 * 1rem * var(--rem-scale), 17.425 * 1rem);
  padding-top: 0;
}

.about-spec__card {
  position: relative;
  z-index: 0;
  aspect-ratio: 1080/331;
  margin-top: clamp(3.71875 * 1rem, 5.3125 * 1rem * var(--rem-scale), 9.03125 * 1rem);
  background-color: #dce3ea;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.about-spec__chart-img {
  position: absolute;
  z-index: 1;
  top: 6.9486%;
  left: 3.7037%;
  width: 52.6852%;
  aspect-ratio: 569/280;
}

.about-spec__doctor {
  position: absolute;
  z-index: 2;
  top: -39.577%;
  left: 57.4074%;
  width: 33.5185%;
}

.about-spec__doctor-img {
  width: 100%;
  aspect-ratio: 362/462;
}

.about-spec__figure-sp {
  position: absolute;
  z-index: 1;
  top: calc(clamp(1.946875 * 1rem, 2.78125 * 1rem * var(--rem-scale), 4.728125 * 1rem) * -1);
  left: clamp(0.984375 * 1rem, 1.40625 * 1rem * var(--rem-scale), 2.390625 * 1rem);
  width: clamp(14.74375 * 1rem, 21.0625 * 1rem * var(--rem-scale), 35.80625 * 1rem);
  aspect-ratio: 337/251;
}

.about-spec__logo {
  position: absolute;
  z-index: 10;
  bottom: 6.0606%;
  left: 21.547%;
  width: 94.7514%;
  max-width: none;
}

.about-spec__logo .logo {
  width: 100%;
  height: auto;
  aspect-ratio: 343/77;
  border-radius: clamp(0.48125 * 1rem, 0.6875 * 1rem * var(--rem-scale), 1.16875 * 1rem);
}

/* --- 診療体制・連携 ------------------------------------------------ */

.about-team {
  margin-top: clamp(6.65 * 1rem, 9.5 * 1rem * var(--rem-scale), 16.15 * 1rem);
}

.about-team__photos {
  display: flex;
  flex-shrink: 0;
  align-items: flex-start;
  gap: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.about-team__photo {
  width: clamp(8.3125 * 1rem, 11.875 * 1rem * var(--rem-scale), 20.1875 * 1rem);
  aspect-ratio: 190/260;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.about-team__photos .pic:last-child .about-team__photo {
  margin-top: clamp(3.71875 * 1rem, 5.3125 * 1rem * var(--rem-scale), 9.03125 * 1rem);
}

/* --- 院内環境・通いやすさ ------------------------------------------------ */

.about-env {
  margin-top: clamp(7 * 1rem, 10 * 1rem * var(--rem-scale), 17 * 1rem);
}

.about-env__tag {
  margin-top: clamp(3.0625 * 1rem, 4.375 * 1rem * var(--rem-scale), 7.4375 * 1rem);
  padding-bottom: clamp(0.39375 * 1rem, 0.5625 * 1rem * var(--rem-scale), 0.95625 * 1rem);
  text-align: center;
}

.about-env__block {
  position: relative;
  z-index: 0;
  margin-top: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
  padding-block: clamp(1.70625 * 1rem, 2.4375 * 1rem * var(--rem-scale), 4.14375 * 1rem) clamp(1.18125 * 1rem, 1.6875 * 1rem * var(--rem-scale), 2.86875 * 1rem);
}

.about-env__band {
  position: absolute;
  z-index: -1;
  top: clamp(1.70625 * 1rem, 2.4375 * 1rem * var(--rem-scale), 4.14375 * 1rem);
  right: 0;
  bottom: clamp(1.18125 * 1rem, 1.6875 * 1rem * var(--rem-scale), 2.86875 * 1rem);
  max-width: 100%;
  display: block;
  width: calc(50% + clamp(23.7125 * 1rem, 33.875 * 1rem * var(--rem-scale), 57.5875 * 1rem));
  background-color: #145aa6;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem) 0 0 clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.about-env__block--reverse .about-env__band {
  right: auto;
  left: 0;
  border-radius: 0 clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem) clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem) 0;
}

.about-env__inner {
  display: flex;
  align-items: flex-start;
  gap: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
  padding-block: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
}

.about-env__block--reverse .about-env__inner {
  flex-direction: row-reverse;
}

.about-env__body {
  flex-shrink: 0;
  width: clamp(17.15 * 1rem, 24.5 * 1rem * var(--rem-scale), 41.65 * 1rem);
  margin-left: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
}

.about-env__block--reverse .about-env__body {
  margin-inline: 0 clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
}

.about-env__label .tag {
  font-size: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.about-env__text {
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #fff;
  line-height: 2;
}

.about-env__photos {
  position: relative;
  z-index: 0;
  flex: 1;
  aspect-ratio: 608/368;
}

.about-env__photo {
  position: absolute;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

/* --- 1ブロック目（子ども） --- */

.about-env__photos--a .about-env__photo--1 {
  top: -24.185%;
  right: 1.809%;
  width: 49.178%;
  aspect-ratio: 299/337;
}

.about-env__photos--a .about-env__photo--2 {
  top: 38.043%;
  right: 55.099%;
  width: 44.572%;
  aspect-ratio: 271/295;
}

.about-env__photos--a .about-env__photo--3 {
  top: 75%;
  right: 0%;
  width: 43.092%;
  aspect-ratio: 262/169;
}

/* --- 2ブロック目（大人） --- */

.about-env__photos--b .about-env__photo--1 {
  top: -24.185%;
  left: 0%;
  width: 71.053%;
  aspect-ratio: 432/314;
}

.about-env__photos--b .about-env__photo--2 {
  top: 65.217%;
  left: 60.362%;
  width: 39.638%;
  aspect-ratio: 241/168;
}

.about-env__photos--b .about-env__photo--3 {
  top: 74.185%;
  left: 9.375%;
  width: 44.901%;
  aspect-ratio: 273/169;
}

/* --- 3ブロック目（託児） --- */

.about-env__photos--c .about-env__photo--1 {
  top: 41.848%;
  right: 0%;
  width: 64.474%;
  aspect-ratio: 392/285;
}

.about-env__photos--c .about-env__photo--2 {
  top: -24.185%;
  right: 48.355%;
  width: 44.572%;
  aspect-ratio: 271/187;
}

.about-env__photos--c .about-env__photo--3 {
  top: 33.424%;
  right: 70.559%;
  width: 28.947%;
  aspect-ratio: 176/226;
}

/* --- 治療体制／カウンセリング ------------------------------------------------ */

.about-care {
  margin-top: clamp(6.65 * 1rem, 9.5 * 1rem * var(--rem-scale), 16.15 * 1rem);
  padding-top: clamp(7 * 1rem, 10 * 1rem * var(--rem-scale), 17 * 1rem);
  background-color: #d1dbe7;
  background-image: url("../img/common/texture-gray.png");
  background-repeat: repeat;
}

.about-care__tag {
  margin-top: clamp(2.3625 * 1rem, 3.375 * 1rem * var(--rem-scale), 5.7375 * 1rem);
  text-align: center;
}

.about-care__hero {
  position: relative;
  z-index: 0;
  overflow: hidden;
  margin-top: clamp(2.14375 * 1rem, 3.0625 * 1rem * var(--rem-scale), 5.20625 * 1rem);
  padding-block: clamp(8.4875 * 1rem, 12.125 * 1rem * var(--rem-scale), 20.6125 * 1rem) clamp(8.44375 * 1rem, 12.0625 * 1rem * var(--rem-scale), 20.50625 * 1rem);
}

.about-care__hero::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  background-color: rgba(255, 255, 255, 0.4);
}

.about-care__hero-img {
  position: absolute;
  z-index: -2;
  top: -25.8%;
  left: 0;
  width: 120.79%;
  max-width: none;
  height: auto;
}

.about-care__lead-title {
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
  font-weight: 700;
  color: #10355d;
  line-height: 1.5;
}

.about-care__lead {
  width: clamp(24.10625 * 1rem, 34.4375 * 1rem * var(--rem-scale), 58.54375 * 1rem);
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 2;
}

.about-care__lead-em {
  color: #145aa6;
}

.about-care__sup {
  font-size: 0.645em;
  vertical-align: super;
}

.about-care__note {
  margin-top: clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem);
  font-size: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 1.6;
}

/* --- 歯医者さんが怖い理由 --- */

.about-care__fear {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: clamp(42.875 * 1rem, 61.25 * 1rem * var(--rem-scale), 104.125 * 1rem);
  margin-top: calc(clamp(1.96875 * 1rem, 2.8125 * 1rem * var(--rem-scale), 4.78125 * 1rem) * -1);
  margin-inline: auto;
  padding: clamp(2.1 * 1rem, 3 * 1rem * var(--rem-scale), 5.1 * 1rem) clamp(1.88125 * 1rem, 2.6875 * 1rem * var(--rem-scale), 4.56875 * 1rem) clamp(2.05625 * 1rem, 2.9375 * 1rem * var(--rem-scale), 4.99375 * 1rem);
  background-color: #fff;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  text-align: center;
}

.about-care__fear-tag .tag {
  font-size: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
}

.about-care__fear-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  margin-top: clamp(1.4875 * 1rem, 2.125 * 1rem * var(--rem-scale), 3.6125 * 1rem);
  max-width: clamp(39.1125 * 1rem, 55.875 * 1rem * var(--rem-scale), 94.9875 * 1rem);
  margin-inline: auto;
}

.about-care__fear-item {
  display: flex;
  align-items: center;
  justify-content: center;
  width: clamp(8.75 * 1rem, 12.5 * 1rem * var(--rem-scale), 21.25 * 1rem);
  height: clamp(5.46875 * 1rem, 7.8125 * 1rem * var(--rem-scale), 13.28125 * 1rem);
  padding-inline: 0;
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 700;
  color: #10355d;
  line-height: 1.6;
  background-image: url("../img/care/cloud.svg");
  background-size: 100% 100%;
  background-repeat: no-repeat;
}

.about-care__fear-note {
  position: relative;
  z-index: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: clamp(4.41875 * 1rem, 6.3125 * 1rem * var(--rem-scale), 10.73125 * 1rem);
  max-width: clamp(37.8875 * 1rem, 54.125 * 1rem * var(--rem-scale), 92.0125 * 1rem);
  margin-top: clamp(2.975 * 1rem, 4.25 * 1rem * var(--rem-scale), 7.225 * 1rem);
  margin-inline: auto;
  padding: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem) clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem) clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem) clamp(8.75 * 1rem, 12.5 * 1rem * var(--rem-scale), 21.25 * 1rem);
  font-size: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  font-weight: 500;
  color: #10355d;
  line-height: 1.8;
  text-align: left;
  background-color: #d8ecfd;
  border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
}

.about-care__fear-note::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: clamp(1.44375 * 1rem, 2.0625 * 1rem * var(--rem-scale), 3.50625 * 1rem);
  width: clamp(6.65 * 1rem, 9.5 * 1rem * var(--rem-scale), 16.15 * 1rem);
  height: clamp(6.7375 * 1rem, 9.625 * 1rem * var(--rem-scale), 16.3625 * 1rem);
  background-image: url("../img/care/care-doctor.png");
  background-size: 100% 100%;
  background-repeat: no-repeat;
  background-position: bottom;
}

/* --- 具体的な対策 --- */

.about-care__measure {
  position: relative;
  z-index: 0;
  overflow: hidden;
  margin-top: clamp(4.06875 * 1rem, 5.8125 * 1rem * var(--rem-scale), 9.88125 * 1rem);
  padding-block: 0 clamp(6.95625 * 1rem, 9.9375 * 1rem * var(--rem-scale), 16.89375 * 1rem);
}

.about-care__measure-bg {
  position: absolute;
  z-index: -1;
  top: clamp(7.4375 * 1rem, 10.625 * 1rem * var(--rem-scale), 18.0625 * 1rem);
  left: 50%;
  display: block;
  width: max(clamp(92.4875 * 1rem, 132.125 * 1rem * var(--rem-scale), 224.6125 * 1rem), 132.2vw);
  height: clamp(49.39375 * 1rem, 70.5625 * 1rem * var(--rem-scale), 119.95625 * 1rem);
  background-color: rgba(255, 255, 255, 0.36);
  border-radius: 50%;
  transform: translateX(-50%);
}

.about-care__measure-tag {
  margin-bottom: clamp(2.275 * 1rem, 3.25 * 1rem * var(--rem-scale), 5.525 * 1rem);
  text-align: center;
}

.about-care__measure-tag .tag {
  font-size: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
}

.about-care__measure-list {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: clamp(1.61875 * 1rem, 2.3125 * 1rem * var(--rem-scale), 3.93125 * 1rem);
}

.about-care__measure-item {
  width: clamp(14.65625 * 1rem, 20.9375 * 1rem * var(--rem-scale), 35.59375 * 1rem);
}

.about-care__measure-img {
  width: 100%;
  aspect-ratio: 335/215;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.about-care__measure-text {
  margin-top: clamp(1.09375 * 1rem, 1.5625 * 1rem * var(--rem-scale), 2.65625 * 1rem);
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 1.8;
}

.about-care__conclusion {
  margin-top: clamp(2.49375 * 1rem, 3.5625 * 1rem * var(--rem-scale), 6.05625 * 1rem);
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(0.9625 * 1rem, 1.375 * 1rem * var(--rem-scale), 2.3375 * 1rem);
  font-weight: 700;
  color: #10355d;
  line-height: 1.8;
  text-align: center;
}

/* ========================================
  ABOUT / カウンセリング
======================================== */

.about-counseling {
  position: relative;
  z-index: 0;
  padding-block: clamp(7.6125 * 1rem, 10.875 * 1rem * var(--rem-scale), 18.4875 * 1rem) clamp(7.56875 * 1rem, 10.8125 * 1rem * var(--rem-scale), 18.38125 * 1rem);
  background-image: -webkit-image-set(url("../img/counseling/counseling.webp") type("image/webp"), url("../img/counseling/counseling.jpg") type("image/jpeg"));
  background-image: image-set(url("../img/counseling/counseling.webp") type("image/webp"), url("../img/counseling/counseling.jpg") type("image/jpeg"));
  background-size: 112.4% auto;
  background-position: 46.4% 45.6%;
}

.about-counseling::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  background-color: rgba(255, 255, 255, 0.4);
  background-image: linear-gradient(rgba(20, 90, 166, 0.055), rgba(20, 90, 166, 0.055));
}

.about-counseling__title {
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
  font-weight: 700;
  color: #10355d;
  line-height: 1.1;
  text-align: center;
}

.about-counseling__text {
  display: flex;
  flex-direction: column;
  gap: clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem);
  max-width: clamp(42.875 * 1rem, 61.25 * 1rem * var(--rem-scale), 104.125 * 1rem);
  margin-top: clamp(3.0625 * 1rem, 4.375 * 1rem * var(--rem-scale), 7.4375 * 1rem);
  margin-inline: auto;
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 2;
}

/* --- 他にも／宣言文／ななつの誓い／予約・相談 ------------------------------------------------ */

.about-other {
  padding-block: clamp(7 * 1rem, 10 * 1rem * var(--rem-scale), 17 * 1rem);
  background-color: #145aa6;
}

.about-other__title {
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
  font-weight: 700;
  color: #fff;
  line-height: 1.1;
  text-align: center;
}

.about-other__list {
  display: flex;
  align-items: flex-start;
  gap: clamp(1.96875 * 1rem, 2.8125 * 1rem * var(--rem-scale), 4.78125 * 1rem);
  margin-top: clamp(3.0625 * 1rem, 4.375 * 1rem * var(--rem-scale), 7.4375 * 1rem);
}

.about-other__item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: clamp(14.4375 * 1rem, 20.625 * 1rem * var(--rem-scale), 35.0625 * 1rem);
}

.about-other__img {
  width: 100%;
  aspect-ratio: 330/261;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.about-other__item-title {
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

.about-other__item-title .tag {
  padding: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem) clamp(0.21875 * 1rem, 0.3125 * 1rem * var(--rem-scale), 0.53125 * 1rem);
  font-size: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  line-height: 1.6;
}

.about-other__text {
  width: 100%;
  margin-top: clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem);
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #fff;
  line-height: 1.8;
}

/* ========================================
  ABOUT / 宣言文
======================================== */

.about-pledge {
  padding-top: clamp(7 * 1rem, 10 * 1rem * var(--rem-scale), 17 * 1rem);
}

.about-pledge__card {
  position: relative;
  z-index: 0;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: clamp(3.0625 * 1rem, 4.375 * 1rem * var(--rem-scale), 7.4375 * 1rem);
  min-height: clamp(18.6375 * 1rem, 26.625 * 1rem * var(--rem-scale), 45.2625 * 1rem);
  padding: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem) clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem) clamp(4.55 * 1rem, 6.5 * 1rem * var(--rem-scale), 11.05 * 1rem);
  background-image: -webkit-image-set(url("../img/footer/footer-01.webp") type("image/webp"), url("../img/footer/footer-01.jpg") type("image/jpeg"));
  background-image: image-set(url("../img/footer/footer-01.webp") type("image/webp"), url("../img/footer/footer-01.jpg") type("image/jpeg"));
  background-size: cover;
  background-position: center;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.about-pledge__card::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  background-color: rgba(255, 255, 255, 0.6);
}

.about-pledge__title {
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
  font-weight: 700;
  color: #10355d;
  line-height: 1.1;
  text-align: center;
}

.about-pledge__text {
  width: 100%;
  max-width: clamp(37.1 * 1rem, 53 * 1rem * var(--rem-scale), 90.1 * 1rem);
  font-size: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
  font-weight: 700;
  color: #10355d;
  line-height: 2;
}

/* ========================================
  ABOUT / ななつの誓い
======================================== */

.about-vow {
  padding-top: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
}

.about-vow__title {
  margin-bottom: clamp(3.0625 * 1rem, 4.375 * 1rem * var(--rem-scale), 7.4375 * 1rem);
  line-height: 1.1;
}

.about-vow__list {
  display: flex;
  flex-direction: column;
  gap: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
}

.about-vow__item {
  display: flex;
  align-items: center;
  gap: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  padding: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  background-color: #d8ecfd;
  border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
}

.about-vow__num {
  position: relative;
  z-index: 0;
  display: flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  width: clamp(3.0625 * 1rem, 4.375 * 1rem * var(--rem-scale), 7.4375 * 1rem);
  height: clamp(3.0625 * 1rem, 4.375 * 1rem * var(--rem-scale), 7.4375 * 1rem);
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(0.83125 * 1rem, 1.1875 * 1rem * var(--rem-scale), 2.01875 * 1rem);
  font-weight: 700;
  color: #fff;
  line-height: 1;
  background-color: #145aa6;
  border-radius: 50%;
}

.about-vow__num::before {
  content: attr(data-num)/"";
  position: absolute;
  z-index: -1;
  top: 50%;
  left: 50%;
  font-size: clamp(2.45 * 1rem, 3.5 * 1rem * var(--rem-scale), 5.95 * 1rem);
  font-weight: 700;
  color: rgba(255, 255, 255, 0.25);
  line-height: 1;
  transform: translate(-50%, calc(-50% - 0.068em));
}

.about-vow__text {
  flex: 1;
  font-size: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
  font-weight: 700;
  color: #10355d;
  line-height: 2;
}

/* ========================================
  ABOUT / 予約・相談
======================================== */

.about-reserve {
  padding-block: clamp(7 * 1rem, 10 * 1rem * var(--rem-scale), 17 * 1rem);
}

/* ========================================
  下層ページ（ホワイトニング）
======================================== */

/* --- チャプター見出し（青バッジ）------------------------------------------------ */

.whitening-badge {
  width: 100%;
  padding: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem) clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem);
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(1.225 * 1rem, 1.75 * 1rem * var(--rem-scale), 2.975 * 1rem);
  font-weight: 700;
  color: #fff;
  line-height: 1.2;
  background-color: #145aa6;
  border-radius: clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem);
}

/* --- チェックリスト共通（丸チェックアイコン＋テキスト）------------------------------------------------ */

.whitening-recommend__item .icon-check,
.whitening-check-item .icon-check {
  -webkit-margin-before: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem);
          margin-block-start: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem);
}

/* --- こんな方におすすめ ------------------------------------------------ */

.whitening-recommend {
  padding-top: clamp(6.0375 * 1rem, 8.625 * 1rem * var(--rem-scale), 14.6625 * 1rem);
}

.whitening-recommend__row {
  display: flex;
  align-items: flex-start;
  gap: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

.whitening-recommend__photo {
  flex-shrink: 0;
  width: clamp(12.46875 * 1rem, 17.8125 * 1rem * var(--rem-scale), 30.28125 * 1rem);
  aspect-ratio: 285/217;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.whitening-recommend__list {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  width: 100%;
}

.whitening-recommend__item {
  display: flex;
  align-items: flex-start;
  gap: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
}

.whitening-recommend__item p {
  flex: 1;
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 700;
  color: #10355d;
  line-height: 1.8;
}

/* --- ホワイトニングシェアNo.1 オパールエッセンス使用 ------------------------------------------------ */

.whitening-opal {
  padding-top: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
}

.whitening-opal__text {
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

/* --- オフィスホワイトニング／ホームホワイトニング（共通パーツ） ------------------------------------------------ */

.whitening-office,
.whitening-home {
  padding-top: clamp(4.41875 * 1rem, 6.3125 * 1rem * var(--rem-scale), 10.73125 * 1rem);
}

.whitening-lead {
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 1.2;
}

.whitening-merit {
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

.whitening-demerit {
  margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
}

.whitening-subheading {
  width: 100%;
  padding-inline: clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem);
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  font-weight: 700;
  color: #10355d;
  line-height: 1.8;
  background-color: #dce3ea;
  border-radius: clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem);
}

.whitening-check-list {
  display: flex;
  flex-direction: column;
  gap: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
  margin-top: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
}

.whitening-check-item {
  display: flex;
  align-items: flex-start;
  gap: clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
  width: 100%;
}

.whitening-check-item p {
  flex: 1;
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 1.8;
}

.whitening-note {
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 1.2;
}

/* --- デュアルホワイトニング ------------------------------------------------ */

.whitening-dual {
  padding-top: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
}

.whitening-dual__text {
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

/* --- 予約・相談 ------------------------------------------------ */

.whitening-reserve {
  padding-block: clamp(7 * 1rem, 10 * 1rem * var(--rem-scale), 17 * 1rem);
}

/* ========================================
  下層ページ（審美歯科）
======================================== */

/* --- 見出し（青バッジ）------------------------------------------------ */

/* --- サブ見出し（下線・素材名／ご相談／保証リード文）------------------------------------------------ */

.aesthetic-subheading {
  padding-bottom: clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
}

/* --- ラベル帯（メリット／デメリット／導入文キャッチ）------------------------------------------------ */

.aesthetic-label {
  display: flex;
  align-items: center;
  min-height: clamp(1.88125 * 1rem, 2.6875 * 1rem * var(--rem-scale), 4.56875 * 1rem);
  padding-inline: clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem);
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  font-weight: 700;
  color: #10355d;
  line-height: 1.75;
  background-color: #dce3ea;
  border-radius: clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem);
}

/* --- チェックアイコン（丸チェック・共通）------------------------------------------------ */

.aesthetic-check-icon {
  display: block;
  flex-shrink: 0;
  width: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  height: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  margin-top: clamp(0.13125 * 1rem, 0.1875 * 1rem * var(--rem-scale), 0.31875 * 1rem);
  background-image: url("../img/common/icon-check.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

/* --- 審美歯科（導入）------------------------------------------------ */

.aesthetic-intro {
  margin-top: clamp(6.08125 * 1rem, 8.6875 * 1rem * var(--rem-scale), 14.76875 * 1rem);
}

.aesthetic-intro__row {
  display: flex;
  align-items: flex-start;
  gap: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

.aesthetic-intro__photo {
  flex-shrink: 0;
  width: clamp(12.46875 * 1rem, 17.8125 * 1rem * var(--rem-scale), 30.28125 * 1rem);
  aspect-ratio: 285/217;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.aesthetic-intro__body {
  flex: 1;
  display: flex;
  flex-direction: column;
  min-width: 0;
}

.aesthetic-intro__text {
  margin-top: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
  display: flex;
  flex-direction: column;
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 1.8125;
}

/* --- 審美歯科素材と保険素材 ------------------------------------------------ */

.aesthetic-materials {
  padding-top: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
}

.aesthetic-material__list {
  display: flex;
  flex-direction: column;
  gap: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

.aesthetic-material__row {
  display: flex;
  align-items: flex-start;
  gap: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

.aesthetic-material__figure {
  display: flex;
  flex-direction: column;
  align-items: center;
  flex-shrink: 0;
  width: clamp(15.4 * 1rem, 22 * 1rem * var(--rem-scale), 37.4 * 1rem);
}

.aesthetic-material__img {
  width: 100%;
  aspect-ratio: 352/280;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.aesthetic-material__caption {
  margin-top: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-size: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
  font-weight: 700;
  color: #10355d;
  line-height: 1.5;
  text-align: center;
}

.aesthetic-material__info {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  min-width: 0;
}

.aesthetic-material__block {
  display: flex;
  flex-direction: column;
}

.aesthetic-material__points {
  display: flex;
  flex-direction: column;
  gap: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  margin-top: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
}

.aesthetic-material__point {
  display: flex;
  align-items: flex-start;
  gap: clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 1.8125;
}

/* --- 審美歯科のご相談はお気軽にどうぞ ------------------------------------------------ */

.aesthetic-invite {
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

.aesthetic-invite__text {
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  line-height: 1.8125;
}

/* --- 保証制度 ------------------------------------------------ */

.aesthetic-warranty {
  padding-top: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
}

.aesthetic-warranty__lead {
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

.aesthetic-warranty__note {
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 1.8125;
}

/* --- 保証がきかないケース ------------------------------------------------ */

.aesthetic-exclusion {
  padding-top: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
}

/* --- チェックリスト（保証制度／保証がきかないケース共通）------------------------------------------------ */

.aesthetic-check-list {
  display: flex;
  flex-direction: column;
  gap: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

.aesthetic-check-list__item {
  display: flex;
  align-items: flex-start;
  gap: clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 700;
  color: #10355d;
  line-height: 1.8125;
}

/* ========================================
  予約・相談
======================================== */

.aesthetic-reserve {
  padding-block: clamp(7 * 1rem, 10 * 1rem * var(--rem-scale), 17 * 1rem);
}

/* ========================================
  予防歯科・ブラッシング指導（TBI）ページ
======================================== */

/* --- 共通レイアウト（このページ内で使い回す） ------------------------------------------------ */

.preventive-stack {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

.preventive-paragraphs {
  display: flex;
  flex-direction: column;
  gap: 0;
}

.preventive-label {
  padding: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem) clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem);
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(1.225 * 1rem, 1.75 * 1rem * var(--rem-scale), 2.975 * 1rem);
  font-weight: 700;
  color: #fff;
  line-height: 1.2;
  background-color: #145aa6;
  border-radius: clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem);
}

.preventive-caption {
  padding: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem) clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  font-weight: 700;
  color: #145aa6;
  line-height: 1.8;
  border-bottom: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem) solid #145aa6;
}

/* --- 予防歯科とは ------------------------------------------------ */

.preventive-intro {
  margin-top: clamp(6.08125 * 1rem, 8.6875 * 1rem * var(--rem-scale), 14.76875 * 1rem);
}

/* --- 定期検診と残存歯 ------------------------------------------------ */

.preventive-checkup {
  margin-top: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
}

.preventive-checkup__chart {
  margin-top: 0;
  display: flex;
  align-items: flex-start;
  gap: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
}

.preventive-checkup__chart-img {
  flex-shrink: 0;
  width: clamp(26.25 * 1rem, 37.5 * 1rem * var(--rem-scale), 63.75 * 1rem);
  aspect-ratio: 600/432;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.preventive-checkup__chart .preventive-text {
  flex: 1;
}

/* --- 歯周病検査の徹底 ------------------------------------------------ */

.preventive-periodontal {
  margin-top: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
}

.preventive-periodontal__list {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: clamp(0.21875 * 1rem, 0.3125 * 1rem * var(--rem-scale), 0.53125 * 1rem);
  width: 100%;
}

.preventive-periodontal__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  width: clamp(10.5 * 1rem, 15 * 1rem * var(--rem-scale), 25.5 * 1rem);
}

.preventive-periodontal__img {
  width: 100%;
  aspect-ratio: 240/300;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.preventive-periodontal__label {
  font-size: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  font-weight: 700;
  color: #10355d;
  line-height: 1.5;
  text-align: center;
}

/* --- ブラッシング指導・TBI ／ PMTC（クリーニング） ------------------------------------------------ */

.preventive-tbi {
  margin-top: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
}

.preventive-pmtc {
  margin-top: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
}

.preventive-feature {
  display: flex;
  align-items: flex-start;
  gap: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
}

.preventive-feature__img {
  flex-shrink: 0;
  width: clamp(12.25 * 1rem, 17.5 * 1rem * var(--rem-scale), 29.75 * 1rem);
  aspect-ratio: 280/215;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.preventive-feature .preventive-text {
  flex: 1;
}

/* --- どのくらいの頻度で通院したらよいの？ ------------------------------------------------ */

.preventive-frequency {
  margin-top: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
}

.preventive-frequency .preventive-caption {
  padding-bottom: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
}

/* --- 予約・相談 ------------------------------------------------ */

.preventive-reserve {
  margin-top: clamp(6.5625 * 1rem, 9.375 * 1rem * var(--rem-scale), 15.9375 * 1rem);
  padding-bottom: clamp(7 * 1rem, 10 * 1rem * var(--rem-scale), 17 * 1rem);
}

/* ========================================
  一般歯科TOPページ
======================================== */

/* --- 治療メニュー（ボタン群） ------------------------------------------------ */

.general-menu-nav {
  margin-top: clamp(6.0375 * 1rem, 8.625 * 1rem * var(--rem-scale), 14.6625 * 1rem);
}

.general-menu-nav__list {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  -moz-column-gap: clamp(1.09375 * 1rem, 1.5625 * 1rem * var(--rem-scale), 2.65625 * 1rem);
       column-gap: clamp(1.09375 * 1rem, 1.5625 * 1rem * var(--rem-scale), 2.65625 * 1rem);
  row-gap: clamp(1.44375 * 1rem, 2.0625 * 1rem * var(--rem-scale), 3.50625 * 1rem);
}

.general-menu-nav__link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
  height: clamp(4.2 * 1rem, 6 * 1rem * var(--rem-scale), 10.2 * 1rem);
  padding-inline: clamp(0.9625 * 1rem, 1.375 * 1rem * var(--rem-scale), 2.3375 * 1rem) clamp(0.83125 * 1rem, 1.1875 * 1rem * var(--rem-scale), 2.01875 * 1rem);
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
  font-weight: 500;
  color: #fff;
  line-height: 1.4;
  background-color: #145aa6;
  border-radius: clamp(2.1 * 1rem, 3 * 1rem * var(--rem-scale), 5.1 * 1rem);
}

.general-menu-nav__link:focus-visible {
  outline: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem) solid #10355d;
  outline-offset: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem);
}

.general-menu-nav__link--sm {
  font-size: clamp(0.65625 * 1rem, 0.9375 * 1rem * var(--rem-scale), 1.59375 * 1rem);
  line-height: 1.5;
}

/* --- 導入（三木歯科の特徴＋写真） ------------------------------------------------ */

.general-intro {
  margin-top: clamp(7 * 1rem, 10 * 1rem * var(--rem-scale), 17 * 1rem);
}

.general-intro__card {
  position: relative;
  z-index: 0;
  display: flex;
  align-items: center;
  width: 100%;
  max-width: clamp(42.875 * 1rem, 61.25 * 1rem * var(--rem-scale), 104.125 * 1rem);
  min-height: clamp(12.55625 * 1rem, 17.9375 * 1rem * var(--rem-scale), 30.49375 * 1rem);
  margin-inline: auto;
  padding-left: clamp(3.5875 * 1rem, 5.125 * 1rem * var(--rem-scale), 8.7125 * 1rem);
  background-color: #fff;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.general-intro__list {
  display: flex;
  flex-direction: column;
  gap: clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem);
  width: 100%;
  max-width: min(clamp(21.91875 * 1rem, 31.3125 * 1rem * var(--rem-scale), 53.23125 * 1rem), 56%);
}

.general-intro__item {
  display: flex;
  align-items: center;
  gap: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
}

.general-intro__item p {
  margin: 0;
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  font-weight: 700;
  color: #10355d;
  line-height: 2.2;
}

.general-intro__icon {
  flex-shrink: 0;
  width: clamp(1.225 * 1rem, 1.75 * 1rem * var(--rem-scale), 2.975 * 1rem);
  height: clamp(1.225 * 1rem, 1.75 * 1rem * var(--rem-scale), 2.975 * 1rem);
}

.general-intro__photo {
  position: absolute;
  z-index: 1;
  right: 7.918%;
  width: 28.654%;
  bottom: 0;
  aspect-ratio: 280.807/310;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: top center;
     object-position: top center;
}

.general-intro__lead {
  margin-top: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
}

.general-intro__lead p {
  margin: 0;
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 1.8125;
}

/* --- 治療メニュー（一覧） ------------------------------------------------ */

.general-menu {
  margin-top: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
}

.general-menu__head {
  display: flex;
  align-items: center;
  gap: clamp(1.61875 * 1rem, 2.3125 * 1rem * var(--rem-scale), 3.93125 * 1rem);
}

.general-menu__head::before,
.general-menu__head::after {
  content: "";
  display: block;
  flex: 1;
  height: clamp(0.13125 * 1rem, 0.1875 * 1rem * var(--rem-scale), 0.31875 * 1rem);
  max-width: clamp(16.75625 * 1rem, 23.9375 * 1rem * var(--rem-scale), 40.69375 * 1rem);
  background-color: #10355d;
}

.general-menu__title {
  flex-shrink: 0;
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
  font-weight: 700;
  color: #10355d;
  line-height: 1;
  white-space: nowrap;
}

.general-menu__list {
  display: flex;
  flex-direction: column;
  gap: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
  margin-top: clamp(3.0625 * 1rem, 4.375 * 1rem * var(--rem-scale), 7.4375 * 1rem);
}

.general-menu__item {
  display: flex;
  align-items: flex-start;
  gap: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
  padding: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
  background-color: #fff;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.general-menu__icon {
  flex-shrink: 0;
  width: clamp(8.75 * 1rem, 12.5 * 1rem * var(--rem-scale), 21.25 * 1rem);
  height: clamp(8.75 * 1rem, 12.5 * 1rem * var(--rem-scale), 21.25 * 1rem);
}

.general-menu__body {
  flex: 1;
  min-width: 0;
}

.general-menu__item-title {
  margin: 0;
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(1.1375 * 1rem, 1.625 * 1rem * var(--rem-scale), 2.7625 * 1rem);
  font-weight: 700;
  color: #10355d;
  line-height: 1.5;
}

.general-menu__text {
  margin-top: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 1.8125;
}

.general-menu__text p {
  margin: 0;
}

.general-menu__text--narrow {
  max-width: clamp(31.9375 * 1rem, 45.625 * 1rem * var(--rem-scale), 77.5625 * 1rem);
}

.general-menu__more {
  display: flex;
  width: -moz-fit-content;
  width: fit-content;
  margin-top: clamp(1.09375 * 1rem, 1.5625 * 1rem * var(--rem-scale), 2.65625 * 1rem);
  margin-left: auto;
}

/* ========================================
  予約・相談
======================================== */

.general-reserve {
  padding-block: clamp(7 * 1rem, 10 * 1rem * var(--rem-scale), 17 * 1rem);
}

/* ========================================
  下層ページ（インプラント）
======================================== */

/* --- 見出し（青バッジ）------------------------------------------------ */

.implant-heading {
  display: flex;
  align-items: flex-end;
  width: 100%;
  height: clamp(2.45 * 1rem, 3.5 * 1rem * var(--rem-scale), 5.95 * 1rem);
  padding: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem) clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem);
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(1.225 * 1rem, 1.75 * 1rem * var(--rem-scale), 2.975 * 1rem);
  font-weight: 700;
  color: #fff;
  line-height: 1.2;
  background-color: #145aa6;
  border-radius: clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem);
}

/* --- サブ見出し（下線・素材名／番号見出し）------------------------------------------------ */

.implant-subheading {
  width: 100%;
  padding-block: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
  padding-inline: clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem);
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  font-weight: 700;
  color: #145aa6;
  line-height: 1.8;
  border-bottom: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem) solid #145aa6;
}

/* --- ラベル帯（メリット／デメリット／導入キャッチ）------------------------------------------------ */

.implant-label {
  display: flex;
  align-items: center;
  padding-inline: clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem);
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  font-weight: 700;
  color: #10355d;
  line-height: 1.8;
  background-color: #dce3ea;
  border-radius: clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem);
}

/* --- チェックアイコン（丸チェック・共通）------------------------------------------------ */

.implant-check-icon {
  display: block;
  flex-shrink: 0;
  width: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  height: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  margin-top: clamp(0.13125 * 1rem, 0.1875 * 1rem * var(--rem-scale), 0.31875 * 1rem);
  background-image: url("../img/implant/icon-check.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

/* --- インプラントとは ------------------------------------------------ */

.implant-intro {
  margin-top: clamp(6.08125 * 1rem, 8.6875 * 1rem * var(--rem-scale), 14.76875 * 1rem);
}

.implant-intro__diagram {
  display: block;
  width: clamp(20.95625 * 1rem, 29.9375 * 1rem * var(--rem-scale), 50.89375 * 1rem);
  aspect-ratio: 479/479;
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.implant-intro__text {
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

/* --- インプラント治療成功の為に ------------------------------------------------ */

.implant-success {
  padding-top: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
}

/* 歯科用CT完備 */

.implant-ct {
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

.implant-ct__img {
  display: block;
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  width: clamp(29.05 * 1rem, 41.5 * 1rem * var(--rem-scale), 70.55 * 1rem);
  aspect-ratio: 664/415;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.implant-ct__text {
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

/* シミュレーション */

.implant-simulation {
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

.implant-simulation .implant-label {
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

.implant-simulation__text {
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

/* 写真の横並び（シミュレーション3枚／サージカルガイド2枚で共通） */

.implant-photo-row {
  display: flex;
  align-items: flex-start;
  gap: clamp(1.96875 * 1rem, 2.8125 * 1rem * var(--rem-scale), 4.78125 * 1rem);
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

.implant-photo-row__item {
  width: clamp(14.4375 * 1rem, 20.625 * 1rem * var(--rem-scale), 35.0625 * 1rem);
}

.implant-photo-row__figure {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.implant-photo-row__img {
  display: block;
  width: 100%;
  aspect-ratio: 330/261;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.implant-photo-row__caption {
  margin-top: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-size: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  font-weight: 700;
  color: #10355d;
  line-height: 1.5;
  text-align: center;
}

/* サージカルガイド（見出しなし・「シミュレーション」の続きとして配置） */

.implant-guide {
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

.implant-guide__text {
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

.implant-guide__lead {
  font-weight: 700;
}

/* --- 治療法比較 ------------------------------------------------ */

.implant-compare {
  padding-top: clamp(4.4625 * 1rem, 6.375 * 1rem * var(--rem-scale), 10.8375 * 1rem);
}

.implant-compare__list {
  display: flex;
  flex-direction: column;
  gap: clamp(1.35625 * 1rem, 1.9375 * 1rem * var(--rem-scale), 3.29375 * 1rem);
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

.implant-compare__row {
  display: flex;
  align-items: flex-start;
  gap: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

.implant-compare__img {
  flex-shrink: 0;
  width: clamp(15.4 * 1rem, 22 * 1rem * var(--rem-scale), 37.4 * 1rem);
  aspect-ratio: 352/280;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.implant-compare__body {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  min-width: 0;
}

.implant-compare__group {
  display: flex;
  flex-direction: column;
}

.implant-compare__points {
  display: flex;
  flex-direction: column;
  gap: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  margin-top: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
}

.implant-compare__point {
  display: flex;
  align-items: flex-start;
  gap: clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 1.8;
}

/* --- どうしてインプラントに力を入れているの？ ------------------------------------------------ */

.implant-reason {
  padding-top: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
}

.implant-reason__list {
  display: flex;
  flex-direction: column;
  gap: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

.implant-reason__text {
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

/* --- インプラント保証制度 ------------------------------------------------ */

.implant-warranty {
  padding-top: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
}

.implant-check-list {
  display: flex;
  flex-direction: column;
  gap: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

.implant-check-list__item {
  display: flex;
  align-items: flex-start;
  gap: clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 700;
  color: #10355d;
  line-height: 1.8;
}

.implant-warranty__note {
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

/* ========================================
  予約・相談
======================================== */

.implant-reserve {
  padding-block: clamp(7.21875 * 1rem, 10.3125 * 1rem * var(--rem-scale), 17.53125 * 1rem) clamp(7 * 1rem, 10 * 1rem * var(--rem-scale), 17 * 1rem);
}

/* ========================================
  PERIOページ（歯周病）
======================================== */

/* --- 見出し共通 ------------------------------------------------ */

.perio-heading {
  padding: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem) clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem);
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(1.225 * 1rem, 1.75 * 1rem * var(--rem-scale), 2.975 * 1rem);
  font-weight: 700;
  color: #fff;
  line-height: 1.2;
  background-color: #145aa6;
  border-radius: clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem);
}

.perio-subheading {
  padding-inline: clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem);
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  font-weight: 700;
  color: #10355d;
  line-height: 1.8;
  background-color: #dce3ea;
  border-radius: clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem);
}

.perio-text {
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

.perio-text p {
  margin: 0;
}

.perio-text strong {
  font-weight: 700;
}

.perio-text p.perio-text__gap {
  margin-top: clamp(1.26875 * 1rem, 1.8125 * 1rem * var(--rem-scale), 3.08125 * 1rem);
}

.perio-notice__link {
  font-weight: 700;
  color: inherit;
  text-decoration: underline;
}

.perio-notice__link:focus-visible {
  outline: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem) solid #145aa6;
  outline-offset: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem);
}

/* --- 当院の歯周病治療の特徴（1ブロック目） ------------------------------------------------ */

.perio-feature {
  margin-top: clamp(6.0375 * 1rem, 8.625 * 1rem * var(--rem-scale), 14.6625 * 1rem);
}

/* --- 2ブロック目以降の共通の間隔 ------------------------------------------------ */

.perio-block {
  padding-top: clamp(4.41875 * 1rem, 6.3125 * 1rem * var(--rem-scale), 10.73125 * 1rem);
}

/* --- 検査が必要な訳 ------------------------------------------------ */

.perio-reason .perio-subheading {
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

.perio-reason__figure {
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

.perio-reason__img {
  width: 100%;
  max-width: clamp(33.20625 * 1rem, 47.4375 * 1rem * var(--rem-scale), 80.64375 * 1rem);
  aspect-ratio: 759/284;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

/* --- 主な検査内容 ------------------------------------------------ */

.perio-exam__lead {
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 1.8;
}

.perio-exam__list {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

.perio-exam__item {
  width: clamp(10.5 * 1rem, 15 * 1rem * var(--rem-scale), 25.5 * 1rem);
}

.perio-exam__figure {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
}

.perio-exam__img {
  width: 100%;
  aspect-ratio: 240/300;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.perio-exam__caption {
  font-size: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  font-weight: 700;
  color: #10355d;
  line-height: 1.5;
  text-align: center;
}

/* --- 症状と治療法 ------------------------------------------------ */

.perio-symptom__list {
  display: flex;
  flex-direction: column;
  gap: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

.perio-symptom__label {
  padding: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem) clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  font-weight: 700;
  color: #145aa6;
  line-height: 1.8;
  border-bottom: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem) solid #145aa6;
}

.perio-symptom__grid {
  display: grid;
  -moz-column-gap: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
       column-gap: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
  grid-template-columns: clamp(7.9625 * 1rem, 11.375 * 1rem * var(--rem-scale), 19.3375 * 1rem) 1fr;
  grid-template-areas: "pic desc" "pic sub" "pic treat" "pic .";
  grid-template-rows: auto auto auto 1fr;
  align-items: start;
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

.perio-symptom__figure {
  grid-area: pic;
}

.perio-symptom__img {
  width: clamp(7.9625 * 1rem, 11.375 * 1rem * var(--rem-scale), 19.3375 * 1rem);
  aspect-ratio: 182/230;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.perio-symptom__desc {
  grid-area: desc;
  margin-top: 0;
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 1.8;
}

.perio-symptom__sub {
  grid-area: sub;
  margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
}

.perio-symptom__treatment {
  grid-area: treat;
  margin-top: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
}

.perio-symptom__treatment p {
  margin: 0;
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 1.8;
}

/* --- こんな方は要注意です ------------------------------------------------ */

.perio-warning .inner {
  padding-bottom: clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem);
}

.perio-warning__list {
  display: flex;
  flex-direction: column;
  gap: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

.perio-warning__item {
  display: flex;
  align-items: center;
  gap: clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
}

.perio-warning__item p {
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 700;
  color: #10355d;
  line-height: 1.8;
}

/* --- 予約・相談（見出しテキストがカンプに無いためdiv実装） ------------------------------------------------ */

.perio-reserve {
  padding-block: clamp(7 * 1rem, 10 * 1rem * var(--rem-scale), 17 * 1rem);
}

/* ========================================
  下層ページ（小児予防歯科）
======================================== */

/* --- チャプター見出し（青バッジ）------------------------------------------------ */

.pedprev-badge {
  width: 100%;
  padding: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem) clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem);
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(1.225 * 1rem, 1.75 * 1rem * var(--rem-scale), 2.975 * 1rem);
  font-weight: 700;
  color: #fff;
  line-height: 1.2;
  background-color: #145aa6;
  border-radius: clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem);
}

/* --- サブ見出し（下線付き） ------------------------------------------------ */

.pedprev-subheading {
  width: 100%;
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  padding: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem) clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  font-weight: 700;
  color: #145aa6;
  line-height: 1.8;
  border-bottom: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem) solid #145aa6;
}

/* --- 本文テキスト ------------------------------------------------ */

.pedprev-text {
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

.pedprev-sup {
  font-size: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
}

.pedprev-note {
  margin-top: clamp(1.26875 * 1rem, 1.8125 * 1rem * var(--rem-scale), 3.08125 * 1rem);
}

.pedprev-note-list {
  list-style: none;
}

.pedprev-note-list li {
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 1.8;
}

/* --- 写真＋本文の横並び行 ------------------------------------------------ */

.pedprev-row {
  display: flex;
  align-items: flex-start;
  gap: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
  width: 100%;
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

.pedprev-row__photo {
  flex-shrink: 0;
  width: clamp(10.0625 * 1rem, 14.375 * 1rem * var(--rem-scale), 24.4375 * 1rem);
  aspect-ratio: 230/215;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.pedprev-row__photo--wide {
  width: clamp(12.25 * 1rem, 17.5 * 1rem * var(--rem-scale), 29.75 * 1rem);
  aspect-ratio: 280/215;
}

.pedprev-row__text {
  flex: 1;
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 1.8;
}

/* --- 3ステップ（染め出し→PMTC→仕上がり） ------------------------------------------------ */

.pedprev-flow {
  display: flex;
  align-items: stretch;
  justify-content: center;
  gap: clamp(0.21875 * 1rem, 0.3125 * 1rem * var(--rem-scale), 0.53125 * 1rem);
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  padding: clamp(1.925 * 1rem, 2.75 * 1rem * var(--rem-scale), 4.675 * 1rem) clamp(2.5375 * 1rem, 3.625 * 1rem * var(--rem-scale), 6.1625 * 1rem) clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem) clamp(0.9625 * 1rem, 1.375 * 1rem * var(--rem-scale), 2.3375 * 1rem);
  background-color: #dce3ea;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  list-style: none;
}

.pedprev-flow__item {
  position: relative;
  z-index: 0;
  min-width: 0;
  width: clamp(14.4375 * 1rem, 20.625 * 1rem * var(--rem-scale), 35.0625 * 1rem);
}

.pedprev-flow__item:not(:last-child)::after {
  content: "";
  position: absolute;
  z-index: 1;
  top: clamp(5.81875 * 1rem, 8.3125 * 1rem * var(--rem-scale), 14.13125 * 1rem);
  left: 100%;
  width: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
  height: clamp(4.725 * 1rem, 6.75 * 1rem * var(--rem-scale), 11.475 * 1rem);
  margin-left: calc(clamp(1.00625 * 1rem, 1.4375 * 1rem * var(--rem-scale), 2.44375 * 1rem) * -1);
  background-image: url("../img/pedprev/arrow-pc.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  transform: translateY(-50%);
}

.pedprev-flow__badge {
  position: absolute;
  z-index: 2;
  top: 0;
  left: clamp(1.575 * 1rem, 2.25 * 1rem * var(--rem-scale), 3.825 * 1rem);
  padding: clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem) clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) clamp(0.39375 * 1rem, 0.5625 * 1rem * var(--rem-scale), 0.95625 * 1rem);
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
  font-weight: 700;
  color: #fff;
  line-height: 1.4;
  white-space: nowrap;
  background-color: #145aa6;
  border-radius: clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem);
}

.pedprev-flow__photo {
  display: block;
  width: clamp(10.675 * 1rem, 15.25 * 1rem * var(--rem-scale), 25.925 * 1rem);
  aspect-ratio: 244/244;
  margin-block: clamp(0.48125 * 1rem, 0.6875 * 1rem * var(--rem-scale), 1.16875 * 1rem) 0;
  margin-inline: clamp(1.88125 * 1rem, 2.6875 * 1rem * var(--rem-scale), 4.56875 * 1rem) auto;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 50%;
}

.pedprev-flow__caption {
  position: relative;
  z-index: 3;
  width: clamp(9.625 * 1rem, 13.75 * 1rem * var(--rem-scale), 23.375 * 1rem);
  margin-top: calc(clamp(1.575 * 1rem, 2.25 * 1rem * var(--rem-scale), 3.825 * 1rem) * -1);
  margin-inline: clamp(4.9 * 1rem, 7 * 1rem * var(--rem-scale), 11.9 * 1rem) 0;
  padding: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem) clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem) clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 1.8;
  text-align: left;
  background-color: #fff;
  border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
}

/* --- 予約・相談 ------------------------------------------------ */

.pedprev-reserve {
  padding-block: clamp(7 * 1rem, 10 * 1rem * var(--rem-scale), 17 * 1rem);
}

/* --- チャプター間の余白（セクション単位） ------------------------------------------------ */

.pedprev-intro {
  padding-top: clamp(6.125 * 1rem, 8.75 * 1rem * var(--rem-scale), 14.875 * 1rem);
}

.pedprev-age,
.pedprev-program,
.pedprev-freq {
  padding-top: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
}

/* ========================================
  下層ページ（小児シーラント）
======================================== */

/* --- 見出し（青バッジ）------------------------------------------------ */

/* --- サブ見出し（下線・シーラント治療をしなかった場合）------------------------------------------------ */

.sealant-subheading {
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  padding-bottom: clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
}

/* --- シーラント治療 ------------------------------------------------ */

.sealant-treatment {
  margin-top: clamp(6.0375 * 1rem, 8.625 * 1rem * var(--rem-scale), 14.6625 * 1rem);
}

/* --- シーラントって？ ------------------------------------------------ */

.sealant-what {
  padding-top: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
}

/* --- 比較行（画像＋矢印＋画像。シーラント治療／シーラントって？ 共通） ------------------------------------------------ */

.sealant-compare {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  gap: clamp(1.225 * 1rem, 1.75 * 1rem * var(--rem-scale), 2.975 * 1rem);
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

.sealant-compare__item {
  display: flex;
  flex-direction: column;
  gap: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  width: clamp(17.9375 * 1rem, 25.625 * 1rem * var(--rem-scale), 43.5625 * 1rem);
}

.sealant-compare__img {
  width: 100%;
  aspect-ratio: 410/317;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: clamp(1.26875 * 1rem, 1.8125 * 1rem * var(--rem-scale), 3.08125 * 1rem);
}

.sealant-compare__text {
  display: flex;
  flex-direction: column;
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 1.8;
}

.sealant-compare__arrow {
  display: block;
  flex-shrink: 0;
  width: clamp(2.05625 * 1rem, 2.9375 * 1rem * var(--rem-scale), 4.99375 * 1rem);
  height: clamp(6.43125 * 1rem, 9.1875 * 1rem * var(--rem-scale), 15.61875 * 1rem);
  margin-top: clamp(3.71875 * 1rem, 5.3125 * 1rem * var(--rem-scale), 9.03125 * 1rem);
  background-color: #61b8ff;
  -webkit-clip-path: polygon(21.3% 6.7%, 97.9% 50%, 21.3% 93.3%);
          clip-path: polygon(21.3% 6.7%, 97.9% 50%, 21.3% 93.3%);
}

/* --- シーラント実際の写真 ------------------------------------------------ */

.sealant-photo {
  padding-top: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
}

.sealant-photo__row {
  display: flex;
  align-items: flex-start;
  gap: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

.sealant-photo__img {
  flex-shrink: 0;
  width: clamp(12.25 * 1rem, 17.5 * 1rem * var(--rem-scale), 29.75 * 1rem);
  aspect-ratio: 280/215;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.sealant-photo__text {
  display: flex;
  flex-direction: column;
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 1.8;
}

/* ========================================
  予約・相談
======================================== */

.sealant-reserve {
  padding-block: clamp(7 * 1rem, 10 * 1rem * var(--rem-scale), 17 * 1rem);
}

/* ========================================
  下層ページ（保隙・ほげき）
======================================== */

/* --- 見出し帯（青バッジ）------------------------------------------------ */

/* --- 小見出し（下線）------------------------------------------------ */

.spacer-subheading {
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  padding-block: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
}

/* --- 保隙治療をしなかった場合 ------------------------------------------------ */

.spacer-intro {
  padding-top: clamp(6.0375 * 1rem, 8.625 * 1rem * var(--rem-scale), 14.6625 * 1rem);
}

/* --- 保隙装置ってどんな装置なの？ ------------------------------------------------ */

.spacer-device {
  padding-top: clamp(4.4625 * 1rem, 6.375 * 1rem * var(--rem-scale), 10.8375 * 1rem);
}

.spacer-device__text {
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

/* --- 実際はこんな装置です ------------------------------------------------ */

.spacer-actual {
  padding-top: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
}

.spacer-actual__row {
  display: flex;
  align-items: flex-start;
  gap: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

.spacer-actual__img {
  flex-shrink: 0;
  width: clamp(12.25 * 1rem, 17.5 * 1rem * var(--rem-scale), 29.75 * 1rem);
  aspect-ratio: 280/215;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.spacer-actual__text {
  flex: 1;
  min-width: 0;
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 1.8;
}

/* --- 図解フロー（画像＋矢印の連なり。しなかった場合／どんな装置の2ブロックで共通）------------------------------------------------ */

.spacer-flow {
  display: flex;
  align-items: flex-start;
  gap: clamp(0.48125 * 1rem, 0.6875 * 1rem * var(--rem-scale), 1.16875 * 1rem);
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

.spacer-flow__figure {
  display: flex;
  flex-direction: column;
  align-items: center;
  min-width: 0;
  width: clamp(13.5625 * 1rem, 19.375 * 1rem * var(--rem-scale), 32.9375 * 1rem);
  gap: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
}

.spacer-flow--device {
  gap: clamp(1.1375 * 1rem, 1.625 * 1rem * var(--rem-scale), 2.7625 * 1rem);
}

.spacer-flow__figure--lg {
  width: clamp(17.9375 * 1rem, 25.625 * 1rem * var(--rem-scale), 43.5625 * 1rem);
}

.spacer-flow__img {
  width: 100%;
  aspect-ratio: 310/252.84;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: clamp(1.225 * 1rem, 1.75 * 1rem * var(--rem-scale), 2.975 * 1rem);
}

.spacer-flow__figure--lg .spacer-flow__img {
  aspect-ratio: 410/317;
  border-radius: clamp(1.26875 * 1rem, 1.8125 * 1rem * var(--rem-scale), 3.08125 * 1rem);
}

.spacer-flow__text {
  width: calc(100% + clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem));
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 1.8;
}

.spacer-flow__figure--lg .spacer-flow__text {
  width: 100%;
}

/* --- 矢印（1つのSVGをCSS回転でPC/SP共用。PCは90deg=右向き、SP/TABは180deg=下向き）------------------------------------------------ */

.spacer-arrow {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  width: clamp(2.1 * 1rem, 3 * 1rem * var(--rem-scale), 5.1 * 1rem);
  height: clamp(6.43125 * 1rem, 9.1875 * 1rem * var(--rem-scale), 15.61875 * 1rem);
  margin-top: clamp(2.31875 * 1rem, 3.3125 * 1rem * var(--rem-scale), 5.63125 * 1rem);
  -webkit-margin-end: clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem);
          margin-inline-end: clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem);
}

.spacer-arrow--lg {
  margin-top: clamp(3.71875 * 1rem, 5.3125 * 1rem * var(--rem-scale), 9.03125 * 1rem);
}

.spacer-arrow__shape {
  display: block;
  flex-shrink: 0;
  width: clamp(5.5696375 * 1rem, 7.956625 * 1rem * var(--rem-scale), 13.5262625 * 1rem);
  height: clamp(1.575 * 1rem, 2.25 * 1rem * var(--rem-scale), 3.825 * 1rem);
  -webkit-margin-start: clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem);
          margin-inline-start: clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem);
  background-image: url("../img/common/triangle-arrow.svg");
  background-size: 100% 100%;
  background-repeat: no-repeat;
  transform: rotate(90deg);
}

/* ========================================
  予約・相談
======================================== */

.spacer-reserve {
  padding-block: clamp(7 * 1rem, 10 * 1rem * var(--rem-scale), 17 * 1rem);
}

/* ========================================
  予約・相談 / 診療時間・アクセス 共通ページ
======================================== */

/* --- 診療時間テーブル（共通コンポーネント） ------------------------------------------------ */

.hours__label {
  width: clamp(6.825 * 1rem, 9.75 * 1rem * var(--rem-scale), 16.575 * 1rem);
  padding-block: clamp(0.48125 * 1rem, 0.6875 * 1rem * var(--rem-scale), 1.16875 * 1rem);
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  font-weight: 700;
  color: #fff;
  letter-spacing: 0.3em;
  line-height: 1;
  text-align: center;
  text-indent: 0.3em;
  background-color: #145aa6;
  border-radius: clamp(0.21875 * 1rem, 0.3125 * 1rem * var(--rem-scale), 0.53125 * 1rem);
}

.hours__table {
  width: 100%;
  max-width: clamp(34.125 * 1rem, 48.75 * 1rem * var(--rem-scale), 82.875 * 1rem);
  margin-top: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  margin-inline: auto;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 7 2'%3E%3Ccircle cx='1' cy='1' r='1' fill='rgb(20,90,166)'/%3E%3C/svg%3E"), url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 7 2'%3E%3Ccircle cx='1' cy='1' r='1' fill='rgb(20,90,166)'/%3E%3C/svg%3E");
  background-position: left top, left bottom;
  background-size: clamp(0.30625 * 1rem, 0.4375 * 1rem * var(--rem-scale), 0.74375 * 1rem) clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem);
  background-repeat: repeat-x;
  border-collapse: collapse;
  table-layout: fixed;
}

.hours__table th,
.hours__table td {
  padding-block: clamp(0.30625 * 1rem, 0.4375 * 1rem * var(--rem-scale), 0.74375 * 1rem);
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.9625 * 1rem, 1.375 * 1rem * var(--rem-scale), 2.3375 * 1rem);
  font-weight: 400;
  color: #145aa6;
  letter-spacing: 0.05em;
  line-height: 1.4;
  text-align: center;
}

.hours__table thead th {
  padding-block: clamp(0.83125 * 1rem, 1.1875 * 1rem * var(--rem-scale), 2.01875 * 1rem);
  font-weight: 400;
}

.hours__table thead tr {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 7 2'%3E%3Ccircle cx='1' cy='1' r='1' fill='rgb(20,90,166)'/%3E%3C/svg%3E");
  background-position: left bottom;
  background-size: clamp(0.30625 * 1rem, 0.4375 * 1rem * var(--rem-scale), 0.74375 * 1rem) clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem);
  background-repeat: repeat-x;
}

.hours__table tbody tr:first-child th,
.hours__table tbody tr:first-child td {
  padding-top: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.hours__table tbody tr:last-child th,
.hours__table tbody tr:last-child td {
  padding-bottom: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.hours__table th:first-child {
  width: 29.2%;
}

.hours__note {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
  max-width: clamp(30.05625 * 1rem, 42.9375 * 1rem * var(--rem-scale), 72.99375 * 1rem);
  margin-top: clamp(0.74375 * 1rem, 1.0625 * 1rem * var(--rem-scale), 1.80625 * 1rem);
  margin-inline: auto;
}

.hours__note-item {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  font-weight: 400;
  color: #145aa6;
  letter-spacing: 0.05em;
  line-height: 1.3;
}

/* ========================================
  予約・相談ページ（reservation/）
======================================== */

/* --- リード文 ------------------------------------------------ */

.reserve-lead {
  margin-top: clamp(6.125 * 1rem, 8.75 * 1rem * var(--rem-scale), 14.875 * 1rem);
}

.reserve-lead__text {
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 1.8;
  text-align: center;
}

/* --- 診療時間 ------------------------------------------------ */

.reserve-hours {
  margin-top: clamp(3.0625 * 1rem, 4.375 * 1rem * var(--rem-scale), 7.4375 * 1rem);
}

/* --- キャンセルポリシー ------------------------------------------------ */

.reserve-cancel {
  margin-top: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
}

.reserve-cancel__box {
  max-width: clamp(34.2125 * 1rem, 48.875 * 1rem * var(--rem-scale), 83.0875 * 1rem);
  margin-inline: auto;
  padding: clamp(1.61875 * 1rem, 2.3125 * 1rem * var(--rem-scale), 3.93125 * 1rem) clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem) clamp(1.70625 * 1rem, 2.4375 * 1rem * var(--rem-scale), 4.14375 * 1rem);
  background-color: #dce3ea;
  background-image: url("../img/common/texture-gray.png");
  background-repeat: repeat;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.reserve-cancel__title {
  text-align: center;
}

.reserve-cancel__text {
  display: flex;
  flex-direction: column;
  gap: clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem);
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 1.8;
}

.reserve-cancel__list {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0;
  margin-top: clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem);
  padding: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  border: clamp(0.04375 * 1rem, 0.0625 * 1rem * var(--rem-scale), 0.10625 * 1rem) solid #10355d;
  border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
}

.reserve-cancel__item {
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 700;
  color: #10355d;
  line-height: 2;
}

.reserve-cancel__item-label {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  color: #10355d;
}

/* --- 予約・相談（CTA） ------------------------------------------------ */

.reserve-cta {
  padding-block: clamp(7 * 1rem, 10 * 1rem * var(--rem-scale), 17 * 1rem);
}

/* ========================================
  診療時間・アクセスページ（access/）
======================================== */

/* --- 診療時間 ------------------------------------------------ */

.access-hours {
  margin-top: clamp(6.125 * 1rem, 8.75 * 1rem * var(--rem-scale), 14.875 * 1rem);
}

.hours__label {
  margin-inline: 0;
}

.access-hours .hours__label {
  margin-top: clamp(3.0625 * 1rem, 4.375 * 1rem * var(--rem-scale), 7.4375 * 1rem);
}

/* --- アクセス ------------------------------------------------ */

.access-info {
  margin-top: clamp(7.04375 * 1rem, 10.0625 * 1rem * var(--rem-scale), 17.10625 * 1rem);
}

.access-info__lead {
  max-width: clamp(42.875 * 1rem, 61.25 * 1rem * var(--rem-scale), 104.125 * 1rem);
  margin-top: clamp(3.0625 * 1rem, 4.375 * 1rem * var(--rem-scale), 7.4375 * 1rem);
  margin-inline: auto;
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 1.8;
  text-align: center;
}

.access-info__row {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: clamp(2.275 * 1rem, 3.25 * 1rem * var(--rem-scale), 5.525 * 1rem);
  margin-top: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
}

.access-clinic {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  flex-shrink: 0;
  -moz-column-gap: clamp(1.44375 * 1rem, 2.0625 * 1rem * var(--rem-scale), 3.50625 * 1rem);
       column-gap: clamp(1.44375 * 1rem, 2.0625 * 1rem * var(--rem-scale), 3.50625 * 1rem);
  row-gap: 0;
  width: clamp(22.4 * 1rem, 32 * 1rem * var(--rem-scale), 54.4 * 1rem);
}

.access-clinic__block {
  display: flex;
  grid-column: 1/-1;
  gap: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  padding-block: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 6 2'%3E%3Ccircle cx='1' cy='1' r='1' fill='rgb(20,90,166)'/%3E%3C/svg%3E");
  background-position: left bottom;
  background-size: clamp(0.2625 * 1rem, 0.375 * 1rem * var(--rem-scale), 0.6375 * 1rem) clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem);
  background-repeat: repeat-x;
}

.access-clinic__label {
  flex-shrink: 0;
  width: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
}

.access-clinic__text {
  flex: 1;
  min-width: 0;
}

.access-clinic__block:nth-of-type(1) {
  margin-top: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
}

.access-clinic__block:nth-of-type(3) .access-clinic__label,
.access-clinic__block:nth-of-type(3) .access-clinic__text {
  line-height: 2.2;
}

.access-clinic__name {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  font-weight: 700;
  color: #10355d;
  line-height: 1.5;
}

.access-clinic__label {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
  font-weight: 400;
  color: #10355d;
  letter-spacing: 0.05em;
  line-height: 2;
}

.access-clinic__text {
  font-size: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
  font-style: normal;
  font-weight: 400;
  color: #10355d;
  line-height: 2;
}

.access-clinic__tel-link {
  font-weight: 700;
  color: #145aa6;
}

.access-clinic__tel-link:focus-visible {
  outline: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem) solid #145aa6;
  outline-offset: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem);
}

/* 右カラムの外観写真（カンプ実測 516×324） */

.access-info__photo {
  flex: 1 1 clamp(22.575 * 1rem, 32.25 * 1rem * var(--rem-scale), 54.825 * 1rem);
  min-width: clamp(15.75 * 1rem, 22.5 * 1rem * var(--rem-scale), 38.25 * 1rem);
  max-width: clamp(22.575 * 1rem, 32.25 * 1rem * var(--rem-scale), 54.825 * 1rem);
  aspect-ratio: 516/324;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

/* 地図は情報＋写真の下に全幅で置く（カンプ実測 1080×452） */

.access-map {
  display: flex;
  flex-direction: column;
  gap: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
  margin-top: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
}

.access-map__iframe {
  width: 100%;
  height: clamp(19.775 * 1rem, 28.25 * 1rem * var(--rem-scale), 48.025 * 1rem);
  border: 0;
  border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
}

.access-map__link {
  align-self: flex-end;
}

/* --- 予約・相談（CTA） ------------------------------------------------ */

.access-cta {
  padding-block: clamp(7 * 1rem, 10 * 1rem * var(--rem-scale), 17 * 1rem);
}

/* ========================================
  お知らせ一覧 / お知らせ詳細
======================================== */

/* --- ページ共通（900px幅のセクション） ------------------------------------------------ */

.news-inner {
  max-width: clamp(41.125 * 1rem, 58.75 * 1rem * var(--rem-scale), 99.875 * 1rem);
}

/* ========================================
  お知らせ一覧（news-）
======================================== */

.news-list {
  margin-top: clamp(6.0375 * 1rem, 8.625 * 1rem * var(--rem-scale), 14.6625 * 1rem);
}

.news-list__item {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 7 2'%3E%3Ccircle cx='1' cy='1' r='1' fill='rgb(20,90,166)'/%3E%3C/svg%3E");
  background-position: left bottom;
  background-size: clamp(0.30625 * 1rem, 0.4375 * 1rem * var(--rem-scale), 0.74375 * 1rem) clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem);
  background-repeat: repeat-x;
}

.news-list__link {
  display: flex;
  align-items: center;
  gap: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  min-height: clamp(3.80625 * 1rem, 5.4375 * 1rem * var(--rem-scale), 9.24375 * 1rem);
  padding-inline: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
}

.news-list__link:focus-visible {
  outline: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem) solid #145aa6;
  outline-offset: calc(clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem) * -1);
}

.news-list__date {
  flex: 0 0 clamp(4.725 * 1rem, 6.75 * 1rem * var(--rem-scale), 11.475 * 1rem);
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 1.4;
}

.news-list__label {
  overflow: hidden;
  min-width: 0;
  white-space: nowrap;
  text-overflow: ellipsis;
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 700;
  color: #10355d;
  letter-spacing: 0.05em;
  line-height: 1.8;
}

/* --- ページネーション ------------------------------------------------ */

.news-pagination {
  margin-top: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
}

.news-pagination__list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
}

.news-pagination__link {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: clamp(1.09375 * 1rem, 1.5625 * 1rem * var(--rem-scale), 2.65625 * 1rem);
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 500;
  color: #145aa6;
  line-height: 2;
}

.news-pagination__link[aria-current=page] {
  position: relative;
}

.news-pagination__link[aria-current=page]::after {
  content: "";
  position: absolute;
  top: calc(100% - clamp(0.04375 * 1rem, 0.0625 * 1rem * var(--rem-scale), 0.10625 * 1rem));
  left: 50%;
  width: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  height: clamp(0.13125 * 1rem, 0.1875 * 1rem * var(--rem-scale), 0.31875 * 1rem);
  background-color: #145aa6;
  transform: translateX(-50%);
}

.news-pagination__link:focus-visible {
  outline: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem) solid #145aa6;
  outline-offset: calc(clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem) * -1);
}

.news-pagination__link--next {
  margin-left: clamp(0.2625 * 1rem, 0.375 * 1rem * var(--rem-scale), 0.6375 * 1rem);
}

.news-pagination__ellipsis {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: clamp(1.09375 * 1rem, 1.5625 * 1rem * var(--rem-scale), 2.65625 * 1rem);
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 500;
  color: #145aa6;
  line-height: 2;
}

.news-pagination__arrow-icon {
  display: block;
  width: clamp(1.925 * 1rem, 2.75 * 1rem * var(--rem-scale), 4.675 * 1rem);
  height: clamp(1.925 * 1rem, 2.75 * 1rem * var(--rem-scale), 4.675 * 1rem);
  background-image: url("../img/news/icon-pager-arrow.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

.news-pagination__link--next .news-pagination__arrow-icon {
  background-image: url("../img/news/icon-pager-arrow-next.svg");
}

/* --- 予約・相談 ------------------------------------------------ */

.news-reserve {
  padding-block: clamp(7 * 1rem, 10 * 1rem * var(--rem-scale), 17 * 1rem);
}

/* ========================================
  お知らせ詳細（news-detail-）
======================================== */

.news-detail-article {
  margin-top: clamp(6.0375 * 1rem, 8.625 * 1rem * var(--rem-scale), 14.6625 * 1rem);
}

.news-detail-article__header {
  display: flex;
  align-items: center;
  gap: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  padding-block: clamp(1.225 * 1rem, 1.75 * 1rem * var(--rem-scale), 2.975 * 1rem);
  padding-inline: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  border-bottom: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem) solid;
  border-color: #145aa6;
}

.news-detail-article__date {
  display: block;
  flex: 0 0 clamp(4.725 * 1rem, 6.75 * 1rem * var(--rem-scale), 11.475 * 1rem);
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 1.4;
}

.news-detail-article__title {
  margin-top: 0;
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(1.1375 * 1rem, 1.625 * 1rem * var(--rem-scale), 2.7625 * 1rem);
  font-weight: 700;
  color: #10355d;
  line-height: 1.8;
}

.news-detail-article__body {
  margin-top: clamp(3.0625 * 1rem, 4.375 * 1rem * var(--rem-scale), 7.4375 * 1rem);
  padding-inline: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 1.8;
}

.news-detail-article__body p + p {
  margin-top: clamp(0.65625 * 1rem, 0.9375 * 1rem * var(--rem-scale), 1.59375 * 1rem);
}

.news-detail-article__link,
.news-detail-article__body a {
  font-weight: 700;
  color: #145aa6;
  text-decoration: underline;
}

.news-detail-article__link:focus-visible,
.news-detail-article__body a:focus-visible {
  outline: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem) solid #145aa6;
  outline-offset: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem);
}

.news-detail-article__back {
  display: flex;
  width: -moz-fit-content;
  width: fit-content;
  margin-top: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
  margin-inline: auto;
}

/* --- 予約・相談 ------------------------------------------------ */

.news-detail-reserve {
  padding-block: clamp(7 * 1rem, 10 * 1rem * var(--rem-scale), 17 * 1rem);
}

/* ========================================
  下層ページ（小児矯正）
======================================== */

/* --- チャプター見出し（青バッジ）------------------------------------------------ */

.pedortho-badge {
  width: 100%;
  padding: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem) clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem);
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(1.225 * 1rem, 1.75 * 1rem * var(--rem-scale), 2.975 * 1rem);
  font-weight: 700;
  color: #fff;
  line-height: 1.2;
  background-color: #145aa6;
  border-radius: clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem);
}

/* --- サブ見出し（下線付き・マイオブレース矯正とは？） ------------------------------------------------ */

.pedortho-subheading {
  width: 100%;
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  padding: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem) clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  font-weight: 700;
  color: #145aa6;
  line-height: 1.8;
  border-bottom: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem) solid #145aa6;
}

/* --- 本文テキスト ------------------------------------------------ */

.pedortho-text {
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

.pedortho-text + .pedortho-text {
  margin-top: 0;
}

/* --- カード間の接続矢印（青の三角形）------------------------------------------------ */

.pedortho-connector {
  flex-shrink: 0;
  align-self: center;
  height: clamp(6.43125 * 1rem, 9.1875 * 1rem * var(--rem-scale), 15.61875 * 1rem);
  aspect-ratio: 48/147;
  background-color: #61b8ff;
  -webkit-clip-path: polygon(25% 6.6%, 100% 50%, 25% 93.4%);
          clip-path: polygon(25% 6.6%, 100% 50%, 25% 93.4%);
}

/* --- 小児矯正では主に顎の骨にアプローチします ------------------------------------------------ */

.pedortho-jaw {
  padding-top: clamp(6.125 * 1rem, 8.75 * 1rem * var(--rem-scale), 14.875 * 1rem);
}

.pedortho-jaw__row {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: clamp(1.18125 * 1rem, 1.6875 * 1rem * var(--rem-scale), 2.86875 * 1rem);
  max-width: clamp(40.3375 * 1rem, 57.625 * 1rem * var(--rem-scale), 97.9625 * 1rem);
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

.pedortho-jaw .pedortho-connector {
  margin-bottom: clamp(3.325 * 1rem, 4.75 * 1rem * var(--rem-scale), 8.075 * 1rem);
}

.pedortho-jaw__card {
  width: clamp(17.9375 * 1rem, 25.625 * 1rem * var(--rem-scale), 43.5625 * 1rem);
}

.pedortho-jaw__photo {
  display: block;
  width: 100%;
  aspect-ratio: 410/317;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.pedortho-jaw__caption {
  margin-top: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-size: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  font-weight: 700;
  color: #10355d;
  line-height: 1.5;
}

/* --- 治療のイメージ ------------------------------------------------ */

.pedortho-diagram {
  padding-top: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
}

.pedortho-diagram__row {
  position: relative;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: clamp(1.00625 * 1rem, 1.4375 * 1rem * var(--rem-scale), 2.44375 * 1rem);
  max-width: clamp(39.9875 * 1rem, 57.125 * 1rem * var(--rem-scale), 97.1125 * 1rem);
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

.pedortho-diagram__card {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  width: clamp(17.9375 * 1rem, 25.625 * 1rem * var(--rem-scale), 43.5625 * 1rem);
  height: clamp(13.3 * 1rem, 19 * 1rem * var(--rem-scale), 32.3 * 1rem);
  padding-top: clamp(1.44375 * 1rem, 2.0625 * 1rem * var(--rem-scale), 3.50625 * 1rem);
  background-color: #fff;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.pedortho-diagram__img {
  display: block;
  height: auto;
}

.pedortho-diagram__img--before {
  width: clamp(13.51875 * 1rem, 19.3125 * 1rem * var(--rem-scale), 32.83125 * 1rem);
}

.pedortho-diagram__img--after {
  width: clamp(15.4 * 1rem, 22 * 1rem * var(--rem-scale), 37.4 * 1rem);
}

.pedortho-diagram__label {
  position: absolute;
  top: clamp(10.45625 * 1rem, 14.9375 * 1rem * var(--rem-scale), 25.39375 * 1rem);
  left: 50%;
  width: -moz-max-content;
  width: max-content;
  transform: translateX(-50%);
  font-size: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  font-weight: 700;
  color: #e81e17;
  line-height: 1.5;
  text-align: center;
}

/* --- どんな装置を使うの？ ------------------------------------------------ */

.pedortho-device {
  padding-top: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
}

.pedortho-device__row {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  gap: clamp(1.88125 * 1rem, 2.6875 * 1rem * var(--rem-scale), 4.56875 * 1rem);
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

.pedortho-device__photo {
  display: block;
  min-width: 0;
  max-width: 100%;
  width: clamp(17.9375 * 1rem, 25.625 * 1rem * var(--rem-scale), 43.5625 * 1rem);
  aspect-ratio: 410/317;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

/* --- 何歳くらいに相談に行ったら良いの？ ------------------------------------------------ */

.pedortho-timing {
  padding-top: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
}

/* --- 経過観察って？ ------------------------------------------------ */

.pedortho-observe {
  padding-top: clamp(4.41875 * 1rem, 6.3125 * 1rem * var(--rem-scale), 10.73125 * 1rem);
}

/* --- 小児矯正症例 ------------------------------------------------ */

.pedortho-case {
  padding-top: clamp(4.4625 * 1rem, 6.375 * 1rem * var(--rem-scale), 10.8375 * 1rem);
}

.pedortho-case__list {
  display: flex;
  flex-direction: column;
  gap: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

.pedortho-case__item {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 0;
}

.pedortho-case__photo {
  display: block;
  min-width: 0;
  flex: 0 1 clamp(20.3 * 1rem, 29 * 1rem * var(--rem-scale), 49.3 * 1rem);
  width: clamp(20.3 * 1rem, 29 * 1rem * var(--rem-scale), 49.3 * 1rem);
  aspect-ratio: 464/200;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.pedortho-case__photo--lg {
  aspect-ratio: 464/254;
}

.pedortho-case__arrow {
  flex-shrink: 0;
  align-self: flex-start;
  width: clamp(2.1 * 1rem, 3 * 1rem * var(--rem-scale), 5.1 * 1rem);
  height: clamp(5.1625 * 1rem, 7.375 * 1rem * var(--rem-scale), 12.5375 * 1rem);
  margin-top: clamp(1.79375 * 1rem, 2.5625 * 1rem * var(--rem-scale), 4.35625 * 1rem);
  margin-right: clamp(0.21875 * 1rem, 0.3125 * 1rem * var(--rem-scale), 0.53125 * 1rem);
  background-color: #61b8ff;
  -webkit-clip-path: polygon(25% 6.6%, 100% 50%, 25% 93.4%);
          clip-path: polygon(25% 6.6%, 100% 50%, 25% 93.4%);
}

/* --- マイオブレース矯正にも対応しています ------------------------------------------------ */

.pedortho-myobrace {
  padding-top: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
}

/* --- 予約・相談 ------------------------------------------------ */

.pedortho-reserve {
  padding-block: clamp(7 * 1rem, 10 * 1rem * var(--rem-scale), 17 * 1rem);
}

/* ========================================
  スタッフ紹介ページ
======================================== */

/* --- 院長／副院長 共通ブロック ------------------------------------------------ */

.staff-doctor {
  position: relative;
  z-index: 0;
  margin-top: clamp(6.0375 * 1rem, 8.625 * 1rem * var(--rem-scale), 14.6625 * 1rem);
}

.staff-doctor + .staff-doctor {
  margin-top: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
}

.staff-doctor__band {
  position: absolute;
  z-index: -1;
  top: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  left: 0;
  display: block;
  width: calc(max(clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem), calc(50% - clamp(23.625 * 1rem, 33.75 * 1rem * var(--rem-scale), 57.375 * 1rem))) + clamp(14.9625 * 1rem, 21.375 * 1rem * var(--rem-scale), 36.3375 * 1rem));
  height: clamp(28.0875 * 1rem, 40.125 * 1rem * var(--rem-scale), 68.2125 * 1rem);
  background-color: #145aa6;
  border-radius: 0 clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem) clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem) 0;
}

.staff-doctor__inner {
  display: flex;
  align-items: flex-start;
  gap: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
}

.staff-doctor__photo {
  flex-shrink: 0;
  width: clamp(16.3625 * 1rem, 23.375 * 1rem * var(--rem-scale), 39.7375 * 1rem);
  aspect-ratio: 374/455;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: top;
     object-position: top;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.staff-doctor__body {
  flex: 1;
}

.staff-doctor__text {
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 2;
}

.staff-doctor__text p {
  margin: 0;
}

.staff-doctor__name {
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  color: #10355d;
  line-height: 1.6;
}

.staff-doctor__role {
  display: block;
  font-size: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
  line-height: 1.83;
}

.staff-doctor__person {
  display: block;
  font-size: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

/* --- 略歴／治療方針カード ------------------------------------------------ */

.staff-doctor__card {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  margin-top: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
  padding: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem) clamp(1.684375 * 1rem, 2.40625 * 1rem * var(--rem-scale), 4.090625 * 1rem);
  background-color: #fff;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.staff-doctor__history {
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  gap: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
  position: relative;
  padding-right: clamp(1.575 * 1rem, 2.25 * 1rem * var(--rem-scale), 3.825 * 1rem);
}

.staff-doctor__history::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  height: 100%;
  background-image: radial-gradient(circle closest-side, #145aa6 0 54%, transparent 100%);
  background-repeat: repeat-y;
  width: clamp(0.13125 * 1rem, 0.1875 * 1rem * var(--rem-scale), 0.31875 * 1rem);
  background-size: clamp(0.13125 * 1rem, 0.1875 * 1rem * var(--rem-scale), 0.31875 * 1rem) clamp(0.48125 * 1rem, 0.6875 * 1rem * var(--rem-scale), 1.16875 * 1rem);
  background-position: center calc(clamp(0.48125 * 1rem, 0.6875 * 1rem * var(--rem-scale), 1.16875 * 1rem) * -0.5);
}

.staff-doctor__history-body {
  display: flex;
  flex-direction: column;
  gap: clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
  width: clamp(14.30625 * 1rem, 20.4375 * 1rem * var(--rem-scale), 34.74375 * 1rem);
}

.staff-doctor__history-text {
  font-size: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 1.8;
}

.staff-doctor__item {
  display: flex;
  flex-direction: column;
  gap: clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem);
}

.staff-doctor__item-label {
  display: flex;
  align-items: center;
  gap: clamp(0.2625 * 1rem, 0.375 * 1rem * var(--rem-scale), 0.6375 * 1rem);
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 700;
  color: #10355d;
  line-height: 1.8;
}

.staff-doctor__dot {
  flex-shrink: 0;
  width: clamp(0.48125 * 1rem, 0.6875 * 1rem * var(--rem-scale), 1.16875 * 1rem);
  height: clamp(0.48125 * 1rem, 0.6875 * 1rem * var(--rem-scale), 1.16875 * 1rem);
  background-color: #145aa6;
  border-radius: 50%;
}

.staff-doctor__item-text {
  font-size: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 1.8;
}

.staff-doctor__policy {
  display: flex;
  flex-direction: column;
  gap: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
  width: clamp(26.6875 * 1rem, 38.125 * 1rem * var(--rem-scale), 64.8125 * 1rem);
}

.staff-doctor__policy-text p {
  margin: 0;
}

.staff-doctor__sup {
  font-size: 0.645em;
  vertical-align: super;
}

.staff-doctor__note {
  margin-top: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem);
  font-size: clamp(0.48125 * 1rem, 0.6875 * 1rem * var(--rem-scale), 1.16875 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 1.5;
  text-align: left;
}

.staff-doctor__note-title {
  font-weight: 700;
  font-size: clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem);
}

.staff-doctor__note-text {
  margin-top: clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem);
}

/* --- スタッフ ------------------------------------------------ */

.staff-team {
  margin-top: clamp(6.95625 * 1rem, 9.9375 * 1rem * var(--rem-scale), 16.89375 * 1rem);
}

.staff-team__lead {
  margin-top: clamp(3.0625 * 1rem, 4.375 * 1rem * var(--rem-scale), 7.4375 * 1rem);
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 1.8;
}

.staff-team__lead p {
  margin: 0;
}

.staff-team__list {
  display: flex;
  align-items: flex-start;
  gap: clamp(1.96875 * 1rem, 2.8125 * 1rem * var(--rem-scale), 4.78125 * 1rem);
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

.staff-team__item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: clamp(14.4375 * 1rem, 20.625 * 1rem * var(--rem-scale), 35.0625 * 1rem);
}

.staff-team__photo {
  width: 100%;
  aspect-ratio: 330/261;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.staff-team__item-title {
  display: flex;
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

.staff-team__item-title .tag {
  display: inline-block;
  padding-block: 0;
  padding-inline: clamp(0.2625 * 1rem, 0.375 * 1rem * var(--rem-scale), 0.6375 * 1rem);
  line-height: 1.6;
}

.staff-team__item-text {
  margin-top: clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem);
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 1.8;
}

.staff-team__item-text p {
  margin: 0;
}

.staff-team__group {
  overflow: hidden;
  margin-top: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
}

.staff-team__group-img {
  display: block;
  width: 100%;
  aspect-ratio: 1600/681;
  -o-object-fit: cover;
     object-fit: cover;
}

/* ========================================
  予約・相談
======================================== */

.staff-reserve {
  padding-block: clamp(7 * 1rem, 10 * 1rem * var(--rem-scale), 17 * 1rem);
}

/* ========================================
  小児歯科TOP（pediatric/index.html）
======================================== */

/* --- 治療メニューのボタン群 ------------------------------------------------ */

.pediatric-menu {
  margin-top: clamp(6.125 * 1rem, 8.75 * 1rem * var(--rem-scale), 14.875 * 1rem);
}

.pediatric-menu__row {
  display: flex;
  gap: clamp(1.09375 * 1rem, 1.5625 * 1rem * var(--rem-scale), 2.65625 * 1rem);
}

.pediatric-menu__row > li {
  min-width: 0;
  flex: 0 1 clamp(8.575 * 1rem, 12.25 * 1rem * var(--rem-scale), 20.825 * 1rem);
}

.pediatric-menu__row--1 {
  margin-bottom: clamp(1.44375 * 1rem, 2.0625 * 1rem * var(--rem-scale), 3.50625 * 1rem);
}

.pediatric-menu__item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
  min-width: 0;
  width: 100%;
  max-width: clamp(8.575 * 1rem, 12.25 * 1rem * var(--rem-scale), 20.825 * 1rem);
  min-height: clamp(4.2 * 1rem, 6 * 1rem * var(--rem-scale), 10.2 * 1rem);
  padding-inline: clamp(0.9625 * 1rem, 1.375 * 1rem * var(--rem-scale), 2.3375 * 1rem) clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  background-color: #145aa6;
  border-radius: clamp(2.1 * 1rem, 3 * 1rem * var(--rem-scale), 5.1 * 1rem);
}

.pediatric-menu__item:focus-visible {
  outline: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem) solid #10355d;
  outline-offset: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem);
}

.pediatric-menu__label {
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
  font-weight: 500;
  color: #fff;
  line-height: 1.3;
}

/* --- 特徴3項目＋写真 ------------------------------------------------ */

.pediatric-intro {
  margin-top: clamp(7 * 1rem, 10 * 1rem * var(--rem-scale), 17 * 1rem);
}

.pediatric-intro__card {
  position: relative;
  z-index: 0;
  display: flex;
  align-items: center;
  width: 100%;
  max-width: clamp(42.875 * 1rem, 61.25 * 1rem * var(--rem-scale), 104.125 * 1rem);
  min-height: clamp(12.55625 * 1rem, 17.9375 * 1rem * var(--rem-scale), 30.49375 * 1rem);
  margin-inline: auto;
  padding-inline: clamp(3.5875 * 1rem, 5.125 * 1rem * var(--rem-scale), 8.7125 * 1rem) clamp(10.0625 * 1rem, 14.375 * 1rem * var(--rem-scale), 24.4375 * 1rem);
  padding-bottom: clamp(0.30625 * 1rem, 0.4375 * 1rem * var(--rem-scale), 0.74375 * 1rem);
  background-color: #fff;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  overflow: hidden;
}

.pediatric-intro__list {
  display: flex;
  flex-direction: column;
  gap: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  width: 100%;
  max-width: clamp(29.225 * 1rem, 41.75 * 1rem * var(--rem-scale), 70.975 * 1rem);
}

.pediatric-intro__item {
  display: flex;
  align-items: flex-start;
  gap: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
}

.pediatric-intro__item p {
  flex: 1;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  color: #10355d;
  line-height: 1.8;
  font-size: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.pediatric-intro__icon {
  display: block;
  flex-shrink: 0;
  width: clamp(1.225 * 1rem, 1.75 * 1rem * var(--rem-scale), 2.975 * 1rem);
  height: clamp(1.225 * 1rem, 1.75 * 1rem * var(--rem-scale), 2.975 * 1rem);
  margin-top: clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem);
  background-image: url("../img/common/icon-check.svg");
  background-size: contain;
  background-repeat: no-repeat;
}

.pediatric-intro__photo {
  position: absolute;
  top: calc(clamp(0.13125 * 1rem, 0.1875 * 1rem * var(--rem-scale), 0.31875 * 1rem) * -1);
  right: clamp(1.70625 * 1rem, 2.4375 * 1rem * var(--rem-scale), 4.14375 * 1rem);
  width: clamp(10.0625 * 1rem, 14.375 * 1rem * var(--rem-scale), 24.4375 * 1rem);
  aspect-ratio: 230/345;
  -o-object-fit: contain;
     object-fit: contain;
}

/* --- 小児歯科専門医とは？ ------------------------------------------------ */

.pediatric-specialist {
  overflow-x: clip;
  padding-top: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
}

.pediatric-specialist__card {
  position: relative;
  z-index: 0;
  width: 100%;
  max-width: clamp(42.875 * 1rem, 61.25 * 1rem * var(--rem-scale), 104.125 * 1rem);
  margin-inline: auto;
  padding: clamp(2.5375 * 1rem, 3.625 * 1rem * var(--rem-scale), 6.1625 * 1rem) clamp(2.49375 * 1rem, 3.5625 * 1rem * var(--rem-scale), 6.05625 * 1rem) clamp(2.625 * 1rem, 3.75 * 1rem * var(--rem-scale), 6.375 * 1rem);
  background-color: #dce3ea;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.pediatric-specialist__tag {
  text-align: center;
}

.pediatric-specialist__text {
  display: flex;
  flex-direction: column;
  gap: clamp(0.56875 * 1rem, 0.8125 * 1rem * var(--rem-scale), 1.38125 * 1rem);
  width: 100%;
  max-width: clamp(37.8875 * 1rem, 54.125 * 1rem * var(--rem-scale), 92.0125 * 1rem);
  margin-top: clamp(1.35625 * 1rem, 1.9375 * 1rem * var(--rem-scale), 3.29375 * 1rem);
  margin-inline: auto;
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 1.6;
}

.pediatric-specialist__narrow {
  max-width: 75.63%;
}

.pediatric-specialist__note {
  max-width: 75.63%;
  -webkit-padding-end: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
          padding-inline-end: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
  font-size: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  line-height: 1.6;
  text-align: right;
}

.pediatric-specialist__photo {
  position: absolute;
  z-index: 1;
  top: auto;
  bottom: clamp(1.88125 * 1rem, 2.6875 * 1rem * var(--rem-scale), 4.56875 * 1rem);
  left: auto;
  right: calc(100% - clamp(0.30625 * 1rem, 0.4375 * 1rem * var(--rem-scale), 0.74375 * 1rem) - min(91.91%, calc(50vw + 36.22% - clamp(3.85 * 1rem, 5.5 * 1rem * var(--rem-scale), 9.35 * 1rem))));
  width: 18.67%;
  aspect-ratio: 1;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 50%;
}

.pediatric-specialist__balloon {
  position: absolute;
  z-index: 2;
  top: auto;
  bottom: calc(min(clamp(8.00625 * 1rem, 11.4375 * 1rem * var(--rem-scale), 19.44375 * 1rem), 18.67vw - clamp(0.3268125 * 1rem, 0.466875 * 1rem * var(--rem-scale), 0.7936875 * 1rem)) + clamp(1.09375 * 1rem, 1.5625 * 1rem * var(--rem-scale), 2.65625 * 1rem));
  left: min(91.91%, 50vw + 36.22% - clamp(3.85 * 1rem, 5.5 * 1rem * var(--rem-scale), 9.35 * 1rem));
  width: 13.78%;
  min-width: clamp(4.8125 * 1rem, 6.875 * 1rem * var(--rem-scale), 11.6875 * 1rem);
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(0.56875 * 1rem, 0.8125 * 1rem * var(--rem-scale), 1.38125 * 1rem);
  font-weight: 700;
  color: #145aa6;
  line-height: 1.2;
}

.pediatric-specialist__balloon::before {
  content: "";
  position: absolute;
  top: calc(clamp(0.30625 * 1rem, 0.4375 * 1rem * var(--rem-scale), 0.74375 * 1rem) * -1);
  left: calc(clamp(0.65625 * 1rem, 0.9375 * 1rem * var(--rem-scale), 1.59375 * 1rem) * -1);
  width: clamp(3.10625 * 1rem, 4.4375 * 1rem * var(--rem-scale), 7.54375 * 1rem);
  height: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem);
  background-color: #145aa6;
  transform: rotate(-45deg);
}

.pediatric-specialist__balloon::after {
  content: "";
  position: absolute;
  top: clamp(1.96875 * 1rem, 2.8125 * 1rem * var(--rem-scale), 4.78125 * 1rem);
  left: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  width: clamp(3.19375 * 1rem, 4.5625 * 1rem * var(--rem-scale), 7.75625 * 1rem);
  height: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem);
  background-color: #145aa6;
  transform: rotate(-7.8deg);
}

.pediatric-specialist__balloon-text {
  display: inline-block;
  white-space: nowrap;
  transform: rotate(-20.3deg);
}

/* --- 導入文 ------------------------------------------------ */

.pediatric-lead {
  margin-top: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
}

/* --- カメさんコース／ウサギさんコース ------------------------------------------------ */

.pediatric-course {
  margin-top: clamp(3.0625 * 1rem, 4.375 * 1rem * var(--rem-scale), 7.4375 * 1rem);
}

.pediatric-course__list {
  display: flex;
  gap: clamp(1.96875 * 1rem, 2.8125 * 1rem * var(--rem-scale), 4.78125 * 1rem);
}

.pediatric-course__item {
  display: flex;
  align-items: center;
  gap: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  flex: 1;
  padding: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  background-color: #fff;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.pediatric-course__icon {
  flex-shrink: 0;
  width: clamp(7.7 * 1rem, 11 * 1rem * var(--rem-scale), 18.7 * 1rem);
  height: clamp(7.7 * 1rem, 11 * 1rem * var(--rem-scale), 18.7 * 1rem);
  background-size: contain;
  background-repeat: no-repeat;
}

.pediatric-course__icon--turtle {
  background-image: url("../img/pediatric/icon-turtle.svg");
}

.pediatric-course__icon--rabbit {
  background-image: url("../img/pediatric/icon-rabbit.svg");
}

.pediatric-course__title {
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  font-weight: 700;
  color: #10355d;
  line-height: 1.5;
}

.pediatric-course__text {
  margin-top: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 1.6;
}

/* --- ０歳からぜひお越しください ------------------------------------------------ */

.pediatric-visit {
  margin-top: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
}

.pediatric-visit__text {
  display: flex;
  flex-direction: column;
  gap: 0;
  margin-top: clamp(3.0625 * 1rem, 4.375 * 1rem * var(--rem-scale), 7.4375 * 1rem);
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 1.8;
}

/* --- こんな悩みもぜひご相談ください ------------------------------------------------ */

.pediatric-worry {
  margin-top: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
}

.pediatric-worry__inner {
  max-width: clamp(42.875 * 1rem, 61.25 * 1rem * var(--rem-scale), 104.125 * 1rem);
  padding-block: clamp(2.14375 * 1rem, 3.0625 * 1rem * var(--rem-scale), 5.20625 * 1rem);
  background-color: rgba(255, 255, 255, 0.86);
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.pediatric-worry__title {
  text-align: center;
}

.pediatric-worry__title .tag {
  font-size: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
  line-height: 2.2;
}

.pediatric-worry__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  margin-top: clamp(1.35625 * 1rem, 1.9375 * 1rem * var(--rem-scale), 3.29375 * 1rem);
  max-width: clamp(39.1125 * 1rem, 55.875 * 1rem * var(--rem-scale), 94.9875 * 1rem);
  margin-inline: auto;
}

.pediatric-worry__item {
  display: flex;
  align-items: center;
  justify-content: center;
  width: clamp(8.75 * 1rem, 12.5 * 1rem * var(--rem-scale), 21.25 * 1rem);
  aspect-ratio: 200/125;
  background-image: url("../img/pediatric/cloud.svg");
  background-size: 100% 100%;
  background-repeat: no-repeat;
}

.pediatric-worry__item p {
  flex: 1;
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 700;
  color: #10355d;
  line-height: 1.6;
  text-align: center;
}

.pediatric-worry__note {
  position: relative;
  display: flex;
  align-items: center;
  gap: 0;
  min-height: clamp(7.6125 * 1rem, 10.875 * 1rem * var(--rem-scale), 18.4875 * 1rem);
  max-width: clamp(37.8875 * 1rem, 54.125 * 1rem * var(--rem-scale), 92.0125 * 1rem);
  margin-top: clamp(1.88125 * 1rem, 2.6875 * 1rem * var(--rem-scale), 4.56875 * 1rem);
  margin-inline: auto;
  padding: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem) clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem) clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem) clamp(8.75 * 1rem, 12.5 * 1rem * var(--rem-scale), 21.25 * 1rem);
  background-color: #d8ecfd;
  border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
}

.pediatric-worry__photo {
  position: absolute;
  top: clamp(0.13125 * 1rem, 0.1875 * 1rem * var(--rem-scale), 0.31875 * 1rem);
  left: clamp(1.44375 * 1rem, 2.0625 * 1rem * var(--rem-scale), 3.50625 * 1rem);
  width: clamp(6.65 * 1rem, 9.5 * 1rem * var(--rem-scale), 16.15 * 1rem);
  aspect-ratio: 152/171;
  -o-object-fit: contain;
     object-fit: contain;
}

.pediatric-worry__note-text {
  font-size: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  font-weight: 500;
  color: #10355d;
  line-height: 1.8;
}

/* --- 楽しい歯医者さん ------------------------------------------------ */

.pediatric-fun {
  position: relative;
  z-index: 0;
  overflow: hidden;
  margin-top: clamp(4.2875 * 1rem, 6.125 * 1rem * var(--rem-scale), 10.4125 * 1rem);
  padding-block: clamp(4.2875 * 1rem, 6.125 * 1rem * var(--rem-scale), 10.4125 * 1rem) clamp(3.98125 * 1rem, 5.6875 * 1rem * var(--rem-scale), 9.66875 * 1rem);
}

.pediatric-fun::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: clamp(12.29375 * 1rem, 17.5625 * 1rem * var(--rem-scale), 29.85625 * 1rem);
  right: 0;
  bottom: 0;
  left: 0;
  background-color: #145aa6;
}

.pediatric-fun__bg {
  position: absolute;
  z-index: -2;
  top: 0;
  left: 50%;
  display: block;
  width: max(clamp(92.4875 * 1rem, 132.125 * 1rem * var(--rem-scale), 224.6125 * 1rem), 132.2vw);
  height: clamp(47.38125 * 1rem, 67.6875 * 1rem * var(--rem-scale), 115.06875 * 1rem);
  background-color: #145aa6;
  border-radius: 50%;
  transform: translateX(-50%);
}

.pediatric-fun__title {
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
  font-weight: 700;
  color: #fff;
  line-height: 1;
  text-align: center;
}

.pediatric-fun__list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  -moz-column-gap: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
       column-gap: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
  row-gap: clamp(2.0125 * 1rem, 2.875 * 1rem * var(--rem-scale), 4.8875 * 1rem);
  margin-top: clamp(3.0625 * 1rem, 4.375 * 1rem * var(--rem-scale), 7.4375 * 1rem);
}

.pediatric-fun__item {
  display: flex;
  align-items: flex-start;
  gap: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

.pediatric-fun__photo {
  flex-shrink: 0;
  width: clamp(11.8125 * 1rem, 16.875 * 1rem * var(--rem-scale), 28.6875 * 1rem);
  aspect-ratio: 270/313;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.pediatric-fun__body {
  padding-top: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem);
}

.pediatric-fun__label .tag {
  font-size: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  line-height: 1.5;
  padding: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem) clamp(0.2625 * 1rem, 0.375 * 1rem * var(--rem-scale), 0.6375 * 1rem);
}

.pediatric-fun__text {
  margin-top: clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem);
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #fff;
  line-height: 1.8;
}

.pediatric-fun__more {
  display: flex;
  margin-top: clamp(2.625 * 1rem, 3.75 * 1rem * var(--rem-scale), 6.375 * 1rem);
  margin-left: auto;
  width: -moz-fit-content;
  width: fit-content;
}

/* --- 子育てママに優しい歯医者さんです ------------------------------------------------ */

.pediatric-mom {
  padding-block: 0 clamp(4.4625 * 1rem, 6.375 * 1rem * var(--rem-scale), 10.8375 * 1rem);
  background-color: #145aa6;
}

.pediatric-mom__title {
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
  font-weight: 700;
  color: #fff;
  line-height: 1.1;
  text-align: center;
}

.pediatric-mom__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  -moz-column-gap: clamp(1.96875 * 1rem, 2.8125 * 1rem * var(--rem-scale), 4.78125 * 1rem);
       column-gap: clamp(1.96875 * 1rem, 2.8125 * 1rem * var(--rem-scale), 4.78125 * 1rem);
  row-gap: clamp(2.0125 * 1rem, 2.875 * 1rem * var(--rem-scale), 4.8875 * 1rem);
  margin-top: clamp(3.0625 * 1rem, 4.375 * 1rem * var(--rem-scale), 7.4375 * 1rem);
}

.pediatric-mom__item {
  width: clamp(14.4375 * 1rem, 20.625 * 1rem * var(--rem-scale), 35.0625 * 1rem);
}

.pediatric-mom__photo {
  width: 100%;
  aspect-ratio: 330/261;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.pediatric-mom__label {
  margin-top: clamp(1.4 * 1rem, 2 * 1rem * var(--rem-scale), 3.4 * 1rem);
}

.pediatric-mom__label .tag {
  font-size: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  line-height: 1.5;
  padding: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem) clamp(0.2625 * 1rem, 0.375 * 1rem * var(--rem-scale), 0.6375 * 1rem);
}

.pediatric-mom__text {
  margin-top: clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem);
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #fff;
  line-height: 1.8;
}

.pediatric-mom__more {
  display: flex;
  margin-top: clamp(3.9375 * 1rem, 5.625 * 1rem * var(--rem-scale), 9.5625 * 1rem);
  margin-left: auto;
  width: -moz-fit-content;
  width: fit-content;
}

/* --- 治療メニュー ------------------------------------------------ */

.pediatric-treatment {
  padding-top: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
}

.pediatric-treatment__title {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(1.61875 * 1rem, 2.3125 * 1rem * var(--rem-scale), 3.93125 * 1rem);
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
  font-weight: 700;
  color: #10355d;
  line-height: 1;
  white-space: nowrap;
}

.pediatric-treatment__line {
  flex: 1;
  display: block;
  height: clamp(0.13125 * 1rem, 0.1875 * 1rem * var(--rem-scale), 0.31875 * 1rem);
  max-width: clamp(16.75625 * 1rem, 23.9375 * 1rem * var(--rem-scale), 40.69375 * 1rem);
  border-top: clamp(0.13125 * 1rem, 0.1875 * 1rem * var(--rem-scale), 0.31875 * 1rem) solid #10355d;
}

.pediatric-treatment__list {
  display: flex;
  flex-direction: column;
  gap: clamp(1.79375 * 1rem, 2.5625 * 1rem * var(--rem-scale), 4.35625 * 1rem);
  margin-top: clamp(3.01875 * 1rem, 4.3125 * 1rem * var(--rem-scale), 7.33125 * 1rem);
}

.pediatric-treatment__item {
  display: flex;
  align-items: flex-start;
  gap: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
  padding: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
  background-color: #fff;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.pediatric-treatment__icon {
  flex-shrink: 0;
  position: relative;
  z-index: 0;
  width: clamp(8.75 * 1rem, 12.5 * 1rem * var(--rem-scale), 21.25 * 1rem);
  height: clamp(8.75 * 1rem, 12.5 * 1rem * var(--rem-scale), 21.25 * 1rem);
  background-size: contain;
  background-repeat: no-repeat;
}

.pediatric-treatment__icon--preventive {
  background-image: url("../img/pediatric/icon-preventive.svg");
}

.pediatric-treatment__icon--orthodontics {
  background-image: url("../img/pediatric/icon-orthodontics.svg");
}

.pediatric-treatment__icon--fluoride {
  background-image: url("../img/pediatric/icon-fluoride.svg");
}

.pediatric-treatment__icon--sealant {
  background-image: url("../img/pediatric/icon-sealant.svg");
}

.pediatric-treatment__icon--tbi {
  background-image: url("../img/pediatric/icon-tbi.svg");
}

.pediatric-treatment__icon--painless {
  background-image: url("../img/pediatric/icon-painless.svg");
}

.pediatric-treatment__icon--space-maintainer {
  background-color: #145aa6;
  border-radius: 50%;
}

.pediatric-treatment__icon-tooth {
  position: absolute;
  top: 37%;
  width: 23.7%;
  height: 25.6%;
  background-image: url("../img/pediatric/icon-space-maintainer-tooth.svg");
  background-size: contain;
  background-repeat: no-repeat;
}

.pediatric-treatment__icon-tooth:first-child {
  left: 25%;
}

.pediatric-treatment__icon-tooth:last-child {
  left: 51.3%;
}

.pediatric-treatment__body {
  flex: 1;
  margin-top: 0;
}

.pediatric-treatment__name {
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(1.1375 * 1rem, 1.625 * 1rem * var(--rem-scale), 2.7625 * 1rem);
  font-weight: 700;
  color: #10355d;
  line-height: 1.5;
}

.pediatric-treatment__text {
  display: flex;
  flex-direction: column;
  gap: 0;
  margin-top: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 1.8;
}

.pediatric-treatment__more {
  display: flex;
  margin-top: clamp(1.09375 * 1rem, 1.5625 * 1rem * var(--rem-scale), 2.65625 * 1rem);
  margin-left: auto;
  width: -moz-fit-content;
  width: fit-content;
}

/* --- 年齢別ケア ------------------------------------------------ */

.pediatric-age {
  margin-top: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
  padding: clamp(3.0625 * 1rem, 4.375 * 1rem * var(--rem-scale), 7.4375 * 1rem);
  background-color: #fff;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.pediatric-age__title {
  font-size: clamp(1.575 * 1rem, 2.25 * 1rem * var(--rem-scale), 3.825 * 1rem);
  line-height: 1.1;
}

.pediatric-age__list {
  display: flex;
  flex-direction: column;
  gap: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  margin-top: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
}

.pediatric-age__item {
  display: flex;
  align-items: center;
  gap: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  padding: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  background-color: #d8ecfd;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.pediatric-age__badge {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  width: clamp(6.125 * 1rem, 8.75 * 1rem * var(--rem-scale), 14.875 * 1rem);
  height: clamp(6.125 * 1rem, 8.75 * 1rem * var(--rem-scale), 14.875 * 1rem);
  background-color: #fff;
  border-radius: 50%;
}

.pediatric-age__badge-text {
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
  font-weight: 700;
  color: #10355d;
  line-height: 1.5;
  text-align: center;
}

.pediatric-age__text {
  flex: 1;
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 1.8;
}

/* --- 予約・相談 ------------------------------------------------ */

.pediatric-reserve {
  padding-block: clamp(7 * 1rem, 10 * 1rem * var(--rem-scale), 17 * 1rem);
}

/* ========================================
  院内紹介ページ
======================================== */

/* --- 一般歯科（大人）エリア ------------------------------------------------ */

.clinic-adult {
  margin-top: clamp(6.0375 * 1rem, 8.625 * 1rem * var(--rem-scale), 14.6625 * 1rem);
}

.clinic-adult__title {
  font-size: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
}

/* --- 小児歯科エリア ------------------------------------------------ */

.clinic-child {
  position: relative;
  z-index: 0;
  overflow: hidden;
  margin-top: clamp(7 * 1rem, 10 * 1rem * var(--rem-scale), 17 * 1rem);
  padding-block: clamp(4.33125 * 1rem, 6.1875 * 1rem * var(--rem-scale), 10.51875 * 1rem) 0;
}

.clinic-child__bg {
  position: absolute;
  z-index: -1;
  top: 0;
  left: 50%;
  display: block;
  width: max(clamp(92.4875 * 1rem, 132.125 * 1rem * var(--rem-scale), 224.6125 * 1rem), 100vw);
  height: 100%;
  min-height: clamp(47.38125 * 1rem, 67.6875 * 1rem * var(--rem-scale), 115.06875 * 1rem);
  background-color: #145aa6;
  border-radius: 50% 50% 0 0/clamp(23.690625 * 1rem, 33.84375 * 1rem * var(--rem-scale), 57.534375 * 1rem) clamp(23.690625 * 1rem, 33.84375 * 1rem * var(--rem-scale), 57.534375 * 1rem) 0 0;
  transform: translateX(-50%);
}

.clinic-child__title {
  color: #fff;
  font-size: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
  line-height: 1;
}

.clinic-child__divider {
  display: block;
  width: 100%;
  max-width: clamp(47.25 * 1rem, 67.5 * 1rem * var(--rem-scale), 114.75 * 1rem);
  margin-block: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem) clamp(4.15625 * 1rem, 5.9375 * 1rem * var(--rem-scale), 10.09375 * 1rem);
  margin-inline: auto;
  border-color: #fff;
  background-image: radial-gradient(circle closest-side, #fff 0 54%, transparent 100%);
  background-repeat: repeat-x;
  height: clamp(0.21875 * 1rem, 0.3125 * 1rem * var(--rem-scale), 0.53125 * 1rem);
  background-size: clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem) clamp(0.21875 * 1rem, 0.3125 * 1rem * var(--rem-scale), 0.53125 * 1rem);
  background-position: calc(clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem) * -0.5) center;
}

.clinic-child__wave {
  position: relative;
  z-index: 1;
  display: block;
  width: max(clamp(76.475 * 1rem, 109.25 * 1rem * var(--rem-scale), 185.725 * 1rem), 100%);
  height: clamp(6.95625 * 1rem, 9.9375 * 1rem * var(--rem-scale), 16.89375 * 1rem);
  left: 50%;
  margin-top: clamp(3.15 * 1rem, 4.5 * 1rem * var(--rem-scale), 7.65 * 1rem);
  background-image: url("../img/clinic-page/wave-deco.svg");
  background-repeat: no-repeat;
  background-position: top center;
  background-size: 100% auto;
  transform: translateX(-50%);
}

/* --- 設備・共通エリア ------------------------------------------------ */

.clinic-equip {
  margin-top: clamp(6.9125 * 1rem, 9.875 * 1rem * var(--rem-scale), 16.7875 * 1rem);
  padding-top: 0;
  background-color: #f2f2f2;
}

.clinic-equip__title {
  font-size: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
}

/* --- room（写真＋タグ＋本文の共通ブロック） ------------------------------------------------ */

/* 受付・待合室／治療ユニット／歯磨き洗面／プレイルーム／治療ルーム／
   デルフィーノ／バリアフリー／カウンセリングルームで共用する。 */

.clinic-room {
  position: relative;
  z-index: 0;
  overflow-x: clip;
  margin-top: clamp(3.0625 * 1rem, 4.375 * 1rem * var(--rem-scale), 7.4375 * 1rem);
}

.clinic-room--dots .clinic-treat__photos::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: clamp(5.81875 * 1rem, 8.3125 * 1rem * var(--rem-scale), 14.13125 * 1rem);
  left: calc(clamp(4.85625 * 1rem, 6.9375 * 1rem * var(--rem-scale), 11.79375 * 1rem) * -1);
  display: block;
  width: clamp(11.41875 * 1rem, 16.3125 * 1rem * var(--rem-scale), 27.73125 * 1rem);
  height: clamp(7.91875 * 1rem, 11.3125 * 1rem * var(--rem-scale), 19.23125 * 1rem);
  background-image: radial-gradient(circle closest-side, rgba(216, 236, 253, 0.46) 0 46%, transparent 54%);
  background-size: clamp(0.599375 * 1rem, 0.85625 * 1rem * var(--rem-scale), 1.455625 * 1rem) clamp(0.599375 * 1rem, 0.85625 * 1rem * var(--rem-scale), 1.455625 * 1rem);
}

.clinic-room--light {
  margin-top: clamp(4.50625 * 1rem, 6.4375 * 1rem * var(--rem-scale), 10.94375 * 1rem);
}

.clinic-room--reverse:not(.clinic-room--light):not(.clinic-room--photo-mid) {
  margin-top: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
}

.clinic-room--light.clinic-room--dots {
  margin-top: clamp(4.41875 * 1rem, 6.3125 * 1rem * var(--rem-scale), 10.73125 * 1rem);
}

.inner + .clinic-room {
  margin-top: clamp(3.0625 * 1rem, 4.375 * 1rem * var(--rem-scale), 7.4375 * 1rem);
}

.clinic-room__band {
  position: absolute;
  z-index: -1;
  top: clamp(1.8375 * 1rem, 2.625 * 1rem * var(--rem-scale), 4.4625 * 1rem);
  right: 0;
  display: block;
  left: max(calc(50% - clamp(0.13125 * 1rem, 0.1875 * 1rem * var(--rem-scale), 0.31875 * 1rem)), clamp(24.36875 * 1rem, 34.8125 * 1rem * var(--rem-scale), 59.18125 * 1rem));
  height: clamp(18.24375 * 1rem, 26.0625 * 1rem * var(--rem-scale), 44.30625 * 1rem);
  background-color: #145aa6;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem) 0 0 clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.clinic-room--band-sm {
  margin-top: clamp(4.41875 * 1rem, 6.3125 * 1rem * var(--rem-scale), 10.73125 * 1rem);
}

.clinic-room--band-sm .clinic-room__band {
  margin-top: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  height: clamp(11.375 * 1rem, 16.25 * 1rem * var(--rem-scale), 27.625 * 1rem);
}

.clinic-room--reverse .clinic-room__band {
  left: 0;
  right: max(calc(50% - clamp(0.13125 * 1rem, 0.1875 * 1rem * var(--rem-scale), 0.31875 * 1rem)), clamp(24.36875 * 1rem, 34.8125 * 1rem * var(--rem-scale), 59.18125 * 1rem));
  border-radius: 0 clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem) clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem) 0;
}

.clinic-room__inner {
  display: flex;
  align-items: flex-start;
  gap: clamp(2.14375 * 1rem, 3.0625 * 1rem * var(--rem-scale), 5.20625 * 1rem);
}

.clinic-room__body {
  flex: 1;
  min-width: 0;
  padding-top: 0;
}

.clinic-room__tag {
  margin: 0;
}

.clinic-room--photo-mid .clinic-room__tag .tag {
  font-size: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.clinic-room__text {
  display: flex;
  flex-direction: column;
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 2;
}

.clinic-room--light .clinic-room__text {
  color: #fff;
}

.clinic-room__photo {
  flex-shrink: 0;
  width: clamp(25.85625 * 1rem, 36.9375 * 1rem * var(--rem-scale), 62.79375 * 1rem);
  aspect-ratio: 591/411;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.clinic-room__photo--tall {
  width: clamp(25.8125 * 1rem, 36.875 * 1rem * var(--rem-scale), 62.6875 * 1rem);
  aspect-ratio: 590/636;
  border-radius: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

.clinic-room__photo--square {
  width: clamp(14.7 * 1rem, 21 * 1rem * var(--rem-scale), 35.7 * 1rem);
  aspect-ratio: 336/294;
}

.clinic-room__sub-photo {
  display: block;
  width: clamp(9.625 * 1rem, 13.75 * 1rem * var(--rem-scale), 23.375 * 1rem);
  aspect-ratio: 220/172;
  margin-top: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.clinic-room__sub-photo--lg {
  width: clamp(14.65625 * 1rem, 20.9375 * 1rem * var(--rem-scale), 35.59375 * 1rem);
  aspect-ratio: 335/240;
}

.clinic-room__sub-photo-group {
  position: relative;
  width: clamp(19.29375 * 1rem, 27.5625 * 1rem * var(--rem-scale), 46.85625 * 1rem);
  aspect-ratio: 441/485;
  margin-top: 0;
}

.clinic-room__sub-photo--a,
.clinic-room__sub-photo--b {
  display: block;
  position: absolute;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.clinic-room__sub-photo--a {
  top: 0;
  left: clamp(6.3 * 1rem, 9 * 1rem * var(--rem-scale), 15.3 * 1rem);
  width: clamp(12.99375 * 1rem, 18.5625 * 1rem * var(--rem-scale), 31.55625 * 1rem);
  aspect-ratio: 297/210;
}

.clinic-room__sub-photo--b {
  top: clamp(11.06875 * 1rem, 15.8125 * 1rem * var(--rem-scale), 26.88125 * 1rem);
  left: clamp(0.83125 * 1rem, 1.1875 * 1rem * var(--rem-scale), 2.01875 * 1rem);
  width: clamp(11.725 * 1rem, 16.75 * 1rem * var(--rem-scale), 28.475 * 1rem);
  aspect-ratio: 268/192;
}

/* --- room__cluster（写真2〜3枚の重ね配置） ------------------------------------------------ */

.clinic-room__cluster {
  position: relative;
  z-index: 0;
  flex-shrink: 0;
  width: clamp(25.85625 * 1rem, 36.9375 * 1rem * var(--rem-scale), 62.79375 * 1rem);
  aspect-ratio: 591/480;
}

.clinic-room__cluster-photo {
  position: absolute;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

/* 歯磨き洗面スペース・お手洗い（横長写真＋縦長の小写真。カンプ実測: 縦長が下に重なる構図） */

.clinic-room__cluster--wash .clinic-room__cluster-photo--1 {
  top: 27.941%;
  left: 12.69%;
  width: 28.765%;
  aspect-ratio: 170/245;
}

.clinic-room__cluster--wash .clinic-room__cluster-photo--2 {
  top: 0;
  left: 45.008%;
  width: 54.991%;
  aspect-ratio: 325/235;
}

.clinic-room__cluster--wash {
  aspect-ratio: 591/340;
}

/* 治療ルーム（右に大きい海モチーフ写真＋ドットのあしらい／左は本文の下に小写真2枚） */

.clinic-room__cluster--treat {
  width: clamp(25.85625 * 1rem, 36.9375 * 1rem * var(--rem-scale), 62.79375 * 1rem);
  aspect-ratio: 591/411;
}

.clinic-room--dots .clinic-room__body {
  padding-top: clamp(0.56875 * 1rem, 0.8125 * 1rem * var(--rem-scale), 1.38125 * 1rem);
}

.clinic-room__cluster--treat .clinic-room__cluster-photo--1 {
  z-index: 1;
  top: 0;
  right: 0;
  width: 100%;
  aspect-ratio: 591/411;
}

.clinic-treat__deco {
  position: absolute;
  z-index: 0;
  top: clamp(1.575 * 1rem, 2.25 * 1rem * var(--rem-scale), 3.825 * 1rem);
  left: clamp(4.580625 * 1rem, 6.54375 * 1rem * var(--rem-scale), 11.124375 * 1rem);
  overflow: hidden;
  display: block;
  width: clamp(23.375625 * 1rem, 33.39375 * 1rem * var(--rem-scale), 56.769375 * 1rem);
  height: clamp(17.98125 * 1rem, 25.6875 * 1rem * var(--rem-scale), 43.66875 * 1rem);
  transform-origin: 100% 0;
  transform: rotate(-7.8deg);
}

.clinic-treat__deco::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: radial-gradient(circle closest-side, rgba(216, 236, 253, 0.46) 0 46%, transparent 54%);
  background-position: 0 0;
  background-size: clamp(0.599375 * 1rem, 0.85625 * 1rem * var(--rem-scale), 1.455625 * 1rem) clamp(0.599375 * 1rem, 0.85625 * 1rem * var(--rem-scale), 1.455625 * 1rem);
}

/* 治療ルームの本文下に置く小写真2枚（カンプ実測 215×269 / 244×192） */

.clinic-treat__photos {
  position: relative;
  z-index: 1;
  width: 100%;
  height: clamp(13.65 * 1rem, 19.5 * 1rem * var(--rem-scale), 33.15 * 1rem);
  margin-top: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
}

.clinic-treat__photo {
  position: absolute;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.clinic-treat__photo--1 {
  top: 0;
  left: 0;
  width: clamp(9.40625 * 1rem, 13.4375 * 1rem * var(--rem-scale), 22.84375 * 1rem);
  aspect-ratio: 215/269;
}

.clinic-treat__photo--2 {
  top: clamp(5.29375 * 1rem, 7.5625 * 1rem * var(--rem-scale), 12.85625 * 1rem);
  left: clamp(11.24375 * 1rem, 16.0625 * 1rem * var(--rem-scale), 27.30625 * 1rem);
  width: clamp(10.675 * 1rem, 15.25 * 1rem * var(--rem-scale), 25.925 * 1rem);
  aspect-ratio: 244/192;
}

/* バリアフリー（大きい外観写真＋車イスの小写真） */

.clinic-room__cluster--barrier {
  width: clamp(25.85625 * 1rem, 36.9375 * 1rem * var(--rem-scale), 62.79375 * 1rem);
  aspect-ratio: 591/411;
}

/* バリアフリーの小写真2枚（カンプ実測 220×172 と 221×160・59px下げて右に並ぶ） */

.clinic-barrier__photos {
  position: relative;
  width: 100%;
  height: clamp(9.58125 * 1rem, 13.6875 * 1rem * var(--rem-scale), 23.26875 * 1rem);
  margin-top: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
}

.clinic-barrier__photos .clinic-room__sub-photo {
  margin-top: 0;
}

.clinic-barrier__photo-sub {
  position: absolute;
  top: clamp(2.58125 * 1rem, 3.6875 * 1rem * var(--rem-scale), 6.26875 * 1rem);
  left: clamp(10.5875 * 1rem, 15.125 * 1rem * var(--rem-scale), 25.7125 * 1rem);
  width: clamp(9.66875 * 1rem, 13.8125 * 1rem * var(--rem-scale), 23.48125 * 1rem);
  aspect-ratio: 221/160;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.clinic-room__cluster--barrier .clinic-room__cluster-photo--1 {
  top: 0;
  right: 0;
  width: 100%;
  aspect-ratio: 591/411;
}

/* --- 治療ユニットの写真クラスター（4枚重ね＋装飾） ------------------------------------------------ */

.clinic-unit-cluster {
  overflow-x: clip;
  margin-top: calc(clamp(7.91875 * 1rem, 11.3125 * 1rem * var(--rem-scale), 19.23125 * 1rem) * -1);
}

.clinic-unit-cluster__inner {
  position: relative;
  z-index: 0;
  height: clamp(38.2375 * 1rem, 54.625 * 1rem * var(--rem-scale), 92.8625 * 1rem);
}

.clinic-unit-cluster__deco {
  position: absolute;
  z-index: 0;
  top: clamp(6.825 * 1rem, 9.75 * 1rem * var(--rem-scale), 16.575 * 1rem);
  left: clamp(12.1625 * 1rem, 17.375 * 1rem * var(--rem-scale), 29.5375 * 1rem);
  display: block;
  width: clamp(40.6875 * 1rem, 58.125 * 1rem * var(--rem-scale), 98.8125 * 1rem);
  height: clamp(30.275 * 1rem, 43.25 * 1rem * var(--rem-scale), 73.525 * 1rem);
  background-image: url("../img/clinic-page/unit-swirl.png");
  background-repeat: no-repeat;
  background-size: contain;
}

.clinic-unit-cluster__photo {
  position: absolute;
  z-index: 1;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  box-shadow: 0 clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem) clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem) rgba(16, 53, 93, 0.12);
}

.clinic-unit-cluster__photo--1 {
  top: clamp(12.95 * 1rem, 18.5 * 1rem * var(--rem-scale), 31.45 * 1rem);
  left: clamp(15.00625 * 1rem, 21.4375 * 1rem * var(--rem-scale), 36.44375 * 1rem);
  width: clamp(14.65625 * 1rem, 20.9375 * 1rem * var(--rem-scale), 35.59375 * 1rem);
  aspect-ratio: 335/240;
}

.clinic-unit-cluster__photo--2 {
  top: clamp(15.225 * 1rem, 21.75 * 1rem * var(--rem-scale), 36.975 * 1rem);
  left: clamp(33.5125 * 1rem, 47.875 * 1rem * var(--rem-scale), 81.3875 * 1rem);
  width: clamp(14.65625 * 1rem, 20.9375 * 1rem * var(--rem-scale), 35.59375 * 1rem);
  aspect-ratio: 335/240;
}

.clinic-unit-cluster__photo--3 {
  top: clamp(27.7375 * 1rem, 39.625 * 1rem * var(--rem-scale), 67.3625 * 1rem);
  left: clamp(15.00625 * 1rem, 21.4375 * 1rem * var(--rem-scale), 36.44375 * 1rem);
  width: clamp(14.65625 * 1rem, 20.9375 * 1rem * var(--rem-scale), 35.59375 * 1rem);
  aspect-ratio: 335/240;
}

.clinic-unit-cluster__photo--4 {
  top: clamp(0 * 1rem, 0 * 1rem * var(--rem-scale), 0 * 1rem);
  left: clamp(33.5125 * 1rem, 47.875 * 1rem * var(--rem-scale), 81.3875 * 1rem);
  width: clamp(14.65625 * 1rem, 20.9375 * 1rem * var(--rem-scale), 35.59375 * 1rem);
  aspect-ratio: 335/240;
}

/* --- アメニティ一覧（授乳室／子ども用トイレ／オムツ替え／ガチャガチャ） ------------------------------------------------ */

.clinic-amenity {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  -moz-column-gap: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
       column-gap: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
  row-gap: clamp(2.0125 * 1rem, 2.875 * 1rem * var(--rem-scale), 4.8875 * 1rem);
}

.clinic-amenity__item {
  display: flex;
  align-items: flex-start;
  gap: clamp(1.26875 * 1rem, 1.8125 * 1rem * var(--rem-scale), 3.08125 * 1rem);
}

.clinic-amenity__photo {
  flex-shrink: 0;
  width: clamp(11.8125 * 1rem, 16.875 * 1rem * var(--rem-scale), 28.6875 * 1rem);
  aspect-ratio: 270/219;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.clinic-amenity__body {
  flex: 1;
  min-width: 0;
}

.clinic-amenity__label {
  margin: 0;
}

.clinic-amenity__label .tag {
  display: inline-block;
  padding-block: 0;
  padding-inline: clamp(0.2625 * 1rem, 0.375 * 1rem * var(--rem-scale), 0.6375 * 1rem);
  font-size: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  line-height: 1.6;
}

.clinic-amenity__text {
  margin: clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem) 0 0;
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #fff;
  line-height: 1.8;
}

/* --- トレーニングルーム・セミナールーム（2カラム） ------------------------------------------------ */

.clinic-equip-pair {
  position: relative;
  z-index: 1;
  display: flex;
  gap: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
  margin-top: clamp(6.475 * 1rem, 9.25 * 1rem * var(--rem-scale), 15.725 * 1rem);
}

.clinic-equip-pair__item {
  display: flex;
  align-items: flex-start;
  flex: 1;
  min-width: 0;
  gap: clamp(1.1375 * 1rem, 1.625 * 1rem * var(--rem-scale), 2.7625 * 1rem);
}

.clinic-equip-pair__photo {
  flex-shrink: 0;
  width: clamp(11.8125 * 1rem, 16.875 * 1rem * var(--rem-scale), 28.6875 * 1rem);
  aspect-ratio: 270/219;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.clinic-equip-pair__body {
  flex: 1;
  min-width: 0;
}

.clinic-equip-pair__label {
  margin: 0;
}

.clinic-equip-pair__text {
  margin: clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem) 0 0;
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 1.8;
}

/* --- 設備一覧（9項目・縦積み） ------------------------------------------------ */

.clinic-equip-list {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 0;
  margin-top: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
}

.clinic-equip-list::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  background-image: radial-gradient(circle closest-side, #145aa6 0 54%, transparent 100%);
  background-repeat: repeat-x;
  height: clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem);
  background-size: clamp(0.35525 * 1rem, 0.5075 * 1rem * var(--rem-scale), 0.86275 * 1rem) clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem);
  background-position: calc(clamp(0.35525 * 1rem, 0.5075 * 1rem * var(--rem-scale), 0.86275 * 1rem) * -0.5) center;
}

.clinic-equip-list__item + .clinic-equip-list__item {
  position: relative;
}

.clinic-equip-list__item + .clinic-equip-list__item::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  background-image: radial-gradient(circle closest-side, #145aa6 0 54%, transparent 100%);
  background-repeat: repeat-x;
  height: clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem);
  background-size: clamp(0.35525 * 1rem, 0.5075 * 1rem * var(--rem-scale), 0.86275 * 1rem) clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem);
  background-position: calc(clamp(0.35525 * 1rem, 0.5075 * 1rem * var(--rem-scale), 0.86275 * 1rem) * -0.5) center;
}

.clinic-equip-list__item {
  display: flex;
  align-items: flex-start;
  gap: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  padding-block: clamp(2.0125 * 1rem, 2.875 * 1rem * var(--rem-scale), 4.8875 * 1rem);
  border-color: #145aa6;
}

.clinic-equip-list__photo {
  flex-shrink: 0;
  width: clamp(11.8125 * 1rem, 16.875 * 1rem * var(--rem-scale), 28.6875 * 1rem);
  aspect-ratio: 270/219;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.clinic-equip-list__body {
  flex: 1;
  min-width: 0;
}

.clinic-equip-list__label {
  margin: 0;
}

.clinic-equip-pair__label .tag,
.clinic-equip-list__label .tag {
  padding-block: clamp(0.065625 * 1rem, 0.09375 * 1rem * var(--rem-scale), 0.159375 * 1rem);
  padding-inline: clamp(0.2625 * 1rem, 0.375 * 1rem * var(--rem-scale), 0.6375 * 1rem);
  line-height: 1.6;
}

.clinic-equip-list__text {
  margin: clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem) 0 0;
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 1.8;
}

.clinic-equip-list__text + .clinic-equip-list__text {
  margin-top: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
}

/* ========================================
  予約・相談
======================================== */

.clinic-reserve {
  padding-block: clamp(7 * 1rem, 10 * 1rem * var(--rem-scale), 17 * 1rem);
}

/* ========================================
  スタッフ募集ページ（recruit）
======================================== */

/* --- 募集状況の告知 ------------------------------------------------ */

.recruit-notice {
  margin-top: clamp(6.125 * 1rem, 8.75 * 1rem * var(--rem-scale), 14.875 * 1rem);
}

.recruit-notice__text {
  width: 100%;
  max-width: clamp(30.0125 * 1rem, 42.875 * 1rem * var(--rem-scale), 72.8875 * 1rem);
  margin-inline: auto;
  padding: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem) clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  font-size: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  font-weight: 700;
  color: #e81e17;
  line-height: 1.5;
  text-align: center;
  border: clamp(0.04375 * 1rem, 0.0625 * 1rem * var(--rem-scale), 0.10625 * 1rem) solid #e81e17;
  border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
}

/* --- 三木歯科・小児歯科で一緒に働きませんか ------------------------------------------------ */

.recruit-join {
  margin-top: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
}

.recruit-join__row {
  position: relative;
  z-index: 0;
  margin-top: clamp(3.0625 * 1rem, 4.375 * 1rem * var(--rem-scale), 7.4375 * 1rem);
}

.recruit-join__band {
  position: absolute;
  z-index: -1;
  top: clamp(1.09375 * 1rem, 1.5625 * 1rem * var(--rem-scale), 2.65625 * 1rem);
  left: 0;
  display: block;
  right: max(calc(50% + clamp(0.91875 * 1rem, 1.3125 * 1rem * var(--rem-scale), 2.23125 * 1rem)), clamp(25.41875 * 1rem, 36.3125 * 1rem * var(--rem-scale), 61.73125 * 1rem));
  height: clamp(17.325 * 1rem, 24.75 * 1rem * var(--rem-scale), 42.075 * 1rem);
  background-color: #145aa6;
  border-radius: 0 clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem) clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem) 0;
}

.recruit-join__inner {
  display: flex;
  align-items: flex-start;
  gap: clamp(2.275 * 1rem, 3.25 * 1rem * var(--rem-scale), 5.525 * 1rem);
}

.recruit-join__photo {
  flex-shrink: 0;
  width: clamp(24.0625 * 1rem, 34.375 * 1rem * var(--rem-scale), 58.4375 * 1rem);
  aspect-ratio: 550/385;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.recruit-join__body {
  flex: 1;
}

.recruit-join__lead {
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 2;
}

.recruit-join__status {
  margin-top: clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem);
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 2;
}

.recruit-join__tel {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-top: clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem);
  padding: clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem) clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 700;
  color: #10355d;
  line-height: 2;
  border: clamp(0.04375 * 1rem, 0.0625 * 1rem * var(--rem-scale), 0.10625 * 1rem) solid #10355d;
  border-radius: clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem);
}

.recruit-join__tel:focus-visible {
  outline: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem) solid #145aa6;
  outline-offset: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem);
}

/* --- 三木歯科・小児歯科の魅力 ------------------------------------------------ */

.recruit-charm {
  position: relative;
  z-index: 0;
  padding-top: clamp(8.575 * 1rem, 12.25 * 1rem * var(--rem-scale), 20.825 * 1rem);
}

.recruit-charm__title {
  margin-bottom: clamp(3.0625 * 1rem, 4.375 * 1rem * var(--rem-scale), 7.4375 * 1rem);
}

.recruit-charm__list {
  display: flex;
  flex-direction: column;
  gap: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
}

.recruit-charm__item {
  position: relative;
  z-index: 0;
  padding-bottom: clamp(4.2 * 1rem, 6 * 1rem * var(--rem-scale), 10.2 * 1rem);
}

.recruit-charm__item:last-of-type {
  padding-bottom: clamp(1.88125 * 1rem, 2.6875 * 1rem * var(--rem-scale), 4.56875 * 1rem);
}

.recruit-charm__item::before {
  content: "";
  position: absolute;
  z-index: -2;
  top: clamp(1.53125 * 1rem, 2.1875 * 1rem * var(--rem-scale), 3.71875 * 1rem);
  left: 0;
  max-width: 100%;
  width: calc(50% + clamp(18.9 * 1rem, 27 * 1rem * var(--rem-scale), 45.9 * 1rem));
  height: clamp(17.98125 * 1rem, 25.6875 * 1rem * var(--rem-scale), 43.66875 * 1rem);
  background-color: #f2f2f2;
  background-image: url("../img/common/texture-gray.png");
  background-repeat: repeat;
  border-radius: 0 clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem) clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem) 0;
}

.recruit-charm__item::after {
  content: "";
  position: absolute;
  z-index: -1;
  top: clamp(3.0625 * 1rem, 4.375 * 1rem * var(--rem-scale), 7.4375 * 1rem);
  right: 0;
  left: max(clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem), calc(50% - clamp(23.7125 * 1rem, 33.875 * 1rem * var(--rem-scale), 57.5875 * 1rem)));
  height: calc(100% - clamp(3.0625 * 1rem, 4.375 * 1rem * var(--rem-scale), 7.4375 * 1rem));
  background-color: #145aa6;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem) 0 0 clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.recruit-charm__item--reverse::before {
  right: 0;
  left: auto;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem) 0 0 clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.recruit-charm__item--reverse::after {
  right: max(clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem), calc(50% - clamp(23.7125 * 1rem, 33.875 * 1rem * var(--rem-scale), 57.5875 * 1rem)));
  left: 0;
  border-radius: 0 clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem) clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem) 0;
}

.recruit-charm__inner {
  display: flex;
  flex-direction: row-reverse;
  align-items: flex-start;
  justify-content: space-between;
  gap: clamp(1.96875 * 1rem, 2.8125 * 1rem * var(--rem-scale), 4.78125 * 1rem);
}

.recruit-charm__item--reverse .recruit-charm__body {
  margin-inline: 0 clamp(2.275 * 1rem, 3.25 * 1rem * var(--rem-scale), 5.525 * 1rem);
}

.recruit-charm__item--reverse .recruit-charm__inner {
  flex-direction: row;
}

.recruit-charm__photo {
  flex-shrink: 0;
  width: clamp(23.1875 * 1rem, 33.125 * 1rem * var(--rem-scale), 56.3125 * 1rem);
  aspect-ratio: 530/376;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.recruit-charm__body {
  position: relative;
  z-index: 1;
  flex: 1;
  max-width: clamp(19.075 * 1rem, 27.25 * 1rem * var(--rem-scale), 46.325 * 1rem);
  margin-top: clamp(5.46875 * 1rem, 7.8125 * 1rem * var(--rem-scale), 13.28125 * 1rem);
  margin-left: clamp(2.275 * 1rem, 3.25 * 1rem * var(--rem-scale), 5.525 * 1rem);
  padding: 0;
}

.recruit-charm__item:last-of-type .recruit-charm__body {
  max-width: clamp(20.65 * 1rem, 29.5 * 1rem * var(--rem-scale), 50.15 * 1rem);
}

.recruit-charm__item:last-of-type .recruit-charm__inner {
  gap: clamp(1.1375 * 1rem, 1.625 * 1rem * var(--rem-scale), 2.7625 * 1rem);
}

.recruit-charm__label {
  display: inline;
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
  margin-bottom: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  padding: clamp(0.30625 * 1rem, 0.4375 * 1rem * var(--rem-scale), 0.74375 * 1rem) clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
  font-weight: 700;
  color: #10355d;
  line-height: 2.2;
  background-color: #fff;
  border-radius: clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem);
}

.recruit-charm__label + .recruit-charm__text {
  margin-top: clamp(1.225 * 1rem, 1.75 * 1rem * var(--rem-scale), 2.975 * 1rem);
}

.recruit-charm__text {
  font-size: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
  font-weight: 400;
  color: #fff;
  line-height: 2;
}

.recruit-charm__text + .recruit-charm__text {
  margin-top: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.recruit-charm__perks {
  display: flex;
  flex-direction: column;
  gap: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem);
  margin-top: clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem);
}

.recruit-charm__perk {
  position: relative;
  padding-left: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
  font-size: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
  font-weight: 400;
  color: #fff;
  line-height: 2;
}

.recruit-charm__perk::before {
  content: "";
  position: absolute;
  top: clamp(0.56875 * 1rem, 0.8125 * 1rem * var(--rem-scale), 1.38125 * 1rem);
  left: 0;
  width: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  height: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  background-color: #fff;
  border-radius: 50%;
}

.recruit-charm__perks + .recruit-charm__text {
  margin-top: clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem);
}

/* --- 募集要項 ------------------------------------------------ */

.recruit-requirements {
  padding-top: clamp(7 * 1rem, 10 * 1rem * var(--rem-scale), 17 * 1rem);
}

.recruit-requirements__table {
  width: 100%;
  max-width: clamp(39.375 * 1rem, 56.25 * 1rem * var(--rem-scale), 95.625 * 1rem);
  margin-top: clamp(3.0625 * 1rem, 4.375 * 1rem * var(--rem-scale), 7.4375 * 1rem);
  margin-inline: auto;
  border-collapse: collapse;
}

.recruit-requirements__table tr {
  display: flex;
  padding: clamp(1.225 * 1rem, 1.75 * 1rem * var(--rem-scale), 2.975 * 1rem) clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem) clamp(1.225 * 1rem, 1.75 * 1rem * var(--rem-scale), 2.975 * 1rem);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 7 2'%3E%3Ccircle cx='1' cy='1' r='1' fill='rgb(20,90,166)'/%3E%3C/svg%3E");
  background-position: left bottom;
  background-size: clamp(0.30625 * 1rem, 0.4375 * 1rem * var(--rem-scale), 0.74375 * 1rem) clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem);
  background-repeat: repeat-x;
}

.recruit-requirements__table th {
  flex: 0 0 clamp(10.9375 * 1rem, 15.625 * 1rem * var(--rem-scale), 26.5625 * 1rem);
  padding-right: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
  font-weight: 700;
  color: #10355d;
  line-height: 1.8;
  letter-spacing: 0.05em;
  text-align: left;
}

.recruit-requirements__table td {
  flex: 1;
  min-width: 0;
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 1.8;
  letter-spacing: 0.05em;
}

.recruit-requirements__sub {
  display: block;
  padding-left: 1em;
  text-indent: -1em;
}

/* --- 求人用CTA ------------------------------------------------ */

.recruit-requirements + .recruit-cta {
  margin-top: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
}

.recruit-voice + .recruit-cta {
  margin-block: clamp(7 * 1rem, 10 * 1rem * var(--rem-scale), 17 * 1rem);
}

.recruit-cta__inner {
  width: 100%;
  max-width: clamp(39.375 * 1rem, 56.25 * 1rem * var(--rem-scale), 95.625 * 1rem);
  padding: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem) clamp(2.625 * 1rem, 3.75 * 1rem * var(--rem-scale), 6.375 * 1rem) clamp(1.4875 * 1rem, 2.125 * 1rem * var(--rem-scale), 3.6125 * 1rem);
  margin-inline: auto;
  background-color: #fff;
  border-radius: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
}

.recruit-cta__lead {
  font-size: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  font-weight: 500;
  color: #10355d;
  line-height: 1.8;
  text-align: center;
}

.recruit-cta__tel {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(0.30625 * 1rem, 0.4375 * 1rem * var(--rem-scale), 0.74375 * 1rem);
  margin-top: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
}

.recruit-cta__tel:focus-visible {
  outline: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem) solid #145aa6;
  outline-offset: clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem);
}

.recruit-cta__hours {
  margin-top: clamp(0.30625 * 1rem, 0.4375 * 1rem * var(--rem-scale), 0.74375 * 1rem);
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 500;
  color: #10355d;
  line-height: 1.2;
  text-align: center;
}

/* --- 働くスタッフの声 ------------------------------------------------ */

.recruit-voice {
  padding-top: clamp(7 * 1rem, 10 * 1rem * var(--rem-scale), 17 * 1rem);
}

.recruit-voice__title {
  margin-bottom: clamp(2.31875 * 1rem, 3.3125 * 1rem * var(--rem-scale), 5.63125 * 1rem);
}

.recruit-voice__list {
  display: flex;
  flex-direction: column;
  gap: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
}

.recruit-voice__question {
  width: 100%;
  padding: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem) clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem) clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  font-weight: 700;
  color: #fff;
  line-height: 1.45;
  text-align: center;
  background-color: #145aa6;
  border-radius: clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem);
}

.recruit-voice__answers {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: clamp(1.225 * 1rem, 1.75 * 1rem * var(--rem-scale), 2.975 * 1rem);
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

.recruit-voice__answers--three {
  grid-template-columns: repeat(3, 1fr);
}

.recruit-voice__card {
  display: flex;
  flex-direction: column;
  gap: clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
  padding: clamp(0.9625 * 1rem, 1.375 * 1rem * var(--rem-scale), 2.3375 * 1rem);
  background-color: #fff;
  border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
}

.recruit-voice__text {
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 1.8;
}

.recruit-voice__person {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem);
  margin-top: auto;
  padding-right: clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
}

.recruit-voice__name {
  margin-block: auto clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 700;
  color: #10355d;
  line-height: 1.2;
}

.recruit-voice__avatar {
  flex-shrink: 0;
  width: clamp(3.7625 * 1rem, 5.375 * 1rem * var(--rem-scale), 9.1375 * 1rem);
  height: clamp(3.7625 * 1rem, 5.375 * 1rem * var(--rem-scale), 9.1375 * 1rem);
  border-radius: 50%;
}

/* ========================================
  料金ページ
======================================== */

/* --- 料金表 目次 ------------------------------------------------ */

.price-toc {
  margin-top: clamp(6.16875 * 1rem, 8.8125 * 1rem * var(--rem-scale), 14.98125 * 1rem);
}

.price-toc__inner {
  border-color: #145aa6;
}

.price-toc__group + .price-toc__group {
  margin-top: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
}

.price-toc__divider {
  display: block;
  margin-top: clamp(4.15625 * 1rem, 5.9375 * 1rem * var(--rem-scale), 10.09375 * 1rem);
  background-image: radial-gradient(circle closest-side, #145aa6 0 54%, transparent 100%);
  background-repeat: repeat-x;
  height: clamp(0.21875 * 1rem, 0.3125 * 1rem * var(--rem-scale), 0.53125 * 1rem);
  background-size: clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem) clamp(0.21875 * 1rem, 0.3125 * 1rem * var(--rem-scale), 0.53125 * 1rem);
  background-position: calc(clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem) * -0.5) center;
}

.price-toc__list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, clamp(14.4375 * 1rem, 20.625 * 1rem * var(--rem-scale), 35.0625 * 1rem)));
  align-items: start;
  -moz-column-gap: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
       column-gap: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
  row-gap: clamp(0.9625 * 1rem, 1.375 * 1rem * var(--rem-scale), 2.3375 * 1rem);
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

.price-toc__link {
  display: flex;
  align-items: flex-start;
  gap: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
  font-weight: 700;
  color: #10355d;
  line-height: 1.2;
}

.price-toc__link:focus-visible {
  outline: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem) solid #145aa6;
  outline-offset: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem);
}

/* --- 見出し帯（お支払い方法／一般歯科／小児歯科／保証制度・目次ラベル共通） ------------------------------------------------ */

.price-band {
  padding: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem) clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem);
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(1.225 * 1rem, 1.75 * 1rem * var(--rem-scale), 2.975 * 1rem);
  font-weight: 700;
  color: #fff;
  line-height: 1.2;
  background-color: #145aa6;
  border-radius: clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem);
}

/* --- お支払い方法 ------------------------------------------------ */

.price-payment {
  margin-top: clamp(5.25 * 1rem, 7.5 * 1rem * var(--rem-scale), 12.75 * 1rem);
}

.price-payment__text {
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

/* --- 一般歯科／小児歯科 ------------------------------------------------ */

.price-category {
  margin-top: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
}

.price-table-block {
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

.price-table-block__head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  padding: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem) clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
  border-bottom: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem) solid;
  border-color: #145aa6;
}

.price-table-block__title {
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  font-weight: 700;
  color: #145aa6;
  line-height: 1.8;
}

.price-table-block__title--band {
  padding: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem) clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
  margin-bottom: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  border-bottom: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem) solid;
  border-color: #145aa6;
}

.price-table-block__badge {
  flex-shrink: 0;
  font-size: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
  font-weight: 500;
  color: #145aa6;
  line-height: 1.8;
}

.price-table-block__note {
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

.price-table-block__note--mark {
  padding-left: clamp(1.00625 * 1rem, 1.4375 * 1rem * var(--rem-scale), 2.44375 * 1rem);
  text-indent: calc(clamp(1.00625 * 1rem, 1.4375 * 1rem * var(--rem-scale), 2.44375 * 1rem) * -1);
}

.price-table-block__list {
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

.price-table-block__list-title {
  padding-inline: clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem);
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  font-weight: 700;
  color: #10355d;
  line-height: 1.8;
  background-color: #dce3ea;
  border-radius: clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem);
}

.price-table-block__list-note {
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
}

/* --- 料金テーブル ------------------------------------------------ */

.price-table {
  width: 100%;
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  background-color: #fff;
  border: clamp(0.04375 * 1rem, 0.0625 * 1rem * var(--rem-scale), 0.10625 * 1rem) solid #145aa6;
  border-radius: clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem);
  border-collapse: separate;
  border-spacing: 0;
  table-layout: fixed;
}

.price-table__name,
.price-table__desc,
.price-table__price {
  padding: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #145aa6;
  line-height: 1.8;
  text-align: left;
  vertical-align: top;
  border-right: clamp(0.04375 * 1rem, 0.0625 * 1rem * var(--rem-scale), 0.10625 * 1rem) solid #145aa6;
  border-bottom: clamp(0.04375 * 1rem, 0.0625 * 1rem * var(--rem-scale), 0.10625 * 1rem) solid #145aa6;
}

.price-table__col--name {
  width: 24.07%;
}

.price-table__col--desc {
  width: 41.67%;
}

.price-table__col--price {
  width: 34.26%;
}

.price-table__name {
  background-color: rgba(216, 236, 253, 0.81);
}

.price-table tr > :last-child {
  border-right: 0;
}

.price-table tbody tr:last-child > * {
  border-bottom: 0;
}

.price-table tbody tr:first-child > :first-child {
  border-top-left-radius: clamp(0.13125 * 1rem, 0.1875 * 1rem * var(--rem-scale), 0.31875 * 1rem);
}

.price-table tbody tr:last-child > :first-child {
  border-bottom-left-radius: clamp(0.13125 * 1rem, 0.1875 * 1rem * var(--rem-scale), 0.31875 * 1rem);
}

.price-table-block__group-title {
  width: 100%;
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  padding-inline: clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem);
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
  font-weight: 700;
  color: #10355d;
  line-height: 1.8;
  text-align: left;
  background-color: #dce3ea;
  border-radius: clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem);
}

.price-table__mark {
  font-size: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  color: #e81e17;
  vertical-align: text-top;
}

#implant .price-table__mark {
  color: #145aa6;
}

.price-table__row--tall {
  height: clamp(3.5 * 1rem, 5 * 1rem * var(--rem-scale), 8.5 * 1rem);
}

/* --- チェックリスト（表の補足・保証条件） ------------------------------------------------ */

.price-check-list {
  display: flex;
  flex-direction: column;
  gap: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  margin-top: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
}

.price-check-list--wide {
  gap: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
}

.price-check-list__item {
  display: flex;
  align-items: center;
  gap: clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 700;
  color: #10355d;
  line-height: 1.8;
}

/* --- 保証制度 ------------------------------------------------ */

.price-warranty {
  margin-top: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
}

.price-warranty__intro {
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

.price-warranty__block {
  margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
}

.price-warranty__tier {
  margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
}

.price-warranty__tier-title {
  padding-inline: clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem);
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  font-weight: 700;
  color: #10355d;
  line-height: 1.8;
  background-color: #dce3ea;
  border-radius: clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem);
}

.price-warranty__tier-text {
  margin-top: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 1.8;
}

.price-warranty__note {
  padding-left: 1.5em;
  text-indent: -1.5em;
  margin-top: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
  font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  font-weight: 400;
  color: #10355d;
  line-height: 1.8;
}

.price-warranty__note--plain {
  padding-left: 0;
  text-indent: 0;
}

/* ========================================
  予約・相談
======================================== */

.price-reserve {
  padding-block: clamp(7 * 1rem, 10 * 1rem * var(--rem-scale), 17 * 1rem);
}

.price-note-mark {
  color: #145aa6;
}

.price-note-mark--alert {
  color: #e81e17;
}

.price-check-list__item--plain {
  font-weight: 400;
}

.price-check-list__item--regular {
  font-weight: 400;
}

@media screen and (min-width: 820px) {
  .hours__label {
    margin-left: calc(50% - clamp(17.0625 * 1rem, 24.375 * 1rem * var(--rem-scale), 41.4375 * 1rem));
  }
}

@media screen and (max-width: 1266px) {
  .pediatric-specialist__narrow {
    max-width: 67%;
  }

  .pediatric-specialist__note {
    max-width: 67%;
  }
}

@media screen and (max-width: 1120px) {
  .pediatric-menu__inner {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: clamp(1.09375 * 1rem, 1.5625 * 1rem * var(--rem-scale), 2.65625 * 1rem);
  }

  .pediatric-menu__row {
    display: contents;
  }

  .pediatric-menu__item {
    max-width: none;
  }

  .clinic-room__body {
    flex: 0 0 clamp(19.25 * 1rem, 27.5 * 1rem * var(--rem-scale), 46.75 * 1rem);
  }

  .clinic-room__photo {
    flex-shrink: 1;
    min-width: 0;
  }

  .clinic-room__cluster {
    flex-shrink: 1;
    min-width: 0;
  }

  .recruit-join__photo {
    flex-shrink: 1;
    min-width: 0;
  }

  .recruit-join__body {
    flex: 0 0 clamp(20.9125 * 1rem, 29.875 * 1rem * var(--rem-scale), 50.7875 * 1rem);
    min-width: 0;
  }

  .recruit-charm__photo {
    flex-shrink: 1;
    min-width: 0;
  }

  .recruit-charm__body {
    flex: 0 0 clamp(19.075 * 1rem, 27.25 * 1rem * var(--rem-scale), 46.325 * 1rem);
    min-width: 0;
  }
}

@media screen and (max-width: 1110px) {
  .header__contents {
    display: none;
  }

  .header__hamburger {
    display: block;
  }

  .drawer {
    display: flex;
  }
}

@media screen and (max-width: 1060px) {
  .pedprev-flow {
    flex-direction: column;
    align-items: center;
    gap: clamp(3.10625 * 1rem, 4.4375 * 1rem * var(--rem-scale), 7.54375 * 1rem);
    padding: clamp(2.31875 * 1rem, 3.3125 * 1rem * var(--rem-scale), 5.63125 * 1rem) clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem) clamp(2.625 * 1rem, 3.75 * 1rem * var(--rem-scale), 6.375 * 1rem);
  }

  .pedprev-flow__item:not(:last-child)::after {
    top: 100%;
    left: 50%;
    width: clamp(4.725 * 1rem, 6.75 * 1rem * var(--rem-scale), 11.475 * 1rem);
    height: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
    margin-left: 0;
    background-image: url("../img/pedprev/arrow-sp.svg");
    transform: translateX(-50%) rotate(180deg);
  }
}

@media screen and (max-width: 1024px) {
  .tab-none {
    display: none;
  }

  .tab-show {
    display: block;
  }

  .pedprev-flow__caption {
    max-width: 100%;
    margin-inline: clamp(0px, calc(100% - clamp(9.625 * 1rem, 13.75 * 1rem * var(--rem-scale), 23.375 * 1rem)), clamp(4.9 * 1rem, 7 * 1rem * var(--rem-scale), 11.9 * 1rem)) 0;
  }

  .spacer-flow {
    flex-direction: column;
    align-items: center;
    gap: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .spacer-flow__figure {
    width: 100%;
    max-width: clamp(13.5625 * 1rem, 19.375 * 1rem * var(--rem-scale), 32.9375 * 1rem);
    margin-inline: auto;
  }

  .spacer-flow--device {
    gap: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .spacer-flow__figure--lg {
    max-width: clamp(17.9375 * 1rem, 25.625 * 1rem * var(--rem-scale), 43.5625 * 1rem);
  }

  .spacer-flow__text {
    width: 100%;
  }

  .spacer-arrow {
    width: clamp(4.1794375 * 1rem, 5.970625 * 1rem * var(--rem-scale), 10.1500625 * 1rem);
    height: clamp(1.3645625 * 1rem, 1.949375 * 1rem * var(--rem-scale), 3.3139375 * 1rem);
    margin-top: 0;
    -webkit-margin-end: 0;
            margin-inline-end: 0;
  }

  .spacer-arrow--lg {
    margin-top: 0;
  }

  .spacer-arrow__shape {
    width: clamp(3.6203125 * 1rem, 5.171875 * 1rem * var(--rem-scale), 8.7921875 * 1rem);
    height: clamp(1.02375 * 1rem, 1.4625 * 1rem * var(--rem-scale), 2.48625 * 1rem);
    -webkit-margin-start: 0;
            margin-inline-start: 0;
    -webkit-margin-before: auto;
            margin-block-start: auto;
    transform: rotate(180deg);
  }
}

@media screen and (max-width: 1020px) {
  .clinic-amenity {
    grid-template-columns: 1fr;
    row-gap: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  }

  .clinic-equip-pair {
    flex-direction: column;
    gap: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  }
}

@media screen and (max-width: 970px) {
  .pediatric-fun__list {
    grid-template-columns: 1fr;
    row-gap: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
    max-width: clamp(22.75 * 1rem, 32.5 * 1rem * var(--rem-scale), 55.25 * 1rem);
    margin-inline: auto;
  }

  .pediatric-fun__item {
    flex-direction: column;
    align-items: center;
    gap: clamp(1.44375 * 1rem, 2.0625 * 1rem * var(--rem-scale), 3.50625 * 1rem);
  }
}

@media screen and (max-width: 880px) {
  .pediatric-menu__inner {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media screen and (max-width: 840px) {
  .pediatric-course__list {
    flex-direction: column;
    gap: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  }

  .pediatric-course__item {
    display: grid;
    grid-template-columns: auto 1fr;
    -moz-column-gap: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
         column-gap: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
    row-gap: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
    padding: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem) clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
  }

  .pediatric-course__body {
    display: contents;
  }

  .pediatric-course__text {
    grid-column: 1/-1;
    margin-top: 0;
    line-height: 2;
  }
}

@media screen and (max-width: 820px) {
  .footer__nav {
    gap: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
  }
}

@media screen and (max-width: 768px) {
  html {
    scroll-padding-top: calc(var(--header-h, clamp(60.2px, 22.9333333333vw, 146.2px)) + 16px);
  }

  .main {
    --rem-scale: calc(100cqi / 375px);
  }

  a[href^="tel:"] {
    pointer-events: auto;
  }

  .is-fv-opening .top-fv {
    height: max(100dvh, clamp(34.7375 * 1rem, 49.625 * 1rem * var(--rem-scale), 84.3625 * 1rem));
    margin-bottom: min(0px, clamp(34.7375 * 1rem, 49.625 * 1rem * var(--rem-scale), 84.3625 * 1rem) - 100dvh);
  }

  .is-fv-opening .top-fv__watermark {
    animation-name: fv-open-watermark-sp;
  }

  .is-fv-opening .top-fv__catch-line {
    display: block;
  }

  .inner {
    padding-inline: clamp(0.65625 * 1rem, 0.9375 * 1rem * var(--rem-scale), 1.59375 * 1rem);
  }

  .heading-lg {
    font-size: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  }

  .icon-chevron {
    width: clamp(0.3383625 * 1rem, 0.483375 * 1rem * var(--rem-scale), 0.8217375 * 1rem);
    height: clamp(0.21756875 * 1rem, 0.3108125 * 1rem * var(--rem-scale), 0.52838125 * 1rem);
  }

  .br-sp {
    display: inline;
  }

  .sp-none {
    display: none;
  }

  .sp-show {
    display: block;
  }

  .logo {
    width: clamp(8.6625 * 1rem, 12.375 * 1rem * var(--rem-scale), 21.0375 * 1rem);
    height: clamp(1.96875 * 1rem, 2.8125 * 1rem * var(--rem-scale), 4.78125 * 1rem);
    border-radius: clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem);
  }

  .logo--footer {
    width: clamp(11.50625 * 1rem, 16.4375 * 1rem * var(--rem-scale), 27.94375 * 1rem);
    height: clamp(2.58125 * 1rem, 3.6875 * 1rem * var(--rem-scale), 6.26875 * 1rem);
    border-radius: clamp(0.30625 * 1rem, 0.4375 * 1rem * var(--rem-scale), 0.74375 * 1rem);
  }

  .badge-list {
    justify-content: center;
    gap: clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
  }

  .badge {
    font-size: clamp(0.48125 * 1rem, 0.6875 * 1rem * var(--rem-scale), 1.16875 * 1rem);
  }

  .tag--light {
    line-height: 2.61;
  }

  .tag--fill {
    padding-block: clamp(0.30625 * 1rem, 0.4375 * 1rem * var(--rem-scale), 0.74375 * 1rem);
    line-height: 2.45;
  }

  .tag--lg {
    padding-block: clamp(0.30625 * 1rem, 0.4375 * 1rem * var(--rem-scale), 0.74375 * 1rem);
    line-height: 2.45;
  }

  .section-title {
    font-size: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  }

  .heading-band {
    height: auto;
    padding: clamp(0.21875 * 1rem, 0.3125 * 1rem * var(--rem-scale), 0.53125 * 1rem) clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) clamp(0.30625 * 1rem, 0.4375 * 1rem * var(--rem-scale), 0.74375 * 1rem);
    font-size: clamp(0.9625 * 1rem, 1.375 * 1rem * var(--rem-scale), 2.3375 * 1rem);
  }

  .heading-sub {
    padding: clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem) clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
    font-size: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
  }

  .more {
    gap: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .more__text {
    font-size: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
  }

  .more__icon {
    width: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
    height: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
  }

  .more--light {
    gap: clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
  }

  .more--light[data-size=lg] {
    gap: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .more--light[data-size=lg] .more__text {
    font-size: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
  }

  .more--light[data-size=lg] .more__icon {
    width: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
    height: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
  }

  .btn {
    gap: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
    padding: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
  }

  .cta {
    flex-direction: column;
    align-items: center;
    gap: clamp(0.83125 * 1rem, 1.1875 * 1rem * var(--rem-scale), 2.01875 * 1rem);
    max-width: clamp(14.4375 * 1rem, 20.625 * 1rem * var(--rem-scale), 35.0625 * 1rem);
    padding: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem) clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .cta__mark {
    width: clamp(2.975 * 1rem, 4.25 * 1rem * var(--rem-scale), 7.225 * 1rem);
    height: clamp(2.975 * 1rem, 4.25 * 1rem * var(--rem-scale), 7.225 * 1rem);
  }

  .cta__body {
    width: 100%;
  }

  .cta__lead {
    font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
    text-align: center;
  }

  .cta__tel {
    justify-content: center;
    gap: clamp(0.39375 * 1rem, 0.5625 * 1rem * var(--rem-scale), 0.95625 * 1rem);
    margin-top: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  }

  .cta__tel-icon {
    width: clamp(1.1375 * 1rem, 1.625 * 1rem * var(--rem-scale), 2.7625 * 1rem);
    height: clamp(1.1375 * 1rem, 1.625 * 1rem * var(--rem-scale), 2.7625 * 1rem);
  }

  .cta__tel-number {
    font-size: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  }

  .cta__hours {
    max-width: -moz-fit-content;
    max-width: fit-content;
    margin-top: clamp(0.21875 * 1rem, 0.3125 * 1rem * var(--rem-scale), 0.53125 * 1rem);
    margin-inline: auto;
    font-size: clamp(0.48125 * 1rem, 0.6875 * 1rem * var(--rem-scale), 1.16875 * 1rem);
    text-align: left;
  }

  .cta__hours-label {
    display: block;
    font-size: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
    line-height: 1.4;
  }

  .cta__hours-time {
    display: block;
    margin-top: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem);
    font-size: clamp(0.48125 * 1rem, 0.6875 * 1rem * var(--rem-scale), 1.16875 * 1rem);
    line-height: 1.4;
  }

  .cta__hours-note {
    display: block;
    font-size: clamp(0.48125 * 1rem, 0.6875 * 1rem * var(--rem-scale), 1.16875 * 1rem);
    line-height: 1.4;
  }

  .side-nav {
    display: none;
  }

  .sp-cta {
    --rem-scale: calc(100cqi / 375px);
    display: block;
    visibility: hidden;
    transform: translateY(100%);
    transition: transform 0.3s, visibility 0.3s;
  }

  .sp-cta.is-visible {
    visibility: visible;
    transform: translateY(0);
  }

  .page-head {
    height: clamp(10.5875 * 1rem, 15.125 * 1rem * var(--rem-scale), 25.7125 * 1rem);
  }

  .page-head__bg {
    top: calc(clamp(15.61875 * 1rem, 22.3125 * 1rem * var(--rem-scale), 37.93125 * 1rem) * -1);
    width: clamp(38.0625 * 1rem, 54.375 * 1rem * var(--rem-scale), 92.4375 * 1rem);
  }

  .page-head__watermark {
    top: clamp(14.6125 * 1rem, 20.875 * 1rem * var(--rem-scale), 35.4875 * 1rem);
    left: clamp(11.965625 * 1rem, 17.09375 * 1rem * var(--rem-scale), 29.059375 * 1rem);
    width: clamp(14.0875 * 1rem, 20.125 * 1rem * var(--rem-scale), 34.2125 * 1rem);
    height: clamp(14.0875 * 1rem, 20.125 * 1rem * var(--rem-scale), 34.2125 * 1rem);
  }

  .page-head__title {
    max-width: clamp(12.25 * 1rem, 17.5 * 1rem * var(--rem-scale), 29.75 * 1rem);
    margin-inline: auto;
    padding-top: clamp(5.55625 * 1rem, 7.9375 * 1rem * var(--rem-scale), 13.49375 * 1rem);
    font-size: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  }

  .breadcrumb {
    padding-top: clamp(0.39375 * 1rem, 0.5625 * 1rem * var(--rem-scale), 0.95625 * 1rem);
  }

  .breadcrumb__list {
    font-size: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .breadcrumb__item {
    font-size: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .error-404 {
    padding-block: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem) clamp(2.625 * 1rem, 3.75 * 1rem * var(--rem-scale), 6.375 * 1rem);
  }

  .header {
    --rem-scale: calc(100cqi / 375px);
    height: clamp(3.7625 * 1rem, 5.375 * 1rem * var(--rem-scale), 9.1375 * 1rem);
  }

  .header__bar {
    width: auto;
    max-width: none;
    height: clamp(3.0625 * 1rem, 4.375 * 1rem * var(--rem-scale), 7.4375 * 1rem);
    margin-top: clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
    margin-inline: clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
    padding-inline: clamp(0.65625 * 1rem, 0.9375 * 1rem * var(--rem-scale), 1.59375 * 1rem) clamp(0.30625 * 1rem, 0.4375 * 1rem * var(--rem-scale), 0.74375 * 1rem);
    border-radius: clamp(0.2625 * 1rem, 0.375 * 1rem * var(--rem-scale), 0.6375 * 1rem);
  }

  .drawer {
    --rem-scale: calc(100cqi / 375px);
  }

  .footer {
    background-image: -webkit-image-set(url("../img/footer/footer-sp.webp") type("image/webp"), url("../img/footer/footer-sp.jpg") type("image/jpeg"));
    background-image: image-set(url("../img/footer/footer-sp.webp") type("image/webp"), url("../img/footer/footer-sp.jpg") type("image/jpeg"));
  }

  .footer {
    --rem-scale: calc(100cqi / 375px);
    padding-block: clamp(3.5 * 1rem, 5 * 1rem * var(--rem-scale), 8.5 * 1rem) clamp(2.5375 * 1rem, 3.625 * 1rem * var(--rem-scale), 6.1625 * 1rem);
  }

  .footer__inner {
    display: block;
    padding-inline: clamp(0.65625 * 1rem, 0.9375 * 1rem * var(--rem-scale), 1.59375 * 1rem);
  }

  .footer__info {
    width: 100%;
  }

  .footer__address {
    margin-top: clamp(1.18125 * 1rem, 1.6875 * 1rem * var(--rem-scale), 2.86875 * 1rem);
  }

  .footer__address-main {
    font-size: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
  }

  .footer__address-main + .footer__address-sub {
    margin-top: clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem);
  }

  .footer__access {
    margin-top: clamp(1.00625 * 1rem, 1.4375 * 1rem * var(--rem-scale), 2.44375 * 1rem);
    margin-left: clamp(0.21875 * 1rem, 0.3125 * 1rem * var(--rem-scale), 0.53125 * 1rem);
  }

  .footer__tel {
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
    margin-left: clamp(0.21875 * 1rem, 0.3125 * 1rem * var(--rem-scale), 0.53125 * 1rem);
  }

  .footer__sns {
    width: clamp(1.225 * 1rem, 1.75 * 1rem * var(--rem-scale), 2.975 * 1rem);
    height: clamp(1.225 * 1rem, 1.75 * 1rem * var(--rem-scale), 2.975 * 1rem);
    margin-top: clamp(1.1375 * 1rem, 1.625 * 1rem * var(--rem-scale), 2.7625 * 1rem);
  }

  .footer__hours {
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .footer__hours-label {
    width: clamp(3.89375 * 1rem, 5.5625 * 1rem * var(--rem-scale), 9.45625 * 1rem);
    padding-block: clamp(0.2625 * 1rem, 0.375 * 1rem * var(--rem-scale), 0.6375 * 1rem);
    font-size: clamp(0.56875 * 1rem, 0.8125 * 1rem * var(--rem-scale), 1.38125 * 1rem);
  }

  .footer__table {
    margin-top: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
  }

  .footer__table th,
  .footer__table td {
    padding-block: clamp(0.21875 * 1rem, 0.3125 * 1rem * var(--rem-scale), 0.53125 * 1rem);
    font-size: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .footer__table thead th {
    padding-block: clamp(0.39375 * 1rem, 0.5625 * 1rem * var(--rem-scale), 0.95625 * 1rem);
  }

  .footer__table tbody tr:nth-child(1) th,
  .footer__table tbody tr:nth-child(1) td {
    padding-block: clamp(0.30625 * 1rem, 0.4375 * 1rem * var(--rem-scale), 0.74375 * 1rem) clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem);
  }

  .footer__table tbody tr:nth-child(2) th,
  .footer__table tbody tr:nth-child(2) td {
    padding-block: clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem) clamp(0.39375 * 1rem, 0.5625 * 1rem * var(--rem-scale), 0.95625 * 1rem);
  }

  .footer__note {
    gap: clamp(0.2625 * 1rem, 0.375 * 1rem * var(--rem-scale), 0.6375 * 1rem) clamp(0.91875 * 1rem, 1.3125 * 1rem * var(--rem-scale), 2.23125 * 1rem);
    margin-top: clamp(0.39375 * 1rem, 0.5625 * 1rem * var(--rem-scale), 0.95625 * 1rem);
    margin-left: clamp(0.2625 * 1rem, 0.375 * 1rem * var(--rem-scale), 0.6375 * 1rem);
  }

  .footer__note-item {
    font-size: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
    letter-spacing: normal;
  }

  .footer__nav {
    gap: clamp(0.21875 * 1rem, 0.3125 * 1rem * var(--rem-scale), 0.53125 * 1rem);
    width: clamp(14.2625 * 1rem, 20.375 * 1rem * var(--rem-scale), 34.6375 * 1rem);
    margin-top: clamp(3.01875 * 1rem, 4.3125 * 1rem * var(--rem-scale), 7.33125 * 1rem);
    margin-inline: auto;
  }

  .footer__nav-col {
    width: clamp(4.59375 * 1rem, 6.5625 * 1rem * var(--rem-scale), 11.15625 * 1rem);
  }

  .footer__nav-col--narrow {
    width: clamp(4.59375 * 1rem, 6.5625 * 1rem * var(--rem-scale), 11.15625 * 1rem);
  }

  .footer__copyright {
    margin-top: clamp(2.93125 * 1rem, 4.1875 * 1rem * var(--rem-scale), 7.11875 * 1rem);
    padding-left: clamp(0.65625 * 1rem, 0.9375 * 1rem * var(--rem-scale), 1.59375 * 1rem);
    font-size: clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
    text-align: left;
  }

  .footer__pagetop {
    right: clamp(0.65625 * 1rem, 0.9375 * 1rem * var(--rem-scale), 1.59375 * 1rem);
    bottom: clamp(3.5 * 1rem, 5 * 1rem * var(--rem-scale), 8.5 * 1rem);
  }

  .top-fv {
    height: clamp(34.7375 * 1rem, 49.625 * 1rem * var(--rem-scale), 84.3625 * 1rem);
  }

  .top-fv__bg {
    top: calc(clamp(23.7125 * 1rem, 33.875 * 1rem * var(--rem-scale), 57.5875 * 1rem) * -1);
    width: clamp(52.5 * 1rem, 75 * 1rem * var(--rem-scale), 127.5 * 1rem);
    height: clamp(52.5 * 1rem, 75 * 1rem * var(--rem-scale), 127.5 * 1rem);
  }

  .top-fv__watermark {
    top: clamp(26.46875 * 1rem, 37.8125 * 1rem * var(--rem-scale), 64.28125 * 1rem);
    left: clamp(23.1 * 1rem, 33 * 1rem * var(--rem-scale), 56.1 * 1rem);
    width: clamp(20.3 * 1rem, 29 * 1rem * var(--rem-scale), 49.3 * 1rem);
    height: clamp(20.3 * 1rem, 29 * 1rem * var(--rem-scale), 49.3 * 1rem);
  }

  .top-fv__badges {
    position: absolute;
    z-index: 10;
    top: clamp(3.7625 * 1rem, 5.375 * 1rem * var(--rem-scale), 9.1375 * 1rem);
    left: clamp(0.65625 * 1rem, 0.9375 * 1rem * var(--rem-scale), 1.59375 * 1rem);
    display: flex;
    width: calc(100% - clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem));
  }

  .top-fv__body {
    padding-top: clamp(10.15 * 1rem, 14.5 * 1rem * var(--rem-scale), 24.65 * 1rem);
  }

  .top-fv__catch {
    font-size: clamp(1.18125 * 1rem, 1.6875 * 1rem * var(--rem-scale), 2.86875 * 1rem);
    line-height: 1.5;
  }

  .top-fv__lead {
    margin-top: clamp(0.65625 * 1rem, 0.9375 * 1rem * var(--rem-scale), 1.59375 * 1rem);
    font-size: clamp(0.65625 * 1rem, 0.9375 * 1rem * var(--rem-scale), 1.59375 * 1rem);
    line-height: 1.69;
  }

  .top-fv__catch-line,
  .top-fv__lead-line {
    display: block;
  }

  .top-fv__slider {
    top: clamp(23.5375 * 1rem, 33.625 * 1rem * var(--rem-scale), 57.1625 * 1rem);
  }

  .top-fv__slide {
    width: clamp(9.23125 * 1rem, 13.1875 * 1rem * var(--rem-scale), 22.41875 * 1rem);
    height: clamp(11.2 * 1rem, 16 * 1rem * var(--rem-scale), 27.2 * 1rem);
  }

  .top-about {
    padding-top: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
  }

  .top-about__title {
    margin-bottom: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
  }

  .top-about__block {
    padding-top: clamp(2.275 * 1rem, 3.25 * 1rem * var(--rem-scale), 5.525 * 1rem);
  }

  .top-about__block + .top-about__block {
    margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  }

  .top-about__band {
    top: clamp(0.65625 * 1rem, 0.9375 * 1rem * var(--rem-scale), 1.59375 * 1rem);
    width: clamp(15.75 * 1rem, 22.5 * 1rem * var(--rem-scale), 38.25 * 1rem);
    height: calc(100% - clamp(2.45 * 1rem, 3.5 * 1rem * var(--rem-scale), 5.95 * 1rem));
    border-radius: 0 clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) 0;
  }

  .top-about__block--reverse .top-about__band {
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) 0 0 clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .top-about__block--pair .top-about__band {
    height: clamp(25.76875 * 1rem, 36.8125 * 1rem * var(--rem-scale), 62.58125 * 1rem);
  }

  .top-about__card {
    margin-left: clamp(0.65625 * 1rem, 0.9375 * 1rem * var(--rem-scale), 1.59375 * 1rem);
    padding-block: 0 clamp(1.53125 * 1rem, 2.1875 * 1rem * var(--rem-scale), 3.71875 * 1rem);
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) 0 0 clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .top-about__block--reverse .top-about__card {
    margin-right: clamp(0.65625 * 1rem, 0.9375 * 1rem * var(--rem-scale), 1.59375 * 1rem);
    padding-bottom: clamp(1.35625 * 1rem, 1.9375 * 1rem * var(--rem-scale), 3.29375 * 1rem);
    border-radius: 0 clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) 0;
  }

  .top-about__card-inner {
    flex-direction: column;
    gap: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
    width: 100%;
    padding-inline: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem) 0;
  }

  .top-about__block--reverse .top-about__card-inner {
    flex-direction: column;
    width: 100%;
    margin-left: 0;
    padding-inline: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem) 0;
  }

  .top-about__body {
    max-width: clamp(13.60625 * 1rem, 19.4375 * 1rem * var(--rem-scale), 33.04375 * 1rem);
  }

  .top-about__block--pair .top-about__body {
    max-width: clamp(13.60625 * 1rem, 19.4375 * 1rem * var(--rem-scale), 33.04375 * 1rem);
  }

  .top-about__heading {
    font-size: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .top-about__badge {
    margin-top: clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem);
  }

  .top-about__text {
    font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
    line-height: 2.2;
  }

  .top-about__badge + .top-about__text {
    margin-top: clamp(1.00625 * 1rem, 1.4375 * 1rem * var(--rem-scale), 2.44375 * 1rem);
  }

  .top-about__photos {
    order: -1;
    width: clamp(11.025 * 1rem, 15.75 * 1rem * var(--rem-scale), 26.775 * 1rem);
    margin-top: calc(clamp(2.275 * 1rem, 3.25 * 1rem * var(--rem-scale), 5.525 * 1rem) * -1);
    margin-inline: auto clamp(1.4 * 1rem, 2 * 1rem * var(--rem-scale), 3.4 * 1rem);
  }

  .top-about__block--reverse .top-about__photos {
    margin-inline: calc(clamp(0.04375 * 1rem, 0.0625 * 1rem * var(--rem-scale), 0.10625 * 1rem) * -1) auto;
  }

  .top-about__photo {
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .top-about__block--pair .top-about__photos {
    gap: clamp(0.56875 * 1rem, 0.8125 * 1rem * var(--rem-scale), 1.38125 * 1rem);
    width: clamp(11.06875 * 1rem, 15.8125 * 1rem * var(--rem-scale), 26.88125 * 1rem);
    margin-top: calc(clamp(2.275 * 1rem, 3.25 * 1rem * var(--rem-scale), 5.525 * 1rem) * -1);
    margin-inline: auto clamp(1.4 * 1rem, 2 * 1rem * var(--rem-scale), 3.4 * 1rem);
  }

  .top-about__block--pair .top-about__photo {
    width: clamp(5.25 * 1rem, 7.5 * 1rem * var(--rem-scale), 12.75 * 1rem);
  }

  .top-about__block--pair .pic:last-child .top-about__photo {
    margin-top: clamp(1.8375 * 1rem, 2.625 * 1rem * var(--rem-scale), 4.4625 * 1rem);
  }

  .top-about__more {
    margin-top: clamp(1.575 * 1rem, 2.25 * 1rem * var(--rem-scale), 3.825 * 1rem);
  }

  .top-treatment {
    padding-top: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
  }

  .top-treatment__title {
    margin-bottom: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
  }

  .top-treatment__cards {
    flex-direction: column;
    gap: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
    align-items: center;
  }

  .top-treatment__card {
    width: clamp(14.4375 * 1rem, 20.625 * 1rem * var(--rem-scale), 35.0625 * 1rem);
    height: clamp(9.275 * 1rem, 13.25 * 1rem * var(--rem-scale), 22.525 * 1rem);
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .top-treatment__btn {
    padding: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
  }

  .top-treatment__first {
    margin-top: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
    padding-bottom: clamp(3.4125 * 1rem, 4.875 * 1rem * var(--rem-scale), 8.2875 * 1rem);
  }

  .top-treatment__first::before {
    top: clamp(1.1375 * 1rem, 1.625 * 1rem * var(--rem-scale), 2.7625 * 1rem);
    height: calc(100% - clamp(1.1375 * 1rem, 1.625 * 1rem * var(--rem-scale), 2.7625 * 1rem));
  }

  .top-treatment__first-title {
    font-size: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
    line-height: 1.9;
  }

  .top-treatment__list {
    flex-direction: column;
    align-items: center;
    gap: clamp(1.88125 * 1rem, 2.6875 * 1rem * var(--rem-scale), 4.56875 * 1rem);
    margin-top: clamp(1.6625 * 1rem, 2.375 * 1rem * var(--rem-scale), 4.0375 * 1rem);
  }

  .top-treatment__item {
    width: clamp(14.4375 * 1rem, 20.625 * 1rem * var(--rem-scale), 35.0625 * 1rem);
    height: auto;
    min-height: 0;
    padding: clamp(2.0125 * 1rem, 2.875 * 1rem * var(--rem-scale), 4.8875 * 1rem) clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem) clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .top-treatment__item-body {
    width: clamp(12.25 * 1rem, 17.5 * 1rem * var(--rem-scale), 29.75 * 1rem);
    margin-top: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
  }

  .top-treatment__item-text {
    font-size: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
    line-height: 1.8;
  }

  .top-treatment__item-body--narrow .top-treatment__item-text {
    line-height: 1.8;
  }

  .top-parallax {
    height: auto;
  }

  .top-stack {
    --px-h: 65svh;
    --px-top: calc(17.5svh + clamp(0.56875 * 1rem, 0.8125 * 1rem * var(--rem-scale), 1.38125 * 1rem));
  }

  .top-stack .top-treatment {
    position: sticky;
    top: calc(var(--px-top) - var(--top-treatment-h, 100000px));
  }

  .top-parallax .js-sticky-cover__stage {
    position: static;
    overflow: visible;
    height: auto;
  }

  .top-parallax .js-sticky-cover__list {
    display: block;
  }

  .top-parallax .js-sticky-cover__list::after {
    content: "";
    display: block;
    height: var(--px-h);
  }

  .top-parallax .js-sticky-cover-item {
    position: sticky;
    top: var(--px-top);
    height: var(--px-h);
  }

  .top-parallax .js-sticky-cover-item + .js-sticky-cover-item {
    -webkit-clip-path: none;
            clip-path: none;
  }

  .top-clinic {
    margin-top: -65svh;
    padding-block: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem) clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
  }

  .top-clinic__title {
    margin-bottom: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
  }

  .top-clinic__row {
    padding-bottom: clamp(1.09375 * 1rem, 1.5625 * 1rem * var(--rem-scale), 2.65625 * 1rem);
  }

  .top-clinic__row + .top-clinic__row {
    margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  }

  .top-clinic__band {
    top: auto;
    bottom: 0;
    left: clamp(2.8875 * 1rem, 4.125 * 1rem * var(--rem-scale), 7.0125 * 1rem);
    height: clamp(8.1375 * 1rem, 11.625 * 1rem * var(--rem-scale), 19.7625 * 1rem);
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) 0 0 clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .top-clinic__row--reverse .top-clinic__band {
    right: clamp(2.8875 * 1rem, 4.125 * 1rem * var(--rem-scale), 7.0125 * 1rem);
    border-radius: 0 clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) 0;
  }

  .top-clinic__inner {
    display: block;
    padding-inline: clamp(0.65625 * 1rem, 0.9375 * 1rem * var(--rem-scale), 1.59375 * 1rem);
  }

  .top-clinic__body {
    width: 100%;
  }

  .top-clinic__text {
    margin-top: clamp(0.74375 * 1rem, 1.0625 * 1rem * var(--rem-scale), 1.80625 * 1rem);
    font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
    line-height: 2.2;
  }

  .top-clinic__text--narrow {
    line-height: 2.2;
  }

  .top-clinic__photos {
    justify-content: flex-end;
    gap: clamp(0.21875 * 1rem, 0.3125 * 1rem * var(--rem-scale), 0.53125 * 1rem);
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .top-clinic__row--reverse .top-clinic__photos {
    justify-content: flex-start;
  }

  .top-clinic__photo {
    width: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
    aspect-ratio: 100/182;
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .top-clinic__more {
    margin-top: clamp(1.4875 * 1rem, 2.125 * 1rem * var(--rem-scale), 3.6125 * 1rem);
  }

  .top-staff {
    padding-top: clamp(3.98125 * 1rem, 5.6875 * 1rem * var(--rem-scale), 9.66875 * 1rem);
  }

  .top-staff::before {
    top: clamp(12.29375 * 1rem, 17.5625 * 1rem * var(--rem-scale), 29.85625 * 1rem);
  }

  .top-staff__bg {
    width: clamp(44.625 * 1rem, 63.75 * 1rem * var(--rem-scale), 108.375 * 1rem);
    height: clamp(44.625 * 1rem, 63.75 * 1rem * var(--rem-scale), 108.375 * 1rem);
  }

  .top-staff__title {
    margin-bottom: clamp(2.3625 * 1rem, 3.375 * 1rem * var(--rem-scale), 5.7375 * 1rem);
  }

  .top-staff__doctor {
    flex-direction: column;
    align-items: center;
    gap: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .top-staff__doctor + .top-staff__doctor {
    margin-top: clamp(1.225 * 1rem, 1.75 * 1rem * var(--rem-scale), 2.975 * 1rem);
    padding-top: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 6 2'%3E%3Ccircle cx='1' cy='1' r='1' fill='rgb(255,255,255)'/%3E%3C/svg%3E");
    background-position: left top;
    background-size: clamp(0.2625 * 1rem, 0.375 * 1rem * var(--rem-scale), 0.6375 * 1rem) clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem);
    background-repeat: repeat-x;
  }

  .top-staff__photo {
    width: clamp(10.7625 * 1rem, 15.375 * 1rem * var(--rem-scale), 26.1375 * 1rem);
    aspect-ratio: 246/299;
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .top-staff__text {
    margin-top: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
    line-height: 2.2;
  }

  .top-staff__name {
    width: -moz-fit-content;
    width: fit-content;
    margin-top: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
    -webkit-margin-start: auto;
            margin-inline-start: auto;
    line-height: 1.6;
  }

  .top-staff__banner {
    width: clamp(14.4375 * 1rem, 20.625 * 1rem * var(--rem-scale), 35.0625 * 1rem);
    margin-top: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
  }

  .top-staff__lead-tag {
    margin-top: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
  }

  .top-staff__lead {
    margin-top: clamp(0.74375 * 1rem, 1.0625 * 1rem * var(--rem-scale), 1.80625 * 1rem);
    line-height: 2;
  }

  .top-staff__group {
    margin-top: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
  }

  .top-staff__group-img {
    aspect-ratio: 375/553;
  }

  .top-staff__btns {
    bottom: clamp(2.3625 * 1rem, 3.375 * 1rem * var(--rem-scale), 5.7375 * 1rem);
    flex-direction: column;
    gap: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  }

  .top-news {
    padding-top: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
  }

  .top-news__title {
    margin-bottom: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
  }

  .top-news__link {
    flex-direction: column;
    gap: clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem);
    padding: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem) clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .top-news__date {
    flex: 0 0 auto;
    align-self: stretch;
    font-size: clamp(0.56875 * 1rem, 0.8125 * 1rem * var(--rem-scale), 1.38125 * 1rem);
  }

  .top-news__more {
    margin-top: clamp(1.4875 * 1rem, 2.125 * 1rem * var(--rem-scale), 3.6125 * 1rem);
  }

  .top-news__banner {
    width: clamp(14.4375 * 1rem, 20.625 * 1rem * var(--rem-scale), 35.0625 * 1rem);
    margin-top: clamp(1.70625 * 1rem, 2.4375 * 1rem * var(--rem-scale), 4.14375 * 1rem);
  }

  .top-news__banner-img {
    aspect-ratio: 330/80;
  }

  .top-faq {
    padding-top: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
  }

  .top-faq__title {
    margin-bottom: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
  }

  .top-faq__list {
    gap: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  }

  .top-faq__toggle {
    align-items: flex-start;
    gap: clamp(0.2625 * 1rem, 0.375 * 1rem * var(--rem-scale), 0.6375 * 1rem);
    padding: clamp(0.74375 * 1rem, 1.0625 * 1rem * var(--rem-scale), 1.80625 * 1rem) clamp(0.65625 * 1rem, 0.9375 * 1rem * var(--rem-scale), 1.59375 * 1rem);
    border-radius: clamp(0.21875 * 1rem, 0.3125 * 1rem * var(--rem-scale), 0.53125 * 1rem);
  }

  .top-faq__mark {
    width: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
    height: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
    font-size: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
  }

  .top-faq__question {
    font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
    line-height: 1.5;
  }

  .top-faq__panel {
    padding-inline: clamp(0.328125 * 1rem, 0.46875 * 1rem * var(--rem-scale), 0.796875 * 1rem);
  }

  .top-faq__panel.is-open {
    padding-block: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  }

  .top-faq__answer {
    font-size: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
  }

  .top-faq__answer + .top-faq__answer {
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .top-reserve {
    padding-block: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
  }

  .top-reserve__title {
    margin-bottom: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
  }

  .top-reserve__lead {
    margin-bottom: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
    line-height: 2;
    text-align: left;
  }

  .about-row {
    margin-top: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
  }

  .about-row__band {
    top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
    width: clamp(12.20625 * 1rem, 17.4375 * 1rem * var(--rem-scale), 29.64375 * 1rem);
    height: clamp(10.9375 * 1rem, 15.625 * 1rem * var(--rem-scale), 26.5625 * 1rem);
    border-radius: 0 clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) 0;
  }

  .about-row--reverse .about-row__band {
    top: auto;
    bottom: 0;
    width: clamp(11.59375 * 1rem, 16.5625 * 1rem * var(--rem-scale), 28.15625 * 1rem);
    height: clamp(9.49375 * 1rem, 13.5625 * 1rem * var(--rem-scale), 23.05625 * 1rem);
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) 0 0 clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .about-row__inner {
    flex-direction: column;
    gap: clamp(2.3625 * 1rem, 3.375 * 1rem * var(--rem-scale), 5.7375 * 1rem);
  }

  .about-row--reverse .about-row__inner {
    flex-direction: column-reverse;
    gap: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .about-row--reverse {
    padding-bottom: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .about-row__photo {
    width: clamp(11.025 * 1rem, 15.75 * 1rem * var(--rem-scale), 26.775 * 1rem);
    aspect-ratio: 252/251;
    margin-inline: clamp(1.18125 * 1rem, 1.6875 * 1rem * var(--rem-scale), 2.86875 * 1rem) auto;
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .about-row__text {
    gap: clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
    margin-top: clamp(0.74375 * 1rem, 1.0625 * 1rem * var(--rem-scale), 1.80625 * 1rem);
    line-height: 2.2;
  }

  .about-feature {
    margin-top: clamp(3.36875 * 1rem, 4.8125 * 1rem * var(--rem-scale), 8.18125 * 1rem);
    padding-bottom: 0;
  }

  .about-feature::before {
    top: clamp(1.09375 * 1rem, 1.5625 * 1rem * var(--rem-scale), 2.65625 * 1rem);
    height: clamp(34.475 * 1rem, 49.25 * 1rem * var(--rem-scale), 83.725 * 1rem);
    background-image: linear-gradient(rgba(20, 90, 166, 0.1), rgba(20, 90, 166, 0.1)), -webkit-image-set(url("../img/about/about-05-sp.webp") type("image/webp"), url("../img/about/about-05-sp.jpg") type("image/jpeg"));
    background-image: linear-gradient(rgba(20, 90, 166, 0.1), rgba(20, 90, 166, 0.1)), image-set(url("../img/about/about-05-sp.webp") type("image/webp"), url("../img/about/about-05-sp.jpg") type("image/jpeg"));
  }

  .about-feature__title {
    font-size: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .about-feature__card {
    gap: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
    max-width: clamp(14.4375 * 1rem, 20.625 * 1rem * var(--rem-scale), 35.0625 * 1rem);
    margin-top: clamp(11.725 * 1rem, 16.75 * 1rem * var(--rem-scale), 28.475 * 1rem);
    padding: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem) clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem) clamp(1.1375 * 1rem, 1.625 * 1rem * var(--rem-scale), 2.7625 * 1rem);
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .about-feature__text {
    gap: clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
    font-size: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
    line-height: 1.786;
  }

  .about-spec {
    margin-top: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
  }

  .about-spec__card {
    aspect-ratio: auto;
    height: clamp(10.10625 * 1rem, 14.4375 * 1rem * var(--rem-scale), 24.54375 * 1rem);
    margin-top: clamp(1.4875 * 1rem, 2.125 * 1rem * var(--rem-scale), 3.6125 * 1rem);
    margin-inline: calc(clamp(0.65625 * 1rem, 0.9375 * 1rem * var(--rem-scale), 1.59375 * 1rem) * -1);
    padding: 0;
    border-radius: 0;
  }

  .about-spec__logo {
    top: clamp(4.9875 * 1rem, 7.125 * 1rem * var(--rem-scale), 12.1125 * 1rem);
    right: auto;
    bottom: auto;
    left: clamp(1.96875 * 1rem, 2.8125 * 1rem * var(--rem-scale), 4.78125 * 1rem);
    width: clamp(3.675 * 1rem, 5.25 * 1rem * var(--rem-scale), 8.925 * 1rem);
    transform: none;
  }

  .about-spec__logo .logo {
    height: clamp(0.83125 * 1rem, 1.1875 * 1rem * var(--rem-scale), 2.01875 * 1rem);
    border-radius: clamp(0.13125 * 1rem, 0.1875 * 1rem * var(--rem-scale), 0.31875 * 1rem);
  }

  .about-team {
    margin-top: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
  }

  .about-team__photos {
    gap: clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem);
    width: clamp(11.025 * 1rem, 15.75 * 1rem * var(--rem-scale), 26.775 * 1rem);
    margin-inline: auto clamp(0.48125 * 1rem, 0.6875 * 1rem * var(--rem-scale), 1.16875 * 1rem);
  }

  .about-team__photo {
    width: clamp(5.25 * 1rem, 7.5 * 1rem * var(--rem-scale), 12.75 * 1rem);
    aspect-ratio: 120/164;
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .about-team__photos .pic:last-child .about-team__photo {
    margin-top: clamp(2.31875 * 1rem, 3.3125 * 1rem * var(--rem-scale), 5.63125 * 1rem);
  }

  .about-env {
    margin-top: clamp(4.33125 * 1rem, 6.1875 * 1rem * var(--rem-scale), 10.51875 * 1rem);
  }

  .about-env__tag {
    margin-top: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
    padding-bottom: 0;
  }

  .about-env__block {
    margin-top: clamp(1.35625 * 1rem, 1.9375 * 1rem * var(--rem-scale), 3.29375 * 1rem);
    padding-top: 0;
  }

  .about-env__band {
    top: clamp(1.575 * 1rem, 2.25 * 1rem * var(--rem-scale), 3.825 * 1rem);
    width: calc(100% - clamp(0.65625 * 1rem, 0.9375 * 1rem * var(--rem-scale), 1.59375 * 1rem));
    height: auto;
    bottom: 0;
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) 0 0 clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .about-env__block--reverse .about-env__band {
    border-radius: 0 clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) 0;
  }

  .about-env__inner {
    flex-direction: column-reverse;
    gap: 0;
    padding-block: 0;
  }

  .about-env__block--reverse .about-env__inner {
    flex-direction: column-reverse;
  }

  .about-env__body {
    max-width: clamp(13.60625 * 1rem, 19.4375 * 1rem * var(--rem-scale), 33.04375 * 1rem);
    margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
    margin-inline: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem) auto;
  }

  .about-env__block--reverse .about-env__body {
    margin-inline: clamp(0.65625 * 1rem, 0.9375 * 1rem * var(--rem-scale), 1.59375 * 1rem) auto;
  }

  .about-env__label .tag {
    font-size: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
  }

  .about-env__text {
    margin-top: clamp(0.91875 * 1rem, 1.3125 * 1rem * var(--rem-scale), 2.23125 * 1rem);
    line-height: 2.2;
  }

  .about-env__photos {
    flex: none;
    width: clamp(11.025 * 1rem, 15.75 * 1rem * var(--rem-scale), 26.775 * 1rem);
    height: clamp(9.625 * 1rem, 13.75 * 1rem * var(--rem-scale), 23.375 * 1rem);
    aspect-ratio: auto;
    margin-inline: auto 0;
  }

  .about-env__block--reverse .about-env__photos {
    margin-inline: clamp(0.65625 * 1rem, 0.9375 * 1rem * var(--rem-scale), 1.59375 * 1rem) auto;
  }

  .about-env__photos--c {
    margin-inline: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem) auto;
  }

  .about-env__photo {
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .about-env__photos--a .about-env__photo--1 {
    top: clamp(0 * 1rem, 0 * 1rem * var(--rem-scale), 0 * 1rem);
    right: auto;
    left: clamp(5.38125 * 1rem, 7.6875 * 1rem * var(--rem-scale), 13.06875 * 1rem);
    width: clamp(5.46875 * 1rem, 7.8125 * 1rem * var(--rem-scale), 13.28125 * 1rem);
    aspect-ratio: 125/140;
  }

  .about-env__photos--a .about-env__photo--2 {
    top: clamp(4.15625 * 1rem, 5.9375 * 1rem * var(--rem-scale), 10.09375 * 1rem);
    right: auto;
    left: clamp(0 * 1rem, 0 * 1rem * var(--rem-scale), 0 * 1rem);
    width: clamp(4.94375 * 1rem, 7.0625 * 1rem * var(--rem-scale), 12.00625 * 1rem);
    aspect-ratio: 113/123;
  }

  .about-env__photos--a .about-env__photo--3 {
    top: clamp(6.65 * 1rem, 9.5 * 1rem * var(--rem-scale), 16.15 * 1rem);
    right: auto;
    left: clamp(6.25625 * 1rem, 8.9375 * 1rem * var(--rem-scale), 15.19375 * 1rem);
    width: clamp(4.76875 * 1rem, 6.8125 * 1rem * var(--rem-scale), 11.58125 * 1rem);
    aspect-ratio: 109/71;
  }

  .about-env__photos--b .about-env__photo--1 {
    top: clamp(0 * 1rem, 0 * 1rem * var(--rem-scale), 0 * 1rem);
    right: auto;
    left: clamp(0 * 1rem, 0 * 1rem * var(--rem-scale), 0 * 1rem);
    width: clamp(7.83125 * 1rem, 11.1875 * 1rem * var(--rem-scale), 19.01875 * 1rem);
    aspect-ratio: 179/130;
  }

  .about-env__photos--b .about-env__photo--2 {
    top: clamp(5.95 * 1rem, 8.5 * 1rem * var(--rem-scale), 14.45 * 1rem);
    right: auto;
    left: clamp(6.65 * 1rem, 9.5 * 1rem * var(--rem-scale), 16.15 * 1rem);
    width: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
    aspect-ratio: 100/70;
  }

  .about-env__photos--b .about-env__photo--3 {
    top: clamp(6.5625 * 1rem, 9.375 * 1rem * var(--rem-scale), 15.9375 * 1rem);
    right: auto;
    left: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
    width: clamp(4.94375 * 1rem, 7.0625 * 1rem * var(--rem-scale), 12.00625 * 1rem);
    aspect-ratio: 113/70;
  }

  .about-env__photos--c .about-env__photo--1 {
    top: clamp(4.41875 * 1rem, 6.3125 * 1rem * var(--rem-scale), 10.73125 * 1rem);
    right: auto;
    left: clamp(3.89375 * 1rem, 5.5625 * 1rem * var(--rem-scale), 9.45625 * 1rem);
    width: clamp(7.13125 * 1rem, 10.1875 * 1rem * var(--rem-scale), 17.31875 * 1rem);
    aspect-ratio: 163/119;
  }

  .about-env__photos--c .about-env__photo--2 {
    top: clamp(0 * 1rem, 0 * 1rem * var(--rem-scale), 0 * 1rem);
    right: auto;
    left: clamp(0.74375 * 1rem, 1.0625 * 1rem * var(--rem-scale), 1.80625 * 1rem);
    width: clamp(4.94375 * 1rem, 7.0625 * 1rem * var(--rem-scale), 12.00625 * 1rem);
    aspect-ratio: 113/78;
  }

  .about-env__photos--c .about-env__photo--3 {
    top: clamp(3.85 * 1rem, 5.5 * 1rem * var(--rem-scale), 9.35 * 1rem);
    right: auto;
    left: clamp(0 * 1rem, 0 * 1rem * var(--rem-scale), 0 * 1rem);
    width: clamp(3.19375 * 1rem, 4.5625 * 1rem * var(--rem-scale), 7.75625 * 1rem);
    aspect-ratio: 73/94;
  }

  .about-care {
    margin-top: clamp(3.89375 * 1rem, 5.5625 * 1rem * var(--rem-scale), 9.45625 * 1rem);
    padding-top: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
  }

  .about-care__tag {
    margin-top: clamp(1.4875 * 1rem, 2.125 * 1rem * var(--rem-scale), 3.6125 * 1rem);
  }

  .about-care__hero {
    margin-top: clamp(1.575 * 1rem, 2.25 * 1rem * var(--rem-scale), 3.825 * 1rem);
    padding-block: clamp(5.6 * 1rem, 8 * 1rem * var(--rem-scale), 13.6 * 1rem) clamp(5.55625 * 1rem, 7.9375 * 1rem * var(--rem-scale), 13.49375 * 1rem);
  }

  .about-care__hero-img {
    top: -12.4%;
    left: -70.1%;
    width: 240.3%;
  }

  .about-care__lead-title {
    font-size: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .about-care__lead {
    width: 100%;
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
    line-height: 2.2;
  }

  .about-care__fear {
    max-width: clamp(14.4375 * 1rem, 20.625 * 1rem * var(--rem-scale), 35.0625 * 1rem);
    margin-top: calc(clamp(1.26875 * 1rem, 1.8125 * 1rem * var(--rem-scale), 3.08125 * 1rem) * -1);
    padding: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem) 0;
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .about-care__fear-list {
    flex-direction: column;
    align-items: center;
    gap: clamp(0.39375 * 1rem, 0.5625 * 1rem * var(--rem-scale), 0.95625 * 1rem);
    margin-top: clamp(0.9625 * 1rem, 1.375 * 1rem * var(--rem-scale), 2.3375 * 1rem);
  }

  .about-care__fear-item {
    width: clamp(8.09375 * 1rem, 11.5625 * 1rem * var(--rem-scale), 19.65625 * 1rem);
    height: clamp(5.075 * 1rem, 7.25 * 1rem * var(--rem-scale), 12.325 * 1rem);
    padding-inline: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
    font-size: clamp(0.56875 * 1rem, 0.8125 * 1rem * var(--rem-scale), 1.38125 * 1rem);
    line-height: 1.52;
  }

  .about-care__fear-note {
    width: clamp(11.76875 * 1rem, 16.8125 * 1rem * var(--rem-scale), 28.58125 * 1rem);
    min-height: 0;
    margin-top: clamp(5.95 * 1rem, 8.5 * 1rem * var(--rem-scale), 14.45 * 1rem);
    margin-inline: auto;
    padding: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem) clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
    font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
    line-height: 1.8125;
    text-align: center;
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .about-care__fear-note::before {
    z-index: -1;
    top: calc(clamp(4.85625 * 1rem, 6.9375 * 1rem * var(--rem-scale), 11.79375 * 1rem) * -1);
    bottom: auto;
    left: 50%;
    width: clamp(4.8125 * 1rem, 6.875 * 1rem * var(--rem-scale), 11.6875 * 1rem);
    height: clamp(4.85625 * 1rem, 6.9375 * 1rem * var(--rem-scale), 11.79375 * 1rem);
    transform: translateX(-50%);
  }

  .about-care__measure {
    margin-top: clamp(2.05625 * 1rem, 2.9375 * 1rem * var(--rem-scale), 4.99375 * 1rem);
    padding-bottom: clamp(4.24375 * 1rem, 6.0625 * 1rem * var(--rem-scale), 10.30625 * 1rem);
  }

  .about-care__measure-bg {
    top: clamp(1.00625 * 1rem, 1.4375 * 1rem * var(--rem-scale), 2.44375 * 1rem);
    width: max(clamp(49.74375 * 1rem, 71.0625 * 1rem * var(--rem-scale), 120.80625 * 1rem), 303.2vw);
    height: clamp(54.1625 * 1rem, 77.375 * 1rem * var(--rem-scale), 131.5375 * 1rem);
  }

  .about-care__measure-tag {
    margin-bottom: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
  }

  .about-care__measure-list {
    flex-direction: column;
    gap: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  }

  .about-care__measure-item {
    width: 100%;
  }

  .about-care__measure-img {
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .about-care__measure-text {
    margin-top: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  }

  .about-care__conclusion {
    margin-top: clamp(1.4875 * 1rem, 2.125 * 1rem * var(--rem-scale), 3.6125 * 1rem);
    font-size: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
  }

  .about-counseling {
    padding-block: clamp(4.2875 * 1rem, 6.125 * 1rem * var(--rem-scale), 10.4125 * 1rem) clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
    background-image: -webkit-image-set(url("../img/counseling/counseling-sp.webp") type("image/webp"), url("../img/counseling/counseling-sp.jpg") type("image/jpeg"));
    background-image: image-set(url("../img/counseling/counseling-sp.webp") type("image/webp"), url("../img/counseling/counseling-sp.jpg") type("image/jpeg"));
    background-size: cover;
    background-position: center;
  }

  .about-counseling__title {
    font-size: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
    line-height: 1.4;
  }

  .about-counseling__text {
    max-width: clamp(14.4375 * 1rem, 20.625 * 1rem * var(--rem-scale), 35.0625 * 1rem);
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
    margin-inline: auto;
    gap: clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
  }

  .about-other {
    padding-block: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
  }

  .about-other__title {
    font-size: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
    line-height: 1.4;
  }

  .about-other__list {
    flex-direction: column;
    gap: clamp(1.4 * 1rem, 2 * 1rem * var(--rem-scale), 3.4 * 1rem);
    margin-top: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
  }

  .about-other__item {
    align-items: flex-start;
    width: 100%;
  }

  .about-other__img {
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .about-other__text {
    margin-top: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
  }

  .about-pledge {
    padding-top: clamp(4.50625 * 1rem, 6.4375 * 1rem * var(--rem-scale), 10.94375 * 1rem);
  }

  .about-pledge__card {
    gap: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
    min-height: clamp(23.45 * 1rem, 33.5 * 1rem * var(--rem-scale), 56.95 * 1rem);
    justify-content: center;
    padding: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem) clamp(0.9625 * 1rem, 1.375 * 1rem * var(--rem-scale), 2.3375 * 1rem);
    background-image: -webkit-image-set(url("../img/footer/pledge-sp.webp") type("image/webp"), url("../img/footer/pledge-sp.jpg") type("image/jpeg"));
    background-image: image-set(url("../img/footer/pledge-sp.webp") type("image/webp"), url("../img/footer/pledge-sp.jpg") type("image/jpeg"));
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .about-pledge__title {
    font-size: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
    line-height: 1.4;
  }

  .about-vow {
    padding-top: clamp(2.23125 * 1rem, 3.1875 * 1rem * var(--rem-scale), 5.41875 * 1rem);
  }

  .about-vow__title {
    margin-bottom: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
    line-height: 1.4;
  }

  .about-vow__list {
    gap: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
  }

  .about-vow__item {
    flex-direction: column;
    padding: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem) clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
    border-radius: clamp(0.21875 * 1rem, 0.3125 * 1rem * var(--rem-scale), 0.53125 * 1rem);
  }

  .about-vow__text {
    line-height: 1.8;
  }

  .about-reserve {
    padding-block: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
  }

  .whitening-badge {
    padding: clamp(0.21875 * 1rem, 0.3125 * 1rem * var(--rem-scale), 0.53125 * 1rem) clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) clamp(0.30625 * 1rem, 0.4375 * 1rem * var(--rem-scale), 0.74375 * 1rem);
    font-size: clamp(0.9625 * 1rem, 1.375 * 1rem * var(--rem-scale), 2.3375 * 1rem);
  }

  .whitening-recommend {
    padding-top: clamp(3.4125 * 1rem, 4.875 * 1rem * var(--rem-scale), 8.2875 * 1rem);
  }

  .whitening-recommend__row {
    flex-direction: column;
    align-items: center;
    gap: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .whitening-recommend__photo {
    width: clamp(11.025 * 1rem, 15.75 * 1rem * var(--rem-scale), 26.775 * 1rem);
    aspect-ratio: 252/192;
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .whitening-recommend__item {
    gap: clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
  }

  .whitening-opal {
    padding-top: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
  }

  .whitening-opal__text {
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .whitening-office,
  .whitening-home {
    padding-top: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
  }

  .whitening-lead {
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
    line-height: 1.8;
  }

  .whitening-merit {
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .whitening-subheading {
    padding-inline: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
    font-size: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
  }

  .whitening-note {
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .whitening-dual {
    padding-top: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
  }

  .whitening-dual__text {
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .whitening-reserve {
    padding-block: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
  }

  .aesthetic-subheading {
    padding-bottom: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem);
  }

  .aesthetic-label {
    min-height: clamp(1.4 * 1rem, 2 * 1rem * var(--rem-scale), 3.4 * 1rem);
    padding-inline: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
    font-size: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
  }

  .aesthetic-intro {
    margin-top: clamp(3.36875 * 1rem, 4.8125 * 1rem * var(--rem-scale), 8.18125 * 1rem);
  }

  .aesthetic-intro__row {
    flex-direction: column;
    align-items: stretch;
    gap: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .aesthetic-intro__photo {
    width: clamp(11.025 * 1rem, 15.75 * 1rem * var(--rem-scale), 26.775 * 1rem);
    aspect-ratio: 252/192;
    margin-inline: auto;
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .aesthetic-intro__body {
    display: contents;
  }

  .aesthetic-intro__text {
    margin-top: 0;
  }

  .aesthetic-materials {
    padding-top: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
  }

  .aesthetic-material__list {
    gap: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .aesthetic-material__row {
    flex-direction: column;
    align-items: stretch;
    gap: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .aesthetic-material__figure {
    width: 100%;
  }

  .aesthetic-material__img {
    width: clamp(11.025 * 1rem, 15.75 * 1rem * var(--rem-scale), 26.775 * 1rem);
    aspect-ratio: 252/198;
    align-self: center;
    margin-inline: auto;
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .aesthetic-material__caption {
    margin-top: clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
    font-size: clamp(0.56875 * 1rem, 0.8125 * 1rem * var(--rem-scale), 1.38125 * 1rem);
  }

  .aesthetic-material__info {
    display: contents;
  }

  .aesthetic-material__points {
    gap: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
  }

  .aesthetic-invite {
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .aesthetic-invite__text {
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .aesthetic-warranty {
    padding-top: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
  }

  .aesthetic-warranty__lead {
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .aesthetic-warranty__note {
    margin-top: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .aesthetic-exclusion {
    padding-top: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
  }

  .aesthetic-check-list {
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .aesthetic-reserve {
    padding-block: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
  }

  .preventive-stack {
    gap: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .preventive-paragraphs {
    gap: 0;
  }

  .preventive-label {
    padding: clamp(0.21875 * 1rem, 0.3125 * 1rem * var(--rem-scale), 0.53125 * 1rem) clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) clamp(0.30625 * 1rem, 0.4375 * 1rem * var(--rem-scale), 0.74375 * 1rem);
    font-size: clamp(0.9625 * 1rem, 1.375 * 1rem * var(--rem-scale), 2.3375 * 1rem);
  }

  .preventive-caption {
    padding: clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem) clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem);
    font-size: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
  }

  .preventive-intro {
    margin-top: clamp(3.4125 * 1rem, 4.875 * 1rem * var(--rem-scale), 8.2875 * 1rem);
  }

  .preventive-checkup {
    margin-top: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
  }

  .preventive-checkup__chart {
    flex-direction: column;
    align-items: stretch;
    gap: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .preventive-checkup__chart-img {
    width: clamp(15.09375 * 1rem, 21.5625 * 1rem * var(--rem-scale), 36.65625 * 1rem);
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .preventive-periodontal {
    margin-top: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
  }

  .preventive-periodontal__list {
    flex-direction: column;
    align-items: center;
    gap: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  }

  .preventive-periodontal__item {
    gap: clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
    width: clamp(7.875 * 1rem, 11.25 * 1rem * var(--rem-scale), 19.125 * 1rem);
  }

  .preventive-periodontal__img {
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .preventive-periodontal__label {
    font-size: clamp(0.56875 * 1rem, 0.8125 * 1rem * var(--rem-scale), 1.38125 * 1rem);
  }

  .preventive-tbi {
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .preventive-pmtc {
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .preventive-feature {
    flex-direction: column;
    align-items: stretch;
    gap: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .preventive-feature__img {
    width: clamp(11.025 * 1rem, 15.75 * 1rem * var(--rem-scale), 26.775 * 1rem);
    aspect-ratio: 252/194;
    margin-inline: auto;
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .preventive-frequency {
    margin-top: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
  }

  .preventive-frequency .preventive-caption {
    padding-bottom: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem);
  }

  .preventive-reserve {
    margin-top: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
    padding-bottom: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
  }

  .general-menu-nav {
    margin-top: clamp(3.36875 * 1rem, 4.8125 * 1rem * var(--rem-scale), 8.18125 * 1rem);
  }

  .general-menu-nav__list {
    grid-template-columns: repeat(3, 1fr);
    gap: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
    padding-inline: clamp(0.328125 * 1rem, 0.46875 * 1rem * var(--rem-scale), 0.796875 * 1rem);
  }

  .general-menu-nav__link {
    height: clamp(2.5571875 * 1rem, 3.653125 * 1rem * var(--rem-scale), 6.2103125 * 1rem);
    padding-inline: clamp(0.503125 * 1rem, 0.71875 * 1rem * var(--rem-scale), 1.221875 * 1rem) clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
    font-size: clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem);
    line-height: 1.3;
    border-radius: clamp(1.2788125 * 1rem, 1.826875 * 1rem * var(--rem-scale), 3.1056875 * 1rem);
  }

  .general-menu-nav__link--sm {
    font-size: clamp(0.48125 * 1rem, 0.6875 * 1rem * var(--rem-scale), 1.16875 * 1rem);
  }

  .general-menu-nav__link--fit {
    gap: clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem);
    font-size: clamp(0.48125 * 1rem, 0.6875 * 1rem * var(--rem-scale), 1.16875 * 1rem);
  }

  .general-menu-nav__link--narrow {
    gap: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  }

  .general-intro {
    margin-top: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
  }

  .general-intro__card {
    display: block;
    align-items: normal;
    height: clamp(16.40625 * 1rem, 23.4375 * 1rem * var(--rem-scale), 39.84375 * 1rem);
    padding-left: 0;
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .general-intro__list {
    gap: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
    max-width: clamp(12.03125 * 1rem, 17.1875 * 1rem * var(--rem-scale), 29.21875 * 1rem);
    margin-inline: clamp(1.53125 * 1rem, 2.1875 * 1rem * var(--rem-scale), 3.71875 * 1rem) auto;
    padding-top: clamp(1.8375 * 1rem, 2.625 * 1rem * var(--rem-scale), 4.4625 * 1rem);
  }

  .general-intro__item {
    align-items: flex-start;
  }

  .general-intro__item p {
    font-size: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
    line-height: 1.5;
  }

  .general-intro__icon {
    width: clamp(1.1375 * 1rem, 1.625 * 1rem * var(--rem-scale), 2.7625 * 1rem);
    height: clamp(1.1375 * 1rem, 1.625 * 1rem * var(--rem-scale), 2.7625 * 1rem);
  }

  .general-intro__photo {
    top: clamp(9.639 * 1rem, 13.77 * 1rem * var(--rem-scale), 23.409 * 1rem);
    bottom: auto;
    right: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
    width: clamp(5.6875 * 1rem, 8.125 * 1rem * var(--rem-scale), 13.8125 * 1rem);
    aspect-ratio: 130/194.9;
    -o-object-fit: contain;
       object-fit: contain;
    -webkit-clip-path: inset(0 0 calc(100% - clamp(6.76725 * 1rem, 9.6675 * 1rem * var(--rem-scale), 16.43475 * 1rem)) 0);
            clip-path: inset(0 0 calc(100% - clamp(6.76725 * 1rem, 9.6675 * 1rem * var(--rem-scale), 16.43475 * 1rem)) 0);
  }

  .general-intro__lead {
    margin-top: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
  }

  .general-intro__lead p {
    line-height: 2;
  }

  .general-menu {
    margin-top: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
  }

  .general-menu__head {
    gap: clamp(0.48125 * 1rem, 0.6875 * 1rem * var(--rem-scale), 1.16875 * 1rem);
  }

  .general-menu__title {
    font-size: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
    line-height: 1.4;
  }

  .general-menu__list {
    gap: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
    margin-top: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
  }

  .general-menu__item {
    display: block;
    padding: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem) clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .general-menu__icon {
    width: clamp(6.125 * 1rem, 8.75 * 1rem * var(--rem-scale), 14.875 * 1rem);
    height: clamp(6.125 * 1rem, 8.75 * 1rem * var(--rem-scale), 14.875 * 1rem);
    margin-inline: auto;
  }

  .general-menu__body {
    margin-top: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  }

  .general-menu__item-title--sm {
    font-size: clamp(0.9625 * 1rem, 1.375 * 1rem * var(--rem-scale), 2.3375 * 1rem);
  }

  .general-menu__text {
    margin-top: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
    line-height: 2;
  }

  .general-menu__text--gap-lg {
    margin-top: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  }

  .general-menu__more {
    margin-top: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
  }

  .general-reserve {
    padding-block: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
  }

  .implant-heading {
    height: auto;
    padding: clamp(0.21875 * 1rem, 0.3125 * 1rem * var(--rem-scale), 0.53125 * 1rem) clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) clamp(0.30625 * 1rem, 0.4375 * 1rem * var(--rem-scale), 0.74375 * 1rem);
    font-size: clamp(0.9625 * 1rem, 1.375 * 1rem * var(--rem-scale), 2.3375 * 1rem);
  }

  .implant-subheading {
    padding-block: clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem) clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem);
    padding-inline: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
    font-size: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
  }

  .implant-label {
    padding-inline: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
    font-size: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
  }

  .implant-intro {
    margin-top: clamp(3.36875 * 1rem, 4.8125 * 1rem * var(--rem-scale), 8.18125 * 1rem);
  }

  .implant-intro__diagram {
    width: clamp(15.09375 * 1rem, 21.5625 * 1rem * var(--rem-scale), 36.65625 * 1rem);
    aspect-ratio: 345/345;
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .implant-intro__text {
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .implant-success {
    padding-top: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
  }

  .implant-ct {
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .implant-ct__img {
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
    width: 100%;
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .implant-ct__text {
    margin-top: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  }

  .implant-simulation {
    margin-top: clamp(1.1375 * 1rem, 1.625 * 1rem * var(--rem-scale), 2.7625 * 1rem);
  }

  .implant-simulation .implant-label {
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .implant-simulation__text {
    margin-top: clamp(1.79375 * 1rem, 2.5625 * 1rem * var(--rem-scale), 4.35625 * 1rem);
  }

  .implant-simulation .implant-photo-row {
    max-width: calc(100% - clamp(0.65625 * 1rem, 0.9375 * 1rem * var(--rem-scale), 1.59375 * 1rem));
  }

  .implant-simulation .implant-photo-row__item {
    width: 100%;
  }

  .implant-photo-row {
    flex-direction: column;
    align-items: center;
    gap: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .implant-photo-row__item {
    width: clamp(11.025 * 1rem, 15.75 * 1rem * var(--rem-scale), 26.775 * 1rem);
  }

  .implant-photo-row__img {
    width: clamp(11.025 * 1rem, 15.75 * 1rem * var(--rem-scale), 26.775 * 1rem);
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .implant-photo-row__caption {
    margin-top: clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
    font-size: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
  }

  .implant-guide {
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .implant-guide__text {
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .implant-compare {
    padding-top: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
  }

  .implant-compare__list {
    gap: clamp(1.1375 * 1rem, 1.625 * 1rem * var(--rem-scale), 2.7625 * 1rem);
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .implant-compare__row {
    flex-direction: column;
    align-items: stretch;
    gap: clamp(1.09375 * 1rem, 1.5625 * 1rem * var(--rem-scale), 2.65625 * 1rem);
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .implant-compare__img {
    margin-inline: auto;
    width: clamp(11.025 * 1rem, 15.75 * 1rem * var(--rem-scale), 26.775 * 1rem);
    aspect-ratio: 252/200;
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .implant-compare__body {
    display: contents;
  }

  .implant-reason {
    padding-top: clamp(2.1 * 1rem, 3 * 1rem * var(--rem-scale), 5.1 * 1rem);
  }

  .implant-reason__list {
    gap: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .implant-reason__text {
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .implant-warranty {
    padding-top: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
  }

  .implant-check-list {
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .implant-warranty__note {
    margin-top: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .implant-reserve {
    padding-block: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
  }

  .perio-heading {
    padding: clamp(0.21875 * 1rem, 0.3125 * 1rem * var(--rem-scale), 0.53125 * 1rem) clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) clamp(0.30625 * 1rem, 0.4375 * 1rem * var(--rem-scale), 0.74375 * 1rem);
    font-size: clamp(0.9625 * 1rem, 1.375 * 1rem * var(--rem-scale), 2.3375 * 1rem);
  }

  .perio-subheading {
    padding-inline: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
    font-size: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
  }

  .perio-text {
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .perio-notice .perio-text {
    margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  }

  .perio-feature {
    margin-top: clamp(3.36875 * 1rem, 4.8125 * 1rem * var(--rem-scale), 8.18125 * 1rem);
  }

  .perio-block {
    padding-top: clamp(2.23125 * 1rem, 3.1875 * 1rem * var(--rem-scale), 5.41875 * 1rem);
  }

  .perio-reason .perio-subheading {
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .perio-reason__figure {
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .perio-reason__img {
    max-width: 100%;
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .perio-exam__lead {
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .perio-exam__list {
    flex-direction: column;
    align-items: center;
    gap: clamp(1.00625 * 1rem, 1.4375 * 1rem * var(--rem-scale), 2.44375 * 1rem);
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .perio-exam__item {
    width: clamp(7.875 * 1rem, 11.25 * 1rem * var(--rem-scale), 19.125 * 1rem);
  }

  .perio-exam__figure {
    gap: clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
  }

  .perio-exam__img {
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .perio-exam__caption {
    font-size: clamp(0.56875 * 1rem, 0.8125 * 1rem * var(--rem-scale), 1.38125 * 1rem);
  }

  .perio-symptom__list {
    gap: clamp(1.09375 * 1rem, 1.5625 * 1rem * var(--rem-scale), 2.65625 * 1rem);
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .perio-symptom__label {
    padding: clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem) clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem);
    font-size: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
  }

  .perio-symptom__grid {
    -moz-column-gap: 0;
         column-gap: 0;
    grid-template-columns: 1fr;
    grid-template-areas: "pic" "desc" "sub" "treat";
    grid-template-rows: auto;
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .perio-symptom__figure {
    justify-self: center;
  }

  .perio-symptom__img {
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .perio-symptom__desc {
    margin-top: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
  }

  .perio-warning .inner {
    padding-bottom: 0;
  }

  .perio-warning__list {
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .perio-reserve {
    padding-block: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
  }

  .pedprev-badge {
    padding: clamp(0.21875 * 1rem, 0.3125 * 1rem * var(--rem-scale), 0.53125 * 1rem) clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) clamp(0.30625 * 1rem, 0.4375 * 1rem * var(--rem-scale), 0.74375 * 1rem);
    font-size: clamp(0.9625 * 1rem, 1.375 * 1rem * var(--rem-scale), 2.3375 * 1rem);
  }

  .pedprev-subheading {
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
    padding: clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem) clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem);
    font-size: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
  }

  .pedprev-text {
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .pedprev-row {
    flex-direction: column;
    align-items: center;
    gap: clamp(1.09375 * 1rem, 1.5625 * 1rem * var(--rem-scale), 2.65625 * 1rem);
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .pedprev-row__photo {
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .pedprev-row__photo--wide {
    width: clamp(10.0625 * 1rem, 14.375 * 1rem * var(--rem-scale), 24.4375 * 1rem);
    aspect-ratio: 230/176;
  }

  .pedprev-flow {
    flex-direction: column;
    align-items: center;
    gap: clamp(3.10625 * 1rem, 4.4375 * 1rem * var(--rem-scale), 7.54375 * 1rem);
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
    padding: clamp(2.31875 * 1rem, 3.3125 * 1rem * var(--rem-scale), 5.63125 * 1rem) clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem) clamp(2.625 * 1rem, 3.75 * 1rem * var(--rem-scale), 6.375 * 1rem);
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .pedprev-flow__item {
    width: clamp(14 * 1rem, 20 * 1rem * var(--rem-scale), 34 * 1rem);
  }

  .pedprev-flow__item:not(:last-child)::after {
    top: 100%;
    left: 50%;
    width: clamp(4.725 * 1rem, 6.75 * 1rem * var(--rem-scale), 11.475 * 1rem);
    height: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
    margin-left: 0;
    background-image: url("../img/pedprev/arrow-sp.svg");
    transform: translateX(-50%) rotate(180deg);
  }

  .pedprev-flow__badge {
    left: clamp(0.65625 * 1rem, 0.9375 * 1rem * var(--rem-scale), 1.59375 * 1rem);
    font-size: clamp(0.765625 * 1rem, 1.09375 * 1rem * var(--rem-scale), 1.859375 * 1rem);
  }

  .pedprev-flow__photo {
    width: clamp(10.36875 * 1rem, 14.8125 * 1rem * var(--rem-scale), 25.18125 * 1rem);
    aspect-ratio: 237/237;
    margin-block: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) 0;
    margin-inline: clamp(0.9625 * 1rem, 1.375 * 1rem * var(--rem-scale), 2.3375 * 1rem) auto;
  }

  .pedprev-flow__caption {
    max-width: clamp(9.31875 * 1rem, 13.3125 * 1rem * var(--rem-scale), 22.63125 * 1rem);
    margin-top: calc(clamp(1.53125 * 1rem, 2.1875 * 1rem * var(--rem-scale), 3.71875 * 1rem) * -1);
    margin-inline: clamp(3.89375 * 1rem, 5.5625 * 1rem * var(--rem-scale), 9.45625 * 1rem) 0;
    font-size: clamp(0.678125 * 1rem, 0.96875 * 1rem * var(--rem-scale), 1.646875 * 1rem);
  }

  .pedprev-reserve {
    padding-block: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
  }

  .pedprev-intro {
    padding-top: clamp(3.36875 * 1rem, 4.8125 * 1rem * var(--rem-scale), 8.18125 * 1rem);
  }

  .pedprev-age,
  .pedprev-program,
  .pedprev-freq {
    padding-top: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
  }

  .sealant-subheading {
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
    padding-bottom: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem);
  }

  .sealant-treatment {
    margin-top: clamp(3.36875 * 1rem, 4.8125 * 1rem * var(--rem-scale), 8.18125 * 1rem);
  }

  .sealant-what {
    padding-top: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
  }

  .sealant-compare {
    flex-direction: column;
    align-items: center;
    gap: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .sealant-compare__item {
    align-items: center;
    gap: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
    width: 100%;
  }

  .sealant-compare__img {
    width: clamp(11.025 * 1rem, 15.75 * 1rem * var(--rem-scale), 26.775 * 1rem);
    aspect-ratio: 252/232;
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .sealant-compare__text {
    width: 100%;
  }

  .sealant-compare__arrow {
    width: clamp(4.2 * 1rem, 6 * 1rem * var(--rem-scale), 10.2 * 1rem);
    height: clamp(1.35625 * 1rem, 1.9375 * 1rem * var(--rem-scale), 3.29375 * 1rem);
    margin-top: 0;
    -webkit-clip-path: polygon(7.8% 21.3%, 92.2% 21.3%, 50% 98.7%);
            clip-path: polygon(7.8% 21.3%, 92.2% 21.3%, 50% 98.7%);
  }

  .sealant-photo {
    padding-top: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
  }

  .sealant-photo__row {
    flex-direction: column;
    align-items: center;
    gap: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .sealant-photo__img {
    width: clamp(11.025 * 1rem, 15.75 * 1rem * var(--rem-scale), 26.775 * 1rem);
    aspect-ratio: 252/193.5;
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .sealant-reserve {
    padding-block: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
  }

  .spacer-subheading {
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
    padding-block: clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem) clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem);
  }

  .spacer-intro {
    padding-top: clamp(3.36875 * 1rem, 4.8125 * 1rem * var(--rem-scale), 8.18125 * 1rem);
  }

  .spacer-device {
    padding-top: clamp(2.23125 * 1rem, 3.1875 * 1rem * var(--rem-scale), 5.41875 * 1rem);
  }

  .spacer-device__text {
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .spacer-actual {
    padding-top: clamp(2.23125 * 1rem, 3.1875 * 1rem * var(--rem-scale), 5.41875 * 1rem);
  }

  .spacer-actual__row {
    flex-direction: column;
    align-items: center;
    gap: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .spacer-actual__img {
    width: clamp(11.025 * 1rem, 15.75 * 1rem * var(--rem-scale), 26.775 * 1rem);
    aspect-ratio: 252/193.5;
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .spacer-flow {
    gap: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .spacer-flow__figure {
    width: 100%;
    max-width: none;
    gap: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
  }

  .spacer-flow--device {
    gap: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .spacer-flow__figure--lg {
    width: 100%;
    max-width: none;
  }

  .spacer-flow__img {
    width: clamp(11.025 * 1rem, 15.75 * 1rem * var(--rem-scale), 26.775 * 1rem);
    aspect-ratio: 252/205.54;
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .spacer-flow__figure--lg .spacer-flow__img {
    width: clamp(11.025 * 1rem, 15.75 * 1rem * var(--rem-scale), 26.775 * 1rem);
    aspect-ratio: 252/231.55;
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .spacer-flow__text--center {
    text-align: center;
  }

  .spacer-reserve {
    padding-block: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
  }

  .hours__label {
    width: clamp(3.89375 * 1rem, 5.5625 * 1rem * var(--rem-scale), 9.45625 * 1rem);
    padding-block: clamp(0.2625 * 1rem, 0.375 * 1rem * var(--rem-scale), 0.6375 * 1rem);
    font-size: clamp(0.56875 * 1rem, 0.8125 * 1rem * var(--rem-scale), 1.38125 * 1rem);
  }

  .hours__table {
    margin-top: clamp(0.65625 * 1rem, 0.9375 * 1rem * var(--rem-scale), 1.59375 * 1rem);
  }

  .hours__table th,
  .hours__table td {
    padding-block: clamp(0.13125 * 1rem, 0.1875 * 1rem * var(--rem-scale), 0.31875 * 1rem);
    font-size: clamp(0.48125 * 1rem, 0.6875 * 1rem * var(--rem-scale), 1.16875 * 1rem);
  }

  .hours__table thead th {
    padding-block: clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
  }

  .hours__table tbody tr:first-child th,
  .hours__table tbody tr:first-child td {
    padding-top: clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
  }

  .hours__table tbody tr:last-child th,
  .hours__table tbody tr:last-child td {
    padding-bottom: clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
  }

  .hours__table th:first-child {
    width: 29.6%;
  }

  .hours__note {
    justify-content: center;
    gap: clamp(0.2625 * 1rem, 0.375 * 1rem * var(--rem-scale), 0.6375 * 1rem) clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
    max-width: clamp(14.6125 * 1rem, 20.875 * 1rem * var(--rem-scale), 35.4875 * 1rem);
    margin-top: clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
  }

  .hours__note-item {
    font-size: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .reserve-lead {
    margin-top: clamp(3.325 * 1rem, 4.75 * 1rem * var(--rem-scale), 8.075 * 1rem);
  }

  .reserve-lead__text {
    line-height: 2.2;
    text-align: left;
  }

  .reserve-hours {
    margin-top: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
  }

  .reserve-cancel {
    margin-top: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
  }

  .reserve-cancel__box {
    padding: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem) clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem) clamp(1.1375 * 1rem, 1.625 * 1rem * var(--rem-scale), 2.7625 * 1rem);
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .reserve-cancel__title .tag {
    line-height: 2.1;
  }

  .reserve-cancel__text {
    gap: clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
    font-size: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
  }

  .reserve-cancel__list {
    align-items: stretch;
    gap: clamp(0.2625 * 1rem, 0.375 * 1rem * var(--rem-scale), 0.6375 * 1rem);
    margin-top: clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
  }

  .reserve-cancel__item {
    padding: 0;
    line-height: 2;
    background-color: transparent;
    border-radius: 0;
  }

  .reserve-cta {
    padding-block: clamp(4.15625 * 1rem, 5.9375 * 1rem * var(--rem-scale), 10.09375 * 1rem) clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
  }

  .access-hours {
    margin-top: clamp(3.36875 * 1rem, 4.8125 * 1rem * var(--rem-scale), 8.18125 * 1rem);
  }

  .access-hours .hours__label {
    margin-top: clamp(1.79375 * 1rem, 2.5625 * 1rem * var(--rem-scale), 4.35625 * 1rem);
  }

  .access-info {
    margin-top: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
  }

  .access-info__lead {
    margin-top: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
    line-height: 2.2;
    text-align: left;
  }

  .access-info__row {
    flex-direction: column;
    gap: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
    margin-top: clamp(1.225 * 1rem, 1.75 * 1rem * var(--rem-scale), 2.975 * 1rem);
  }

  .access-clinic {
    grid-template-columns: 1fr;
    width: 100%;
  }

  .access-clinic__label {
    width: clamp(2.93125 * 1rem, 4.1875 * 1rem * var(--rem-scale), 7.11875 * 1rem);
  }

  .access-clinic__block:nth-of-type(1) {
    margin-top: clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
  }

  .access-clinic__badges {
    justify-self: start;
    justify-content: flex-start;
  }

  .access-clinic__name {
    font-size: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  }

  .access-clinic__label {
    font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  }

  .access-clinic__text {
    font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  }

  .access-info__photo {
    flex-basis: auto;
    width: 100%;
    min-width: 0;
    max-width: none;
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .access-map {
    gap: clamp(1.4875 * 1rem, 2.125 * 1rem * var(--rem-scale), 3.6125 * 1rem);
    margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  }

  .access-map__iframe {
    height: clamp(18.8125 * 1rem, 26.875 * 1rem * var(--rem-scale), 45.6875 * 1rem);
  }

  .access-cta {
    padding-block: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
  }

  .news-list {
    margin-top: clamp(3.36875 * 1rem, 4.8125 * 1rem * var(--rem-scale), 8.18125 * 1rem);
  }

  .news-list__link {
    flex-direction: column;
    align-items: stretch;
    justify-content: center;
    gap: clamp(0.2625 * 1rem, 0.375 * 1rem * var(--rem-scale), 0.6375 * 1rem);
    padding-inline: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .news-list__date {
    flex: 0 0 auto;
    font-size: clamp(0.56875 * 1rem, 0.8125 * 1rem * var(--rem-scale), 1.38125 * 1rem);
    line-height: 1.2;
  }

  .news-pagination {
    margin-top: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
  }

  .news-pagination__list {
    gap: clamp(0.83125 * 1rem, 1.1875 * 1rem * var(--rem-scale), 2.01875 * 1rem);
  }

  .news-pagination__link {
    min-width: clamp(0.9625 * 1rem, 1.375 * 1rem * var(--rem-scale), 2.3375 * 1rem);
  }

  .news-pagination__link--next {
    margin-left: 0;
  }

  .news-pagination__ellipsis {
    min-width: clamp(0.9625 * 1rem, 1.375 * 1rem * var(--rem-scale), 2.3375 * 1rem);
  }

  .news-reserve {
    padding-block: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
  }

  .news-detail-article {
    margin-top: clamp(3.4125 * 1rem, 4.875 * 1rem * var(--rem-scale), 8.2875 * 1rem);
  }

  .news-detail-article__header {
    display: block;
    padding-block: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
    padding-inline: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .news-detail-article__date {
    font-size: clamp(0.56875 * 1rem, 0.8125 * 1rem * var(--rem-scale), 1.38125 * 1rem);
    line-height: 1.2;
  }

  .news-detail-article__title {
    margin-top: clamp(0.2625 * 1rem, 0.375 * 1rem * var(--rem-scale), 0.6375 * 1rem);
    font-size: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
    line-height: 1.8;
  }

  .news-detail-article__body {
    margin-top: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
    padding-inline: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .news-detail-article__body p + p {
    margin-top: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
  }

  .news-detail-article__back {
    margin-top: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
  }

  .news-detail-reserve {
    padding-block: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
  }

  .pedortho-badge {
    padding: clamp(0.21875 * 1rem, 0.3125 * 1rem * var(--rem-scale), 0.53125 * 1rem) clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) clamp(0.30625 * 1rem, 0.4375 * 1rem * var(--rem-scale), 0.74375 * 1rem);
    font-size: clamp(0.9625 * 1rem, 1.375 * 1rem * var(--rem-scale), 2.3375 * 1rem);
  }

  .pedortho-subheading {
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
    padding: clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem) clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem);
    font-size: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
  }

  .pedortho-text {
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .pedortho-connector {
    height: clamp(2.1 * 1rem, 3 * 1rem * var(--rem-scale), 5.1 * 1rem);
    aspect-ratio: 147/48;
    -webkit-clip-path: polygon(6.6% 25%, 93.4% 25%, 50% 100%);
            clip-path: polygon(6.6% 25%, 93.4% 25%, 50% 100%);
  }

  .pedortho-jaw {
    padding-top: clamp(3.36875 * 1rem, 4.8125 * 1rem * var(--rem-scale), 8.18125 * 1rem);
  }

  .pedortho-jaw__row {
    flex-direction: column;
    align-items: center;
    gap: clamp(0.13125 * 1rem, 0.1875 * 1rem * var(--rem-scale), 0.31875 * 1rem);
    padding-bottom: clamp(0.30625 * 1rem, 0.4375 * 1rem * var(--rem-scale), 0.74375 * 1rem);
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .pedortho-jaw .pedortho-connector {
    margin-bottom: clamp(0.65625 * 1rem, 0.9375 * 1rem * var(--rem-scale), 1.59375 * 1rem);
  }

  .pedortho-jaw__card {
    width: clamp(11.025 * 1rem, 15.75 * 1rem * var(--rem-scale), 26.775 * 1rem);
  }

  .pedortho-jaw__photo {
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .pedortho-jaw__caption {
    margin-top: clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
    font-size: clamp(0.56875 * 1rem, 0.8125 * 1rem * var(--rem-scale), 1.38125 * 1rem);
    line-height: 1.54;
  }

  .pedortho-diagram {
    padding-top: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
  }

  .pedortho-diagram__row {
    flex-direction: column;
    align-items: center;
    gap: clamp(0.48125 * 1rem, 0.6875 * 1rem * var(--rem-scale), 1.16875 * 1rem);
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .pedortho-diagram .pedortho-connector {
    margin-bottom: clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
  }

  .pedortho-diagram__card {
    width: clamp(11.025 * 1rem, 15.75 * 1rem * var(--rem-scale), 26.775 * 1rem);
    height: clamp(8.18125 * 1rem, 11.6875 * 1rem * var(--rem-scale), 19.86875 * 1rem);
    padding-top: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .pedortho-diagram__img--before {
    width: clamp(8.3125 * 1rem, 11.875 * 1rem * var(--rem-scale), 20.1875 * 1rem);
  }

  .pedortho-diagram__img--after {
    width: clamp(9.45 * 1rem, 13.5 * 1rem * var(--rem-scale), 22.95 * 1rem);
  }

  .pedortho-diagram__label {
    top: clamp(9.31875 * 1rem, 13.3125 * 1rem * var(--rem-scale), 22.63125 * 1rem);
    font-size: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  }

  .pedortho-device {
    padding-top: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
  }

  .pedortho-device__row {
    flex-direction: column;
    align-items: center;
    gap: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .pedortho-device__photo {
    width: clamp(11.025 * 1rem, 15.75 * 1rem * var(--rem-scale), 26.775 * 1rem);
    aspect-ratio: 252/195;
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .pedortho-timing {
    padding-top: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
  }

  .pedortho-observe {
    padding-top: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
  }

  .pedortho-case {
    padding-top: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
  }

  .pedortho-case__list {
    gap: clamp(0.48125 * 1rem, 0.6875 * 1rem * var(--rem-scale), 1.16875 * 1rem);
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .pedortho-case__photo {
    aspect-ratio: 163/70;
    border-radius: clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
  }

  .pedortho-case__photo--lg {
    aspect-ratio: 163/89;
  }

  .pedortho-case__arrow {
    width: clamp(0.74375 * 1rem, 1.0625 * 1rem * var(--rem-scale), 1.80625 * 1rem);
    height: clamp(1.79375 * 1rem, 2.5625 * 1rem * var(--rem-scale), 4.35625 * 1rem);
    margin-top: clamp(0.65625 * 1rem, 0.9375 * 1rem * var(--rem-scale), 1.59375 * 1rem);
    margin-right: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem);
  }

  .pedortho-myobrace {
    padding-top: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
  }

  .pedortho-reserve {
    padding-block: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
  }

  .staff-doctor {
    margin-top: clamp(3.4125 * 1rem, 4.875 * 1rem * var(--rem-scale), 8.2875 * 1rem);
  }

  .staff-doctor + .staff-doctor {
    margin-top: clamp(2.23125 * 1rem, 3.1875 * 1rem * var(--rem-scale), 5.41875 * 1rem);
  }

  .staff-doctor__band {
    width: clamp(11.59375 * 1rem, 16.5625 * 1rem * var(--rem-scale), 28.15625 * 1rem);
    height: clamp(12.99375 * 1rem, 18.5625 * 1rem * var(--rem-scale), 31.55625 * 1rem);
    border-radius: 0 clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) 0;
  }

  .staff-doctor__inner {
    flex-direction: column;
    gap: clamp(1.6625 * 1rem, 2.375 * 1rem * var(--rem-scale), 4.0375 * 1rem);
  }

  .staff-doctor__photo {
    width: clamp(10.7625 * 1rem, 15.375 * 1rem * var(--rem-scale), 26.1375 * 1rem);
    aspect-ratio: 246/299;
    margin-inline: auto;
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .staff-doctor__text {
    margin-top: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
    line-height: 2.2;
  }

  .staff-doctor__name {
    width: -moz-fit-content;
    width: fit-content;
    margin-top: clamp(0.65625 * 1rem, 0.9375 * 1rem * var(--rem-scale), 1.59375 * 1rem);
    -webkit-margin-start: auto;
            margin-inline-start: auto;
  }

  .staff-doctor__role {
    line-height: 1.6;
  }

  .staff-doctor__card {
    flex-direction: column;
    gap: clamp(1.225 * 1rem, 1.75 * 1rem * var(--rem-scale), 2.975 * 1rem);
    margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
    padding: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem) clamp(0.765625 * 1rem, 1.09375 * 1rem * var(--rem-scale), 1.859375 * 1rem);
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .staff-doctor__history {
    gap: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
    width: 100%;
    padding-right: 0;
    padding-bottom: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  }

  .staff-doctor__history::after {
    top: auto;
    right: auto;
    bottom: 0;
    left: 0;
    width: 100%;
    height: auto;
    background-image: radial-gradient(circle closest-side, #145aa6 0 54%, transparent 100%);
    background-repeat: repeat-x;
    height: clamp(0.13125 * 1rem, 0.1875 * 1rem * var(--rem-scale), 0.31875 * 1rem);
    background-size: clamp(0.48125 * 1rem, 0.6875 * 1rem * var(--rem-scale), 1.16875 * 1rem) clamp(0.13125 * 1rem, 0.1875 * 1rem * var(--rem-scale), 0.31875 * 1rem);
    background-position: calc(clamp(0.48125 * 1rem, 0.6875 * 1rem * var(--rem-scale), 1.16875 * 1rem) * -0.5) center;
  }

  .staff-doctor__history .tag,
  .staff-doctor__policy .tag {
    line-height: 2.1;
  }

  .staff-doctor__history-body {
    width: 100%;
  }

  .staff-doctor__history-text {
    line-height: 1.857;
  }

  .staff-doctor__policy {
    gap: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
    width: 100%;
  }

  .staff-team {
    margin-top: clamp(4.55 * 1rem, 6.5 * 1rem * var(--rem-scale), 11.05 * 1rem);
  }

  .staff-team__lead {
    margin-top: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
    line-height: 2;
  }

  .staff-team__list {
    flex-direction: column;
    align-items: center;
    gap: clamp(1.35625 * 1rem, 1.9375 * 1rem * var(--rem-scale), 3.29375 * 1rem);
  }

  .staff-team__item {
    width: clamp(15.09375 * 1rem, 21.5625 * 1rem * var(--rem-scale), 36.65625 * 1rem);
  }

  .staff-team__photo {
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .staff-team__item-text {
    margin-top: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
  }

  .staff-team__group {
    margin-top: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
  }

  .staff-team__group-img {
    width: clamp(26.25 * 1rem, 37.5 * 1rem * var(--rem-scale), 63.75 * 1rem);
    max-width: none;
    aspect-ratio: 600/255;
    margin-left: 50%;
    transform: translateX(-50%);
  }

  .staff-reserve {
    padding-block: clamp(3.0625 * 1rem, 4.375 * 1rem * var(--rem-scale), 7.4375 * 1rem);
  }

  .pediatric-menu {
    margin-top: clamp(3.36875 * 1rem, 4.8125 * 1rem * var(--rem-scale), 8.18125 * 1rem);
  }

  .pediatric-menu__inner {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: clamp(0.459375 * 1rem, 0.65625 * 1rem * var(--rem-scale), 1.115625 * 1rem) clamp(0.65625 * 1rem, 0.9375 * 1rem * var(--rem-scale), 1.59375 * 1rem);
    max-width: clamp(15.09375 * 1rem, 21.5625 * 1rem * var(--rem-scale), 36.65625 * 1rem);
    padding-inline: clamp(0.30625 * 1rem, 0.4375 * 1rem * var(--rem-scale), 0.74375 * 1rem);
  }

  .pediatric-menu__row {
    display: contents;
  }

  .pediatric-menu__row--1 {
    margin-bottom: 0;
  }

  .pediatric-menu__item {
    min-height: 0;
    height: clamp(2.5375 * 1rem, 3.625 * 1rem * var(--rem-scale), 6.1625 * 1rem);
    gap: 0;
    padding-inline: clamp(0.48125 * 1rem, 0.6875 * 1rem * var(--rem-scale), 1.16875 * 1rem) clamp(0.39375 * 1rem, 0.5625 * 1rem * var(--rem-scale), 0.95625 * 1rem);
    border-radius: clamp(1.26875 * 1rem, 1.8125 * 1rem * var(--rem-scale), 3.08125 * 1rem);
  }

  .pediatric-menu__label {
    font-size: clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem);
  }

  .pediatric-intro {
    margin-top: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
  }

  .pediatric-intro__card {
    min-height: 0;
    padding-bottom: clamp(5.55625 * 1rem, 7.9375 * 1rem * var(--rem-scale), 13.49375 * 1rem);
    padding-inline: 0;
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .pediatric-intro__list {
    gap: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
    max-width: clamp(12.03125 * 1rem, 17.1875 * 1rem * var(--rem-scale), 29.21875 * 1rem);
    margin-inline: clamp(1.53125 * 1rem, 2.1875 * 1rem * var(--rem-scale), 3.71875 * 1rem) auto;
    padding-top: clamp(1.8375 * 1rem, 2.625 * 1rem * var(--rem-scale), 4.4625 * 1rem);
  }

  .pediatric-intro__item p {
    font-size: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
    line-height: 1.5;
  }

  .pediatric-intro__icon {
    width: clamp(1.1375 * 1rem, 1.625 * 1rem * var(--rem-scale), 2.7625 * 1rem);
    height: clamp(1.1375 * 1rem, 1.625 * 1rem * var(--rem-scale), 2.7625 * 1rem);
    margin-top: 0;
  }

  .pediatric-intro__photo {
    top: clamp(11.15625 * 1rem, 15.9375 * 1rem * var(--rem-scale), 27.09375 * 1rem);
    right: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
    bottom: auto;
    width: clamp(5.6875 * 1rem, 8.125 * 1rem * var(--rem-scale), 13.8125 * 1rem);
    aspect-ratio: 130/195;
  }

  .pediatric-specialist {
    padding-top: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
  }

  .pediatric-specialist__card {
    max-width: 100%;
    padding: clamp(1.18125 * 1rem, 1.6875 * 1rem * var(--rem-scale), 2.86875 * 1rem) clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem) clamp(1.18125 * 1rem, 1.6875 * 1rem * var(--rem-scale), 2.86875 * 1rem);
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .pediatric-specialist__text {
    max-width: 100%;
    gap: clamp(0.30625 * 1rem, 0.4375 * 1rem * var(--rem-scale), 0.74375 * 1rem);
    margin-top: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
    font-size: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
    line-height: 1.8;
  }

  .pediatric-specialist__narrow {
    max-width: 100%;
  }

  .pediatric-specialist__narrow--aside {
    max-width: clamp(6.08125 * 1rem, 8.6875 * 1rem * var(--rem-scale), 14.76875 * 1rem);
  }

  .pediatric-specialist__note {
    max-width: clamp(6.08125 * 1rem, 8.6875 * 1rem * var(--rem-scale), 14.76875 * 1rem);
    -webkit-padding-end: 0;
            padding-inline-end: 0;
    text-align: left;
  }

  .pediatric-specialist__photo {
    top: clamp(30.93125 * 1rem, 44.1875 * 1rem * var(--rem-scale), 75.11875 * 1rem);
    right: auto;
    bottom: auto;
    left: clamp(8.00625 * 1rem, 11.4375 * 1rem * var(--rem-scale), 19.44375 * 1rem);
    width: clamp(4.9875 * 1rem, 7.125 * 1rem * var(--rem-scale), 12.1125 * 1rem);
  }

  .pediatric-specialist__balloon {
    top: clamp(28.83125 * 1rem, 41.1875 * 1rem * var(--rem-scale), 70.01875 * 1rem);
    bottom: auto;
    left: clamp(10.98125 * 1rem, 15.6875 * 1rem * var(--rem-scale), 26.66875 * 1rem);
    width: clamp(4.15625 * 1rem, 5.9375 * 1rem * var(--rem-scale), 10.09375 * 1rem);
    min-width: 0;
  }

  .pediatric-specialist__balloon::before {
    top: clamp(0.39375 * 1rem, 0.5625 * 1rem * var(--rem-scale), 0.95625 * 1rem);
    left: calc(clamp(0.39375 * 1rem, 0.5625 * 1rem * var(--rem-scale), 0.95625 * 1rem) * -1);
    width: clamp(1.8375 * 1rem, 2.625 * 1rem * var(--rem-scale), 4.4625 * 1rem);
    transform: rotate(-73.3deg);
  }

  .pediatric-specialist__balloon::after {
    top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
    left: clamp(0.83125 * 1rem, 1.1875 * 1rem * var(--rem-scale), 2.01875 * 1rem);
    width: clamp(1.88125 * 1rem, 2.6875 * 1rem * var(--rem-scale), 4.56875 * 1rem);
    transform: rotate(-36deg);
  }

  .pediatric-specialist__balloon-text {
    font-size: clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
    transform: rotate(-48.5deg);
  }

  .pediatric-lead {
    margin-top: clamp(1.96875 * 1rem, 2.8125 * 1rem * var(--rem-scale), 4.78125 * 1rem);
  }

  .pediatric-course {
    margin-top: clamp(1.53125 * 1rem, 2.1875 * 1rem * var(--rem-scale), 3.71875 * 1rem);
  }

  .pediatric-course__list {
    flex-direction: column;
    gap: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  }

  .pediatric-course__item {
    display: grid;
    grid-template-columns: auto 1fr;
    -moz-column-gap: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
         column-gap: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
    row-gap: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
    padding: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem) clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .pediatric-course__icon {
    width: clamp(3.0625 * 1rem, 4.375 * 1rem * var(--rem-scale), 7.4375 * 1rem);
    height: clamp(3.0625 * 1rem, 4.375 * 1rem * var(--rem-scale), 7.4375 * 1rem);
  }

  .pediatric-course__body {
    display: contents;
  }

  .pediatric-course__title {
    font-size: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  }

  .pediatric-course__text {
    grid-column: 1/-1;
    margin-top: 0;
    line-height: 2;
  }

  .pediatric-visit {
    margin-top: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
  }

  .pediatric-visit__text {
    margin-top: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
    line-height: 2;
  }

  .pediatric-worry {
    margin-top: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
  }

  .pediatric-worry__inner {
    max-width: clamp(14.4375 * 1rem, 20.625 * 1rem * var(--rem-scale), 35.0625 * 1rem);
    padding-block: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
    background-color: #fff;
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .pediatric-worry__list {
    flex-direction: column;
    align-items: center;
    gap: clamp(0.39375 * 1rem, 0.5625 * 1rem * var(--rem-scale), 0.95625 * 1rem);
    margin-top: clamp(1.1375 * 1rem, 1.625 * 1rem * var(--rem-scale), 2.7625 * 1rem);
    width: -moz-fit-content;
    width: fit-content;
  }

  .pediatric-worry__item {
    width: clamp(8.09375 * 1rem, 11.5625 * 1rem * var(--rem-scale), 19.65625 * 1rem);
  }

  .pediatric-worry__item p {
    font-size: clamp(0.56875 * 1rem, 0.8125 * 1rem * var(--rem-scale), 1.38125 * 1rem);
  }

  .pediatric-worry__note {
    flex-direction: column;
    min-height: 0;
    max-width: clamp(11.76875 * 1rem, 16.8125 * 1rem * var(--rem-scale), 28.58125 * 1rem);
    margin-top: clamp(6.0375 * 1rem, 8.625 * 1rem * var(--rem-scale), 14.6625 * 1rem);
    padding: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem) clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
    z-index: 0;
    background-color: transparent;
  }

  .pediatric-worry__note::after {
    content: "";
    position: absolute;
    z-index: -1;
    inset: 0;
    background-color: #d8ecfd;
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .pediatric-worry__photo {
    z-index: -1;
    top: calc(clamp(4.9875 * 1rem, 7.125 * 1rem * var(--rem-scale), 12.1125 * 1rem) * -1);
    left: 50%;
    width: clamp(4.8125 * 1rem, 6.875 * 1rem * var(--rem-scale), 11.6875 * 1rem);
    aspect-ratio: 110/124;
    transform: translateX(-50%);
  }

  .pediatric-worry__note-text {
    margin-top: 0;
    font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
    text-align: center;
  }

  .pediatric-fun {
    margin-top: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
    padding-block: clamp(2.5375 * 1rem, 3.625 * 1rem * var(--rem-scale), 6.1625 * 1rem) clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
  }

  .pediatric-fun::before {
    top: clamp(12.29375 * 1rem, 17.5625 * 1rem * var(--rem-scale), 29.85625 * 1rem);
  }

  .pediatric-fun__bg {
    width: clamp(44.625 * 1rem, 63.75 * 1rem * var(--rem-scale), 108.375 * 1rem);
    height: clamp(44.625 * 1rem, 63.75 * 1rem * var(--rem-scale), 108.375 * 1rem);
  }

  .pediatric-fun__title {
    font-size: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
    line-height: 1.4;
  }

  .pediatric-fun__list {
    grid-template-columns: 1fr;
    row-gap: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
    max-width: none;
    margin-top: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
  }

  .pediatric-fun__item {
    flex-direction: column;
    align-items: flex-start;
    gap: clamp(1.44375 * 1rem, 2.0625 * 1rem * var(--rem-scale), 3.50625 * 1rem);
  }

  .pediatric-fun__photo {
    width: clamp(11.025 * 1rem, 15.75 * 1rem * var(--rem-scale), 26.775 * 1rem);
    aspect-ratio: 252/292;
    margin-inline: auto;
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .pediatric-fun__body {
    width: 100%;
    padding-top: 0;
  }

  .pediatric-fun__text {
    margin-top: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
  }

  .pediatric-fun__more {
    margin-top: clamp(1.4875 * 1rem, 2.125 * 1rem * var(--rem-scale), 3.6125 * 1rem);
  }

  .pediatric-mom {
    padding-bottom: clamp(2.5375 * 1rem, 3.625 * 1rem * var(--rem-scale), 6.1625 * 1rem);
  }

  .pediatric-mom__title {
    font-size: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
    line-height: 1.4;
  }

  .pediatric-mom__list {
    flex-direction: column;
    row-gap: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
    margin-top: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
  }

  .pediatric-mom__item {
    width: 100%;
  }

  .pediatric-mom__photo {
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .pediatric-mom__text {
    margin-top: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
  }

  .pediatric-mom__more {
    margin-top: clamp(1.35625 * 1rem, 1.9375 * 1rem * var(--rem-scale), 3.29375 * 1rem);
  }

  .pediatric-treatment {
    padding-top: clamp(2.23125 * 1rem, 3.1875 * 1rem * var(--rem-scale), 5.41875 * 1rem);
  }

  .pediatric-treatment__title {
    gap: clamp(0.48125 * 1rem, 0.6875 * 1rem * var(--rem-scale), 1.16875 * 1rem);
    font-size: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
    line-height: 1.4;
  }

  .pediatric-treatment__line {
    max-width: clamp(3.15 * 1rem, 4.5 * 1rem * var(--rem-scale), 7.65 * 1rem);
  }

  .pediatric-treatment__list {
    gap: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
    margin-top: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
  }

  .pediatric-treatment__item {
    flex-direction: column;
    align-items: stretch;
    gap: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
    padding: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem) clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .pediatric-treatment__icon {
    width: clamp(6.125 * 1rem, 8.75 * 1rem * var(--rem-scale), 14.875 * 1rem);
    height: clamp(6.125 * 1rem, 8.75 * 1rem * var(--rem-scale), 14.875 * 1rem);
    margin-inline: auto;
  }

  .pediatric-treatment__body {
    flex: 0 1 auto;
  }

  .pediatric-treatment__text {
    margin-top: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
    line-height: 2;
  }

  .pediatric-treatment__more {
    margin-top: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
  }

  .pediatric-age {
    margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
    padding: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem) clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .pediatric-age__title {
    font-size: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
    line-height: 1.4;
  }

  .pediatric-age__list {
    gap: clamp(0.91875 * 1rem, 1.3125 * 1rem * var(--rem-scale), 2.23125 * 1rem);
    margin-top: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
  }

  .pediatric-age__item {
    flex-direction: column;
    gap: 0;
    padding: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem) clamp(0.9625 * 1rem, 1.375 * 1rem * var(--rem-scale), 2.3375 * 1rem);
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .pediatric-age__text {
    margin-top: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
  }

  .pediatric-reserve {
    padding-block: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
  }

  .clinic-adult {
    margin-top: clamp(3.36875 * 1rem, 4.8125 * 1rem * var(--rem-scale), 8.18125 * 1rem);
  }

  .clinic-adult__title {
    font-size: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  }

  .clinic-child {
    margin-top: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
    padding-top: clamp(2.5375 * 1rem, 3.625 * 1rem * var(--rem-scale), 6.1625 * 1rem);
  }

  .clinic-child__bg {
    width: clamp(44.625 * 1rem, 63.75 * 1rem * var(--rem-scale), 108.375 * 1rem);
    border-radius: 50% 50% 0 0/clamp(22.3125 * 1rem, 31.875 * 1rem * var(--rem-scale), 54.1875 * 1rem) clamp(22.3125 * 1rem, 31.875 * 1rem * var(--rem-scale), 54.1875 * 1rem) 0 0;
  }

  .clinic-child__title {
    font-size: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
    line-height: 1.4;
  }

  .clinic-child__divider {
    max-width: clamp(15.09375 * 1rem, 21.5625 * 1rem * var(--rem-scale), 36.65625 * 1rem);
    margin-block: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem) clamp(1.96875 * 1rem, 2.8125 * 1rem * var(--rem-scale), 4.78125 * 1rem);
    background-image: radial-gradient(circle closest-side, #fff 0 54%, transparent 100%);
    background-repeat: repeat-x;
    height: clamp(0.0984375 * 1rem, 0.140625 * 1rem * var(--rem-scale), 0.2390625 * 1rem);
    background-size: clamp(0.2646875 * 1rem, 0.378125 * 1rem * var(--rem-scale), 0.6428125 * 1rem) clamp(0.0984375 * 1rem, 0.140625 * 1rem * var(--rem-scale), 0.2390625 * 1rem);
    background-position: calc(clamp(0.2646875 * 1rem, 0.378125 * 1rem * var(--rem-scale), 0.6428125 * 1rem) * -0.5) center;
  }

  .clinic-child__wave {
    width: clamp(26.38125 * 1rem, 37.6875 * 1rem * var(--rem-scale), 64.06875 * 1rem);
    height: clamp(2.625 * 1rem, 3.75 * 1rem * var(--rem-scale), 6.375 * 1rem);
    margin-top: clamp(2.275 * 1rem, 3.25 * 1rem * var(--rem-scale), 5.525 * 1rem);
    background-image: url("../img/clinic-page/wave-deco-sp.svg");
  }

  .clinic-equip {
    margin-top: clamp(2.45 * 1rem, 3.5 * 1rem * var(--rem-scale), 5.95 * 1rem);
    padding-top: 0;
  }

  .clinic-equip__title {
    font-size: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  }

  .clinic-room {
    margin-top: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
  }

  .clinic-room--dots .clinic-treat__photos::before {
    top: clamp(3.3775 * 1rem, 4.825 * 1rem * var(--rem-scale), 8.2025 * 1rem);
    left: calc(clamp(2.835 * 1rem, 4.05 * 1rem * var(--rem-scale), 6.885 * 1rem) * -1);
    width: clamp(6.733125 * 1rem, 9.61875 * 1rem * var(--rem-scale), 16.351875 * 1rem);
    height: clamp(4.668125 * 1rem, 6.66875 * 1rem * var(--rem-scale), 11.336875 * 1rem);
    background-size: clamp(0.3535 * 1rem, 0.505 * 1rem * var(--rem-scale), 0.8585 * 1rem) clamp(0.3535 * 1rem, 0.505 * 1rem * var(--rem-scale), 0.8585 * 1rem);
  }

  .clinic-room--photo-mid.clinic-room--reverse .clinic-room__inner {
    flex-direction: column;
  }

  .clinic-room--photo-mid.clinic-room--reverse .clinic-room__body {
    display: contents;
  }

  .clinic-room--photo-mid.clinic-room--reverse .clinic-room__tag {
    order: 1;
  }

  .clinic-room--photo-mid.clinic-room--reverse .clinic-room__text {
    order: 2;
    margin-top: calc(clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem) * -1);
  }

  .clinic-room--photo-mid.clinic-room--reverse .clinic-room__photo {
    order: 3;
  }

  .clinic-room--photo-mid.clinic-room--reverse .clinic-room__sub-photo-group {
    order: 4;
    margin-top: 0;
  }

  .clinic-room--light {
    margin-top: clamp(2.40625 * 1rem, 3.4375 * 1rem * var(--rem-scale), 5.84375 * 1rem);
  }

  .clinic-room--reverse:not(.clinic-room--light):not(.clinic-room--photo-mid) {
    margin-top: clamp(2.75625 * 1rem, 3.9375 * 1rem * var(--rem-scale), 6.69375 * 1rem);
  }

  .clinic-room--light.clinic-room--dots {
    margin-top: clamp(2.1 * 1rem, 3 * 1rem * var(--rem-scale), 5.1 * 1rem);
  }

  .inner + .clinic-room {
    margin-top: clamp(1.61875 * 1rem, 2.3125 * 1rem * var(--rem-scale), 3.93125 * 1rem);
  }

  .clinic-room__band {
    top: auto;
    bottom: calc(clamp(0.83125 * 1rem, 1.1875 * 1rem * var(--rem-scale), 2.01875 * 1rem) * -1);
    left: clamp(4.85625 * 1rem, 6.9375 * 1rem * var(--rem-scale), 11.79375 * 1rem);
    right: auto;
    width: clamp(12.20625 * 1rem, 17.4375 * 1rem * var(--rem-scale), 29.64375 * 1rem);
    height: clamp(7.74375 * 1rem, 11.0625 * 1rem * var(--rem-scale), 18.80625 * 1rem);
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) 0 0 clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .clinic-room--band-sm {
    margin-top: clamp(2.05625 * 1rem, 2.9375 * 1rem * var(--rem-scale), 4.99375 * 1rem);
  }

  .clinic-room--band-sm .clinic-room__band {
    bottom: clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem);
    height: clamp(5.775 * 1rem, 8.25 * 1rem * var(--rem-scale), 14.025 * 1rem);
  }

  .clinic-room--reverse .clinic-room__band {
    right: auto;
    left: calc(clamp(0.2625 * 1rem, 0.375 * 1rem * var(--rem-scale), 0.6375 * 1rem) * -1);
    border-radius: 0 clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) 0;
  }

  .clinic-room__inner {
    flex-direction: column;
    gap: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .clinic-room--reverse .clinic-room__inner {
    flex-direction: column-reverse;
  }

  .clinic-room__body {
    flex: 1;
  }

  .clinic-child .clinic-room__tag .tag {
    padding-block: clamp(0.30625 * 1rem, 0.4375 * 1rem * var(--rem-scale), 0.74375 * 1rem);
    font-size: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
    line-height: 2.45;
  }

  .clinic-room__text {
    margin-top: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
    line-height: 2.2;
  }

  .clinic-room--light .clinic-room__text {
    line-height: 1.8;
  }

  .clinic-room__photo {
    width: clamp(11.8125 * 1rem, 16.875 * 1rem * var(--rem-scale), 28.6875 * 1rem);
    aspect-ratio: 270/188;
    margin-inline: auto clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem);
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .clinic-room--reverse:not(.clinic-room--light):not(.clinic-room--photo-mid) .clinic-room__photo {
    margin-inline: clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem) auto;
  }

  .clinic-room__photo--tall {
    width: clamp(11.025 * 1rem, 15.75 * 1rem * var(--rem-scale), 26.775 * 1rem);
    aspect-ratio: 252/271;
    margin-left: 0;
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .clinic-room__photo--square {
    width: clamp(11.8125 * 1rem, 16.875 * 1rem * var(--rem-scale), 28.6875 * 1rem);
    aspect-ratio: 270/238;
    margin-right: 0;
  }

  .clinic-room__sub-photo {
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
    width: clamp(7 * 1rem, 10 * 1rem * var(--rem-scale), 17 * 1rem);
    aspect-ratio: 160/125;
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .clinic-room__sub-photo--lg {
    width: clamp(7.875 * 1rem, 11.25 * 1rem * var(--rem-scale), 19.125 * 1rem);
    aspect-ratio: 180/129;
  }

  .clinic-room__sub-photo-group {
    width: 100%;
    height: clamp(11.06875 * 1rem, 15.8125 * 1rem * var(--rem-scale), 26.88125 * 1rem);
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .clinic-room__sub-photo--a,
  .clinic-room__sub-photo--b {
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
    margin-top: 0;
  }

  .clinic-room__sub-photo--a {
    left: clamp(7.175 * 1rem, 10.25 * 1rem * var(--rem-scale), 17.425 * 1rem);
    width: clamp(7.65625 * 1rem, 10.9375 * 1rem * var(--rem-scale), 18.59375 * 1rem);
    aspect-ratio: 175/124;
  }

  .clinic-room__sub-photo--b {
    top: clamp(6.125 * 1rem, 8.75 * 1rem * var(--rem-scale), 14.875 * 1rem);
    left: clamp(4.41875 * 1rem, 6.3125 * 1rem * var(--rem-scale), 10.73125 * 1rem);
    width: clamp(6.9125 * 1rem, 9.875 * 1rem * var(--rem-scale), 16.7875 * 1rem);
    aspect-ratio: 158/113;
  }

  .clinic-room__cluster {
    width: 100%;
    height: clamp(11.375 * 1rem, 16.25 * 1rem * var(--rem-scale), 27.625 * 1rem);
  }

  .clinic-room__cluster-photo {
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .clinic-room__cluster--wash .clinic-room__cluster-photo--1 {
    top: clamp(2.84375 * 1rem, 4.0625 * 1rem * var(--rem-scale), 6.90625 * 1rem);
    left: clamp(4.76875 * 1rem, 6.8125 * 1rem * var(--rem-scale), 11.58125 * 1rem);
    width: clamp(3.01875 * 1rem, 4.3125 * 1rem * var(--rem-scale), 7.33125 * 1rem);
    aspect-ratio: 69/99;
  }

  .clinic-room__cluster--wash .clinic-room__cluster-photo--2 {
    left: clamp(8.3125 * 1rem, 11.875 * 1rem * var(--rem-scale), 20.1875 * 1rem);
    width: clamp(6.25625 * 1rem, 8.9375 * 1rem * var(--rem-scale), 15.19375 * 1rem);
    aspect-ratio: 143/103;
  }

  .clinic-room__cluster--wash {
    height: clamp(7.175 * 1rem, 10.25 * 1rem * var(--rem-scale), 17.425 * 1rem);
  }

  .clinic-room__cluster--treat {
    width: clamp(13.0375 * 1rem, 18.625 * 1rem * var(--rem-scale), 31.6625 * 1rem);
    height: clamp(9.05625 * 1rem, 12.9375 * 1rem * var(--rem-scale), 21.99375 * 1rem);
    margin-inline: clamp(2.0125 * 1rem, 2.875 * 1rem * var(--rem-scale), 4.8875 * 1rem) auto;
  }

  .clinic-room--dots .clinic-room__body {
    display: contents;
  }

  .clinic-room--dots .clinic-room__text {
    margin-top: calc(clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem) * -1);
  }

  .clinic-room--dots .clinic-treat__photos {
    order: 1;
    margin-top: calc(clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem) * -1);
  }

  .clinic-room__cluster--treat .clinic-room__cluster-photo--1 {
    right: auto;
    left: 0;
    width: clamp(13.0375 * 1rem, 18.625 * 1rem * var(--rem-scale), 31.6625 * 1rem);
    aspect-ratio: 298/207;
  }

  .clinic-treat__deco {
    top: clamp(0.791875 * 1rem, 1.13125 * 1rem * var(--rem-scale), 1.923125 * 1rem);
    left: clamp(2.30125 * 1rem, 3.2875 * 1rem * var(--rem-scale), 5.58875 * 1rem);
    width: clamp(11.7560625 * 1rem, 16.794375 * 1rem * var(--rem-scale), 28.5504375 * 1rem);
    height: clamp(9.043125 * 1rem, 12.91875 * 1rem * var(--rem-scale), 21.961875 * 1rem);
  }

  .clinic-treat__deco::before {
    background-size: clamp(0.3014375 * 1rem, 0.430625 * 1rem * var(--rem-scale), 0.7320625 * 1rem) clamp(0.3014375 * 1rem, 0.430625 * 1rem * var(--rem-scale), 0.7320625 * 1rem);
  }

  .clinic-treat__photos {
    height: clamp(8.05 * 1rem, 11.5 * 1rem * var(--rem-scale), 19.55 * 1rem);
    margin-top: 0;
  }

  .clinic-treat__photo {
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .clinic-treat__photo--1 {
    width: clamp(5.55625 * 1rem, 7.9375 * 1rem * var(--rem-scale), 13.49375 * 1rem);
    aspect-ratio: 127/158;
  }

  .clinic-treat__photo--2 {
    top: clamp(3.10625 * 1rem, 4.4375 * 1rem * var(--rem-scale), 7.54375 * 1rem);
    left: clamp(6.3875 * 1rem, 9.125 * 1rem * var(--rem-scale), 15.5125 * 1rem);
    width: clamp(6.25625 * 1rem, 8.9375 * 1rem * var(--rem-scale), 15.19375 * 1rem);
    aspect-ratio: 143/113;
  }

  .clinic-room__cluster--barrier {
    width: clamp(11.8125 * 1rem, 16.875 * 1rem * var(--rem-scale), 28.6875 * 1rem);
    height: clamp(8.225 * 1rem, 11.75 * 1rem * var(--rem-scale), 19.975 * 1rem);
    margin-inline: auto clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem);
  }

  .clinic-barrier__photos {
    height: clamp(6.9125 * 1rem, 9.875 * 1rem * var(--rem-scale), 16.7875 * 1rem);
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .clinic-barrier__photo-sub {
    top: clamp(1.88125 * 1rem, 2.6875 * 1rem * var(--rem-scale), 4.56875 * 1rem);
    left: clamp(7.6125 * 1rem, 10.875 * 1rem * var(--rem-scale), 18.4875 * 1rem);
    width: clamp(7.04375 * 1rem, 10.0625 * 1rem * var(--rem-scale), 17.10625 * 1rem);
    aspect-ratio: 161/116;
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .clinic-room__cluster--barrier .clinic-room__cluster-photo--1 {
    width: clamp(11.8125 * 1rem, 16.875 * 1rem * var(--rem-scale), 28.6875 * 1rem);
    aspect-ratio: 270/188;
  }

  .clinic-unit-cluster {
    margin-top: clamp(1.88125 * 1rem, 2.6875 * 1rem * var(--rem-scale), 4.56875 * 1rem);
  }

  .clinic-unit-cluster__inner {
    height: clamp(14.175 * 1rem, 20.25 * 1rem * var(--rem-scale), 34.425 * 1rem);
  }

  .clinic-unit-cluster__deco {
    top: clamp(1.4875 * 1rem, 2.125 * 1rem * var(--rem-scale), 3.6125 * 1rem);
    left: clamp(2.05625 * 1rem, 2.9375 * 1rem * var(--rem-scale), 4.99375 * 1rem);
    width: clamp(15.09375 * 1rem, 21.5625 * 1rem * var(--rem-scale), 36.65625 * 1rem);
    height: clamp(11.2 * 1rem, 16 * 1rem * var(--rem-scale), 27.2 * 1rem);
  }

  .clinic-unit-cluster__photo {
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .clinic-unit-cluster__photo--1 {
    top: clamp(4.8125 * 1rem, 6.875 * 1rem * var(--rem-scale), 11.6875 * 1rem);
    left: clamp(3.45625 * 1rem, 4.9375 * 1rem * var(--rem-scale), 8.39375 * 1rem);
    width: clamp(5.425 * 1rem, 7.75 * 1rem * var(--rem-scale), 13.175 * 1rem);
    aspect-ratio: 124/89;
  }

  .clinic-unit-cluster__photo--2 {
    top: clamp(5.64375 * 1rem, 8.0625 * 1rem * var(--rem-scale), 13.70625 * 1rem);
    left: clamp(10.325 * 1rem, 14.75 * 1rem * var(--rem-scale), 25.075 * 1rem);
    width: clamp(5.425 * 1rem, 7.75 * 1rem * var(--rem-scale), 13.175 * 1rem);
    aspect-ratio: 124/89;
  }

  .clinic-unit-cluster__photo--3 {
    top: clamp(10.28125 * 1rem, 14.6875 * 1rem * var(--rem-scale), 24.96875 * 1rem);
    left: clamp(3.45625 * 1rem, 4.9375 * 1rem * var(--rem-scale), 8.39375 * 1rem);
    width: clamp(5.425 * 1rem, 7.75 * 1rem * var(--rem-scale), 13.175 * 1rem);
    aspect-ratio: 124/89;
  }

  .clinic-unit-cluster__photo--4 {
    left: clamp(10.325 * 1rem, 14.75 * 1rem * var(--rem-scale), 25.075 * 1rem);
    width: clamp(5.425 * 1rem, 7.75 * 1rem * var(--rem-scale), 13.175 * 1rem);
    aspect-ratio: 124/89;
  }

  .clinic-amenity {
    grid-template-columns: 1fr;
    row-gap: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  }

  .clinic-amenity__item {
    gap: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
  }

  .clinic-amenity__photo {
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
    width: clamp(6.65 * 1rem, 9.5 * 1rem * var(--rem-scale), 16.15 * 1rem);
    aspect-ratio: 152/123;
  }

  .clinic-equip-pair {
    flex-direction: column;
    gap: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
    margin-top: clamp(3.01875 * 1rem, 4.3125 * 1rem * var(--rem-scale), 7.33125 * 1rem);
  }

  .clinic-equip-pair__item {
    gap: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
  }

  .clinic-equip-pair__photo {
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
    width: clamp(6.65 * 1rem, 9.5 * 1rem * var(--rem-scale), 16.15 * 1rem);
    aspect-ratio: 152/123;
  }

  .clinic-equip-pair__label {
    margin-top: calc(clamp(0.13125 * 1rem, 0.1875 * 1rem * var(--rem-scale), 0.31875 * 1rem) * -1);
  }

  .clinic-equip-pair__text {
    margin-top: clamp(0.39375 * 1rem, 0.5625 * 1rem * var(--rem-scale), 0.95625 * 1rem);
  }

  .clinic-equip-list::before {
    background-image: radial-gradient(circle closest-side, #145aa6 0 54%, transparent 100%);
    background-repeat: repeat-x;
    height: clamp(0.1203125 * 1rem, 0.171875 * 1rem * var(--rem-scale), 0.2921875 * 1rem);
    background-size: clamp(0.2646875 * 1rem, 0.378125 * 1rem * var(--rem-scale), 0.6428125 * 1rem) clamp(0.1203125 * 1rem, 0.171875 * 1rem * var(--rem-scale), 0.2921875 * 1rem);
    background-position: calc(clamp(0.2646875 * 1rem, 0.378125 * 1rem * var(--rem-scale), 0.6428125 * 1rem) * -0.5) center;
  }

  .clinic-equip-list {
    margin-top: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
  }

  .clinic-equip-list__item + .clinic-equip-list__item::before {
    background-image: radial-gradient(circle closest-side, #145aa6 0 54%, transparent 100%);
    background-repeat: repeat-x;
    height: clamp(0.1203125 * 1rem, 0.171875 * 1rem * var(--rem-scale), 0.2921875 * 1rem);
    background-size: clamp(0.2646875 * 1rem, 0.378125 * 1rem * var(--rem-scale), 0.6428125 * 1rem) clamp(0.1203125 * 1rem, 0.171875 * 1rem * var(--rem-scale), 0.2921875 * 1rem);
    background-position: calc(clamp(0.2646875 * 1rem, 0.378125 * 1rem * var(--rem-scale), 0.6428125 * 1rem) * -0.5) center;
  }

  .clinic-equip-list__item {
    flex-direction: column;
    align-items: center;
    padding-block: clamp(1.09375 * 1rem, 1.5625 * 1rem * var(--rem-scale), 2.65625 * 1rem);
  }

  .clinic-equip-list__photo {
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
    width: clamp(11.025 * 1rem, 15.75 * 1rem * var(--rem-scale), 26.775 * 1rem);
    aspect-ratio: 252/204;
  }

  .clinic-equip-pair__label .tag {
    line-height: 1.9;
  }

  .clinic-equip-list__text {
    margin-top: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
  }

  .clinic-reserve {
    padding-block: clamp(3.0625 * 1rem, 4.375 * 1rem * var(--rem-scale), 7.4375 * 1rem);
  }

  .recruit-notice {
    margin-top: clamp(3.0625 * 1rem, 4.375 * 1rem * var(--rem-scale), 7.4375 * 1rem);
  }

  .recruit-notice__text {
    max-width: clamp(14.91875 * 1rem, 21.3125 * 1rem * var(--rem-scale), 36.23125 * 1rem);
    padding: clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem) clamp(0.39375 * 1rem, 0.5625 * 1rem * var(--rem-scale), 0.95625 * 1rem);
    font-size: clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem);
    border-radius: clamp(0.21875 * 1rem, 0.3125 * 1rem * var(--rem-scale), 0.53125 * 1rem);
  }

  .recruit-join {
    margin-top: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
  }

  .recruit-join__row {
    margin-top: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
  }

  .recruit-join__band {
    top: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
    right: auto;
    width: clamp(13.3 * 1rem, 19 * 1rem * var(--rem-scale), 32.3 * 1rem);
    height: clamp(8.18125 * 1rem, 11.6875 * 1rem * var(--rem-scale), 19.86875 * 1rem);
    border-radius: 0 clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) 0;
  }

  .recruit-join__inner {
    flex-direction: column;
    gap: clamp(1.8375 * 1rem, 2.625 * 1rem * var(--rem-scale), 4.4625 * 1rem);
  }

  .recruit-join__photo {
    width: clamp(11.8125 * 1rem, 16.875 * 1rem * var(--rem-scale), 28.6875 * 1rem);
    aspect-ratio: 270/189;
    margin-inline: auto;
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .recruit-join__body {
    flex: 1;
  }

  .recruit-join__lead {
    line-height: 2.2;
  }

  .recruit-join__status {
    margin-top: clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
    line-height: 2.2;
  }

  .recruit-join__tel {
    display: flex;
    width: 100%;
    min-height: clamp(2.45 * 1rem, 3.5 * 1rem * var(--rem-scale), 5.95 * 1rem);
  }

  .recruit-join__tel {
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
    padding-block: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
    font-size: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
  }

  .recruit-charm {
    padding-top: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
  }

  .recruit-charm__title {
    margin-bottom: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
  }

  .recruit-charm__list {
    gap: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  }

  .recruit-charm__item {
    padding-bottom: clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
  }

  .recruit-charm__item:last-of-type {
    padding-bottom: clamp(0.48125 * 1rem, 0.6875 * 1rem * var(--rem-scale), 1.16875 * 1rem);
  }

  .recruit-charm__item::before {
    top: clamp(0.65625 * 1rem, 0.9375 * 1rem * var(--rem-scale), 1.59375 * 1rem);
    width: clamp(15.75 * 1rem, 22.5 * 1rem * var(--rem-scale), 38.25 * 1rem);
    height: calc(100% - clamp(2.58125 * 1rem, 3.6875 * 1rem * var(--rem-scale), 6.26875 * 1rem));
    border-radius: 0 clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem) clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem) 0;
  }

  .recruit-charm__item::after {
    top: clamp(2.275 * 1rem, 3.25 * 1rem * var(--rem-scale), 5.525 * 1rem);
    left: clamp(0.65625 * 1rem, 0.9375 * 1rem * var(--rem-scale), 1.59375 * 1rem);
    height: calc(100% - clamp(2.275 * 1rem, 3.25 * 1rem * var(--rem-scale), 5.525 * 1rem));
    border-radius: clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem) 0 0 clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
  }

  .recruit-charm__item--reverse::before {
    border-radius: clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem) 0 0 clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
  }

  .recruit-charm__item--reverse::after {
    right: clamp(0.65625 * 1rem, 0.9375 * 1rem * var(--rem-scale), 1.59375 * 1rem);
    left: 0;
    border-radius: 0 clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem) clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem) 0;
  }

  .recruit-charm__inner {
    flex-direction: column;
    gap: 0;
  }

  .recruit-charm__item--reverse .recruit-charm__body {
    margin-inline: 0;
  }

  .recruit-charm__item--reverse .recruit-charm__inner {
    flex-direction: column;
  }

  .recruit-charm__photo {
    width: clamp(11.025 * 1rem, 15.75 * 1rem * var(--rem-scale), 26.775 * 1rem);
    aspect-ratio: 252/179;
    margin-inline: auto clamp(0.65625 * 1rem, 0.9375 * 1rem * var(--rem-scale), 1.59375 * 1rem);
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .recruit-charm__item--reverse .recruit-charm__photo {
    margin-inline: clamp(0.65625 * 1rem, 0.9375 * 1rem * var(--rem-scale), 1.59375 * 1rem) auto;
  }

  .recruit-charm__body {
    max-width: none;
    margin-top: 0;
    margin-left: 0;
    padding: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem) clamp(0.74375 * 1rem, 1.0625 * 1rem * var(--rem-scale), 1.80625 * 1rem) clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .recruit-charm__item:last-of-type .recruit-charm__body {
    max-width: none;
  }

  .recruit-charm__item:last-of-type .recruit-charm__inner {
    gap: 0;
  }

  .recruit-charm__label {
    margin-bottom: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
    padding-block: clamp(0.21875 * 1rem, 0.3125 * 1rem * var(--rem-scale), 0.53125 * 1rem);
    font-size: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
    line-height: 2.35;
  }

  .recruit-charm__label + .recruit-charm__text {
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .recruit-charm__text {
    font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
    line-height: 2.2;
  }

  .recruit-charm__text + .recruit-charm__text {
    margin-top: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  }

  .recruit-charm__perks {
    margin-top: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .recruit-charm__perk {
    padding-left: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
    font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
    line-height: 2;
  }

  .recruit-charm__perk::before {
    top: clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem);
    width: clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
    height: clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
  }

  .recruit-charm__perks + .recruit-charm__text {
    margin-top: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .recruit-requirements {
    padding-top: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
  }

  .recruit-requirements__table {
    margin-top: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
  }

  .recruit-requirements__table tr {
    padding: clamp(0.65625 * 1rem, 0.9375 * 1rem * var(--rem-scale), 1.59375 * 1rem) 0 clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
  }

  .recruit-requirements__table th {
    flex-basis: clamp(4.6375 * 1rem, 6.625 * 1rem * var(--rem-scale), 11.2625 * 1rem);
    padding-right: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
    font-size: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
  }

  .recruit-requirements__table td {
    font-size: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
  }

  .recruit-requirements + .recruit-cta {
    margin-top: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
  }

  .recruit-voice + .recruit-cta {
    margin-block: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
  }

  .recruit-cta__inner {
    max-width: clamp(14.4375 * 1rem, 20.625 * 1rem * var(--rem-scale), 35.0625 * 1rem);
    padding: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem) clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
    border-radius: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .recruit-cta__lead {
    font-size: clamp(0.7 * 1rem, 1 * 1rem * var(--rem-scale), 1.7 * 1rem);
    line-height: 1.5;
    text-align: left;
  }

  .recruit-cta__tel {
    gap: clamp(0.35 * 1rem, 0.5 * 1rem * var(--rem-scale), 0.85 * 1rem);
  }

  .recruit-cta__hours {
    width: -moz-fit-content;
    width: fit-content;
    margin-top: clamp(0.21875 * 1rem, 0.3125 * 1rem * var(--rem-scale), 0.53125 * 1rem);
    margin-inline: auto;
    text-align: left;
  }

  .recruit-voice {
    padding-top: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
  }

  .recruit-voice__title {
    margin-bottom: clamp(1.75 * 1rem, 2.5 * 1rem * var(--rem-scale), 4.25 * 1rem);
  }

  .recruit-voice__question {
    padding-inline: clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem);
    font-size: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  }

  .recruit-voice__answers {
    grid-template-columns: 1fr;
    gap: clamp(0.6125 * 1rem, 0.875 * 1rem * var(--rem-scale), 1.4875 * 1rem);
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .recruit-voice__answers--three {
    grid-template-columns: 1fr;
  }

  .recruit-voice__card {
    gap: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .recruit-voice__person {
    padding-right: 0;
  }

  .recruit-voice__name {
    margin-block: 0;
  }

  .recruit-voice__avatar {
    width: clamp(2.625 * 1rem, 3.75 * 1rem * var(--rem-scale), 6.375 * 1rem);
    height: clamp(2.625 * 1rem, 3.75 * 1rem * var(--rem-scale), 6.375 * 1rem);
  }

  .price-toc {
    margin-top: clamp(3.4125 * 1rem, 4.875 * 1rem * var(--rem-scale), 8.2875 * 1rem);
  }

  .price-toc__divider {
    height: clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem);
    margin-top: clamp(2.1 * 1rem, 3 * 1rem * var(--rem-scale), 5.1 * 1rem);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 6 2'%3E%3Ccircle cx='1' cy='1' r='1' fill='rgb(20,90,166)'/%3E%3C/svg%3E");
    background-position: left bottom;
    background-size: clamp(0.2625 * 1rem, 0.375 * 1rem * var(--rem-scale), 0.6375 * 1rem) clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem);
    background-repeat: repeat-x;
  }

  .price-toc__list {
    grid-template-columns: 1fr;
    max-width: clamp(14.4375 * 1rem, 20.625 * 1rem * var(--rem-scale), 35.0625 * 1rem);
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
    margin-inline: auto;
  }

  .price-band {
    padding: clamp(0.21875 * 1rem, 0.3125 * 1rem * var(--rem-scale), 0.53125 * 1rem) clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) clamp(0.30625 * 1rem, 0.4375 * 1rem * var(--rem-scale), 0.74375 * 1rem);
    font-size: clamp(0.9625 * 1rem, 1.375 * 1rem * var(--rem-scale), 2.3375 * 1rem);
  }

  .price-payment {
    margin-top: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
  }

  .price-payment__text {
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .price-category {
    margin-top: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
  }

  .price-table-block {
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .price-table-block__head {
    padding: clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem) clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem);
  }

  .price-table-block__title {
    font-size: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
  }

  .price-table-block__title--band {
    padding: clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem) clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem) clamp(0.0875 * 1rem, 0.125 * 1rem * var(--rem-scale), 0.2125 * 1rem);
    margin-bottom: 0;
  }

  .price-table-block__badge {
    font-size: clamp(0.525 * 1rem, 0.75 * 1rem * var(--rem-scale), 1.275 * 1rem);
  }

  .price-table-block__note {
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .price-table-block__list {
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .price-table-block__list-title {
    padding-inline: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
    font-size: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
  }

  .price-table-block__list-note {
    display: block;
    font-size: clamp(0.48125 * 1rem, 0.6875 * 1rem * var(--rem-scale), 1.16875 * 1rem);
  }

  .price-table {
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .price-table__name,
  .price-table__desc,
  .price-table__price {
    padding: clamp(0.39375 * 1rem, 0.5625 * 1rem * var(--rem-scale), 0.95625 * 1rem);
    font-size: clamp(0.56875 * 1rem, 0.8125 * 1rem * var(--rem-scale), 1.38125 * 1rem);
  }

  .price-table__col--name {
    width: 28.99%;
  }

  .price-table__col--desc {
    width: 40.58%;
  }

  .price-table__col--price {
    width: 30.43%;
  }

  .price-table-block__group-title {
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
    padding-inline: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .price-table__row--tall {
    height: auto;
  }

  .price-table__row--tall-sp {
    height: clamp(5.90625 * 1rem, 8.4375 * 1rem * var(--rem-scale), 14.34375 * 1rem);
  }

  .price-check-list--wide {
    gap: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .price-check-list__item {
    align-items: flex-start;
  }

  .price-check-list__item .icon-check {
    margin-top: clamp(0.13125 * 1rem, 0.1875 * 1rem * var(--rem-scale), 0.31875 * 1rem);
  }

  .price-warranty {
    margin-top: clamp(2.1875 * 1rem, 3.125 * 1rem * var(--rem-scale), 5.3125 * 1rem);
  }

  .price-warranty__intro {
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .price-warranty__block {
    margin-top: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .price-warranty__tier-title {
    padding-inline: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
    font-size: clamp(0.7875 * 1rem, 1.125 * 1rem * var(--rem-scale), 1.9125 * 1rem);
  }

  .price-warranty__note {
    margin-top: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
  }

  .price-reserve {
    padding-block: clamp(4.375 * 1rem, 6.25 * 1rem * var(--rem-scale), 10.625 * 1rem);
  }
}

@media screen and (min-width: 769px) and (max-width: 1120px) {
  .tag {
    line-height: 2.61;
  }

  .about-other__item-title .tag {
    line-height: 1.9;
  }

  .preventive-checkup__chart {
    flex-direction: column;
    align-items: center;
    gap: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .access-info__row {
    justify-content: center;
  }

  .staff-team__item-title .tag {
    line-height: 1.9;
  }

  .pediatric-specialist__narrow {
    max-width: 58%;
  }

  .pediatric-specialist__note {
    max-width: 58%;
  }

  .pediatric-fun__label .tag {
    line-height: 1.9;
  }

  .clinic-equip-pair__label .tag,
  .clinic-equip-list__label .tag {
    line-height: 1.9;
  }
}

@media screen and (min-width: 769px) and (max-width: 1024px) {
  .top-about__card-inner,
  .top-about__block--reverse .top-about__card-inner {
    width: 100%;
    padding-inline: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  }

  .top-about__body,
  .top-about__block--pair .top-about__body {
    flex: 1;
    width: auto;
  }

  .top-about__photos {
    width: 38%;
  }

  .top-about__photo {
    height: auto;
    aspect-ratio: 530/376;
  }

  .top-about__block--pair .top-about__photos {
    width: 38%;
  }

  .top-about__block--pair .top-about__photo {
    width: 50%;
    height: auto;
    aspect-ratio: 240/360;
  }

  .top-treatment__cards {
    gap: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  }

  .top-treatment__card {
    width: 50%;
    height: auto;
    aspect-ratio: 510/327;
  }

  .top-treatment__list {
    gap: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  }

  .top-treatment__item {
    flex: 1;
    width: auto;
    min-width: 0;
    height: auto;
    padding-inline: clamp(1.05 * 1rem, 1.5 * 1rem * var(--rem-scale), 2.55 * 1rem);
  }

  .top-treatment__item-body {
    width: 100%;
  }

  .top-clinic__inner {
    display: block;
    padding-inline: clamp(0.875 * 1rem, 1.25 * 1rem * var(--rem-scale), 2.125 * 1rem);
  }

  .top-clinic__body {
    width: 100%;
  }

  .top-clinic__photos {
    justify-content: flex-end;
    gap: clamp(0.4375 * 1rem, 0.625 * 1rem * var(--rem-scale), 1.0625 * 1rem);
    margin-top: clamp(1.3125 * 1rem, 1.875 * 1rem * var(--rem-scale), 3.1875 * 1rem);
  }

  .top-clinic__row--reverse .top-clinic__photos {
    justify-content: flex-start;
  }

  .top-clinic__photo-item {
    flex: 1 1 0;
    min-width: 0;
    max-width: clamp(8.53125 * 1rem, 12.1875 * 1rem * var(--rem-scale), 20.71875 * 1rem);
  }

  .top-clinic__photo {
    width: 100%;
    min-width: 0;
    height: auto;
    aspect-ratio: 195/355;
  }

  .top-clinic__band {
    top: auto;
    bottom: 0;
    left: 25%;
    height: clamp(14.21875 * 1rem, 20.3125 * 1rem * var(--rem-scale), 34.53125 * 1rem);
  }

  .top-clinic__row--reverse .top-clinic__band {
    right: 25%;
    left: 0;
  }

  .about-care__fear-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    justify-items: center;
    max-width: clamp(18.8125 * 1rem, 26.875 * 1rem * var(--rem-scale), 45.6875 * 1rem);
  }

  .general-menu-nav__list {
    grid-template-columns: repeat(4, 1fr);
  }
}

@media (any-hover: hover) {
  a:hover {
    opacity: 0.7;
  }

  .more:hover .more__icon {
    transform: translateX(clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem));
  }

  .header__nav-item--parent:hover .dropdown {
    visibility: visible;
    opacity: 1;
  }

  .footer__pagetop:hover {
    transform: rotate(-90deg) translateX(clamp(0.175 * 1rem, 0.25 * 1rem * var(--rem-scale), 0.425 * 1rem));
  }
}

@media (prefers-reduced-motion: reduce) {
  .js-sticky-cover {
    height: auto !important;
  }

  .js-sticky-cover__stage {
    position: static !important;
    height: auto !important;
  }

  .js-sticky-cover__list {
    display: block !important;
  }

  .js-sticky-cover-item {
    height: auto !important;
  }

  .js-sticky-cover-item + .js-sticky-cover-item {
    -webkit-clip-path: none !important;
            clip-path: none !important;
  }

  .js-sticky-cover-item__inner {
    transform: none !important;
  }

  .js-sticky-cover-item__inner img {
    height: auto !important;
    transform: none !important;
  }

  .is-anime-ready .js-split-up > span,
  .is-anime-ready .js-fadeIn-up-single,
  .is-anime-ready .js-fadeIn-ups {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }

  .is-anime-ready .js-marker {
    background-size: 100% clamp(0.56875 * 1rem, 0.8125 * 1rem * var(--rem-scale), 1.38125 * 1rem) !important;
    transition: none !important;
  }

  .sp-cta {
    transition: none;
  }

  .top-stack .top-treatment,
  .top-parallax .js-sticky-cover-item {
    position: static;
  }

  .top-parallax .js-sticky-cover__list::after {
    display: none;
  }
}
/*# sourceMappingURL=style.css.map */