@charset "UTF-8";
/* 下層ページ共通スタイル（build/php_export.py で生成。手修正は assets/css/custom.css へ） */
@layer lower-base, lower-tweak, lower-priority, lower-tweak-priority;

:root{
  --deep:#033632;--green:#0f988c;--aqua:#00a99a;--mint:#58c6af;--pink:#ffa8a8;--coral:#f25f5f;
  --orange:#f1953b;--yellow:#fbb958;--footer:#007066;--brown:#5e4935;
  --green-d:#007066;--bg:#f2f8f7;--bg2:#e6f4f1;--ring:#dbefea;--line:#bfe3da;
  --beige:#b8a982;--beige-l:#f7f2e6;--text:#3b4a48;--sub:#6b7a78;
  --zen:"Zen Maru Gothic",sans-serif;--jost:Jost,sans-serif;
}
@media (min-width:768px){
  .site-header,.site-header .header-inner{height:450px}
  .page-title{top:222px}
}

/* 通常の指定（共通 → ページ別 → レスポンシブ） */
@layer lower-base {
/* =========================================================
   くすの木動物病院 下層ページ 共通スタイル（カンプ用）
   ルール：コンテンツ幅1200px / Zen Maru Gothic・Jost・Noto Sans JP
   ========================================================= */
body{background:var(--bg)}
.page-body{background:var(--bg);color:var(--text);font-size:15px;line-height:2;letter-spacing:.06em}
:where(.page-body) p{margin:0}
.page-body img{max-width:100%}
.inner{position:relative;width:1200px;margin:0 auto}
.inner--narrow{width:1000px}
.sec{position:relative;padding:130px 0;overflow:hidden}
.sec--white{background:#fff}
.sec--mint{background:var(--bg)}
.sec--beige{background:var(--beige-l)}
.sec + .sec{border-top:0}
.tc{text-align:center}
.em{color:var(--green);font-weight:700}
.marker{background:linear-gradient(transparent 62%,#ffe6a6 62%)}
.small{font-size:13px;line-height:1.8;color:var(--sub)}
/* ---------- breadcrumb ---------- */
.breadcrumb{position:relative;z-index:3;width:1200px;margin:0 auto;padding:0 0 0;transform:translateY(-44px);display:flex;gap:12px;font-size:12px;color:var(--sub);font-family:var(--zen);font-weight:700}
.breadcrumb a{color:var(--green)}
/* ---------- h2 : section heading（トップページの“Medical”見出しを踏襲） ---------- */
.sec-head{position:relative;margin:0 0 64px;text-align:center}
.sec-head__en{display:block;width:auto;height:90px;margin:0 auto}
.sec-head h2{position:relative;margin:-16px 0 0;font-family:var(--zen);font-size:34px;font-weight:700;line-height:1.5;letter-spacing:.12em;color:var(--green-d)}
.sec-head__lead{font-family:var(--zen);font-size:18px;font-weight:700;line-height:1.8;color:var(--green)}
.sec-head__lead:before,.sec-head__lead:after{content:"";display:inline-block;width:34px;height:2px;margin:0 16px 6px;background:radial-gradient(circle,var(--mint) 1.2px,transparent 1.6px) 0 0/7px 2px repeat-x}
.sec-head__text{max-width:860px;font-size:15px;line-height:2.1;text-align:center}
.sec-head--left{text-align:left}
.sec-head--left .sec-head__lead:before{display:none}
.sec-head--left .sec-head__text{text-align:left}
.page-id-9 .sec-head__text{text-align:left}
/* h2 : numbered variant（設備・疾患などの連続セクション） */
.sec-head--num .num{display:flex;align-items:center;justify-content:center;gap:14px;font-family:var(--jost);font-weight:500;color:var(--mint);letter-spacing:.12em}
.sec-head--num b{font-size:72px;font-weight:500;line-height:1;color:var(--aqua)}
.sec-head--num small{font-size:15px;font-weight:700;line-height:1.2;text-align:right}
.sec-head--num h2{margin-top:6px}
.sec-head__tag{display:inline-block;margin-top:14px;padding:5px 22px;border-radius:999px;background:var(--bg2);font-family:var(--zen);font-size:20px;font-weight:700;color:var(--green-d)}
.sec--mint .sec-head__tag{background:#fff}
.sec-head--num .en-sub{display:block;margin-top:2px;font-family:var(--jost);font-size:15px;font-weight:700;letter-spacing:.2em;color:var(--beige)}
/* ---------- h3 : bar heading ---------- */
.h3{position:relative;margin:0 0 40px;padding:15px 28px 15px 42px;border-radius:10px;background:var(--green-d);color:#fff;font-family:var(--zen);font-size:23px;font-weight:700;line-height:1.5;letter-spacing:.1em}
.h3:before{content:"";position:absolute;left:0;top:0;bottom:0;width:14px;border-radius:10px 0 0 10px;background:var(--aqua)}
.h3 small{margin-left:18px;font-family:var(--jost);font-size:13px;font-weight:700;letter-spacing:.18em;color:#8fe0cf}
.h3-lead{font-family:var(--zen);font-size:17px;font-weight:700;color:var(--green)}
/* ---------- h4 : dotted underline heading ---------- */
.h4{position:relative;margin:0 0 20px;padding:0 0 12px 34px;border-bottom:1px solid var(--green);font-family:var(--zen);font-size:21px;font-weight:700;line-height:1.5;letter-spacing:.1em;color:var(--green-d)}
.h4:before{content:"";position:absolute;left:0;top:12px;width:9px;height:9px;border-radius:50%;background:#58c6af;box-shadow:12px 0 0 #f8d471}
/* ---------- h5 ---------- */
.h5{margin:0 0 10px;font-family:var(--zen);font-size:18px;font-weight:700;line-height:1.55;letter-spacing:.08em;color:var(--green-d)}
.h5--c{text-align:center}
/* ---------- anchor link section ---------- */
.anchor{position:relative;z-index:2;padding:0 0 30px}
.anchor__inner{position:relative;width:1200px;margin:-75px auto 0;padding:40px 56px 48px;border-radius:30px;background:#fff;box-shadow:0 0 40px rgba(0,0,0,.11)}
.anchor__ttl{text-align:center;line-height:1}
.anchor__ttl span{display:block;font-family:var(--jost);font-size:20px;font-weight:700;letter-spacing:.25em;color:var(--mint)}
.anchor__ttl small{display:inline-flex;align-items:center;gap:24px;margin-top:8px;font-family:var(--zen);font-size:12px;font-weight:700;letter-spacing:.15em;color:var(--green-d)}
.anchor__ttl small:before,.anchor__ttl small:after{content:"";width:68px;height:1px;background:var(--mint)}
.anchor__list{display:grid;grid-template-columns:repeat(4,1fr);gap:16px 18px;margin:0;padding:0;list-style:none}
.anchor__list.cols-3{grid-template-columns:repeat(3,1fr)}
.anchor__list a{position:relative;display:flex;align-items:center;gap:14px;height:76px;padding:0 50px 0 10px;border:2px solid var(--ring);border-radius:999px;background:#fff;font-family:var(--zen);font-size:16px;font-weight:700;line-height:1.35;letter-spacing:.06em;color:var(--deep)}
.anchor__list a:after{content:"";position:absolute;right:14px;top:50%;width:26px;height:26px;margin-top:-13px;border-radius:50%;background:var(--green) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26'%3E%3Cpath d='M8.5 11l4.5 4.5 4.5-4.5' fill='none' stroke='%23fff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/26px no-repeat}
.anchor__ic{flex:none;display:grid;place-items:center;width:54px;height:54px;overflow:hidden;border-radius:50%;background:var(--bg)}
.anchor__ic img{width:100%;height:100%;object-fit:cover}
.anchor__ic svg{width:30px;height:30px}
.anchor__ic--txt{font-family:var(--jost);font-size:18px;font-weight:700;color:var(--green)}
.anchor__list small{display:block;font-family:"Noto Sans JP",sans-serif;font-size:11px;font-weight:500;letter-spacing:.04em;color:var(--sub)}
/* tall anchor (with description) */
.anchor__list--tall a{height:auto;min-height:92px;padding:12px 46px 12px 12px;border-radius:22px;align-items:center}
.anchor__list--tall .anchor__ic{width:70px;height:70px;border-radius:16px;background:#fff;border:1px solid var(--ring)}
/* ---------- intro section ---------- */
.intro{padding:90px 0 130px}
.intro__grid{display:grid;grid-template-columns:600px 1fr;gap:72px;align-items:center}
.intro__grid--rev{grid-template-columns:1fr 560px}
.intro__media{position:relative}
.intro__media img.photo{position:relative;z-index:1;width:100%;height:440px;object-fit:cover;border-radius:36px}
.intro__en{display:block;font-family:var(--jost);font-size:14px;font-weight:700;letter-spacing:.24em;color:var(--mint)}
.intro__catch{margin:0 0 28px;font-family:var(--zen);font-size:32px;font-weight:700;line-height:1.6;letter-spacing:.1em;color:var(--green-d)}
.intro__text p+p{margin-top:16px}
.intro__tag{display:inline-block;padding:4px 18px;border-radius:999px;background:#09A89A;color:#fff;font-family:var(--zen);font-size:14px;font-weight:700;letter-spacing:.1em}
/* consult panel（トップページ「こんなことで受診しても…」を踏襲） */
.consult,.closing{position:relative;display:flex;align-items:flex-end;justify-content:center;gap:20px;width:fit-content;max-width:100%;min-height:139px;margin:84px auto 0;padding:0 20px 0 73px;border-radius:20px;background:#0f988c;color:#fff;font-family:var(--zen);font-size:19px;font-weight:700;line-height:1.8;letter-spacing:.1em;text-align:right}
.consult>p,.closing>div.closing__txt{align-self:center;padding:28px 0}
.consult>img,.closing>img{flex:none;width:190px;height:194px;margin-top:-55px}
.consult--s{display:block;width:auto;min-height:0;margin:40px 0 0;padding:26px 36px;font-size:17px;text-align:left}
/* ---------- message / closing ---------- */
.key-msg{position:relative;margin:64px auto 0;padding:28px 40px;text-align:center;font-family:var(--zen);font-size:21px;font-weight:700;line-height:1.8;letter-spacing:.1em;color:var(--green-d)}
.key-msg:before,.key-msg:after{content:"";position:absolute;left:50%;width:120px;height:4px;margin-left:-60px;background:radial-gradient(circle,var(--mint) 2px,transparent 2.4px) 0 0/12px 4px repeat-x}
.key-msg:before{top:0}
.key-msg:after{bottom:0}
.key-msg--s{font-size:18px}
.closing p{font-size:21px;line-height:1.8}
.closing small{display:block;margin-top:8px;font-size:15px;font-weight:500;opacity:.9}
.closing .btns{justify-content:flex-end;margin-top:18px}
/* ---------- cards ---------- */
.grid{display:grid;gap:32px}
.g2{grid-template-columns:repeat(2,1fr)}
.g3{grid-template-columns:repeat(3,1fr)}
.g4{grid-template-columns:repeat(4,1fr)}
.g5{grid-template-columns:repeat(5,1fr)}
.gap24{gap:24px}
.gap20{gap:20px}
.gap48{gap:48px}
.gap64{gap:64px}
.card{position:relative;padding:34px 34px 36px;border-radius:26px;background:#fff;box-shadow:0 0 0 3px var(--ring)}
.sec--white .card{background:#fff}
.card--mint{box-shadow:none}
.card--beige{box-shadow:none}
.card--line{background:#fff;box-shadow:none;border:2px solid var(--ring)}
.card__img{display:block;width:100%;height:200px;object-fit:contain;margin:0 0 18px}
.card__photo{display:block;width:100%;height:220px;object-fit:cover;border-radius:16px;margin:0 0 20px}
.card p+p{margin-top:12px}
.card--center{text-align:center}
.card .h5{font-size:22px}
#anesthesia .card .h5{font-size:20px;text-align:center}
/* illust tile (症状・疾患など) */
.tile{display:flex;flex-direction:column;align-items:center;padding:22px 16px 24px;border-radius:24px;background:#fff;box-shadow:0 0 0 3px var(--ring);text-align:center}
.tile img{width:100%;height:132px;object-fit:contain;margin-bottom:14px}
.tile p{font-family:var(--zen);font-size:16px;font-weight:700;line-height:1.6;color:var(--deep)}
.tile small{display:block;margin-top:6px;font-family:"Noto Sans JP";font-size:12.5px;font-weight:400;line-height:1.7;color:var(--sub)}
.circle-img{display:block;width:170px;height:170px;margin:0 auto 18px;border-radius:50%;object-fit:cover;background:#fff;box-shadow:0 0 0 3px var(--ring)}
/* card head bar（h3 in card） */
.card-head{margin:-34px -34px 45px;padding:22px 34px;border-radius:26px 26px 0 0;background:var(--green-d);color:#fff;font-family:var(--zen);font-size:24px;font-weight:700;letter-spacing:.12em;position:relative}
.card-head--mint{background:var(--mint)}
.card-head--beige{background:var(--beige)}
.card-head small{margin-left:14px;font-family:var(--jost);font-size:12px;letter-spacing:.2em;opacity:.8}
.card-head img{position:absolute;right:22px;bottom:-35px;width:150px;height:110px;object-fit:cover;border-radius:16px;background:#fff;padding:6px;box-shadow:0 0 0 4px var(--ring)}
/* number badge（トップページ FEATURE を踏襲） */
.badge{display:inline-grid;place-items:center;align-content:center;gap:3px;width:70px;height:70px;border-radius:50%;background:#f8a3a3;color:#fff;font-family:var(--jost);text-align:center;line-height:1}
.badge small{display:block;font-size:8.5px;font-weight:700;letter-spacing:.14em}
.badge b{display:block;font-size:30px;font-weight:500}
.badge--mint{background:var(--mint)}
.badge--green{background:var(--green)}
.num-dot{display:inline-grid;place-items:center;width:60px;height:60px;flex:none;border-radius:50%;background:var(--green);color:#fff;font-family:var(--jost);font-size:26px;font-weight:500}
.num-dot--ring{background:#fff;color:var(--green);border:2px solid var(--green)}
.num-dot--s{width:36px;height:36px;font-size:16px}
/* ---------- media + text row ---------- */
.row{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.row--5-7{grid-template-columns:5fr 7fr}
.row--7-5{grid-template-columns:7fr 5fr}
.row--4-8{grid-template-columns:4fr 8fr}
.row--8-4{grid-template-columns:8fr 4fr}
.row--top{align-items:start}
.photo{display:block;width:100%;object-fit:cover;border-radius:24px}
.photo--h300{height:300px}
.photo--h360{height:360px}
.photo--h420{height:420px}
.photo--h240{height:240px}
.photo--h200{height:200px}
.photo--h260{height:260px}
.photo--contain{object-fit:contain;background:#fff}
.photo--cover{object-fit:cover;background:#fff}
.cap{font-family:var(--zen);font-size:14px;font-weight:700;text-align:center;color:var(--green-d)}
.cap small{display:block;font-family:var(--jost);font-size:15px;color:var(--text);letter-spacing:.06em}
.fig{position:relative}
.fig .badge{position:absolute;right:-20px;top:-20px}
/* ---------- list ---------- */
.checks{display:grid;gap:14px 40px;margin:0;padding:0;list-style:none}
.checks.c2{grid-template-columns:1fr 1fr}
.checks li{position:relative;padding-left:36px;font-family:var(--zen);font-size:16px;font-weight:700;line-height:1.7;color:var(--deep)}
.checks li:before{content:"";position:absolute;left:0;top:1px;width:26px;height:26px;border-radius:50%;background:var(--mint) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26'%3E%3Cpath d='M7.5 13.5l3.6 3.6 7.4-7.6' fill='none' stroke='%23fff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/26px no-repeat}
.checks--warn li:before{background:#f8a3a3 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26'%3E%3Cpath d='M13 7v7.5' stroke='%23fff' stroke-width='2.6' stroke-linecap='round'/%3E%3Ccircle cx='13' cy='18.6' r='1.6' fill='%23fff'/%3E%3C/svg%3E") center/26px no-repeat}
.dots{margin:0;padding:0;list-style:none}
.dots li{position:relative;padding-left:20px;line-height:1.9}
.dots li:before{content:"";position:absolute;left:2px;top:12px;width:8px;height:8px;border-radius:50%;background:var(--mint)}
.dots--b li{font-weight:700;color:var(--deep)}
.icon-list{margin:0;padding:0;list-style:none}
.icon-list li{display:flex;align-items:center;gap:16px;padding:10px 0;border-bottom:1px dashed var(--line);font-family:var(--zen);font-size:18px;font-weight:700;color:var(--deep)}
.icon-list li:last-child{border-bottom:0}
.icon-list img{width:80px;height:auto;object-fit:contain;flex:none;border-radius:10px;background:#fff}
.tags{display:flex;flex-wrap:wrap;gap:10px;margin:0;padding:0;list-style:none}
.tags li{padding:6px 18px;border-radius:999px;background:var(--bg2);font-family:var(--zen);font-size:15px;font-weight:700;color:var(--green-d)}
.tags--w li{background:#fff;box-shadow:0 0 0 2px var(--ring)}
/* ---------- box ---------- */
.box{position:relative;padding:44px 56px;border:2px solid var(--line);border-radius:24px;background:#fff}
.box--tab{margin-top:30px;padding-top:58px}
.box__tab{position:absolute;left:50%;top:0;transform:translate(-50%,-50%);padding:12px 44px;border-radius:999px;background:var(--green-d);color:#fff;font-family:var(--zen);font-size:19px;font-weight:700;letter-spacing:.12em;white-space:nowrap}
.box--mint{border:0;background:var(--bg)}
.box--beige{border:0;background:var(--beige-l)}
.box--point{display:flex;gap:28px;align-items:center;padding:28px 40px}
.point-label{flex:none;display:grid;place-items:center;width:110px;height:110px;border-radius:50%;background:var(--yellow);color:#fff;font-family:var(--zen);font-size:17px;font-weight:700;line-height:1.35;text-align:center}
.point-label small{display:block;font-family:var(--jost);font-size:11px;letter-spacing:.16em}
.note{display:flex;gap:14px;align-items:flex-start;padding:22px 30px;border-radius:16px;background:#fff6ec;color:#7a4b1d;font-size:14.5px;line-height:1.9}
.note:before{content:"!";flex:none;display:grid;place-items:center;width:26px;height:26px;margin-top:2px;border-radius:50%;background:var(--orange);color:#fff;font-family:var(--jost);font-weight:700}
.placeholder{padding:16px 22px;border:2px dashed #e6b9a0;border-radius:12px;background:#fffaf5;color:#b06a3c;font-size:13px;line-height:1.8}
.placeholder:before{content:"原稿確認";display:inline-block;margin-right:10px;padding:0 10px;border-radius:4px;background:#e98f5d;color:#fff;font-size:11px;font-weight:700}
/* ---------- flow ---------- */
.flow{display:flex;align-items:stretch;gap:0}
.flow__item{position:relative;flex:1;padding:58px 22px 30px;border-radius:24px;background:#fff;box-shadow:0 0 0 3px var(--ring);text-align:center}
.flow__item .num-dot{position:absolute;left:50%;top:-23px;transform:translateX(-50%)}
.flow__item img{width:100%;height:130px;object-fit:contain;margin:4px 0 14px}
.flow__item .ic{display:grid;place-items:center;width:84px;height:84px;margin:0 auto 14px;border-radius:50%;background:var(--bg)}
.flow__item svg{width:46px;height:46px}
.flow__item p{font-size:14px;line-height:1.8;text-align:left}
.flow__item .h5{font-size:20px;line-height:1.5}
.flow__item .h5{text-align:center}
.flow__arrow{flex:none;align-self:center;width:42px;height:42px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 42 42'%3E%3Cpath d='M16 12l9 9-9 9' fill='none' stroke='%2358c6af' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")center no-repeat;position:relative;top:-20px}
.flow--mint .flow__item{background:var(--bg);box-shadow:none}
/* chip flow（シンプルな工程表示） */
.chipflow{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px}
.chipflow span{padding:10px 26px;border-radius:999px;background:#fff;box-shadow:0 0 0 3px var(--ring);font-family:var(--zen);font-size:17px;font-weight:700;color:var(--green-d)}
.chipflow i{width:22px;height:22px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 22 22'%3E%3Cpath d='M8 5l6 6-6 6' fill='none' stroke='%2358c6af' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center no-repeat}
.chipflow span.is-on{background:var(--green);color:#fff;box-shadow:none}
/* vertical steps（ルールの製作の流れを踏襲） */
.vsteps{position:relative;margin:0;padding:0;list-style:none}
.vsteps li{position:relative;display:grid;grid-template-columns:76px 1fr;gap:36px;padding-bottom:44px}
.vsteps li:before{content:"";position:absolute;left:37px;top:76px;bottom:0;border-left:2px dotted var(--green)}
.vsteps li:last-child:before{display:none}
.vsteps .num-dot{width:76px;height:76px;font-size:30px}
/* ---------- table ---------- */
.dtable{width:100%;border-collapse:separate;border-spacing:0 10px}
.dtable th,.dtable td{padding:18px 28px;text-align:left;vertical-align:middle;line-height:1.8}
.dtable th{width:220px;border-radius:12px 0 0 12px;background:var(--green-d);color:#fff;font-family:var(--zen);font-size:16px;font-weight:700;letter-spacing:.1em;text-align:center}
.dtable tr:nth-child(even) th{background:var(--green)}
.dtable td{border-radius:0 12px 12px 0;background:#fff;box-shadow:inset 0 0 0 2px var(--ring);font-size:15.5px;color:var(--deep)}
.dtable small{display:block;color:var(--sub);font-size:13px}
.ltable{width:100%;border-collapse:collapse}
.ltable th,.ltable td{padding:14px 18px;border-bottom:1px solid var(--line);text-align:left;font-size:15px;line-height:1.7}
.ltable th{width:150px;color:var(--green-d);font-family:var(--zen);font-weight:700;white-space:nowrap}
/* ---------- FAQ ---------- */
.faq{display:grid;gap:22px}
.faq__item{border-radius:22px;background:#fff;box-shadow:0 0 0 3px var(--ring);overflow:hidden}
.faq__q,.faq__a{display:grid;grid-template-columns:52px 1fr;gap:22px;align-items:start;padding:24px 40px}
.faq__q{align-items:center;font-family:var(--zen);font-size:19px;font-weight:700;color:var(--green-d);letter-spacing:.08em}
.faq__a{padding-top:4px;padding-bottom:30px}
.faq__q:before,.faq__a:before{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;font-family:var(--jost);font-size:24px;font-weight:500;color:#fff}
.faq__q:before{content:"Q";background:var(--green)}
.faq__a:before{content:"A";background:#f8a3a3}
.faq__a b{display:block;margin-bottom:6px;font-family:var(--zen);font-size:16px;color:var(--deep)}
.faq__a>div{padding-top:10px;border-top:1px dashed var(--line)}
/* ---------- buttons ---------- */
.btns{display:flex;flex-wrap:wrap;gap:16px}
.btns--c{justify-content:center}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:16px;height:58px;padding:0 30px 0 34px;border-radius:999px;font-family:var(--zen);font-size:16px;font-weight:700;letter-spacing:.1em}
.btn:after{content:"";width:28px;height:28px;border-radius:50%;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 28'%3E%3Cpath d='M9 14h10m-4-4.5L19.5 14 15 18.5' fill='none' stroke='%230f988c' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center no-repeat}
.btn--solid{background:var(--green);color:#fff}
.btn--line{background:#fff;color:var(--green);box-shadow:inset 0 0 0 2px #bfe6dd}
.btn--line:after{background-color:var(--green);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 28'%3E%3Cpath d='M9 14h10m-4-4.5L19.5 14 15 18.5' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}
.btn--pink{background:var(--coral);color:#fff}
.btn--navy{background:var(--deep);color:#fff}
.btn--w{background:#fff;color:var(--green)}
.btn--w:after{background-color:var(--green);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 28'%3E%3Cpath d='M9 14h10m-4-4.5L19.5 14 15 18.5' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}
.btn--down:after{transform:rotate(90deg)}
/* ---------- stat circles（トップページ院長紹介を踏襲） ---------- */
.stat{display:flex;flex-direction:column;align-items:center;text-align:center}
.stat__circle{display:grid;place-items:center;align-content:center;width:230px;height:230px;border-radius:50%;background:#fff;box-shadow:0 0 0 3px var(--mint),0 0 0 12px var(--bg2);font-family:var(--zen);color:var(--green-d);z-index:2}
.stat__circle small{font-size:15px;font-weight:700;color:var(--green)}
.stat__circle b{font-family:var(--jost);font-size:58px;font-weight:500;line-height:1.1;color:var(--aqua)}
.stat__circle i{font-style:normal;font-family:var(--zen);font-size:18px;margin-right:4px}
.stat__circle span{font-size:15px;font-weight:700}
.stat__circle .w{font-size:26px;line-height:1.5;margin:4px 0}
.stat p{font-size:14px;line-height:1.9}
.stat img{width:130px;height:96px;object-fit:contain;margin-top:-6px}
/* ---------- profile ---------- */
.profile{display:grid;grid-template-columns:340px 1fr;gap:60px;align-items:start;padding:56px 60px;border-radius:32px;background:#fff;box-shadow:0 0 0 3px var(--ring)}
.profile__photo img{width:340px;height:400px;object-fit:cover;border-radius:24px}
.profile__role{font-family:var(--zen);font-size:15px;font-weight:700;color:var(--green)}
.profile__name{margin:4px 0 0;font-family:var(--zen);font-size:32px;font-weight:700;letter-spacing:.14em;color:var(--deep)}
.profile__name small{margin-left:14px;font-family:var(--jost);font-size:14px;letter-spacing:.2em;color:var(--mint)}
/* ---------- media chips / video ---------- */
.video{position:relative;border-radius:22px;overflow:hidden}
.video img{display:block;width:100%;height:330px;object-fit:cover}
.video:after{content:"";position:absolute;left:50%;top:50%;width:84px;height:84px;margin:-42px 0 0 -42px;border-radius:50%;background:rgba(255,255,255,.92) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 84 84'%3E%3Cpath d='M35 28l22 14-22 14z' fill='%230f988c'/%3E%3C/svg%3E") center no-repeat;box-shadow:0 8px 24px rgba(0,0,0,.18)}
.video__label{position:absolute;left:18px;top:18px;z-index:1;padding:4px 16px;border-radius:999px;background:var(--green);color:#fff;font-family:var(--zen);font-size:14px;font-weight:700}
/* ---------- divider between big sections ---------- */
.wave-top{position:absolute;left:0;right:0;top:-1px;height:60px}
/* misc */
.two-tone{display:grid;grid-template-columns:1fr 1fr;gap:0;border-radius:26px;overflow:hidden;box-shadow:0 0 0 3px var(--ring)}
.two-tone>div{padding:40px 44px;background:#fff}
.lead-big{font-family:var(--zen);font-size:24px;font-weight:700;line-height:1.75;letter-spacing:.1em;color:var(--green-d)}
.quote{font-family:var(--zen);font-size:26px;font-weight:700;line-height:1.7;letter-spacing:.1em;color:var(--green-d)}
.quote--c{text-align:center}
.sign{display:flex;align-items:center;justify-content:flex-end;gap:18px;font-family:var(--zen);font-weight:700;color:var(--green)}
.sign b{font-size:24px;letter-spacing:.14em;color:var(--deep)}
.sign img{width:90px;height:90px;border-radius:50%;object-fit:cover;box-shadow:0 0 0 4px var(--ring)}
.label{display:inline-block;padding:2px 14px;border-radius:6px;background:var(--green);color:#fff;font-family:var(--zen);font-size:18px;font-weight:700;letter-spacing:.1em}
.label--mint{background:var(--mint)}
.label--beige{background:var(--beige)}
.label--pink{background:#f8a3a3}
.label--orange{background:var(--orange)}
.ic-circle{display:grid;place-items:center;width:88px;height:88px;border-radius:50%;background:var(--bg);flex:none}
.ic-circle svg{width:48px;height:48px}
.ic-circle--w{background:#fff;box-shadow:0 0 0 4px var(--ring)}
.big-tel{font-family:var(--jost);font-size:46px;font-weight:500;letter-spacing:.04em;color:var(--green-d);line-height:1.2}
/* ---------- 下層ヘッダー（高さ450px） ---------- */
/* ---------- 長文の説明ブロック（2026-10 先生追加原稿用） ---------- */
.prose{max-width:1000px;margin-left:auto;margin-right:auto;padding:48px 64px 52px;border-radius:30px;background:#fff;box-shadow:0 0 0 3px var(--ring)}
.sec--white .prose{background:var(--bg);box-shadow:none}
.prose p{font-size:16px;line-height:2.05}
.prose strong{font-weight:700;color:var(--deep);background:linear-gradient(transparent 62%,#ffe6a6 62%)}
.prose .h4{margin-bottom:6px}
.prose__sub{display:flex;align-items:center;gap:12px;font-family:var(--zen);font-weight:700;color:var(--green-d)}
.prose .dots li{font-size:16px}
.prose-link{color:var(--green);font-weight:700;text-decoration:underline;text-underline-offset:3px}
.prose-link:hover{opacity:.75}
/* ---------- 読みやすさ調整（全体的に文字が小さいとのご指摘） ---------- */
.page-body{font-size:16px}
.card p:not(.h5):not(.lead-big):not(.big-tel):not(.quote):not(.en):not(.profile__name):not(.profile__role):not(.msg__em),.flow__item p:not(.h5):not(.lead-big):not(.big-tel):not(.quote):not(.en):not(.profile__name):not(.profile__role):not(.msg__em),.areas span,.feat-list span,.tile small,.mscope p:not(.h5):not(.lead-big):not(.big-tel):not(.quote):not(.en):not(.profile__name):not(.profile__role):not(.msg__em),.night p:not(.h5):not(.lead-big):not(.big-tel):not(.quote):not(.en):not(.profile__name):not(.profile__role):not(.msg__em),.grade p,.asa p,.dx>p,.contact3 p.s,.note,.small,.cap{line-height:1.85}
/* 電話番号は常に大きく（2026-10-06 先生指示） */
.page-body .big-tel a{color:inherit}
.h5{font-size:19px}
.sec-head__lead{font-size:20px}
.sec-head__text{font-size:16px}
/* ヘッダーに食い込ませない CONTENTS（導入セクションの後に置く場合） */
.anchor--flat{padding:0 0 30px;background:var(--bg)}
.anchor--flat .anchor__inner{margin-top:0}
.flow__item--link{display:block;color:inherit}
.flow__more{display:inline-flex;align-items:center;gap:6px;margin-top:10px;font-family:var(--zen);font-size:14px;font-weight:700;color:var(--green)}
.flow__more:after{content:"";width:7px;height:7px;border-right:2px solid var(--green);border-bottom:2px solid var(--green);transform:rotate(45deg) translateY(-3px)}
.link-row{display:flex;justify-content:center;margin-top:32px}
.h3 .eqb__no{display:inline-block;margin-right:16px;font-family:var(--jost);font-size:28px;font-weight:500;color:#8fe0cf;line-height:1;vertical-align:-3px}
.prose .chipflow{flex-wrap:nowrap;gap:6px}
.prose .chipflow span{padding:8px 16px;font-size:15px;white-space:nowrap}
.prose i{flex:none;width:16px}
/* 背景色が切り替わる境界（上：ミント／下：白）を中央にして CONTENTS を置く */
.anchor--straddle{padding:0;background:linear-gradient(var(--bg) 50%,#fff 50%)}
.anchor--straddle+.sec{padding-top:110px}
:where(.page-body) figure{margin:0}
:where(.page-body) img{width:auto;height:auto}
/* img の width/height 属性（CLS対策用）で表示サイズが固定されないように。サイズは各クラスで指定 */
.page-body .equip-printer-ttl{font-size:19px}
/* ---------- page: general-care ---------- */
.net{display:grid;grid-template-columns:270px 64px 1fr 64px 270px;align-items:center}
.net__col--2{display:grid;gap:26px}
.net__arrows{display:flex;flex-direction:column;align-items:center;gap:150px}
.net__mid{display:grid;grid-template-columns:150px 1fr;grid-template-rows:auto auto;column-gap:22px;align-items:center}
.net__mid img{grid-row:1/3}
.net__mid .h5{align-self:end;margin:0}
.net__mid p.tc{align-self:start}
.net .flow__item{padding:30px 22px 26px}
.net img{height:150px}
.net p.tc{text-align:center;font-family:var(--zen);font-weight:700;color:var(--deep);font-size:15px}
.flow__item.net__start{background:var(--bg);box-shadow:0 0 0 3px #cdebe4}
.flow__item.net__end{background:var(--beige-l);box-shadow:0 0 0 3px #efe6cc}
.flow__item.net__mid{box-shadow:0 0 0 5px var(--ring)}
.sym-grid{grid-template-columns:repeat(5,1fr);gap:28px 24px}
.sym-grid img{height:118px}
.pv-card{display:flex;flex-direction:column;padding-bottom:30px}
.pv-card .icon-list{margin-bottom:20px}
.pv-card .card-head{padding-right:200px}
.pv-card .icon-list{margin-top:18px}
.campaign{display:flex;align-items:center;gap:14px;padding:14px 18px;border-radius:12px;background:#fff1ec;color:#a4472c;font-size:15px;line-height:1.7}
.campaign__badge{flex:none;padding:3px 12px;border-radius:999px;background:var(--coral);color:#fff;font-family:var(--jost);font-size:12px;font-weight:700;letter-spacing:.14em}
.campaign b{color:#c4462a}
.vac-flow{display:flex;align-items:stretch;gap:0;margin-top:5rem}
.vac-flow>div{position:relative;flex:1;padding:44px 24px 26px;border-radius:24px;background:#fff;box-shadow:0 0 0 3px var(--ring);text-align:center}
.vac-flow .num-dot{position:absolute;left:50%;top:-32px;transform:translateX(-50%)}
.vac-flow>div.is-on{background:var(--green);box-shadow:none;color:#fff}
.vac-flow>div.is-on .h5{color:#fff}
.vac-flow>div.is-on .num-dot{background:#fff;color:var(--green)}
.vac-flow p:not(.h5){font-size:16px;line-height:1.8}
.vac-flow b{font-family:var(--zen);font-size:19px}
.vac-age{text-align:center;font-family:var(--zen);font-size:20px;font-weight:700;color:var(--green-d);letter-spacing:.08em}
.vac-age small{display:block;font-size:14px;font-weight:500;color:var(--sub)}
.prof-tl th{width:80px}
.prof-tl th,.prof-tl td{padding:8px 10px;font-size:15px}
.pv-foot{padding:14px 20px;border-radius:12px;background:var(--bg);font-family:var(--zen);font-weight:700;color:var(--green-d);font-size:15px;line-height:1.7}
.cal{width:100%;border-collapse:separate;border-spacing:0 12px;table-layout:fixed}
.cal thead th{padding:12px 0;background:var(--green-d);color:#fff;font-family:var(--jost);font-size:15px;font-weight:500}
.cal th:nth-child(2){border-radius:0}
.cal thead th:first-child{background:none}
.cal th:last-child{border-radius:0 12px 12px 0}
.cal th:nth-child(2){border-radius:12px 0 0 12px}
.cal .cal__h{width:250px;padding:0 16px 0 0;text-align:left;font-family:var(--zen);font-size:16px;font-weight:700;color:var(--deep);white-space:nowrap}
.cal td{height:46px;background:#fff;border-top:1px solid var(--ring);border-bottom:1px solid var(--ring);text-align:center}
.cal i{font-style:normal;color:#fff;font-size:13px}
.cal td.act{background:#f6c7a6}
.cal td.inj{background:#9fd8ea}
.cal td.fi{background:var(--mint)}
.cal td.fl{background:var(--aqua)}
.cal td.s{border-radius:23px 0 0 23px}
.cal td.e{border-radius:0 23px 23px 0}
.lg{display:inline-grid;place-items:center;width:22px;height:22px;margin-right:10px;border-radius:50%;color:#fff;font-size:11px;vertical-align:2px}
.lg--act{background:#f6c7a6}
.lg--inj{background:#9fd8ea}
.lg--fi{background:var(--mint)}
.lg--fl{background:var(--aqua)}
.mtg-photo{position:relative}
.mtg-photo img{height:460px}
.prof dl{margin:28px 0 0;display:grid;grid-template-columns:150px 1fr;border-top:1px solid var(--line)}
.prof dt,.prof dd{margin:0;padding:14px 0;border-bottom:1px solid var(--line)}
.prof dt{font-family:var(--zen);font-weight:700;color:var(--green-d)}
/* ---------- page: facilities ---------- */
.eq-feat{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.eq-feat .card{display:grid;grid-template-columns:64px 1fr;gap:6px 18px;align-items:center;padding:26px 28px}
.eq-feat .ic-circle{width:64px;height:64px;grid-row:1/3}
.eq-feat svg{width:36px;height:36px}
.eq-feat .card .h5{margin:0;align-self:end}
.eq-feat .card p{font-size:18px;line-height:1.8;align-self:start}
.areas{display:grid;gap:14px}
.areas li{display:grid;grid-template-columns:56px 1fr;gap:4px 18px;align-items:center;padding:16px 22px;border-radius:18px;background:var(--bg)}
.sec--mint .areas li{background:#fff}
.areas .ic-circle{grid-row:1/3;width:56px;height:56px;background:#fff}
.sec--mint .areas .ic-circle{background:var(--bg)}
.areas svg{width:32px;height:32px}
.areas b{font-family:var(--zen);font-size:17px;color:var(--green-d);align-self:end}
.areas span{font-size:14px;line-height:1.75;align-self:start}
.xr-fig{position:relative;padding-right:90px}
.xr-fig .xr{position:absolute;right:0;bottom:-40px;width:170px;height:330px;object-fit:cover;border-radius:18px;border:6px solid #fff;box-shadow:0 10px 30px rgba(0,0,0,.15)}
.labs{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.labs .card{padding:26px 28px}
.labs .card .h5{display:flex;align-items:center;gap:12px}
.labs .h5:before{content:"";width:10px;height:10px;border-radius:50%;background:var(--mint);flex:none}
.labs .card p{font-size:18px;line-height:1.8}
.vitals{display:grid;grid-template-columns:repeat(5,1fr);gap:20px}
.vitals .tile{padding:24px 14px}
.vitals img{width:96px;height:96px;margin-bottom:10px}
.ph3{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.ph3 img{height:auto}
.ph3 .photo--contain{background:#fff}
.ph3--contain img{object-fit:contain;background:#fff}
.surg{display:grid;grid-template-columns:1.6fr 1fr;gap:24px}
.surg__side{display:grid;grid-template-rows:1fr 1fr;gap:24px}
.surg .ov{height:100%}
.surg img{height:100%;min-height:208px}
.surg>.ov img{min-height:440px}
.ov{position:relative;margin:0}
.ov figcaption{position:absolute;left:14px;bottom:14px;padding:4px 14px;border-radius:999px;background:rgba(255,255,255,.92);font-family:var(--zen);font-size:13px;font-weight:700;color:var(--green-d)}
.photo--sq{aspect-ratio:1;height:auto}
.row--stretch{align-items:stretch}
.photo--fill{height:100%;min-height:360px}
.fig-fill{display:flex;flex-direction:column;margin:0}
.fig-fill img{flex:1;min-height:420px}
.icu-card{display:grid;grid-template-columns:1fr 200px;gap:30px;align-items:center}
.icu-card img{height:330px;object-fit:contain}
.feat-list{margin:0;padding:0;list-style:none;display:grid;gap:18px}
.feat-list li{padding-left:22px;position:relative}
.feat-list b{display:block;font-family:var(--zen);font-size:17px;color:var(--green-d)}
.feat-list b:before{content:"";position:absolute;left:0;top:10px;width:10px;height:10px;border-radius:50%;background:var(--mint)}
.feat-list span{font-size:14px;line-height:1.8}
.device{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:30px;border-radius:26px;background:#fff;box-shadow:0 0 0 3px var(--ring)}
.device img{height:450px;width:100%;object-fit:contain}
.scopes{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.scopes img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:50%;box-shadow:0 0 0 3px var(--ring)}
.plates{display:grid;grid-template-columns:.9fr .6fr 1.25fr 1.25fr;gap:16px}
.plates img{height:250px;width:100%;object-fit:cover;border-radius:16px}
.mat{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.mat .card{padding:30px 34px}
.mat .label{margin-bottom:10px}
.models{display:grid;grid-template-columns:.55fr 1.1fr 1fr;grid-template-rows:200px 200px;gap:14px}
.models img{width:100%;height:100%;object-fit:cover;border-radius:16px}
.models img:nth-child(1){grid-row:1/3}
.models img:nth-child(2){grid-row:1/2}
.mscope{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.mscope .card{display:grid;grid-template-columns:54px 1fr;gap:4px 18px;padding:24px 26px}
.mscope .num-dot{grid-row:1/3;width:54px;height:54px}
.mscope .h5{margin:0;align-self:end}
.mscope p{font-size:14px;line-height:1.8}
.anchor__list--tall a{font-size:15.5px}
/* ---------- page: orthopedics ---------- */
.hero-tags{display:flex;flex-wrap:wrap;gap:10px}
.hero-tags a{padding:8px 20px;border-radius:999px;background:var(--green-d);color:#fff;font-family:var(--zen);font-size:16px;font-weight:700;letter-spacing:.08em;line-height:1.4}
.ortho-name{display:flex;align-items:center;gap:10px;margin:0px 0 25px;font-family:"Noto Sans JP",sans-serif;font-size:22px;font-weight:800;letter-spacing:0;color:#00786c;line-height:1.4}
.ortho-name img{width:36px;height:36px}
.ortho-catch img{display:block;width:489px;max-width:100%;height:auto}
.btns--stack{flex-direction:column}
.btns--stack .btn{width:300px;justify-content:space-between}
.btn--teal{background:#09a89a;color:#fff}
.msg__copy p{font-size:15px}
.msg__copy .msg__em{font-family:var(--zen);font-size:22px;font-weight:700;line-height:1.7;letter-spacing:.1em;color:var(--green-d)}
.msg{display:grid;grid-template-columns:1fr 380px;gap:70px;align-items:start}
.msg__photo{position:relative;text-align:center}
.msg__photo img{width:340px;height:340px;margin:0 auto;border-radius:50%;object-fit:cover;box-shadow:0 0 0 10px #fff,0 0 0 16px var(--ring)}
.msg__photo .sign{justify-content:center}
.msg__copy{padding:34px 40px;border-radius:24px;background:var(--bg)}
.idea{display:grid;grid-template-columns:1fr 1fr;gap:32px}
.idea .card{display:grid;grid-template-columns:200px 1fr;gap:28px;align-items:center;padding:30px}
.idea img{width:200px;height:170px;object-fit:contain;border-radius:18px;background:#fff}
.idea .h5{display:flex;align-items:center;gap:12px;font-size:22px}
.idea small{font-family:var(--jost);font-size:12px;letter-spacing:.2em;color:var(--mint)}
.diag img{height:160px}
.areas8{grid-template-columns:repeat(4,1fr);gap:28px}
.areas8 .tile{align-items:stretch;text-align:left;padding:0 0 22px;overflow:hidden}
.areas8 img{height:170px;margin:15px 0 16px;background:#fff}
.areas8 p,.areas8 small{padding:0 22px}
.cat4{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
.cat4 .tile{flex-direction:row;gap:18px;text-align:left;padding:18px}
.cat4 img{width:150px;height:130px;margin:0;border-radius:16px;background:#fff}
.cat4 .tile p{font-size:20px}
.cat4 small{font-size:14px}
.eqgrid{grid-template-columns:repeat(4,1fr);gap:26px}
.eqgrid .card{padding:0 0 24px;overflow:hidden}
.eqgrid img{width:100%;height:170px;object-fit:cover;margin:0 0 16px}
.eqgrid .card .h5,.eqgrid .card p{padding:0 22px}
.eqgrid .card .h5{display:flex;align-items:center;gap:10px}
.eqgrid .card .h5 b{font-family:var(--jost);font-size:22px;font-weight:500;color:var(--mint)}
.eqgrid .card p{font-size:14px;line-height:1.8}
.eqb{padding-top:110px}
.eqb .h3{display:flex;align-items:center;gap:18px}
.eqb__no{font-family:var(--jost);font-size:30px;font-weight:500;color:#8fe0cf;line-height:1}
.eqb__lead{font-family:var(--zen);font-size:19px;font-weight:700;color:var(--green);line-height:1.8}
.eqb .key-msg{margin-top:48px;font-size:18px}
.prof-card{display:grid;grid-template-columns:340px 1fr;gap:48px;padding:44px 48px;border-radius:30px;background:var(--bg)}
.prof-card small{display:block;margin:4px 0 0}
.prof-card__table th{width:210px;font-size:15px}
.prof-card__table td{font-size:15px}
.prof-card__table tr:last-child th,.prof-card__table tr:last-child td{border-bottom:0}
/* ---------- page: surgery ---------- */
.support{position:relative;padding:90px 0 110px;background:var(--bg)}
.support:before{content:"";position:absolute;inset:0;background:url("../img/lower/p5_s01_01_image1.jpg") center/cover;opacity:.22}
.support .inner{z-index:1}
.flow5{display:flex;align-items:stretch}
.flow5 .flow__item{padding:60px 16px 24px}
.flow5 img{height:140px}
.flow5 .flow__item p{font-size:16px}
.conf .mscope .card{padding:22px 26px}
.views{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
.qs{display:grid;gap:16px;margin:0;padding:0;list-style:none}
.qs li{display:flex;align-items:center;gap:18px;padding:18px 26px;border-radius:999px;background:#fff;box-shadow:0 0 0 4px var(--ring);font-family:var(--zen);font-size:17px;font-weight:700;color:var(--deep)}
.qs li:before{content:"?";flex:none;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--mint);color:#fff;font-family:var(--jost);font-size:20px}
.sim{grid-template-columns:repeat(3,1fr);gap:24px}
.sim .card{display:grid;grid-template-columns:72px 1fr;gap:4px 20px;align-items:center;padding:26px 28px}
.sim .ic-circle{grid-row:1/3;width:72px;height:72px}
.sim svg{width:40px;height:40px}
.sim .h5{margin:0;align-self:end}
.sim p{font-size:14px;line-height:1.7;align-self:start}
.ane5{grid-template-columns:repeat(5,1fr);gap:18px}
.ane5 .card{padding:26px 18px;text-align:center}
.ane5 .ic-circle{margin:0 auto 12px;width:70px;height:70px}
.ane5 svg{width:38px;height:38px}
.ane5 p{font-size:13.5px;line-height:1.75;text-align:left}
.adv{display:grid;grid-template-columns:380px 1fr;gap:48px;padding:50px;border-radius:32px;background:#fff;box-shadow:0 0 0 3px var(--ring)}
.adv__photo img{width:220px;height:260px;object-fit:cover;border-radius:20px}
.adv__head{display:flex;gap:26px;align-items:flex-end}
.adv .steps5{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}
.adv .steps5 div{padding:20px 12px;border-radius:18px;background:var(--bg);text-align:center}
.adv .num-dot{margin:0 auto 8px}
.adv b{display:block;font-family:var(--zen);font-size:15px;color:var(--green-d);line-height:1.5}
.adv span:not(.num-dot){display:block;margin-top:8px;font-size:12.5px;line-height:1.7;text-align:left}
.eval6{grid-template-columns:repeat(6,1fr);gap:18px}
.eval6 .tile{padding:18px 12px}
.eval6 img{height:110px}
.asa{display:grid;grid-template-columns:repeat(5,1fr);gap:0;border-radius:24px;overflow:hidden;box-shadow:0 0 0 3px var(--ring)}
.asa>div{padding:30px 22px 32px;background:#fff;position:relative}
.asa>div+div{border-left:1px dashed var(--line)}
.asa__lv{display:flex;flex-direction:column;justify-content:center;min-height:128px;margin:-30px -22px 22px;padding:16px 10px;text-align:center;line-height:1.2;color:#fff;font-family:var(--jost);font-size:30px;font-weight:500;letter-spacing:.06em}
.asa__lv small{display:block;margin-top:6px;font-family:var(--zen);font-size:15px;font-weight:700;line-height:1.5;letter-spacing:.1em}
.asa .h5{font-size:16px}
.asa p{font-size:13.5px;line-height:1.8}
.asa-scale{display:flex;justify-content:space-between;font-family:var(--zen);font-size:18px;font-weight:700;color:var(--sub)}
.asa-scale span{position:relative}
.asa-bar{height:10px;margin-top:10px;border-radius:5px;background:linear-gradient(90deg,#58c6af,#a7cf86,#fbb958,#f1953b,#f25f5f)}
.vit7{grid-template-columns:repeat(7,1fr);gap:16px}
.vit7 .tile{padding:20px 10px}
.vit7 img{width:100px;height:100px;margin-bottom:8px}
.pain{grid-template-columns:1fr 1fr;gap:28px}
.pain .card{display:grid;grid-template-columns:1fr 230px;gap:24px;align-items:center;padding:28px 30px}
.pain img{width:230px;height:160px;object-fit:contain}
.wake{grid-template-columns:1fr 1fr;gap:32px}
.wake .card{display:grid;grid-template-columns:1fr 210px;gap:20px;align-items:center}
.wake img{width:210px;height:200px;object-fit:contain}
.night{display:grid;grid-template-columns:1fr 1fr 1fr;gap:0;align-items:stretch}
.night>div{position:relative;padding:34px 32px;text-align:center}
.night>div:nth-child(1){background:#fff7e6;border-radius:24px 0 0 24px}
.night>div:nth-child(2){background:#e3ecf6}
.night>div:nth-child(3){background:#fff0ea;border-radius:0 24px 24px 0}
.night .ic-circle{margin:0 auto 14px;background:#fff}
.night p{font-size:14px;line-height:1.8}
.line-flow{display:grid;grid-template-columns:1fr 60px 1fr;align-items:center;gap:0}
.line-phone{width:240px;height:480px;object-fit:cover;object-position:top;border-radius:30px;border:8px solid #233;box-shadow:0 20px 40px rgba(0,0,0,.18)}
/* ---------- page: disease ---------- */
.dis8{grid-template-columns:repeat(4,1fr);gap:26px}
.dis8 .tile{position:relative;padding:22px 18px 22px}
.dis8 img{height:130px}
.dis8 .more{display:inline-flex;align-items:center;gap:8px;margin-top:12px;padding:5px 16px;border-radius:999px;background:var(--green);color:#fff;font-family:var(--zen);font-size:13px;font-weight:700}
.dis8 .more:after{content:"";width:7px;height:7px;border-right:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(45deg) translate(-2px,-2px)}
.notice-bar{margin-top:56px;padding:26px 40px;border-radius:20px;background:var(--green-d);color:#fff;text-align:center;font-family:var(--zen);font-size:17px;font-weight:700;line-height:1.8}
.dx{padding:30px 28px}
.dx__head{display:flex;align-items:center;gap:16px;margin-bottom:16px}
.dx__head .ic-circle{width:62px;height:62px}
.dx__head svg{width:34px;height:34px}
.dx__head--lg .ic-circle{width:88px;height:88px}
.dx__head--lg svg{width:48px;height:48px}
.dx__head .h5{margin:0;font-size:20px}
.dx>p{font-size:14px;line-height:1.85}
.dx__imgs{display:flex;gap:10px;justify-content:center;margin-top:18px;height:230px}
.dx__imgs img{height:100%;min-width:0;object-fit:cover;border-radius:12px;background:#111}
.dx__imgs img:only-child{width:100%;object-fit:contain;background:#fff}
.proc{display:flex;align-items:center;justify-content:space-between;padding:30px 24px;border-radius:24px;background:#fff;box-shadow:0 0 0 3px var(--ring)}
.proc>div{text-align:center;width:110px;flex:none}
.proc .ic-circle{margin:0 auto 10px}
.proc b{font-family:var(--zen);font-size:16px;color:var(--green-d)}
.proc .flow__arrow{width:22px;background-size:30px}
.pl-flow img{height:150px;object-fit:contain}
.cases{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;padding:56px 60px;border-radius:30px;background:var(--bg)}
.sym-photo{display:grid;grid-template-columns:1fr 440px;gap:56px;align-items:center}
.ops{grid-template-columns:1fr 1fr;gap:26px}
.ops .card{display:grid;grid-template-columns:1fr 180px;gap:24px;align-items:center;padding:26px 30px}
.ops img{width:180px;height:170px;object-fit:contain;border-radius:14px;background:#fff}
.ops .card:nth-child(n+3) img{object-fit:cover;background:#000}
.acl-fig{position:relative;padding:30px;border-radius:26px;background:#fff;box-shadow:0 0 0 3px var(--ring)}
.acl-fig img{width:100%;border-radius:12px}
.acl-caps{display:grid;grid-template-columns:1fr 2fr 1fr;margin-top:10px;font-family:var(--zen);font-weight:700;font-size:14px;color:var(--green-d);text-align:center}
.role{display:grid;grid-template-columns:440px 1fr;gap:56px;align-items:center}
.role ol{display:grid;gap:18px;margin:0;padding:0;list-style:none}
.role li{display:flex;align-items:center;gap:20px;padding:20px 26px;border-radius:999px;background:#fff;box-shadow:0 0 0 4px var(--ring);font-family:var(--zen);font-size:18px;font-weight:700;color:var(--deep)}
.cause{display:grid;grid-template-columns:1fr 1.3fr;gap:32px}
.xrs{display:flex;gap:12px;justify-content:center;height:260px;margin-top:20px}
.xrs img{height:100%;border-radius:12px}
.gait{display:grid;grid-template-columns:1fr 80px 1fr;align-items:center}
.pat-skel{display:grid;grid-template-columns:1fr 1fr 300px;gap:32px;align-items:stretch}
.pat-skel .card{height:100%}
.pat-move li{font-size:18px;line-height:1.7;margin-top:6px}
.pat-move li:before{top:11px}
.pat-fig{display:flex;flex-direction:column;margin:0}
.pat-fig img{flex:1;min-height:0}
.pat-fig figcaption{margin-top:8px;font-size:12px;line-height:1.6;color:var(--sub)}
.pat-skel img{width:100%;height:100%;max-height:520px;object-fit:contain;border-radius:20px;background:#fff}
.ops .label{display:inline-grid;place-items:center;width:58px;height:58px;padding:0;border-radius:50%;border:2px solid var(--green);color:var(--green);font-size:24px;line-height:1}
.ops .label--beige{border-color:var(--beige);color:#a08a52}
.grade{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-radius:24px;overflow:hidden;box-shadow:0 0 0 3px var(--ring)}
.grade>div{padding:26px 22px 28px;background:#fff}
.grade>div+div{border-left:1px dashed var(--line)}
.grade__lv{display:block;margin:-26px -22px 18px;padding:16px 10px;text-align:center;color:#fff;font-family:var(--jost);font-size:26px;font-weight:500;letter-spacing:.06em}
.grade__lv small{display:block;font-family:var(--zen);font-size:14px;font-weight:700}
.grade p{font-size:15px;line-height:1.85}
.dx--wide .dx__imgs{height:300px}
.hn-parts{display:grid;grid-template-columns:1fr 1fr;gap:32px}
.hn-parts a{display:block}
.hn-parts .card{height:100%;padding:30px 34px}
.hn-parts .label{margin-bottom:10px}
.hn-fig{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.hn-fig--3{grid-template-columns:repeat(3,1fr)}
.hn-fig--xr img{height:380px;object-fit:contain}
.hn-disc{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:end;margin:0;padding:24px}
.hn-disc img{width:100%;border-radius:12px}
.dx__imgs--xr{gap:6px;align-items:flex-start}
.dx__imgs--xr img{object-fit:contain;min-width:0}
.movie{margin:0}
.movie__frame{position:relative;border-radius:22px;overflow:hidden;background:#000}
.movie__frame video{display:block;width:100%;height:330px;object-fit:contain;background:#000}
.movie__frame iframe{display:block;width:100%;aspect-ratio:16/9;border:0}
.movie .video__label{z-index:1}
.yt{position:relative;max-width:880px;margin:0 auto;aspect-ratio:16/9;border-radius:22px;overflow:hidden;background:#000;box-shadow:0 0 0 3px var(--ring)}
.yt iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.yt--card{max-width:none;margin:0 0 4px;border-radius:16px;box-shadow:none}
.ds-cards{display:grid;grid-template-columns:repeat(6,1fr);gap:24px}
.ds-cards>*{grid-column:span 2}
.ds-cards--5>:nth-child(4){grid-column:2/span 2}
.ds-cards--4>*{grid-column:span 3}
.ds-cards .card{height:100%;padding:28px 30px}
.ds-cards a{display:block;color:inherit}
.ds-cards .h5{display:flex;align-items:center;gap:10px}
.ds-cards .h5:before{content:"";flex:none;width:10px;height:10px;border-radius:50%;background:var(--mint)}
.ds-sym .h5:before{width:22px;height:22px;background:var(--mint) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26'%3E%3Cpath d='M7.5 13.5l3.6 3.6 7.4-7.6' fill='none' stroke='%23fff' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/22px no-repeat}
.anat{position:relative;margin:0;padding:20px;border-radius:24px;background:#fff;box-shadow:0 0 0 3px var(--ring)}
.anat img{display:block;width:100%;border-radius:12px}
.anat__lb{position:absolute;transform:translate(-50%,-50%);padding:3px 12px;border-radius:999px;background:rgba(255,255,255,.92);font-family:var(--zen);font-size:15px;font-weight:700;color:var(--green-d);white-space:nowrap;box-shadow:0 0 0 2px var(--ring)}
.dt3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.dt3 .card{padding:30px 30px 32px}
.dt3 .ic-circle{width:64px;height:64px;margin-bottom:14px}
.dt3 svg{width:36px;height:36px}
.hn-fig figure{margin:0}
.hn-dev{display:flex;align-items:center;gap:28px;padding:22px 28px;border-radius:24px;background:#fff;box-shadow:0 0 0 3px var(--ring)}
.hn-dev img{width:150px;height:150px;object-fit:contain}
.hn-dev b{display:block;margin-top:10px;font-family:var(--jost);font-size:18px;line-height:1.5;color:var(--green-d)}
.hn-fig img{width:100%;height:300px;object-fit:cover;border-radius:20px;background:#111}
.hn-dev__more{display:block;margin-top:6px;font-family:var(--zen);font-size:14px;font-weight:700;color:var(--green);text-decoration:underline;text-underline-offset:3px}
.growth__grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}
.growth__item{padding:34px 36px}
.growth__item .h4{margin-top:0}
.growth__sub{font-family:var(--zen);font-size:17px;font-weight:700;line-height:1.7;color:var(--green)}
.growth__point{margin-top:22px;padding:18px 22px;border-radius:16px;background:var(--bg)}
.growth__point b{display:inline-block;margin-bottom:6px;padding:2px 12px;border-radius:999px;background:var(--yellow);color:#fff;font-family:var(--zen);font-size:14px}
.growth__signs{display:flex;flex-wrap:wrap;gap:12px;margin:0;padding:0;list-style:none}
.growth__signs li{padding:10px 20px;border-radius:999px;background:#fff;box-shadow:0 0 0 3px var(--ring);font-family:var(--zen);font-size:16px;font-weight:700;color:var(--green-d)}
.growth__fig{margin:0;padding:18px;border-radius:24px;background:#fff;box-shadow:0 0 0 3px var(--ring)}
.growth__fig img{display:block;width:100%;border-radius:12px}
@media (max-width:767px){
  .growth__grid{grid-template-columns:1fr;gap:20px}
  .growth__item{padding:24px 20px}
}
/* ---------- page: doctors ---------- */
.help4{grid-template-columns:repeat(4,1fr);gap:24px}
.help4 .card{padding:30px 26px;text-align:center}
.help4 .ic-circle{margin:0 auto 14px}
.help4 p:not(.h5){font-size:14px;line-height:1.8;text-align:left}
.svc3{grid-template-columns:repeat(3,1fr);gap:30px}
.svc3 .card{padding:0 0 30px;overflow:hidden;text-align:center}
.svc3 img{width:100%;height:240px;object-fit:contain;background:#fff;margin-bottom:6px}
.svc3 .badge{margin-top:-36px;position:relative;width:62px;height:62px}
.svc3 .h5{margin-top:10px}
.svc3 p:not(.h5){padding:0 28px;font-size:14px;line-height:1.85;text-align:left}
.rflow{display:flex;align-items:stretch}
.rflow .flow__item{padding:46px 14px 22px}
.rflow img{height:162px;margin:0 0 12px;object-fit:cover;border-radius:16px;padding:10px 20px}
.rflow .flow__item p{font-size:17.5px;margin-bottom:15px}
.rflow .flow__item.is-last{background:var(--beige-l);box-shadow:0 0 0 5px #efe6cc}
.acc4{grid-template-columns:repeat(4,1fr);gap:24px}
.acc4 .card{padding:0 0 26px;overflow:hidden}
.acc4 img{width:100%;height:234px;object-fit:cover;margin-bottom:18px;padding:20px 25px 0}
#accept .card img{height:292px}
.acc4 .label{margin-left:24px}
.acc4 .h5,.acc4 p{padding:0 24px}
.acc4 .h5{margin-top:10px}
.acc4 p:not(.h5){font-size:14px;line-height:1.8}
.need{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;margin-top:22px}
.need div{text-align:center;font-family:var(--zen);font-weight:700;font-size:15px;color:var(--deep)}
.need img{width:120px;height:120px;margin:0 auto 10px;border-radius:50%;object-fit:cover;background:#fff;box-shadow:0 0 0 4px var(--ring)}
.contact{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:24px}
.contact .card{padding:30px;text-align:center}
.contact img{width:110px;height:110px;margin:0 auto 12px;object-fit:contain}
.contact .big-tel{white-space:nowrap}
.rep3{grid-template-columns:repeat(3,1fr);gap:28px}
.rep3 .card{padding:0 0 28px;overflow:hidden}
.rep3 img{width:100%;height:230px;object-fit:cover;margin-bottom:16px}
.rep3 .h5,.rep3 p{padding:0 28px}
.rep3 p:not(.h5){font-size:14px;line-height:1.85}
.cycle{display:grid;grid-template-columns:repeat(3,1fr);gap:0;align-items:center;position:relative}
.cycle>div{display:flex;flex-direction:column;align-items:center;text-align:center;font-family:var(--zen);font-weight:700;color:var(--green-d)}
.cycle img{width:200px;height:200px;object-fit:cover;border-radius:50%;background:#fff;box-shadow:0 0 0 3px var(--ring);margin-bottom:14px}
.cycle:before{content:"";position:absolute;left:16%;right:16%;top:100px;border-top:3px dotted var(--mint);z-index:0}
.cycle>div{position:relative;z-index:1}
.consult--link{color:#fff}
.consult__more{display:inline-flex;align-items:center;gap:8px;margin-top:10px;font-family:var(--zen);font-size:14px;font-weight:700;text-decoration:underline;text-underline-offset:4px}
.contact__mail{display:block;margin-top:6px;font-family:var(--jost);font-size:18px;font-weight:500;color:var(--green-d);text-decoration:underline;text-underline-offset:3px;word-break:break-all}
/* ---------- page: recruit ---------- */
.rhero{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.rhero img{width:100%;height:100%;object-fit:cover;border-radius:24px}
.rhero__grid{display:grid;grid-template-rows:1fr 1fr;gap:20px}
.charm{grid-template-columns:repeat(3,1fr);gap:30px 28px}
.charm .card{padding:34px 30px 32px}
.charm .badge{position:absolute;left:24px;top:-24px}
.charm .ic-circle{margin:6px 0 14px auto;width:74px;height:74px}
.charm .h5{font-size:20px}
.charm p:not(.h5){font-size:14.5px;line-height:1.85}
.jobs{grid-template-columns:1fr 1fr;gap:32px}
.job{position:relative;padding:44px 44px 40px;border-radius:30px;overflow:hidden;color:#fff}
.job--vet{background:var(--green)}
.job--nurse{background:#f39a8f}
.job--nurse .btn--w:after{background-color:#e2776a}
.job .job__en{font-family:var(--jost);font-size:14px;font-weight:700;letter-spacing:.22em;opacity:.85}
.job .job__ttl{max-width:none;margin:6px 0 16px;font-family:var(--zen);font-size:32px;font-weight:700;letter-spacing:.14em}
.job p{position:relative;z-index:1;max-width:330px;font-size:15px;line-height:1.9}
.job .mark{position:absolute;right:30px;top:30px;display:grid;place-items:center;width:150px;height:150px;border-radius:50%;background:rgba(255,255,255,.18)}
.job svg{width:84px;height:84px}
.job .btn{margin-top:24px}
.feat4{grid-template-columns:repeat(4,1fr);gap:24px}
.feat4 .card{padding:30px 24px;text-align:center}
.feat4 .num-dot{margin:0 auto 14px}
.feat4 p:not(.h5){font-size:14px;line-height:1.8;text-align:left}
.req th{width:240px}
.req b{font-family:var(--jost);font-size:22px;font-weight:500;color:var(--green-d)}
.rc__grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.rc__card{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:36px}
.rc__card:nth-child(2){flex-direction:row;gap:28px;text-align:left}
.rc__mail{margin-top:8px;font-family:var(--jost);font-size:24px;font-weight:500;color:var(--green-d);text-decoration:underline;text-underline-offset:4px;word-break:break-all}
.rc__qr{width:170px;height:170px;flex:none}
.night-tag{display:inline-flex;align-items:center;gap:8px;padding:2px 14px;border-radius:6px;background:#e3ecf6;color:#3d6a9a;font-size:13px;font-weight:700}
/* ---------- page: first ---------- */
.hours2{display:grid;grid-template-columns:300px 1fr 1fr;gap:28px;align-items:stretch}
.hours2__img{border-radius:26px;background:#fff;box-shadow:0 0 0 3px var(--ring);display:grid;place-items:center;overflow:hidden}
.hours2__img img{width:100%;height:100%;object-fit:cover}
.hcard{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:36px 20px;border-radius:26px;text-align:center}
.hcard--am{background:#fff7e6}
.hcard--pm{background:#e8f1f8}
.hcard img{width:76px;height:76px;object-fit:contain;mix-blend-mode:multiply}
.hcard .lbl{margin:8px 0 2px;font-family:var(--zen);font-size:20px;font-weight:700;color:var(--deep)}
.hcard .time{font-family:var(--jost);font-size:48px;font-weight:500;letter-spacing:.02em;color:var(--green-d);line-height:1.2}
.r3{grid-template-columns:repeat(3,1fr);gap:28px}
.r3 .card{padding:0 0 28px;overflow:hidden}
.r3 img{width:100%;height:230px;object-fit:contain;background:#fff;margin-bottom:16px}
.r3 .label{margin-left:28px}
.r3 .h5,.r3 p{padding:0 28px}
.r3 .h5{margin-top:10px}
.r3 p:not(.h5){font-size:14.5px;line-height:1.85}
.resv{grid-template-columns:1fr 1fr;gap:32px}
.resv .card{padding:40px 44px;text-align:center}
.resv .ic-circle{margin:0 auto 14px;width:96px;height:96px}
.resv svg{width:54px;height:54px}
.resv .en{font-family:var(--jost);font-size:14px;font-weight:700;letter-spacing:.24em;color:var(--mint)}
.resv p:not(.h5):not(.en):not(.big-tel){font-size:14.5px;line-height:1.85;text-align:left}
.qr{display:inline-block;width:120px;height:120px;margin:18px 0 0;padding:6px;border-radius:12px;background:#fff;box-shadow:0 0 0 2px var(--ring)}
.line-qr{display:block;margin:16px auto 0}
.emg{display:grid;grid-template-columns:1fr 1fr;gap:32px}
.emg .card{padding:0;overflow:hidden}
.emg__head{display:flex;align-items:center;gap:18px;margin:0;padding:22px 34px;color:#fff;font-family:var(--zen);font-size:20px;font-weight:700;letter-spacing:.12em}
.emg__head svg{width:34px;height:34px}
.emg__day .emg__head{background:var(--orange)}
.emg__night .emg__head{background:#36557c}
.emg__body{padding:28px 34px 34px}
.emg__body>img{width:100%;height:220px;object-fit:cover;border-radius:16px;margin-bottom:20px}
/* 日中：お電話の案内（ご予約セクションの「お電話でのご予約」と同じ見せ方） */
.emg__tel{margin-top:18px;padding-top:16px;border-top:1px solid var(--line);text-align:center}
.emg__tel-label{font-family:var(--zen);font-size:15px;font-weight:700;color:var(--orange)}
.emg__tel-num{margin-top:4px}
.emg__item{display:grid;grid-template-columns:44px 84px auto 1fr;gap:12px;align-items:center;margin-top:10px;text-align:left}
.emg__item .ic-circle{width:44px;height:44px}
.emg__item svg{width:24px;height:24px}
.emg__item-ttl{font-family:var(--zen);font-size:16px;font-weight:700;color:var(--green-d);white-space:nowrap}
.emg__item .emg__tel-num{grid-column:3/5;margin:0;line-height:1.2;text-align:left}
.emg__tel-hours{margin:4px 0 0 56px;text-align:left;white-space:nowrap}
.emg__btn{height:44px;padding:0 18px 0 22px;gap:10px;font-size:14px;white-space:nowrap}
.emg__btn:after{width:22px;height:22px}
.emg__qr{width:64px;height:64px;margin:0 0 0 auto;padding:4px;border-radius:8px}
.emg__note{margin-top:14px;padding:10px 18px;font-size:14px}
.emg__tel-hours{margin-top:6px;text-align:center}
.trva dl{display:grid;grid-template-columns:110px 1fr;margin:18px 0 0;border-top:1px solid var(--line)}
.trva dt,.trva dd{margin:0;padding:10px 0;border-bottom:1px solid var(--line);font-size:14.5px}
.trva dt{font-family:var(--zen);font-weight:700;color:#36557c}
.trva b{font-family:var(--jost);font-size:22px;font-weight:500;color:#36557c}
.contact3{grid-template-columns:repeat(3,1fr);gap:28px}
.contact3 .card{padding:34px 30px;text-align:center}
.contact3 .ic-circle{margin:0 auto 14px}
.contact3 .big-tel{white-space:nowrap}
.trva-link{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:20px;padding:18px 24px;border-radius:16px;background:#36557c;color:#fff;font-family:var(--zen);font-size:17px;font-weight:700;letter-spacing:.06em}
.trva-link small{display:block;font-family:var(--jost);font-size:13px;font-weight:500;opacity:.85}
.trva-link:after{content:"";flex:none;width:30px;height:30px;border-radius:50%;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 28'%3E%3Cpath d='M9 14h10m-4-4.5L19.5 14 15 18.5' fill='none' stroke='%2336557c' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center no-repeat}
.trva-link:hover{opacity:.85}
.contact3 p.s{font-size:14px;line-height:1.8}
.acc{display:grid;grid-template-columns:1fr 470px;gap:44px;align-items:start}
.acc__map{position:relative;border-radius:26px;overflow:hidden;box-shadow:0 0 0 3px var(--ring)}
.acc__map img{display:block;width:100%;height:430px;object-fit:cover;object-position:50% 70%}
.acc__map .tag{position:absolute;left:18px;top:18px;padding:6px 18px;border-radius:999px;background:#fff;font-family:var(--jost);font-weight:700;color:var(--green);letter-spacing:.2em}
.acc__list li{display:grid;grid-template-columns:52px 1fr;gap:4px 18px;padding:18px 0;border-bottom:1px dashed var(--line)}
.acc__list .num-dot{grid-row:1/3}
.acc__list b{font-family:var(--zen);font-size:17px;color:var(--green-d)}
.acc__list span{font-size:14px;line-height:1.8}
.ins{grid-template-columns:1fr 1fr;gap:32px}
.ins .card{display:grid;grid-template-columns:220px 1fr;gap:28px;align-items:center;padding:34px 38px}
.ins .logo{display:grid;place-items:center;height:110px;border-radius:18px;background:#fff;box-shadow:0 0 0 2px var(--ring)}
.ins img{max-width:180px;max-height:70px}
.ins .badge-ok{display:inline-block;margin-bottom:8px;padding:3px 14px;border-radius:999px;background:var(--coral);color:#fff;font-family:var(--zen);font-size:13px;font-weight:700}
.pay4{grid-template-columns:repeat(4,1fr);gap:24px}
.pay4 .card{padding:32px 20px;text-align:center}
.pay4 .ic-circle{margin:0 auto 12px;width:96px;height:96px}
.pay4 svg{width:54px;height:54px}
.pay4 .en{font-family:var(--jost);font-size:13px;font-weight:700;letter-spacing:.2em;color:var(--mint)}
.pay4 p:not(.h5):not(.en){font-size:14px}
.faq-cat{display:flex;align-items:center;gap:16px;margin:0 0 26px;font-family:var(--zen);font-size:20px;font-weight:700;color:var(--green-d)}
.faq-cat .ic-circle{width:56px;height:56px}
.faq-cat svg{width:30px;height:30px}
.park{display:grid;grid-template-columns:480px 1fr;gap:40px;align-items:start}
.park__map{margin:0;padding:16px;border-radius:24px;background:#fff;box-shadow:0 0 0 3px var(--ring)}
.park__map img{display:block;width:100%;border-radius:12px}
.park .card{padding:28px 32px}
.park .h5{display:flex;align-items:center;gap:12px;font-size:20px}
.park__no{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:6px;background:#e0322f;color:#fff;font-family:var(--jost);font-size:18px}
.park__no--b{background:var(--green)}
.park__tag{padding:2px 12px;border-radius:999px;background:var(--bg2);font-size:13px;color:var(--green-d)}
.park__tag--b{background:#fff3e2;color:#b86b13}
.park__step{margin:0;border-radius:20px;overflow:hidden;background:#fff;box-shadow:0 0 0 3px var(--ring)}
.park__step img{display:block;width:100%;height:240px;object-fit:cover}
.park__step figcaption{display:flex;gap:12px;align-items:flex-start;padding:18px 20px;font-size:15px;line-height:1.75}
.park__step .num-dot{flex:none}
.num-dot--outline{border:3px solid #e0322f;background:#fff;color:#e0322f}
.park__step .park__no{flex:none}
/* ---------- 共通補足 ---------- */
.page-body [id]{scroll-margin-top:140px}
.intro,.support{overflow:hidden}
.acc__map iframe{display:block;width:100%;height:430px;border:0}
.big-tel a{color:inherit}
.trva dd a{color:inherit}
/* =========================================================
   リンクの有無の見分け方（2026-10-14 決定。下層全ページ共通）
   - リンク無しの角丸の箱：薄いグリーンの枠 3px
   - リンク有りの角丸の箱：薄いグリーンの枠 5px → ホバーでミントの枠＋2px浮く
   - その他のリンク（目次・ボタン・タグなど）：ホバーで2px浮く
   ========================================================= */
a.card,a.tile,a.flow__item,a.hn-dev,.ds-cards a>.card{box-shadow:0 0 0 5px var(--ring);transition:box-shadow .2s ease,transform .2s ease}
a.card:hover,a.tile:hover,a.flow__item:hover,a.hn-dev:hover,.ds-cards a:hover>.card{box-shadow:0 0 0 5px var(--mint);transform:translateY(-2px)}
a.card,a.tile,a.flow__item,a.hn-dev{color:inherit}
.anchor__list a,.btn,.hero-tags a,.consult--link,.trva-link{transition:transform .2s ease,box-shadow .2s ease,opacity .2s ease}
.anchor__list a:hover,.btn:hover,.hero-tags a:hover,.consult--link:hover,.trva-link:hover{transform:translateY(-2px)}
/* =========================================================
   レスポンシブ（カンプはPC1600pxのみ。以下はテーマのブレークポイント767pxに合わせた暫定対応）
   カンプ由来のインラインstyle（grid-template-columns等）を上書きするため !important を使用
   ========================================================= */
@media (max-width:1280px){
  .inner,.anchor__inner{width:auto;margin-left:40px;margin-right:40px}
  .inner--narrow{width:auto;max-width:1000px}
  .sec-head__en{height:72px}
  .intro__grid{gap:48px}
  .intro__media img.photo{height:380px}
  .deco{opacity:.55}
  .proc{flex-wrap:wrap;justify-content:center;gap:18px 14px}
  .proc .flow__arrow{display:none}
}
@media (max-width:1023px){
  .sec{padding:100px 0}
  .anchor__list,.anchor__list.cols-3{grid-template-columns:repeat(2,minmax(0,1fr))}
  .stat__circle{width:clamp(170px,24vw,230px);height:clamp(170px,24vw,230px)}
  .prof-card{grid-template-columns:1fr;gap:28px}
  .prof-card__table th{width:150px}
  .flow,.rflow,.flow5{flex-wrap:wrap;gap:36px 16px}
  .flow>.flow__item,.rflow>.flow__item{flex:1 1 calc(50% - 16px)}
  .flow>.flow__arrow,.rflow>.flow__arrow{display:none}
  .net{gap:18px}
  .net__arrows{flex-direction:row;justify-content:center;gap:40px}
  .net__arrows .flow__arrow{transform:rotate(90deg)}
}
@media (max-width:767px){
  .page-body{font-size:14px;line-height:1.9}
  .inner,.anchor__inner{margin-left:16px;margin-right:16px}
  .sec{padding:72px 0}
  .intro{padding:48px 0 72px}
  .emg__tel-hours span{display:block}
  .emg__tel-hours{margin-left:0;white-space:normal;text-align:center}
  .emg__item{grid-template-columns:44px auto 1fr}
  .line-qr{display:none}
  .park{grid-template-columns:1fr;gap:24px}
  .park .card{padding:24px 20px}
  .deco{display:none}
  .sec-head{margin-bottom:40px}
  .sec-head__en{height:46px;max-width:100%}
  .sec-head h2{margin-top:-8px;font-size:23px;letter-spacing:.06em}
  .sec-head__lead{font-size:15px}
  .sec-head__lead:before,.sec-head__lead:after{display:none}
  .sec-head__text{text-align:left}
  .sec-head__text br,.key-msg br,.closing br,.consult br,.quote br{display:none}
  .sec-head--num b{font-size:52px}
  .h3{margin-bottom:28px;padding:12px 18px 12px 30px;font-size:18px}
  .h3 small{display:block;margin:2px 0 0}
  .h3-lead{font-size:15px}
  .h4{font-size:18px}
  .h5{font-size:16px}
  .intro__catch{font-size:23px}
  .key-msg{margin-top:40px;padding:22px 0;text-align:left}
  .anchor__inner{margin-top:-40px;padding:24px 14px 26px;border-radius:20px}
  .anchor__ttl{font-size:14px}
  .anchor__list,.anchor__list.cols-3{grid-template-columns:1fr 1fr;gap:10px}
  .anchor__list a,.anchor__list--tall a{height:auto;min-height:60px;gap:8px;padding:8px 32px 8px 8px;border-radius:14px;font-size:13px}
  .anchor__list a:after{right:8px;width:20px;height:20px;margin-top:-10px;background-size:20px}
  .anchor__ic,.anchor__list--tall .anchor__ic{width:40px;height:40px;border-radius:50%}
  .intro__grid{gap:32px}
  .intro__media img.photo{height:240px;border-radius:24px}
  .intro__media:before{width:150px;height:150px;left:-20px;top:-20px}
  .card-head small{display:block;margin:2px 0 0}
  .anchor__ttl span{font-size:16px}
  .anchor__ttl small:before,.anchor__ttl small:after{width:32px}
  .photo,.photo--h420,.photo--h360,.photo--h300{max-height:300px;aspect-ratio:4/3}
  .card{padding:24px 20px;border-radius:20px}
  .card-head{margin:-24px -20px 20px;padding:18px 20px;font-size:18px}
  .card-head img{width:96px;height:72px;bottom:-16px;right:12px}
  .tile{padding:16px 10px}
  .tile p{font-size:14px}
  .box--point{flex-direction:column;align-items:flex-start}
  .checks li{font-size:15px}
  .hn-fig--xr img{height:300px}
  .movie__frame video{height:auto;aspect-ratio:16/9}
  .anat__lb{font-size:13px}
  .flow,.rflow,.flow5{flex-direction:column;gap:34px}
  .flow>.flow__item,.rflow>.flow__item{flex:none}
  .flow__item{padding:40px 18px 22px}
  .proc{flex-wrap:wrap;justify-content:center;gap:14px;padding:22px 12px}
  .proc .flow__arrow{display:none}
  .chipflow span{padding:6px 14px;font-size:14px}
  .dtable,.dtable tbody,.dtable tr,.dtable th,.dtable td{display:block}
  .dtable th{border-radius:12px 12px 0 0;padding:10px 16px}
  .dtable td{border-radius:0 0 12px 12px;padding:14px 16px}
  .box--mint:has(.cal){overflow-x:auto}
  .cal{min-width:760px}
  .faq__q,.faq__a{grid-template-columns:40px 1fr;gap:14px;padding:18px 18px}
  .faq__q{font-size:16px}
  .faq__q:before,.faq__a:before{width:40px;height:40px;font-size:18px}
  .asa>div+div{border-left:0;border-top:1px dashed var(--line)}
  .consult,.closing{flex-direction:column;align-items:center;gap:0;width:100%;margin-top:56px;font-size:16px;text-align:center}
  .consult>p,.closing>div.closing__txt{padding:24px 0 8px}
  .consult>img,.closing>img{width:140px;height:143px;margin-top:0}
  .closing .btns{justify-content:center}
  .consult--s{text-align:left}
  .closing p{font-size:17px}
  .stat__circle{width:200px;height:200px}
  .stat__circle b{font-size:46px}
  .profile{padding:24px 20px}
  .profile__photo img{width:100%;height:320px}
  .msg__photo img{width:240px;height:240px}
  .xr-fig{padding-right:0}
  .xr-fig .xr{width:110px;height:210px;bottom:-24px;right:-6px}
  .idea img{width:100%}
  .ops img,.pain img,.wake img{width:100%}
  .dx__imgs{height:180px}
  .hcard .time{font-size:34px}
  .job{padding:32px 24px}
  .job .mark{width:90px;height:90px;right:16px;top:16px}
  .job svg{width:50px;height:50px}
  .cycle:before{display:none}
  .acc__map iframe{height:300px}
  .btn{height:52px;padding:0 20px 0 24px;font-size:14px}
  .btns{flex-direction:column;align-items:stretch}
  .video img{height:220px}
}
} /* /lower-base */
/* ページ固有の調整（元は #top 付き） */
@layer lower-tweak {
/* =========================================================
   インラインCSSから移設したページ固有の調整（書き出し時に lower-tweak レイヤーへ入る）
   クラス名はセクション／部品名ベースの BEM（例：emg__head-sub、ds-row--half）。2026-10-14 に連番名から改名
   ========================================================= */
.note--mint-text{background:var(--bg2);color:var(--green-d)}
.noncore__risk{font-size:15px}
.filaria__box{padding:36px 44px 28px}
.filaria__row{grid-template-columns:1fr 1fr;gap:56px}
.filaria__photo{object-fit:contain;background:#fff}
.filaria__point{border-color:#fde3b5;background:#fffaf0}
.filaria__point-ttl{color:#b86b13}
.filaria__policy{display:grid;grid-template-columns:200px 1fr;gap:30px;align-items:center;padding:36px 50px}
.filaria__policy-ttl{text-align:center;border-right:2px dotted var(--line)}
.meeting__row{grid-template-columns:520px 1fr;gap:60px}
.review__row{grid-template-columns:1fr 520px;gap:60px}
.review__question{font-family:var(--zen);font-weight:700;color:var(--green-d);font-size:17px;line-height:1.9}
.center-intro__points{display:grid;grid-template-columns:1fr auto;gap:40px;align-items:center;padding:36px 50px}
.profile__name--lg{font-size:28px}
.experience__img{width:250px;height:auto;margin-top:0px;border-radius:16px}
.experience__quote{text-align:center;padding:50px 60px 0;overflow:hidden}
.experience__photo{width:900px;margin:20px auto 0}
.ortho-care__row{grid-template-columns:1fr 1fr;gap:56px}
.consult--ortho{margin-top:40px;padding:26px 36px;min-height:0}
.cat4--single{grid-template-columns:1fr}
.support__catch{margin-bottom:10px}
.conf__row{grid-template-columns:480px 1fr;gap:44px}
.conf__photo{height:470px;object-position:30% 50%}
.conf__points{grid-template-columns:1fr;gap:16px}
.sim__model{border:0;background:var(--beige-l)}
.point-label--beige{background:var(--beige)}
.anesthesia__row{grid-template-columns:1fr 1fr;gap:56px}
.anesthesia__photo{height:420px}
.adv__photo--advisor{width:200px;height:240px;object-fit:cover;border-radius:20px}
.profile__name--advisor{font-size:28px}
.advisor__role{font-size:14px}
.advisor__ttl{font-size:18px}
.advisor__lead{font-size:21px}
.advisor__card{padding:28px 32px}
.preop__box{display:grid;grid-template-columns:260px 1fr;gap:30px;align-items:center;padding:30px 44px}
.preop__ttl{margin:0;border-right:2px dotted var(--line)}
.asa__prose{margin-bottom:48px}
.asa__lv--1{background:#58c6af}
.asa__lv--2{background:#8fc98f}
.asa__lv--3{background:#e9b94f}
.asa__lv--4{background:#f1953b}
.asa__lv--5{background:#f25f5f}
.monitor__step{padding-top:34px}
.monitor__ic{background:#fff}
.pain__fig{margin-left:auto;margin-right:auto;max-width:720px}
.stay__row{grid-template-columns:520px 1fr;gap:56px}
.stay__photo{height:500px}
.areas--grid{display:grid}
.stay__card{padding:22px 28px}
.stay__row--note{grid-template-columns:1fr 440px;gap:56px}
.stay__photo--sm{height:300px}
.line-flow__row{grid-template-columns:1fr 1fr;gap:48px}
.line-flow__photo{height:380px}
.line-flow__num{margin-right:8px}
.line-flow__arrow{justify-self:center}
.line-phone--sm{height:380px;width:200px}
.ds-intro__catch{margin-bottom:12px}
.ds-row{grid-template-columns:420px 1fr;gap:48px}
.ds-summary{padding:36px 38px}
.ds-lead{font-size:22px}
.fx-support__lead{font-size:19px;text-align:center}
.fx-signs{grid-template-columns:repeat(2,1fr)}
.fx-treat__img{width:auto;object-fit:cover}
.fx-plan__xr{background:#111;border-radius:12px}
.fx-plan__model{object-fit:cover;border-radius:12px}
.fx-quote{font-size:23px}
.pat-move__card{box-shadow:0 0 0 6px #fbe0d6}
.pat-move__ttl{border-bottom-color:#f3a68f}
.ds-photo{height:400px}
.grade__lv--1{background:#58c6af}
.grade__lv--2{background:#e9b94f}
.grade__lv--3{background:#f1953b}
.grade__lv--4{background:#f25f5f}
.acl-flow__chips{margin-bottom:22px}
.acl-cause__list{display:grid;gap:8px;font-size:16px}
.acl-conserv__img{width:260px;border-radius:16px}
.acl-xrs{height:230px}
.acl-treat__main{font-family:var(--zen);font-weight:700;color:var(--green-d);font-size:17px}
.gait__arrow{justify-self:center;width:60px;height:60px;background-size:60px}
.video__label--after{background:var(--coral)}
.ds-row--half{grid-template-columns:1fr 1fr;gap:48px}
.hn-fig--cervical{grid-template-columns:.8fr 1fr}
.hn-cervical__xr{height:auto;background:#111}
.hn-scope__photo{height:420px}
.hip-dysplasia__img{object-fit:cover}
.hip-oa__row{grid-template-columns:1fr 360px;gap:48px}
.hn-fig--hip-xr{grid-template-columns:1fr}
.ds-row--fig{grid-template-columns:1fr 420px;gap:56px}
.anat__lb--humerus{left:80%;top:13%}
.anat__lb--radius{left:15%;top:67%}
.anat__lb--ulna{left:70%;top:73%}
.elbow__xrs{grid-template-columns:1fr 1fr;gap:48px;max-width:860px;margin-left:auto;margin-right:auto}
.elbow__xr{height:280px;object-fit:contain;background:#111}
.anat__lb--scapula{left:81%;top:27%}
.anat__lb--sh-humerus{left:31%;top:91%}
.shoulder__fig{max-width:420px;margin-left:auto;margin-right:auto}
.shoulder__xr{height:300px;object-fit:contain;background:#111}
.intro__grid--doctors{grid-template-columns:1fr 520px}
.intro__photo--doctors{height:340px;object-fit:contain;background:#fff}
.num-dot--beige{background:var(--beige)}
.accept__row{grid-template-columns:1.4fr 1fr;gap:32px}
.accept__urgent{border-color:#f8c9b0;background:#fff8f3}
.accept__urgent-ttl{border-bottom-color:#f1953b;color:#c0631b}
.contact__img{width:100%;height:auto;border-radius:10px;margin:6px 0 0}
.rep3__img{object-fit:contain;background:#fff}
.report__step-num{margin-right:8px}
.report__step-num--beige{margin-right:8px;background:var(--beige)}
.report__box{padding:34px 40px}
.report__img{width:620px;margin:0 auto 18px;border-radius:12px}
.intro__grid--recruit{grid-template-columns:600px 1fr}
.rhero--recruit{height:440px}
.btn--nurse{color:#e2776a}
.intro__grid--first{grid-template-columns:1fr 520px}
.intro__photo--first{height:400px}
.label--night{background:#36557c}
.h5--lg{font-size:22px}
.note--mint{background:var(--bg2);color:var(--green-d)}
.emg__banner{width:760px;margin:0 auto 56px;border-radius:16px}
.emg__img{object-fit:contain;background:#fff}
.emg__trva-note{color:#36557c}
.btn--line-app{background:#06c755;color:#fff}
.acc__info{grid-template-columns:1fr 1fr;gap:20px}
.acc__address{padding:22px 26px}
.ic-circle--sm{width:60px;height:60px;margin-bottom:8px}
.acc__address-icon{width:40px}
.h5--sm{font-size:16px}
.acc__list--plain{list-style:none;margin:0;padding:0}
.acc__notice{padding:24px 28px}
.pay__qr-img{width:100%;margin-top:12px}
.pay__point--beige{border:0;background:var(--beige-l)}
.pay__point--mint{border:0;background:var(--bg)}
.eqb__row{grid-template-columns:560px 1fr;gap:64px}
.eq-surgery__photo{height:470px}
.areas--plain{list-style:none;margin:0;padding:0}
.eqb__row--half{grid-template-columns:1fr 1fr;gap:28px}
.eqb__point{border:0;background:var(--beige-l)}
.eqb__point-label{background:var(--beige)}
.eq-feat--surgery{grid-template-columns:repeat(2,1fr)}
.icu__row{grid-template-columns:5fr 7fr;gap:48px}
.eqb__msg{margin-top:40px}
.eq-feat__ic{margin:0 auto 14px}
.eqb__row--device{grid-template-columns:1fr 360px;gap:48px}
.scope__row{grid-template-columns:330px 1fr;gap:56px}
.device--full{height:100%}
.scope__cam{height:420px}
.eq3d__row{grid-template-columns:1fr 260px 300px;gap:24px}
.eq3d__model{grid-column:2/4}
.eq3d__printer{height:300px}
.eq3d__card{padding:30px}
.microscope__row{grid-template-columns:480px 1fr;gap:48px}
.microscope__photo{height:400px}
.mscope--single{grid-template-columns:1fr}
.filaria__note{font-size:14px}
.conf__body{display:grid;gap:24px}
.advisor__en{font-family:var(--jost);color:var(--mint);letter-spacing:.16em}
.line-flow__fig{margin:0;text-align:center}
.line-flow__fig--phone{margin:0;text-align:center;display:flex;flex-direction:column;align-items:center}
.acl-conserv{display:grid;grid-template-columns:1fr 260px;gap:20px;align-items:center}
.svc3__num{font-size:24px}
.consult__sub{font-size:16px;font-weight:500}
.emg__head-sub{margin-left:auto;font-size:15px;font-weight:700}
.acc__address-text{font-size:13.5px;line-height:1.7}
.card__note{font-size:14px}
.eq-feat__text{text-align:left;font-size:14px;line-height:1.8}
.endo__model{font-family:var(--zen);font-size:15px;font-weight:700}
} /* /lower-tweak */
/* 優先して効かせる指定（元は !important） */
@layer lower-priority {
.page-body{height:auto}
.mt0{margin-top:0}
.mt16{margin-top:16px}
.mt24{margin-top:24px}
.mt32{margin-top:32px}
.mt40{margin-top:40px}
.mt56{margin-top:56px}
.mt72{margin-top:72px}
.mt96{margin-top:96px}
.mt120{margin-top:120px}
.sec-head__lead{margin-top:60px}
.sec-head__text{margin:22px auto 0}
.sec-head--left .sec-head__text{margin-left:0}
.h3-lead{margin:-18px 0 36px}
.anchor__ttl{margin:0 0 26px}
.intro__en{margin-bottom:0px}
.intro__tag{margin-bottom:15px}
.card--mint{background:var(--bg)}
.card--beige{background:var(--beige-l)}
.cap{margin-top:12px}
.stat p{margin-top:26px}
.sign{margin-top:24px}
.mt8{margin-top:8px}
.prose>*+*{margin-top:18px}
.prose .h4.mt56{margin-top:56px}
.prose__sub{margin-top:40px;font-size:19px}
.card p:not(.h5):not(.lead-big):not(.big-tel):not(.quote):not(.en):not(.profile__name):not(.profile__role):not(.msg__em),.flow__item p:not(.h5):not(.lead-big):not(.big-tel):not(.quote):not(.en):not(.profile__name):not(.profile__role):not(.msg__em),.areas span,.feat-list span,.tile small,.mscope p:not(.h5):not(.lead-big):not(.big-tel):not(.quote):not(.en):not(.profile__name):not(.profile__role):not(.msg__em),.night p:not(.h5):not(.lead-big):not(.big-tel):not(.quote):not(.en):not(.profile__name):not(.profile__role):not(.msg__em),.grade p,.asa p,.dx>p,.contact3 p.s,.note,.small,.cap{font-size:15px}
.page-body .big-tel{font-size:44px;line-height:1.2}
.tile small{font-size:14px}
.cap{font-size:15px}
.net__mid{text-align:left;padding:22px 30px}
.net__mid img{height:130px;margin:0}
.net__mid .h5{text-align:left}
.net__mid p.tc{text-align:left}
.pv-card .pv-foot{margin-top:auto}
.vac-age{margin-top:28px}
.pv-foot{margin-top:20px}
.hero-tags{margin:26px 0 0}
.ortho-catch{margin:0 0 50px}
.eqb__text{margin-top:10px}
.asa-scale{margin:5px 6px 0}
.proc b{font-size:14.5px}
.ops .label{background:#fff}
.ops img.full{object-fit:contain;background:#fff}
.hn-fig .cap{margin-top:10px}
.dx__imgs--xr{height:auto}
.dx__imgs--xr img{height:auto}
.emg__item .emg__tel-num{font-size:30px}
@media (max-width:1280px){
  .intro__grid{grid-template-columns:1fr 1fr}
}
@media (max-width:1023px){
  .g4,.g5,.dis8,.areas8,.eqgrid,.acc4,.help4,.feat4,.pay4,.ane5,.vitals,.sym-grid,.charm,.labs,.eval6{grid-template-columns:repeat(3,minmax(0,1fr))}
  .vit7{grid-template-columns:repeat(4,minmax(0,1fr))}
  .idea,.contact3,.pain,.wake{grid-template-columns:1fr}
  .row,.msg,.profile,.adv,.role,.sym-photo,.acc,.pat-skel,.hours2,.cases,.views,.cause,.icu-card,.surg{grid-template-columns:1fr}
  .net{grid-template-columns:1fr}
}
@media (max-width:767px){
  .emg__item .emg__tel-num{font-size:26px}
  .emg__tel-sep{display:none}
  .mt120{margin-top:72px}
  .mt96{margin-top:56px}
  .mt72{margin-top:48px}
  .mt56{margin-top:36px}
  .h3-lead{margin:-12px 0 24px}
  .lead-big{font-size:19px}
  .quote{font-size:19px}
  .key-msg{font-size:16px}
  .anchor__ttl{margin-bottom:16px}
  .intro__grid{grid-template-columns:1fr}
  .rhero{height:300px}
  .page-body [style*="grid-template-columns"]{grid-template-columns:1fr;gap:20px}
  .grid,.g2,.g3,.g4,.g5,.dis8,.areas8,.eqgrid,.acc4,.help4,.feat4,.pay4,.ane5,.vitals,.vit7,.sym-grid,.charm,.labs,.eval6,
  .eq-feat,.idea,.ops,.pain,.wake,.mat,.jobs,.resv,.emg,.ins,.contact,.contact3,.svc3,.rep3,.r3,.sim,.night,.scopes,.mscope,.ph3,.plates,.need,.cycle,.steps5,.asa,.two-tone{grid-template-columns:1fr;gap:20px}
  .sym-grid,.dis8,.areas8,.eqgrid,.vitals,.vit7,.eval6,.scopes,.need,.pay4,.ane5,.labs,.acc4,.help4,.feat4,.steps5{grid-template-columns:1fr 1fr;gap:14px}
  .row,.msg,.profile,.adv,.role,.sym-photo,.acc,.pat-skel,.hours2,.cases,.views,.cause,.icu-card,.surg,.line-flow,.gait,.models{grid-template-columns:1fr;gap:24px}
  .models{grid-template-rows:auto}
  .models img{height:180px;grid-row:auto;grid-column:auto}
  .photo,.photo--h420,.photo--h360,.photo--h300{height:auto}
  .tile img{height:96px}
  .box{padding:28px 20px}
  .checks.c2{grid-template-columns:1fr}
  .ds-cards,.ds-cards--4,.dt3,.hn-fig--3,.hn-disc,.gait{grid-template-columns:1fr}
  .ds-cards>*,.ds-cards--5>:nth-child(4),.ds-cards--4>*{grid-column:auto}
  .dx__imgs--xr{height:auto}
  .net__mid{grid-template-columns:110px 1fr}
  .net__mid img{height:96px}
  .dtable,.dtable tbody,.dtable tr,.dtable th,.dtable td{width:100%}
  .consult,.closing{padding:0 20px}
  .consult--s{padding:22px 20px}
  .idea .card{grid-template-columns:1fr}
  .ops .card,.pain .card,.wake .card,.ins .card{grid-template-columns:1fr}
  .night>div{border-radius:0}
  .night>div:first-child{border-radius:20px 20px 0 0}
  .night>div:last-child{border-radius:0 0 20px 20px}
  .line-phone{width:180px;height:340px}
  .page-body .big-tel{font-size:32px}
}
} /* /lower-priority */
/* ページ固有の調整のうち、優先して効かせる指定 */
@layer lower-tweak-priority {
.support__lead{margin-top:0}
.pat-move__card{background:#fff3ee}
.resv__note{text-align:center}
.resv__tel{text-align:center}
@media (max-width:767px){
  .filaria__row{grid-template-columns:1fr;gap:20px}
  .filaria__policy{grid-template-columns:1fr;gap:20px}
  .filaria__policy-ttl{border-right:0;text-align:left}
  .meeting__row{grid-template-columns:1fr;gap:20px}
  .review__row{grid-template-columns:1fr;gap:20px}
  .center-intro__points{grid-template-columns:1fr;gap:20px}
  .ortho-care__row{grid-template-columns:1fr;gap:20px}
  .cat4--single{grid-template-columns:1fr;gap:20px}
  .conf__row{grid-template-columns:1fr;gap:20px}
  .conf__points{grid-template-columns:1fr;gap:20px}
  .anesthesia__row{grid-template-columns:1fr;gap:20px}
  .preop__box{grid-template-columns:1fr;gap:20px}
  .preop__ttl{border-right:0;text-align:left}
  .stay__row{grid-template-columns:1fr;gap:20px}
  .stay__row--note{grid-template-columns:1fr;gap:20px}
  .line-flow__row{grid-template-columns:1fr;gap:20px}
  .ds-row{grid-template-columns:1fr;gap:20px}
  .fx-signs{grid-template-columns:1fr;gap:20px}
  .ds-row--half{grid-template-columns:1fr;gap:20px}
  .hn-fig--cervical{grid-template-columns:1fr;gap:20px}
  .hip-oa__row{grid-template-columns:1fr;gap:20px}
  .hn-fig--hip-xr{grid-template-columns:1fr;gap:20px}
  .ds-row--fig{grid-template-columns:1fr;gap:20px}
  .elbow__xrs{grid-template-columns:1fr;gap:20px}
  .intro__grid--doctors{grid-template-columns:1fr;gap:20px}
  .accept__row{grid-template-columns:1fr;gap:20px}
  .intro__grid--recruit{grid-template-columns:1fr;gap:20px}
  .intro__grid--first{grid-template-columns:1fr;gap:20px}
  .acc__info{grid-template-columns:1fr;gap:20px}
  .eqb__row{grid-template-columns:1fr;gap:20px}
  .eqb__row--half{grid-template-columns:1fr;gap:20px}
  .eq-feat--surgery{grid-template-columns:1fr;gap:20px}
  .icu__row{grid-template-columns:1fr;gap:20px}
  .eqb__row--device{grid-template-columns:1fr;gap:20px}
  .scope__row{grid-template-columns:1fr;gap:20px}
  .eq3d__row{grid-template-columns:1fr;gap:20px}
  .microscope__row{grid-template-columns:1fr;gap:20px}
  .mscope--single{grid-template-columns:1fr;gap:20px}
}
@media (max-width:767px){
  .acl-conserv{grid-template-columns:1fr;gap:20px}
}
} /* /lower-tweak-priority */
