@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700;800;900&display=swap');
:root{--navy:#163148;--blue:#244969;--paper:#f4f5f1;--yellow:#efc55d;--ink:#19354a}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Noto Sans JP",sans-serif}img{display:block;width:100%;height:auto}a{color:inherit;text-underline-offset:.25em}.skip{position:absolute;left:-9999px}.skip:focus{left:1rem;top:1rem;z-index:5;background:white;padding:.7rem}.fiction{margin:0;padding:.5rem clamp(1rem,3vw,3rem);background:#e2e9eb;color:#243e4c;font-size:.63rem;line-height:1.65}.site-header{display:flex;justify-content:space-between;align-items:center;gap:1rem;background:var(--navy);color:#fff;padding:.9rem clamp(1rem,3vw,3rem)}.brand{text-decoration:none;font-weight:900;letter-spacing:.07em;font-size:1.45rem}.brand span{display:block;font-size:.48rem;font-weight:500;letter-spacing:.23em;color:#b9d2df}.site-header>a:last-child{font-size:.72rem;text-decoration:none}.hero{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(22rem,.75fr);min-height:clamp(36rem,54vw,47rem)}.hero-photo{margin:0;position:relative;min-height:100%}.hero-photo img{height:100%;object-fit:cover;object-position:47% center}.hero-photo figcaption{position:absolute;left:1.2rem;bottom:1.2rem;background:#f4f5f1ed;color:var(--navy);padding:.5rem .7rem;font-size:.64rem}.hero-copy{position:relative;background:#f9f7ed;padding:clamp(2rem,5vw,5rem);display:flex;flex-direction:column;justify-content:center;align-items:flex-start;border-left:.65rem solid var(--yellow)}.label{background:var(--yellow);padding:.5rem .7rem;font-size:.62rem;letter-spacing:.18em}.hero h1{font-size:clamp(3.9rem,5.2vw,6.5rem);font-weight:900;letter-spacing:.05em;line-height:1.18;margin:2rem 0 1rem;white-space:nowrap}.hero-lead{font-size:clamp(1.2rem,2vw,2rem)!important;font-weight:800;line-height:1.5!important;margin:.2rem 0 1.5rem!important}.hero-copy p{font-size:.89rem;line-height:1.9;max-width:24rem}.hero-copy a{display:inline-flex;align-items:center;gap:2.5rem;margin-top:2rem;background:var(--navy);color:white;padding:1rem 1.2rem;text-decoration:none;font-size:.85rem}.hero-copy a span{font-size:1.3rem;color:var(--yellow)}.side-text{font-size:.6rem;letter-spacing:.16em;color:#758b98;margin-top:2rem}.intro{display:grid;grid-template-columns:.7fr 1.1fr 1fr;gap:2.5rem;padding:clamp(4rem,7vw,8rem) clamp(1rem,6vw,7rem)}.intro>span,.bench-copy>span,.closing>span{font-size:.66rem;letter-spacing:.17em}.intro h2,.bench h2,.closing h2{font-size:clamp(2.6rem,4vw,4.7rem);font-weight:800;line-height:1.35;margin:0}.intro p,.bench p,.closing p{font-size:.9rem;line-height:2;margin:0}.bench{display:grid;grid-template-columns:minmax(18rem,.75fr) minmax(0,1.25fr);background:var(--blue);color:white;align-items:center}.bench-copy{padding:clamp(2rem,5vw,5rem)}.bench h2{margin:1.5rem 0;font-size:clamp(2.3rem,3.6vw,4.3rem)}.bench p{max-width:28rem}.bench a{display:inline-block;margin-top:2rem;color:#ffe29b;font-size:.8rem}.bench figure{margin:0;position:relative}.bench img{height:clamp(27rem,45vw,42rem);object-fit:cover}.bench figcaption{position:absolute;right:1rem;bottom:1rem;background:#163148e6;padding:.6rem .8rem;font-size:.64rem}.closing{padding:clamp(5rem,8vw,9rem) clamp(1rem,6vw,7rem)}.closing h2{margin:1.4rem 0}.closing p{max-width:40rem}.closing a{display:inline-block;margin-top:2rem;font-size:.85rem}footer{display:flex;justify-content:space-between;gap:1rem;border-top:1px solid #c6d2d9;padding:1.1rem clamp(1rem,3vw,3rem);font-size:.65rem}
@media(max-width:1200px){.hero{grid-template-columns:1.1fr .9fr}.hero-copy{padding:2rem}.hero h1{font-size:clamp(3.1rem,5.2vw,4.6rem)}.intro{grid-template-columns:1fr 1.4fr}.intro p{grid-column:2}}
@media(max-width:650px){.hero{display:flex;flex-direction:column-reverse}.hero-copy{border-left:0;border-top:.5rem solid var(--yellow);padding:2rem 1rem}.hero h1{font-size:clamp(3.2rem,11.5vw,4.9rem);margin:1.1rem 0 .6rem}.hero-lead{font-size:1.3rem!important;margin:0 0 .8rem!important}.hero-copy p{font-size:.82rem}.hero-copy a{margin-top:1rem;padding:.8rem 1rem}.side-text{display:none}.hero-photo{height:clamp(21rem,95vw,33rem)}.hero-photo figcaption{left:.7rem;bottom:.7rem;font-size:.55rem}.intro{display:block;padding:4rem 1rem}.intro h2{margin:1.5rem 0;font-size:2.7rem}.bench{display:block}.bench-copy{padding:3rem 1rem}.bench h2{font-size:2.5rem}.bench img{height:auto}.closing{padding:4rem 1rem}.closing h2{font-size:2.6rem}footer{display:block}footer a{display:block;margin-top:.5rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
