@charset "utf-8";

/* CSS Document */

/* =item_single.php
-------------------------------------------------------------- */

/*---- item_page_title ---*/
.item_page_title {
	margin: 0 0 .625em;
	font-size: 1.14286em;
	line-height: 1.25em;
}

/*---- img-box ---*/
#itempage #img-box {
	margin-bottom: 1.66667em;
}

#itempage .itemimg {
	text-align: center;
}

#itempage .itemimg a {
	display: block;
}

#img-box .itemimg img {
	width: 100%;
	height: auto;
}

#itempage .itemsubimg {
	margin: 3% -3% 0 0;
	overflow: hidden;
}

#itempage .itemsubimg a {
	display: inline-block;
	width: 22%;
	margin: 0 3% 3% 0;
	float: left;
	text-align: center;
}

#itempage .itemsubimg img {
	width: 100%;
	height: auto;
	vertical-align: middle;
}

/*---- item-info ---*/
#itempage .item-info {
	padding-top: 2.5em;
}

/*---- itemcode ---*/
#itempage .itemcode {
	margin-bottom: 1.42857em;
	padding-bottom: .357143em;
	border-bottom: 1px solid #ccc;
}

/*---- sku-name ---*/
.item-info .skuname {
	min-height: 30px;
	margin-bottom: 1.42857em;
	padding: .357143em;
	background-color: #dedede;
	font-weight: bold;
}

/*---- skuform ---*/
.item-info form {
	clear: both;
}

.item-info .skuform {
	margin-bottom: 2.142856em;
}

.item-info form .skuform:last-child {
	margin-bottom: 0;
}

.item-info .skuform form {
	clear: both;
}

/*---- zaikostatus ---*/
.item-info .zaikostatus {
	float: left;
}

/*---- field ---*/
.item-info .field {
	padding: 0 0 .357143em;
	overflow: hidden;
}

/*---- price ---*/
.item-info .field_price {
	float: right;
	font-size: 1.42857em;
	font-weight: bold;
}

.item-info .field_cprice {
	margin-right: .666667em;
	color: #999;
	font-size: .6em;
	font-weight: normal;
	text-decoration: line-through;
}

.item-info .field_price em {
	font-size: .5em;
}

/* ---- .tax_inc_block ---- */

.item-info .tax_inc_block {
	clear: both;
	font-size: 12px;
	text-align: right;
}

.item-info .tax_inc_block em {
	margin-right: 3px;
	color: #262626;
}


/*---- itemGpExp ---*/
.item-info .itemGpExp {
	margin: 1.42857em 0;
	padding: 1.42857em .357143em .714286em;
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
}

.item-info .itemGpExp dt {
	font-weight: bold;
}

.item-info .itemGpExp .tax_inc_block {
	margin-left: .714286em;
}

.item-info .itemGpExp .price {
	padding: 0 0 0 .625em;
	font-size: 1.14286em;
	font-weight: bold;
}

.item-info .itemGpExp em {
	font-size: .5em;
}

/*---- item-option ---*/
.item-info .item-option {
	margin-bottom: 1.42857em;
	padding: 1.42857em .357143em .714286em;
	clear: both;
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
}

.item-info .item-option dt {
	font-weight: bold;
}

.item-info .item-option dd {
	margin: 0 0 .714286em;
}

.item-info .item-option select option {
	background-color: #fff;
}

.item-info .item-option input[type="text"] {
	width: 60%;
}

.item-info .item-option .iopt_radio_label {
	display: block;
}

.item-info .item-option textarea {
	width: 100%;
	height: 100px;
}

/*---- c-box ---*/
.item-info .c-box {
	padding: 0;
	clear: both;
	text-align: right;
}

/*---- quantity ---*/
.item-info .quantity {
	display: inline-block;
	margin-bottom: 5px;
}

.item-info .quantity input.skuquantity {
	width: 60px !important;
	height: 40px;
	margin: 0 .357143em;
	padding: .357143em;
	border: 1px solid #ccc;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	text-align: center;
}

/*---- cart-btn ---*/
.item-info .skubutton {
	padding: .714286em 2.142856em;
	-webkit-transition: .3s ease all;
	-moz-transition: .3s ease all;
	-o-transition: .3s ease all;
	transition: .3s ease all;
	border: none;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	background-color: #ff8c00;
	color: #fff;
	font-family: FontAwesome;
	font-weight: bold;
	letter-spacing: 1px;
	text-align: center;
}

.item-info .skubutton:hover {
	background-color: #ffa500;
	cursor: pointer;
}

/*---- incart-btn ---*/
.item-info .incart-btn {
	text-align: left;
}

/*---- itemsoldout ---*/
.item-info .itemsoldout {
	color: #ff8c00;
	font-weight: bold;
	letter-spacing: .5px;
	text-align: right;
}

/*---- item_custom_field ---*/
.item-info ul.item_custom_field {
	margin-bottom: 2.142856em;
	float: right;
	line-height: 200%;
}

.item-info ul.item_custom_field li {
	padding: 0 .357143em;
	border-bottom: 1px dotted #999;
}

/*---- item-info table ---*/
.item-info table.item_custom_field {
	margin-bottom: 2.142856em;
	float: right;
	border-collapse: collapse;
	border: 1px solid #ccc;
}

.item-info .item_custom_field th {
	width: 40%;
	padding: .357143em;
	border: 1px solid #ccc;
	background-color: #eee;
}

.item-info .item_custom_field td {
	padding: .357143em;
	border: 1px solid #ccc;
}

/*---- assistance_item ---*/
.assistance_item h3 {
	margin: 1.42857em 0 0;
	border-bottom: 3px solid #eee;
	color: #000;
}

.assistance_item ul {
	overflow: hidden;
	letter-spacing: -.5em;
}

.assistance_item li {
	display: inline-block;
	width: 46%;
	margin-right: 8%;
	padding: 1.42857em 0 0;
	letter-spacing: normal;
	vertical-align: text-top;
}

.assistance_item li:nth-child(even) {
	margin-right: 0;
}

.assistance_item li .slit a {
	display: block;
	margin-bottom: .357143em;
}

.assistance_item li .slit img {
	width: 100%;
	height: auto;
}

.assistance_item li .detail h4 {
	height: 43px;
	margin: 0;
	overflow: hidden;
	font-weight: normal;
}

.assistance_item li .detail p {
	height: 60px;
	overflow: hidden;
}

.assistance_item li .detail .assist_price {
	height: 22px;
	font-weight: bold;
	text-align: right;
}

/*---- .date sku-form ---*/
.date .item-info .skuform {
	border: none;
}

/*---- dlseller ---*/
.item-info .frequency {
	margin-bottom: .714286em;
	text-align: right;
}

.item-info .field_frequency {
	display: inline-block;
	padding: 0 20px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	background-color: #d3222a;
	color: #fff;
	font-size: 13px;
	font-weight: bold;
	letter-spacing: 1px;
}

#itempage table.dlseller {
	width: 100%;
	margin: 1.42857em 0 0;
}

#itempage table.dlseller th {
	width: 50%;
	padding: .714286em;
	border: 1px solid #ccc;
	background-color: #eee;
}

#itempage table.dlseller td {
	padding: .714286em;
	border: 1px solid #ccc;
}


/* =wc_search_page.php
-------------------------------------------------------------- */

section#usces-cart .navigation {
	clear: both;
	letter-spacing: normal;
	line-height: 300%;
}

section#usces-cart form {
	letter-spacing: normal;
}

section#usces-cart form .outlabel {
	display: block;
	padding: 1.42857em 0 .714286em;
}

#searchbox fieldset {
	margin-bottom: 1.42857em;
	padding: .7142857em 1.42857em;
	border: 1px solid #e0e0e0;
}

#searchbox legend {
	padding: 0 .7142857em;
}

#searchbox input.usces_search_button {
	display: block;
	margin: 0 auto;
	padding: 1.071428em 3em;
	border: none;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	background-color: #eee;
}

#searchbox .searchitems p {
	letter-spacing: normal;
}

/* =Cart Page + Member Page
-------------------------------------------------------------- */

/* ---- autofill ---- */
#wc_newmemberform .customer_form input#mailaddress1:-webkit-autofill,
#wc_newmemberform .customer_form input[type="password"]:-webkit-autofill,
#wc_customer .customer_form input#mailaddress1:-webkit-autofill,
#wc_customer .customer_form input[type="password"]:-webkit-autofill,
#wc_member .customer_form input#mailaddress1:-webkit-autofill,
#wc_member .customer_form input#password1:-webkit-autofill,
#wc_editmemberform .customer_form input#mailaddress1:-webkit-autofill,
#wc_editmemberform .customer_form input#password1:-webkit-autofill {
	-webkit-box-shadow: 0 0 0 1000px white inset;
	box-shadow: 0 0 0 1000px white inset;
}

#wc_customer .customer_form input#loginpass:-webkit-autofill {
	-webkit-box-shadow: none;
	box-shadow: none;
}


/* =cart
-------------------------------------------------------------- */

#main #content.cart-page {
	float: none;
}

/*---- page-title ---*/
.cart_page_title {
	margin: 0 0 1.25em;
	font-size: 1.1428545em;
	line-height: 1.25em;
}

/*---- usccart_navi ---*/
div.cart_navi ul {
	overflow: hidden;
	list-style: none;
}

div.cart_navi li {
	display: block;
	padding: 0 .909095em 0 1.81818em;
	float: left;
	background: #dedede;
	color: #262626;
	font-size: 11px;
	font-weight: bold;
	line-height: 40px;
	text-align: center;
	text-decoration: none;
}

div.cart_navi li::before {
	content: " ";
	display: block;
	width: 20px;
	height: 20px;
	margin: 0 -20px -20px auto;
	float: right;
	-webkit-transform: skew(20deg);
	-moz-transform: skew(20deg);
	-o-transform: skew(20deg);
	transform: skew(20deg);
	border-right: 4px solid #fff;
	background: #dedede;
}

div.cart_navi li::after {
	content: " ";
	display: block;
	position: relative;
	width: 20px;
	height: 20px;
	margin: -20px -20px 0 auto;
	-webkit-transform: skew(-20deg);
	-moz-transform: skew(-20deg);
	-o-transform: skew(-20deg);
	transform: skew(-20deg);
	border-right: 4px solid #fff;
	background: #dedede;
}

div.cart_navi li:last-child::before,
div.cart_navi li:last-child::after {
	border: none;
}

div.cart_navi li.current,
div.cart_navi li.current::before,
div.cart_navi li.current::after {
	background-color: #161616;
	color: #fff;
}

.cart-page:has(#kuroneko_atobarai_sms) .cart_navi {
	display: none;
}

/*---- send ---*/
.cart-page .send {
	padding-top: .714286em;
	text-align: center;
}

.cart-page .send input {
	margin-bottom: .714286em;
}

.send input.to_customerinfo_button,
.send input.to_memberlogin_button,
.send input.to_deliveryinfo_button,
.send input.to_confirm_button,
.send input#purchase_button {
	background-color: #ff8c00;
	color: #fff;
}

.send input.to_customerinfo_button:hover,
.send input.to_memberlogin_button:hover,
.send input.to_deliveryinfo_button:hover,
.send input.to_confirm_button:hover,
.send input#purchase_button:hover {
	background-color: #ffa500;
}

