﻿/* =====================================================================
*
*    ユーザー/User
*
* =================================================================== */

/* ---------------------------------
*    共通
*/
.wrap-user {
  width: 92%;
  margin: 0 auto;
}

.user-unit .msg-alert {
  font-size: 11px;
  padding: 1em 0;
  line-height: 1.66;
}

.user-unit,
.point-unit {
  /*margin-bottom: 2em;*/
}

.user-unit h2,
.point-unit h2 {
  font-size: 14px;
  letter-spacing: 0.05em;
  line-height: 1;
  text-align: center;
  position: relative;
  padding: 18px 0 17px;
  border-bottom: 1px solid #b3b3b3;
}

.user-unit h3,
.point-unit h3 {
  padding: .5em;
  background-color: #fafafa;
  font-size: 14px;
}

.user-unit .user-form {
  margin: 1em auto;
  /*width: 96%;*/
}

.point-unit .point-form {
  margin: 0.5em auto;
}

.user-unit .user-form dt,
.user-unit .user-form dd,
.point-unit .point-form dt,
.point-unit .point-form dd {
  /*padding: .5em;
	line-height: 1.5;*/
}

.user-unit .user-form dt,
.point-unit .point-form dt {
  background-color: #f1f1f1;
  height: 35px;
  line-height: 35px;
  padding: 0 10px;
  margin: 10px 0;
}

.user-unit .user-form dd dt,
.point-unit .point-form dd dt {
  background-color: transparent;
  border-bottom: 1px solid #000;
  color: #000;
}

.user-unit .user-form .flex {
  width: 100%;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  align-content: center;
  align-items: stretch;
}

.user-unit .user-form .flex li {
  flex-grow: 1;
}

.user-unit .user-form .name li {
  margin: 0 5px 0 0;
}

.user-unit .user-form .name li:nth-of-type(2) {
  margin: 0 0 0 5px;
}

.user-form .birth li.ttx,
.user-form .zip li.ttx,
.user-form .tel li.ttx,
.user-form .card-exp li.ttx {
  margin: 0 10px;
  line-height: 37px;
}

.user-unit h2+.msg {
  padding: 1em 0;
}

.user-unit .msg,
.point-unit .msg {
  font-size: 11px;
  padding: 0 0 5px;
  line-height: 1.66;
}

.user-unit .msg p,
.point-unit .msg p {
  line-height: 1.66;
  font-size: 12px;
}

.user-unit .require,
.point-unit .require {
  color: #f00;
  font-weight: bold;
  margin-left: 3px;
}

.user-unit .attention,
.point-unit .attention {
  font-size: 11px;
  color: #f00;
  line-height: 1.5;
  /*padding: .3em;*/
}

.user-unit .no-data,
.point-unit .no-data {
  padding: 1em;
  text-align: center;
}

.cart-unit-product + tr td {
	padding-right: .5em;
  padding-bottom: .5em;

}

.user-nav {
  border-top: 1px solid #b3b3b3;
  margin-top: 38px;
}

.user-nav li {
  width: 100%;
  border-bottom: 1px solid #b3b3b3;
}

.user-nav li a {
  display: block;
  padding: 1.5em 1em;
}

.msg .completeInfo {
  margin: 10px 0 30px;
  padding: 15px 0;
  border-bottom: 1px #ccc solid;
  line-height: 1.7;
  text-align: center;
}

.msg .completeInfo span {
  color: #ff0000;
  padding: 0px 3px;
}

/* フッターボタン */

.user-footer {
  margin: 20px 0 38px;
}

.user-footer-arrival {
  padding: 0 1em 0 1em;
}

.user-footer div {
  margin-bottom: 1em;
}


.user-footer .button-next {
  width: 100%;
  height: 50px;
  background: #000;
  color: #fff;
  text-align: center;
  font-size: 13px;
  letter-spacing: 0.05em;
  line-height: 1;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin-bottom: 10px;
}

.user-footer .button-next .btn {
  width: 100%;
  height: 100%;
  display: block;
  padding: 18px 0 17px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  background-color: #000;
  color: #fff;
}

.user-footer-arrival .button-next .btn-arrival {
  padding: 1em 0;
  background-color: #000;
  color: #fff;
}

.user-product-arrival-mail-regist .user-footer-arrival .button-next .btn-arrival {
  padding: 0.7em 0;
}

