/* Refinement of the approved framed-photo composition. */
body.variation.d{--muted:#69756b;--line:#d3d7ce;font-family:'Yu Gothic',Meiryo,sans-serif;letter-spacing:.035em;-webkit-font-smoothing:antialiased}
.variation.d .compare{background:#e9eae3;font-size:10px;letter-spacing:.08em;min-height:32px;padding:5px 20px}
.variation.d .primary>a,.variation.d .navgroup>a{position:relative}
.variation.d .primary>a:after,.variation.d .navgroup>a:after{content:'';position:absolute;left:0;bottom:8px;width:100%;height:1px;background:#758371;transform:scaleX(0);transform-origin:left;transition:transform .22s ease}
.variation.d .primary>a:hover:after,.variation.d .navgroup>a:hover:after{transform:scaleX(1)}
.variation.d.index .hero{margin-top:24px;height:calc(100svh - 338px);min-height:360px;max-height:790px}
.variation.d.index main>.jump{min-height:87px}
.variation.d.index main>.jump a{display:flex;justify-content:space-between;align-items:center;padding:5px 12%;font-size:14px;font-family:'Yu Mincho','Hiragino Mincho ProN',serif;letter-spacing:.12em}
.variation.d.index main>.jump span{font-family:Arial,sans-serif;font-size:17px;color:var(--muted);font-weight:400}
.variation.d .eyebrow{font-family:Georgia,serif;font-size:10px;letter-spacing:.18em;color:var(--muted);margin:0 0 15px}
.variation.d h2{font-size:25px;letter-spacing:.13em;line-height:1.8}
.variation.d.index .news{max-width:1120px;grid-template-columns:250px 1fr;gap:100px;margin:108px auto 0;padding:0 30px}
.variation.d .news h2{margin:0 0 28px}
.variation.d .textlink{font-size:12px;padding:9px 0;border-color:#b2bbae;letter-spacing:.06em}
.variation.d .news-list>a{padding:22px 0;align-items:baseline;gap:32px;font-size:13px;line-height:1.8}
.variation.d .news-list>a:first-child{padding-top:5px}
.variation.d .news-list time{font-family:Georgia,serif;font-size:12px;font-variant-numeric:tabular-nums;letter-spacing:.04em;white-space:nowrap;color:var(--muted)}
.variation.d .news-list b{font-size:17px;color:var(--muted)}
.variation.d .garden-story{max-width:1120px;margin:148px auto 136px;padding:0 30px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:130px;align-items:center}
.garden-figure{margin:0;min-width:0}
.variation.d .garden-photo{height:365px;margin:0}
.variation.d .garden-photo img{width:135%;height:150%;transform:translate(-8%,-18%)}
.garden-figure figcaption{display:flex;justify-content:space-between;gap:15px;margin-top:14px;font-size:10px;color:var(--muted);letter-spacing:.05em}
.garden-figure figcaption span{font:9px Georgia,serif;letter-spacing:.12em;align-self:center}
.variation.d .garden-text h2{font-size:24px;margin:0 0 26px}
.variation.d .garden-text>p:not(.eyebrow){max-width:none;font-size:13px;line-height:2.3;margin-bottom:30px}
.variation.d .lower-navigation{max-width:1060px;padding:55px 0 40px;border-color:var(--line)}
.variation.d .lower-navigation-grid{gap:95px}
.variation.d .lower-navigation h2{font-size:17px;margin-bottom:14px;padding-bottom:18px;border:0}
.variation.d .lower-navigation li a{font-size:12px;padding:9px 0}
.variation.d .lower-navigation li a span{font-size:15px}
.variation.d .lower-home{font-size:11px;margin-top:28px}
.variation.d footer{padding:58px max(7%,calc((100% - 1060px)/2));gap:45px;font-size:11px}
.variation.d .footer-brand{font-size:25px;white-space:nowrap}
.variation.d footer small{font-family:Georgia,serif;letter-spacing:.03em;white-space:nowrap}
.variation.d.gairai .page-heading{margin:70px auto 55px}
.variation.d .page-heading h1{font-size:36px;letter-spacing:.16em;margin:12px 0 22px}
.variation.d .clinical-layout{max-width:1120px}
.variation.d article{max-width:880px;font-size:15px}
.variation.d .section-nav{font-size:12px;gap:45px;margin-bottom:75px;padding:23px 0}
.variation.d article .gairai{margin-bottom:85px}
.variation.d article h2{font-size:25px;margin-bottom:30px}
.variation.d th,.variation.d td{padding-top:22px;padding-bottom:22px}
.variation.d a{transition:color .2s ease}
@media(max-width:1100px){.variation.d .lower-navigation{margin:0 7%}.variation.d .garden-story{gap:65px}.variation.d.index .news{gap:50px;margin-left:7%;margin-right:7%;padding:0}.variation.d footer{flex-wrap:wrap}}
@media(max-width:700px){.variation.d.index .hero{height:53svh;min-height:300px;margin-top:20px}.variation.d.index main>.jump{min-height:80px}.variation.d.index main>.jump a{font-size:12px;padding:6px 10px;letter-spacing:.02em}.variation.d.index main>.jump span{font-size:14px}.variation.d.index .news{display:block;margin:64px 7% 0}.variation.d .news h2{margin-bottom:12px}.variation.d .news-list{margin-top:28px}.variation.d .news-list>a{gap:16px;font-size:12px}.variation.d .garden-story{display:block;margin:75px 7%;padding:0}.variation.d .garden-photo{height:310px}.garden-figure{max-width:450px}.garden-text{margin:45px 0 0}.variation.d .garden-text>p:not(.eyebrow){max-width:none}.variation.d .lower-navigation{padding-top:38px}.variation.d .lower-navigation-grid{gap:26px}.variation.d .lower-navigation h2{margin-bottom:5px;padding-bottom:8px}.variation.d footer{gap:25px}.variation.d .section-nav{gap:20px;margin-bottom:50px}.variation.d article h2{font-size:23px}}
@media(prefers-reduced-motion:reduce){.variation.d a,.variation.d .primary>a:after,.variation.d .navgroup>a:after{transition:none}}

/* Restore the approved header typography; retain the refined content below. */
.variation.d header{letter-spacing:normal;--line:#d9dad2}
.garden-text .keep-together{white-space:nowrap}
.variation.d .brand>span{text-align:center}
.variation.d .brand small{font-weight:400;font-size:11px;text-indent:.13em}
.variation.d .brand .hospital-name{display:block;text-indent:.23em}
/* Keep the sunset in frame regardless of the desktop window height. */
@media(min-width:701px){.variation.d.index .hero{height:auto;min-height:0;max-height:none;aspect-ratio:1994 / 898}}
.variation.d.index .hero-photo img{object-position:center bottom}
.variation.d.index main>.jump a{justify-content:center;gap:20px}
.variation.d.index main>.jump span{float:none;margin-left:0}
@media(max-width:700px){.variation.d.index .hero-photo img{object-position:65% bottom}.variation.d.index main>.jump a{gap:8px}}

