@charset "Shift_JIS";

/* ---------------------------------------
 ご注文内容の確認
---------------------------------------- */
/* 全体レイアウト */
div.page_estimate_ div.estimate_col_frame_ { width: 100%; padding: 16px 0 0 0; display: flex; flex-wrap: wrap; justify-content: space-between;}
div.page_estimate_ div.estimate_col_frame_ .estimate_left_col_   { width: 56%; padding: 0 40px 0 0;}
div.page_estimate_ div.estimate_col_frame_ .estimate_right_col_  { width: 44%; padding: 44px 0 0 0;}
div.page_estimate_ div.estimate_col_frame_ .estimate_center_col_ { width: 100%; margin: 40px 0 0 0;}

/* 「変更」ボタン */
div.page_estimate_ a.change_link_ { font-weight: 400; text-decoration: underline; color: #1D3994;}
div.page_estimate_ a.change_link_:hover { text-decoration: none;}

/* 下部 カートへ戻る・TOPへ戻るリンク */
div.page_estimate_ .shopping_link_ { padding: 0; margin: 24px 0 0; border: none; text-align: center; display: flex; flex-direction: column; align-items: center; justify-content: center;}
div.page_estimate_ .shopping_link_ a { margin: 0; padding: 0; font-size: 16px; font-weight: 400; text-decoration: underline; color: #1D3994;}
div.page_estimate_ .shopping_link_ a:nth-of-type(1) { margin-top: 40px; order: 2;}
div.page_estimate_ .shopping_link_ a:nth-of-type(2) { margin-left: 0; order: 1;}

/* 注文確定ボタン - 出荷予定日確認 or 利用規約・プライバシーポリシー を確認しました。のチェック */
div.page_estimate_ .method_payment_ div.agree_check_ { margin: 20px 0 0 0; display: flex; justify-content: center; align-items: center;}
div.page_estimate_ .method_payment_ div.agree_check_ label.large_ { padding: 10px; margin: 0; font-size: 16px; text-align: center;}
div.page_estimate_ .method_payment_ div.agree_check_ label.large_ a { margin: 0; padding: 0; font-size: 16px; font-weight: 400; text-decoration: underline; color: #1D3994;}
div.page_estimate_ .method_payment_ div.agree_check_ label.large_ a:hover { text-decoration: none;}
div.page_estimate_ .method_payment_ div.agree_check_ + div.submit-bottom_ .submit_ { margin-top: 10px;}

/* 注文確定ボタン下 注意書き - ユーザーテンプレート */
div.page_estimate_ #demoslide01 { max-width: 798px; margin: 0 auto;}
div.page_estimate_ #demoslide01 p { font-size: 14px; font-weight: 400; line-height: 1.7;}
div.page_estimate_ #demoslide01 p + p { margin-top: 10px;}
div.page_estimate_ #demoslide01 p a { text-decoration: underline; color: #1D3994; cursor: pointer;}
div.page_estimate_ #demoslide01 .submit_txt_ { padding: 0 0 0 1em; text-indent: -1em;}
div.page_estimate_ #demoslide01 .submit_txt_:nth-of-type(n+2) { margin-top: 11px;}
div.page_estimate_ #demoslide01 .submit_txt_ .largeText { font-size: 14px; font-weight: 400; color: #EC0000;}
div.page_estimate_ #demoslide01 .submit_txt_red_ { padding: 0 0 0 1em; font-size: 14px; font-weight: 400; text-indent: -1em; color: #EC0000;}

/* ---------------------------------------
 左カラム
---------------------------------------- */
/* 共通パーツ */
div.estimate_left_col_ a.change_link_ { width: 35px; font-size: 16px; font-weight: 400; text-align: right;}
div.estimate_left_col_ h2.common_headline2_ { padding: 0; margin: 0 0 20px 0; font-size: 24px; font-weight: 400; line-height: 1; background: none; position: relative;}
div.estimate_left_col_ div.estimate_data_title_ { margin: 0 0 10px 0; display: flex; justify-content: space-between; align-items: center;}
div.estimate_left_col_ div.estimate_data_title_ h3 { padding: 0; margin: 0; border: none; font-size: 20px; font-weight: 400; line-height: 1; background: none; position: relative;}
div.estimate_left_col_ div.method_sender_ { padding: 0; margin: 0 0 40px 0;}
div.estimate_left_col_ div.method_sender_ .method_addr_ { width: 100%; padding: 30px; margin: 0; border: #DDD 1px solid; border-radius: 6px; display: flex; align-items: center;}
div.estimate_left_col_ div.method_sender_ .method_addr_ .addr_inner_ { width: 100%; margin: 0; font-size: 16px; display: flex; align-items: flex-start; justify-content: space-between;}
div.estimate_left_col_ div.method_sender_ .method_addr_ .addr_inner_child_ { width: calc(100% - 50px); font-size: 16px;}
div.estimate_left_col_ div.method_sender_ .method_addr_ .addr_inner_child_ .host_ + p,
div.estimate_left_col_ div.method_sender_ .method_addr_ .addr_inner_child_ .name_ + p,
div.estimate_left_col_ div.method_sender_ .method_addr_ .addr_inner_child_ .tel_ { margin-top: 16px;}

/* お届け先情報
---------------------------------------- */
#estimate_address {}
#estimate_delivery_address {}

/* お支払方法
---------------------------------------- */
#estimate_payment { padding: 0; margin: 0 0 40px 0;}
#estimate_payment .method_wrap_body_ .method_box_ { padding: 30px 0; margin: 0 30px;}
#estimate_payment .method_wrap_body_ .method_box_ + .method_box_ { border-top: #DDD 1px solid;}
#estimate_payment .method_wrap_body_ .method_box_ .method_box_content_ { padding: 0;}

/* ポイント・クーポン */
#estimate_payment .method_point_and_coupon_ { margin: 0 0 16px 0; border: #DDD 1px solid; border-radius: 6px;}
#estimate_payment #method_point {}
#estimate_payment #estimate_coupon {}
#estimate_payment #estimate_coupon p.coupon_.available_ { padding: 0 0 0 1em; margin: 10px 0 0 0; font-size: 14px; font-weight: 400; text-indent: -1em;}

/* お支払方法 */
#estimate_payment .method_wrap_body_ .method_payment_ { padding: 30px; border: #DDD 1px solid; border-radius: 6px;}
#estimate_payment .method_wrap_body_ .method_payment_ .payment_notes_ { margin: 16px 0 0 0; font-size: 14px; font-weight: 400; color: #EC0000;}
#estimate_payment .method_wrap_body_ .method_payment_ .payment_deadline_ { margin: 16px 0 0 0; display: flex; align-items: center;}
#estimate_payment .method_wrap_body_ .method_payment_ .payment_deadline_ dt { font-size: 14px; font-weight: 400; color: #EC0000;}
#estimate_payment .method_wrap_body_ .method_payment_ .payment_deadline_ dt::after { content: ':'; margin: 0 2px;}
#estimate_payment .method_wrap_body_ .method_payment_ .payment_deadline_ dd { font-size: 14px; font-weight: 400; color: #EC0000;}
#estimate_payment .method_wrap_body_ .method_payment_ .ui-widget-content { border: none;}
#estimate_payment .method_wrap_body_ .method_payment_ table.card_ tbody,
#estimate_payment .method_wrap_body_ .method_payment_ table.card_ th,
#estimate_payment .method_wrap_body_ .method_payment_ table.card_ td { width: 100%; display: block;}
#estimate_payment .method_wrap_body_ .method_payment_ table.card_ td a.modal-btn_ { width: 170px; margin: 10px 0 0 0; font-size: 14px; text-decoration: underline; color: #1D3994; display: block; transition: 0.2s;}
#estimate_payment .method_wrap_body_ .method_payment_ table.card_ td a.modal-btn_:hover { text-decoration: none;}
#estimate_payment .method_wrap_body_ .method_payment_ table.card_ select[name="card_method"],
#estimate_payment .method_wrap_body_ .method_payment_ table.card_ select[name="card_divide"] { width: 182px;}
#estimate_payment .method_wrap_body_ .method_payment_ table.card_ select[name="card_m"] { width: 120px; margin: 0 10px 0 0;}
#estimate_payment .method_wrap_body_ .method_payment_ table.card_ select[name="card_y"] { width: 148px; margin: 0 10px 0 20px;}
#estimate_payment .method_wrap_body_ .method_payment_ table.card_ .esb-dropdown { width: 600px; position: fixed; top: 50%; left: 50%; background: #FFF;}
#estimate_payment .method_wrap_body_ .method_payment_ table.card_ tr.estimate_card_save_ { width: 100%;}
#estimate_payment .method_wrap_body_ .method_payment_ table.card_ tr.estimate_card_save_ td > span { margin: 0 0 10px 0; display: block; position: relative;}
#estimate_payment .method_wrap_body_ .method_payment_ table.card_ tr.estimate_card_save_ label {
  width: 100%;
	max-width: 400px;
  height: 80px;
  padding: 10px 10px 10px 54px;
  margin: 0;
	border: #1A1A1C 1px solid;
	border-radius: 6px;
	font-size: 16px;
	line-height: 1.2;
  display: flex;
  justify-content: left;
  align-items: center;
  position: relative;
}
#estimate_payment .method_wrap_body_ .method_payment_ table.card_ tr.estimate_card_save_ label:before {
  content: '';
  width: 18px;
  height: 18px;
  border: #1A1A1C 1px solid;
  border-radius: 50%;
  display: block;
  background: #FFF;
  position: absolute;
  left: 16px;
  top: 50%;
  transform: translateY(-50%);
  cursor: pointer;
}
#estimate_payment .method_wrap_body_ .method_payment_ table.card_ tr.estimate_card_save_ input[type="radio"],
#estimate_payment .method_wrap_body_ .method_payment_ table.card_ tr.estimate_card_save_ input[type="radio"]:checked:before { display: none;}
#estimate_payment .method_wrap_body_ .method_payment_ table.card_ tr.estimate_card_save_ input[type="radio"]:checked + label { border: #CC0000 2px solid;}
#estimate_payment .method_wrap_body_ .method_payment_ table.card_ tr.estimate_card_save_ input[type="radio"]:checked + label:before { border-color: #CC0000;}
#estimate_payment .method_wrap_body_ .method_payment_ table.card_ tr.estimate_card_save_ input[type="radio"]:checked + label:after {
  content: '';
  width: 10px;
  height: 10px;
  border: none;
  border-radius: 50%;
  display: block;
  background: #CC0000;
  position: absolute;
  left: 21px;
  top: 50%;
  transform: translateY(-50%);
  cursor: pointer;
}
#estimate_payment .method_wrap_body_ .method_payment_ table.card_ tr.estimate_card_save_ input:disabled + label:before { border-color: #949497; background-color: transparent;}
#estimate_payment .method_wrap_body_ .method_payment_ table.card_ tr.estimate_card_save_ input:disabled { border: none;}
#estimate_payment .method_wrap_body_ .method_payment_ table.card_ tr.estimate_card_save_ input:disabled:hover { opacity: 1;}
#estimate_payment .method_wrap_body_ .method_payment_ table.card_ td.savecard_wrap_ { margin: 30px 0 0 0;}

/* ご注文主様の情報
---------------------------------------- */
#estimate_host {}

/* 贈り主の情報
---------------------------------------- */
#estimate_sender {}

/* ご注文主様・贈り主の情報
---------------------------------------- */
#estimate_dest_home {}

/* 受取人様の情報
---------------------------------------- */
#estimate_recipient {}

/* 当サイトを紹介された郵便局
---------------------------------------- */
#estimate_post_office_name {}

/* 紹介された日本郵便社員
---------------------------------------- */
#estimate_employee_remarks {}

/* 紹介郵便局へご注文内容の情報提供
---------------------------------------- */
#estimate_post_office_notice {}

/* ---------------------------------------
 右カラム
---------------------------------------- */
div.estimate_right_col_ .method_sales_ {}
div.estimate_right_col_ .sales_inner_ { padding: 30px 40px; border: #DDD 1px solid; border-radius: 6px;}
div.estimate_right_col_ .sales_total_ { margin: 0 0 20px 0;}
div.estimate_right_col_ .sales_total_ dl { width: 100%; display: flex; justify-content: space-between; align-items: center;}
div.estimate_right_col_ .sales_total_ dt { width: 50%; text-align: left; white-space: nowrap;}
div.estimate_right_col_ .sales_total_ dd { width: 50%; text-align: right;}

/* ご請求額 */
div.estimate_right_col_ .sales_total_ dl.billing_ { margin: 0 0 16px 0; padding: 0 0 7px 0; border-bottom: #DCDCDC 1px solid;}
div.estimate_right_col_ .sales_total_ dl.billing_ dt { font-size: 24px; font-weight: 400;}
div.estimate_right_col_ .sales_total_ dl.billing_ dd { font-size: 24px; font-weight: 400;}
div.estimate_right_col_ .sales_total_ dl.billing_ dd strong { margin: 0 3px 0 0; font-size: 28px; font-weight: 400;}

/* 獲得予定ポイント */
div.estimate_right_col_ .sales_total_ dl.point_ { margin: 0 0 10px 0;}
div.estimate_right_col_ .sales_total_ dl.point_ dt { font-size: 16px; font-weight: 400;}
div.estimate_right_col_ .sales_total_ dl.point_ dd { font-size: 14px; font-weight: 500;}
div.estimate_right_col_ .sales_total_ dl.point_ dd strong { margin: 0 3px 0 0; font-size: 20px; font-weight: 500;}

/* 内　期間限定ポイント */
div.estimate_right_col_ .sales_total_ dl.pointup_point_ { margin: 0 0 10px 0;}
div.estimate_right_col_ .sales_total_ dl.pointup_point_ dt { font-size: 16px; font-weight: 400;}
div.estimate_right_col_ .sales_total_ dl.pointup_point_ dd { font-size: 14px; font-weight: 500;}
div.estimate_right_col_ .sales_total_ dl.pointup_point_ dd strong { margin: 0 3px 0 0; font-size: 20px; font-weight: 500;}

/* 備考 */
div.estimate_right_col_ .sales_inner_ > .submit_txt_ { padding: 0 0 0 1em; margin: 0; font-size: 12px; text-indent: -1em;}

/* 注文確定ボタン */
div.estimate_right_col_ .method_payment_ { padding: 0; margin: 0;}
div.estimate_right_col_ .submit-bottom_ { display: flex; flex-direction: column; justify-content: center; align-items: center;}
div.estimate_right_col_ .submit-bottom_:has(.submit_) { margin: 40px 0;}
div.estimate_right_col_ .submit-bottom_ .submit_ { margin: 0;}
div.estimate_right_col_ .submit-bottom_ .submit_:has(#rakuten-pay-msg-shipping_date2) { height: auto;}
div.estimate_right_col_ .submit-bottom_ .submit_ input { width: 100%;}
div.estimate_right_col_ .submit-bottom_ .submit_ input[disabled],
div.estimate_right_col_ .submit-bottom_ .submit_ input.disabled_ { border: none; color: #FFF; background: #D2D2D2; pointer-events: none;}
div.estimate_right_col_ .submit-bottom_ .page_back_button_ { margin: 20px 0 0 0; text-align: center;}
div.estimate_right_col_ .submit-bottom_ .page_back_button_ a { font-size: 16px; font-weight: 400; text-decoration: underline; color: #1D3994;}
div.estimate_right_col_ .submit-bottom_ .page_back_button_ a:hover { text-decoration: underline;}

/* 明細 */
div.estimate_right_col_ .sales_detail_title_frame_ { margin: 70px 0 0 0;}
div.estimate_right_col_ h3.sales_detail_title_ { padding: 0 0 10px 0; margin: 0 0 16px 0; border-bottom: #DDD 1px solid; font-size: 24px; font-weight: 400;}
div.estimate_right_col_ h3.sales_detail_title_ span { font-size: 24px; font-weight: 400;}
div.estimate_right_col_ h4.sales_detail_subtitle_ { margin: 0 0 30px; font-size: 20px; font-weight: 400;}
div.estimate_right_col_ dl.sales_detail_ { width: 100%; display: flex; flex-wrap: wrap;}
div.estimate_right_col_ dl.sales_detail_ dt { width: 50%; padding: 0 0 0 10%; margin: 0 0 20px 0; font-size: 16px; font-weight: 400;}
div.estimate_right_col_ dl.sales_detail_ dd { width: 50%; padding: 0 10% 0 0; margin: 0 0 20px 0; font-size: 16px; font-weight: 400; text-align: right;}
div.estimate_right_col_ dl.sales_detail_ .order_total { padding-top: 30px; margin-top: 10px; font-size: 20px; border-top: #DDD 1px solid;}
div.estimate_right_col_ dl.sales_detail_ dt.order_total { text-indent: -0.5em;}

/* ---------------------------------------
 下中央カラム
---------------------------------------- */
/* 商品の設定
---------------------------------------- */
#estimate_method .estimate-goods-box { padding: 0;}
#estimate_method .estimate-goods-box:not(:empty) { margin: 0 0 20px 0;}

/* お届け先 */
#estimate_method .destgoodslist_ { padding: 40px; border: #DDD 1px solid; border-radius: 6px;}
#estimate_method .destgoodslist_ .method_addr_ { margin: 0 0 40px 0;}
#estimate_method .destgoodslist_ .method_addr_ .addr_inner_ { padding: 0; margin: 0;}
#estimate_method .destgoodslist_ .method_addr_ h2.common_headline2_ { padding: 0; margin: 0 0 20px 0; font-size: 20px; font-weight: 400; line-height: 1; display: flex; align-items: center;}
#estimate_method .destgoodslist_ .method_addr_ h2.common_headline2_ .change_link_ { margin: 0 0 0 16px; font-size: 16px; font-weight: 400; text-align: right; text-decoration: underline; color: #1D3994;}
#estimate_method .destgoodslist_ .method_addr_ .addr_inner_child_ p { font-size: 16px; font-weight: 400;}
#estimate_method .destgoodslist_ .method_addr_ .addr_inner_child_ p.name_ { margin: 0 0 20px 0;}

/* 商品 */
#estimate_method .dest_goods_ { padding: 40px; margin: 0; border: #D8D8DB 1px solid; border-radius: 6px;}
#estimate_method .dest_goods_ + .dest_goods_ { margin-top: 20px;}
#estimate_method .dest_goods_ .goodsinfo_box_ { padding: 0; margin: 0; border: 0; border-radius: 0; display: flex; justify-content: space-between; align-items: flex-start;}
#estimate_method .dest_goods_ .goodsinfo_box_ + .goodsinfo_box_ { padding-top: 20px; margin-top: 20px; border-top: #DDD 1px solid;}
#estimate_method .dest_goods_ .goodsinfo_box_img_ { width: 160px; padding: 0; margin: 0; flex-shrink: 0;}
#estimate_method .dest_goods_ .goodsinfo_box_img_ img { width: 100%; height: auto; display: block;}
#estimate_method .dest_goods_ .goodsinfo_box_data_ { width: calc(100% - 200px);}
#estimate_method .dest_goods_ .goodsinfo_box_data_ .goodsinfo_detail_ { width: 100%; padding: 0; margin: 0; border: none; display: flex; flex-wrap: wrap; justify-content: flex-end;}
#estimate_method .dest_goods_ .goodsinfo_detail_ .goods_name_ { width: 100%;}
#estimate_method .dest_goods_ .goodsinfo_detail_ .goods_name_ div.name_ { font-size: 20px; font-weight: 400; line-height: 1.7;}
#estimate_method .dest_goods_ .goodsinfo_detail_ .goods_name_ div.name_ .name2_ { font-size: 20px; font-weight: 400;}
#estimate_method .dest_goods_ .goodsinfo_detail_ .goods_name_ div.price_ { margin: 0 0 0 auto; font-size: 14px; font-weight: 400; text-align: right; display: flex; flex-direction: column; align-items: flex-end;}
#estimate_method .dest_goods_ .goodsinfo_detail_ .goods_name_ div.price_ .include_ { margin: 0 0 10px 0; font-size: 14px; font-weight: 400;}
#estimate_method .dest_goods_ .goodsinfo_detail_ .goods_name_ div.price_ .price_ { margin: 0 0 5px 0; font-size: 24px; font-weight: 400;}
#estimate_method .dest_goods_ .goodsinfo_detail_ .goods_name_ div.price_ .price_ .yen_ { margin: 0 0 0 3px; font-size: 20px; font-weight: 400;}
#estimate_method .dest_goods_ .goodsinfo_detail_ .goods_name_ div.price_ .price_note_ { font-size: 14px; font-weight: 400;}
#estimate_method .dest_goods_ .goodsinfo_detail_ .goods_name_ div.price_ .tax_class_reduced_ { margin: 5px 0 0 0; font-size: 14px; font-weight: 400;}
#estimate_method .dest_goods_ .goodsinfo_detail_ .goods_change_ { width: 100%; margin: 10px 0 0 0; font-size: 14px; font-weight: 400; text-align: right;}
#estimate_method .dest_goods_ .goodsinfo_detail_ .goods_change_ .qty_ { font-size: 14px; font-weight: 400;}
#estimate_method .dest_goods_ .goodsinfo_detail_ .goods_change_ .qty_ span { margin: 0 0 0 7px; font-size: 14px; font-weight: 400;}

/* 出荷予定日 */
#estimate_method .dest_goods_ .goods_shipping_date_ { margin: 30px 0 0 0; display: flex; justify-content: flex-end; align-items: center;}
#estimate_method .dest_goods_ .goods_shipping_date_ .ttl_ { margin: 0 10px 0 0; font-size: 16px; font-weight: 400;}
#estimate_method .dest_goods_ .goods_shipping_date_ .date_ { font-size: 16px; font-weight: 400; color: #EC0000;}

/* 販売期間 */
#estimate_method .dest_goods_ .goods_salesperiod_ { margin: 30px 0 0 0; display: flex; justify-content: flex-end; align-items: center;}
#estimate_method .dest_goods_ .goods_salesperiod_ .ttl_ { margin: 0 10px 0 0; font-size: 16px; font-weight: 400;}
#estimate_method .dest_goods_ .goods_salesperiod_ .date_ { font-size: 16px; font-weight: 400; color: #EC0000;}

/* 商品設定（のし等） */
#estimate_method .goodsinfo_box_detail_noshi_ { margin: 30px 0 0 0; border: none; display: block;}
#estimate_method .goodsinfo_box_detail_noshi_ li + li { margin-top: 30px;}
#estimate_method .goodsinfo_box_detail_noshi_ dl dt { padding: 0 0 10px 0; margin: 0 0 20px 0; border-bottom: #DDD 1px solid; font-size: 16px; font-weight: 400; display: flex; align-items: center;}
#estimate_method .goodsinfo_box_detail_noshi_ dl dt a.change_link_ { margin: 0 0 0 16px; font-size: 14px;}
#estimate_method .goodsinfo_box_detail_noshi_ dl dd { font-size: 14px; font-weight: 400;}
#estimate_method .goodsinfo_box_detail_noshi_ dl ul { padding: 0; margin: 0;}
#estimate_method .goodsinfo_box_detail_noshi_ dl ul li { font-size: 14px; font-weight: 400; line-height: 2;}
#estimate_method .goodsinfo_box_detail_noshi_ dl dd span.small_:not(:empty) { margin: 10px 0 0 0; font-size: 14px; font-weight: 400; display: block;}
#estimate_method .goodsinfo_box_detail_noshi_ .noshi_config_ { display: flex; align-items: center; line-height: 1.4;}
#estimate_method .goodsinfo_box_detail_noshi_ .noshi_config_ .ttl_ { width: 160px; font-size: 14px; font-weight: 500;}
#estimate_method .goodsinfo_box_detail_noshi_ .noshi_config_ .setting_ { width: calc(100% - 160px); font-size: 14px; font-weight: 400;}
#estimate_method .goodsinfo_box_detail_noshi_ .noshi_config_ span + span::before { content: '/'; margin: 0 3px;}
#estimate_method .goodsinfo_box_detail_noshi_ .noshi_config_ + .noshi_config_,
#estimate_method .goodsinfo_box_detail_noshi_ .noshi_config_ + .noshi_config_bikou_ { margin: 10px 0 0 0;}
#estimate_method .goodsinfo_box_detail_noshi_ .noshi_config_bikou_ { display: flex; align-items: center; line-height: 1.4;}
#estimate_method .goodsinfo_box_detail_noshi_ .noshi_config_bikou_ .ttl_ { width: 160px; font-size: 14px; font-weight: 500;}
#estimate_method .goodsinfo_box_detail_noshi_ .noshi_config_bikou_ .comment_ { width: calc(100% - 160px); font-size: 14px; font-weight: 400;}

/* 配送方法（佐川） */
#estimate_method .goods_sel_delivery_method_ { padding: 0 0 0 200px; margin: 40px 0 0 0; border: none; display: block; position: relative;}
#estimate_method .goods_sel_delivery_method_ dl dt { padding: 0 0 10px 0; margin: 0 0 20px 0; border-bottom: #DDD 1px solid; font-size: 16px; font-weight: 400; display: flex; align-items: center;}
#estimate_method .goods_sel_delivery_method_ dl dt a.change_link_ { margin: 0 0 0 20px; font-size: 14px;}
#estimate_method .goods_sel_delivery_method_ dl dd { font-size: 14px; font-weight: 400;}
#estimate_method .goods_sel_delivery_method_ dl dd.sagawa_message_ { color: #EC0000;}

/* お届け日時 */
#estimate_method .goods_delivery_ { padding: 0 0 0 200px; margin: 40px 0 0 0; border: none; display: block; position: relative;}
#estimate_method .goods_delivery_ dl dt { padding: 0 0 10px 0; margin: 0 0 20px 0; border-bottom: #DDD 1px solid; font-size: 16px; font-weight: 400; display: flex; align-items: center;}
#estimate_method .goods_delivery_ dl dt a.change_link_ { margin: 0 0 0 20px; font-size: 14px;}
#estimate_method .goods_delivery_ dl dd { font-size: 14px; font-weight: 400;}
#estimate_method .goods_delivery_ dl dd ul.delivery_config_ { padding: 0; margin: 0;}
#estimate_method .goods_delivery_ dl dd ul.delivery_config_ li { font-size: 14px; font-weight: 400; display: flex; align-items: center;}
#estimate_method .goods_delivery_ dl dd ul.delivery_config_ li + li { margin: 10px 0 0 0;}
#estimate_method .goods_delivery_ dl dd ul.delivery_config_ li .ttl_ { width: 160px; font-size: 14px; font-weight: 500;}
#estimate_method .goods_delivery_ dl dd ul.delivery_config_ li .desc_ { width: calc(100% - 160px); font-size: 14px; font-weight: 400;}
#estimate_method .goods_delivery_ p.delivery_notice_ { margin: 10px 0 0 0; font-size: 14px; font-weight: 400;}
#estimate_method .goods_delivery_ p.delivery_notice_ + p.delivery_notice_ { margin: 0;}

/* メッセージカード
---------------------------------------- */
#estimate_method .estimete_giftcard_frame_ { width: 600px; padding: 0; margin: 40px 0 0 0; border: none;}
#estimate_method .estimete_giftcard_title_ { padding: 0; margin: 0 0 20px 0; font-size: 24px; font-weight: 400; line-height: 1; background: none; position: relative;}
#estimate_method .estimete_giftcard_frame_body_ {
  padding: 40px;
  margin: 0 0 20px 0;
  border: #D8D8DB 1px solid;
  border-radius: 6px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
#estimate_method .estimete_giftcard_length_ { width: 100%; margin: 0 0 20px 0;}
#estimate_method .estimete_giftcard_length_ dt { margin: 0 0 10px 0; font-size: 20px; font-weight: 400; text-align: left;}
#estimate_method .estimete_giftcard_length_ dd { font-size: 16px; font-weight: 400; text-align: left;}
#estimate_method .estimete_giftcard_sample_ { width: 100%; padding: 20px 20px 38px 20px; margin: 0 auto; border: #D8D8DB 1px solid; text-align: left;}
#estimate_method .estimete_giftcard_img_ { margin: 0 0 30px 0; text-align: center;}
#estimate_method .estimete_giftcard_img_ img { max-width: 100%;}
#estimate_method .estimete_giftcard_message_ { margin: 0 0 40px 0; font-size: 16px; font-weight: 400; white-space: pre-wrap; line-height: 2.0;}
#estimate_method .estimete_giftcard_giver_ { padding: 20px 5px; border-top: #949497 1px dashed; border-bottom: #949497 1px dashed; font-size: 16px; font-weight: 400; text-align: right;}
#estimate_method .estimete_giftcard_change_wrap_ { margin: 20px 0 0 0; text-align: center;}
#estimate_method .estimete_giftcard_change_wrap_ a.estimete_giftcard_change_ { font-size: 16px; font-weight: 400; text-decoration: underline; color: #1D3994;}
#estimate_method .estimete_giftcard_change_wrap_ a.estimete_giftcard_change_:hover { text-decoration: none;}

#estimate_method .estimete_giftcard_frame_.not-has-messagecard .estimete_giftcard_change_wrap_ { width: 100%; margin: 0; text-align: left;}

/* 定期申込情報
---------------------------------------- */
#estimate_regular { margin: 40px 0 0 0;}

/* 共通パーツ */
#estimate_regular h3 { padding: 0; margin: 0 0 20px 0; border: none; font-size: 20px;}
#estimate_regular .method_regular_inner_ { padding: 40px; margin: 0; border: #DDD 1px solid; border-radius: 6px;}
#estimate_regular .method-regular-box { padding: 0 0 40px 0; margin: 0 0 30px 0; border-bottom: #DDD 1px solid;}
#estimate_regular .method-regular-box table { width: auto; border: none; border-collapse: collapse;}
#estimate_regular .method-regular-box table th { width: 220px; max-width: 220px; min-width: 220px; padding: 5px 0; border: none; font-size: 16px; font-weight: 400; vertical-align: top;}
#estimate_regular .method-regular-box table td { padding: 5px 0; border: none; font-size: 16px; font-weight: 400; vertical-align: top;}
#estimate_regular .method-regular-box table td table { width: auto; border: none; border-collapse: collapse;}
#estimate_regular .method-regular-box table td table th { width: auto; max-width: auto; min-width: auto;}
#estimate_regular .method-regular-box table td table td { width: auto; max-width: auto; min-width: auto;}
#estimate_regular .method-regular-box table td.change_link_wrap_ { text-align: right;}

/* お届け先 */
#estimate_regular .method-regular-box.dest_ address p { font-size: 16px; font-weight: 400; line-height: 1.7;}
#estimate_regular .method-regular-box.dest_ address p.name_ { margin: 0 0 16px 0;}
#estimate_regular .method-regular-box.dest_ address p.tel_ { margin: 16px 0 0 0;}

/* お届け商品 */
#estimate_regular .method-regular-box.goodsdata_ {}

/* お支払い情報 */
#estimate_regular .method-regular-box.payment_ table tr.regular_delivery_day_ span.next-date { margin: 0 0 0 10px; font-size: 14px; font-weight: 400;}
#estimate_regular .method-regular-box.payment_ table tr.each_total_ th { padding: 5px 0 20px 0; vertical-align: middle;}
#estimate_regular .method-regular-box.payment_ table tr.each_total_ td { padding: 5px 0 20px 0; vertical-align: middle;}
#estimate_regular .method-regular-box.payment_ table tr.each_total_ td table th { padding: 5px 0;}
#estimate_regular .method-regular-box.payment_ table tr.each_total_ td table td { padding: 5px 0;}
#estimate_regular .method-regular-box.payment_ table tr.each_total_ td table tr.total_ { display: flex; align-items: center;}
#estimate_regular .method-regular-box.payment_ table tr.each_total_ td table tr.total_ th { min-width: 200px; width: 200px; padding: 2px 20px 2px 0;}
#estimate_regular .method-regular-box.payment_ table tr.each_total_ td table tr.total_ td { min-width: 120px; width: 120px; padding: 2px 0; font-size: 20px; font-weight: 400; text-align: right;}
#estimate_regular .method-regular-box.payment_ table tr.all_total_ th { padding: 20px 0 5px 0; border-top: #949497 1px dotted;}
#estimate_regular .method-regular-box.payment_ table tr.all_total_ td { padding: 20px 0 5px 0; border-top: #949497 1px dotted;}
#estimate_regular .method-regular-box.payment_ table tr.all_total_ td table th { padding: 5px 0; border: none; vertical-align: middle;}
#estimate_regular .method-regular-box.payment_ table tr.all_total_ td table td { padding: 5px 0; border: none; vertical-align: middle;}
#estimate_regular .method-regular-box.payment_ table tr.all_total_ td table tr.total_ { display: flex; align-items: center;}
#estimate_regular .method-regular-box.payment_ table tr.all_total_ td table tr.total_ th { min-width: 200px; width: 200px; padding: 0 20px 0 0;}
#estimate_regular .method-regular-box.payment_ table tr.all_total_ td table tr.total_ td { min-width: 120px; width: 120px; padding: 0; font-size: 20px; font-weight: 400; text-align: right;}
#estimate_regular .method-regular-box.payment_ p.yearly_payment_ { margin: 10px 0 0 0; padding: 0 0 0 1em; font-size: 14px; font-weight: 400; text-indent: -1em; color: #EC0000;}

/* 定期お申込時の注意 - ユーザーテンプレート */
#estimate_regular div.textarea_ .ttl_ { margin: 0 0 10px 0; font-size: 16px; font-weight: 400;}
#estimate_regular div.textarea_ p { font-size: 14px; font-weight: 400; line-height: 1.7;}
#estimate_regular div.textarea_ p + p { margin-top: 10px;}
#estimate_regular div.textarea_ p a { text-decoration: underline; color: #1D3994; cursor: pointer;}

/* ---------------------------------------
 下部サブミットボタン
---------------------------------------- */
div.page_estimate_ .estimate_col_frame_ + .method_payment_ { padding: 0; margin: 0;}
div.page_estimate_ .estimate_col_frame_ + .method_payment_ .submit-bottom_ { margin-bottom: 40px !important; display: flex; flex-direction: column; justify-content: center; align-items: center;}
div.page_estimate_ .estimate_col_frame_ + .method_payment_ .submit-bottom_ .submit_ .submit_ input { width: 100%;}
div.page_estimate_ .estimate_col_frame_ + .method_payment_ .submit-bottom_ .submit_ .submit_ input[disabled],
div.page_estimate_ .estimate_col_frame_ + .method_payment_ .submit-bottom_ .submit_ .submit_ input.disabled_ { border: none; color: #FFF; background: #D2D2D2; pointer-events: none;}
div.page_estimate_ .estimate_col_frame_ + .method_payment_ .submit-bottom_ .submit_ .page_back_button_ { display: none !important;}
div.page_estimate_ .estimate_col_frame_ + .method_payment_ #demoslide01 { margin: 0 auto 60px !important;}

/* ---------------------------------------
 モーダル
---------------------------------------- */
.modal_bg { width: 100%; height: 120%; display: none; background-color: rgba(0, 0, 0, 0.7); position: fixed; top: 0; left: 0; z-index: 6666;}
div.page_estimate_ .modal_box { width: 80%; max-width: 872px; padding: 40px 56px; margin: 0; border-radius: 12px; position: fixed; z-index: 7777; display: none; background: #fff; box-sizing: border-box;}
div.page_estimate_ .modal_box .modal_close_icon { margin: 0 0 25px 0; text-align: left;}
div.page_estimate_ .modal_box .modal_close_icon .modal_close {
  width: 163px;
  height: 40px;
  padding: 0;
  margin: 0;
  border: #333 1px solid;
  border-radius: 20px;
  outline: none;
  font-size: 16px;
  font-weight: bold;
	text-decoration: none;
  color: #333;
	display: flex;
	justify-content: center;
	align-items: center;
	background: #FFF;
	cursor: pointer;
}
div.page_estimate_ .modal_box .modal_close_icon .modal_close::before {
  content: '';
  width: 8px;
  height: 8px;
	margin: 0 6px 0 0;
  border-right: #333 1px solid;
  border-top: #333 1px solid;
  display: block;
  transform: rotate(-135deg);
}
div.page_estimate_ .modal_box h2.ModalTitle { margin: 0 0 30px 0; font-size: 24px; font-weight: 500; text-align: center;}
div.page_estimate_ .modal_box .modalContent { max-height: 460px; padding: 0 15px 0 0; font-size: 14px; font-weight: 400; line-height: 1.7; overflow-y: auto;}
div.page_estimate_ .modal_box .modalContent li { margin: 0 0 40px 0; font-size: 14px; font-weight: 400; line-height: 1.7;}
div.page_estimate_ .modal_box .modalContent p.ListModalTitle { margin: 0 0 20px 0; font-size: 20px; font-weight: 400; line-height: 1.2;}
div.page_estimate_ .modal_box .modalContent dl.otoiawaseList { margin: 0 0 20px 0;}
div.page_estimate_ .modal_box .modalContent dl.otoiawaseList dt { margin: 0 0 10px 0; font-size: 14px; font-weight: 500;}
div.page_estimate_ .modal_box .modalContent dl.otoiawaseList dd { font-size: 14px; font-weight: 400;}
div.page_estimate_ .modal_box .modalContent p.image { margin: 15px 0; border: #DDD 1px solid; padding: 10px;}
div.page_estimate_ .modal_box .modalContent p.image img { width: 100%;}
div.page_estimate_ .modal_box .modalContent .modalTable { margin: 15px auto; background: #fff;}
div.page_estimate_ .modal_box .modalContent .modalTable tr { vertical-align: middle;}
div.page_estimate_ .modal_box .modalContent .modalTable th { width: 250px; padding: 10px; border: #C4C0C0 solid thin; text-align: center !important; background-color: #EFEFEF;}
div.page_estimate_ .modal_box .modalContent .modalTable td { padding-left: 10px !important; padding-right: 10px !important; border: #C4C0C0 solid thin; padding: 15px 0;}
div.page_estimate_ .modal_box .modalContent .modalTable td.center { text-align: center;}
div.page_estimate_ .modal_box .link_area { max-width: 410px; margin: 20px auto 0; text-align: center; overflow: hidden;}
div.page_estimate_ .modal_box .link_area .modal_close_link { display: inline-block;}
div.page_estimate_ .modal_box .link_area .modal_close_link a {
	width: 200px;
	height: 56px;
  margin: 0 auto;
	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;
  background: #FFF;
	transition: 0.2s;
}
div.page_estimate_ .modal_box .modalContent .link_area .modal_close_link a:hover { opacity: 0.7;}

/* ご注文のキャンセル・返品・交換 */
div.page_estimate_ #modal1.modal_box {}
div.page_estimate_ #modal1.modal_box dl.otoiawaseList dd + dt { margin-top: 20px;}

/* 決済タイミングについて */
div.page_estimate_ #modal2.modal_box { max-width: 950px;}
div.page_estimate_ #modal2.modal_box h2.ModalTitle + p { margin: 0 0 30px 0; font-size: 12px;}
div.page_estimate_ #modal2.modal_box .modalContent p.ListModalTitle { padding: 0 0 0 1em; text-indent: -1em;}

/* 定期コースを変更・解約するには */
div.page_estimate_ #modal3.modal_box .link_area { display: none;}
