.elementor-6979 .elementor-element.elementor-element-b23c218{--display:flex;--min-height:850px;--gap:14px 14px;--row-gap:14px;--column-gap:14px;--padding-top:0px;--padding-bottom:60px;--padding-left:0px;--padding-right:0px;}.elementor-widget-heading .elementor-heading-title{font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-6979 .elementor-element.elementor-element-a64b35b > .elementor-widget-container{margin:20px 0px 0px 0px;}.elementor-6979 .elementor-element.elementor-element-a64b35b .elementor-heading-title{font-family:"Noto Sans JP";font-size:18px;font-weight:700;color:var( --e-global-color-astglobalcolor2 );}.elementor-6979 .elementor-element.elementor-element-05e12eb{--update-cart-automatically-display:none;--totals-title-alignment:start;--sections-border-type:solid;--sections-title-spacing:10px;--sections-descriptions-spacing:0px;--links-normal-color:var( --e-global-color-da67c76 );--forms-buttons-normal-text-color:var( --e-global-color-astglobalcolor2 );--forms-buttons-hover-text-color:var( --e-global-color-astglobalcolor4 );--forms-buttons-hover-border-color:var( --e-global-color-astglobalcolor7 );--forms-buttons-border-color:var( --e-global-color-astglobalcolor7 );--order-summary-rows-gap-top:calc( 40px/2 );--order-summary-rows-gap-bottom:calc( 40px/2 );--order-summary-color:var( --e-global-color-astglobalcolor2 );--order-summary-variations-color:var( --e-global-color-astglobalcolor3 );--product-link-normal-color:var( --e-global-color-primary );--order-summary-quantity-border-weight:1px;--order-summary-remove-icon-normal-color:var( --e-global-color-secondary );--totals-rows-gap-top:calc( 10px/2 );--totals-rows-gap-bottom:calc( 10px/2 );--checkout-button-border-radius:0px 0px 0px 0px;}.elementor-6979 .elementor-element.elementor-element-05e12eb .shop_table .button{background-color:var( --e-global-color-astglobalcolor5 );}.elementor-6979 .elementor-element.elementor-element-05e12eb .shop_table .button:hover, .elementor-6979 .elementor-element.elementor-element-05e12eb .shop_table .button:disabled[disabled]:hover{background-color:var( --e-global-color-astglobalcolor7 );}.elementor-6979 .elementor-element.elementor-element-05e12eb .woocommerce .wc-proceed-to-checkout .checkout-button{background-color:var( --e-global-color-da67c76 );}.elementor-6979 .elementor-element.elementor-element-05e12eb .e-cart-section{border-width:1px 1px 1px 1px;}.elementor-6979 .elementor-element.elementor-element-05e12eb .cart_totals h2{font-family:"Noto Sans JP";font-size:16px;font-weight:700;}.elementor-6979 .elementor-element.elementor-element-05e12eb .e-cart-content, .elementor-6979 .elementor-element.elementor-element-05e12eb .woocommerce-shipping-destination, .elementor-6979 .elementor-element.elementor-element-05e12eb .shipping-calculator-button{font-family:"Noto Sans JP";font-size:14px;line-height:30px;}.elementor-6979 .elementor-element.elementor-element-05e12eb .coupon .input-text, .elementor-6979 .elementor-element.elementor-element-05e12eb .cart-collaterals .input-text, .elementor-6979 .elementor-element.elementor-element-05e12eb select, .elementor-6979 .elementor-element.elementor-element-05e12eb .select2-selection--single{font-family:"Noto Sans JP";font-size:16px;}.elementor-6979 .elementor-element.elementor-element-05e12eb .woocommerce-cart-form{--order-summary-title-color:var( --e-global-color-astglobalcolor3 );}.elementor-6979 .elementor-element.elementor-element-05e12eb .checkout-button{border-style:none;}.elementor-6979 .elementor-element.elementor-element-05e12eb .e-cart-totals{--sections-border-radius:0px 0px 0px 0px;--sections-margin:0% 0% 0% 65%;}@media(max-width:767px){.elementor-6979 .elementor-element.elementor-element-05e12eb{width:100%;max-width:100%;--totals-title-alignment:start;--forms-rows-gap:0px;--order-summary-rows-gap-top:calc( 0px/2 );--order-summary-rows-gap-bottom:calc( 0px/2 );--order-summary-title-spacing:0px;--order-summary-items-divider-weight:1px;--order-summary-quantity-border-weight:1px;--totals-rows-gap-top:calc( 0px/2 );--totals-rows-gap-bottom:calc( 0px/2 );--totals-divider-weight:1px;}.elementor-6979 .elementor-element.elementor-element-05e12eb > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}}@media(min-width:768px){.elementor-6979 .elementor-element.elementor-element-b23c218{--content-width:1000px;}}/* Start custom CSS for woocommerce-cart, class: .elementor-element-05e12eb */@media (max-width: px){
  .woocommerce-cart .cart-collaterals,
  .woocommerce-cart .cart-collaterals .cart_totals{
    width: 100% !important;
    max-width: none !important;
    float: none !important;
    clear: both;
  }
  .woocommerce .wc-proceed-to-checkout a.checkout-button{
    display: block;
    width: 100%;
  }
}

