:root{
  --paper:#FAF8F4;
  --sakura:#F1EDE6;
  --sakura-line:#E2DCD1;
  --beni:#A64A29;
  --beni-dark:#8F3F22;
  --sumi:#2F3231;
  --sumi-soft:#5A5E5C;
  --rule:#DCD8D5;
  --serif:"Shippori Mincho B1","Hiragino Mincho ProN",serif;
  --sans:"Zen Maru Gothic","Hiragino Maru Gothic ProN","Hiragino Sans",sans-serif;
  --hand:"Klee One","Hiragino Mincho ProN",serif;
  --max:1120px;
  --gutter:40px;
  --section:88px;
  --block:56px;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--sumi);font-family:var(--sans);font-size:18px;line-height:1.85;letter-spacing:.01em;line-break:strict;font-weight:400}
img{display:block;max-width:100%;height:auto}
a{color:inherit}
p,figure{margin:0}
h1,h2,h3{margin:0;font-weight:500}
b,strong{font-weight:700}
.wrap{max-width:calc(var(--max) + var(--gutter)*2);margin:0 auto;padding:0 var(--gutter)}
:focus-visible{outline:2px solid var(--sumi);outline-offset:3px}
.ph{display:inline-block}
.line{display:block}
main [id],footer[id]{scroll-margin-top:100px}
.h2,.block > h2,.page-head h1,.split h2,.contact h3,.contact-band h2,.foot h2{font-feature-settings:"palt";text-spacing-trim:trim-start}
.h2{font-family:var(--serif);font-size:28px;line-height:1.55;letter-spacing:.06em;font-weight:600}
.cap,figcaption{font-size:14px;line-height:1.65;color:var(--sumi-soft);margin-top:10px}
.more{display:inline-block;margin-top:28px;color:var(--beni);font-weight:500;text-underline-offset:.35em;text-decoration-thickness:1px}
.pc{display:inline}

/* header */
.mock-note{background:#FFF6D8;border-bottom:1px solid #E9D795;font-size:14px;color:#6B5518;text-align:center;padding:6px 16px}
.site-head{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.97);border-bottom:1px solid transparent;transition:border-color .2s}
.site-head.is-scrolled{border-bottom-color:var(--rule)}
.site-head .wrap{position:relative;display:flex;align-items:center;gap:32px;height:84px}
.brand{display:flex;align-items:center;gap:14px;text-decoration:none;flex:none}
.brand-mark{width:58px;height:42px;background:var(--sumi);-webkit-mask:url(img/logo.png) center/contain no-repeat;mask:url(img/logo.png) center/contain no-repeat;flex:none}
.brand-name{font-family:var(--serif);font-weight:600;font-size:20px;letter-spacing:.1em;line-height:1.3}
.brand-name small{display:block;font-family:var(--sans);font-weight:400;font-size:14px;letter-spacing:.06em;color:var(--sumi-soft)}
.gnav{margin-left:auto;display:flex;gap:28px;font-size:17px;font-weight:500}
.gnav a{text-decoration:none;padding:6px 0;border-bottom:1px solid transparent}
.gnav a:hover,.gnav a[aria-current="page"]{border-bottom-color:var(--beni);color:var(--beni)}
.head-tel{display:flex;flex-direction:column;align-items:flex-end;text-decoration:none;line-height:1.3;padding-left:28px;border-left:1px solid var(--rule)}
.head-tel b{font-weight:500;font-size:20px;letter-spacing:.03em;font-variant-numeric:tabular-nums}
.head-tel span{font-size:14px;color:var(--sumi-soft)}
.mobile-menu{display:none}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:0 28px;border-radius:6px;font-size:17px;font-weight:700;text-decoration:none;letter-spacing:.06em;transition:background-color .15s}
.btn-primary{background:var(--beni);color:#fff}
.btn-primary:hover{background:var(--beni-dark)}
.btn-ghost{border:1px solid var(--sumi);color:var(--sumi);background:var(--card)}
.btn-ghost:hover{background:var(--sakura)}
.tel-block{text-decoration:none;line-height:1.35}
.tel-block b{display:block;font-weight:500;font-size:28px;letter-spacing:.03em;white-space:nowrap;font-variant-numeric:tabular-nums}
.tel-block span{font-size:14px;color:var(--sumi-soft)}

/* ===== top: hero ===== */
.hero{padding:40px 0 0}
.hero-grid{display:grid;grid-template-columns:5fr 7fr;grid-template-rows:auto 1fr;grid-template-areas:"title visual" "after visual";gap:28px 56px}
.hero-text{grid-area:title;padding-top:56px}
.hero-place{font-size:17px;color:var(--sumi-soft);margin-bottom:20px}
.hero h1{font-family:var(--serif);font-weight:600;font-size:34px;line-height:1.6;letter-spacing:.05em;font-feature-settings:"palt"}
.hero-after{grid-area:after}
.hero-lead{font-size:18px;line-height:1.9;max-width:23em}
.hero-cta{margin-top:32px;display:flex;flex-wrap:wrap;align-items:center;gap:16px 28px}
.hero-visual{grid-area:visual;display:grid;grid-template-columns:minmax(0,1fr) max-content;gap:20px;align-items:start}
.hero-photo{min-width:0}
.hero-photo img{width:100%;aspect-ratio:1/1;object-fit:cover;object-position:0% 60%}
.tategaki{writing-mode:vertical-rl;font-family:var(--hand);font-weight:600;font-size:24px;line-height:1.85;letter-spacing:.2em}

/* ===== top: promise ===== */
.section{padding:var(--section) 0}
.label{font-size:17px;font-weight:700;letter-spacing:.08em;color:var(--beni);margin-bottom:28px}
.promise-main{padding:44px 0 48px;border-top:1px solid var(--sumi);border-bottom:1px solid var(--rule)}
.promise-q{font-size:18px;font-weight:500;color:var(--sumi-soft)}
.promise-a{font-family:var(--serif);font-weight:600;font-size:40px;line-height:1.55;letter-spacing:.04em;margin-top:10px;font-feature-settings:"palt"}
.promise-sub{margin-top:20px;max-width:34em}
.promise-pair{display:grid;grid-template-columns:1fr 1fr;gap:0 56px;margin:0}
.promise-pair > div{padding:32px 0;border-bottom:1px solid var(--rule)}
.promise-pair dt{font-size:17px;font-weight:500;color:var(--sumi-soft);margin-bottom:8px}
.promise-pair dd{margin:0}
.promise-pair dd b{display:block;font-size:20px;line-height:1.7;margin-bottom:6px}
.related{display:flex;flex-wrap:wrap;gap:10px 32px;margin-top:28px}
.related a{color:var(--beni);font-weight:500;text-underline-offset:.35em;text-decoration-thickness:1px}

/* ===== top: area ===== */
.area{background:var(--sakura);padding:var(--section) 0}
.area-grid{display:grid;grid-template-columns:5fr 7fr;gap:64px;align-items:center}
.area .h2{margin-bottom:24px}
.area-lead{font-size:18px;line-height:1.95;margin-bottom:32px;max-width:24em}
.facts{list-style:none;margin:0;padding:0;border-top:1px solid var(--sakura-line)}
.facts li{display:grid;grid-template-columns:7em 1fr;padding:14px 0;border-bottom:1px solid var(--sakura-line);font-size:17px}
.facts li span{color:var(--sumi-soft)}
.map{background:var(--card);padding:24px 24px 16px}
.map svg{width:100%;height:auto;font-family:var(--sans)}

/* ===== top: eye ===== */
.eye{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:72px;align-items:start}
.eye > figure img{width:100%;aspect-ratio:3/4;object-fit:cover;object-position:40% 50%}
.eye > div{max-width:32em;padding-top:24px}
.eye .h2{margin-bottom:24px}
.minor{font-size:17px;font-weight:700;margin:44px 0 12px}
.care-inline{margin:0;border-top:1px solid var(--sumi)}
.care-inline > div{display:grid;grid-template-columns:6em 1fr;gap:16px;padding:12px 0;border-bottom:1px solid var(--rule);font-size:17px}
.care-inline dt{font-weight:500}
.care-inline dd{margin:0;color:var(--sumi-soft)}

/* ===== top: start, cost ===== */
.start{border-top:1px solid var(--rule)}
.sec-head{display:grid;grid-template-columns:4fr 8fr;gap:56px;margin-bottom:40px;align-items:end}
.sec-head p{max-width:34em;color:var(--sumi-soft)}
.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:40px;counter-reset:s}
.steps li{counter-increment:s;padding-top:18px;border-top:2px solid var(--sumi)}
.steps h3{font-family:var(--serif);font-weight:600;font-size:20px;line-height:1.6;margin-bottom:8px}
.steps h3::before{content:counter(s) "　";color:var(--beni)}
.steps p{font-size:17px}
.cost-summary{margin-top:64px;display:grid;grid-template-columns:4fr 8fr;column-gap:56px;align-items:baseline}
.cost-label{font-family:var(--serif);font-weight:600;font-size:24px;grid-row:span 3}
.cost-figure{font-size:18px}
.cost-figure b{font-family:var(--serif);font-weight:600;font-size:44px;letter-spacing:.02em;font-variant-numeric:tabular-nums;margin:0 .1em}
.cost-cond{font-size:17px;color:var(--sumi-soft);margin-top:4px}
.cost-summary .more{margin-top:12px;justify-self:start}
.contact{margin-top:64px;display:grid;grid-template-columns:4fr 8fr;gap:56px;padding:40px 0 0;border-top:2px solid var(--beni)}
.contact h3{font-family:var(--serif);font-weight:600;font-size:24px;line-height:1.6}
.contact-body{display:flex;flex-wrap:wrap;align-items:center;gap:20px 36px;min-width:0}
.contact-body p{flex-basis:100%;max-width:36em}

/* ===== top: years ===== */
.years{border-top:1px solid var(--rule)}
.years-row{list-style:none;margin:40px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:40px}
.years-row li{border-top:1px solid var(--sumi);padding-top:16px}
.yr{display:block;font-family:var(--serif);font-weight:500;font-size:64px;line-height:1.1;letter-spacing:.02em;font-variant-numeric:lining-nums;color:var(--sumi)}
.years-row li:last-child .yr{color:var(--beni)}
.years-row p{margin-top:12px;font-size:17px;max-width:20em}

/* ===== top: split ===== */
.split{display:grid;grid-template-columns:7fr 5fr;border-top:1px solid var(--sumi)}
.split > section{padding:48px 56px 64px 0}
.split > section + section{padding:48px 0 64px 48px;border-left:1px solid var(--rule)}
.split h2{font-family:var(--serif);font-weight:600;font-size:24px;line-height:1.55;letter-spacing:.05em;margin-bottom:6px}
.for{font-size:17px;color:var(--sumi-soft);margin-bottom:20px}
.plain{list-style:none;padding:0;margin:0 0 28px;border-top:1px solid var(--rule)}
.plain li{padding:12px 0;border-bottom:1px solid var(--rule)}
.lines{display:flex;flex-wrap:wrap;gap:12px 48px}
.lines div{line-height:1.4}
.lines span{display:block;font-size:14px;color:var(--sumi-soft)}
.lines b{font-weight:500;font-size:24px;letter-spacing:.03em;font-variant-numeric:tabular-nums}
.lines a{text-decoration:none}
.status{font-weight:700;margin:6px 0 8px}
.recruit p{font-size:17px}

/* ===== subpages ===== */
.page-head{padding:56px 0 56px;border-bottom:1px solid var(--rule)}
.crumb{font-size:14px;color:var(--sumi-soft);margin-bottom:24px}
.crumb a{text-underline-offset:.3em}
.page-head h1{font-family:var(--serif);font-weight:600;font-size:38px;line-height:1.5;letter-spacing:.06em}
.page-lead{margin-top:20px;font-size:18px;line-height:1.9;max-width:38em}
.toc{display:flex;flex-wrap:wrap;gap:6px 28px;margin-top:28px;padding:0;list-style:none;font-size:17px}
.toc a{color:var(--beni);text-underline-offset:.35em}
.page-head .lines{margin-top:32px;padding-top:24px;border-top:1px solid var(--rule)}
.block{display:grid;grid-template-columns:224px minmax(0,1fr);gap:64px;padding:var(--block) 0;border-bottom:1px solid var(--rule)}
.block:last-child{border-bottom:0}
.block > h2{font-family:var(--serif);font-weight:600;font-size:24px;line-height:1.55;letter-spacing:.06em}
.block > div{min-width:0;max-width:46em}
.block p+p{margin-top:1em}
.block h3{font-size:18px;font-weight:700;margin:36px 0 10px}
.block h3:first-child{margin-top:0}
.block--story{display:block}
.block--story > h2{margin-bottom:32px}
.story-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:56px;align-items:start}
.story-grid img{width:100%;aspect-ratio:4/3;object-fit:cover}
.story-copy{max-width:34em}
.story-copy p+p{margin-top:1em}
.sign{margin-top:24px;font-size:17px;color:var(--sumi-soft)}
.sign b{font-family:var(--serif);font-weight:600;font-size:20px;color:var(--sumi);letter-spacing:.2em;margin-left:.6em}
.statement{font-family:var(--serif);font-weight:600;font-size:24px;line-height:1.8;letter-spacing:.04em;max-width:22em}
.rows{margin:0;border-top:1px solid var(--sumi)}
.rows > div{display:grid;grid-template-columns:10em 1fr;gap:24px;padding:18px 0;border-bottom:1px solid var(--rule)}
.rows dt{font-weight:500;line-height:1.65}
.rows dd{margin:0}
.rows dd small{display:block;font-size:14px;color:var(--sumi-soft);margin-top:4px}
.timeline{margin:0;border-top:1px solid var(--sumi)}
.timeline div{display:grid;grid-template-columns:5.5em 1fr;gap:24px;padding:20px 0;border-bottom:1px solid var(--rule)}
.timeline dt{font-family:var(--serif);font-size:28px;line-height:1.3}
.timeline dd{margin:0}
.care-table{width:100%;border-collapse:collapse;border-top:1px solid var(--sumi)}
.care-table th,.care-table td{padding:16px 0;border-bottom:1px solid var(--rule);text-align:left;vertical-align:baseline;font-size:17px}
.care-table th{width:9.5em;font-weight:500;padding-right:16px}
.care-table td{color:var(--sumi-soft)}
.note{font-size:17px;color:var(--sumi-soft);margin-top:14px}
.hint{display:none}
.scroll{overflow-x:auto}
table.fee{border-collapse:collapse;width:100%;font-size:17px}
.fee th,.fee td{padding:16px 18px;border-bottom:1px solid var(--rule);text-align:left;vertical-align:baseline}
.fee thead th{background:var(--sakura);font-weight:500;font-size:17px;border-bottom:0}
.fee tbody th{font-weight:400}
.fee .num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
.fee small{font-size:.8em;margin-left:2px}
.fee-range > span{white-space:nowrap}

/* month (family) */
.weeks{list-style:none;margin:28px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--sumi)}
.weeks li{padding:14px 16px 18px 0;border-right:1px solid var(--rule);min-height:132px;position:relative}
.weeks li + li{padding-left:16px}
.weeks li:last-child{border-right:0}
.wk{font-size:14px;color:var(--sumi-soft)}
.ev{display:block;margin-top:12px;font-size:17px;line-height:1.5;padding-left:12px;border-left:3px solid var(--beni)}
.ev.ev--call{border-left-style:dotted}
.weeks-note{font-size:17px;color:var(--sumi-soft);margin-top:14px}

/* day (about) */
.day{margin:0;border-left:2px solid var(--sumi)}
.day > div{display:grid;grid-template-columns:5.5em 1fr;gap:20px;padding:12px 0 12px 20px;position:relative}
.day > div::before{content:"";position:absolute;left:-6px;top:22px;width:10px;height:10px;border-radius:50%;background:var(--card);border:2px solid var(--sumi)}
.day dt{font-variant-numeric:tabular-nums;font-weight:500}
.day dd{margin:0}

