@charset "UTF-8";
*:before,
*:after {
  box-sizing: border-box;
}

/* ----全体設定---- */

@font-face {
  font-family: "Yu Gothic M";
  src: local("Yu Gothic Medium");
}
@font-face {
  font-family: "Yu Gothic M";
  src: local("Yu Gothic Bold");
  font-weight: bold;
}
body {
  margin: 0;
  font-family: -apple-system, BlinkMacSystemFont, "游ゴシック体", YuGothic, "Yu Gothic M", "游ゴシック Medium", "Yu Gothic Medium", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN W3", HiraKakuProN-W3, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "Helvetica Neue", HelveticaNeue, Helvetica, Arial, "Segoe UI", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-size: 14px;
  line-height: 1.5;
  color: #444;
}

.block-switch-banner {display:none!important;}

/* ----ヘッドライン---- */

h1,
.h1 {
  margin: 40px 0 30px 0;
  font-size: 24px;
  font-weight: bold;
}
h2 {
  margin: 20px 0;
  font-size: 22px;
  font-weight: normal;
}
h2.after-border {
  text-align: center;
  line-height: 140%;
  padding-bottom: 35px;
  margin-bottom: 50px;
  position: relative;
  letter-spacing: 0.1em;
}
h2.after-border:after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 2em;
  margin-left: -1em;
  height: 2px;
  background-color: #444;
}
.block-recent-item--header {
  font-size: 22px;
  text-align: center;
  border-top: none;
  padding: inherit;
  text-align: center;
  line-height: 140%;
  padding-bottom: 35px;
  margin: 0 0 50px 0;
  position: relative;
  letter-spacing: 0.1em;
}
.block-recent-item--header:after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 2em;
  margin-left: -1em;
  height: 2px;
  background-color: #444;
}
h2 span {
  display: block;
  font-size: 13px;
  line-height: 110%;
  letter-spacing: 0;
}
h3 {
  margin: 10px 0;
  font-size: 18px;
  font-weight: normal;
}

/* ----リンク---- */

a {
  text-decoration: underline;
  color: #444;
}
a:hover,
a:focus {
  text-decoration: none;
}
a:focus {
  /*
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
*/
}
a .img-center img:hover {
  /*opacity: 0.65;
  filter: alpha(opacity=65);*/
  transform: scale(1.02);
  /*画像の拡大率*/
  transition-duration: 0.3s;
  /*変化に掛かる時間*/
}

/* ----タグ---- */

img {
  max-width: 100%;
}
hr {
  border: 0;
  border-bottom: 1px dotted #ccc;
}
*:focus {
  outline: none;
}
.price {
  color: #444;
}

/* ----スクロールバー---- */

body ::-webkit-scrollbar {
  height: 4px!important;
}
body ::-webkit-scrollbar-track {
  background: #fff;
  border: none;
  border-radius: 10px;
  box-shadow: inset 0 0 2px #777;
}
body ::-webkit-scrollbar-thumb {
  background: #ddd;
  border-radius: 10px;
  box-shadow: none;
}

/* ----padding margin---- */

.mt0 {
  margin-top: 0 !important;
}
.mb0 {
  margin-bottom: 0 !important;
}
.pt0 {
  padding-top: 0 !important;
}
.pb0 {
  padding-bottom: 0 !important;
}

/* ----input---- */


.form-group.block-order-gift-confirmation--mailnews.last input[type="radio"] + input + label,
.form-group.block-order-gift-confirmation--mailnews.last input[type="checkbox"] + input + label {
  padding-left: 30px;
  position: relative;
  margin-right: 30px;
  -webkit-transition: all .4s ease;
  -moz-transition: all .4s ease;
  transition: all .4s ease
}
.form-group.block-order-gift-confirmation--mailnews.last input[type="radio"] + input + label::before,
.form-group.block-order-gift-confirmation--mailnews.last input[type="checkbox"] + input + label::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 18px;
  height: 18px;
  border: 1px solid #999;
}
.form-group.block-order-gift-confirmation--mailnews.last input[type="radio"] + input + label::before {
  border-radius: 50%;
}
.form-group.block-order-gift-confirmation--mailnews.last input[type="radio"] + input + label::after {
  content: "";
  display: block;
  position: absolute;
  top: 4px;
  left: 4px;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  opacity: 0;
  -webkit-transition: all .4s ease;
  -moz-transition: all .4s ease;
  transition: all .4s ease
}
.form-group.block-order-gift-confirmation--mailnews.last input[type="checkbox"] + input + label::after {
  content: "";
  display: block;
  position: absolute;
  top: 2px;
  left: 2px;
  width: 18px;
  height: 8px;
  opacity: 0;
  -webkit-transition: all .4s ease;
  -moz-transition: all .4s ease;
  transition: all .4s ease;
  transform: rotate(-40deg);
  -webkit-transform: rotate(-40deg);
  -moz-transform: rotate(-40deg);
}
.form-group.block-order-gift-confirmation--mailnews.last input[type="radio"]:checked + input + label {}
.form-group.block-order-gift-confirmation--mailnews.last input[type="radio"]:checked + input + label::after,
.form-group.block-order-gift-confirmation--mailnews.last input[type="checkbox"]:checked + input + label::after {
  opacity: 1;
}

/* ----入力フォーム共通---- */

input,
button,
select,
textarea {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}
input[type="text"],
input[type="tel"],
input[type="email"],
input[type="search"],
input[type="password"],
input[type="url"],
input[type="number"] {
  padding: 5px 10px;
  border: 1px solid #ccc;
  background-color: #fff;
  line-height: 40px;
  height: 40px;
}
select {
  border: 1px solid #ccc;
  background-color: #fff;
  line-height: 40px;
  height: 40px;
  border-radius: 0;
  -moz-border-radius: 0;
  -webkit-border-radius: 0;
}
textarea {
  padding: 20px;
  border: 1px solid #ccc;
  background-color: #fff;
}
input[type="text"]:hover,
input[type="tel"]:hover,
input[type="email"]:hover,
input[type="search"]:hover,
input[type="password"]:hover,
input[type="url"]:hover,
input[type="number"]:hover,
select:hover,
textarea:hover {
  border: 1px solid #666;
}
input[type="radio"] {
  width: 18px;
  height: 18px;
  vertical-align: middle;
  margin-right: 5px;
}
input[type="checkbox"] {
  width: 18px;
  height: 18px;
  vertical-align: middle;
  margin-right: 5px;
}
label.radio,
label.checkbox,
input[type="radio"],
input[type="radio"] + label,
input[type="checkbox"],
input[type="checkbox"] + label,
select {
  cursor: pointer;
}
input[type="text"][disabled] {
  background: #dcdcdc;
  cursor: not-allowed;
}
input[type="radio"][disabled] + label,
input[type="checkbox"][disabled] + label {
  opacity: 0.5;
  cursor: not-allowed;
  /* 禁止カーソル */
}

/* ----ボタン---- */

.btn {
  display: inline-block;
  margin: 0;
  text-align: center;
  border: none;
  vertical-align: middle;
  cursor: pointer;
  white-space: nowrap;
  padding: 10px 20px;
  text-decoration: none;
  -webkit-transition: all .4s ease;
  -moz-transition: all .4s ease;
  transition: all .4s ease
}
.btn a {
  text-decoration: none;
}
.btn:hover {
  opacity: 0.7;
}
.btn:hover,
.btn:focus {
  text-decoration: none;
}
.btn:active,
.btn.active {
  outline: 0;
  /*
  box-shadow: inset 2px 2px 2px rgba(0, 0, 0, 0.125);
*/
}
.btn.disabled,
.btn[disabled],
.btn.disabled:hover,
.btn[disabled]:hover,
.btn.disabled:active,
.btn[disabled]:active {
  cursor: not-allowed;
  opacity: 0.65;
  filter: alpha(opacity=65);
  box-shadow: none !important;
}
.hidden-btn {
  position: absolute;
  left: -9999px;
  width: 1px;
  height: 1px;
}

/* ----画面上部メッセージ---- */

.alert {
  margin-top: 5px;
  padding: 10px 10px 10px 30px;
  margin-bottom: 5px;
  position: relative;
  border: 1px solid #ebccd1;
  color: #a94442;
  background-color: #f2dede;
}
.alert:before {
  font-family: FontAwesome;
  content: "\f071";
  position: absolute;
  left: 10px;
}
.success {
  margin-top: 5px;
  padding: 10px 10px 10px 30px;
  margin-bottom: 5px;
  position: relative;
  border: 1px solid #bce8f1;
  color: #31708f;
  background-color: #d9edf7;
}
.success:before {
  font-family: FontAwesome;
  content: "\f05a";
  position: absolute;
  left: 10px;
}

/* ----入力フォームタイトル---- */

.legend {
  margin: 40px 0 20px;
  padding: 0 0 5px 2px;
  font-size: 18px;
  font-weight: bold;
  border-bottom: #c8c8c8 1px solid;
}

/* ----縦型入力フォーム---- */

.fieldset-vertical {
  margin-top: 10px;
  margin-bottom: 10px;
}
.fieldset-vertical .form-group {
  margin: 30px 0 10px 0;
}
.fieldset-vertical .form-label,
.fieldset-vertical .constraint {
  margin: 0 0 5px 0;
}
.fieldset-vertical .form-label {
  padding: 10px;
  margin-right: 10px;
  text-align: left;
  background: #f9f9f9;
  vertical-align: middle;
}
.fieldset-vertical .form-label label {
  font-weight: bold;
}
.fieldset-vertical .form-control {
  clear: both;
}

/* ----横型入力フォーム---- */

.fieldset {
  margin-top: 10px;
  margin-bottom: 30px;
  width: 100%;
}
.fieldset .form-group {
  display: table;
  width: 100%;
  border-top: #e5e5e5 1px solid;
}
.fieldset .form-group.last {
  border-bottom: #e5e5e5 1px solid;
}
.fieldset .form-label,
.fieldset .constraint,
.fieldset .form-control {
  display: table-cell;
}
.fieldset .form-label {
  padding: 43px 10px 35px 15px;
  text-align: left;
  background: #f9f9f9;
}
.form-group.block-login--pwd .form-label {
  padding: 45px 10px 35px 15px;
  text-align: left;
  background: #f9f9f9;
}
.fieldset .form-label label {
  font-weight: normal;
}
.fieldset .constraint {
  width: 65px;
  padding: 5px;
  background: #f9f9f9;
  vertical-align: middle;
}
.fieldset .form-control {
  padding: 35px 0 35px 20px;
  vertical-align: middle;
}

/* ----入力支援---- */

.form-error {
  display: block;
  color: #a94442;
}
.required:after {
  display: inline-block;
  padding: .2em .6em;
  font-size: 11px;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: .25em;
  color: #fff;
  background-color: #d9534f;
  content: "必須";
}
.help-block {
  display: block;
  font-size: 11px;
  margin-top: 5px;
  color: #737373;
}
.count-msg-another {
  display: block;
  font-size: 11px;
  margin-top: 5px;
  color: #555;
}
.count-msg {
  display: block;
  font-size: 11px;
  margin-top: 5px;
  color: #f66;
}

/* ----入力フォームボタン---- */

.action-buttons {
  margin-top: 40px;
  width: 100%;
  text-align: center;
  display: block;
}
.action {
  display: inline;
  margin-left: 10px;
  margin-right: 10px;
}
.action .btn {
  margin-top: 10px;
  padding: 20px;
  font-size: 16px;
  border-bottom-width: 2px;
  min-width: 250px;
}

/* ----ラジオボタン、チェックボックス---- */

.radio {
  margin-right: 10px;
}
.checkbox {
  margin-right: 10px;
}

/* ----EFO---- */

.efo-icon {
  border: none;
  vertical-align: middle;
}
input[type="text"].efo-error,
input[type="tel"].efo-error,
input[type="email"].efo-error,
input[type="search"].efo-error,
input[type="password"].efo-error,
input[type="url"].efo-error,
input[type="number"].efo-error,
select.efo-error,
textarea.efo-error {
  background-color: #f2dede;
}
input[type="text"].efo-valid,
input[type="tel"].efo-valid,
input[type="email"].efo-valid,
input[type="search"].efo-valid,
input[type="password"].efo-valid,
input[type="url"].efo-valid,
input[type="number"].efo-valid,
select.efo-valid,
textarea.efo-valid {
  background-color: #e9f2d7;
}

/* ----トピック---- */

.block-top-topic--header {
  font-size: 28px;
  text-align: center;
  line-height: 1.2;
  border-top: #444 2px solid;
  padding: 19px 0 30px;
}
.block-top-topic--header span {
  display: block;
  font-size: 11px;
}
.block-top-topic--body {
  margin-bottom: 60px;
}
.block-top-topic--items li {
  border-bottom: 1px solid #ddd;
  padding: 10px 0;
}
.block-top-topic--items dl,
.block-top-topic--items dt,
.block-top-topic--items dd {
  display: inline;
}
.block-top-topic--items dt {
  margin-right: 10px;
}
.block-top-topic--next-page {
  text-align: right;
  margin-top: 20px;
}
.block-top-topic--next-page a {
  color: #6fb4c3;
  text-decoration: underline;
  font-size: 14px;
}
.block-top-topic--items img {
  vertical-align: middle;
}
.block-topic-page--article-icon {
  vertical-align: middle;
}
.block-topic-page--article figure {
  font-size: 0;
}
.block-topic-page--article figure img {
  padding-bottom: 10px;
}
.block-topic-details--items dl,
.block-topic-details--items dt,
.block-topic-details--items dd {
  display: inline;
}
.block-topic-details--items dt {
  margin-right: 10px;
}
.block-topic-details--items img {
  vertical-align: middle;
}
.block-topic-details--items li {
  border-bottom: #ddd 1px solid;
  padding: 10px 0;
}