/* Cart: fix weird remove (×) button */
.woocommerce-cart .shop_table.cart a.remove{
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  width: 22px !important;
  height: 22px !important;
  line-height: 22px !important;

  font-size: 18px !important;
  font-weight: 700 !important;

  border-radius: 50% !important;
  text-decoration: none !important;

  margin: 0 auto !important;
  padding: 0 !important;

  box-shadow: none !important;
  background: transparent !important; /* 或者改成 #f5f5f5 */
}

/* Hover state (optional) */
.woocommerce-cart .shop_table.cart a.remove:hover{
  background: #f2f2f2 !important;
}

/* Ensure the remove column doesn't become huge */
.woocommerce-cart .shop_table.cart td.product-remove{
  width: 34px !important;
  padding-left: 10px !important;
  padding-right: 10px !important;
  vertical-align: middle !important;
}
/* Elementor Cart (e-cart__container is GRID): force single-column on mobile */
@media (max-width: 768px) {

  /* 1) Force the cart container grid to 1 column */
  .woocommerce-cart .e-cart__container{
    display: grid !important;
    grid-template-columns: 1fr !important;
    column-gap: 0 !important;
    row-gap: 16px !important;
  }

  /* 2) Make both columns occupy full row width */
  .woocommerce-cart .e-cart__column.e-cart__column-start,
  .woocommerce-cart .e-cart__column.e-cart__column-end{
    grid-column: 1 / -1 !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  /* 3) Disable sticky behavior on mobile to prevent width calculation issues */
  .woocommerce-cart .e-cart__column-inner.e-sticky-right-column{
    position: static !important;
    top: auto !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  /* 4) Ensure totals section itself is full width */
  .woocommerce-cart .e-cart-totals.e-cart-section,
  .woocommerce-cart .cart-collaterals,
  .woocommerce-cart .cart_totals{
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  /* 5) Fix table squeezing */
  .woocommerce-cart .cart_totals table{
    width: 100% !important;
    table-layout: auto !important;
  }

  /* 6) Fix "Proceed to Checkout" button block if it's constrained */
  .woocommerce-cart .wc-proceed-to-checkout{
    width: 100% !important;
  }

  .woocommerce-cart .wc-proceed-to-checkout a.checkout-button{
    width: 100% !important;
    box-sizing: border-box !important;
  }
}
@media (max-width: 768px){

  /* A) 防止任何水平溢出（临时兜底） */
  html, body{
    overflow-x: hidden !important;
  }

  /* B) 右侧列/inner 强制归零偏移 */
  .woocommerce-cart .e-cart__column.e-cart__column-end,
  .woocommerce-cart .e-cart__column-inner.e-sticky-right-column{
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    left: auto !important;
    right: auto !important;
    transform: none !important;   /* 很多“看似溢出”其实是 transform 推出去 */
  }

  /* C) totals 卡片本体占满，并保证 box-sizing */
  .woocommerce-cart .e-cart-totals.e-cart-section,
  .woocommerce-cart .cart-collaterals,
  .woocommerce-cart .cart_totals{
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
  }

  /* D) 如果 Elementor 给 e-cart-totals 设了固定宽度/对齐，这里强制 */
  .woocommerce-cart .e-cart-totals.e-cart-section{
    justify-self: stretch !important;
    align-self: stretch !important;
  }

  /* E) 表格、按钮也别撑破 */
  .woocommerce-cart .cart_totals table,
  .woocommerce-cart .wc-proceed-to-checkout,
  .woocommerce-cart .wc-proceed-to-checkout a.checkout-button{
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  /* F) 文字换行兜底（尤其地址那行） */
  .woocommerce-cart .cart_totals,
  .woocommerce-cart .cart_totals *{
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
  }
}/* End custom CSS */