*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#080808;color:#f4f0ed;font-family:"Noto Sans JP","Yu Gothic",system-ui,-apple-system,sans-serif;line-height:1.8}a{color:inherit}::selection{background:#d7172f;color:#fff}.topbar{height:72px;position:absolute;z-index:20;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(22px,5vw,80px);font-size:13px;letter-spacing:.12em}.topbar .home{font-family:Georgia,serif;font-size:22px;text-decoration:none}.topbar nav{display:flex;gap:10px;color:#777}.topbar .lang{text-decoration:none}.topbar .lang.active{color:#fff}.notice{position:fixed;z-index:50;top:76px;left:50%;transform:translateX(-50%);background:#fff;color:#111;padding:10px 18px;border-radius:99px;font-size:13px;box-shadow:0 12px 40px #0008}.hero{min-height:100vh;position:relative;display:grid;place-items:center;overflow:hidden;background:radial-gradient(circle at 55% 35%,#310006 0,#120003 28%,#080808 65%)}.hero:before{content:"";position:absolute;width:80vw;height:1px;background:linear-gradient(90deg,transparent,#e3122f,transparent);transform:rotate(-13deg);opacity:.45}.noise{position:absolute;inset:0;opacity:.12;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.25'/%3E%3C/svg%3E")}.hero-inner{position:relative;z-index:2;width:min(1120px,90vw);padding:130px 0 70px}.kicker,.eyebrow{font-size:11px;letter-spacing:.28em;color:#e54a59;text-transform:uppercase;font-weight:700}.hero h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(54px,8vw,126px);line-height:.92;letter-spacing:-.045em;margin:.22em 0}.hero h1 span{color:#ee1d35;text-shadow:0 0 45px #a0002050}.subtitle{max-width:760px;font-size:clamp(16px,2vw,26px);color:#bcb4b0;margin:26px 0 54px}.hero-lines{max-width:780px;border-left:1px solid #5f1820;padding-left:24px;color:#a9a3a0}.hero-lines p{margin:5px 0}.hero-lines .strong{color:#eee;font-size:1.12em;margin-top:18px}.scroll-cue{display:inline-block;margin-top:42px;text-decoration:none;font-size:12px;letter-spacing:.16em;color:#d96e79}.section{padding:clamp(90px,12vw,180px) clamp(24px,8vw,130px);max-width:1600px;margin:auto}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:start}.two-col.reverse .copy{order:1}.two-col.reverse h2{order:2}.section h2{font-family:Georgia,"Times New Roman",serif;font-size:clamp(38px,5vw,76px);line-height:1.08;margin:.35em 0}.copy{font-size:clamp(16px,1.4vw,21px);color:#bdb7b3}.copy blockquote{margin:42px 0;padding:22px 0;border-top:1px solid #ad2434;border-bottom:1px solid #ad2434;font-size:clamp(23px,2.4vw,40px);line-height:1.35;color:#fff;font-family:Georgia,serif}.black{background:#030303;max-width:none}.black>*{max-width:1340px;margin-left:auto;margin-right:auto}.authority{text-align:center}.center-copy{max-width:980px;margin:auto}.center-copy p{max-width:720px;margin:30px auto;color:#aaa;font-size:19px}.system-line{min-height:260px;display:flex;justify-content:center;align-items:center;gap:clamp(14px,3vw,54px);font-family:Georgia,serif;font-size:clamp(28px,5vw,72px);background:#eeeae6;color:#111}.system-line b{color:#d31631;font-weight:400}.product-intro{display:grid;grid-template-columns:minmax(260px,420px) 1fr;gap:8vw;align-items:center}.book-mock{position:relative;height:540px;perspective:1200px}.book-face{position:absolute;inset:20px 25px 20px 45px;background:linear-gradient(145deg,#160307,#030303 58%);border:1px solid #6d1a25;box-shadow:-30px 30px 70px #000,0 0 70px #5c001d35;padding:55px 35px;display:flex;flex-direction:column;transform:rotateY(-9deg);transform-origin:left}.book-face:after{content:"";position:absolute;left:0;right:0;top:42%;height:1px;background:#9c1830;transform:rotate(-13deg)}.book-face small{letter-spacing:.25em;color:#db5260}.book-face strong{white-space:pre-line;font-family:Georgia,serif;font-size:clamp(33px,3.4vw,50px);line-height:1.1;margin:auto 0;color:#fff}.book-face em{font-style:normal;color:#777;letter-spacing:.1em}.book-spine{position:absolute;width:28px;top:35px;bottom:35px;left:25px;background:#4f0713;transform:skewY(-45deg)}.product-copy>p:not(.eyebrow){font-size:18px;color:#b5afab;max-width:760px}.contents{border-top:1px solid #222}.contents ol{list-style:none;padding:0;margin:30px 0 0}.contents li{display:grid;grid-template-columns:70px 1fr;gap:20px;padding:22px 0;border-bottom:1px solid #222;font-size:clamp(17px,2vw,28px)}.contents li span{color:#a82235;font-family:Georgia,serif}.purchase{padding:clamp(70px,9vw,130px) clamp(24px,8vw,130px);background:linear-gradient(115deg,#851026,#d81735);color:#fff}.purchase-inner{max-width:1250px;margin:auto;display:grid;grid-template-columns:1fr 360px;gap:60px;align-items:center}.purchase h2{font-family:Georgia,serif;font-size:clamp(35px,4vw,60px);line-height:1.1;margin:10px 0}.purchase ul{padding-left:20px;color:#ffe9ec}.price-card{background:#090909;color:#fff;padding:34px;border-radius:2px;box-shadow:0 22px 60px #40001480}.price{font-family:Georgia,serif;font-size:54px;margin-bottom:20px}.price-card button,.download-button{width:100%;border:0;background:#fff;color:#101010;padding:17px 20px;font-size:16px;font-weight:800;cursor:pointer}.price-card button:hover,.download-button:hover{background:#f0dfe2}.price-card small{display:block;text-align:center;margin-top:12px;color:#888}.terms{max-width:950px;color:#8e8884}.terms h3{color:#ddd}.follow{padding:80px clamp(24px,8vw,130px);display:grid;grid-template-columns:minmax(220px,430px) 1fr;gap:7vw;align-items:center;background:#020202}.follow img{width:100%;height:auto}.follow p{color:#d92840;font-weight:700}.follow h2{font-family:Georgia,serif;font-size:clamp(30px,4vw,58px);line-height:1.15}.follow a{display:inline-block;margin-top:14px;color:#fff;text-decoration:none;border-bottom:1px solid #d31d37;padding-bottom:4px}footer{padding:28px clamp(24px,8vw,130px);display:flex;justify-content:space-between;color:#555;font-size:12px;border-top:1px solid #181818}footer nav{display:flex;gap:20px}footer a{text-decoration:none}.download-body{min-height:100vh;background:radial-gradient(circle at 50% 20%,#310006,#080808 55%);display:grid;place-items:center;padding:30px}.download-shell{width:min(720px,94vw);background:#0d0d0df2;border:1px solid #2c1318;padding:clamp(30px,7vw,70px);box-shadow:0 30px 100px #000}.download-shell h1{font-family:Georgia,serif;font-size:clamp(38px,6vw,72px);line-height:1.02}.download-status{display:grid;grid-template-columns:1fr auto;gap:10px 30px;padding:25px 0;margin:25px 0;border-top:1px solid #302026;border-bottom:1px solid #302026}.download-status span{color:#777}.download-status strong{font-family:ui-monospace,Consolas,monospace}.download-link,.back-x{display:inline-block;margin-top:20px;text-decoration:none;border-bottom:1px solid #d41c35;padding-bottom:3px}.download-button{background:#d71935;color:white;margin-top:20px}.tiny{font-size:12px;color:#666}.license-note{margin-top:35px;color:#777;font-size:13px}.expired{color:#e65b6c}@media(max-width:800px){.topbar{height:60px}.hero-inner{padding-top:110px}.two-col,.product-intro,.purchase-inner,.follow{grid-template-columns:1fr}.two-col.reverse .copy,.two-col.reverse h2{order:initial}.book-mock{height:430px;max-width:340px}.purchase-inner{gap:28px}.system-line{min-height:180px}.follow img{max-width:360px}.download-status{grid-template-columns:1fr}.download-status strong{margin-bottom:10px}}

/* English book cover title adjustment */
html[lang="en"] .book-face strong {
  font-size: clamp(26px, 2.15vw, 32px);
  line-height: 1.12;
  letter-spacing: -0.025em;
  white-space: normal;
  overflow-wrap: normal;
  word-break: normal;
}
