.subpage .site-header{position:relative;background:#20271d}
.subpage-main{overflow:hidden}
.breadcrumbs{padding:18px 0;font-size:12px;color:#66705f;border-bottom:1px solid var(--line)}
.breadcrumbs ol{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}
.breadcrumbs li:not(:last-child)::after{content:'›';margin-left:8px;color:#9ba293}
.breadcrumbs a{text-decoration:underline;text-underline-offset:3px}
.sub-hero{background:#eef0e7;padding:72px 0}
.sub-hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:7vw;align-items:center}
.sub-hero h1{font-size:clamp(38px,5vw,68px);line-height:1.45;letter-spacing:.06em;margin:0 0 25px}
.sub-hero p:not(.section-label){max-width:610px;margin:0;font-size:17px}
.sub-hero img{display:block;width:100%;height:430px;object-fit:cover}
.sub-content{padding:100px 0}
.sub-content.alt{background:#f0f1e9}
.sub-intro{max-width:780px;margin:0 auto 70px;text-align:center}
.sub-intro h2{font-size:clamp(30px,4vw,48px);margin-bottom:20px}
.sub-intro p{margin:0}
.info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.info-card{background:#fff;border:1px solid var(--line);padding:30px}
.info-card .number{font:14px Georgia,serif;color:var(--olive)}
.info-card h2,.info-card h3{font-size:23px;line-height:1.55;margin:15px 0 10px}
.info-card p{font-size:15px;margin:0}
.two-column{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center}
.two-column img{width:100%;height:520px;object-fit:cover}
.two-column h2{font-size:clamp(30px,4vw,49px);margin-bottom:20px}
.check-list{list-style:none;padding:0;margin:28px 0;border-top:1px solid var(--line)}
.check-list li{padding:14px 0 14px 28px;border-bottom:1px solid var(--line);position:relative}
.check-list li::before{content:'✓';position:absolute;left:3px;color:var(--olive)}
.notice{margin-top:28px;padding:22px 25px;background:#f4f1e7;border-left:4px solid #89936e;font-size:14px}
.page-cta{background:var(--ink);color:#fff;text-align:center;padding:85px 0}
.page-cta h2{font-size:clamp(30px,4vw,48px);margin:0 0 18px}
.page-cta p{max-width:650px;margin:0 auto 28px}
.page-cta-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:14px}
.page-cta .hotpepper-link{background:#e98942;color:#fff;border:0}
.sub-price{max-width:950px;margin:auto}
.sub-price h2{font-size:clamp(30px,4vw,48px);margin-bottom:35px}
.sub-price .price-row{background:#fff}
.sub-price .price-row.highlight{background:#eff3e6}
.result-note{max-width:800px;margin:35px auto 0;color:#616a5b;font-size:13px}
.results-grid h2{font-size:23px;line-height:1.55;margin:22px 0 5px;letter-spacing:.04em}
.access-page-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:7vw;align-items:start}
.access-page-grid dl{margin:0}
.access-page-grid dl div{padding:16px 0;border-bottom:1px solid var(--line)}
.access-page-grid dt{font-size:13px;color:var(--olive)}
.access-page-grid dd{margin:4px 0 0}
.large-map iframe{display:block;width:100%;height:560px;border:0}
.route-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}
.route-grid article{padding:28px;background:#fff;border:1px solid var(--line)}
.route-grid h3{margin:0 0 12px;font-size:22px}
.sub-footer-links{display:flex!important;flex-direction:row!important;flex-wrap:wrap;max-width:500px;gap:10px 20px!important}
.sub-footer-links a{font-size:13px}
.seo-links{padding:85px 0;background:#fff}
.seo-links h2{font-size:clamp(28px,3.5vw,44px);margin:0 0 35px}
.seo-link-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}
.seo-link-grid a{border:1px solid var(--line);padding:22px 18px;background:var(--paper);transition:.2s}
.seo-link-grid a:hover{transform:translateY(-3px);background:#eef0e7}
.seo-link-grid strong{display:block;font-family:'Noto Serif JP',serif;font-weight:400;margin-bottom:7px}
.seo-link-grid span{font-size:12px;color:var(--olive)}
@media(max-width:900px){.sub-hero-grid,.two-column,.access-page-grid{grid-template-columns:1fr}.sub-hero img{height:330px}.info-grid{grid-template-columns:1fr 1fr}.seo-link-grid{grid-template-columns:repeat(2,1fr)}.two-column img{height:390px}.large-map iframe{height:480px}}
@media(max-width:720px){.subpage .site-header{height:68px}.breadcrumbs{padding:13px 0}.sub-hero{padding:50px 0}.sub-hero h1{font-size:35px}.sub-hero p:not(.section-label){font-size:15px}.sub-hero img{height:260px}.sub-content{padding:72px 0}.sub-intro{margin-bottom:42px}.info-grid,.route-grid{grid-template-columns:1fr}.two-column img{height:310px}.page-cta{padding:70px 0}.large-map iframe{height:430px}.seo-links{padding:65px 0}.seo-link-grid{grid-template-columns:1fr}.sub-footer-links{margin-top:25px}}