/* ----最近見た商品---- */

.block-recent-item {
  width: 900px;
}
.block-recent-item--header {
  font-size: 28px;
  text-align: center;
  border-top: #444 2px solid;
  padding: 19px 0 30px;
}
.block-recent-item--items {
  width: 1180px;
}
.block-recent-item--keep-history {
  text-align: right;
  margin-top: 20px;
}
.block-recent-item--keep-history a {
  color: #6fb4c3;
  text-decoration: underline;
  font-size: 14px;
}

/* ----最近チェックした商品(ブランド)---- */

.block-brand-recent-item {
  width: 900px;
}
.block-brand-recent-item--header {
  font-size: 28px;
  text-align: center;
  border-top: #444 2px solid;
  padding: 19px 0 30px;
}
.block-brand-recent-item--items {
  width: 900px;
}
.block-brand-recent-item--keep-history {
  text-align: right;
  margin-top: 20px;
}
.block-brand-recent-item--keep-history a {
  color: #6fb4c3;
  text-decoration: underline;
  font-size: 14px;
}

/* ----最近チェックした商品(カート)---- */

.block-cart-recent-item {
  width: 1200px;
}
.block-cart-recent-item--header {
  font-size: 28px;
  text-align: center;
  border-top: #444 2px solid;
  padding: 19px 0 30px;
}
.block-cart-recent-item--items {
  width: 1200px;
}
.block-cart-recent-item--keep-history {
  text-align: right;
  margin-top: 20px;
}
.block-cart-recent-item--keep-history a {
  color: #6fb4c3;
  text-decoration: underline;
  font-size: 14px;
}

/* ----検索サジェスト---- */

.block-search-suggest {
  position: absolute;
  display: block;
  z-index: 1000;
  text-align: left;
  padding: 5px;
  width: 370px;
  background-color: #fff;
  border: 1px solid #000;
}
.block-search-suggest--keyword {
  padding: 2px;
}
.block-search-suggest--keyword-entry {
  display: block;
  text-decoration: none;
}
.block-search-suggest--goods {
  min-height: 60px;
  padding: 2px;
  display: block;
  clear: both;
}
.block-search-suggest--goods-img {
  display: block;
  float: left;
  width: 60px;
  margin-right: 10px;
}
.block-search-suggest--goods-img img {
  width: 60px;
  height: 60px;
}
.block-search-suggest--goods-name,
.block-search-suggest--goods-comment,
.block-search-suggest--goods-price-items {
  width: 100%;
}
.block-search-suggest--keyword:hover,
.block-search-suggest--goods:hover {
  background-color: #dedede;
  cursor: pointer;
}

/* ----パンくず---- */

.block-topic-path {
  padding: 12px 0;
}
.block-topic-path--list li {
  display: inline-block;
  padding-right: 5px;
}
.block-topic-path--list a {
  text-decoration: underline;
}

/* ----左メニューブロック共通---- */

.pane-left-menu h2 {
  font-size: 16px;
  border-top: #444 1px solid;
  padding: 16px 0;
  font-weight: bold;
  margin-bottom: 0;
}
.pane-left-menu h3 {
  font-size: 14px;
  padding: 8px 0;
  font-weight: bold;
  border-bottom: #eee 1px solid;
  margin-bottom: 5px;
  cursor: pointer;
}

/* ----キーワード検索ブロック---- */

.block-search-box--search-detail a {
  color: #6fb4c3;
  text-decoration: underline;
}
.block-search-box--form {
  background-color: #eee;
  display: flex;
}
input.block-search-box--keyword:hover,
input.block-search-box--keyword {
  border: none;
  background-color: transparent;
  flex-grow: 1;
}
button.block-search-box--search-submit {
  border: none;
  background-color: transparent;
  width: 33px;
}
.block-search-box--search-detail {
  margin: 5px 0;
}

/* ----Ajaxカートブロック---- */

.block-jscart--items {
  border-bottom: #eee 1px solid;
  margin-bottom: 5px;
}
.block-jscart--items dd {
  text-align: right;
}
.block-jscart--delete {
  text-align: right;
  margin-bottom: 5px;
}
.block-jscart--cart-to-order {
  text-align: center;
  margin-top: 15px;
}

/* ----エラー画面---- */

.block-validation-alert {
  text-align: center;
  margin: 100px auto;
  padding: 30px;
  width: 500px;
  border: 1px solid #808080;
}
.block-validation-alert--title {
  font-weight: bold;
  margin-bottom: 10px;
}
.block-validation-alert--link {
  display: block;
  margin-top: 10px;
}
.block-common-alert {
  margin-top: 40px;
  margin-bottom: 10px;
  padding: 20px;
  border: 1px solid #ebccd1;
  color: #a94442;
  background-color: #f2dede;
}
.block-common-alert--link {
  display: block;
  margin-top: 10px;
}
.block-common-alert-list {
  margin: 0 auto 20px;
  padding: 20px;
  border: 1px solid #999;
  background-color: #fff;
  width: 800px;
}
.block-common-alert-list--items {
  color: #a94442;
}

/* ----郵便番号サジェスト---- */

.block-ziplist--ziplist-frame {
  z-index: 2000;
}

/* ----サイクル情報編集---- */

.block-regular-cycle--cycle-sub-type {
  margin-bottom: 10px;
  padding: 10px;
  background: #f8f8f8;
  border: 1px solid #ccc;
}
.block-regular-cycle--deliv_date {
  width: 100%;
  margin: 20px 0;
}
.block-regular-cycle--deliv_date--prev-expected-dt {
  border-top: 1px dotted #ccc;
  border-left: 1px dotted #ccc;
  border-right: 1px dotted #ccc;
}
.block-regular-cycle--deliv_date--next-expected-dt {
  border: 1px dotted #ccc;
}
.block-regular-cycle--deliv_date--prev-expected-dt-title,
.block-regular-cycle--deliv_date--next-expected-dt-title {
  padding: 8px;
  text-align: center;
  font-weight: bold;
  vertical-align: top;
  background-color: #f8f8f8;
  border-bottom: 1px dotted #ccc;
}
.block-regular-cycle--deliv_date--prev-expected-dt-date,
.block-regular-cycle--deliv_date--next-expected-dt-date {
  padding: 8px;
  text-align: center;
  font-weight: bold;
  vertical-align: top;
}

/* ----会員規約画面---- */

.block-member-terms {
  width: 1000px;
  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-confirmation--message {
  margin-bottom: 40px;
}

/* ----会員登録完了画面---- */

.block-member-registration-completed > p {
  margin: 80px 0;
  text-align: center;
  line-height: 200%;
}

/* ----会員情報変更画面---- */

.block-member-info--customer-name,
.block-member-info-confirmation--customer-name {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 30px;
}
.block-member-info--message {
  margin-bottom: 30px;
}

/* ----アドレス帳の新規登録・変更---- */

.block-shipping-address-registration--message {
  margin-bottom: 30px;
}
.block-shipping-address--customer-name,
.block-shipping-address-confirmation--customer-name {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 30px;
}
.block-shipping-address-confirmation--message {
  margin-bottom: 40px;
}

/* ----購入履歴一覧---- */

.block-purchase-history--customer-name {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 30px;
}
.block-purchase-history--status a {
  display: block;
  text-decoration: none;
  -webkit-transition: all .4s ease;
  -moz-transition: all .4s ease;
  transition: all .4s ease;
}
.block-purchase-history--status a:hover {
  opacity: 0.8;
}

/* ----購入履歴詳細---- */

.block-purchase-history-detail--customer-name {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 30px;
}
.block-purchase-history-detail--shipping-info-items th {
  width: 10em;
}
.block-purchase-history-detail--shipment-item .block-purchase-history-detail--invoice {
  margin: 13px 0;
}

/* ----会員IDの変更---- */

.block-member-id--customer-name {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 30px;
}
.block-member-id--completed-message {
  margin: 80px 0;
  text-align: center;
  line-height: 200%;
}

/* ----パスワードの変更---- */

.block-member-password--customer-name {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 30px;
}
.block-member-password--update-completed-message {
  margin: 80px 0;
  text-align: center;
  line-height: 200%;
}

/* ----お気に入り---- */

.block-favorite--customer-name {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 30px;
}

/* ----お問い合わせ履歴一覧---- */

.block-inquiry-history--customer-name {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 30px;
}

/* ----お問い合わせ履歴詳細---- */

.block-inquiry-history-detail--customer-name {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 30px;
}
.block-inquiry-history-detail--subject {
  font-size: 20px;
}
.block-inquiry-history-detail--title {
  background-color: #f5f5f5;
  padding: 20px 25px;
}
.block-inquiry-history-detail--title h2 {
  margin-top: 0;
  font-weight: bold;
  font-size: 18px;
}
.block-inquiry-history-detail .block-inquiry-history-detail--contact-name,
.block-inquiry-history-detail .block-inquiry-history-detail--update-dt {
  font-size: 16px;
}

/* ----退会---- */

.block-withdrawal--customer-name {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 30px;
}
.block-withdrawal--message {
  margin-bottom: 20px;
}
.block-withdrawal--completed-message {
  margin: 80px 0;
  text-align: center;
  line-height: 200%;
}

/* ----ログアウト---- */

.block-logout--message {
  margin: 80px 0;
  text-align: center;
  line-height: 200%;
}

/* ----メールアドレス変更---- */

.block-mail-address--customer-name {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 30px;
}
.block-mail-address--update-completed-message {
  margin: 80px 0;
  text-align: center;
  line-height: 200%;
}

/* ----所持クーポン一覧---- */

.block-coupon-list--customer-name {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 30px;
}

/* ----定期購入商品一覧---- */

.block-regular-purcharse-list--customer-name {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 30px;
}

/* ----定期購入商品詳細---- */

.block-regular-purcharse-detail--customer-name {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 30px;
}
.block-regular-purcharse-detail--cycle-update .block-regular-purcharse-detail--update-cycle {
  margin-left: 15px;
}
.block-regular-purcharse-detail--body .block-regular-purcharse-detail--shipment-address {
  padding: 20px;
}
.block-regular-purcharse-detail--body .block-regular-purcharse-detail--action-message {
  margin: 30px 0 15px 0;
}

/* ----定期購入商品配送先変更---- */

.block-regular-purcharse-shipment-info-update--customer-name {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 30px;
}

/* ----定期購入商品解約---- */

.block-regular-purcharse-cancellation--customer-name {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 30px;
}
.block-regular-purcharse-cancellation--message {
  margin-top: 50px;
}

/* ----ポイント履歴一覧---- */

.block-point-history-list--customer-name {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 30px;
}

/* ----入荷案内申し込み商品---- */

.block-arrival-notice-list--customer-name {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 30px;
}

/* ----入荷案内申し込み商品---- */

.block-credit-card-confirmation--customer-name {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 30px;
}
.block-credit-card-confirmation--message {
  margin-bottom: 20px;
}

/* ----カード情報変更---- */

.block-update-credit-card-info--customer-name {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 30px;
}
.block-update-credit-card-info--message {
  margin-bottom: 20px;
}

/* ----ご注文キャンセル---- */

.block-order-cancellation--body .legend {
  margin-top: 0;
}

/* ----ご注文キャンセル完了---- */

.block-order-cancellation-completed--message {
  margin: 80px 0;
  text-align: center;
  line-height: 200%;
}

/* ----定期購入商品サイクル情報変更---- */

.block-regular-purcharse-cycle-info-update--customer-name {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 30px;
}

/* ----ユーザーレビュー---- */

.block-user-review-completed--message-header {
  text-align: center;
  margin-top: 80px;
}
.block-user-review-completed--message {
  text-align: center;
  margin-bottom: 80px;
}

/* ----パスワード再設定---- */

.block-reset-password--message {
  margin-bottom: 30px;
}
.block-reset-password-completed--message {
  margin: 80px 0;
  text-align: center;
  line-height: 200%;
}

/* ----パスワード再設定---- */

.block-update-new-password--message {
  margin-bottom: 30px;
}
.block-reset-new-password--completed-message {
  margin: 80px 0;
  text-align: center;
  line-height: 200%;
}

/* ----お問い合わせ---- */

.block-inquiry--customer-name,
.block-inquiry-completed--customer-name {
  font-size: 16px;
  font-weight: bold;
  margin: 30px 0;
}
.block-inquiry-completed--message {
  margin: 80px 0;
  text-align: center;
  line-height: 200%;
}

/* ----アンケート---- */

.block-questionnaire--customer-name,
.block-questionnaire-completed--customer-name {
  font-size: 16px;
  font-weight: bold;
  margin: 30px 0;
}
.block-questionnaire-completed--message {
  margin: 80px 0;
  text-align: center;
  line-height: 200%;
}

/* ----マイページ画面---- */

.block-mypage {
  overflow: hidden;
}
.block-mypage--customer-status {
  background: #444;
  border-radius: 3px;
  color: #fff;
  display: flex;
  align-items: center;
  padding: 8px 0;
  margin-bottom: 40px;
}
.block-mypage--sign {
  flex-grow: 1;
  text-align: center;
  padding: 8px 0;
  border-right: #fff 1px solid;
}
.block-mypage--mypoint {
  flex-grow: 2;
  font-size: 18px;
  padding-left: 34px;
}
.block-mypage--rank-status {
  display: flex;
  align-items: center;
  flex-grow: 2;
  justify-content: flex-end;
}
.block-mypage--rank-condition dl {
  display: flex;
  align-items: center;
}
.block-mypage--customer-name {
  font-size: 18px;
}
.block-mypage--logout {
  font-size: 14px;
}
.block-mypage--mypoint-duedate {
  font-size: 14px;
}
.block-mypage--logout a {
  color: #fff;
}
.block-mypage--mypoint-duedate {
  display: block;
}
.block-mypage--rank-info {
  border: #fff 1px solid;
  text-align: center;
  padding: 12px 18px 13px;
}
.block-mypage--rank-title {
  font-size: 12px;
}
.block-mypage--rank-name {
  font-size: 14px;
}
.block-mypage--rank-condition {
  padding: 0 10px 0 17px;
}
.block-mypage--rank-condition-1 {
  margin-bottom: 2px;
}
.block-mypage--rank-condition-1-title,
.block-mypage--rank-condition-2-title {
  background: #fff;
  color: #444;
  text-align: center;
  padding: 1px 5px;
  border-radius: 2px;
  font-size: 12px;
  margin-right: 5px;
}
.block-mypage--rank-condition-1-title i,
.block-mypage--rank-condition-2-title i {
  padding-right: 3px;
}
.block-mypage--customer-barcode {
  text-align: center;
  padding: 10px;
}
.block-mypage--customer-barcode #customer_barcode_ > div {
  margin: 0 auto;
}
.block-mypage--recommend {
  padding: 10px;
  text-align: right;
}
.block-mypage--recommend a {
  text-decoration: underline;
}
.block-mypage--shopping-info,
.block-mypage--member-info,
.block-mypage--inquiry-info,
.block-mypage--snssync-info {
  font-size: 18px;
  font-weight: bold;
  padding: 15px 20px;
  background: #f5f5f5;
  margin-bottom: 10px;
}
.block-mypage--shopping-info i,
.block-mypage--member-info i,
.block-mypage--inquiry-info i,
.block-mypage--snssync-info i {
  padding-right: 15px;
}
.block-mypage--shopping-info-items,
.block-mypage--member-info-items,
.block-mypage--inquiry-info-items,
.block-mypage--snssync-info-items {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 40px;
}
.block-mypage--shopping-info-items li,
.block-mypage--member-info-items li,
.block-mypage--inquiry-info-items li,
.block-mypage--snssync-info-items li {
  width: calc(100% / 4);
  width: -moz-calc(100% / 4);
  width: -webkit-calc(100% / 4);
  padding: 0 15px;
  margin-bottom: 30px;
  max-width: inherit;
  flex-grow: inherit;
  border: none;
  margin: 0;
}
.block-mypage--shopping-info-items li:nth-of-type(4n+1),
.block-mypage--member-info-items li:nth-of-type(4n+1),
.block-mypage--inquiry-info-items li:nth-of-type(4n+1),
.block-mypage--snssync-info-items li:nth-of-type(4n+1) {
  margin-left: 0;
}
.block-mypage--shopping-info-items li dt,
.block-mypage--member-info-items li dt,
.block-mypage--inquiry-info-items li dt,
.block-mypage--snssync-info-items li dt {
  border-bottom: #c8c8c8 1px solid;
  display: block;
}
.block-mypage--shopping-info-items li dt a,
.block-mypage--member-info-items li dt a,
.block-mypage--inquiry-info-items li dt a,
.block-mypage--snssync-info-items li dt a {
  font-size: 15px;
  font-weight: bold;
  padding: 12px 30px 12px 0;
  display: flex;
  text-decoration: none;
  position: relative;
}
.block-mypage--shopping-info-items li dt a:after,
.block-mypage--member-info-items li dt a:after,
.block-mypage--inquiry-info-items li dt a:after,
.block-mypage--snssync-info-items li dt a:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 15px;
  width: 8px;
  height: 8px;
  border-top: 1px #444 solid;
  border-right: 1px #444 solid;
  transform: rotate(45deg);
  margin: -5px 0 0 0;
  -webkit-transition: all .4s ease;
  -moz-transition: all .4s ease;
  transition: all .4s ease;
}
.block-mypage--shopping-info-items li dt a:hover:after,
.block-mypage--member-info-items li dt a:hover:after,
.block-mypage--inquiry-info-items li dt a:hover:after,
.block-mypage--snssync-info-items li dt a:hover:after {
  right: 11px;
}
.block-mypage--shopping-info-items li dt i,
.block-mypage--member-info-items li dt i,
.block-mypage--inquiry-info-items li dt i,
.block-mypage--snssync-info-items li dt i {
  display: none;
  /*
  margin: 0 10px 0 auto;
*/
}
.block-mypage--shopping-info-items li dt a:hover,
.block-mypage--member-info-items li dt a:hover,
.block-mypage--inquiry-info-items li dt a:hover,
.block-mypage--snssync-info-items li dt a:hover {
  text-decoration: none;
  -webkit-transition: all .4s ease;
  -moz-transition: all .4s ease;
  transition: all .4s ease;
}
.block-mypage--shopping-info-items li dd,
.block-mypage--member-info-items li dd,
.block-mypage--inquiry-info-items li dd,
.block-mypage--snssync-info-items li dd {
  padding: 16px 10px 16px 0;
}
.block-mypage--withdrawal-link {
  text-align: right;
  color: #444;
}
.block-mypage--withdrawal {
  text-decoration: underline;
  color: #444;
}
.block-mypage--update-address-book {
  display: block;
  width: 100%;
  height: auto;
  background: #ddd;
  border-radius: 3px;
  text-align: center;
  padding: 5px 0;
  margin: 8px auto 0 auto;
  text-decoration: none;
  -webkit-transition: all .4s ease;
  -moz-transition: all .4s ease;
  transition: all .4s ease;
}
.block-mypage--update-address-book:hover {
  opacity: 0.8;
}

