.cc-product{--blue:#2e59a6;--line:#d8e1f0;padding:105px 32px 80px;color:#202124;background:#fff;font:400 14px/1.85 "Noto Sans JP",sans-serif}
.cc-product *{box-sizing:border-box}.cc-product [hidden]{display:none!important}.cc-product__inner{max-width:1240px;margin:auto}.cc-product a{color:var(--blue);text-decoration:none}.cc-product a:hover{text-decoration:underline;text-underline-offset:4px}.cc-product :is(a,button,select,input):focus-visible{outline:2px solid var(--blue);outline-offset:4px}
.cc-product__back{display:flex;justify-content:space-between;gap:16px;margin-bottom:32px;font-size:12px}.cc-product__layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:64px;align-items:start}.cc-product__gallery{position:sticky;top:96px;min-width:0}.cc-product__slides{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#d8e1f0 transparent;border-radius:12px}.cc-product__slide{flex:0 0 100%;min-width:0;scroll-snap-align:center;scroll-snap-stop:always;aspect-ratio:1;background:white}.cc-product__slide img{display:block;width:100%;height:100%;object-fit:contain}.cc-product__placeholder{width:100%;height:auto}.cc-product__thumbnails{display:flex;gap:10px;overflow-x:auto;padding:12px 2px;scrollbar-width:thin}.cc-product__thumbnails a{flex:0 0 58px;display:block;border:1px solid var(--line);border-radius:4px;padding:3px}.cc-product__thumbnails a[aria-current=true]{border-color:var(--blue)}.cc-product__thumbnails img{display:block;width:50px;height:50px;object-fit:contain}.cc-product__delivery{margin-top:16px;padding-top:16px;border-top:1px solid var(--line);font-size:12px;color:#626b78}.cc-product__delivery p{margin:4px 0}.cc-product__delivery strong{display:inline-block;min-width:100px;font-weight:500;color:var(--blue)}
.cc-product h1{font:500 clamp(22px,2vw,30px)/1.55 "Noto Sans JP",sans-serif;margin:0;color:var(--blue);overflow-wrap:anywhere}.cc-product__intro{margin:18px 0 0}.cc-product__price{display:flex;align-items:baseline;gap:8px;margin-top:28px;color:var(--blue)}.cc-product__price strong{font:700 34px/1.3 "Noto Sans JP",sans-serif;font-variant-numeric:tabular-nums}.cc-product__price small{font-size:12px}.cc-product__price-note{margin:4px 0 26px;color:#626b78;font-size:12px}.cc-product__field{display:grid;gap:8px;margin:18px 0;font-weight:500;font-size:13px}.cc-product select,.cc-product input{font:400 16px/1.5 "Noto Sans JP",sans-serif;color:#202124;background:#fff;border:1px solid #b8c5dc;border-radius:6px;padding:12px;min-width:0;width:100%}.cc-product__terms{font-size:12px;color:#626b78;line-height:1.9;margin:14px 0 22px}.cc-product__terms span{display:block}.cc-product__buy{display:flex;align-items:flex-end;gap:16px}.cc-product__quantity{width:80px;flex-shrink:0;font-size:12px}.cc-product__quantity input{margin-top:6px;text-align:center;height:52px}.cc-product__buy button{display:flex;justify-content:center;align-items:center;gap:18px;flex:1;min-height:52px;border:0;border-radius:999px;background:#ffe62c;color:var(--blue);font:700 15px/1.5 "Noto Sans JP",sans-serif;padding:14px 18px;cursor:pointer}.cc-product__buy button:disabled{background:#eef0f3;color:#626b78;cursor:not-allowed}.cc-product__buy button span{font-size:20px}.cc-product__note{font-size:11px;color:#626b78;margin:12px 0 0}.cc-product__account{margin-top:28px;padding:22px 24px;background:#f5f7fb;border-radius:10px}.cc-product__account h2{font:500 14px/1.6 "Noto Sans JP",sans-serif;margin:0 0 8px}.cc-product__account p{font-size:12px;color:#626b78;margin:0 0 12px}.cc-product__account a{font-weight:500;font-size:13px;display:flex;justify-content:space-between;gap:12px}.cc-product__details{border-bottom:1px solid var(--line);margin-top:20px}.cc-product__details summary{cursor:pointer;padding:16px 0;color:var(--blue);font-weight:500}.cc-product__richtext{padding-bottom:20px;font-size:13px;overflow-wrap:anywhere}.cc-product__richtext img{max-width:100%;height:auto}.cc-product__richtext table{width:100%;table-layout:fixed}.cc-product__links{display:grid;gap:12px;margin-top:26px;font-size:13px}
@media(max-width:900px){.cc-product__layout{gap:32px}.cc-product{padding-inline:24px}.cc-product__gallery{top:80px}}
@media(max-width:720px){.cc-product{padding:76px 20px 48px}.cc-product__back{font-size:11px;margin-bottom:20px;gap:10px}.cc-product__layout{grid-template-columns:minmax(0,1fr);gap:28px}.cc-product__gallery{position:static}.cc-product h1{font-size:23px}.cc-product__price strong{font-size:30px}.cc-product__account{padding:20px}.cc-product__delivery strong{min-width:90px}.cc-product__buy{gap:12px}.cc-product__buy button{font-size:14px;padding-inline:12px}}