/*---- header_explanation ---*/
div.header_explanation {
	margin: 1.42857em 0 1.42857em;
}

/*---- footer_explanation ---*/
div.footer_explanation {
	margin-top: 1.42857em;
}


/*---- cart_table ---*/
#cart_table {
	width: 100%;
	border-collapse: collapse;
	border: 1px dotted #ccc;
}

#cart_table th {
	padding: .357143em;
	border: 1px solid #ccc;
	background-color: #efefef;
	text-align: center;
}

#cart_table td {
	padding: .357143em;
	border: 1px solid #ccc;
	text-align: center;
	vertical-align: middle;
}

#cart_table .aleft {
	text-align: left;
}

#cart_table .aright {
	text-align: right;
}

#cart_table td.productname {
	text-align: left;
	word-break: break-word;
}

#cart_table .amount {
	padding: .3125em .3125em .3125em 10px;
	font-size: 16px;
	letter-spacing: 1px;
}

#cart_table .subtotal {
	white-space: nowrap;
}

#cart_table em.tax {
	font-style: normal;
}

#cart_table .num,
#cart_table .thumbnail,
#cart_table .stock {
	display: none;
}

#cart_table .thumbnail img {
	height: auto;
}

#cart_table .quantity {
	width: 50px;
	text-align: center;
}

#cart_table .quantity input {
	width: 45px;
	padding: 0 5px;
	border: 1px solid #aaa;
	-webkit-border-radius: 0;
	-moz-border-radius: 0;
	border-radius: 0;
	text-align: center;
}

#cart .action {
	width: 40px;
	text-align: center;
	white-space: nowrap;
}

#cart .action input.delButton {
	display: block;
	padding: .557143em .714286em;
}


/*---- customer_form ---*/
.customer_form {
	width: 100%;
}

.customer_form tr {
	display: block;
	margin-bottom: 1.071428em;
	padding: 0 .5714285em 1.071428em;
	border-bottom: 2px solid #efefef;
}

.customer_form th {
	display: block;
	width: auto;
	margin-bottom: .357143em;
	padding: 0;
	border: none;
	background: none;
}

.customer_form th em {
	color: #f36;
	font-weight: bold;
}

.customer_form td {
	display: block;
	margin-bottom: 0;
	padding: 0;
	border: none;
	color: #666;
	font-size: 1em;
}

.customer_form td label {
	color: black;
}

.customer_form tr.inp1 td {
	display: inline-block;
	width: 45%;
}

.customer_form .member_name {
	padding-left: 1em;
}

.customer_form p.password_policy {
	margin-top: .4em;
	font-size: 12px;
}

.customer_form input#loginmail,
.customer_form input#mailaddress1,
.customer_form input#mailaddress2 {
	width: 70%;
}

.customer_form input#zipcode {
	margin-right: 0;
}

.customer_form input#search_zipcode {
	margin: .5714285em;
	padding: 5px 20px;
}

.customer_form input[type="password"] {
	display: block;
	margin-right: .5em;
}

.customer_form tr.inp1 input {
	width: 70%;
	margin-right: 0;
	margin-left: .5em;
}

.customer_form input[type="text"] {
	margin-right: .5em;
}

.customer_form input[type="radio"],
.customer_form input[type="checkbox"] {
	margin: 0 .5rem 0 0;
	vertical-align: middle;
}

/* カード番号 */
.customer_form td input#cardno,
.customer_form td input.card_number,
.customer_form td input#cardname,
.customer_form td input.cc_number {
	width: calc(100% - 8rem);
	max-width: 15rem !important;
}

/* セキュリティコード */
.customer_form td input#seccd,
.customer_form td input.cvc,
.customer_form td input.cc_seccd {
	width: 6rem;
}

/* =wc_cart_page.php
-------------------------------------------------------------- */

#wc_cart #cart .upbutton {
	padding: 0 0 .714286em;
	text-align: right;
}

#wc_cart #cart .upbutton input {
	margin-left: 5px;
	padding: 3px 15px;
	border: 1px solid #ff8c00;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	background-color: #fff;
	color: #ff8c00;
}

#wc_cart #cart .upbutton input:hover {
	background-color: #fdffd3;
	color: #e28619;
}

#wc_cart .currency_code {
	padding: .357143em 0;
}

#wc_cart .no_cart {
	padding: 3em 0;
	font-weight: bold;
	text-align: center;
}

/*--- PayPal Style ---*/

.ui-dialog {
	width: 95% !important;
	font-size: 1em;
}

.ui-dialog #paypal_dialog {
	padding: 10px;
}

#paypal_dialog #paypal_confirm td {
	text-align: right;
}

#paypal_dialog #paypal_shipping select {
	width: 100%;
}

#paypal_dialog #paypal_point table {
	border: none;
}

#paypal_dialog #paypal_point table th,
#paypal_dialog #paypal_point table td {
	border: 1px solid #e6e6e6;
}

#paypal_dialog #paypal_point tr:last-child td {
	padding: .83334em 0 0;
	border: none;
	text-align: center;
}

#paypal_dialog #paypal_use_point {
	width: auto;
	border: 1px solid #ff8c00;
	background-color: #fff;
	color: #ff8c00;
}

#paypal_dialog #paypal_use_point:hover {
	background-color: #fdffd3;
	color: #e28619;
}

/* =wc_customer_page.php
-------------------------------------------------------------- */

#customer-info h5 {
	margin: 1.42857em 0;
	padding: .357143em 0 .357143em .357143em;
	border-bottom: 1px solid #ccc;
	color: #000;
	letter-spacing: .05em;
}

#wc_customer .send input.to_reganddeliveryinfo_button {
	background-color: #ff8c00;
	color: #fff;
}

#wc_customer .send input.to_reganddeliveryinfo_button:hover {
	background-color: #ffa500;
}

#wc_customer .liwpp_area {
	padding: .714286em 0 0;
	text-align: center;
}

.customer_form .cardlast4 {
	margin-left: 1rem;
}

/*--- Paygent Style ---*/

#paygent_card_form th {
	margin-bottom: 1em;
}

.customer_form .paygent_registerd_card_area {
	margin-left: 1.5em;
}

.customer_form .paygent_new_card_area {
	margin: 1em 0;
}

#wc_delivery .customer_form .paygent_new_card_area dt,
#wc_delivery .customer_form .paygent_card_split_count_area dt {
	padding-top: 0;
}

#wc_delivery .customer_form .paygent_new_card_area dd,
#wc_delivery .customer_form .paygent_card_split_count_area dd {
	margin-left: 0;
}

#wc_delivery .customer_form .paygent_new_card_area label {
	margin: .5rem 0;
}

#wc_delivery .customer_form .paygent_new_card_area .attention {
	margin: .5rem 0 1em;
}

#wc_delivery .customer_form .paygent_new_card_area label {
	display: block;
}

#wc_delivery .customer_form .paygent_new_card_area label input[type="checkbox"] {
	margin: 0 .5rem 0 0;
	vertical-align: middle;
}

#wc_delivery .customer_form .paygent_new_card_area select {
	margin-right: .5em;
}

/* SBPS Style */

.customer_form .sbps_registerd_card_area,
.customer_form .sbps_new_card_area {
	margin-left: 1.5em;
}

#wc_delivery .customer_form .sbps_new_card_area dd {
	margin-left: 0;
}

#wc_delivery .customer_form .sbps_new_card_area select {
	margin-right: .5em;
}

/*--- SBPS ---*/

.customer_form .sbps_new_card_area dt {
	padding-bottom: 0;
}

.customer_form .sbps_new_card_area dd {
	padding-top: .357em;
}


/*--- WelcartPay ---*/

#escott-token-form input,
#escott-token-form select {
	margin-right: .5rem;
}

#escott-token-form a {
	text-decoration: underline;
}

#escott-token-form a:hover {
	text-decoration: none;
}


/* =wc_delivery_page.php
-------------------------------------------------------------- */

#wc_delivery .customer_form dt {
	padding: .714286em 0 .357em;
	font-weight: bold;
}

#wc_delivery .customer_form dd {
	margin-left: 1.5em;
	color: #262626;
	overflow-wrap: anywhere;
}

#wc_delivery .customer_form select {
	width: fit-content;
	max-width: 280px;
}

#wc_delivery .customer_form dd * {
	max-width: 100%;
}

/*---　credit style　---*/
#wc_delivery #zeus select,
#wc_delivery #remise select,
#wc_delivery #escott select,
#wc_delivery #welcart select {
	width: auto;
	margin-right: .25em;
}

/*---　DL Seller　---*/

#dlseller_terms .dlseller_terms {
	height: 200px;
	padding: .833334em;
	overflow-y: scroll;
	border: 1px solid #ccc;
	font-size: 12px;
}


/* =wc_confirm_page.php
-------------------------------------------------------------- */

#wc_confirm div.usccart_navi li.usccart_confirm {
	background: none;
	background-color: #262626;
}

/*---- info-confirm ---*/
#info-confirm .confiem_notice {
	padding-bottom: 5px;
}

/*---- cart_table ---*/
#wc_confirm #cart_table {
	margin-bottom: 1.4286em;
}

#wc_confirm #cart_table td.unitprice,
#wc_confirm #cart_table td.subtotal {
	text-align: right;
}

/*---- point_table ---*/
#cart #point_table {
	width: 100%;
	margin: 0 auto 1.42857em !important;
	float: none;
}

#point_table td {
	width: 50%;
	padding: .357143em;
	border: 1px solid #ccc;
	text-align: center;
}

#point_table td.c-point,
#point_table td.u-point {
	background-color: #efefef;
	font-weight: bold;
}

#point_table .point-btn {
	padding: .83334em 0 0;
	border: none;
	text-align: center;
}

#point_table td span.point {
	padding-right: .3125em;
	font-size: 16px;
	font-weight: bold;
	letter-spacing: 1px;
}

#point_table td input[type="text"] {
	width: 80px;
	margin: 0 .357143em;
	border: 1px solid #aaa;
	-webkit-border-radius: 0;
	-moz-border-radius: 0;
	border-radius: 0;
	text-align: center;
}

#point_table td input.use_point_button {
	border: 1px solid #ff8c00;
	background-color: #fff;
	color: #ff8c00;
}

#point_table td input.use_point_button:hover {
	background-color: #fdffd3;
	color: #e28619;
}

/*---- wcex_coupon ---*/
#cart #coupon_table {
	width: 100% !important;
	margin: 0 auto 1.42857em;
	float: none;
}

#cart #coupon_table th {
	width: 50%;
	padding: .357143em;
	border: 1px solid #ccc;
	background-color: #efefef;
	font-weight: bold;
	text-align: center;
}

#cart #coupon_table td {
	width: 50%;
	height: auto !important;
	padding: .357143em;
	border: 1px solid #ccc;
	text-align: center;
}

#cart #coupon_table tr:first-child td:first-child {
	background-color: #efefef;
	font-weight: bold;
}

#cart #coupon_table tr:last-child td {
	padding: .714286em 0 0;
	border: none;
}

#cart #coupon_table td .use_coupon_button {
	margin-right: 5px;
	border: 1px solid #ff8c00;
	background-color: #fff;
	color: #ff8c00;
}

#cart #coupon_table td .use_coupon_button:hover {
	background-color: #fdffd3;
	color: #e28619;
}

