:root{--ink:#f4e6be;--dim:#cdbf9a;--gold:#d6ac5c;--seal:#c43a2c;--paper:#efe1c0;--paper-ink:#1a1a24;--bg1:#141a33;--bg2:#0e1022}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg2)}
body{margin:0;font:17px/1.7 "Noto Serif JP","Hiragino Mincho ProN","Yu Mincho",Georgia,serif;color:var(--ink);min-height:100vh;
background-color:var(--bg2);
background-image:radial-gradient(circle at 50% 100%,transparent 0 38%,rgba(214,172,92,.07) 39% 42%,transparent 43% 53%,rgba(214,172,92,.05) 54% 57%,transparent 58%),linear-gradient(180deg,var(--bg1),var(--bg2));
background-size:64px 32px,100% 100%;padding:env(safe-area-inset-top,0) 0 env(safe-area-inset-bottom,0)}
a{color:var(--gold)}img{max-width:100%;height:auto}
h1,h2,h3{font-family:"Shippori Mincho","Noto Serif JP",Georgia,serif;font-weight:800;line-height:1.2;margin:0}
.w{max-width:1040px;margin:0 auto;padding:0 22px}
.top{display:flex;justify-content:space-between;padding:18px 0;font-size:14px}.top a{color:var(--dim);text-decoration:none}
.rule{height:3px;background:var(--seal);border:0;margin:0}
.hero{display:grid;gap:36px;align-items:center;padding:48px 0 64px}
@media(min-width:820px){.hero{grid-template-columns:1.2fr .8fr}}
.sub{font-family:"Shippori Mincho",serif;color:var(--gold);font-size:22px;letter-spacing:.3em;margin:6px 0 18px}
h1{font-size:clamp(40px,8vw,72px)}
.tag{font-size:19px;color:var(--ink);max-width:520px}
.btn{display:inline-block;margin-top:22px;padding:13px 24px;border-radius:10px;background:var(--seal);color:#fff;font-weight:700;text-decoration:none;border:2px solid var(--gold)}
.phone{border:3px solid var(--gold);border-radius:36px;padding:8px;background:#0a0c1a;max-width:300px;margin:0 auto;box-shadow:0 20px 50px rgba(0,0,0,.5)}
.phone img{display:block;border-radius:28px;width:100%}
.intro{padding:12px 0 36px;max-width:720px;font-size:18px}
.feature{display:grid;gap:28px;align-items:center;padding:36px 0;border-top:1px solid rgba(214,172,92,.25)}
@media(min-width:820px){.feature{grid-template-columns:1fr 1fr}.feature:nth-of-type(even) .shot{order:-1}}
.seal{display:inline-grid;place-items:center;width:46px;height:46px;background:var(--seal);color:#fff;font:800 24px "Shippori Mincho",serif;border-radius:4px;margin-bottom:12px;box-shadow:0 0 0 2px var(--gold) inset}
.card{background:var(--paper);color:var(--paper-ink);border-radius:14px;padding:22px 24px}
.card h2{font-size:26px;margin-bottom:8px}.card p{margin:0}
.shot{max-width:300px;margin:0 auto;border:3px solid var(--gold);border-radius:28px;overflow:hidden;background:#0a0c1a}
.shot img{display:block;width:100%}
.langs{text-align:center;padding:36px 0;color:var(--dim);border-top:1px solid rgba(214,172,92,.25)}
.page{max-width:720px;padding:32px 0 56px}.page h1{font-size:clamp(30px,6vw,44px);margin-bottom:6px}
.page h2{font-size:22px;margin:30px 0 8px;color:var(--gold)}.page li{margin:8px 0}.meta{color:var(--dim);font-size:15px}
details{background:var(--paper);color:var(--paper-ink);border-radius:12px;padding:14px 18px;margin:12px 0}
summary{cursor:pointer;font-weight:700}details p{margin:8px 0 0}
footer{border-top:3px solid var(--seal);padding:26px 0 40px;text-align:center;font-size:14px;color:var(--dim)}
footer a{color:var(--dim)}footer p{margin:6px 0}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
