@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: 15px;
    line-height: 1.5;
    color: #000;
}

/* ----ヘッドライン---- */
h1,
.h1 {
    font-weight: bold;
    font-size: 24px;
    color: #E50012;
    text-align: center;
    margin: 40px 0;
}

h2 {
    margin: 20px 0;
    font-size: 22px;
    font-weight: bold;
}

h2.after-border {
    text-align: center;
    line-height: 140%;
    padding-bottom: 0;
    margin-bottom: 50px;
    position: relative;
    letter-spacing: 0.1em;
    font-weight: bold;
    font-size: 30px;
    color: #E60012;
}

h2.block-top-free6--header.after-border.bg-after-color {
    border-top: 1px solid #E6E6E4;
    padding-top: 47px;
}

h2.block-top-free5--header.after-border.bg-after-color {
    border-top: 1px solid #E6E6E4;
    padding-top: 47px;
}

.block-recent-item--header {
    font-size: 22px;
    text-align: center;
    border-top: none;
    padding: inherit;
    text-align: center;
    line-height: 140%;
    position: relative;
    letter-spacing: 0.1em;
}

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: none;
    color: #000;
}

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;
    /*変化に掛かる時間*/
}

.block-globalnav--item-list a {
    text-decoration: none !important;
}

/* ----タグ---- */
img {
    max-width: 100%;
}

hr {
    border: 0;
    border-bottom: 1px dotted #ccc;
}

*:focus {
    outline: none;
}

.price {
    color: #000;
}

/* ----スクロールバー---- */
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---- */
/* ----入力フォーム共通---- */
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: #F8F9F2;
}

.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: #F8F9F2;
    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;
color: #E60012;
    background-color: #fff;
    border: 1px solid #E60012;
}

/* ----ラジオボタン、チェックボックス---- */
.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;
}

.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: #E50012;
    border-radius: 3px;
    color: #fff;
    display: flex;
    align-items: center;
    padding: 8px 0;
    margin-bottom: 40px;
    font-weight: bold;
}

.block-icon-image {
    background-image: none;
    display: none;
}

.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: #F8F9F2;
    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: initial;
    margin: initial;
}

.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 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: flex;
    justify-content: space-between;
    width: 100%;
    overflow: hidden;
    background: #fff;
    margin: inherit;
}

.block-login--member-frame {
    display: table-cell;
    margin-bottom: 50px;
    padding: 20px;
    border: 1px #dcdcdc solid;
    width: 47%;
}

.block-login--social-frame {
    width: 47%;
}

.block-login--amazon-body {
    display: block;
    width: inherit;
}

.block-login--amazon-body .common_headline2_ {
    display: none;
}

.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: 110%;
    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;
    margin-left: 50px;
}

.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-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-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 250px;
    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-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;
    height: 200px;
}

.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--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;
margin-bottom: 20px;
}

.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%;
}

.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;
}

.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: 35%;
    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 0;
}

.block-goods-list--pager .pager-total {
    display: none;
    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: #F8F9F2;
}

/* ----テキストカラー----*/
.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;
    object-fit: cover;
    border-radius: 8px;
    width: 100%;
    height: 100%;
}

.block-goods-gallery .img-center img {
    border-radius: 0;
}

/* ----ツールチップ---- */
.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;
}

/* ----サイトカラー設定---- */
/* ヘッダーニュース */
#header-news {
    background: #000;
}

/* ボーダーカラー */
.border-color {
    border-color: #000000 !important;
}

/* テキストカラー */
.text-color {
    color: #da9f34 !important;
}

/* テキストホバー時カラー */
.text-hover-color {
    -webkit-transition: all .4s ease;
    -moz-transition: all .4s ease;
    transition: all .4s ease;
}

a:hover {
    /*color: #ff8363 !important;*/
    -webkit-transition: all .4s ease;
    -moz-transition: all .4s ease;
    transition: all .4s ease;
}

.bg-before-color:before {
    background-color: #000000 !important;
}

.bg-after-color:after {
    background-color: none;
}

/* ボタンカラー */
.btn-default {
    color: #333;
    background-color: #e5e5e5;
}

#cart_gift {
    color: #fff;
    background-color: #000000 !important;
}

.btn-secondary {
    color: #fff;
    background-color: #666;
}

/* 左メニュー/絞り込み表示 */
.pane-left-menu #block_of_filter {
    display: none;
}

.block-icon-image-double-small.block-icon-image--angle-right {
    display: none;
}

.block-login--display-password {
    margin-left: 10px;
}

.block-order-estimate--return-agree {
    padding: 10px 10px;
}

.block-login--pwd input[type='password'] {
    width: 280px;
}

.block-login--display-password {
    display: block;
}