/*---- confirm_table ---*/
#confirm_table {
	width: 100%;
	border-collapse: collapse;
}

#confirm_table th {
	width: auto;
	padding: .357143em;
	border: 1px solid #ccc;
	background-color: #efefef;
	color: #262626;
	font-size: 1em;
	font-weight: bold;
}

#confirm_table td {
	padding: .357143em;
	border: 1px solid #ccc;
}

#confirm_table tr.ttl td {
	background-color: #efefef;
}

#wc_confirm table .action {
	display: none;
}

#confirm_table .ttl h3 {
	color: #000;
	letter-spacing: .05em;
}

#wc_confirm .currency_code {
	padding-bottom: .357143em;
}

/*---- send ---*/
#wc_confirm .send input#back_button {
	margin-bottom: .714286em;
}

.wc_confirm_notes_area {
	margin: 2em 0;
}

#wc_confirm #checkout_paypal_cp iframe {
	position: static;
	width: 750px;
	max-width: 100%;
	padding: 0 20px;
}


/* =wc_completion_page.php
-------------------------------------------------------------- */

#wc_ordercompletion h3 {
	margin: 1.785715em 0;
	text-align: center;
}

#wc_ordercompletion .header_explanation {
	text-align: center;
}

#wc_ordercompletion .send a {
	padding: 10px 20px;
	-webkit-transition: .3s ease all;
	-moz-transition: .3s ease all;
	-o-transition: .3s ease all;
	transition: .3s ease all;
	border: none;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	background-color: #efefef;
}

#wc_ordercompletion .send a:hover {
	background-color: #ddd;
	text-decoration: none;
}

/*　wc_templates dlseller　*/
#wc_ordercompletion .dllist {
	text-align: center;
}

#wc_ordercompletion .dllist li {
	margin-bottom: 1.4286em;
}

#wc_ordercompletion .dllist li:last-child {
	margin-bottom: 0;
}

#wc_ordercompletion .dllist .thumb {
	margin-bottom: 1.4286em;
	padding: .714286em 0;
	border-top: 1px solid #e0e0e0;
	border-bottom: 1px solid #e0e0e0;
	text-align: center;
}

#wc_ordercompletion .dllist .thumb img {
	height: auto;
}

#wc_ordercompletion .dllist table {
	margin: 0 auto 1.4286em;
	border-collapse: collapse;
	border: 1px solid #ccc;
}

#wc_ordercompletion .dllist th {
	width: 30%;
	padding: .714286em;
	border: 1px solid #ccc;
	background-color: #f0f0f0;
}

#wc_ordercompletion .dllist td {
	padding: .714286em;
	border: 1px solid #ccc;
}

#wc_ordercompletion .item_info_list p {
	text-align: center;
}

#wc_ordercompletion a.redownload_button {
	display: inline-block;
	margin-bottom: 1em;
	padding: .714286em;
	-webkit-transition: .3s ease all;
	-moz-transition: .3s ease all;
	-o-transition: .3s ease all;
	transition: .3s ease all;
	border: none;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	background-color: #ff8c00;
	color: #fff;
	text-decoration: none;
}

#wc_ordercompletion a.redownload_button:hover {
	background-color: #ffa500;
}


/* =member
-------------------------------------------------------------- */

#main #content.member-page {
	width: 100%;
	float: none;
}

/*---- page-title ---*/
.member_page_title {
	margin: 0 0 1.25em;
	font-size: 1.14286em;
	line-height: 1.25em;
}

/*---- send ---*/
.member-page .send {
	padding-top: .714286em;
	text-align: center;
}

.member-page .send input {
	margin-bottom: .714286em;
	background-color: #ff8c00;
	color: #fff;
}

.member-page .send input:hover {
	background-color: #ffa500;
}


/* =wc_login_page.php
-------------------------------------------------------------- */

#wc_login .loginbox,
#wc_member .loginbox {
	padding: .714286em 2.142856em;
	text-align: left;
}

#wc_login .loginbox label,
#wc_member .loginbox label {
	line-height: 180%;
}

#wc_login .loginbox input,
#wc_memebr.login .loginbox input {
	-webkit-transition: .3s ease all;
	-moz-transition: .3s ease all;
	-o-transition: .3s ease all;
	transition: .3s ease all;
}

#wc_login .loginbox input.loginmail,
#wc_login .loginbox input.loginpass,
#wc_member .loginbox input.loginmail,
#wc_member .loginbox input.loginpass {
	width: 100%;
	margin-bottom: .714286em;
	border: 1px solid #ccc;
}

.loginbox .submit {
	padding: .714286em 0;
}

#wc_login .loginbox #member_login,
#wc_member .loginbox #member_login {
	border: none;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	background-color: #ff8c00;
	color: #fff;
}

#wc_login .loginbox #member_login:hover,
#wc_member .loginbox #member_login:hover {
	background-color: #ffa500;
}

#wc_login .loginbox .new-entry,
#wc_member .loginbox .new-entry {
	margin: 10px 0;
	padding: 20px;
	background-color: #efefef;
}

#wc_login .loginbox .new-entry #nav,
#wc_member .loginbox .new-entry #nav {
	margin-top: .833338em;
	text-align: center;
}

#wc_login .loginbox .new-entry #nav a,
#wc_member .loginbox .new-entry #nav a {
	display: inline-block;
	padding: .714286em 1.42857em;
	-webkit-transition: .3s ease all;
	-moz-transition: .3s ease all;
	-o-transition: .3s ease all;
	transition: .3s ease all;
	border: none;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	background-color: #ff8c00;
	color: #fff;
}

#wc_login .loginbox .new-entry #nav a:hover,
#wc_member .loginbox .new-entry #nav a:hover {
	background-color: #ffa500;
	text-decoration: none;
}

#wc_member .loginbox a {
	padding: 0;
	-webkit-border-radius: 0;
	-moz-border-radius: 0;
	border-radius: 0;
	background: none;
}

#wc_member .loginbox a:hover {
	background: none;
	text-decoration: underline;
}

#wc_login .footer_explanation,
#wc_member .footer_explanation {
	clear: both;
}

#wc_login .liwpp_area,
#wc_member .liwpp_area {
	text-align: center;
}


/* =wc_changepassword_page.php
-------------------------------------------------------------- */

wc_changepassword .whitebox {
	text-align: center;
}

#wc_changepassword .loginbox {
	padding: .8333em 2.5em;
	font-size: .85714em;
	text-align: left;
}

#wc_changepassword .loginbox label {
	line-height: 180%;
}

#wc_changepassword .loginbox input.loginpass {
	width: 100%;
	margin-bottom: .714286em;
	padding: .35714em;
	border: 1px solid #ccc;
}

#wc_changepassword #member_login {
	width: 60%;
	padding: .714286em 0;
	-webkit-transition: .3s ease all;
	-moz-transition: .3s ease all;
	-o-transition: .3s ease all;
	transition: .3s ease all;
	border: none;
	background-color: #ff8c00;
	color: #fff;
}

#wc_changepassword #member_login:hover {
	background-color: #ffa500;
}

#wc_changepassword p.password_policy {
	margin: 0 0 .8em;
	font-size: 12px;
}


/* =wc_lostpassword_page.php
-------------------------------------------------------------- */

#wc_lostmemberpassword .whitebox {
	text-align: center;
}

#wc_lostmemberpassword .loginbox {
	padding: .714286em 2.142856em;
	text-align: left;
}

#wc_lostmemberpassword .loginbox label {
	line-height: 180%;
}

#wc_lostmemberpassword input,
#wc_lostmemberpassword a {
	-webkit-transition: .3s ease all;
	-moz-transition: .3s ease all;
	-o-transition: .3s ease all;
	transition: .3s ease all;
	-webkit-border-radius: 0;
	-moz-border-radius: 0;
	border-radius: 0;
}

#wc_lostmemberpassword .loginbox input.loginmail {
	width: 100%;
	margin-bottom: .714286em;
}

#wc_lostmemberpassword #member_login {
	margin-bottom: .714286em;
	padding: .714286em 1.42857em;
	border: none;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	background-color: #ff8c00;
	color: #fff;
}

#wc_lostmemberpassword #member_login:hover {
	background-color: #ffa500;
}

#wc_lostmemberpassword #nav a {
	display: inline-block;
	padding: .714286em 1.42857em;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	background-color: #efefef;
	color: #262626;
	text-align: center;
}

#wc_lostmemberpassword #nav a:hover {
	background-color: #ddd;
	text-decoration: none;
}

#wc_lostmemberpassword .error_message {
	margin: 0 auto 10px;
	text-align: left;
}


/* =wc_member_completion_page.php
-------------------------------------------------------------- */

#wc_newcompletion #memberpages,
#wc_lostcompletion #memberpages,
#wc_changepasscompletion #memberpages {
	text-align: center;
}

#wc_newcompletion #memberpages p a,
#wc_lostcompletion #memberpages p a,
#wc_changepasscompletion #memberpages p a {
	display: inline-block;
	margin: 1.071428em 0 0;
	padding: .714286em 1.42857em;
	-webkit-transition: .3s ease all;
	-moz-transition: .3s ease all;
	-o-transition: .3s ease all;
	transition: .3s ease all;
	border: none;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	background-color: #efefef;
}

#wc_newcompletion #memberpages p a:hover,
#wc_lostcompletion #memberpages p a:hover,
#wc_changepasscompletion #memberpages p a:hover {
	background-color: #ddd;
	text-decoration: none;
}

#wc_newcompletion .send a,
#wc_lostcompletion .send input,
#wc_lostcompletion .send a,
#wc_changepasscompletion .send a {
	display: inline-block;
	padding: .714286em 1.42857em;
	-webkit-transition: .3s ease all;
	-moz-transition: .3s ease all;
	-o-transition: .3s ease all;
	transition: .3s ease all;
	border: none;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	background-color: #efefef;
}

#wc_newcompletion #memberpages a:hover,
#wc_lostcompletion #memberpages input:hover,
#wc_lostcompletion #memberpages a:hover,
#wc_changepasscompletion #memberpages a:hover {
	background-color: #ddd;
	text-decoration: none;
}


/* =wc_member_page.php
-------------------------------------------------------------- */

/*---- h3 ---*/
#wc_member h3,
#wc_editmemberform h3 {
	margin: 1.42857em 0;
	padding: .357143em;
	border-bottom: 1px solid #ccc;
	color: #000;
	letter-spacing: .05em;
}

#wc_member h3 a,
#wc_editmemberform h3 a {
	padding: 0;
	background: none;
}

/*---- table ---*/
#memberinfo table {
	display: block;
	width: 100%;
	margin-bottom: .714286em;
	border: none;
	border-top: 1px solid #ccc;
	border-right: 1px solid #ccc;
	border-left: 1px solid #ccc;
}

#memberinfo table tbody,
#memberinfo table tr {
	display: block;
}

#memberinfo th {
	display: block;
	width: auto;
	padding: .357143em;
	border: none;
	border-bottom: 1px solid #ccc;
	background-color: #efefef;
	font-weight: normal;
}

#memberinfo td {
	display: block;
	padding: .357143em;
	border: none;
	border-bottom: 1px solid #ccc;
}

#memberinfo .space {
	display: none;
}

#memberinfo .button {
	text-align: center;
}

#memberinfo td img {
	max-width: 100%;
	height: auto;
}

