/* Character-led identity; calm reading surfaces and a single accent hierarchy. */
:root{--bg:#fbfaf7;--ink:#282937;--line:#e8e5e0;--orange:#ee8e71;--orange-dark:#d86c50;--display:'Noto Sans JP',sans-serif}
body,body:has(.result){background:#fbfaf7;color:var(--ink);font-family:'Noto Sans JP',sans-serif;font-weight:500}
.top{border-bottom:1px solid var(--line);padding-bottom:24px}.top small{border:0;background:transparent;transform:none;color:#777580;font-size:11px}
.cta{background:#303044;color:white;border:1px solid #303044;box-shadow:0 5px 16px #30304412;border-radius:999px;font-weight:700;transition:background .2s,transform .2s}
.cta:hover{background:#47415b;box-shadow:0 6px 20px #30304420;transform:translateY(-2px)}.cta:active{transform:translateY(0);box-shadow:none}
.secondary,.industry-jump{border:1px solid #dedbe2;border-radius:999px;background:white;box-shadow:none}
.eyebrow{letter-spacing:.14em;font-size:11px;color:#797482}.eyebrow::before{box-shadow:none;background:#ee8e71}
.home-intro h1{font-family:'Noto Sans JP',sans-serif;letter-spacing:-.045em;line-height:1.5}.home-intro p{line-height:2;color:#706b74}
.home-art::before{border:0;background:radial-gradient(circle at 40% 35%,#fff2df,#f6dfeb 65%,#e9e7f4);border-radius:50%;transform:translateX(-50%)}
.home-art::after{-webkit-text-stroke:0;font-size:38px;color:#df9b50}.home-art>p{background:white;border:1px solid #eee4dc;transform:translateX(-50%);padding:10px 18px;color:#84717f}
.home-topics{border-top:1px solid var(--line);gap:12px}.home-topics li,.home-topics li+li{border:0;box-shadow:none;padding:18px;background:#f4edf1;border-radius:16px;font-size:12px}.home-topics li:nth-child(2){background:#edf2f5;box-shadow:none}.home-topics li:nth-child(3){background:#f1f2e7;box-shadow:none}
.home-form input,.field input{border:1px solid #d9d5db;background:white;border-radius:12px}.onboarding,.contact-view{border:1px solid var(--line);box-shadow:none;background:white}.year-card{border-width:1px;box-shadow:none}.year-card:has(input:checked){border:2px solid #51465e;box-shadow:0 8px 24px #3329420c;background:#fff9ec;padding:23px 11px 19px}
.quiz-question-list{border:1px solid var(--line);box-shadow:0 12px 40px #322e3a05}.quiz-question-number{border:0;background:#f5e6d3}.quiz-question.is-answered{background:#faf6fa}.quiz-question.is-locked{background:#f7f6f3}.quiz-sticky,.quiz-page-nav{background:#fbfaf7}
body:has(.result) .shell{max-width:1160px;padding-top:114px}.result-toolbar{border-bottom:1px solid var(--line);background:#fbfaf7f2;backdrop-filter:blur(12px)}.result-toolbar button{border:1px solid #e4dfe6;background:white;font-size:12px}
.result-hero{grid-template-columns:1fr 1fr;gap:42px;padding:52px 56px;border:0;border-radius:32px;box-shadow:none;background:linear-gradient(135deg,#fffaf2,var(--result-tint));overflow:hidden;min-height:480px}
.result-hero::before,.result-hero::after{content:none}.result-title{padding:0;z-index:1}.result-title .eyebrow{background:none;border:0;transform:none;padding:0;letter-spacing:.16em;color:var(--result-accent);font-size:10px}.result-title .eyebrow::before{display:none}
.nickname-title{margin:24px 0 8px;color:#797280;font-size:13px}.code{font-family:'Noto Sans JP',sans-serif;font-size:clamp(62px,7.5vw,96px);font-weight:900;letter-spacing:-.055em;line-height:1.1;-webkit-text-stroke:0;text-shadow:none;color:var(--result-accent);margin:0 0 14px}.character-name{font-size:clamp(24px,2.7vw,34px);line-height:1.5;letter-spacing:-.04em;margin:0 0 22px}.type-kicker span{border:0;background:#ffffffa6;color:#655e6a;font-size:11px;padding:6px 12px}.character-intro{font-size:14px;line-height:2;color:#69616d;margin-top:24px;max-width:380px}
.mascot-portrait{position:relative;display:grid;place-items:center;isolation:isolate;margin:0;min-width:0;align-self:stretch}.mascot-orbit{position:absolute;width:100%;aspect-ratio:1;border-radius:50%;background:#ffffff90;box-shadow:0 0 0 20px #ffffff24;z-index:-1}.mascot-portrait::before,.mascot-portrait::after{content:'✦';position:absolute;color:#d6a34e;top:20%;left:0;font-size:27px}.mascot-portrait::after{top:auto;left:auto;right:4%;bottom:22%;font-size:18px}.mascot-cutout{display:block;height:370px;width:100%;object-fit:contain;filter:drop-shadow(0 14px 10px #5d315015);animation:mascot-reveal .65s ease-out both}.mascot-portrait figcaption{font-size:10px;color:#8c7584;letter-spacing:.1em;text-align:center;margin-top:12px;z-index:1}
.mascot-crop{width:230px;height:290px;overflow:hidden;border-radius:42% 45% 38% 38%}.mascot-crop .type-card-window{width:560px;max-width:none;transform:translate(-10px,-5px);box-shadow:none;background:none}.mascot-crop img{mix-blend-mode:multiply}
.report-heading{margin:64px 0 24px}.report-heading>span{font-size:10px;letter-spacing:.18em;color:var(--result-accent);font-weight:700}.report-heading h2{font-size:24px;letter-spacing:-.035em;margin:12px 0}.report-heading p{font-size:13px;color:#817a84;margin:0}
.result-overview{gap:0;margin:0 0 30px;border:1px solid var(--line);border-radius:22px;overflow:hidden;background:white}.result-overview>div,.result-overview>div:first-child,.result-overview>div:last-child{border:0;border-right:1px solid var(--line);border-radius:0;box-shadow:none;background:white;padding:28px}.result-overview>div:last-child{border-right:0}.result-overview dt,.result-overview>div:nth-child(2) dt,.result-overview>div:nth-child(3) dt{background:none;color:var(--result-accent);font-size:11px;padding:0;letter-spacing:.04em;margin-bottom:14px}.result-overview dd{font-size:14px;line-height:1.95;color:#403b46}.result-lead{font-size:13px;line-height:2;color:#817783}.result-shortcut{background:#f0f1e7;border:0;border-radius:18px;padding:22px 26px;margin:30px 0 48px}.result-shortcut .industry-jump{border:0;font-size:12px}
.result-index{border:0;background:transparent;padding:0 12px 0 0}.result-index>p{font-size:10px;letter-spacing:.12em;color:#99909c}.result-index button{font-size:12px;color:#79717e}.result-index button span{color:#b8a4b4}.result-index button:hover,.result-index button[aria-current]{background:var(--result-tint);color:var(--result-accent)}
.trait-section,.guidance-section,.guidance-section:nth-of-type(n){border:1px solid var(--line);border-radius:22px;box-shadow:none;background:white;padding:32px}.guidance-section{margin-top:24px}.guidance-number{background:var(--result-tint);border:0;color:var(--result-accent);font-size:11px}.guidance-heading{font-size:21px;letter-spacing:-.025em}.guidance-row dt{color:#6f5b73;font-size:12px}.guidance-row dd{font-size:14px;line-height:2}.trait-row{background:#faf8fb}.trait-detail{border:1px solid #ece5ef;border-top:3px solid var(--trait-color);background:#fbf8fc}.advisor-next{border:0;background:var(--result-tint);border-radius:22px}.result-next-fixed .cta{background:#303044;color:white;box-shadow:0 5px 16px #30304420;border:0;border-radius:999px}.result-next-fixed .cta:hover{background:#47415b}
@keyframes mascot-reveal{from{opacity:0;transform:translateY(16px) scale(.96)}to{opacity:1;transform:none}}
@media(max-width:767px){body:has(.result) .shell{padding:86px 18px 40px}.result-hero{grid-template-columns:1fr;gap:24px;padding:30px 22px 24px;border-radius:25px;min-height:0;text-align:center}.result-title .eyebrow{font-size:9px}.nickname-title{margin:18px 0 10px}.code{font-size:68px;margin:0 0 10px}.character-name{font-size:25px;margin-bottom:16px}.character-intro{font-size:13px;line-height:1.95;margin:18px auto 0;max-width:320px}.type-kicker{gap:5px}.type-kicker span{font-size:10px;padding:5px 9px}.mascot-portrait{width:100%;max-width:310px;margin:auto}.mascot-orbit{width:86%;box-shadow:0 0 0 14px #ffffff25}.mascot-cutout{height:285px}.mascot-portrait figcaption{font-size:9px}.mascot-crop{height:260px;width:220px}.report-heading{margin:40px 0 20px}.report-heading h2{font-size:21px}.report-heading p{font-size:12px}.result-overview{grid-template-columns:1fr;border-radius:18px;margin:0 0 24px}.result-overview>div,.result-overview>div:first-child,.result-overview>div:last-child{padding:20px 22px;border:0;border-bottom:1px solid var(--line)}.result-overview>div:last-child{border:0}.result-overview dd{font-size:13px}.result-overview dt{margin-bottom:9px}.result-shortcut{padding:20px;margin-bottom:32px}.result-index{border:0;background:#fbfaf7ed;border-bottom:1px solid var(--line);padding:10px 18px;margin:0 -18px 24px}.result-index button{font-size:11px;border:1px solid var(--line);background:white}.trait-section,.guidance-section,.guidance-section:nth-of-type(n){padding:24px 20px;border-radius:18px}.guidance-heading{font-size:19px}.guidance-row dd{font-size:13px}.home-topics li,.home-topics li+li{padding:13px 10px;font-size:11px}.onboarding,.contact-view{padding:24px 20px}}
@media(prefers-reduced-motion:reduce){.mascot-cutout{animation:none}.cta,.hatch-video video{transition:none}}
.design-preview-panel{position:static!important;margin:32px auto!important;max-width:380px!important;background:#fff!important;border:1px solid #e4dfe6!important;box-shadow:none!important}
/* 紹介文の末尾だけを折り返さず、キャラの背面はヒーローのピンクをそのまま見せる。 */
.character-intro{max-width:none;text-wrap:balance;line-break:strict;word-break:normal;overflow-wrap:normal}
.mascot-orbit{display:none}
@media(min-width:1024px){.result-hero{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)}.character-intro{font-size:13px}}
@media(max-width:767px){.character-intro{max-width:320px;text-wrap:balance}}
