/* ── 商品一覧 ─────────────────────────── */
.shop-layout{display:grid;gap:clamp(20px,4vw,48px);grid-template-columns:220px 1fr;
             align-items:start;padding-bottom:clamp(40px,7vw,90px)}
@media (max-width:900px){ .shop-layout{grid-template-columns:1fr} }

.shop-side h3{font-size:var(--t-sm);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);
              margin:0 0 12px}
.shop-side ul{list-style:none;margin:0 0 28px;padding:0;display:grid;gap:2px}
.shop-side li a{display:flex;justify-content:space-between;gap:8px;padding:8px 10px;border-radius:var(--r-sm);
                font-size:var(--t-sm);color:var(--ink-2)}
.shop-side li a:hover{background:var(--paper);color:var(--ink);text-decoration:none}
.shop-side li.current-cat > a{background:var(--paper);color:var(--ink);font-weight:700;
                              font-family:var(--font-display);box-shadow:var(--shadow)}
.shop-side li .n{color:var(--muted);font-size:var(--t-xs)}
.shop-side ul ul{margin:2px 0 6px 12px;border-left:1px solid var(--line);padding-left:6px}

.woocommerce-result-count{color:var(--muted);font-size:var(--t-sm);margin:0}
.woocommerce-ordering select{padding:9px 12px;border:1px solid var(--line);border-radius:var(--r-sm);
                             background:var(--paper);font-size:var(--t-sm)}
.shop-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;
              margin-bottom:22px}

/* 列数は画面幅で決め打ちする。auto-fill だと端数の列ができて落ち着かないため。 */
ul.products{list-style:none;margin:0;padding:0;display:grid;gap:clamp(10px,2vw,24px);
            grid-template-columns:repeat(2,1fr)}
@media (min-width:640px){ ul.products{grid-template-columns:repeat(3,1fr)} }
@media (min-width:1000px){ ul.products{grid-template-columns:repeat(4,1fr)} }
ul.products li.product{margin:0}

/* ── 商品カード ───────────────────────── */
.pcard{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;
       display:flex;flex-direction:column;height:100%;transition:border-color .15s,transform .15s,box-shadow .15s}
.pcard:hover{border-color:var(--terra);transform:translateY(-2px);box-shadow:var(--shadow)}
.pcard__media{position:relative;aspect-ratio:1;background:var(--wash);overflow:hidden}
.pcard__media img{width:100%;height:100%;object-fit:cover}
.pcard__flags{position:absolute;top:10px;left:10px;display:flex;flex-direction:column;gap:6px;align-items:flex-start}
.flag{font-family:var(--font-display);font-weight:700;font-size:11px;letter-spacing:.06em;
      padding:4px 9px;border-radius:999px;background:var(--paper);color:var(--ink);border:1px solid var(--line)}