/* 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;
}

/* ----会員登録画面---- */

.block-member-info--value-label {
  display: inline-block;
  width: 60px;
  text-align: center;
}
.block-member-info input[name="name"],
.block-member-info input[name="name2"],
.block-member-info input[name="kana"],
.block-member-info input[name="kana2"] {
  max-width: 200px;
}

/* ----アドレス帳の新規登録・変更画面---- */

.block-shipping-address--value-label {
  display: inline-block;
  width: 60px;
  text-align: center;
}
.block-shipping-address input[name="name"],
.block-shipping-address input[name="name2"],
.block-shipping-address input[name="kana"],
.block-shipping-address input[name="kana2"] {
  max-width: 200px;
}

/* ----ログイン画面---- */

.block-login .block-login--member-header,
.block-login .block-login--first-time-header,
.block-login .common_headline2_area_ {
  padding-bottom: 25px;
  margin-bottom: 30px;
}
.block-login .block-login--member-header span,
.block-login .block-login--first-time-header span,
.block-login .common_headline2_area_ span {
  font-size: 22px;
}
.block-login--member {
  margin-bottom: 20px;
}
.block-login--first-time {
  padding: 20px;
  border: 1px #dcdcdc solid;
}
.block-login--first-time:first-child {
  margin-bottom: 20px;
}
.block-login--member-message {
  text-align: center;
  margin: 0 auto 20px auto;
}
.block-login--first-time-message {
  text-align: center;
  margin: 0 auto 20px auto;
}
.block-login--input-items {
  margin: 50px auto 0;
}
.block-login--member-frame .action-buttons {
  margin-top: 20px;
}
.block-login--uid .form-label,
.block-login--pwd .form-label {
  width: 138px;
}
.block-login--login-state-saving {
  margin-top: 35px;
  text-align: center;
}
.block-login--amazon-message {
  text-align: center;
}
.block-login--login {
  margin-top: 10px;
  padding: 12px 0;
  font-size: 16px;
  width: 160px;
}
.block-login--body .action .btn {
  width: 300px;
}
.block-login--entry {
  margin-top: 10px;
  padding: 12px 0;
  font-size: 16px;
  width: 160px;
}
.block-login--first-time-body {
  overflow: hidden;
  background: #fff;
}
.block-login--first-time hr {
  margin-top: 20px;
  margin-bottom: 20px;
}
.block-login--member-body {
  display: inherit;
  width: 100%;
  overflow: hidden;
  background: #fff;
  margin: inherit;
}
.block-login--member-frame {
  display: table;
  margin-top: 40px;
  margin-bottom: 20px;
  padding: 20px;
  border: 1px #dcdcdc solid;
  width: 100%;
  margin-right: 0;
}
.block-login--member-frame .block-login--input-items {
  width: 880px;
}
.block-login--social-frame {
  display: table-cell;
  padding-left: 0;
  width: 1200px;
}
.block-login--amazon-body {
  display: block;
  width: inherit;
}
.block-login--amazon-login {
  margin-top: 10px;
  margin-bottom: 10px;
  text-align: center;
}
.block-login--body h2 {
  text-align: center;
  line-height: 140%;
  padding-bottom: 35px;
  margin-bottom: 50px;
  position: relative;
  letter-spacing: 0.1em;
}
.block-login--body h2 span:after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 2em;
  margin-left: -1em;
  height: 2px;
  background-color: #000000 !important;
}
.block-login--guest {
  margin-top: 10px;
  padding: 12px 0;
  font-size: 16px;
  width: 240px;
}
.block-login--member-info-value-label {
  display: inline-block;
  width: 60px;
  text-align: center;
}

/******************************/

.block-login--snslogin-body {
  width: 95%;
  margin: auto;
  padding: 0 0 15px 0;
  overflow: hidden;
  zoom: 1;
}
.block-login--snslogin-body:after {
  clear: both;
}
.block-login--snslogin-body ul {
  justify-content: inherit;
  align-items: center;
  margin-left: inherit;
}
.block-login--snslogin-body ul li {
  float: left;
  width: 220px;
}
.block-login--snslogin-contents-btn {
  display: inline-block;
  margin: 0;
  text-align: center;
  vertical-align: middle;
  cursor: pointer;
  white-space: nowrap;
  width: 230px;
  height: 50px;
  background-color: transparent;
  border: none;
}
.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;
  border: 1px solid #e61017;
  width: 41px;
  height: 40px;
}
.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;
  line-height: 40px;
  float: left;
  text-align: left;
  padding: 2px 6px;
  margin-left: 1px;
  border-left: solid 1px #ccc;
  font-size: 85%;
  color: #fff;
}
.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-additional-authentication {
  height: 510px;
}
.block-additional-authentication--body {
  padding: 20px;
  overflow: hidden;
  border: solid 1px #dcdcdc;
  background: #fff;
}
.block-additional-authentication--message-header {
  font-size: 14px;
  font-weight: bold;
  padding: 0 50px;
}
.block-additional-authentication--message {
  padding: 10px 50px 30px 50px;
}
.block-additional-authentication--input-items {
  width: 600px;
  margin: 10px auto;
}
.block-additional-authentication--authentication-key input[type="text"] {
  width: 330px;
}
.block-additional-authentication--login {
  margin-top: 10px;
  padding: 12px 0;
  font-size: 16px;
  width: 160px;
}

/* ----お気に入り画面---- */

.block-favorite--form li {
  border: 1px solid #ccc;
  border-top: none;
  padding: 20px;
}
.block-favorite--form li:first-child {
  border-top: 1px solid #ccc;
}
.block-favorite--favorite-goods {
  display: flex;
  width: 100%;
}
.block-favorite--checkbox,
.block-favorite--delete-item {
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
}
.block-favorite--checkbox {
  flex-basis: 30px;
  padding-right: 10px;
}
.block-favorite--checkbox input[type="checkbox"] {
  display: block;
}
.block-favorite--image {
  flex-basis: 160px;
}
.block-favorite--description {
  flex-basis: 280px;
}
.block-favorite--comment-textarea {
  width: 540px;
  height: 75px;
}
.block-favorite--comment {
  flex-basis: 580px;
  margin: 0 20px;
}
.block-favorite--delete-item {
  flex-basis: 80px;
  text-align: center;
}
.block-favorite--image figure {
  background: #f5f5f5;
  width: 142px;
  height: 142px;
}
.block-favorite--goods-name a {
  color: #000;
}
.block-favorite--edit-comment a {}
.block-favorite--price-items {
  padding-top: 10px;
}
.block-favorite--price-title,
.block-favorite--price {
  display: inline-block;
}
.block-favorite--update-dt dt,
.block-favorite--update-dt dd {
  display: inline-block;
}

/* ----入荷案内申し込み商品画面---- */

.block-arrival-notice-list--form li {
  margin-bottom: 20px;
}
.block-arrival-notice-list--goods {
  display: flex;
  width: 100%;
}
.block-arrival-notice-list--image {
  flex-basis: 160px;
}
.block-arrival-notice-list--description {
  flex-grow: 1;
}
.block-arrival-notice-list--delete-item {
  flex-basis: 80px;
  text-align: center;
}
.block-arrival-notice-list--image figure {
  background: #f5f5f5;
  width: 142px;
  height: 142px;
}
.block-arrival-notice-list--goods-name a {
  color: #000;
}
.block-arrival-notice-list--price-title,
.block-arrival-notice-list--price {
  display: inline-block;
}
.block-arrival-notice-list--update-dt dt,
.block-arrival-notice-list--update-dt dd {
  display: inline-block;
}

