:root{color-scheme:light;--ink:#272237;--muted:#655f73;--accent:#624b91;--line:#e8e1f1;--pale:#f6f2fb}*{box-sizing:border-box}body{margin:0;background:#fffdfb;color:var(--ink);font:16px/1.85 -apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Noto Sans JP",sans-serif}a{color:var(--accent);text-underline-offset:4px}header{padding:22px max(24px,calc((100% - 1000px)/2));border-bottom:1px solid var(--line)}header a{text-decoration:none;color:var(--ink);font-size:23px;font-weight:700}header span{font-size:13px;color:var(--muted);margin-left:14px;font-weight:400}main{max-width:960px;margin:70px auto;padding:0 28px;min-height:60vh}h1{font-size:clamp(30px,4.5vw,48px);line-height:1.5;letter-spacing:.015em;margin:14px 0 24px}h2{font-size:21px;margin:0 0 16px}p{margin:12px 0}.eyebrow{font-size:13px;letter-spacing:.08em;color:var(--accent)}.lead{font-size:18px;color:var(--muted)}.tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:36px 0}.tiles>div{border:1px solid var(--line);border-radius:14px;padding:25px 20px;background:#fff}.tiles b{font-size:34px;line-height:1.4}.tiles b span{font-size:15px;margin-left:5px}.tiles p{font-size:13px;color:var(--muted)}section{padding:30px 0;border-top:1px solid var(--line);margin:32px 0}button,.button{display:inline-block;background:var(--accent);color:#fff;text-decoration:none;border:0;border-radius:7px;padding:13px 24px;font:inherit;font-weight:600;cursor:pointer;margin:12px 0}button:hover,.button:hover{background:#4e3977}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #9c83c9;outline-offset:3px}.subtle{font-size:13px;color:var(--muted);max-width:660px}.notice{border-left:4px solid #987744;background:#faf2e7;padding:18px 22px;margin:25px 0;font-size:15px}label{display:block;margin:18px 0}input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select{display:block;width:100%;max-width:720px;font:inherit;border:1px solid #a89bbd;border-radius:6px;padding:12px;margin:8px 0;background:white;color:var(--ink)}input[readonly]{background:var(--pale)!important;font-size:14px!important}.check{display:flex;gap:12px;align-items:flex-start}.check input{margin-top:8px;min-width:18px;min-height:18px;accent-color:var(--accent)}ol{list-style:none;padding:0}li{padding:8px 0}.price b{font-size:30px}table{border-collapse:collapse;width:100%;font-size:14px}th,td{text-align:left;border-bottom:1px solid var(--line);padding:13px 8px}th{color:var(--muted);font-weight:500}footer{background:var(--pale);padding:35px 28px;text-align:center;font-size:12px;color:var(--muted)}footer a{margin:0 10px}@media(max-width:640px){main{margin-top:36px;padding:0 20px}.tiles{grid-template-columns:1fr;gap:10px}.tiles>div{display:flex;gap:20px;align-items:center;padding:18px}.tiles b{min-width:115px;font-size:28px}.tiles p{margin:0}.lead br{display:none}th,td{padding:10px 3px}header{padding:18px 20px}}

header a.brand{display:inline-flex;align-items:center;gap:12px}header .brand-logo{display:block;width:60px;height:50px;object-fit:contain;flex:none}header .brand span{margin-left:0}

.delivery-options{min-width:0;border:1px solid var(--line);border-radius:10px;padding:12px 18px;margin:24px 0}.delivery-options legend{max-width:100%;padding:0 8px;font-weight:600;line-height:1.6}.delivery-options label{margin:16px 0}.check,.choice{display:flex;gap:12px;align-items:flex-start}.check input,.choice input{display:block;flex:0 0 20px;width:20px;height:20px;min-width:20px;min-height:20px;margin:5px 0 0;padding:0;accent-color:var(--accent)}.check>span,.choice>span{min-width:0}.field-help{display:block;color:var(--muted);font-size:13px;line-height:1.7;margin-top:4px}@media(max-width:640px){.delivery-options{padding:10px 12px}.delivery-options legend{font-size:15px}.check,.choice{gap:10px}}

.delivery-note{padding:12px 16px;background:var(--pale);border-radius:8px;font-size:14px}.delivery-alternative{margin:8px 0 24px;font-size:14px}.delivery-alternative summary{cursor:pointer;color:var(--accent);text-underline-offset:4px}.delivery-alternative summary:focus-visible{outline:3px solid #9c83c9;outline-offset:3px}.delivery-choices{display:flex;flex-wrap:wrap;gap:0 28px}.delivery-copy-help{display:none;font-size:14px}.delivery-copy:has(input[value="yes"]:checked) .delivery-copy-help{display:block}

#electronic-consent button:disabled{background:#e4dfeb;color:#645c70;cursor:not-allowed}

#referral-registration button:disabled{background:#e4dfeb;color:#645c70;cursor:not-allowed}#referral-registration input:disabled{cursor:not-allowed}