.flag--sale{background:var(--terra-deep);color:#fff;border-color:transparent}
.flag--out{background:var(--grey);color:#fff;border-color:transparent}
.pcard__body{padding:14px 15px 16px;display:flex;flex-direction:column;gap:5px;flex:1}
@media (min-width:640px){ .pcard__body{padding:16px 18px 18px;gap:6px} }
.pcard__cat{font-size:var(--t-xs);color:var(--muted);letter-spacing:.04em}
.pcard__name{font-family:var(--font-display);font-weight:700;font-size:var(--t-sm);line-height:1.35;
             color:var(--ink)}
@media (min-width:640px){ .pcard__name{font-size:var(--t-base)} }
.pcard__name a:hover{text-decoration:none}
.pcard__price{margin-top:auto;padding-top:8px;font-family:var(--font-display);font-weight:700;
              font-size:var(--t-md);color:var(--ink)}
.pcard__price del{color:var(--muted);font-weight:400;font-size:var(--t-sm);margin-right:8px}
.pcard__price ins{text-decoration:none;color:var(--sale)}
.pcard__buy{margin-top:12px}
.pcard__buy .added_to_cart{display:block;text-align:center;margin-top:8px;font-size:var(--t-xs);
  color:var(--ok);text-decoration:underline;text-underline-offset:3px}

/* ── 商品詳細 ─────────────────────────── */
.single-product div.product{display:grid;gap:clamp(22px,4vw,56px);grid-template-columns:1fr 1fr;
                            align-items:start;padding:clamp(24px,4vw,52px) 0}
@media (max-width:860px){ .single-product div.product{grid-template-columns:1fr} }
.single-product .woocommerce-product-gallery{border-radius:var(--r-lg);overflow:hidden;background:var(--paper);
                                             border:1px solid var(--line)}
.single-product .product_title{font-size:var(--t-xl);margin-bottom:10px}
.single-product .price{font-family:var(--font-display);font-weight:700;font-size:var(--t-lg);color:var(--ink);
                       margin:0 0 20px}
.single-product .price del{color:var(--muted);font-weight:400;font-size:var(--t-md);margin-right:10px}
.single-product .price ins{text-decoration:none;color:var(--sale)}
.single-product form.cart{display:flex;gap:12px;align-items:stretch;margin:24px 0;flex-wrap:wrap}
.single-product form.cart .quantity input{width:88px;height:100%;padding:13px;border:1px solid var(--line);
                                          border-radius:var(--r);text-align:center;font-family:var(--font-display);
                                          font-weight:700}
.single-product form.cart .button{flex:1;min-width:180px}
.single-product .woocommerce-product-details__short-description{color:var(--ink-2)}
.product_meta{font-size:var(--t-sm);color:var(--muted);border-top:1px solid var(--line);padding-top:16px;
              margin-top:8px;display:grid;gap:6px}
.woocommerce-tabs{padding:clamp(24px,4vw,52px) 0;border-top:1px solid var(--line)}
.woocommerce-tabs ul.tabs{list-style:none;margin:0 0 22px;padding:0;display:flex;gap:8px;flex-wrap:wrap}
.woocommerce-tabs ul.tabs a{display:block;padding:10px 18px;border:1px solid var(--line);border-radius:999px;
                            font-family:var(--font-display);font-size:var(--t-sm);background:var(--paper)}
.woocommerce-tabs ul.tabs li.active a{background:var(--grey);color:#fff;border-color:var(--grey)}
.related.products{border-top:1px solid var(--line);padding:clamp(28px,4vw,56px) 0}
.related.products > h2{font-size:var(--t-lg);margin-bottom:22px}

/* ── ボタン（WooCommerce の既定クラス） ── */
.woocommerce .button,.woocommerce button.button,.woocommerce input.button,
.woocommerce a.button,.woocommerce #respond input#submit{
  font-family:var(--font-display);font-weight:700;font-size:var(--t-base);
  padding:14px 26px;border:0;border-radius:var(--r);background:var(--terra-deep);color:#fff;cursor:pointer;
  display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:filter .15s}
.woocommerce .button:hover{filter:brightness(.93);color:#fff;text-decoration:none}
.woocommerce .button.alt{background:var(--terra-deep)}
.woocommerce a.button.wc-forward,.woocommerce .checkout-button{background:var(--blue-deep)}
.woocommerce .button:disabled{opacity:.45}

/* カードのボタンは控えめに。テラコッタは「買う」「進む」に取っておく。
   （WooCommerce の .button 定義より後ろに置かないと勝てない） */
.woocommerce .pcard__buy .button,
.woocommerce .pcard__buy .button.alt,
.pcard__buy .button{
  width:100%;font-size:var(--t-sm);padding:11px 12px;
  background:var(--paper);color:var(--blue-deep);border:1.5px solid var(--blue-deep)}
.woocommerce .pcard__buy .button:hover,
.pcard__buy .button:hover{background:var(--blue-pale);color:var(--blue-deep);filter:none}

/* ── カート／レジ／マイページ ─────────── */
.woocommerce-page .woocommerce{padding-bottom:clamp(40px,7vw,90px)}
.woocommerce table.shop_table{width:100%;border-collapse:collapse;background:var(--paper);
                              border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden}
.woocommerce table.shop_table th{text-align:left;font-family:var(--font-display);font-size:var(--t-xs);
                                 letter-spacing:.1em;text-transform:uppercase;color:var(--muted);
                                 padding:14px 16px;background:var(--wash);border-bottom:1px solid var(--line)}
.woocommerce table.shop_table td{padding:16px;border-bottom:1px solid var(--line);vertical-align:middle}
.woocommerce table.shop_table tr:last-child td{border-bottom:0}
.woocommerce table.shop_table img{width:64px;border-radius:var(--r-sm)}
.woocommerce .cart-collaterals{margin-top:26px;display:grid;gap:var(--gap);
                               grid-template-columns:1fr minmax(280px,380px)}
@media (max-width:820px){ .woocommerce .cart-collaterals{grid-template-columns:1fr} }
.woocommerce .cart_totals{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);
                          padding:22px;box-shadow:var(--shadow)}
.woocommerce .cart_totals h2{font-size:var(--t-md);margin-bottom:14px}

.woocommerce form .form-row{display:grid;gap:6px;margin-bottom:16px}
.woocommerce form .form-row label{font-size:var(--t-sm);font-weight:700;color:var(--muted);
                                  font-family:var(--font-display)}
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.woocommerce .select2-container .select2-selection{
  width:100%;padding:13px 15px;border:1px solid var(--line);border-radius:var(--r);background:var(--paper)}
.woocommerce form .form-row input.input-text:focus{outline:2px solid var(--blue);outline-offset:1px;
                                                   border-color:var(--blue-deep)}
.woocommerce-checkout .col2-set{display:grid;gap:var(--gap);grid-template-columns:1fr 1fr}
@media (max-width:760px){ .woocommerce-checkout .col2-set{grid-template-columns:1fr} }
#order_review,#customer_details{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);
                                padding:clamp(18px,3vw,28px)}
.woocommerce-checkout #payment{background:transparent;border-radius:0}
.woocommerce-checkout #payment ul.payment_methods{list-style:none;margin:0 0 18px;padding:0;display:grid;gap:8px}
.woocommerce-checkout #payment ul.payment_methods li{border:1px solid var(--line);border-radius:var(--r);
                                                     padding:14px 16px;background:var(--paper)}

