
:root{color-scheme:light;--bg:#ffffff;--card:#fff;--ink:#16202b;--mute:#5d6b7a;--line:#e2e7ed;--pri:#0b5cad;--pri2:#e9f2fb;--acc:#e8590c;--ok:#1b7f3b}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:-apple-system,"Hiragino Sans","Hiragino Kaku Gothic ProN","Noto Sans JP",sans-serif;line-height:1.75;font-size:16px}
a{color:var(--pri)}img{max-width:100%;height:auto;display:block}
.top{background:var(--card);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5;border-top:4px solid var(--pri)}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink)}.logo svg{width:60px;height:46px;flex:none}
.logo .lt{display:flex;flex-direction:column;line-height:1.15}.logo .lt i{font-style:italic;font-weight:900;font-size:13px;letter-spacing:.14em;color:var(--pri)}.logo .lt b{font-size:19px;font-weight:800;letter-spacing:.02em;color:var(--ink)}
.bar .right{display:flex;align-items:center;gap:10px;font-size:14px}.bar .right a{text-decoration:none;color:var(--ink)}
.burger{display:none;width:42px;height:42px;border:0;background:transparent;cursor:pointer;padding:9px}.burger i{display:block;height:3px;background:var(--ink);border-radius:2px;margin:6px 0;transition:.2s}
.menubar{background:var(--pri2);border-top:1px solid var(--line)}.menubar ul{list-style:none;margin:0 auto;padding:0 16px;max-width:1040px;display:flex;flex-wrap:wrap}
.menubar li{position:relative}.menubar li.mob{display:none}.menubar li>a{display:block;padding:11px 16px;color:var(--ink);text-decoration:none;font-size:14px;font-weight:700}.menubar li>a:hover{background:#fff;color:var(--pri)}
.menubar .sub2{display:none;position:absolute;left:0;top:100%;min-width:230px;background:#fff;border:1px solid var(--line);border-radius:0 0 10px 10px;box-shadow:0 8px 20px rgba(0,0,0,.1);z-index:9;padding:6px 0}.menubar li:hover>.sub2,.menubar li:focus-within>.sub2{display:block}
.menubar .sub2 a{display:block;padding:9px 16px;font-size:13px;font-weight:600;color:var(--ink);text-decoration:none;white-space:nowrap}.menubar .sub2 a:hover{background:var(--pri2);color:var(--pri)}
@media(max-width:760px){.menubar li.mob{display:block}.burger{display:block}.menubar{display:none}.menubar.open{display:block}.menubar ul{flex-direction:column;padding:0}.menubar li>a{border-bottom:1px solid var(--line);padding:13px 18px}.menubar .sub2{display:block;position:static;border:0;box-shadow:none;padding:0;background:#f6f9fd}.menubar .sub2 a{padding:10px 30px;font-size:13px;white-space:normal;border-bottom:1px solid var(--line)}.logo svg{width:50px;height:38px}.logo .lt b{font-size:16px}.bar .right .acctlink{display:none}}
.wrap{max-width:1040px;margin:0 auto;padding:0 16px}
.bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0}
.nav{display:flex;gap:16px;align-items:center;font-size:14px}.nav a{text-decoration:none;color:var(--ink)}
.cartlink{background:var(--pri);color:#fff!important;border-radius:20px;padding:6px 14px;font-weight:700}
.notice{background:var(--pri2);border-bottom:1px solid var(--line);font-size:13px;text-align:center;padding:8px 12px;color:var(--ink)}
h1{font-size:26px;line-height:1.4;margin:24px 0 6px}h2{font-size:20px;margin:36px 0 12px;padding-left:10px;border-left:5px solid var(--pri)}
.sub{color:var(--mute);margin:0 0 16px}
.card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:18px}
.grid4{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px}
.bn{position:relative;border-radius:16px;overflow:hidden;aspect-ratio:21/9;min-height:230px;background:#16222b;margin:6px 0 22px;box-shadow:0 6px 24px rgba(0,0,0,.12)}
.bn .sl{position:absolute;inset:0;opacity:0;transition:opacity .9s ease;pointer-events:none}.bn .sl.on{opacity:1;pointer-events:auto}
.bn .sl img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.04);transition:transform 7s ease-out}.bn .sl.on img{transform:scale(1.12)}
.bn .sl::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,20,28,.78) 0%,rgba(10,20,28,.5) 42%,rgba(10,20,28,0) 72%)}
.bn .tx{position:absolute;z-index:2;left:clamp(16px,4vw,48px);top:50%;transform:translateY(-50%);max-width:min(56%,520px);color:#fff}
.bn .tx small{display:inline-block;background:var(--acc);color:#fff;font-weight:700;font-size:12px;padding:3px 10px;border-radius:999px;letter-spacing:.06em}
.bn .tx b{display:block;font-size:clamp(20px,3.2vw,36px);line-height:1.35;margin:10px 0 6px;text-shadow:0 2px 10px rgba(0,0,0,.35)}
.bn .tx span{display:block;font-size:clamp(13px,1.5vw,16px);line-height:1.7;opacity:.95}
.bn .dots{position:absolute;z-index:3;left:50%;bottom:10px;transform:translateX(-50%);display:flex;gap:8px}.bn .dots button{width:9px;height:9px;border-radius:50%;border:0;padding:0;background:rgba(255,255,255,.5);cursor:pointer}.bn .dots button.on{background:#fff;width:22px;border-radius:6px}
@media(max-width:600px){.bn{aspect-ratio:4/3}.bn .tx{max-width:86%;top:auto;bottom:34px;transform:none}.bn .sl::after{background:linear-gradient(0deg,rgba(10,20,28,.82) 0%,rgba(10,20,28,.35) 55%,rgba(10,20,28,0) 100%)}}
@media(prefers-reduced-motion:reduce){.bn .sl,.bn .sl img{transition:none}.bn .sl.on img{transform:none}}
.sz{display:block;text-decoration:none;color:var(--ink);background:var(--card);border:1px solid var(--line);border-radius:14px;overflow:hidden;transition:.15s}
.sz:hover{border-color:var(--pri);transform:translateY(-2px)}.sz img{aspect-ratio:1;object-fit:cover;width:100%;background:#fff}
.sz div{padding:14px 16px}.sz b{font-size:20px;display:block}.sz small{color:var(--mute);display:block}.sz .pl{width:100%;border-collapse:collapse;margin-top:8px;font-size:14px}.sz .pl td{padding:3px 0;border-bottom:1px dashed var(--line)}.sz .pl td.r{text-align:right}.sz .pl strong{color:var(--acc);font-size:16px}.sz .from{margin-top:8px;font-size:15px}.sz .from strong{color:var(--acc);font-size:20px}
.gal{display:grid;grid-template-columns:1fr;gap:10px;align-content:start;align-self:start}.gal .main img{display:block;width:100%;height:auto}.gal .main{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}.thumbs{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.thumbs img{border:2px solid transparent;border-radius:6px;cursor:pointer;background:#fff;aspect-ratio:1;object-fit:cover}.thumbs img.on{border-color:var(--pri)}
.two{display:grid;grid-template-columns:1fr;gap:20px}@media(min-width:860px){.two{grid-template-columns:5fr 6fr}}
table.t{width:100%;border-collapse:collapse;font-size:15px}table.t th,table.t td{padding:9px 8px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}table.t th{color:var(--mute);font-weight:600;font-size:13px}
.r{text-align:right!important}.price{font-weight:800;font-size:17px}.mute{color:var(--mute);font-size:13px}
input,select,textarea{font:inherit;color:var(--ink);background:var(--card);border:1px solid var(--line);border-radius:8px;padding:9px 10px;width:100%}
input.q{width:72px;text-align:right}
.btn{display:inline-block;background:var(--acc);color:#fff;border:0;border-radius:10px;padding:13px 24px;font-weight:800;font-size:17px;cursor:pointer;text-decoration:none}.btn:disabled{opacity:.5}
.btn2{background:var(--pri)}
.total{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-top:14px;padding:14px;background:var(--pri2);border-radius:10px}.total b{font-size:24px}
.msg{font-size:14px;margin-top:8px;min-height:20px}.err{color:#c92a2a}.okc{color:var(--ok)}
.ship{border:2px solid var(--acc);border-radius:10px;padding:12px 14px;margin:16px 0;background:var(--card)}
.model b{display:block;margin-top:10px}.model p{margin:2px 0 0;color:var(--mute);font-size:14px}
footer{margin-top:48px;border-top:1px solid var(--line);background:var(--card);padding:22px 0 40px;font-size:14px;color:var(--mute)}footer a{margin-right:14px}
.f label{display:block;font-size:13px;color:var(--mute);margin:12px 0 4px}.f .hp{position:absolute;left:-9999px}
.chk{display:flex;gap:10px;align-items:flex-start;font-size:14px;margin-top:14px}.chk input{width:auto;margin-top:5px}
