@charset "utf-8";
/* ================================================================
 * カートページ（/usces-cart/ の「カートの中」）専用
 * functions.php の bouon_enqueue_cart_style() がカートページでのみ読み込む。
 * #wc_cart（wc_cart_page.php の .post）配下に限定し、他ページへ波及させない。
 * 配色: 表見出し #ccf2f2（サイト共通の表）、主ボタン #0b5eac（フロー図・既存ボタン）、
 *       金額 #ed5b14（商品ページの価格色）、罫線 #ddd / #c5b8a8（サイトのベージュ）
 * ================================================================ */

/* ---- 数量更新の案内 ---- */
#wc_cart #cart .upbutton {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 12px;
	margin: 0 0 10px;
	padding: 0;
	font-size: 12px;
	color: #666;
}
#wc_cart #cart .upbutton input[name="upButton"] {
	padding: 6px 16px;
	border: 1px solid #0b5eac;
	border-radius: 3px;
	background: #fff;
	color: #0b5eac;
	font-size: 13px;
	font-weight: bold;
	cursor: pointer;
}
#wc_cart #cart .upbutton input[name="upButton"]:hover {
	background: #0b5eac;
	color: #fff;
}

/* ---- 表 ---- */
#wc_cart #cart table#cart_table {
	width: 100%;
	table-layout: fixed;
	border-collapse: collapse;
	border: 0;
	border-top: 2px solid #c5b8a8;
	margin: 0 0 8px;
}
#wc_cart #cart_table th,
#wc_cart #cart_table td {
	box-sizing: border-box;
	padding: 12px 6px;
	border: 0;
	border-bottom: 1px solid #ddd;
	vertical-align: middle;
	font-size: 13px !important;
	line-height: 1.6;
	word-break: normal;
	overflow-wrap: anywhere;
}
#wc_cart #cart_table thead th {
	padding: 10px 6px;
	background: #ccf2f2;
	color: #333;
	font-size: 12px !important;
	font-weight: bold;
	white-space: nowrap;
	text-align: center;
}
/* 列幅（padding 込み。固定列 496px、残り 264px を商品名へ） */
#wc_cart #cart_table .num       { width: 32px !important; color: #999; }
#wc_cart #cart_table .thumbnail { width: 84px !important; }
#wc_cart #cart_table .unitprice,
#wc_cart #cart_table thead th:nth-child(4) { width: 88px !important; }
#wc_cart #cart_table td.quantity,
#wc_cart #cart_table thead th:nth-child(5) { width: 76px !important; }
#wc_cart #cart_table .subtotal  { width: 100px !important; }
#wc_cart #cart_table .stock     { width: 56px !important; }
#wc_cart #cart_table .action    { width: 60px !important; }

#wc_cart #cart_table td.thumbnail img {
	display: block;
	width: 72px;
	height: 72px;
	margin: 0 auto;
	object-fit: cover;
	border: 1px solid #e5e5e5;
}
#wc_cart #cart_table td.productname {
	padding-left: 10px;
	text-align: left;
	font-size: 14px !important;
	font-weight: bold;
	color: #333;
}
#wc_cart #cart_table td.unitprice,
#wc_cart #cart_table td.subtotal {
	text-align: right;
	white-space: nowrap;
}
#wc_cart #cart_table td.subtotal {
	font-size: 14px !important;
	font-weight: bold;
}
#wc_cart #cart_table td.stock {
	font-size: 11px !important;
	color: #666;
	text-align: center;
}
#wc_cart #cart_table input.quantity {
	box-sizing: border-box;
	width: 56px;
	height: 34px;
	padding: 0 4px;
	border: 1px solid #bbb;
	border-radius: 3px;
	font-size: 14px;
	text-align: center;
}
#wc_cart #cart_table input.delButton {
	padding: 5px 10px;
	border: 1px solid #ccc;
	border-radius: 3px;
	background: #fff;
	color: #666;
	font-size: 12px;
	cursor: pointer;
}
#wc_cart #cart_table input.delButton:hover {
	border-color: #999;
	color: #333;
}

/* ---- 合計 ---- */
#wc_cart #cart_table tfoot th {
	padding: 16px 6px;
	border-bottom: 2px solid #c5b8a8;
	background: #faf5f0;
	color: #333;
	white-space: nowrap;
}
#wc_cart #cart_table tfoot th.aright:first-child {
	font-size: 14px !important;
	font-weight: bold;
	text-align: right;
}
#wc_cart #cart_table tfoot th.aright:first-child em.tax {
	font-size: 11px;
	font-weight: normal;
}
#wc_cart #cart_table tfoot th.aright + th.aright {
	color: #ed5b14;
	font-size: 20px !important;
	font-weight: bold;
	text-align: right;
}