/*---- member_submenu ---*/
.member_submenu {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	margin: 1.5em 0;
	text-align: center;
	gap: .714286em;
}

.member_submenu .gotoedit {
	margin: 0;
}

#memberpages .member_submenu li {
	margin-right: 0;
	list-style: none;
	text-align: center;
}

.member_submenu a {
	width: 100%;
}

#memberpages .header_explanation .gotoedit {
	text-align: center;
}

.member_submenu a,
#memberpages .header_explanation .gotoedit a {
	display: inline-block;
	padding: .714286em 1.42857em;
	-webkit-transition: .3s ease all;
	-moz-transition: .3s ease all;
	-o-transition: .3s ease all;
	transition: .3s ease all;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	background-color: #efefef;
	color: #262626;
}

.member_submenu a:hover,
#memberpages .header_explanation .gotoedit a:hover {
	background-color: #ddd;
	text-decoration: none;
}

/*---- history-area ---*/
#memberinfo .history-area table .aleft {
	text-align: left;
}

#memberinfo .history-area table .rightnum {
	text-align: right;
}

/*---- .retail + #history_head  ---*/
#memberinfo .retail tbody,
#memberinfo #history_head tbody {
	display: table-row-group;
}

#memberinfo .retail tr,
#memberinfo #history_head tr {
	display: table-row;
}

#memberinfo #history_head th,
#memberinfo .retail th {
	display: table-cell;
	padding: 5px 3px;
	border: 1px solid #ccc;
	background-color: #efefef;
	font-size: 11px;
	font-weight: normal;
	line-height: 1.2em;
	text-align: center;
	vertical-align: middle;
}

#memberinfo #history_head td,
#memberinfo .retail td {
	display: table-cell;
	padding: 5px;
	border: 1px solid #ccc;
	font-size: 11px;
	line-height: 1.2em;
	vertical-align: middle;
}

/*---- history_head ---*/
#memberinfo #history_head {
	display: table;
	width: 100%;
	margin-bottom: .8333em;
	border-collapse: collapse;
}

/*---- customer_form ---*/
#memberinfo .customer_form {
	margin-bottom: 0;
	border: none;
}

#memberinfo .customer_form th {
	width: auto;
	margin-bottom: .357143em;
	padding: 0;
	border: none;
	background: none;
	font-weight: bold;
}

#memberinfo .customer_form td {
	display: block;
	padding: 0;
	border: none;
	color: #666;
	font-size: 1em;
}

#memberinfo .customer_form tr.inp1 td {
	display: inline-block;
}

/*---- send ---*/
.member-page #memberedit .send input.top,
.member-page #memberinfo .send input.top,
.member-page #memberedit .send input.deletemember,
.member-page #memberinfo .send input.deletemember {
	-webkit-transition: .3s ease all;
	-moz-transition: .3s ease all;
	-o-transition: .3s ease all;
	transition: .3s ease all;
	background-color: #efefef;
	color: #262626;
}

.member-page #memberinfo .send input.deletemember {
	margin-top: .714286em;
}

.member-page #memberedit .send input.top:hover,
.member-page #memberinfo .send input.top:hover,
.member-page #memberedit .send input.deletemember:hover,
.member-page #memberinfo .send input.deletemember:hover {
	background-color: #ddd;
}


/*-------------------------------------------
　WCEX DL Seller　*/

#memberinfo #history_head td.retail a {
	padding: 0;
	background: none;
	color: #0f9abb;
}

#memberinfo #history_head td.retail a:hover {
	text-decoration: underline;
}

#memberinfo #history_head td.retail .continue_status {
	display: block;
	color: #008000;
	font-weight: bold;
	text-align: center;
}

/*---- retail ---*/
#memberinfo .retail {
	display: table;
	width: 100%;
	margin-bottom: 1.666666em;
	border-collapse: collapse;
}

#memberinfo .retail td.cartrownum,
#memberinfo .retail td.thumbnail {
	text-align: center;
}

#memberinfo .retail .quantity {
	white-space: nowrap;
}

#memberinfo table.retail .redownload_link {
	margin: .714286em 0;
	text-align: center;
}

#memberinfo table.retail .redownload_link a {
	padding: .714286em;
	-webkit-transition: .3s ease all;
	-moz-transition: .3s ease all;
	-o-transition: .3s ease all;
	transition: .3s ease all;
	border: none;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	background-color: #ff8c00;
	color: #fff;
	text-decoration: none;
}

#memberinfo table.retail .redownload_link a:hover {
	background-color: #ffa500;
}


/* =#wc_member_update_settlement
-------------------------------------------------------------- */

#wc_member_update_settlement h3 {
	margin: 1.53846em 0;
	padding: .384615em 0 .384615em .23076em;
	border-bottom: 1px solid #ccc;
	color: #000;
	letter-spacing: .05em;
}

#wc_member_update_settlement .customer_form td input {
	margin-right: .5em;
}

#wc_member_update_settlement td select {
	width: auto;
}

#wc_member_update_settlement td select:first-child {
	margin-right: 8px;
}

#wc_member_update_settlement td select:last-child {
	margin: 0 8px;
}

#wc_member_update_settlement .send {
	text-align: center;
}

#wc_member_update_settlement .send input:last-child {
	margin-top: 10px;
}

/* #zeus */
#wc_member_update_settlement #zeus select {
	margin-right: 8px;
}

#wc_member_update_settlement #zeus_registerd_card_area,
#wc_member_update_settlement #zeus_new_card_area {
	margin-left: 0;
}

#wc_member_update_settlement #zeus_registerd_card_area label {
	margin-top: 10px;
}


/* =wc_new_member_page.php + wc_customer.php
-------------------------------------------------------------- */
.agree_member_area {
	width: 90%;
	margin: 1.42857em auto 0;
}

.agree_member_area .at_exp_text {
	margin-bottom: .714286em;
}

.agree_member_area textarea {
	width: 100%;
	height: 150px;
	margin-bottom: .41666em;
	padding: .769231em;
	border: 1px solid #ccc;
	color: #565656;
	font-size: 13px;
	line-height: 180%;
	resize: none;
}

.agree_member_area .at_check_area {
	text-align: center;
}


/*---　Delivery Address in Cart　---*/

.delivery-address-book #delivery_address_book {
	display: block;
	margin-bottom: 15px;
}

table#delivery_table tr td.delivery-address-book a.new-delivery-address-button {
	float: none;
}

/* =wc_member_mda_page.php
-------------------------------------------------------------- */

.memb-delivery-address #new_destination {
	width: 100%;
	margin: 10px 0 0;
}

.memb-delivery-address .return_navi {
	position: initial;
	width: 100%;
	margin: 10px 0 0 0;
}

.memb-delivery-address .return_navi a {
	width: 100%;
	text-align: center;
}

.memb-delivery-address .return_navi a:hover {
	color: #fff;
}

.memb-delivery-address .destination_label {
	display: block;
}

.memb-delivery-address #destination {
	width: 100%;
	margin: 0;
}

.memb-delivery-address .msa_field {
	padding: 1.071428em 0;
	border-bottom: #efefef 2px solid;
	background: none;
}

.memb-delivery-address .msa_field label {
	display: block;
	width: 100%;
	margin-bottom: 4px;
	padding: 0;
}

.memb-delivery-address .msa_field textarea,
.memb-delivery-address .msa_field input[type="text"] {
	width: 100%;
	margin: 0;
}

.memb-delivery-address .msa_field .member_name {
	padding-left: 1em;
}

.memb-delivery-address .msa_field #msa_name,
.memb-delivery-address .msa_field #msa_name2,
.memb-delivery-address .msa_field #msa_furigana,
.memb-delivery-address .msa_field #msa_furigana2 {
	width: calc((100% / 2) - 3.5em);
	margin: 0 .5em;
	vertical-align: middle;
}

.memb-delivery-address .msa_field #msa_name2,
.memb-delivery-address .msa_field #msa_furigana2 {
	margin-right: 0;
}

.memb-delivery-address #zipcode {
	width: 8em;
	margin-right: 1em;
}

.memb-delivery-address .msa_field .search-zipcode {
	margin: 0;
}

.memb-delivery-address #msa_address1,
.memb-delivery-address #msa_address2,
.memb-delivery-address #msa_note {
	width: 100%;
}

.memb-delivery-address #msa_tel,
.memb-delivery-address #msa_fax {
	width: 43%;
}

.memb-delivery-address .msa_field select {
	margin: 0;
}

.memb-delivery-address .msa_message {
	margin-left: 1em;
}

.memb-delivery-address #name_message,
.memb-delivery-address #zip_message,
.memb-delivery-address #tel_message {
	display: block;
	margin-left: 0;
}

.memb-delivery-address #address1_message,
.memb-delivery-address #address2_message {
	margin-left: 0;
}


/* =wc_dlseller_auto_billing_page.php
-------------------------------------------------------------- */

#wc_member_auto_billing_info .auto_billing_contents .subscription_block,
#wc_member_auto_billing_info .auto_billing_contents dt,
#wc_member_auto_billing_info .auto_billing_contents dd,
#wc_member_auto_billing_info #memberinfo .auto_billing_contents table tbody {
	border-color: #ccc;
}

#wc_member_auto_billing_info .auto_billing_contents .subscription_block {
	border-radius: 0;
	color: initial;
}

/* dl */
#wc_member_auto_billing_info .auto_billing_contents dl {
	font-size: inherit;
}

#wc_member_auto_billing_info .auto_billing_contents dt {
	padding: .357em 2em .357em .714em;
	border-right: 1px solid #ccc;
	background-color: #efefef;
}

#wc_member_auto_billing_info .auto_billing_contents dd {
	padding: .357em .714em;
}

/* h2 */
#wc_member_auto_billing_info #memberinfo .data-table-wrap h2 {
	padding: .571em .714em;
	background-color: #efefef;
	color: inherit;
	font-size: inherit;
}

/* select */
#wc_member_auto_billing_info .auto_billing_contents .billing-year-select {
	top: .357em;
	right: .714em;
	font-size: inherit;
}

#wc_member_auto_billing_info .auto_billing_contents .billing-year-select select {
	padding: .357em 2.143em .357em .357em;
	border-radius: 0;
}

/* table */
#wc_member_auto_billing_info #memberinfo .auto_billing_contents table {
	font-size: inherit;
}

#wc_member_auto_billing_info #memberinfo .auto_billing_contents table tbody td {
	padding: .357em .714em;
	line-height: 1.4;
}

#wc_member_auto_billing_info #memberinfo .auto_billing_contents table tbody td::before {
	margin-bottom: 0;
	font-size: .857em;
}

#wc_member_auto_billing_info #memberinfo .auto_billing_contents table tbody td a {
	margin: 0 .357em 0 0;
	padding: 0;
	border-radius: 0;
	background: none;
	color: #0f9abb;
}

#wc_member_auto_billing_info #memberinfo .auto_billing_contents table tbody td a:hover {
	background: none;
	color: #0f9abb;
	text-decoration: underline;
}


/**
 * 16.1 Mobile Large 620px
 */
