/* LINE prescription guidance shared by every page. */
.line-guide-modal{position:fixed;inset:0;z-index:260;display:none;align-items:center;justify-content:center;padding:20px}
.line-guide-modal.open{display:flex}
.line-guide-backdrop{position:absolute;inset:0;background:rgba(18,51,42,.58);backdrop-filter:blur(4px)}
.line-guide-dialog{--lg-orange:#E8843C;--lg-green:#5BC566;--lg-green-bg:#F1FAF2;position:relative;width:min(600px,100%);max-height:min(90vh,860px);max-height:min(90dvh,860px);overflow-y:auto;overscroll-behavior:contain;background:#FFFDF9;border:1px solid #E7DCCC;border-radius:28px;padding:clamp(24px,4vw,34px);box-shadow:0 28px 70px -28px rgba(18,51,42,.55);font-family:'Noto Sans JP',sans-serif;color:#3C3835}
.line-guide-x{position:sticky;top:0;z-index:2;float:right;width:40px;height:40px;margin:-8px -8px 0 12px;border:0;border-radius:50%;background:#f3f4f2;font-size:22px;line-height:1;color:#374151;cursor:pointer}
.line-guide-kicker{font-size:10.5px;letter-spacing:.22em;color:var(--lg-orange);text-align:center;text-transform:uppercase}
.line-guide-title{display:flex;align-items:center;justify-content:center;gap:8px;margin:0 0 14px;font-family:'Zen Maru Gothic','Noto Sans JP',sans-serif;font-size:clamp(19px,4vw,23px);font-weight:900;line-height:1.5;color:var(--lg-orange);text-align:center}
.line-guide-title svg{width:26px;height:26px;color:var(--lg-green);flex:none}
.line-guide-lead,.line-guide-policy>p{font-size:15px;line-height:1.9;color:#4b5563}
.line-guide-dialog section{padding:0}
.line-guide-dialog h3,.line-guide-policy h3{margin:0 0 10px;font-size:16px;font-weight:700}
.line-guide-benefits{margin-top:20px;padding:18px 20px!important;border-radius:24px;background:var(--lg-green-bg)}
.line-guide-benefits h3{display:flex;align-items:center;gap:7px;color:var(--lg-green);letter-spacing:.06em}
.line-guide-benefits h3 svg{width:19px;height:19px;flex:none}
.line-guide-benefits ul{list-style:none;display:grid;gap:9px;margin:0;padding:0;font-size:14.5px;color:#1f2937}
.line-guide-benefits li{display:flex;align-items:flex-start;gap:8px}
.line-guide-benefits li svg{width:18px;height:18px;flex:none;margin-top:3px;color:var(--lg-green)}
.line-guide-flow{margin-top:22px}
.line-guide-flow h3,.line-guide-privacy-note h3{color:var(--lg-orange)}
.line-guide-flow ol{list-style:none;display:grid;gap:11px;margin:0;padding:0}
.line-guide-flow li{display:flex;align-items:flex-start;gap:11px;font-size:14.5px;line-height:1.7;color:#1f2937}
.line-guide-flow li span{flex:none;display:grid;place-items:center;width:27px;height:27px;border-radius:50%;background:var(--lg-orange);color:#fff;font-weight:700;font-size:13.5px}
.line-guide-privacy-note{margin-top:22px;padding:18px 20px!important;border-radius:24px;background:#F6F8F7}
.line-guide-privacy-note p{font-size:13.5px;line-height:1.8;color:#4b5563}
.line-guide-privacy-note button{display:inline;margin-top:12px;padding:0;background:none;border:0;border-radius:0;color:var(--lg-orange);font:500 14px 'Noto Sans JP',sans-serif;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.line-guide-privacy-note button:hover{opacity:.8}
.line-guide-banner{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:20px;padding:16px 18px;border:2px solid var(--lg-green);border-radius:16px;background:var(--lg-green-bg);text-align:center;text-decoration:none;transition:background .2s}
.line-guide-banner:hover{background:#E6F6E8}
.line-guide-banner .banner-txt{display:block}
.line-guide-banner .banner-ico{font-size:22px;line-height:1;flex:none}
.line-guide-banner strong{display:inline;font-family:'Zen Maru Gothic','Noto Sans JP',sans-serif;font-size:16.5px;font-weight:900;color:var(--lg-green)}
.line-guide-banner .banner-txt>span{display:block;margin-top:3px;font-size:12.5px;color:#4b5563}
.line-guide-actions{display:grid;gap:10px;margin-top:20px;text-align:center}
.line-guide-open,.line-guide-dismiss{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:54px;padding:14px 18px;border-radius:20px;font-family:'Zen Maru Gothic','Noto Sans JP',sans-serif;font-weight:700;font-size:15.5px;cursor:pointer}
.line-guide-open{background:var(--lg-green);color:#fff}
.line-guide-open svg{width:20px;height:20px;flex:none}
.line-guide-open:hover{background:#4AB356}
.line-guide-dismiss{border:1px solid #E5E7EB;background:#fff;color:#1f2937}
.line-guide-actions p{font-size:11.5px;color:#6b7280}
.line-guide-policy h2{margin:8px 0 14px;font-family:'Zen Maru Gothic','Noto Sans JP',sans-serif;font-size:19px;line-height:1.6;color:var(--lg-orange);text-align:center}
.line-guide-policy h3{margin-top:20px;color:#374151}
.line-guide-policy ul,.line-guide-policy p{font-size:14px;line-height:1.9;color:#4b5563}
.line-guide-policy ul{padding-left:1.2em;list-style:disc}
.line-guide-policy a{color:var(--lg-green);text-decoration:underline}
.line-guide-policy .line-guide-dismiss{margin-top:26px}
.line-guide-modal [hidden]{display:none!important}
@media(max-width:640px){.line-guide-modal{padding:10px}.line-guide-dialog{max-height:calc(100dvh - 20px);padding:22px 18px;border-radius:16px}.line-guide-title{font-size:19px}.line-guide-benefits,.line-guide-privacy-note{padding:16px!important}}