.woocommerce-message,.woocommerce-info,.woocommerce-error{
  border-radius:var(--r);padding:16px 18px;margin:0 0 22px;font-size:var(--t-sm);list-style:none;
  border:1px solid var(--line);background:var(--paper)}
.woocommerce-message{background:#EDF5F1;border-color:#C3DCD0;color:var(--ok)}
.woocommerce-info{background:var(--blue-pale);border-color:var(--blue);color:var(--blue-deep)}
.woocommerce-error{background:#FBEDEC;border-color:#EDC7C3;color:var(--bad)}

/* マイページ
   ★ 以前ここで .woocommerce 全体を 230px+1fr の格子にしていました。
     いまはテンプレート（my-account.php）が page-hero と .accountgrid を
     自分で持っているので、外側を格子にすると挨拶の帯が 230px の列に
     押し込まれて崩れます。外枠は素直なブロックのままにします。 */
.woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0;display:grid;gap:2px}
.woocommerce-MyAccount-navigation a{display:block;padding:11px 14px;border-radius:var(--r-sm);
                                    font-size:var(--t-sm);color:var(--ink-2)}
.woocommerce-MyAccount-navigation a:hover{background:var(--paper);text-decoration:none}
.woocommerce-MyAccount-navigation li.is-active a{background:var(--paper);color:var(--ink);font-weight:700;
                                                 font-family:var(--font-display);box-shadow:var(--shadow)}
.woocommerce-MyAccount-content{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);
                               padding:clamp(20px,3vw,30px)}
.woocommerce-account .woocommerce-form-login,
.woocommerce-account .woocommerce-form-register{max-width:440px;margin-inline:auto;background:var(--paper);
                                                border:1px solid var(--line);border-radius:var(--r-lg);
                                                padding:clamp(22px,4vw,34px)}

/* パンくず */
.woocommerce-breadcrumb{font-size:var(--t-xs);color:var(--muted);padding:18px 0 0}
.woocommerce-breadcrumb a{color:var(--muted)}

