:root{--color-bg: #060e09;--color-bg-surface: #0d1a10;--color-bg-raised: #172417;--color-ink: #d8e6dc;--color-ink-muted: #8aaa90;--color-muted: #5a7560;--color-green: #2d7a50;--color-green-hover: #238c46;--color-green-light: #3da666;--color-amber: #c0841a;--color-amber-hover: #a87016;--color-danger: #9b2335;--color-rule: rgba(45, 122, 80, .18);--color-on-accent: #f0f8f2;--font-display: "Cormorant Garamond", "Hiragino Mincho ProN", "Times New Roman", serif;--font-serif: "Noto Serif JP", "Cormorant Garamond", "YuMincho", "Hiragino Mincho ProN", serif;--font-sans: "Noto Sans JP", -apple-system, BlinkMacSystemFont, "Segoe UI", "Hiragino Kaku Gothic ProN", "Yu Gothic UI", sans-serif;--fs-display: clamp(2.4rem, 5vw + .5rem, 4rem);--fs-h2: clamp(1.5rem, 1.8vw + .8rem, 2.1rem);--fs-h3: clamp(1.05rem, .5vw + .95rem, 1.25rem);--fs-eyebrow: .74rem;--fs-lead: clamp(1rem, .25vw + .98rem, 1.12rem);--fs-body: 1rem;--fs-small: .82rem;--fs-quote: clamp(1.18rem, 1vw + 1rem, 1.52rem);--lh-tight: 1.28;--lh-snug: 1.5;--lh-normal: 1.75;--lh-reading: 1.95;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--space-8: 64px;--space-9: 96px;--space-10: 128px;--container-max: 960px;--container-narrow: 680px;--gutter: clamp(20px, 5vw, 40px);--ease-quiet: cubic-bezier(.22, .61, .36, 1);--dur-fast: .15s;--dur-mid: .3s;--dur-slow: .5s;--dur-slower: .6s}.book-lp{background:var(--color-bg);color:var(--color-ink);font-family:var(--font-sans);font-size:var(--fs-body);line-height:var(--lh-reading);-webkit-font-smoothing:antialiased}.book-lp *,.book-lp *:before,.book-lp *:after{box-sizing:border-box}.book-lp a{color:var(--color-green-light);text-decoration:none;transition:color var(--dur-fast) var(--ease-quiet)}.book-lp a:hover{color:var(--color-amber)}.book-lp h1,.book-lp h2,.book-lp h3{font-family:var(--font-serif);color:var(--color-ink);line-height:var(--lh-tight)}.book-lp .container{max-width:var(--container-max);margin-inline:auto;padding-inline:var(--gutter)}.book-lp .container--narrow{max-width:var(--container-narrow)}.book-lp .rule{border:none;border-top:1px solid var(--color-rule);margin:var(--space-9) 0}.book-lp .reveal{opacity:0;transform:translateY(18px);transition:opacity var(--dur-slower) var(--ease-quiet),transform var(--dur-slower) var(--ease-quiet)}.book-lp .reveal--delay-1{transition-delay:.1s}.book-lp .reveal--delay-2{transition-delay:.2s}.book-lp .reveal--delay-3{transition-delay:.3s}.book-lp .reveal.is-visible{opacity:1;transform:none}.book-lp .section-head{text-align:center;margin-bottom:var(--space-7)}.book-lp .section-mark{display:block;width:2px;height:28px;background:var(--color-green);margin:0 auto var(--space-4)}.book-lp .section-head h2{font-size:var(--fs-h2);letter-spacing:.04em;margin:0 0 var(--space-3)}.book-lp .section-head .lead{color:var(--color-ink-muted);font-size:var(--fs-lead);margin:0;line-height:var(--lh-normal)}.book-lp .btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 28px;border-radius:2px;font-family:var(--font-sans);font-size:.92rem;font-weight:700;letter-spacing:.06em;cursor:pointer;transition:background var(--dur-fast),color var(--dur-fast),transform var(--dur-fast);text-decoration:none;border:none;white-space:nowrap}.book-lp .btn:active{transform:scale(.98)}.book-lp .btn--primary{background:var(--color-green);color:var(--color-on-accent)}.book-lp .btn--primary:hover{background:var(--color-green-hover);color:var(--color-on-accent)}.book-lp .btn--secondary{background:transparent;color:var(--color-green-light);border:1px solid var(--color-green)}.book-lp .btn--secondary:hover{background:#2d7a501f;color:var(--color-green-light)}.book-lp .btn--amber{background:var(--color-amber);color:#fff}.book-lp .btn--amber:hover{background:var(--color-amber-hover);color:#fff}.book-lp .topbar{position:sticky;top:0;z-index:100;background:#060e09f0;backdrop-filter:blur(8px);border-bottom:1px solid var(--color-rule)}.book-lp .topbar__inner{display:flex;align-items:center;justify-content:space-between;height:52px}.book-lp .topbar__brand{font-family:var(--font-sans);font-size:.84rem;font-weight:700;letter-spacing:.12em;color:var(--color-green-light);text-decoration:none}.book-lp .topbar__brand span{color:var(--color-muted);margin-left:2px}.book-lp .topbar__back{font-size:var(--fs-small);color:var(--color-muted);text-decoration:none;letter-spacing:.06em;transition:color var(--dur-fast)}.book-lp .topbar__back:hover{color:var(--color-ink)}.book-lp .hero{padding:var(--space-10) 0 var(--space-9);background:var(--color-bg);position:relative;overflow:hidden}.book-lp .hero:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 70% 60% at 60% 40%,rgba(45,122,80,.09) 0%,transparent 70%),radial-gradient(ellipse 40% 50% at 85% 20%,rgba(192,132,26,.06) 0%,transparent 60%);pointer-events:none}.book-lp .hero__inner{display:grid;grid-template-columns:1fr 280px;gap:var(--space-8);align-items:center;position:relative}@media(max-width:680px){.book-lp .hero__inner{grid-template-columns:1fr}.book-lp .hero__figure{order:-1;display:flex;justify-content:center}}.book-lp .hero__series{font-family:var(--font-sans);font-size:var(--fs-eyebrow);font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--color-green-light);margin:0 0 var(--space-4);display:flex;align-items:center;gap:var(--space-3)}.book-lp .hero__series:before{content:"";display:inline-block;width:24px;height:1px;background:var(--color-green);flex-shrink:0}.book-lp .hero h1{font-family:var(--font-serif);font-size:clamp(2.6rem,6vw + .5rem,4.4rem);font-weight:700;line-height:1.15;letter-spacing:.02em;margin:0 0 var(--space-4);color:var(--color-ink)}.book-lp .hero__author{font-size:1.1rem;color:var(--color-ink-muted);margin:0 0 var(--space-5);letter-spacing:.08em}.book-lp .hero__author small{font-size:.78rem;letter-spacing:.12em;margin-left:var(--space-3);color:var(--color-muted)}.book-lp .hero__catch{margin:0 0 var(--space-5);padding:var(--space-4) var(--space-5);border-left:3px solid var(--color-amber);background:#c0841a12;font-family:var(--font-serif);font-size:clamp(1rem,.5vw + .95rem,1.18rem);line-height:1.85;letter-spacing:.04em;color:var(--color-ink);font-style:normal}.book-lp .hero__desc{font-size:var(--fs-lead);line-height:var(--lh-reading);color:var(--color-ink-muted);margin:0 0 var(--space-5)}.book-lp .meta-strip{display:flex;flex-wrap:wrap;gap:var(--space-3) var(--space-5);font-size:var(--fs-small);color:var(--color-muted);letter-spacing:.04em;margin:0 0 var(--space-6)}.book-lp .meta-strip span:before{content:"◆";margin-right:var(--space-2);color:var(--color-green);font-size:.6em}.book-lp .hero__cta{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-bottom:var(--space-4)}.book-lp .hero__cta-sub{display:inline-block;font-size:var(--fs-small);color:var(--color-muted);letter-spacing:.04em;text-decoration:underline;text-underline-offset:3px}.book-lp .hero__cta-sub:hover{color:var(--color-ink)}.book-lp .hero__cover{width:100%;max-width:280px;height:auto;border-radius:2px;box-shadow:0 8px 32px #000000b3,0 2px 8px #00000080;display:block}.book-lp .lead-quote{padding:var(--space-7) 0;text-align:center;font-family:var(--font-serif);font-size:var(--fs-quote);line-height:1.75;letter-spacing:.06em;color:var(--color-ink);margin:0;border:none}.book-lp .lead-quote cite{display:block;margin-top:var(--space-4);font-size:var(--fs-small);font-style:normal;color:var(--color-muted);letter-spacing:.1em}.book-lp .questions{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:var(--space-6)}.book-lp .question{background:var(--color-bg-surface);border:1px solid var(--color-rule);border-top:3px solid var(--color-green);padding:var(--space-6)}.book-lp .question__num{font-family:var(--font-display);font-size:2.2rem;font-weight:600;color:var(--color-green-light);margin:0 0 var(--space-3);line-height:1;font-style:italic}.book-lp .question h3{font-size:var(--fs-h3);margin:0 0 var(--space-3);letter-spacing:.03em;line-height:var(--lh-snug);color:var(--color-ink)}.book-lp .question p{font-size:var(--fs-body);color:var(--color-ink-muted);margin:0;line-height:var(--lh-reading)}.book-lp .reasons{display:flex;flex-direction:column;gap:var(--space-6)}.book-lp .reason{display:grid;grid-template-columns:56px 1fr;gap:var(--space-5);align-items:start}.book-lp .reason__num{font-family:var(--font-display);font-size:2.4rem;font-weight:600;color:var(--color-green);opacity:.7;line-height:1;padding-top:4px;font-style:italic}.book-lp .reason__body h3{font-size:var(--fs-h3);margin:0 0 var(--space-3);letter-spacing:.03em;line-height:var(--lh-snug)}.book-lp .reason__body p{color:var(--color-ink-muted);margin:0;line-height:var(--lh-reading)}.book-lp .toc{background:var(--color-bg-surface);border:1px solid var(--color-rule);padding:var(--space-7)}.book-lp .toc__overture,.book-lp .toc__coda{font-size:var(--fs-small);color:var(--color-muted);margin:0 0 var(--space-5);letter-spacing:.06em}.book-lp .toc__coda{margin-top:var(--space-5);margin-bottom:0}.book-lp .toc__chapter{display:grid;grid-template-columns:2.5em 1fr;gap:var(--space-3);padding:var(--space-3) 0;border-bottom:1px solid var(--color-rule)}.book-lp .toc__chapter:last-child{border-bottom:none}.book-lp .toc__chapter-num{font-family:var(--font-display);font-size:.88rem;color:var(--color-green-light);font-weight:600;padding-top:2px;font-style:italic}.book-lp .toc__chapter-title{font-size:var(--fs-body);color:var(--color-ink);margin:0 0 var(--space-2);line-height:var(--lh-snug)}.book-lp .toc__caption{margin-top:var(--space-5);font-size:.76rem;color:var(--color-muted)}.book-lp .blurbs{display:flex;flex-direction:column;gap:var(--space-5)}.book-lp .blurb{background:var(--color-bg-raised);border-left:3px solid var(--color-green);padding:var(--space-5) var(--space-6)}.book-lp .blurb__text{font-family:var(--font-serif);font-size:1.02rem;line-height:1.85;letter-spacing:.04em;color:var(--color-ink);margin:0 0 var(--space-3)}.book-lp .blurb__cite{font-size:var(--fs-small);color:var(--color-muted);letter-spacing:.08em;font-style:normal}.book-lp .blurb__cite strong{color:var(--color-green-light)}.book-lp .pullquote{margin:var(--space-7) 0;padding:var(--space-6) var(--space-7);border:none;border-left:4px solid var(--color-amber);background:#c0841a0f;font-family:var(--font-serif);font-size:var(--fs-quote);line-height:1.75;letter-spacing:.04em;color:var(--color-ink)}.book-lp .pullquote cite{display:block;margin-top:var(--space-4);font-size:var(--fs-small);font-style:normal;color:var(--color-muted);letter-spacing:.1em}.book-lp .impression{max-width:62ch;margin-inline:auto;position:relative;padding:var(--space-6) 0 var(--space-5)}.book-lp .impression:before{content:"";display:block;width:36px;height:2px;background:var(--color-green);margin-bottom:var(--space-6)}.book-lp .impression p{font-family:var(--font-serif);font-size:1.04rem;line-height:2;letter-spacing:.04em;color:var(--color-ink);margin:0 0 1.4em}.book-lp .impression__opening:first-letter{font-family:var(--font-display);font-size:2.4em;float:left;line-height:.9;padding:.06em .14em 0 0;color:var(--color-green-light);font-weight:600;font-style:italic}.book-lp .impression__mark{margin:var(--space-6) 0;padding:var(--space-4) 0 var(--space-4) var(--space-5);border-left:3px solid var(--color-amber);background:#c0841a0f;font-family:var(--font-serif);font-size:1.02rem;line-height:1.9;letter-spacing:.04em;color:var(--color-ink)}.book-lp .impression__mark p{font-family:inherit;font-size:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0}.book-lp .impression__sign{margin-top:var(--space-6)!important;font-family:var(--font-serif);font-size:.84rem;letter-spacing:.14em;color:var(--color-muted);text-align:right;font-style:italic}.book-lp .author{display:grid;grid-template-columns:240px 1fr;gap:var(--space-7);align-items:start}@media(max-width:640px){.book-lp .author{grid-template-columns:1fr}}.book-lp .author__photo{width:100%;max-width:240px;aspect-ratio:3/4;object-fit:cover;object-position:center top;border-radius:2px;display:block;filter:grayscale(20%) contrast(1.05)}.book-lp .author__head{display:flex;align-items:baseline;gap:var(--space-3);margin-bottom:var(--space-5)}.book-lp .author__head h2{font-size:var(--fs-h2);margin:0;letter-spacing:.04em}.book-lp .author__reading{font-size:var(--fs-small);color:var(--color-muted);letter-spacing:.1em}.book-lp .author__body p{color:var(--color-ink-muted);line-height:var(--lh-reading);margin:0 0 var(--space-4)}.book-lp .author__body--emph{color:var(--color-ink)!important;font-family:var(--font-serif);font-size:1.02rem;border-left:3px solid var(--color-green);padding-left:var(--space-4)}.book-lp .author__mark{flex-shrink:0;color:var(--color-green)}.book-lp .readers{display:flex;flex-direction:column;gap:var(--space-4)}.book-lp .reader-item{padding:var(--space-5) var(--space-6);background:var(--color-bg-surface);border-left:3px solid var(--color-green)}.book-lp .reader-item p{margin:0;font-size:var(--fs-lead);line-height:var(--lh-reading);color:var(--color-ink)}.book-lp .buy-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-5);margin-bottom:var(--space-5)}.book-lp .buy-card{background:var(--color-bg-surface);border:1px solid var(--color-rule);padding:var(--space-6);display:flex;flex-direction:column;gap:var(--space-3);border-radius:2px}.book-lp .buy-card--primary{border-color:var(--color-green);box-shadow:0 0 0 1px #2d7a5040}.book-lp .buy-card__label{font-size:var(--fs-eyebrow);font-weight:700;letter-spacing:.14em;color:var(--color-green-light);text-transform:uppercase;margin:0}.book-lp .buy-card__form{font-size:var(--fs-small);color:var(--color-muted);margin:0}.book-lp .buy-card__price{font-size:1.4rem;font-weight:700;color:var(--color-ink);margin:0;letter-spacing:.02em}.book-lp .buy-card__price small{font-size:.7em;font-weight:400;color:var(--color-muted)}.book-lp .buy-card .btn{width:100%;margin-top:auto}.book-lp .buy-card__micro{font-size:.76rem;color:var(--color-muted);margin:0;letter-spacing:.04em}.book-lp .buy-note{font-size:var(--fs-small);color:var(--color-muted);line-height:var(--lh-reading);margin:0}.book-lp .tnum{font-variant-numeric:tabular-nums}.book-lp .faq{display:flex;flex-direction:column;gap:1px;background:var(--color-rule)}.book-lp .faq__item{background:var(--color-bg);padding:var(--space-6)}.book-lp .faq__q{font-size:var(--fs-h3);font-family:var(--font-serif);font-weight:700;color:var(--color-ink);margin:0 0 var(--space-3);letter-spacing:.03em;line-height:var(--lh-snug)}.book-lp .faq__q:before{content:"Q. ";color:var(--color-green-light);font-style:italic;font-family:var(--font-display)}.book-lp .faq__a{margin:0;color:var(--color-ink-muted);line-height:var(--lh-reading)}.book-lp .final-cta{text-align:center;padding:var(--space-10) 0;background:radial-gradient(ellipse 60% 70% at 50% 50%,rgba(45,122,80,.1) 0%,transparent 70%)}.book-lp .final-cta__eyebrow{font-size:var(--fs-eyebrow);font-weight:700;letter-spacing:.16em;color:var(--color-green-light);text-transform:uppercase;margin:0 0 var(--space-5);display:flex;align-items:center;justify-content:center;gap:var(--space-3)}.book-lp .final-cta__eyebrow:before,.book-lp .final-cta__eyebrow:after{content:"";display:block;width:32px;height:1px;background:var(--color-green)}.book-lp .final-cta h2{font-size:clamp(1.6rem,2vw + 1rem,2.2rem);margin:0 0 var(--space-4);letter-spacing:.04em}.book-lp .final-cta .lead{color:var(--color-ink-muted);margin:0 auto var(--space-7);max-width:42em;line-height:var(--lh-reading)}.book-lp .final-cta__buttons{display:flex;flex-wrap:wrap;gap:var(--space-4);justify-content:center;margin-bottom:var(--space-5)}.book-lp .final-cta__sub{font-size:var(--fs-small);color:var(--color-muted)}.book-lp .final-cta__sub a{color:var(--color-muted);text-decoration:underline;text-underline-offset:3px}.book-lp .site-footer{border-top:1px solid var(--color-rule);padding:var(--space-7) 0;background:var(--color-bg)}.book-lp .site-footer__crumbs{font-size:var(--fs-small);color:var(--color-muted);margin-bottom:var(--space-5);letter-spacing:.04em}.book-lp .site-footer__crumbs a{color:var(--color-muted);text-decoration:underline;text-underline-offset:3px}.book-lp .site-footer__disclosure{font-size:.76rem;color:var(--color-muted);line-height:var(--lh-reading);margin:0 0 var(--space-4);max-width:var(--container-narrow)}.book-lp .site-footer__credit{font-size:.74rem;color:var(--color-muted);margin:0;opacity:.7}