/* ----購入履歴一覧画面---- */

.block-purchase-history--table {
  margin: 5px 0;
  width: 100%;
}
.block-purchase-history--order-id a {}
.block-purchase-history--order-detail-reorder a {}
.block-purchase-history--status a:hover {
  text-decoration: none;
}

/* ----購入履歴詳細画面---- */

.block-purchase-history-detail--order-info {
  margin: 10px 0;
  display: flex;
  width: 100%;
}
.block-purchase-history-detail--order-info-left {
  width: 65%;
}
.block-purchase-history-detail--order-info-right {
  width: 35%;
  padding: 0 0 0 10px;
}
.block-purchase-history-detail--order-info-table {
  width: 100%;
}
.block-purchase-history-detail--order-info-table th {
  width: 250px;
}
.block-purchase-history-detail--order-body {
  margin: 10px 0;
  display: flex;
  width: 100%;
}
.block-purchase-history-detail--order-body-left {
  width: 65%;
}
.block-purchase-history-detail--order-body-right {
  width: 35%;
  padding: 0 0 0 10px;
}
.block-purchase-history-detail--order-detail-items {
  width: 100%;
}
.block-purchase-history-detail--payment-info-items {
  width: 100%;
}
.block-purchase-history-detail--point-message {
  margin: 5px 0;
}
.block-purchase-history-detail--shipping-info {
  margin: 10px 0;
  display: flex;
  width: 100%;
}
.block-purchase-history-detail--shipping-info-left {
  width: 65%;
}
.block-purchase-history-detail--shipping-info-right {
  width: 35%;
  padding: 0 0 0 10px;
}
.block-purchase-history-detail--sender-items {
  width: 100%;
}
.block-purchase-history-detail--shipping-info-items {
  width: 100%;
}
.block-purchase-history-detail--shiment-address {
  border: 1px solid #c8c8c8;
  padding: 20px;
  margin: 10px 0;
}
.block-purchase-history-detail--shipment-items {
  width: 100%;
}
.block-purchase-history-detail--csv-info-items {
  width: 100%;
  margin: 10px 0;
}
.block-purchase-history-detail--csv-info-items th {
  width: 250px;
}
.block-purchase-history-detail--invoice {
  margin: 5px 0;
  width: 100%;
}
.block-purchase-history-detail--invoice dt {
  display: inline-block;
  font-weight: bold;
}
.block-purchase-history-detail--invoice dd {
  display: inline-block;
}
.block-purchase-history-detail--track-shipment {
  margin: 5px 0;
  width: 100%;
}
.block-purchase-history-detail--track-shipment dt {
  display: inline-block;
  font-weight: bold;
}
.block-purchase-history-detail--track-shipment dd {
  display: inline-block;
}
.block-purchase-history-detail--append-items {
  width: 100%;
}
.block-purchase-history-detail--append-items th {
  width: 250px;
}
.block-purchase-history-detail .block-purchase-history-detail--add-goods {
  width: 300px;
}
.block-purchase-history-detail .block-purchase-history-detail--contact {
  width: 300px;
}
.block-purchase-history-detail .block-purchase-history-detail--cancel {
  width: 250px;
}
.block-purchase-history-detail--child-order-id a {
  text-decoration: underline;
}
.block-purchase-history-detail--parent-order-id a {
  text-decoration: underline;
}
.block-purchase-history-detail--regular-sales-include a {
  text-decoration: underline;
}

/* ----ご注文キャンセル画面---- */

.block-order-cancellation--order-info {
  margin: 10px 0 30px 0;
  display: flex;
  width: 100%;
}
.block-order-cancellation--order-info-left {
  width: 60%;
}
.block-order-cancellation--order-info-right {
  width: 40%;
  padding: 0 0 0 30px;
}
.block-order-cancellation--shiment-address {
  border: 1px solid #c8c8c8;
  padding: 20px;
  margin: 10px 0;
}
.block-order-cancellation--payment-info-items {
  width: 100%;
}
.block-order-cancellation--order-items {
  width: 100%;
}

/* ----定期購入商品一覧画面---- */

.block-regular-purcharse-list--table {
  margin: 5px 0;
  width: 100%;
}
.block-regular-purcharse-list--regular-sales a {
  text-decoration: underline;
}

/* ----定期購入商品詳細画面---- */

.block-regular-purcharse-detail--body {
  margin: 10px 0;
  width: 100%;
}
.block-regular-purcharse-detail--regular-sales-items {
  width: 100%;
}
.block-regular-purcharse-detail--regular-sales-items th {
  width: 250px;
}
.block-regular-purcharse-detail--shipment-address {
  border: 1px solid #c8c8c8;
  padding: 10px;
  margin: 10px 0;
}
.block-regular-purcharse-detail--update-address {
  margin: 10px 0;
  text-align: right;
}
.block-regular-purcharse-detail--goods-items {
  width: 100%;
}
.block-regular-purcharse-cycle-info-update--goods-img ,
.block-regular-purcharse-detail--goods-img {
  width: 200px;
}
.block-regular-purcharse-detail--append-items {
  width: 100%;
}
.block-regular-purcharse-detail--append-items th {
  width: 250px;
}
.block-regular-purcharse-detail--include-items {
  width: 100%;
}
.block-regular-purcharse-detail--include-items th {
  width: 250px;
}
.block-regular-purcharse-detail--action-message {
  margin-top: 10px;
}
.block-regular-purcharse-list--order-id a {
  text-decoration: underline;
}

/* ----定期購入商品カード情報確認画面---- */

.block-regular-purchase-creditcard-info-confirmation--regular-purchase-items {
  width: 100%;
}
.block-regular-purchase-creditcard-info-confirmation--regular-purchase-items th {
  width: 250px;
}
.block-regular-purchase-creditcard-info-confirmation--goods-table {
  width: 100%;
  margin: 10px 0;
}
.block-regular-purchase-creditcard-info-confirmation--card-info-items {
  width: 100%;
}
.block-regular-purchase-creditcard-info-confirmation--card-info-items th {
  width: 250px;
}

/* ----定期購入商品カード情報変更画面---- */

.block-update-regular-purchase-creditcard-info--regular-purchase-info-items {
  width: 100%;
}
.block-update-regular-purchase-creditcard-info--regular-purchase-info-items th {
  width: 250px;
}
.block-update-regular-purchase-creditcard-info--goods-table {
  width: 100%;
  margin: 10px 0;
}

/* ----定期購入商品配送先変更画面---- */

.block-regular-purcharse-shipment-info-update--new-address,
.block-regular-purcharse-shipment-info-update--old-address {
  border: 1px solid #c8c8c8;
  padding: 20px;
  margin: 10px 0;
}
.block-regular-purcharse-shipment-info-update--new-destination {
  margin-bottom: 30px;
}
.block-regular-purcharse-shipment-info-update--old-info-message {
  margin-top: 20px;
}

/* ----定期購入商品サイクル情報変更画面---- */

.block-regular-purcharse-cycle-info-update h3 {
  font-size: 14px;
  color: #333;
  font-weight: bold;
  margin: 0 0 12px 0;
}
.block-regular-purcharse-cycle-info-update--body {
  margin: 10px 0;
  width: 100%;
}
.block-regular-purcharse-cycle-info-update--regular-sales-items {
  width: 100%;
}
.block-regular-purcharse-cycle-info-update--regular-sales-items th {
  width: 250px;
}
.block-regular-purcharse-cycle-info-update--shipment-address {
  border: 1px solid #c8c8c8;
  padding: 20px;
  margin: 10px 0;
}
.block-regular-purcharse-cycle-info-update--goods-items {
  width: 100%;
}

/* ----定期購入商品解約画面---- */

.block-regular-purcharse-cancellation--goods-items {
  margin: 10px 0;
  width: 100%;
}
.block-regular-purcharse-cancellation--message {
  text-align: center;
}

/* ----カード情報確認画面---- */

.block-credit-card-confirmation--credit-card-info-table {
  width: 100%;
}
.block-credit-card-confirmation--credit-card-info-table th {
  width: 250px;
}

/* ----お問い合わせ画面---- */

.block-inquiry--inquiry-body .form-label,
.block-inquiry--inquiry-body .constraint {
  vertical-align: top;
  padding-top: 8px;
}

/* ----お問い合わせ履歴一覧画面---- */

.block-inquiry-history--body {
  border-top: 1px solid #c8c8c8;
}
.block-inquiry-history--body li {
  margin: 5px 0;
  padding: 15px 0;
  border-bottom: 1px solid #c8c8c8;
}
.block-inquiry-history--body li span {
  margin: 0 10px 0 0;
}

/* ----お問い合わせ履歴詳細画面---- */

.block-inquiry-history-detail--form {
  margin: 50px 0;
}
.block-inquiry-history-detail--message {
  text-align: center;
}
.block-inquiry-history-detail--inquiry-body {
  margin: 20px 0;
}
.block-inquiry-history-detail--inquiry-body textarea {
  width: 100%;
}
.block-inquiry-history-detail--item dt {
  width: 100%;
  display: flex;
}
.block-inquiry-history-detail--contact-name {
  width: 80%;
}
.block-inquiry-history-detail--update-dt {
  width: 20%;
  text-align: right;
  font-weight: normal;
}
.block-inquiry-history-detail--message-confirm {
  text-align: center;
}
.block-inquiry-history-detail--inquiry-body-confirm {
  margin: 20px 0;
  padding: 10px;
  border: 1px solid #c8c8c8;
}

/* ----ポイント履歴一覧画面---- */

.block-point-history-list--point {
  font-size: 20px;
  font-weight: bold;
  margin: 0 5px;
}
.block-point-history-list--message {
  margin: 5px 0;
}
.block-point-history-list--items {
  margin: 5px 0;
  width: 100%;
}

/* ----所持クーポン一覧画面---- */

.block-coupon-list--table {
  margin: 5px 0;
  width: 100%;
}
.block-coupon-list--coupon-dt {
  white-space: nowrap;
  width: 300px;
}

/* ----店舗クーポン一覧画面---- */

.block-store-coupon-list--table {
  margin: 5px 0;
  width: 100%;
}
.block-store-coupon-list--coupon-dt {
  white-space: nowrap;
  width: 300px;
}

/* ----ログアウト画面---- */

.block-logout--message a {
  text-decoration: underline;
}

/* ----パスワード再設定---- */

.block-reset-password--tel {
  border-bottom: 1px solid #e5e5e5;
}

/* ----注文フローステップ---- */

.block-order-flow--step {
  padding: 50px 0;
  text-align: center;
}
.block-order-flow--step ul {
  border-top: 1px solid #eee;
  border-bottom: 1px solid #eee;
  display: table;
  table-layout: fixed;
  width: 100%;
}
.block-order-flow--step1,
.block-order-flow--step2,
.block-order-flow--step3,
.block-order-flow--step4,
.block-order-flow--step5 {
  position: relative;
  display: table-cell;
  vertical-align: middle;
  height: 60px;
  padding: 0 27px;
  font-size: 14px;
  letter-spacing: 0.1em;
  font-weight: bold;
}
.block-order-gift-select .block-order-flow--step1,
.block-order-gift-select .block-order-flow--step2,
.block-order-gift-select .block-order-flow--step3,
.block-order-gift-select .block-order-flow--step4,
.block-order-gift-select .block-order-flow--step5 {
  padding: 0 2px;
  font-size: 13px;
  font-weight: bold;
}

.block-order-flow--step1:before {
  content: "STEP1";
}
.block-order-flow--step2:before {
  content: "STEP2";
}
.block-order-flow--step3:before {
  content: "STEP3";
}
.block-order-flow--step4:before {
  content: "STEP4";
}
.block-order-flow--step5:before {
  content: "STEP5";
}
.block-order-flow--step1:before,
.block-order-flow--step2:before,
.block-order-flow--step3:before,
.block-order-flow--step4:before,
.block-order-flow--step5:before {
  display: inline;
  padding-right: 10px;
  margin-right: 10px;
  border-right: 1px #3a3a3a solid;
}
.block-order-flow--step1:after,
.block-order-flow--step2:after,
.block-order-flow--step3:after,
.block-order-flow--step4:after,
.block-order-flow--step5:after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 30px 0 30px 18px;
  border-color: #fff #fff #fff #ebebeb;
  opacity: 0;
}
.block-order-flow--step-current {
  background-color: #ebebeb;
  padding-right: 40px;
  color: #444;
}
.block-order-flow--step-current:after {
  opacity: 1;
}

/* ----注文フロー右サイドエリア----*/

.block-cart--container,
.block-order-method--container,
.block-order-estimate--container {
  position: relative;
}
.block-cart--container .order-side-area-fixed,
.block-order-method--container .order-side-area-fixed,
.block-order-estimate--container .order-side-area-fixed {
  display: inline-block;
  position: fixed;
  top: 20px;
  left: 50%;
  margin: 0 0 0 230px;
  z-index: 1;
}
.block-cart--container .order-side-area-end,
.block-order-method--container .order-side-area-end,
.block-order-estimate--container .order-side-area-end {
  position: absolute;
  bottom: 0;
  right: 0;
}

/* ----カートアイテム ---- */

