/* =========================================================
   MV (hero)
   ========================================================= */
.mv { position: relative; display: flex; flex-direction: column; align-items: center; overflow: hidden; }
.mv__bg { width: 100%; height: 100%; object-fit: cover; position: absolute; inset: 0; }
.mv__copy { position: relative; color: var(--color-white); text-align: center; font-weight: 500; display: flex; flex-direction: column; }

@media (min-width: 1280px) {
  .mv { height: min(560px, calc(var(--scale) * 560px)); padding-top: min(90px, calc(var(--scale) * 90px)); }
  .mv__copy { font-size: clamp(20px, calc(var(--scale) * 38px), 38px); letter-spacing: .1em; gap: min(26px, calc(var(--scale) * 26px)); }
}
@media (min-width: 600px) and (max-width: 1279px) {
  .mv { height: min(560px, calc(var(--scale) * 560px)); padding-top: min(90px, calc(var(--scale) * 90px)); }
  .mv__copy { font-size: clamp(20px, calc(var(--scale) * 38px), 38px); letter-spacing: .1em; gap: min(26px, calc(var(--scale) * 26px)); }
}
@media (max-width: 599px) {
  .mv { height: min(340px, calc(var(--scale) * 340px)); padding-top: min(60px, calc(var(--scale) * 60px)); }
  .mv__copy { font-size: clamp(14px, calc(var(--scale) * 18px), 18px); letter-spacing: .1em; gap: min(8px, calc(var(--scale) * 8px)); }
}

/* =========================================================
   messeage (About Us)
   Zone B: heading/lead text (readable, centered flow)
   Zone A: illustration layer — each figure is placed with the exact
   left/top/width ratio measured from the Figma frame (position:absolute
   inside a position:relative canvas), so the composition never reflows.
   ========================================================= */
.messeage { position: relative; z-index: 2; display: flex; flex-direction: column; align-items: center; background: #fff; }
.messeage__bg { position: absolute; inset: 0; z-index: 0; width: 100%; height: 100%; object-fit: cover; pointer-events: none; }
.messeage__inner { position: relative; z-index: 1; display: flex; flex-direction: column; align-items: center; max-width: 1000px; width: 100%; }
.messeage__area-bg { position: absolute; inset: 0; z-index: 0; width: 100%; height: 100%; object-fit: cover; pointer-events: none; }
.messeage__lead { position: relative; z-index: 1; text-align: center; font-weight: 500; display: flex; flex-direction: column; }
.messeage__heading { position: relative; z-index: 1; }

/* Zone A canvas: absolutely fills the section, each .illust is placed by
   Figma-measured percentage (left/top = inset ratio, width = ratio of
   section width) so the whole group scales as one fixed composition. */
.messeage__illustration { position: absolute; inset: 0; z-index: 1; pointer-events: none; }
.illust { position: absolute; height: auto; }
.illust-1 { transform: scaleX(-1); }
.illust-6 { transform: scaleY(-1) rotate(180deg); }

@media (min-width: 1280px) {
  .messeage__inner { padding: min(140px, calc(var(--scale) * 140px)) 0 min(80px, calc(var(--scale) * 80px)); gap: min(30px, calc(var(--scale) * 30px)); }
  .messeage__lead { font-size: clamp(16px, calc(var(--scale) * 22px), 22px); letter-spacing: .1em; line-height: 2; }

  /* Percentages measured from the PC Figma frame (1440x522). */
  .illust-1 { left: 63.59%; top: 82.76%; width: 9.15%; }
  .illust-2 { left: 22.22%; top: 82.76%; width: 4.75%; }
  .illust-3 { left: 28.77%; top: 88.51%; width: 3.5%; }
  .illust-4 { left: 54.75%; top: 93.1%; width: 4.32%; }
  .illust-5 { left: 74.32%; top: 92.34%; width: 3.46%; }
  .illust-6 { left: 32.84%; top: 83.52%; width: 3.77%; }
  .illust-7 { left: 38.41%; top: 98.08%; width: 4.73%; }
  .illust-8 { left: 45.67%; top: 101.3%; width: 1.2%; }
  .illust-9 { left: 48.42%; top: 102.06%; width: 1.02%; }
}
@media (min-width: 600px) and (max-width: 1279px) {
  .messeage__inner { padding: min(100px, calc(var(--scale) * 100px)) 0 min(80px, calc(var(--scale) * 80px)); gap: min(30px, calc(var(--scale) * 30px)); }
  .messeage__lead { font-size: clamp(16px, calc(var(--scale) * 22px), 22px); letter-spacing: .1em; line-height: 2; }

  /* Percentages measured from the PC Figma frame (1440x522). */
  .illust-1 { left: 63.59%; top: 82.76%; width: 9.15%; }
  .illust-2 { left: 22.22%; top: 82.76%; width: 4.75%; }
  .illust-3 { left: 28.77%; top: 88.51%; width: 3.5%; }
  .illust-4 { left: 54.75%; top: 93.1%; width: 4.32%; }
  .illust-5 { left: 74.32%; top: 92.34%; width: 3.46%; }
  .illust-6 { left: 32.84%; top: 83.52%; width: 3.77%; }
  .illust-7 { left: 38.41%; top: 98.08%; width: 4.73%; }
  .illust-8 { left: 45.67%; top: 101.3%; width: 1.2%; }
  .illust-9 { left: 48.42%; top: 102.06%; width: 1.02%; }
}
@media (max-width: 599px) {
  .messeage__inner { padding: min(80px, calc(var(--scale) * 80px)) 20px; gap: min(20px, calc(var(--scale) * 20px)); }
  .messeage__lead { font-size: clamp(14px, calc(var(--scale) * 18px), 18px); letter-spacing: .1em; line-height: 2; }

  /* Percentages measured from the SP Figma frame (375x362). */
  .illust-1 { left: 71.86%; top: 84.96%; width: 14.71%; }
  .illust-2 { left: 5.33%; top: 84.96%; width: 7.63%; }
  .illust-3 { left: 15.86%; top: 88.43%; width: 5.63%; }
  .illust-4 { left: 57.64%; top: 91.21%; width: 6.94%; }
  .illust-5 { left: 89.11%; top: 90.75%; width: 5.56%; }
  .illust-6 { left: 22.4%; top: 85.42%; width: 6.06%; }
  .illust-7 { left: 31.36%; top: 94.22%; width: 7.61%; }
  .illust-8 { left: 43.04%; top: 96.16%; width: 1.93%; }
  .illust-9 { left: 47.46%; top: 96.62%; width: 1.65%; }
}

/* =========================================================
   heading decorations (shared positioning per-section below)
   ========================================================= */
.heading__deco { top: 0; }

/* =========================================================
   information
   ========================================================= */
.information { display: flex; flex-direction: column; align-items: center; }
.information__heading { position: relative; }
.information__area { display: flex; flex-direction: column; align-items: center; width: 100%; }
.information__list { display: flex; flex-direction: column; width: 100%; }
.information__item { border-top: 1px solid var(--color-border-green); display: flex; flex-direction: column; }
.information__date { color: var(--color-green); font-weight: 700; }
.information__title { color: var(--color-primary); font-weight: 700; }
.information__title a {
  position: relative;
  color: var(--color-green);
  font-variation-settings: "wght" 400;

  transition:
    color .3s ease,
    font-variation-settings .4s ease;
}

.information__title a::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -2px;
  width: 100%;
  height: 1px;
  background: #2a8144;

  transform: scaleX(0);
  transform-origin: left;
  transition: transform .4s ease;
}

