:root{--bg: #fff;--bg-alt: #f5f5f7;--ink: #1d1d1f;--ink-2: #6e6e73;--hairline: #d2d2d7;--brand: #e10080;--brand-deep: #b30068;--violet: #8b3df5;--dark: #0c0910;--grad: linear-gradient(96deg, #e10080 10%, #8b3df5 90%);--radius: 24px;--pill: 980px;--font: -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic Medium", Meiryo, sans-serif}*{margin:0;padding:0;box-sizing:border-box}html{font-family:var(--font);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;scroll-behavior:smooth}body{font-size:17px;line-height:1.9;overflow-wrap:anywhere}img{max-width:100%;height:auto;display:block}a{color:var(--brand-deep);text-decoration:none}a:hover{opacity:.85}button{font-family:inherit;cursor:pointer}:focus-visible{outline:3px solid var(--violet);outline-offset:2px;border-radius:4px}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.wrap{max-width:980px;margin:0 auto;padding:0 24px}.wrap-narrow{max-width:720px;margin:0 auto;padding:0 24px}.sec{padding:88px 0}.sec-alt{background:var(--bg-alt)}.sec-dark{background:var(--dark);color:#f5f5f7}.sec-dark .h-section{color:#fff}.h-display{font-size:clamp(34px,7vw,56px);font-weight:700;line-height:1.25;letter-spacing:.01em}.h-section{font-size:clamp(26px,5vw,40px);font-weight:700;line-height:1.35;margin-bottom:16px}.eyebrow{display:block;font-size:14px;font-weight:700;letter-spacing:.12em;color:var(--brand);margin-bottom:12px}.sec-alt .eyebrow,.hero .eyebrow{color:var(--brand-deep)}.sub{color:var(--ink-2);font-size:16px}.hero .sub{color:#63636a}.grad{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}.hero{position:relative;text-align:center;padding:72px 0 56px;overflow:hidden}.hero .aura{position:absolute;inset:-120px auto auto 50%;transform:translate(-50%);width:720px;height:480px;background:radial-gradient(closest-side,rgba(225,0,128,.14),rgba(139,61,245,.1) 60%,transparent);filter:blur(20px);pointer-events:none}.hero>.wrap{position:relative}.card{background:var(--bg);border:1px solid var(--hairline);border-radius:var(--radius);padding:32px 28px}.chips{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.chip{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--hairline);background:var(--bg);border-radius:var(--pill);padding:8px 18px;font-size:14px;font-weight:600}.chip .dot{width:14px;height:14px;border-radius:50%;border:1px solid rgba(0,0,0,.12);flex:none}.btn{display:inline-block;border-radius:var(--pill);padding:14px 34px;font-size:16px;font-weight:700;border:none;transition:transform .15s ease,opacity .15s ease;text-align:center}.btn:active{transform:scale(.97)}.btn-primary{background:var(--grad);color:#fff}.btn-primary:hover{opacity:.9}.btn-ghost{background:transparent;color:var(--brand-deep);border:1px solid var(--brand-deep)}.cta-band{background:var(--dark);color:#f5f5f7;border-radius:var(--radius);padding:44px 32px;text-align:center}.cta-band .h-section{color:#fff;margin-bottom:8px}.cta-band .sub{color:#a1a1a6;margin-bottom:24px}.site-header{position:sticky;top:0;z-index:50;backdrop-filter:saturate(180%) blur(16px);-webkit-backdrop-filter:saturate(180%) blur(16px);background:#ffffffc7;border-bottom:1px solid rgba(0,0,0,.06)}.site-header .inner{max-width:980px;margin:0 auto;padding:0 24px;height:52px;display:flex;align-items:center;justify-content:space-between}.site-logo{font-size:17px;font-weight:700;color:var(--ink);display:inline-flex;align-items:center;gap:8px}.site-nav{display:flex;gap:20px}.site-nav a{font-size:14px;font-weight:600;color:var(--ink-2)}.site-nav a[aria-current=page]{color:var(--brand-deep)}.site-footer{background:var(--dark);color:#a1a1a6;padding:48px 0 40px;font-size:13px}.site-footer a{color:#d2d2d7}.site-footer .cols{display:flex;flex-wrap:wrap;gap:12px 28px;margin-bottom:20px}.site-footer .note{border-top:1px solid rgba(255,255,255,.12);padding-top:20px;line-height:1.8}.rv{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}.rv.in{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.rv{opacity:1;transform:none;transition:none}*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media(max-width:640px){body{font-size:16px}.sec{padding:60px 0}.hero{padding:48px 0 40px}.card{padding:24px 20px}.site-header .inner{height:auto;flex-direction:column;gap:2px;padding:10px 16px 8px}.site-logo{font-size:15px;white-space:nowrap}.site-nav{gap:4px 16px;flex-wrap:wrap;justify-content:center}.site-nav a{font-size:13px;white-space:nowrap}.site-nav a:first-child{display:none}}.df-card{background:var(--bg);border:1px solid var(--hairline);border-radius:var(--radius);padding:36px 32px;text-align:left;max-width:720px;margin:0 auto}.df-date{font-size:14px;font-weight:700;letter-spacing:.08em;color:var(--brand);margin-bottom:12px}.df-heading{font-size:15px;font-weight:700;color:var(--ink-2);letter-spacing:.06em;margin:22px 0 6px}.df-heading:first-of-type{margin-top:0}.df-text{font-size:16px}.df-lucky{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.df-skeleton{height:16px;border-radius:8px;background:linear-gradient(90deg,#eee 25%,#f7f7f7,#eee 75%);background-size:200% 100%;animation:dfShimmer 1.4s infinite;margin-top:14px}.df-skeleton.short{width:60%}@keyframes dfShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.omk-stage{text-align:center;padding:12px 0 4px}.omk-box{background:none;border:none;display:inline-flex;flex-direction:column;align-items:center;gap:14px;padding:12px;border-radius:var(--radius)}.omk-box:hover .omk-box-art{transform:translateY(-4px)}.omk-box-art{display:block;transition:transform .25s ease}.omk-box.shaking .omk-box-art{animation:omkShake .5s ease-in-out infinite}@keyframes omkShake{0%,to{transform:rotate(0)}25%{transform:rotate(-7deg) translateY(-3px)}75%{transform:rotate(7deg) translateY(-3px)}}.omk-box-label{font-size:15px;font-weight:700;color:var(--brand-deep)}.omk-box[aria-disabled=true]{cursor:wait}.omk-result{background:var(--bg);border:1px solid var(--hairline);border-radius:var(--radius);padding:40px 32px;text-align:center;max-width:560px;margin:0 auto;animation:omkReveal .5s ease both}@keyframes omkReveal{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}.omk-label{font-size:13px;font-weight:700;letter-spacing:.12em;color:var(--ink-2)}.omk-rank{font-size:64px;font-weight:700;line-height:1.3;margin:6px 0 14px;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}.omk-result[data-tone=caution] .omk-rank{background:none;color:var(--ink-2);-webkit-text-fill-color:currentColor}.omk-message{text-align:left;font-size:16px}.omk-hint{margin-top:18px;padding:14px 18px;background:var(--bg-alt);border-radius:16px;font-size:14px;text-align:left}.omk-hint-label{display:block;font-size:12px;font-weight:700;letter-spacing:.1em;color:var(--brand-deep);margin-bottom:2px}.omk-cta{margin-top:26px;padding-top:24px;border-top:1px solid var(--hairline)}.omk-cta-lead{font-size:14px;color:var(--ink-2);margin-bottom:16px;text-align:left}.omk-share{display:inline-block;margin-top:20px;padding:12px 28px;border-radius:var(--pill);border:1.5px solid var(--ink);background:#fff;color:var(--ink);font-size:15px;font-weight:700;text-decoration:none}.omk-share:hover{opacity:.85}.omk-again{display:block;margin-top:14px;background:none;border:none;font-size:14px;font-weight:600;color:var(--ink-2);text-decoration:underline;text-underline-offset:3px}.omk-subh{font-size:20px;font-weight:700;line-height:1.4;margin:28px 0 8px;color:var(--brand-deep)}.omk-faq{margin-top:8px}.omk-faq-item{border-bottom:1px solid var(--hairline);padding:14px 0}.omk-faq-item:first-child{border-top:1px solid var(--hairline)}.omk-faq-item summary{cursor:pointer;font-weight:700;list-style:none;padding-right:24px;position:relative}.omk-faq-item summary::-webkit-details-marker{display:none}.omk-faq-item summary:after{content:"+";position:absolute;right:0;top:0;color:var(--ink-2);font-weight:700}.omk-faq-item[open] summary:after{content:"−"}.omk-faq-item p{margin-top:10px;color:var(--ink)}.omk-eeat{font-size:15px;color:var(--ink-2)}.sdn,.sdn-result{background:var(--bg);border:1px solid var(--hairline);border-radius:var(--radius);padding:36px 32px;max-width:640px;margin:0 auto}.sdn-progress{margin-bottom:22px}.sdn-progress-text{display:block;font-size:13px;font-weight:700;color:var(--ink-2);margin-bottom:8px}.sdn-bar{height:6px;background:var(--bg-alt);border-radius:999px;overflow:hidden}.sdn-bar-fill{height:100%;background:var(--grad);border-radius:999px;transition:width .35s ease}.sdn-question{font-size:20px;font-weight:700;line-height:1.6;margin-bottom:20px}.sdn-options{display:flex;flex-direction:column;gap:12px}.sdn-option{text-align:left;font-size:16px;font-weight:600;padding:16px 20px;border:1px solid var(--hairline);border-radius:16px;background:var(--bg);transition:border-color .15s ease,background .15s ease,transform .1s ease}.sdn-option:hover{border-color:var(--brand);background:#fff5fa}.sdn-option:active{transform:scale(.98)}.sdn-back{margin-top:20px;background:none;border:none;font-size:14px;color:var(--ink-2);text-decoration:underline;text-underline-offset:3px}.sdn-result{animation:omkReveal .5s ease both}.sdn-result-label{font-size:13px;font-weight:700;letter-spacing:.12em;color:var(--brand)}.sdn-result-title{font-size:clamp(24px,5vw,32px);font-weight:700;line-height:1.4;margin:6px 0 8px;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}.sdn-result-catch{font-size:16px;font-weight:700;margin-bottom:14px}.sdn-result-body{font-size:15px;color:var(--ink)}.sdn-advice{margin-top:22px;background:var(--bg-alt);border-radius:16px;padding:20px 22px}.sdn-advice-title{font-size:14px;font-weight:700;margin-bottom:8px}.sdn-advice ul{padding-left:20px;font-size:14px}.sdn-advice li{margin:4px 0}.sdn-cta{margin-top:26px;padding-top:24px;border-top:1px solid var(--hairline);text-align:center}.sdn-cta-lead{font-size:14px;color:var(--ink-2);margin-bottom:16px;text-align:left}.sdn-restart{display:block;margin:18px auto 0;background:none;border:none;font-size:14px;font-weight:600;color:var(--ink-2);text-decoration:underline;text-underline-offset:3px}.cta-note{margin-top:12px;font-size:12px;color:var(--ink-2);text-align:center}@media(max-width:640px){.df-card,.sdn,.sdn-result,.omk-result{padding:26px 20px}.omk-rank{font-size:52px}}@media(prefers-reduced-motion:reduce){.df-skeleton,.omk-box.shaking .omk-box-art,.omk-result,.sdn-result{animation:none}}
