.story-opening{padding-top:28px}
.story-opening .breadcrumbs{margin-bottom:28px;font-size:14px;flex-wrap:wrap}
.story-overview{display:block;width:100%;height:auto}
.story-intro{max-width:680px;margin:46px auto 38px;text-align:center}
.story-intro>p{margin:24px 0;line-height:2}
.story-intro .story-lead{font-family:"Noto Serif JP",serif;font-size:clamp(20px,2.2vw,26px);color:var(--moss-dark);line-height:1.8}
.story-lead span{display:block;margin-top:14px;font-family:"Noto Sans JP",sans-serif;font-size:16px}
.story-intro .story-note{font-size:14px;color:var(--muted)}
.story-chapters{display:grid;grid-template-columns:repeat(3,1fr);border-block:1px solid var(--line);margin:42px auto 0;max-width:900px}
.story-chapters a{display:grid;grid-template-columns:1fr auto;padding:23px 28px;gap:4px 16px;color:var(--moss-dark)}
.story-chapters a+a{border-left:1px solid var(--line)}
.story-chapters small{grid-column:1;font-size:14px;color:var(--muted)}
.story-chapters span{font-family:"Noto Serif JP",serif;font-size:20px}
.story-chapters b{grid-column:2;grid-row:1/3;align-self:center;font-weight:400}
.story-chapters a:hover{background:var(--paper-deep)}
.story-page a:focus-visible{outline:3px solid var(--moss);outline-offset:5px}
.story-chapter{padding:88px 0 8px;scroll-margin-top:108px}
.story-chapter-heading{text-align:center;margin-bottom:48px}
.story-chapter-heading>p{font-size:14px;letter-spacing:.15em;color:var(--muted);margin:0 0 12px}
.story-chapter-heading h2,.story-visit h2{font-family:"Noto Serif JP",serif;font-weight:500;color:var(--moss-dark);font-size:clamp(28px,3vw,38px);margin:0;line-height:1.5}
.story-steps{list-style:none;padding:0;margin:0}
.story-steps>li{margin:0 0 64px}
.story-step{display:grid;grid-template-columns:minmax(0,780fr) minmax(0,340fr);align-items:center;gap:40px;margin:0}
.story-step img{display:block;width:100%;height:auto}
.story-step figcaption{min-width:0;padding:12px 0 12px 24px;border-left:2px solid #b8a176}
.story-step figcaption p{font-size:18px;line-height:2.1;margin:0;overflow-wrap:anywhere}
.story-chapter+.story-chapter{border-top:1px solid var(--line)}
.story-visit{border-top:1px solid var(--line);text-align:center;background:var(--paper-deep)}
.story-visit-links{display:flex;justify-content:center;flex-wrap:wrap;gap:16px;margin-top:28px}
@media(max-width:760px){
 .story-opening{padding-top:20px}.story-opening .breadcrumbs{margin-bottom:20px}
 .story-intro{margin-top:30px;text-align:left}.story-intro .story-lead{text-align:center}
 .story-chapters{grid-template-columns:1fr;margin-top:30px}.story-chapters a{padding:16px 18px;grid-template-columns:52px 1fr auto;align-items:center;gap:12px}.story-chapters a+a{border-left:0;border-top:1px solid var(--line)}.story-chapters b{grid-column:3;grid-row:1}.story-chapters span{font-size:19px}
 .story-chapter{padding-top:56px;scroll-margin-top:90px}.story-chapter-heading{margin-bottom:30px}
 .story-step{grid-template-columns:1fr;gap:20px}.story-step figcaption{padding:0 0 0 16px}.story-step figcaption p{font-size:16px;line-height:1.95}
 .story-steps>li{margin-bottom:44px}.story-visit-links{flex-direction:column;align-items:stretch}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
