:root{--ink:#1f2a2e;--sub:#5b6a70;--line:#d6dee0;--bg:#f6f8f8;--card:#fff;--brand:#099;--brand-dark:#007a7a;--warn:#b3261e}*{box-sizing:border-box}html,body{margin:0}body{background:var(--bg);color:var(--ink);font-family:Hiragino Kaku Gothic ProN,Hiragino Sans,Noto Sans JP,Meiryo,sans-serif;font-size:15px;line-height:1.8}a{color:var(--brand-dark)}.wrap{max-width:860px;margin:0 auto;padding-inline:16px}header.site{border-bottom:1px solid var(--line);background:#fff}header.site .wrap{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;min-height:60px;display:flex}.logo{letter-spacing:.04em;color:var(--ink);font-size:18px;font-weight:700;text-decoration:none}.logo small{color:var(--sub);letter-spacing:.02em;font-size:11px;font-weight:400;display:block}nav.top{gap:16px;font-size:14px;display:flex}main{padding-block:28px 56px}footer.site{border-top:1px solid var(--line);color:var(--sub);background:#fff;font-size:13px}footer.site .wrap{flex-wrap:wrap;justify-content:space-between;gap:16px;padding-block:20px;display:flex}h1{text-wrap:balance;margin:0 0 16px;font-size:22px;line-height:1.5}h2{margin:28px 0 12px;font-size:18px}.card{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:20px}.stack{gap:16px;display:grid}.head-box{background:var(--brand);color:#fff;border:1px dotted #333;border-radius:5px;margin-bottom:16px;padding:10px;font-size:20px;font-weight:700;line-height:1.5}ol.steps{gap:4px;margin:0;padding-left:1.4em;display:grid}.btn{background:var(--brand);color:#fff;cursor:pointer;text-align:center;border:0;border-radius:6px;padding:12px 22px;font-size:16px;font-weight:700;text-decoration:none;display:inline-block}.btn:hover{background:var(--brand-dark)}.btn[disabled]{opacity:.5;cursor:default}.btn.sub{color:var(--brand-dark);border:1px solid var(--brand);background:#fff}.btn.block{width:100%;display:block}label.f{margin-bottom:4px;font-weight:700;display:block}.req{color:var(--warn);margin-left:6px;font-size:12px;font-weight:700}.opt{color:var(--sub);margin-left:6px;font-size:12px;font-weight:400}input[type=text],input[type=email],input[type=tel],input[type=password],select{border:1px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:6px;padding:10px 12px;font-size:16px}.row2{grid-template-columns:1fr 1fr;gap:10px;display:grid}.checks{flex-wrap:wrap;gap:8px 18px;display:flex}.checks label,.radio label{align-items:center;gap:6px;font-weight:400;display:inline-flex}.note{color:var(--sub);font-size:13px}.err{color:var(--warn);white-space:pre-line;font-weight:700}.ok{color:var(--brand-dark);font-weight:700}.price{font-variant-numeric:tabular-nums;font-size:22px;font-weight:700}.price s{color:var(--sub);margin-right:8px;font-size:15px;font-weight:400}table.t{border-collapse:collapse;width:100%;font-size:14px}table.t th,table.t td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:8px 6px}table.t th{width:32%;color:var(--sub);font-weight:400}.scroll{border:1px solid var(--line);background:#fff;border-radius:6px;max-height:240px;padding:12px;font-size:13px;overflow-y:auto}.shelf{gap:12px;display:grid}.shelf .item{justify-content:space-between;align-items:center;gap:12px;display:flex}.shelf .item>div{flex:1;min-width:0}.shelf .item>.btn{flex-shrink:0}@media (max-width:560px){.shelf .item{flex-direction:column;align-items:stretch}}.badge{color:var(--brand-dark);background:#e3f3f3;border-radius:999px;padding:2px 8px;font-size:12px;font-weight:700}.badge.gray{color:var(--sub);background:#eceff0}.hp{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.article{font-size:14px}@media (max-width:560px){.row2{grid-template-columns:1fr}h1{font-size:19px}.head-box{font-size:17px}}.admin-nav{gap:8px;margin-bottom:4px;display:grid}.admin-nav-top{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;display:flex}.admin-tabs{border-bottom:2px solid var(--brand);flex-wrap:wrap;gap:6px;padding-bottom:0;display:flex}.admin-tabs a{color:var(--brand-dark);background:#f3f8f8;border:1px solid #cfe3e3;border-bottom:0;border-radius:6px 6px 0 0;padding:8px 14px;font-size:14px;font-weight:700;text-decoration:none}.admin-tabs a:hover{background:#e3f3f3}.admin-tabs a.on{background:var(--brand);border-color:var(--brand);color:#fff}.admin-tabs a.dl{background:#fff;margin-left:auto;font-weight:400}@media (max-width:560px){.admin-tabs a{padding:6px 10px;font-size:13px}.admin-tabs a.dl{margin-left:0}}.viewing-bar{color:#fff;background:#b54708;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;padding:6px 16px;font-size:13px;display:flex}.viewing-bar a{color:#fff;font-weight:700}