/* ページ送り */
.woocommerce-pagination ul{list-style:none;display:flex;gap:6px;justify-content:center;padding:0;margin:34px 0 0}
.woocommerce-pagination a,.woocommerce-pagination span{display:inline-flex;align-items:center;justify-content:center;
  min-width:42px;height:42px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--paper);
  font-family:var(--font-display);font-size:var(--t-sm)}
.woocommerce-pagination span.current{background:var(--grey);color:#fff;border-color:var(--grey)}


/* ── 商品ページの立て直し ───────────────
   WooCommerce 側の float レイアウトを打ち消し、
   写真と説明は左右2列、タブと関連商品は全幅に置く。 */
.single-product div.product div.images,
.single-product div.product div.summary{width:100%;float:none;margin:0}
.single-product div.product .woocommerce-tabs,
.single-product div.product .related.products,
.single-product div.product section.related,
.single-product div.product .up-sells{grid-column:1/-1;width:100%;float:none}
.single-product .related ul.products,
.single-product .up-sells ul.products{grid-template-columns:repeat(2,1fr)}
@media (min-width:760px){
  .single-product .related ul.products,
  .single-product .up-sells ul.products{grid-template-columns:repeat(4,1fr)}
}
.single-product .woocommerce-tabs ul.wc-tabs{list-style:none;margin:0 0 18px;padding:0;
  display:flex;gap:8px;border-bottom:1px solid var(--line)}
.single-product .woocommerce-tabs ul.wc-tabs li a{display:block;padding:10px 18px;
  font-family:var(--font-display);font-weight:700;color:var(--muted)}
.single-product .woocommerce-tabs ul.wc-tabs li.active a{color:var(--ink);
  border-bottom:2px solid var(--terra);text-decoration:none}
.single-product .woocommerce-Tabs-panel > h2:first-child{display:none}
.single-product .woocommerce-product-gallery{width:100%}
.single-product .woocommerce-product-gallery .flex-viewport,
.single-product .woocommerce-product-gallery img{width:100%!important;height:auto}

/* カートの数量入力（layout.css を外したぶんの手当て） */
.woocommerce table.cart .quantity input{width:72px;padding:8px 10px;border:1px solid var(--line);
  border-radius:var(--r-sm);text-align:center}

/* ── 商品写真スライダー ─────────────── */
.pd-gallery{position:relative;border:0!important;background:transparent!important;border-radius:0!important}
.pd-gallery__track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;
  scrollbar-width:none;border-radius:var(--r-lg);border:1px solid var(--line);background:var(--paper)}
.pd-gallery__track::-webkit-scrollbar{display:none}
.pd-slide{flex:0 0 100%;scroll-snap-align:start;margin:0;display:grid;place-items:center;aspect-ratio:1}
.pd-slide img{width:100%!important;height:100%!important;object-fit:contain;padding:clamp(10px,3%,28px)}
.pd-gallery__arrow{position:absolute;top:calc(50% - 60px);left:10px;width:42px;height:42px;border-radius:999px;
  border:1px solid var(--line);background:rgba(255,255,255,.92);color:var(--ink);font-size:22px;line-height:1;
  cursor:pointer;display:grid;place-items:center;transition:background .15s}
.pd-gallery__arrow.is-next{left:auto;right:10px}
.pd-gallery__arrow:hover{background:#fff}
.pd-thumbs{display:flex;gap:8px;margin-top:10px;overflow-x:auto;padding-bottom:4px;scrollbar-width:thin}
.pd-thumb{flex:0 0 64px;aspect-ratio:1;padding:0;border:1.5px solid var(--line);border-radius:var(--r-sm);
  background:var(--paper);cursor:pointer;overflow:hidden;opacity:.75;transition:border-color .15s,opacity .15s}
.pd-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.pd-thumb.is-on{border-color:var(--grey);opacity:1}
.pd-thumb:hover{opacity:1}

/* ── 商品情報（右側） ────────────────── */
.pd-eyebrow{font-size:var(--t-xs);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);
  font-family:var(--font-display);font-weight:700;margin:0 0 6px}