@media screen and (min-width: 38.75em) {
	/* =item-single.php
	-------------------------------------------------------------- */
	.item_page_title {
		margin: 0 0 2.22222em;
		font-size: 1.285714em;
		line-height: 1.285714em;
	}

	#itempage #img-box {
		width: 40%;
		margin-bottom: 0;
		float: left;
	}

	#img-box .itemsubimg a {
		width: 30.333%;
	}

	.detail-box {
		width: 55%;
		float: right;
	}

	#itempage .item-info {
		clear: both;
	}

	.item-info .skuform {
		margin: 0 0 2.85714em;
	}

	.item-info .skubutton {
		padding: 1.071428em 2.142856em;
	}

	.item-info .field {
		text-align: right;
	}

	.item-info .zaikostatus,
	.item-info .field_price {
		margin-bottom: .357143em;
		float: none;
	}

	/* ---- .tax_inc_block ---- */

	.item-info .tax_inc_block {
		margin: -8px 0 10px;
		clear: both;
		text-align: right;
	}

	.assistance_item li {
		width: 22%;
		margin-right: 4%;
		padding: 1.42857em 0 0;
	}

	.assistance_item li:nth-child(even) {
		margin-right: 4%;
	}

	.assistance_item li:nth-child(4n) {
		margin-right: 0;
	}

	/* =cart
	-------------------------------------------------------------- */
	.cart_page_title {
		margin: 0 0 2.22222em;
		font-size: 1.285714em;
		line-height: 1.285714em;
	}

	div.cart_navi li {
		width: 24.5%;
		font-size: 1em;
	}

	#cart_table .thumbnail {
		display: table-cell;
	}

	/* =wc_cart_page.php
	-------------------------------------------------------------- */
	.ui-dialog {
		width: 400px !important;
	}

	/* =wc_confirm_page.php
	-------------------------------------------------------------- */
	#wc_confirm .send input#back_button {
		margin-bottom: 0;
	}

	/* =member
	-------------------------------------------------------------- */
	.member_page_title {
		margin: 0 0 2.22222em;
		font-size: 1.285714em;
		line-height: 1.285714em;
	}

	#wc_changepassword .loginbox,
	#wc_lostmemberpassword .loginbox,
	#wc_lostmemberpassword .error_message {
		width: 50%;
	}

	#wc_login .loginbox,
	#wc_changepassword .loginbox,
	#wc_lostmemberpassword .loginbox {
		margin: 0 auto;
		padding: .714286em 2.14285em;
		font-size: 1em;
	}

	.loginbox .submit,
	#wc_lostmemberpassword #nav a {
		font-size: 1em;
	}

	#wc_newcompletion #memberpages p a,
	#wc_lostcompletion #memberpages p a,
	#wc_changepasscompletion #memberpages p a {
		margin: 1.0714em 0 0;
		padding: .714286em 1.42857em;
		font-size: 1em;
	}

	/* =wc_member_page.php
	-------------------------------------------------------------- */
	.member_submenu a {
		width: auto;
	}

	.member-page .send {
		padding-top: 1.42857em;
	}

	#memberinfo table {
		display: table;
		font-size: 1em;
		font-weight: normal;
	}

	#memberinfo table tbody {
		display: table-row-group;
	}

	#memberinfo table tr {
		display: table-row;
	}

	#memberinfo th {
		display: table-cell;
		border: 1px solid #ccc;
		font-weight: bold;
	}

	#memberinfo td {
		display: table-cell;
		border: 1px solid #ccc;
	}

	#memberinfo .space {
		display: table-cell;
	}

	#memberinfo #history_head {
		font-size: 1em;
	}

	#memberinfo #history_head th {
		font-size: 1em;
		white-space: nowrap;
	}

	#memberinfo #history_head td,
	#memberinfo .retail th,
	#memberinfo .retail td {
		padding: .35715em;
		font-size: 1em;
	}

	.member-page #memberinfo .send input.editmember {
		margin: 0;
	}

	.member-page #memberinfo .send input.deletemember {
		margin-top: 0;
	}

	#memberinfo .customer_form th {
		display: table-cell;
		width: 30%;
		padding: .35715em 1.0714em;
		border: 1px solid #ccc;
		background-color: #efefef;
		vertical-align: middle;
	}

	#memberinfo .customer_form td {
		display: table-cell;
		padding: .35715em 1.0714em;
		border: 1px solid #e0e0e0;
	}

	#memberinfo .customer_form tr.inp1 td {
		display: table-cell;
	}


	/*---　Delivery Address in Cart　---*/

	.delivery-address-book #delivery_address_book {
		display: inline-block;
		margin: 0 1em 0 0;
	}

	table#delivery_table tr td.delivery-address-book a.new-delivery-address-button {
		float: right;
	}

	/* =wc_dlseller_auto_billing_page.php
	-------------------------------------------------------------- */

	#wc_member_auto_billing_info .auto_billing_contents .subscription_block {
		margin-bottom: 1.6em;
	}

	#wc_member_auto_billing_info .auto_billing_contents .subscription_block:last-child {
		margin-bottom: 0;
	}

	/* dl */
	#wc_member_auto_billing_info .auto_billing_contents dl {
		grid-template-columns: repeat(4, 1fr);
	}

	#wc_member_auto_billing_info .auto_billing_contents dl::after {
		background-color: #ccc;
	}

	#wc_member_auto_billing_info .auto_billing_contents dt {
		padding: .714em 2em .714em .714em;
		font-weight: bold;
	}

	#wc_member_auto_billing_info .auto_billing_contents dd {
		padding: .714em;
	}

	#wc_member_auto_billing_info .auto_billing_contents dd:nth-of-type(odd) {
		border-color: #ccc;
	}

	/* h2 */
	#wc_member_auto_billing_info #memberinfo .data-table-wrap h2 {
		padding: 1.428em .714em .714em;
		background: none;
		color: inherit;
	}

	/* select */
	#wc_member_auto_billing_info .auto_billing_contents .billing-year-select {
		top: .714em;
	}

	#wc_member_auto_billing_info .auto_billing_contents .billing-year-select select {
		padding: .571em 2.143em .571em .571em;
	}

	/* table */
	#wc_member_auto_billing_info #memberinfo .auto_billing_contents table {
		width: calc(100% - 1.428em);
		margin: 0 auto 1em;
	}

	#wc_member_auto_billing_info #memberinfo .auto_billing_contents table thead {
		display: table-header-group;
	}

	#wc_member_auto_billing_info #memberinfo .auto_billing_contents table tbody tr {
		display: table-row;
	}

	#wc_member_auto_billing_info #memberinfo .auto_billing_contents table thead th,
	#wc_member_auto_billing_info #memberinfo .auto_billing_contents table tbody td,
	#wc_member_auto_billing_info #memberinfo .auto_billing_contents table tbody td:last-child {
		border: 1px solid #ccc;
	}

	#wc_member_auto_billing_info #memberinfo .auto_billing_contents table thead th,
	#wc_member_auto_billing_info #memberinfo .auto_billing_contents table tbody td {
		padding: .357em .714em;
		text-align: center;
	}

	#wc_member_auto_billing_info #memberinfo .auto_billing_contents table tbody td {
		display: table-cell;
	}

	#wc_member_auto_billing_info #memberinfo .auto_billing_contents table tbody td::before {
		display: none;
	}

	#wc_member_auto_billing_info #memberinfo .auto_billing_contents p.nodata {
		padding: .5em 1em 1.5em;
	}

	/*---　#wc_member_update_settlement　---*/

	#wc_member_update_settlement .send {
		margin-top: 1.5em;
	}

	#wc_member_update_settlement .send input:last-child {
		margin-top: 0;
	}

	/* #zeus */
	#wc_member_update_settlement #zeus th {
		vertical-align: text-top;
	}
}


/**
 * 16.2 Tablet Small 740px
 */
@media screen and (min-width: 46.25em) {
	/* =item-single.php
	-------------------------------------------------------------- */

	.item-info .item-option dt,
	.item-info .itemGpExp dt {
		display: inline-block;
		width: 25%;
		margin-bottom: .714286em;
		vertical-align: top;
	}

	.item-info .item-option dd,
	.item-info .itemGpExp dd {
		display: inline-block;
		width: 65%;
		margin-bottom: .714286em;
		padding-left: 3%;
		border-left: 1px solid #ccc;
	}

	.item-info .field {
		padding-bottom: 0;
	}


	/* =cart
	-------------------------------------------------------------- */

	/*--- cart_table ---*/
	.cart-page .send {
		padding-top: 1.42857em;
	}

	#cart_table .stock {
		display: table-cell;
		white-space: nowrap;
	}

	/*---- customer_form ---*/
	.customer_form {
		margin-bottom: 1.071428em;
	}

	.customer_form tr {
		display: table-row;
		margin-bottom: 0;
		padding: 0;
		border: none;
	}

	.customer_form th {
		display: table-cell;
		width: 25%;
		padding: .357143em 1.071428em;
		border: 1px solid #ccc;
		background-color: #f6f6f6;
		vertical-align: middle;
	}

	.customer_form.settlement_form {
		margin-bottom: 1.071428em;
	}

	.customer_form.settlement_form th {
		width: 30%;
	}


	.customer_form td {
		display: table-cell;
		padding: .357143em 1.071428em;
		border: 1px solid #ccc;
		color: #6e6e6e;
	}

	.customer_form tr.inp1 td {
		display: table-cell;
		width: auto;
		margin-bottom: 0;
	}

	.customer_form input[type="password"] {
		display: inline-block;
	}

	/* =wc_customer_page.php
	-------------------------------------------------------------- */

	/*--- Paygent Style ---*/

	#paygent_card_form td {
		padding: 1em;
	}

	.customer_form .paygent_card_split_count_area {
		margin-bottom: 0;
	}

	.customer_form td .paygent_card_split_count_area:last-child {
		margin-top: 2em;
	}

	/*--- SBPS Style ---*/
	#sbps_form td {
		padding: 1em;
	}


	/* =wc_confirm_page.php
	-------------------------------------------------------------- */

	/*---- confirm_table ---*/
	#confirm_table th {
		display: table-cell;
		width: 30%;
		padding: .357143em 1.071428em;
		border: 1px solid #ccc;
		background-color: #efefef;
		vertical-align: middle;
	}

	#confirm_table td {
		display: table-cell;
		padding: .357143em 1.071428em;
		border: 1px solid #ccc;
	}

	#confirm_table .ttl h3 {
		margin: 0;
		padding: 0;
		background: none;
	}


	/* =wc_new_member_page.php + wc_customer.php
	-------------------------------------------------------------- */

	.agree_member_area {
		width: 70%;
		margin: 1.42857em auto 0;
	}


	/* =wc_member_mda_page.php
	-------------------------------------------------------------- */

	.memb-delivery-address .msa_total {
		display: flex;
		align-items: center;
	}

	.memb-delivery-address #new_destination {
		width: auto;
		margin: 0 0 0 1em;
	}

	.memb-delivery-address .return_navi {
		position: absolute;
		width: auto;
		margin: 0;
	}

	.memb-delivery-address #destination {
		width: auto;
		margin: 0 0 0 1em;
	}

	.memb-delivery-address .msa_operation {
		display: flex;
		align-items: center;
	}

	.memb-delivery-address .msa_field {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		border-bottom: none;
	}

	.memb-delivery-address .msa_field label {
		width: 25%;
		margin: 0;
	}

	.memb-delivery-address .msa_field textarea,
	.memb-delivery-address .msa_field input[type="text"],
	.memb-delivery-address #msa_address1,
	.memb-delivery-address #msa_address2,
	.memb-delivery-address #msa_note {
		width: 75%;
	}

	.memb-delivery-address .msa_field #msa_name,
	.memb-delivery-address .msa_field #msa_name2,
	.memb-delivery-address .msa_field #msa_furigana,
	.memb-delivery-address .msa_field #msa_furigana2 {
		width: calc((75% / 2) - 5em);
	}

	.memb-delivery-address #msa_tel,
	.memb-delivery-address #msa_fax {
		width: 30%;
	}

	.memb-delivery-address #name_message,
	.memb-delivery-address #address1_message,
	.memb-delivery-address #address2_message {
		display: block;
		margin-left: 25%;
	}

	.memb-delivery-address #zip_message,
	.memb-delivery-address #tel_message {
		display: inline;
		margin-left: 1em;
	}
}