.block-cart--infomation {
  background: #fff;
  border: 1px solid #999;
  margin: 20px auto;
  padding: 20px;
  text-align: left;
  width: 800px;
}
.block-cart--order-button-description {
  font-weight: bold;
  text-align: center;
  margin-bottom: 10px;
}
.block-cart--amazonpay {
  border-top: 1px solid #9f9c97;
  padding: 0;
  margin-top: 25px;
  margin-bottom: 10px;
  text-align: center;
}
.block-cart--amazonpay-description {
  text-align: left;
  font-size: 13px;
  margin: 25px 0 15px 0;
}
.block-cart--container {
  position: relative;
  overflow: hidden;
}
.block-cart--goods-list-image {
  float: left;
  margin: 0 20px 0 0;
  background: #f5f5f5;
  width: 200px;
  height: 200px;
}
.block-cart--goods-list-item-name {
  font-weight: bold;
  font-size: 16px;
  line-height: 1.6;
}
.block-cart .block-icon {
  margin: 0 15px 0 0;
}
.block-cart--goods-list-item {
  float: left;
  width: 370px;
  margin: 8px 0 8px 0;
}
.block-cart--goods-list-item-price-info {
  float: left;
  width: 100px;
  text-align: right;
  margin: 8px 15px 0 10px;
  font-size: 16px;
  font-weight: bold;
}
.block-cart--goods-list-item-price {
  color: #333;
}
.block-cart--goods-list-item-input {
  float: right;
  width: 100px;
}
.block-cart--goods-list-item-qty {
  position: relative;
  margin: 0 0 10px 0;
}
.block-cart--goods-list-item-qty input {
  width: 100%;
  padding: 6px 10px 6px 10px;
}
.block-cart--goods-list-item-qty:after {
  position: absolute;
  top: 6px;
  right: 28px;
  content: "";
  width: 1px;
  height: 28px;
  background: #ccc;
}
.block-cart--goods-list-item-qty-plus {
  position: absolute;
  top: 6px;
  right: 10px;
}
.block-cart--goods-list-item-qty-minus {
  position: absolute;
  top: 21px;
  right: 10px;
}
.block-cart--goods-list-item-calc-btn {
  display: block;
  margin: 0 0 10px 0;
  width: 100%;
}
.block-cart--goods-list-item-delete {
  cursor: pointer;
  color: #333;
  font-size: 14px;
  border: none;
  text-decoration: underline;
  background: none;
  width: 100%;
}
.block-cart--goods-list-item-delete:hover {
  text-decoration: none;
}
.block-cart--goods-list-item-comment {
  padding: 20px 0 15px;
}

/* カート左エリア */

.block-cart--contents {
  width: 840px;
  float: left;
  background: #fff;
}
.block-cart--goods-list li:last-child {
  border: none;
}
.block-cart--goods-list li {
  margin: 20px 20px 20px 0;
  padding: 0 0 20px 0;
  overflow: hidden;
  border-bottom: solid 1px #dcdcdc;
}

/* カート右サイドエリア */

.block-cart--side-area {
  position: relative;
  float: left;
  padding-top: 20px;
}
.block-cart--side-contents {
  width: 320px;
  margin-left: 20px;
}
.block-cart--procedure {
  border: solid 6px #dcdcdc;
  padding: 15px 20px;
  overflow: hidden;
  margin-bottom: 20px;
}
.block-cart--procedure-container {
  overflow: hidden;
  display: flex;
  flex-wrap: wrap;
  padding: 0;
  overflow: inherit;
  background: inherit;
}
.block-cart--procedure-container > div {
  width: 100%;
}
.block-cart--procedure-container .block-cart--order {
  order: 2;
}
.block-cart--procedure-container .block-cart--subtotal {
  order: 1;
  border-bottom: 1px #dcdcdc solid;
  padding-bottom: 15px;
  margin-bottom: 25px;
  font-size: 16px;
  text-align: left;
}
.block-cart--order-btn {
  display: block;
  margin: 0 0 10px 0;
  width: 100%;
  font-size: 17px;
  text-align: center;
  padding: 10px 0;
}
.block-cart--order-btn-gift {
  display: block;
  margin: 0 0 10px 0;
  width: 100%;
  font-size: 17px;
  text-align: center;
  padding: 10px 0;
  background: #000000;
}
.block-cart--subtotal {
  padding: 8px 0;
}
.block-cart .block-exchange-price {
  text-align: center;
  margin-bottom: 8px;
}
.block-cart--subtotal-price {
  display: block;
  font-size: 26px;
  font-weight: bold;
  color: #444;
}
.block-cart--continue-shopping {
  text-align: center;
  margin-bottom: 40px;
}
.block-cart--promotion {
  text-align: center;
}
.block-cart--promotion dd,
.block-cart--promotion dt {
  display: inline-block;
  margin-bottom: 10px;
}
.block-cart--promotion-discount {
  font-size: 13px;
  font-weight: bold;
}
.block-cart--continue-shopping-link {
  cursor: pointer;
  color: #333;
  font-size: 14px;
  border: none;
  text-decoration: underline;
  background: none;
}
.block-cart--continue-shopping-link:hover {
  text-decoration: none;
}
.block-promotion-message--content {
  border: 1px solid #f00;
  background-color: #fff;
  text-align: center;
  padding: 10px 0;
  margin: 0 0 10px 0;
  font-size: 12px;
}
.block-promotion-message--content span {
  color: #f00;
  font-weight: bold;
  font-size: 13px;
}
a.block-promotion-message--info {
  text-decoration: none;
}

/* ---------------------- */


/* ----通常の注文--------- */


/* ---------------------- */


/* ----カート画面直後のAmazonPayローディング---- */

.block-order-amazonpay--loading {
  padding: 60px 0;
  text-align: center;
}

/* ----アマゾンウィジェット---- */

.block-order-estimate--amazonpay-address-widget,
.block-order-amazonpay--address-widget,
.block-amazon--address-widget {
  width: 600px;
  margin: 0 auto;
  height: 270px;
  padding: 5px 0;
  box-sizing: content-box;
}

/* ----注文方法指定画面---- */


/* 共通設定 */

.block-order-method--payment-content,
.block-order-method--regular-content,
.block-order-method--spec-content,
.block-order-method--goods-content,
.block-order-method--dest-content,
.block-order-method--host-content,
.block-order-method--host-confirmation {
  background: #fff;
  border: solid 1px #dcdcdc;
  padding: 20px 20px 20px 20px;
  margin: 0 0 20px 0;
}
.block-order-method h2 {
  font-weight: bold;
  font-size: 20px;
  color: #333;
  padding: 10px 0;
  margin: 0 0 10px 0;
}
.block-order-method h3 {
  font-size: 16px;
  color: #333;
  font-weight: bold;
  margin: 0 0 12px 0;
}
.block-order-method address {
  font-size: 13px;
  line-height: 1.6;
  padding-top: 10px;
}
.block-order-method .block-icon {
  margin: 0 15px 0 0;
}
.block-order-method dt {
  font-weight: bold;
}
.block-order-method--container {
  display: block;
  overflow: hidden;
}
.block-order-method--contents {
  width: 820px;
  float: left;
}
.block-order-method--name-sei,
.block-order-method--name-mei,
.block-order-method--kana-sei,
.block-order-method--kana-mei {
  display: inline-block;
}
.block-order-method--value-label {
  display: inline-block;
  width: 60px;
  text-align: center;
}

/* 届け先 */

#address.block-order-method--dest {
  margin: 30px 0;
}
#address.block-order-method--dest .block-order-method--dest-content {
  border: none;
  padding: 0;
}
#address.block-order-method--dest .block-order-method--dest-title-salesinclude {
  margin-top: 20px;
}
#address.block-order-method--dest .block-order-method--dest-note-salesinclude + .block-order-method--dest-list {
  margin-top: 20px;
}
.block-order-method--payment-content .block-order-method--coupon,
.block-order-method--payment-content .block-order-method--promotion,
.block-order-method--payment-content .block-order-method--point-use,
.block-order-method--payment-method {
  margin: 25px 0;
}
.block-order-method--payment .block-order-method--payment-content {
  padding: 0 20px;
}

/* 右サイドエリア */

.block-order-method--side-area {
  position: relative;
  float: right;
}
.block-order-method--side-contents {
  background: #eee;
  width: 320px;
  margin: 0 0 0 40px;
}
.block-order-method--procedure {
  border: solid 6px #dcdcdc;
  background: #fff;
  padding: 4px;
  overflow: hidden;
  margin-bottom: 20px;
}
.block-order-method--procedure-container {
  padding: 14px;
  background: #fff;
}
.block-order-method--next-btn {
  width: 100%;
  font-size: 16px;
  text-align: center;
  margin: 5px 0;
  padding: 14px 0;
  font-weight: bold;
}

/* お届け先 */

.block-order-method--dest-item:first-child {
  border-top: solid 1px #dcdcdc;
}
.block-order-method--dest-item {
  border-bottom: solid 1px #dcdcdc;
  padding: 20px;
  overflow: hidden;
}
.block-order-method--dest-item address {
  float: left;
}
.block-order-method--dest-item-nickname {
  font-weight: bold;
}
.block-order-method--dest-title-salesinclude {
  font-weight: bold;
  font-size: 16px;
}
.block-order-method--dest-item-salesinclude {
  font-weight: bold;
}
.block-order-method--dest-change {
  padding: 10px;
  margin: 0 0 10px 0;
  background: #f8f8f8;
  border: 1px solid #dcdcdc;
}
.block-order-method--dest-change strong {
  font-weight: bold;
}
.block-order-method--dest-change span {
  margin-left: 20px;
  font-size: 12px;
}
.block-order-method--dest-add {
  text-align: right;
  padding: 20px;
}
.block-order-method--dest-item-edit {
  text-align: right;
}
.block-order-method--dest-list address {
  margin: 0 0 0 20px;
}
.block-regular-cycle--cycle-type label {
  margin: 5px 0;
  display: inline-block;
}

/* 商品情報 */

.block-order-method--goods-list li {
  position: relative;
  overflow: hidden;
  margin: 0 0 20px;
  padding: 0 0 20px;
  border-bottom: 1px solid #dfdfdf;
}
.block-order-method--goods-list li:last-child {
  border-bottom: none;
}
.block-order-method--goods-item-image {
  float: left;
  margin: 0 20px 0 0;
  background: #f5f5f5;
  width: 200px;
  height: 200px;
}
.block-order-method--goods-item-name,
.block-order-method--goods-item-set-name {
  font-weight: bold;
  font-size: 16px;
  line-height: 1.6;
}
.block-order-method--goods-item-comment {
  padding: 20px 0 15px;
}
.block-order-method--sales-detail-append-item {
  overflow: hidden;
}

/* 配送方法 */

.block-order-method--spec-content dl {
  margin: 0 0 10px 0;
}
.block-order-method--spec-content dl dt {
  float: left;
}
.block-order-method--spec-content dl dd {
  margin-left: 8em;
}

/* お支払い情報 */

.block-order-method--coupon-content,
.block-order-method--promotion-content,
.block-order-method--point-use {
  margin: 0 0 10px 0;
}
.block-order-method--payment-method-select li {
  margin: 0 0 10px 0;
}
.block-order-method--payment-method-select li .help-block {
  display: inline-block;
  margin-left: 30%;
}
.block-order-method--point-use-select {
  margin-bottom: 10px;
  padding: 10px;
  background: #f8f8f8;
  border: 1px solid #dcdcdc;
}
.block-order-method--point-use-select label {
  cursor: pointer;
  padding: 0 23px 0 5px;
}
.block-order-method--current-point {
  margin: 0 0 10px 0;
}
.block-order-method--current-point-num {
  font-weight: bold;
}
.block-order-method--coupon-available-btn {
  margin: 0 0 0 14px;
}

/* その他 */

.block-order-method--sales-append-content {
  background: #fff;
  border: solid 1px #dcdcdc;
  margin: 0 0 20px 0;
  padding: 20px 20px 0 20px;
}
.block-order-method--sales-append-content .fieldset {
  margin-top: 0;
  margin-bottom: 20px;
}
.block-order-method--sales-append-content .fieldset .form-group {
  border-left: #e5e5e5 1px solid;
  border-right: #e5e5e5 1px solid;
}
.block-order-method--sales-append-content .form-label,
.block-order-method--sales-append-content .constraint {
  background-color: #f8f8f8;
}
.block-order-method--sales-append-content .form-group:not(:last-child) {
  border-bottom: solid 1px #dcdcdc;
}

/* クーポンダイアログ */

.block-order-method--coupondialog-wrapper {
  max-height: 300px;
  overflow-y: auto;
}
.block-order-method--coupondialog-table {
  width: 100%;
}
.block-order-method--coupondialog-table td {
  background: #fff;
}
.block-order-method--coupondialog-header-code {
  width: 180px;
}
.block-order-method--coupondialog-header-select {
  width: 180px;
}

/* ---- 注文内容確認(通常フロー) ---- */


/* クレジットカード設定 */

.block-order-estimate--pay-input {
  margin-bottom: 10px;
  background: #f8f8f8;
  border: 1px solid #dcdcdc;
}
.block-order-estimate--pay-input .form-group .form-label ,
.block-order-estimate--pay-input .form-group .form-control {
  padding: 20px 15px;
}
.block-order-estimate--pay-header {
  background: #333;
  padding: 10px;
  margin: 0 0 15px 0;
  color: #fff;
}
.block-order-estimate--pay-input .form-group .form-label {
  width: 25%;
}
.block-order-estimate--pay-savecard,
.block-order-estimate--pay-selectcard {
  padding: 0 0 0 20px;
}
.block-order-estimate--pay-input .block-common-alert-list {
  margin: 10px;
}

