@charset "UTF-8";

/* ----------------------------------
 ENTRY
---------------------------------- */
/* 会員規約
---------------------------------- */
.block-member-terms  { min-width: var(--layout-min-width); margin: 0 auto;}
.block-member-terms--header {}
.block-member-terms--message { margin-bottom: 40px;}
.block-member-terms--body { margin-top: 10px; margin-bottom: 40px; width: 100%;}

/* 新規会員登録
---------------------------------- */
.block-member-info  { min-width: var(--layout-min-width); margin: 0 auto;}
.block-member-info .fieldset .form-control { max-width: calc(var(--customer-frame) - 388px);}

.block-member-info-confirmation  { min-width: var(--layout-min-width); margin: 0 auto;}
.block-member-info-confirmation--message { margin-bottom: 30px; font-size: 14px;}

.block-member-registration-completed  { min-width: var(--layout-min-width); margin: 0 auto;}
.block-member-registration-completed h1 + p { font-size: 14px; text-align: center;}

/* 簡易会員登録
---------------------------------- */
.block-quick-member-info  { min-width: var(--layout-min-width); margin: 0 auto;}
.block-quick-member-info--message p { font-size: 14px;}
.block-quick-member-info-confirmation  { min-width: var(--layout-min-width); margin: 0 auto;}
.block-quick-member-info-confirmation p { font-size: 14px;}
.block-quick-member-registration-completed  { min-width: var(--layout-min-width); margin: 0 auto;}
.block-quick-member-registration-completed p { font-size: 14px; text-align: center;}

/* ワンタイムパスワード認証
---------------------------------- */
.block-onetimepassword-certify  { min-width: var(--layout-min-width); margin: 0 auto;}
.block-onetimepassword-certify--header-message { font-size: 14px;}
.block-onetimepassword-certify--resend-message .block-onetimepassword-certify--resend-link { font-size: 14px; text-decoration: underline; transition: var(--transition);}
.block-onetimepassword-certify--resend-message .block-onetimepassword-certify--resend-link:hover { text-decoration: none;}

/* ワンタイムパスワード送信
---------------------------------- */
.block-onetimepassword-send  { min-width: var(--layout-min-width); margin: 0 auto;}
.block-member-terms--message,
.block-onetimepassword-send--message { font-size: 14px;}