/**
 * 16.3 Tablet Large 880px
 */
@media screen and (min-width: 55em) {
	/* =cart
	-------------------------------------------------------------- */
	#cart_table .num {
		display: table-cell;
	}

	/* =wc_login_page.php
	-------------------------------------------------------------- */
	#wc_login .loginbox {
		width: 50%;
	}

	/* =wc_delivery_page.php
	-------------------------------------------------------------- */
	#wc_delivery .customer_form select {
		max-width: 500px;
	}
}


/**
 * 16.4 Desktop Small 1000px
 */
@media screen and (min-width: 62.5em) {
	/* =item-single.php
	-------------------------------------------------------------- */

	/*---- imgblock ---*/
	#itempage #img-box {
		width: 300px;
		margin-bottom: 2.142856em;
	}

	#itempage .item-description {
		margin-bottom: 2.142856em;
	}

	/*---- item-option ---*/
	.item-info .item-option select[multiple] {
		width: 100%;
	}

	/*---- assistance_item ---*/
	.assistance_item h3 {
		margin: 2.142856em 0 0;
	}

	/* =member
	-------------------------------------------------------------- */
	#memberinfo h3 {
		margin: 2.142856em 0 1.42857em;
		padding: 0;
		background: none;
		font-size: 1em;
	}

	#memberinfo th {
		padding: .714286em;
	}

	#memberinfo td {
		padding: .357143em 1.071428em;
	}

	/*---- history-area ---*/
	#memberinfo .history-area {
		max-height: 500px;
		margin-bottom: 2.85714em;
		padding: 1.42857em 1.42857em 0 0;
		overflow-y: scroll;
		border-top: 1px solid #ddd;
		border-bottom: 1px solid #ddd;
	}

	/*--- wc_login  ---*/
	#wc_login .loginbox .new-entry #nav a,
	#wc_member .loginbox .new-entry #nav a,
	#wc_lostmemberpassword #member_login,
	#wc_lostmemberpassword #nav a,
	#wc_newcompletion #memberpages p a,
	#wc_lostcompletion #memberpages p a,
	#wc_changepasscompletion #memberpages p a,
	#wc_newcompletion .send a,
	#wc_lostcompletion .send input,
	#wc_lostcompletion .send a,
	#wc_changepasscompletion .send a {
		padding: 1.071428em 2.14286em;
	}
}

/* ==========================================================================
   oikawa78 購入フロー意匠（Phase 3 チャンク(5)・ISSUE-20260713-cart-confirm-styling）
   方針: CSS優先。Welcartのフォーム契約（数量更新/削除/支払・配送選択/住所検証/JS）は
   一切変更せず、既定マークアップの見た目だけをメイン意匠（.oks-* / --f_* トークン）へ寄せる。
   スコープ: 本ファイルは全ページ読込のため、必ずカート系セレクタ（.cart-page / #cart_table /
   #confirm_table / #cart_completion / .customer_form 等）配下に限定する（他ページ非波及）。
   ステージ①（共通トーン＋カート＋確認）2026/07/13
   ========================================================================== */

/* --- コンテナ（.oks と同じ最大幅・中央寄せ・下余白） ---
   注意：このコンテナは #content 要素そのもの（<div id="content" class="cart-page">）。
   親テーマ style.css の #content{padding} と #main.one-column #content{padding:0;width:100%;margin:0}（≥992px）は
   ID指定で詳細度が高く、.cart-page（クラス）では負けて padding-top が効かない（本文が固定ヘッダーに潜り込む）。
   →固定ヘッダー分のオフセットは #content を含む同等以上の詳細度で指定する。 2026/07/13 */
#main #content.cart-page {
	max-width: 1177px;
	margin: 0 auto;
	/* 固定ヘッダー（モバイル82px）分の padding-top を確保。#main 上マージンは
	   :has(#content.cart-page) で 0（style.css）＝.oks と同じ肩代わり方式 */
	padding: 90px 16px 80px;
	color: var(--f_dark);
}
@media (min-width: 992px) {
	/* PC幅は #main.one-column #content{padding:0}（ID2クラス1）を確実に上回る詳細度で。ヘッダー127px分 */
	#main.one-column #content.cart-page {
		margin: 0 auto;
		padding: 135px 16px 80px; /* .oks（style.css:184）と同値 */
	}
}
/* 見出しは決済関連の全ページ（カート/お客様情報/配送・支払方法/内容確認/完了/エラー）で
   中央寄せに統一する（Webmaster決定 2026-07-16。当初は完了/エラーのみ中央だったが全ページへ拡張）。
   見出しの下は1行分の余白を空けてステップナビと分ける（20px → 54px ≒ 見出し1行分を追加）。 */
.cart-page .cart_page_title {
	font-size: 2.4rem;
	font-weight: 700;
	line-height: 1.4;
	margin: 8px 0 54px;
	text-align: center;
}
/* 追加：カート系ページタイトル（カート/お客様情報/配送・支払方法/内容確認/完了/エラー）の
   先頭にカートアイコン。ヘッダーのカートリンクと同じメインサイトの /common/img/icon/cart-fill-bk.svg
   を使用（store は全環境でメインサイトと同一ドキュメントルート配下＝ルート相対で参照可）。
   完了/エラーページ（タイトル中央寄せ）にも付ける＝Webmaster決定。
   ISSUE-20260716-store-ui-refinements 2026/07/16 */
.cart-page .cart_page_title::before {
	content: "";
	display: inline-block;
	width: 0.95em;
	height: 0.95em;
	margin-right: 0.3em;
	vertical-align: -0.08em;
	background: url("/common/img/icon/cart-fill-bk.svg") center / contain no-repeat;
}

/* --- ステップナビ（1.Cart → 4.Confirm） --- */
.cart-page .cart_navi ul {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0 0 24px;
	padding: 0;
	list-style: none;
}
.cart-page .cart_navi li {
	flex: 1 1 0;
	min-width: 120px;
	text-align: center;
	font-size: 1.3rem;
	font-weight: 700;
	color: var(--f_darkgray);
	background: var(--f_lightgray);
	border-radius: 999px;
	padding: 8px 10px;
	line-height: 1.3;
}
.cart-page .cart_navi li.current {
	color: #fff;
	background: var(--f_main-deep);
}
/* 既定 .cart_navi li::before / ::after は skew した矩形で「矢羽根」装飾を作る（li.current は #161616 の黒）。
   pill 化するとステップ間に黒／灰の矢羽根ノイズとして残るため打ち消す。.current の擬似要素は
   既定の詳細度（div.cart_navi li.current::before）が高いので .current も明示して確実に上回る。 2026/07/13 */
.cart-page .cart_navi li::before,
.cart-page .cart_navi li::after,
.cart-page .cart_navi li.current::before,
.cart-page .cart_navi li.current::after {
	content: none;
	display: none;
}

/* --- エラーメッセージ（中身がある時だけ見えるよう空でも無害） --- */
.cart-page .error_message:not(:empty) {
	color: var(--f_red);
	font-weight: 700;
	margin: 12px 0;
}

/* --- ボタン（.send 内の submit / a を .oks-btn 相当に） --- */
.cart-page .send {
	margin: 24px 0 0;
	text-align: center;
}
.cart-page .send input[type="submit"],
.cart-page .send input[type="button"],
.cart-page .send a,
.cart-page .to_confirm_button,
.cart-page #purchase_button,
.cart-page .purchase_button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: .4em;
	font-family: var(--f_family_body);
	font-weight: 700;
	font-size: 1.7rem;
	line-height: 1.2;
	border: none;
	border-radius: 15px;
	padding: 15px 34px;
	cursor: pointer;
	background: var(--f_main-deep);
	color: #fff;
	text-decoration: none;
	transition: .15s;
}
.cart-page .send input[type="submit"]:hover,
.cart-page .send a:hover {
	filter: brightness(1.05);
	color: #fff;
}
/* 戻る系は淡色の副次ボタンに */
.cart-page .back_to_customer_button,
.cart-page .send input.back_to_customer_button {
	background: var(--f_lightgray);
	color: var(--f_dark);
}

/* --- 数量更新の案内＋ボタン（.upbutton）は非表示 ---
   当店は原則1点もの＝数量変更は行わないため、「数量を変更した場合は更新ボタンを…」の
   案内と［数量更新］ボタンを隠す。数量入力自体は残り、レジへ進む時にフォーム送信されるので
   購入フローの契約は不変（更新ボタンは表示中の小計再計算用で、無くても成立する）。 2026/07/14 */
.cart-page .upbutton {
	display: none;
}

/* ==========================================================================
   カート/確認テーブル（#cart_table・#confirm_table 共通の器）
   ========================================================================== */
.cart-page #cart_table,
.cart-page #confirm_table {
	width: 100%;
	border-collapse: collapse;
	background: #fff;
	border-radius: 16px;
	overflow: hidden;
	/* 枠線は box-shadow の実線リング（0 blur / 1.5px spread）で描く。
	   border-collapse:collapse のテーブルに overflow:hidden+border-radius を併用すると通常の
	   border は角丸クリップに削られ実ブラウザでほぼ見えないため、確実に出る box-shadow を使う。
	   角丸(16px)に沿ってリングが描かれ、overflow:hidden でも消えない。2026/07/14 */
	box-shadow: 0 0 0 1px #e8e1d1, 0 3px 13px #0000000d;
	margin: 0 0 20px;
}
.cart-page #cart_table thead th {
	background: var(--f_lightgray);
	color: var(--f_darkgray);
	font-size: 1.3rem;
	font-weight: 700;
	padding: 12px 10px;
	text-align: center;
}
.cart-page #cart_table tbody td {
	padding: 16px 10px;
	border-top: 1px solid #eee;
	vertical-align: middle;
	font-size: 1.4rem;
	text-align: center;
}
.cart-page #cart_table td.productname {
	text-align: left;
	font-weight: 700;
	line-height: 1.5;
}
.cart-page #cart_table td.thumbnail img {
	width: 64px;
	height: 64px;
	object-fit: cover;
	border-radius: 10px;
	border: 1px solid #eee2c8;
}
.cart-page #cart_table td.unitprice,
.cart-page #cart_table td.subtotal {
	font-family: var(--f_family_en);
	font-weight: 700;
	white-space: nowrap;
}
/* No. と 在庫 列はモック準拠で非表示（thead/tbody/tfoot 全行に存在＝桁ズレしない） */
.cart-page #cart_table .num,
.cart-page #cart_table .stock {
	display: none;
}
/* 数量入力（カート・複数数量運用時のみ意味を持つ。1点もの主体でも体裁を整える） */
.cart-page #cart_table td.quantity input.quantity {
	width: 4em;
	text-align: center;
	font-family: var(--f_family_en);
	font-size: 1.4rem;
	padding: 6px 4px;
	border: 2px solid var(--f_gray);
	border-radius: 8px;
}
/* 削除ボタン（.action の delButton＝<input type="submit" value="削除">）をゴミ箱アイコンに。
   value のテキストは font-size:0＋color:transparent で視覚的に隠す（value="削除" は残るので
   スクリーンリーダーはボタン名を「削除」と読む＝アクセシビリティ維持）。アイコンは背景SVG。 2026/07/14 */