.user-footer .button-prev {
  width: 100%;
  height: 50px;
  background: #ddd;
  text-align: center;
  font-size: 13px;
  letter-spacing: 0.05em;
  line-height: 1;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.user-footer .button-prev .btn {
  width: 100%;
  height: 100%;
  display: block;
  padding: 18px 0 17px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  background: none;
  color: inherit;
}

.user-footer .button-corre {
  width: 80%;
  height: 40px;
  background: #ddd;
  text-align: center;
  font-size: 13px;
  letter-spacing: 0.05em;
  line-height: 1;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0 auto;
}

.user-footer .button-corre .btn {
  width: 105%;
  height: 100%;
  display: block;
  line-height: 40px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  background: #FFF;
  border: 1px solid #000;
  color: #000;
  padding: 0;
}

.user-footer .button-top {
  width: 100%;
  height: 50px;
  background: #ddd;
  text-align: center;
  font-size: 13px;
  letter-spacing: 0.05em;
  line-height: 1;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin-top: 10px;
}

.user-footer .button-top .btn {
  width: 100%;
  height: 100%;
  display: block;
  padding: 18px 0 17px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}



/* ---------------------------------
*    会員情報の確認・変更 / UserModifyInput
*/

.user-unit .user-form dd input {
  /*padding: .5em;*/
}

.user-unit .user-form dd input[type="text"] + input[type="text"] {
  margin-top: 10px;
}

.user-unit .user-form dd.extend {
  line-height: 2;
}

.user-form dd.extend ul li.title {
  font-weight: bold;
  border-top: 1px dotted #ccc;
  margin: .3em 0;
}

.user-form dd.extend ul li.title:first-child {
  border-top: none;
}

.user-unit .button {
  margin: 1em 0;
  padding: 1em 0;
}

.user-unit .btn {
  display: block;
  padding: 1em 0;
  background-color: transparent;
  color: #000;
  text-align: center;
}

.user-unit .product-info .product-price .btn {
  display: inline-block;
  margin: .5em 0 0;
  padding: .5em 1em;
  background-color: #e8e8e8;
}

.user-unit .button-next {
  text-align: center;
}

.user-unit .checked {
  text-align: center;
  margin: .5em 0;
}

.user-form .attention span {
  display: block;
}

.login .user-form input {
  width: 100%;
}

/* フォームのinput */

.user-form .name input,
.user-form .name-kana input {
  width: 100%;
}


.user-form .mail input,
.user-form .mail-confirm input,
.user-form .mobile input,
.user-form .mobile-confirm input,
.user-form .address input {
  width: 100%;
}

.user-form .zip input {
  width: 30%;
}

.user-form .zip .btn-add-search {
  display: block;
  padding: 1em;
  background-color: #000;
  margin: .5em 0;
  width: 50%;
  text-align: center;
  color: #fff;
}

.user-form .birth select {
  width: 25%;
}

.user-form .tel input {
  width: 30%;
}

.user-form .address input,
.user-form .address select,
.user-form .mail input,
.user-form .mobile input {
  margin-bottom: .2em;
}

.user-form .title select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border-radius: 0;
  background: #FFF url(../../SmartPhone/Contents/ImagePkg/common/select_arrow.gif) no-repeat !important;
  background-size: 13px 7px !important;
  background-position: right 10px center !important;
  height: 37px;
  font-size: 1em;
  text-indent: 0.3em;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  padding-left: 5px;
  line-height: 1;
  width: 100%;
  border-radius: 5px;
  -webkit-appearance: none;
  border: 1px solid #CCCCCC;
}

.user-form dd input[type="text"],
.user-form dd input[type="email"],
.user-form dd input[type="tel"] {
  width: 100%;
  padding: 10px;
  border-radius: 5px;
  -webkit-appearance: none;
  border: 1px solid #CCCCCC;
}

.user-form .text textarea {
  width: 100%;
}

/* クレジットカード入力 */
.user-form .card-name input {
  width: 100%;
}

.user-form .card-nums input {
  width: 100%;
}

.user-form .credit-expire select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border-radius: 0;
  background: #FFF url(../../SmartPhone/Contents/ImagePkg/common/select_arrow.gif) no-repeat !important;
  background-size: 13px 7px !important;
  background-position: right 10px center !important;
  height: 37px;
  font-size: 1em;
  text-indent: 0.3em;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  padding-left: 5px;
  line-height: 1;
  width: 100%;
  border-radius: 5px;
  -webkit-appearance: none;
  border: 1px solid #CCCCCC;
}

/* ラジオボタン */

.user-form .radio-button ul {
  display: table;
  table-layout: fixed;
  width: 50%;
  margin: 0 auto;
}

.user-form .radio-button ul li {
  display: table-cell;
  width: 50%;
  text-align: center;
}

/* ---------------------------------
*    お気に入り / FavoriteList
*/

.favorite-list .cart-table td .delete a {
  margin-top: 0;
}

.wrap-user.favorite-list .cart-table td .delete a {
  background-color: #ddd;
}

.favorite-list .pager-wrap.below {
  margin: calc(30 *(100vw / 750)) auto 0;
}

.favorite-list .below>div,
.favorite-list .pager-wrap.below ul {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: calc(15 *(100vw / 750)) auto;
}

.favorite-list .below span a,
.favorite-list .below span b,
.favorite-list .pager-wrap.below ul li span,
.favorite-list .pager-wrap.below ul li a {
  width: calc(40 *(100vw/ 750));
  height: calc(40 *(100vw/ 750));
  line-height: calc(40 *(100vw/ 750));
  display: block;
  text-align: center;
  padding: 0;
}

