@charset "UTF-8";

/* ----------------------------------
 注文フローステップ
---------------------------------- */
.block-order-flow--step { padding: 50px 0; text-align: center; background: none;}
.block-order-flow--step ul { width: 100%; border-top: var(--border-solid1); border-bottom: var(--border-solid1); display: table; table-layout: fixed; background: none;}
.block-order-flow--step1,
.block-order-flow--step2,
.block-order-flow--step3,
.block-order-flow--step4,
.block-order-flow--step5 { height: 60px; padding: 0 27px; font-size: 14px; font-weight: 700; letter-spacing: 0.1em; vertical-align: middle; display: table-cell; background: none; position: relative;}
.block-order-flow--step1:before { content: "STEP1";}
.block-order-flow--step2:before { content: "STEP2";}
.block-order-flow--step3:before { content: "STEP3";}
.block-order-flow--step4:before { content: "STEP4";}
.block-order-flow--step5:before { content: "STEP5";}
.block-order-flow--step1:before,
.block-order-flow--step2:before,
.block-order-flow--step3:before,
.block-order-flow--step4:before,
.block-order-flow--step5:before { padding-right: 10px; margin-right: 10px; border-right: var(--border-solid1); display: inline;}
.block-order-flow--step1:after,
.block-order-flow--step2:after,
.block-order-flow--step3:after,
.block-order-flow--step4:after,
.block-order-flow--step5:after { 
	content: '';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 30px 0 30px 18px;
	border-color: var(--color-bg) var(--color-bg) var(--color-bg) var(--color-base);
	position: absolute;
	top: 0;
	right: 0;
	opacity: 0;
}
.block-order-flow--step-current { padding-right: 40px; color: #FFF; background-color: var(--color-base);}
.block-order-flow--step-current:before { border-color: #FFF;}
.block-order-flow--step-current:after  { opacity: 1;}

.block-order-flow--step ul li:last-child.block-order-flow--step4:after,
.block-order-flow--step ul li:last-child.block-order-flow--step5:after { display: none;}

/* ----------------------------------
 注文フロー右サイドエリア
---------------------------------- */
.block-cart--container,
.block-order-method--container,
.block-order-estimate--container { position: relative;}
.block-cart--container .order-side-area-fixed,
.block-order-method--container .order-side-area-fixed,
.block-order-estimate--container .order-side-area-fixed { display: inline-block; position: fixed; top: 20px; left: calc(50% + 300px); z-index: 1;}
.block-cart--container .order-side-area-end,
.block-order-method--container .order-side-area-end,
.block-order-estimate--container .order-side-area-end { position: absolute; bottom: 0; right: 0;}

.pane-order-contents .btn,
.pane-order-contents .btn[class*="btn-"] { font-size: 14px;}

/* ----------------------------------
 カート画面
---------------------------------- */
.page-cart .pane-main:has(#cart_itemhistory) { margin-bottom: 0 !important;}
.page-cart .pane-main { min-width: var(--layout-min-width);}
.page-cart .block-cart--wrapper form { margin-bottom: 100px;}
.block-cart--store-delivery { order: 3;}
.block-cart--store-delivery-order-btn-store-delivery { font-size: 17px;}

/* カートアイテム */
.block-cart--rule { padding: 0 0 20px; margin: 0 0 20px; border-bottom: var(--border-solid1); font-family: var(--font-family-ship); font-size: 24px; font-weight: 500;}
.block-cart--infomation { width: 800px; padding: 20px; margin: 20px auto; border: #999 1px solid; text-align: left; background: #FFF;}
.block-cart--order-button-description { margin-bottom: 10px; font-weight: 700; text-align: center;}
.block-cart--amazonpay { padding: 0; margin-top: 25px; margin-bottom: 10px; border-top: #9F9C97 1px solid; text-align: center;}
.block-cart--amazonpay-description { margin: 25px 0 15px; font-size: 13px; text-align: left;}
.block-cart--container { position: relative; overflow: hidden;}
.block-cart--goods-list-image { width: 200px; height: calc(200px * 1.312); margin: 0 20px 0 0; background: #FFF; float: left;}
.block-cart--goods-list-item-name { font-family: var(--font-family-ship); font-size: 16px; font-weight: 700; line-height: 1.6;}
.block-cart--goods-list-item { width: calc(100% - 340px); margin: 0; float: left;}
.block-cart .block-cart--goods-list-item .block-icon { margin: 0 0 20px; display: flex; flex-direction: row; column-gap: 5px;}
.block-cart .block-cart--goods-list-item .block-icon span { margin: 0;}
.block-cart--goods-list-item-price-info { width: auto; margin: 20px 0 0; font-size: 16px; font-weight: 700; text-align: left; float: none;}
.block-cart--goods-list-item-price-info .price { font-family: var(--font-family-lato); font-size: 14px; font-weight: 500; text-align: center;}
.block-cart--goods-list-item-price-info .price,
.block-cart--goods-list-item-price-info .net-price,
.block-cart--goods-list-item-price-info .default-price,
.block-cart--goods-list-item-price-info .exchange-price,
.block-cart--goods-list-item-price-info .block-exchange-price--rate-dt { text-align: left;}
.block-cart--goods-list-item-price-info .price::after { content: '(Tax in)'; margin: 0 0 0 3px; font-family: var(--font-family-lato); font-size: 10px; font-weight: 400;}
.block-cart--goods-list-item-price-info .default-price::after { content: '(Tax in)'; margin: 0 0 0 3px; font-family: var(--font-family-lato); font-size: 8px; font-weight: 400;}
.block-cart--goods-list-item-price-info:has(.default-price) .price { color: var(--color-sale);}
.block-cart--goods-list-item-price-info:has(.default-price) .price .yen { color: var(--color-sale);}
.block-cart--goods-list-item-input { width: 100px; float: right;}
.block-cart--goods-list-item-qty { margin: 0 0 10px; position: relative;}
.block-cart--goods-list-item-qty input { width: 100%; padding: 6px 10px; border: var(--border-solid1); background: transparent;}
.block-cart--goods-list-item-qty:after { content: ''; width: 1px; height: 28px; background: #CCC; position: absolute; top: 6px; right: 28px;}
.block-cart--goods-list-item-qty-plus  { position: absolute; top: 6px; right: 10px;}
.block-cart--goods-list-item-qty-minus { position: absolute; top: 21px; right: 10px;}
.block-cart--goods-list-item-calc-btn { width: 100%; margin: 0 0 10px; font-size: 14px !important; display: block;}
.block-cart--goods-list-item-delete { width: 100%; border: none; font-size: 12px; text-decoration: underline; background: none; cursor: pointer;}
.block-cart--goods-list-item-delete:hover { text-decoration: none;}
.block-cart--goods-list-item-comment { padding: 20px 0 15px;}

/* カート左エリア */
.block-cart--contents { width: calc(100% - 360px); float: left; background: transparent;}
.block-cart--goods-list li:last-child { border: none;}
.block-cart--goods-list li { padding: 0 0 20px 0; margin: 20px 0; border-bottom: var(--border-solid1); overflow: hidden;}

/* カート右サイドエリア */
.block-cart--side-area { padding-top: 20px; position: relative; float: left;}
.block-cart--side-contents { width: 320px; margin: 0 0 0 40px;}
.block-cart--procedure { padding: 15px 20px; margin-bottom: 20px; border: var(--color-bg-dark) 6px solid; overflow: hidden;}
.block-cart--procedure-container { padding: 0; display: flex; flex-wrap: wrap; background: inherit; overflow: inherit;}
.block-cart--procedure-container > div { width: 100%;}
.block-cart--procedure-container .block-cart--order { order: 2;}
.block-cart--procedure-container .block-cart--subtotal { order: 1; padding-bottom: 15px; margin-bottom: 25px; border-bottom: var(--color-bg-dark) 1px solid; font-family: var(--font-family-ship); font-size: 16px; text-align: left;}
.block-cart--order-btn { width: 100%; padding: 10px 0; margin: 0 0 10px; font-size: 17px; text-align: center; display: block;}
.block-cart--order-btn-gift { width: 100%; padding: 10px 0; margin: 0 0 10px; font-size: 17px; text-align: center; display: block; background: var(--color-base);}
.block-cart--subtotal { padding: 8px 0;}
.block-cart .block-exchange-price { margin-bottom: 8px; text-align: center;}
.block-cart--subtotal-price { font-family: var(--font-family-lato); font-size: 26px; font-weight: 700; color: var(--color-base); display: block;}
.block-cart--subtotal-price::after { content: '(Tax in)'; margin: 0 0 0 5px; font-family: var(--font-family-lato); font-size: 12px; font-weight: 400;}
.block-cart--continue-shopping { margin-bottom: 40px; text-align: center;}
.block-cart--promotion { text-align: center;}
.block-cart--promotion dd,
.block-cart--promotion dt { margin-bottom: 10px; display: inline-block;}
.block-cart--promotion-discount { font-size: 13px; font-weight: 700;}
.block-cart--continue-shopping-link { border: none; font-size: 14px; text-decoration: underline; background: none; cursor: pointer;}
.block-cart--continue-shopping-link:hover { text-decoration: none;}
.block-promotion-message--content { padding: 10px 0; margin: 0 0 10px; border: var(--color-alert) 1px solid; font-size: 12px; text-align: center; background-color: transparent;}
.block-promotion-message--content span { font-size: 13px; font-weight: 700; color: var(--color-alert);}
a.block-promotion-message--info { text-decoration: none;}
.page-cart .btn.btn-primary.block-cart--order-btn { height: 64px; font-size: 18px !important;}

/* カート 下部エリア */
.page-cart .block-cart-recent-item--body { padding: 0;}
.page-cart h2.block-accessory-list--name { display: none;}
.page-cart .block-cart--wrapper:has(.block-pickup-list-p) h2.block-accessory-list--name {
	padding: 120px 0 0;
  margin: 0 0 35px;
  font-family: var(--font-family-stix);
  font-size: 24px;
  font-weight: 500;
  font-style: italic;
  text-align: center;
  letter-spacing: 0.05em;
	display: block;
}
.page-cart #block_of_recommend { 
	max-width: calc(var(--layout1-max-width) + (var(--layout1-base-padding) * 2));
	padding: 0 0 120px;
	margin: 0 auto;
	display: none;
}
.page-cart #block_of_recommend:has(.block-pickup-list-p) { display: block;}
.page-cart #block_of_recommend .swiper { overflow: visible;}
.page-cart #block_of_recommend .block-pickup-list-p { overflow: visible;}
.page-cart #block_of_recommend .block-pickup-list-p:not(.swiper) .block-pickup-list-p--items { padding: 0; margin: 0; display: flex; flex-wrap: wrap; column-gap: 32px;}
.page-cart #block_of_recommend .block-pickup-list-p:not(.swiper) .block-pickup-list-p--items li { width: calc((100% - (32px * 5))/ 6); min-width: 170px; padding: 0; margin: 0;}
.page-cart #block_of_recommend .block-pickup-list-p.swiper { padding: 5px 0 100px; overflow: visible;}
.page-cart #block_of_recommend .block-pickup-list-p.swiper .block-pickup-list-p--items { flex-wrap: nowrap;}
.page-cart #block_of_recommend .block-pickup-list-p .block-pickup-list-p--items li { min-width: 170px; width: 170px; padding: 0; margin: 0;}
.page-cart #block_of_recommend .block-pickup-list-p .block-pickup-list-p li .block-pickup-list-p--item-description { display: block;}
.page-cart #block_of_recommend .block-pickup-list-p.swiper .swiper-button-prev { bottom: 40px;}
.page-cart #block_of_recommend .block-pickup-list-p.swiper .swiper-button-next { bottom: 40px;}

/* ----------------------------------
 通常の注文
---------------------------------- */
/* カート画面直後のAmazonPayローディング */
.block-order-amazonpay--loading { padding: 60px 0; text-align: center;}

/* アマゾンウィジェット */
.block-order-estimate--amazonpay-address-widget,
.block-order-amazonpay--address-widget,
.block-amazon--address-widget { width: 600px; height: 270px; padding: 5px 0; margin: 0 auto; box-sizing: content-box;}

/* ----------------------------------
 注文方法指定画面
---------------------------------- */
/* 共通設定 */
.block-order-method--payment-content,
.block-order-method--regular-content,
.block-order-method--spec-content,
.block-order-method--goods-content,
.block-order-method--dest-content,
.block-order-method--host-content,
.block-order-method--host-confirmation { padding: 20px; margin: 0 0 20px; border: var(--border-solid1); background: transparent;}
.block-order-method h2 { font-family: var(--font-family-ship); font-size: 20px; font-weight: 700; padding: 10px 0; margin: 0 0 10px;}
.block-order-method h3 { font-size: 16px; font-weight: 700; margin: 0 0 12px 0;}
.block-order-method address { font-size: 13px; line-height: 1.6; padding-top: 10px;}
.block-order-method .block-icon { margin: 0 15px 0 0;}
.block-order-method dt { font-weight: 700;}
.block-order-method--container { display: block; overflow: hidden;}
.block-order-method--contents { width: calc(100% - 360px); float: left;}
.block-order-method--name-sei,
.block-order-method--name-mei,
.block-order-method--kana-sei,
.block-order-method--kana-mei { display: inline-block;}
.block-order-method--value-label { width: 60px; text-align: center; display: inline-block;}

/* 届け先 */
#address.block-order-method--dest { margin: 30px 0;}
#address.block-order-method--dest .block-order-method--dest-content { padding: 0; border: none;}
#address.block-order-method--dest .block-order-method--dest-title-salesinclude { margin-top: 20px;}
#address.block-order-method--dest .block-order-method--dest-note-salesinclude+.block-order-method--dest-list { margin-top: 20px;}
.block-order-method--payment-content .block-order-method--coupon,
.block-order-method--payment-content .block-order-method--promotion,
.block-order-method--payment-content .block-order-method--point-use,
.block-order-method--payment-method { margin: 25px 0;}
.block-order-method--payment .block-order-method--payment-content { padding: 0 20px;}

/* 右サイドエリア */
.block-order-method--side-area { position: relative; float: right;}
.block-order-method--side-contents { width: 320px; margin: 0 0 0 40px; background: #eee;}
.block-order-method--procedure { padding: 4px; margin-bottom: 20px; border: var(--color-bg-dark) 6px solid; background: #FFF; overflow: hidden;}
.block-order-method--procedure-container { padding: 14px; background: #FFF;}
.block-order-method--next-btn { width: 100%; height: 64px; padding: 14px 0; margin: 5px 0; font-size: 18px !important; font-weight: 700; text-align: center;}

/* お届け先 */
.block-order-method--dest-item:first-child { border-top: var(--border-solid1);}
.block-order-method--dest-item { padding: 20px; border-bottom: var(--border-solid1); overflow: hidden;}
.block-order-method--dest-item address { float: left;}
.block-order-method--dest-item-nickname { font-weight: 700;}
.block-order-method--dest-title-salesinclude { font-size: 16px; font-weight: 700;}
.block-order-method--dest-item-salesinclude { font-weight: 700;}
.block-order-method--dest-change { padding: 10px; margin: 0 0 10px; background: #F8F8F8; border: var(--color-bg-dark) 1px solid;}
.block-order-method--dest-change strong { font-weight: 700;}
.block-order-method--dest-change span { margin-left: 20px; font-size: 12px;}
.block-order-method--dest-add { padding: 20px; text-align: right;}
.block-order-method--dest-item-edit { text-align: right;}
.block-order-method--dest-list address { margin: 0 0 0 20px;}
.block-regular-cycle--cycle-type label { margin: 5px 0; display: inline-block;}

/* 商品情報 */
.block-order-method--goods-list li { padding: 0 0 20px; margin: 0 0 20px; border-bottom: var(--border-solid1); position: relative; overflow: hidden;}
.block-order-method--goods-list li:last-child { border-bottom: none;}
.block-order-method--goods-item-image { width: 200px; height: calc(200px * 1.312); margin: 0 20px 0 0; background: var(--image-bg-color); float: left;}
.block-order-method--goods-item-image figure { width: 100%; height: 100%; display: flex; justify-content: center; align-items: center; background: var(--image-bg-color); position: absolute; top: 0; left: 0; right: 0; bottom: 0;}
.block-order-method--goods-item-name,
.block-order-method--goods-item-set-name { font-family: var(--font-family-ship); font-size: 16px; font-weight: 700; line-height: 1.6;}
.block-order-method--goods-item-comment { padding: 20px 0 15px;}
.block-order-method--sales-detail-append-item { overflow: hidden;}

/* 配送方法 */
.block-order-method--spec-content dl { margin: 0 0 10px;}
.block-order-method--spec-content dl dt { float: left;}
.block-order-method--spec-content dl dd { margin-left: 8em;}

/* お支払い情報 */
.block-order-method--coupon-content,
.block-order-method--promotion-content,
.block-order-method--point-use { margin: 0 0 10px;}
.block-order-method--payment-method-select li { margin: 0 0 10px;}
.block-order-method--payment-method-select li .help-block { margin-left: 30%; display: inline-block;}
.block-order-method--point-use-select { padding: 10px; margin-bottom: 10px; border: var(--color-bg-dark) 1px solid; background: #F8F8F8;}
.block-order-method--point-use-select label { padding: 0 23px 0 5px; cursor: pointer;}
.block-order-method--current-point { margin: 0 0 10px;}
.block-order-method--current-point-num { font-weight: 700;}
.block-order-method--coupon-available-btn { margin: 0 0 0 14px;}

/* その他 */
.block-order-method--sales-append-content { padding: 20px 20px 0 20px; margin: 0 0 20px; border: var(--color-bg-dark) 1px solid; background: #FFF;}
.block-order-method--sales-append-content .fieldset { margin-top: 0; margin-bottom: 20px;}
.block-order-method--sales-append-content .fieldset .form-group { border-left: #E5E5E5 1px solid; border-right: #E5E5E5 1px solid;}
.block-order-method--sales-append-content .form-label,
.block-order-method--sales-append-content .constraint { background-color: #F8F8F8;}
.block-order-method--sales-append-content .form-group:not(:last-child) { border-bottom: var(--color-bg-dark) 1px solid;}

/* クーポンダイアログ */
.block-order-method--coupondialog-wrapper { max-height: 300px; overflow-y: auto;}
.block-order-method--coupondialog-table { width: 100%;}
.block-order-method--coupondialog-table td { background: #FFF;}
.block-order-method--coupondialog-header-code { width: 180px;}
.block-order-method--coupondialog-header-select { width: 180px;}

.block-order-method--store-delivery-store-search-btn { padding: 9px; margin: 0 0 2px 0; height: 40px;}

/* ----------------------------------
 注文内容確認(通常フロー)
---------------------------------- */
/* クレジットカード設定 */
.block-order-estimate--pay-input { margin-bottom: 10px; border: none; background: none;}
.block-order-estimate--pay-header { padding: 10px; margin: 0 0 15px 0; color: #FFF; background: #333;}
.block-order-estimate--pay-input .form-group .form-label { width: 25%;}
.block-order-estimate--pay-savecard,
.block-order-estimate--pay-selectcard { padding: 0 0 0 20px;}
.block-order-estimate--pay-input .block-common-alert-list { margin: 10px;}

/* 画面内共通設定 */
.block-order-estimate--container { position: relative; overflow: hidden;}
.block-order-estimate h2 { padding: 10px 0; margin: 0 0 10px; font-family: var(--font-family-ship); font-size: 20px; font-weight: 700;}
.block-order-estimate h3 { margin: 0 0 12px 0; font-size: 16px; font-weight: 700;}
.block-order-estimate h3 a { width: 70px; padding: 5px; margin: 0 0 0 20px; font-size: 13px; font-weight: normal;}
.block-order-estimate--salesinclude-btn { width: auto !important; margin: 0 0 0 5px !important; font-size: 13px; font-weight: normal;}
.block-order-estimate address { padding-top: 10px; margin-left: 1em; font-size: 13px; line-height: 1.6; word-wrap: break-word;}
.block-order-estimate--point { font-size: 16px; font-weight: 700; color: var(--color-alert);}
.block-order-estimate--confirmation,
.block-order-estimate--date-spec-confirmation,
.block-order-estimate--novelty,
.block-order-estimate--goods-content,
.block-order-estimate--sales-append,
.block-order-estimate--regular-cycle-confirmation,
.block-order-estimate--comment-content,
.block-order-estimate--amazonpay-login { padding: 20px; margin: 0 0 20px; border: var(--border-solid1); background: transparent;}
.block-order-estimate--entry { margin-top: 10px; padding: 0 10px;}
.block-order-estimate--register-customer { margin-bottom: 10px;}
.block-order-estimate--register-customer-checkbox { display: table-cell;}
.block-order-estimate--entry-customer { margin-bottom: 5px;}
.block-order-estimate--entry-customer-message { font-size: 12px;}
.block-order-estimate--entry-customer-point { color: var(--color-alert); font-size: 15px; font-weight: 700;}
.block-order-estimate--uid-label { margin-bottom: 3px;}
.block-order-estimate--uid-label-font { margin-right: 10px;}
.block-order-estimate--uid-count { margin-top: 0;}
.block-order-estimate--pwd { margin-top: 10px;}
.block-order-estimate--pwd-label { margin-bottom: 3px;}
.block-order-estimate--pwd-label-font { margin-right: 10px;}
.block-order-estimate--pwd-count { margin-top: 0;}
.block-order-estimate--mailnews { margin-top: 10px;}
.block-order-estimate--mailnews-title { font-weight: 700;}
.block-order-estimate--mailnews-label { margin-bottom: 3px; font-weight: 700; margin-right: 10px;}
.block-order-estimate--mailnews-message { font-size: 12px;}
.block-order-estimate--procedure { margin: 0 0 20px; padding: 4px; border: var(--color-bg-dark) 6px solid; background: #FFF;}
.block-order-estimate--dest-address-item-register-input-form.block-order-estimate--dest-address-nickname.constraint { text-align: right;}
.block-order-estimate--dest-address-item-register-input-form.block-order-estimate--dest-address-nickname.constraint .required { margin: -38px 20px 16px 0; display: block;}

/* 注文内容確認左サイドエリア */
.block-order-estimate--content { width: calc(100% - 360px); float: left;}

/* お届け先情報 */
.block-order-estimate--confirmation { overflow: hidden;}
.block-order-estimate--confirmation-list { width: calc(50% - 15px); vertical-align: top; display: inline-block;}
.block-order-estimate--confirmation-list:nth-of-type(2n+1) { margin-right: 20px;}
.block-order-estimate--confirmation-list li { height: 200px; padding: 0 0 20px 0;}
.block-order-estimate--confirmation-list li p { margin-left: 0.5em;}
.block-order-estimate--confirmation-title h3 { height: 35px; padding-bottom: 5px; border-bottom: var(--border-solid1); overflow: hidden;}
.block-order-estimate--confirmation-title h3 span { float: right;}
.block-order-estimate--confirmation-list-full li { padding: 0 0 20px 0;}
.block-order-estimate--amazonpay-wallet { border: var(--border-solid1); clear: both;}
.block-order-estimate--amazonpay-wallet-header { padding: 10px; color: #FFF; background: #333;}
.block-order-estimate--amazonpay-wallet-content { height: 270px; margin: 15px auto;}
.block-order-estimate--amazonpay-wallet-widget { width: 600px; margin: 0 auto;}

/* 配送希望情報 */
.block-order-estimate--date-spec-confirmation { overflow: hidden;}
.block-order-estimate--confirmation-message { font-size: 12px; color: #555;}

/* ノベルティ商品のノベルティ選択 */
.block-order-estimate--novelty-item label { display: block; cursor: pointer;}
ul.block-order-estimate--novelty-list { padding: 0 !important;}
ul.block-order-estimate--novelty-list li { width: 100%; float: none !important;}
ul.block-order-estimate--novelty-list .block-order-estimate--novelty-item { display: flex; align-items: center;}
ul.block-order-estimate--novelty-list .block-order-estimate--novelty-item .block-order-estimate--novelty-item-image { width: 120px; height: auto;}
ul.block-order-estimate--novelty-list .block-order-estimate--novelty-item .block-order-estimate--novelty-item-image figure {
	width: 100%;
	height: auto;
	display: flex;
	justify-content: center;
	align-items: center;
	background: var(--image-bg-color);
}
ul.block-order-estimate--novelty-list .block-order-estimate--novelty-item .block-order-estimate--novelty-item-image figure img { width: 100%; height: auto;}
ul.block-order-estimate--novelty-list .block-order-estimate--novelty-item .block-order-estimate--novelty-item-goods { width: calc(100% - 120px); padding: 0 0 0 20px;}

/* ご注文商品 */
.block-order-estimate--goods-list li { margin: 0 0 20px; position: relative; overflow: hidden;}
.block-order-estimate--goods-list li + li { padding-top: 20px; border-top: var(--border-solid1);}
.block-order-estimate--goods-item-image { width: 200px; height: calc(200px * 1.312); background: #FFF;}
.block-order-estimate--goods-item-image figure { width: 100%; height: 100%; display: flex; justify-content: center; align-items: center; background: var(--image-bg-color); position: absolute; top: 0; left: 0; right: 0; bottom: 0;}
.page-estimate .block-icon { margin: 0 15px 0 0; flex-direction: row; column-gap: 5px;}
.page-estimate .block-icon span { margin: 0;}
.block-order-estimate--goods-item { width: 50%; float: left;}
.block-order-estimate--goods-item-comment { margin-top: 10px; overflow: hidden;}
.block-order-estimate--goods-price-items { float: right;}
.block-order-estimate--goods-price-items .block-order-estimate--amt { width: 140px; margin: 0 10px 0 0; font-weight: 700; text-align: right;}
.block-order-estimate--goods-price-items .block-order-estimate--amt::after { content: '(Tax in)'; margin: 0 0 0 3px; font-family: var(--font-family-lato); font-size: 8px; font-weight: 400;}
.block-order-estimate--goods-item-name,
.block-order-estimate--goods-item-set-name { font-family: var(--font-family-ship); font-size: 16px; font-weight: 700; line-height: 1.6;}

/* ご注文商品 注文明細拡張情報 */
.block-order-estimate--sales-detail-append-link-edit { text-decoration: underline;}

/* その他 */
.block-order-estimate--sales-append-list { width: 100%;}
.block-order-estimate--sales-append-list th { width: 30%; padding: 12px; border-top: var(--color-bg-dark) 1px solid; border-left: var(--color-bg-dark) 1px solid; border-bottom: var(--color-bg-dark) 1px solid; text-align: left; font-weight: 700; vertical-align: top; color: #FFF; background-color: #999;}

/* AmazonPayログイン */
.block-order-estimate--amazonpay-loginform { margin: 10px 0 0;}
.block-order-estimate--amazonpay-loginform .form-label { text-align: left;}

/* 備考 */
.block-order-estimate--comment { display: none;}
.block-order-estimate--comment-content textarea { width: 100%;}

/* 注文内容確認右サイドエリア */
.block-order-estimate--order-terms-link { text-decoration: underline; cursor: pointer;}
.block-order-estimate--agreebody { width: 100%; height: 400px;}
.block-order-estimate--side-area { float: right; position: relative;}
.block-order-estimate--side-contents { width: 320px; margin: 0 0 0 20px;}
.block-order-estimate--procedure-container { padding: 14px; background: inherit;}
.block-order-estimate--commit { margin: 0 0 10px; text-align: center;}
.block-order-estimate--commit .block-order-estimate--commit-btn { width: 100%; height: 64px; padding: 14px 0; margin: 5px 0; font-size: 18px !important; font-weight: 700; text-align: center;}
.block-order-estimate--total { padding: 15px 0; margin: 20px 0; border-top: var(--color-bg-dark) 1px solid; border-bottom: var(--color-bg-dark) 1px solid; font-size: 16px; background: #FFF;}
.block-order-estimate--total > span { font-family: var(--font-family-lato); font-size: 26px; font-weight: 700; color: var(--color-base); display: block;}
.block-order-estimate .block-exchange-price { margin-bottom: 12px; text-align: center;}
.block-order-estimate--total-price { font-size: 18px; font-weight: 700;}
.block-order-estimate--total-tax { font-family: var(--font-family-lato); font-size: 0;}
.block-order-estimate--total-tax::after { content: '(Tax in)'; margin: 0 0 0 5px; font-family: var(--font-family-lato); font-size: 14px; font-weight: 400;}
.block-order-estimate--point-add { margin: 0 0 10px; border-bottom: var(--color-bg-dark) 1px solid; font-size: 14px; overflow: hidden;}
.block-order-estimate--point-add dt { width: 40%; float: left;}
.block-order-estimate--point-add dd { width: 60%; text-align: right; float: left;}
.block-order-estimate--point-add-num { font-size: 16px; color: var(--color-alert);}
.block-order-estimate--point-add dd + dd { width: 100%; padding-bottom: 20px; color: var(--color-alert); font-size: 12px; text-align: left;}
.block-order-estimate--price-items { margin: 20px 0 0; letter-spacing: -.4em; color: #555;}
.block-order-estimate--price-items dt { width: 60%; margin: 0 0 10px; letter-spacing: normal; display: inline-block;}
.block-order-estimate--price-items dd { width: 40%; text-align: right; letter-spacing: normal; display: inline-block;}

/* メッセージ「クール便追加料金を含む」 */
dd.block-order-estimate--cool-postage { width: 100%; margin: 0 0 10px; text-align: right;}
.block-order-estimate--promotion-novelty-helper { padding: 10px 0; margin: 0 0 10px; border: var(--color-alert) 1px solid; text-align: center; background: transparent; color: var(--color-alert);}
.block-order-estimate--promotion-novelty-helper .block-order-estimate--promotion-novelty-content { color: var(--color-alert);}

/* お届け先の変更(ダイアログ)*/
.block-order-estimate--address-frame { max-width: 725px; margin: 0 auto; background: #F8F8F8;}
.block-order-estimate--value-label { width: 60px; text-align: center; display: inline-block;}

/* ×ボタン */
.block-order-estimate--address-frame-close { position: relative; cursor: pointer;}
.block-order-estimate--address-frame-close span { width: 20px; height: 20px; display: block; position: absolute; top: 12px; right: 12px;}
.block-order-estimate--address-frame-close span:before { content: ''; width: 15px; height: 2px; background: #FFF; position: absolute; top: 6px; right: 0; transform: rotate(45deg);}
.block-order-estimate--address-frame-close span:after  { content: ''; width: 2px; height: 15px; background: #FFF; position: absolute; top: 0; right: 6px; transform: rotate(45deg);}

/* お届け先の変更 */
.block-order-estimate--address-frame h2 { padding: 10px; margin: 0; border-bottom: none; font-size: 16px; color: #FFF; background: #333;}
.block-order-estimate--dest-address-item-register-input-title { font-weight: 700;}
.block-order-estimate--dest-address-select,
.block-order-estimate--amazonpay-address-select { padding: 5px 20px;}
.block-order-estimate--dest-salesinclude-address-select,
.block-order-estimate--dest-salesinclude-address-note { padding: 0 20px;}
.block-order-estimate--amazonpay-address-area p { margin-left: 20px;}
.block-order-estimate--dest-address-list { padding: 20px;}
.block-order-estimate--amazonpay-address-container { padding: 0 0 10px;}
.block-order-estimate--dest-address-item,
.block-order-estimate--dest-address-item-register { width: 220px; height: 220px; vertical-align: top; display: inline-block; position: relative;}
.block-order-estimate--dest-address-item-container { height: 130px; margin: 5px 0 0; overflow-y: auto; overflow-x: hidden;}
.block-order-estimate--dest-address-item,
.block-order-estimate--dest-address-item-register { padding: 10px; margin: 0 5px 10px 0; border: var(--color-bg-dark) 1px solid; background: #FFF;}
.block-order-estimate--dest-address-item address { word-wrap: break-word;}
.block-order-estimate--dest-address-change-btn { width: 100%; height: 31px;}
.block-order-estimate--dest-address-register-btn { width: 100%; height: 31px; display: flex; justify-content: center; align-items: center;}
.block-order-estimate--dest-address-item-register .block-order-estimate--dest-address-item-buttons { width: 200px; margin: -20px 0 0; position: absolute; top: 50%;}
.block-order-estimate--dest-address-change { text-align: right;}
.block-order-estimate--dest-address-change,
.block-order-estimate--dest-address-item-buttons { height: 31px;}
.block-order-estimate--dest-address-item-buttons__selected { width: 200px; border: var(--color-alert) 1px solid; font-weight: 700; text-align: center; vertical-align: middle; color: var(--color-alert); display: table-cell; background: transparent; cursor: default;}

/* お届け先情報入力 */
.block-order-estimate--dest-address-item-register-input-form .fieldset-vertical,
.block-order-estimate--guest-address-input-form { padding: 20px; border: var(--color-bg-dark) 1px solid; background: #FFF;}
.block-order-estimate--dest-address-item-register-input-form .fieldset-vertical { margin: 10px 0;}
.block-order-estimate--dest-address-item-register-input-form .fieldset-vertical .form-label { border-bottom: var(--color-base) 1px solid; background: none;}
.block-order-estimate--dest-address-item-register-input-form .fieldset-vertical .form-group { position: relative;}
.block-order-estimate--dest-address-item-register-input-form .fieldset-vertical .form-group .required { position: absolute; top: 46px; right: 0;}
.block-order-estimate--dest-address-name-sei + .block-order-estimate--dest-address-name-mei { margin-top: 10px;}
.block-order-estimate--dest-address-kana-sei + .block-order-estimate--dest-address-kana-mei { margin-top: 10px;}
.block-order-estimate--dest-address-name .checktype_name,
.block-order-estimate--dest-address-kana .checktype_kana,
.block-order-estimate--guest-address-name .checktype_name,
.block-order-estimate--guest-address-kana .checktype_kana { margin: 0 0 10px;}

/* お届けサイクル */
.block-order-estimate--regular-cycle { width: 80%;}
.block-order-estimate--regular-cycle th { width: 30%; padding: 12px; border-top: var(--color-bg-dark) 1px solid; border-left: var(--color-bg-dark) 1px solid; border-bottom: var(--color-bg-dark) 1px solid; font-weight: 700; text-align: left; vertical-align: top; color: #FFF; background-color: #999;}

/*  注文完了(通常・ギフトフロー共通)  */
.block-order-complete--customerentry-wrapper { width: 1080px; padding: 40px; margin: 0 auto 50px; border: none; background: transparent;}
.block-order-complete--message { margin: 0 0 30px; font-size: 16px; text-align: center;}
.block-order-complete--message p { font-size: 16px; text-align: center;}
.block-order-complete--orderinfo { border: none; background: transparent;}
.block-order-complete--orderinfo dt { width: 30%; font-weight: 700; background: #F8F8F8; float: left;}
.block-order-complete--orderinfo dt,
.block-order-complete--orderinfo dd { padding: 8px; border-bottom: var(--color-bg-dark) 1px solid;}
.block-order-complete--orderinfo dd { margin-left: 30%;}
.block-order-complete--orderinfo dd:after { clear: both; display: block;}
.block-order-complete--home { margin: 20px auto; text-align: center;}
.block-order-complete--home-btn { width: 300px; padding: 20px;}
.block-order-complete--customerentry-form { margin: 20px 0 0;}
.block-order-complete--rules { margin: 10px 0 0;}
.block-order-complete--orderid { width: 100%; margin-bottom: 10px;}
.block-order-complete--orderid th { width: 30%; padding: 20px 30px;}
.block-order-complete--orderid td { width: 70%; padding: 20px 30px;}
.block-order-complete--salesinclude { width: 100%; margin-bottom: 10px;}
.block-order-complete--salesinclude th { width: 30%;}
.block-order-complete--salesinclude td { width: 70%;}
.block-order-complete--convenience { width: 100%; margin-bottom: 10px;}
.block-order-complete--convenience th { width: 30%;}
.block-order-complete--convenience td { width: 70%;}

/* ------------------------------
 ギフトフロー
------------------------------ */
/* 配送先選択 */
.block-order-gift-dest h2 { padding: 10px 0; margin: 0 0 10px; font-size: 20px; font-weight: 700;}
.block-order-gift-dest--check-all { margin: 0 0 10px;}
.block-order-gift-dest--list-wrapper,
.block-order-gift-dest--method-sender-info,
.block-order-gift-dest--address-item,
.block-order-gift-dest--method-sender-info-edit { padding: 20px; margin: 0 0 20px; border: var(--color-bg-dark) 1px solid; background: #FFF;}

/* お届け先配送情報エリア */
.block-order-gift-dest--address-item { background: #F8F8F8;}
.block-order-gift-dest--address-item-title { font-weight: 700;}
.block-order-gift-dest--address-item address { margin: 5px 0 5px 20px;}
.block-order-gift-dest--address-change { text-align: right;}
.block-order-gift-dest--address-error { margin: 0 0 10px;}

/* 贈り主情報エリア */
.block-order-gift-dest--value-label { width: 60px; text-align: center; display: inline-block;}
.block-order-gift-dest--method-sender-change label { font-weight: 700;}
.block-order-gift-dest--method-sender-info address { margin: 0 0 10px;}
.block-order-gift-dest--address-item { background: #F8F8F8;}
.block-order-gift-dest--address-customer .block-order-gift-dest--address-item { margin-top: 20px;}
.block-order-gift-dest--method-sender-info-edit { margin: 10px 0 0;}
.block-order-gift-dest--method-sender-btn { text-align: right;}
.block-order-gift-dest--action-buttons { margin: 0 0 20px;}

/* 配送先商品追加 */
.block-order-gift-select h2 { font-size: 20px; font-weight: 700;}
.block-order-gift-select h3 { font-size: 16px; font-weight: 700;}
.block-order-gift-select--sender-info,
.block-order-gift-select--delivery-dest-content,
.block-order-gift-select--delivery-date,
.block-order-gift-select--payment-content,
.block-order-gift-select--point-use-select { padding: 20px; margin: 0 0 20px; border: var(--color-bg-dark) 1px solid; background: #FFF;}
.block-order-gift-select--sender-info { margin: 0 0 5px;}
.block-order-gift-select--delivery-dest-add { padding: 5px 0; margin: 0 0 10px; text-align: right;}
.block-order-gift-select--delivery-dest-goods-select,
.block-order-gift-select--point-use-select { padding: 10px; margin: 0;}

/* お届け先 */
.block-order-gift-select--delivery-dest-header { position: relative;}
.block-order-gift-select--delivery-dest-delete { position: absolute; right: 0; top: 3px;}
.block-order-gift-select--delivery-dest-nickname { margin-bottom: 10px; font-weight: 700;}
.block-order-gift-select--delivery-dest-nickname + p { margin-bottom: 10px;}
.block-order-gift-select--delivery-dest-address address { margin: 0 0 20px;}
.block-order-gift-select--delivery-dest-goods-content-list table { width: 100%;}
.block-order-gift-select--delivery-dest-goods-name { width: 800px;}
.block-order-gift-select--delivery-dest-goods-qty { text-align: right;}
.block-order-gift-select--delivery-dest-goods-qty input { margin: 0 0 0 10px; text-align: right;}

/* お届け先商品 */
.block-order-gift-select--delivery-dest-goods-content-info,
.block-order-gift-select--delivery-dest-goods-noshi { width: 100%; margin: 0 0 20px;}
.block-order-gift-select--delivery-dest-goods-price,
.block-order-gift-select--delivery-dest-goods-total,
.block-order-gift-select--delivery-dest-goods-noshi-charge { width: 18%; text-align: right;}
.block-order-gift-select--delivery-dest-goods-sales-qty { width: 100px;}
.block-order-gift-select--delivery-dest-goods-sales-qty input { text-align: right;}
.block-order-gift-select--delivery-dest-goods-content-info-delete,
.block-order-gift-select--delivery-dest-goods-noshi-edit { width: 70px;}
.block-order-gift-select--delivery-dest-goods-noshi th,
.block-order-gift-select--delivery-dest-goods-noshi td { text-align: left;}
.block-order-gift-select--delivery-dest-total table { margin-left: auto;}

/* 配送方法 */
.block-order-gift-select--delivery-date-content { display: table;}
.block-order-gift-select--delivery-date-content dt,
.block-order-gift-select--delivery-date-content dd { display: table-cell;}

/* お支払い情報 */
.block-order-gift-select--method-list li { margin: 0 0 10px;}
.block-order-gift-select--method-list li .help-block { margin-left: 30%; display: inline-block;}
.block-order-gift-select--method-list label { cursor: pointer;}
.block-order-gift-select--current-point { margin: 0 0 10px;}
.block-order-gift-select--current-point-num { font-weight: 700;}
.block-order-gift-select--coupon-available-btn { margin: 0 0 0 14px;}
.block-order-gift-select--point-use-select { background: #F8F8F8;}
.block-order-gift-select--point-use-select label { padding: 0 23px 0 5px; cursor: pointer;}

/* その他 */
.block-order-gift-select--sales-append-content { padding: 20px 20px 0 20px; margin: 0 0 20px; border: var(--color-bg-dark) 1px solid; background: #FFF;}
.block-order-gift-select--sales-append-content .fieldset { margin-top: 0; margin-bottom: 20px;}
.block-order-gift-select--sales-append-content .fieldset .form-group { border-left: #E5E5E5 1px solid; border-right: #E5E5E5 1px solid;}
.block-order-gift-select--sales-append-content .form-group:not(:last-child) { border-bottom: var(--color-bg-dark) 1px solid;}

/* ------------------------------
 のし・ラッピング設定
------------------------------ */
.block-order-gift-noshi h1 { padding: 15px 0 0; font-size: 24px; font-weight: 700;}
.block-order-gift-noshi h2 { font-size: 20px; font-weight: 700;}
.block-order-gift-noshi h3 { font-size: 16px; font-weight: 700;}
.block-order-gift-noshi--sender { font-weight: 700;}
.block-order-gift-noshi--sender p { margin-bottom: 10px;}
.block-order-gift-noshi--sender address { margin-bottom: 15px;}
.block-order-gift-noshi--noshi-select,
.block-order-gift-noshi--purpose-select,
.block-order-gift-noshi--paper-wrapper,
.block-order-gift-noshi--nameprint-wrapper,
.block-order-gift-noshi--covertype-select,
.block-order-gift-noshi--wrap-select,
.block-order-gift-noshi--bag-wrapper { padding: 20px; margin: 0 0 20px; border: var(--color-bg-dark) 1px solid; background: #FFF;}
.block-order-gift-noshi--noshi-select li,
.block-order-gift-noshi--purpose-select li,
.block-order-gift-noshi--paper-wrapper li,
.block-order-gift-noshi--nameprint-wrapper li,
.block-order-gift-noshi--covertype-select li,
.block-order-gift-noshi--wrap-select li,
.block-order-gift-noshi--bag-wrapper li { margin: 0 10px 0 0; vertical-align: top; display: inline-block;}
.block-order-gift-noshi--paper-item-price,
.block-order-gift-noshi--bag-item-price,
.block-order-gift-noshi--wrap-item-price { display: block;}
.block-order-gift-noshi--paper-message,
.block-order-gift-noshi--covertype-message,
.block-order-gift-noshi--wrap-message,
.block-order-gift-noshi--bag-message { width: 60%; padding: 20px; margin: 10px 0; border: var(--color-bg-dark) 1px solid; background: #F8F8F8;}
.block-order-gift-noshi--setting-message { text-align: center; font-weight: 700;}
.block-order-gift-noshi--nameprint-input { margin: 15px 0 0;}
.block-order-gift-noshi--setting-all-btn { margin: 0 0 20px;}

/*  注文内容確認(ギフトフロー)  */
.block-order-gift-confirmation h2 { font-size: 20px; font-weight: 700;}
.block-order-gift-confirmation h3 { margin: 0 0 12px; font-size: 16px; font-weight: 700;}
.block-order-gift-confirmation table { width: 100%;}
.block-order-gift-confirmation table .block-order-gift-confirmation--item-qty-header,
.block-order-gift-confirmation table .block-order-gift-confirmation--sending-item-qty-header { width: 6em;}
.block-order-gift-confirmation--item-image figure,
.block-order-gift-confirmation--sending-item-image figure { width: 200px; height: 200px; background: #FFF;}
.block-order-gift-confirmation--item-image,
.block-order-gift-confirmation--sending-item-image { width: 220px;}
.block-order-gift-confirmation--order-item-wrapper,
.block-order-gift-confirmation--order,
.block-order-gift-confirmation--destination-address-wrapper,
.block-order-gift-confirmation--other-wrapper,
.block-order-gift-confirmation--novelty-content,
.block-order-gift-confirmation--order-comment,
.block-order-gift-confirmation--payment-method-wrapper { padding: 20px; margin: 0 0 20px; background: #FFF; border: var(--color-bg-dark) 1px solid; overflow: hidden;}
.block-order-gift-confirmation--order-item-detail { width: 65%; vertical-align: top; float: left;}
.block-order-gift-confirmation--order-item-summary { width: 35%; padding: 0 0 0 3%; float: right;}
.block-order-gift-confirmation--order-item-summary-table th,
.block-order-gift-confirmation--point-summary th { width: 180px;}
.block-order-gift-confirmation--order-item-summary-table td,
.block-order-gift-confirmation--point-summary td { text-align: right;}
.block-order-gift-confirmation--item-qty-header { width: 50px;}
.block-order-gift-confirmation--item-amount,
.block-order-gift-confirmation--item-qty { text-align: right;}

/* ノベルティ商品のノベルティ選択 */
.block-order-gift-confirmation--novelty-item label { cursor: pointer;}
.block-order-gift-confirmation--novelty-item { width: 100%; margin-bottom: 10px; display: table;}
.block-order-gift-confirmation--novelty-item-image,
.block-order-gift-confirmation--novelty-item-goods { display: table-cell; vertical-align: middle;}
.block-order-gift-confirmation--novelty-item-image { width: 200px;}
.block-order-gift-confirmation--novelty-item-goods { padding-left: 10px; width: auto;}
.block-order-gift-confirmation--novelty-item-image figure { width: 200px; height: 200px; background: #FFF;}

/* 配送情報 */
.block-order-gift-confirmation--shipping-address { width: 65%; vertical-align: top; float: left;}
.block-order-gift-confirmation--shipping-info { width: 35%; padding: 0 0 0 3%; float: right;}
.block-order-gift-confirmation--shipping-info-detail th { width: 150px;}

/* お届け先 */
.block-order-gift-confirmation--destination-address { margin: 0 0 10px;}
.block-order-gift-confirmation--sending-item-qty-header { width: 50px;}
.block-order-gift-confirmation--sending-item-qty { text-align: right;}
.block-order-gift-confirmation--sending-item-comment-header,
.block-order-gift-confirmation--sending-item-noshi-header { width: 220px;}

/* その他 */
.block-order-gift-confirmation--other-detail th { width: 300px;}
.block-order-gift-confirmation--order-comment textarea { width: 100%;}
.block-order-gift-confirmation--order-comment-message { margin: 50px 0; font-weight: 700; text-align: center;}
.block-order-gift-confirmation--order-comment-message.top { margin-bottom: 20px;}