/* 画面内共通設定 */

.block-order-estimate--container {
  position: relative;
  overflow: hidden;
}
.block-order-estimate h2 {
  font-weight: bold;
  font-size: 20px;
  color: #333;
  padding: 10px 0;
  margin: 0 0 10px 0;
}
.block-order-estimate h3 {
  font-size: 16px;
  color: #333;
  font-weight: bold;
  margin: 0 0 12px 0;
}
.block-order-estimate h3 a {
  font-size: 13px;
  font-weight: normal;
  margin: 0 0 0 20px;
  width: 70px;
  padding: 5px;
}
.block-order-estimate--salesinclude-btn {
  font-size: 13px;
  font-weight: normal;
  margin: 0 0 0 5px!important;
  width: auto !important;
}
.block-order-estimate address {
  font-size: 13px;
  line-height: 1.6;
  padding-top: 10px;
  word-wrap: break-word;
  margin-left: 1em;
}
.block-order-estimate--point {
  color: #f00;
  font-size: 16px;
  font-weight: bold;
}
.block-order-estimate--confirmation,
.block-order-estimate--date-spec-confirmation,
.block-order-estimate--novelty,
.block-order-estimate--goods-content,
.block-order-estimate--sales-append,
.block-order-estimate--regular-cycle-confirmation,
.block-order-estimate--comment-content,
.block-order-estimate--amazonpay-login {
  background: #fff;
  border: solid 1px #dcdcdc;
  margin: 0 0 20px 0;
  padding: 20px;
}
.block-order-estimate--entry {
  margin-top: 10px;
  padding: 0 10px;
}
.block-order-estimate--register-customer {
  margin-bottom: 10px;
}
.block-order-estimate--register-customer-checkbox {
  display: table-cell;
}
.block-order-estimate--entry-customer {
  margin-bottom: 5px;
}
.block-order-estimate--entry-customer-message {
  font-size: 12px;
}
.block-order-estimate--entry-customer-point {
  color: #f00;
  font-size: 15px;
  font-weight: bold;
}
.block-order-estimate--uid-label {
  margin-bottom: 3px;
}
.block-order-estimate--uid-label-font {
  margin-right: 10px;
}
.block-order-estimate--uid-count {
  margin-top: 0;
}
.block-order-estimate--pwd {
  margin-top: 10px;
}
.block-order-estimate--pwd-label {
  margin-bottom: 3px;
}
.block-order-estimate--pwd-label-font {
  margin-right: 10px;
}
.block-order-estimate--pwd-count {
  margin-top: 0;
}
.block-order-estimate--mailnews {
  margin-top: 10px;
}
.block-order-estimate--mailnews-title {
  font-weight: bold;
}
.block-order-estimate--mailnews-label {
  margin-bottom: 3px;
  font-weight: bold;
  margin-right: 10px;
}
.block-order-estimate--mailnews-message {
  font-size: 12px;
}
.block-order-estimate--procedure {
  background: #fff;
  border: solid 6px #dcdcdc;
  margin: 0 0 20px 0;
  padding: 4px;
}
.block-order-estimate--dest-address-item-register-input-form .block-order-estimate--dest-address-nickname .constraint {
  text-align: right;
}
.block-order-estimate--dest-address-item-register-input-form .block-order-estimate--dest-address-nickname .constraint .required {
  margin: -38px 20px 16px 0;
  display: block;
}

/* 注文内容確認左サイドエリア */

.block-order-estimate--content {
  width: 820px;
  float: left;
}

/* お届け先情報 */

.block-order-estimate--confirmation {
  overflow: hidden;
}
.block-order-estimate--confirmation-list {
  width: 375px;
  display: inline-block;
  vertical-align: top;
}
.block-order-estimate--confirmation-list:nth-of-type(2n+1) {
  margin-right: 20px;
}
.block-order-estimate--confirmation-list li {
  padding: 0 0 20px 0;
  min-height: 185px;
}
.block-order-estimate--confirmation-list li p {
  margin-left: 0.5em;
}
.block-order-estimate--confirmation-list li:nth-child(3) {
  min-height: 120px;
}
.block-order-estimate--confirmation-list li p {
  margin-left: 0.5em;
}
.block-order-estimate--confirmation-title h3 {
  border-bottom: 1px #dcdcdc solid;
  padding-bottom: 5px;
  overflow: hidden;
  height: 35px;
}
.block-order-estimate--confirmation-title h3 span {
  float: right;
}
.block-order-estimate--confirmation-list-full li {
  padding: 0 0 20px 0;
}
.block-order-estimate--amazonpay-wallet {
  color: #333;
  border: 1px solid #dcdcdc;
  clear: both;
}
.block-order-estimate--amazonpay-wallet-header {
  background: #333;
  padding: 10px;
  color: #fff;
}
.block-order-estimate--amazonpay-wallet-content {
  margin: 15px auto;
  height: 270px;
}
.block-order-estimate--amazonpay-wallet-widget {
  margin: 0 auto;
  width: 600px;
}

/* 配送希望情報 */

.block-order-estimate--date-spec-confirmation {
  overflow: hidden;
}
.block-order-estimate--date-spec-confirmation .block-order-estimate--confirmation-list li {
  min-height: 90px;
}
.block-order-estimate--confirmation-message {
  color: #555;
  font-size: 12px;
}

/* ノベルティ商品のノベルティ選択 */

.block-order-estimate--novelty-item label {
  cursor: pointer;
}
.block-order-estimate--novelty-item {
  display: table;
  width: 100%;
  margin-bottom: 10px;
}
.block-order-estimate--novelty-item-image,
.block-order-estimate--novelty-item-goods {
  display: table-cell;
  vertical-align: middle;
}
.block-order-estimate--novelty-item-image {
  width: 200px;
}
.block-order-estimate--novelty-item-goods {
  padding-left: 10px;
  width: auto;
}
.block-order-estimate--novelty-item-image figure {
  width: 200px;
  height: 200px;
  background: #f5f5f5;
}

/* ご注文商品 */

.block-order-estimate--goods-list li {
  position: relative;
  overflow: hidden;
  margin: 0 0 10px 0;
}
.block-order-estimate--goods-item-image {
  float: left;
  margin: 0 20px 0 0;
  background: #f5f5f5;
  width: 200px;
  height: 200px;
}
.page-estimate .block-icon {
  margin: 0 15px 0 0;
}
.block-order-estimate--goods-item {
  float: left;
  width: 50%;
}
.block-order-estimate--goods-item-comment {
  overflow: hidden;
  margin-top: 10px;
}
.block-order-estimate--goods-price-items {
  float: right;
}
.block-order-estimate--amt {
  width: 140px;
  text-align: right;
  margin: 0 10px 0 0;
  font-weight: bold;
  color: #333;
}
.block-order-estimate--goods-item-name,
.block-order-estimate--goods-item-set-name {
  font-weight: bold;
  font-size: 16px;
  line-height: 1.6;
}

/* ご注文商品 注文明細拡張情報 */

.block-order-estimate--sales-detail-append-link-edit {
  text-decoration: underline;
}

/* その他 */

.block-order-estimate--sales-append-list {
  width: 100%;
}
.block-order-estimate--sales-append-list th {
  padding: 12px;
  text-align: left;
  font-weight: bold;
  vertical-align: top;
  background-color: #999;
  color: #fff;
  border-top: 1px solid #dcdcdc;
  border-left: 1px solid #dcdcdc;
  border-bottom: 1px solid #dcdcdc;
  width: 30%;
}

/* AmazonPayログイン */

.block-order-estimate--amazonpay-loginform {
  margin: 10px 0 0 0;
}
.block-order-estimate--amazonpay-loginform .form-label {
  text-align: left;
}

/* 備考 */

.block-order-estimate--comment-content textarea {
  width: 100%;
}

/* 注文内容確認右サイドエリア */

.block-order-estimate--order-terms-link {
  text-decoration: underline;
  cursor: pointer;
}
.block-order-estimate--agreebody {
  width: 100%;
  height: 400px;
}
.block-order-estimate--side-area {
  position: relative;
  float: right;
}
.block-order-estimate--side-contents {
  width: 320px;
  margin: 0 0 0 20px;
}
.block-order-estimate--procedure-container {
  padding: 14px;
  background: inherit;
}
.block-order-estimate--commit {
  text-align: center;
  margin: 0 0 10px 0;
}
.block-order-estimate--commit-btn {
  width: 100%;
  font-size: 20px;
  text-align: center;
  margin: 5px 0;
  padding: 14px 0;
  font-weight: bold;
}
.block-order-estimate--total {
  padding: 15px 0;
  margin: 20px 0;
  background: #fff;
  border-top: 1px #dcdcdc solid;
  border-bottom: 1px #dcdcdc solid;
  font-size: 16px;
}
.block-order-estimate--total > span {
  display: block;
  font-size: 26px;
  font-weight: bold;
  color: #444
}
.block-order-estimate .block-exchange-price {
  text-align: center;
  margin-bottom: 12px;
}
.block-order-estimate--total-price {
  font-size: 18px;
  font-weight: bold;
}
.block-order-estimate--total-tax {
  font-size: 14px;
}
.block-order-estimate--point-add {
  overflow: hidden;
  margin: 0 0 10px 0;
  border-bottom: solid 1px #dcdcdc;
  font-size: 14px;
}
.block-order-estimate--point-add dt {
  float: left;
  width: 40%;
}
.block-order-estimate--point-add dd {
  float: left;
  width: 60%;
  text-align: right;
}
.block-order-estimate--point-add-num {
  color: #f00;
  font-size: 16px;
}
.block-order-estimate--point-add dd + dd {
  width: 100%;
  color: #f00;
  font-size: 12px;
  text-align: left;
  padding-bottom: 20px;
}
.block-order-estimate--price-items {
  letter-spacing: -.4em;
  color: #555;
  margin: 20px 0 0 0;
}
.block-order-estimate--price-items dt {
  display: inline-block;
  letter-spacing: normal;
  width: 60%;
  margin: 0 0 10px 0;
}
.block-order-estimate--price-items dd {
  display: inline-block;
  letter-spacing: normal;
  text-align: right;
  width: 40%;
}

/* メッセージ「クール便追加料金を含む」 */

dd.block-order-estimate--cool-postage {
  width: 100%;
  text-align: right;
  margin: 0 0 10px 0;
}
.block-order-estimate--promotion-novelty-helper {
  border: 1px solid #f00;
  background: #fff;
  text-align: center;
  padding: 10px 0;
  margin: 0 0 10px 0;
  cursor: pointer;
}

/* お届け先の変更(ダイアログ)*/

.block-order-estimate--address-frame {
  background: #f8f8f8;
  max-width: 725px;
  margin: 0 auto;
}
.block-order-estimate--value-label {
  display: inline-block;
  width: 60px;
  text-align: center;
}

/* ×ボタン */

.block-order-estimate--address-frame-close {
  position: relative;
  cursor: pointer;
}
.block-order-estimate--address-frame-close span {
  display: block;
  position: absolute;
  top: 12px;
  right: 12px;
  width: 20px;
  height: 20px;
}
.block-order-estimate--address-frame-close span:before {
  position: absolute;
  top: 6px;
  right: 0;
  content: "";
  width: 15px;
  height: 2px;
  background: #fff;
  transform: rotate(45deg);
}
.block-order-estimate--address-frame-close span:after {
  position: absolute;
  top: 0;
  right: 6px;
  content: "";
  width: 2px;
  height: 15px;
  background: #fff;
  transform: rotate(45deg);
}

/* お届け先の変更 */

.block-order-estimate--address-frame h2 {
  color: #fff;
  background: #333;
  border-bottom: none;
  font-size: 16px;
  margin: 0;
  padding: 10px 10px 10px;
}
.block-order-estimate--dest-address-item-register-input-title {
  font-weight: bold;
}
.block-order-estimate--dest-address-select,
.block-order-estimate--amazonpay-address-select {
  padding: 5px 20px;
}
.block-order-estimate--dest-salesinclude-address-select,
.block-order-estimate--dest-salesinclude-address-note {
  padding: 0 20px;
}
.block-order-estimate--amazonpay-address-area p {
  margin-left: 20px;
}
.block-order-estimate--dest-address-list {
  padding: 20px;
}
.block-order-estimate--amazonpay-address-container {
  padding: 0 0 10px 0;
}
.block-order-estimate--dest-address-item,
.block-order-estimate--dest-address-item-register {
  position: relative;
  display: inline-block;
  width: 220px;
  height: 220px;
  vertical-align: top;
}
.block-order-estimate--dest-address-item-container {
  height: 130px;
  overflow-y: auto;
  overflow-x: hidden;
  margin: 5px 0 0 0;
}
.block-order-estimate--dest-address-item,
.block-order-estimate--dest-address-item-register {
  background: #fff;
  border: solid 1px #dcdcdc;
  margin: 0 5px 10px 0;
  padding: 10px;
}
.block-order-estimate--dest-address-item address {
  word-wrap: break-word;
}
.block-order-estimate--dest-address-change-btn {
  width: 100%;
  padding: 5px;
}
input.btn.btn-default.block-order-estimate--dest-address-register-btn {
  padding: 15px;
}
.block-order-estimate--dest-address-item-register .block-order-estimate--dest-address-item-buttons {
  position: absolute;
  top: 50%;
  margin: -20px 0 0 0;
}
.block-order-estimate--dest-address-change {
  text-align: right;
}
.block-order-estimate--dest-address-change,
.block-order-estimate--dest-address-item-buttons {
  height: 31px;
}
input.btn.btn-default.block-order-estimate--dest-address-change-dest-btn {
    padding: 5px 10px;
    font-size: 11px;
}
.block-order-estimate--dest-address-title.js-order-estimate-address-title {
    font-weight: bold;
    margin: 9px 0;
    background: #636363;
    text-align: center;
    color: #fff;
}
.block-order-estimate--dest-address-item-buttons__selected {
  cursor: default;
  background: #fffcfc;
  border: 1px solid #f00;
  color: #f00;
  font-weight: bold;
  display: table-cell;
  vertical-align: middle;
  text-align: center;
  width: 200px;
}