.pd-stock{font-size:var(--t-xs);margin:0 0 10px;display:inline-flex;align-items:center;gap:6px}
.pd-stock::before{content:"";width:8px;height:8px;border-radius:999px;background:var(--ok)}
.pd-stock.is-out::before{background:var(--bad)}
.pd-stock.is-in{color:var(--ok)} .pd-stock.is-out{color:var(--bad)}
.single-product .product_title{margin-bottom:4px}
.single-product .price{margin-bottom:8px}
.single-product form.cart{margin:18px 0 14px}
.single-product form.cart .variations{width:100%;margin:0 0 6px;border-collapse:collapse}
.single-product form.cart .variations td,.single-product form.cart .variations th{padding:4px 0;text-align:left}
.single-product form.cart .variations label{font-size:var(--t-sm);color:var(--ink-2);font-family:var(--font-display)}
.single-product form.cart .variations select{width:100%;padding:11px 12px;border:1px solid var(--line);
  border-radius:var(--r-sm);background:var(--paper)}
.single-product form.cart .reset_variations{font-size:var(--t-xs);color:var(--muted)}
.pd-buy-now{flex:1;min-width:150px;background:transparent!important;color:var(--blue-deep)!important;
  border:1.5px solid var(--blue-deep)!important}
.pd-buy-now:hover{background:var(--blue-pale)!important}

/* お気に入りと共有 */
.pd-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px 20px;margin:4px 0 14px;
  padding-top:14px;border-top:1px solid var(--line)}
.pd-act{display:inline-flex;align-items:center;gap:7px;background:none;border:0;padding:0;cursor:pointer;
  font-family:var(--font-display);font-size:var(--t-sm);color:var(--ink-2)}
.pd-act:hover{color:var(--ink)}
.pd-act[data-fav][aria-pressed="true"]{color:var(--terra-deep)}
.pd-act[data-fav][aria-pressed="true"] svg{fill:var(--terra-deep)}
.pd-share{display:inline-flex;align-items:center;gap:8px}
.pd-share .icon-btn{width:34px;height:34px}
.pd-share__label{cursor:default}

/* レビュー */
#reviews .commentlist{list-style:none;margin:0;padding:0;display:grid;gap:14px}
#reviews .comment_container{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);
  padding:16px 18px;display:flex;gap:14px}
#reviews .comment_container img.avatar{width:40px;height:40px;border-radius:999px}
#reviews .comment-form{display:grid;gap:12px;max-width:560px}
#reviews .comment-form input[type=text],#reviews .comment-form input[type=email],
#reviews .comment-form textarea{width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:var(--r-sm)}
#reviews .woocommerce-noreviews{color:var(--muted)}

/* ── レビューの星（WooCommerce の CSS を外しているので自前で） ── */
.star-rating{position:relative;display:inline-block;width:5.4em;height:1.1em;line-height:1.1;
  font-size:14px;letter-spacing:.1em;overflow:hidden;white-space:nowrap;color:var(--line)}
