:root{--bg-dark: #141418;--bg-card: #1c1c22;--bg-hover: #24242e;--accent: #c0394f;--accent-light: #e05068;--accent-glow: rgba(192, 57, 79, .15);--gold: #d4a955;--gold-light: #e8c478;--text-primary: #ececec;--text-secondary: #a0a0a8;--text-muted: #606068;--border: #2a2a32;--success: #34d399;--danger: #f87171}*{margin:0;padding:0;box-sizing:border-box}html{font-family:Noto Sans JP,-apple-system,BlinkMacSystemFont,sans-serif;background:var(--bg-dark);color:var(--text-primary);line-height:1.8;-webkit-font-smoothing:antialiased}body{min-height:100vh}a{color:var(--gold-light);text-decoration:none;transition:color .2s}a:hover{color:var(--gold)}img{max-width:100%;display:block}.container{max-width:960px;margin:0 auto;padding:0 20px}.section{padding:64px 0}.site-header{background:#141418f2;backdrop-filter:blur(12px);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:100;padding:14px 0}.site-header .container{display:flex;align-items:center;justify-content:space-between}.site-logo{font-size:1.3rem;font-weight:700;color:var(--text-primary);letter-spacing:.02em}.site-logo span{color:var(--accent)}.site-logo:hover{color:var(--text-primary)}.site-nav{list-style:none;display:flex;gap:24px}.site-nav a{color:var(--text-secondary);font-size:.88rem;font-weight:600}.site-nav a:hover{color:var(--gold-light)}.hamburger{display:none;background:none;border:none;cursor:pointer;flex-direction:column;gap:5px;padding:4px}.hamburger span{display:block;width:24px;height:2px;background:var(--text-primary);border-radius:2px;transition:.3s}.mobile-nav{display:none;position:fixed;top:52px;left:0;right:0;background:var(--bg-dark);border-bottom:1px solid var(--border);padding:16px 20px;flex-direction:column;gap:12px;z-index:99}.mobile-nav a{color:var(--text-primary);font-weight:600;font-size:1rem;padding:8px 0}.mobile-nav.open{display:flex}@media(max-width:768px){.site-nav{display:none}.hamburger{display:flex}}.ad-disclosure{background:#ffffff05;border-bottom:1px solid var(--border);padding:5px 0;text-align:center}.ad-disclosure p{font-size:.68rem;color:var(--text-muted)}.site-footer{border-top:1px solid var(--border);padding:32px 0;text-align:center}.footer-links{list-style:none;display:flex;justify-content:center;gap:20px;flex-wrap:wrap;margin-bottom:12px}.footer-links a{color:var(--text-muted);font-size:.8rem}.footer-links a:hover{color:var(--text-secondary)}.footer-copy{font-size:.75rem;color:var(--text-muted)}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:24px;transition:transform .2s,border-color .2s,box-shadow .2s}.card:hover{transform:translateY(-3px);border-color:var(--accent);box-shadow:0 8px 24px var(--accent-glow)}.btn-primary{display:inline-block;padding:14px 32px;background:linear-gradient(135deg,var(--accent),#a02040);color:#fff;border-radius:8px;font-weight:700;font-size:.95rem;text-decoration:none;transition:transform .2s,box-shadow .2s;box-shadow:0 4px 12px #c0394f4d}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #c0394f66;color:#fff}.btn-gold{display:inline-block;padding:14px 32px;background:linear-gradient(135deg,var(--gold),#b8903a);color:#1a1a1e;border-radius:8px;font-weight:700;font-size:.95rem;text-decoration:none;transition:transform .2s,box-shadow .2s;box-shadow:0 4px 12px #d4a9554d}.btn-gold:hover{transform:translateY(-2px);box-shadow:0 6px 20px #d4a95566;color:#1a1a1e}.pr-label{font-size:.6rem;color:var(--text-muted);background:#ffffff0d;padding:2px 8px;border-radius:10px;font-weight:700}.bubble{display:flex;gap:14px;margin:20px 0;align-items:flex-start}.bubble-icon{width:48px;height:48px;border-radius:50%;background:var(--bg-hover);display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0}.bubble-text{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:14px 18px;font-size:.9rem;color:var(--text-secondary);line-height:1.7;position:relative}.bubble-text:before{content:"";position:absolute;left:-8px;top:16px;border:4px solid transparent;border-right-color:var(--border)}.bubble-name{font-size:.7rem;color:var(--text-muted);text-align:center;margin-top:4px}@media(max-width:768px){.section{padding:48px 0}}