/* お届け先情報入力 */

.block-order-estimate--dest-address-item-register-input-form .fieldset-vertical,
.block-order-estimate--guest-address-input-form {
  background: #fff;
  border: solid 1px #dcdcdc;
  padding: 20px;
}
.block-order-estimate--dest-address-item-register-input-form .fieldset-vertical {
  margin: 10px 0;
}
.block-order-estimate--dest-address-name .checktype_name,
.block-order-estimate--dest-address-kana .checktype_kana,
.block-order-estimate--guest-address-name .checktype_name,
.block-order-estimate--guest-address-kana .checktype_kana {
  margin: 0 0 10px 0;
}

/* お届けサイクル */

.block-order-estimate--regular-cycle {
  width: 80%;
}
.block-order-estimate--regular-cycle th {
  padding: 12px;
  text-align: left;
  font-weight: bold;
  vertical-align: top;
  background-color: #999;
  color: #fff;
  border-top: 1px solid #dcdcdc;
  border-left: 1px solid #dcdcdc;
  border-bottom: 1px solid #dcdcdc;
  width: 30%;
}

/* ---- 注文完了(通常・ギフトフロー共通) ---- */

.block-order-complete--customerentry-wrapper {
  width: 1080px;
  background: #fff;
  border: solid 1px #dcdcdc;
  padding: 40px;
  margin: 0 auto 50px auto;
}
.block-order-complete--message {
  margin: 0 0 30px 0;
}
.block-order-complete--orderinfo dt {
  width: 30%;
  background: #f8f8f8;
  font-weight: bold;
  float: left;
}
.block-order-complete--orderinfo dt,
.block-order-complete--orderinfo dd {
  border-bottom: 1px solid #dcdcdc;
  padding: 8px 8px 8px 8px;
}
.block-order-complete--orderinfo dd {
  margin-left: 30%;
}
.block-order-complete--orderinfo dd:after {
  clear: both;
  display: block;
}
.block-order-complete--home {
  margin: 20px auto;
  text-align: center;
}
.block-order-complete--home-btn {
  padding: 20px;
  width: 300px;
}
.block-order-complete--customerentry-form {
  margin: 20px 0 0 0;
}
.block-order-complete--rules {
  margin: 10px 0 0 0;
}
.block-order-complete--orderid {
  width: 100%;
  margin-bottom: 10px;
}
.block-order-complete--orderid th {
  width: 30%;
  padding: 20px 30px;
}
.block-order-complete--orderid td {
  width: 70%;
  padding: 20px 30px;
}
.block-order-complete--salesinclude {
  width: 100%;
  margin-bottom: 10px;
}
.block-order-complete--salesinclude th {
  width: 30%;
}
.block-order-complete--salesinclude td {
  width: 70%;
}
.block-order-complete--convenience {
  width: 100%;
  margin-bottom: 10px;
}
.block-order-complete--convenience th {
  width: 30%;
}
.block-order-complete--convenience td {
  width: 70%;
}

/* ---------------------- */


/* ----ギフトフロー------- */


/* ---------------------- */


/* ---- 配送先選択 ---- */

.block-order-gift-dest h2 {
  font-weight: bold;
  font-size: 20px;
  color: #333;
  padding: 10px 0;
  margin: 0 0 10px 0;
}
.block-order-gift-dest--check-all {
  margin: 0 0 10px 0;
}
.block-order-gift-dest--list-wrapper,
.block-order-gift-dest--method-sender-info,
.block-order-gift-dest--address-item,
.block-order-gift-dest--method-sender-info-edit {
  background: #fff;
  border: solid 1px #dcdcdc;
  margin: 0 0 20px 0;
  padding: 20px 20px 20px 20px;
}

/* お届け先配送情報エリア */

.block-order-gift-dest--address-item {
  background: #f8f8f8;
}
.block-order-gift-dest--address-item-title {
  font-weight: bold;
}
.block-order-gift-dest--address-item address {
  margin: 5px 0 5px 20px;
}
.block-order-gift-dest--address-change {
  text-align: right;
}
.block-order-gift-dest--address-error {
  margin: 0 0 10px 0;
}

/* 贈り主情報エリア */

.block-order-gift-dest--value-label {
  display: inline-block;
  width: 60px;
  text-align: center;
}
.block-order-gift-dest--method-sender-change label {
  font-weight: bold;
}
.block-order-gift-dest--method-sender-info address {
  margin: 0 0 10px 0;
}
.block-order-gift-dest--address-item {
  background: #f8f8f8;
}
.block-order-gift-dest--address-customer .block-order-gift-dest--address-item {
  margin-top: 20px;
}
.block-order-gift-dest--method-sender-info-edit {
  margin: 10px 0 0 0;
}
.block-order-gift-dest--method-sender-btn {
  text-align: right;
}
.block-order-gift-dest--action-buttons {
  margin: 0 0 20px 0;
}

/* ---- 配送先商品追加 ---- */

.block-order-gift-select h2 {
  font-weight: bold;
  font-size: 20px;
  color: #333;
}
.block-order-gift-select h3 {
  font-size: 16px;
  font-weight: bold;
}
.block-order-gift-select--sender-info,
.block-order-gift-select--delivery-dest-content,
.block-order-gift-select--delivery-date,
.block-order-gift-select--payment-content,
.block-order-gift-select--point-use-select {
  background: #fff;
  border: solid 1px #dcdcdc;
  margin: 0 0 20px 0;
  padding: 20px 20px 20px 20px;
}
.block-order-gift-select--sender-info {
  margin: 0 0 5px 0;
}
.block-order-gift-select--delivery-dest-add {
  padding: 5px 0 5px 0;
  margin: 0 0 10px 0;
  text-align: right;
}
.block-order-gift-select--delivery-dest-goods-select,
.block-order-gift-select--point-use-select {
  padding: 10px 10px 10px 10px;
  margin: 0 0 0 0;
}

/* お届け先 */

.block-order-gift-select--delivery-dest-header {
  position: relative;
}
.block-order-gift-select--delivery-dest-delete {
  position: absolute;
  right: 0;
  top: 3px;
}
.block-order-gift-select--delivery-dest-nickname {
  font-weight: bold;
  margin-bottom: 10px;
}
.block-order-gift-select--delivery-dest-nickname + p {
  margin-bottom: 10px;
}
.block-order-gift-select--delivery-dest-address address {
  margin: 0 0 20px 0;
}
.block-order-gift-select--delivery-dest-goods-content-list table {
  width: 100%;
}
.block-order-gift-select--delivery-dest-goods-name {
  width: 800px;
}
.block-order-gift-select--delivery-dest-goods-qty {
  text-align: right;
}
.block-order-gift-select--delivery-dest-goods-qty input {
  text-align: right;
  margin: 0 0 0 10px;
}

/* お届け先商品 */

.block-order-gift-select--delivery-dest-goods-content-info,
.block-order-gift-select--delivery-dest-goods-noshi {
  width: 100%;
  margin: 0 0 20px 0;
}
.block-order-gift-select--delivery-dest-goods-price,
.block-order-gift-select--delivery-dest-goods-total,
.block-order-gift-select--delivery-dest-goods-noshi-charge {
  width: 18%;
  text-align: right;
}
.block-order-gift-select--delivery-dest-goods-sales-qty {
  width: 100px;
}
.block-order-gift-select--delivery-dest-goods-sales-qty input {
  text-align: right;
}
.block-order-gift-select--delivery-dest-goods-content-info-delete,
.block-order-gift-select--delivery-dest-goods-noshi-edit {
  width: 70px;
}
.block-order-gift-select--delivery-dest-goods-noshi th,
.block-order-gift-select--delivery-dest-goods-noshi td {
  text-align: left;
}
.block-order-gift-select--delivery-dest-total table {
  margin-left: auto;
}

/* 配送方法 */

.block-order-gift-select--delivery-date-content {
  display: table;
}
.block-order-gift-select--delivery-date-content dt,
.block-order-gift-select--delivery-date-content dd {
  display: table-cell;
}

/* お支払い情報 */

.block-order-gift-select--method-list li {
  margin: 0 0 10px 0;
}
.block-order-gift-select--method-list li .help-block {
  display: inline-block;
  margin-left: 30%;
}
.block-order-gift-select--method-list label {
  cursor: pointer;
}
.block-order-gift-select--current-point {
  margin: 0 0 10px 0;
}
.block-order-gift-select--current-point-num {
  font-weight: bold;
}
.block-order-gift-select--coupon-available-btn {
  margin: 0 0 0 14px;
}
.block-order-gift-select--point-use-select {
  background: #f8f8f8;
}
.block-order-gift-select--point-use-select label {
  cursor: pointer;
  padding: 0 23px 0 5px;
}

/* その他 */

.block-order-gift-select--sales-append-content {
  background: #fff;
  border: solid 1px #dcdcdc;
  margin: 0 0 20px 0;
  padding: 20px 20px 0 20px;
}
.block-order-gift-select--sales-append-content .fieldset {
  margin-top: 0;
  margin-bottom: 20px;
}
.block-order-gift-select--sales-append-content .fieldset .form-group {
  border-left: #e5e5e5 1px solid;
  border-right: #e5e5e5 1px solid;
}
.block-order-gift-select--sales-append-content .form-group:not(:last-child) {
  border-bottom: solid 1px #dcdcdc;
}

/* ---- のし・ラッピング設定 ---- */

.block-order-gift-noshi h1 {
  font-weight: bold;
  font-size: 24px;
  color: #333;
  padding: 15px 0 0 0;
}
.block-order-gift-noshi h2 {
  font-weight: bold;
  font-size: 20px;
  color: #333;
}
.block-order-gift-noshi h3 {
  font-size: 16px;
  color: #333;
  font-weight: bold;
}
.block-order-gift-noshi--sender {
  font-weight: bold;
}
.block-order-gift-noshi--sender p {
  margin-bottom: 10px;
}
.block-order-gift-noshi--sender address {
  margin-bottom: 15px;
}
.block-order-gift-noshi--noshi-select,
.block-order-gift-noshi--purpose-select,
.block-order-gift-noshi--paper-wrapper,
.block-order-gift-noshi--nameprint-wrapper,
.block-order-gift-noshi--covertype-select,
.block-order-gift-noshi--wrap-select,
.block-order-gift-noshi--bag-wrapper {
  background: #fff;
  border: solid 1px #dcdcdc;
  margin: 0 0 20px 0;
  padding: 20px 20px 20px 20px;
}
.block-order-gift-noshi--noshi-select li,
.block-order-gift-noshi--purpose-select li,
.block-order-gift-noshi--paper-wrapper li,
.block-order-gift-noshi--nameprint-wrapper li,
.block-order-gift-noshi--covertype-select li,
.block-order-gift-noshi--wrap-select li,
.block-order-gift-noshi--bag-wrapper li {
  display: inline-block;
  vertical-align: top;
  margin: 0 10px 0 0;
}
.block-order-gift-noshi--paper-item-price,
.block-order-gift-noshi--bag-item-price,
.block-order-gift-noshi--wrap-item-price {
  display: block;
}
.block-order-gift-noshi--paper-message,
.block-order-gift-noshi--covertype-message,
.block-order-gift-noshi--wrap-message,
.block-order-gift-noshi--bag-message {
  background: #f8f8f8;
  border: solid 1px #dcdcdc;
  margin: 10px 0 10px 0;
  padding: 20px 20px 20px 20px;
  width: 60%;
}
.block-order-gift-noshi--setting-message {
  text-align: center;
  font-weight: bold;
}
.block-order-gift-noshi--nameprint-input {
  margin: 15px 0 0 0;
}
.block-order-gift-noshi--setting-all-btn {
  margin: 0 0 20px 0;
}

/* ---- 注文内容確認(ギフトフロー) ---- */