.star-rating::before{content:"★★★★★";position:absolute;inset:0}
.star-rating span{position:absolute;inset:0;overflow:hidden;color:#D9A441}
.star-rating span::before{content:"★★★★★";position:absolute;inset:0}
p.stars{display:inline-flex;gap:4px;margin:0}
p.stars a{width:1.2em;height:1.2em;text-indent:-9999px;position:relative;text-decoration:none}
p.stars a::before{content:"★";text-indent:0;position:absolute;inset:0;color:var(--line);font-size:20px;line-height:1}
p.stars:hover a::before{color:#D9A441}
p.stars a:hover ~ a::before{color:var(--line)}
p.stars.selected a.active::before,
p.stars.selected a.active ~ a::before{color:var(--line)}
p.stars.selected a::before{color:#D9A441}
p.stars.selected a.active ~ a::before{color:var(--line)}
.woocommerce-product-rating{display:flex;align-items:center;gap:8px;margin:0 0 8px;font-size:var(--t-xs);color:var(--muted)}

/* ── 商品ページの磨き込み（プロトタイプ準拠） ──
   白い紙の上に、余白広め・罫線は髪の毛1本・タブは下線。 */
.single-product #main{background:var(--paper)}
.single-product div.product{padding-top:clamp(28px,4.5vw,60px)}

.pd-badge{display:inline-flex;align-items:center;gap:8px;margin:0 0 14px;
  border:1px solid var(--line);border-radius:999px;padding:6px 14px;
  font-family:var(--font-display);font-size:11.5px;font-weight:700;
  letter-spacing:.16em;text-transform:uppercase;color:var(--ink-2)}
.pd-badge::before{content:"";width:6px;height:6px;border-radius:999px;background:var(--terra)}
.single-product .product_title{font-weight:400;letter-spacing:.04em;font-size:var(--t-xl)}
.pd-sub{font-size:var(--t-sm);color:var(--muted);margin:2px 0 14px}
.single-product .woocommerce-product-details__short-description{color:var(--ink-2);
  padding-bottom:18px;border-bottom:1px solid var(--line);margin-bottom:18px}

/* 価格の行：左に価格、右にポイントのチップ（1行に） */
.single-product .price{display:inline-flex;align-items:baseline;gap:8px;margin:0 12px 0 0;
  font-weight:400;font-size:clamp(26px,3vw,32px)}
.acs-earn{display:inline-flex!important;align-items:center;margin:0!important;
  background:var(--blush);color:#7C3A22;border-radius:999px;padding:7px 14px;
  font-family:var(--font-display);font-size:var(--t-xs);font-weight:700;vertical-align:middle}

/* 数量：−／＋ の付いた枠（ボタンは JS が差し込む） */
.single-product form.cart .quantity{display:inline-flex;align-items:stretch;border:1px solid var(--line);
  border-radius:var(--r-sm);overflow:hidden;background:var(--paper)}
.single-product form.cart .quantity input{width:56px;border:0;border-radius:0;height:auto}
.qty-btn{width:42px;border:0;background:var(--paper);cursor:pointer;font-size:18px;color:var(--ink-2);
  font-family:var(--font-display)}
.qty-btn:hover{background:var(--wash);color:var(--ink)}

/* ボタンの主役／脇役は ui.css で決めています。
   ★ ここでは以前「ซื้อตอนนี้（今すぐ買う）」を塗り、
     「หยิบใส่ตะกร้า（カートに入れる）」を白抜きにしていました。
     ですが「今すぐ買う」はカートを飛ばす近道で、使う人は多くありません。
     いちばん多く押される操作が、いちばん静かな見た目になっていたので、
     主役と脇役を入れ替えました（買う操作＝テラコッタの塗り）。
     指定は ui.css に一本化してあります。 */

/* タブ：丸型 → 下線型（プロトタイプ準拠） */
.woocommerce-tabs ul.tabs{gap:0;border-bottom:1px solid var(--line);margin-bottom:26px}
.woocommerce-tabs ul.tabs a{border:0;border-radius:0;background:transparent;padding:12px 18px;
  font-size:var(--t-sm);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);
  border-bottom:2px solid transparent;margin-bottom:-1px}
.woocommerce-tabs ul.tabs li.active a{background:transparent;color:var(--ink);
  border-bottom-color:var(--ink)}
.woocommerce-tabs ul.tabs a:hover{color:var(--ink);text-decoration:none}
.woocommerce-Tabs-panel{max-width:none}

/* スペック表 */
.pd-specs{margin:26px 0 0;border-top:1px solid var(--line)}
.pd-specs > div{display:grid;grid-template-columns:160px 1fr;gap:12px;
  padding:12px 2px;border-bottom:1px solid var(--line)}
.pd-specs dt{color:var(--muted);font-size:var(--t-sm)}
.pd-specs dd{margin:0;font-size:var(--t-sm)}
@media (max-width:520px){ .pd-specs > div{grid-template-columns:120px 1fr} }

/* ── シリーズページの頭（プロトタイプ s2） ── */
.page-head__title{font-weight:400;letter-spacing:.04em}
.page-head__sub{color:var(--ink-2);margin:4px 0 0;font-size:var(--t-base)}
.page-head__desc{margin-top:10px}
.page-head__count{margin:16px 0 0;font-family:var(--font-display);font-weight:700;font-size:var(--t-md)}

/* ── レジ（プロトタイプ s4） ─────────────
   支払い方法は枠のカード、選択中は墨色の枠。
   注文ボタンは全幅の墨色。 */
.woocommerce-checkout #payment{background:transparent}
.woocommerce-checkout #payment ul.payment_methods{list-style:none;margin:0 0 18px;padding:0;display:grid;gap:10px;border:0}
.woocommerce-checkout #payment ul.payment_methods li{border:1px solid var(--line);border-radius:var(--r);
  padding:14px 16px;background:var(--paper);transition:border-color .15s}
.woocommerce-checkout #payment ul.payment_methods li:has(input:checked){border-color:var(--ink)}
.woocommerce-checkout #payment ul.payment_methods label{font-family:var(--font-display);font-weight:700;
  font-size:var(--t-base);display:inline;cursor:pointer}