.favorite-list .below span b,
.favorite-list .pager-wrap.below ul li span {
  border: 1px solid;
}

.favorite-list .pager-wrap.below ul li.nextBtn span,
.favorite-list .pager-wrap.below ul li.prevBtn span {
  border: none;
}

.user-unit .tab_blk {
  border-bottom: 1px solid #b7b7b7;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  margin: calc(60 *(100vw / 750)) 0 calc(20 *(100vw / 750));
}

.user-unit .tab_blk ul {
  display: flex;
  gap: calc(10 *(100vw / 750));
}

.user-unit .tab_blk ul li {
  line-height: calc(80 *(100vw / 750));
  border-top: 1px solid #b7b7b7;
  border-left: 1px solid #b7b7b7;
  border-right: 1px solid #b7b7b7;
  font-size: calc(24 *(100vw / 750));
  width: calc(340 *(100vw / 750));
  text-align: center;
}

#FavoriteStaffListArea {
  display: flex;
  flex-wrap: wrap;
  margin-top: calc(60 *(100vw / 750));
}

#FavoriteStaffListArea li img {
  width: calc(165 *(100vw / 375));
  height: calc(165 *(100vw / 375));
  /* height: 100%; */
  object-fit: contain;
}

#FavoriteStaffListArea>li {
  width: 48%;
}

#FavoriteStaffListArea>li:not(:nth-child(4n)) {
  margin-right: 4%;
  margin-bottom: calc(60 *(100vw / 750));
}

#FavoriteStaffListArea>li div {
  margin-top: calc(20 *(100vw / 750));
}

#FavoriteStaffListArea>li div .labelName {
  display: none;
}

#FavoriteStaffListArea>li div .shopName {
  color: #999999;
  font-size: calc(20 *(100vw / 750));
  line-height: calc(28 *(100vw / 750));
}

#FavoriteStaffListArea>li div .userName {
  font-size: calc(24 *(100vw / 750));
  line-height: calc(24 *(100vw / 750));
}

#FavoriteStaffListArea>li div .remove a {
  padding: 0.6em 0 0.4em;
  background-color: #000;
  color: #fff;
  margin-top: 1em;
  font-size: 12px;
  line-height: 1.5;
}

/* ---------------------------------
*    入荷お知らせメールリスト / UserProductArrivalMailList
*/

.user-product-arrival-mail-list .cart-table {
  margin: 1em 0;
  background-color: #fafafa;
}

.user-product-arrival-mail-list .cart-table .date input {
  width: 60px;
  margin-bottom: 2px;
}

.user-product-arrival-mail-list .cart-table .cancel .btn {
  float: right;
  display: inline-block;
  margin: 0 auto;
  padding: .2em .5em;
  border: 1px solid #000;
  background: #fff;
  font-size: 11px;
}


/* ---------------------------------
*    お届け先住所の追加 / UserShippingList
*/

.user-unit .shipping-list {
  padding: 0;
}

.user-unit .shipping-list ul {
  padding: 1em;
  margin: 1em 0;
  background-color: #fafafa;
}

.user-unit .shipping-list li {
  line-height: 1.5;
  padding: .3em 0;
}

.user-unit .shipping-list li.name {
  background-color: #ccc;
  padding: .3em;
}

.user-unit .shipping-list li.control a {
  display: inline-block;
  width: 47.2%;
  margin: 1%;
  text-align: center;
  padding: .5em 0;
}

/* ---------------------------------
*    定期購入一覧 / FixedPurchase
*/

.fixed-purchase-list .user-unit .fixed-id {
  padding-top: 12px;
  padding-bottom: 2px;
}

.fixed-purchase-list .content,
.fixed-purchase-detail .content {
  width: 100%;
  margin: 1em auto;
}

.fixed-purchase-list h3,
.fixed-purchase-detail h3 {
  color: #fff;
  background-color: #666;
}

.fixed-purchase-list .user-unit .user-form dt,
.fixed-purchase-detail .user-unit .user-form dt {
  background-color: #ccc;
  color: #000;
}

.fixed-purchase-list .content > ul > li {
  margin-bottom: 1.5em;
  background-color: #fafafa;
  height: 100%;
  padding-bottom: 10px;
  font-size: 13px;
}

.fixed-purchase-list .user-form {
  margin-top: 0 !important;
}

.fixed-purchase-list .content > ul > li dt,
.fixed-purchase-list .content > ul > li dd {
  padding-right: 15px;
  padding-left: 15px;
}

.fixed-purchase-list .content > ul > li dd {
  font-size: 12px;
}

.fixed-purchase-list .user-unit .fixed-id {
  text-align: center;
  padding: .5em 0;
  font-size: 15px;
}

.fixed-purchase-list .button {
  padding: 0;
}

.fixed-purchase-list .user-unit .btn {
  padding: .7em;
  width: 50%;
  margin: 1em auto;
  background: #000;
  color: #fff;
  font-size: 13px;
}

.fixed-purchase-list .pager-wrap {
  font-size: 12px;
}

/* -- 商品追加 --*/

