@import "https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New:wght@400;500;700;900&family=Noto+Sans+JP:wght@400;500;700&display=swap";:root{--navy:#0b2c4d;--ink:#1e2a35;--gold:#c8a96a;--gold-deep:#8a6d34;--gold-text:#7a5f2c;--gold-pale:#f3e6cd;--bg:#f4f7f9;--cream:#fdfaf5;--beige:#f3ece1;--pale-blue:#e6eef4;--line-warm:#ece4d8;--line-cool:#e2e8ee;--body:#3e4c59;--muted:#5c6b7a;--muted-pale:#8a94a0;--heading-font:"Zen Kaku Gothic New", "Noto Sans JP", "Yu Gothic", system-ui, sans-serif;--body-font:"Noto Sans JP", "Zen Kaku Gothic New", "Yu Gothic", system-ui, sans-serif;--gutter:clamp(20px, 6vw, 140px)}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);font-family:var(--heading-font);-webkit-font-smoothing:antialiased;margin:0}a{color:var(--navy)}a:hover{color:var(--gold-deep)}p{margin:0}[hidden]{display:none!important}.campaign-bar{padding:12px var(--gutter);background:var(--navy);color:#fff;font:400 14px/1.6 var(--body-font);flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 16px;display:flex}.campaign-bar .badge{background:var(--gold);color:var(--ink);font:700 12px/1.6 var(--body-font);letter-spacing:.1em;border-radius:999px;padding:4px 12px}.campaign-bar strong{font-weight:700}.campaign-bar .until{color:#c5cfd8}.campaign-bar a{color:#fff;text-underline-offset:4px;font-weight:500}.campaign-bar a:hover{color:var(--gold)}.container{width:100%;max-width:1160px;margin:0 auto}.section{padding:clamp(56px, 8vw, 88px) var(--gutter)}.section--cool{background:var(--bg)}.section--warm{background:var(--cream)}.section-head{flex-direction:column;gap:12px;margin-bottom:clamp(28px,4vw,44px);display:flex}.eyebrow{font:700 13px/1 var(--heading-font);color:var(--gold-text);letter-spacing:.14em}.section-head h2{font:700 clamp(24px, 3.4vw, 34px) / 1.5 var(--heading-font);color:var(--navy);margin:0}.section-head .lead{max-width:720px;font:400 15px/1.95 var(--body-font);color:var(--muted);margin:0}.note{font:400 13px/1.9 var(--body-font);color:var(--muted)}.btn{text-align:center;font:700 17px/1.4 var(--heading-font);cursor:pointer;border:none;border-radius:16px;justify-content:center;align-items:center;text-decoration:none;transition:transform .2s,box-shadow .2s;display:inline-flex}.btn:hover{transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn--primary{background:var(--gold);color:var(--ink);padding:20px 32px;box-shadow:0 6px 18px #c8a96a59}.btn--primary:hover{color:var(--ink)}.btn--ghost{color:var(--navy);border:1px solid var(--line-cool);background:#fff;padding:20px 32px}.btn--ghost:hover{color:var(--navy);border-color:var(--gold)}.text-link{font:500 15px/1.6 var(--heading-font);color:var(--navy);text-underline-offset:5px;text-decoration:underline;text-decoration-color:var(--gold)}.site-header{background:var(--cream);border-bottom:1px solid var(--line-warm);padding:18px var(--gutter)}.site-header .container{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;display:flex}.brand{align-items:center;gap:14px;text-decoration:none;display:flex}.brand img{object-fit:cover;border:1px solid var(--line-warm);background:#fff;border-radius:50%;width:48px;height:48px}.brand-text{flex-direction:column;gap:4px;display:flex}.brand-text .name{font:700 20px/1 var(--heading-font);color:var(--navy);letter-spacing:.04em}.brand-text .tagline{font:400 12px/1 var(--body-font);color:var(--muted)}.site-nav{font:500 15px/1 var(--heading-font);flex-wrap:wrap;align-items:center;gap:26px;display:flex}.site-nav>a{color:var(--ink);text-decoration:none}.site-nav>a:hover{color:var(--gold-deep)}.nav-auth{align-items:center;gap:10px;display:flex}.btn-nav{font:700 14px/1 var(--heading-font);white-space:nowrap;border-radius:12px;align-items:center;padding:11px 18px;text-decoration:none;display:inline-flex}.btn-nav--ghost{color:var(--navy);border:1px solid var(--line-cool);background:#fff}.btn-nav--ghost:hover{color:var(--navy);border-color:var(--gold)}.btn-nav--solid{background:var(--navy);color:#fff}.btn-nav--solid:hover{background:var(--gold-deep);color:#fff}.btn-nav--gold{background:var(--gold);color:var(--ink);border-radius:999px}.btn-nav--gold:hover{color:var(--ink);background:#d6bb82}.nav-account{font:500 14px/1.4 var(--body-font);color:var(--body);text-overflow:ellipsis;white-space:nowrap;max-width:16em;overflow:hidden}.btn-nav--logout{color:var(--navy);border:1px solid var(--line-cool);font-family:var(--heading-font);cursor:pointer;background:#fff;border-radius:999px}.btn-nav--logout:hover{border-color:var(--gold)}.site-footer{padding:64px var(--gutter) 56px;background:var(--ink)}.footer-top{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:48px;display:flex}.footer-brand{flex-direction:column;gap:16px;display:flex}.footer-brand .row{align-items:center;gap:12px;display:flex}.footer-brand img{object-fit:cover;background:#fff;border-radius:50%;width:40px;height:40px}.footer-brand .name{font:700 17px/1 var(--heading-font);color:#fff}.footer-brand p{font:400 13px/1.9 var(--body-font);color:#9aa7b3;max-width:420px}.footer-links{font:400 14px/1.6 var(--body-font);grid-template-columns:repeat(2,minmax(160px,auto));gap:14px 48px;display:grid}.footer-links a{color:#c5cfd8;text-decoration:none}.footer-links a:hover{color:var(--gold);text-underline-offset:4px;text-decoration:underline}.copyright{font:400 12px/1 var(--body-font);color:#6d7b88;margin:40px 0 0}@media (width<=860px){.site-header .container{justify-content:center}.site-nav{justify-content:center;gap:18px;width:100%}}@media (width<=560px){.brand-text .tagline{display:none}.site-nav>a{font-size:14px}.footer-links{grid-template-columns:1fr}}
