/* The same opening structure, spacing and typography on all seven subpages. */
.subpage-hero,.subpage-hero *{box-sizing:border-box}
.subpage-hero{position:relative;isolation:isolate;overflow:hidden;background:var(--b-masthead);color:#fff;font-family:'Noto Sans JP',system-ui,sans-serif;padding:28px 0 48px}
.subpage-hero::before{content:"";position:absolute;right:-180px;top:-420px;width:800px;height:800px;border:1px solid #d6f3ed12;border-radius:50%;box-shadow:0 0 0 100px #d6f3ed05;pointer-events:none;z-index:-1}
.subpage-inner{width:min(1180px,calc(100% - 48px));margin-inline:auto}
.subpage-breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:0 0 32px;font-size:13px;line-height:1.65;color:#d4e4e9}
.subpage-breadcrumb a{color:#e0ecef;text-decoration:none;text-underline-offset:4px}.subpage-breadcrumb a:hover{text-decoration:underline}
.subpage-breadcrumb [aria-current]{color:#fff}
.subpage-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,1fr);column-gap:56px;align-items:center}
.subpage-copy{min-width:0}
.subpage-label{margin:0 0 18px!important;font-size:13px!important;line-height:1.6!important;font-weight:700;letter-spacing:.075em;color:#f6b384!important}
.subpage-label::before{content:"";display:inline-block;width:32px;height:1px;background:#df9470;margin-right:12px;vertical-align:middle}
.subpage-hero h1{font-family:inherit!important;font-size:clamp(36px,3.4vw,48px)!important;line-height:1.42!important;letter-spacing:-.035em!important;font-weight:750!important;color:#fff!important;margin:0 0 18px!important;min-block-size:2.84em;text-wrap:balance}
.subpage-lead{font-size:17px!important;line-height:1.95!important;font-weight:400!important;color:#e0ecef!important;margin:0!important;min-block-size:5.85em;max-width:none!important}
.subpage-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:26px;min-height:48px}
.subpage-action{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:13px 21px;background:#f07e42;border:1px solid #f07e42;color:#102b3b!important;font-size:14px;line-height:1.5;font-weight:750;text-decoration:none;transition:background-color .2s}
.subpage-action:hover{background:#ffa16c}
.subpage-action-secondary{padding-inline:0;background:transparent!important;border-color:transparent;color:#eaf3f4!important;border-bottom-color:#9bc0c1}
.subpage-action-secondary:hover{color:#ffbe96!important;border-bottom-color:#ffbe96}
.subpage-art{margin:0;width:100%;aspect-ratio:560/410;display:flex;align-items:center;justify-content:center}
.subpage-art img{display:block;width:100%;height:auto;max-height:none;object-fit:contain}
.subpage-body-anchor{display:block;height:0;scroll-margin-top:102px}
.subpage-context{padding:36px 0 0;background:#fff}.subpage-context>div{width:min(1180px,calc(100% - 48px));margin:auto}.subpage-context p{font-size:17px;line-height:1.95;color:#354e5d;max-width:74ch;margin:0}
@media(max-width:1100px){.subpage-grid{column-gap:36px;grid-template-columns:minmax(0,1.65fr) minmax(260px,1fr)}.subpage-hero h1{font-size:40px!important}}
@media(max-width:800px){.subpage-hero{padding:24px 0 36px}.subpage-breadcrumb{margin-bottom:26px}.subpage-grid{grid-template-columns:1fr;gap:24px}.subpage-hero h1{font-size:clamp(31px,5.5vw,40px)!important;min-block-size:0;margin-bottom:20px!important}.subpage-lead{min-block-size:0;font-size:16px!important}.subpage-actions{margin-top:24px;gap:12px 20px}.subpage-art{max-width:380px;justify-self:center}.subpage-context{padding-top:28px}.subpage-context p{font-size:16px}}
@media(max-width:500px){.subpage-inner,.subpage-context>div{width:calc(100% - 32px)}.subpage-breadcrumb{font-size:12px;gap:9px;margin-bottom:25px}.subpage-label{font-size:12px!important;margin-bottom:16px!important}.subpage-hero h1{font-size:31px!important;line-height:1.5!important}.subpage-action{font-size:13px;padding:12px 16px}.subpage-action-secondary{padding-inline:0}.subpage-art{max-width:340px}.subpage-grid{gap:22px}}
@media(prefers-reduced-motion:reduce){.subpage-action{transition:none}}