.wrap-product-list {
  padding: 30px 20px 0;
}

.wrap-product-list .pagination {
  font-size: 12px;
}

.fixed_purchase_list,
.fixed_purchase_list ul {
  list-style: none;
}

.fixed_purchase_list {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: flex-start;
  width: calc(100vw - 20px);
  margin: 30px 0 0 -10px;
}

.fixed_purchase_list > li {
  width: calc(50vw - 30px);
  padding: 0 10px 35px;
  font-size: 13px;
  line-height: 1.8;
}

.fixed_purchase_list > li > a {
  display: block;
  text-decoration: none;
}

.fixed_purchase_list > li > a:hover .name {
  text-decoration: underline;
}

.fixed_purchase_list .thumb {
  display: block;
  margin: auto auto 10px;
}

.fixed_purchase_list .thumb img {
  width: 100%;
}

.fixed_purchase_list .glbPlist {
  text-align: center;
}

.fixed_purchase_list .pid {
  display: none;
}

.fixed_purchase_list .data {
  display: inline-block;
  padding: 2px 0 0;
  line-height: 1.5;
}

.fixed_purchase_list .fixed_purchase_price {
	padding-top: 5px;
	padding-bottom: 10px;
  font-size: 12px;
}

.fixed_purchase_list em {
  font-style:normal;
}

/* -- //商品追加 --*/

/* ----- Detail ----- */

.fixed-purchase-detail {
  font-size: 13px;
}
/*
.fixed-purchase-detail .user-unit .user-form {
  margin-bottom: 0;
}*/

.fixed-purchase-detail .user-unit .select_radio {
  border: none !important;
  background-color: #f1f1f1 !important;
  height: 35px;
  line-height: 35px;
  margin: 10px 0;
  padding: 0;
}

.fixed-purchase-detail .select_radio input[type="radio"] {
  display: none;
}

.fixed-purchase-detail .select_radio label {
  position: relative;
  display: block;
  height: 100%;
  padding: 0 20px 0 40px;
  cursor: pointer;
}

.fixed-purchase-detail .select_radio label::before {
  position: absolute;
  content: '';
  top: 50%;
  left: 10px;
  width: 18px;
  height: 18px;
  margin-top: -10px;
  background: #fff;
  border: 1px solid #ccc;
  border-radius: 100%;
}

.fixed-purchase-detail .select_radio input[type="radio"]:checked+label::after{
  position: absolute;
  content: '';
  top: 12px;
  left: 14px;
  width: 10px;
  height: 10px;
  background: #777;
  border-radius: 100%;
}

/* -- カード情報 -- */

.fixed-purchase-detail .title input[checked="checked"],
.fixed-purchase-detail .title input[type="radio"] {
  display: none;
}

.fixed-purchase-detail .card-exp select {
  width: 25%;
}

.fixed-purchase-detail .payment-list .title {
  background-color: #eee !important;
  border: none;
  font-size: 13px;
  margin: 1px 0;
}

.fixed-purchase-detail .message {
  padding-top: 8px;
  font-size: 12px;
}

.fixed-purchase-detail small.message {
  display: block;
  font-size: 11px;
}

/* -- //カード情報 -- */


/* -- 住所変更 -- */

.fixed-purchase-detail .name input[type="text"],
.fixed-purchase-detail .name-kana input[type="text"] {
  width: 48% !important;
}

.fixed-purchase-detail .name input[type="text"] + input[type="text"],
.fixed-purchase-detail .name-kana input[type="text"] + input[type="text"] {
  margin-left: 2%;
}

.fixed-purchase-detail .zip input[type="tel"] {
  width: 32% !important;
}

.fixed-purchase-detail .user-form .zip .btn-add-search {
  float: right;
  width: 30% !important;
  margin: 0;
  padding: 9px;
  font-size: 12px;
}

.fixed-purchase-detail .user-form .tel input[type="tel"] {
  width: 29.2% !important;
}

.fixed-purchase-detail .user-form .tel input[type="tel"]:nth-of-type(1) {
  margin-right: 1%;
}

.fixed-purchase-detail .user-form .tel input[type="tel"]:nth-of-type(2) {
  margin-left: 1%;
  margin-right: 1%;
}

.fixed-purchase-detail .user-form .tel input[type="tel"]:nth-of-type(3) {
  margin-left: 1%;
}

.fixed-purchase-detail .content .user-footer {
  display: flex;
  align-items: center;
  justify-content: center;
}

.fixed-purchase-detail .content .user-footer .button-next,
.fixed-purchase-detail .content .user-footer .button-prev {
  width: fit-content;
  height: auto;
  margin: 0 5px;
}

.fixed-purchase-detail .content .user-footer .btn {
  display: flex;
  align-items: center;
  justify-content: center;
  background: transparent !important;
  border-width: 0;
  padding: 15px 20px;
}

.fixed-purchase-detail .content .user-footer .button-next .btn {
  color: #fff;
}

/* -- //住所変更 -- */