/* faq */
.faq{border-top:1px solid var(--sumi)}
.faq details{border-bottom:1px solid var(--rule)}
.faq summary{list-style:none;cursor:pointer;padding:20px 40px 20px 0;font-weight:500;font-size:18px;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";position:absolute;right:6px;top:50%;width:9px;height:9px;border-right:1.5px solid var(--sumi);border-bottom:1.5px solid var(--sumi);transform:translateY(-70%) rotate(45deg)}
.faq details[open] summary::after{transform:translateY(-30%) rotate(-135deg)}
.faq details > p{padding:0 0 22px;max-width:40em}

.draft{display:inline-block;font-size:14px;font-weight:500;letter-spacing:.06em;color:#8A6D1F;background:#FFF6D8;border:1px dashed #C9A640;border-radius:3px;padding:0 6px;margin-left:8px;vertical-align:2px;white-space:nowrap;font-family:var(--sans)}

.contact-band{background:var(--sakura);padding:64px 0}
.contact-band .wrap{display:grid;grid-template-columns:224px minmax(0,1fr);gap:64px;align-items:center}
.contact-band h2{font-family:var(--serif);font-weight:600;font-size:24px;line-height:1.55}

/* footer */
.foot{background:var(--sumi);color:#EDEBE9;padding:64px 0;font-size:17px}
.foot-grid{display:grid;grid-template-columns:5fr 3fr 4fr;gap:32px}
.foot .brand-mark{background:#EDEBE9;display:block}
.foot h2{font-family:var(--serif);font-weight:600;font-size:20px;letter-spacing:.1em;margin:16px 0 12px}
.foot dl{margin:0;display:grid;grid-template-columns:3.5em 1fr;row-gap:4px}
.foot dt{color:#B9B5B2}
.foot dd{margin:0;font-variant-numeric:tabular-nums}
.foot nav a{display:block;text-decoration:none;padding:5px 0}
.foot nav a:hover{text-decoration:underline;text-underline-offset:.3em}
.foot-tel{display:block;text-decoration:none;font-size:28px;font-weight:500;letter-spacing:.03em;margin:6px 0 4px;font-variant-numeric:tabular-nums}
.group{color:#B9B5B2;font-size:14px;margin-top:20px}
.foot small{display:block;margin-top:48px;color:#B9B5B2;font-size:14px}

.mbar{display:none}

@media (max-width:1080px){
  .gnav,.head-tel{display:none}
  .mobile-menu{display:block;margin-left:auto}
  .mobile-menu summary{list-style:none;cursor:pointer;padding:8px 14px;border:1px solid var(--rule);border-radius:6px;font-size:17px;font-weight:500}
  .mobile-menu summary::-webkit-details-marker{display:none}
  .mobile-menu nav{position:absolute;top:100%;left:var(--gutter);right:var(--gutter);padding:8px 20px;background:var(--card);border:1px solid var(--rule)}
  .mobile-menu nav a{display:block;padding:13px 0;text-decoration:none;border-bottom:1px solid var(--rule)}
  .mobile-menu nav a:last-child{border-bottom:0}
  .block{grid-template-columns:180px minmax(0,1fr);gap:40px}
}
@media (max-width:860px){
  :root{--gutter:20px;--section:56px;--block:40px}
  body{letter-spacing:.01em}
  main [id],footer[id]{scroll-margin-top:76px}
  .pc{display:none}
  .site-head .wrap{height:64px;gap:12px}
  .brand{gap:10px}
  .brand-mark{width:42px;height:30px}
  .brand-name{font-size:17px}
  .brand-name small{font-size:14px}
  .h2{font-size:24px}
  .hero{padding-top:24px}
  .hero-grid{grid-template-columns:minmax(0,1fr);grid-template-rows:auto;grid-template-areas:"title" "visual" "after";gap:20px}
  .hero-text{padding-top:0}
  .hero-place{font-size:14px;margin-bottom:12px}
  .hero h1{font-size:clamp(23px,7vw,28px);line-height:1.6;letter-spacing:.02em}
  .hero-visual{grid-template-columns:minmax(0,1fr);gap:4px}
  .hero-photo img{aspect-ratio:4/3;object-position:30% 60%}
  .tategaki{writing-mode:horizontal-tb;font-size:18px;letter-spacing:.06em;margin-top:14px;justify-self:start}
  .tategaki br{display:none}
  .hero-cta{margin-top:24px}
  .hero-cta .btn{width:100%}
  .promise-main{padding:28px 0 32px}
  .promise-q{font-size:17px}
  .promise-a{font-size:28px;line-height:1.6}
  .promise-pair{grid-template-columns:1fr}
  .promise-pair > div{padding:24px 0}
  .promise-pair dd b{font-size:18px}
  .related{flex-direction:column;gap:4px}
  .related a{padding:6px 0}
  .area-grid,.eye,.sec-head,.cost-summary,.contact,.story-grid,.foot-grid,.split,.contact-band .wrap{grid-template-columns:minmax(0,1fr)}
  .area-grid{gap:32px}
  .map{padding:12px 8px 12px}
  .map figcaption{padding:0 8px}
  .eye{gap:28px}
  .eye > figure img{aspect-ratio:4/3.4}
  .eye > div{padding-top:0}
  .sec-head{gap:10px;margin-bottom:28px}
  .steps{grid-template-columns:1fr;gap:24px}
  .cost-summary{margin-top:48px}
  .cost-label{grid-row:auto;margin-bottom:4px}
  .cost-figure b{font-size:36px}
  .contact{margin-top:48px;gap:16px}
  .contact-body .btn{width:100%}
  .years-row{grid-template-columns:1fr;gap:0;margin-top:24px}
  .years-row li{display:grid;grid-template-columns:auto minmax(0,1fr);gap:20px;align-items:baseline;padding:16px 0;border-top:1px solid var(--rule)}
  .years-row li:first-child{border-top-color:var(--sumi)}
  .yr{font-size:28px}
  .years-row p{margin-top:0}
  .split > section,.split > section + section{padding:40px 0;border-left:0}
  .split > section + section{border-top:1px solid var(--rule)}
  .page-head{padding:28px 0 36px}
  .page-head h1{font-size:28px}
  .toc{gap:2px 20px;margin-top:20px}
  .toc a{display:inline-block;padding:6px 0}
  .block{grid-template-columns:minmax(0,1fr);gap:16px}
  .block > h2{font-size:24px}
  .block--story > h2{margin-bottom:20px}
  .story-grid{gap:24px}
  .rows > div{grid-template-columns:1fr;gap:2px}
  .weeks{grid-template-columns:1fr 1fr}
  .weeks li{min-height:104px}
  .weeks li:nth-child(2){border-right:0}
  .weeks li:nth-child(3){padding-left:0}
  .weeks li:nth-child(n+3){border-top:1px solid var(--rule)}
  table.fee--medical{table-layout:fixed;font-size:14px}
  .fee--medical th,.fee--medical td{padding:14px 8px;vertical-align:top}
  .fee--medical col.c1{width:36%}.fee--medical col.c2{width:34%}.fee--medical col.c3{width:30%}
  .fee--medical thead th{font-size:14px}
  .fee--medical .num{white-space:normal}
  .fee-range > span{display:block}
  .contact-band{padding:48px 0}
  .contact-band .wrap{gap:16px;padding:0 var(--gutter)}
  .contact-band .btn{width:100%}
  .foot{padding:48px 0 120px}
  .mbar{display:grid;grid-template-columns:1fr 1fr;position:fixed;left:0;right:0;bottom:0;z-index:30;background:var(--card);border-top:1px solid var(--rule);padding:8px 12px calc(8px + env(safe-area-inset-bottom));gap:8px;transform:translateY(110%);transition:transform .2s;visibility:hidden}
  .mbar.is-on{transform:none;visibility:visible}
  .mbar a{min-height:48px;font-size:17px;padding:0 10px}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.mbar,.site-head{transition:none}}

/* ===== round 3 ===== */
@media (min-width:1081px){
  .block,.contact-band .wrap{grid-template-columns:256px minmax(0,1fr);gap:32px}
}
.block > h2{letter-spacing:.025em}
.block--story > .story-grid{width:100%;max-width:none}
.story-grid{grid-template-columns:minmax(0,440px) minmax(0,1fr);gap:56px}
.story-copy{max-width:32em;line-height:1.8}
.hero h1{font-size:36px;line-height:1.55;letter-spacing:.025em}
.hero-lead{max-width:none;line-height:1.85}
.promise-a{font-size:34px;line-height:1.6;letter-spacing:.025em}
.page-head h1{letter-spacing:.035em}
.hero-shortcuts{display:flex;flex-wrap:wrap;gap:8px 24px;flex-basis:100%;font-size:17px}
.hero-shortcuts a{color:var(--beni);font-weight:500;text-underline-offset:.3em}
.values-copy{margin-top:32px;max-width:36em}
.values-copy section + section{margin-top:28px}
.values-copy h3{margin:0 0 6px;font-family:var(--serif);font-weight:600;font-size:20px}
.page-partners .rows > div{padding:16px 0}
.page-partners .rows dd{line-height:1.75}
.page-recruit .block:not(.block--story) > div{max-width:38em}
.rows > div{grid-template-columns:11em 1fr}
.fee-scroll-hint{display:none}
.map-heading{margin-bottom:12px;font-size:17px;font-weight:500}
.map-route-note{display:none}
.contact-body{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:20px 32px;align-items:center}
.contact-body > p{grid-column:1 / -1;max-width:36em}
.contact-body > .btn{grid-column:1}
.contact-body > .tel-block{grid-column:2}
.page-partners .contact-band,.page-recruit .contact-band{background:var(--paper);border-top:1px solid var(--rule)}
@media (max-width:860px){
  .hero-grid{grid-template-areas:"title" "visual" "action" "lead";row-gap:20px}
  .hero-after{display:contents}
  .hero-cta{grid-area:action;margin-top:0;gap:12px}
  .hero-lead{grid-area:lead}
  .hero h1{font-size:clamp(23px,7vw,28px);line-height:1.55;letter-spacing:.01em}
  .promise-a{font-size:24px;line-height:1.6}
  .story-grid{grid-template-columns:minmax(0,1fr);gap:24px}
  .rows > div{grid-template-columns:1fr}
  .fee-scroll-hint{display:block;margin:10px 0 8px;font-size:14px;color:var(--sumi-soft)}
  table.fee--medical{min-width:580px;table-layout:fixed;font-size:17px}
  .fee--medical col.c1{width:40%}.fee--medical col.c2{width:30%}.fee--medical col.c3{width:30%}
  .fee--medical th,.fee--medical td{padding:14px 12px}
  .fee--medical thead th{font-size:14px}
  .fee--medical .num{white-space:nowrap}
  .fee--medical .fee-range{white-space:nowrap}
  .fee--medical .fee-range > span{display:inline}
  .eye > figure{width:100%;max-width:360px;margin-inline:auto}
  .eye > figure img{aspect-ratio:3/4;object-position:40% 50%}
  .map-route-labels{display:none}
  .map-stations{font-size:24px}
  .map-clinic{font-size:28px}
  .map-route-note{display:block;margin:8px 8px 0;font-size:14px;color:var(--sumi-soft)}
  .contact-body{grid-template-columns:minmax(0,1fr);gap:16px}
  .contact-body > p,.contact-body > .btn,.contact-body > .tel-block{grid-column:1}
}

/* ===== round 4 ===== */
.fee-list{margin:16px 0 0;border-top:1px solid var(--sumi)}
.fee-item{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:24px;padding:18px 0;border-bottom:1px solid var(--rule);align-items:baseline}
.fee-item dt{font-weight:500}
.fee-item dd{margin:0}
.fee-key{display:block;margin-bottom:2px;font-size:14px;color:var(--sumi-soft)}
.fee-value{font-size:18px;font-variant-numeric:tabular-nums}
.fee-value small{font-size:14px;margin-left:2px}
.family-index{margin-top:32px}
.family-index-label{font-size:14px;color:var(--sumi-soft)}
.family-index ul{display:flex;flex-wrap:wrap;list-style:none;padding:0;gap:4px 28px}
.family-index-main{margin:8px 0 0;font-size:18px;font-weight:700}
.family-index-sub{margin:10px 0 0;font-size:17px}
.family-index a{display:inline-block;padding-block:6px;color:var(--beni);text-underline-offset:.3em}
.page-recruit .block:not(.block--story) > div{max-width:none}
.page-recruit .block:not(.block--story) > div > p{max-width:38em}
.page-recruit .block .statement{max-width:22em}
.page-about #values{padding-block:72px}
.page-about #access,.page-partners #docs{padding-block:40px}
.eye{grid-template-areas:"photo title" "photo copy";grid-template-rows:auto 1fr;gap:24px 72px}
.eye > .h2{grid-area:title;margin:20px 0 0}
.eye > figure{grid-area:photo}
.eye > .eye-copy{grid-area:copy;padding-top:0;max-width:32em}
.hero-origin{display:block;margin-top:4px;color:var(--sumi);font-size:14px;font-weight:500}
.yr{font-size:48px}
.years-row li:last-child .yr{color:var(--sumi)}
.map-heading{font-size:17px;font-weight:700}
.map figcaption{padding-top:12px;border-top:1px solid var(--rule)}
.hero-photo img{aspect-ratio:4/4.3;object-position:4% 60%}
@media (min-width:861px){
  .page-partners #offer .rows > div{grid-template-columns:12em minmax(0,1fr);column-gap:24px}
}
@media (min-width:861px) and (max-width:1080px){
  .story-grid{grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:32px}
  .story-copy{max-width:none;font-size:17px}
  .hero-grid{gap:24px 32px}
  .hero-text{padding-top:24px}
  .hero h1{font-size:clamp(27px,3.1vw,33px)}
  .hero-visual{gap:12px}
  .tategaki{font-size:20px}
  .contact-band .wrap{grid-template-columns:180px minmax(0,1fr);gap:32px}
  .contact-body{grid-template-columns:minmax(0,1fr)}
  .contact-body > .btn,.contact-body > .tel-block{grid-column:1;justify-self:start}
}
@media (max-width:860px){
  .fee-item{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:8px 16px}
  .fee-item dt{grid-column:1 / -1}
  .fee-value{font-size:17px}
  .page-about #values{padding-block:48px}
  .page-about #access,.page-partners #docs{padding-block:32px}
  .eye{grid-template-areas:"title" "photo" "copy";grid-template-rows:auto;gap:24px}
  .eye > .h2{margin:0}
  .eye > figure{max-width:300px;margin-inline:auto}
  .hero-origin{font-size:14px}
  .hero-photo img{aspect-ratio:4/3;object-position:20% 60%}
}

/* ===== round 5 ===== */
.fee-columns{display:none}
.fee-item > dd:first-of-type .fee-value{font-size:18px;font-weight:700}
.fee-item > dd:last-of-type .fee-value{color:var(--sumi-soft)}
.page-recruit .block:not(.block--story) > div > p.statement{max-width:22em;text-wrap:pretty}
.page-partners #offer .rows dt{line-height:1.65}
.block .steps h3{margin:0 0 8px;font-family:var(--serif);font-size:20px;font-weight:600;line-height:1.6}
.block .steps li{padding-top:18px;border-top:1px solid var(--rule)}
.block .steps li:first-child{border-top-color:var(--sumi)}
.access-tel{display:inline-block;padding-block:6px;text-underline-offset:.25em;text-decoration-thickness:1px;font-variant-numeric:tabular-nums}
@media (min-width:861px){
  .fee-columns{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:24px;margin-top:16px;padding-bottom:10px;font-size:14px;color:var(--sumi-soft)}
  .fee-columns + .fee-list{margin-top:0}
  .fee-item{padding-block:16px}
  .fee-key{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
}
@media (max-width:860px){
  .family-index .family-index-main{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;font-size:17px}
  .family-index-main a{display:flex;align-items:center;min-height:44px;white-space:nowrap}
  .family-index-sub{font-size:14px}
}
@media (max-width:359px){
  .family-index .family-index-main{grid-template-columns:1fr;gap:0}
}

/* ===== round 6 ===== */
.fee-age{margin-top:32px}
.fee-age > summary{font-size:18px;font-weight:700;cursor:pointer;list-style:none;position:relative;padding-right:32px}
.fee-age > summary::-webkit-details-marker{display:none}
.fee-age > summary::after{content:"";position:absolute;right:6px;top:50%;width:9px;height:9px;border-right:1.5px solid var(--sumi);border-bottom:1.5px solid var(--sumi);transform:translateY(-70%) rotate(45deg)}
.fee-age[open] > summary::after{transform:translateY(-30%) rotate(-135deg)}
.promise-detail{display:block;width:fit-content;margin-top:12px;color:var(--beni);font-size:17px;font-weight:500;text-underline-offset:.3em;text-decoration-thickness:1px}
.block > div{min-width:0;max-width:none}
.block > div > p{max-width:40em}
.statement-phrase{display:inline-block}
@media (max-width:860px){
  .fee-age{margin-top:0}
  .fee-age:first-of-type{margin-top:24px;border-top:1px solid var(--sumi)}
  .fee-age > summary{padding:16px 32px 16px 0;border-bottom:1px solid var(--rule)}
  .fee-age-body{padding-top:4px}
  .fee-age .fee-list{border-top:0}
  .page-partners .care-table tr{display:grid;grid-template-columns:minmax(0,1fr);padding:16px 0;border-bottom:1px solid var(--rule)}
  .page-partners .care-table th,.page-partners .care-table td{display:block;width:auto;padding:0;border-bottom:0}
  .page-partners .care-table th{margin-bottom:4px;font-weight:700}
}

/* ===== round 7 ===== */
.promise-cost-note{margin-top:8px;font-size:17px;line-height:1.8;color:var(--sumi-soft)}
.fee-age > summary:focus-visible{outline:2px solid var(--beni);outline-offset:4px}
.fee-open-guide{display:none}
@media (max-width:860px){
  .fee-open-guide{display:block;margin-top:20px;font-size:14px;line-height:1.7;color:var(--sumi-soft)}
  .fee-age:first-of-type{margin-top:12px}
  .map-stations{font-size:28px}
  .map-clinic{font-size:28px}
  .map-road{font-size:24px}
  .page-index .related{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:4px 24px;margin-top:20px}
  .page-index .related a{display:flex;align-items:center;min-height:44px;padding-block:6px}
  .page-index .related a:last-child{grid-column:1 / -1}
}
@media (max-width:359px){
  .site-head .wrap{gap:8px}
  .brand{gap:8px}
  .brand-mark{width:32px;height:26px}
  .brand-name{font-size:14px}
  .brand-name small{font-size:14px}
  .mobile-menu summary{display:flex;align-items:center;min-height:44px;padding:8px 10px;font-size:14px}
}

/* ===== final polish ===== */
@media (min-width:861px){.fee-age > summary{display:flex;align-items:center;min-height:44px;padding-block:6px}}
@media (max-width:1080px){.mobile-menu nav{max-height:calc(100dvh - 76px);overflow-y:auto;overscroll-behavior:contain}}

/* ===== お知らせ・ブログ ===== */
.news-band{padding:56px 0 8px}
.news-band-grid{display:grid;grid-template-columns:4fr 8fr;column-gap:56px;align-items:start}
.news-band h2{font-size:17px;font-weight:700;letter-spacing:.08em;color:var(--beni);padding-top:14px}
.news-band .news-more{grid-column:2;margin-top:14px}
.news-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--sumi)}
.news-item{border-bottom:1px solid var(--rule)}
.news-item a{display:grid;grid-template-columns:8.5em 5em minmax(0,1fr);gap:16px;align-items:baseline;padding:14px 0;text-decoration:none}
.news-item a:hover .news-title{color:var(--beni);text-decoration:underline;text-underline-offset:.3em;text-decoration-thickness:1px}
.news-item time{font-size:17px;color:var(--sumi-soft);font-variant-numeric:tabular-nums}
.news-cat{font-size:14px;color:var(--sumi-soft)}
.news-title{font-weight:500}
.news-pin{display:inline-block;font-size:14px;font-weight:700;color:var(--beni);border:1px solid var(--beni);border-radius:3px;padding:0 6px;margin-right:10px;vertical-align:2px}
.news-tabs{display:flex;gap:28px;margin-top:28px}
.news-tabs a{text-decoration:none;font-weight:500;padding-bottom:4px;border-bottom:1px solid transparent}
.news-tabs a[aria-current="page"]{color:var(--beni);border-bottom-color:var(--beni)}
.news-wrap{padding-block:48px var(--section)}
.news-list--page .news-item a{padding:20px 0}
.news-empty{color:var(--sumi-soft);padding:24px 0}
.pager{display:flex;justify-content:space-between;align-items:center;margin-top:32px;font-size:17px}
.pager a{color:var(--beni);font-weight:500;text-underline-offset:.3em}
.preview-note{background:#FFF6D8;border-bottom:1px solid #E9D795;color:#6B5518;text-align:center;padding:8px 16px;font-size:14px;font-weight:500}
.post-head{padding-top:48px;max-width:calc(40em + var(--gutter)*2)}
.post-meta{display:flex;gap:16px;align-items:baseline;font-size:17px;color:var(--sumi-soft)}
.post-head h1{font-family:var(--serif);font-weight:600;font-size:34px;line-height:1.55;letter-spacing:.03em;margin-top:12px;font-feature-settings:"palt"}
.post-cover{margin-top:36px;max-width:calc(40em + var(--gutter)*2)}
.post-cover img{width:100%;aspect-ratio:16/10;object-fit:cover}
.post-body{max-width:calc(40em + var(--gutter)*2);padding-block:36px 8px;font-size:18px;line-height:2}
.post-body p+p,.post-body p+ul,.post-body ul+p{margin-top:1.2em}
.post-body h2{font-family:var(--serif);font-weight:600;font-size:24px;line-height:1.6;margin:2em 0 .6em;font-feature-settings:"palt"}
.post-body ul{padding-left:1.2em;margin:1em 0}
.post-body a{color:var(--beni);text-underline-offset:.3em;overflow-wrap:anywhere}
.post-fig{margin:2em 0}
.post-fig img{width:100%;height:auto}
.post-foot{max-width:calc(40em + var(--gutter)*2);padding-bottom:var(--section)}
@media (max-width:860px){
  .news-band{padding-top:40px}
  .news-band-grid{grid-template-columns:minmax(0,1fr)}
  .news-band h2{padding:0 0 12px}
  .news-band .news-more{grid-column:1}
  .news-item a{grid-template-columns:auto 1fr;gap:2px 12px}
  .news-item .news-title{grid-column:1 / -1}
  .post-head{padding-top:28px}
  .post-head h1{font-size:24px}
  .post-cover{margin-top:24px}
  .post-body{font-size:17px;line-height:1.95}
}

/* ===== Wixから活かした要素（2026-10-04） ===== */
.form-link{flex-basis:100%;grid-column:1 / -1;font-size:17px;color:var(--beni);font-weight:500;text-underline-offset:.3em;text-decoration-thickness:1px;justify-self:start}
.area{position:relative;padding-top:calc(var(--section) + 40px)}
.wave{position:absolute;left:0;right:0;top:0;width:100%;height:110px;display:block}
.map-embed{margin-top:20px;border:1px solid var(--rule);aspect-ratio:16/9;max-width:640px}
.map-embed iframe{width:100%;height:100%;border:0;display:block}
.notice-list{margin:12px 0 0;padding-left:1.2em}
.notice-list li{padding:4px 0}
.page-notice .block > div > p a,.page-about .note a{color:var(--beni);text-underline-offset:.3em}
@media (max-width:860px){
  .wave{height:64px}
  .area{padding-top:calc(var(--section) + 24px)}
  .map-embed{aspect-ratio:4/3}
}
/* s2 */
.cost-followup{margin-top:32px;padding-top:20px;border-top:1px solid var(--rule);font-size:17px}
.cost-followup p{color:var(--sumi-soft)}
.cost-followup a{display:inline-block;margin-top:8px;color:var(--beni);font-weight:500;text-underline-offset:.3em}
.amount-unit{display:inline-block;white-space:nowrap;font-variant-numeric:tabular-nums}
.access-map{margin-top:24px}
.access-map-link{color:var(--beni);font-weight:500;text-underline-offset:.3em}
.access-map-details{margin-top:12px}
.access-map-details summary{width:fit-content;padding-block:8px;cursor:pointer;font-size:17px}
.access-map-details .map-embed{margin-top:12px;width:100%;max-width:640px}
.contact-form{grid-column:1 / -1;flex-basis:100%;min-width:0}
.contact-form .form-link{display:inline-block;padding-block:8px}
.contact-form small{display:block;color:var(--sumi-soft);font-size:14px;line-height:1.65}
.page-notice .block{padding-block:36px}
.page-notice .block > h2{font-size:20px;line-height:1.6}
.page-notice .block > div > p{max-width:42em}
.news-item a{grid-template-columns:8.5em 7em minmax(0,1fr)}
.news-cat{display:flex;flex-direction:column;align-items:flex-start;gap:4px}
.news-pin{margin:0;white-space:nowrap}
.pinned-strip{padding:20px 0 0}
.pinned-strip .wrap > a{display:flex;flex-wrap:wrap;gap:4px 14px;align-items:baseline;padding:14px 18px;border:1px solid var(--beni);border-left-width:4px;text-decoration:none;background:var(--card)}
.pinned-strip b{color:var(--beni);font-size:14px;white-space:nowrap}
.pinned-strip span{font-weight:500}
.pinned-strip a:hover span{text-decoration:underline;text-underline-offset:.3em}
@media (max-width:860px){
  .page-notice .block{padding-block:28px;gap:12px}
  .page-notice .block > h2{font-size:20px}
  .page-family #who .rows > div{padding-block:14px;gap:4px}
  .page-family #who .rows dd{line-height:1.75}
  .news-item a{grid-template-columns:auto minmax(0,1fr);gap:6px 12px}
  .news-cat{flex-direction:row;flex-wrap:wrap;align-items:center;gap:4px 8px}
}
/* s3 */
.page-family #cost .fee-group-title{margin:28px 0 8px;font-size:18px;line-height:1.65}
.page-family #cost .fee-group-title--extra{margin-top:36px}
.page-family #care-fee + p + .scroll .fee thead th{background:transparent;border-block:1px solid var(--rule)}
.fee-open-guide{display:block}
.promise-cost-condition{display:block;margin-bottom:4px;font-size:17px;line-height:1.7}
.news-band{padding:40px 0 40px}
.news-band .news-more{margin-top:18px}
.contact-form .form-link{padding-block:6px;line-height:1.6}
.contact-form small{margin-top:2px}
.steps.steps--partner{grid-template-columns:minmax(0,1fr);gap:0;margin:0}
.page-partners .steps--partner li{padding:20px 0}
.page-partners .block .steps--partner h3{font-family:var(--sans);font-size:18px;font-weight:700;margin-bottom:6px}
.steps--partner p{line-height:1.75}
@media (max-width:860px){
  .fee-group-title + .fee-open-guide{margin-top:0}
  .news-band{padding:32px 0}
  .page-partners .steps--partner li{padding-block:18px}
  .pinned-strip .wrap > a{padding:12px 14px;gap:4px 12px;border-left-width:3px}
  .pinned-strip b{font-size:14px}
  .pinned-strip span{font-size:17px;line-height:1.65}
  .toc a,.family-index-sub a{display:inline-flex;align-items:center;min-height:44px;padding-block:6px}
}
/* final */
.promise-cost-note{display:block;margin-top:6px}
.facts li span{color:inherit}
.facts li > span:first-child{color:var(--sumi-soft)}
@media (min-width:861px){.fee-open-guide{display:none}}
@media (max-width:860px){.hero-shortcuts a,.contact-form .form-link{display:inline-flex;align-items:center;min-height:44px}}

/* ---- 施設基準・掲示事項：記入枠 ---- */
.notice-updated{margin-top:10px;font-size:14px;color:var(--sumi-soft)}
.notice-fill{background:#FFF6D8;border-bottom:1px dashed #C9A640;color:#6B5418;padding:0 4px;font-family:var(--sans)}
p.notice-fill{display:block;padding:10px 12px;margin-top:12px;font-size:17px}
.notice-table{width:100%;border-collapse:collapse;margin-top:14px;font-size:17px;line-height:1.7}
.notice-table th,.notice-table td{border-bottom:1px solid var(--rule);padding:12px 10px 12px 0;text-align:left;vertical-align:top}
.notice-table thead th{font-weight:500;font-size:14px;color:var(--sumi-soft);border-bottom-width:2px}
.notice-table .num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;padding-right:0}
.page-notice .rows small{display:block;margin-top:4px;font-size:14px;color:var(--sumi-soft)}
@media (max-width:860px){
  .notice-table{font-size:14px}
  .notice-table th,.notice-table td{padding:10px 8px 10px 0}
  .notice-table .num{white-space:normal}
}

/* 見出しの下の、訪問診療とは何かの一文 */
.hero-def{margin-top:20px;font-size:18px;line-height:1.85;max-width:22em;color:var(--sumi)}
@media (max-width:860px){.hero-def{margin-top:14px;font-size:18px}}

/* 読みにくかった補足の文字を、ひと回り大きく濃く（本人の目線の指摘） */
.cap,figcaption{font-size:17px;color:#4A4E4C}
.tel-block span{font-size:17px;color:var(--sumi)}
.promise-std{font-size:17px;color:#4A4E4C;border-left:3px solid var(--sakura-line);padding-left:12px;border-radius:0}

/* 選ぶ理由の3点を、見出しのすぐ下に（スマホでは写真より前） */
.hero-points{list-style:none;margin:20px 0 0;padding:0;border-top:1px solid var(--rule)}
.hero-points li{padding:10px 0 10px 1.4em;border-bottom:1px solid var(--rule);font-size:17px;line-height:1.7;position:relative}
.hero-points li::before{content:"";position:absolute;left:2px;top:1.15em;width:8px;height:8px;border-radius:50%;background:var(--beni)}
@media (max-width:860px){
  .hero-grid{grid-template-areas:"title" "lead" "points" "action" "visual"}
  .hero-points{grid-area:points;margin-top:0}
  .hero-lead{margin-top:-4px}
}

/* 縦書きの標語を外したので、写真を全幅に */
.hero-visual{grid-template-columns:minmax(0,1fr)}

/* 目的から探す（家族向けQ&Aの後ろに、小さく） */
.purpose{padding:8px 0 56px}
.purpose-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 40px;margin-top:20px;border-top:1px solid var(--sumi)}
.purpose-grid nav{display:flex;flex-direction:column;padding-top:16px}
.purpose-grid h3{font-size:17px;font-weight:700;margin:0 0 6px;color:var(--sumi)}
.purpose-grid a{color:var(--beni);font-weight:500;font-size:17px;text-underline-offset:.35em;text-decoration-thickness:1px;padding:6px 0;min-height:44px;display:flex;align-items:center}
@media (max-width:860px){
  .purpose{padding:0 0 40px}
  .purpose-grid{grid-template-columns:minmax(0,1fr);gap:0}
  .purpose-grid nav{padding:14px 0 6px;border-bottom:1px solid var(--rule)}
  .purpose-grid a{min-height:40px;padding:4px 0}
}

/* はじめての方へのQ&Aが3つになったので、広い画面は3列に（空白を作らない） */
@media (min-width:1081px){.promise-pair{grid-template-columns:repeat(3,minmax(0,1fr));gap:0 40px}}
@media (min-width:861px) and (max-width:1080px){.promise-pair > div:nth-child(3){grid-column:1 / -1}}
.purpose-grid a.purpose-key{font-weight:700}

/* 事業所向け：冒頭の2つの入口 */
.partner-lead{margin:18px 0 6px;font-family:var(--serif);font-size:24px;line-height:1.7;letter-spacing:.03em}
.partner-lead b{display:block;font-weight:600}
@media (max-width:860px){.partner-lead{font-size:20px;margin-top:12px}}

/* ===== 2026-10-09 デザイン改め：背景の呼吸と、意味のある動き ===== */
/* 背景：はじめての方へを桜色の帯に。白→桜→白→桜（エリア）で章の区切りを見せる */
.page-index .promise{background:var(--sakura);padding-top:var(--section);padding-bottom:calc(var(--section) - 24px)}
.page-index .promise .promise-main{border-top-color:var(--beni)}
.page-index .promise .promise-pair > div{border-bottom-color:var(--sakura-line)}
@media (min-width:1081px){
  .promise-main{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);column-gap:64px;align-items:start}
  .promise-q{grid-column:1;grid-row:1}
  .promise-a{grid-column:1;grid-row:2;margin-top:6px}
  .promise-main .promise-sub{grid-column:2;grid-row:1 / span 2;margin-top:0}
}

/* ページを開いた瞬間（トップだけ）：見出しが一行ずつ現れ、写真は引き戸が開くように右から */
@media (prefers-reduced-motion:no-preference){
  .hero h1 .line{animation:line-in .9s cubic-bezier(.2,.7,.2,1) both}
  .hero h1 .line:nth-child(2){animation-delay:.14s}
  .hero-def,.hero-place{animation:fade-in .8s .35s ease both}
  .hero-after{animation:fade-in .8s .55s ease both}
  .hero-photo img{animation:door-open 1.25s .15s cubic-bezier(.65,0,.25,1) both}
  .hero-photo figcaption{animation:fade-in .6s 1.2s ease both}
}
@keyframes line-in{from{opacity:0;transform:translateY(.45em);clip-path:inset(0 0 100% 0)}to{opacity:1;transform:none;clip-path:inset(0 0 0 0)}}
@keyframes fade-in{from{opacity:0}to{opacity:1}}
@keyframes door-open{from{clip-path:inset(0 0 0 100%)}to{clip-path:inset(0 0 0 0)}}

/* 地図：見えたときに一度だけ、当院から輪が広がる＝ここから伺う */
.map-pulse{opacity:0;transform-origin:290px 226px;transform-box:view-box}
@media (prefers-reduced-motion:no-preference){
  .map.is-in .map-pulse{animation:pulse 2.4s .2s cubic-bezier(.2,.6,.3,1) 2 both}
  .map.is-in .map-pulse--2{animation-delay:1.1s}
}
@keyframes pulse{0%{opacity:.7;transform:scale(1)}100%{opacity:0;transform:scale(6)}}

/* 波：ほとんど気づかないほど、ゆっくり揺れる */
@media (prefers-reduced-motion:no-preference){
  .wave path:nth-child(2){animation:wave-drift 14s ease-in-out infinite alternate}
}
@keyframes wave-drift{from{transform:translateX(-24px)}to{transform:translateX(24px)}}

/* 操作に応える動き：質問や費用の表が、なめらかに開く */
@supports (interpolate-size:allow-keywords){
  :root{interpolate-size:allow-keywords}
  details::details-content{block-size:0;overflow:hidden;transition:block-size .35s ease,content-visibility .35s allow-discrete}
  details[open]::details-content{block-size:auto}
  .mobile-menu::details-content{transition:none;block-size:auto}
}
.faq summary::after{transition:transform .3s ease}

/* リンクとボタン：触れたときだけ、静かに応える */
a{transition:color .2s ease,text-decoration-color .2s ease}
.related a,.purpose-grid a,.promise-detail,.toc a{text-decoration-color:color-mix(in srgb,currentColor 45%,transparent)}
.related a:hover,.purpose-grid a:hover,.promise-detail:hover,.toc a:hover{text-decoration-color:currentColor;text-decoration-thickness:2px}
.btn{transition:background-color .2s ease,transform .12s ease}
.btn:active{transform:translateY(1px)}
:focus-visible{outline:2px solid var(--beni);outline-offset:3px}
.news-contact{margin:48px 0 0;padding:20px 0;border-top:1px solid var(--sumi);font-size:17px}
.news-contact a{display:block;font-size:24px;font-weight:700;color:var(--sumi);text-decoration:none;margin-top:4px;letter-spacing:.02em}
.news-contact span{display:block;font-size:14px;color:var(--sumi-soft)}

/* ===== 2026-10-09 デザイン2回目：章の性格で組み方を変える ===== */
/* 桜色の帯（横幅いっぱい）。章の区切りと呼吸をつくる */
.page-index .promise{background:none;padding-top:var(--section);padding-bottom:24px}
.page-index .promise-main,
.page-family #cost,.page-family #start,
.page-about #values,
.page-partners #night,
.page-recruit #mission,
.page-notice #n-hours{background:var(--sakura);box-shadow:0 0 0 100vmax var(--sakura);clip-path:inset(0 -100vmax)}
.page-index .promise-main{border-top:0;border-bottom:0;padding:48px 0}
.page-family #cost,.page-family #start,.page-about #values,.page-partners #night,.page-recruit #mission,.page-notice #n-hours{border-top-color:transparent}
.page-family #start{padding-top:0}
.page-partners .contact-band,.page-recruit .contact-band{background:var(--sakura);border-top:0}
.contact-band .wrap{align-items:start}

/* 段落と表・罫線のあいだを空ける（文字が罫線にくっつかないように） */
.block > div > p + :is(.rows,.notice-table,.care-table,table,dl,ol,ul),
.block > div > p + .scroll{margin-top:24px}

/* PC：左の章見出しは、読み進めても上に残る */
@media (min-width:1081px){
  .block > h2{position:sticky;top:104px;align-self:start}
}

/* トップ：Q&Aの各列のリンクを下端にそろえる */
.promise-pair > div{display:flex;flex-direction:column}
.promise-pair dd{display:flex;flex-direction:column;flex:1}
.promise-pair .promise-detail{margin-top:auto;padding-top:16px;align-self:flex-start}

/* 動きは「見出し」と「写真」の2つだけ。見出しは最初から読める、写真は0.6秒で開ききる */
@media (prefers-reduced-motion:no-preference){
  .hero-def,.hero-place,.hero-after,.hero-photo figcaption{animation:none}
  .hero h1 .line{animation:title-settle .32s ease-out both}
  .hero h1 .line:nth-child(2){animation-delay:.08s}
  .hero-photo img{animation:door-open .6s cubic-bezier(.22,1,.36,1) both}
}
@keyframes title-settle{from{transform:translateY(6px)}to{transform:none}}
@media (prefers-reduced-motion:reduce){
  .hero-photo img,.hero h1 .line{clip-path:none!important;transform:none!important;opacity:1!important}
}

/* スマホのトップ：見出し→選ぶ理由→相談→写真→エリア */
@media (max-width:860px){
  .hero-grid{grid-template-areas:"title" "points" "action" "visual" "lead"}
  .hero-lead{margin-top:0}
}

/* 家で受けられる診療：スマホは項目名を上、説明を下 */
@media (max-width:860px){
  .care-inline > div{grid-template-columns:minmax(0,1fr);gap:2px;padding:14px 0}
}

/* はじめての方へ：訪問診療とは の写真 */

/* 1か月の流れ：スマホは縦に、週を左に */
@media (max-width:860px){
  .weeks{grid-template-columns:minmax(0,1fr)}
  .weeks li,.weeks li + li,.weeks li:nth-child(3){display:grid;grid-template-columns:4.5em minmax(0,1fr);gap:12px;min-height:0;padding:14px 0;border-right:0;border-top:1px solid var(--rule)}
  .weeks li:first-child{border-top:0}
}

/* 私たちについて：大切にしていること はPCで3つを横に */
@media (min-width:1081px){
  .values-copy{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;max-width:none}
  .values-copy section + section{margin-top:0}
}
/* 年表：年が主役、説明は普通の太さ */
.timeline dd b{font-weight:500}
@media (max-width:860px){
  .timeline div{grid-template-columns:4.6em minmax(0,1fr);gap:16px}
  .day > div{grid-template-columns:4.2em minmax(0,1fr);gap:12px}
}

/* 事業所：冒頭の連絡欄をひとまとまりに。診療の内容はスマホでも2列 */
.page-partners .page-head .lines{background:#F6F4F2;padding:18px 22px;margin-top:24px}
@media (max-width:860px){
  .care-table th,.care-table td{display:table-cell}
  .care-table th{width:5.5em;font-size:17px;padding-right:12px}
}

/* 施設基準：スマホは名称→説明の縦積み。費用表は金額が折り返さない */
.notice-table .num{white-space:nowrap;padding-left:16px}
@media (max-width:860px){
  #n-std .notice-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  #n-std .notice-table,#n-std .notice-table tbody,#n-std .notice-table tr,#n-std .notice-table td{display:block;width:auto}
  #n-std .notice-table tr{padding:16px 0;border-bottom:1px solid var(--rule)}
  #n-std .notice-table td{padding:0;border:0}
  #n-std .notice-table td:first-child{font-weight:700;margin-bottom:6px;color:var(--sumi)}
}

/* お知らせ：行全体が押せることを、触れたときに示す */
@media (hover:hover){.news-list a:hover{background:#F5F2EC}}

/* フッター：スマホでは案内を2列にして短く */
@media (max-width:860px){
  .foot nav{display:grid;grid-template-columns:1fr 1fr;column-gap:20px}
  .foot nav a{min-height:44px;display:flex;align-items:center;padding:0}
  .foot small{margin-top:28px}
  .foot-grid{gap:28px}
}
.explain{margin-top:28px;padding:22px 24px;background:#F6F4F2}
.explain h3{margin:0 0 8px;font-size:17px;font-weight:700}
.explain ul{margin:0;padding-left:1.2em}
.explain li{padding:3px 0}
.explain p{margin-top:10px;font-size:17px}
.explain a{color:var(--beni);text-underline-offset:.3em}

/* ===== 2026-10-09 デザイン3回目：仕上げ ===== */
/* 帯の上下に残る灰色の線を消す（帯そのもの・帯の直前の区画） */
.page-family #cost,.page-family #start,.page-about #values,.page-partners #night,.page-recruit #mission,.page-notice #n-hours{border-bottom:0}
.block:has(+ #cost),.block:has(+ #values),.block:has(+ #night),.block:has(+ #mission),.block:has(+ #n-hours){border-bottom:0}
/* トップ：「はじめての方へ」の見出しも帯の中へ */
.page-index .promise > .wrap > .label{background:var(--sakura);box-shadow:0 0 0 100vmax var(--sakura);clip-path:inset(0 -100vmax);padding-top:48px;margin-bottom:0;border-bottom:1px solid var(--beni)}
.page-index .promise{padding-top:0}
/* 写真のある章では、見出しを追従させない（写真に重ならないように） */
@media (min-width:1081px){.block--story > h2{position:static}}
/* スマホのトップ：見出し→相談→写真→選ぶ理由→エリア */
@media (max-width:860px){
  .hero-grid{grid-template-areas:"title" "action" "visual" "points" "lead"}
  .hero-points{margin-top:4px}
}
/* はじめての方へ：病気の説明を段落に */
.rows dd p{margin:0}
.rows dd p + p{margin-top:12px}
/* 私たちについて：年表の説明は本文の太さ、スマホの時刻の列をさらに細く */
.timeline dd b{font-weight:400}
.timeline dt{font-weight:600}
@media (max-width:860px){.day > div{grid-template-columns:3.4em minmax(0,1fr);gap:12px}}
/* 事業所：見出しの対象者は小さく。冒頭の連絡欄は電話を主に */
.h2-sub{display:block;margin-top:6px;font-family:var(--sans);font-size:14px;font-weight:400;letter-spacing:.02em;color:var(--sumi-soft)}
.page-partners .page-head .lines div:first-child b{font-size:28px;font-weight:700}
.page-partners .page-head .lines div + div b{font-size:18px}
/* 事業所：診療の内容はスマホでも 項目名｜説明 の2列（古い指定より強く） */
@media (max-width:860px){
  .page-partners .care-table tr{grid-template-columns:5em minmax(0,1fr);column-gap:14px}
  .page-partners .care-table th{margin-bottom:0}
}
/* 施設基準：目次を列にそろえる。文章だけの段落は行の長さに上限 */
.page-notice .toc{display:grid;grid-template-columns:repeat(3,minmax(0,max-content));gap:4px 32px}
@media (max-width:860px){.page-notice .toc{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}}
.page-notice .block > div > p{max-width:38em}
.page-notice .block{scroll-margin-top:100px}
/* お知らせ：行が押せることを矢印で示す */
.news-list--page a{position:relative;padding-right:28px}
.news-list--page a::after{content:"";position:absolute;right:6px;top:50%;width:8px;height:8px;border-top:1.5px solid var(--beni);border-right:1.5px solid var(--beni);transform:translateY(-50%) rotate(45deg)}
/* フッター：余白を詰める */
.foot{padding:52px 0 40px}
@media (max-width:860px){.foot{padding:40px 0 112px}}
/* 動きを減らす設定では、開閉もすぐに */
@media (prefers-reduced-motion:reduce){details::details-content{transition:none!important}*{scroll-behavior:auto!important}}

/* ===== 2026-10-09 デザイン4回目：仕上げ ===== */
/* 章の終わりで罫線が2本並ばないように、最後の行の下線を消す */
.block > div > .rows:last-child > div:last-child,
.block > div > .timeline:last-child > div:last-child,
.block > div > .care-table:last-child tr:last-child > *,
.block > div > .notice-table:last-child tr:last-child > *{border-bottom:0}
/* 章見出しの頭に、紅の短い線（このサイトの印） */
.block > h2::before{content:"";display:block;width:28px;height:2px;background:var(--beni);margin-bottom:14px}
@media (max-width:860px){.block > h2::before{width:24px;margin-bottom:10px}}
/* トップ：Q&Aの区切りは灰色に、夜間の説明は段落ごとに */
.page-index .promise .promise-pair > div{border-bottom-color:var(--rule)}
.promise-sub p{margin:0}
.promise-sub p + p{margin-top:12px}
/* スマホのトップ：見出し→電話→写真→選ぶ理由→エリア→補助リンク */
@media (max-width:860px){
  .hero-grid{display:flex;flex-direction:column;gap:20px}
  .hero-after,.hero-cta{display:contents}
  .hero-text{order:1}
  .hero-cta .btn{order:2}
  .hero-cta .tel-block{order:3;margin-top:-8px}
  .hero-visual{order:4}
  .hero-points{order:5}
  .hero-lead{order:6}
  .hero-shortcuts{order:7}
}
/* はじめての方へ：費用の前提を短い行に、注意書きに小見出し */
.fee-cond p{margin:0}
.fee-cond-sub{font-size:17px;color:var(--sumi-soft);margin-top:4px!important}
.fee-note-t{margin:28px 0 4px;font-size:17px;font-weight:700}
.fee-note-t + .note{margin-top:0}
/* 採用：長い説明は段落に、短い行は余白を詰める */
.rows dd > p{margin:0}
.rows dd > p + p{margin-top:10px}
/* 事業所：長い行はスマホで縦積み。冒頭の連絡欄は桜色・内容の幅に。説明欄は罫線だけ */
@media (max-width:860px){
  .page-partners .care-table tr.long{grid-template-columns:minmax(0,1fr)}
  .page-partners .care-table tr.long th{margin-bottom:4px}
}
@media (min-width:861px){.page-partners .care-table th{width:12em}}
.page-partners .page-head .lines{background:var(--sakura);width:fit-content;max-width:100%}
.explain{background:none;border-top:1px solid var(--sumi);border-bottom:1px solid var(--rule);padding:18px 0}
.explain ul{list-style:none;padding:0}
.explain li{position:relative;padding:4px 0 4px 1.1em}
.explain li::before{content:"";position:absolute;left:0;top:.95em;width:6px;height:6px;border-radius:50%;background:var(--beni)}
/* 施設基準：帯の上で表の線が貼りつかないように */
.page-notice #n-std{padding-bottom:56px}
.page-notice #n-hours{padding-block:48px}
@media (max-width:860px){.page-notice #n-std{padding-bottom:40px}.page-notice #n-hours{padding-block:36px}}
.notice-list{margin:12px 0 20px}
/* 私たちについて：地図を開く印を、ほかと同じ形に */
.access-map-details summary{list-style:none;position:relative;padding-left:20px}
.access-map-details summary::-webkit-details-marker{display:none}
.access-map-details summary::before{content:"";position:absolute;left:2px;top:50%;width:7px;height:7px;border-right:1.5px solid var(--beni);border-bottom:1.5px solid var(--beni);transform:translateY(-70%) rotate(45deg);transition:transform .25s ease}
.access-map-details[open] summary::before{transform:translateY(-30%) rotate(-135deg)}
/* お知らせ：矢印は専用の場所に。急ぎの相談は桜色の帯に */
.news-list--page .news-item a{padding:20px 36px 20px 0}
.news-pin{white-space:nowrap}
.news-contact{background:var(--sakura);box-shadow:0 0 0 100vmax var(--sakura);clip-path:inset(0 -100vmax);border-top:0;padding:32px 0;margin-top:56px}
.page-head + .news-wrap .news-list{border-top-color:var(--sumi)}
.news-contact p{margin:0 0 12px;font-weight:500}
.news-contact .btn{display:inline-flex}
.news-contact a.news-contact-tel{display:block;font-size:24px;font-weight:700;color:var(--sumi);text-decoration:none;margin-top:12px;letter-spacing:.02em}
.news-contact span a{display:inline;font-size:inherit;font-weight:500;color:var(--beni);margin:0;text-decoration:underline;text-underline-offset:.3em}
/* 採用の問い合わせ欄：左に同じ幅のボタン、右に説明を2段 */
.contact-options{display:grid;grid-template-columns:minmax(0,1fr);gap:20px}
.contact-option{display:grid;grid-template-columns:20rem minmax(0,1fr);gap:24px;align-items:center}
.contact-option .btn{display:flex;justify-content:center;width:100%;min-height:54px;box-sizing:border-box;text-align:center}
.contact-desc{font-size:17px;color:var(--sumi-soft);line-height:1.7}
.contact-desc .contact-tel{display:block;font-size:24px;font-weight:700;color:var(--sumi);text-decoration:none;letter-spacing:.03em;line-height:1.4}
.contact-options > p{margin:0}
@media (max-width:860px){.contact-option{grid-template-columns:minmax(0,1fr);gap:8px}}

/* ===== 2026-10-09 デザイン5回目：講評役の細かな指摘 ===== */
/* はじめての方へ：介護保険の表の字下げをなくし、見出し行の下を墨の線に */
.page-family #care-fee ~ .scroll .fee :is(th,td){padding-inline:0}
.page-family #care-fee ~ .scroll .fee thead th{border-bottom:1px solid var(--sumi)}
/* 事業所：説明の書き出し位置をそろえる（項目名の列を同じ幅に） */
@media (min-width:861px){
  .page-partners .rows > div{grid-template-columns:200px minmax(0,1fr)}
  .page-partners .care-table th{width:200px;padding-right:24px;box-sizing:content-box}
}
/* トップ：説明文が変な位置で折れないように。見出しの強弱を一つに */
.hero-def{max-width:24em;word-break:auto-phrase}
@media (min-width:1081px){.hero h1{font-size:38px}.promise-a{font-size:28px}}
/* 施設基準：スマホの表の最後の線、表の頭に墨の線 */
@media (max-width:860px){
  #n-std .notice-table tr:last-child{border-bottom:0}
  #n-std .notice-table tbody{border-top:1px solid var(--sumi)}
}
/* お知らせ：帯の下の隙間、見出し区画と一覧の二重線、印を横並びに */
.news-wrap:has(> .news-contact:last-child){padding-bottom:0}
.news-wrap .news-list--page{border-top:0}
@media (min-width:861px){.news-list--page .news-cat{display:inline-flex;gap:10px;align-items:center;white-space:nowrap}}

/* ===== 2026-10-09 デザイン6回目：効いていなかった指定を確実に ===== */
.page-family #care-fee + p + .scroll .fee :is(th,td){padding-inline:0}
.page-family #care-fee + p + .scroll .fee thead th{border-bottom:1px solid var(--sumi)}
@media (min-width:861px){.page-partners #offer .rows > div,.page-partners #night .rows > div,.page-partners #docs .rows > div{grid-template-columns:200px minmax(0,1fr)}}
.news-list--page .news-cat{flex-direction:row;flex-wrap:nowrap}
@media (min-width:861px){.news-list--page .news-item a{grid-template-columns:9em 12em minmax(0,1fr)}}
.news-contact a.btn{font-size:17px;color:#fff;display:inline-flex;font-weight:700;margin-top:0;letter-spacing:.06em}
.nw{white-space:nowrap}

/* ===== 2026-10-09 デザイン7回目：講評役の5回目の指示 ===== */
/* トップ：年表を1本の時間の線に（「はじめるまで」と別の形） */
.years-row{gap:0;border-top:1px solid var(--sumi)}
.years-row li{border-top:0;padding:28px 32px 0 0;position:relative}
.years-row li::before{content:"";position:absolute;top:-7px;left:0;width:12px;height:12px;border-radius:50%;background:var(--card);border:2px solid var(--sumi);box-sizing:border-box}
.years-row li:last-child::before{background:var(--beni);border-color:var(--beni)}
@media (max-width:860px){
  .years-row{border-top:0;border-left:2px solid var(--sumi);margin-left:6px}
  .years-row li,.years-row li:first-child{grid-template-columns:4.2em minmax(0,1fr);padding:12px 0 12px 20px;border-top:0}
  .years-row li::before{top:26px;left:-8px}
}
.hero-origin{font-size:17px;font-weight:400}
@media (max-width:860px){.hero-origin{font-size:14px}.eye figure img{width:100%;max-width:none}}
/* はじめての方へ：介護保険の表を上の表と同じ顔に */
.page-family #care-fee + p + .scroll .fee thead th{border-top:0;border-bottom:1px solid var(--sumi);font-size:14px;font-weight:400;color:var(--sumi-soft);padding-block:0 10px}
.page-family #care-fee + p + .scroll .fee tbody th{font-weight:500}
.page-family #care-fee + p + .scroll .fee tbody td{font-weight:700}
@media (min-width:861px){
  .page-family #care-fee + p + .scroll .fee :is(thead th:first-child,tbody th){width:38.2%}
  .page-family #care-fee + p + .scroll .fee .num{text-align:left}
}
@media (max-width:860px){.weeks li{align-items:baseline}}
/* 私たちについて：スマホの1日を読みやすく、地図を開く行を押せる見た目に、住所を一段強く */
@media (max-width:860px){.day > div{grid-template-columns:3em minmax(0,1fr);gap:8px;padding-left:14px}}
.access-map-details summary{color:var(--beni);font-weight:500;padding-block:10px}
.page-about #access .rows > div:first-child dd{font-size:18px;font-weight:500}
/* 事業所：「お引き受けできること」の列幅を確実に */
@media (min-width:861px){.page-partners #offer .rows > div{grid-template-columns:200px minmax(0,1fr);column-gap:24px}}
/* 採用：院長からを桜の帯に、目指していることは白地＋墨の上罫線 */
.page-recruit .block--story{background:var(--sakura);box-shadow:0 0 0 100vmax var(--sakura);clip-path:inset(0 -100vmax);border-bottom:0}
.page-recruit .block:has(+ .block--story){border-bottom:0}
.page-recruit #mission{background:none;box-shadow:none;clip-path:none;border-top:1px solid var(--sumi)}
@media (min-width:861px){.contact-option{grid-template-columns:17rem minmax(0,1fr)}}
/* 施設基準：PCの表の名称の列を広く、見出し行の下を墨に。箇条書きの点を紅に */
@media (min-width:861px){
  .page-notice #n-std .notice-table td:first-child{width:19em}
  .page-notice #n-std .notice-table thead th{border-bottom:1px solid var(--sumi)}
}
.page-notice #n-fee .notice-table thead th{border-bottom:1px solid var(--sumi)}
.notice-list li::marker{color:var(--beni)}
/* お知らせ：印を種類の横に、急ぎの相談の説明の行長 */
@media (min-width:861px){
  .news-item a{grid-template-columns:8.5em 12em minmax(0,1fr)}
  .news-cat{display:flex;flex-direction:row;align-items:center;gap:8px;white-space:nowrap}
}
.news-contact span{display:block;max-width:38em}
/* 動きを減らす設定：開閉の印も止める */
@media (prefers-reduced-motion:reduce){.faq summary::after,.access-map-details summary::before{transition:none}}

/* ===== 2026-10-09 デザイン8回目 ===== */
/* トップ：スマホの年表で年号が説明に重ならないように */
@media (max-width:860px){
  .years-row li,.years-row li:first-child{grid-template-columns:88px minmax(0,1fr)}
  .years-row .yr{font-size:28px}
  .eye > figure{max-width:none}
  .eye > figure img{width:100%}
}
/* 私たちについて：高井戸での歩みも、トップと同じ時間の線（縦） */
.page-about .timeline{border-top:0;border-left:2px solid var(--sumi);margin-left:6px}
.page-about .timeline div{position:relative;padding-left:24px;border-bottom:0}
.page-about .timeline div::before{content:"";position:absolute;left:-8px;top:30px;width:12px;height:12px;border-radius:50%;background:var(--card);border:2px solid var(--sumi);box-sizing:border-box}
.page-about .timeline div:last-child::before{background:var(--beni);border-color:var(--beni)}
.page-about .timeline div:last-child dt{color:var(--beni)}
/* 施設基準：名称の列をさらに広く */
@media (min-width:861px){.page-notice #n-std .notice-table td:first-child{width:21em}}
/* 事業所：説明の字を墨に、スマホの表の組み方をそろえる */
.page-partners .care-table td{color:var(--sumi)}
@media (max-width:860px){.page-partners .care-table tr{padding:14px 0}.page-partners .care-table th{font-size:17px}}
/* お知らせ：種類の列は中身の幅に */
@media (min-width:861px){.news-item a{grid-template-columns:8.5em max-content minmax(0,1fr)}}

/* ===== 2026-10-09 デザイン9回目 ===== */
@media (min-width:861px){.news-item a{grid-template-columns:8.5em 160px minmax(0,1fr)}}
.news-contact .nw{display:inline}
.page-partners .page-head .lines{border-top:0}

/* ===== 図解：夜間の流れ・主治医との関係・はじめるまで・1か月 ===== */
.flow{margin:0}
.flow-steps{list-style:none;margin:0;padding:0;display:grid;gap:22px}
.flow-node{position:relative;background:var(--card);border:1px solid var(--sakura-line);padding:14px 16px;line-height:1.6}
.flow-node b{display:block;font-size:17px}
.flow-node span{display:block;font-size:17px;color:var(--sumi-soft);margin-top:2px}
.flow-node--key{border-color:var(--beni);border-left-width:4px}
.flow-steps > li:not(:last-child)::after{content:"";position:absolute;left:24px;bottom:-17px;width:10px;height:10px;border-right:2px solid var(--beni);border-bottom:2px solid var(--beni);transform:rotate(45deg)}
.flow-split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.flow figcaption{margin-top:14px;font-size:14px;color:var(--sumi-soft);line-height:1.7}
.page-index .promise .flow-node{background:var(--card)}
details .flow{margin:4px 0 22px}
@media (max-width:860px){.flow-split{grid-template-columns:minmax(0,1fr)}}

.relation{margin:0 0 32px;display:grid;grid-template-columns:minmax(0,1fr) 150px minmax(0,1fr);align-items:center;gap:0}
.rel-box{border:1px solid var(--rule);padding:16px 18px;line-height:1.6;background:var(--card)}
.rel-box b{display:block;font-size:17px}
.rel-box span{display:block;font-size:17px;color:var(--sumi-soft);margin-top:2px}
.rel-box--us{border-color:var(--beni);border-left-width:4px}
.rel-link{position:relative;text-align:center;font-size:14px;color:var(--beni);padding:0 10px 16px}
.rel-link::before{content:"";position:absolute;left:8px;right:8px;bottom:6px;border-top:2px dashed var(--beni)}
.rel-link::after{content:"";position:absolute;right:8px;bottom:2px;width:8px;height:8px;border-top:2px solid var(--beni);border-right:2px solid var(--beni);transform:rotate(45deg)}
.relation figcaption{grid-column:1 / -1;margin-top:12px;font-size:14px;color:var(--sumi-soft);line-height:1.7}
@media (max-width:860px){
  .relation{grid-template-columns:minmax(0,1fr)}
  .rel-link{padding:10px 0 10px 32px;text-align:left}
  .rel-link::before{left:16px;right:auto;top:0;bottom:0;border-top:0;border-left:2px dashed var(--beni)}
  .rel-link::after{left:12px;right:auto;top:auto;bottom:0;transform:rotate(135deg)}
}

/* はじめるまで：段と段を矢印でつなぐ */
.steps li{position:relative}
@media (min-width:861px){
  .steps:not(.steps--partner) li:not(:last-child)::after{content:"";position:absolute;right:-26px;top:-7px;width:10px;height:10px;border-top:2px solid var(--sumi);border-right:2px solid var(--sumi);transform:rotate(45deg);background:var(--paper)}
  .page-family .steps li:not(:last-child)::after{display:none}
}

/* 1か月の流れ：時間の線の上に、定期の訪問・電話・往診を置く */
.weeks{border-top:2px solid var(--sumi);margin-top:36px}
.weeks li{padding-top:22px}
.weeks li .ev{position:relative;display:inline-block;margin-top:6px}
.weeks li::before{content:"";position:absolute;top:-9px;left:0;width:16px;height:16px;border-radius:50%;background:var(--sumi);border:3px solid #fff;box-sizing:border-box}
.weeks li + li::before{left:16px}
.weeks li:has(.ev--call)::before{background:var(--card);border:2px solid var(--beni)}
.weeks li:last-child::before{border:2px dashed var(--beni);background:var(--card)}
.weeks-legend{display:flex;flex-wrap:wrap;gap:6px 20px;margin-top:12px;font-size:14px;color:var(--sumi-soft)}
.weeks-legend i{display:inline-block;width:12px;height:12px;border-radius:50%;vertical-align:-1px;margin-right:6px}
.weeks-legend .lg-visit{background:var(--sumi)}
.weeks-legend .lg-call{border:2px solid var(--beni);box-sizing:border-box}
.weeks-legend .lg-ojin{border:2px dashed var(--beni);box-sizing:border-box}
@media (max-width:860px){
  .weeks{border-top:0;border-left:2px solid var(--sumi);margin-left:6px}
  .weeks li,.weeks li + li{padding-left:24px}
  .weeks li::before,.weeks li + li::before{top:18px;left:-9px}
}
/* 1か月の流れ：古い飾り（縦の区切り・左の色線）を外し、週を上・中身を下に */
.weeks li{border-right:0;min-height:0;padding-bottom:4px}
.weeks .wk{display:block;font-size:14px;color:var(--sumi-soft)}
.weeks .ev,.weeks .ev.ev--call{display:block;border-left:0;padding-left:0;margin-top:4px;font-size:17px;font-weight:500;line-height:1.55}
.weeks li:has(.ev--call) .ev{color:var(--beni)}
@media (max-width:860px){
  .weeks li,.weeks li + li,.weeks li:nth-child(3),.weeks li:nth-child(n+3){display:block;border-top:0;padding:10px 0 14px 24px}
}
/* 関係図：矢印は「当院から今の主治医へ」 */
.rel-link::after{right:auto;left:8px;transform:rotate(-135deg)}
@media (max-width:860px){.rel-link::after{left:12px;top:0;bottom:auto;transform:rotate(-45deg)}}
/* 費用：毎月のお支払いの全体像 */
.pay-map{margin:28px 0 8px;display:grid;grid-template-columns:2fr 1fr 1fr;gap:12px}
.pay-col{background:var(--card);border:1px solid var(--rule);padding:14px 16px}
.pay-col--us{border-color:var(--beni);border-top-width:4px}
.pay-col b{display:block;font-size:17px;margin-bottom:6px}
.pay-col ul{margin:0;padding-left:1.1em;font-size:17px;line-height:1.7;color:var(--sumi)}
.pay-col li::marker{color:var(--beni)}
.pay-map figcaption{grid-column:1 / -1;font-size:14px;color:var(--sumi-soft)}
@media (max-width:860px){.pay-map{grid-template-columns:minmax(0,1fr)}}
/* 採用：冒頭の連絡ボタン、送ったあとの流れ */
.recruit-cta{display:flex;flex-wrap:wrap;gap:12px 16px;align-items:center;margin-top:24px}
.recruit-cta p{flex-basis:100%;margin:0;font-size:17px;color:var(--sumi-soft)}
@media (max-width:860px){.recruit-cta .btn{flex:1 1 100%}}
.flow--after{margin-top:8px}
.flow-steps--row{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.flow-steps--row > li:not(:last-child)::after{left:auto;right:-21px;bottom:auto;top:50%;transform:translateY(-50%) rotate(-45deg)}
@media (max-width:860px){.flow-steps--row{grid-template-columns:minmax(0,1fr);gap:22px}.flow-steps--row > li:not(:last-child)::after{right:auto;left:24px;top:auto;bottom:-17px;transform:rotate(45deg)}}
.flow-node span .draft,.flow-node .draft{display:inline-block;width:auto}

/* 2026-10-09 手描き風の図（はじめるまで） */
.sketch-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;position:relative}
.sketch-steps li{position:relative;text-align:left}
.sketch-steps li+li::before{content:"";position:absolute;left:-30px;top:44px;width:30px;height:16px;background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 70 30'%3E%3Cpath d='M4 18c18-8 38-9 58-3M54 8l9 7-10 6' fill='none' stroke='%23A64A29' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}
.sketch{display:block;width:150px;height:auto;margin:0 0 6px -10px}
.sk-s{fill:none;stroke:var(--sumi);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.sk-b{fill:none;stroke:var(--beni);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.sk-f{fill:#fff}
.block .sketch-steps li p{margin:0}
.block .sketch-steps li p.sk-hand{margin:2px 0 8px}
.block .sketch-steps h3{margin:0;font-family:var(--serif);font-size:20px;font-weight:600;line-height:1.6}
.sk-n{color:var(--beni);margin-right:.6em}
.sketch-steps .sk-hand{font-family:var(--hand);font-weight:600;font-size:18px;color:var(--beni);margin:2px 0 8px}
.sketch-steps p:not(.sk-hand){font-size:17px}
@media (max-width:760px){
  .sketch-steps{grid-template-columns:minmax(0,1fr);gap:28px}
  .sketch-steps li{display:grid;grid-template-columns:96px minmax(0,1fr);column-gap:14px}
  .sketch-steps li>*:not(.sketch){grid-column:2}
  .sketch{grid-row:1/span 3;width:96px;margin:0;align-self:start}
  .sketch-steps li{align-content:start}
  .sketch-steps li+li::before{display:none}
}

/* 2026-10-09 電話のそばに貼るメモ（夜間と119番の分かれ道） */
.memo{position:relative;margin:40px 0 0;max-width:620px;padding:30px 28px 22px;background:#FAF8F4;border:1px solid var(--rule);box-shadow:0 1px 0 rgba(47,50,49,.04),3px 4px 0 rgba(47,50,49,.05);transform:rotate(-.6deg)}
.memo::before{content:"";position:absolute;top:-11px;left:50%;width:92px;height:22px;margin-left:-46px;background:rgba(228,205,211,.75);transform:rotate(2deg)}
.block .memo p{margin:0}
.block .memo .memo-tel{margin-top:6px}
.memo-pin{font-family:var(--hand);font-weight:600;font-size:20px;margin-bottom:16px!important}
.memo-cols{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0}
.memo-col{padding:0 20px 0 0}
.memo-col--119{padding:0 0 0 20px;border-left:2px dashed var(--sumi-soft)}
.memo-h{font-family:var(--hand);font-weight:600;font-size:18px;color:var(--beni)}
.memo-h b{font-size:24px;margin-left:.15em;color:var(--sumi)}
.memo-tel a{font-family:var(--hand);font-weight:600;font-size:24px;color:var(--sumi);text-decoration:none;letter-spacing:.03em}
.memo-s{font-size:14px;color:var(--sumi-soft);line-height:1.7;margin-top:4px!important}
.memo ul{list-style:none;margin:6px 0 0;padding:0;font-family:var(--hand);font-weight:600;font-size:17px;line-height:1.9}
.memo li::before{content:"・";color:var(--sumi-soft)}
.memo figcaption{margin-top:18px;padding-top:12px;border-top:1px solid var(--rule);font-size:14px;color:var(--sumi-soft);line-height:1.7}
@media (max-width:760px){
  .memo{padding:26px 18px 18px;transform:rotate(-.4deg)}
  .memo-cols{grid-template-columns:minmax(0,1fr)}
  .memo-col{padding:0 0 14px}
  .memo-col--119{padding:14px 0 0;border-left:0;border-top:2px dashed var(--sumi-soft)}
}
@media (prefers-reduced-motion:reduce){.memo{transform:none}}

/* 2026-10-09 担当の医師とほかの医師（手描き） */
.team-sketch{margin:18px 0 0;max-width:520px}
.team-sketch svg{display:block;width:100%;height:auto}
.sk-thick{fill:none;stroke:var(--beni);stroke-width:3.4;stroke-linecap:round}
.sk-dot{fill:none;stroke:var(--sumi-soft);stroke-width:2;stroke-linecap:round;stroke-dasharray:2 7}
.sk-t{font-family:var(--hand);font-weight:600;font-size:18px;fill:var(--sumi)}
.sk-tb{font-family:var(--hand);font-weight:600;font-size:17px;fill:var(--beni)}
.team-sketch figcaption{font-family:var(--hand);font-weight:600;font-size:17px;color:var(--sumi);margin-top:6px;line-height:1.7}
.team-sketch .sk-f{fill:var(--sakura)}

/* 2026-10-09 掲示事項：該当する加算名の札 */
.block p.notice-std{display:inline-block;margin:0 0 10px;padding:2px 10px;font-size:14px;color:var(--sumi-soft);border:1px solid var(--rule);border-radius:2px}

/* 2026-10-09 手描き風の図・追加分 */
.promise-pair .team-sketch{max-width:420px;margin:14px 0 8px}
.rows .team-sketch{max-width:460px}
/* 上限の棒 */


.cap-title{font-family:var(--hand);font-weight:600;font-size:17px;color:var(--sumi-soft);margin-bottom:6px!important}
.cap-area{position:relative;padding:44px 0 4px}
.cap-row{margin:0 0 14px}
.cap-label{display:block;font-family:var(--hand);font-weight:600;font-size:17px;margin-bottom:4px}
.cap-track{display:flex;align-items:center;gap:10px}
.cap-bar{display:block;flex:none;height:16px;border:2px solid var(--sumi);border-radius:9px 6px 8px 7px/7px 9px 6px 8px;background:var(--sakura)}
.cap-bar--usual{width:20%}
.cap-bar--busy{width:96%;position:relative}
.cap-bar--busy i{position:absolute;left:72%;right:0;top:0;bottom:0;background:repeating-linear-gradient(-45deg,#fff 0 5px,rgba(166,74,41,.45) 5px 7px);border-radius:0 6px 7px 0}
.cap-amt{font-family:var(--hand);font-weight:600;font-size:17px;white-space:nowrap}
.cap-over{display:block;text-align:right;width:96%;font-family:var(--hand);font-weight:600;font-size:14px;color:var(--beni);margin-top:4px}
.cap-line{position:absolute;top:0;bottom:0;left:calc(96% * .72);border-left:2px dashed var(--beni)}
.cap-line span{position:absolute;right:8px;top:0;text-align:right;white-space:nowrap;font-family:var(--hand);font-weight:600;font-size:14px;line-height:1.35;color:var(--beni)}
.cap-line b{font-size:17px}

/* 夜間の当番（採用） */
.hand-flow{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin:14px 0 10px}
.hf-node{display:flex;flex-direction:column;padding:10px 16px;border:2px solid var(--sumi);border-radius:14px 10px 13px 9px/10px 13px 9px 12px;background:var(--card);position:relative}
.hf-who{font-size:14px;color:var(--sumi-soft)}
.hf-do{font-family:var(--hand);font-weight:600;font-size:18px}
.hf-aside{position:absolute;left:12px;top:100%;margin-top:6px;white-space:nowrap;font-family:var(--hand);font-weight:600;font-size:14px;color:var(--beni)}
.hf-aside::before{content:"↑ "}
.hf-arrow{font-family:var(--hand);font-weight:600;font-size:14px;color:var(--beni);padding-bottom:16px;background:no-repeat bottom center/100% 12px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 12' preserveAspectRatio='none'%3E%3Cpath d='M2 7c30-4 70-5 112-1M106 2l9 4-9 5' fill='none' stroke='%23A64A29' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E")}
.hand-flow{padding-bottom:26px}
/* FAX送り状の見本 */
.fax-sample{margin:22px 0 10px;max-width:560px}
.fax-paper{background:#FAF8F4;border:1px solid var(--rule);padding:22px 24px 18px;box-shadow:3px 4px 0 rgba(47,50,49,.05);transform:rotate(.5deg)}
.block .fax-paper p{margin:0}
.fax-to{font-size:14px;font-weight:700;padding-bottom:10px;margin-bottom:6px!important;border-bottom:2px solid var(--sumi)}
.fax-to span{font-weight:400;color:var(--sumi-soft);margin-left:.5em}
.fax-line{display:grid;grid-template-columns:118px minmax(0,1fr);gap:10px;align-items:baseline;padding:9px 0;border-bottom:1px dashed var(--rule)}
.fax-k{font-size:14px;color:var(--sumi-soft)}
.fax-v{font-family:var(--hand);font-weight:600;font-size:17px;line-height:1.6}
.fax-ring{display:inline-block;padding:0 6px;border:2px solid var(--beni);border-radius:50% 46% 52% 44%/55% 48% 50% 46%;color:var(--beni)}
.fax-sample figcaption{font-size:14px;color:var(--sumi-soft);margin-top:12px;line-height:1.7}
@media (max-width:760px){
  .fax-line{grid-template-columns:minmax(0,1fr);gap:2px}
  .fax-paper{padding:18px 16px 14px;transform:none}
}
@media (prefers-reduced-motion:reduce){.fax-paper{transform:none}}
.fax-checks{display:flex;flex-wrap:wrap;gap:4px 16px}
.fax-checks>span{white-space:nowrap}
.fax-checks>span::before{content:"";display:inline-block;width:13px;height:13px;margin-right:5px;border:1.6px solid var(--sumi);border-radius:2px 3px 2px 3px;vertical-align:-1px}
.fax-checks>span.on::before{background:no-repeat center/11px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M1 6.5l3 3.2L11 1.5' fill='none' stroke='%23A64A29' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E")}
.sk-t{font-size:20px}.sk-tb{font-size:18px}
@media (max-width:760px){
  .hand-flow{flex-direction:column;align-items:flex-start;gap:6px;padding-bottom:0}
  .hf-aside{position:static;margin-top:4px;font-size:14px}
  .hf-arrow{background:none;padding:0 0 0 14px}
  .hf-arrow::before{content:"↓ "}
}
@media (max-width:760px){.hf-aside::before{content:none}}

/* 2026-10-09 費用のまとめ */
.fee-summary{margin:0 0 28px;padding:18px 22px;background:var(--card);border:1px solid var(--sakura-line);border-left:4px solid var(--beni)}
.block .fee-summary p,.block .fee-summary ul{margin:0}
.fee-summary-t{font-weight:700;font-size:17px;margin-bottom:8px!important}
.fee-summary ul{list-style:none;padding:0}
.fee-summary li{position:relative;padding-left:1.1em;font-size:17px;line-height:1.9}
.fee-summary li::before{content:"";position:absolute;left:0;top:.8em;width:6px;height:6px;border-radius:50%;background:var(--beni)}
.fee-summary b{font-size:18px;color:var(--beni)}

/* 2026-10-09 ご用意いただくもの（手描き） */
.bring-sketch{margin:12px 0 0;max-width:560px}
.bring-sketch svg{display:block;width:100%;height:auto}
.sk-dash{fill:none;stroke:var(--sumi-soft);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:6 6}
.bring-sketch figcaption{margin-top:8px;font-size:17px;line-height:1.8}
.bring-sketch figcaption b{font-family:var(--hand);font-weight:600;color:var(--beni)}

/* 2026-10-09 図の描き方をそろえる（絵の線はゆらがせ、箱の枠はまっすぐ。紅は1つの図に1か所） */
.flow-split{position:relative}
.flow-split::before{content:attr(data-fork);grid-column:1/-1;font-family:var(--hand);font-weight:600;font-size:17px;color:var(--sumi-soft);margin-bottom:-4px}
@media (max-width:860px){
  .flow-split{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .flow-split .flow-node{padding:12px 12px;font-size:17px}
}
.team-sketch svg{max-width:600px}
.sk-u{fill:none;stroke:var(--sumi);stroke-width:1.6;stroke-linecap:round}
.sk-ts{font-family:var(--hand);font-weight:600;font-size:17px;fill:var(--sumi-soft)}
.sk-t{font-size:20px}
.rows .team-sketch,.team-sketch{max-width:600px}
/* はじめるまで：絵をやめて線と番号 */
.sketch-steps li{border-top:2px solid var(--sumi);padding-top:16px}
@media (max-width:760px){.sketch-steps li{display:block}}
.sketch-steps li+li::before{top:18px}
/* 当番の流れ：ほかの図と同じ箱 */
.hf-node{border:1px solid var(--sakura-line);border-radius:0;background:var(--card)}
.hf-node:first-child{border-left:4px solid var(--beni)}
.hf-aside{position:static;margin-top:4px}
.hf-aside::before{content:none}
.hand-flow{padding-bottom:0}
/* 持ち物メモ */
.bring-memo{margin:12px 0 0;max-width:420px;padding:20px 22px 16px;background:#FAF8F4;border:1px solid var(--rule);box-shadow:3px 4px 0 rgba(47,50,49,.05);transform:rotate(-.5deg)}
.bring-memo ul{list-style:none;margin:0;padding:0}
.bring-memo li{font-family:var(--hand);font-weight:600;font-size:18px;line-height:2.1;border-bottom:1px dashed var(--rule)}
.bring-memo li::before{content:"";display:inline-block;width:14px;height:14px;margin-right:10px;border:1.6px solid var(--sumi);border-radius:2px 3px 2px 3px;vertical-align:-1px}
.bring-memo li.opt::before{border-style:dashed;border-color:var(--sumi-soft)}
.bring-memo li small{font-size:14px;color:var(--sumi-soft);margin-left:.4em}
.bring-memo figcaption{margin-top:10px;font-family:var(--hand);font-weight:600;font-size:17px;color:var(--beni)}
@media (prefers-reduced-motion:reduce){.bring-memo{transform:none}}
/* 1か月の流れ：例の表示 */
.block p.weeks-eg{margin:12px 0 4px;font-family:var(--hand);font-weight:600;font-size:17px;color:var(--sumi-soft)}
/* 主治医との関係図：ご本人を真ん中に */
.relation{display:block}
.rel3{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 110px minmax(0,1fr);align-items:center;gap:0 12px;padding-bottom:58px}
.rel-me{position:relative;text-align:center}
.rel-me b{display:inline-flex;align-items:center;justify-content:center;width:88px;height:88px;border-radius:50%;background:var(--sakura);border:1px solid var(--sakura-line);font-family:var(--serif);font-size:18px}
.rel-me::before,.rel-me::after{content:"";position:absolute;top:50%;width:16px;border-top:1px solid var(--sumi-soft)}
.rel-me::before{left:-12px}.rel-me::after{right:-12px}
.rel-arc{position:absolute;left:12%;right:12%;bottom:0;height:46px;margin:0;border:2px dashed var(--beni);border-top:0;border-radius:0 0 50% 50%/0 0 100% 100%;text-align:center}
.rel-arc span{position:relative;top:34px;background:var(--sakura);padding:0 10px;font-family:var(--hand);font-weight:600;font-size:17px;color:var(--beni);white-space:nowrap}
.block .relation .rel-box{margin:0}
@media (max-width:760px){
  .rel3{grid-template-columns:minmax(0,1fr);gap:10px;padding:0}
  .rel-me{order:-1}
  .rel-me b{width:auto;height:auto;padding:8px 22px;border-radius:999px}
  .rel-me::before,.rel-me::after{display:none}
  .rel-arc{position:static;height:auto;border:0;text-align:left;padding:6px 0 0}
  .rel-arc span{top:0;background:none;padding:0;white-space:normal}
  .rel-arc span::before{content:"↔ "}
}
/* 1週間の帯（採用） */
.week-band{margin:4px 0 14px}
.week-band ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border:1px solid var(--sakura-line);background:var(--card)}
.week-band li{text-align:center;padding:8px 2px;border-left:1px solid var(--sakura-line)}
.week-band li:first-child{border-left:0}
.week-band b{display:block;font-family:var(--serif);font-size:17px}
.week-band span{display:block;font-size:14px;color:var(--sumi-soft);line-height:1.4}
.week-band li.off{background:var(--sakura)}
.week-band li.off span{font-family:var(--hand);font-weight:600;font-size:14px;color:var(--beni)}
.week-band figcaption{display:flex;flex-wrap:wrap;gap:4px 18px;margin-top:8px;font-family:var(--hand);font-weight:600;font-size:17px}
@media (max-width:420px){.week-band span{font-size:14px;letter-spacing:-.02em}}
.rel3{margin-bottom:22px}
.sketch-steps li+li::before{left:-29px;width:22px}

/* 2026-10-09 実際の区の形の地図 */
.map-river{font-family:var(--hand);font-weight:600;font-size:20px;fill:#6E8790;letter-spacing:.2em}

.map-src{display:block;margin-top:4px;font-size:14px;color:var(--sumi-soft)}
.map svg{max-height:760px}


/* 2026-10-09 トップの3つの約束を手描きの小さな図つきに */
.hero-points--sketch li{display:grid;grid-template-columns:64px minmax(0,1fr);column-gap:14px;align-items:center;padding:12px 0}
.hero-points--sketch li::before{content:none}
.hp-sk{width:64px;height:auto;display:block}
.hp-24{font-family:var(--hand);font-weight:600;font-size:18px;fill:var(--sumi)}
.hero-points--sketch p{margin:0;display:flex;flex-direction:column}
.hero-points--sketch b{font-family:var(--hand);font-weight:600;font-size:18px;line-height:1.5;color:var(--sumi)}
.hero-points--sketch span{font-size:17px;line-height:1.65;color:var(--sumi-soft)}
.hero-points--sketch b .nw{display:inline;font-size:inherit;color:inherit;line-height:inherit}

/* 2026-10-09 写真の色味をサイトに寄せる（看板の黄色・ひさしの桃色が強いため、彩度を少し落として暖かく） */
main img[src^="img/"]{filter:saturate(.84) sepia(.05) contrast(.98)}

/* 2026-10-10 図・手描き ★8件 */
/* D15 ご依頼の流れ */
.flow--req{margin:0}
.flow--req .flow-node span{font-size:17px}
/* D2 自分の行はどれ？ */
.find-row{margin:6px 0 22px;padding:16px 18px;background:var(--card);border:1px solid var(--sakura-line)}
.block .find-row p{margin:0}
.fr-q{font-family:var(--hand);font-weight:600;font-size:18px}
.fr-q--2{margin-top:16px!important;font-size:17px;color:var(--sumi-soft)}
.fr-a{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:10px}
.fr-a a{display:flex;flex-direction:column;padding:10px 14px;border:1px solid var(--rule);color:var(--sumi);text-decoration:none;position:relative}
.fr-a a:first-child{border-left:4px solid var(--beni)}
.fr-a a::after{content:"↓";position:absolute;right:12px;top:50%;transform:translateY(-50%);color:var(--beni);font-weight:700}
.fr-a b{font-size:18px}
.fr-a span{font-size:14px;color:var(--sumi-soft)}
.fr-papers{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px 12px}
.fr-papers li{font-family:var(--hand);font-weight:600;font-size:17px;padding:6px 12px;background:#FAF8F4;border:1px solid var(--rule);box-shadow:2px 2px 0 rgba(47,50,49,.05)}
.fr-papers li:nth-child(1){transform:rotate(-1.2deg)}.fr-papers li:nth-child(2){transform:rotate(.8deg)}.fr-papers li:nth-child(3){transform:rotate(-.5deg)}
.find-row figcaption{margin-top:12px;font-size:14px;color:var(--sumi-soft)}
/* D3 継ぎ足しの棒 */
.stack-sketch{margin:8px 0 10px;max-width:620px}
.ss-bar{display:flex;border:2px solid var(--sumi);border-radius:10px 7px 9px 8px/8px 10px 7px 9px;overflow:hidden}
.ss-bar>span{display:flex;flex-direction:column;justify-content:center;padding:10px 12px;font-family:var(--hand);font-weight:600;font-size:17px;line-height:1.35}
.ss-bar small{font-family:var(--sans);font-weight:400;font-size:14px;color:var(--sumi-soft);margin-top:2px}
.ss-base{flex:1.3;background:var(--sakura)}
.ss-add{flex:1;border-left:2px dashed var(--sumi-soft);background:repeating-linear-gradient(-45deg,#fff 0 6px,rgba(166,74,41,.12) 6px 8px)}
.ss-care{flex:1;border-left:2px dashed var(--sumi-soft);background:var(--card)}
.block .stack-sketch p.ss-out{margin:10px 0 0;display:inline-block;padding:6px 12px;border:1.5px dashed var(--sumi-soft);font-family:var(--hand);font-weight:600;font-size:17px;color:var(--sumi-soft)}
@media (max-width:560px){.ss-bar{flex-direction:column}.ss-bar>span+span{border-left:0;border-top:2px dashed var(--sumi-soft)}}
/* D5 ご病気と医師 */
.match{margin:4px 0 22px;max-width:560px}
.block .match p{margin:0}
.match-h{display:grid;grid-template-columns:minmax(0,1fr) 56px minmax(0,1fr);font-size:14px;color:var(--sumi-soft)}
.match-h span:last-child{grid-column:3}
.match ul{list-style:none;margin:6px 0 0;padding:0}
.match li{display:grid;grid-template-columns:minmax(0,1fr) 56px minmax(0,1fr);align-items:center;padding:6px 0}
.match li>span{font-family:var(--hand);font-weight:600;font-size:17px;line-height:1.4}
.match li>span:first-child{padding:6px 10px;background:var(--card);border:1px solid var(--sakura-line)}
.match li>span:last-child{padding:6px 10px;border-bottom:2px solid var(--sumi)}
.match li i{height:2px;background:repeating-linear-gradient(90deg,var(--sumi-soft) 0 3px,transparent 3px 7px);margin:0 4px}
.match li:last-child>span:last-child{border-bottom-color:var(--beni)}
/* D6 家族向けの関係図 */
.relation--fam{margin:6px 0 4px}
.relation--fam .rel-box span{font-size:14px}
/* D9 決めることメモ */


.dm-t{font-family:var(--hand);font-weight:600;font-size:17px;margin-bottom:6px!important}





/* D13 外来と当院 */
.two-clinic{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:20px 0 8px}
.two-clinic>div{display:flex;flex-direction:column;gap:4px;padding:14px 16px;background:var(--card);border:1px solid var(--rule)}
.two-clinic>div.us{border:1px solid var(--sakura-line);border-left:4px solid var(--beni)}
.two-clinic b{font-size:17px}
.two-clinic span{font-size:17px;color:var(--sumi-soft);line-height:1.7}
.two-clinic figcaption{grid-column:1/-1;font-size:14px;color:var(--sumi-soft)}
@media (max-width:560px){.two-clinic{grid-template-columns:minmax(0,1fr)}}
/* D12 ご本人を囲む連携 */
.ring-sketch{margin:36px 0 0;max-width:560px}
.ring-sketch svg{display:block;width:100%;height:auto}
.sk-s2{fill:none;stroke:var(--sumi);stroke-width:1.8;stroke-linecap:round}
.ring-sketch figcaption{margin-top:6px;font-family:var(--hand);font-weight:600;font-size:17px}
.relation--fam .rel3{padding-bottom:78px}
@media (max-width:760px){.relation--fam .rel3{padding-bottom:0}}
.relation--fam .rel3{padding-bottom:58px}
.relation--fam{padding-bottom:30px}
@media (max-width:760px){.relation--fam .rel3{padding-bottom:0}.relation--fam{padding-bottom:0}}

/* 2026-10-10 クリエイティブチェック反映：飾りを減らして統一 */
.wave{display:none}
.memo::before{display:none}
.memo,.bring-memo,.fax-paper,.fr-papers li{transform:none!important;box-shadow:none}
.memo-tel a{font-family:var(--sans);font-weight:700;font-size:28px;letter-spacing:.02em;color:var(--sumi);text-decoration:underline;text-decoration-color:var(--sakura-line);text-underline-offset:.2em}
@media (max-width:560px){
  .team-sketch .sk-t{font-size:24px}.team-sketch .sk-tb,.team-sketch .sk-ts{font-size:18px}
  .week-band span{font-size:14px}
}
.sp-only{display:none}
@media (max-width:560px){.week-band li:not(.off) span{display:none}.week-band .sp-only{display:inline}.week-band li{padding:10px 2px}}

/* 2026-10-10 仕上げ：本文を読みやすく（少し太く・濃く・大きく） */
:root{--sumi-soft:#4B4F4D}
body{font-weight:500;font-size:18px}
@media (min-width:761px){body{font-size:18px}}
.note{font-size:17px}
figcaption,.cap{font-size:17px}
.hero-points--sketch span{font-size:17px}
.rows dt{font-weight:700}
h1,h2,h3,.promise-a{font-weight:700}

/* PCトップ：左右の段をそろえ、空白をなくす */
@media (min-width:1081px){
  .hero-grid{align-items:stretch}
  .hero-visual{align-self:stretch;display:flex;flex-direction:column}
  .hero-photo{flex:1;display:flex;flex-direction:column}
  .hero-photo img{flex:1;min-height:0;height:100%;aspect-ratio:auto;object-fit:cover;object-position:30% 45%}
  .page-index .promise-main{align-items:start}
  .page-index .promise-q,.page-index .promise-a{position:sticky;top:110px}
  .page-index .promise-a{top:150px}
  .area-grid{align-items:start}
  .area-grid>div:first-child{position:sticky;top:120px;padding-top:24px}
  .eye{align-items:start}
  .eye-photo,.eye>figure{position:sticky;top:110px}
}
@media (min-width:761px){.map svg{max-height:580px;width:auto;max-width:100%;display:block;margin:0 auto}}

/* ===== 2026-10-10 B案の良いところをA案へ ===== */
/* 1 見出しを一回り大きく */
.page-index .hero h1{font-size:clamp(34px,9vw,40px);line-height:1.35;font-weight:700}
@media (min-width:861px){.page-index .hero h1{font-size:clamp(40px,3.6vw,50px)}.page-index .hero h1 .line{white-space:nowrap}}
/* 2 夜も、休日も。 */
.pa-big{display:block;font-size:clamp(44px,6vw,76px);line-height:1.2;letter-spacing:.02em;margin-bottom:14px;color:var(--sumi)}
.page-index .promise-a{font-size:clamp(20px,2vw,26px)}
/* 4 床に座って：写真を全面に */
.eye-sec--wide{padding:0 0 var(--section)}
.eye-photo-band{position:relative;min-height:min(86vh,820px);display:flex;align-items:flex-end;overflow:hidden}
.eye-photo-band img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 35%}
.eye-photo-band::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(0deg,rgba(255,255,255,.97) 0%,rgba(255,255,255,.9) 28%,rgba(255,255,255,0) 60%)}
.eye-photo-in{position:relative;z-index:2;padding-bottom:clamp(48px,7vw,88px)}
.eye-big{margin:0;font-family:var(--serif);font-weight:700;font-size:clamp(40px,5.6vw,84px);line-height:1.25;letter-spacing:.02em;font-feature-settings:"palt"}
.eye-photo-in p{margin:22px 0 0;max-width:32em;font-size:clamp(17px,1.4vw,19px)}
.eye-care{margin-top:clamp(40px,6vw,72px)}
.eye-care .care-inline{margin-top:12px;border-top:2px solid var(--sumi)}
@media (min-width:861px){.eye-care{display:grid;grid-template-columns:224px minmax(0,1fr);gap:64px}.eye-care .minor{margin:0}}
@media (max-width:860px){
  .eye-photo-band{min-height:auto;display:block}
  .eye-photo-band img{position:relative;height:auto;aspect-ratio:4/5}
  .eye-photo-band::before{display:none}
  .eye-photo-in{padding-top:24px;padding-bottom:0}
  .eye-big{font-size:clamp(32px,9.6vw,44px)}
}
/* 3 まずは、お電話で。 */
.final-call{padding:clamp(80px,11vw,140px) 0;border-top:1px solid var(--rule);background:var(--sakura)}
.final-big{margin:0;font-family:var(--serif);font-weight:700;font-size:clamp(36px,5.6vw,80px);line-height:1.25;letter-spacing:.02em}
.final-tel{display:inline-block;margin-top:20px;font-family:var(--sans);font-weight:700;font-size:clamp(38px,6vw,84px);letter-spacing:.02em;color:var(--sumi);text-decoration:none;border-bottom:3px solid var(--beni);line-height:1.2}
.final-call p{margin:22px 0 0;max-width:36em}
.final-links{display:flex;flex-wrap:wrap;align-items:center;gap:14px 28px;margin-top:28px}
.final-links .form-link{color:var(--beni);font-weight:700;text-underline-offset:.35em}
@media (prefers-reduced-motion:no-preference){
}
@media (min-width:861px){.pa-big{font-size:clamp(40px,4.2vw,60px);white-space:nowrap}}
.eye-photo-in{width:100%}

/* ===== 2026-10-10 図の決まり：①しっかりした図＝普通の文字／②手書き風＝ひとこと・メモ ===== */
.memo-pin,.memo-h,.memo ul,.cap-title,.cap-label,.cap-amt,.cap-over,.cap-line span,.hf-do,.hf-aside,.hf-arrow,.flow-split::before,.block p.weeks-eg,.rel-arc span,.week-band li.off span,.week-band figcaption,.fr-q,.fr-papers li,.match li>span{font-family:var(--sans)!important;letter-spacing:.02em}
.map-river{font-family:var(--sans)!important}
.map-river{font-weight:500}
.memo-pin{font-weight:700}.memo-h{font-weight:700}.memo ul{font-weight:500}.memo-h b{font-family:var(--sans)}
.cap-title,.cap-label,.cap-amt,.cap-over,.cap-line span{font-weight:700}
.hf-do{font-weight:700}.fr-q{font-weight:700}.match li>span{font-weight:500}
.flow-split::before{font-weight:700;font-size:14px}
/* 緊急のメモは「紙」ではなく、まっすぐな枠に */
.memo{background:var(--card);border:1px solid var(--sakura-line);border-left:4px solid var(--beni)}
/* 押せない札はボタンに見せない */
.fr-papers{gap:0}
.fr-papers li{background:none!important;border:0!important;padding:0!important;box-shadow:none!important;font-weight:700}
.fr-papers li+li::before{content:"／";margin:0 .4em;color:var(--sumi-soft);font-weight:400}
/* 担当医の図：スマホは並べ直し */
.team-sp{display:none}
@media (max-width:560px){
  .team-sketch svg{display:none}
  .team-sp{display:block;list-style:none;margin:6px 0 0;padding:0;border-top:2px solid var(--sumi)}
  .team-sp li{display:grid;grid-template-columns:7.5em minmax(0,1fr);gap:8px;padding:10px 0;border-bottom:1px solid var(--rule)}
  .team-sp li:first-child b{color:var(--beni)}
  .team-sp span{color:var(--sumi-soft)}
  .team-sketch figcaption{margin-top:10px}
}
/* 連携図（手書き風） */
.ring-f{fill:var(--paper);stroke:none}
.ring-sketch{margin:36px 0 0;max-width:600px}
@media (max-width:560px){.ring-sketch .sk-t{font-size:24px}.ring-sketch .sk-tb{font-size:20px}}
/* お支払いの行き先 */
.pay-to{display:grid;grid-template-columns:150px minmax(0,1fr);align-items:center;gap:0 28px;margin:26px 0 24px}
.pay-from{padding:14px 12px;text-align:center;background:var(--sumi);color:#fff;font-weight:700;position:relative}
.pay-from::after{content:"";position:absolute;right:-22px;top:50%;width:16px;height:16px;border-top:2px solid var(--beni);border-right:2px solid var(--beni);transform:translateY(-50%) rotate(45deg)}
.pay-to ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.pay-to li{display:grid;grid-template-columns:8em minmax(0,1fr);gap:12px;padding:12px 14px;background:var(--card);border:1px solid var(--rule)}
.pay-to li.us{border-left:4px solid var(--beni)}
.pay-to li b{font-size:17px}.pay-to li span{font-size:17px;color:var(--sumi-soft)}
@media (max-width:560px){.pay-to{grid-template-columns:minmax(0,1fr);gap:18px}.pay-from::after{right:auto;left:50%;top:auto;bottom:-14px;transform:translateX(-50%) rotate(135deg)}.pay-to li{grid-template-columns:minmax(0,1fr);gap:2px}}
/* 入院と退院 */
.round-trip{display:grid;grid-template-columns:120px minmax(0,1fr) 120px;align-items:center;gap:12px;margin:8px 0 10px}
.rt-box{padding:14px 8px;text-align:center;background:var(--card);border:1px solid var(--rule);font-weight:700}
.rt-box:first-child{border-left:4px solid var(--beni)}
.rt-box small{display:block;font-weight:400;font-size:14px;color:var(--sumi-soft)}
.rt-mid{display:flex;flex-direction:column;gap:10px;font-size:17px}
.rt-mid span{padding-bottom:6px;border-bottom:2px solid var(--sumi-soft)}
.rt-mid .back{text-align:right;border-bottom:2px dashed var(--sumi-soft)}
@media (max-width:560px){.round-trip{grid-template-columns:minmax(0,1fr)}.rt-mid span,.rt-mid .back{text-align:left;border:0;padding:0}.rt-mid .go::before{content:"↓ "}.rt-mid .go{order:0}}
/* ある・ない */
.yesno{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:10px 0 6px}
.yesno>div{display:flex;flex-direction:column;gap:2px;padding:12px 14px;background:var(--card);border:1px solid var(--rule)}
.yesno>div:first-child{border-left:4px solid var(--beni)}
.yesno span{font-size:14px;color:var(--sumi-soft)}.yesno b{font-size:17px}.yesno small{font-size:14px;color:var(--sumi-soft)}
@media (max-width:560px){.yesno{grid-template-columns:minmax(0,1fr)}}
/* 一本道の小さな流れ */
.mini-flow{list-style:none;margin:10px 0 8px;padding:0;display:flex;flex-wrap:wrap;align-items:stretch;gap:8px 30px}
.mini-flow li{position:relative;display:flex;flex-direction:column;justify-content:center;padding:10px 14px;background:var(--card);border:1px solid var(--rule)}
.mini-flow li.key{border-left:4px solid var(--beni)}
.mini-flow li+li::before{content:"→";position:absolute;left:-23px;top:50%;transform:translateY(-50%);color:var(--beni);font-weight:700}
.mini-flow b{font-size:17px}.mini-flow small{font-size:14px;color:var(--sumi-soft)}
@media (max-width:560px){.mini-flow{flex-direction:column;gap:22px}.mini-flow li+li::before{content:"↓";left:16px;top:-20px;transform:none}}
.rows dd .mini-flow{margin-bottom:12px}
.pay-to{grid-template-columns:172px minmax(0,1fr)}.pay-from{white-space:nowrap;font-size:17px}
@media (max-width:560px){.pay-to{grid-template-columns:minmax(0,1fr)}}
.rt-mid .go::after{content:" →"}.rt-mid .back::before{content:"← "}
@media (max-width:560px){.rt-mid .go::after{content:none}.rt-mid .go::before{content:"↓ "}.rt-mid .back::before{content:"↑ "}}
@media (max-width:560px){.ring-sketch .sk-t{font-size:28px}.ring-sketch .sk-tb{font-size:24px}}

/* ===== 2026-10-10 3回目チェック反映 ===== */
/* 2 本文の太さを戻す（大きさは18pxのまま） */
body{font-weight:400}
.site-foot,.foot,footer{font-weight:400}
/* 5 写真の茶色っぽさを外す */
main img[src^="img/"]{filter:none}
/* 4 トップ3項目の見出しは普通の文字 */
.hero-points--sketch b{font-family:var(--sans)!important;font-weight:700;font-size:18px}
/* 3 PCトップ：写真は4:3で患者さんも入れる。3項目は写真の下 */
@media (min-width:1081px){
  .hero-visual{display:block;align-self:start}
  .hero-photo{display:block;height:auto}
  .hero-photo img{height:auto;aspect-ratio:4/3;object-position:50% 45%}
  .hero-visual .hero-points{margin-top:20px}
}
.hero-after .hero-cta{margin:4px 0 22px}
/* 床に座って：PCは大きな写真＋右に見出し（文字を人物に重ねない） */
@media (min-width:861px){
  .eye-sec--split .eye-photo-band{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:center;gap:56px;min-height:auto;max-width:var(--max);margin:0 auto;padding:var(--section) var(--gutter) 0}
  .eye-sec--split .eye-photo-band::before{display:none}
  .eye-sec--split .eye-photo-band img{position:relative;height:auto;aspect-ratio:4/5;max-height:720px;object-position:40% 40%}
  .eye-sec--split .eye-photo-in{padding:0;width:auto}
  .eye-sec--split .eye-big{font-size:clamp(36px,4vw,60px)}
}
/* 4 担当医の図（事実の図） */
.team-fig{margin:16px 0 0;max-width:560px;display:grid;grid-template-columns:96px minmax(0,1fr);gap:0 14px;align-items:center}
.tf-me{grid-row:1;padding:14px 8px;text-align:center;border:1px solid var(--sumi);font-weight:700;background:var(--card)}
.team-fig ul{list-style:none;margin:0;padding:0}
.team-fig li{display:grid;grid-template-columns:40px 7em minmax(0,1fr);align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--rule)}
.team-fig li:first-child{border-top:1px solid var(--rule)}
.team-fig i{display:block;height:0;border-top:2px dashed var(--sumi-soft)}
.team-fig li.tf-main i{border-top:3px solid var(--beni)}
.team-fig li.tf-main b{color:var(--beni)}
.team-fig span{color:var(--sumi-soft);font-size:17px}
.team-fig figcaption{grid-column:1/-1;margin-top:10px;font-size:17px;color:var(--sumi-soft)}
@media (max-width:560px){.team-fig{grid-template-columns:minmax(0,1fr)}.tf-me{justify-self:start;padding:6px 16px;margin-bottom:8px}.team-fig li{grid-template-columns:28px 6.5em minmax(0,1fr)}}
/* 6 お支払い先：黒い帯をやめる */
.block p.pay-title{margin:26px 0 8px;font-weight:700}
.pay-to{margin-top:0}
.pay-from{background:var(--card)!important;color:var(--sumi)!important;border:2px solid var(--sumi)}
@media (max-width:560px){.pay-from{justify-self:start;padding:8px 18px}}
/* 1 費用：詳しい説明は折りたたみ */
.fee-more{margin-top:28px;border-top:1px solid var(--sumi);border-bottom:1px solid var(--rule)}
.fee-more>summary{cursor:pointer;padding:16px 28px 16px 0;font-weight:700;list-style:none;position:relative}
.fee-more>summary::-webkit-details-marker{display:none}
.fee-more>summary::after{content:"＋";position:absolute;right:4px;top:50%;transform:translateY(-50%);color:var(--beni)}
.fee-more[open]>summary::after{content:"−"}
.fee-more-body{padding:4px 0 20px}
/* 7 連携図 */
.block p.ring-lead{margin:32px 0 0;font-weight:700;font-size:17px;color:var(--sumi-soft)}
.ring-sketch{margin-top:6px}
@media (max-width:560px){.ring-sketch .sk-t{font-size:24px}.ring-sketch .sk-tb{font-size:20px}}
/* 8 矢印と強調をそろえる：縦は∨、横は→。左の太線は「当院の窓口・行動」だけ */
.rel-arc{display:none}
.block p.rel-note,.relation .rel-note{grid-column:1/-1;margin:10px 0 0;font-size:17px;font-weight:700;color:var(--beni)}
.rel3{padding-bottom:0!important}
.relation--fam{padding-bottom:0}
.sketch-steps li+li::before{background:none!important;content:"→";color:var(--beni);font-weight:700;width:auto;height:auto;top:14px;left:-26px}
.fee-summary{border-left:1px solid var(--sakura-line)}
.fr-a a:first-child{border-left:1px solid var(--rule)}
.two-clinic>div.us{border-left:1px solid var(--sakura-line)}
.yesno>div:first-child{border-left:1px solid var(--rule)}
.rt-box:first-child{border-left:1px solid var(--rule)}
.hf-node:first-child{border-left:1px solid var(--sakura-line)}
.fam-index-x{}
/* 事業所の夜間：文章3行 */
.night-lines{margin:0;padding:0 0 0 1.2em}
.night-lines li{padding:4px 0}
/* 採用：参考の注記 */
.block p.ref-note{margin:0 0 16px;padding:10px 14px;background:var(--sakura);font-size:17px}
/* 家族ページの目次の間隔 */
.family-index .family-index-main{gap:12px 24px}
@media (max-width:560px){.family-index .family-index-main{display:flex;flex-wrap:wrap}}
@media (max-width:760px){.news-contact .btn{display:flex;width:100%;justify-content:center}}
@media (min-width:861px){.eye-sec--split .eye-big{font-size:clamp(32px,3.3vw,50px);white-space:nowrap}}
.block .find-row p.fr-q--2{font-weight:400;font-size:17px;color:var(--sumi)}
.hero-visual{display:block!important}
.hero-visual .hero-points{margin-top:16px}

/* ===== 2026-10-11 状況から探す（決める導線） ===== */
.situ{margin-top:28px}
.situ-label{margin:0 0 10px;font-size:14px;font-weight:700;letter-spacing:.08em;color:var(--beni)}
.situ-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.situ-grid a{display:flex;flex-direction:column;gap:4px;padding:16px 40px 16px 18px;background:var(--card);border:1px solid var(--sakura-line);color:var(--sumi);text-decoration:none;position:relative;transition:border-color .2s}
.situ-grid a::after{content:"→";position:absolute;right:16px;top:50%;transform:translateY(-50%);color:var(--beni);font-weight:700}
.situ-grid a:hover{border-color:var(--beni)}
.situ-grid b{font-size:18px;line-height:1.5}
.situ-grid span{font-size:17px;color:var(--sumi-soft)}
.situ-top{padding:8px 0 36px}
@media (max-width:760px){.situ-grid{grid-template-columns:minmax(0,1fr)}.situ-grid b{font-size:17px}}
.block p.situ-lead{margin:0 0 16px;font-size:clamp(18px,1.6vw,20px);font-weight:700;line-height:1.7}
.situ-block .mini-flow{margin:4px 0 16px}
.situ-block{scroll-margin-top:90px}
.memo figcaption b{display:block;color:var(--sumi);font-size:17px;margin-bottom:2px}
.memo figcaption a{margin-left:.5em;color:var(--beni);font-weight:700}
.inline-link{color:var(--beni);font-weight:700;text-underline-offset:.3em}
/* 2026-10-11 夜中のメモ：まずは当院へ（1本に） */
.memo-main .memo-h{font-size:20px}
.memo-main .memo-tel a{font-size:28px}
.block .memo .memo-main .memo-s{font-size:17px;margin-top:8px!important}
.block p.final-note{margin-top:14px;font-size:17px;color:var(--sumi-soft)}
/* 2026-10-11 トップ3項目のアイコン（Codex作・決まり：48グリッド・線1.75・角r2・強調1か所） */
.hp-icon{width:52px;height:52px;display:block;color:var(--sumi)}
.hp-icon .ac{stroke:var(--beni)}
.hero-points--sketch li{grid-template-columns:56px minmax(0,1fr)}

/* 2026-10-11 はじめての方へ：冒頭の挿絵（Codexの画像生成） */
.ph-illust{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,440px);gap:40px;align-items:center}
.ph-fig{margin:0}
.ph-fig img{display:block;width:100%;height:auto;mix-blend-mode:multiply}
@media (max-width:860px){.ph-illust{grid-template-columns:minmax(0,1fr);gap:8px}.ph-fig{max-width:420px;margin:4px auto 0}}

/* ===== 2026-10-11 4回目チェック反映 ===== */
/* 挿絵：小さめに（事業所はさらに小さく） */
@media (min-width:861px){.ph-illust{grid-template-columns:minmax(0,1fr) minmax(0,340px)}.page-partners .ph-illust{grid-template-columns:minmax(0,1fr) minmax(0,280px)}}
@media (max-width:860px){.ph-fig{max-width:300px}.page-partners .ph-fig{max-width:240px}}
/* 状況別の節：最後に電話 */
.situ-cta{display:flex;flex-wrap:wrap;align-items:center;gap:10px 22px;margin-top:20px}
.situ-tel{font-weight:700;font-size:24px;color:var(--sumi);text-decoration:none;letter-spacing:.03em}
/* 1か月の流れ */
.month-fig{margin:14px 0 18px;max-width:620px}
.month-main{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:3px solid var(--sumi)}
.month-main li{padding:12px 14px 0 0}
.month-main b{display:block;font-size:18px}
.month-main span{font-size:14px;color:var(--sumi-soft)}
.block p.month-branch-t{margin:18px 0 6px!important;font-weight:700;color:var(--beni)}
/* 縦の矢印は∨で統一 */
@media (max-width:560px){.mini-flow li+li::before{content:"";left:18px;top:-15px;width:9px;height:9px;border-right:2px solid var(--beni);border-bottom:2px solid var(--beni);transform:rotate(45deg)}}
/* 「床に座って」：PCの左端を本文とそろえる */
@media (min-width:861px){.eye-sec--split .eye-photo-band{max-width:calc(var(--max) + var(--gutter)*2);padding-inline:var(--gutter)}}
/* 採用の当番の流れ：スマホで幅をそろえる */
@media (max-width:760px){.hand-flow{align-items:stretch}.hand-flow .hf-node{width:100%}}
/* 費用表：閉じているときに押せることが分かるように */
.fee-age>summary{cursor:pointer}
@media (min-width:861px){.pa-big{white-space:normal}}

/* 2026-10-11 状況の入口を6つに：小さな札を並べる */
.situ-grid a{padding:14px 36px 14px 16px}
.situ-grid b{font-size:17px}
.situ-grid span{font-size:14px}
@media (min-width:761px){.situ-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:760px){
  .situ-grid{gap:6px}
  .situ-grid a{padding:11px 34px 11px 14px}
  .situ-grid b{font-size:17px;line-height:1.45}
  .situ-grid span{font-size:14px}
}

/* 2026-10-12 状況の入口：スマホは2列・見出しだけ。最後に「当てはまらない」 */
.situ-grid a.situ-other{grid-column:1/-1;background:var(--sakura);border-color:var(--sakura-line)}
.situ-grid a.situ-other::after{content:"☎";font-size:18px}
.situ-other em{font-style:normal;font-weight:700;color:var(--sumi);margin-left:.6em;white-space:nowrap}
@media (max-width:760px){
  .situ-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .situ-grid a{padding:12px 26px 12px 12px;justify-content:center;min-height:64px}
  .situ-grid a::after{right:9px;font-size:14px}
  .situ-grid b{font-size:17px;line-height:1.45}
  .situ-grid a:not(.situ-other) > span{display:none}
  .situ-grid a.situ-other{padding:14px 40px 14px 14px}
  .situ-grid a.situ-other b{font-size:17px}
  .situ-grid a.situ-other span{display:block;font-size:14px}
  .situ-grid a.situ-other em{display:block;margin:4px 0 0;font-size:18px}
}
.situ-grid b .ph{font-size:inherit;color:inherit}

/* 2026-10-12 連携図：輪の形（9か所）。スマホは一覧 */
.ring-sketch{max-width:680px}
.ring-sketch .sk-t{font-size:20px}.ring-sketch .sk-tb{font-size:18px}
.ring-list{display:none}
@media (max-width:560px){
  .ring-sketch svg{display:none}
  .ring-list{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:8px 0 0;padding:14px;background:var(--card);border:1px solid var(--sakura-line)}
  .ring-list::before{content:"ご本人・ご家族を中心に";flex-basis:100%;font-weight:700;margin-bottom:2px}
  .ring-list li{padding:6px 12px;border:1px solid var(--rule);border-radius:999px;font-size:17px;background:var(--card)}
  .ring-list li.us{border-color:var(--beni);color:var(--beni);font-weight:700}
}

/* 2026-10-12 連携図：画像生成版（老老介護の夫婦）。スマホは札の一覧 */
.ring-img{display:block;width:100%;height:auto;mix-blend-mode:multiply}
@media (max-width:560px){.ring-img{display:none}}
.img-note{display:block;margin-top:4px;font-size:14px;color:var(--sumi-soft)}
/* 一人暮らしの節の挿絵 */
.situ-with-img{display:grid;grid-template-columns:200px minmax(0,1fr);gap:24px;align-items:center;margin-bottom:12px}
.situ-fig{margin:0}.situ-fig img{display:block;width:100%;height:auto;mix-blend-mode:multiply}
.situ-with-img .situ-lead{margin:0!important}
@media (max-width:560px){.situ-with-img{grid-template-columns:120px minmax(0,1fr);gap:14px}}
@media (max-width:560px){.situ-with-img{grid-template-columns:minmax(0,1fr);gap:8px}.situ-fig{max-width:280px}}
.ring-sketch svg{max-width:820px}
.ring-center{mix-blend-mode:multiply}
@media (max-width:560px){.ring-sketch svg{display:none}}
.ring-sketch svg{max-width:860px}





/* 2026-10-12 フォントをやさしく：見出し Shippori Mincho B1、本文 Zen Maru Gothic */
body{font-weight:500}
.fee-sub{display:block;font-size:14px;color:var(--sumi-soft);line-height:1.6;margin-top:2px}
.block p.fee-drug{margin:12px 0 0;font-size:17px}

/* 2026-10-12 区分の見分け方 */
.kubun{margin:14px 0 6px;padding:14px 16px;background:var(--card);border:1px solid var(--sakura-line)}
.block .kubun p{margin:0}
.kubun-t{font-weight:700;font-size:17px;margin-bottom:8px!important}
.kubun table{width:100%;border-collapse:collapse;font-size:17px}
.kubun th,.kubun td{text-align:left;padding:8px 8px 8px 0;border-bottom:1px solid var(--rule);vertical-align:top;line-height:1.55}
.kubun thead th{font-size:14px;font-weight:500;color:var(--sumi-soft);border-bottom:1px solid var(--sumi)}
.kubun tbody th{font-weight:700;white-space:nowrap}
.kubun td:last-child{white-space:nowrap;font-weight:700}
.kubun td small{display:block;font-weight:400;font-size:14px;color:var(--sumi-soft)}
.block .kubun p.kubun-n{margin-top:8px!important;font-size:14px;color:var(--sumi-soft);line-height:1.6}
@media (max-width:560px){
  .kubun{padding:12px}
  .kubun table{font-size:14px}
  .kubun tbody th{white-space:normal;width:34%}
  .kubun td:last-child{white-space:normal}
}
@media (max-width:560px){
  .kubun thead{display:none}
  .kubun tbody tr{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:10px;padding:9px 0;border-bottom:1px solid var(--rule)}
  .kubun tbody th,.kubun tbody td{border:0;padding:0;width:auto}
  .kubun tbody th{grid-column:1}
  .kubun tbody td:nth-of-type(1){grid-column:1;font-size:14px;color:var(--sumi-soft)}
  .kubun tbody td:last-child{grid-column:2;grid-row:1/span 2;align-self:center;text-align:right}
  .kubun tbody td:last-child small{text-align:right}
}
@media (max-width:560px){.kubun--u tbody td:nth-of-type(1)::before{content:"年収 "}}
.bring-memo li small.memo-sub{display:block;margin:-6px 0 4px 24px;line-height:1.6;font-size:14px}

/* ===== 2026-10-12 文を減らして図・挿絵で伝える ===== */
.mini-icon{width:40px;height:40px;color:var(--sumi);flex:none}
.mini-icon .ac{stroke:var(--beni)}
/* 家で受けられる診療：タイル */
.care-tiles{list-style:none;margin:12px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.care-tiles li{display:grid;grid-template-columns:40px minmax(0,1fr);column-gap:12px;align-items:center;padding:14px;background:var(--card);border:1px solid var(--rule)}
.care-tiles li svg{grid-row:1/span 2}
.care-tiles b{font-size:17px}.care-tiles span{font-size:17px;color:var(--sumi-soft);line-height:1.55}
@media (max-width:760px){.care-tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.care-tiles li{grid-template-columns:minmax(0,1fr);padding:12px}.care-tiles li svg{grid-row:auto;width:32px;height:32px;margin-bottom:4px}.care-tiles b{font-size:17px}.care-tiles span{font-size:14px}}
/* こんなときに：4枚 */




.block p.who-note{margin-top:14px;font-size:17px}
/* 手書きのひとこと */
.block p.situ-hand{margin:10px 0 0;font-family:var(--hand);font-weight:600;font-size:18px;color:var(--beni)}
/* がん：3つの枠 */
.three-box{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:6px 0 4px}
.three-box>div{display:flex;flex-direction:column;gap:4px;padding:14px;background:var(--card);border:1px solid var(--rule)}
.three-box b{font-size:17px}.three-box span{font-size:17px;color:var(--sumi-soft);line-height:1.6}
.three-box a{color:var(--beni);font-weight:700;margin-left:.3em}
@media (max-width:760px){.three-box{grid-template-columns:minmax(0,1fr)}}
/* 一人暮らし：お伝えの図 */
.tell-fig{display:grid;grid-template-columns:minmax(0,1fr) 120px minmax(0,.8fr) 120px minmax(0,1fr);align-items:center;gap:8px;margin:8px 0 14px}
.tf-box{padding:12px;text-align:center;background:var(--card);border:1px solid var(--rule);font-size:17px}
.tf-box.tf-center{border:2px solid var(--sumi)}
.tf-box small{display:block;color:var(--sumi-soft);font-size:14px}
.tf-arrow{position:relative;text-align:center;font-size:14px;color:var(--beni);font-weight:700;line-height:1.4;padding-bottom:12px}
.tf-arrow::after{content:"";position:absolute;left:8px;right:8px;bottom:2px;border-top:2px solid var(--beni)}
.tf-arrow:nth-of-type(2)::before,.tf-arrow:nth-of-type(4)::before{content:"";position:absolute;right:6px;bottom:-2px;width:8px;height:8px;border-top:2px solid var(--beni);border-right:2px solid var(--beni);transform:rotate(45deg)}
@media (max-width:760px){
  .tell-fig{grid-template-columns:minmax(0,1fr);gap:4px}
  .tf-arrow{padding:4px 0 4px 18px;text-align:left}
  .tf-arrow::after{left:6px;right:auto;top:0;bottom:0;border-top:0;border-left:2px solid var(--beni)}
  .tf-arrow::before{display:none}
}
/* 病気カード */
.dis-cards{list-style:none;margin:10px 0 12px;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.dis-cards li{padding:14px;background:var(--card);border:1px solid var(--rule)}
.block .dis-cards p{margin:0}
.dc-h{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 8px;margin-bottom:6px!important}
.dc-h b{font-size:18px}.dc-h span{font-size:14px;color:var(--sumi-soft)}
.dc-h em{font-style:normal;margin-left:auto;font-size:14px;font-weight:700;color:var(--beni)}
.dis-cards li>p:last-child{font-size:17px;color:var(--sumi-soft);line-height:1.65}
@media (max-width:560px){.dis-cards{grid-template-columns:minmax(0,1fr);gap:8px}}
/* 1か月：中身の一行 */
.block p.month-what{margin:10px 0 0;font-size:17px;color:var(--sumi-soft)}
/* トップ：費用のチップ・夜の挿絵・最後のチップ */
.chip{display:inline-block;margin:0 6px 6px 0;padding:3px 10px;border:1px solid var(--sakura-line);background:var(--card);font-size:14px;color:var(--sumi)}
.night-ill{margin:12px 0 0;max-width:280px}
.night-ill img{display:block;width:100%;height:auto;mix-blend-mode:multiply}
@media (min-width:1081px){.page-index .night-ill{grid-column:1;max-width:260px}}
.final-chips{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 0}
.final-chips span{padding:6px 14px;background:var(--card);border:1px solid var(--sakura-line);font-weight:700;font-size:17px}
@media (min-width:861px){.page-index .night-ill{grid-column:1;grid-row:4;align-self:start;margin-top:20px;max-width:300px}}
@media (max-width:860px){.night-ill{max-width:260px;margin:14px auto 0}}
.promise-a .night-ill{display:block;margin:22px 0 0;max-width:300px}
.promise-a .night-ill img{display:block;width:100%;height:auto;mix-blend-mode:multiply}
@media (max-width:860px){.promise-a .night-ill{max-width:260px;margin:14px 0 0}}

/* ===== 2026-10-12 やさしい雰囲気（今の公式サイトの優しさを引き継ぐ） ===== */
:root{--paper:#FAF8F4;--rule:#EDE3E0;--sakura:#F3F0EA;--sakura-line:#F2DDD3;--sumi:#3E3A3A;--sumi-soft:#6B6563}
body{background:var(--paper)}/* 角を少し丸める */

html :is(.situ-grid a,.care-tiles li,.dis-cards li,.three-box>div,.flow-node,.fee-summary,.find-row,.fr-a a,.pay-to li,.pay-from,.mini-flow li,.tf-box,.kubun,.memo,.two-clinic>div,.yesno>div,.rt-box,.match li>span:first-child,.fee-more,.chip,.final-chips span,.bring-memo,.fax-paper,.hf-node,.rel-box,.map,.hero-points li,.team-fig .tf-me,.ring-list){border-radius:10px}
.btn{border-radius:999px}
html :is(.hero-photo img,.eye-photo-band img,.story-grid img){border-radius:14px}html :is(.month-main,.care-inline,.team-fig li:first-child,.kubun thead th){border-color:var(--sakura-line)}
.tf-box.tf-center{border-color:var(--sakura-line);background:var(--sakura)}
.block{border-bottom-color:var(--rule)}
.block>h2::before,.block > h2::before{border-radius:2px}
.hero-points{border-top-color:var(--rule)}
.hero-points li{border:0;background:var(--card);margin-bottom:8px;padding:12px 14px}
/* 帯の境目をふんわり（帯の中だけで色を溶かす。ほかの文字に重ねない） */
:is(.area,.final-call,.contact-band){background:linear-gradient(to bottom,var(--paper) 0,var(--sakura) 96px,var(--sakura) calc(100% - 96px),var(--paper) 100%)}
.page-index .promise > .wrap > .label{box-shadow:none;clip-path:none;background:none}
.final-call{border-top:0}
/* 見出しを手書き風に */
.hero h1{font-family:var(--hand);font-weight:600;letter-spacing:.04em}
/* 冒頭の背景に淡い桃色のにじみ */
.hero{background:radial-gradient(ellipse 60% 50% at 85% 30%,rgba(242,214,220,.45),transparent 70%),radial-gradient(ellipse 50% 40% at 10% 90%,rgba(246,226,230,.5),transparent 70%)}
.page-index .promise{background:linear-gradient(to bottom,var(--paper) 0,var(--sakura) 140px,var(--sakura) calc(100% - 96px),var(--paper) 100%)}
.page-index .promise-main{box-shadow:none!important;clip-path:none!important;background:transparent!important}

/* 2026-10-12 ほかのページの帯もふんわり（帯の中だけで色を溶かす。外にはみ出さない） */
html,body{overflow-x:clip}
:is(.page-family #cost,.page-family #start,.page-about #values,.page-partners #night,.page-recruit #mission,.page-notice #n-hours,.page-recruit .block--story,.news-contact){background:none!important;box-shadow:none!important;clip-path:none!important;position:relative;isolation:isolate}
:is(.page-family #cost,.page-family #start,.page-about #values,.page-partners #night,.page-recruit #mission,.page-notice #n-hours,.page-recruit .block--story,.news-contact)::before{content:"";position:absolute;top:0;bottom:0;left:calc(50% - 50vw);right:calc(50% - 50vw);z-index:-1;pointer-events:none;background:linear-gradient(to bottom,var(--paper) 0,var(--sakura) 72px,var(--sakura) calc(100% - 72px),var(--paper) 100%)}
/* 帯同士が続く所は、間で白に戻さない */
.page-family #cost::before{background:linear-gradient(to bottom,var(--paper) 0,var(--sakura) 72px,var(--sakura) 100%)}
.page-family #start::before{background:linear-gradient(to bottom,var(--sakura) 0,var(--sakura) calc(100% - 72px),var(--paper) 100%)}
@media (min-width:861px){.eye-sec--split .eye-big{white-space:normal;font-size:clamp(30px,2.9vw,44px)}.eye-sec--split .eye-photo-band{grid-template-columns:minmax(0,7fr) minmax(0,5fr)}.eye-sec--split .eye-photo-in{min-width:0}}

/* ===== 2026-10-12 5回目チェックの反映 ===== */
/* 本文を一段細く。強調は太字だけ */
body{font-weight:400}
/* 費用のまとめ：上限の一言 */
.fee-summary small.fs-sub{display:block;font-size:14px;color:var(--sumi-soft);line-height:1.6;margin-top:2px}
/* 立ち会えないとき：ふつうの一覧 */
.decide-list{margin:12px 0 10px;padding:16px 18px;background:var(--card);border:1px solid var(--rule);border-radius:10px}
.block .decide-list p{margin:0}
.dl-t{font-weight:700;margin-bottom:8px!important}
.decide-list ul{margin:0;padding-left:1.2em}
.decide-list li{padding:3px 0}
.decide-list figcaption{margin-top:8px;font-size:17px;color:var(--sumi-soft)}
/* 連携図：絵＋読みやすい名前の一覧（PCも） */
.ring-sketch{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:28px;align-items:center;max-width:none}
.ring-pic{display:block;width:100%;height:auto;mix-blend-mode:multiply}
.ring-sketch .ring-list{display:flex!important;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:18px;background:var(--card);border:1px solid var(--sakura-line);border-radius:10px}
.ring-sketch .ring-list::before{content:"ご本人・ご家族を中心に";flex-basis:100%;font-weight:700;margin-bottom:4px}
.ring-sketch .ring-list li{padding:7px 14px;border:1px solid var(--rule);border-radius:999px;font-size:17px;background:var(--card)}
.ring-sketch .ring-list li.us{border-color:var(--beni);color:var(--beni);font-weight:700}
.ring-sketch figcaption{grid-column:1/-1}
@media (max-width:760px){.ring-sketch{grid-template-columns:minmax(0,1fr);gap:14px}.ring-pic{max-width:300px}.ring-sketch .ring-list li{font-size:17px}}
/* 6回目：行末に1〜2文字だけ残る改行を減らす（対応ブラウザのみ） */
p,li,summary,dd,td,figcaption,small,.situ-lead{text-wrap:pretty}
h1,h2,h3{text-wrap:balance}
.fee-summary b{white-space:nowrap}
.term{font-size:.86em;letter-spacing:0}
@media (max-width:480px){.term{font-size:.78em}}
.care-tiles span span{font-size:inherit;color:inherit}.care-tiles .term{font-size:14px}@media (max-width:760px){.care-tiles .term{font-size:14px}}
/* エリアのページ：もう一方の区を薄く */
.map--suginami svg>path:nth-of-type(3),.map--setagaya svg>path:nth-of-type(2){fill:#F6F4F3;stroke:#DCD8D5;stroke-width:1}
.map--suginami .map-wards text:nth-child(2),.map--setagaya .map-wards text:nth-child(1){fill:#A9A3A1;font-size:28px}
.page-suginami .map,.page-setagaya .map{max-width:520px;margin:0 auto 18px}
.area-more{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:18px}.area-more a{color:var(--beni);font-weight:700;text-underline-offset:.3em}.area-more a::after{content:" →"}
.page-suginami .decide-list b,.page-setagaya .decide-list b{display:block;margin-bottom:2px}
.page-suginami .map,.page-setagaya .map{margin:0 0 18px}
.area-note{margin-top:10px;font-size:17px;line-height:1.9;color:var(--sumi)}
.map-call{display:block;margin-top:8px;color:var(--sumi);font-weight:500}.map-call a{display:inline-block;margin-left:.5em;color:var(--beni);font-weight:700;font-size:1.08em;text-underline-offset:.25em}
.map-call a{display:table;margin:4px 0 0}
/* 区のページ：その区を大きく */
.page-suginami .map,.page-setagaya .map{max-width:760px;margin:0 0 18px}
.page-suginami .map svg,.page-setagaya .map svg{max-height:none;width:100%}
@media (max-width:760px){.page-suginami .map,.page-setagaya .map{margin-left:-6px;margin-right:-6px}}
.page-suginami .map .map-stations,.page-setagaya .map .map-stations{font-size:14px}.page-suginami .map .map-clinic,.page-setagaya .map .map-clinic{font-size:18px}.page-suginami .map .map-wards text,.page-setagaya .map .map-wards text{font-size:28px}
/* 世田谷区のページ：沿線と町名 */
.town-list{display:grid;gap:10px;margin:14px 0 6px}
.town-list>div{display:grid;grid-template-columns:7.5em 1fr;gap:6px 12px;align-items:start;padding:12px 14px;border:1px solid var(--sakura-line);border-radius:10px;background:var(--card)}
.town-list dt{font-weight:700;color:var(--beni);font-size:17px;padding-top:4px}
.town-list dd{display:flex;flex-wrap:wrap;gap:6px;margin:0}
.town-list dd span{padding:3px 12px;border-radius:999px;background:var(--sakura);font-size:17px}
@media (max-width:480px){.town-list>div{grid-template-columns:1fr}}
.town-list>div{grid-template-columns:9em 1fr}@media (max-width:480px){.town-list>div{grid-template-columns:1fr}}
/* 上部メニュー：杉並区・世田谷区を足したので、狭い幅では間隔を詰め、それでも入らない幅はメニューボタンにする */
.gnav a{white-space:nowrap}
.head-tel b,.head-tel span{white-space:nowrap}
@media (max-width:1279px){.gnav{gap:18px;font-size:17px}}
@media (max-width:1179px){.gnav,.head-tel{display:none}.mobile-menu{display:block;margin-left:auto}}
/* 相談窓口：代表番号との使い分け */
.desk{grid-column:1/-1;margin-top:22px;padding:18px 18px 16px;border:1px solid var(--sakura-line);border-radius:10px;background:var(--card);color:var(--sumi)}
.desk-title{margin:0 0 12px;font-size:17px;font-weight:700;font-family:var(--sans)}
.desk-guide{margin:0;display:grid;gap:10px}
.desk-guide>div{display:grid;grid-template-columns:8.5em 1fr;gap:6px 16px;padding:12px 14px;border-radius:10px;background:var(--paper)}
.desk-guide .dg-main{background:var(--sakura)}
.desk-guide dt b{display:block;font-size:17px;color:var(--beni)}
.desk-guide dt span{font-size:14px;color:var(--sumi-soft)}
.desk-guide dd{margin:0;font-size:17px;line-height:1.75}
.dg-tel{display:table;margin-top:4px;font-weight:700;font-size:18px;color:var(--beni);text-underline-offset:.25em}
.desk-ways{list-style:none;margin:8px 0 4px;padding:0;display:flex;flex-wrap:wrap;gap:8px 18px}
.desk-ways li{display:flex;align-items:baseline;gap:8px}
.desk-ways small{font-size:14px;color:var(--sumi-soft)}
.desk-ways a{font-weight:700;color:var(--beni);text-underline-offset:.25em}
.desk-hours{display:block;font-size:14px;color:var(--sumi-soft)}
@media (max-width:560px){.desk-guide>div{grid-template-columns:1fr}.desk{padding:14px}}
.desk-guide .dg-care{background:var(--card);border:1px dashed var(--sakura-line)}
.memo-tel--card{font-size:18px!important;line-height:1.5;font-weight:700}
/* 連絡先の案内：押しやすさと読みやすさ（スマホ優先） */
.dw-btn{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:6px 16px;border:1px solid var(--sakura-line);border-radius:999px;background:var(--card);font-weight:700;color:var(--beni);text-decoration:none;word-break:break-all}
.dw-btn span{font-size:14px;font-weight:500;color:var(--sumi-soft);flex:none}
.desk-ways li{display:block}
@media (max-width:560px){
  .desk{padding:14px 12px}
  .desk-title{font-size:17px;margin-bottom:10px}
  .desk-guide>div{gap:4px;padding:12px}
  .desk-guide dt{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
  .desk-guide dt b{display:inline;font-size:18px}
  .desk-guide dt span{font-size:14px;padding:1px 10px;border-radius:999px;background:var(--card)}
  .desk-guide .dg-main dt span{background:var(--card)}
  .desk-guide dd{font-size:17px}
  .dg-tel{display:flex;justify-content:center;align-items:center;min-height:48px;margin-top:8px;border-radius:999px;background:var(--beni);color:#fff;text-decoration:none;font-size:18px}
  .desk-ways{flex-direction:column;gap:8px}
  .desk-ways .dw-btn{display:flex;width:100%;justify-content:flex-start;font-size:17px}
  .desk-ways .dw-btn span{min-width:3.2em}
  .desk-hours{margin-top:6px;font-size:14px;line-height:1.7}
  .desk-guide .dg-care dd{font-weight:500}
}
.dw-addr{display:block;margin:4px 0 0 4px;font-size:14px;color:var(--sumi-soft);word-break:break-all}
/* 改行は文節で：ビルド時に入れた <wbr> の位置だけで折り返す。入りきらない長い語は端で折る */
body{word-break:keep-all;overflow-wrap:anywhere}
/* お知らせの記事本文は印を入れていないので、対応ブラウザでは自動で文節改行、それ以外はふつうの改行 */
.post-body{word-break:normal;overflow-wrap:anywhere}
@supports (word-break:auto-phrase){.post-body{word-break:auto-phrase}}
svg text{word-break:normal}
/* お知らせの一覧・記事・トップのお知らせ欄はWorkerが組み立てる（印なし）ので、ふつうの改行＋対応ブラウザは自動の文節改行 */
.page-news,.news-item,.pinned-strip,.news-contact,.news-more{word-break:normal}
@supports (word-break:auto-phrase){.page-news,.news-item,.pinned-strip,.news-contact{word-break:auto-phrase}}
/* スマホで押しやすく：小さかったリンクに高さを持たせる */
.area-more a{display:inline-flex;align-items:center;min-height:44px}
.final-call .form-link,.contact-form .form-link{display:inline-flex;align-items:center;min-height:44px}
/* 同じグループの事業所（ほっとステーション悠） */
.yuu-card{margin:16px 0 4px;padding:16px 18px;border:1px solid var(--sakura-line);border-radius:10px;background:var(--card);color:var(--sumi)}
.yuu-label{margin:0;font-size:14px;color:var(--sumi-soft)}
.yuu-name{margin:2px 0 6px;font-family:var(--serif);font-weight:700;font-size:20px;color:var(--sumi)}
.yuu-name small{font-size:14px;font-weight:500;color:var(--sumi-soft);font-family:var(--sans)}
.yuu-lead{margin:0 0 8px;font-size:17px;line-height:1.8}
.yuu-facts{margin:0 0 10px;display:grid;gap:2px}
.yuu-facts>div{display:grid;grid-template-columns:3.5em 1fr;gap:8px;font-size:17px}
.yuu-facts dt{color:var(--sumi-soft)}
.yuu-facts dd{margin:0}
.yuu-tel{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:6px 18px;border:1px solid var(--sakura-line);border-radius:999px;font-weight:700;font-size:18px;color:var(--beni);text-decoration:none}
.yuu-tel span{font-size:14px;font-weight:500;color:var(--sumi-soft)}
.yuu-note{margin:10px 0 0;font-size:14px;color:var(--sumi-soft)}
.faq details .yuu-card{margin-top:14px}
@media (max-width:560px){.yuu-tel{display:flex;width:100%}}
.foot .group a{color:inherit;text-decoration:none}
.foot .group b{font-family:var(--serif);font-size:18px;color:#fff}
.foot .group span{display:block;margin-top:4px;font-size:14px;color:#B9B5B2}
.foot .group span a{color:#E6DFD3;text-decoration:underline;text-underline-offset:.25em}
.yuu-link{display:inline-block;margin-top:10px;font-size:17px;color:var(--beni);text-underline-offset:.3em}
/* 章のとびら：大きな話題の切れ目を、やわらかい帯で示す。同じ話題の中の節は従来の細い線のまま */
.chapter{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin:40px 0 0;padding:14px 18px;border-radius:10px;background:linear-gradient(90deg,var(--sakura),#F4F1EB 70%,var(--paper));border:1px solid var(--sakura-line)}
.chapter+.block{border-top:0;padding-top:28px}
.ch-n{font-family:var(--serif);font-size:14px;letter-spacing:.12em;color:var(--beni);padding:2px 10px;border:1px solid var(--beni);border-radius:999px}
.ch-t{font-family:var(--serif);font-weight:600;font-size:18px;color:var(--sumi);letter-spacing:.04em}
.ch-s{font-size:14px;color:var(--sumi-soft)}
.ch-s:empty{display:none}
.wrap>.chapter:first-child{margin-top:0}
@media (max-width:760px){.chapter{margin-top:28px;padding:12px 16px;gap:10px}.ch-t{font-size:17px}}
/* 訪問診療と往診：2枚の添え絵で対比 */
.two-visit{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:18px 0 10px}
.tv-card{margin:0;padding:12px 12px 14px;border:1px solid var(--sakura-line);border-radius:10px;background:var(--card);display:flex;flex-direction:column;gap:8px}
.tv-card img{width:100%;height:auto;border-radius:8px;mix-blend-mode:multiply}
.tv-card figcaption{display:flex;flex-direction:column;gap:2px}
.tv-card figcaption b{font-size:18px;color:var(--sumi)}
.tv-when{font-size:14px;color:var(--beni);font-weight:700}
.tv-desc{font-size:17px;line-height:1.75;color:var(--sumi-soft);margin-top:4px}
.tv-cal{width:100%;height:auto;margin-top:auto}
@media (max-width:560px){.two-visit{grid-template-columns:1fr}.tv-card{flex-direction:row;flex-wrap:wrap;align-items:flex-start}.tv-card img{width:38%;flex:none}.tv-card figcaption{flex:1;min-width:0}.tv-cal{width:100%}}
@media (min-width:1081px){.page-family #what > div{display:block}}
/* 訪問診療と往診：1か月のカレンダーで対比 */
.cal{margin-top:auto;padding-top:8px;border-top:1px dashed var(--sakura-line)}
.cal-head,.cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}
.cal-d{font-size:14px;color:var(--sumi-soft);text-align:center;line-height:1.4}
.cal-c{position:relative;aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-size:14px;color:#9A9391;background:var(--paper);border-radius:5px;font-variant-numeric:tabular-nums}
.cal-empty{background:transparent}
.cal-we{color:#B9B0AE}
.cal-c.cal-v{background:var(--beni);color:#fff;font-weight:700}
.cal-c.cal-u{color:#fff;font-weight:700;background:transparent}
.cal-c.cal-u i{position:absolute;inset:-9%;background:var(--beni);clip-path:polygon(50% 0%,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%)}
.cal-c.cal-u{isolation:isolate;overflow:visible}
.cal-c.cal-u i{z-index:0}
.cal-c.cal-u{text-shadow:0 0 2px var(--beni)}
.tv-key{display:inline-flex;align-items:center;gap:6px;margin-left:8px;font-size:14px;color:var(--sumi-soft);white-space:nowrap}
.tv-key b{width:12px;height:12px;border-radius:3px;background:var(--beni);display:inline-block}
.tv-key .k-u{clip-path:polygon(50% 0%,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%);border-radius:0;width:14px;height:14px}
@media (max-width:560px){.tv-card .cal{width:100%}.cal-c{font-size:14px}}
.cal-n{position:relative;z-index:1;font-size:14px}
/* 状況別の節：伺う回数のカレンダー */
.freq-fig{margin:18px 0 6px;padding:14px 16px 12px;border:1px solid var(--sakura-line);border-radius:10px;background:var(--card);max-width:420px}
.freq-fig figcaption{display:flex;flex-direction:column;gap:4px;margin-bottom:10px}
.freq-fig figcaption b{font-size:17px;color:var(--sumi)}
.freq-fig figcaption>span{font-size:14px;line-height:1.75;color:var(--sumi-soft)}
.freq-fig .cal{border-top:0;padding-top:0}
.freq-note{margin:10px 0 0;font-size:14px;line-height:1.7;color:var(--sumi-soft)}
/* 訪問診療と往診：3枚目（回数が増えるとき） */
.two-visit{grid-template-columns:repeat(3,minmax(0,1fr))}
.tv-card--more{background:var(--paper)}
.tv-card .freq-note{margin:8px 0 0}
.situ-more{margin:14px 0 0;font-size:17px}
@media (max-width:860px){.two-visit{grid-template-columns:repeat(2,minmax(0,1fr))}.tv-card--more{grid-column:1/-1}}
@media (max-width:560px){.two-visit{grid-template-columns:1fr}.tv-card--more{flex-direction:column}}
.tv-card--more .cal{margin-top:0}.tv-card--more figcaption{margin-bottom:6px}
/* 「どれにも当てはまらない」：受話器は番号の横に。右端の矢印・受話器は出さない */
.situ-grid a.situ-other::after{content:none}
.situ-grid a.situ-other{padding-right:18px}
.situ-grid a.situ-other em{display:inline-flex;align-items:center;gap:8px;margin:6px 0 0;font-size:20px;color:var(--beni);white-space:nowrap}
.situ-grid a.situ-other em i{font-style:normal;font-size:18px;line-height:1}
@media (max-width:480px){.situ-grid a.situ-other{padding-right:14px}.situ-grid a.situ-other em{font-size:18px}}
/* === 位置関係の整理（2026-10-12 点検） === */
/* 1) ページ冒頭の挿絵：文字の上端に揃える（真ん中揃えだと宙に浮く） */
@media (min-width:861px){.ph-illust{align-items:start}.ph-fig{margin-top:4px}}
/* 2) 状況別の節の絵（玄関・犬）：見出し側に寄せて、文字の上端と揃える */
@media (min-width:561px){.situ-with-img{align-items:start}.situ-fig{margin-top:2px}}
/* 3) 私たちについての輪の図：絵と札の上端を揃え、絵の下の空きをなくす */
.ring-sketch{align-items:start}
@media (min-width:761px){.ring-pic{max-width:360px;margin:0 auto}}
/* 4) トップ「夜も休日も」の挿絵：見出しのすぐ下、幅も見出しに合わせる */
@media (min-width:861px){.page-index .night-ill{margin-top:14px;max-width:280px}}
/* 5) アイコンは見出しの行に揃える（箱全体の真ん中にしない） */
.hero-points--sketch li{align-items:start}
.hero-points--sketch li svg,.hero-points--sketch li img{margin-top:2px}
@media (min-width:761px){.care-tiles li{align-items:start}.care-tiles li svg{margin-top:2px}}
/* 6) 3つ並ぶ箱：高さを揃えて、最後の行を下に落とさない */
.three-box>div{justify-content:flex-start}
.two-visit .tv-card{height:100%}
/* スマホのタイル：中身を上に詰めて、アイコンと見出しの間を空けない */
@media (max-width:760px){.care-tiles li{align-content:start;justify-items:start}.care-tiles li svg{margin-top:0;margin-bottom:6px}}
.situ-with-img .situ-more{margin-top:10px}
/* === 改善ループ1 === */
/* 費用：3本の棒 */
.fee-bars{margin:0 0 22px;padding:16px 18px 14px;border:1px solid var(--sakura-line);border-radius:10px;background:var(--card)}
.fee-bars .fee-summary-t{margin:0 0 10px}
.fee-bars ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.fee-bars li{display:grid;grid-template-columns:9.5em minmax(0,1fr) auto;gap:10px;align-items:center;font-size:17px}
.fb-l{color:var(--sumi)}
.fb-bar{position:relative;height:18px;background:var(--paper);border-radius:999px;overflow:visible}
.fb-bar i{display:block;height:100%;width:var(--w);background:var(--beni);border-radius:999px;opacity:.85}
.fb-bar--cap i{opacity:.55}
.fb-bar--cap em{position:absolute;right:-2px;top:-20px;font-style:normal;font-size:14px;color:var(--beni);font-weight:700}
.fb-bar--cap::after{content:"";position:absolute;right:0;top:-6px;bottom:-6px;border-right:2px dashed var(--beni)}
.fb-bar--care i{background:var(--sumi-soft);opacity:.5}
.fee-bars b{font-size:18px;color:var(--sumi);white-space:nowrap}
.fee-bars b small{font-size:14px;margin-left:1px}
.fb-note{margin:12px 0 0;font-size:14px;line-height:1.7;color:var(--sumi-soft)}
.fee-pick{margin:0 0 10px;font-size:17px;color:var(--sumi-soft)}
@media (max-width:480px){.fee-bars li{grid-template-columns:1fr auto;row-gap:4px}.fee-bars .fb-bar{grid-column:1/-1;order:3}.fee-bars li .fb-l{order:1}.fee-bars li b{order:2}}
/* カレンダーの星はマスの中に */
.cal-c.cal-u i{inset:0}
/* 一人暮らしの図：スマホの矢印の文字を中央に */
@media (max-width:860px){.tf-arrow{text-align:center;padding:6px 0 10px;font-size:14px}.tf-arrow::after{left:50%;right:auto;width:2px;height:10px;border-top:0;border-left:2px solid var(--beni);transform:translateX(-50%)}.tf-arrow::before{display:none}}
/* よくある質問：もっと見る */
.faq-more-btn{display:inline-flex;align-items:center;min-height:44px;margin-top:12px;padding:6px 18px;border:1px solid var(--sakura-line);border-radius:999px;background:var(--card);color:var(--beni);font-weight:700;font-size:17px;cursor:pointer}
.faq-more[hidden]{display:none}
/* トップ「目的から探す」：素のリンク羅列をやめ、3枚の札に */
.purpose-grid nav{padding:14px 16px;background:var(--card);border:1px solid var(--sakura-line);border-radius:10px}
.purpose-grid nav h3{margin-top:0}
/* 相談窓口の節の挿絵 */
.consult-ill{display:grid;grid-template-columns:160px minmax(0,1fr);gap:18px;align-items:start}
.consult-ill figure{margin:0}.consult-ill img{width:100%;height:auto;mix-blend-mode:multiply}
@media (max-width:560px){.consult-ill{grid-template-columns:1fr}.consult-ill figure{max-width:220px}}
/* 掲示事項の冒頭の挿絵は小さめ */
@media (min-width:861px){.ph-illust--small{grid-template-columns:minmax(0,1fr) minmax(0,240px)}}
@media (max-width:860px){.ph-illust--small .ph-fig{max-width:220px}}
/* チームの輪（私たちについて・採用） */
.team-ring{margin:12px 0 0;display:grid;grid-template-columns:150px minmax(0,1fr);gap:14px;align-items:center;max-width:560px}
.tr-center{aspect-ratio:1;border-radius:50%;background:var(--sakura);border:2px solid var(--beni);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--sumi)}
.tr-center b{font-size:18px}.tr-center small{font-size:14px;color:var(--sumi-soft)}
.tr-ring{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.tr-ring li{position:relative;padding:8px 12px 8px 26px;background:var(--card);border:1px solid var(--sakura-line);border-radius:10px;font-size:17px;line-height:1.5}
.tr-ring li::before{content:"";position:absolute;left:10px;top:50%;width:8px;height:8px;border-radius:50%;border:2px dashed var(--beni);transform:translateY(-50%);background:var(--card)}
.tr-ring li.tr-main::before{background:var(--beni);border-style:solid}
.tr-ring b{display:block;font-size:17px}.tr-ring small{color:var(--sumi-soft);font-size:14px}
.team-ring figcaption{grid-column:1/-1;font-size:14px;color:var(--sumi-soft)}
@media (max-width:480px){.team-ring{grid-template-columns:1fr}.tr-center{width:120px;margin:0 auto}}
/* 費用の棒：スマホで「上限」の文字を数字と重ねない */
@media (max-width:480px){.fb-bar--cap em{top:-18px;right:4px;background:var(--card);padding:0 4px;border-radius:4px}}
.tr-ring li::before{border:2px solid var(--beni);background:var(--card)}
.tr-ring li.tr-main::before{background:var(--beni)}
/* 挿絵の追加（改善ループ1） */
.sk-fig{margin:0 0 10px;max-width:220px}.sk-fig img{width:100%;height:auto;mix-blend-mode:multiply}
.st-fig{margin:0 0 10px;max-width:200px}.st-fig img{width:100%;height:auto;mix-blend-mode:multiply}
.care-head{display:grid;grid-template-columns:220px minmax(0,1fr);gap:22px;align-items:center;margin-bottom:14px}
.care-ill{margin:0}.care-ill img{width:100%;height:auto;mix-blend-mode:multiply}
.care-lead{margin:6px 0 0;font-size:17px;color:var(--sumi-soft)}
.care-head .minor{margin:0}
.oncall-with-img{display:grid;grid-template-columns:160px minmax(0,1fr);gap:16px;align-items:center;margin-bottom:8px}
.oncall-fig{margin:0}.oncall-fig img{width:100%;height:auto;mix-blend-mode:multiply}
@media (max-width:560px){.care-head{grid-template-columns:1fr}.care-ill{max-width:240px}.oncall-with-img{grid-template-columns:1fr}.oncall-fig{max-width:220px}.sk-fig,.st-fig{max-width:180px}}
/* 家で受けられる診療：PCは左に絵と見出し、右にタイル（文字が縦にならないように） */
@media (min-width:861px){.eye-care{grid-template-columns:300px minmax(0,1fr);gap:40px;align-items:start}.care-head{grid-template-columns:1fr;gap:12px;margin:0}.care-head .minor{writing-mode:horizontal-tb}.care-ill{max-width:260px}}
.care-head{min-width:0}.care-head .minor,.care-lead{writing-mode:horizontal-tb;white-space:normal}
/* 長さを抑える：折りたたみ */
.desk-more{margin-top:10px}.desk-more>summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:8px;min-height:44px;padding:8px 12px;border:1px solid var(--sakura-line);border-radius:10px;background:var(--card);font-weight:700;font-size:17px;color:var(--beni)}
.desk-more>summary::-webkit-details-marker{display:none}.desk-more>summary::before{content:"＋";font-size:17px}.desk-more[open]>summary::before{content:"－"}
.desk-more>.desk-guide{margin-top:10px}
.tv-more>summary{display:none}
@media (max-width:560px){.tv-more>summary{display:flex;align-items:center;min-height:44px;padding:8px 14px;border:1px solid var(--sakura-line);border-radius:10px;background:var(--card);font-weight:700;color:var(--beni);cursor:pointer;list-style:none}.tv-more>summary::-webkit-details-marker{display:none}.tv-more:not([open])>summary::after{content:"＋";margin-left:auto}.tv-more[open]>summary{margin-bottom:10px}}
.fold>summary{cursor:pointer;min-height:44px;display:flex;align-items:center;padding:8px 12px;border:1px solid var(--sakura-line);border-radius:10px;background:var(--card);font-weight:700;color:var(--beni);font-size:17px;margin-top:10px}
.fold[open]>summary{margin-bottom:10px}
/* スマホ：はじめるまでの絵は文字の横に小さく */
@media (max-width:560px){.sketch-steps li,.steps li{display:grid;grid-template-columns:104px minmax(0,1fr);column-gap:12px;align-items:start}.sketch-steps li .sk-fig,.steps li .st-fig{grid-row:1/span 4;max-width:none;margin:0}.sk-fig img,.st-fig img{width:100%}}
@media (max-width:560px){.sketch-steps li,.steps li{grid-template-columns:96px minmax(0,1fr);padding-left:0}.sketch-steps li::before{display:none}}
@media (max-width:760px){.sketch-steps li{display:grid!important;grid-template-columns:104px minmax(0,1fr);column-gap:12px;align-items:start}.sketch-steps li>.sk-fig{grid-row:1/span 4;margin:0;max-width:none}.sketch-steps li>h3{margin-top:0}}
@media (max-width:760px){.sketch-steps li>.sk-fig{grid-column:1}.sketch-steps li>*:not(.sk-fig){grid-column:2}}
/* === 改善ループ2 === */
.other-entries{display:flex;flex-wrap:wrap;gap:8px 22px;margin:12px 0 0;font-size:17px}
.other-entries a{color:var(--beni);font-weight:700;text-underline-offset:.3em}
/* 費用の図：上限の語は金額の上に小さく */
.fee-bars b{display:inline-flex;flex-direction:column;align-items:flex-end;line-height:1.2}
.fb-capword{font-size:14px;color:var(--beni);font-weight:700}
.fb-bar--cap::after{display:none}
/* 3段フロー：PCで1行に収める（3等分） */
@media (min-width:861px){#month .mini-flow,#n-hours .mini-flow,.promise-sub .mini-flow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}#month .mini-flow li,#n-hours .mini-flow li{min-width:0}}
/* 最下部の事業所／採用：採用は1行の帯に */
.split--one{grid-template-columns:1fr}
.recruit-line{display:flex;flex-wrap:wrap;gap:6px 16px;align-items:center;margin:18px 0 0;padding:12px 16px;border:1px solid var(--sakura-line);border-radius:10px;background:var(--card);font-size:17px}
.recruit-line a{color:var(--beni);font-weight:700;text-underline-offset:.3em;margin-left:auto}
.toc-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 28px}
.toc-g{margin:0 0 4px;font-size:14px;color:var(--beni);font-weight:700}
@media (max-width:560px){.toc-groups{grid-template-columns:1fr}}
.tr-ring li.tr-you{background:var(--sakura);border-color:var(--beni)}
.tr-ring li.tr-you::before{background:var(--sakura);border-style:dashed}
.about .team-ring,.page-about .team-ring{margin-top:18px}
/* 状況別の節：スマホは一文だけ見せて開く */
.situ-fold>summary{list-style:none;cursor:default}
.situ-fold>summary::-webkit-details-marker{display:none}
.situ-fold>summary>span{display:none}.situ-fold>summary>i{display:none}
@media (max-width:560px){
  .situ-fold>summary{cursor:pointer;display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border:1px solid var(--sakura-line);border-radius:10px;background:var(--card);font-size:17px;line-height:1.7;font-weight:700;color:var(--sumi)}
  .situ-fold>summary>span{display:block;flex:1}
  .situ-fold>summary>i{display:block;flex:none;width:22px;height:22px;border-radius:50%;background:var(--sakura);position:relative;margin-top:4px}
  .situ-fold>summary>i::before{content:"＋";position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:14px;color:var(--beni);font-style:normal}
  .situ-fold[open]>summary>i::before{content:"－"}
  .situ-fold[open]>summary{margin-bottom:12px}
  .situ-fold[open]>summary>span{display:none}.situ-fold[open]>summary{justify-content:flex-end;background:transparent;border:0;padding:0}
}
/* チームの輪：中心の丸を4枚の札で囲む */
.team-ring{grid-template-columns:minmax(0,1fr) 150px minmax(0,1fr);grid-template-rows:auto auto;gap:12px 14px;max-width:640px}
.team-ring .tr-center{grid-column:2;grid-row:1/span 2;align-self:center}
.team-ring .tr-ring{display:contents}
.team-ring .tr-ring li:nth-child(1){grid-column:1;grid-row:1}
.team-ring .tr-ring li:nth-child(2){grid-column:3;grid-row:1}
.team-ring .tr-ring li:nth-child(3){grid-column:1;grid-row:2}
.team-ring .tr-ring li:nth-child(4){grid-column:3;grid-row:2}
.team-ring .tr-ring li:nth-child(5){grid-column:1/-1;grid-row:3}
.team-ring figcaption{grid-column:1/-1;grid-row:4}
.team-ring .tr-ring li{align-self:center}
@media (max-width:560px){.team-ring{grid-template-columns:1fr 1fr;gap:10px}.team-ring .tr-center{grid-column:1/-1;grid-row:1;width:120px;margin:0 auto}.team-ring .tr-ring li:nth-child(1){grid-column:1;grid-row:2}.team-ring .tr-ring li:nth-child(2){grid-column:2;grid-row:2}.team-ring .tr-ring li:nth-child(3){grid-column:1;grid-row:3}.team-ring .tr-ring li:nth-child(4){grid-column:2;grid-row:3}.team-ring .tr-ring li:nth-child(5){grid-column:1/-1;grid-row:4}.team-ring figcaption{grid-row:5}}
/* 私たちについて：医師の節の挿絵 */
.doc-intro{display:grid;grid-template-columns:200px minmax(0,1fr);gap:18px;align-items:center;margin-bottom:12px}
.doc-ill{margin:0}.doc-ill img{width:100%;height:auto;mix-blend-mode:multiply}
@media (max-width:560px){.doc-intro{grid-template-columns:1fr}.doc-ill{max-width:240px}}
.values-three b{font-size:17px}
/* 町名の折りたたみ */
.town-fold details>summary{cursor:pointer;color:var(--beni);font-weight:700;font-size:17px;list-style:none;padding:4px 0}
.town-fold details>summary::-webkit-details-marker{display:none}
.town-fold details>summary::before{content:"＋ "}.town-fold details[open]>summary::before{content:"－ "}
.town-fold details>div{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}
/* 小さい文字の底上げ（スマホ） */
@media (max-width:560px){.cal-d{font-size:14px}.tf-box small,.hf-aside,.week-band figcaption span,.tv-key{font-size:14px}}
/* 事業所の冒頭の挿絵は横幅いっぱいに */
@media (max-width:860px){.page-partners .ph-fig{max-width:320px}}
@media (max-width:560px){.team-ring .tr-center{width:104px}.tr-center b{font-size:17px}}
/* 訪問の1日：小さなアイコンの横並び */
.day-line{list-style:none;margin:18px 0 0;padding:0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}
.day-line li{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:12px 12px 14px;background:var(--card);border:1px solid var(--sakura-line);border-radius:10px;min-width:0}
.dl-t{font-family:var(--serif);font-size:17px;color:var(--beni);font-weight:600}
.dl-i svg{width:34px;height:34px;color:var(--beni);margin:2px 0 4px}
.day-line b{font-size:17px;line-height:1.45}.day-line small{font-size:14px;line-height:1.55;color:var(--sumi-soft)}
@media (max-width:860px){.day-line{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:560px){.day-line{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.day-line li{padding:10px}.day-line small{font-size:14px}}
/* 採用：要点の札 */
.quick-facts{list-style:none;margin:14px 0 6px;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.quick-facts li{padding:12px 14px;background:var(--card);border:1px solid var(--sakura-line);border-radius:10px;display:flex;flex-direction:column;gap:2px}
.quick-facts b{font-size:17px;color:var(--sumi)}.quick-facts span{font-size:14px;color:var(--sumi-soft)}
@media (max-width:560px){.quick-facts{grid-template-columns:1fr;gap:8px}}
/* 目次：スマホでは2列の札 */
@media (max-width:760px){.page-head .toc{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.page-head .toc li{margin:0}.page-head .toc a{display:flex;align-items:center;min-height:44px;padding:8px 12px;background:var(--card);border:1px solid var(--sakura-line);border-radius:10px;text-decoration:none;font-size:17px;color:var(--beni);font-weight:700}}
/* === 改善ループ3 === */
.fee-bars li{grid-template-columns:1fr;row-gap:6px}
.fee-bars .fb-l{display:flex;justify-content:space-between;align-items:baseline;gap:10px;font-size:17px}
.fee-bars .fb-l b{display:inline-flex;align-items:baseline;gap:6px;font-size:18px;white-space:nowrap}
.fee-bars .fb-l b em{font-style:normal;font-size:14px;color:var(--beni);padding:1px 8px;border:1px solid var(--beni);border-radius:999px}
.fb-bar--cap u{position:absolute;right:12%;top:-6px;bottom:-6px;border-right:2px dashed var(--beni)}
.fb-bar--cap i{opacity:.5}
.pay-title small{display:block;font-weight:400;font-size:14px;color:var(--sumi-soft);margin-top:2px}
.two-visit--pair{grid-template-columns:repeat(2,minmax(0,1fr))}
.cal-one{margin:14px 0 6px;padding:14px 16px;border:1px solid var(--sakura-line);border-radius:10px;background:var(--card);max-width:520px}
.cal-one figcaption{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center;margin-bottom:8px}
.cal-one figcaption>b{font-size:17px}
.cal-one .cal{border-top:0;padding-top:0}
.tv-more-wrap{margin-top:10px}.tv-more-wrap .tv-more>summary{display:flex;align-items:center;min-height:44px;padding:8px 14px;border:1px solid var(--sakura-line);border-radius:10px;background:var(--card);font-weight:700;color:var(--beni);cursor:pointer;list-style:none}
.tv-more-wrap .tv-more:not([open])>summary::after{content:"＋";margin-left:auto}.tv-more-wrap .tv-more[open]>summary::after{content:"－";margin-left:auto}
.tv-more-wrap .tv-card{max-width:520px}
.dg-num{display:block;margin-top:4px;font-weight:700;color:var(--beni);font-size:17px}
.team-ring{margin-left:auto;margin-right:auto}
.team-ring .tr-ring li{height:100%;display:flex;flex-direction:column;justify-content:center}
.fax-paper{max-width:none}
.fold>summary{justify-content:flex-start;gap:8px}.fold>summary::before{content:"＋";font-size:17px}.fold[open]>summary::before{content:"－"}
.block--family{background:linear-gradient(180deg,var(--sakura) 0,#F4F1EB 60%,transparent 100%);background-size:100% 100%;margin:0 -16px;padding-left:16px;padding-right:16px;border-radius:10px}
@media (max-width:560px){.page-suginami .situ-grid,.page-setagaya .situ-grid{grid-template-columns:1fr}}
@media (max-width:560px){.two-visit--pair{grid-template-columns:1fr}}
.care-tiles li{align-content:start}.care-tiles li svg{align-self:start}.care-tiles li span{margin-top:4px}
.fee-bars .fb-l b small{display:inline;font-size:14px;margin-left:1px}
.fee-bars .fb-l b,.fee-bars .fb-l b span{white-space:nowrap;display:inline}
.fee-bars .fb-l{flex-wrap:nowrap}
/* === 改善ループ4 === */
.hero-form{margin:8px 0 0;font-size:17px}.hero-form a{color:var(--beni);text-underline-offset:.3em}
.desk-guide--partner{margin-top:18px}
.desk-guide--partner dd a{color:var(--beni);font-weight:700;text-underline-offset:.25em}
.fold--row{margin:0}.fold--row>summary{margin-top:0;min-height:40px;padding:6px 10px;font-size:17px}
.fold--row[open]>summary{margin-bottom:8px}
.toc-g{display:inline-block;padding:2px 10px;border-radius:999px;background:var(--sakura);color:var(--beni);font-size:14px;margin-bottom:8px}
.page-suginami .map .map-stations,.page-setagaya .map .map-stations{font-size:18px}
.page-suginami .map .map-clinic,.page-setagaya .map .map-clinic{font-size:20px}
@media (max-width:560px){.page-suginami .map .map-stations,.page-setagaya .map .map-stations{font-size:20px}}
.hero-form{flex-basis:100%}@media (max-width:860px){.hero-form{order:7;margin:0 0 8px}}
.tel-staff{display:block;margin-top:4px;font-style:normal;font-weight:700;color:var(--sumi)}
/* 代表番号の横に担当と直通 */
.tel-staff{display:block;margin-top:2px;font-style:normal;font-weight:700;font-size:17px;color:var(--sumi)}
.tel-staff a,.situ-staff a,.foot-staff a,.lines small a{color:var(--beni);font-weight:700;text-underline-offset:.25em}
.hero-cta .tel-staff{flex-basis:100%;margin-top:-10px}
.situ-staff{display:block;flex-basis:100%;font-size:14px;color:var(--sumi-soft);margin-top:4px}
.foot-staff{margin:6px 0 0;font-size:14px;color:#DDD8D5}
.foot-staff a{color:#E6DFD3}
.lines small{display:block;font-size:14px;color:var(--sumi-soft);margin-top:2px}
.situ-cta{flex-wrap:wrap}
@media (max-width:860px){.hero-cta .tel-staff{order:3;margin-top:-12px}}
.so-staff{display:block;margin-top:4px;font-size:14px;font-weight:700;color:var(--sumi)}
.fee-note3 .fee-text{display:block;font-size:14px;line-height:1.75;color:var(--sumi)}
@media (max-width:560px){.fee-item .fee-note3{grid-column:1/-1;margin-top:4px}.fee-item .fee-note3 .fee-key{display:block;margin-bottom:2px}}
/* 「国に届け出ています」の下の空きを詰める（文の後に大きな空白があると続きがあるように見える） */
@media (max-width:860px){.page-index .promise-main{padding-bottom:20px}.promise-pair > div:first-child{padding-top:20px}}
@media (min-width:861px){.page-index .promise-main{padding-bottom:32px}}
/* はじめての方へ：3つの質問（ふだん）→ 夜間の図、の順に。質問は最後の線を消し、夜間の図は上に区切り線 */
.page-index .promise .promise-pair > div:last-child{border-bottom:0}
@media (max-width:860px){.page-index .promise .promise-pair > div:first-child{padding-top:8px}.page-index .promise-main{padding-top:28px;padding-bottom:28px;border-top:1px solid var(--sakura-line);margin-top:8px}}
@media (min-width:861px){.page-index .promise-main{padding-top:40px;padding-bottom:40px;border-top:1px solid var(--sakura-line);margin-top:16px}}
@media (min-width:861px){.page-index .promise .promise-pair > div{border-bottom:0;padding-bottom:16px}}
.map-staff{display:block;margin-top:4px;font-style:normal;font-size:14px;font-weight:700;color:var(--sumi)}.map-staff a{display:inline;margin:0;font-size:inherit;color:var(--beni);text-underline-offset:.25em}
.final-staff{margin:6px 0 14px;font-size:17px;font-weight:700;color:var(--sumi)}
.final-staff a{color:var(--beni);text-underline-offset:.25em}
/* ぼかしを濃くした分、地図の文字に白いふちを付けて読みやすく */
.map svg .map-clinic,.map svg .map-stations text,.map svg .map-wards text{paint-order:stroke fill;stroke:#fff;stroke-width:3.5px;stroke-linejoin:round}

/* 採用：担当並記・仕事内容の一覧 */
.recruit-staff{flex-basis:100%;margin:-6px 0 0!important;font-size:17px;font-weight:700;color:var(--sumi)!important}
.recruit-staff a{color:var(--beni);font-weight:700;text-underline-offset:.25em}
.job-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.job-list li{padding:10px 14px;border:1px solid var(--sakura-line);border-radius:12px;background:var(--card);line-height:1.7}
.job-list li b{display:block;font-size:14px;color:var(--beni);margin-bottom:2px}

/* 事業所ページ：冒頭の「頼めること」4札と連絡先 */
.pt-points{list-style:none;margin:18px 0 4px;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.pt-points li{padding:12px 14px 12px 16px;background:var(--card);border:1px solid var(--sakura-line);border-left:4px solid var(--beni);border-radius:10px;display:flex;flex-direction:column;gap:3px}
.pt-points b{font-size:18px;color:var(--beni)}
.pt-points span{font-size:14px;line-height:1.7;color:var(--sumi-soft)}
.pt-contact{margin-top:22px;padding:18px 20px;background:var(--sakura);border-radius:14px;display:flex;flex-direction:column;gap:14px;align-items:flex-start}
.pt-contact .lines{gap:12px 40px}
.page-partners .page-head .pt-contact .lines div.pt-staff b{font-size:24px;font-weight:700}
.page-partners .page-head .pt-contact .lines div.pt-staff b a{color:var(--beni)}
@media (max-width:560px){.pt-points{grid-template-columns:1fr;gap:8px}.pt-contact{padding:16px}.pt-contact .btn{align-self:stretch}.pt-contact .lines{flex-direction:column;gap:12px}}
.page-partners .page-head .pt-contact .lines{background:none;padding:0;margin:0;border-top:0;width:auto}

/* 事業所ページ：頼み方は2通り */
.two-ways{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0 0 20px}
.tw{padding:16px 18px;background:var(--card);border:1px solid var(--sakura-line);border-radius:12px;display:flex;flex-direction:column;gap:6px}
.tw--move{background:var(--sakura)}
.tw-tag{margin:0;align-self:flex-start;font-size:14px;font-weight:700;color:var(--beni);background:var(--card);border:1px solid var(--sakura-line);border-radius:999px;padding:2px 12px}
.tw b{font-size:18px;color:var(--sumi)}
.tw span{font-size:17px;line-height:1.75;color:var(--sumi-soft)}
@media (max-width:560px){.two-ways{grid-template-columns:1fr}}

/* 事業所ページ：依頼の流れ「ご自宅で診察」の挿絵 */
.flow-node--visit .fv-img{display:block;width:100%;max-width:420px;height:auto;margin:10px auto 0;border-radius:10px}

.docs-ok{margin:14px 0 0;padding:12px 16px;background:var(--sakura);border-radius:10px;font-weight:700;color:var(--sumi);line-height:1.7}

/* 区ページ：区の相談窓口（1件のときのカード） */
.ward-desk{margin:16px 0 0;padding:18px 20px;background:var(--card);border:1px solid var(--sakura-line);border-left:4px solid var(--beni);border-radius:12px;display:flex;flex-direction:column;gap:6px}
.ward-desk .wd-tag{margin:0;font-size:14px;font-weight:700;color:var(--beni)}
.ward-desk b{font-size:18px;line-height:1.5;color:var(--sumi)}
.ward-desk b small{font-size:14px;font-weight:500;color:var(--sumi-soft)}
.block .ward-desk p{margin:0;line-height:1.8}
.ward-desk .wd-note{margin-top:4px;padding-top:10px;border-top:1px dashed var(--rule);font-size:14px;line-height:1.7;color:var(--sumi-soft)}

/* 担当：宮下（直通）に添える一言 */
.staff-note{display:block;margin-top:3px;font-size:14px;font-weight:500;font-style:normal;line-height:1.65;color:var(--sumi-soft);letter-spacing:0}
footer .staff-note{color:#B9B5B2}
.pt-staff .staff-note{max-width:22em}

.ward-desks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px}
.ward-desks .ward-desk{margin:0}
.ward-desk--group{background:var(--sakura)}
@media (max-width:860px){.ward-desks{grid-template-columns:1fr;gap:10px}}

/* 私たちについて：チームで見守る挿絵 */
.team-ill{margin:20px 0 6px}
.team-ill img{display:block;width:100%;max-width:560px;height:auto;margin:0 auto;mix-blend-mode:multiply}
.team-ill figcaption{max-width:560px;margin:8px auto 0;font-size:17px;line-height:1.8;color:var(--sumi-soft)}

/* タッチ端末（スマホ・iPad）では、押せる場所を44px以上にする */
@media (pointer:coarse){
  .toc a{display:inline-flex;align-items:center;min-height:44px}
  .gnav a,footer nav a{display:inline-flex;align-items:center;min-height:44px}
  .town-fold summary{display:flex;align-items:center;min-height:44px}
  .news-filter a,.news-tabs a,[class*="filter"] a{display:inline-flex;align-items:center;min-height:44px}
}

/* 2026-10-13 背景を生成りに（ピンクの面とぼかしをやめる） */
.page-head,.hero,.section{background-image:none!important}
/* 2026-10-13 最下部の「まずは、お電話で。」と番号を控えめに */
.final-big{font-size:clamp(28px,3.4vw,46px)}
.final-tel{font-size:clamp(30px,3.6vw,50px);border-bottom-width:2px;margin-top:14px}
/* 2026-10-13 連絡帯：ボタンと番号以外（担当・使い分けの表など）は横いっぱいに置く（広い画面で表が1文字幅に潰れていた） */
.contact-body > :not(.btn):not(.tel-block){grid-column:1 / -1}

/* ===== 2026-10-14 配色ルール（全ページ共通） =====
   背景＝生成り／面＝灰ベージュ／文字＝温かい墨色／アクセント＝紅（アイコンと同じブランド色）の1色だけ。
   ピンクの面は使わない。紅はボタン・電話・リンク・強調の「点」にだけ使う。 */
:root{
  --paper:#FAF8F4;        /* 背景 */
  --sakura:#F2EEE7;       /* 面（帯・カード地） */
  --sakura-line:#E3DCD1;  /* 面の枠線 */
  --rule:#DDD6CB;         /* 区切り線 */
  --sumi:#2B2926;         /* 本文 */
  --sumi-soft:#5F5A53;    /* 補足の文字 */
  --beni:#A64A29;         /* アクセント（ブランド色・据え置き） */
  --beni-dark:#8F3F22;
}
.site-head{background:rgba(250,248,244,.96)}
.site-head.is-stuck,.site-head[data-stuck]{border-bottom-color:var(--rule)}

/* 理念（ミッション・ビジョン・バリュー） */
.mvv{margin:0 0 22px;padding:0;display:grid;gap:0;border-top:1px solid var(--rule)}
.mvv>div{display:grid;grid-template-columns:9em minmax(0,1fr);gap:6px 20px;padding:16px 0;border-bottom:1px solid var(--rule);align-items:baseline}
.mvv dt{margin:0;font-size:14px;font-weight:700;color:var(--sumi-soft)}
.mvv .mvv-en{display:block;font-family:var(--serif);font-size:14px;letter-spacing:.12em;color:var(--beni);font-weight:600}
.mvv dd{margin:0;font-family:var(--serif);font-weight:600;font-size:clamp(18px,2vw,22px);line-height:1.7;letter-spacing:.03em;color:var(--sumi)}
@media (max-width:560px){.mvv>div{grid-template-columns:1fr;gap:2px}}

/* ===== 2026-10-14 書体（案A 端正）：見出し＝Zen Old Mincho、本文＝Zen Kaku Gothic New。手書き風はやめて見出しの明朝に統一 ===== */
:root{
  --serif:"Zen Old Mincho","Hiragino Mincho ProN","Yu Mincho",serif;
  --sans:"Zen Kaku Gothic New","Hiragino Sans","Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;
  --hand:"Zen Old Mincho","Hiragino Mincho ProN","Yu Mincho",serif;
}
body{font-family:var(--sans)}

/* ===== 2026-10-14 四角（カード）のルールを全ページで統一 =====
   ふつうのカード：白地＋1px の淡い枠線＋角丸10px。
   強調するカード：同じ枠線のまま、左に3pxの紅の線を1本だけ足す（枠全体を紅にしない・太さを変えない）。
   点線の枠はカードには使わない（点線は図の中の「つながり」だけに使う）。 */
.flow-node--key,.mini-flow li.key,.hf-node:first-child,.fr-a a:first-child,.two-clinic>div.us,.memo,.pay-to li.us,
.rt-box:first-child,.yesno>div:first-child,.pt-points li,.ward-desk,.fee-summary{
  border:1px solid var(--sakura-line)!important;border-left:3px solid var(--beni)!important;border-radius:10px}
.flow-node,.ward-desk,.tw,.pt-contact,.job-list li,.desk,.docs-ok,.desk-guide>div,.pt-points li{border-radius:10px}
.desk-guide .dg-care{border:1px solid var(--sakura-line)}

/* ===== 2026-10-14 図形ルール（宮下さん提示の「HP図形セット・白とベージュ」に合わせる） =====
   背景＝やや濃い灰ベージュ。カードは枠線なしの「面」で区切る（白／クリームの2色だけ）。
   形は4種類に限定：角丸の四角（カード）／カプセル（ボタン・タグ）／円（番号・アイコン）／線のみの角丸（補足・控えめな案内）。
   強調は、白いカードの左に紅の線を1本だけ。 */
:root{
  --paper:#F3EFE8;        /* ページの背景（灰ベージュ） */
  --sakura:#FBF6EC;       /* クリームの面（帯・2番手のカード） */
  --sakura-line:transparent; /* カードの枠線はなし */
  --rule:#DDD5C8;
}
.site-head{background:rgba(243,239,232,.96)}
.flow-node,.ward-desk,.tw,.pt-contact,.job-list li,.desk,.docs-ok,.desk-guide>div,.pt-points li,
.situ-grid a,.three-box>div,.quick-facts li,.mini-flow li,.hf-node,.tf-box,.care-tiles li,.fee-summary,.memo,.yesno>div,.rt-box{border-radius:14px}
.desk-guide .dg-care,.ward-desk--line{background:transparent;border:1px solid var(--rule)!important}
/* 図形ルールの仕上げ（2026-10-14）
   1) 紅の線は「流れの中でいちばん大事な一段」だけ。並んだ札（頼めること4枚・相談窓口カード）は白いカードに揃える
   2) 章の区切りはクリームの平らな角丸に（グラデーションをやめる）
   3) 写真の角丸はカードと同じ14px */
.pt-points li,.ward-desk{border-left:0!important}
.pt-points b{color:var(--beni)}
.chapter{background:var(--sakura)!important;border:0!important;border-radius:14px}
main img[src^="img/bicycle"],main img[src^="img/eyelevel"],main img[src^="img/talk"],main img[src^="img/whiteboard"],
.hero-photo img,.eye-photo-band img,.story-grid img{border-radius:14px}


/* ===== 2026-10-14 メリハリ案（白＋クリーム＋紅）と余白 =====
   地＝白。カードは薄いクリーム（--card）。大事な場面の大きな面（帯）はクリーム、その中のカードは白に戻す。
   紅はブランド色。電話ボタンだけ少し深い紅で目立たせる。 */
:root{
  --paper:#FFFFFF; --sakura:#FCF3E2; --card:#FBF5EA; --rule:#E9E2D7;
  --section:128px; --block:88px; --gutter:40px;
}
body{background:#fff;line-height:1.95}
.site-head{background:rgba(255,255,255,.97)}
:is(.area,.final-call,.contact-band,.chapter,.page-index .promise){background:var(--sakura)!important}
:is(.area,.final-call,.contact-band,.pt-contact,.desk,.chapter,.page-index .promise){--card:#FFFFFF}
.btn-primary{background:#B5532F;border-color:#B5532F}
.btn-primary:hover{background:#9A4425;border-color:#9A4425}

/* 余白：ぎっしり感を減らす */
.block{gap:88px}
main p+p{margin-top:1.1em}
.chapter{margin-top:72px;padding:18px 22px}
:is(.situ-grid,.three-box,.pt-points,.ward-desks,.two-ways,.job-list,.quick-facts){gap:16px}
:is(.situ-grid a,.three-box>div,.quick-facts li,.pt-points li,.ward-desk,.tw,.job-list li,.desk-guide>div,.flow-node){padding:20px 22px}
.page-head{padding-bottom:24px}
@media (max-width:860px){
  :root{--gutter:22px;--section:80px;--block:56px}
  html .block{padding-block:56px;gap:22px}
  .chapter{margin-top:48px;padding:16px 18px}
  :is(.situ-grid a,.three-box>div,.quick-facts li,.pt-points li,.ward-desk,.tw,.job-list li,.desk-guide>div,.flow-node){padding:18px}
  :is(.situ-grid,.three-box,.pt-points,.ward-desks,.two-ways,.job-list,.quick-facts){gap:12px}
}

/* 2026-10-15 ベージュを減らす：カードは白＋ごく淡い線。クリームの面は「連絡の帯」と最下部の「まずは、お電話で。」だけ */
:root{--card:#FFFFFF;--sakura-line:#ECE6DC}
:is(.area,.chapter,.page-index .promise){background:#fff!important}
.chapter{border:1px solid var(--sakura-line)!important}
:is(.final-call,.contact-band){background:var(--sakura)!important}

/* ===== 2026-10-15 トップの組み替え（落合式の検証から） ===== */
.hero--v2{padding:56px 0 72px}
.hero2{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:56px;align-items:center}
.hero--v2 h1{margin:14px 0 0;font-family:var(--serif);font-weight:700;font-size:clamp(30px,4.2vw,52px);line-height:1.45;letter-spacing:.04em}
.hero--v2 h1 .line{display:block}
.hero--v2 .hero-def{margin:18px 0 0;font-size:18px;color:var(--sumi-soft)}
.hero-tels{display:grid;gap:10px;margin-top:28px;max-width:30em}
.ht{display:flex;flex-direction:column;gap:2px;padding:14px 20px;border-radius:14px;text-decoration:none}
.ht-role{font-size:14px;font-weight:700;line-height:1.5}
.ht b{font-family:var(--sans);font-weight:700;letter-spacing:.03em;line-height:1.25}
.ht--main{background:#B5532F;color:#fff}.ht--main .ht-role{color:rgba(255,255,255,.88)}.ht--main b{font-size:clamp(26px,3vw,32px)}
.ht--sub{background:#fff;border:1px solid var(--sakura-line);color:var(--sumi)}.ht--sub .ht-role{color:var(--sumi-soft)}.ht--sub b{font-size:clamp(20px,2.2vw,24px);color:var(--beni)}
.hero-staffnote{margin:10px 0 0;font-size:0}.hero-staffnote .staff-note{font-size:14px;margin:0}
.hero-night{margin:12px 0 0;font-size:14px;line-height:1.75;color:var(--sumi-soft);max-width:30em}
.hero--v2 .hero-form{margin:14px 0 0;display:flex;flex-wrap:wrap;gap:4px 14px;align-items:baseline;font-size:17px}
.hero--v2 .hero-form a{color:var(--beni);font-weight:700;text-underline-offset:.3em}
.hero--v2 .hero-form span{font-size:14px;color:var(--sumi-soft)}
.hero2-photo{margin:0}.hero2-photo img{display:block;width:100%;height:auto;border-radius:14px}
.hero2-photo figcaption{margin-top:10px;font-size:14px;color:var(--sumi-soft)}
.qa4-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:28px}
.qa4-card{padding:24px 24px 20px;background:var(--card);border:1px solid var(--sakura-line);border-radius:14px;display:flex;flex-direction:column;gap:8px}
.qa4-tag{margin:0;font-size:14px;font-weight:700;color:var(--beni);letter-spacing:.06em}
.qa4-card h3{margin:0;font-family:var(--serif);font-size:20px;line-height:1.5}
.block .qa4-card p,.qa4-card p{margin:0;font-size:17px;line-height:1.85}
.qa4-amount{display:block;margin:8px 0 4px;font-size:24px;color:var(--sumi)}
.qa4-steps{margin:4px 0 0;padding-left:1.4em;display:grid;gap:6px;font-size:17px;line-height:1.7}
.qa4-steps b{display:block}
.qa4-more{margin-top:auto;padding-top:6px;color:var(--beni);font-weight:700;font-size:17px;text-underline-offset:.3em;align-self:flex-start}
.night2 .sec-lead{margin:10px 0 24px;color:var(--sumi-soft)}
.night2 .promise-sub{max-width:760px}
.care-list{list-style:none;margin:20px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 40px;border-top:1px solid var(--rule)}
.care-list li{padding:14px 0;border-bottom:1px solid var(--rule);font-size:17px;line-height:1.8}
.care-list b{display:block;font-size:14px;color:var(--beni)}
@media (max-width:860px){
  .hero--v2{padding:28px 0 48px}
  .hero2{grid-template-columns:minmax(0,1fr);gap:28px}
  .hero--v2 h1{font-size:clamp(27px,7.6vw,34px)}
  .qa4-grid{grid-template-columns:minmax(0,1fr);gap:12px}
  .qa4-card{padding:20px 18px}
  .care-list{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:420px){.hero--v2 h1{font-size:28px}}
.care2 .care-lead{margin:10px 0 0;color:var(--sumi-soft)}
.care2 .eye-care{display:block;max-width:none}
.care2 .care-list{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:860px){.care2 .care-list{grid-template-columns:minmax(0,1fr)}}

/* 2026-10-15 柿へ変更（エンジ系をやめる）。ボタン・ロゴは柿 #B5532F、文字・リンクは濃い柿 #A64A29 */
:root{--sakura-line:#EEDFD6;--sakura:#F7E8DF}
.hero--v2{background:#FBF1EB!important}
:is(.final-call,.contact-band){background:#F7E8DF!important}

/* 2026-10-15 宮下の一言を出さないので、トップの一言用の行も畳む */
.hero-staffnote{display:none}

/* 2026-10-15 事業所ページの電話ボタン（スマホ）で文字が背景と同じ色になっていた */
@media (max-width:560px){.desk-guide a.dg-tel,a.dg-tel{color:#fff!important}}

/* ===== 2026-10-15 四角の統一（宮下さん：左だけ色を変えた線はAIっぽい） =====
   ふつうの四角：白地＋1pxの淡い枠線＋角丸14px＋同じ余白。
   強調する四角：線は足さず、淡い柿の「面」で塗る（枠線も同じ色にして面だけに見せる）。 */
:root{--card-line:#ECE3DA;--key-fill:#F7E8DF}
.flow-node,.mini-flow li,.hf-node,.fr-a a,.two-clinic>div,.memo,.pay-to li,.rt-box,.yesno>div,.pt-points li,.ward-desk,.fee-summary,.rel-box,.pinned-strip .wrap>a{
  border:1px solid var(--card-line)!important;border-radius:14px!important}
.flow-node--key,.mini-flow li.key,.hf-node:first-child,.fr-a a:first-child,.two-clinic>div.us,.memo,.pay-to li.us,.rt-box:first-child,.yesno>div:first-child,.fee-summary,.rel-box--us,.pinned-strip .wrap>a{
  background:var(--key-fill)!important;border-color:var(--key-fill)!important}
/* 強調の面が、同じ色の帯の上に乗るときは白に戻す（面が消えないように） */
:is(.final-call,.contact-band,.hero--v2) :is(.flow-node--key,.memo,.fee-summary){background:#fff!important;border-color:#fff!important}
/* 見出しの中の改行用 span が、説明文の灰色・小さい文字を拾わないように */
.flow-node b span{display:inline-block;color:inherit!important;font-size:inherit!important;margin:0!important}
/* 分かれ道の2枚も、ほかの四角と同じ余白に */
.flow-split .flow-node{padding:20px 22px!important}
@media (max-width:860px){.flow-split .flow-node{padding:18px!important}}

/* ===== 2026-10-15 展開ボタンの統一（宮下さん：山形の印だけでは開けると分かりにくい） =====
   行ごとに開くもの（よくある質問・費用の年齢別・詳しい費用・事情ごとの折りたたみ）は、右端に同じ丸ボタン。
   閉じている＝柿の線の丸に「＋」、開いている＝柿で塗った丸に白の「－」。 */
:is(.faq details,.fee-age,.fee-more) > summary{padding-right:52px!important;min-height:52px;display:flex;align-items:center}
:is(.faq details,.fee-age,.fee-more) > summary::after{
  content:"＋"!important;position:absolute;right:2px;top:50%;
  width:30px!important;height:30px!important;box-sizing:border-box;border:1.5px solid var(--beni)!important;border-radius:50%;
  transform:translateY(-50%)!important;display:flex;align-items:center;justify-content:center;
  font-size:17px;font-weight:700;line-height:1;color:var(--beni);background:#fff;transition:background .2s,color .2s}
:is(.faq details,.fee-age,.fee-more)[open] > summary::after{content:"－"!important;background:var(--beni);color:#fff}
:is(.faq details,.fee-age,.fee-more) > summary:hover::after{background:var(--key-fill)}
:is(.faq details,.fee-age,.fee-more)[open] > summary:hover::after{background:var(--beni)}
@media (max-width:860px){.situ-fold>summary>i{width:30px;height:30px;background:#fff;border:1.5px solid var(--beni);box-sizing:border-box;margin-top:0}
  .situ-fold>summary>i::before{font-size:17px;font-weight:700}
  .situ-fold[open]>summary>i{background:var(--beni)}.situ-fold[open]>summary>i::before{color:#fff}}
@media (prefers-reduced-motion:reduce){:is(.faq details,.fee-age,.fee-more) > summary::after{transition:none}}
/* 高齢の方にも分かるよう、丸ボタンの横に「ひらく／とじる」を添える */
:is(.faq details,.fee-age,.fee-more) > summary{padding-right:116px!important}
:is(.faq details,.fee-age,.fee-more) > summary::before{content:"ひらく";position:absolute;right:42px;top:50%;transform:translateY(-50%);font-size:14px;font-weight:700;color:var(--beni);letter-spacing:.05em}
:is(.faq details,.fee-age,.fee-more)[open] > summary::before{content:"とじる"}

/* ===== 2026-10-15 高齢の方の読みやすさ：本文まわりの小さい文字を最低15pxに（もともと大きい文字は変えない） ===== */
.back,
.cal-c,
.cal-d,
.cal-n,
.care-list b,
.ch-n,
.ch-s,
.chip,
.contact-form small,
.crumb,
.crumb a,
.day-line b,
.day-line small,
.dc-h em,
.dc-h span,
.desk-hours,
.desk-more summary,
.dg-care span,
.dg-desk span,
.dis-cards p,
.dw-addr,
.dw-btn span,
.family-index-label,
.fb-l em,
.fb-l small,
.fb-note,
.fb-note span,
.fee-columns span,
.fee-key,
.fee-sub,
.fee-text,
.fee-value small,
.flow figcaption,
.flow-node span,
.fold summary,
.foot-staff,
.foot-staff a,
.freq-note,
.go,
.group a,
.group span,
.h2-sub,
.hero-form span,
.hero-night,
.hero-origin,
.hero-photo figcaption,
.hero-place,
.hf-arrow,
.hf-aside,
.hf-who,
.ht-role,
.job-list b,
.key small,
.kubun small,
.kubun td,
.kubun th,
.kubun-n,
.lines small,
.lines span,
.memo a,
.memo figcaption,
.memo-sub,
.mini-flow small,
.mvv dt,
.mvv-en,
.num small,
.off span,
.opt small,
.pay-title small,
.pt-points span,
.pt-staff span,
.quick-facts span,
.recruit-cta p,
.recruit-line a,
.recruit-line span,
.recruit-staff,
.recruit-staff a,
.rel-box span,
.rows small,
.rt-box small,
.situ-label,
.situ-staff,
.situ-staff a,
.so-staff,
.team-ill figcaption,
.tel-staff,
.tel-staff a,
.tf-arrow span,
.tf-box small,
.three-box a,
.three-box span,
.toc a,
.town-fold summary,
.tv-desc,
.tv-key,
.tv-when,
.tw span,
.tw-tag,
.two-clinic figcaption,
.two-clinic span,
.us span,
.ward-desk small,
.wd-tag,
.week-band span,
.yuu-label,
.yuu-name small,
.yuu-note,
.yuu-tel span{font-size:17px!important}

/* ===== 2026-10-15 区分ごとの金額を3列の表に（スマホでも横に読める。高齢の方向けに文字は大きめ） ===== */
.fee-table{width:100%;border-collapse:collapse;margin:8px 0 0;table-layout:fixed;font-variant-numeric:tabular-nums}
.fee-table col{width:auto}
.fee-table thead th{font-size:17px;font-weight:700;color:var(--sumi);text-align:left;padding:12px 10px;border-bottom:2px solid var(--sumi);background:transparent}
.fee-table thead th:first-child{width:34%}
.fee-table tbody th,.fee-table td{padding:16px 10px;border-bottom:1px solid var(--rule);vertical-align:middle;text-align:left}
.fee-table tbody th{font-size:18px;font-weight:700;line-height:1.35}
.fee-table tbody th small{display:block;font-size:17px;font-weight:500;color:var(--sumi-soft);margin-top:2px}
.fee-table td{font-size:20px;font-weight:700;line-height:1.35;color:var(--sumi)}
.fee-table td:last-child{font-weight:500}
.fee-table td small{font-size:17px;font-weight:500;margin-left:1px}
.fee-table sup{font-size:14px;color:var(--beni);margin-left:2px}
.fee-table tbody tr:nth-child(even){background:rgba(255,255,255,.55)}
.fee-table-note{margin:10px 0 0;font-size:17px;line-height:1.75;color:var(--sumi-soft)}
@media (max-width:560px){
  .fee-table thead th{padding:10px 6px;font-size:17px}
  .fee-table tbody th,.fee-table td{padding:14px 6px}
  .fee-table tbody th{font-size:18px}
  .fee-table td{font-size:18px}
}

/* 2026-10-15 上限の計算式（※1〜3）。高齢の方向けに15px以上、※の番号をそろえる */
.kubun-f{list-style:none;margin:14px 0 0;padding:0;font-size:17px;line-height:1.8;font-variant-numeric:tabular-nums}
.kubun-f li{display:flex;gap:10px}
.kubun-f li span{flex:none;color:var(--beni);font-weight:700}
.kubun sup{font-size:14px;color:var(--beni);margin-left:2px}

/* ===== 2026-10-16 まみ中野の比較から足した6項目 ===== */
.ask-list{list-style:none;margin:10px 0 8px;padding:0;display:grid;gap:8px}
.ask-list li{position:relative;padding:12px 14px 12px 40px;background:#fff;border:1px solid var(--card-line);border-radius:12px;font-size:17px;font-weight:700;line-height:1.5}
.ask-list li::before{content:"";position:absolute;left:16px;top:20px;width:9px;height:9px;border-radius:50%;background:var(--beni)}
.ask-list li small{display:block;font-size:17px;font-weight:500;color:var(--sumi-soft)}
.blood-flow{margin-top:20px;padding:20px 22px;border:1px solid var(--card-line);border-radius:14px;background:#fff}
.blood-flow-t{margin:0 0 10px;font-weight:700;font-size:18px}
.blood-flow ol{margin:0;padding-left:1.4em;display:grid;gap:10px;font-size:17px;line-height:1.75}
.blood-flow ol b{display:block}
.blood-alert{margin:14px 0 0;padding:12px 14px;border-radius:10px;background:var(--key-fill);font-size:17px;line-height:1.7}
.req-info{margin-top:24px;padding:20px 22px;border:1px solid var(--card-line);border-radius:14px;background:#fff}
.req-info-t{margin:0 0 8px;font-weight:700;font-size:18px}
.req-info ul{margin:0 0 8px;padding-left:1.3em;display:grid;gap:4px;font-size:17px;line-height:1.75}
.req-info p:last-child{margin:6px 0 0;font-size:17px;color:var(--sumi-soft)}
.mcs-steps{margin:8px 0 0;padding-left:1.4em;font-size:17px;line-height:1.8}
.ask-list li{display:block!important}
.ask-list li small{display:block!important;margin:2px 0 0!important;width:auto!important}

/* 2026-10-16 新ページ用の箇条書き（第1期の下書きで使用） */
.req-list{margin:0 0 12px;padding-left:1.3em;display:grid;gap:6px;font-size:18px;line-height:1.75}

/* ===== 2026-10-17 プロデザイン改善 1回目（物差し：review-loop/pro-design/rubric.md） =====
   1) 箱を減らす：並びの札・要点は箱をやめ、上の細い線と余白で区切る。箱の中の箱をなくす
   2) 角丸は 8px の1種類（ボタン・写真・残す囲みだけ）
   3) 見出しの字間を詰め、上の短い線と番号付きの帯をやめる
   4) 柿色は押せるもの（電話・リンク・ボタン）だけ。ラベルは墨色 */
:root{--r:8px;--line:#E3DDD6}

/* 1) 並びの札 → 線で区切る行 */
html body :is(.situ-grid a,.qa4-card,.pt-points li,.care-tiles li,.dis-cards li,.three-box>div,.quick-facts li,.job-list li,.ask-list li,.tw,.ward-desk,.desk-guide>div){
  background:transparent!important;border:0!important;border-top:1px solid var(--line)!important;border-radius:0!important;box-shadow:none!important;padding:18px 0!important}
html body :is(.situ-grid,.qa4-grid,.pt-points,.care-tiles,.dis-cards,.three-box,.quick-facts,.job-list,.ask-list,.ward-desks){gap:0 32px!important}
html body .ask-list li::before{display:none}
/* ページ内の目次（スマホで箱になっていたもの）→ 下線つきの文字リンクの行 */
html body .page-head .toc a{background:transparent!important;border:0!important;border-bottom:1px solid var(--line)!important;border-radius:0!important;padding:12px 0!important;min-height:44px;font-size:17px;color:var(--beni)}
/* 番号付きの帯をやめる（見出しの大きさと余白で区切る） */
html body .chapter{display:none!important}
html body .chapter+.block{border-top:1px solid var(--line)!important;padding-top:var(--section,96px)}

/* 2) 角丸を1種類に */
html body :is(.flow-node,.fee-summary,.kubun,.memo,.req-info,.blood-flow,.desk,.yesno>div,.rt-box,.pay-to li,.tf-box,.mini-flow li,.rel-box,.docs-ok,.situ-other,.situ-fold>summary,.contact-guide,.dg-main,.dg-care,.hf-node,.fr-a a,.two-clinic>div,.ht--sub,.ht--main,img,figure img,.btn){border-radius:var(--r)!important}
/* 小さなタグ（丸い札）→ ただの太字 */
html body :is(.chip,.tw-tag,.wd-tag,.us,.fee-columns span,.dc-h span,.desk-guide dt span){background:transparent!important;border:0!important;border-radius:0!important;padding:0!important;font-weight:700;color:var(--sumi)!important}

/* 3) 見出し */
html body :is(h1,h2,h3,.h2,.final-big){letter-spacing:.02em!important}
html body .block>h2::before,html body .block > h2::before{display:none!important}

/* 4) ラベルは墨色（柿色は押せるものだけ） */
html body :is(.qa4-tag,.care-list b,.situ-label,.situ-hand,.sk-hand,.fee-key,.tv-key,.tv-when,.dc-h em,.wd-tag,.family-index-label,.yuu-label,.mvv-en,.ch-s,.h2-sub,.kubun-f li span){color:var(--sumi)!important}
/* 1回目の追加：残っていた角丸・丸い札をそろえる */
html body :is(.tv-card,.fee-bars,.pay-from,.bring-memo,.yuu-card,.ring-list,.dw-btn,.yuu-tel,.page-about .day li,.situ-fold>summary){border-radius:var(--r)!important}
html body .ring-list li{background:transparent!important;border:0!important;border-radius:0!important;padding:4px 0!important}
html body .ring-list{gap:4px 20px!important}

/* ===== 2026-10-17 プロデザイン改善 2回目 ===== */
/* 崩れ1：状況リンクの矢印が文字にくっつく → 右に矢印の場所を確保 */
html body .situ-grid a{padding:16px 32px 16px 0!important;min-height:56px}
html body .situ-grid a::after{right:4px!important}
/* 崩れ2：退院などの小さな流れ → 横並びをやめ、縦の手順（左に細い線） */
html body .mini-flow{display:block!important;margin:8px 0 16px!important;padding:0 0 0 18px!important;border-left:2px solid var(--line)}
html body .mini-flow li{display:block!important;background:transparent!important;border:0!important;border-radius:0!important;padding:6px 0!important}
html body .mini-flow li::before{display:none!important}
html body .mini-flow li.key b{color:var(--sumi)}
/* 見出し：かなを詰める（明朝の間延びをなくす） */
html body :is(h1,h2,h3,.h2,.final-big,.sk-hand,.situ-hand){font-feature-settings:"palt";letter-spacing:.01em!important}
/* 残りの箱：流れ図の各段・開閉カード → 線の区切り */
html body .flow-node{background:transparent!important;border:0!important;border-top:1px solid var(--line)!important;border-radius:0!important;padding:14px 0!important}
html body .flow-node--key b{font-size:18px}
html body .flow-split .flow-node{padding:14px 0!important}
html body .situ-fold>summary{background:transparent!important;border:0!important;border-top:1px solid var(--line)!important;border-radius:0!important;padding:16px 0!important}
html body .situ-fold>summary>i{border:0!important;background:transparent!important;width:auto!important}
html body .situ-fold>summary>i::before{content:"＋ くわしく"!important;position:static!important;font-size:15px!important;font-weight:700;color:var(--beni)!important}
html body .situ-fold[open]>summary>i::before{content:"− とじる"!important;color:var(--beni)!important}
/* 柿色は押せるものだけ：要点の見出しは墨色 */
html body :is(.pt-points b,.pt-points strong,.pt-points li>b,.dg-desk b,.dg-main b,.dg-care b,.desk-guide dt b){color:var(--sumi)!important}
html body :is(.rel-note,.tf-arrow span,.dl-t,.timeline dt,.years dt,.page-about dl dt,.town-list dt,.line-list dt,main dt,.fee-table sup,.kubun sup,.fb-l em){color:var(--sumi)!important}
/* カレンダーの日付を読める濃さに（高齢の方向け） */
html body .cal-c,html body .cal-d{color:#4B4F4D!important}
html body .cal-we{color:#6B6563!important}
html body .cal-v{color:#fff!important}

/* ===== 2026-10-17 プロデザイン改善 3回目 ===== */
/* 崩れ：線だけにした部品の角丸を確実に0に（1回目の角丸指定より強く） */
html body main :is(.flow-node,.situ-fold>summary,.situ-other,.dg-main,.fee-more,.flow-split .flow-node){border-radius:0!important}
html body main .situ-other{background:transparent!important;border:0!important;border-top:1px solid var(--line)!important}
/* 崩れ：手順の名前と説明を分ける */
html body main :is(.mini-flow,.flow-steps,.flow-split) :is(b,strong){display:block!important;margin-bottom:2px}
html body main :is(.mini-flow,.flow-steps,.flow-split) :is(small,span){display:block!important}
/* 帯のぼかし（区切りの飾り）を外す */
html body main section.block::before{background-image:none!important}
/* スマホの状況リンクは1列（3行に折れないように） */
@media (max-width:600px){html body .situ-grid{grid-template-columns:1fr!important}}
/* 3者の関係図：丸と箱をやめて線の区切りに */
html body main :is(.rel-box,.rel-box--us){background:transparent!important;border:0!important;border-top:1px solid var(--line)!important;border-radius:0!important;padding:14px 0!important}

/* ===== 2026-10-17 プロデザイン改善 4回目 ===== */
/* 3者の関係図 → 2行の並び（丸・つなぎ線をやめる） */
html body main .relation{display:block!important;margin:0 0 24px!important}
html body main :is(.rel-me,.rel-link){display:none!important}
html body main .relation .rel-box b{display:inline;margin-right:.6em}
html body main .relation .rel-box span{display:inline}
/* 流れ：∨の矢印をやめ、左の細い縦線で手順を示す */
html body main .flow-steps{border-left:2px solid var(--line);padding-left:18px!important}
html body main .flow-steps>li::after{display:none!important}
html body main .flow-split .ph{display:inline!important}
/* 手順の中の淡い柿色の段 → 太字だけで強調 */
html body main :is(.flow-node--key,.mini-flow li.key){background:transparent!important;border-color:var(--line)!important}
html body main .flow-node--key b{font-weight:800}
html body main :is(.relation,figure.relation,div.relation){display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:0!important}
html body main .relation>*{grid-column:1/-1!important}
html body main .relation .rel3{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:0!important;padding:0!important}
html body main .mini-flow li.key{border:0!important}
html body main .flow-node--key{border:0!important;border-top:1px solid var(--line)!important}

/* ===== 2026-10-17 ブランド案B（宮下さん決定）：「Claudeの美学」から外す =====
   ・クリーム／淡い柿の帯 → 淡いグレー（#F3F3F1）
   ・見出しは明朝 → ゴシックの太字（本文と同じ Zen Kaku Gothic New）。院名（ロゴの文字）だけ明朝を残す
   ・柿色は押せるもの（電話・ボタン・リンク）だけ */
:root{--mincho:"Zen Old Mincho",serif;--serif:"Zen Kaku Gothic New",sans-serif;--hand:"Zen Kaku Gothic New",sans-serif;
  --sakura:#F3F3F1;--key-fill:#F3F3F1;--sakura-line:#E3E3E0;--line:#E3E3E0}
html body .hero--v2{background:#F3F3F1!important}
html body :is(.final-call,.contact-band){background:#F3F3F1!important}
html body :is(h1,h2,h3,.h2,.final-big,.sk-hand,.situ-hand,.page-head h1,.hero h1,.hero--v2 h1){font-family:var(--serif)!important;font-weight:700!important;letter-spacing:0!important}
html body .brand-name{font-family:var(--mincho)!important}
html body main .bring-memo{background:#F3F3F1!important}
/* 案Bの仕上げ：区切り線をグレーに統一／「どれにも当てはまらない」の電話をページの主役のボタンに */
:root{--rule:#DDDDDA;--card-line:#E3E3E0;--line:#E3E3E0}
html body main a.situ-other{background:#B5532F!important;color:#fff!important;border:0!important;border-radius:var(--r)!important;padding:18px 20px!important;min-height:56px;margin-top:12px}
html body main a.situ-other *{color:#fff!important}
html body main a.situ-other::after{color:#fff!important;right:16px!important}

/* ===== 2026-10-17 灰色の小さい補足を減らす =====
   灰色は「読み飛ばしてよい補足」（パンくず・写真の説明・注記・担当表記・カレンダー）だけに使う。
   読んでほしい説明は本文の色・本文の大きさに戻す。 */
/* 説明文 → 本文の色・17px */
html body main :is(.flow-node span,.three-box span,.dis-cards p,.pt-points span,.tw span,.tv-desc,.day-line small,.mini-flow small,.key small,.rel-box span,.care-lead,.fee-pick,.fb-note,.pay-to span,.us span,.hero-night,.situ-other span,.memo-sub,.fee-cond-sub){color:var(--sumi)!important;font-size:18px!important}
/* 操作の案内・表の中身 → 本文の色・16px */
html body :is(.contact-form small,.desk-hours,.contact-desc span,.hero-form span,.quick-facts span,.ask-list small,.kubun td,.yesno span,.yesno small,.fee th,.num,.pay-title small,.kubun small,.fb-note span,.for,.ht-role){color:var(--sumi)!important;font-size:17px!important}
html body main a.situ-other span{color:#fff!important}
html body .ht--main .ht-role,html body .ht--main *{color:#fff!important}
html body .ht--sub .ht-role{color:var(--sumi)!important}
html body main :is(.fee-summary-t,.cal-one b,.freq-note){color:var(--sumi)!important}
html body main :is(.hero-def,.sec-lead,.page-lead){color:var(--sumi)!important}
/* 「どれにも当てはまらない」：面は白に戻し、電話番号だけを柿色のボタンに（トップの代表電話と同じ形） */
html body main a.situ-other{background:transparent!important;color:var(--sumi)!important;border:0!important;border-top:1px solid var(--line)!important;border-radius:0!important;padding:18px 0!important}
html body main a.situ-other *{color:var(--sumi)!important}
html body main a.situ-other::after{display:none!important}
html body main a.situ-other em{display:inline-flex!important;align-items:center;gap:8px;min-height:56px;padding:0 24px!important;margin:12px 0 6px;border-radius:var(--r);background:#B5532F;color:#fff!important;font-style:normal;font-weight:700;font-size:20px}
html body main a.situ-other em *{color:#fff!important}
html body main a.situ-other span,html body main a.situ-other b,html body main a.situ-other .ph,html body main a.situ-other small{color:var(--sumi)!important}
html body main a.situ-other em span,html body main a.situ-other em i{color:#fff!important}
html body main a.situ-other em{align-self:flex-start!important;width:auto!important;max-width:100%}

/* ===== 2026-10-17 余白を広げる（宮下さん：余白もっとあってもいい）＝強弱を付けて広げる =====
   大きな区切り＞まとまりの下＞見出しと本文＞段落＞並びの行 の順に、差をはっきり付ける */
:root{--section:168px;--block:112px}
@media (max-width:860px){:root{--section:104px;--block:72px}}
@media (max-width:860px){html body .block{gap:32px!important}}
html body main p+p{margin-top:1.4em}
html body :is(.situ-grid a,.qa4-card,.pt-points li,.care-tiles li,.dis-cards li,.three-box>div,.quick-facts li,.job-list li,.ask-list li,.tw,.ward-desk,.desk-guide>div){padding:22px 0!important}
html body .situ-grid a{padding:22px 32px 22px 0!important}
html body main .flow-node{padding:18px 0!important}
html body .page-head{padding-bottom:40px!important}
html body :is(.final-call,.contact-band){padding-top:calc(var(--section) * .8)!important;padding-bottom:calc(var(--section) * .8)!important}

/* ===== 2026-10-17 行間と1行の長さ（プロの目安：行間1.7〜1.8倍、日本語30〜40字） ===== */
html body{line-height:1.8!important}
html body main :is(p,li,dd){line-height:1.8}
@media (min-width:861px){
  html body main :is(.block p,.block li,.page-lead,.sec-lead,.hero-def,.rows dd){max-width:40em}
}

/* ===== 2026-10-17 比べるときに確かめたいことの表（トップ2番目） =====
   左＝どの医院にも聞いてほしい質問、右＝長澤の答え。箱にせず、行を細線で区切る */
html body .compare-list{margin:40px 0 0;border-top:2px solid var(--sumi)}
html body .compare-list>div{display:grid;grid-template-columns:minmax(0,15em) minmax(0,1fr);gap:8px 40px;padding:24px 0;border-bottom:1px solid var(--line)}
html body .compare-list dt{font-weight:700;font-size:18px;line-height:1.7;color:var(--sumi)}
html body .compare-list dd{margin:0;font-size:18px;line-height:1.8;color:var(--sumi);max-width:none}
html body .compare-list dd a{margin-left:.6em;color:var(--beni);font-weight:700;white-space:nowrap}
html body .compare-foot{display:flex;flex-wrap:wrap;align-items:center;gap:16px 24px;margin-top:32px}
html body .compare-foot p{margin:0;font-size:17px;color:var(--sumi)}
html body .compare-print{min-height:48px;padding:0 22px;border:1.5px solid var(--sumi);border-radius:var(--r);background:#fff;color:var(--sumi);font:inherit;font-size:17px;font-weight:700;cursor:pointer}
html body .compare-print:hover{background:var(--sakura)}
html body .compare-print:focus-visible{outline:3px solid var(--beni);outline-offset:3px}
@media (max-width:860px){html body .compare-list>div{grid-template-columns:minmax(0,1fr);gap:6px;padding:20px 0}}
/* 印刷するときは、この表と連絡先だけを紙に出す（比較表のあるトップだけ） */
@media print{
  html body:has(main>.compare) .site-head,html body:has(main>.compare) footer,html body:has(main>.compare) main>section:not(.compare),html body .compare-print,html body .sticky-cta,html body [class*="fixed"],html body .compare-foot p{display:none!important}
  html body .compare{padding:0!important}
  html body .compare::after{content:"長澤訪問クリニック　代表 090-6496-5588　杉並区高井戸東2-13-8";display:block;margin-top:16px;font-size:12pt}
  html body .compare-list dd a{display:none}
}
@media print{html body .mbar{display:none!important}}
@media print{html body:has(main>.compare) main > *:not(.compare){display:none!important}}

/* ===== 2026-10-17 動きの整理（動きは「操作への返事」だけ） ===== */
/* 1) 開いたときに見出し・写真がふわっと出る動きをやめる（すぐ読めるように） */
html body .hero--v2 :is(.line,h1,h1 *,img,figure){animation:none!important;opacity:1!important;transform:none!important}
/* 2) ページ内で飛んだ先を、1.2秒だけ淡く示す（どこに来たか分かるように）。追従ヘッダーに隠れないよう上を空ける */
html body [id]{scroll-margin-top:88px}
html body :target{animation:target-here 2s ease-out 1}
@keyframes target-here{0%,50%{background-color:#FBE9DF}100%{background-color:transparent}}
/* 3) 電話・ボタンを押した瞬間に、押せたと分かる返事（少し濃くなる） */
html body :is(.btn-primary,.ht--main,a.situ-other em,.compare-print):active{filter:brightness(.88)}
html body :is(.btn-primary,.ht--main,.compare-print){transition:filter .1s ease}
@media (prefers-reduced-motion:reduce){html body :target{animation:none!important}html body :is(.btn-primary,.ht--main,.compare-print){transition:none}}

/* ===== 2026-10-17 アクセシビリティ点検（WCAG 2.1 AA）の修正 ===== */
/* 読み上げ専用の文 */
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
/* 本文へ移動：キーボードで最初に止まったときだけ見える */
.skip-link{position:absolute;left:12px;top:-60px;z-index:1000;padding:12px 18px;border-radius:var(--r);background:var(--sumi);color:#fff;font-weight:700;text-decoration:none}
.skip-link:focus{top:12px}
/* カレンダーの訪問日・往診日の数字は白（柿色の地の上で読めるように） */
html body :is(.cal-v,.cal-u) .cal-n,html body .cal-v{color:#fff!important}
/* PCで見た目は隠している折りたたみの見出しも、読み上げでは名前が伝わるように */
@media (min-width:561px){html body .situ-fold>summary>span{display:block!important;position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}}

/* 2026-10-17 本文18px・補足17pxへ（まみ中野との比較から。高齢の方の読みやすさ） */
html body{font-size:18px}
html body .hero-cert{margin:14px 0 0;font-size:17px;font-weight:700;color:var(--sumi)}

/* 2026-10-17 スマホの改行の点検（WebKit＝iPhoneと同じ表示エンジンで確認） */
.dw-addr{word-break:normal;overflow-wrap:normal}
.week-band li.off span{white-space:nowrap}
/* 開閉の質問は、文の途中に部品があっても1つの文として折り返す */
/* 狭い画面で2列に詰めると1行4〜6字になるため、1列にする */
@media (max-width:480px){
  .flow-split{grid-template-columns:minmax(0,1fr)!important}
  .day-line{grid-template-columns:minmax(0,1fr)}
  .day-line li{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:14px;row-gap:2px;align-items:start}
  .day-line .dl-t{grid-column:1;grid-row:1;margin:0!important}
  .day-line .dl-i{grid-column:1;grid-row:2 / span 2}
  .day-line b{grid-column:2;grid-row:1}
  .day-line small{grid-column:2;grid-row:2}
}
/* トップの大見出し：「こちらから伺います。」の10字が、どの幅のスマホでも1行に入る大きさにする */
@media (max-width:440px){html body #hero-title{font-size:calc((100vw - 48px) / 10.4)}}
/* 比べる表の「詳しく」リンク：狭い画面では、リンクごと次の行へ送る（はみ出さない） */
html body .compare-list dd a{display:inline-block;max-width:100%;white-space:normal}
/* カレンダーの凡例：iPhoneで1行に収まらずはみ出していたため、2つ目を折り返せるようにする */
.tv-key{display:block;white-space:normal;margin-left:0}
.tv-key b{vertical-align:-1px;margin-right:6px}
/* 画面下の2つのボタン：小さいスマホでも1行に */
@media (max-width:360px){html body .mbar a{font-size:16px;padding:0 6px;white-space:nowrap;letter-spacing:0}}
/* 歩みの年表：スマホでは年を上に置き、文を全幅で読めるようにする（1行7〜8字になっていたため） */
@media (max-width:480px){html body .timeline div{grid-template-columns:minmax(0,1fr);gap:4px}}
/* 計算式：中の数字のかたまりが「※」の札と同じ太字・固定幅にならないように */
html body .kubun-f li .ft,html body .kubun-f li .ft span{flex:1 1 auto;min-width:0;font-weight:400}
html body .kubun-f li .ft span{flex:none}

/* 2026-10-18 夜間の流れの図（1本の線で3場面をつなぐ）。PCは横長1枚、スマホは3枚を縦に */
.nf{margin:0 0 40px}
.nf-wide{display:block;width:100%;height:auto}
.nf-steps{list-style:none;margin:16px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.nf-steps li img{display:none}
.nf-steps b{display:block;font-size:18px;line-height:1.5;margin-bottom:6px}
.nf-steps span{display:block;font-size:17px;line-height:1.8}
@media (max-width:760px){
  .nf-wide{display:none}
  .nf-steps{grid-template-columns:minmax(0,1fr);gap:32px}
  .nf-steps li img{display:block;width:100%;height:auto;margin-bottom:10px}
}
/* ご用意いただくもの：テーブルに並べた絵と、一覧を並べる（絵の5つの物＝一覧の項目） */
.bring-wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;align-items:center}
.bring-wrap .bring-memo{order:-1;margin:0}
.bring-fig{margin:0}.bring-fig img{display:block;width:100%;height:auto}
@media (max-width:760px){.bring-wrap{grid-template-columns:minmax(0,1fr);gap:16px}.bring-wrap .bring-memo{order:0}}
/* 2026-10-18 改行の追加の直し */
/* 料金表の区分名（限度額証なし・限度額区分Ⅱ）は途中で折らない／金額の「円」を数字から離さない */
html body .fee-table tbody th small{white-space:nowrap}
/* ご様子のお伝えの図：タブレット幅では真ん中の「当院」の箱が細くなりすぎるため、広げる */
@media (min-width:761px) and (max-width:1100px){.tell-fig{grid-template-columns:minmax(0,1.1fr) 120px minmax(0,1.3fr) 120px minmax(0,1.1fr)}.tf-box{padding:12px 8px}}
/* 数字と「円」「※」は、分けられない1かたまり（iPhoneでも折れない） */
.nwb{display:inline-block;white-space:nowrap}
/* 「どれにも当てはまらない」の担当表記：中の番号まで1行ずつに分かれていたため、文の中に戻す */
html body .situ-grid a.situ-other .so-staff span{display:inline;font-size:inherit}
/* 金額側は縮ませない（左の説明文のほうを折り返す）。金額と円・※は1行に */
html body .fee-bars .fb-l b{flex:none}
/* 持ち物リスト：2行目に折り返したとき、□の右の文字の位置にそろえる */
html body .bring-memo li{padding-left:24px;text-indent:-24px}
html body .bring-memo li small.memo-sub{text-indent:0;margin-left:0}

/* 2026-10-18 持ち物リストの印刷：ボタンを押したときだけ、絵とリストと連絡先を1枚に出す */
.bring-print-btn{margin-top:14px;min-height:48px;padding:0 22px;border:1.5px solid var(--sumi);border-radius:var(--r);background:#fff;color:var(--sumi);font:inherit;font-size:17px;font-weight:700;cursor:pointer}
.bring-print-btn:hover{background:var(--sakura)}
.bring-print-btn:focus-visible{outline:3px solid var(--beni);outline-offset:3px}
.bring-items{display:block;width:100%;height:auto;margin:0 0 12px}
.bring-print-only{display:none}
@media print{
  html.print-bring body *:not(:has(.bring-sheet)):not(.bring-sheet):not(.bring-sheet *){display:none!important}
  html.print-bring body :has(.bring-sheet){display:block!important;margin:0!important;padding:0!important;border:0!important;min-height:0!important;grid-template-columns:none!important}
  html.print-bring .bring-sheet .bring-memo{max-width:none}
  html.print-bring .bring-print-btn,html.print-bring .bring-fig{display:none!important}
  html.print-bring .bring-print-only{display:block!important;font-size:12pt;margin:0 0 10px}
  html.print-bring .bring-wrap{display:block}
  html.print-bring .mbar,html.print-bring .site-head{display:none!important}
}
/* ③今の先生との関係：情報の並びは絵と同じ左→右。スマホでは絵の区画ごとに縦に */
.nf--rel{margin:8px 0 0}
/* スマホの図解：1枚の絵が画面いっぱいにならないよう、高さを抑える */
@media (max-width:760px){html body .nf-steps li img{width:auto;max-width:100%;max-height:240px;margin:0 auto 10px}}
html body .bring-wrap .bring-sheet{order:-1}
html body .bring-wrap .bring-sheet .bring-memo{order:0;margin:0}
@media (max-width:760px){html body .bring-wrap .bring-sheet{order:0}}
@media print{
  @page{margin:16mm}
  html.print-bring .bring-print-only:first-child{font-size:12pt;margin:0 0 6mm}
  html.print-bring .bring-print-only:first-child b{display:block;font-size:20pt;line-height:1.4;margin-bottom:2mm}
  html.print-bring .bring-items{margin:0 0 6mm}
  html.print-bring .bring-memo{background:#fff!important;border:1.5px solid #34383B!important;padding:6mm 7mm!important;transform:none!important}
  html.print-bring .bring-memo li{font-size:16pt!important;line-height:2.3!important}
  html.print-bring .bring-memo li::before{width:16pt;height:16pt}
  html.print-bring .bring-memo li small{font-size:12pt!important}
  html.print-bring .bring-memo figcaption{font-size:13pt!important;margin-top:3mm}
  html.print-bring .bring-sheet > p.bring-print-only:last-of-type{font-size:13pt;margin-top:6mm}
}
/* 事業所の方への担当表記：中の時刻・かっこのかたまりが1行ずつに分かれないように */
html body .pt-staff > span span{display:inline!important;font-size:inherit}
/* 2026-10-18 全ページ点検：PCで細すぎた箱を広げる */
/* 訪問の1日：PCの6列では1行5字になるため、3列×2段に */
@media (min-width:861px){html body .day-line{grid-template-columns:repeat(3,minmax(0,1fr))}}
/* ご様子のお伝えの図：PCでも真ん中の「当院」の箱を広く */
@media (min-width:1101px){html body .tell-fig{grid-template-columns:minmax(0,1fr) 120px minmax(0,1.3fr) 120px minmax(0,1fr)}}
/* 「折らない印」(.nw) は、どの場所でも文の中に置く（周りの「1行ずつ並べる」設定に巻き込まれないように） */
html:root body span.nw.nw.nw{display:inline!important;margin:0!important;padding:0!important;border:0!important;font-size:inherit!important;font-weight:inherit;color:inherit!important;background:none!important}
/* 折らない印の中では「あふれたら折る」を止める（iPhoneで 85,800円／〜※ と折れていたため） */
html:root .nw,html:root .nwb{overflow-wrap:normal!important;word-break:keep-all}
/* スマホのよくある質問：「ひらく／とじる」を丸ボタンの下に置き、見出しの文字に幅を使う */
@media (max-width:560px){
  html body :is(.faq details,.fee-age,.fee-more) > summary{padding-right:56px!important;min-height:76px;box-sizing:border-box}
  html body :is(.faq details,.fee-age,.fee-more) > summary::after{transform:translateY(-85%)!important}
  html body :is(.faq details,.fee-age,.fee-more) > summary::before{right:0;top:calc(50% + 12px);transform:none;width:auto;text-align:right;letter-spacing:0}
}
/* なるべく丸ごと次の行へ送る語（.ib）。入りきらないときだけ、中の区切りで折る */
html:root body span.ib.ib.ib{display:inline-block!important;margin:0!important;padding:0!important;border:0!important;font-size:inherit!important;color:inherit!important;background:none!important;max-width:100%;text-indent:0}
/* トップの「1952年から」年表：スマホでは年を上、文を下に（本文の列が140pxしかなかったため） */
@media (max-width:480px){html body .years-row li{grid-template-columns:minmax(0,1fr)!important;row-gap:4px}}
/* PC（小さめの画面）：左の見出し列が180pxで1行7字になっていたため広げる。目次のリンクは1行に */
@media (min-width:1000px) and (max-width:1199px){html body .block{grid-template-columns:232px minmax(0,1fr);gap:36px}}
/* 861〜999px：見出しを上に置き、本文の幅を広げる（3列の箱が1つ160pxまで細くなっていたため） */
@media (min-width:861px) and (max-width:999px){html body .block{grid-template-columns:minmax(0,1fr);row-gap:24px}}
@media (min-width:861px){html body .page-head .toc a{white-space:nowrap}}
/* ご依頼の流れ（横3列）：PCでも幅が狭いうちは縦に並べる */
@media (min-width:861px) and (max-width:959px){html body .flow-steps--row{grid-template-columns:minmax(0,1fr);gap:22px}html body .flow-steps--row > li:not(:last-child)::after{right:auto;left:24px;top:auto;bottom:-17px;transform:rotate(45deg)}}
/* 電話・メールのボタン：番号の途中で折らない */
html body .dw-btn{word-break:normal;overflow-wrap:normal;white-space:nowrap}
/* 訪問の1日：7インチのタブレット幅では2列に */
@media (min-width:481px) and (max-width:760px){html body .day-line{grid-template-columns:repeat(2,minmax(0,1fr))}}
