﻿@charset "UTF-8";

/* ----------------------------------
 共通
---------------------------------- */
div.customer_ p { margin: 16px 0; font-size: 14px;}
div.customer_ h1 + p { margin-top: 0;}
div.customer_status_ { padding: 0; background: transparent; display: none;}

div.top_box_ { height: auto !important; margin: 0 auto 20px;}
div.top_box_::after { content: ''; width: 100%; display: block; clear: both;}
div.top_box_ .rightfloat_ input,
div.top_box_ .rightfloat_ button { margin: 0 !important;}
div.top_box_ .search_box_ {
  max-width: 400px;
  border: var(--border-solid-frame);
  border-radius: var(--radius-02);
  display: flex;
  justify-content: space-between;
  align-items: center;
}
div.top_box_ .search_box_ input.keyword_ { height: 36px; border: var(--border-solid-dark) !important;}
div.top_box_ .search_box_ input.search-btn {
	width: 36px;
	height: 36px;
	padding: 0 !important;
	margin: 0 0 0 5px;
	border: none !important;
	border-radius: 0 var(--radius-02) var(--radius-02) 0 !important;
	font-size: 0;
	font-weight: 700;
	line-height: 34px;
	color: #FFF !important;
	display: inline-block;
	background-color: var(--site-bg-gray) !important;
	background-image: url("../../img/usr/icon/ico_search.png") !important;
	background-repeat: no-repeat !important;
	background-position: center !important;
	-webkit-background-size: 18px auto !important;
	background-size: 18px auto !important;
}

/* 添付ファイル */
#file_attachment_frame_ .attach-file-list .attach-file-name {
	height: 36px;
	padding: 0 15px;
	margin: 0 0 15px;
	border: var(--btn-del-border);
	border-radius: var(--radius-02);
	display: flex;
	align-items: center;
}
div#file_attachment_frame_ .attach-file-list .attach-file-delete-btn { margin: 0 0 15px 10px;}
div#file_attachment_frame_ .attach-file-list .attach-file-delete-btn .delete_ {
	width: 70px;
	height: 36px;
	border: var(--btn-del-border);
	border-radius: var(--radius-02);
	font-size: 13px;
	font-weight: 400;
	text-align: center;
	color: var(--btn-del-color);
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: var(--btn-del-bg);
	transition: 0.3s;
}

