/*
Theme Name:Iconic child
Theme URI:
Description:WordPressテーマ「Iconic」の自作子テーマです。
Template:iconic_tcd062
Author:Takuya Kutsukake
Author URI:https://design-plus1.com/tcd-w/
Version:1.14.2
*/
/* ショップの見た目（2026-11-01）：書体の読み込み。末尾の「ショップの見た目」ブロックとセット */
@import url("https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New:wght@400;500;700&display=swap");

div.send .paypal_button,
div.send input[type="image"]{
 margin:0 auto;
  width: auto;
  height: auto;
  object-fit: cover;
}

/* 年プルダウンの変更 */
select.ui-datepicker-year{
  height: 2em!important;      /* 高さ調整 */
  margin-right:5px!important; /* 「年」との余白設定 */
  width:70px!important;       /* 幅調整 */
}
/* 月プルダウンの変更 */
select.ui-datepicker-month{
  height: 2em!important;      /* 高さ調整 */
  margin-left:5px!important;  /* 「年」との余白設定 */
  width:70px!important;       /* 幅調整 */
}

span.em_limited,.important{background: linear-gradient(rgba(255,255,255,0) 75%, #fff799 75%); font-weight:bold; }
span.em_soldout,.em-bookings-ticket-table-spaces strong{background: linear-gradient(rgba(255,255,255,0) 75%, #ffc1e0 75%); font-weight:bold; }

.em-booking-form-details,.em-coupon-code {
	float: none; 
	display: block;
	width: 100%;
}
.em-booking-message-error p{
	color:#ff0000;
}
.em-booking-form-details label,.em-coupon-code label {
	width : auto;
	display: inline-block;
	font-weight: bold;
}
.em-booking-form span.input-group input,
.em-booking-form span.input-group{
width: 100%;
margin-left:0;
text-align:left;
}
.em-booking-login input,
.em-booking-form-details input.input,
.em-booking-form-details select,
.em-booking-form-details textarea,
.em-booking-form input[name="user_email"],
.em-booking-form input[name="user_name"]
 {
	width: 100%;
	background-color: #fff; border: 1px solid #ddd; line-height: 33px; padding: 0 8px;
}
.em-coupon-code{
	background-color: #fff; border: 1px solid #ddd; line-height: 33px; padding: 0 8px;
}
.em-date-start{
	background-color: #fff; border: 1px solid #ddd; line-height: 33px; padding: 0 8px;
}
.em-booking-form-details select
 {
	padding: 8px 8px;
}
.pledge_check{text-align:left;}

div.em-booking-login label {
	width : auto;
	display: inline-block;
}

div.em-booking-login {
    float: none;
    display: block;
    width: 100%;
    margin: 15px 0;
    border: 0 none;
    padding: 10px;
}

div.em-booking-login p label {
	width : auto !important;
	display: inline-block !important;
	font-weight: bold;
	//display: block !important;
	//width: 100% !important;
}

.em-booking-submit,
.em-booking-login #em_wp-submit{
    border: none;
    color: #fff !important;
    cursor: pointer;
    display: inline-block;
    height: 50px;
    line-height: 50px;
    min-width: 180px;
    overflow: hidden;
    padding: 0 20px;
    text-align: center;
}

.em-booking-login #em_rememberme {
 width:auto;
}

.em-bookings-ticket-table-price,
.em-bookings-ticket-table-spaces{
 text-align:center;
}
.login h1 a{
background-image:none,url(https://www.eyelidup.jp/cms/wp-content/uploads/2020/04/favicon_i.png);
}

.em-login{
	display:none;
}
/*---- customer_form ---*/

table.customer_form { width: 100%; margin-bottom: 12px;}
.customer_form th, .customer_form td  { padding: 10px; border: 1px solid #ddd; }
.customer_form th  { background: #f4f4f4; }
.customer_form th  { width: 25%; text-align: left; }

@media only screen and (max-width:480px){
    table.customer_form th,
    table.customer_form td{
    width: 100%;
    display: block;
    border-top: none;
    }
}
table.customer_form tr:first-child th { border-top: 1px solid #ddd; }


/*---- event_form ---*/

table.event_form { width: 100%; margin-bottom: 12px;}
.event th, .event_form td  { padding: 10px; border: 1px solid #ddd; }
.event th  { background: #f4f4f4; }
.event th  { width: 25%; text-align: left; }

@media only screen and (max-width:480px){
    table.event_form th,
    table.event_form td{
    width: 100%;
    display: block;
    border-top: none;
    }
    table.event_form th{
	margin-top:20px;
    }
    table.event_form tr:nth-child(n+2) th {
	border-top: 1px solid #ddd;
    }
}
table.event_form tr:first-child th { border-top: 1px solid #ddd; }

div.em-booking-message-error p{
	margin-bottom:0px;
}

h3.em-booking-section-title,
em-booking-section-title,
div.em-login-trigger{
	display:none;
}


/*---- salon_introduction ---*/

@media only screen and (max-width:480px){
    div.salon_introduction table th,
    div.salon_introduction table td,
    .pb_simple_table th,
    .pb_simple_table td {
        width: 100%;
        display: block;
        box-sizing: border-box;
        border-top: none;
        white-space: normal;
        overflow-wrap: anywhere;
        word-break: break-word;
    }

    .pb_simple_table {
        width: 100%;
        table-layout: fixed;
    }

    .pb_simple_table a {
        white-space: normal;
        overflow-wrap: anywhere;
        word-break: break-word;
    }
}
div.salon_introduction table tr:first-child th { border-top: 1px solid #ddd; }
.pb_simple_table tr:first-child th { border-top: 1px solid #ddd; }



/*---- セミナー予約一覧 ---*/
div.css-events-list th{ background: #f4f4f4; width: 25%; text-align: left;}
/*
@media only screen and (max-width:480px){
    div.css-events-list th,
    div.css-events-list td{
    width: 100%;
    display: block;
    border-top: none;
    }
	div.css-events-list th br{
		display: none;
	}
}
div.css-events-list tr:first-child th { border-top: 1px solid #ddd; }
*/

/*
	.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;
		background-color: #f6f6f6;
		border: 1px solid #ccc;
		vertical-align: middle;
	}
	.customer_form td {
		display: table-cell;
		color: #6e6e6e;
		padding: .357143em 1.071428em;
		border: 1px solid #ccc;
	}
	.customer_form tr.inp1 td {
		display: table-cell;
		width: auto;
		margin-bottom: 0;
	}
	.customer_form input[type="password"] {
		display: inline-block;
	}
*/
.customer_form input[type="text"],
.customer_form input[type="tel"],
.customer_form select{
    background: #fff;
    border: 1px solid #ddd;
    line-height: 33px;
    padding: 0 8px;
}

.customer_form select{
    padding: 5px 10px;
}
.customer_form div.attention{
margin:10px 0;
font-size: .8em;
}
.customer_form span.attention{
	font-size: .8em;
}

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

.settlement_form_send input.back_to_delivery_button{
	padding: 0 20px;
	height: 45px;
	line-height: 45px;
	border:none;
	color:#fff;
	background-color: #bdbdbd!important;
}
.settlement_form_send input.to_confirm_button
{
	color: #fff;
	background-color: #0097cc;
	padding: 0 20px;
	height: 45px;
	line-height: 45px;
	border:none;

}
.settlement_form_send input.to_confirm_button:hover
{
	background-color:  #006689;
}
.settlement_form_send input.back_to_delivery_button:hover
{
	background-color:  #1a1a1a!important;
}
/**************************/

.video { position: relative; height: 0; padding: 0 0 56.25%; overflow: hidden; margin-bottom:30px;} .video iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

input[name="deletemember"]{
	background-color:  #80939a;
}

.p-entry-item__cart-quantity input.plus,
.p-entry-item__cart-quantity input.minus { width: 30px; }

div.em-booking-buttons{text-align : center;}


.Qa-Box {
  width: 80%;
  margin: 0 auto;
}

.Qa-Box .Qa {
  padding: 20px 0;
  border-bottom: 1px solid #c8c8c8;
}

.Qa-Box .Qa dt,
.Qa-Box .Qa dd {
  display: flex;
  align-items: baseline;
  margin: 15px 0;
}

.Qa-Box .Qa dt p {
  margin: 0;
  padding-left: 15px;
  font-weight: bold;
  width: 100%;
}

.Qa-Box .Qa dd p {
  margin: 0;
  padding-left: 15px;
  width: 100%;
}

.Qa-Box .Qa:last-of-type {
  border-bottom: none;
}

.Qa-Box .Qa dt::before {
  content: "Q";
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  background: #0097cc;
  width: 2em;
  height: 2em;
}

.Qa-Box .Qa dd::before {
  content: "A";
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  background: #d65556;
  width: 2em;
  height: 2em;
}

@media screen and (max-width: 960px) {
  .Qa-Box {
    width: 95%;
  }
}

.c-meta-box__item--tag{
	line-height:1.5;
	margin-top: -0.25em
}
.em-booking-gateway select { background: #fff; border: 1px solid #ddd; height: 35px; padding: 5px 10px; outline: 0;
    font-size: 100%;box-sizing: border-box;}

#terms-click{
	margin-bottom:15px;
}


/**************************************************/
/* 
skuセレクト
/eyelidup.jp/public_html/cms/wp-content/plugins/wcex_sku_select/wcex_sku_select.css
=item-single.php　以下　途中まではは無効にする。
*/
.p-entry-item__cart-item-sku{
	margin-bottom:15px;
}

.item-sku th, .item-sku thead {
	background-color:#efefef;
}
.item-sku th, .item-sku td {
	border: 1px solid #dfdfdf;
	text-align: center;
}

table.item-sku input[type="radio"] {
	margin: 0;
	vertical-align: middle;
}
.sku_select{
    background: #fff;
    border: 1px solid #ddd;
    //height: 35px;
    padding: 5px 10px;
}
/**************************************************/

tr.customkey_oyasumi_eyelid,
tr.customkey_goodnight{
	display:none;
}
/**************************************************/
/**WEBフォント**/

.p-index-slider__item-catch {
    font-family: Ryumin Bold KL!important;
}
.p-logo,.p-page-header__title{
	font-family: classico-urw, sans-serif!important;
	font-style: normal!important;
}

/**************************************************/

/* welcart headline */
.p-wc-headline { color: #666!important; }
.p-wc .p-wc-headline { color: #666!important;}


.em-booking-login #em_wp-submit{
	background: #666!important;
}
.em-booking-submit:hover,
.em-booking-login #em_wp-submit:hover{
	background: #1a1a1a!important;
}

.em .em-notice,
.em .em-notice.em-notice-success
{
    border: 1px solid #df2e59!important;
    color: #000!important;
    background-color: #fff!important;
}
.button-secondary{
	width:180px;
	background: #666;
	border: none;
	color: #fff!important;
	cursor: pointer;
	height: 50px;
	line-height: 50px;
	min-width: 180px;
	overflow: hidden;
	padding: 0 20px;
	text-align: center;
	display: block;
	margin: auto;
	margin-bottom: 50px;
}

.button-secondary:hover{
	background: #1a1a1a;
}
.w100,.em-booking-submit{
	width:100% !important;
	max-width: 100% !important;
}
.em-booking-submit{
//	margin:70px 0 50px 0;
}
.button-secondary{
	margin:50px 0 50px 0;
}
.em-booking-submit{
	border-radius: 10px;
	transition: all .2s;
	background:#df2e59;
}

/** new delivery **/
div.msa_area input.p-button{
    background: #666666 !important;
    border: none !important;
    color: #fff !important;
    cursor: pointer;
    display: inline-block;
    height: 50px;
    line-height: 50px;
    min-width: 180px;
    overflow: hidden;
    padding: 0 20px !important;
    text-align: center;
}
div.msa_area input.p-button:hover{
	background-color: #1a1a1a !important;
	color: #fff !important;
}

a.new-delivery-address-button{
    background-color: #ffd5df !important;
    color: #df2e59 !important;
    border: 1px solid #df2e59 !important;
    line-height: 35px;
    padding: 0px 20px;
    font-weight: 700;
    float:right;
}
a.new-delivery-address-button:hover{
	background-color: #df2e59 !important;
	color: #fff !important;
}
input#msa_name,input#msa_name2,input#msa_furigana,input#msa_furigana2 {
    margin-left: .5em;
    margin-right: 0;
}
input#search_zipcode {
    background: #ccc;
    border: none;
    color: #fff;
    line-height: 35px;
    margin-right: 1em;
    padding: 0 20px;
}
table.pb_simple_table {
    width: 100%;
    table-layout: fixed;
    word-wrap: break-word;
    overflow-wrap: anywhere;
}

table.pb_simple_table {
    width: 100%;
    table-layout: fixed;
    word-wrap: break-word;
    overflow-wrap: anywhere;
}

/* PC・タブレット */
@media only screen and (min-width: 481px) {
    table.pb_simple_table th {
        width: 24%;
        text-align: left;
    }

    table.pb_simple_table td {
        width: 76%;
    }
}

/* スマートフォン */
@media only screen and (max-width: 480px) {
    table.pb_simple_table,
    table.pb_simple_table tbody,
    table.pb_simple_table tr,
    table.pb_simple_table th,
    table.pb_simple_table td {
        display: block;
        width: 100% !important;
        box-sizing: border-box;
    }

    table.pb_simple_table th,
    table.pb_simple_table td {
        white-space: normal;
        overflow-wrap: anywhere;
        word-break: break-word;
    }

    table.pb_simple_table th {
        text-align: left;
    }

    table.pb_simple_table a {
        white-space: normal;
        overflow-wrap: anywhere;
        word-break: break-word;
    }
}

li span.li-important{
  position: relative;
  background: linear-gradient(transparent 40%, yellow 40%);
    font-weight: 700;
}

input.no_input{
	pointer-events : none;
	background-color:#e8e8e8 !important;
}

.return_navi{
    position:static; !important;
}
.return_navi a:hover{
    background-color: #df2e59 !important;
    color: #fff !important;
}

.return_navi a{
    background-color: #ffd5df !important;
    color: #df2e59 !important;
    border: 1px solid #df2e59 !important;
}


/* チェックボックス */

input[type=checkbox][name=agree] {
	-webkit-transform: scale(1.5);
	transform: scale(1.5);
}

table.event_form .btn{
    display: block;
    width: 50%;
    padding: 10px 0;
    margin: auto;
	margin-top:10px;
	border-radius: 0.5rem;
    background: #df2e59;
    color: #FFF;
    text-decoration: none;
    text-align: center;
}
table.event_form .btn:hover{
    background: #000;
}


/* クーポンテーブル */
#coupon_table, #cart #coupon_table{
    width: 100% !important;
}


/* ========================================
   生年月日
======================================== */

.input-field-birth-year,
.input-field-birth-month,
.input-field-birth-day {
    display: inline-flex !important;
    align-items: center;
    width: auto !important;
    box-sizing: border-box;
    vertical-align: bottom;
    margin: 0 6px 20px 0 !important;
}

/* 年欄の上に「生年月日」を絶対配置 */
.input-field-birth-year {
    position: relative;
    padding-top: 28px;
    clear: left;
}

.input-field-birth-year > label {
    position: absolute;
    top: 0;
    left: 0;
    display: block !important;
    width: auto;
    margin: 0;
    font-weight: bold;
    line-height: 1.4;
    white-space: nowrap;
}

/* 月・日の元ラベルは非表示 */
.input-field-birth-month > label,
.input-field-birth-day > label {
    display: none !important;
}

/* 年欄の入力位置と揃える */
.input-field-birth-month,
.input-field-birth-day {
    margin-top: 28px !important;
}

/* セレクトボックス */
.birth-year,
.birth-month,
.birth-day {
    min-width: 0;
    height: 38px;
    box-sizing: border-box;
    padding: 5px 28px 5px 8px !important;
    border: 1px solid #ddd;
    background-color: #fff;
    font-size: 16px;
    line-height: 1.2;
}

.birth-year {
    width: 96px !important;
}

.birth-month,
.birth-day {
    width: 68px !important;
}

/* 単位 */
.input-field-birth-year::after {
    content: "年";
}

.input-field-birth-month::after {
    content: "月";
}

.input-field-birth-day::after {
    content: "日";
}

.input-field-birth-year::after,
.input-field-birth-month::after,
.input-field-birth-day::after {
    margin-left: 5px;
    white-space: nowrap;
}

/* スマートフォン */
@media screen and (max-width: 600px) {

    .input-field-birth-year,
    .input-field-birth-month,
    .input-field-birth-day {
        margin-right: 3px !important;
        margin-bottom: 16px !important;
    }

    .birth-year {
        width: 88px !important;
    }

    .birth-month,
    .birth-day {
        width: 60px !important;
    }

    .birth-year,
    .birth-month,
    .birth-day {
        height: 40px;
        padding-left: 6px !important;
        padding-right: 22px !important;
    }

    .input-field-birth-year::after,
    .input-field-birth-month::after,
    .input-field-birth-day::after {
        margin-left: 3px;
    }
}

@media screen and (max-width: 360px) {

    .birth-year {
        width: 82px !important;
    }

    .birth-month,
    .birth-day {
        width: 56px !important;
    }

    .input-field-birth-year,
    .input-field-birth-month,
    .input-field-birth-day {
        margin-right: 1px !important;
    }

    .input-field-birth-year::after,
    .input-field-birth-month::after,
    .input-field-birth-day::after {
        margin-left: 2px;
    }
}
.input-field-birth-year > input[name="birth-year"],
.input-field-birth-month > input[name="birth-month"],
.input-field-birth-day > input[name="birth-day"] {
    display: none !important;
}
/* ========================================
   生年月日おわり
======================================== */


/* ========================================
   規約・支払い方法周辺
======================================== */

/* 規約ボタン */
#terms-click {
    display: block;
    margin: 0 0 12px !important;
}

/* 規約同意欄 */
.input-field-agree {
    margin: 0 0 8px !important;
}

.input-field-agree label {
    display: flex !important;
    align-items: flex-start;
    gap: 8px;
    width: 100% !important;
    line-height: 1.6;
}

.input-field-agree input[type="checkbox"] {
    flex: 0 0 auto;
    margin: 5px 0 0 !important;
}

/* 規約確認後の案内 */
#terms-note {
    display: block;
    clear: both;
    width: 100%;
    margin: 0 0 18px !important;
    font-size: 13px;
    line-height: 1.7;
    color: #555;
}

/* 支払い方法 */
.em-payment-gateway-selector {
    margin: 0 0 12px !important;
}

.em-payment-gateway-selector label {
    margin-right: 10px;
    font-weight: bold;
}

.em-payment-gateway-selector select {
    min-width: 185px;
    height: 38px;
    padding: 5px 30px 5px 10px;
    background-color: #fff;
    border: 1px solid #ddd;
    font-size: 14px;
}

/* 支払い方法下の説明 */
.em-payment-gateway-form-info {
    margin: 0 0 20px !important;
    line-height: 1.7;
}

/* 申込みボタン周辺 */
.em-booking-form-buttons {
    margin-top: 28px !important;
}

/* 以前の70px指定を上書き */
.em-booking-submit {
    margin: 0 0 50px !important;
}

/* スマートフォン */
@media screen and (max-width: 600px) {

    #terms-click {
        padding-left: 10px;
        padding-right: 10px;
        font-size: 13px;
    }

    .input-field-agree label {
        gap: 7px;
        font-size: 13px;
    }

    #terms-note {
        margin-bottom: 16px !important;
        font-size: 12px;
    }

    .em-payment-gateway-selector label {
        display: block;
        margin: 0 0 6px;
    }

    .em-payment-gateway-selector select {
        width: 100%;
        min-width: 0;
        font-size: 16px;
    }
}

/* ========================================
   規約・支払い方法周辺おわり
======================================== */


/* Events Manager本来の数量selectだけを非表示 */
select.em-ticket-select {
    display: none !important;
}

/* 表示用チェックボックス */
.em-ticket-checkbox {
    transform: scale(1.5);
    cursor: pointer;
}

/* ========================================
   購入画面の同意チェック（2026-11-01）
   「利用規約に同意する」（DL Seller）と「個人情報の取り扱いに同意する」（ゼウスのカード欄）を、
   スマホでも押しやすいよう、文字ごと押せる大きな枠にする。入れると枠がヌード（#A5614D・講習LPと同じ差し色）になる
======================================== */
.p-wc-customer_form--dlseller_terms-checkbox label,
label[for="zeus_agree_check"] {
    display: flex !important;
    align-items: center;
    gap: 12px;
    box-sizing: border-box;
    width: 100%;
    min-height: 56px;
    padding: 14px 16px;
    border: 1px solid #c9c9c9;
    border-radius: 8px;
    background: #fff;
    font-size: 16px;
    line-height: 1.5;
    cursor: pointer;
}

.p-wc-customer_form--dlseller_terms-checkbox input[type="checkbox"],
#zeus_agree_check {
    flex: 0 0 auto;
    width: 26px;
    height: 26px;
    margin: 0 !important;
    -webkit-transform: none;
    transform: none;
    accent-color: #A5614D;
    cursor: pointer;
}

/* ゼウスの欄はチェックと文字の間に空の飾り（span.checkmark）があり、すき間が2つ分になるので隠す */
label[for="zeus_agree_check"] .checkmark {
    display: none;
}

.p-wc-customer_form--dlseller_terms-checkbox label:has(input:checked),
label[for="zeus_agree_check"]:has(input:checked) {
    padding: 13px 15px;
    border: 2px solid #A5614D;
    background: #F6EEEA;
}

/* カードの本人確認（3D セキュア）の窓：Welcart の zeus_3ds.js が高さを 300px に固定していて下が見切れるため広げる */
iframe[id="3ds_challenge"] {
    height: 600px !important;
    max-height: 90vh;
}

/* ========================================
   ショップの見た目（スマホ向け・2026-11-01）ここから
   対象：Welcart の画面だけ（商品の一覧 .p-item-archive／商品のページ .p-entry-item／
         カート・購入の手続き・ログイン・会員登録 .p-wc）
   色：講習LP と同じ Design System（墨 #3D3633・ヌード #A5614D は各画面の一番のボタンだけ）
   触らない：購入画面の同意チェック2つ（DL Seller の利用規約・ゼウスの個人情報）＝別ブロック
   セット：書体の読み込み＝style.css の先頭の @import 1行（「ショップの見た目」の印つき）。戻すときは両方消す
======================================== */

/* ---- 0. 書体（講習LP と同じ Zen Kaku Gothic New。読み込みは style.css の先頭の @import） ---- */
.p-wc:not(.p-wc-mypage),
.p-wc:not(.p-wc-mypage) input,
.p-wc:not(.p-wc-mypage) select,
.p-wc:not(.p-wc-mypage) textarea,
.p-wc:not(.p-wc-mypage) th,
.p-wc:not(.p-wc-mypage) td,
.p-entry-item,
.p-entry-item input,
.p-item-archive {
	font-family: "Zen Kaku Gothic New", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
}

/* ---- 1. ボタン（ふつう＝墨・角を少し丸く・文字16px・高さ52px） ---- */
.p-wc:not(.p-wc-mypage) .p-button,
.p-entry-item .p-button {
	background-color: #3D3633;
	border-radius: 12px;
	font-size: 16px;
	letter-spacing: .06em;
	height: 52px;
	line-height: 52px;
	transition: opacity .2s ease;
}
.p-wc:not(.p-wc-mypage) .p-button:hover,
.p-entry-item .p-button:hover {
	background-color: #3D3633;
	opacity: .82;
}

/* 各画面でいちばん押してほしいボタンだけヌード色
   （カートに追加・カートの「次へ」・配送の「次へ」・注文する・ログイン・会員登録の送信） */
.p-entry-item .skubutton,
.p-wc:not(.p-wc-mypage) .to_customerinfo_button,
.p-wc:not(.p-wc-mypage) .to_deliveryinfo_button,
.p-wc:not(.p-wc-mypage) .to_confirm_button,
.p-wc:not(.p-wc-mypage) .checkout_button,
.p-wc:not(.p-wc-mypage) .p-wc-login-button,
.p-wc:not(.p-wc-mypage) .p-wc-newmember-button {
	background-color: #A5614D;
}
.p-entry-item .skubutton:hover,
.p-wc:not(.p-wc-mypage) .to_customerinfo_button:hover,
.p-wc:not(.p-wc-mypage) .to_deliveryinfo_button:hover,
.p-wc:not(.p-wc-mypage) .to_confirm_button:hover,
.p-wc:not(.p-wc-mypage) .checkout_button:hover,
.p-wc:not(.p-wc-mypage) .p-wc-login-button:hover,
.p-wc:not(.p-wc-mypage) .p-wc-newmember-button:hover {
	background-color: #8A4E3D;
	opacity: 1;
}

/* 2番手のボタン（買い物を続ける・数量更新・ポイントを使用する）＝白地に細い線 */
.p-wc:not(.p-wc-mypage) .continue_shopping_button,
.p-wc:not(.p-wc-mypage) .send #previouscart,
.p-wc:not(.p-wc-mypage) input[name="upButton"],
.p-wc:not(.p-wc-mypage) .use_point_button {
	background-color: #fff;
	border: 1px solid #E1D6CD;
	color: #3D3633 !important;
}
.p-wc:not(.p-wc-mypage) .continue_shopping_button:hover,
.p-wc:not(.p-wc-mypage) .send #previouscart:hover,
.p-wc:not(.p-wc-mypage) input[name="upButton"]:hover,
.p-wc:not(.p-wc-mypage) .use_point_button:hover {
	background-color: #FAF7F4;
	opacity: 1;
}

/* 「＜ 戻る」の文字ボタン＝押せる高さを確保 */
.p-wc:not(.p-wc-mypage) .p-button--white {
	min-height: 44px;
	font-size: 16px;
	letter-spacing: .04em;
}

/* 住所検索のボタン */
.p-wc:not(.p-wc-mypage) .search-zipcode {
	background: #fff;
	border: 1px solid #E1D6CD;
	border-radius: 10px;
	color: #3D3633;
	font-size: 16px;
	height: 44px;
	padding: 0 16px;
	cursor: pointer;
}

/* ---- 2. 入力欄・選ぶ欄（細い線・角を少し丸く・選ぶとヌードの縁） ---- */
.p-wc:not(.p-wc-mypage) input[type="text"],
.p-wc:not(.p-wc-mypage) input[type="email"],
.p-wc:not(.p-wc-mypage) input[type="tel"],
.p-wc:not(.p-wc-mypage) input[type="password"],
.p-wc:not(.p-wc-mypage) input[type="number"],
.p-wc:not(.p-wc-mypage) select,
.p-wc:not(.p-wc-mypage) textarea {
	border: 1px solid #E1D6CD;
	border-radius: 10px;
	font-size: 16px;
}
.p-wc:not(.p-wc-mypage) input[type="number"] {
	height: 44px;
}
/* クロネコ代金後払いの SMS 認証の番号の箱は、プラグインの大きさ（2em）のまま */
.p-wc:not(.p-wc-mypage) .kuroneko_sms_fields label input {
	font-size: 2em;
	height: auto;
}
.p-wc:not(.p-wc-mypage) input[type="text"]:focus,
.p-wc:not(.p-wc-mypage) input[type="email"]:focus,
.p-wc:not(.p-wc-mypage) input[type="tel"]:focus,
.p-wc:not(.p-wc-mypage) input[type="password"]:focus,
.p-wc:not(.p-wc-mypage) input[type="number"]:focus,
.p-wc:not(.p-wc-mypage) select:focus,
.p-wc:not(.p-wc-mypage) textarea:focus {
	border-color: #C9917D;
	box-shadow: 0 0 0 3px #F7EDE7;
	outline: none;
}

/* 項目名の帯（灰色→生成り）と必須の印（赤→ヌード） */
.p-wc:not(.p-wc-mypage) .p-wc-customer_form th,
.p-wc:not(.p-wc-mypage) table th {
	background-color: #F5F0EB;
}
.p-wc:not(.p-wc-mypage) .p-wc-customer_form th em,
.p-wc:not(.p-wc-mypage) th em {
	color: #A5614D;
}

/* ---- 3. チェック欄・丸い選択（22px・押せる行の高さ44px）
         ※購入画面の同意チェック2つは別ブロックで直すので除く ---- */
.p-wc:not(.p-wc-mypage) input[type="checkbox"]:not(#zeus_agree_check):not(.p-wc-customer_form--dlseller_terms-checkbox input),
.p-wc:not(.p-wc-mypage) input[type="radio"] {
	width: 22px;
	height: 22px;
	accent-color: #A5614D;
	vertical-align: middle;
	margin: 0 8px 0 0;
}
/* チェック欄・丸い選択が入ったラベルだけ、行ごと押せる高さに */
.p-wc:not(.p-wc-mypage) label:has(> input[type="checkbox"], > input[type="radio"]):not([for="zeus_agree_check"]):not(.p-wc-customer_form--dlseller_terms-checkbox label),
.p-wc:not(.p-wc-mypage) input[type="checkbox"]:not(#zeus_agree_check):not(.p-wc-customer_form--dlseller_terms-checkbox input) + label,
.p-wc:not(.p-wc-mypage) input[type="radio"] + label {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	font-size: 16px;
	cursor: pointer;
}

/* ---- 4. 商品のページ（買う枠・価格・数量） ---- */
.p-entry-item .p-entry-item__cart {
	background: #FAF7F4;
	border: 1px solid #E1D6CD;
	border-radius: 12px;
}
/* カートのマーク（文字を16pxにした分だけ左へ） */
.p-entry-item .p-entry-item__cart-button::before {
	margin-left: -74px;
	pointer-events: none; /* マークの所を押してもボタンに届くように */
	z-index: 1;
}
.p-entry-item .p-price,
.p-item-archive .p-price {
	color: #1A1716;
}
.p-entry-item .p-entry-item__cart-price .p-price {
	font-size: 24px;
	letter-spacing: .02em;
}
/* 数量の「− 1 ＋」＝ひとつの枠にまとめ、押す所は44px */
.p-entry-item .p-entry-item__cart-quantity {
	display: flex;
	align-items: center;
	gap: 0;
}
.p-entry-item .p-entry-item__cart-quantity input.minus,
.p-entry-item .p-entry-item__cart-quantity input.plus {
	width: 44px;
	height: 44px;
	background: #fff;
	border: 1px solid #E1D6CD;
	color: #3D3633;
	font-size: 20px;
	line-height: 1;
	padding: 0;
	cursor: pointer;
}
.p-entry-item .p-entry-item__cart-quantity input.minus { border-radius: 12px 0 0 12px; }
.p-entry-item .p-entry-item__cart-quantity input.plus { border-radius: 0 12px 12px 0; }
.p-entry-item .p-entry-item__cart-quantity input.skuquantity {
	width: 56px;
	height: 44px;
	border: 1px solid #E1D6CD;
	border-width: 1px 0;
	border-radius: 0;
	font-size: 16px;
	text-align: center;
	padding: 0;
	-moz-appearance: textfield;
}
.p-entry-item .p-entry-item__cart-quantity input.skuquantity::-webkit-inner-spin-button,
.p-entry-item .p-entry-item__cart-quantity input.skuquantity::-webkit-outer-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

/* ---- 5. カート（数量の欄・削除の×） ---- */
.p-wc-cart-page .p-wc-cart_table td.quantity input.quantity {
	height: 44px;
	text-align: center;
}

/* ---- 6. 手順の帯（カート→お客様情報→発送・支払方法→内容確認）の今の段＝墨 ---- */
.p-wc:not(.p-wc-mypage) .p-wc-cart_navi li.is-current {
	background: #3D3633;
	border-color: #3D3633;
}
.p-wc:not(.p-wc-mypage) .p-wc-cart_navi li.is-current::after {
	border-left-color: #3D3633;
}

/* ---- 7. 商品の一覧（商品名と価格を読みやすく） ---- */
.p-item-archive .p-article-item__title {
	font-size: 15px;
	line-height: 1.6;
}
.p-item-archive .p-article__price {
	font-size: 16px;
}

/* ---- スマホ（991px 以下） ---- */
@media only screen and (max-width: 991px) {
	.p-wc:not(.p-wc-mypage) .p-button--lg,
	.p-wc:not(.p-wc-mypage) .p-button--xl {
		height: 52px;
		line-height: 52px;
	}
	/* 買う枠の左右の余白を詰めて、ボタンを広く */
	.p-entry-item .p-entry-item__cart {
		padding: 22px 18px 24px;
	}
	/* 削除の×＝見た目32px・押せる所44px */
	.p-wc-cart-page .p-wc-cart_table td.action .delButton {
		width: 44px;
		height: 44px;
		top: 2px;
		right: -6px;
	}
	.p-wc-cart-page .p-wc-cart_table td.action .delButtonWrap:after {
		width: 32px;
		height: 32px;
		line-height: 32px;
		font-size: 15px;
		top: 8px;
	}
}
/* ========================================
   ショップの見た目（スマホ向け・2026-11-01）ここまで
======================================== */

/* ========================================
   サイト全体の書体（2026-11-01）ここから
   本文・ボタン・入力欄を講習LP と同じ Zen Kaku Gothic New に（読み込みは先頭の @import）
   変えない：講習LP（.lp-seminar）・タイトル類（ロゴ・ページの見出し・トップの大きな文字・
            記事や商品のタイトル）＝それぞれ書体の指定があるので、そのまま残る
======================================== */
body:not(.lp-seminar),
body:not(.lp-seminar) input,
body:not(.lp-seminar) textarea,
body:not(.lp-seminar) select,
body:not(.lp-seminar) button {
	font-family: "Zen Kaku Gothic New", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
}
/* ========================================
   サイト全体の書体（2026-11-01）ここまで
======================================== */

/* ========================================
   購入画面の PayPal と右下の「^」（2026-11-01）ここから
   ① PayPal のボタン（最大 750px）を囲む要素ごと真ん中へ。カードの入力欄も同じ囲みの中に開く
      ※ボタンの中身は PayPal の iframe なので触らない。スマホ幅は本文が 750px より狭いので変わらない
   ② PayPal の確認画面の「< 戻る」をパソコン幅でも真ん中へ（親テーマは左上に置く作り）
   ③ 右下の「^」（上へ戻る）を reCAPTCHA のマーク（下から 14px・高さ 60px）の上へ。マークは隠さない
      講習LP には「^」が無いので変わらない
======================================== */
.p-wc #checkout_paypal_cp {
	max-width: 750px;
	margin-left: auto;
	margin-right: auto;
}
@media (min-width: 768px) {
	.p-wc form:has(.paypal-cp-send) + form .send .p-button-back {
		position: static;
	}
}
.p-pagetop {
	bottom: 84px;
}
/* ========================================
   購入画面の PayPal と右下の「^」（2026-11-01）ここまで
======================================== */