.woocommerce-checkout #payment .payment_box{background:transparent;padding:8px 0 0 26px;
  font-size:var(--t-sm);color:var(--muted)}
.woocommerce-checkout #payment .payment_box::before{display:none}
.woocommerce-checkout #payment input[type=radio]{accent-color:var(--ink);margin-right:8px}
/* 注文ボタンの色は shop.css の #place_order（テラコッタ）に任せます。
   以前ここで !important の黒を当てていて、後段の指定が勝てませんでした。 */
.woocommerce-checkout #place_order{width:100%;letter-spacing:.12em;text-transform:uppercase}
.woocommerce-checkout #place_order:hover{filter:brightness(1.35)}

/* 注文内容の表：髪線、合計だけ大きく */
.woocommerce table.shop_table{border:0;border-collapse:collapse;width:100%}
.woocommerce table.shop_table th,.woocommerce table.shop_table td{border:0;border-bottom:1px solid var(--line);
  padding:13px 2px;background:transparent}
.woocommerce-checkout-review-order-table .order-total th,
.woocommerce-checkout-review-order-table .order-total td{border-bottom:0;padding-top:18px}
.woocommerce-checkout-review-order-table .order-total .amount{font-family:var(--font-display);
  font-weight:700;font-size:var(--t-lg)}
.acs-earn-row th,.acs-earn-row td{color:var(--terra-deep);font-size:var(--t-sm)}

/* ── マイページのポイント（プロトタイプ s5） ── */
.acs-points{display:grid;gap:22px}
.acs-points__balance{background:var(--mauve);color:#fff;border-radius:var(--r-lg);
  padding:clamp(22px,3.5vw,34px);display:grid;gap:4px;justify-items:start}
.acs-points__label{font-family:var(--font-display);font-weight:700;font-size:11.5px;
  letter-spacing:.22em;text-transform:uppercase;color:rgba(255,255,255,.85)}
.acs-points__balance b{font-family:var(--font-display);font-weight:700;font-size:clamp(38px,6vw,54px);line-height:1}
.acs-points__balance > span:not(.acs-points__label){color:rgba(255,255,255,.85);font-size:var(--t-sm)}
.acs-points__no{margin-top:10px;padding-top:12px;border-top:1px solid rgba(255,255,255,.35);
  width:100%;font-size:var(--t-xs);color:rgba(255,255,255,.85)}
.acs-points__soon{border:1px solid var(--terra);background:var(--blue-pale);color:var(--terra-deep);
  border-radius:var(--r);padding:12px 16px;font-size:var(--t-sm);margin:0}
.acs-points__table{width:100%;border-collapse:collapse}
.acs-points__table th{font-family:var(--font-display);font-size:11.5px;letter-spacing:.18em;
  text-transform:uppercase;color:var(--muted);text-align:left;padding:0 2px 10px;border-bottom:1px solid var(--ink)}
.acs-points__table td{padding:13px 2px;border-bottom:1px solid var(--line);font-size:var(--t-sm)}
.acs-points__table .num,.acs-points__table td.plus,.acs-points__table td.minus{text-align:right;
  font-family:var(--font-display);font-weight:700}
.acs-points__table td.plus{color:var(--terra-deep)}
.acs-points__table td.minus{color:var(--muted)}

/* カートのポイント利用の枠（プロトタイプの Use your points） */
.acs-redeem td{padding-top:14px}
.acs-redeem__form input{border-radius:var(--r-sm)!important}
