:root{--blue:#4542ad;--green:#248438;--ink:#27344c;--line:#dce3e6}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:white;color:var(--ink);font:17px/1.9 "BIZ UDPGothic","Yu Gothic",Meiryo,sans-serif}a{color:inherit;text-decoration:none}a:hover{filter:brightness(.85)}a:focus-visible,summary:focus-visible{outline:3px solid #c36a00;outline-offset:5px}.wrap{width:min(1160px,calc(100% - 80px));margin:auto}.demo{font-size:11px;text-align:center;background:#f1f4f3;color:#5b6369;padding:3px;letter-spacing:.1em}header{display:flex;align-items:center;justify-content:space-between;padding-block:24px}.brand{display:flex;align-items:center;gap:12px;line-height:1.5}.brand img{object-fit:contain}.brand strong{display:block;font-size:25px;letter-spacing:.02em}.brand small{display:block;font-size:12px}.brand .en{font-size:9px;letter-spacing:.16em;color:var(--blue)}.headtel{text-align:right;line-height:1.5}.headtel small{display:block;font-size:12px}.headtel a{display:block;font-size:28px;font-weight:bold;letter-spacing:.03em;color:var(--blue)}.nav{border-block:1px solid var(--line)}.nav .wrap{display:flex;justify-content:space-between}.nav a{padding:15px 30px;font-size:16px;font-weight:bold}.nav a:last-child{color:var(--green)}.hero{position:relative;display:grid;grid-template-columns:1.1fr 1fr;min-height:520px;margin-top:30px;margin-bottom:75px;background:#f3f7f5;border-radius:4px;overflow:hidden}.hero-copy{padding:64px 0 64px 52px;z-index:1}.eyebrow{color:var(--green);font-size:12px;font-weight:bold;letter-spacing:.16em;margin:0 0 14px}h1{font-size:clamp(30px,3.3vw,44px);line-height:1.65;letter-spacing:.07em;margin:16px 0 18px}.lead{font-size:18px}.departments{font-size:14px;color:#54616b;margin:20px 0 26px}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:30px;min-height:56px;padding:12px 25px;border-radius:4px;font-size:16px;font-weight:bold;line-height:1.6}.primary{background:var(--blue);color:white}.outline{border:1px solid var(--blue);color:var(--blue)}.art{position:relative;overflow:hidden;background:linear-gradient(135deg,#edf3ef,#e3f0ee)}.ring{position:absolute;border:1px solid #92b6b3;border-radius:50%;width:520px;height:520px;right:-160px;top:55px}.r2{width:620px;height:620px;right:-210px;top:5px;border-color:#b9cfcc}.r3{width:740px;height:740px;right:-270px;top:-55px;border-color:#cfddda}.sun{position:absolute;right:72px;top:65px;width:76px;height:76px;border-radius:50%;background:#fffdf0;box-shadow:0 0 70px #fff9d9}.leaf{position:absolute;width:260px;height:125px;border-radius:100% 0 100% 0;transform:rotate(-38deg);background:linear-gradient(45deg,#899aa9,#a2c3ca);bottom:100px;right:-35px;opacity:.65}.l2{background:linear-gradient(45deg,#8bb39e,#cee0ad);width:205px;height:105px;right:90px;bottom:57px;transform:rotate(18deg)}.art p{position:absolute;top:170px;left:50px;font-size:24px;line-height:2;letter-spacing:.14em;color:#365e57;writing-mode:vertical-rl}.art>small{position:absolute;bottom:24px;right:28px;font-size:10px;letter-spacing:.22em;color:#4c6862}.station{position:absolute;right:27px;top:28px;display:flex;gap:12px;align-items:center;background:white;padding:14px 20px;border-radius:4px;line-height:1.6;z-index:2}.metro{border:2px solid var(--blue);border-radius:50%;font-size:18px;font-weight:bold;width:36px;height:36px;text-align:center;color:var(--blue)}.station small{display:block;font-size:11px}.station strong{display:block;font-size:17px}.station b{color:var(--green);margin-left:8px}.hours{display:grid;grid-template-columns:280px 1fr;gap:40px;padding-bottom:55px;border-bottom:1px solid var(--line)}h2{font-size:32px;line-height:1.65;letter-spacing:.05em;margin:0 0 20px}.hours>div>p:not(.eyebrow){font-size:14px;margin:8px 0}.textlink{font-size:14px;color:var(--blue);border-bottom:1px solid #babbd8}table{width:100%;border-collapse:collapse;text-align:center;font-size:17px}th,td{padding:16px 6px;border-bottom:1px solid var(--line)}thead{background:#f1f5f3}thead th{font-size:15px}tbody th{font-size:16px;white-space:nowrap}td{color:var(--blue)}caption{caption-side:bottom;text-align:left;font-size:12px;color:#54616b;padding-top:10px}.schedule .note{text-align:right;font-size:14px;margin-top:-25px}.section{padding-block:80px}.about,.checkup{display:grid;grid-template-columns:1fr 1.4fr;gap:90px}.about>div>p:first-child:not(.eyebrow),.checkup>div>p:first-child:not(.eyebrow){margin-top:0}.points{display:grid;gap:10px;margin-top:30px}.points span{border-top:1px solid var(--line);padding-top:10px;font-size:15px}.points b{font-size:12px;color:var(--green);margin-right:20px}.services{background:#f3f7f5}.section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:34px}.section-head h2{margin:0}.section-head>p{font-size:16px;color:#54616b;margin:0 0 4px}.cards{display:grid;grid-template-columns:1fr 1fr;gap:24px}.cards article{position:relative;background:white;border-top:3px solid var(--blue);border-radius:3px;padding:30px 32px}.cards article.green{border-color:var(--green)}.cards article>small{font-size:11px;color:var(--blue);letter-spacing:.1em;font-weight:bold}.cards .green>small{color:var(--green)}h3{font-size:25px;line-height:1.5;margin:20px 0 8px}.symbol{position:absolute;right:30px;top:21px;color:var(--blue);font-size:34px;line-height:1}.green .symbol{color:var(--green)}article>b{font-size:14px;color:#54616b}article>p{font-size:16px;margin:14px 0 20px}details{border-top:1px solid var(--line);padding-top:10px;font-size:15px}summary{cursor:pointer;color:var(--blue);font-weight:bold;padding:7px 0;min-height:44px}details ul{padding-left:22px;margin-bottom:0}.beauty{display:flex;align-items:center;gap:18px;padding:24px 0 0;font-size:15px}.beauty b{font-size:12px;background:#e6eae8;padding:2px 14px;border-radius:3px}.beauty p{color:#54616b;margin:0}.checkup h2{font-size:30px}.tags{display:flex;gap:10px;flex-wrap:wrap;margin:25px 0}.tags span{background:#eff5f0;color:#2a6438;padding:5px 15px;font-size:14px;border-radius:3px}.access{background:#f6f7fb}.access-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px}.access h3{font-size:22px;margin-top:0}.route{border-left:3px solid var(--green);padding-left:20px;margin:28px 0}.route p{font-size:16px;margin:7px 0}.guide{background:white;padding:32px;border-radius:4px}.guide ol{padding-left:28px}.guide li{padding-left:12px;margin:20px 0}.guide li::marker{color:var(--green);font-weight:bold}.guide li p{font-size:14px;color:#54616b;margin:4px 0}.transport{border-top:1px solid var(--line);margin-top:25px}.transport p{font-size:14px}.contact{text-align:center}.contact h2{font-size:25px;margin-bottom:12px}.phone{font-size:40px;font-weight:bold;color:var(--blue);letter-spacing:.04em;line-height:1.5}.contact>p:last-child{font-size:14px;color:#54616b}footer{border-top:1px solid var(--line);padding:32px 0 25px}.footer-top{display:flex;align-items:center;justify-content:space-between}.footer-top .brand strong{font-size:20px}.footer-top>a:last-child{font-size:13px;color:var(--blue);padding:12px}.footer-bottom{display:flex;justify-content:space-between;margin-top:25px;color:#54616b;font-size:11px}.fixed,.mobile{display:none}.skip{position:absolute;left:10px;top:-100px;background:white;padding:10px;z-index:10}.skip:focus{top:10px}
@media(max-width:1000px){.wrap{width:calc(100% - 48px)}.brand strong{font-size:21px}.headtel small:last-child{display:none}.nav a{padding-inline:14px}.hero-copy{padding:45px 0 45px 30px}h1{font-size:32px}.hero{grid-template-columns:1.3fr 1fr;min-height:490px}.station{right:15px;top:15px;padding:10px}.art p{left:35px;font-size:20px}.hours{grid-template-columns:220px 1fr;gap:20px}th,td{padding:15px 3px}.about,.checkup{gap:40px}.access-grid{gap:35px}.cards article{padding:25px}.cards h3{font-size:22px}}
@media(max-width:700px){body{font-size:16px}.wrap{width:calc(100% - 40px)}.demo{font-size:10px}header{padding-block:17px}.brand{gap:8px}.brand img{width:44px;height:44px}.brand small{font-size:10px}.brand strong{font-size:18px;letter-spacing:0}.brand .en{font-size:7px;letter-spacing:.12em}.headtel{display:none}.nav .wrap{width:100%;overflow-x:auto}.nav a{font-size:13px;white-space:nowrap;padding:12px 12px;flex:1;text-align:center}.hero{width:100%;margin-top:0;margin-bottom:30px;min-height:0;display:block;border-radius:0;isolation:isolate}.hero-copy{padding:30px 24px 34px}.hero .eyebrow{font-size:11px;letter-spacing:.1em;margin-top:82px}h1{font-size:30px;letter-spacing:.035em;line-height:1.65;margin:15px 0}.lead{font-size:16px}.departments{font-size:13px;line-height:1.8;margin:15px 0 22px}.mobile{display:block}.art{position:absolute;inset:0;z-index:-1;background:linear-gradient(120deg,#f2f7f3 45%,#e1eeeb)}.ring{width:390px;height:390px;right:-300px;top:180px}.r2{width:490px;height:490px;right:-350px;top:130px}.r3{width:590px;height:590px;right:-400px;top:80px}.sun{width:50px;height:50px;right:15px;top:120px;opacity:.6}.leaf{right:-135px;bottom:55px;opacity:.45}.l2{right:-85px;bottom:20px;opacity:.35}.art p,.art>small{display:none}.station{left:24px;right:24px;top:20px;padding:10px 14px;gap:12px}.station strong{font-size:18px}.station small{font-size:10px}.metro{flex-shrink:0}.hero .button{min-width:220px}.hours{display:block;padding-bottom:30px}.hours>div:first-child{margin-bottom:18px}.hours h2{font-size:26px;margin-bottom:4px}.hours>div>p:not(.eyebrow){font-size:13px}.hours .eyebrow{font-size:10px;margin-bottom:5px}.textlink{display:none}table{font-size:14px}th,td{padding:13px 2px}thead th{font-size:12px}tbody th{font-size:12px;letter-spacing:-.03em}.schedule .note{margin:5px 0 0;font-size:13px;text-align:left}.section{padding-block:46px}h2{font-size:27px}.eyebrow{font-size:10px}.about{display:block}.about h2 br{display:none}.points{gap:7px;margin-top:23px}.points span{font-size:14px}.section-head{display:block;margin-bottom:25px}.section-head>p{font-size:14px;margin-top:10px}.cards{grid-template-columns:1fr;gap:18px}.cards article{padding:24px}.cards article>small{font-size:10px}.cards h3{font-size:23px;margin-top:16px}article>b{font-size:13px}.symbol{right:22px}.beauty{flex-wrap:wrap;gap:12px;padding-top:20px}.beauty p{flex-basis:100%;font-size:13px}.checkup{display:block}.checkup h2{font-size:26px}.checkup .button{width:100%;font-size:14px;gap:10px}.tags{margin:18px 0}.access-grid{display:block}.access h3{font-size:20px}.route b{font-size:16px}.access .button{width:100%;font-size:14px;gap:10px}.guide{margin-top:28px;padding:25px 20px}.contact h2{font-size:22px}.phone{font-size:31px}.contact>p:last-child{font-size:13px}footer{padding-bottom:110px}.footer-top{display:block}.footer-top .brand strong{font-size:18px}.footer-top>a:last-child{display:block;margin-top:18px;padding-left:0}.footer-bottom{display:block;font-size:10px;margin-top:12px}.footer-bottom small{display:block;margin-top:12px}.fixed{position:fixed;bottom:0;left:0;right:0;display:grid;grid-template-columns:1fr 1.15fr 1fr;background:white;border-top:1px solid var(--line);z-index:5;padding-bottom:env(safe-area-inset-bottom);box-shadow:0 -4px 18px #293d4c0a}.fixed a{display:flex;align-items:center;justify-content:center;gap:7px;min-height:62px;color:var(--blue);font-size:20px}.fixed span{font-size:14px;font-weight:bold}.fixed .call{color:white;background:var(--blue)}html{scroll-padding-top:15px}}
@media(max-width:370px){.brand strong{font-size:16px}.brand img{width:38px;height:38px}h1{font-size:27px}.nav a{padding-inline:9px}.phone{font-size:28px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media print{.demo,.nav,.fixed{display:none}.section{padding-block:25px}article{break-inside:avoid}footer{padding-bottom:20px}}
/* ゆるやかな曲線と余白で、地域の医院らしい親しみを。 */
.hero{border-radius:28px 28px 100px 28px;background:#f4f7f2}
.hero-copy{padding-bottom:78px}
.art{border-radius:48% 0 0 38% / 65% 0 0 45%;margin-left:-12px;background:linear-gradient(155deg,#e9f0e9,#e0ece8)}
.ring{border-color:#abc4bd;transform:rotate(-16deg);border-radius:46% 54% 56% 44% / 49% 42% 58% 51%}
.r2{border-color:#c4d5cf;transform:rotate(13deg)}
.r3{display:none}
.leaf{border-radius:90% 12% 85% 18%;background:linear-gradient(45deg,#8ba5ae,#b8d0d2)}
.l2{background:linear-gradient(45deg,#97b7a0,#d6e2b9)}
.station{border-radius:22px 22px 22px 6px;padding:16px 22px}
.button{border-radius:28px;padding-inline:28px}
.button span{font-size:20px;font-weight:400}
.eyebrow{letter-spacing:.09em}
.hero .eyebrow{letter-spacing:.12em}
.section-head>p{line-height:1.8}
.services{border-radius:50% 50% 46% 46% / 38px 38px 30px 30px;padding-top:92px;padding-bottom:84px}
.cards{column-gap:44px;row-gap:30px}
.cards article{border-top:0;border-radius:28px 28px 42px 10px;padding:34px 34px 28px}
.cards article::before{content:"";display:block;width:38px;height:3px;background:var(--blue);border-radius:4px;margin-bottom:17px}
.cards article.green::before{background:var(--green)}
.cards article>small{letter-spacing:.06em}
.symbol{top:38px;right:32px}
.cards article:nth-child(even){transform:translateY(20px)}
.beauty{margin-top:30px}
.points span{padding-block:11px;border-top:0;border-bottom:1px solid var(--line)}
.tags span{border-radius:20px;padding-inline:18px}
.access{border-radius:90px 0 0 0;background:#f4f6f8}
.guide{border-radius:32px 32px 12px 32px}
.guide li::marker{font-size:19px}
.route{border-left:0;position:relative;padding-left:23px}
.route::before{content:"";position:absolute;left:0;top:4px;bottom:4px;width:4px;border-radius:100%;background:var(--green)}
.contact{position:relative}
.contact::before{content:"";display:block;width:56px;height:14px;border-top:2px solid #a8bfae;border-radius:50%;margin:0 auto 22px;transform:rotate(-8deg)}
@media(max-width:1000px){.cards{gap:26px}.cards article{padding:28px}.symbol{right:26px;top:33px}}
@media(max-width:700px){
.hero{border-radius:0 0 48px 0}
.hero-copy{padding-bottom:44px}
.art{border-radius:0;margin-left:0;background:linear-gradient(115deg,#f4f7f2 48%,#e5eee7)}
.station{border-radius:18px 18px 18px 5px;padding:10px 14px}
.ring{right:-315px}.r2{right:-365px}
.services{border-radius:50% 50% 0 0 / 18px 18px 0 0;padding-block:54px}
.cards{gap:20px}
.cards article{padding:26px;border-radius:24px 24px 34px 9px}
.cards article:nth-child(even){transform:none}
.cards article::before{margin-bottom:15px;width:30px}
.symbol{top:31px;right:25px}
.beauty{margin-top:4px}
.access{border-radius:44px 0 0 0}
.guide{border-radius:26px 26px 10px 26px}
.button{padding-inline:24px}
}
@media print{.cards article:nth-child(even){transform:none}.services,.access{border-radius:0}}
/* 読みやすさを優先した、はっきりした配色と案内 */
:root{--blue:#383e9c;--green:#236f35;--ink:#202e42;--line:#b9c7c1}
body{font-size:18px;line-height:1.95}
.eyebrow{font-size:13px;color:#34613d}
.hero{margin-bottom:28px;background:#eff6e9}
.hero h1{letter-spacing:.025em}
.lead{font-size:20px}
.departments{font-size:17px;color:#273b36}
.art{background:#e3f0dd}
.walking{position:absolute;width:100%;height:auto;left:0;bottom:42px;max-height:380px}
.art .art-message{writing-mode:horizontal-tb;top:122px;left:0;right:0;text-align:center;font-size:21px;font-weight:700;color:#294f32;letter-spacing:.02em;margin:0}
.art>small{bottom:16px;right:0;left:0;text-align:center;font-size:12px;color:#3e5141;letter-spacing:0}
.station{border:2px solid #4a7c42}
.station small{font-size:13px}
.station strong{font-size:22px}
.station b{color:#236f35}
.quick-links{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:48px}
.quick-links a{border:2px solid var(--blue);color:var(--blue);background:#f0f2ff;border-radius:16px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:17px 22px;font-size:18px;min-height:72px}
.quick-links a:first-child{background:#edf5e4;color:#235b2c;border-color:#3f7d38}
.quick-links a>span:first-child{font-size:28px;line-height:1}
.nav a{font-size:18px;padding-inline:20px}
.hours>div>p:not(.eyebrow),.textlink{font-size:16px}
.schedule thead{background:#deecd7}
.schedule th,.schedule td{padding:16px 6px}
.schedule td{font-size:16px;font-weight:700}
.schedule .day-open{color:#284b2e;background:#f2f8ee}
.schedule .day-closed{color:#554b46;background:#edeae7}
.schedule caption{font-size:14px;color:#344337}
.schedule .note{margin:10px 0 0;text-align:left;font-size:17px;font-weight:700;color:#354238}
.services{background:#eaf3e2}
.section-head>p{font-size:18px;color:#334238}
.cards article{border:2px solid #b6c0df;padding-top:28px}
.cards article.green{border-color:#adc9a2}
.cards article:nth-child(even){transform:none}
.cards article::before{display:none}
.cards article>small{font-size:12px;color:#394b70;display:block;max-width:calc(100% - 104px);min-height:74px;line-height:1.7;padding-top:10px}
.cards .green>small{color:#2a6033}
.care-illustration{position:absolute;right:24px;top:17px;width:100px;height:86px;border-radius:22px;background:#e8edfc;display:flex;align-items:center;justify-content:center}
.green .care-illustration{background:#e6f1de}
.care-illustration svg{width:91px;height:76px}
.cards h3{font-size:27px;margin-top:15px}
article>b{font-size:17px;color:#2e414c}
article>p{font-size:18px}
summary{font-size:17px;min-height:48px}
details ul{font-size:17px}
.beauty{font-size:18px}
.beauty b{font-size:15px;background:#d8e2d2;color:#304835}
.beauty p{color:#354337;font-size:16px}
.points span{font-size:17px}.points b{font-size:16px}
.tags span{font-size:17px;color:#24582c;background:#e4f0dc}
.button{font-size:18px;min-height:60px}
.access{background:#eaf0f8}
.access .route p{font-size:18px}
.guide{border:1px solid #bdcadb}
.guide li p,.transport p{font-size:17px;color:#34424b}
.contact>p:last-child{font-size:17px;color:#34424b}
.header-contact,.headtel small{font-size:14px}
.brand small{font-size:14px}
@media(max-width:1000px) and (min-width:701px){.quick-links a{font-size:16px;padding:14px}.art .art-message{font-size:17px;top:150px}.walking{bottom:50px}.station strong{font-size:19px}.station small{font-size:12px}.nav a{font-size:16px}.hours{grid-template-columns:200px 1fr}.schedule td{font-size:14px}}
@media(max-width:700px){
body{font-size:18px}.brand small{font-size:11px}.brand strong{font-size:18px}.nav a{font-size:15px;padding:13px 14px}.nav .wrap{justify-content:flex-start}.nav a{flex:0 0 auto}
.hero{margin-bottom:20px}.hero-copy{padding-bottom:180px}.hero .eyebrow{font-size:13px;margin-top:96px}.hero h1{font-size:30px}.lead{font-size:18px}.departments{font-size:16px}.station{top:18px}.station strong{font-size:21px}.station small{font-size:12px}
.art .art-message{display:none}.walking{width:235px;height:210px;left:auto;right:8px;bottom:0;max-height:none}.art>small{display:none}
.quick-links{grid-template-columns:1fr;gap:10px;margin-bottom:32px}.quick-links a{font-size:18px;min-height:62px;padding:12px 20px}.quick-links a>span:first-child{font-size:25px}
.hours>div>p:not(.eyebrow){font-size:17px}.hours .eyebrow{font-size:12px}.schedule th,.schedule td{padding:14px 2px}.schedule tbody th{font-size:12px}.schedule thead th{font-size:13px}.schedule td{font-size:13px;white-space:nowrap}.schedule caption{font-size:13px}.schedule .note{font-size:16px}
.section-head>p{font-size:17px}.cards article{padding:25px 23px}.cards article>small{font-size:11px;min-height:76px}.care-illustration{right:20px;top:19px;width:94px;height:82px}.care-illustration svg{width:86px;height:72px}.cards h3{font-size:25px}article>b{font-size:16px}article>p{font-size:18px}details ul{font-size:17px}summary{font-size:17px}
.beauty p{font-size:16px}.checkup .button,.access .button{font-size:16px}.access-address>p{font-size:18px}.route b{font-size:17px}.guide li p,.transport p{font-size:17px}.contact>p:last-child{font-size:16px}.fixed span{font-size:16px}.fixed a{min-height:68px}.fixed a:first-child{background:#e3f0d9;color:#23572d}.fixed a:last-child{background:#edf0ff;color:#30378b}
}
@media(max-width:370px){.brand strong{font-size:16px}.hero h1{font-size:27px}.schedule td{font-size:12px}.fixed span{font-size:15px}.cards h3{font-size:23px}}
@media print{.cards article>small{min-height:74px}.quick-links{display:none}}
.access-map{margin:0 0 40px;background:#fff;border:2px solid #c3cebe;border-radius:24px;overflow:hidden;padding:20px;text-align:center}
.access-map img{display:block;width:min(100%,850px);height:auto;margin:auto;border-radius:12px}
.access-map figcaption{margin-top:15px;font-size:20px;font-weight:700;color:#23572d}
.access-map figcaption span{display:block;font-size:14px;font-weight:400;color:#455247;margin-top:5px}
@media(max-width:700px){.access-map{margin-bottom:30px;padding:8px 5px 15px;border-radius:18px}.access-map img{border-radius:10px}.access-map figcaption{font-size:18px;padding:0 8px}.access-map figcaption span{font-size:13px;line-height:1.7}}
/* 駅案内・見出し・イラストを順に並べ、文字拡大時も重ならない配置に。 */
@media(min-width:701px){
.hero-visual{min-width:0;background:#e3f0dd;display:flex;flex-direction:column;border-radius:70px 0 0 70px;overflow:hidden}
.hero-visual .station{position:static;align-self:flex-end;margin:24px 24px 0 30px;max-width:calc(100% - 54px);flex-shrink:0}
.hero-visual .station>div{min-width:0}
.hero-visual .art{position:static;margin:0;border-radius:0;display:flex;flex:1;flex-direction:column;align-items:center;padding:0 20px 18px;overflow:visible;min-width:0}
.hero-visual .art .art-message{position:static;writing-mode:horizontal-tb;font-size:21px;line-height:1.7;margin:24px 0 8px;flex-shrink:0}
.hero-visual .walking{position:static;display:block;width:100%;height:auto;max-height:340px;flex-shrink:0}
.hero-visual .art>small{position:static;display:block;font-size:12px;margin-top:auto;padding-top:8px;line-height:1.7}
.access-map{width:min(100%,620px);margin:0 auto 36px;padding:16px}
.access-map img{width:100%;max-width:580px}
.access-map figcaption{font-size:19px}
}
@media(min-width:701px) and (max-width:1000px){
.hero-visual .station{margin:20px 15px 0 20px;max-width:calc(100% - 35px);padding:12px;gap:8px}
.hero-visual .art{padding-inline:12px}
.hero-visual .art .art-message{font-size:17px;margin-top:22px}
}
@media(max-width:700px){.hero-visual{display:contents}}
/* 地図への導入文を、地図と同じ中心線に揃える。 */
.access .section-head{margin-bottom:20px}
.map-lead{margin:0 auto 16px;text-align:center;font-size:20px;font-weight:700;line-height:1.8;color:#23572d}
@media(max-width:700px){.map-lead{font-size:18px;margin-bottom:14px}}
/* 青い背景に、白い読み取り面と写真を組み合わせる。 */
:root{--blue:#254fa0;--green:#236b3d;--ink:#20364d;--line:#b4cbe0}
body{background:#e4f0fc}
header{background:#fff}.header,.nav{background:white}
body>header.wrap{width:100%;padding-inline:max(24px,calc((100% - 1160px)/2))}
.nav{border-top-color:#d4e2ef;border-bottom:3px solid #386ab2}
.hero{background:#d7eafb;border-radius:28px 28px 80px 28px}
.hero-copy .eyebrow{color:#244f81}.hero h1{color:#214e87}
.departments{color:#263f56}
.hero-visual{background:#cee4fa}
.hero-visual .station{border-color:#3c69aa;background:#fff;color:#243a51}
.hero-visual .station b{color:#25549a}
.hero-visual .art{display:flex;padding:20px;gap:0;background:transparent}
.hero-photo{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:30px 8px 30px 8px}
.hero-visual .art .art-message{font-size:22px;color:#214e87;margin:18px 0 4px;position:static}
.quick-links a,.quick-links a:first-child{background:white;color:#254f92;border-color:#4775b4}
.hours{background:#fff;padding:30px;border:1px solid #a9c4df;border-radius:24px;gap:30px}
.schedule thead{background:#d7eafb}
.schedule .day-open{background:#edf5ff;color:#214e87}
.schedule .day-closed{background:#e7eaef;color:#4c5360}
.about,.checkup{gap:70px}
.section-photo{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:24px 8px 24px 8px;margin-top:28px}
.check-photo{max-height:215px;aspect-ratio:2/1;margin-top:20px}
.services{background:#cfe4fa}
.eyebrow{color:#315a88}
.cards article,.cards article.green{border-color:#9bb9db}
.care-illustration,.green .care-illustration{background:#e5effc}
.cards .green>small{color:#315786}
.beauty b{background:#e6eef8;color:#315579}
.points span{border-color:#afc9e1}
.tags span{background:white;color:#244f81;border:1px solid #a6c3df}
.access{background:#cfe4fa}
.access-map{border-color:#94b3d5}
.map-lead,.access-map figcaption{color:#244f81}
.guide{border-color:#a1bddb}
.contact{background:#f7fbff;border-radius:36px;margin-block:28px}
.contact::before{border-color:#618cbb}
footer{background:white}
@media(max-width:1000px) and (min-width:701px){.about,.checkup{gap:35px}.hero-visual .art{padding:16px}.hero-visual .art .art-message{font-size:18px}.hours{grid-template-columns:185px 1fr;padding:24px;gap:18px}}
@media(max-width:700px){
.hero{border-radius:0 0 44px 0;background:#d7eafb;display:flex;flex-direction:column}
.hero-copy{padding-bottom:25px}.hero .eyebrow{margin-top:98px}
.hero-visual{display:contents}
.hero-visual .station{position:absolute;left:24px;right:24px;top:18px;margin:0;max-width:none}
.hero-visual .art{position:static;inset:auto;z-index:auto;background:transparent;border-radius:0;margin:0;padding:0 24px 25px;display:block}
.hero-photo{aspect-ratio:16/9;border-radius:24px 6px 24px 6px;object-position:center 48%}
.hero-visual .art .art-message{display:block;position:static;writing-mode:horizontal-tb;text-align:center;font-size:19px;margin:14px 0 0;line-height:1.7}
.hours{padding:22px 12px;border-radius:20px}.hours>div:first-child{padding-inline:6px}
.section-photo{max-height:230px;margin:22px 0 26px}.check-photo{max-height:190px}
.contact{padding-inline:12px;border-radius:24px}
.fixed a:first-child,.fixed a:last-child{background:#e1eefd;color:#244f81}
}
/* 老眼の方にも読みやすい、大きな本文と十分な行間。 */
body{font-size:20px;line-height:1.9}
.lead{font-size:22px}.departments{font-size:19px}
.about p,.checkup p:not(.eyebrow),article>p{font-size:20px}
article>b,details ul,summary,.points span{font-size:19px}
.section-head>p,.map-lead,.access-map figcaption{font-size:21px}
.button,.quick-links a{font-size:20px;min-height:64px}
.hours>div>p:not(.eyebrow),.textlink,.schedule .note{font-size:19px}
.schedule thead th,.schedule tbody th{font-size:18px}
.schedule td.day-open{font-size:25px;line-height:1.5}
.schedule td.day-closed{font-size:17px}
.schedule caption{font-size:17px}
.route b,.access .route p,.guide li p,.transport p,.contact>p:last-child{font-size:19px}
.headtel a{font-size:32px}.headtel small{font-size:15px}
.phone{font-size:44px}.brand small{font-size:15px}
.beauty p,.tags span{font-size:18px}
.access-map figcaption span{font-size:16px}
@media(min-width:701px) and (max-width:1000px){.hours{display:block}.hours>div:first-child{margin-bottom:22px}.hero-copy{padding-left:24px}.departments{font-size:17px}.quick-links a{font-size:18px;padding-inline:14px}.nav a{padding-inline:12px}}
@media(max-width:700px){
body{font-size:19px;line-height:1.9}
.hero .eyebrow{font-size:15px}.lead{font-size:20px}.departments{font-size:17px}
.about p,.checkup p:not(.eyebrow),article>p{font-size:19px}
article>b,details ul,summary,.points span{font-size:18px}
.section-head>p,.map-lead,.access-map figcaption{font-size:19px}
.button,.checkup .button,.access .button,.quick-links a{font-size:18px;min-height:64px}
.hours>div>p:not(.eyebrow),.schedule .note{font-size:18px}
.schedule table{table-layout:fixed}
.schedule thead th:first-child{width:108px}
.schedule th,.schedule td{padding:15px 1px}
.schedule thead th{font-size:14px}
.schedule tbody th{font-size:14px;letter-spacing:-.05em}
.schedule td.day-open{font-size:22px}
.schedule td.day-closed{font-size:13px;letter-spacing:-.08em}
.schedule caption{font-size:16px}
.route b,.access .route p,.guide li p,.transport p,.contact>p:last-child{font-size:18px}
.nav a{font-size:16px}.brand small{font-size:12px}.brand strong{font-size:18px}
.phone{font-size:34px}.contact h2{font-size:24px}
.beauty p{font-size:17px}.tags span{font-size:17px}
.fixed span{font-size:17px}.fixed a{min-height:72px}
.access-map figcaption span{font-size:15px}
}
@media(max-width:370px){.brand strong{font-size:16px}.schedule thead th:first-child{width:99px}.schedule tbody th{font-size:13px}.schedule td.day-closed{font-size:12px}.fixed span{font-size:15px}.phone{font-size:30px}}
/* 下層ページ共通 */
.nav a[aria-current="page"]{color:#173f7e;background:#e5effb;border-bottom:3px solid #315d9d}
.breadcrumb{padding-top:22px;font-size:16px;color:#425e78}.breadcrumb a{text-decoration:underline;text-underline-offset:4px}
.page-hero{padding:36px 42px 40px;background:#cfe4fa;border-radius:20px 20px 58px 20px;margin-top:20px}
.page-hero h1{font-size:40px;margin:8px 0 14px;line-height:1.5;overflow-wrap:anywhere}.page-hero>p:last-child{font-size:21px;max-width:850px;margin-bottom:0}
.subpage .section{padding-block:60px}.sub-band{background:#d3e6fa;border-radius:50px 0 0 0}
.info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.info-block{background:white;border:1px solid #a6bed8;padding:28px;border-radius:24px 8px 24px 8px;min-width:0}
.info-block h3{font-size:24px;margin:0 0 15px;line-height:1.6}.info-block p{font-size:20px;margin:0;overflow-wrap:anywhere}
.specialty-intro{display:flex;align-items:center;gap:30px;margin-bottom:52px;padding-bottom:32px;border-bottom:1px solid #9bb7d6}
.specialty-intro .care-illustration{position:static;flex-shrink:0;width:125px;height:110px}.specialty-intro .care-illustration svg{width:110px;height:95px}
.specialty-intro h2{margin-bottom:12px}.specialty-intro p{margin:0}
.page-actions{display:flex;flex-wrap:wrap;gap:18px;margin-top:30px}.return-link{display:inline-block;color:#254f92;margin-top:32px;text-decoration:underline;text-underline-offset:5px}
.detail-link{display:flex;margin-top:24px;font-size:18px}
.clinic-facts{margin:26px 0;background:white;border-radius:20px;padding:12px 28px}.clinic-facts>div{display:grid;grid-template-columns:160px 1fr;gap:24px;padding:20px 0;border-bottom:1px solid #b8cadc}.clinic-facts>div:last-child{border:0}.clinic-facts dt{font-weight:700}.clinic-facts dd{margin:0;overflow-wrap:anywhere}.clinic-facts a{color:#254f92;text-decoration:underline}
.space-heading{margin-top:45px}.check-list{display:grid;grid-template-columns:1fr 1fr;gap:12px 40px;padding-left:28px}.check-list li{padding-left:5px}
.visit-steps{padding-left:30px}.visit-steps li{padding:10px 10px 20px 16px}.visit-steps li::marker{color:#254f92;font-weight:700;font-size:26px}.visit-steps h3{margin-top:0}.visit-steps p{margin:0}
.footer-pages{display:flex;flex-wrap:wrap;gap:12px 24px;border-top:1px solid #c3d3e4;margin-top:28px;padding-top:24px;font-size:16px;color:#254f92}.footer-pages a{padding:4px 0;text-decoration:underline;text-underline-offset:4px}
.access-detail-link{margin-bottom:22px;text-align:center}.access-hours .hours{margin:0}.subpage .about{padding-top:60px}
@media(max-width:1000px){.info-grid{grid-template-columns:1fr}.info-block{padding:26px}.nav a{font-size:16px;padding-inline:14px}}
@media(max-width:700px){.breadcrumb{font-size:14px;padding-top:18px}.page-hero{padding:26px 23px 30px;margin-top:15px;border-radius:18px 18px 38px 18px}.page-hero h1{font-size:29px}.page-hero>p:last-child{font-size:19px}.subpage .section{padding-block:40px}.specialty-intro{align-items:flex-start;gap:16px;margin-bottom:35px;padding-bottom:26px}.specialty-intro .care-illustration{width:65px;height:65px;border-radius:16px}.specialty-intro .care-illustration svg{width:60px;height:55px}.specialty-intro h2{font-size:24px}.info-block h3{font-size:23px}.info-block p{font-size:19px}.info-grid{gap:16px}.page-actions{display:grid;grid-template-columns:1fr;gap:12px}.detail-link{font-size:17px}.clinic-facts{padding:8px 20px}.clinic-facts>div{display:block;padding:17px 0}.clinic-facts dt{margin-bottom:6px}.check-list{grid-template-columns:1fr;gap:10px}.sub-band{border-radius:32px 0 0 0}.footer-pages{font-size:16px;gap:10px 20px}.subpage .about{padding-top:40px}.access-hours{padding-inline:0}.visit-steps{padding-left:24px}}
/* 説明と写真を組み合わせた下層ページ */
.page-hero:has(>.editorial-photo){display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:32px}
.editorial-photo{margin:0;min-width:0}
.editorial-photo img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:26px 8px 26px 8px}
.editorial-photo figcaption{font-size:15px;color:#415870;margin-top:10px}
.page-hero .editorial-photo img{aspect-ratio:4/3}
.page-hero>div>p:last-child{font-size:21px;margin-bottom:0}
.editorial{display:grid;grid-template-columns:1.15fr 1fr;gap:50px;align-items:center}
.editorial p{font-size:20px;line-height:1.95}.editorial p:last-child{margin-bottom:0}
.editorial.reverse>div{order:2}.editorial.reverse>.editorial-photo{order:1}
.subpage .editorial+.contact{margin-top:0}
@media(max-width:1000px){.editorial{gap:28px;grid-template-columns:1fr 1fr}.page-hero:has(>.editorial-photo){gap:24px;grid-template-columns:1fr 1fr}.page-hero h1{font-size:34px}}
@media(max-width:700px){.page-hero:has(>.editorial-photo){display:block}.page-hero .editorial-photo{margin-top:25px}.page-hero .editorial-photo img{aspect-ratio:16/9}.page-hero>div>p:last-child{font-size:19px}.page-hero h1{font-size:29px}.editorial{display:flex;flex-direction:column;gap:26px;align-items:stretch}.editorial.reverse>div,.editorial.reverse>.editorial-photo{order:initial}.editorial p{font-size:19px}.editorial-photo img{aspect-ratio:3/2}.editorial h2{font-size:26px}}
/* 写真の直下で、診療の特徴をひと目で確認する。 */
.feature-overview{padding-top:24px}
.feature-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.feature-list:has(>li:last-child:nth-child(4)){grid-template-columns:repeat(4,minmax(0,1fr))}
.feature-list li{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:12px;padding:22px 14px;background:#fff;border:2px solid #a5c0dd;border-radius:18px;text-align:center;color:#244e86;font-size:18px;font-weight:700;line-height:1.65;min-width:0}
.feature-list svg{width:44px;height:44px;flex-shrink:0;color:#2e649e}
.editorial.text-only{display:block;max-width:900px}
.editorial.text-only>div{order:initial}
@media(max-width:1000px){.feature-list li{font-size:16px;padding:18px 10px}.feature-list{gap:10px}}
@media(max-width:700px){.feature-overview{padding-top:18px}.feature-list,.feature-list:has(>li:last-child:nth-child(4)){grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.feature-list li{font-size:17px;padding:17px 12px;gap:10px}.feature-list>li:last-child:nth-child(5){grid-column:1/-1;flex-direction:row;align-items:center;justify-content:center;text-align:left;gap:16px}.feature-list svg{width:38px;height:38px}.editorial.text-only{width:calc(100% - 40px)}}
/* PDFの挨拶を、TOPの医院紹介として掲載。 */
.greeting h2{font-size:30px;line-height:1.8;letter-spacing:.01em}
.greeting-body{align-self:center}
.greeting-body>p{font-size:20px;line-height:2}
.greeting-body .greeting-signature{font-weight:700;margin:28px 0;color:#244f81}
@media(max-width:700px){.greeting h2{font-size:27px;line-height:1.8}.greeting h2 br{display:block}.greeting-body>p{font-size:19px}.greeting-body .button{width:100%;gap:15px}}
/* 新しいTOP写真：スマホでも歩く二人の姿が収まる比率に。 */
.hero-photo{aspect-ratio:4/3;object-position:center center}
@media(max-width:700px){.hero-photo{aspect-ratio:4/3;object-position:center center}}
/* モバイルTOP：診療科 → 診療時間 → アクセス。 */
.mobile-departments,.mobile-menu{display:none}
@media(max-width:700px){
.home-page>header.wrap{position:relative;padding:13px 14px;gap:8px;align-items:center}
.home-page>header .brand{gap:6px;min-width:0}.home-page>header .brand img{width:36px;height:36px;flex-shrink:0}
.home-page>header .brand strong{font-size:16px;white-space:nowrap}.home-page>header .brand small{font-size:10px}.home-page>header .brand .en{font-size:6px;letter-spacing:.08em}
.home-page>.nav{display:none}
.mobile-menu{display:block;border:0;padding:0;flex-shrink:0;font-size:12px}
.mobile-menu>summary{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;padding:5px;min-width:52px;min-height:52px;list-style:none;background:#e4effc;border-radius:10px;color:#234e87;font-size:11px;line-height:1.4}
.mobile-menu>summary::-webkit-details-marker{display:none}.mobile-menu>summary>span:first-child{font-size:25px;line-height:1.1}
.mobile-menu>nav{position:absolute;right:14px;top:calc(100% - 3px);width:min(310px,calc(100vw - 28px));z-index:20;background:white;border:2px solid #a9c3df;border-radius:14px;padding:10px;box-shadow:0 8px 25px #193c6026}
.mobile-menu>nav a{display:block;padding:12px 14px;border-bottom:1px solid #d5e1ef;color:#234e87;font-size:18px;font-weight:700}.mobile-menu>nav a:last-child{border:0}
.home-page #main{display:flex;flex-direction:column}
.mobile-departments{display:block;order:0;padding-top:12px;padding-bottom:18px;width:calc(100% - 28px)}
.mobile-departments h2{font-size:20px;line-height:1.5;margin:0 0 10px;color:#244e86}
.photo-banners{display:grid;grid-template-columns:1fr;gap:8px}
.photo-banner{position:relative;display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:70px;padding:12px 14px 12px 39%;overflow:hidden;border:1px solid #9bb8d9;border-radius:13px;background:#fff;color:#204982;line-height:1.4}
.photo-banner img{position:absolute;inset:0 auto 0 0;width:37%;height:100%;object-fit:cover;object-position:center}
.photo-banner>span{position:relative;z-index:1;font-size:21px;font-weight:700;overflow-wrap:anywhere}
.photo-banner>b{font-size:22px;flex-shrink:0}.photo-banner:nth-child(4)>span{font-size:18px;letter-spacing:-.04em}
.photo-banner.preparing{background:#f5f3fa;border-color:#bcb4cd}.photo-banner.preparing>b{font-size:15px;background:#e3dcec;color:#514261;border-radius:14px;padding:5px 10px}
.home-page #main>.hero,.home-page #main>.quick-links,.home-page #main>#services{display:none}
.home-page #main>#hours{order:1;margin-top:0;margin-bottom:24px}
.home-page #main>#hours .eyebrow{display:none}.home-page #main>#hours h2{font-size:26px}
.home-page #main>#access{order:2}.home-page #main>#checkup{order:3}.home-page #main>#about{order:4}.home-page #main>.contact{order:5}
.home-page #main>.greeting{padding-block:30px;display:block}
.home-page .greeting h2{font-size:23px;line-height:1.65;margin-bottom:15px}.home-page .greeting .section-photo{display:none}
.home-page .greeting-body>p{font-size:18px;line-height:1.9}.home-page .greeting-body .greeting-signature{margin:16px 0}.home-page .greeting-body .button{font-size:17px}
.home-page #checkup .section-photo{display:none}
}
@media(max-width:370px){.home-page>header .brand strong{font-size:14px}.home-page>header .brand small{font-size:9px}.home-page>header .brand img{width:30px;height:30px}.mobile-menu>summary{min-width:46px}.photo-banner>span{font-size:20px}.photo-banner:nth-child(4)>span{font-size:17px}.photo-banner{padding-left:37%;}.photo-banner img{width:35%}}
/* 手描きラフに合わせて、ロゴ下にもメニューバーを残す。 */
@media(max-width:700px){
.home-page>.nav{display:block;border-bottom:2px solid #386ab2}
.home-page>.nav .wrap{width:100%;display:flex;overflow-x:auto;justify-content:flex-start;gap:0}
.home-page>.nav a{font-size:14px;white-space:nowrap;flex-shrink:0;padding:10px 14px;line-height:1.5}
.home-page .photo-banner:nth-child(3)>span{font-size:18px;letter-spacing:-.04em}
.home-page .photo-banner:nth-child(4)>span{font-size:21px;letter-spacing:0}
}
@media(max-width:370px){.home-page .photo-banner:nth-child(3)>span{font-size:17px}.home-page .photo-banner:nth-child(4)>span{font-size:20px}}
/* 長い診療科名も、ほかの診療科と同じ文字サイズで表示。 */
@media(max-width:700px){
.home-page .photo-banner.rehab-banner{padding-left:28%;gap:6px}
.home-page .photo-banner.rehab-banner img{width:25%}
.home-page .photo-banner.rehab-banner>span{font-size:21px;letter-spacing:0;line-height:1.4;min-width:0;overflow-wrap:anywhere}
}
@media(max-width:370px){.home-page .photo-banner.rehab-banner>span{font-size:20px}}
@media(max-width:700px){.home-page .photo-banner.preparing img{object-position:25% 45%}}
/* 交通事故・自賠責診療 */
.nav .wrap{gap:0}.nav a{padding-inline:14px;font-size:17px}
.accident-intro{font-size:22px;margin:0 0 30px}
.symptom-panel{display:grid;grid-template-columns:1fr 1.5fr;gap:30px;align-items:center;background:#fff;border:2px solid #b0c9e3;border-radius:24px;padding:30px}
.symptom-panel h2{font-size:28px;margin:0}.symptom-panel ul{display:grid;grid-template-columns:1fr 1fr;gap:18px 24px;list-style:none;padding:0;margin:0}.symptom-panel li{position:relative;padding-left:30px;font-size:19px}.symptom-panel li::before{content:'✓';position:absolute;left:0;color:#2e649e;font-weight:700}
.care-step-number{display:block;color:#315f98;font-size:17px;font-weight:700;margin-bottom:12px}
.accident-steps{list-style:none;margin:26px 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.accident-steps li{display:flex;align-items:start;gap:16px;border:1px solid #adc6df;background:#fff;padding:25px 22px;border-radius:20px}
.accident-steps li>span{font-size:20px;font-weight:700;color:#315f98}.accident-steps h3{font-size:23px;margin:0 0 12px;line-height:1.6}.accident-steps p{font-size:19px;margin:0}
.accident-check{padding:25px 30px;background:#fff;border-radius:20px}.accident-check h3{margin-top:0}.accident-check .check-list{margin-bottom:0}
.fee-panel{background:#fff;border-left:5px solid #578e61;border-radius:20px;padding:32px}.fee-panel h2{font-size:28px}
.accident-teaser{display:flex;align-items:center;justify-content:space-between;gap:25px;background:#fff;border:2px solid #adc6df;border-radius:24px;padding:28px 32px;margin-bottom:32px}
.accident-teaser h2{font-size:28px;margin:0 0 8px}.accident-teaser p{margin:0}.accident-teaser .eyebrow{margin-bottom:8px}.accident-teaser .button{flex-shrink:0}
.accident-related{padding:30px;background:#d3e6fa;border-radius:24px;margin-bottom:40px}.accident-related h2{font-size:28px}
@media(max-width:1000px){.nav a{font-size:15px;padding-inline:10px}.symptom-panel{grid-template-columns:1fr}.accident-steps{grid-template-columns:1fr}}
@media(max-width:700px){
.accident-intro{font-size:19px}.symptom-panel{display:block;padding:24px 20px}.symptom-panel h2{font-size:25px;margin-bottom:20px}.symptom-panel ul{grid-template-columns:1fr;gap:14px}.symptom-panel li{font-size:18px}
.accident-page .page-hero h1{font-size:29px}.accident-steps{gap:14px}.accident-steps li{padding:22px 18px}.accident-steps h3{font-size:22px}.accident-steps p{font-size:18px}.accident-check{padding:23px 20px}
.fee-panel{padding:26px 20px}.fee-panel h2{font-size:25px}.fee-panel .button{font-size:17px;width:100%;gap:8px}
.accident-teaser{display:block;padding:22px;margin-bottom:25px}.accident-teaser h2{font-size:24px}.accident-teaser p{font-size:18px}.accident-teaser .button{width:100%;margin-top:18px}
.home-page #main>.accident-teaser{order:2}.home-page #main>#access{order:3}.home-page #main>#checkup{order:4}.home-page #main>#about{order:5}.home-page #main>.contact{order:6}
.accident-related{padding:24px 20px}.accident-related h2{font-size:25px}.accident-related .button{font-size:17px;gap:12px}
}
@media(max-width:700px){
.home-page .photo-banner.accident-banner{padding-left:28%;gap:6px}
.home-page .photo-banner.accident-banner img{width:25%;object-position:45% center}
.home-page .photo-banner.accident-banner>span{font-size:21px;line-height:1.4;min-width:0;overflow-wrap:anywhere}
/* 案内の重複を避け、スマホでは診療科のバナーに入口を集約。 */
.home-page #main>.accident-teaser{display:none}
}
@media(max-width:370px){.home-page .photo-banner.accident-banner>span{font-size:20px}}
/* モバイル診療バナー：全項目で同じ写真幅・基本高さに統一。 */
@media(max-width:700px){
.home-page .photo-banners .photo-banner,
.home-page .photo-banners .photo-banner.rehab-banner,
.home-page .photo-banners .photo-banner.accident-banner{
min-height:80px;padding:10px 12px 10px 28%;gap:8px;box-sizing:border-box;
}
.home-page .photo-banners .photo-banner img,
.home-page .photo-banners .photo-banner.rehab-banner img,
.home-page .photo-banners .photo-banner.accident-banner img{
position:absolute;left:0;top:0;bottom:0;width:25%;height:100%;max-width:none;object-fit:cover;display:block;
}
.home-page .photo-banners .photo-banner>span{font-size:21px;letter-spacing:0;line-height:1.4;min-width:0;overflow-wrap:anywhere}
.home-page .photo-banners .photo-banner>b{flex:0 0 auto}
}
@media(max-width:370px){.home-page .photo-banners .photo-banner>span{font-size:20px}}
/* 保険証明書と車が収まる表示に調整。バナー幅は他の診療科と共通。 */
.accident-page .page-hero .editorial-photo img{aspect-ratio:1859/846;object-fit:contain;background:#fff}
@media(max-width:700px){.home-page .photo-banners .photo-banner.accident-banner img{object-position:65% center}}