/* -- 次回利用ポイント -- */
.fixed-purchase-detail .fixed_purchase_point input[type="text"] {
  margin-top: 10px;
  margin-bottom: 10px;
}

/* -- //次回利用ポイント -- */

.fixed-purchase-detail .button {
  padding: 0;
  text-align: left;
}

.fixed-purchase-detail .btn_wrap {
  display: flex;
  justify-content: center;
  padding: 10px 0;
}

.fixed-purchase-detail .btn_wrap .btn {
  margin: 0 5px !important;
}

.fixed-purchase-detail .btn:not(.btn-ddd,.btn-submit) {
  display: inline-block;
  transition: background-color .2s ease-in-out, border-color .2s ease-in-out, color .2s ease-in-out;
  width: auto;
  padding: 8px 16px;
  border: 1px solid #000;
  border-radius: 0 !important;
  background: #fff !important;
  color: #000;
  cursor: pointer;
  font-size: 12px;
}

.fixed-purchase-detail .btn.btn_add {
  position: relative;
  display: block;
  width: auto;
  max-width: 100%;
  margin: 0 10px 10px;
  color: #222;
}

.fixed-purchase-detail .btn.btn_mini {
  min-width: auto;
}

.fixed-purchase-detail .btn.btn_change,
.fixed-purchase-detail .btn.btn_submit,
.fixed-purchase-detail .btn.btn_cancel,
.fixed-purchase-detail .btn.btn_delete {
  width: auto !important;
  margin: 10px auto;
  padding: 8px 16px;
  background: #000 !important;
  font-size: 12px;
  letter-spacing: 0.01em;
  color: #fff;
}

.fixed-purchase-detail .btm_btn {
  margin-bottom: 10px;
}

.fixed-purchase-detail .btm_btn .btn {
  display: block;
  padding: 8px;
  font-size: 13px;
}

.fixed-purchase-detail .btn.btn_cancel,
.fixed-purchase-detail .btn.btn_delete {
  margin-left: 4px;
  border-color: #f0f0f0 !important;
  background: #f0f0f0 !important;
  color: #000;
}

.fixed-purchase-detail .btn.btn_change:hover,
.fixed-purchase-detail .btn.btn_submit:hover,
.fixed-purchase-detail .btn.btn_cancel:hover {
  border-color: #808080;
  background-color: #808080;
}

.fixed-purchase-detail .orderCount input[type="text"] {
  margin: 8px 0 8px 2px;
  padding: 5px 8px;
  border-radius: 0;
}

.fixed-purchase-detail .user-footer .btn-ddd {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 10px 0;
  border-width: 0;
  background: #ddd !important;
  color: #000;
}

/* -- 商品合計 -- */

.fixed-purchase-detail .fixed_purchase_item_wrap {
  margin-top: 20px;
}

.fixed-purchase-detail .fixed_purchase_item_list {
  padding: 15px 0 10px;
}

.fixed-purchase-detail .fixed_purchase_item_list .fixed_purchase_item_list__img img {
  width: 120px;
}

.fixed-purchase-detail .btm_list {
  font-size: 13px;
  text-align: right;
}

.fixed-purchase-detail .btm_list div {
  line-height: 2;
}
/* -- //商品合計 -- */

.fixed_purchase_item_list {
  display: grid;
  align-items: center;
  justify-content: start;
  width: 100%;
  margin: 0;
  padding: 10px 0 20px;
  border-bottom: 1px solid #dcdcdc;
}

.fixed_purchase_item_list .fixed_purchase_item_list__img {
  grid-column: 1/2;
  grid-row: 1/3;
}

.fixed_purchase_item_list .fixed_purchase_item_list__name {
  grid-column: 2/2;
  grid-row: 1/2;
  padding: 0 0 10px;
  white-space: inherit;
}

.fixed_purchase_item_list .fixed_purchase_item_list__change {
  grid-column: 2/2;
  grid-row: 2/2;
  white-space: inherit;
}

.fixed_purchase_item_list .fixed_purchase_item_list__submit {
  grid-column: 2/2;
  grid-row: 3/3;
}

.fixed_purchase_item_list .img_thumb {
  width: 100%;
  padding-right: 10px;
}

.fixed_purchase_item_list input[type="text"] {
  width: 100%;
  border: 1px solid #ccc;
  border-radius: 4px;
  padding: 10px;
}

/* ----- 解約 ----- */

.user-unit .fixed_purchase_cancel {
  margin-bottom: 0;
}

.fixed_purchase_cancel_complete {
  padding-right: 15px;
  padding-left: 15px;
}

.fixed_purchase_cancel_complete .msg {
  font-size: 12px;
}

/* ----- //解約 ----- */



/* ---------------------------------
*    登録クレジット / UserCreditCard
*/

.user-unit .credit-card-list-wrap {
  /*padding: 0 1em;*/
}

.user-unit .credit-card-list {
  /*padding: 1em;
	margin: 1em 0;
	background-color: #eee;*/
  /*margin: 1em auto;*/
}