.cart-page #cart_table td.action .delButton {
	width: 34px;
	height: 34px;
	padding: 0;
	font-size: 0;
	color: transparent;
	border: none;
	border-radius: 8px;
	cursor: pointer;
	background: transparent url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23838383' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><path d='M4 7h16'/><path d='M10 11v6M14 11v6'/><path d='M6 7l1 13a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1l1-13'/><path d='M9 7V4h6v3'/></svg>") center / 20px no-repeat;
	transition: .15s;
}
.cart-page #cart_table td.action .delButton:hover {
	background-color: #faeceb;
	background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fa706c' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><path d='M4 7h16'/><path d='M10 11v6M14 11v6'/><path d='M6 7l1 13a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1l1-13'/><path d='M9 7V4h6v3'/></svg>");
}

/* カートセル内の現金特価併記（プラグイン Front\PriceDisplay 出力・.oks-cash-price）を
   セル文脈ではコンパクトな1行に（style.css の基底 block 表示を上書き＝高特異度で勝つ） */
.cart-page #cart_table .oks-cash-price {
	display: block;
	margin-top: 4px;
	color: var(--f_red);
	font-size: 1.2rem;
	line-height: 1.3;
}
.cart-page #cart_table .oks-cash-price__label {
	display: inline;
	font-size: inherit;
}
/* 現金特価は「現金特価」ラベルの下に金額を改行して表示（label=inline のあと amount=block で改行）2026/07/14 */
.cart-page #cart_table .oks-cash-price__amount {
	display: block;
	margin-left: 0;
	font-size: inherit;
	font-family: var(--f_family_en);
}

/* --- 合計（tfoot）＝右寄せのサマリ調。最終合計を強調 --- */
.cart-page #cart_table tfoot th,
.cart-page #cart_table tfoot td {
	padding: 10px 10px;
	font-size: 1.4rem;
	border-top: 1px solid #eee;
}
.cart-page #cart_table tfoot .aright {
	text-align: right;
	color: var(--f_darkgray);
	font-weight: 700;
}
.cart-page #cart_table tfoot .amount {
	text-align: right;
	font-family: var(--f_family_en);
	font-weight: 700;
	white-space: nowrap;
}
/* 最終行（Total Amount）＝破線区切り＋大きめ＋赤の合計額 */
.cart-page #cart_table tfoot tr:last-child th {
	border-top: dashed 2px var(--f_main);
	font-size: 1.8rem;
}
/* 「商品合計（税込）」ラベルはもう少しだけ小さく（金額 .amount は 1.8rem のまま強調）2026/07/14 */
.cart-page #cart_table tfoot tr:last-child .aright {
	font-size: 1.5rem;
}
.cart-page #cart_table tfoot tr:last-child .amount {
	color: var(--f_red);
	font-size: 1.8rem;
}
.cart-page .currency_code {
	font-size: 1.2rem;
	color: var(--f_gray);
	text-align: right;
	margin: 4px 0 0;
}
.cart-page .no_cart {
	background: #fff;
	border-radius: 16px;
	box-shadow: 0 3px 13px #0000000d;
	padding: 40px 20px;
	text-align: center;
	font-weight: 700;
	color: var(--f_darkgray);
}

/* ==========================================================================
   内容確認ページ 固有
   ========================================================================== */
/* 現金特価が適用される時（注記 .oks-cash-note が #cart 内に出力される時）だけ、
   確認テーブルの単価・小計を赤字にする。カード決済（注記なし）では通常色のまま。
   ※ #cart 内に #cart_table と .oks-cash-note が同居する確認テンプレの構造を利用（:has） */
.cart-page #cart:has(.oks-cash-note) #cart_table tbody td.unitprice,
.cart-page #cart:has(.oks-cash-note) #cart_table tbody td.subtotal {
	color: var(--f_red);
}

/* 現金特価注記をモックのバナー（薄青地・⚠）に格上げ（基底 .oks-cash-note は style.css） */
.cart-page .oks-cash-note {
	background: var(--f_lightblue);
	color: var(--f_blue);
	font-weight: 700;
	font-size: 1.4rem;
	line-height: 1.6;
	border-radius: 12px;
	padding: 12px 16px;
	margin: 14px 0;
}

/* 確認の「お届け先」「お支払い・配送」2カラムボックス
   （確認テンプレの表示専用マークアップ改変＝.oks-confirm-grid > table.oks-confirm-box.oks-box） */
.cart-page .oks-confirm-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
	margin: 20px 0;
}
.cart-page .oks-confirm-box {
	width: 100%;
	border-collapse: collapse;
	background: #fff;
	border-radius: 16px;
	box-shadow: 0 3px 13px #0000000d;
	overflow: hidden;
}
.cart-page .oks-confirm-box .ttl h3 {
	margin: 0;
	padding: 14px 18px;
	font-size: 1.6rem;
	font-weight: 700;
	color: var(--f_main-deep);
	background: var(--f_lightgray);
}
.cart-page .oks-confirm-box th,
.cart-page .oks-confirm-box td {
	padding: 12px 18px;
	font-size: 1.4rem;
	vertical-align: top;
	border-top: 1px solid #eee;
	text-align: left;
}
.cart-page .oks-confirm-box th {
	white-space: nowrap;
	color: var(--f_darkgray);
	font-weight: 700;
	width: 8em;
}

/* ==========================================================================
   完了ページ / エラーページ（購入フローのターミナル＝終着ページ）
   どちらも .cart_navi を持たず、中央寄せカードで結果を伝える。 2026/07/14 ステージ②
   ========================================================================== */
/* 見出しの中央寄せは決済関連の全ページに統一（上部の .cart-page .cart_page_title に集約）。
   2026-07-14 は完了/エラーのみ :has() で中央寄せしていたが、2026-07-16 に全ページ中央へ拡張したため
   ここでの個別指定は不要になった。 */

/* --- 完了ページ --- */
.cart-page #cart_completion {
	max-width: 640px;
	margin: 0 auto;
	background: #fff;
	border-radius: 16px;
	box-shadow: 0 3px 13px #0000000d;
	padding: 36px 28px;
	text-align: center;
}
.cart-page #cart_completion h3 {
	font-size: 2rem;
	font-weight: 700;
	color: var(--f_main-deep);
	margin: 0 0 14px;
}
/* 成功の視覚（チェックマークの円バッジ）を見出し上に付与。マークアップ不変・CSSのみ。
   アイコンはサイト導線ボタン（.oks-svc）と同じ白チェックSVGでトーンを揃える。 2026/07/14 */
.cart-page #cart_completion h3::before {
	content: "";
	display: block;
	width: 60px;
	height: 60px;
	margin: 0 auto 16px;
	border-radius: 50%;
	background: var(--f_main-deep) center/48% no-repeat;
	background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M5 12.5l4.5 4.5L19 7' stroke='white' stroke-width='3' fill='none' stroke-linecap='round' stroke-linejoin='round'/></svg>");
}
.cart-page #cart_completion .header_explanation {
	text-align: center;
	margin: 0 0 8px;
}
/* 完了ページの「仮注文」告知を枠付きカラウトに（カード決済失敗の .oks-error-cardnote と
   同じ枠スタイルだが、色は注意色=赤ではなく情報色=青系）。告知本文は Welcart「完了ページ説明文（上）」
   設定内に <div class="oks-info-note"> で入る。長文は左寄せ・見出し <b> を情報色で強調。 2026/07/14 */
.cart-page .oks-info-note {
	max-width: 560px;
	margin: 18px auto 0;
	padding: 14px 18px;
	background: var(--f_lightblue);
	border: 1.5px solid var(--f_blue);
	border-radius: 12px;
	font-size: 1.35rem;
	font-weight: 700;
	line-height: 1.85;
	color: var(--f_dark);
	text-align: left;
}
.cart-page .oks-info-note b {
	color: var(--f_blue);
}
/* 追加：完了ページ「トップページへ戻る」を主ボタン（オレンジ）に（ISSUE-20260718 A-3）。
   ベース移植CSSの #wc_ordercompletion .send a（灰色 #efefef・ID詳細度）が
   .cart-page .send a の主ボタン色に勝っていたため、ID込みのセレクタで上書きする。 2026/07/19 */
#wc_ordercompletion .send a.back_to_top_button {
	background: var(--f_main-deep);
	color: #fff;
	font-weight: 700;
	font-size: 1.7rem;
	border-radius: 15px;
	padding: 15px 34px;
}
#wc_ordercompletion .send a.back_to_top_button:hover {
	background: var(--f_main-deep);
	filter: brightness(1.05);
	color: #fff;
	text-decoration: none;
}

/* --- エラーページ（#error-page＝注文未完了）。完了ページと対称のカード＋控えめな警告アクセント --- */
.cart-page #error-page {
	max-width: 640px;
	margin: 0 auto;
	background: #fff;
	border-radius: 16px;
	box-shadow: 0 3px 13px #0000000d;
	padding: 36px 28px;
	text-align: center;
	font-size: 1.5rem;
	line-height: 1.9;
	color: var(--f_dark);
}
/* 警告アイコン（円バッジ）＝エラーと分かる控えめな赤系アクセント（トーンは崩さない）。 2026/07/14 */
.cart-page #error-page::before {
	content: "";
	display: block;
	width: 60px;
	height: 60px;
	margin: 0 auto 16px;
	border-radius: 50%;
	background: var(--f_red) center/44% no-repeat;
	background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 6.5v7.5' stroke='white' stroke-width='3' fill='none' stroke-linecap='round'/><circle cx='12' cy='18' r='1.7' fill='white'/></svg>");
}
.cart-page #error-page .post {
	margin: 0;
}
/* 決済代行（ゼウス）がカード決済失敗時に注入するエラー詳細ブロック（.support_box）。
   「エラーコード：XXXX」＋具体的な失敗理由＋「もう一度決済を行う」再試行リンク＋ゼウスの
   カスタマーサポート連絡先が <br> 区切りのテキストで入る。既定は未装飾（素のテキスト）なので、
   余白・行間を整え、唯一の復帰導線である再試行リンクを主色ボタンにする。
   ※ 内容の出力はプラグイン(paymentZeus)側。ここでは見た目のみ（内容・リンク契約は不変）。 2026/07/14 */
.cart-page #error-page .support_box {
	margin-top: 6px;
	font-size: 1.4rem;
	line-height: 2;
	color: var(--f_dark);
}
.cart-page #error-page .support_box a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin: 12px 0;
	padding: 12px 28px;
	font-weight: 700;
	font-size: 1.6rem;
	color: #fff;
	background: var(--f_main-deep);
	border-radius: 15px;
	text-decoration: none;
}
.cart-page #error-page .support_box a:hover {
	filter: brightness(1.05);
	color: #fff;
}
/* 「※カード決済の可否は当店ではお答えできない…」の注意書き（functions.php のフィルタが
   .support_box の下に出力）。重要案内なので赤系 tint のカード枠で目立たせ、長文は左寄せで読みやすく。 2026/07/14 */
