
#kanpo-diagnosis{--sz-1:1px;--sz-10:10px;--sz-100:100px;--sz-12:12px;--sz-122:122px;--sz-134:134px;--sz-14:14px;--sz-16:16px;--sz-18:18px;--sz-180:180px;--sz-2:2px;--sz-20:20px;--sz-24:24px;--sz-246:246px;--sz-252:252px;--sz-26:26px;--sz-28:28px;--sz-3:3px;--sz-30:30px;--sz-32:32px;--sz-34:34px;--sz-36:36px;--sz-38:38px;--sz-383:383px;--sz-4:4px;--sz-40:40px;--sz-42:42px;--sz-43:43px;--sz-48:48px;--sz-5:5px;--sz-50:50px;--sz-52:52px;--sz-56:56px;--sz-6:6px;--sz-60:60px;--sz-62:62px;--sz-64:64px;--sz-65:65px;--sz-690:690px;--sz-74:74px;--sz-750:750px;--sz-8:8px;--sz-80:80px;--sz-177:177px}
@media(max-width:749px){#kanpo-diagnosis{--sz-1:calc(100vw / 750);--sz-10:calc(100vw * 10 / 750);--sz-100:calc(100vw * 100 / 750);--sz-12:calc(100vw * 12 / 750);--sz-122:calc(100vw * 122 / 750);--sz-134:calc(100vw * 134 / 750);--sz-14:calc(100vw * 14 / 750);--sz-16:calc(100vw * 16 / 750);--sz-18:calc(100vw * 18 / 750);--sz-180:calc(100vw * 180 / 750);--sz-2:calc(100vw * 2 / 750);--sz-20:calc(100vw * 20 / 750);--sz-24:calc(100vw * 24 / 750);--sz-246:calc(100vw * 246 / 750);--sz-252:calc(100vw * 252 / 750);--sz-26:calc(100vw * 26 / 750);--sz-28:calc(100vw * 28 / 750);--sz-3:calc(100vw * 3 / 750);--sz-30:calc(100vw * 30 / 750);--sz-32:calc(100vw * 32 / 750);--sz-34:calc(100vw * 34 / 750);--sz-36:calc(100vw * 36 / 750);--sz-38:calc(100vw * 38 / 750);--sz-383:calc(100vw * 383 / 750);--sz-4:calc(100vw * 4 / 750);--sz-40:calc(100vw * 40 / 750);--sz-42:calc(100vw * 42 / 750);--sz-43:calc(100vw * 43 / 750);--sz-48:calc(100vw * 48 / 750);--sz-5:calc(100vw * 5 / 750);--sz-50:calc(100vw * 50 / 750);--sz-52:calc(100vw * 52 / 750);--sz-56:calc(100vw * 56 / 750);--sz-6:calc(100vw * 6 / 750);--sz-60:calc(100vw * 60 / 750);--sz-62:calc(100vw * 62 / 750);--sz-64:calc(100vw * 64 / 750);--sz-65:calc(100vw * 65 / 750);--sz-690:calc(100vw * 690 / 750);--sz-74:calc(100vw * 74 / 750);--sz-750:calc(100vw * 750 / 750);--sz-8:calc(100vw * 8 / 750);--sz-80:calc(100vw * 80 / 750);--sz-177:calc(100vw * 177 / 750)}}
/* ヘッダー・フッターを持たない診断コンテンツ。サイズ基準はFigma SP 750px。 */#kanpo-diagnosis *{box-sizing:border-box}#kanpo-diagnosis{background:#f8f6f6;color:#333;scroll-behavior:smooth}#kanpo-diagnosis{margin:0;font-family:"Noto Sans JP","Yu Gothic",Meiryo,sans-serif;-webkit-font-smoothing:antialiased}#kanpo-diagnosis button{font:inherit;color:inherit;cursor:pointer;border:0}#kanpo-diagnosis button:disabled{cursor:default}#kanpo-diagnosis button:focus-visible{outline:3px solid #21364e;outline-offset:4px}#kanpo-diagnosis h1,#kanpo-diagnosis h2,#kanpo-diagnosis h3,#kanpo-diagnosis h4,#kanpo-diagnosis p{margin:0}#kanpo-diagnosis img{display:block;max-width:100%}#kanpo-diagnosis [hidden]{display:none!important}#kanpo-diagnosis .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}#kanpo-diagnosis.diagnosis{width:100%;min-height:100svh;padding:var(--sz-65) 0 var(--sz-100)}#kanpo-diagnosis .card{width:var(--sz-690);max-width:calc(100% - var(--sz-60));margin:0 auto;background:#ededed;border-radius:var(--sz-20);box-shadow:0 var(--sz-5) var(--sz-12) #00000012;color:#21364e}#kanpo-diagnosis .theme-card{padding:var(--sz-60) var(--sz-30) var(--sz-80)}#kanpo-diagnosis .theme-card h1{font-size:var(--sz-43);font-weight:700;text-align:center;line-height:1.55;letter-spacing:.04em}#kanpo-diagnosis .theme-options{display:grid;gap:var(--sz-24);margin-top:var(--sz-60)}#kanpo-diagnosis .theme-option{display:grid;grid-template-columns:var(--sz-252) 1fr;gap:var(--sz-26);align-items:center;min-height:var(--sz-246);padding:var(--sz-30) var(--sz-32);text-align:left;background:#fff;border-radius:var(--sz-20);transition:box-shadow .18s,transform .18s}#kanpo-diagnosis .theme-option img{width:var(--sz-252);height:var(--sz-180);object-fit:cover;border-radius:var(--sz-10)}#kanpo-diagnosis .theme-option:first-child img{object-position:50% 50%}#kanpo-diagnosis .theme-option:nth-child(2) img{object-position:55% 50%}#kanpo-diagnosis .theme-option strong{display:block;font-size:var(--sz-48);font-weight:700;line-height:1.2;letter-spacing:.06em}#kanpo-diagnosis .theme-caption{display:block;color:#333;font-size:var(--sz-24);line-height:1.55;margin-top:var(--sz-12);letter-spacing:0}#kanpo-diagnosis .question-card{padding:var(--sz-60) var(--sz-30) var(--sz-80);min-height:calc(var(--sz-750) + var(--sz-177))}#kanpo-diagnosis .question-count{display:flex;align-items:baseline;justify-content:center;border:var(--sz-2) solid #21364e;border-radius:var(--sz-50);width:calc(var(--sz-180) + var(--sz-20));height:var(--sz-62);padding:0 var(--sz-20);margin:auto;gap:var(--sz-8);font-family:"Noto Sans JP",sans-serif;font-size:var(--sz-26);font-weight:500;letter-spacing:.06em;line-height:1;color:#454545}#kanpo-diagnosis .question-count span:first-child{font-size:var(--sz-56);font-weight:700;letter-spacing:.04em;color:#21364e}#kanpo-diagnosis .progress{height:var(--sz-6);width:100%;background:#fff;border-radius:var(--sz-6);margin-top:var(--sz-34);overflow:hidden}#kanpo-diagnosis .progress span{display:block;height:100%;border-radius:inherit;background:#21364e;transition:none}#kanpo-diagnosis .question-card h1{font-size:var(--sz-43);line-height:1.55;letter-spacing:.035em;text-align:center;margin:var(--sz-48) 0 var(--sz-60);min-height:var(--sz-134);display:flex;align-items:center;justify-content:center;overflow-wrap:anywhere}#kanpo-diagnosis .answers{display:grid;gap:var(--sz-24)}#kanpo-diagnosis .answer{display:block;width:100%;min-height:var(--sz-122);padding:var(--sz-32) var(--sz-12);font-size:calc(var(--sz-34) + var(--sz-1));font-weight:700;letter-spacing:.04em;line-height:1.5;color:#3d3935;background:#fff;border-radius:var(--sz-20);box-shadow:0 var(--sz-5) var(--sz-12) #0000000d;transition:background .15s,color .15s,box-shadow .15s;}#kanpo-diagnosis .answer.is-selected,#kanpo-diagnosis .answer.is-selected:hover{background:#99242c;color:#fff;box-shadow:0 var(--sz-5) var(--sz-12) #0000000d}#kanpo-diagnosis .back{display:block;margin:var(--sz-30) auto 0;font-size:var(--sz-28);font-weight:500;color:#21364e;background:transparent;padding:var(--sz-12) 0;line-height:1.4}#kanpo-diagnosis .back{display:flex;align-items:center;justify-content:center;gap:var(--sz-16);text-decoration:none}#kanpo-diagnosis .back-label{text-decoration:underline;text-underline-offset:.15em}#kanpo-diagnosis .back-chevron{display:block;flex:none;width:var(--sz-12);height:var(--sz-12);border-left:var(--sz-2) solid currentColor;border-bottom:var(--sz-2) solid currentColor;transform:rotate(45deg)}#kanpo-diagnosis .loading-card{min-height:calc(var(--sz-750) + var(--sz-177));display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--sz-40);gap:var(--sz-40)}#kanpo-diagnosis .loading-card h1{font-size:var(--sz-32);text-align:center;line-height:1.7}#kanpo-diagnosis .loader{width:var(--sz-60);height:var(--sz-60);border:var(--sz-4) solid #fff;border-top-color:#21364e;border-radius:50%;animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}#kanpo-diagnosis .result{width:var(--sz-750);max-width:100%;margin:auto;color:#21364e}#kanpo-diagnosis .result-intro{padding:0 var(--sz-62) var(--sz-100)}#kanpo-diagnosis .pill{display:table;margin:auto;border:var(--sz-2) solid #21364e;border-radius:var(--sz-60);padding:var(--sz-12) var(--sz-34);background:#fff;font-size:var(--sz-32);font-weight:700;text-align:center;line-height:1.3}#kanpo-diagnosis .result h1{text-align:center;font-size:var(--sz-36);line-height:1.5;margin:var(--sz-30) calc(0px - var(--sz-24)) var(--sz-40)}#kanpo-diagnosis .result-pre,#kanpo-diagnosis .result-post{display:block;font-size:var(--sz-36);font-weight:700}#kanpo-diagnosis .result h1 strong{display:inline;box-decoration-break:clone;-webkit-box-decoration-break:clone;background:#21364e;color:#fff;font-size:var(--sz-48);line-height:1.85;padding:var(--sz-6) var(--sz-14);letter-spacing:.015em}#kanpo-diagnosis .result-pre{margin-bottom:var(--sz-16)}#kanpo-diagnosis .result-post{margin-top:var(--sz-16)}#kanpo-diagnosis .result-photo{width:100%;height:var(--sz-383);overflow:hidden}#kanpo-diagnosis .result-photo img{width:100%;height:100%;object-fit:cover}#kanpo-diagnosis .result-intro:has(img[src*="photo-02"]) .result-photo img{object-position:50% 44%}#kanpo-diagnosis .approach-heading{margin:var(--sz-60) auto var(--sz-34);font-size:var(--sz-32);padding:var(--sz-12) var(--sz-34);white-space:nowrap}#kanpo-diagnosis .approach{font-size:var(--sz-26);line-height:1.85;color:#333;letter-spacing:.03em}#kanpo-diagnosis .approach p+p{margin-top:var(--sz-52)}#kanpo-diagnosis .recommend{position:relative;overflow:hidden}#kanpo-diagnosis .recommend-heading{position:relative;z-index:1;background:#21364e;color:white;text-align:center;padding:var(--sz-60) var(--sz-28) var(--sz-74);clip-path:polygon(0 0,100% 0,100% calc(100% - var(--sz-74)),50% 100%,0 calc(100% - var(--sz-74)))}#kanpo-diagnosis .recommend-heading>p{font-size:var(--sz-36);letter-spacing:.04em;line-height:1.2;margin-bottom:var(--sz-18)}#kanpo-diagnosis .recommend-heading h2{font-size:var(--sz-43);line-height:1.8;letter-spacing:.015em;font-weight:700}#kanpo-diagnosis .recommend-heading h2 span{box-decoration-break:clone;-webkit-box-decoration-break:clone;background:#fff;color:#21364e;padding:var(--sz-8) 0}#kanpo-diagnosis .medicine{position:relative;isolation:isolate;padding:var(--sz-40) var(--sz-32) var(--sz-40)}#kanpo-diagnosis .medicine h3{position:relative;z-index:1;text-align:center;font-size:var(--sz-60);line-height:1.4;letter-spacing:.04em}#kanpo-diagnosis .medicine h3 small{display:block;font-size:var(--sz-24);font-weight:500;letter-spacing:.09em;margin-top:var(--sz-8)}#kanpo-diagnosis .medicine-photo{position:relative;z-index:-1;width:calc(100% + var(--sz-64));max-width:none;margin:calc(0px - var(--sz-100)) calc(0px - var(--sz-32)) calc(0px - var(--sz-100));height:var(--sz-750);object-fit:cover;mask-image:linear-gradient(to bottom,transparent,#000 18%,#000 75%,transparent);-webkit-mask-image:linear-gradient(to bottom,transparent,#000 18%,#000 75%,transparent)}#kanpo-diagnosis .message{position:relative;background:#fff;border-radius:var(--sz-20);padding:var(--sz-40) var(--sz-32) var(--sz-48)}#kanpo-diagnosis .message h4{text-align:center;font-size:var(--sz-36);letter-spacing:.04em;line-height:1.5;margin-bottom:var(--sz-24)}#kanpo-diagnosis .message p{font-size:var(--sz-26);line-height:1.85;color:#333;letter-spacing:.02em}#kanpo-diagnosis .purchase-cta{text-decoration:none;text-align:center;position:relative;display:block;width:calc(var(--sz-690) - var(--sz-10));max-width:100%;min-height:calc(var(--sz-180) - var(--sz-10) - var(--sz-1));margin-left:auto;margin-right:auto;border-radius:var(--sz-100);background:#99242c;color:#fff;box-shadow:0 var(--sz-8) var(--sz-20) #21364e29;margin-top:var(--sz-56);padding:var(--sz-26) var(--sz-50) var(--sz-28);font-size:calc(var(--sz-36) + var(--sz-1));font-weight:700;line-height:1.2;letter-spacing:.08em;transition:background .2s}#kanpo-diagnosis .purchase-cta>span{display:block}#kanpo-diagnosis .purchase-cta .saving{font-size:calc(var(--sz-26) + var(--sz-1));font-weight:500;letter-spacing:.04em}#kanpo-diagnosis .purchase-cta .saving strong{font-family:"Jost",sans-serif;font-size:var(--sz-38);font-weight:500;letter-spacing:.04em;color:#f7ffa2}#kanpo-diagnosis .purchase-cta strong{font-family:"Jost",sans-serif;font-size:calc(var(--sz-56) - var(--sz-1));font-weight:500;letter-spacing:.08em;font-variant-numeric:normal}#kanpo-diagnosis .purchase-cta .cta-arrow{position:absolute;right:var(--sz-42);top:50%;transform:translateY(-50%);font-size:var(--sz-48)}#kanpo-diagnosis .restart{display:block;background:transparent;color:#21364e;text-decoration:underline;text-underline-offset:5px;font-size:var(--sz-26);margin:var(--sz-32) auto 0;padding:var(--sz-20)}#kanpo-diagnosis dialog{border:0;border-radius:12px;padding:30px;max-width:calc(100% - 40px);width:420px;color:#21364e;background:#fff;box-shadow:0 10px 50px #0003}#kanpo-diagnosis dialog::backdrop{background:#21364e99}#kanpo-diagnosis dialog h2{font-size:20px;margin-bottom:16px}#kanpo-diagnosis dialog p{font-size:15px;line-height:1.8}#kanpo-diagnosis .dialog-close{display:block;width:100%;background:#21364e;color:#fff;padding:12px;margin-top:24px;border-radius:6px}
@media(hover:hover){#kanpo-diagnosis .theme-option:hover{box-shadow:0 0 0 var(--sz-3) #21364e;transform:translateY(calc(0px - var(--sz-2)))}#kanpo-diagnosis .answer:not(.is-selected):not(:disabled):hover{background:#fff;color:#99242c;box-shadow:inset 0 0 0 var(--sz-3) #99242c}#kanpo-diagnosis .purchase-cta:hover{background:#c54d55}}
@media(min-width:750px){#kanpo-diagnosis .card{width:621px;max-width:calc(100% - 60px)}#kanpo-diagnosis .theme-card,#kanpo-diagnosis .question-card{padding:54px 27px 72px}#kanpo-diagnosis .theme-card h1,#kanpo-diagnosis .question-card h1{font-size:38.7px}#kanpo-diagnosis .theme-options{margin-top:54px;gap:21.6px}#kanpo-diagnosis .theme-option{grid-template-columns:226.8px 1fr;gap:23.4px;padding:27px 28.8px;min-height:221.4px}#kanpo-diagnosis .theme-option img{width:226.8px;height:162px}#kanpo-diagnosis .theme-option strong{font-size:43.2px}#kanpo-diagnosis .theme-caption{font-size:21.6px}#kanpo-diagnosis .question-card,#kanpo-diagnosis .loading-card{min-height:834.3px}#kanpo-diagnosis .answer{font-size:31.5px;padding:28.8px 10.8px;min-height:109.8px}#kanpo-diagnosis .answers{gap:21.6px}#kanpo-diagnosis .question-card h1{min-height:120.6px;margin:43.2px 0 54px}#kanpo-diagnosis .result{width:750px}#kanpo-diagnosis.diagnosis{padding-top:65px}}
@media(prefers-reduced-motion:reduce){#kanpo-diagnosis *,#kanpo-diagnosis *::before,#kanpo-diagnosis *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

#kanpo-diagnosis{box-sizing:border-box}

/* ECforce共通見出しフォントの上書き：診断エリア内のみ */
#kanpo-diagnosis h1,#kanpo-diagnosis .h1,#kanpo-diagnosis h2,#kanpo-diagnosis .h2,#kanpo-diagnosis h3,#kanpo-diagnosis .h3,#kanpo-diagnosis h4,#kanpo-diagnosis .h4,#kanpo-diagnosis h5,#kanpo-diagnosis .h5,#kanpo-diagnosis h6,#kanpo-diagnosis .h6{font-family:"Noto Sans JP",sans-serif}