.user-unit .credit-card-list dt {
  /*float: left;
	clear: left;
	width: 35%;
	padding: .5em;*/
  background-color: #f1f1f1;
  height: 35px;
  line-height: 35px;
  padding: 0 10px;
}

.user-unit .credit-card-list dd {
  /*margin-left: 40%;
	padding: .5em;*/
  margin: 10px 0;
}

.user-unit .credit-card-list .button {
  padding: 0;
  margin-bottom: 0;
}

.user-unit .credit-expire li {
  float: left;
}

.user-unit .credit-expire li.form {
  width: 20%;
}

.user-unit .credit-expire li.ttx {
  margin: 0 10px;
  line-height: 37px;
}

/* ---------------------------------
*    ポイント履歴一覧 / UserPointHistoryList
*/

.point-history-list .content {
  width: 95%;
  margin: 1em auto;
}

.point-history-list h3 {
  color: #fff;
  background-color: #000;
}

.point-history-list .point-unit .point-form dt {
  background-color: #ccc;
  color: #000;
}

.point-history-list .content>ul>li {
  margin-bottom: 1.5em;
  background-color: #fafafa;
  height: 100%;
}

.point-unit .point-get {
  text-align: center;
  padding: .5em 0;
  font-size: 18px;
  background-color: #FFB6C1;
}

.point-unit .point-use {
  text-align: center;
  padding: .5em 0;
  font-size: 18px;
  background-color: #87CEFA;
}

.point-unit .total tr th {
  text-align: left;
  padding: .1em 0;
}

.point-unit .total tr td {
  text-align: right;
  padding: .1em 0;
}

.point-history-list .button {
  padding: 0;
  margin: 0;
}

.point-history-list .point-unit .btn {
  padding: .7em;
  width: 50%;
  margin: 1em auto;
}

/* ---------------------------------
*    通知メール登録関連
*/
.user-product-arrival-mail-regist {
  /*background-color : #f3f3f3;*/
  font-size: 10px;
  line-height: 1.75;
  margin-top: 10px;
}

.user-product-arrival-mail-regist .user-form .mail-arrival input {
  /*width: initial;*/
}

.user-product-arrival-mail-regist dt {
  background-color: #f1f1f1;
  height: 35px;
  line-height: 35px;
  padding: 0 10px;
  margin: 10px 0;
}

.user-product-arrival-mail-regist .order-footer {
  margin-top: 20px;
}

.user-product-arrival-mail-regist .order-footer .button-corre {
  width: 80%;
  height: 40px;
  background: #ddd;
  text-align: center;
  font-size: 13px;
  letter-spacing: 0.05em;
  line-height: 1;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0 auto;
}

.user-product-arrival-mail-regist .order-footer .button-corre .btn {
  width: 100%;
  height: 100%;
  display: block;
  line-height: 40px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  background: #FFF;
  border: 1px solid #000;
  color: #000;
  padding: 0;
}

/* ---------------------------------
*    お問い合わせ
*/
.inquiry-input textarea {
  width: 100%;
  padding: 10px;
  -webkit-appearance: none;
  border: 1px solid #CCCCCC;
}

.privacy-consent-text {
	margin: 15px 0;
	font-size: 13px;
}

.privacy-consent-text a {
	text-decoration: underline;
}


/* ---------------------------------
*    お問い合わせ
*/
/*.mailmagazine-regist-input .user-unit h2, .point-unit h2 {
    margin-bottom: 10px;
}*/
.mailmagazine-regist-input table,
.mailmagazine-cancel-input table {
  border-collapse: separate;
  border-spacing: 0 10px;
  display: table;
  width: 100%;
}

.mailmagazine-regist-input input[type="checkbox"],
.mailmagazine-cancel-input input[type="checkbox"] {
  border: 1px solid #cccccc;
  -webkit-appearance: none;
  position: relative;
  margin: -2px 8px 0 0;
  width: 20px;
  height: 20px;
  border-radius: 0;
}

.mailmagazine-regist-input input[type="checkbox"]:checked:before,
.mailmagazine-cancel-input input[type="checkbox"]:checked:before {
  position: absolute;
  left: 0px;
  top: 14px;
  display: block;
  content: "";
  width: 10px;
  height: 2.5px;
  background: #777777;
  -webkit-transform: rotate(45deg);
  -webkit-transform-origin: right center;
}

.mailmagazine-regist-input input[type="checkbox"]:checked:after,
.mailmagazine-cancel-input input[type="checkbox"]:checked:after {
  display: block;
  position: absolute;
  left: 9px;
  top: 12px;
  content: "";
  width: 12px;
  height: 2.5px;
  background: #777777;
  -webkit-transform: rotate(-53deg);
  -webkit-transform-origin: left center;
}

/* ----- プライバシーポリシー ----- */
.mailmagazine-regist-input .msg {
  margin-bottom: 40px;
	padding: 15px;
	line-height: 1.8;
	background: #f6f6f6;
}
.mailmagazine-regist-input .msg a {
	text-decoration: underline;
}

.mailmagazine-regist-input .msg a:hover {
	text-decoration: none;
}