.information__title a:hover {
  color: #2a8144;
  font-variation-settings: "wght" 700;
}

.information__title a:hover::after {
  transform: scaleX(1);
}
.information .btn { max-width: 472px; min-width: 275px; width: auto; }

/* ---- Reservation banner (インフルエンザ・新型コロナワクチン接種のご予約について) ---- */
.info-banner {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  max-width: 800px;
  border: 2px solid var(--color-border-green);
  border-radius: 6px;
  background: #f2f3f7;
  overflow: hidden;
  text-decoration: none;
  transition: box-shadow .3s ease, transform .3s ease, border-color .3s ease;
}
.info-banner__media { position: absolute; left: 0; top: 0; bottom: 0; width: 46%; }
.info-banner__media img { width: 100%; height: 100%; object-fit: cover; object-position: 15% center; display: block; }
.info-banner::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to right, rgba(242, 243, 247, 0) 0%, #f2f3f7 46.5%);
  pointer-events: none;
}
.info-banner__body {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
}
.info-banner__title { color: var(--color-primary); font-weight: 500; letter-spacing: .1em; white-space: nowrap; }
.info-banner__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--color-green);
  color: var(--color-white);
  font-weight: 700;
  letter-spacing: .1em;
  border-radius: 999px;
  min-width: 275px;
  max-width: 472px;
  line-height: 1.3;
  transition: background-color .25s ease;
}
.info-banner:hover { transform: translateY(-3px); border-color: var(--color-green); box-shadow: 0 10px 24px rgba(51, 153, 82, .18); }
.info-banner:hover .info-banner__btn { background: #2a8144; }
@media (prefers-reduced-motion: reduce) {
  .info-banner, .info-banner__btn { transition: none; }
  .info-banner:hover { transform: none; }
}

@media (min-width: 1280px) {
  .information { padding: min(100px, calc(var(--scale) * 100px)) 20px; gap: min(60px, calc(var(--scale) * 60px)); }
  .information__heading .heading__deco--tablet1 { width: min(8px, calc(var(--scale) * 8px)); left: clamp(-41px, calc(var(--scale) * -41px), -28px); top: clamp(-4px, calc(var(--scale) * -4px), -3px); }
  .information__heading .heading__deco--tablet2 { width: min(9px, calc(var(--scale) * 9px)); left: clamp(-19px, calc(var(--scale) * -19px), -13px); top: clamp(-10px, calc(var(--scale) * -10px), -7px); }
  .information__heading .heading__deco--tablet3 { width: min(8px, calc(var(--scale) * 8px)); left: clamp(-35px, calc(var(--scale) * -35px), -24px); top: clamp(8px, calc(var(--scale) * 11px), 11px); }
  .information__heading .heading__deco--tablet4 { width: min(8px, calc(var(--scale) * 8px)); left: clamp(-53px, calc(var(--scale) * -53px), -36px); top: clamp(12px, calc(var(--scale) * 18px), 18px); }
  .information__heading .heading__deco--tablet5 { width: min(8px, calc(var(--scale) * 8px)); left: clamp(-56px, calc(var(--scale) * -56px), -38px); top: clamp(28px, calc(var(--scale) * 41px), 41px); }
  .information__heading .heading__deco--pillsheet { width: min(25px, calc(var(--scale) * 25px)); height: min(60px, calc(var(--scale) * 60px)); left: clamp(115px, calc(var(--scale) * 167px), 167px); top: clamp(21px, calc(var(--scale) * 31px), 31px); transform: rotate(20deg); }
  .heading__en { font-size: clamp(13px, calc(var(--scale) * 16px), 16px); letter-spacing: .1em; }
  .heading__ja { font-size: clamp(22px, calc(var(--scale) * 32px), 32px); letter-spacing: .1em; margin-top: min(10px, calc(var(--scale) * 10px)); }
  .information__area { max-width: 800px; gap: min(40px, calc(var(--scale) * 40px)); }
  .information__list { gap: min(20px, calc(var(--scale) * 20px)); }
  .information__item { padding-top: min(20px, calc(var(--scale) * 20px)); gap: min(5px, calc(var(--scale) * 5px)); }
  .information__date, .information__title { font-size: clamp(14px, calc(var(--scale) * 16px), 16px); line-height: min(25px, calc(var(--scale) * 25px)); letter-spacing: .1em; }
  .information .btn { font-size: clamp(14px, calc(var(--scale) * 16px), 16px); padding: min(10px, calc(var(--scale) * 10px)) min(20px, calc(var(--scale) * 20px)); }
  .info-banner__body { min-height: min(128px, calc(var(--scale) * 128px)); gap: min(10px, calc(var(--scale) * 10px)); padding: min(16px, calc(var(--scale) * 16px)) min(40px, calc(var(--scale) * 40px)); }
  .info-banner__title { font-size: clamp(14px, calc(var(--scale) * 16px), 16px); line-height: 1.6; }
  .info-banner__btn { font-size: clamp(13px, calc(var(--scale) * 14px), 14px); padding: min(6px, calc(var(--scale) * 6px)) min(16px, calc(var(--scale) * 16px)); }
}
@media (min-width: 600px) and (max-width: 1279px) {
  .information { padding: min(60px, calc(var(--scale) * 60px)) 20px; gap: min(60px, calc(var(--scale) * 60px)); }
  .information__heading .heading__deco--tablet1 { width: min(8px, calc(var(--scale) * 8px)); left: clamp(-41px, calc(var(--scale) * -41px), -28px); top: clamp(-4px, calc(var(--scale) * -4px), -3px); }
  .information__heading .heading__deco--tablet2 { width: min(9px, calc(var(--scale) * 9px)); left: clamp(-19px, calc(var(--scale) * -19px), -13px); top: clamp(-10px, calc(var(--scale) * -10px), -7px); }
  .information__heading .heading__deco--tablet3 { width: min(8px, calc(var(--scale) * 8px)); left: clamp(-35px, calc(var(--scale) * -35px), -24px); top: clamp(8px, calc(var(--scale) * 11px), 11px); }
  .information__heading .heading__deco--tablet4 { width: min(8px, calc(var(--scale) * 8px)); left: clamp(-53px, calc(var(--scale) * -53px), -36px); top: clamp(12px, calc(var(--scale) * 18px), 18px); }
  .information__heading .heading__deco--tablet5 { width: min(8px, calc(var(--scale) * 8px)); left: clamp(-56px, calc(var(--scale) * -56px), -38px); top: clamp(28px, calc(var(--scale) * 41px), 41px); }
  .information__heading .heading__deco--pillsheet { width: min(25px, calc(var(--scale) * 25px)); height: min(60px, calc(var(--scale) * 60px)); left: clamp(115px, calc(var(--scale) * 167px), 167px); top: clamp(21px, calc(var(--scale) * 31px), 31px); transform: rotate(20deg); }
  .heading__en { font-size: clamp(13px, calc(var(--scale) * 16px), 16px); letter-spacing: .1em; }
  .heading__ja { font-size: clamp(22px, calc(var(--scale) * 32px), 32px); letter-spacing: .1em; margin-top: min(10px, calc(var(--scale) * 10px)); }
  .information__area { max-width: 800px; gap: min(40px, calc(var(--scale) * 40px)); }
  .information__list { gap: min(20px, calc(var(--scale) * 20px)); }
  .information__item { padding-top: min(20px, calc(var(--scale) * 20px)); gap: min(5px, calc(var(--scale) * 5px)); }
  .information__date, .information__title { font-size: clamp(14px, calc(var(--scale) * 16px), 16px); line-height: min(25px, calc(var(--scale) * 25px)); letter-spacing: .1em; }
  .information .btn { font-size: clamp(14px, calc(var(--scale) * 16px), 16px); padding: min(10px, calc(var(--scale) * 10px)) min(20px, calc(var(--scale) * 20px)); }
  .info-banner__body { min-height: min(128px, calc(var(--scale) * 128px)); gap: min(10px, calc(var(--scale) * 10px)); padding: min(16px, calc(var(--scale) * 16px)) min(40px, calc(var(--scale) * 40px)); }
  .info-banner__title { font-size: clamp(14px, calc(var(--scale) * 16px), 16px); line-height: 1.6; }
  .info-banner__btn { font-size: clamp(13px, calc(var(--scale) * 14px), 14px); padding: min(6px, calc(var(--scale) * 6px)) min(16px, calc(var(--scale) * 16px)); }
}
@media (max-width: 599px) {
  .information { padding: min(60px, calc(var(--scale) * 60px)) 20px; gap: min(30px, calc(var(--scale) * 30px)); }
  .information__heading { gap: 0; }
  .information__heading .heading__deco--tablet1 { width: min(7px, calc(var(--scale) * 7px)); left: clamp(-35px, calc(var(--scale) * -35px), -29px); top: clamp(4px, calc(var(--scale) * 5px), 5px); }
  .information__heading .heading__deco--tablet2 { width: min(7px, calc(var(--scale) * 7px)); left: clamp(-17px, calc(var(--scale) * -17px), -14px); top: 0px; }
  .information__heading .heading__deco--tablet3 { width: min(7px, calc(var(--scale) * 7px)); left: clamp(-30px, calc(var(--scale) * -30px), -25px); top: clamp(14px, calc(var(--scale) * 17px), 17px); }
  .information__heading .heading__deco--tablet4 { width: min(7px, calc(var(--scale) * 7px)); left: clamp(-45px, calc(var(--scale) * -45px), -37px); top: clamp(19px, calc(var(--scale) * 23px), 23px); }
  .information__heading .heading__deco--tablet5 { width: min(7px, calc(var(--scale) * 7px)); left: clamp(-47px, calc(var(--scale) * -47px), -38px); top: clamp(34px, calc(var(--scale) * 41px), 41px); }
  .information__heading .heading__deco--pillsheet { width: min(20px, calc(var(--scale) * 20px)); height: min(48px, calc(var(--scale) * 48px)); left: clamp(106px, calc(var(--scale) * 129px), 129px); top: clamp(12px, calc(var(--scale) * 14px), 14px); transform: rotate(20deg); }
  .heading__en { font-size: clamp(12px, calc(var(--scale) * 14px), 14px); letter-spacing: .1em; }
  .heading__ja { font-size: clamp(18px, calc(var(--scale) * 22px), 22px); line-height: min(24px, calc(var(--scale) * 24px)); letter-spacing: .1em; margin-top: min(0px, calc(var(--scale) * 0px)); }
  .information__area { max-width: 800px; gap: min(20px, calc(var(--scale) * 20px)); }
  .information__list { gap: min(20px, calc(var(--scale) * 20px)); }
  .information__item { padding-top: min(20px, calc(var(--scale) * 20px)); gap: min(5px, calc(var(--scale) * 5px)); }
  .information__date, .information__title { font-size: clamp(14px, calc(var(--scale) * 16px), 16px); line-height: min(25px, calc(var(--scale) * 25px)); letter-spacing: .1em; }
  .information .btn { font-size: clamp(14px, calc(var(--scale) * 16px), 16px); padding: min(10px, calc(var(--scale) * 10px)) min(20px, calc(var(--scale) * 20px)); }
  .info-banner__media { position: static; width: 100%; height: min(90px, calc(var(--scale) * 90px)); }
  .info-banner::after { display: none; }
  .info-banner__body { min-height: 0; gap: min(10px, calc(var(--scale) * 10px)); padding: min(18px, calc(var(--scale) * 18px)) 16px; }
  .info-banner__title { font-size: clamp(13px, calc(var(--scale) * 15px), 15px); line-height: 1.6; white-space: normal; }
  .info-banner__btn { min-width: 0; max-width: none; width: 100%; font-size: clamp(13px, calc(var(--scale) * 14px), 14px); padding: min(8px, calc(var(--scale) * 8px)) min(16px, calc(var(--scale) * 16px)); }
}
@media (min-width: 600px) and (max-width: 1279px) {
  .information { padding-top: min(100px, calc(var(--scale) * 100px)); }
}
@media (max-width: 1024px) {
  .information { padding-top: min(100px, calc(var(--scale) * 100px)); }
}
@media (min-width: 1025px) {
  .information { padding-top: min(120px, calc(var(--scale) * 120px)); }
}
@media (max-width: 599px) {
  .information { padding-top: min(60px, calc(var(--scale) * 60px)); }
}

/* =========================================================
   medical_services
   ========================================================= */
.medical_services { background: var(--color-bg-green); display: flex; flex-direction: column; align-items: center; }
.medical_services__titlegroup { position: relative; display: flex; flex-direction: column; align-items: center; }
.medical_services__desc { text-align: center; font-weight: 500; line-height: 1.4; }
.medical_services__area { display: flex; width: 100%; }
.medical_services__card { background: var(--color-white); border-radius: 20px; overflow: hidden; width: 100%; display: flex; flex-direction: column; }
.medical_services__photo img { width: 100%; height: 100%; object-fit: cover; display: block; }
.medical_services__body { display: flex; flex-direction: column; }
.medical_services__content { display: flex; flex-direction: column; }
.medical_services__title { display: flex; align-items: center; color: var(--color-green); font-weight: 700; }
.medical_services__title img { flex-shrink: 0; }
.medical_services__list { display: flex; flex-direction: column; }
.medical_services__list li { position: relative; color: var(--color-primary); font-weight: 500; }
.medical_services__list li::before { content: ""; position: absolute; left: 0; top: .5em; width: 10px; height: 10px; background: var(--color-green); border-radius: 2px; }
.medical_services__btns { display: flex; flex-direction: column; }

@media (min-width: 1280px) {
  .medical_services { padding: min(100px, calc(var(--scale) * 100px)) 20px; gap: min(40px, calc(var(--scale) * 40px)); }
  .medical_services__heading { gap: min(60px, calc(var(--scale) * 60px)); }
  .medical_services__titlegroup .heading__deco--heart1 { width: min(34px, calc(var(--scale) * 34px)); height: min(26px, calc(var(--scale) * 26px)); left: clamp(-76px, calc(var(--scale) * -76px), -52px); top: clamp(14px, calc(var(--scale) * 20px), 20px); transform: rotate(5deg); }
  .medical_services__titlegroup .heading__deco--heart2 { width: min(23px, calc(var(--scale) * 23px)); height: min(17px, calc(var(--scale) * 17px)); left: clamp(-48px, calc(var(--scale) * -48px), -33px); top: clamp(28px, calc(var(--scale) * 41px), 41px); transform: rotate(-25deg); }
  .medical_services__titlegroup .heading__deco--thermo { width: min(85px, calc(var(--scale) * 85px)); height: min(22px, calc(var(--scale) * 22px)); left: clamp(105px, calc(var(--scale) * 152px), 152px); top: clamp(14px, calc(var(--scale) * 20px), 20px); transform: rotate(-60deg); }
  .medical_services__desc { font-size: clamp(14px, calc(var(--scale) * 16px), 16px); letter-spacing: .1em; }
  .medical_services__area { max-width: 1120px; gap: min(16px, calc(var(--scale) * 16px)); margin-top: min(20px, calc(var(--scale) * 20px)); }
  .medical_services__photo { height: min(300px, calc(var(--scale) * 300px)); }
  .medical_services__body { padding: min(60px, calc(var(--scale) * 60px)) min(40px, calc(var(--scale) * 40px)); gap: min(30px, calc(var(--scale) * 30px)); }
  .medical_services__content { gap: min(20px, calc(var(--scale) * 20px)); }
  .medical_services__title { gap: min(8px, calc(var(--scale) * 8px)); min-height: min(44px, calc(var(--scale) * 44px)); font-size: clamp(16px, calc(var(--scale) * 19px), 19px); letter-spacing: .1em; }
  .medical_services__title img { width: min(16px, calc(var(--scale) * 16px)); height: min(16px, calc(var(--scale) * 16px)); transform: translateY(1px); }
  .medical_services__list { gap: min(12px, calc(var(--scale) * 12px)); }
  .medical_services__list li { padding-left: min(20px, calc(var(--scale) * 20px)); font-size: clamp(14px, calc(var(--scale) * 16px), 16px); line-height: 1.6; letter-spacing: .1em; }
  .medical_services__btns { gap: min(10px, calc(var(--scale) * 10px)); }
  .medical_services__btns .btn, .medical_services .btn { font-size: clamp(14px, calc(var(--scale) * 16px), 16px); padding: min(10px, calc(var(--scale) * 10px)) min(20px, calc(var(--scale) * 20px)); }
}
@media (min-width: 600px) and (max-width: 1279px) {
  .medical_services { padding: min(60px, calc(var(--scale) * 60px)) 20px; gap: min(40px, calc(var(--scale) * 40px)); }
  .medical_services__heading { gap: min(60px, calc(var(--scale) * 60px)); }
  .medical_services__titlegroup .heading__deco--heart1 { width: min(34px, calc(var(--scale) * 34px)); height: min(26px, calc(var(--scale) * 26px)); left: clamp(-76px, calc(var(--scale) * -76px), -52px); top: clamp(14px, calc(var(--scale) * 20px), 20px); transform: rotate(5deg); }
  .medical_services__titlegroup .heading__deco--heart2 { width: min(23px, calc(var(--scale) * 23px)); height: min(17px, calc(var(--scale) * 17px)); left: clamp(-48px, calc(var(--scale) * -48px), -33px); top: clamp(28px, calc(var(--scale) * 41px), 41px); transform: rotate(-25deg); }
  .medical_services__titlegroup .heading__deco--thermo { width: min(85px, calc(var(--scale) * 85px)); height: min(22px, calc(var(--scale) * 22px)); left: clamp(105px, calc(var(--scale) * 152px), 152px); top: clamp(14px, calc(var(--scale) * 20px), 20px); transform: rotate(-60deg); }
  .medical_services__desc { font-size: clamp(14px, calc(var(--scale) * 16px), 16px); letter-spacing: .1em; }
  .medical_services__area { max-width: 800px; gap: min(16px, calc(var(--scale) * 16px)); margin-top: min(20px, calc(var(--scale) * 20px)); }
  .medical_services__photo { height: min(240px, calc(var(--scale) * 240px)); }
  .medical_services__body { padding: min(40px, calc(var(--scale) * 40px)) min(40px, calc(var(--scale) * 40px)); gap: min(30px, calc(var(--scale) * 30px)); }
  .medical_services__content { gap: min(20px, calc(var(--scale) * 20px)); }
  .medical_services__title { gap: min(8px, calc(var(--scale) * 8px)); min-height: min(44px, calc(var(--scale) * 44px)); font-size: clamp(16px, calc(var(--scale) * 19px), 19px); letter-spacing: .1em; }
  .medical_services__title img { width: min(16px, calc(var(--scale) * 16px)); height: min(16px, calc(var(--scale) * 16px)); transform: translateY(1px); }
  .medical_services__list { gap: min(12px, calc(var(--scale) * 12px)); }
  .medical_services__list li { padding-left: min(20px, calc(var(--scale) * 20px)); font-size: clamp(14px, calc(var(--scale) * 16px), 16px); line-height: 1.6; letter-spacing: .1em; }
  .medical_services__btns { gap: min(10px, calc(var(--scale) * 10px)); }
  .medical_services__btns .btn, .medical_services .btn { font-size: clamp(14px, calc(var(--scale) * 16px), 16px); padding: min(10px, calc(var(--scale) * 10px)) min(20px, calc(var(--scale) * 20px)); }
}
@media (max-width: 599px) {
  .medical_services { padding: min(60px, calc(var(--scale) * 60px)) 20px; gap: min(30px, calc(var(--scale) * 30px)); }
  .medical_services__heading { gap: 0; }
  .medical_services__titlegroup .heading__deco--heart1 { width: min(28px, calc(var(--scale) * 28px)); height: min(21px, calc(var(--scale) * 21px)); left: clamp(-46px, calc(var(--scale) * -46px), -38px); top: clamp(17px, calc(var(--scale) * 21px), 21px); transform: rotate(5deg); }
  .medical_services__titlegroup .heading__deco--heart2 { width: min(19px, calc(var(--scale) * 19px)); height: min(14px, calc(var(--scale) * 14px)); left: clamp(-21px, calc(var(--scale) * -21px), -17px); top: clamp(33px, calc(var(--scale) * 40px), 40px); transform: rotate(-25deg); }
  .medical_services__titlegroup .heading__deco--thermo { width: min(70px, calc(var(--scale) * 70px)); height: min(18px, calc(var(--scale) * 18px)); left: clamp(94px, calc(var(--scale) * 115px), 115px); top: clamp(33px, calc(var(--scale) * 40px), 40px); transform: rotate(-60deg); }
  .medical_services__desc { font-size: clamp(13px, calc(var(--scale) * 16px), 16px); letter-spacing: .1em; margin-top: min(30px, calc(var(--scale) * 30px)); }
  .medical_services__area { max-width: 1120px; flex-direction: column; gap: min(16px, calc(var(--scale) * 16px)); margin-top: min(10px, calc(var(--scale) * 10px)); }
  .medical_services__photo { height: min(200px, calc(var(--scale) * 200px)); }
  .medical_services__body { padding: min(20px, calc(var(--scale) * 20px)) min(30px, calc(var(--scale) * 30px)) min(30px, calc(var(--scale) * 30px)); gap: min(20px, calc(var(--scale) * 20px)); }
  .medical_services__content { gap: min(10px, calc(var(--scale) * 10px)); }
  .medical_services__title { gap: min(8px, calc(var(--scale) * 8px)); min-height: min(44px, calc(var(--scale) * 44px)); font-size: clamp(15px, calc(var(--scale) * 19px), 19px); letter-spacing: .1em; }
  .medical_services__title img { width: min(16px, calc(var(--scale) * 16px)); height: min(16px, calc(var(--scale) * 16px)); transform: translateY(1px); }
  .medical_services__list { gap: min(10px, calc(var(--scale) * 10px)); }
  .medical_services__list li { padding-left: min(20px, calc(var(--scale) * 20px)); font-size: clamp(13px, calc(var(--scale) * 16px), 16px); line-height: 1.6; letter-spacing: .1em; }
  .medical_services__btns { gap: min(10px, calc(var(--scale) * 10px)); }
  .medical_services__btns .btn { font-size: clamp(13px, calc(var(--scale) * 16px), 16px); padding: min(10px, calc(var(--scale) * 10px)) min(20px, calc(var(--scale) * 20px)); }
}

/* =========================================================
   clinic_hours
   ========================================================= */
.clinic_hours { display: flex; flex-direction: column; align-items: center; }
.clinic_hours__heading { position: relative; }
.clinic_hours__area { display: flex; flex-direction: column; width: 100%; }
.clinic_hours__table-wrap { width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; }
.clinic_hours__table { width: 100%; min-width: 640px; }
.clinic_hours__table th, .clinic_hours__table td { border: 1px solid var(--color-border-green); text-align: center; font-weight: 700; color: var(--color-green); }
.clinic_hours__table tr th:first-child, .clinic_hours__table tr td:first-child { border-left: none; }
.clinic_hours__table tr th:last-child, .clinic_hours__table tr td:last-child { border-right: none; }
.clinic_hours__table thead th { background: var(--color-white); }
.clinic_hours__table tbody th { text-align: center; font-weight: 700; white-space: nowrap; }
.clinic_hours__table img { margin: 0 auto; }
.clinic_hours__table img.icon-slash { transform: rotate(135deg); }
.clinic_hours__notes li { position: relative; color: var(--color-primary); font-weight: 500; text-align: justify; }
.clinic_hours__notes li::before { content: "・"; position: absolute; left: 0; top: 0; }

@media (min-width: 1280px) {
  .clinic_hours { padding: min(100px, calc(var(--scale) * 100px)) 20px; gap: min(60px, calc(var(--scale) * 60px)); }
  .clinic_hours__heading { gap: 0; }
  .clinic_hours__heading .heading__deco--syringe { width: min(30px, calc(var(--scale) * 30px)); height: min(80px, calc(var(--scale) * 80px)); left: clamp(-66px, calc(var(--scale) * -66px), -45px); top: clamp(3px, calc(var(--scale) * 4px), 4px); transform: rotate(135deg); }
  .clinic_hours__heading .heading__deco--chart { width: min(43px, calc(var(--scale) * 43px)); left: clamp(120px, calc(var(--scale) * 175px), 175px); top: clamp(11px, calc(var(--scale) * 16px), 16px); transform: rotate(15deg); }
  .clinic_hours__heading .heading__deco--pen { width: min(5px, calc(var(--scale) * 5px)); height: min(34px, calc(var(--scale) * 34px)); left: clamp(116px, calc(var(--scale) * 169px), 169px); top: clamp(10px, calc(var(--scale) * 14px), 14px); transform: rotate(135deg); }
  .clinic_hours__area { max-width: 800px; gap: min(20px, calc(var(--scale) * 20px)); }
  .clinic_hours__table th, .clinic_hours__table td { padding: min(18px, calc(var(--scale) * 18px)) min(8px, calc(var(--scale) * 8px)); font-size: clamp(13px, calc(var(--scale) * 16px), 16px); line-height: 1.4; }
  .clinic_hours__table img { width: min(20px, calc(var(--scale) * 20px)); height: min(20px, calc(var(--scale) * 20px)); }
  .clinic_hours__table img.icon-slash { height: min(2px, calc(var(--scale) * 2px)); }
  .clinic_hours__table tbody tr:nth-child(2) img { width: min(28px, calc(var(--scale) * 28px)); height: min(28px, calc(var(--scale) * 28px)); }
  .clinic_hours__table tbody tr:nth-child(2) img.icon-slash { width: min(20px, calc(var(--scale) * 20px)); height: min(2px, calc(var(--scale) * 2px)); }
  .clinic_hours__notes { gap: 0; padding-left: min(21px, calc(var(--scale) * 21px)); }
  .clinic_hours__notes li { font-size: clamp(12px, calc(var(--scale) * 14px), 14px); line-height: min(25px, calc(var(--scale) * 25px)); }
}
@media (min-width: 600px) and (max-width: 1279px) {
  .clinic_hours { padding: min(60px, calc(var(--scale) * 60px)) 20px; gap: min(60px, calc(var(--scale) * 60px)); }
  .clinic_hours__heading { gap: 0; }
  .clinic_hours__heading .heading__deco--syringe { width: min(30px, calc(var(--scale) * 30px)); height: min(80px, calc(var(--scale) * 80px)); left: clamp(-66px, calc(var(--scale) * -66px), -45px); top: clamp(3px, calc(var(--scale) * 4px), 4px); transform: rotate(135deg); }
  .clinic_hours__heading .heading__deco--chart { width: min(43px, calc(var(--scale) * 43px)); left: clamp(120px, calc(var(--scale) * 175px), 175px); top: clamp(11px, calc(var(--scale) * 16px), 16px); transform: rotate(15deg); }
  .clinic_hours__heading .heading__deco--pen { width: min(5px, calc(var(--scale) * 5px)); height: min(34px, calc(var(--scale) * 34px)); left: clamp(116px, calc(var(--scale) * 169px), 169px); top: clamp(10px, calc(var(--scale) * 14px), 14px); transform: rotate(135deg); }
  .clinic_hours__area { max-width: 800px; gap: min(20px, calc(var(--scale) * 20px)); }
  .clinic_hours__table th, .clinic_hours__table td { padding: min(18px, calc(var(--scale) * 18px)) min(8px, calc(var(--scale) * 8px)); font-size: clamp(13px, calc(var(--scale) * 16px), 16px); line-height: 1.4; }
  .clinic_hours__table img { width: min(20px, calc(var(--scale) * 20px)); height: min(20px, calc(var(--scale) * 20px)); }
  .clinic_hours__table img.icon-slash { height: min(2px, calc(var(--scale) * 2px)); }
  .clinic_hours__table tbody tr:nth-child(2) img { width: min(28px, calc(var(--scale) * 28px)); height: min(28px, calc(var(--scale) * 28px)); }
  .clinic_hours__table tbody tr:nth-child(2) img.icon-slash { width: min(20px, calc(var(--scale) * 20px)); height: min(2px, calc(var(--scale) * 2px)); }
  .clinic_hours__notes { gap: 0; padding-left: min(21px, calc(var(--scale) * 21px)); }
  .clinic_hours__notes li { font-size: clamp(12px, calc(var(--scale) * 14px), 14px); line-height: min(25px, calc(var(--scale) * 25px)); }
}
@media (max-width: 599px) {
  .clinic_hours { padding: min(60px, calc(var(--scale) * 60px)) 20px; gap: min(30px, calc(var(--scale) * 30px)); }
  .clinic_hours__heading { gap: 0; }
  .clinic_hours__heading .heading__deco--syringe { width: min(21px, calc(var(--scale) * 21px)); height: min(57px, calc(var(--scale) * 57px)); left: clamp(-47px, calc(var(--scale) * -41px), -41px); top: clamp(6px, calc(var(--scale) * 7px), 7px); transform: rotate(135deg); }
  .clinic_hours__heading .heading__deco--chart { width: min(34px, calc(var(--scale) * 34px)); left: clamp(93px, calc(var(--scale) * 114px), 114px); top: clamp(12px, calc(var(--scale) * 14px), 14px); transform: rotate(15deg); }
  .clinic_hours__heading .heading__deco--pen { width: min(4px, calc(var(--scale) * 4px)); height: min(27px, calc(var(--scale) * 27px)); left: clamp(89px, calc(var(--scale) * 109px), 109px); top: clamp(10px, calc(var(--scale) * 12px), 12px); transform: rotate(135deg); }
  .clinic_hours__area { gap: min(20px, calc(var(--scale) * 20px)); }
  .clinic_hours__table th, .clinic_hours__table td { padding: min(14px, calc(var(--scale) * 14px)) min(6px, calc(var(--scale) * 6px)); font-size: clamp(12px, calc(var(--scale) * 15px), 15px); }
  .clinic_hours__table img { width: min(18px, calc(var(--scale) * 18px)); height: min(18px, calc(var(--scale) * 18px)); }
  .clinic_hours__table img.icon-slash { height: min(2px, calc(var(--scale) * 2px)); }
  .clinic_hours__table tbody tr:nth-child(2) img { width: min(24px, calc(var(--scale) * 24px)); height: min(24px, calc(var(--scale) * 24px)); }
  .clinic_hours__table tbody tr:nth-child(2) img.icon-slash { width: min(18px, calc(var(--scale) * 18px)); height: min(2px, calc(var(--scale) * 2px)); }
  .clinic_hours__notes { gap: 0; padding-left: min(18px, calc(var(--scale) * 18px)); }
  .clinic_hours__notes li { font-size: clamp(12px, calc(var(--scale) * 14px), 14px); line-height: min(25px, calc(var(--scale) * 25px)); }
}

/* =========================================================
   doctor_profile
   ========================================================= */
.doctor_profile { background: var(--color-bg-green); display: flex; flex-direction: column; align-items: center; }
.doctor_profile__heading { position: relative; }
.doctor_profile__area { background: var(--color-white); border-radius: 20px; width: 100%; display: flex; flex-direction: column; align-items: center; }
.doctor_profile__card { display: flex; align-items: center; width: 100%; }
.doctor_profile__photo { border-radius: 100%; overflow: hidden; flex-shrink: 0; }
.doctor_profile__photo img { width: 100%; height: 100%; object-fit: cover; }
.doctor_profile__role { color: var(--color-green); font-weight: 500; }
.doctor_profile__name-text { color: var(--color-primary); font-weight: 500; }
.doctor_profile__bio { width: 100%; }
.doctor_profile__bio li { position: relative; color: var(--color-primary); font-weight: 500; }
.doctor_profile__bio li::before { content: "・"; position: absolute; left: 0; top: 0; }

@media (min-width: 1280px) {
  .doctor_profile { padding: min(100px, calc(var(--scale) * 100px)) 20px; gap: min(60px, calc(var(--scale) * 60px)); }
  .doctor_profile__heading { gap: 0; }
  .doctor_profile__heading .heading__deco--capsule1 { width: min(16px, calc(var(--scale) * 16px)); height: min(8px, calc(var(--scale) * 8px)); left: clamp(-64px, calc(var(--scale) * -64px), -44px); top: clamp(3px, calc(var(--scale) * 4px), 4px); transform: rotate(30deg); }
  .doctor_profile__heading .heading__deco--capsule2 { width: min(13px, calc(var(--scale) * 13px)); height: min(12px, calc(var(--scale) * 12px)); left: clamp(-31px, calc(var(--scale) * -31px), -21px); top: clamp(-14px, calc(var(--scale) * -14px), -10px); transform: rotate(30deg); }
  .doctor_profile__heading .heading__deco--capsule3 { width: min(11px, calc(var(--scale) * 11px)); height: min(13px, calc(var(--scale) * 13px)); left: clamp(-53px, calc(var(--scale) * -53px), -36px); top: clamp(25px, calc(var(--scale) * 36px), 36px); transform: rotate(30deg); }
  .doctor_profile__heading .heading__deco--capsule4 { width: min(15px, calc(var(--scale) * 15px)); height: min(12px, calc(var(--scale) * 12px)); left: clamp(-40px, calc(var(--scale) * -40px), -28px); top: clamp(14px, calc(var(--scale) * 21px), 21px); transform: rotate(30deg); }
  .doctor_profile__heading .heading__deco--stetho { width: min(59px, calc(var(--scale) * 59px)); height: min(105px, calc(var(--scale) * 105px)); left: clamp(118px, calc(var(--scale) * 172px), 172px); top: clamp(-8px, calc(var(--scale) * -8px), -6px); transform: rotate(15deg); }
  .doctor_profile__area { max-width: 1120px; padding: min(60px, calc(var(--scale) * 60px)); gap: min(30px, calc(var(--scale) * 30px)); }
  .doctor_profile__card { max-width: 379px; gap: min(40px, calc(var(--scale) * 40px)); justify-content: center; }
  .doctor_profile__photo { width: min(200px, calc(var(--scale) * 200px)); height: min(200px, calc(var(--scale) * 200px)); }
  .doctor_profile__name { display: flex; flex-direction: column; gap: min(5px, calc(var(--scale) * 5px)); }
  .doctor_profile__role { font-size: clamp(14px, calc(var(--scale) * 16px), 16px); line-height: min(32px, calc(var(--scale) * 32px)); }
  .doctor_profile__name-text { font-size: clamp(18px, calc(var(--scale) * 24px), 24px); line-height: min(32px, calc(var(--scale) * 32px)); }
  .doctor_profile__bio { max-width: 800px; display: flex; flex-direction: column; gap: min(4px, calc(var(--scale) * 4px)); }
  .doctor_profile__bio li { padding-left: min(24px, calc(var(--scale) * 24px)); font-size: clamp(13px, calc(var(--scale) * 16px), 16px); line-height: 1.55; letter-spacing: .1em; }
}
@media (min-width: 600px) and (max-width: 1279px) {
  .doctor_profile { padding: min(60px, calc(var(--scale) * 60px)) 20px; gap: min(60px, calc(var(--scale) * 60px)); }
  .doctor_profile__heading { gap: 0; }
  .doctor_profile__heading .heading__deco--capsule1 { width: min(16px, calc(var(--scale) * 16px)); height: min(8px, calc(var(--scale) * 8px)); left: clamp(-64px, calc(var(--scale) * -64px), -44px); top: clamp(3px, calc(var(--scale) * 4px), 4px); transform: rotate(30deg); }
  .doctor_profile__heading .heading__deco--capsule2 { width: min(13px, calc(var(--scale) * 13px)); height: min(12px, calc(var(--scale) * 12px)); left: clamp(-31px, calc(var(--scale) * -31px), -21px); top: clamp(-14px, calc(var(--scale) * -14px), -10px); transform: rotate(30deg); }
  .doctor_profile__heading .heading__deco--capsule3 { width: min(11px, calc(var(--scale) * 11px)); height: min(13px, calc(var(--scale) * 13px)); left: clamp(-53px, calc(var(--scale) * -53px), -36px); top: clamp(25px, calc(var(--scale) * 36px), 36px); transform: rotate(30deg); }
  .doctor_profile__heading .heading__deco--capsule4 { width: min(15px, calc(var(--scale) * 15px)); height: min(12px, calc(var(--scale) * 12px)); left: clamp(-40px, calc(var(--scale) * -40px), -28px); top: clamp(14px, calc(var(--scale) * 21px), 21px); transform: rotate(30deg); }
  .doctor_profile__heading .heading__deco--stetho { width: min(59px, calc(var(--scale) * 59px)); height: min(105px, calc(var(--scale) * 105px)); left: clamp(118px, calc(var(--scale) * 172px), 172px); top: clamp(-8px, calc(var(--scale) * -8px), -6px); transform: rotate(15deg); }
  .doctor_profile__area { max-width: 800px; padding: min(60px, calc(var(--scale) * 60px)); gap: min(30px, calc(var(--scale) * 30px)); }
  .doctor_profile__card { max-width: 379px; gap: min(40px, calc(var(--scale) * 40px)); justify-content: center; }
  .doctor_profile__photo { width: min(200px, calc(var(--scale) * 200px)); height: min(200px, calc(var(--scale) * 200px)); }
  .doctor_profile__name { display: flex; flex-direction: column; gap: min(5px, calc(var(--scale) * 5px)); }
  .doctor_profile__role { font-size: clamp(14px, calc(var(--scale) * 16px), 16px); line-height: min(32px, calc(var(--scale) * 32px)); }
  .doctor_profile__name-text { font-size: clamp(18px, calc(var(--scale) * 24px), 24px); line-height: min(32px, calc(var(--scale) * 32px)); }
  .doctor_profile__bio { max-width: 680px; display: flex; flex-direction: column; gap: min(4px, calc(var(--scale) * 4px)); }
  .doctor_profile__bio li { padding-left: min(24px, calc(var(--scale) * 24px)); font-size: clamp(13px, calc(var(--scale) * 16px), 16px); line-height: 1.55; letter-spacing: .1em; }
}
@media (max-width: 599px) {
  .doctor_profile { padding: min(60px, calc(var(--scale) * 60px)) 20px; gap: min(30px, calc(var(--scale) * 30px)); }
  .doctor_profile__heading { gap: 0; }
  .doctor_profile__heading .heading__deco--capsule1 { width: min(17px, calc(var(--scale) * 17px)); height: min(9px, calc(var(--scale) * 9px)); left: clamp(-42px, calc(var(--scale) * -35px), -35px); top: 0px; transform: rotate(30deg); }
  .doctor_profile__heading .heading__deco--capsule2 { width: min(15px, calc(var(--scale) * 15px)); height: min(13px, calc(var(--scale) * 13px)); left: clamp(4px, calc(var(--scale) * 5px), 5px); top: clamp(-22px, calc(var(--scale) * -18px), -18px); transform: rotate(30deg); }
  .doctor_profile__heading .heading__deco--capsule3 { width: min(12px, calc(var(--scale) * 12px)); height: min(15px, calc(var(--scale) * 15px)); left: clamp(-28px, calc(var(--scale) * -23px), -23px); top: clamp(25px, calc(var(--scale) * 31px), 31px); transform: rotate(30deg); }
  .doctor_profile__heading .heading__deco--capsule4 { width: min(16px, calc(var(--scale) * 16px)); height: min(13px, calc(var(--scale) * 13px)); left: clamp(-24px, calc(var(--scale) * -21px), -21px); top: clamp(14px, calc(var(--scale) * 17px), 17px); transform: rotate(30deg); }
  .doctor_profile__heading .heading__deco--stetho { width: min(48px, calc(var(--scale) * 48px)); height: min(86px, calc(var(--scale) * 86px)); left: clamp(116px, calc(var(--scale) * 142px), 142px); top: clamp(-4px, calc(var(--scale) * -4px), -3px); transform: rotate(15deg); }
  .doctor_profile__area { padding: min(40px, calc(var(--scale) * 40px)) 20px; gap: min(30px, calc(var(--scale) * 30px)); }
  .doctor_profile__card { flex-direction: column; gap: min(10px, calc(var(--scale) * 10px)); }
  .doctor_profile__photo { width: min(160px, calc(var(--scale) * 160px)); height: min(160px, calc(var(--scale) * 160px)); }
  .doctor_profile__name { display: flex; flex-direction: column; align-items: center; gap: min(5px, calc(var(--scale) * 5px)); }
  .doctor_profile__role { font-size: clamp(14px, calc(var(--scale) * 16px), 16px); line-height: min(32px, calc(var(--scale) * 32px)); }
  .doctor_profile__name-text { font-size: clamp(18px, calc(var(--scale) * 24px), 24px); line-height: min(32px, calc(var(--scale) * 32px)); }
  .doctor_profile__bio { display: flex; flex-direction: column; gap: min(4px, calc(var(--scale) * 4px)); }
  .doctor_profile__bio li { padding-left: min(24px, calc(var(--scale) * 24px)); font-size: clamp(13px, calc(var(--scale) * 16px), 16px); line-height: 1.55; letter-spacing: .1em; }
}

/* =========================================================
   facility_standards
   ========================================================= */
.facility_standards { display: flex; flex-direction: column; align-items: center; }
.facility_standards__heading { position: relative; }
.facility_standards__area { border: 1px solid var(--color-border-green); border-radius: 20px; width: 100%; display: flex; flex-direction: column; }
.facility_standards__block { display: flex; flex-direction: column; }
.facility_standards__content { display: flex; flex-direction: column; }
.facility_standards__title { display: flex; align-items: center; color: var(--color-green); font-weight: 700; line-height: 1.2; }
.facility_standards__title img { flex-shrink: 0; }
.facility_standards__block { min-width: 0; }
.facility_standards__block p { color: var(--color-primary); font-weight: 500; text-align: justify; }
.facility_standards__block ol { list-style: decimal; text-align: justify; }
.facility_standards__block ol li { color: var(--color-primary); font-weight: 500; }

@media (min-width: 1280px) {
  .facility_standards { padding: min(100px, calc(var(--scale) * 100px)) 20px; gap: min(60px, calc(var(--scale) * 60px)); }
  .facility_standards__heading { gap: 0; }
  .facility_standards__heading .heading__deco--mask { width: min(82px, calc(var(--scale) * 82px)); height: min(32px, calc(var(--scale) * 32px)); left: clamp(-83px, calc(var(--scale) * -83px), -57px); top: clamp(-15px, calc(var(--scale) * -15px), -10px); transform: rotate(-33deg); }
  .facility_standards__heading .heading__deco--prescription { width: min(43px, calc(var(--scale) * 43px)); height: min(57px, calc(var(--scale) * 57px)); left: clamp(122px, calc(var(--scale) * 177px), 177px); top: clamp(19px, calc(var(--scale) * 27px), 27px); transform: rotate(15deg); }
  .facility_standards__area { max-width: 1120px; padding: min(60px, calc(var(--scale) * 60px)); gap: min(40px, calc(var(--scale) * 40px)); }
  .facility_standards__block { max-width: 800px; gap: min(20px, calc(var(--scale) * 20px)); margin: 0 auto; width: 100%; }
  .facility_standards__content { gap: min(10px, calc(var(--scale) * 10px)); }
  .facility_standards__title { gap: min(8px, calc(var(--scale) * 8px)); min-height: min(44px, calc(var(--scale) * 44px)); font-size: clamp(16px, calc(var(--scale) * 19px), 19px); letter-spacing: .1em; }
  .facility_standards__title img { width: min(16px, calc(var(--scale) * 16px)); height: min(16px, calc(var(--scale) * 16px)); transform: translateY(1px); }
  .facility_standards__block p { font-size: clamp(14px, calc(var(--scale) * 16px), 16px); line-height: 1.55; letter-spacing: .1em; }
  .facility_standards__block .small { font-size: clamp(12px, calc(var(--scale) * 14px), 14px); }
  .facility_standards__block ol { padding-left: min(24px, calc(var(--scale) * 24px)); display: flex; flex-direction: column; }
  .facility_standards__block ol li { font-size: clamp(14px, calc(var(--scale) * 16px), 16px); line-height: 1.55; letter-spacing: .1em; }
}
@media (min-width: 600px) and (max-width: 1279px) {
  .facility_standards { padding: min(60px, calc(var(--scale) * 60px)) 20px; gap: min(60px, calc(var(--scale) * 60px)); }
  .facility_standards__heading { gap: 0; }
  .facility_standards__heading .heading__deco--mask { width: min(82px, calc(var(--scale) * 82px)); height: min(32px, calc(var(--scale) * 32px)); left: clamp(-83px, calc(var(--scale) * -83px), -57px); top: clamp(-15px, calc(var(--scale) * -15px), -10px); transform: rotate(-33deg); }
  .facility_standards__heading .heading__deco--prescription { width: min(43px, calc(var(--scale) * 43px)); height: min(57px, calc(var(--scale) * 57px)); left: clamp(122px, calc(var(--scale) * 177px), 177px); top: clamp(19px, calc(var(--scale) * 27px), 27px); transform: rotate(15deg); }
  .facility_standards__area { max-width: 800px; padding: min(60px, calc(var(--scale) * 60px)); gap: min(40px, calc(var(--scale) * 40px)); }
  .facility_standards__block { max-width: 680px; gap: min(20px, calc(var(--scale) * 20px)); margin: 0 auto; width: 100%; }
  .facility_standards__content { gap: min(10px, calc(var(--scale) * 10px)); }
  .facility_standards__title { gap: min(8px, calc(var(--scale) * 8px)); min-height: min(44px, calc(var(--scale) * 44px)); font-size: clamp(16px, calc(var(--scale) * 19px), 19px); letter-spacing: .1em; }
  .facility_standards__title img { width: min(16px, calc(var(--scale) * 16px)); height: min(16px, calc(var(--scale) * 16px)); transform: translateY(1px); }
  .facility_standards__block p { font-size: clamp(14px, calc(var(--scale) * 16px), 16px); line-height: 1.55; letter-spacing: .1em; }
  .facility_standards__block .small { font-size: clamp(12px, calc(var(--scale) * 14px), 14px); }
  .facility_standards__block ol { padding-left: min(24px, calc(var(--scale) * 24px)); display: flex; flex-direction: column; }
  .facility_standards__block ol li { font-size: clamp(14px, calc(var(--scale) * 16px), 16px); line-height: 1.55; letter-spacing: .1em; }
}
@media (max-width: 599px) {
  .facility_standards { padding: min(60px, calc(var(--scale) * 60px)) 20px; gap: min(30px, calc(var(--scale) * 30px)); }
  .facility_standards__heading { gap: 0; }
  .facility_standards__heading .heading__deco--mask { width: min(68px, calc(var(--scale) * 68px)); height: min(27px, calc(var(--scale) * 27px)); left: clamp(-70px, calc(var(--scale) * -70px), -57px); top: clamp(-4px, calc(var(--scale) * -4px), -3px); transform: rotate(-33deg); }
  .facility_standards__heading .heading__deco--prescription { width: min(36px, calc(var(--scale) * 36px)); height: min(47px, calc(var(--scale) * 47px)); left: clamp(124px, calc(var(--scale) * 152px), 152px); top: clamp(21px, calc(var(--scale) * 26px), 26px); transform: rotate(15deg); }
  .facility_standards__area { padding: min(40px, calc(var(--scale) * 40px)) 20px; gap: min(30px, calc(var(--scale) * 30px)); }
  .facility_standards__block { gap: min(20px, calc(var(--scale) * 20px)); }
  .facility_standards__content { gap: min(10px, calc(var(--scale) * 10px)); }
  .facility_standards__title { gap: min(8px, calc(var(--scale) * 8px)); min-height: min(44px, calc(var(--scale) * 44px)); font-size: clamp(15px, calc(var(--scale) * 19px), 19px); letter-spacing: .1em; }
  .facility_standards__title img { width: min(16px, calc(var(--scale) * 16px)); height: min(16px, calc(var(--scale) * 16px)); transform: translateY(1px); }
  .facility_standards__block p { font-size: clamp(13px, calc(var(--scale) * 16px), 16px); line-height: 1.55; letter-spacing: .1em; }
  .facility_standards__block .small { font-size: clamp(12px, calc(var(--scale) * 14px), 14px); }
  .facility_standards__block ol { padding-left: min(24px, calc(var(--scale) * 24px)); display: flex; flex-direction: column; }
  .facility_standards__block ol li { font-size: clamp(13px, calc(var(--scale) * 16px), 16px); line-height: 1.55; letter-spacing: .1em; }
}