.cart-page #error-page .oks-error-cardnote {
	max-width: 520px;
	margin: 22px auto 0;
	padding: 14px 18px;
	background: #fff1ef;
	border: 1.5px solid var(--f_red);
	border-radius: 12px;
	font-size: 1.35rem;
	font-weight: 700;
	line-height: 1.85;
	color: var(--f_dark);
	text-align: left;
}
/* 汎用フォールバックの既定メッセージ（フィルタで <p> 化）＝ボタンとの間隔だけ調整 */
.cart-page #error-page .oks-error-generic {
	margin: 0 0 6px;
}

/* ==========================================================================
   説明文（.header_explanation / .footer_explanation）
   ========================================================================== */
/* バグ修正：メインサイト base.css の img { width:100%; height:auto; object-fit:contain }
   が説明文中の画像（例 3d_secure.png・HTMLで width="420" 指定）を全幅に引き伸ばしていた。
   カート内のコンテンツ画像は HTML の指定サイズを尊重する（width:auto で属性幅に戻す）。
   カートのサムネイル（#cart_table td.thumbnail img）は高特異度の別ルールで 64px を維持するため
   本ルールでは戻らない。説明文の出力先（header/footer/支払説明）に依存しないよう一律で当てる。2026/07/13 */
.cart-page img {
	width: auto;
	max-width: 100%;
	height: auto;
	object-fit: initial;
}
/* 決済セキュリティのロゴ等（3d_secure.png＝原寸840pxのレティナ2x画像・HTMLで width="420" 指定）は
   base.css の img{width:100%} で属性が無効化され原寸で出てしまう。CSSは width 属性値を読めないため、
   説明文・支払説明の画像は最大420px（＝指定の表示幅）でキャップして原寸化を防ぐ。
   width:auto と併用で小さい画像は原寸のまま（拡大しない）・狭い画面では 100% に収まる。 2026/07/13 */
.cart-page .header_explanation img,
.cart-page .footer_explanation img,
.cart-page #time dd img {
	max-width: min(100%, 420px);
}
.cart-page .header_explanation,
.cart-page .footer_explanation {
	font-size: 1.4rem;
	line-height: 1.9;
	color: var(--f_dark);
}
.cart-page .header_explanation { margin: 0 0 20px; }
.cart-page .footer_explanation { margin: 28px 0 0; }
/* 追加：説明文（管理画面のDB入力）に <ul><li> を書くと2つの問題が起きる。
   ①Welcart が説明文に nl2br を適用するため、<li> の各行の改行が <br> になり
     <ul> の中（</li> と <li> の間）に <br> が入り、箇条書きの各項目の間に余計な空白ができる。
   ②メインサイト base.css の li{list-style:none} で行頭の箇条書き記号が消える。
   → 説明文内のリストは行頭記号（disc）を戻し、<ul> 内の <br>（nl2br由来）を無効化して詰める。
   ※ リスト外の <br>（段落間の空行）は残すので、他の説明文の余白には影響しない。 2026/07/16 */
.cart-page .header_explanation ul,
.cart-page .footer_explanation ul {
	list-style: disc;
	padding-left: 1.6em;
	margin: 6px 0;
}
.cart-page .header_explanation ul li,
.cart-page .footer_explanation ul li {
	list-style: disc;
	margin: 2px 0;
}
.cart-page .header_explanation ul br,
.cart-page .footer_explanation ul br {
	display: none;
}
/* 追加：カート系ページの手書き説明文中のテキストリンクに、メインサイトのテキストリンク
   （utilities.css .TxtLink_Blue）と同じリンク色＋下線を自動適用する。
   対象＝ヘッダー/フッター説明文・支払方法の説明（dd.payment_N・3Dセキュア案内等）・
   完了/エラーの注記（.oks-info-note / .oks-error-cardnote）。
   ※ ゼウスの .support_box 内リンク（再試行）は既存の高特異度ルールでボタン化済みのため対象外。
   ※ TxtLink_Ext（外部リンク）は下線を出さない仕様のため :not() で除外する。色は style.css の
      a.TxtLink_Ext が付与（ここで除外しても青は維持される）。 2026/07/16 修正
   ISSUE-20260716-store-ui-refinements 2026/07/16 */
.cart-page .header_explanation a:not(.TxtLink_Ext),
.cart-page .footer_explanation a:not(.TxtLink_Ext),
.cart-page dd[class^="payment_"] a:not(.TxtLink_Ext),
.cart-page .oks-info-note a:not(.TxtLink_Ext),
.cart-page .oks-error-cardnote a:not(.TxtLink_Ext) {
	color: var(--f_blue);
	text-decoration: underline;
}

/* ==========================================================================
   フォーム（お客様情報・配送/支払）＝罫線を減らし、余白とカードで洗練させる
   既定 .customer_form は行ごとに border-bottom:2px#efefef の区切り線＋灰ラベル＋詰まった余白で
   古く見える。各フォーム表を1枚の白カードにまとめ、行区切りは極薄1本に。タイポも整える。
   ※ display（th/td/inp1 の並び）は既定を尊重し、色・余白・境界・入力体裁のみ調整する。
   ========================================================================== */
.cart-page .customer_form {
	background: #fff;
	border-radius: 16px;
	box-shadow: 0 3px 13px #0000000d;
	padding: 6px 24px;
	margin: 0 0 20px;
}
.cart-page .customer_form tr {
	margin: 0;
	padding: 18px 2px;
	border-bottom: 1px solid #f2ede1; /* 2px#efefef → 極薄1px（罫線の主張を抑える） */
}
.cart-page .customer_form tr:last-child {
	border-bottom: none;
}
.cart-page .customer_form th {
	margin-bottom: 8px;
	color: var(--f_darkgray);
	font-weight: 700;
	font-size: 1.35rem;
	letter-spacing: .02em;
}
.cart-page .customer_form th em {
	color: var(--f_red);
	font-style: normal;
	margin-right: .2em;
}
.cart-page .customer_form td {
	color: var(--f_dark);
	font-size: 1.45rem;
	line-height: 1.7;
}
.cart-page .customer_form td label {
	color: var(--f_dark);
	font-weight: 700;
	cursor: pointer;
}

/* 入力欄・セレクト・テキストエリア＝角丸・トークン色・余白・フォーカスリング */
.cart-page .customer_form input[type="text"],
.cart-page .customer_form input[type="email"],
.cart-page .customer_form input[type="tel"],
.cart-page .customer_form input[type="number"],
.cart-page .customer_form input[type="password"],
.cart-page .customer_form select,
.cart-page .customer_form textarea {
	font-family: var(--f_family_body);
	font-size: 1.5rem;
	color: var(--f_dark);
	padding: 10px 12px;
	border: 1.5px solid #e4ddcb;
	border-radius: 10px;
	background: #fff;
	line-height: 1.4;
	box-sizing: border-box;
	max-width: 100%;
}
.cart-page .customer_form input:focus,
.cart-page .customer_form select:focus,
.cart-page .customer_form textarea:focus {
	outline: none;
	border-color: var(--f_main-deep);
	box-shadow: 0 0 0 3px #ffe9cf;
}
.cart-page .customer_form textarea {
	width: 100%;
	min-height: 96px;
	resize: vertical;
}
.cart-page .customer_form select {
	min-width: 14em;
	cursor: pointer;
}

/* ラジオ/チェック（配送先の同/別・規約同意）＝間隔を空けて選びやすく */
.cart-page .customer_form input[type="radio"],
.cart-page .customer_form input[type="checkbox"] {
	width: 1.5rem;
	height: 1.5rem;
	margin: 0 .5rem 0 0;
	vertical-align: -.2rem;
	accent-color: var(--f_main-deep);
	cursor: pointer;
}

/* --- 配送先の選択（#delivery_flag「お客様情報と同じ / 別の配送先を指定する」）---
   マークアップ・JS（onclick で #delivery_table を出し分け）は不変。CSSのみで各選択肢を
   「選択カード」化し、選択中を主色で強調する。#delivery_flag はID＝.customer_form（class）の
   洗練ルールより詳細度が高いので安全に上書きできる。選択肢は別々の<tr>のため border-spacing で
   縦の間隔を作り、選択中は :has(input:checked) で td 全体を主色化する。 2026/07/13 */
.cart-page #delivery_flag {
	border-collapse: separate;
	border-spacing: 10px 8px;
}
.cart-page #delivery_flag th {
	border: none;
	background: transparent;
	vertical-align: middle;
	white-space: nowrap;
	padding-left: 0;
}
.cart-page #delivery_flag td {
	position: relative; /* label::after（カード全面のクリック層）の基準 */
	border: 1.5px solid #e5e5e5;
	border-radius: 10px;
	padding: 12px 16px;
	background: #fff;
	transition: border-color .15s, background .15s;
}
.cart-page #delivery_flag td:has(input:checked) {
	border-color: var(--f_main-deep);
	background: #fff7ef; /* 主色系の淡い地（入力focusの #ffe9cf より薄め） */
}
.cart-page #delivery_flag td label {
	cursor: pointer;
	font-weight: 700;
	font-size: 1.5rem;
	color: var(--f_dark);
	vertical-align: middle;
}
/* カードのどこをクリックしても切り替わるように、label の当たり判定を td 全面へ広げる
   （ストレッチ・ラベル）。label 起動は関連ラジオに click を発火させるため、ラジオの
   onclick（#delivery_table の出し分けJS）も従来どおり動く＝フォーム契約は不変。 2026/07/13 */
.cart-page #delivery_flag td label::after {
	content: "";
	position: absolute;
	inset: 0;
	cursor: pointer;
}

/* 支払方法の選択肢（<dl><dt>ラジオ+名称</dt><dd>説明</dd></dl>）＝
   区切り罫線・入れ子の箱を使わず、余白＋太字名称＋インデント説明で分ける（箱の多用を避ける） */
.cart-page #time dl {
	margin: 0;
}
.cart-page #time dl dt {
	margin: 20px 0 4px;
	padding: 0;
	border: none;
	font-size: 1.6rem;
	font-weight: 700;
}
.cart-page #time dl dt:first-child {
	margin-top: 2px;
}
.cart-page #time dl dt label {
	color: var(--f_dark);
}
.cart-page #time dl dd {
	margin: 0 0 4px;
	padding: 0 0 0 2.4rem; /* ラジオ幅ぶんインデントして名称と揃える */
	border: none;
	font-size: 1.35rem;
	line-height: 1.75;
	color: var(--f_darkgray);
}
.cart-page #time dl dd .oks-payment-cash-notice {
	color: var(--f_main-deep);
}

/* ==========================================================================
   レスポンシブ（スマホ）
   ========================================================================== */
@media (max-width: 767px) {
	.cart-page .oks-confirm-grid {
		grid-template-columns: 1fr;
	}
	/* スマホの #cart_table 積み上げは Welcart 既定（data-label）に委ね、ここでは触らない
	   （二重制御で崩れるのを避ける・目視で必要なら別途調整） */
	.cart-page .cart_navi li {
		min-width: 0;
		font-size: 1.1rem;
	}
}