/* ---- 買い物を続ける／次へ ---- */
#wc_cart .send {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 20px;
	margin: 30px 0 10px;
	padding: 0;
	border-top: 0; /* Welcart 標準の黄色い線を消す */
	font-size: 0; /* ボタン間の &nbsp; を詰める */
}
#wc_cart .send input {
	box-sizing: border-box;
	min-width: 220px;
	margin: 0;
	padding: 14px 24px;
	border-radius: 4px;
	font-family: inherit;
	font-size: 15px;
	font-weight: bold;
	letter-spacing: 0.1em;
	cursor: pointer;
}
#wc_cart .send input#previouscart {
	border: 1px solid #ccc;
	background: #fff;
	color: #333;
}
#wc_cart .send input.to_customerinfo_button {
	min-width: 280px;
	border: 1px solid #0b5eac;
	background: #0b5eac;
	color: #fff;
	font-size: 17px;
	box-shadow: 0 3px 0 #07437c;
}
#wc_cart .send input:hover {
	opacity: 0.8;
}

/* ---- 空カート ---- */
#wc_cart .no_cart {
	margin: 40px 0 10px;
	text-align: center;
}

/* ================================================================
 * 内容確認（/usces-cart/ の4番目の画面）2026-10-23 追加
 * 商品名列が数文字幅に潰れ、「上記内容で注文する」が小さな灰色ボタンだったため、
 * カートの中と同じ見た目にそろえる。#wc_confirm（wc_confirm_page.php の .post）配下に限定。
 * ================================================================ */
#wc_confirm #cart table#cart_table {
	width: 100%;
	table-layout: fixed;
	border-collapse: collapse;
	border: 0;
	border-top: 2px solid #c5b8a8;
	margin: 0 0 8px;
}
#wc_confirm #cart_table th,
#wc_confirm #cart_table td {
	box-sizing: border-box;
	padding: 12px 6px;
	border: 0;
	border-bottom: 1px solid #ddd;
	vertical-align: middle;
	font-size: 13px !important;
	line-height: 1.6;
	word-break: normal;
	overflow-wrap: anywhere;
}
#wc_confirm #cart_table thead th {
	padding: 10px 6px;
	background: #ccf2f2;
	color: #333;
	font-size: 12px !important;
	font-weight: bold;
	white-space: nowrap;
	text-align: center;
}
#wc_confirm #cart_table .num       { width: 32px !important; color: #999; text-align: center; }
#wc_confirm #cart_table .thumbnail { width: 84px !important; }
#wc_confirm #cart_table .price,
#wc_confirm #cart_table .unitprice { width: 96px !important; }
#wc_confirm #cart_table .quantity  { width: 60px !important; text-align: center; }
#wc_confirm #cart_table .subtotal  { width: 110px !important; }
#wc_confirm #cart_table .action,
#wc_confirm #cart_table tfoot tr > :last-child { display: none; }
#wc_confirm #cart_table td.thumbnail img {
	display: block;
	width: 72px;
	height: 72px;
	margin: 0 auto;
	object-fit: cover;
	border: 1px solid #e5e5e5;
}
#wc_confirm #cart_table td.productname {
	padding-left: 10px;
	text-align: left;
	font-size: 14px !important;
	font-weight: bold;
	color: #333;
}
#wc_confirm #cart_table td.unitprice,
#wc_confirm #cart_table td.subtotal {
	text-align: right;
	white-space: nowrap;
}
#wc_confirm #cart_table td.subtotal { font-size: 14px !important; font-weight: bold; }
#wc_confirm #cart_table tfoot th,
#wc_confirm #cart_table tfoot td {
	padding: 10px 6px;
	background: #fff;
	color: #333;
	text-align: right;
	white-space: nowrap;
}
#wc_confirm #cart_table tfoot tr:last-child th {
	padding: 16px 6px;
	border-bottom: 2px solid #c5b8a8;
	background: #faf5f0;
	font-size: 14px !important;
	font-weight: bold;
}
#wc_confirm #cart_table tfoot tr:last-child th + th {
	color: #ed5b14;
	font-size: 20px !important;
}

/* 注文する／戻る */
#wc_confirm .send {
	margin: 24px 0 10px;
	padding: 0;
	border-top: 0;
	text-align: center;
}
#wc_confirm .send input {
	box-sizing: border-box;
	margin: 0;
	padding: 14px 24px;
	border-radius: 4px;
	font-family: inherit;
	font-weight: bold;
	letter-spacing: 0.1em;
	cursor: pointer;
}
#wc_confirm .send input#purchase_button {
	min-width: 320px;
	border: 1px solid #0b5eac;
	background: #0b5eac;
	color: #fff;
	font-size: 17px;
	box-shadow: 0 3px 0 #07437c;
}
#wc_confirm .send input#back_button {
	min-width: 220px;
	border: 1px solid #ccc;
	background: #fff;
	color: #333;
	font-size: 15px;
}
#wc_confirm .send input:hover { opacity: 0.8; }
