.field{margin-bottom:18px}.field label{display:block;font-size:13px;letter-spacing:.1em;color:var(--moon-dim);margin-bottom:7px}.field label .opt{color:var(--moon-faint);font-size:11px;margin-left:6px}.field label .req{color:var(--gold);font-size:11px;margin-left:6px}.field input[type=email],.field input[type=password],.field input[type=text],.field select{width:100%;background:var(--input-bg);border:1px solid var(--hair);border-radius:10px;color:var(--moon);font-family:var(--font-body);font-size:15px;padding:13px 14px;outline:none;transition:border-color .25s ease,box-shadow .25s ease;-moz-appearance:none;appearance:none;-webkit-appearance:none}.field input::placeholder{color:var(--moon-faint)}.field input:hover,.field select:hover{border-color:var(--gold-soft)}.field input[aria-invalid=true]{border-color:var(--fire);box-shadow:0 0 0 3px rgba(255,107,122,.12)}.field select{background-image:linear-gradient(45deg,transparent 50%,var(--moon-dim) 50%),linear-gradient(135deg,var(--moon-dim) 50%,transparent 50%);background-position:calc(100% - 18px) 50%,calc(100% - 13px) 50%;background-size:5px 5px,5px 5px;background-repeat:no-repeat}.field input:focus,.field select:focus{border-color:var(--gold-soft);box-shadow:0 0 0 3px rgba(227,194,122,.12)}.field input:focus-visible,.field select:focus-visible,.form-cta:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.field-row{display:flex;gap:10px}.field-row>*{flex:1 1}.field .hint{font-size:12px;color:var(--moon-faint);margin-top:6px;line-height:1.7}.field .field-error{font-size:12.5px;color:var(--fire);margin-top:6px;line-height:1.7}.gender-toggle{display:flex;gap:8px}.gender-toggle input{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;-webkit-clip-path:inset(50%);clip-path:inset(50%);overflow:hidden;white-space:nowrap}.gender-toggle input:focus-visible+label{outline:2px solid var(--gold);outline-offset:2px}.gender-toggle label{flex:1 1;text-align:center;font-size:14px;letter-spacing:.08em;color:var(--moon-dim);border:1px solid var(--hair);border-radius:10px;padding:12px 0;cursor:pointer;transition:border-color .25s ease,color .25s ease,background .25s ease,box-shadow .25s ease;margin:0}.gender-toggle input:checked+label{border-color:var(--gold);color:var(--gold);background:rgba(227,194,122,.08);box-shadow:inset 0 0 12px rgba(227,194,122,.15)}.birth-time-slot-select{width:100%}.acc{margin-top:8px;border:1px solid var(--hair);border-radius:10px;overflow:hidden;background:var(--input-bg-soft)}.acc summary{list-style:none;cursor:pointer;padding:10px 14px;font-size:12.5px;color:var(--moon-dim);letter-spacing:.05em;display:flex;align-items:center;gap:8px;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:color .25s ease}.acc summary::-webkit-details-marker{display:none}.acc summary:before{content:"＋";color:var(--gold);font-size:13px;transition:transform .25s ease}.acc[open] summary:before{content:"−"}.acc summary:hover{color:var(--gold)}.acc .acc-body{padding:2px 16px 14px;font-size:12.5px;color:var(--moon-dim);line-height:1.9}.acc .acc-body p{margin:0 0 10px}.acc .acc-body p:last-child{margin-bottom:0}.acc .acc-body b{color:var(--moon);font-weight:500}.form-cta{display:flex;width:100%;align-items:center;justify-content:center;gap:10px;background:linear-gradient(135deg,var(--gold-grad-start),var(--gold-grad-end));color:var(--gold-cta-ink);font-family:var(--font-heading);font-weight:600;font-size:17px;letter-spacing:.14em;padding:18px 0;border-radius:30px;text-decoration:none;border:none;cursor:pointer;margin-top:8px;box-shadow:0 14px 34px rgba(0,0,0,.4);position:relative;transition:transform .3s ease}.form-cta:before{content:"";position:absolute;inset:-5px;border-radius:36px;background:radial-gradient(circle,rgba(227,194,122,.45),transparent 70%);z-index:-1;animation:pulseGlow 3s ease-in-out infinite}@keyframes pulseGlow{0%,to{opacity:.4;transform:scale(.97)}50%{opacity:.85;transform:scale(1.03)}}.form-cta:hover{transform:translateY(-2px)}.form-note{text-align:center;font-size:12px;color:var(--moon-faint);margin:12px 0 0}.form-note+.form-note{margin-top:8px}:root{--bg1:#160b2e;--bg2:#231343;--bg3:#3a1750;--aurora1:#6c3fa8;--aurora2:#9c5cc7;--aurora3:#3f6fb0;--card:#251437cc;--card-hi:#2e1a47;--gold:#e3c27a;--gold-soft:#e3c27a66;--moon:#f3eefa;--moon-dim:#c8b9de;--hair:#4f3a70;--paper:#efe6d2;--paper-ink:#2b2418;--shadow:0 25px 70px rgba(0,0,0,0.5);--wood:#4fe3a6;--wood-glow:rgba(79,227,166,0.45);--fire:#ff6b7a;--fire-glow:rgba(255,107,122,0.45);--earth:#e3b15a;--earth-glow:rgba(227,177,90,0.45);--metal:#e9e6f2;--metal-glow:rgba(233,230,242,0.45);--water:#5c8cff;--water-glow:rgba(92,140,255,0.45);--moon-faint:#8879a6;--input-bg:#1b1030;--input-bg-soft:#1b103080;--gold-grad-start:#efd59a;--gold-grad-end:#c79a52;--gold-cta-ink:#241206;--moon-grad-1:#fbf7ec;--moon-grad-2:#efe7d8;--moon-grad-3:#c9bba4;--aurora2-soft:rgba(156,92,199,0.35);--aurora3-soft:rgba(63,111,176,0.3);--gold-faint:rgba(227,194,122,0.12);--gold-glow:rgba(227,194,122,0.6);--moon-glow:rgba(243,238,250,0.3);--font-heading:"Yu Mincho","YuMincho","Hiragino Mincho ProN","Noto Serif JP",serif;--font-serif-en:Georgia,"Times New Roman",serif;--font-body:"Yu Gothic UI","Yu Gothic","Hiragino Kaku Gothic ProN",Meiryo,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body,html{margin:0;padding:0}body{background:radial-gradient(ellipse at 15% 0,var(--aurora2) 0,transparent 45%),radial-gradient(ellipse at 85% 15%,var(--aurora3) 0,transparent 50%),radial-gradient(ellipse at 50% 80%,var(--aurora1) 0,transparent 55%),linear-gradient(180deg,var(--bg1) 0,var(--bg2) 50%,var(--bg3) 100%);background-attachment:fixed;color:var(--moon);font-family:var(--font-body);font-weight:400;font-size:17px;line-height:1.95;min-height:100vh;position:relative;overflow-x:hidden}h1,h2,h3{font-family:var(--font-heading);font-weight:600;letter-spacing:.12em}.serif-en{font-family:var(--font-serif-en)}.aurora-layer{position:fixed;inset:-10%;z-index:0;pointer-events:none;opacity:.55;background:radial-gradient(ellipse 60% 40% at 30% 20%,var(--aurora2-soft),transparent 60%),radial-gradient(ellipse 50% 35% at 75% 60%,var(--aurora3-soft),transparent 60%),radial-gradient(ellipse 45% 30% at 50% 90%,var(--gold-faint),transparent 60%);animation:auroraDrift 26s ease-in-out infinite alternate;filter:blur(6px)}@keyframes auroraDrift{0%{transform:translate(0) scale(1)}to{transform:translate(-3%,2%) scale(1.06)}}.moon-layer{position:fixed;top:90px;left:-46px;z-index:0;pointer-events:none;overflow:visible;opacity:.9}.moon-layer svg{overflow:visible;display:block}.constellation{stroke:var(--gold-soft);stroke-width:.6;fill:none;opacity:.5}.constellation.spin{transform-origin:60px 60px;animation:spin 180s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.moon-disc{fill:url(#moonGrad);filter:drop-shadow(0 0 26px var(--moon-glow))}.stars{position:fixed;inset:0;z-index:0;pointer-events:none;opacity:.8;will-change:transform}.stars circle{fill:var(--moon)}.stars .tw{animation:twinkle 4.5s ease-in-out infinite}@keyframes twinkle{0%,to{opacity:.15}50%{opacity:1}}.stars .particle{fill:var(--gold);opacity:.6;animation:drift 18s ease-in-out infinite}@keyframes drift{0%{transform:translateY(0)}50%{transform:translateY(-18px)}to{transform:translateY(0)}}.wrap{position:relative;z-index:1;max-width:760px;margin:0 auto;padding:0 24px 80px}header.site{display:flex;align-items:center;justify-content:space-between;padding:22px 4px;position:relative;z-index:2}.logo{font-family:var(--font-heading);font-size:21px;letter-spacing:.18em;color:var(--moon);text-decoration:none}.logo b{color:var(--gold);font-weight:600}.nav-links{display:flex;gap:10px}.nav-links form{margin:0}.nav-link{font-size:13px;color:var(--moon-dim);text-decoration:none;letter-spacing:.08em;border:1px solid var(--hair);padding:8px 16px;border-radius:8px;transition:border-color .25s ease,color .25s ease}button.nav-link{background:rgba(27,16,48,.45);font-family:var(--font-body);line-height:inherit;cursor:pointer}.nav-link:focus-visible{border-color:var(--gold);outline:2px solid var(--gold);outline-offset:2px}.nav-link:hover{border-color:var(--gold-soft);color:var(--gold)}footer.site-footer{margin-top:64px;text-align:center;padding-top:32px;border-top:1px solid var(--hair)}footer.site-footer .flinks{display:flex;justify-content:center;gap:22px;flex-wrap:wrap;margin-bottom:18px}footer.site-footer a{color:var(--moon-dim);font-size:13px;text-decoration:none;letter-spacing:.05em}footer.site-footer a:hover{color:var(--gold)}footer.site-footer .copy{font-size:12px;color:var(--moon-faint);letter-spacing:.05em}.hairline{height:1px;margin:60px 0;position:relative;overflow:hidden;background:linear-gradient(90deg,transparent,var(--hair) 20%,var(--hair) 80%,transparent)}.hairline:before{content:"";position:absolute;top:0;left:0;height:100%;width:0;background:linear-gradient(90deg,transparent,var(--gold) 50%,transparent);box-shadow:0 0 10px var(--gold-glow);transition:width 1.5s cubic-bezier(.2,.7,.2,1)}.hairline.in-view:before{width:100%}.section-title{text-align:center;font-size:13px;letter-spacing:.32em;color:var(--gold);margin-bottom:10px}.section-heading{text-align:center;font-size:25px;margin:0 0 16px;color:var(--moon);letter-spacing:.14em;line-height:1.7}.section-lead{text-align:center;font-size:14.5px;color:var(--moon-dim);max-width:560px;margin:0 auto 36px}.reveal{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.aurora-layer,.constellation.spin,.hairline:before,.stars .particle,.stars .tw{animation:none!important;transition:none!important}.hairline:before{width:100%}}@media (max-width:768px){body{font-size:16px}.wrap{padding:0 18px 60px}.moon-layer{top:76px;left:-24px;transform:scale(.72);transform-origin:top left}.nav-link{padding:7px 12px;font-size:12px}.nav-links{gap:6px}}