/* ----------------------------------
 お問い合わせ履歴
---------------------------------- */
div.contact_ ul.contactlist_ { padding: 0; border: none; border-radius: 0; background: transparent;}
div.contact_ ul.contactlist_ li { padding: 10px 16px; border: none; border-radius: var(--radius-03); background: #FFF;}
div.contact_ ul.contactlist_ li:has(a) { padding: 0;}
div.contact_ ul.contactlist_ li a {
  width: 100%;
  padding: 10px 32px 10px 16px;
  font-size: 13px;
  text-decoration: none;
  display: flex;
  flex-direction: column;
	background: none;
  position: relative;
}
div.contact_ ul.contactlist_ li a::after { 
	content: '→';
	width: 20px;
	height: 20px;
	border-radius: 20px;
	line-height: 1.0;
	font-size: 8px;
	font-weight: 400;
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: transparent;
	background-image: var(--bg-image-arrow-blue);
	-webkit-background-size: 10px auto;
	background-size: 10px auto;
	background-position: center;
	background-repeat: no-repeat;
	position: absolute;
	top: calc(50% - 10px);
	right: 12px;
}
div.contact_ ul.contactlist_ li a .id_ { font-size: 13px;}
div.contact_ ul.contactlist_ li a .subject_ { font-size: 13px;}

/* ----------------------------------
 お問い合わせ履歴詳細
---------------------------------- */
body.page-contactdetail div.contactdetail_title_ { padding: 8px 0; margin: 0 0 16px; border: none; border-top: var(--table-border); border-bottom: var(--table-border);}
div.contact_ div.contactlist_line_ { border: var(--table-border); background: #FFF;}
div.contact_ div.contactlist_line_ .contactlist_head_ { border-bottom: var(--table-border); background: var(--table-th-bg);}
div.contact_ div.contactlist_ .contactlist_order_id_ { margin: 0;}
div.contact_ .contact_reform_ textarea { width: 100%; margin-bottom: 20px !important; border: var(--table-border) !important;}
div.contact_ .contact_reform_ table.formdetail_.contactdetail_ td { padding: 20px;}

/* ----------------------------------
 メールニュース
---------------------------------- */
body.page-mag pre.agreebody_ { margin-bottom: 40px;}

/* ----------------------------------
 ログイン
---------------------------------- */
div.login_ div.loginform_ { padding: 16px; margin: 0 auto 40px; border-bottom: none; border-radius: var(--radius-02); background: #FFF;}
div.login_ div.loginform_ div.form_text_ { padding: 0; margin: 0 0 20px; font-size: 14px; line-height: var(--line-height-middle);}
div.login_ div.loginform_ div.form_text_ + form > ul { padding: 0; border-radius: var(--radius-03); background: #FFF;}
div.login_ div.loginform_ .forgotpass_ { margin: 20px 0 0; font-size: 14px; text-align: center;}
div.login_ div.loginform_ .forgotpass_ a { text-decoration: underline;}
div.login_ div.loginform_ li.inputimage_ input.btn,
div.login_ div.loginform_ div.inputimage_ input.btn { margin: 0 auto;}

/* ----------------------------------
 会員登録
---------------------------------- */
body.page-entry #container div.common_headline2_ { margin-top: 40px !important;}

/* ----------------------------------
 マイページ
---------------------------------- */
body.page-menu div.mymenu_main_list_ div.mymenu_main_list_head_ h4 {
	padding: 0 0 0 24px;
	margin: 0 0 16px !important;
	border: none;
	font-size: 17px;
	font-weight: 700;
  line-height: var(--line-height-low);
	color: var(--site-color-black);
	background: transparent;
	display: flex;
	align-items: center;
  box-sizing: border-box;
  position: relative;
}
body.page-menu div.mymenu_main_list_ div.mymenu_main_list_head_ h4::before {
	content: '';
	width: 14px;
	display: block;
	background: linear-gradient(90deg, #19AAF1 0%, rgba(54, 225, 191, 0) 100%);
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
}
body.page-menu div.mymenu_main_list_.menu_admin_ div.mymenu_main_list_body_ > ul,
body.page-menu div.mymenu_main_list_.menu_order_ div.mymenu_main_list_body_ > ul { width: 100%; padding: 0; border-radius: 0; background: transparent; position: relative; display: block;}
body.page-menu div.mymenu_main_list_.menu_admin_ div.mymenu_main_list_body_ > ul.bizapproval_,
body.page-menu div.mymenu_main_list_.menu_order_ div.mymenu_main_list_body_ > ul.approval_,
body.page-menu div.mymenu_main_list_.menu_admin_ div.mymenu_main_list_body_ > ul.bizhost_,
body.page-menu div.mymenu_main_list_.menu_order_ div.mymenu_main_list_body_ > ul.history_,
body.page-menu div.mymenu_main_list_.menu_admin_ div.mymenu_main_list_body_ > ul.bizestimate_,
body.page-menu div.mymenu_main_list_.menu_order_ div.mymenu_main_list_body_ > ul.estimate_,
body.page-menu div.mymenu_main_list_.menu_admin_ div.mymenu_main_list_body_ > ul.bizuser_ { background: transparent;}
body.page-menu div.mymenu_main_list_.menu_contact_ div.mymenu_main_list_body_ { padding: 0; background: transparent;}
body.page-menu div.mymenu_main_list_.menu_contact_ div.mymenu_main_list_body_ ul li + li { margin-top: 8px;}
body.page-menu div.mymenu_main_list_.menu_contact_ div.mymenu_main_list_body_ > ul + ul { padding: 0; margin-top: 8px; border: none;}
body.page-menu div.mymenu_main_list_ div.mymenu_main_list_body_ ul li a {
	padding: 16px 40px 16px 16px;
	border: none;
	border-radius: var(--radius-02);
  font-size: 15px;
  font-weight: 400;
	text-decoration: none;
	color: var(--site-color-black);
	background: #FFF;
	position: relative;
	transition: var(--transition);
}
body.page-menu div.mymenu_main_list_ div.mymenu_main_list_body_ ul li a::before { display: none !important;}
body.page-menu div.mymenu_main_list_ div.mymenu_main_list_body_ ul li a::after {
	content: '';
	width: 20px;
	height: 20px;
	border-radius: 20px;
	line-height: 1.0;
	font-size: 8px;
	font-weight: 400;
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: transparent;
	background-image: var(--bg-image-arrow-blue);
	-webkit-background-size: 10px auto;
	background-size: 10px auto;
	background-position: center;
	background-repeat: no-repeat;
	position: absolute;
	top: calc(50% - 10px);
	right: 16px;
}

/* ----------------------------------
 会員情報変更
---------------------------------- */
body.page-customer input[name*="name"],
body.page-customer input[name*="kana"] { margin: 0 10px;}

/* ----------------------------------
 会員配送先
---------------------------------- */
body.page-custdestlist div.address_item_,
body.page-bizdest  div.address_item_ {
  width: 100%;
	padding: 20px;
	margin: 0 0 10px;
	border: none;
	border: var(--border-solid-frame);
	border-radius: var(--radius-01);
	background: #FFF;
}
div.address_item_ .address_title_ { margin: 0 0 10px; font-size: 16px; font-weight: 700;}
div.address_item_ address { font-size: 14px; font-weight: 400;}
div.address_item_ .address_change_ a {
  padding: 7px 16px;
  margin: 0 0 0 auto;
  border: var(--border-solid-frame);
  border-radius: var(--radius-02);
  font-size: 13px;
  font-weight: 400;
  text-decoration: none;
  color: var(--site-color-black);
  display: inline-block;
  background-color: #FFF;
  position: relative;
  overflow: visible;
  cursor: pointer;
	transition: var(--transition);
}
div.address_item_ .address_change_ a:hover { border: var(--border-solid-sky); color: var(--color-hover); opacity: 1.0;}

/* ----------------------------------
 購入履歴
---------------------------------- */
/* 検索項目 */
div.customer_ table.formlist_.bizsearch_ input[type="text"] { width: 100%;}

/* ご注文金額合計 */
div.customer_ dl.order-biz-total {
	padding: 20px;
  margin: 40px 0;
	border-radius: var(--radius-02);
  text-decoration: none;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  column-gap: 10px;
	background: #FFF;
}
div.customer_ dl.order-biz-total dt { font-size: 14px; font-weight: 400;}
div.customer_ dl.order-biz-total dt::after { content: '：';}
div.customer_ dl.order-biz-total dd { font-size: 20px; font-weight: 700;}

/* 一覧 */
div.customer_ table.formlist_.bizsearch_ input[type="text"] { width: 100%; max-width: unset;}

div.customer_ table.formlist_.history_ th.order_id_ { width: 200px !important;}
div.customer_ table.formlist_.history_ th.total_ { letter-spacing: -1px;}
div.customer_ table.formlist_.history_ td.order_dt_ { width: 200px; min-width: 200px; word-break: keep-all;}
div.customer_ table.formlist_.history_ td.order_dt_ a { font-weight: 700; text-decoration: underline;}
div.customer_ table.formlist_.history_ td.order_dt_ a:hover { text-decoration: none;}
div.customer_ table.formlist_.history_ td .order_again_ a { text-decoration: underline; color: var(--site-color-black);}
div.customer_ table.formlist_.history_ td .order_again_ a:hover { text-decoration: none;}
div.customer_ table.formlist_.history_ td [name*="frm_precart"] a { text-decoration: underline; color: var(--site-color-black);}
div.customer_ table.formlist_.history_ td [name*="frm_precart"] a :hover { text-decoration: none;}

/* ----------------------------------
 購入履歴詳細
---------------------------------- */
body[class*='historydetail'] .print_button_ .btn.btn-slender {
	height: auto !important;
  padding: 10px 16px !important;
  margin: 4px;
	border: var(--border-solid-frame);
  border-radius: var(--radius-02);
  font-size: 14px;
  font-weight: 400;
  text-decoration: none !important;
	line-height: 1.0;
	color: #FFF;
  display: inline-block;
	background-color: var(--site-color-black);
	box-shadow: none !important;
  position: relative;
  overflow: visible;
  cursor: pointer;
	transition: var(--transition);
}
body[class*='historydetail'] .historydetail_.submit_ { text-align: center;}
body[class*='historydetail'] .historydetail_.submit_ .btn { text-decoration: none !important;}
body[class*='historydetail'] .historydetail_.submit_ .btn.btn-primary { color: #FFF;}
body[class*='historydetail'] .historydetail_.submit_ .btn.btn-primary:hover { color: var(--site-color-black);}
body[class*='historydetail'] .historydetail_.submit_ .btn.btn-neutral { color: #FFF;}

div.customer_ table.estimate_top_ .estimate_top_right_ > table:not(.formdetail_) { display: none;}
div.customer_ table.estimate_top_ .estimate_top_right_ > table:not(.formdetail_):has(div) { margin-bottom: 20px; display: table;}
div.customer_ table.estimate_top_ .estimate_top_right_ > table:not(.formdetail_) + hr { display: none;}
div.customer_ table.estimate_top_ .estimate_top_right_ > table.formdetail_.method_ { margin-top: 0;}

div.customer_ .estimate_goodsname_ .detail_name_ { font-size: 14px; font-weight: 400; text-align: left;}
div.customer_ .estimate_goodsname_ .detail_name_ .estimate_name_ { font-size: 16px; font-weight: 700;}

body.page-historydetail div.submit_.historydetail_ a,
body.page-historydetail div.submit_.historydetail_ input { width: 100%; margin: 0;}
body.page-historydetail div.submit_.historydetail_ a:hover,
body.page-historydetail div.submit_.historydetail_ input:hover { color: #FFF !important;}
body.page-historydetail div.submit_.historydetail_ input.btn-primary { border: var(--site-color-sky) 1px solid; background-color: var(--site-color-sky);}
body.page-historydetail div.submit_.historydetail_ input.btn-neutral { border: var(--site-color-blue) 1px solid; background-color: var(--site-color-blue);}
body.page-historydetail div.submit_.historydetail_ input.btn-secondary { border: var(--site-color-dark) 1px solid; background-color: var(--site-color-dark); color: #FFF;}

/* ----------------------------------
 カートリスト
---------------------------------- */
body.page-precart div.memo_ { margin-top: 10px;}
body.page-precart div.memo_ a { text-decoration: underline;}
body.page-precart .precart_button_wrap_ { padding: 10px 0 0; margin: 10px 0 0; border-top: var(--border-solid-list); display: flex; justify-content: flex-end; align-items: center; gap: 5px;}
body.page-precart .precart_button_wrap_ a.precart_button_ {
  padding: 5px 10px;
	margin: 0;
  border: none;
  border-radius: var(--radius-03);
	font-size: 12px;
	font-weight: 400;
	text-decoration: none;
	color: #FFF;
  display: flex;
  justify-content: center;
  align-items: center;
}
body.page-precart .precart_button_wrap_ .order_ { background: var(--site-color-sky); }
body.page-precart .precart_button_wrap_ .delete_ { background: var(--site-color-dark);}

/* ----------------------------------
 見積履歴
---------------------------------- */
div.customer_ table.formlist_.history_ tr:nth-child(1) th:nth-child(1) { width: 200px; min-width: 200px;}
div.customer_ table.formlist_.history_ td.order_id_ { width: 200px; min-width: 200px; word-break: keep-all;}
div.customer_ table.formlist_.history_ td.order_id_ a { font-weight: 700; text-decoration: underline;}
div.customer_ table.formlist_.history_ td.order_id_ a:hover { text-decoration: none;}
div.customer_ table.formlist_.history_ td.estimate_dt_ { width: 150px;}
div.customer_ table.formlist_.history_ td.name_ { min-width: 150px;}
div.customer_ table.formlist_.history_ td.estimate_output_dt { width: 150px;}

/* 御見積金額合計 */
div.customer_ dl.estimate-biz-total {
	padding: 20px;
  margin: 40px 0;
	border-radius: var(--radius-02);
  text-decoration: none;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  column-gap: 10px;
	background: #FFF;
}
div.customer_ dl.estimate-biz-total dt { font-size: 14px; font-weight: 400;}
div.customer_ dl.estimate-biz-total dt::after { content: '：';}
div.customer_ dl.estimate-biz-total dd { font-size: 20px; font-weight: 700;}

/* ----------------------------------
 見積履歴詳細
---------------------------------- */
div.customer_ div.method_box_ > .common_headline2_ { width: auto; max-width: unset; margin: 0 -15px 20px;}
div.customer_ div.method_box_ { padding: 20px 15px; margin: 0 0 40px; background: #FFF;}
div.customer_ div.method_box_:has(.common_headline2_) { padding: 0 15px 20px;}
div.customer_ ul.historydetail_ { text-align: center;}
div.customer_ ul.historydetail_ li a { text-decoration: underline;}
div.customer_ ul.historydetail_ li a:hover { text-decoration: none;}

/* ----------------------------------
 商品選択
---------------------------------- */
body.page-contract_order_goods h2.common_headline2_ { margin: 30px 0 15px;}
body.page-contract_order_goods div.goodsproductdetail_ { margin: 0;}
body.page-contract_order_goods div.option_section_ > .option_group_list_:has(div) + .option_group_list_:has(div) { margin-top: 30px; padding-top: 15px; border-top: var(--border-solid-frame);}
body.page-contract_order_goods div.grandchild_option_ { margin-top: 20px;}
body.page-contract_order_goods div.option_comment_ { padding: 0; margin: 0 0 15px; background: none;}
body.page-contract_order_goods div.submit_ .btn.btn-default { border-color: var(--site-color-red); background: var(--site-color-red);}

/* ----------------------------------
 よく使う支払方法設定
---------------------------------- */
body.page-defaultmethod table.formlist_.defaultmethodlist_ th.default_method_ { width: 250px;}

/* ----------------------------------
 クーポン管理
---------------------------------- */
table.formlist_.coupon_ { width: 100%; margin: 0 auto;}
table.formlist_.coupon_ th { padding: 6px 10px; border: var(--table-border); font-size: 12px; font-weight: 700; color: var(--site-color-black); background: var(--table-th-bg);}
table.formlist_.coupon_ td { padding: 6px 10px; border: var(--table-border); font-size: 12px; font-weight: 400; color: var(--site-color-black); background: var(--table-td-bg);}
table.formlist_.coupon_ + table.formlist_.coupon_ {  margin-top: 10px;}

/* ----------------------------------
 お気に入り
---------------------------------- */
div.customer_ ul.bookmark_frame_ li.bookmark_item_ { width: 100%; padding: 15px; margin: 0 0 10px; border: none; border-radius: var(--radius-02); background: #FFF; overflow: hidden;}
div.customer_ ul.bookmark_frame_ li.bookmark_item_ div.cartgoods_ { margin: 30px 10px 0 0;}
div.customer_ ul.bookmark_frame_ li.bookmark_item_ div.img_ { width: 80px; padding: 0; margin: 0 15px 0 0;}
div.customer_ ul.bookmark_frame_ li.bookmark_item_ div.img_ img { width: 80px;}
div.customer_ ul.bookmark_frame_ li.bookmark_item_ div.desc_ { width: calc(100% - 130px); padding: 0;}
div.customer_ ul.bookmark_frame_ li.bookmark_item_ div.comment_ { width: 100%; padding: 8px 0 0; margin: 10px 0 0; border-top: var(--border-solid-list); font-size: 12px; clear: both;}
div.customer_ ul.bookmark_frame_ li.bookmark_item_ div.comment_ > a { margin: 0 0 5px; font-size: 12px; text-decoration: underline; display: inline-block;}
div.customer_ ul.bookmark_frame_ li.bookmark_item_ div.comment_ > a::before { content: '（';}
div.customer_ ul.bookmark_frame_ li.bookmark_item_ div.comment_ > a::after { content: '）';}
div.customer_ ul.bookmark_frame_ li.bookmark_item_ .comment_ input { box-shadow: none;}
div.customer_ ul.bookmark_frame_ li.bookmark_item_ div.del_ { margin: 0 0 0 auto;}
div.customer_ div.bookmark_item_ div.del_ input.btn { border-radius: var(--radius-03);}
div.customer_ div.bookmark_buy_ .btn { width: 100%;}

/* ----------------------------------
 お気に入りグループ
---------------------------------- */
body.page-bookmarkgroup div[align="right"] { margin: 0 0 10px; font-size: 13px; text-align: right;}
body.page-bookmarkgroup div[align="right"] a { font-size: 13px; text-decoration: underline;}
body.page-bookmarkgroup div[align="right"] a:hover { text-decoration: none;}
body.page-bookmarkgroup .form_ .comment_ { font-size: 12px;}
body.page-bookmarkgroup .form_ .comment_ a[id^="comment_"] { font-size: 12px; text-decoration: underline;}
body.page-bookmarkgroup .form_ .comment_ a[id^="comment_"]:hover { text-decoration: none;}
body.page-bookmarkgroup .form_ .comment_ div[id^="comment_label_"] { margin: 0 0 5px; font-size: 14px; font-weight: 700;}
body.page-bookmarkgroup .form_ .comment_ input { border-radius: var(--radius-03);}
body.page-bookmarkgroup .form_ .comment_ .btn_cart_.cart-btn-slender { padding: 6px 10px; background: var(--site-color-sky);}
body.page-bookmarkgroup .form_ .comment_ .add-cart-icon::before { display: none !important;}
body.page-bookmarkgroup table.bookmark_ td.name_ .goods_name_ { font-size: 14px;}

/* ----------------------------------
 カートリスト
---------------------------------- */
div.customer_ .precart_button_.precart-memo,
div.customer_ .precart_button_.precart-name-update,
div.customer_ .precart_button_.precart-cancel { width: 100px; height: 30px; border-radius: var(--radius-02); font-weight: 700; text-align: center; line-height: 1.0; box-shadow: none;}

/* ----------------------------------
 退会
---------------------------------- */
body.page-withdrawal table.formdetail_.withdrawal_ { margin-top: 20px;}
