/* oOllIn AI診断 */
.dg-k{font-family:"Jost Local","Jost",sans-serif;font-weight:300;font-size:12px;letter-spacing:.32em;color:#A8E6E2}
.dg-sec .dg-k{margin-bottom:20px}
.dg-sec h2{font-size:clamp(34px,5.4vw,68px)}.dg-sec h2 span,.dg-sub span{display:inline-block}
.dg-card{margin-top:80px;border:1px solid var(--line);border-radius:24px;padding:48px 56px 52px;background:#000;scroll-margin-top:80px;transition:border-color .8s}
.dg.done .dg-card{border-color:rgba(168,230,226,.38)}
.dg-bar{display:flex;gap:6px;margin-bottom:40px}.dg-bar i{flex:1;height:2px;border-radius:2px;background:rgba(255,255,255,.12);overflow:hidden;position:relative}
.dg-bar i:after{content:"";position:absolute;inset:0;background:#A8E6E2;transform:scaleX(0);transform-origin:left;transition:transform .5s cubic-bezier(.2,.7,.2,1)}.dg-bar i.on:after{transform:none}
.dg-stage{transition:opacity .26s ease,transform .26s ease}.dg-stage.out{opacity:0;transform:translateX(-14px)}.dg-stage.pre{opacity:0;transform:translateX(14px);transition:none}
.dg-n{font-family:"Jost Local","Jost",sans-serif;font-weight:300;font-size:13px;letter-spacing:.2em;color:var(--m)}.dg-n span{color:#fff}
.dg-q h3{font-size:clamp(22px,2.6vw,30px);font-weight:700;letter-spacing:-.02em;line-height:1.4;margin-top:10px}
.dg-o{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:32px}.dg-o4{grid-template-columns:repeat(4,1fr)}
.dg-b{font:inherit;font-size:15px;font-weight:500;color:#f5f5f7;background:none;border:1px solid rgba(255,255,255,.2);border-radius:14px;padding:18px 20px;text-align:left;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;transition:border-color .2s,background .2s,color .2s;-webkit-tap-highlight-color:transparent}
.dg-b:after{content:"";width:7px;height:7px;border-radius:50%;flex:none;border:1px solid rgba(255,255,255,.3);transition:background .2s,border-color .2s}
.dg-b:hover{border-color:rgba(255,255,255,.6)}.dg-b:focus-visible{outline:2px solid #A8E6E2;outline-offset:2px}
.dg-b.sel{border-color:#A8E6E2;color:#fff;background:rgba(168,230,226,.06)}.dg-b.sel:after{background:#A8E6E2;border-color:#A8E6E2}
.dg-back{margin-top:28px;background:none;border:0;color:var(--m);font:inherit;font-size:13px;cursor:pointer;padding:4px 0}.dg-back:hover{color:#fff}
.dg-tags{margin-top:16px;font-size:13px;color:var(--m)}.dg-tags i{font-style:normal;margin:0 10px;color:#48484a}
.dg-r h3{font-size:clamp(26px,3.4vw,40px);font-weight:700;letter-spacing:-.03em;line-height:1.3;margin-top:14px;text-wrap:balance}
.dg-d{margin-top:20px;color:#d2d2d7;max-width:40em;text-wrap:pretty}
.dg-meta{display:grid;grid-template-columns:1.3fr 1fr 1fr;margin-top:40px;border-top:1px solid var(--line)}
.dg-meta>div{padding:22px 24px 22px 0}.dg-meta>div+div{padding-left:24px;border-left:1px solid var(--line)}
.dg-meta dt{font-size:12px;color:var(--m);font-weight:500;letter-spacing:.04em}
.dg-meta dd{margin-top:10px}.dg-meta dd span{display:inline-block;font-size:13px;border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:3px 12px;margin:0 6px 6px 0}
.dg-meta b{display:block;font-size:20px;font-weight:600;letter-spacing:-.01em;line-height:1.4}.dg-meta small{display:block;font-size:12px;color:var(--m);margin-top:4px}
.dg-first{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px 0}
.dg-fk{font-size:14px;color:#A8E6E2;display:flex;align-items:center;gap:10px;margin-bottom:6px}
.dg-fk:before{content:"";width:14px;height:9px;flex:none;background:radial-gradient(circle at 4.5px 4.5px,transparent 3.2px,#A8E6E2 3.4px,#A8E6E2 4.3px,transparent 4.5px),radial-gradient(circle at 9.5px 4.5px,transparent 3.2px,#A8E6E2 3.4px,#A8E6E2 4.3px,transparent 4.5px)}
.dg-first p+p{font-weight:500}
.dg-act{display:flex;align-items:center;gap:28px;margin-top:36px;flex-wrap:wrap}.dg-act .btn{margin-top:0;border:0;cursor:pointer;font-family:inherit}
.dg-again{background:none;border:0;border-bottom:1px solid rgba(255,255,255,.4);color:#fff;font:inherit;font-size:15px;font-weight:600;padding:0 0 4px;cursor:pointer;transition:color .2s,border-color .2s}.dg-again:hover{color:#A8E6E2;border-color:#A8E6E2}
.dg-note{margin-top:28px;font-size:12px;color:var(--m)}
@media(max-width:820px){.dg-card{margin-top:56px;padding:28px 22px 32px;border-radius:20px}.dg-bar{margin-bottom:28px}.dg-o,.dg-o4{grid-template-columns:1fr 1fr;gap:10px;margin-top:24px}.dg-b{padding:15px 16px;font-size:14px}
.dg-meta{grid-template-columns:1fr 1fr;margin-top:28px}.dg-meta>div:first-child{grid-column:1/-1;padding-right:0}.dg-meta>div+div{border-left:0;border-top:1px solid var(--line);padding-left:0}.dg-meta>div:last-child{padding-left:16px;border-left:1px solid var(--line)}.dg-meta b{font-size:17px}
.dg-act{gap:24px}.dg-act .btn{width:100%;text-align:center}.dg-again{margin:0 auto}}
@media(prefers-reduced-motion:reduce){.dg-stage,.dg-bar i:after,.dg-card{transition:none}}
/* AI: optional free text, loading, AI badge */
.dg .sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.dg-wsub{margin-top:10px;font-size:14px;color:var(--m)}
.dg-wf{margin-top:28px}
.dg-wi{width:100%;font:inherit;font-size:16px;color:#f5f5f7;background:transparent;border:0;border-bottom:1px solid rgba(255,255,255,.28);border-radius:0;padding:12px 2px;outline:none;transition:border-color .25s}
.dg-wi::placeholder{color:#6e6e73}.dg-wi:focus{border-color:#A8E6E2}
.dg-wa{display:flex;align-items:center;gap:28px;margin-top:32px;flex-wrap:wrap}.dg-wa .btn{margin-top:0;border:0;cursor:pointer;font-family:inherit}
.dg-skip{background:none;border:0;border-bottom:1px solid rgba(255,255,255,.4);color:#fff;font:inherit;font-size:15px;font-weight:600;padding:0 0 4px;cursor:pointer;transition:color .2s,border-color .2s}.dg-skip:hover{color:#A8E6E2;border-color:#A8E6E2}
.dg-l{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:340px;text-align:center}
.dg-lc{width:min(420px,100%);height:220px;display:block}
.dg-lt{margin-top:8px;font-size:17px;font-weight:600;letter-spacing:.06em}
.dg-dots i{font-style:normal;display:inline-block;animation:dgdot 1.4s infinite both}.dg-dots i:nth-child(2){animation-delay:.2s}.dg-dots i:nth-child(3){animation-delay:.4s}
@keyframes dgdot{0%,80%,100%{opacity:.15}40%{opacity:1}}
.dg-ls{margin-top:10px;font-size:13px;color:var(--m)}
.dg-ai{font-style:normal;margin-left:12px;padding:2px 8px 1px;border:1px solid rgba(168,230,226,.5);border-radius:999px;font-size:10px;letter-spacing:.2em;vertical-align:1px}
.dg-wq{margin-top:10px;font-size:13px;color:#A8E6E2;opacity:.85}
@media(max-width:820px){.dg-l{min-height:300px}.dg-lc{height:190px}.dg-wa{gap:22px}.dg-wa .btn{width:100%;text-align:center}.dg-skip{margin:0 auto}}
@media(prefers-reduced-motion:reduce){.dg-dots i{animation:none;opacity:.6}}

/* ===== #diag on WHITE (v3): black text, turquoise accents, prominent card ===== */
#diag.dg-sec{--ac:#A8E6E2;--aci:#12827b;--ln:#e5e5ea;--mm:#6e6e73;color:#111;position:relative;background:#fff;border-top:1px solid #ececf0}
#diag .dg-k{color:var(--aci);font-weight:400}
#diag h2{font-size:clamp(44px,7vw,92px);color:#000}
#diag .dg-sub{color:var(--mm)}
#diag .dg-card{background:#fff;border:1px solid rgba(168,230,226,.95);box-shadow:0 40px 90px -48px rgba(18,130,123,.42),0 12px 32px -18px rgba(0,0,0,.10),0 0 0 6px rgba(168,230,226,.12);position:relative}
#diag .dg.done .dg-card{border-color:#A8E6E2;box-shadow:0 40px 90px -44px rgba(18,130,123,.5),0 12px 32px -18px rgba(0,0,0,.10),0 0 0 6px rgba(168,230,226,.2)}
#diag .dg-bar i{background:#ececf0}#diag .dg-bar i:after{background:linear-gradient(90deg,#A8E6E2,#5cc8c0)}
#diag .dg-n{color:var(--mm)}#diag .dg-n span{color:var(--aci);font-weight:400}
#diag .dg-q h3,#diag .dg-r h3{color:#000}
#diag .dg-b{color:#1d1d1f;background:#fff;border-color:#dcdce1}
#diag .dg-b:after{border-color:#c7c7cc}
#diag .dg-b:hover{border-color:#A8E6E2;background:rgba(168,230,226,.08)}
#diag .dg-b:focus-visible{outline-color:var(--aci)}
#diag .dg-b.sel{border-color:#A8E6E2;color:#000;background:rgba(168,230,226,.22);box-shadow:inset 0 0 0 1px #A8E6E2}
#diag .dg-b.sel:after{background:var(--aci);border-color:var(--aci)}
#diag .dg-back{color:var(--mm)}#diag .dg-back:hover{color:#000}
#diag .dg-tags{color:var(--mm)}#diag .dg-tags i{color:#c7c7cc}
#diag .dg-d{color:#3a3a3c}
#diag .dg-meta,#diag .dg-meta>div+div,#diag .dg-first,#diag .dg-meta>div:last-child{border-color:var(--ln)}
#diag .dg-meta dt,#diag .dg-meta small,#diag .dg-note,#diag .dg-ls,#diag .dg-wsub{color:var(--mm)}
#diag .dg-meta dd span{border-color:rgba(168,230,226,.9);background:rgba(168,230,226,.12);color:#0b3f3c}
#diag .dg-meta b{color:#000}
#diag .dg-fk{color:var(--aci)}
#diag .dg-fk:before{background:radial-gradient(circle at 4.5px 4.5px,transparent 3.2px,var(--aci) 3.4px,var(--aci) 4.3px,transparent 4.5px),radial-gradient(circle at 9.5px 4.5px,transparent 3.2px,var(--aci) 3.4px,var(--aci) 4.3px,transparent 4.5px)}
#diag .dg-wq{color:var(--aci);opacity:1}
#diag .dg-ai{border-color:transparent;background:#A8E6E2;color:#0b3f3c;font-weight:500}
#diag .dg-lt{color:#000}
#diag .dg-wi{color:#111;border-bottom-color:#c7c7cc}#diag .dg-wi::placeholder{color:#aeaeb2}#diag .dg-wi:focus{border-color:var(--aci)}
/* primary CTA: black pill + turquoise glow ring */
#diag .btn{background:#000;color:#fff;padding:16px 36px;font-size:16px;box-shadow:0 0 0 0 rgba(168,230,226,0),0 10px 24px -12px rgba(0,0,0,.45);transition:box-shadow .25s,transform .2s,background .2s}
#diag .btn:after{content:"→";display:inline-block;margin-left:12px;color:#A8E6E2;transition:transform .2s}
#diag .btn:hover{background:#000;box-shadow:0 0 0 4px rgba(168,230,226,.55),0 14px 28px -12px rgba(18,130,123,.5);transform:translateY(-1px)}
#diag .btn:hover:after{transform:translateX(3px)}
#diag .btn:focus-visible{outline:2px solid var(--aci);outline-offset:3px}
#diag .dg-again,#diag .dg-skip{color:#000;border-bottom-color:rgba(0,0,0,.35)}
#diag .dg-again:hover,#diag .dg-skip:hover{color:var(--aci);border-color:var(--aci)}
@media(max-width:820px){#diag h2{font-size:clamp(40px,11vw,60px)}#diag .dg-card{box-shadow:0 30px 60px -36px rgba(18,130,123,.4),0 8px 22px -14px rgba(0,0,0,.1),0 0 0 4px rgba(168,230,226,.12)}}
