dialog{color:#142c42;background:#fff;border:0;border-radius:12px;width:min(600px,calc(100% - 28px));max-height:90dvh;padding:32px;font:15px/1.8 "Yu Gothic",Meiryo,sans-serif;box-shadow:0 20px 80px #0008}dialog::backdrop{background:#071525c9}dialog h2{font-size:24px;line-height:1.5;margin:5px 0 16px}dialog h3{font-size:18px}dialog p{margin:12px 0}.kicker{color:#38658a;font-weight:bold;font-size:13px}.close{position:sticky;top:0;float:right;width:40px;height:40px;border:1px solid #d5dbe0;background:white;border-radius:50%;font-size:27px;color:#142c42;cursor:pointer;line-height:1}dialog label{display:block;font-weight:bold;margin-top:18px;font-size:14px}dialog label span{font-size:11px;color:#b92c20;margin-left:8px}dialog input:not([type=checkbox]),dialog textarea{width:100%;font:16px/1.5 inherit;padding:12px;border:1px solid #aebac4;border-radius:4px;color:#142c42;background:#fff;font-family:inherit;font-size:16px}dialog textarea{resize:vertical}.action{display:block;width:100%;border:0;border-radius:5px;padding:15px;color:#fff;background:#ed1426;font:700 15px/1.6 inherit;font-family:inherit;cursor:pointer;margin-top:18px;min-height:48px}.action:disabled{opacity:.65;cursor:wait}.check-label{display:flex!important;align-items:flex-start;gap:9px;font-size:12px!important;font-weight:400!important}.check-label input{flex-shrink:0;width:18px;height:18px;margin-top:3px}.note{font-size:12px;color:#586774}.notice{background:#fff5df;padding:15px;font-size:13px}.error{color:#b22920}dialog :focus-visible{outline:3px solid #b67e15;outline-offset:3px}.result-offer{border-top:1px solid #ccd4da;margin-top:24px;padding-top:12px}.result-offer strong{font-size:27px}.result-offer .action{background:#ed1426}dialog details{font-size:12px;background:#f5f7f8;padding:12px;margin-top:18px}dialog summary{cursor:pointer;font-weight:bold}.trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}#contact-status{overflow-wrap:anywhere}body:has(dialog[open]){overflow:hidden}.noscript{background:#fff;padding:20px;text-align:center}[hidden]{display:none!important}@media(max-width:500px){dialog{padding:22px}dialog h2{font-size:21px}}

.text-link{border:0;background:none;color:#15548a;text-decoration:underline;text-underline-offset:3px;font:inherit;cursor:pointer;padding:12px 0;min-height:44px}
dialog.has-result{width:min(760px,calc(100% - 24px));padding:20px 24px;line-height:1.5}
.has-result > .kicker,.has-result > h2,.has-result > p,.has-result > #diagnosis-form{display:none}
.has-result #result-heading{margin:0 44px 8px 0;font-size:25px;line-height:1.4}
#diagnosis-result[data-status=evidence] #result-heading{color:#c51d2c;font-weight:800;border-left:5px solid #d52130;padding:8px 12px;background:#fff1f2}
.has-result .notice{margin:8px 0 12px;padding:8px 10px;font-size:12px;background:#f3f6f8}
.has-result details{margin:6px 0;padding:8px 10px}
.inline-contact{border-top:1px solid #dce3e9;padding-top:14px}
.inline-contact h2{font-size:20px;margin:0 0 4px;line-height:1.4}
.inline-contact .contact-price{font-size:12px;margin:10px 0 14px;line-height:1.5}
.contact-price strong{font-size:25px;letter-spacing:.02em;margin-right:4px}
.contact-price small{display:block;color:#586774;font-size:11px;margin-top:2px}
.contact-scope{list-style:none;padding:0;margin:8px 0;font-size:12px;line-height:1.6}
.contact-scope li{position:relative;padding-left:16px;margin:3px 0}
.contact-scope li::before{content:'✓';position:absolute;left:0;color:#2165a0;font-weight:700}
.inline-contact form{display:grid;grid-template-columns:1fr 1fr;gap:8px 12px}
.inline-contact .contact-field{min-width:0}
.inline-contact .contact-field label{margin:0 0 3px;font-size:12px}
.inline-contact input:not([type=checkbox]),.inline-contact textarea{padding:8px;min-height:40px}
.inline-contact .wide,.inline-contact form > details,.inline-contact form > .check-label,.inline-contact form > .action{grid-column:1/-1}
.inline-contact form > details{margin:0}
.inline-contact form > .check-label{margin:0}
.inline-contact form > .action{margin:0;padding:11px;min-height:44px}
.inline-contact #contact-status:empty{display:none}
.retry-diagnosis{font-size:12px;padding:8px 0}
.result-risk{display:none;font-size:13px;line-height:1.7;color:#394b5a;margin:8px 0 12px}
#diagnosis-result[data-status=evidence] .result-risk{display:block}
.inline-contact .contact-lead{font-size:12px;line-height:1.6;font-weight:400;color:#586774;margin:0 0 5px}
@media(max-width:500px){dialog.has-result{padding:16px}.has-result #result-heading{font-size:21px}.inline-contact h2{font-size:17px}.inline-contact form{gap:8px}.inline-contact .contact-field:has(input[type=email]),.inline-contact .contact-field:has(input[type=url]){grid-column:1/-1}}