.block-order-gift-confirmation h2 {
  font-weight: bold;
  font-size: 20px;
  color: #333;
}
.block-order-gift-confirmation h3 {
  font-size: 16px;
  color: #333;
  font-weight: bold;
  margin: 0 0 12px 0;
}
.block-order-gift-confirmation table {
  width: 100%;
}
.block-order-gift-confirmation table .block-order-gift-confirmation--item-qty-header,
.block-order-gift-confirmation table .block-order-gift-confirmation--sending-item-qty-header {
  width: 6em;
}
.block-order-gift-confirmation--item-image figure,
.block-order-gift-confirmation--sending-item-image figure {
  width: 200px;
  height: 200px;
  background: #f5f5f5;
}
.block-order-gift-confirmation--item-image,
.block-order-gift-confirmation--sending-item-image {
  width: 220px;
}
.block-order-gift-confirmation--order-item-wrapper,
.block-order-gift-confirmation--order,
.block-order-gift-confirmation--destination-address-wrapper,
.block-order-gift-confirmation--other-wrapper,
.block-order-gift-confirmation--novelty-content,
.block-order-gift-confirmation--order-comment,
.block-order-gift-confirmation--payment-method-wrapper {
  background: #fff;
  border: solid 1px #dcdcdc;
  margin: 0 0 20px 0;
  padding: 20px 20px 20px 20px;
  overflow: hidden
}
.block-order-gift-confirmation--order-item-detail {
  float: left;
  width: 65%;
  vertical-align: top;
}
.block-order-gift-confirmation--order-item-summary {
  float: right;
  width: 32%;
  padding: 0 0 0 3%;
}
.block-order-gift-confirmation--order-item-summary-table th,
.block-order-gift-confirmation--point-summary th {
  width: 180px;
}
.block-order-gift-confirmation--order-item-summary-table td,
.block-order-gift-confirmation--point-summary td {
  text-align: right;
}
.block-order-gift-confirmation--item-qty-header {
  width: 50px;
}
.block-order-gift-confirmation--item-amount,
.block-order-gift-confirmation--item-qty {
  text-align: right;
}

/* ノベルティ商品のノベルティ選択 */

.block-order-gift-confirmation--novelty-item label {
  cursor: pointer;
}
.block-order-gift-confirmation--novelty-item {
  display: table;
  margin-bottom: 10px;
  width: 100%;
}
.block-order-gift-confirmation--novelty-item-image,
.block-order-gift-confirmation--novelty-item-goods {
  display: table-cell;
  vertical-align: middle;
}
.block-order-gift-confirmation--novelty-item-image {
  width: 200px;
}
.block-order-gift-confirmation--novelty-item-goods {
  padding-left: 10px;
  width: auto;
}
.block-order-gift-confirmation--novelty-item-image figure {
  width: 200px;
  height: 200px;
  background: #f5f5f5;
}

/* 配送情報 */

.block-order-gift-confirmation--shipping-address {
  float: left;
  width: 65%;
  vertical-align: top;
}
.block-order-gift-confirmation--shipping-info {
  float: right;
  width: 35%;
  padding: 0 0 0 3%;
}
.block-order-gift-confirmation--shipping-info-detail th {
  width: 150px;
}

/* お届け先 */

.block-order-gift-confirmation--destination-address {
  margin: 0 0 10px 0;
}
.block-order-gift-confirmation--sending-item-qty-header {
  width: 50px;
}
.block-order-gift-confirmation--sending-item-qty {
  text-align: right;
}
.block-order-gift-confirmation--sending-item-comment-header,
.block-order-gift-confirmation--sending-item-noshi-header {
  width: 220px;
}

/* その他 */

.block-order-gift-confirmation--other-detail th {
  width: 300px;
}
.block-order-gift-confirmation--order-comment textarea {
  width: 100%;
}
.block-order-gift-confirmation--order-comment-message {
  font-weight: bold;
  margin: 50px 0;
  text-align: center;
}
.block-order-gift-confirmation--order-comment-message.top {
  margin-bottom: 20px;
}
.block-goods-list--pager.pager {
  text-align: center;
  margin: 55px 0;
}
.block-goods-list--pager .pager-total {
  display: block;
  margin: 15px 0;
}
.pagination li {
  margin-left: 5px;
}
.block-thumbnail-t--goods .price,
.block-thumbnail-t--goods .net-price,
.block-thumbnail-t--goods .default-price,
.block-thumbnail-t--goods .exchange-price,
.block-thumbnail-t--goods .block-exchange-price--rate-dt {
  text-align: left;
}

/* ----テーブル---- */

.table,
.table td,
.table th {
  border-collapse: collapse;
  border: 1px solid #c8c8c8;
}
.table td,
.table th {
  padding: 12px 15px;
}
.table th {
  font-weight: bold;
  background-color: #f8f8f8;
}

/* ----テキストカラー----*/

.text-muted {
  color: #777;
}
.text-warning {
  color: #8a6d3b;
}
.text-danger {
  color: #a94442;
}
.price {}
.default-price {
  text-decoration: line-through;
  font-weight: bold;
}
.net-price {}
.exchange-price {}

/* ----テキストサイズ----*/

.price-small {
  font-size: 0.8em;
}
.default-price {
  font-size: 0.9em;
}
.default-price .price-small {
  font-size: 1em;
}

/* ----プロモーションメッセージ--- */

.promotion-criteria,
.promotion-benefit {
  color: #f00;
  font-weight: bold;
}

/* ----商品説明リスト---- */

.goods-detail-description {
  display: table;
  width: 100%;
  margin-bottom: 10px;
  margin-top: 10px;
}
.goods-detail-description dt {
  display: table-cell;
  width: 100px;
  font-weight: bold;
  padding: 6px 15px 6px 0;
  position: relative;
}
.goods-detail-description dt:before {
  position: absolute;
  content: "";
  display: block;
  height: 80%;
  width: 1px;
  background: #666;
  right: 0;
  top: 10%;
}
.goods-detail-description dd {
  display: table-cell;
  padding: 6px 0 6px 15px;
}

/* ----パネル---- */

.panel {
  padding: 10px;
  overflow: hidden;
  border: solid 1px #dcdcdc;
  background: #fff;
}

/* ----バッジ---- */

.badge {
  display: inline-block;
  min-width: 10px;
  padding: 3px 7px;
  line-height: 1;
  vertical-align: middle;
  white-space: nowrap;
  text-align: center;
  border-radius: 10px;
  color: #fff;
  background-color: #777;
}
.badge:empty {
  display: none;
}

/* ----ページャー---- */

.pager {
  margin: 50px 0 60px 0;
  text-align: center;
}
.pager > * {
  display: inline-block;
  vertical-align: top;
}
.pager-scope {
  display: inline-block;
  padding: 3px;
  margin-right: 5px;
}
.pager-total {
  display: block;
  margin: 0 0 25px 0;
}
.pager-total .pager-count {
  font-weight: bold;
}
.pagination {
  display: inline-block;
  margin: 0 5px;
}
.pagination > * {
  border: unset;
}
.pagination > li {
  list-style-type: none;
  float: left;
  margin: 0 3px;
}
.pagination > li:hover {}
.pagination > li.pager-current span {
  color: #ffffff;
  border: none;
}
.pagination span,
.pagination a {
  display: block;
  line-height: 50px;
  text-align: center;
  text-decoration: none;
  width: 50px;
  height: 50px;
}
.pagination a {
  border: 1px solid #dcdcdc;
  -webkit-transition: all .4s ease;
  -moz-transition: all .4s ease;
  transition: all .4s ease
}
.pagination a:hover {
  border: 1px solid #777;
}
.pagination > .disabled {
  color: #777;
}
.pager-previous a,
.pager-first a,
.pager-next a,
.pager-last a {
  position: relative;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
}
.pager-previous a:after,
.pager-first a:before,
.pager-first a:after,
.pager-next a:after,
.pager-last a:before,
.pager-last a:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  width: 6px;
  height: 6px;
}
.pager-first a:before {
  left: 48%;
  border-top: 1px #444 solid;
  border-left: 1px #444 solid;
  margin: -3px 0 0 -2px;
  transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
}
.pager-first a:after {
  left: 56%;
  border-top: 1px #444 solid;
  border-left: 1px #444 solid;
  margin: -3px 0 0 -2px;
  transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
}
.pager-previous a:after {
  left: 50%;
  border-top: 1px #444 solid;
  border-left: 1px #444 solid;
  margin: -3px 0 0 -2px;
  transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
}
.pager-next a:after {
  right: 47%;
  margin: -3px 0 0 2px;
  border-top: 1px #444 solid;
  border-right: 1px #444 solid;
  transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
}
.pager-last a:before {
  right: 44%;
  margin: -3px 0 0 2px;
  border-top: 1px #444 solid;
  border-right: 1px #444 solid;
  transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
}
.pager-last a:after {
  right: 52%;
  margin: -3px 0 0 2px;
  border-top: 1px #444 solid;
  border-right: 1px #444 solid;
  transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
}

/* ----画像センタリング配置---- */

.img-center {
  display: flex;
  justify-content: center;
  align-items: center;
}
.img-center img {
  flex-shrink: 0;
  text-align: center;
  max-height: 100%;
  max-width: 100%;
  width: auto;
  height: auto;
}

/* ----ツールチップ---- */

.balloontip {
  min-width: 20px;
  padding: 10px;
  border-radius: 6px;
  opacity: 1;
  z-index: 32767;
  text-align: left;
  font-size: 12px;
  border: 1px solid rgb(119, 119, 119);
  box-shadow: rgb(85, 85, 85) 4px 4px 4px;
  color: rgb(255, 255, 255);
  background: #333;
}

/* ----ドロップダウン---- */

.dropdown {
  z-index: 11000;
}
.dropdown li {
  background: #444;
}
.dropdown li span {
  display: block;
  padding: 13px 15px;
  margin: 0;
  text-decoration: none;
  line-height: 1;
  color: #fff;
  cursor: pointer;
}
.dropdown li span:hover {
  background: #616d0b;
}

/* ----モーダルダイアログ---- */

.modal-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000;
  opacity: 0.5;
  z-index: 10000;
}
.modal-overlay-alert {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000;
  opacity: 0.5;
  z-index: 10002;
}
.modal-alert {
  width: 400px;
  z-index: 10003;
}
.modal-dialog {
  width: 600px;
  z-index: 10001;
}
.modal-header {
  padding: 15px 20px 15px;
  font-size: 17px;
  font-weight: bold;
  clear: both;
  border-bottom: none;
  line-height: 1;
  color: #fff;
  background-color: #333;
}
.modal-content {
  background: #fff;
}
.modal-body {
  padding: 20px;
}
.modal-body p {
  margin-bottom: 10px;
}
.modal-body li {
  border-bottom: 1px dotted #444;
}
.modal-body li a {
  padding: 12px;
  color: #4da7ba;
  display: flex;
  max-width: 560px;
  font-size: 16px;
}
.modal-body li a i {
  margin: 0 10px 0 auto;
  color: #444;
  font-size: 16px;
}
.modal-body li a:hover {
  text-decoration: none;
}
.modal-body li a:hover i {
  color: #4da7ba;
  text-decoration: none;
}
.modal-footer {
  padding: 0 10px 15px;
}
.modal-alert .modal-footer {
  text-align: center;
}
.modal-alert .modal-footer input {
  width: 40%;
}
.modal-close {
  display: block;
  width: 18px;
  cursor: pointer;
  float: right;
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  color: #fff;
}
.modal-dialog .modal-footer {
  text-align: center;
}
.modal-dialog .modal-footer .btn {
  min-width: 150px;
  margin-right: 5px;
}

/* ----ヘッダー警告---- */

.header-warning {
  position: relative;
  padding: 10px;
  background: #fffacd;
  border-bottom: 1px solid #b0c4de;
}
.header-warning-contents {
  display: block;
  padding-right: 18px;
  text-align: center;
  background: transparent;
}
.header-warning-close {
  display: block;
  position: absolute;
  width: 18px;
  cursor: pointer;
  font-weight: bold;
  top: 10px;
  right: 10px;
  background: transparent;
}

/* ----検索エンジン向けH1タグ---- */

.optimaized-h1 {
  margin: 0;
  font-size: 10px;
}

/* ----レビュー---- */

.star-base {
  cursor: pointer;
  width: 120px;
  height: 30px;
  background: url("../../img/usr/user_review/star.png");
  background-repeat: no-repeat;
  background-size: cover;
  -moz-background-size: cover;
  -webkit-background-size: cover;
}
.star-select {
  width: 120px;
  height: 30px;
  background: url("../../img/usr/user_review/star.png");
  background-repeat: no-repeat;
  background-size: cover;
  -moz-background-size: cover;
  -webkit-background-size: cover;
}

/* ----注文ステータス---- */

.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 {
  width: 300px;
  height: auto;
  min-height: 50px;
  border: #ccc solid 1px;
  padding: 5px 0;
}
.status-message,
.status-percentage {
  display: table-cell;
  vertical-align: middle;
  padding: 0 5px;
}
.status-message {
  width: 70%;
  font-size: 12px;
}
.status-percentage {
  width: 30%;
  color: #031241;
  font-weight: bold;
  font-size: 24px;
  text-align: center;
}
[class^="status-progress"] {
  display: block;
  position: relative;
  width: 96%;
  height: 14px;
  margin: 0 auto;
  background: #ccc;
}
[class^="status-progress"]:after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  height: 14px;
  border-right: #031241 solid 4px;
  background: #1e5799;
}
.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 solid 4px;
  background: #f79800;
}
.status-return [class^="status-progress"]:after {
  border-right: #028900 solid 4px;
  background: #00ab0b;
}

/* ----ホワイトスペース制御----*/

.white-space-pre-wrap {
  white-space: pre-wrap;
}

/* ----表示・非表示---- */

.hidden {
  display: none;
}
.show {
  display: block;
}

.block-icon-image-double-small.block-icon-image--angle-right {
    display: none;
}
.block-login--display-password {
    margin-left: 10px;
}

.alert {
    background-image: unset;
}