/* ログイン
---------------------------------- */
.block-login--display-password { display: block;}
.page-login .block-login { min-width: var(--layout-min-width);}
.page-login .block-login h2 { text-align: center;}
.page-login .block-login *[class*="-text"],
.page-login .block-login *[class*="-message"],
.page-login .block-cart--amazonpay-description { margin-bottom: 20px; font-size: 14px; text-align: center;}
.page-login .block-login--member-body  { display: block; background: none;}
.page-login .block-login--member-frame { max-width: 800px; padding: 0 60px; margin: 0 auto 60px; border: none; display: block; background: none;}
.page-login .block-login--social-frame { padding: 0 60px; margin: 0 auto 60px; border: none; display: block; background: none;}
.page-login .block-login--first-time   { padding: 0 60px; margin: 0 auto 60px; border: none; display: block; background: none;}
.page-login .block-login--first-time-body { margin: 0 auto; background: none;}
.page-login .block-login--linelogin-body  { margin: 0 auto; background: none;}
.page-login .block-login--snslogin-body   { margin: 0 auto; background: none;}
.page-login .block-login--ask-password a { text-decoration: underline;}
.page-login .block-login--ask-password a:hover { text-decoration: none;}
.page-login .action .btn.btn-primary { border: var(--border-solid1); color: var(--color-base) !important; background: transparent;}
.page-login .action .btn.btn-primary:hover { opacity: 1.0; background: #FFF;}

.block-additional-authentication { min-width: var(--layout-min-width); margin: 0 auto;}
.block-additional-authentication--body { padding: 0; border: none;}

.block-login--snslogin-body { width: 110%; padding: 0 0 15px; margin: auto; overflow: hidden; zoom: 1;}
.block-login--snslogin-body:after { clear: both;}
.block-login--snslogin-body ul { margin-left: inherit; justify-content: inherit; align-items: center;}
.block-login--snslogin-body ul li { width: 220px; float: left;}
.block-login--snslogin-contents-btn {
  width: 230px;
  height: 50px;
  margin: 0;
  border: none;
  text-align: center;
  vertical-align: middle;
  white-space: nowrap;
  display: inline-block;
  background-color: transparent;
  cursor: pointer;
}
.block-login--snslogin-contents-btn button:focus { outline: none;}
.block-login--snslogin-text { text-align: center; margin-bottom: 20px;}
.block-login--snslogin-body .sns_logo { width: 40px; height: 40px; display: inline-block; vertical-align: middle; float: left;}
.block-login--snslogin-contents-facebook .sns_logo { background: #3b579d url(/img/sys/snslogin/facebook.png) no-repeat; background-size: 40px 40px;}
.block-login--snslogin-contents-twitter .sns_logo { background: #55acee url(/img/sys/snslogin/twitter.png) no-repeat; background-size: 40px 40px;}
.block-login--snslogin-contents-gplus .sns_logo { background: #de4f3e url(/img/sys/snslogin/gplus.png) no-repeat; background-size: 40px 40px;}
.block-login--snslogin-contents-yahoo .sns_logo { background: #e61017 url(/img/sys/snslogin/yahoo.png) no-repeat; background-size: 39px 39px; width: 41px; height: 40px; border: #e61017 1px solid;}
.block-login--snslogin-contents-line .sns_logo { background: #00b900 url(/img/sys/snslogin/line.png) no-repeat; background-size: 40px 40px;}
.block-login--snslogin-body .sns_word {
  width: 160px;
  height: 40px;
  padding: 2px 6px;
  margin-left: 1px;
  border-left: solid 1px #CCC;
  font-size: 85%;
  text-align: left;
  line-height: 40px;
  color: #FFF;
  float: left;
}
.block-login--snslogin-contents-line .sns_word     { background: #00b900;}
.block-login--snslogin-contents-facebook .sns_word { background: #3b579d;}
.block-login--snslogin-contents-twitter .sns_word  { background: #55acee;}
.block-login--snslogin-contents-gplus .sns_word    { background: #de4f3e;}
.block-login--snslogin-contents-yahoo .sns_word    { background: #e61017;}

/* アプリログイン訴求画面
---------------------------------- */
.block-applogin-body { height: 100px; margin: auto; font-size: 16px; text-align: center; letter-spacing: 0.1em; line-height: 1.9em;}

/* 会員登録完了
---------------------------------- */
.page-entrycomplete {}

/* --------------------------------------------------------------------
 MYPAGE
-------------------------------------------------------------------- */
.page-menu .block-mypage { overflow: hidden;}
.page-menu .block-mypage--customer-status {
	padding: 20px;
	margin: 0 0 40px;
	border: var(--border-solid1);
	border-radius: 0;
	color: var(--color-base);
	display: flex;
	align-items: center;
	background: transparent;
}
.page-menu .block-mypage--customer-status .block-mypage--sign    { flex-grow: 1; text-align: center; padding: 8px 0; border-right: var(--border-solid1);}
.page-menu .block-mypage--customer-status .block-mypage--mypoint { flex-grow: 2; font-size: 18px; padding-left: 34px;}
.page-menu .block-mypage--customer-status .block-mypage--sign .block-mypage--customer-name { margin: 0 0 5px; font-size: 18px; color: var(--color-base); display: block;}
.page-menu .block-mypage--customer-status .block-mypage--sign .block-mypage--logout { font-size: 14px;}
.page-menu .block-mypage--customer-status .block-mypage--sign .block-mypage--logout a { color: var(--color-base); text-decoration: underline;}
.page-menu .block-mypage--customer-status .block-mypage--sign .block-mypage--logout a:hover { text-decoration: none;}
.page-menu .block-mypage--rank-status { display: flex; align-items: center; flex-grow: 2; justify-content: flex-end;}
.page-menu .block-mypage--rank-condition dl { display: flex; align-items: center;}
.page-menu .block-mypage--mypoint-duedate { font-size: 14px;}
.page-menu .block-mypage--mypoint-duedate { display: block;}
.page-menu .block-mypage--rank-info { padding: 10px; border: none; text-align: center; background: var(--color-base);}
.page-menu .block-mypage--rank-title { font-size: 12px; color: #FFF; word-break: keep-all;}
.page-menu .block-mypage--rank-name { font-size: 14px; color: #FFF;}
.page-menu .block-mypage--rank-condition { padding: 0 10px 0 17px;}
.page-menu .block-mypage--rank-condition-1 { margin-bottom: 2px;}
.page-menu .block-mypage--rank-condition-1-title,
.page-menu .block-mypage--rank-condition-2-title { display: none;}
.page-menu .block-mypage--rank-condition-1-title i,
.page-menu .block-mypage--rank-condition-2-title i { padding-right: 3px;}
.page-menu .block-mypage--customer-barcode { padding: 10px; text-align: center;}
.page-menu .block-mypage--customer-barcode #customer_barcode_ > div { margin: 0 auto;}
.page-menu .block-mypage--recommend { padding: 10px; text-align: right;}
.page-menu .block-mypage--recommend a { text-decoration: underline;}
.page-menu h2[class*="block-mypage--"][class*="-info"] {
	padding: 16px 0;
	margin: 0 0 40px;
	border-bottom: var(--border-solid1);
	background: transparent;
	font-family: var(--font-family-ship);
	font-size: 18px;
	font-weight: 400;
}
.page-menu h2[class*="block-mypage--"][class*="-info"] .block-icon-image--flex-cell:has(.block-icon-image) { display: none;}
.page-menu ul[class*="block-mypage--"][class*="-info-items"] { width: 100%; padding: 0 var(--layout-base-padding); display: flex; flex-wrap: wrap; margin-bottom: 60px; gap: 20px;}
.page-menu ul[class*="block-mypage--"][class*="-info-items"] li { width: calc((100% - 20px * 2)/ 3); max-width: unset; margin: 0; flex-grow: unset; border: none;}
.page-menu ul[class*="block-mypage--"][class*="-info-items"] li i { display: none !important;}
.page-menu ul[class*="block-mypage--"][class*="-info-items"] li dt { padding: 0; border: var(--border-solid1); display: block;}
.page-menu ul[class*="block-mypage--"][class*="-info-items"] li dt a { max-width: 100%; padding: 16px; font-size: 15px; font-weight: 500; display: flex; text-decoration: none; position: relative;}
.page-menu ul[class*="block-mypage--"][class*="-info-items"] li dt a:after { 
	content: '';
	width: 8px;
	height: 8px;
	border-top: var(--border-solid1);
	border-right: var(--border-solid1);
	display: block;
	position: absolute;
	top: calc(50% - 5px);
	right: 15px;
	transform: rotate(45deg);
	transition: var(--transition);
}
.page-menu ul[class*="block-mypage--"][class*="-info-items"] li dt a:hover:after { right: 10px;}
.page-menu ul[class*="block-mypage--"][class*="-info-items"] li dt a:hover { opacity: 1.0; background-color: #FFF;}
.page-menu ul[class*="block-mypage--"][class*="-info-items"] li dd { padding: 16px;}
.page-menu ul[class*="block-mypage--"][class*="-info-items"] li.block-mypage--shopping-info-item-regular-purchase { display: none !important;}
.page-menu .block-mypage--withdrawal-link { text-align: right;}
.page-menu .block-mypage--withdrawal-link .block-mypage--withdrawal { text-decoration: underline; color: var(--color-gray); transition: var(--transition);}
.page-menu .block-mypage--withdrawal-link .block-mypage--withdrawal:hover { text-decoration: none; opacity: var(--opacity);}
.page-menu .block-mypage--update-address-book {
	width: 100%;
	height: 40px;
	padding: 0;
	margin: 10px auto 0;
	border-radius: 0;
	font-family: var(--font-family-ship);
	font-size: 14px;
	font-weight: 500;
	text-decoration: none;
	color: #FFF;
	display: flex;
	justify-content: center;
	align-items: center;
	background: var(--color-base);
	transition: var(--transition);
}
.page-menu .block-mypage--update-address-book:hover { opacity: var(--opacity);}

@media screen and (max-width: 1000px) {
	.page-menu .block-mypage--customer-status { flex-direction: column;}
	.page-menu .block-mypage--customer-status .block-mypage--sign { width: 100%; padding: 0 0 10px; margin: 0 auto 10px; border: none;}
	.page-menu .block-mypage--customer-status .block-mypage--mypoint { width: 100%; padding: 0; margin: 0; border: none; font-size: 14px; text-align: center;}
	.page-menu .block-mypage--customer-status .block-mypage--rank-status { margin-top: 15px;}
	.page-menu h2[class*="block-mypage--"][class*="-info"] { margin: 0 0 16px;}
	.page-menu ul[class*="block-mypage--"][class*="-info-items"] { padding: 0; gap: 0;}
	.page-menu ul[class*="block-mypage--"][class*="-info-items"] li { width: 100%; margin: 0 0 10px;}
}

/* SNS連動設定モーダル */
.modal--snssync-menu { width: 660px; margin: auto; overflow: hidden; zoom: 1;}
.modal--snssync-menu .snslogin { display: inline-block; margin: 0; text-align: center; vertical-align: middle; cursor: pointer; white-space: nowrap; height: 50px; background-color: transparent; border: none;}
.modal--snssync-menu .sns_logo { width: 40px; height: 38px; display: inline-block; vertical-align: middle; float: left;}
.modal--snssync-menu .snslogin-contents { float: left;}
.modal--snssync-menu-contents-facebook .sns_logo { background: #3b579d url(/img/sys/snslogin/facebook.png) no-repeat; background-size: 40px 40px;}
.modal--snssync-menu-contents-twitter .sns_logo { background: #55acee url(/img/sys/snslogin/twitter.png) no-repeat; background-size: 40px 40px;}
.modal--snssync-menu-contents-gplus .sns_logo { background: #de4f3e url(/img/sys/snslogin/gplus.png) no-repeat; background-size: 40px 40px;}
.modal--snssync-menu-contents-yahoo .sns_logo { background: #e61017 url(/img/sys/snslogin/yahoo.png) no-repeat; background-size: 38px 38px; width: 38px; height: 38px; border: 1px solid #e61017;}
.modal--snssync-menu-contents-line .sns_logo { background: #00b900 url(/img/sys/snslogin/line.png) no-repeat; background-size: 40px 40px;}
.modal--snssync-menu button:focus { outline: none;}
.modal--snssync-menu:after { visibility: hidden; display: block; content: " "; clear: both; height: 0;}
.modal--snssync-menu .sns_word { width: 195px; height: 38px; line-height: 38px; float: left; text-align: left; padding: 0 10px; margin-left: 1px; border-left: solid 1px #CCC;}
.modal--snssync-menu .snslogin_btn_width { width: 280px;}
.modal--snssync-menu-contents-line .sns_word { border: solid 1px #00b900;}
.modal--snssync-menu-contents-facebook .sns_word { border: solid 1px #3b579d;}
.modal--snssync-menu-contents-twitter .sns_word { border: solid 1px #55acee;}
.modal--snssync-menu-contents-gplus .sns_word { border: solid 1px #de4f3e;}
.modal--snssync-menu-contents-yahoo .sns_word { border: solid 1px #e61017;}
.modal--snssync-menu-contents-line .snssync-release .sns_word { background: #00b900; color: #FFF;}
.modal--snssync-menu-contents-facebook .snssync-release .sns_word { background: #3b579d; color: #FFF;}
.modal--snssync-menu-contents-twitter .snssync-release .sns_word { background: #55acee; color: #FFF;}
.modal--snssync-menu-contents-gplus .snssync-release .sns_word { background: #de4f3e; color: #FFF;}
.modal--snssync-menu-contents-yahoo .snssync-release .sns_word { background: #e61017; color: #FFF;}
.modal--snssync-menu { margin: 15px;}

/* line友達登録用 */
.snslogin-line-friends .snslogin-line-friend-message { margin-bottom: 10px;}
.snslogin-line-friends form { float: left;}
.snslogin-line-friends .snslogin_btn_width { color: #FFF; width: 160px; margin: 0 16px;}
.snslogin-line-friends .snslogin-line-friend-sns_word { width: 100%; height: 40px; line-height: 40px; float: left; text-align: center; margin-left: 1px;}
.snslogin-line-friend-yes .snslogin-line-friend-sns_word { background: #232323;}
.snslogin-line-friend-no .snslogin-line-friend-sns_word { background: #9a9a9a;}

/* ログアウト
---------------------------------- */
.page-logout {}

/* --------------------------------------------------------------------
 MEMBERS MENU
-------------------------------------------------------------------- */
/* 会員情報変更
---------------------------------- */
.page-customer .block-member-info--message { margin-bottom: 30px; font-size: 14px;}
.page-customer .block-member-info--message a { text-decoration: underline;}
.page-customer .block-member-info--message a:hover { text-decoration: none;}
.page-customer .block-member-info--update-mail a { text-decoration: underline;}
.page-customer .block-member-info--update-mail a:hover { text-decoration: none;}

/* お気に入り
---------------------------------- */
.block-favorite .block-favorite--pager-top { display: none !important;}
.block-favorite .block-favorite--items { display: flex; flex-wrap: wrap; column-gap: 15px;}
.block-favorite .block-favorite--items li.js-enhanced-ecommerce-item { 
	width: calc((100% - (15px * 4))/ 5);
	min-width: 195px;
	padding: 15px;
	margin: 0 0 60px;
	border: var(--border-solid1);
	border-radius: 0;
	box-shadow: none;
	position: relative;
}
.block-favorite .block-favorite--delete-item { position: absolute; top: 15px; right: 15px;}
.block-favorite .block-favorite--delete-item .btn-danger { width: 46px; height: 24px; padding: 0 0 1px; font-weight: 700; display: flex; justify-content: center; align-items: center;}
.block-favorite .block-favorite--favorite-goods { flex-direction: column;}
.block-favorite .block-favorite--favorite-goods .block-favorite--checkbox { flex-basis: auto; padding: 0; margin: 0 0 20px; justify-content: flex-start; text-align: left;}
.block-favorite .block-favorite--favorite-goods .block-favorite--image { width: 100%; flex-basis: auto; padding: 131.2% 0 0; margin: 0 auto 20px; background: var(--image-bg-color); position: relative;}
.block-favorite .block-favorite--favorite-goods .block-favorite--image figure {
  width: 100%;
  height: 100%;
  padding: 0;
  margin: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  background: var(--image-bg-color);
  position: absolute;
  top: 0;
  left: 0;
}
.block-favorite .block-favorite--favorite-goods .block-favorite--description { flex-basis: auto; padding: 0; margin: 0; justify-content: flex-start; text-align: left;}
.block-favorite .block-favorite--favorite-goods .block-favorite--goods-name { 
	height: calc(16px * 2 * var(--line-height-low));
	margin: 0 0 10px;
	font-family: var(--font-family-ship);
	font-size: 14px;
	font-weight: 400;
	text-align: center;
	text-decoration: none;
  display: block;
  line-height: var(--line-height-low);
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}
.block-favorite .block-favorite--favorite-goods .block-favorite--goods-name a { font-size: 16px; font-weight: 700; text-decoration: none; color: var(--color-base);}
.block-favorite .block-favorite--favorite-goods .block-favorite--goods-name a:hover { opacity: var(--opacity);}
.block-favorite .block-favorite--favorite-goods .variation-name,
.block-favorite .block-favorite--favorite-goods .block-icon { display: none !important;}
.block-favorite .block-favorite--favorite-goods .block-favorite--spec { margin: 5px 0 0;}
.block-favorite .block-favorite--favorite-goods .block-favorite--price-title { display: none !important;}
.block-favorite .block-favorite--favorite-goods .block-favorite--price-items { text-align: center;}
.block-favorite .block-favorite--favorite-goods .block-favorite--price-items .price { font-family: var(--font-family-lato); font-size: 14px; font-weight: 700; color: var(--color-base);}
.block-favorite .block-favorite--favorite-goods .block-favorite--price-items .price::after { content: '(Tax in)'; margin: 0 0 0 3px; font-family: var(--font-family-lato); font-size: 10px; font-weight: 400;}
.block-favorite .block-favorite--favorite-goods .block-favorite--price-items:has(.default-price) .price { color: var(--color-sale);}
.block-favorite .block-favorite--favorite-goods .revico-read-more-review { display: none !important;}
.block-favorite .block-favorite--favorite-goods .block-favorite--update-dt {
  padding: 12px 0 0;
  margin: 12px 0 0;
  border-top: var(--border-dotted);
  font-size: 12px;
	display: flex;
	justify-content: flex-end;
	align-items: center;
}
.block-favorite .block-favorite--favorite-goods .block-favorite--update-dt * { font-size: 12px;}
.block-favorite .block-favorite--favorite-goods .block-favorite--comment { flex-basis: auto; padding: 0; margin: 0; display: none !important;}
.block-favorite .block-favorite--favorite-goods .block-favorite--delete-fg { display: none !important;}
.block-favorite .action-buttons .action { height: auto;}
.block-favorite .block-favorite--add-to-cart { width: 460px; height: 56px;}
.block-favorite .block-favorite--back { height: 56px;}

.block-guest-favorite-synchronize { text-align: center; margin-top: 50px;}

/* 入荷案内申し込み商品
---------------------------------- */
.page-backorder .block-arrival-notice-list--pager-top { display: none !important;}
.page-backorder .block-arrival-notice-list--items { display: flex; flex-wrap: wrap; column-gap: 15px;}
.page-backorder .block-arrival-notice-list--items li.js-enhanced-ecommerce-item { 
	width: calc((100% - (15px * 4))/ 5);
	padding: 15px;
	margin: 0 0 60px;
	border: var(--border-solid1);
	border-radius: 0;
	box-shadow: none;
	position: relative;
}
.page-backorder .block-arrival-notice-list--delete-item { position: absolute; top: 15px; right: 15px;}
.page-backorder .block-arrival-notice-list--delete-item .btn-danger { width: 46px; height: 24px; padding: 0 0 1px; font-weight: 700; display: flex; justify-content: center; align-items: center;}
.page-backorder .block-arrival-notice-list--goods { flex-direction: column;}
.page-backorder .block-arrival-notice-list--image { width: 100%; flex-basis: auto; padding: 131.2% 0 0; margin: 0 auto 20px; background: var(--image-bg-color); position: relative;}
.page-backorder .block-arrival-notice-list--image figure {
  width: 100%;
  height: 100%;
  padding: 0;
  margin: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  background: var(--image-bg-color);
  position: absolute;
  top: 0;
  left: 0;
}
.page-backorder .block-arrival-notice-list--description { flex-basis: auto; padding: 0; margin: 0; justify-content: flex-start; text-align: left;}
.page-backorder .block-arrival-notice-list--description .block-arrival-notice-list--goods-name { 
	height: calc(16px * 2 * var(--line-height-low));
	margin: 0 0 10px;
	font-size: 16px;
	font-weight: 700;
	text-decoration: none;
  display: block;
  line-height: var(--line-height-low);
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}
.page-backorder .block-arrival-notice-list--description .block-arrival-notice-list--goods-name a { font-size: 16px; font-weight: 700; text-decoration: none; color: var(--color-base);}
.page-backorder .block-arrival-notice-list--description .block-arrival-notice-list--goods-name a:hover { opacity: var(--opacity);}
.page-backorder .block-arrival-notice-list--description .variation-name,
.page-backorder .block-arrival-notice-list--description .block-icon { display: none !important;}
.page-backorder .block-arrival-notice-list--description .block-arrival-notice-list--spec { margin: 5px 0 0;}
.page-backorder .block-arrival-notice-list--description .block-arrival-notice-list--price-title { display: none !important;}
.page-backorder .block-arrival-notice-list--description .block-arrival-notice-list--price-items { text-align: left;}
.page-backorder .block-arrival-notice-list--description .block-arrival-notice-list--price-items .price { font-family: var(--font-family-lato); font-size: 14px; font-weight: 700; color: var(--color-base);}
.page-backorder .block-arrival-notice-list--description .block-arrival-notice-list--price-items .price::after { content: '(Tax in)'; margin: 0 0 0 3px; font-family: var(--font-family-lato); font-size: 10px; font-weight: 400;}
.page-backorder .block-arrival-notice-list--description .block-arrival-notice-list--price-items:has(.default-price) .price { color: var(--color-sale);}
.page-backorder .block-arrival-notice-list--description .block-arrival-notice-list--order-dt {
  padding: 12px 0 0;
  margin: 12px 0 0;
  border-top: var(--border-dotted);
  font-size: 16px;
	display: flex;
	justify-content: flex-end;
	align-items: center;
}

/* ポイント履歴一覧
---------------------------------- */
.block-point-history-list {}

/* アドレス帳
---------------------------------- */
.block-shipping-address { min-width: var(--layout-min-width); margin: 0 auto;}
.block-shipping-address-registration--message { margin: 0 0 20px; font-size: 16px;}
.block-shipping-address-confirmation { min-width: var(--layout-min-width); margin: 0 auto;}

/* メールアドレス変更
---------------------------------- */
.block-mail-address {}
.block-mail-address:has(.block-mail-address--update-completed-message) .block-mail-address--customer-name { text-align: center;}

.block-mail-unsubscribe { min-width: var(--layout-min-width); margin: 0 auto;}

/* パスワード再設定
---------------------------------- */
.block-reset-password,
.block-update-new-password { min-width: var(--layout-min-width); margin: 0 auto;}
.block-reset-password--message {}

/* パスワード変更
---------------------------------- */
.block-member-password { min-width: var(--layout-min-width); margin: 0 auto;}

/* 会員IDの変更
---------------------------------- */
.block-member-id { min-width: var(--layout-min-width); margin: 0 auto;}

/* カード情報確認
---------------------------------- */
.page-cardedit .block-credit-card-confirmation { min-width: var(--layout-min-width); margin: 0 auto;}

/* カード情報変更
---------------------------------- */
.page-cardupdate .block-update-credit-card-info { min-width: var(--layout-min-width); margin: 0 auto;}

.page-historycardupdate .block-purchase-history-cardupdate--ordertable th { word-break: keep-all;}
.page-historycardupdate .block-purchase-history-cardupdate--order-dt { word-break: keep-all;}
.page-historycardupdate .block-purchase-history-cardupdate--method { word-break: keep-all;}
.page-historycardupdate .block-purchase-history-cardupdate--message { font-size: 16px;}

/* 所持クーポン一覧
---------------------------------- */
.block-coupon-list  { min-width: var(--layout-min-width); margin: 0 auto;}

/* お問い合わせ履歴
---------------------------------- */
.block-inquiry-history  { min-width: var(--layout-min-width); margin: 0 auto;}
.block-inquiry-history--body ul { border-top: var(--border-solid1);}
.block-inquiry-history--body li { font-size: 16px; border-bottom: var(--border-solid1);}
.block-inquiry-history--body li a { font-size: 16px; text-decoration: underline; transition: var(--transition);}
.block-inquiry-history--body li a:hover { opacity: var(--opacity);}

.page-contactdetail h2.block-inquiry-history-detail--subject { 
  margin: 16px 0;
  padding: 0 0 16px;
  border: 0;
  border-bottom: var(--border-solid2);
  font-size: var(--font-size-h3);
  font-weight: 700;
  line-height: 1.0;
  letter-spacing: 0;
  text-align: left;
	background: none;
}
.block-inquiry-history-detail  { min-width: var(--layout-min-width); margin: 0 auto;}
.block-inquiry-history-detail--item { padding: 20px; margin: 20px 0; border-radius: 0; background-color: var(--color-bg-dark);}
.block-inquiry-history-detail--item dt.legend { padding: 0; margin: 0 0 20px;}
.block-inquiry-history-detail--item dt.legend::before { display: none;}
.block-inquiry-history-detail--item dd { font-size: 16px;}
.block-inquiry-history-detail--title { margin: 0 0 20px; font-size: 16px;}
.block-inquiry-history-detail--message { font-size: 16px; text-align: center;}
.block-inquiry-history-detail--update-dt { font-size: 14px; font-weight: 700;}

/* ログアウト
---------------------------------- */
.block-logout  { min-width: var(--layout-min-width); margin: 0 auto;}
.block-logout--message { font-size: 16px; text-align: center;}
.block-logout--message a { font-size: 16px; text-decoration: underline; transition: var(--transition);}
.block-logout--message a:hover { opacity: var(--opacity);}

/* 退会
---------------------------------- */
.block-withdrawal  { min-width: var(--layout-min-width); margin: 0 auto;}
.block-withdrawal--message { font-size: 16px;}


/* ==================================================
 Customer Menu - Order
================================================== */
/* 注文ステータス */
.status-name {
	font-size: var(--font-size-h4);
	font-weight: 700;
}
.status-order,
.status-cancel,
.status-income,
.status-reserve,
.status-rship,
.status-ship,
.status-verify,
.status-return,
.status-status_,
.status-status_1,
.status-status_2,
.status-status_3,
.status-status_4,
.status-status_9 {
	max-width: 100%;
  width: 100%;
  height: auto;
  min-height: 50px;
  border: var(--border-solid1);
  padding: 5px 0;
}

.status-message { width: 70%; padding: 0 5px; font-size: 12px; display: table-cell; vertical-align: middle;}
.status-percentage { width: 30%; padding: 0 5px; font-size: 24px; font-weight: 700; color: #031241; text-align: center; display: table-cell; vertical-align: middle;}

[class^="status-progress"] { display: block; position: relative; width: 96%; height: 14px; margin: 0 auto; background: #CCC;}
[class^="status-progress"]:after { content: ''; height: 14px; border-right: #031241 4px solid; display: block; background: #1e5799; position: absolute; top: 0; left: 0;}

.status-progress-20:after  { width: 20%;}
.status-progress-40:after  { width: 40%;}
.status-progress-60:after  { width: 60%;}
.status-progress-80:after  { width: 80%;}
.status-progress-100:after { width: 100%;}

.status-reserve .status-message,
.status-cancel .status-message,
.status-return .status-message,
.status-status_ .status-message,
.status-status_1 .status-message,
.status-status_2 .status-message,
.status-status_3 .status-message,
.status-status_4 .status-message,
.status-status_9 .status-message { width: 100%;}
.status-reserve [class^="status-progress"]:after { border-right: #ea7500 4px solid; background: #f79800;}
.status-return  [class^="status-progress"]:after { border-right: #028900 4px solid; background: #00ab0b;}

/* 購入履歴一覧
---------------------------------- */
.page-historydetail .block-purchase-history-detail--regular-sales a:hover { opacity: var(--opacity);}
.page-history .block-purchase-history--search-btn { height: 42px; font-weight: 700;}
.page-history .block-purchase-history--table td.block-purchase-history--order-dt { max-width: 130px; width: 130px;}
.page-history .block-purchase-history--table td.block-purchase-history--order-detail { max-width: 270px; word-break: break-all;}
.page-history .block-purchase-history--table td.block-purchase-history--total { min-width: 120px; font-size: 18px; font-weight: 700; text-align: right;}
.page-history .block-purchase-history--table td.block-purchase-history--total .yen { font-size: 10px;}
.page-history .block-purchase-history--table td.block-purchase-history--status { max-width: 270px; width: 270px;}
.page-history .block-purchase-history--reauth { width: 100%;}
.page-history .block-purchase-history--reauth .action { min-width: auto; margin: 10px 0 0; display: block;}
.page-history .block-purchase-history--reauth .action .block-purchase-history--reauth-button { height: 48px; font-size: 14px;}

/* 購入履歴詳細
---------------------------------- */
.page-historydetail .block-purchase-history-detail--regular-sales a:hover { opacity: var(--opacity);}
.page-historydetail .block-purchase-history-detail--receipt-items .control-label { word-break: keep-all;}
.page-historydetail .block-purchase-history-detail--receipt-items input[type="text"] { width: 340px; margin-left: 10px;}
.page-historydetail .block-purchase-history-detail--payment-info-items td  { text-align: right;}
.page-historydetail .block-purchase-history-detail--shipping-info-items th { word-break: keep-all;}
.page-historydetail .block-purchase-history-detail--shipping-info-items td { word-break: break-all;}
.page-historydetail .block-purchase-history-detail--shipment-items th { word-break: keep-all;}
.page-historydetail td.block-purchase-history-detail--destination-shipment-qty { text-align: center;}
.page-historydetail td.block-purchase-history-detail--shipment-order-extension { min-width: 300px; width: 300px;}
.page-historydetail td.block-purchase-history-detail--noshi { min-width: 370px; width: 370px;}
.page-historydetail .block-purchase-history-detail--receipt { padding: 8px 20px; font-weight: 700;}
.page-historydetail .block-purchase-history-detail--receipt-address,
.page-historydetail .block-purchase-history-detail--shiment-address { border: var(--border-solid1);}
.page-historydetail .action .block-purchase-history-detail--add-goods {}

/* 購入カード情報変更
---------------------------------- */
.block-purchase-history-cardupdate {}

/* 定期：購入商品変更
---------------------------------- */
.page-regulargoods .pane-main  { min-width: var(--layout-min-width); margin: 0 auto;}
.page-regulargoods .block-goodschange-list .block-thumbnail-t--items .block-thumbnail-t--goods { border: var(--border-solid2); border-radius: 0; box-shadow: none;}

/* 定期：購入商品追加
---------------------------------- */
.page-regularaddgoods .pane-main  { min-width: var(--layout-min-width); margin: 0 auto;}
.block-regular-sales-add--goods {
  width: calc((100% - (16px * 3))/4);
	height: auto;
  flex-basis: auto;
  padding: 24px 24px 10px;
  margin: 0 0 30px;
  border: var(--border-solid2);
  border-radius: 0;
  box-shadow: none;
  display: block;
  position: relative;
}
.block-regular-sales-add--goods .block-auto-icon { width: 100%; padding: 0 24px; position: absolute; top: 0; left: 0; right: 0;}
.block-regular-sales-add--goods .block-regular-sales-add--goods-image { width: calc(100% - 20px); height: auto; padding: calc(100% - 20px) 0 0; margin: 0 10px 20px; position: relative;}
.block-regular-sales-add--goods .block-regular-sales-add--goods-image a { transition: var(--transition);}
.block-regular-sales-add--goods .block-regular-sales-add--goods-image a:hover { opacity: var(--opacity);}
.block-regular-sales-add--goods .block-regular-sales-add--goods-image figure { width: 100%; height: 100%; background: var(--image-bg-color); display: flex; justify-content: center; align-items: center; position: absolute; left: 0; top: 0;}
.block-regular-sales-add--goods .block-icon { display: none;}
.block-regular-sales-add--goods .block-regular-sales-add--goods-description { width: 100%; padding: 0 0 12px; margin: 0;}
.block-regular-sales-add--goods .block-regular-sales-add--goods-name {
	height: calc(16px * 2 * var(--line-height-low));
	margin: 0 0 8px;
	font-size: 16px;
	font-weight: 700;
  display: block;
  line-height: var(--line-height-low);
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}
.block-regular-sales-add--goods .block-regular-sales-add--goods-name a { font-size: 16px; font-weight: 700; text-decoration: none;}
.block-regular-sales-add--goods .block-regular-sales-add--goods-name a:hover { text-decoration: none;}
.block-regular-sales-add--goods .variation-name { display: none;}
.block-regular-sales-add--goods .block-regular-sales-add--price-info { margin: 0 0 12px; font-size: 16px;}
.block-regular-sales-add--goods .block-regular-sales-add--price-info .block-regular-sales-add-price span { font-size: 10px; font-weight: 500;}
.block-regular-sales-add--goods .block-regular-sales-add--price-info .block-regular-sales-add-price span + span { font-size: 16px; font-weight: 700;}
.block-regular-sales-add--goods .block-regular-sales-add--price-info .block-regular-sales-add-regular-repeat-price span { font-size: 10px; font-weight: 500;}
.block-regular-sales-add--goods .block-regular-sales-add--price-info .block-regular-sales-add-regular-repeat-price span + span { font-size: 16px; font-weight: 700;}
.block-regular-sales-add--goods .block-regular-sales-add--price-info .price .yen { color: var(--color-sale);}
.block-regular-sales-add--goods .block-regular-sales-add--qty { margin: 0 0 16px;}
.block-regular-sales-add--goods .block-regular-sales-add--goods-description .action { margin: 10px 0;}
.block-regular-sales-add--goods .block-regular-sales-add--goods-description .action .btn { margin: 0; font-size: 14px;}

/* 定期：契約情報
---------------------------------- */
.page-regularhistory .block-regular-purcharse-list--info-add .action a.btn { width: 80%; height: 48px; margin: 0 auto;}

/* 定期：商品配送先変更
---------------------------------- */
.block-regular-purcharse-shipment-info-update  { min-width: var(--layout-min-width); margin: 0 auto;}
.block-regular-purcharse-shipment-info-update--old-address { padding: 15px; border: var(--border-solid1); font-size: 16px;}
.block-regular-purcharse-shipment-info-update--old-info-message { font-size: 16px;}
.block-regular-purcharse-shipment-info-update--new-info-items { font-size: 16px;}
.block-regular-purcharse-shipment-info--amazonpay-message { margin: 0 0 20px; text-align: center;}
.block-regular-purcharse-shipment-info--amazonpay-login { text-align: center;}

/* 定期：次回お届け商品の切り替え
---------------------------------- */
.page-regularrefillgoods .pane-main { max-width: var(--customer-frame); margin: 0 auto !important;}
.page-regularrefillgoods .block-thumbnail-t--items { justify-content: center;}
.page-regularrefillgoods .block-thumbnail-t--items .block-thumbnail-t--goods {
  width: calc((100% - (16px * 3))/4);
	height: auto;
  flex-basis: auto;
  padding: 24px 24px 10px;
  margin: 0 0 30px;
  border: var(--border-solid2);
  border-radius: 0;
  box-shadow: none;
  display: block;
  position: relative;
}
.block-regular-sales-add--goods .block-refill-goods-item--qty { font-size: 16px;}

/* 定期：商品サイクル情報変更
---------------------------------- */
.block-regular-purcharse-cycle-info-update  { min-width: var(--layout-min-width); margin: 0 auto;}
.block-regular-purcharse-cycle-info-update #method_regular select { min-width: 80px;}
.block-regular-purcharse-cycle-info-update--back { display: flex; justify-content: center; flex-wrap: wrap; align-items: center;}
.block-regular-purcharse-cycle-info-update--skip-cancel-message { margin: 5px 0 0 5px;}

/* 定期：本品とレフィル切り替え画面
---------------------------------- */
.block-refillgoods-list .block-thumbnail-t dl,
.block-refillgoods-list .block-thumbnail-t dl:nth-of-type(4n) { width: 200px; margin: 0 50px 20px 0;}

/* 定期：お支払い方法変更
---------------------------------- */
.block-regular-purcharse-method-info-update  { min-width: var(--layout-min-width); margin: 0 auto;}
.block-regular-purcharse-method-info-update--regular-sales-items { width: 100%;}
.block-regular-purcharse-method--info-cardedit a:hover { text-decoration: none;}
.block-regular-purcharse-method-info-update--back { display: flex; justify-content: center; flex-wrap: wrap; align-items: center;}

/* 定期：解約
---------------------------------- */
.block-regular-purcharse-cancellation  { min-width: var(--layout-min-width); margin: 0 auto;}
.block-regular-purcharse-cancellation--goods-items thead th { text-align: center;}
.block-regular-purcharse-cancellation--goods-img { width: 140px; text-align: center; vertical-align: middle;}
.block-regular-purcharse-cancellation--price     { text-align: right;}
.block-regular-purcharse-cancellation--qty       { text-align: center;}
.block-regular-purcharse-cancellation--subtotal  { text-align: right;}
.block-regular-purcharse-cancellation--cancel-reason { font-size: 16px;}
.block-regular-purcharse-cancellation--cancel-reason-message { margin: 0 0 20px; font-size: 16px;}
.block-regular-purcharse-cancellation--message { margin: 0 0 20px; font-size: 16px;}

/* ご注文キャンセル
---------------------------------- */
.block-order-cancellation  { min-width: var(--layout-min-width); margin: 0 auto;}
.block-order-cancellation-completed  { min-width: var(--layout-min-width); margin: 0 auto;}
.block-order-cancellation--order-info-left .legend.block-order-cancellation--order-detail-header { margin-top: 0;}
.block-order-cancellation--order-info-right { padding-top: calc((var(--font-size-h4) * var(--line-height-low)) + 20px);}

/* ==================================================
 Etc
================================================== */
/* お問い合わせ
---------------------------------- */
.block-inquiry  { min-width: var(--layout-min-width); margin: 0 auto;}
.block-inquiry--message { margin: 20px 0; font-size: 16px;}
.block-inquiry-completed--customer-name { text-align: center;}

/* メルマガ
---------------------------------- */
.block-mail-news  { min-width: var(--layout-min-width); margin: 0 auto;}

/* レビュー
---------------------------------- */
.block-user-review  { min-width: var(--layout-min-width); margin: 0 auto;}
.block-user-review textarea { width: 100%;}
.block-user-review-completed--message-header { text-align: center;}
.block-user-review-completed p { font-size: 16px; text-align: center;}

/* クイックオーダー
---------------------------------- */
.block-quick-order .block-quick-order--goods-code-header { width: 220px;}
.block-quick-order .block-quick-order--goods-code-cell .block-quick-order--goods-code { width: 200px;}
.block-quick-order .block-quick-order--goods-detail-cell { width: 100px; text-align: center; vertical-align: middle;}
.block-quick-order .block-quick-order--goods-detail-cell .block-quick-order--goods-image { width: auto; height: auto; max-width: 80px; max-height: 80px;}
.block-quick-order .block-quick-order--subtotal-header { width: 200px;}
.block-quick-order .block-quick-order--subtotal-cell { text-align: right;}
.block-quick-order .block-quick-order--stock-header { width: 140px;}
.block-quick-order .block-quick-order--delete-btn { margin: auto; border-radius: 0; font-size: 14px; font-weight: 700;}

/* アンケート
---------------------------------- */
.block-questionnaire,
.block-questionnaire-completed  { min-width: var(--layout-min-width); margin: 0 auto;}