.mailmagazine-regist-input .dvMailMagazineCheck {
	margin-top: 25px;
	text-align:center;
}
.mailmagazine-regist-input .dvMailMagazineCheck,
.mailmagazine-regist-input .dvMailMagazineCheck p,
.mailmagazine-regist-input .dvMailMagazineCheck label {
	color: inherit;
	font-size: 12px;
}
.mailmagazine-regist-input .dvMailMagazineCheck p {
	margin: 15px 0;
}

.mailmagazine-regist-input .dvMailMagazineCheck p:last-child {
  margin-bottom: 0;
}

.mailmagazine-regist-input .dvMailMagazineCheck input {
  vertical-align: -1px;
	cursor: pointer;
}

.mailmagazine-regist-input .dvMailMagazineCheck a {
	text-decoration: underline;
}

.mailmagazine-regist-input .dvMailMagazineCheck a:hover {
	text-decoration: none;
}

.mailmagazine-regist-input .error_inline {
  font-size: 11px;
}

/*---------------------------------
会員統合後マイページCSS
---------------------------------*/
.user-unit .user_name {
  font-size: calc(16 *(100vw / 390));
  font-weight: bold;
  text-align: center;
  letter-spacing: .05em;
  margin: calc(20 *(100vw / 390)) auto;
}
/* ▼ユーザー名▼ */
.user-unit .userNameArea{
  background-color: transparent;
  font-size: calc(16 *(100vw / 390));
  margin-top: calc(26 *(100vw / 390));
  padding: 0;
  text-align: center;
}
/* ▲ユーザー名▲ */
/* ▼カードUI▼ */
.user-unit .card_wrap{
  width: calc(350 *(100vw / 390));
  min-height: 0;
  background-color: #333;
  border-radius: calc(5 *(100vw / 390));
  box-shadow: 0 0 calc(10 *(100vw / 390)) #00000016;
  margin: calc(18 *(100vw / 390)) auto 0;
  position: relative;
}
.user-unit .card_wrap.no_nextrank{
  color: #fff;
}
.user-unit .card_title_wrap{
  text-align: center;
  padding: calc(22 *(100vw / 390)) 0;
}
.user-unit .card_title_rank{
  font-family: 'futura-pt', sans-serif;
  font-weight: 500;/*Medium*/
  font-style: normal;
  font-size: calc(36 *(100vw / 390));
  letter-spacing:0;
  line-height: 1;
	color: #fff;
}
.user-unit .card_title_require{
  font-size: calc(15 *(100vw / 390)) !important;
  margin-top: calc(9 *(100vw / 390)) !important;
  display: block;
}
.user-unit .card_next_rank{
  font-family: 'futura-pt', sans-serif;
  font-weight: 400;/*Book*/
  font-style: normal;
  font-size: calc(18 *(100vw / 390));
  margin-right: calc(-4 *(100vw / 390));
}
.user-unit .card_require_buy{
  font-family: 'futura-pt', sans-serif;
  font-weight: 600;/*Demi*/
  font-style: normal;
  font-size: calc(20 *(100vw / 390));
}
.user-unit .card_bronze{
  background-color: #E0D4C1;
}
.user-unit .card_bronze .card_title_rank{
  color: #9B7334;
}
.user-unit .card_silver{
  background-color: #DFE4E8;
}
.user-unit .card_silver .card_title_rank{
  color: #8A95A2;
}
.user-unit .card_gold{
  background-color: #E2D9AC;
}
.user-unit .card_gold .card_title_rank{
  color: #938018;
}

.user-unit .card_platinum{
  background-color: #D6E6EB;
}
.user-unit .card_platinum .card_title_rank{
  color: #76A5B2;
}
/*
.user-unit .card_diamond{
  background-color: #333333;
}
.user-unit .card_diamond .card_title_rank{
  color: #FFFFFF;
}
*/
.user-unit .card_barcode_wrap{
  border-radius: 0 0 calc(5 *(100vw / 390)) calc(5 *(100vw / 390));
  width: 100%;
  background: #fff;
  display: flex;
  justify-content: center;
}
.user-unit .card_barcode_wrap #Barcode{
  background-color: #fff;
  border-radius: 0 0 calc(5 *(100vw / 390)) calc(5 *(100vw / 390));
}
.user-unit .card_barcode_wrap #Barcode div:not(:last-of-type){
    margin-top: calc(20 *(100vw / 390));
    max-width: 25px;
}
.user-unit .card_barcode_wrap #Barcode div:last-of-type{
  font-family: 'futura-pt', sans-serif;
  font-size: calc(12 *(100vw / 390))!important;
  letter-spacing: calc(2 *(100vw / 390));
  line-height: 1.33;
  padding-top: calc(6 *(100vw / 390));
  padding-bottom: calc(20 *(100vw / 390))!important;
  border-radius: 0 0 calc(5 *(100vw / 390)) calc(5 *(100vw / 390));
}
/* ▲カードUI▲ */
/* ▼利用可能ポイント▼ */
.user-unit .useable_point_wrap{
  width: calc(350 *(100vw / 390));
  border-bottom: 1px solid #E2E2E2;
  display: flex;
  justify-content: space-between;
  margin: calc(30 *(100vw / 390)) auto 0;
  padding-bottom: calc(15 *(100vw / 390));
}
.user-unit .useable_point_wrap .useable_point_text{
  display: block;
  font-size: calc(16 *(100vw / 390));
  font-weight: bold;
  line-height: 1;
  margin-bottom: calc(7 *(100vw / 390));
}
.user-unit .useable_point_wrap .user_rank{
  color: #333;
  font-size: calc(12 *(100vw / 390));
  font-weight: bold;
  display: inline-block;
}
.user-unit .useable_point_wrap .user_rank.bronze{
  color: #9B7334;
}
.user-unit .useable_point_wrap .user_rank.silver{
  color: #8A95A2;
}
.user-unit .useable_point_wrap .user_rank.gold{
  color: #938018;
}

