@charset "Shift_JIS";

/* ---------------------------------------
 カート投入時アラート画面
---------------------------------------- */
div.page_goodsagree_ {}

/* ---------------------------------------
 カート画面
---------------------------------------- */
/* メッセージ */
div.page_cart_ p.info_ { padding: 0; font-size: 14px; font-weight: 400; line-height: 1.6;}
div.page_cart_ p.safari { margin: 0 0 20px 0; font-size: 14px; font-weight: 400; line-height: 1.6;}
div.page_cart_ p.CautionText { margin: 0 0 20px 0; font-size: 14px; font-weight: 400; line-height: 1.6; color: #333;}
div.page_cart_ div.info_ p { font-size: 14px; font-weight: 400; line-height: 1.6;}
div.page_cart_ div.info_ p.error_ { margin: 5px 0; padding-left: 1em; text-indent: -1em;}
div.page_cart_ div.info_ p.error_ + .message { margin-left: 2em; color: #EC0000;}

/* お買い物を続ける */
div.page_cart_ .btn_back_top_wrap_ { margin: 40px 0 20px 0; text-align: center;}
div.page_cart_ .btn_back_top_wrap_ a.btn_back_top_ { font-size: 16px; font-weight: 400; text-align: center; text-decoration: underline; color: #1D3994; transition: 0.2s;}

/* お買い物を続ける（カートが空の場合） */
div.page_cart_.cart-empty .btn_back_top_wrap_ a.btn_back_top_ { 
	width: calc(100% - 20px);
	height: 56px;
	margin: 0 auto;
	border-radius: 56px;
	font-size: 16px;
	font-weight: 700;
	text-align: center;
	text-decoration: none;
	color: #FFF;
	display: flex;
	justify-content: center;
	align-items: center;
	background: #CC0000;
}

/* よくあるお問い合わせはこちら */
div.page_cart_ div.faq_link_ { margin: 0 0 60px 0; padding: 0 10px; text-align: center;}
div.page_cart_ div.faq_link_ a { min-height: 56px; border: #333 1px solid; border-radius: 56px; font-size: 16px; font-weight: 700; text-decoration: none; color: #333; display: flex; justify-content: center; align-items: center;}

/* カート内商品 */
div.page_cart_ .info_ + div.cart-list_ { margin-top: 30px;}
div.page_cart_ div.cart-list_ + div.cart-list_ { margin-top: 40px;}

/* 商品合計と送料の表示 */
div.page_cart_ div.cart-list-section_top_ { width: 100%; margin: 0 0 20px; padding: 0; border-radius: 6px;}
div.page_cart_ div.cart-list-section_top_ > h2 { margin: 0 0 20px 0; padding: 0; border: none; font-size: 20px; font-weight: 500;}
div.page_cart_ div.cart-list-section_top_ div.cart-list-sumally_ { padding: 0; margin: 0; border: none; border-radius: 5px; background: #FFF;}
div.page_cart_ div.cart-list-section_top_ div.cart-list-sumally_inner_ { padding: 20px; border-radius: 6px; background: #F2F2F2;}
div.page_cart_ div.cart-list-section_top_ div.cart-list-sumally_inner_ > p { margin-top: 30px; font-size: 14px; line-height: 1.6; color: #EC0000;}
div.page_cart_ div.cart-list-section_top_ div.cart-list-sumally_inner_ dl + dl { margin-top: 10px;}
div.page_cart_ div.cart-list-section_top_ div.cart-list-sumally_inner_ dl.total { letter-spacing: 0; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center;}
div.page_cart_ div.cart-list-section_top_ div.cart-list-sumally_inner_ dl.total dt { padding: 0 16px 0 0; font-size: 16px; word-break: keep-all; white-space: nowrap;}
div.page_cart_ div.cart-list-section_top_ div.cart-list-sumally_inner_ dl.total dd.price { margin: 0 0 0 auto; font-size: 20px; text-align: right; word-break: keep-all;}
div.page_cart_ div.cart-list-section_top_ div.cart-list-sumally_inner_ dl.total dd.price span { font-size: 24px;}
div.page_cart_ div.cart-list-section_top_ div.cart-list-sumally_inner_ dl.postage { letter-spacing: 0; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-start;}
div.page_cart_ div.cart-list-section_top_ div.cart-list-sumally_inner_ dl.postage dt { padding: 0 16px 0 0; font-size: 16px; word-break: keep-all; white-space: nowrap;}
div.page_cart_ div.cart-list-section_top_ div.cart-list-sumally_inner_ dl.postage dt span { font-size: 12px; font-feature-settings: "palt"; display: block;}
div.page_cart_ div.cart-list-section_top_ div.cart-list-sumally_inner_ dl.postage dd.price { margin: 0 0 0 auto; font-size: 20px; text-align: right; word-break: keep-all;}
div.page_cart_ div.cart-list-section_top_ div.cart-list-sumally_inner_ dl.postage dd.price span { font-size: 20px;}
div.page_cart_ div.cart-list-section_top_ .button-area_ { padding: 0 24px 1px; margin: 0 0 30px 0;}
div.page_cart_ div.cart-list-section_top_ .button-area_ p.destination-notes { margin-bottom: 0;}
@media screen and (max-width: 370px) {
	div.page_cart_ div.cart-list-section_top_ .button-area_ { padding: 0 10px 1px; margin: 0 0 30px 0;}
}

/* お届け先の選択 */
div.page_cart_ .destination-title { margin: 30px 0 15px 0; font-size: 20px; font-weight: 500; text-align: center;}
div.page_cart_ .destination-list { margin: 0 0 17px 0; display: flex; justify-content: space-between; column-gap: 20px;}
div.page_cart_ .destination-item { width: calc(50% - 10px); min-height: 156px; border-radius: 6px; display: block; background: #FFF; position: relative;}
div.page_cart_ .destination-item label {
  width: 100%;
  height: 100%;
  padding: 86px 0 13px;
  margin: 0;
  border: #333 1px solid;
  border-radius: 6px;
  line-height: 1;
  display: block;
  background: #FFF;
  position: relative;
  z-index: 2;
  cursor: pointer;
}
div.page_cart_ .destination-item label .itemIcon { width: auto; height: 50px; padding: 0; margin: 0; position: absolute; top: 19px; left: 50%; transform: translateX(-50%);}
div.page_cart_ .destination-item label .itemIcon img { width: auto; height: 100%;}
div.page_cart_ .destination-item label p { padding: 0; margin: 0; font-size: 15px; font-weight: 700; text-align: center; line-height: 1.5; position: relative;}
div.page_cart_ .destination-item input { display: none;}
div.page_cart_ .destination-item.disabled_ { pointer-events: none;}
div.page_cart_ .destination-item.disabled_ label { border-color: #D2D2D2; background: #FFF;}
div.page_cart_ .destination-item.disabled_ label p { padding: 0 !important; color: #D2D2D2;}
div.page_cart_ .destination-item.disabled_ label p::after { display: none;}

/* ソーシャルギフトで贈るボタン */
div.page_cart_ .check_social_gift_button_area_ { margin: 20px 0;}
div.page_cart_ .check_social_gift_button_ {
	width: 100%;
  height: 60px;
  padding: 0 0 0 20px;
  margin: 0 auto;
  border: #333 1px solid;
  border-radius: 6px;
  font-size: 16px;
  font-weight: 700;
  text-decoration: none;
  color: #333;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #FFF;
  position: relative;
  cursor: pointer;
}
div.page_cart_ .check_social_gift_button_::before {
  content: '';
  width: 25px;
  height: 25px;
  display: block;
  background: url(../../img/usr/icon/icon_gift.png) center center / contain no-repeat;
  position: absolute;
  top: 50%;
  left: 34px;
  transform: translateY(-50%);
}
@media screen and (max-width: 370px) {
	div.page_cart_ .check_social_gift_button_::before {
		width: 20px;
		height: 20px;
		left: 20px;
	}
}
div.page_cart_ p.destination-notes { padding: 0 0 0 1em; margin: 0 0 20px 0; font-size: 14px; font-weight: 400; text-indent: -1em; text-align: left;}
div.page_cart_ p.socialgift-notes { padding: 0 0 0 1em; margin: 0 0 20px 0; font-size: 14px; font-weight: 400; text-indent: -1em; text-align: left;}

/* ソーシャルギフト有効期限モーダル */
div.page_cart_ .cart-list-modal {
	width: 100vw;
	height: 100vh;
	height: 100dvh;
	opacity: 0;
	display: none;
	position: fixed;
	top: 0;
	left: 50%;
	z-index: 300;
	transform: translateX(-50%);
	transition: 0.3s ease-in-out;
	pointer-events: none;
}
div.page_cart_ .cart-list-modal.is-open { opacity: 1; pointer-events: all; display: block;}
div.page_cart_ .cart-list-modal .overlay { width: 100%; height: 100%; background: rgb(0,0,0,0.75); transition: 0.3s ease-in-out; opacity: 0;}
div.page_cart_ .cart-list-modal.is-open .overlay { opacity: 1;}
div.page_cart_ .cart-list-modal .modal-body {
  width: calc(100% - 30px);
  max-width: 600px;
  max-height: calc(100% - 100px);
  padding: 0;
  margin: 0;
  border-radius: 12px;
  background: #FFF;
  position: absolute;
  top: 50%;
  left: 50%;
  overflow: hidden;
  transform: translate(-50%, -50%);
}
div.page_cart_ .cart-list-modal .modal-body .body-slide { padding: 16px; text-align: center; display: flex; flex-direction: column;}
div.page_cart_ .cart-list-modal .modal-body .body-slide .modal-close { width: 163px; margin: 0 auto 0 0;}
div.page_cart_ .cart-list-modal .modal-body .modal-slide-item { padding: 25px 0 15px; margin: 0 auto;}
div.page_cart_ .cart-list-modal .modal-body .modal-title { padding: 0; margin: 0 0 16px 0; font-size: 20px; font-weight: 500; text-align: center; line-height: 1.8;}
div.page_cart_ .cart-list-modal .modal-body .modal-content { padding: 0;}
div.page_cart_ .cart-list-modal .modal-body .modal-content p { margin: 0 0 16px 0; font-size: 14px; font-weight: 400; text-align: left; line-height: 1.8;}
div.page_cart_ .cart-list-modal .modal-body .modal-content p span { color: #CC0000;}
div.page_cart_ .cart-list-modal .modal-body .modal-content .button_ { width: 240px; height: 56px; margin: 0 auto; text-decoration: none;}

/* ソーシャルギフトで贈る場合 */
div.page_cart_ .socialgift_cart_goods_comment_ { margin: 40px 0 0 0; padding: 0 24px;}
div.page_cart_ .socialgift_cart_goods_comment_ h3.title_ { margin: 0 0 15px 0; font-size: 20px; font-weight: 500; text-align: center;}
div.page_cart_ .socialgift_cart_goods_comment_ p.text_ { font-size: 14px; font-weight: 400; text-align: justify; line-height: 1.6;}
div.page_cart_ .socialgift_cart_goods_comment_ p.text_.line1_ { margin: 0 auto 20px;}
div.page_cart_ .socialgift_cart_goods_comment_ figure.sample_ { width: 292px; margin: 0 auto 20px;}
div.page_cart_ .socialgift_cart_goods_comment_ figure.sample_ img { width: 292px;}

/* ソーシャルギフトとは？ */
div.page_cart_ .social_gift_link_ { text-align: center;}
div.page_cart_ .social_gift_link_ a { font-size: 14px; font-weight: 500; text-decoration: underline; color: #1D3994; transition: 0.2s;}
div.page_cart_ .social_gift_link_ a:hover { text-decoration: none;}

table.cartlist_ { width: 100%; margin: 0 auto; border: #D8D8DB 1px solid; border-radius: 6px; border-collapse: collapse; background: #FFF; display: block;}
table.cartlist_ + table.cartlist_ { margin-top: 20px;}
table.cartlist_ thead,
table.cartlist_ thead td { display: none;}
table.cartlist_ tbody.list_ { padding: 0 20px; display: block;}
table.cartlist_ tbody.list_ > tr { width: 100%; padding: 20px 0; display: flex; justify-content: space-between; align-items: flex-start;}
table.cartlist_ tbody.list_ > tr + tr { border-top: #D8D8DB 1px solid;}
table.cartlist_ td.img_ { width: 110px; padding: 0 10px 0 0;}
table.cartlist_ td.img_ img { width: 100px; max-width: 100%;}
table.cartlist_ td.img_ .icon_ img { width: 100%; max-width: 100%;}
table.cartlist_ td.img_ .icon_ img { width: 100%; max-width: 100%;}
table.cartlist_ td.img_ .block-goods-favorite { margin-top: 10px;}
table.cartlist_ td.img_ .block-goods-favorite .bookmark_btn { width: 22px; height: 20px; color: #FFF; display: block; position: relative; overflow: hidden;}
table.cartlist_ td.img_ .block-goods-favorite .bookmark_btn::before {
  content: '';
  width: 100%;
  height: 100%;
  display: block;
  background: url(../../img/usr/icon/icon_bookmark02.png) center center / contain no-repeat;
  position: relative;
  z-index: 2;
}
table.cartlist_ td.img_ .block-goods-favorite .block-goods-favorite-registed--btn.bookmark_btn::before { background: url(../../img/usr/icon/icon_bookmark02_on.png) center center / contain no-repeat;}

table.cartlist_ td.spec_ { width: calc(100% - 110px); padding: 0;}
table.cartlist_ td.spec_ div.name_ { margin: 0 0 10px 0;}
table.cartlist_ td.spec_ div.name1_ { font-size: 14px; word-break: break-word;}
table.cartlist_ td.spec_ div.name1_ a { font-weight: 400; color: #333; text-decoration: none;}
table.cartlist_ td.spec_ div.name2_ { word-break: break-word;}

table.cartlist_ td.spec_ div.price_box_ { margin: 10px 0; text-align: right;}
table.cartlist_ td.spec_ div.price_box_ .price_ { font-size: 16px; font-weight: 700;}
table.cartlist_ td.spec_ div.price_box_ .tax_ { font-size: 12px; text-align: right; display: block;}

table.cartlist_ td.spec_ div.point_box_ { font-size: 11px;}
table.cartlist_ td.spec_ div.point_box_ .delivery_limit_ { color: #D10000;}
table.cartlist_ td.spec_ div.point_box_ .promotion_point_total_ { font-size: 11px; font-weight: 500; word-break: break-word;}
table.cartlist_ td.spec_ div.point_box_ .pointup_name_tag_ { margin: 0 0 7px 0; font-size: 11px; word-break: break-word;}
table.cartlist_ td.spec_ div.point_box_ .pointup_expires_dt_ { font-size: 11px;}
table.cartlist_ td.spec_ div.point_box_ .include_ strong { font-size: 13px; font-weight: 400;}

table.cartlist_ td.spec_ div.select-block_ { min-height: 56px; margin: 0; display: flex; flex-wrap: wrap; position: relative;}
table.cartlist_ td.spec_ div.select-block_ input[type="submit"].small_button_.text_button_ {
  width: 40px;
  height: 56px;
  padding: 0;
  border: none;
  border-radius: 0;
  font-size: 14px;
	text-decoration: underline;
	text-align: right;
  color: #1D3994;
  display: flex;
	justify-content: flex-end;
	align-items: center;
	background: #FFF;
}
table.cartlist_ td.spec_ div.select-block_ .select-text_ { 
	width: 75px;
	height: 56px;
	padding: 0 20px 0 0;
	margin: 0 0 0 auto;
	font-size: 14px;
	font-weight: 500;
	display: flex;
	justify-content: center;
	align-items: center;
}
table.cartlist_ td.spec_ div.select-block_ .select-val_ { width: 70%;}
table.cartlist_ td.spec_ div.select-block_ .select-val_ input { font-size: 18px; font-weight: bold; text-align: center;}

/* 数量選択 */
table.cartlist_ td.spec_ div.select-block_ .select-inner_ { margin: 0 0 0 auto;}
table.cartlist_ td.spec_ div.select-block_ .select-inner_ .cart_select_ input[type="tel"] { width: 80px; margin-left: 0;}
table.cartlist_ td.spec_ div.select-block_ .recalculation_ { padding: 0; margin-left: 7px;}
table.cartlist_ td.spec_ div.select-block_ .recalculation_ input { width: 100%; max-width: 80px; padding: 0 7px; border-radius: 6px; margin: 0; line-height: 1;}
table.cartlist_ td.spec_ div.select-block_ .update_text_ { margin: 10px 0 0 0; font-size: 12px; color: #414143;}

/* 送料等　小計表示 */
table.cartlist_ tbody.total_ { padding: 20px 22px; border-top: #DCDCDC 1px solid; display: block; background: #F2F2F2; overflow: hidden;}
table.cartlist_ tbody.total_ tr { display: block;}
table.cartlist_ tbody.total_ tr + tr { margin-top: 10px;}
table.cartlist_ tbody.total_ td { width: 100%; display: flex; justify-content: space-between; align-items: center;}
table.cartlist_ tbody.total_ td span { font-size: 14px; font-weight: 500;}
table.cartlist_ tbody.total_ td span span.msmall_ { font-size: 12px; font-weight: 400;}
table.cartlist_ tbody.total_ td:not(.money_) span + span { font-size: 16px; font-weight: 500;}
table.cartlist_ tbody.total_ td:not(.money_) span + span .yen_ { font-size: 12px; font-weight: 500;}
table.cartlist_ tbody.total_ td.money_ span { font-size: 14px; font-weight: 500;}
table.cartlist_ tbody.total_ td.money_ span.price_ { font-size: 20px; font-weight: 500;}
table.cartlist_ tbody.total_ td.money_ span.price_ .yen_ { font-size: 16px; font-weight: 500;}
