#nj-cart-drawer{position:fixed;inset:0 0 0 auto;margin:0;width:min(460px,100vw);max-width:100vw;height:100dvh;max-height:100dvh;padding:0;border:0;border-left:4px solid #999;background:#fff;color:#111;box-sizing:border-box;font-family:Arial,"Noto Sans JP",sans-serif;overflow:hidden;box-shadow:-12px 0 40px #0002}
#nj-cart-drawer[open]{display:flex;flex-direction:column;animation:nj-cart-in .22s ease-out}
#nj-cart-drawer::backdrop{background:rgba(0,0,0,.38)}
#nj-cart-drawer *{box-sizing:border-box}#nj-cart-drawer [hidden]{display:none!important}
#nj-cart-drawer .nj-cart-heading{display:flex;align-items:center;justify-content:space-between;flex:none;height:52px;padding:10px 14px 10px 20px;border-bottom:1px solid #e5e5e5;background:#fff;position:static;transform:none}
#nj-cart-drawer h2{font-size:14px;line-height:1.5;font-weight:700;margin:0;color:#111}
#nj-cart-drawer .nj-cart-heading button{width:30px;height:30px;background:#f4f4f4;border:0;border-radius:3px;color:#617080;cursor:pointer;font-size:20px;line-height:1}
#nj-cart-drawer .nj-cart-shipping{flex:none;padding:12px 20px 20px}
#nj-cart-shipping-text{font-size:14px;line-height:1.6;text-align:center;font-weight:700;margin:0 0 14px;color:#111}
#nj-cart-drawer .nj-cart-progress{height:8px;background:#e6e6e6;border-radius:20px;position:relative}
#nj-cart-progress-fill{display:block;width:100%;height:8px;background:#008f22;border-radius:20px;transition:width .2s}
#nj-cart-drawer .nj-cart-truck{position:absolute;right:0;top:50%;transform:translateY(-50%);width:30px;height:30px;background:#008f22;color:#fff;border-radius:50%;display:grid;place-items:center}
#nj-cart-drawer .nj-cart-body{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin}
#nj-cart-items{display:grid;align-content:start}
#nj-cart-drawer .nj-cart-row{display:flex;gap:14px;padding:12px 10px 10px;border-bottom:1px solid #e5e5e5;position:relative;min-width:0}
#nj-cart-drawer .nj-cart-image{width:88px;height:88px;flex:0 0 88px;object-fit:contain;background:#fff}
#nj-cart-drawer .nj-cart-details{flex:1;min-width:0;padding-right:0}
#nj-cart-drawer .nj-cart-title{font-size:15px;line-height:1.35;font-weight:700;margin:0 30px 6px 0;color:#080808;display:block;text-decoration:none;overflow-wrap:anywhere}
#nj-cart-drawer .nj-cart-options{font-size:12px;line-height:1.5;color:#999;margin:0 24px 3px 0}
#nj-cart-drawer .nj-cart-prices{display:flex;align-items:baseline;gap:4px;flex-wrap:wrap;font-size:13px;line-height:1.5;margin:0 0 7px}
#nj-cart-drawer .nj-cart-prices s{color:#999}#nj-cart-drawer .nj-cart-saving{color:#008a1d;font-weight:700}
#nj-cart-drawer .nj-cart-remove{position:absolute;top:10px;right:6px;display:grid;place-items:center;width:28px;height:28px;padding:5px;border:0;background:transparent;color:#617080;cursor:pointer}
#nj-cart-drawer .nj-cart-row-bottom{display:flex;align-items:center;justify-content:space-between;gap:6px;flex-wrap:wrap}
#nj-cart-drawer .nj-cart-quantity{display:flex;height:28px;border:1px solid #ccc;border-radius:2px;background:#fff;overflow:hidden;flex:none}
#nj-cart-drawer .nj-cart-quantity button{width:28px;border:0;background:#fff;color:#555;font-size:15px;cursor:pointer;padding:0}
#nj-cart-drawer .nj-cart-quantity input{appearance:textfield;-moz-appearance:textfield;min-width:0;width:40px;border:0;border-left:1px solid #eee;border-right:1px solid #eee;background:#fff;color:#111;text-align:center;font-size:13px;line-height:26px;padding:0;border-radius:0}
#nj-cart-drawer .nj-cart-quantity input::-webkit-inner-spin-button,#nj-cart-drawer .nj-cart-quantity input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
#nj-cart-drawer .nj-cart-tag{font-size:11px;line-height:1.5;padding:3px 6px;border-radius:3px;color:#555;background:#eee;display:inline-flex;align-items:center;gap:4px}
#nj-cart-drawer .nj-cart-footer{flex:none;position:static;background:#f7f7f9;transform:none}
#nj-cart-drawer .nj-cart-guarantee{background:#002039;color:#fff;text-align:center;font-size:12px;line-height:1.5;padding:7px 10px}
#nj-cart-drawer .nj-cart-summary{padding:12px 10px 10px}
#nj-cart-discounts{display:flex;align-items:center;gap:6px;font-size:12px;line-height:1.5;margin-bottom:12px}
#nj-cart-discount-tags{display:flex;flex-wrap:wrap;gap:4px;flex:1}
#nj-cart-discount-value{margin-left:auto;white-space:nowrap;font-weight:400}
#nj-cart-drawer .nj-cart-subtotal{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:19px;line-height:1.5;margin-bottom:12px}#nj-cart-drawer .nj-cart-subtotal strong{font-weight:400}
#nj-cart-checkout{display:block;width:100%;min-height:50px;border:0;border-radius:3px;background:#002039;color:#fff;text-align:center;font-weight:700;font-size:14px;line-height:1.5;padding:12px 10px;cursor:pointer}
#nj-cart-drawer .nj-cart-payments{background:#fff;padding:5px 10px calc(7px + env(safe-area-inset-bottom));display:flex;justify-content:center;gap:5px;flex-wrap:wrap}
#nj-cart-drawer .nj-cart-payments svg{width:38px;height:24px;max-width:38px}
#nj-cart-loading,#nj-cart-empty{padding:28px 16px;text-align:center;font-size:14px;line-height:1.7}
#nj-cart-empty button,#nj-cart-error button{border:1px solid #ccc;background:#fff;border-radius:3px;padding:9px 14px;color:#002039;cursor:pointer;font-size:13px}
#nj-cart-error{padding:12px 16px;color:#a51d23;font-size:13px;line-height:1.6}
#nj-cart-error p{margin:0 0 8px}#nj-cart-drawer button:disabled{opacity:.5;cursor:wait}
#nj-cart-drawer :focus-visible{outline:2px solid #277db4;outline-offset:2px}
@keyframes nj-cart-in{from{transform:translateX(100%)}to{transform:translateX(0)}}
@media(prefers-reduced-motion:reduce){#nj-cart-drawer[open]{animation:none}#nj-cart-progress-fill{transition:none}}
@media(max-width:359px){#nj-cart-drawer .nj-cart-row{gap:9px}#nj-cart-drawer .nj-cart-image{width:72px;height:72px;flex-basis:72px}#nj-cart-drawer .nj-cart-title{font-size:14px}}