.user-unit .useable_point_wrap .user_rank.platinum{
  color: #76A5B2;
}

.user-unit .useable_point_wrap .user_rank.diamond {
  color: #333;
}
.user-unit .useable_point_wrap .reduction{
  color: #333;
  display: inline-block;
  font-size: calc(12 *(100vw / 390));
  margin-left: calc(5 *(100vw / 390));
}
.user-unit .useable_point_wrap .useable_point_num{
  font-family: 'futura-pt', sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: calc(32 *(100vw / 390)) !important;
  line-height: 1;
  margin-top: calc(-3 *(100vw / 390));
  margin-right: calc(3 *(100vw / 390));
}
/* ▲利用可能ポイント▲ */
/* ▼月末失効予定ポイント▼ */
.user-unit .expire_point_wrap{
  width: calc(350 *(100vw / 390));
  display: flex;
  justify-content: space-between;
  margin: 0 auto calc(30 *(100vw / 390));
  padding-top: calc(5 *(100vw / 390));
  align-items: center;
}
.user-unit .expire_point_wrap .expire_point_text{
  font-size: calc(14 *(100vw / 390));
  font-weight: bold;
}
.user-unit .expire_point_wrap .expiry{
  display: block;
  font-size: calc(10 *(100vw / 390));
  margin-top: calc(6 *(100vw / 390));
  text-decoration: underline;
}
.user-unit .expire_point_wrap .expire_point_num{
  font-family: 'futura-pt', sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: calc(32 *(100vw / 390)) !important;
  margin-top: calc(-3 *(100vw / 390));
  margin-right: calc(3 *(100vw / 390));
}
/* ▲月末失効予定ポイント▲ */
/* ▼ダイアモンド時次ランク非表示▼ */
.user-unit .no_nextrank .card_title_require{
  display: none;
}
/* ▲ダイアモンド時次ランク非表示▲ */
.user-unit .acconut_error{
  width: calc(350 *(100vw / 390));
  font-size: calc(11 *(100vw / 390));
  line-height: 1.75;
  margin: calc(40 *(100vw / 750)) auto 0;
  color: #ac0505;
}



@media screen and (max-width: 375px) {

	.card_barcode_wrap {
		display: block !important;

	}

	.user-unit .card_barcode_wrap #Barcode {
		position: relative;
		left: 50%;
		opacity: 0;
		transform: scale(0.8);
	}


	}

/* ▼バーコード調整▼ */
@media screen and (max-width: 340px) {
	.user-unit .card_barcode_wrap #Barcode {
		transform: scale(0.75);
	}
}

@media screen and (max-width: 310px) {
	.user-unit .card_barcode_wrap #Barcode {
		transform: scale(0.7);
	}
}

@media screen and (max-width: 275px) {
	.user-unit .card_barcode_wrap #Barcode {
		transform: scale(0.6);
	}
}

@media screen and (max-width: 240px) {
	.user-unit .card_barcode_wrap #Barcode {
		transform: scale(0.5);
	}
}
/* ▲バーコード調整▲ */


/* 購入履歴一覧・詳細 レビューエリア調整 */
.order-history-list .review .product-review__write-area {
    display: none;
}

.order-history-list .review dd input {
    width: 100%;
    padding: 5px;
    height: 30px;
    font-size: 13px;
    font-family: inherit;
}

.order-history-list .review dd select {
    height: 30px;
    padding: 0 5px;
}

.order-history-list .review dd textarea {
    padding: 5px;
    font-size: 13px;
    font-family: inherit;
}

.order-history-list .review dd {
    margin-bottom: 10px;
}

.order-history-list .review .sub-txt {
    font-size: 11px;
}
.order-history-list .review .review-list {
    overflow-wrap: anywhere;
}


.order-history-detail .review .product-review__write-button {
    border: 1px solid;
    width: 100%;
    display: block;
    padding: 10px;
    text-align: center;
    margin: 10px auto;
}

.order-history-detail .review .product-review__write-annotaion {
    font-size: 12px;
}
