﻿@charset "UTF-8";

/* ----注文フローステップ---- */

/* ----商品購入規約---- */

.block-goods-agreement {
  margin: 10px;
}

.block-goods-agreement--header {
  margin: -10px -10px 0 -10px;
}

/* ----カートアイテム ---- */

.block-cart--body {
  padding: 10px;
}

.block-cart--order-btn-gift {
  background: #ffa200;
  border: #d28500 1px solid;
}

.block-cart--subtotal-container,
.block-cart--promotion-freespace {
  padding-bottom: 10px;
}

.block-cart--contents {
  border: 1px solid #dcdcdc;
  border-bottom: none;
}

.block-cart--goods-list li {
  padding: 10px;
  background-color: #fff;
  border-bottom: 1px solid #dcdcdc;
}

.block-cart--goods-list-item-name,
.block-cart--goods-list-item-price,
.block-cart--goods-point-info .block-cart--goods-point {
  font-weight: bold;
}

.block-cart--goods-list-item-input {
  display: table;
  width: 100%;
}

.block-cart--goods-list-item-qty,
.block-cart--goods-list-item-calc,
.block-cart--goods-list-item-delete {
  display: table-cell;
}

.block-cart--goods-list-item-qty {
  width: 120px;
}

.block-cart--goods-list-item-qty > input {
  width: 110px;
}

.block-cart--goods-list-item-calc {
  width: 80px;
}

.block-cart--goods-list-item-calc-btn {
  width: 70px;
}

.block-cart--goods-list-item-delete {
  text-align: right;
}

.block-cart--goods-list-item-delete-btn {
  color: #333;
  border: none;
  text-decoration: underline;
  background: none;
}

.block-cart--infomation {
  background: #fff;
  border: 1px solid #666;
  padding: 10px;
}

.block-cart--continue-shopping {
  text-align: center;
  margin: 10px;
}

.block-cart--continue-shopping-link {
  text-decoration: underline;
}

.block-cart--amazonpay {
  padding: 10px;
  border: 1px solid #dcdcdc;
  background: #fff;
}

.block-cart--amazonpay-description {
  text-align: left;
  margin: 5px 0;
}

.block-cart--amazonpay-error{
  color: #a94442
}

.block-promotion-message--content {
  border: 1px solid #f00;
  background-color: #fff;
  text-align: center;
  padding: 10px;
  margin: 10px 0;
  font-size: 12px;
}

.block-promotion-message--content .promotion-benefit {
  color: #f00;
  font-weight: bold;
  font-size: 13px;
}

.block-cart--goods-list-image {
  width: 110px;
  display: table-cell;
  vertical-align: top;
}

.block-cart--goods-list-image figure {
  width: 110px;
  height: 110px;
  background: #f5f5f5;
}

.block-cart--goods-list-item-container {
  display: table-cell;
  vertical-align: top;
  padding-left: 10px;
  word-wrap: break-word;
  font-size: 14px;
}

.block-cart--goods-list-item-price {
  color: #333;
}

.block-cart--procedure-container .action-buttons {
  width: 100%;
  margin-bottom: 10px;
  display: table;
  table-layout: fixed;
}

.block-cart--procedure-container .action-buttons .action {
  width: 100%;
  display: table-cell;
}

.block-cart--procedure-container .action-buttons .action .btn {
  margin-top: 0;
  font-size: 16px;
}

.block-cart--procedure-container .action-buttons .action:first-child {
  padding-right: 5px;
}

.block-cart--procedure-container .action-buttons .action:last-child {
  padding-left: 5px;
}

.block-cart--promotion-criteria-list-container {
  padding-bottom: 10px;
}

.promotion-criteria-list-message {
  text-align: center;
}

.promotion-criteria-list-message > span {
  color: #f00;
  font-weight: bold;
  font-size: 13px;
}

.block-cart--subtotal-container .block-cart--subtotal {
  font-size: 16px;
}

.block-cart--subtotal-container .block-cart--subtotal-price,
.block-cart--promotion-discount-price {
  color: #f00;
  font-weight: bold;
}

.block-cart--procedure-container {
  background-color: #fff;
}

.block-cart--procedure-container__fixed {
  padding: 10px;
  border-bottom: 1px solid #dcdcdc;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100;
}

/* ----AmazonPayV2ボタン押下後表示メッセージ---- */
.block-cart--amazonpay-alert{
  display: none;
  color: #a94442;
}


/* ----注文方法指定画面---- */

.block-order-method--wrapper{
  margin-bottom: 55px;
}

/* 共通設定 */
.block-order-method {
  margin: 15px;
}

h1.block-order-flow--step {
  margin: 0 -15px 17px -15px;
  text-align: center;
  font-size: 1.6rem;
  line-height: 1.3;
}

.block-order-flow--step1 {
  font-size: 14px;
}

.block-order-method h2 {
  margin: 0 -15px 17px -15px;
  padding: 15px 15px;
  font-size: 1.6rem;
  line-height: 1.3;
  background-color: #efefef;
}

.block-order-method input[type="submit"]{
  padding: 8px 15px;
  background-color: #000000;
  color: #ffffff;
  font-size: 1.2rem;
  min-height: auto;
  line-height: 1.2;
  border-radius: 20px;
}

.block-order-method--contents{
}
/* ご注文主 */
.block-order-method--orderer{
  margin-bottom: 39px;
}
.block-order-method--orderer-detail {
  padding: 0 13px;
}
.block-order-method--orderer-name {
  padding-bottom: 22px;
}

.block-order-method--dest-title{
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 0 -15px 21px -15px;
  padding: 10px 15px;
  background-color: #efefef;
}
.block-order-method--dest-title h2{
  margin: 0;
  padding: 0;
}



.block-order-method--host-title-confirmation {
  background: #fff;
  border: solid 1px #dcdcdc;
  padding: 10px;
  margin-bottom: 10px;
}

.block-order-method--value-label {
  display: block;
}

.block-order-method--host-name {
  font-weight: bold;
}

.block-order-method--host .fieldset-vertical {
  background: #fff;
  border: solid 1px #dcdcdc;
  margin: 0;
}

.block-order-method--host-content .form-group:not(:last-child) {
  border-bottom: solid 1px #dcdcdc;
}

.block-order-method--host-content .form-group {
  padding: 10px;
  margin: 0;
}

.block-order-method--dest-input .fieldset-vertical {
  background: #fff;
  border: solid 1px #dcdcdc;
  margin: 0;
}

.block-order-method--dest-input .form-group:not(:last-child) {
  border-bottom: solid 1px #dcdcdc;
}

.block-order-method--dest-input .form-group {
  padding: 10px;
  margin: 0;
}

/* お届け先 */
.block-order-method--dest{
  margin-bottom: 41px;
}
.block-order-method--dest-content {
  border-bottom: none;
}

.block-order-method--dest-content .block-order-method--sender-message {
  padding-bottom: 5px;
}

.block-order-method--dest-item-title {
}

.block-order-method--dest-item{
  margin-top: 10px;
}
.block-order-method--dest-item:first-of-type{
  margin: 0;
  padding: 0;
  border: none;
}

.block-order-method--amazonpay-dest-title{
  font-weight: bold;
}

.block-order-method--dest-item-title>input{
  display: none;
}
.block-order-method--dest-item-title>input + label{
  display: block;
  padding-left: 33px;
  position:relative;
  line-height: 21px;
  margin-bottom: 5px;
  border: 1px #ffffff solid;
  padding: 13px 17px 20px 41px;
  transition: all .4s ease;
}
.block-order-method--dest-item-title>input + label::before{
  content: "";
  display: block;
  position: absolute;
  top: 14px;
  left: 14px;
  width: 19px;
  height: 19px;
  border: 1px solid #AAAAAA;
  border-radius: 50%;
}
.block-order-method--dest-item-title>input:checked + label{
  border: 1px #707070 solid;
}
.block-order-method--dest-item-title>input + label::after{
  content: "";
  display: block;
  position: absolute;
  top: 17px;
  left: 17px;
  width: 13px;
  height: 13px;
  background: #000000;
  border-radius: 50%;
  transition: all .4s ease;
  opacity: 0;
}
.block-order-method--dest-item-title>input:checked + label::after{
  opacity: 1;
}
.block-order-method--dest-item-nickname{
  display: block;
  font-size: 1.4rem;
  font-weight: bold;
  margin-bottom: 21px;
}
.block-order-method--dest-item address{
  font-size: 1.4rem;
}

.block-order-method--dest-item-edit{
  display: flex;
  justify-content: flex-end;
  margin-top: 21px;
  margin-right: -2px;
}
.block-order-method--dest-item-edit input{
  display: block;
  padding: 4px 24px;
  border-radius: 30px;
  transition: all .4s ease;
  opacity: 0.3 !important;
  pointer-events: none;
}
.block-order-method--dest-item input + label .block-order-method--dest-item-edit input{
  padding: 8px 18px;
}
.block-order-method--dest-item input:checked + label .block-order-method--dest-item-edit input{
  opacity: 1 !important;
  pointer-events: auto;
}


.block-order-method--dest #addressBookWidgetDiv {
  background: #fff;
  padding: 10px;
}

.block-order-method--dest-change {
  background: #fff;
  padding: 10px;
  margin-bottom: 10px;
  border: 1px solid #dcdcdc;
  width: auto;
}

.block-order-method--dest-title-salesinclude {
  background: #fff;
  font-weight: bold;
  font-size: 15px;
}

.block-order-method--dest-note-salesinclude {
  background: #fff;
}

/* お支払い情報 */

.block-order-method--payment-content {
}

.block-order-method--payment-method-select li,
.block-order-method--point-use-select li {
  margin: 5px 0 5px 0;
}

.block-order-method--promotion-title,
.block-order-method--point-use-title,
.block-order-method--payment-method-title,
.block-order-method--coupon-title {
  font-weight: bold;
}

.block-order-method--promotion,
.block-order-method--point-use,
.block-order-method--payment-method,
.block-order-method--coupon {
  padding: 10px;
  border-bottom: solid 1px #dcdcdc;
}

.block-order-method--payment-method-select .help-block {
  padding-left: 30px;
}

input.block-order-method--point-use-input {
  margin-right: 5px;
  width: 5.0em;
  background-color: #dedede;
}

.block-order-method--coupon-available-btn {
  display: block;
  margin: 15px 0 0 0;
  padding: 5px 0 5px 0;
}

.block-order-method--coupondialog-table {
  margin: 0 0 10px 0;
}

.block-order-method--coupondialog-data-btn .btn {
  display: block;
  margin: 5px 0 5px 0;
  padding: 10px 0 10px 0;
  width: 100%;
}

.block-order-method--point-use-content {
  padding-top: 5px;
}

.block-order-method--point-pay {
  padding: 5px 0;
}

.block-order-method--coupon{
  border: none;
  padding: 0;
  margin: 0 13px;
}

.block-order-method--coupon-content{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin-top: 5px;
}
.block-order-method--coupon-content input[type="text"]{
  flex: 1;
  max-width: 150px;
  padding: 0px 7px;
  height: 40px;
  line-height: 38px;
  margin: 8px 15px 8px 0;
}
.block-order-method--coupon-content a{
/*
  width: calc(61% - 6px);
  margin: 0;
  padding: 0;
  background-color: #000000;
  color: #ffffff;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0 7px;
  text-decoration: none;
  font-size: 1.2rem;
*/
  padding: 8px 15px;
  background-color: #000000;
  color: #ffffff;
  font-size: 1.2rem;
  min-height: auto;
  line-height: 1.2;
  border-radius: 20px;
  margin: 8px 0 8px 0;
  text-decoration: none;
}

.block-order-method--payment-method{
  margin-top: 27px;
  border: none;
}

.block-order-method--payment-method-content{
  margin-top: 10px;
}
.block-order-method--payment-method-content li{
  display: block;
  font-size: 1.5rem;
  line-height: 35px;
}
.block-order-method--payment-method-content li input{
  display: none;
}
.block-order-method--payment-method-content li input + label{
  display: block;
  padding-left: 30px;
  position:relative;
  line-height: 35px;
  font-size: 1.4rem;
}
.block-order-method--payment-method-content li input + label::before{
  content: "";
  display: block;
  position: absolute;
  top: 7px;
  left: 3px;
  width: 19px;
  height: 19px;
  border: 1px solid #AAAAAA;
  border-radius: 50%;
}
.block-order-method--payment-method-content li input:checked + label:hover::before{
  border: 1px solid #AAAAAA !important;
}
.block-order-method--payment-method-content li input:checked + label{
}
.block-order-method--payment-method-content li input + label::after{
  content: "";
  display: block;
  position: absolute;
  top: 10px;
  left: 6px;
  width: 13px;
  height: 13px;
  background: #000000;
  border-radius: 50%;
  transition: all .4s ease;
  opacity: 0;
}
.block-order-method--payment-method-content li input:checked + label::after{
  opacity: 1;
}
.block-order-method--payment-method-content > .help-block {
  color: inherit;
  font-size: 1.2rem;
  margin: 24px 3px 0 3px;
}



/* お届け日時指定 */
.block-order-method--delivery-datetime-content {
}

.block-order-method--date-spec-title,
.block-order-method--time-spec-title {
  font-weight: bold;
}

.block-order-method--date-spec,
.block-order-method--regular-content,
.block-regular-cycle--deliv_date,
.block-order-method--time-spec {
  padding: 10px;
  border-bottom: solid 1px #dcdcdc;
}


.block-order-method--delivery-datetime{
  margin-top: 40px;
  margin-bottom: 47px;
}
.block-order-method--date-spec{
  padding: 0;
  border: none;
  margin: 0 12px 36px 12px;
}
.block-order-method--date-spec-title{
  margin-bottom: 12px;
}

.block-order-method--date-spec-content p{
  position: relative;
  width: 100%;
  height: 40px;
}
.block-order-method--date-spec-content p:after{
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 16px;
  width: 8px;
  height: 8px;
  border-right: 1px #000 solid;
  border-bottom: 1px #000 solid;
  transform: rotate(45deg);
  margin-top: -6px;
}
.block-order-method--date-spec-content p select{
  width: 100%;
  height: 40px;
  padding: 0 30px 0 15px;
  font-size: 1.4rem;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: none;
}

.block-order-method--time-spec{
  padding: 0;
  border: none;
  margin: 0 12px 22px 12px;
}
.block-order-method--time-spec-content{
  margin-top: 8px;
}
.block-order-method--time-spec-content p{
  display: flex;
  flex-wrap: wrap;
}
.block-order-method--time-spec-content p span{
  width: 50%;
  display: block;
  font-size: 1.4rem;
}
.block-order-method--time-spec-content p span:nth-of-type(odd){
  padding-right: 10px;
}
.block-order-method--time-spec-content p span:nth-of-type(even){
  padding-left: 13px;
}
.block-order-method--time-spec-content p input{
  display: none;
}
.block-order-method--time-spec-content p input + label{
  display: block;
  padding-left: 30px;
  position:relative;
  line-height: 40px;
}
.block-order-method--time-spec-content p input + label::before{
  content: "";
  display: block;
  position: absolute;
  top: 10px;
  left: 2px;
  width: 19px;
  height: 19px;
  border: 1px solid #AAAAAA;
  border-radius: 50%;
  transition: all .4s ease;
}
.block-order-method--time-spec-content p input:checked + label:hover::before{
  border: 1px solid #AAAAAA !important;
}
.block-order-method--time-spec-content p input:checked + label{
}
.block-order-method--time-spec-content p input + label::after{
  content: "";
  display: block;
  position: absolute;
  top: 13px;
  left: 5px;
  width: 13px;
  height: 13px;
  background: #000000;
  border-radius: 50%;
  transition: all .4s ease;
  opacity: 0;
}
.block-order-method--time-spec-content p input:checked + label::after{
  opacity: 1;
}

.block-order-method--delivery-datetime-content > .help-block{
  color: inherit;
  font-size: 1.2rem;
  margin: 0 13px;
}

/* 定期購入お届けサイクル */
.block-order-method--regular-content,
.block-regular-cycle--deliv_date {
  padding: 10px;
}

.block-order-method--regular-cycle-title {
  font-weight: bold;
}

.block-order-method--regular-cycle label {
  margin: 5px 0 5px 0;
  display: inline-block;
}

/* 商品情報 */
.block-order-method--goods {
  margin-top: 10px;
}

.block-order-method--goods h2.block-order-method--goods-title{
  background-color:#efefef;
  padding-top: 15px;
}
.block-order-method--goods-content {
}

.block-order-method--goods-list li {
  padding: 10px 0 0 0;
  margin-bottom: 40px;
}

.block-order-method--goods-item-detail{
  display: flex;
  margin-bottom: 30px;
}

.block-order-method--goods-item-image {
  width: 135px;
  vertical-align: top;
}

.block-order-method--goods-item-image figure {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 135px;
  height: 135px;
}
.block-order-method--goods-item-image figure img{
  display: block;
  max-width: 135px;
  max-height: 135px;
}

.block-order-method--goods-brand{
  margin-bottom: 22px;
}
.block-order-method--goods-brand img{
  display: block;
  height: 17px;
}

.block-order-method--goods-sub{
  font-size: 1.4rem;
  letter-spacing: 0.02em;
  margin-bottom: 6px;
}

.block-order-method--goods-info {
  flex: 1;
  vertical-align: top;
  padding-left: 15px;
  margin-top: 3px;
}

.block-order-method--goods-name {
  font-weight: bold;
  font-size: 1.6rem;
}

.block-order-method--goods-item-price{
  margin-top: 4px;
}
.block-order-method--goods-item-price span{
  padding-left: 0.3em;
  font-size: 1.0rem;
}


.block-order-method--goods-delete{
  margin: 25px 0 0 25px;
}
.block-order-method--goods-delete a,
.block-order-method--goods-delete input[type="submit"]{
  display: inline-block;
  border: none;
  background: none;
  padding: 0;
  margin: 0;
  line-height: 1.2;
  font-size: 1.2rem;
  text-decoration: underline;
  min-height: auto;
  border-radius: 0;
}

.block-order-method--goods-item-option{
}
.block-order-method--goods-item-option dl{
  display: flex;
  border-bottom: 1px #E0E0E0 solid;
  font-size: 1.4rem;
  padding: 10px 0 10px 0;
  margin: 0 12px;
  line-height: 1.5;
}
.block-order-method--goods-item-option dl:first-of-type{
  border-top: 1px #E0E0E0 solid;
}
.block-order-method--goods-item-option dt{
  font-weight: normal;
  width: 147px;
}
.block-order-method--goods-item-option dd{
  flex: 1;
  display: flex;
}
.block-order-method--goods-item-option dd:before{
  content: ":";
  display: block;
  width: 1em;
}
.block-order-method--goods-item-option dd span{
  flex: 1;
  display: block;
  word-break: break-all;
}
dl.block-order-method--goods-item-option--characters{
  padding-bottom: 0;
}
.block-order-method--goods-item-option--characters span{
  line-height: 3;
  margin-top: -0.7em;
}

.block-order-method--sales-detail-append-item textarea {
  width: 100%;
}


/* オプション設定(ギフト設定/ギフトバッグの同梱) */
.block-order-method--option{
  margin: -1px 12px 0 12px;
}
.block-order-method--option-title{
  position: relative;
  padding: 19px 40px 19px 0;
}
/*
.block-order-method--option-title:before,
.block-order-method--option-title:after{
  content: "";
  display: block;
  position: absolute;
  width: 15px;
  height: 1px;
  background-color: #000;
  top: 50%;
  right: 8px;
  transition: all .4s ease;
}
.block-order-method--option-title:after{
  transform: rotate(90deg);
}
.block-order-method--option-title.active:after{
  transform: rotate(0deg);
}
*/
.block-order-method--option-title h2{
  background: none;
  padding: 0;
  margin: 0;
  font-size: 1.6rem;
}
.block-order-method--option-content-wrap{
  /*display: none;*/
  background-color: #efefef;
  margin-bottom: 30px;
}
.block-order-method--option-content{
  margin: 0 20px 20px 20px;
  padding: 20px 0 40px 0;
  border-bottom: 1px #E0E0E0 solid;
}
.block-order-method--option-content:last-of-type{
  border-bottom: none;
}
.block-order-method--option-content h3{
  position: relative;
  font-size: 1.4rem;
  padding: 1px 0 1px 15px;
}
.block-order-method--option-content h3:before{
  content: "";
  display: block;
  position: absolute;
  left: 1px;
  top: 3%;
  width: 5px;
  height: 94%;
  background-color: #000000;
}
.block-order-method--option-content--option{
  display: flex;
  flex-wrap: wrap;
}
.block-order-method--option-content h3 + .block-order-method--option-content--option{
  margin: 19px 0px 0 0px;
}
.block-order-method--option-content--option li{
  position: relative;
  width: 100%;
}
.block-order-method--option-content--option input{
  display: none;
}
.block-order-method--option-content--option input + label{
  position: relative;
  display: flex;
  width: 100%;
  padding: 10px 0 10px 55px;
  z-index: 2;
}
.block-order-method--option-content--option input + label::after{
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 18px;
  width: 13px;
  height: 13px;
  margin-top: -6px;
  background: #000000;
  border-radius: 50%;
  transition: all .4s ease;
  opacity: 0;
}
.block-order-method--option-content--option input:checked + label::after{
  opacity: 1;
}

.block-order-method--option-content--option input + label::before{
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 15px;
  margin-top: -9px;
  width: 19px;
  height: 19px;
  border: 1px solid #AAAAAA;
  border-radius: 50%;
  transition: all .4s ease;
  background-color: #ffffff;
}

.block-order-method--option-content--option input + label + span{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
  background-color: #ffffff;
  z-index: 1;
  opacity: 0;
  transition: all .4s ease;
  border: 2px #a3a3a3 solid;
}
.block-order-method--option-content--option input:checked + label + span{
  opacity: 1;
}



.block-order-method--option-content--option label div{
  position: relative;
  width: 87px;
  height: 87px;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #ffffff;
}
.block-order-method--option-content--option label div.noimg:before,
.block-order-method--option-content--option label div.noimg:after{
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
}
.block-order-method--option-content--option label div.noimg:before{
  z-index: 1;
  width: 100%;
  height: 100%;
  border: 1px #CCCCCC solid;
}
.block-order-method--option-content--option label div.noimg:after{
  z-index: 1;
  top: 43px;
  left: -3px;
  width: 93px;
  height: 1px;
  border: none;
  background-color: #CCCCCC;
  transform: rotate(-45deg);
}
.block-order-method--option-content--option label div img{
  display: block;
  max-width: 100%;
  max-height: 100%;
}

.block-order-method--option-content--option input + label>span{
  flex: 1;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-content: center;
  padding-left: 20px;
  font-size: 1.4rem;
}
.block-order-method--option-content--option input + label>span span{
  color: #595959;
  display: block;
  width: 100%;
}
.block-order-method--option-content--option input + label>span span span{
  font-size: 1.1rem;
}
.block-order-method--option-content--option input:checked + label span{
  font-weight: bold;
}



.block-order-method--option-content--message textarea{
  margin: 19px 0 0 0px;
  width: 100%;
  height: 100px;
  padding: 11px 15px;
  font-size: 1.2rem;
}
.block-order-method--option-content--message textarea::placeholder {
  color: #CCCCCC;
}
.block-order-method--option-content--message textarea:-ms-input-placeholder {
  color: #CCCCCC;
}
.block-order-method--option-content--message textarea::-ms-input-placeholder {
  color: #CCCCCC;
}
.block-order-method--option-content--message div{
  display: flex;
}
.block-order-method--option-content--message div:before{
  width: 28px;
  content: '\f040';
  display: inline-block;
  font-family: "FontAwesome";
  font-size: 17px;
  font-weight: 900;
  padding-top: 0px;
  padding-left: 3px;
}
.block-order-method--option-content--message p{
  flex: 1;
  font-size: 1.2rem;
  margin: 5px 0 0 0;
  background-image: url();
  background-repeat: no-repeat;
  background-position: left top;
}
.block-order-method--option-content--message p span{
  padding: 0 0.3em;
}

.block-order-method--option-content--giftbag{
  padding-bottom: 25px;
}

.block-order-method--option-content--notice{
  font-size: 1.2rem;
  margin: 11px 0 0 3px;
}
.block-order-method--option-content--notice li{
  padding-left: 1em;
  text-indent: -1em;
  line-height: 1.7;
  margin-bottom: 7px;
  letter-spacing: 0.02em;
}

.block-order-method--giftbag{
  border-top: none;
}
.block-order-method--option-title{
  margin: 0 -27px 27px -27px;
  padding: 15px 15px;
  font-size: 1.6rem;
  line-height: 1.3;
  font-weight: bold;
  background-color: #efefef;
}

/* その他 */
.block-order-method--sales-append-container {
  background: #fff;
  border: solid 1px #dcdcdc;
  padding: 0 0 0 10px;
  margin: 0 0 10px 0;
}

.js-fixed-box-wrapper{
}

.block-order-method--procedure {
  padding: 10px 12px;
}
.block-order-method--subtotal {
  margin-top: 45px;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}
.block-order-method--subtotal > span {
  font-size: 1.6rem;
  font-weight: bold;
}
.block-order-method--subtotal > p {
  font-size: 2.2rem;
  font-weight: bold;
  text-align: right;
  line-height: 1.2;
  margin-top: 9px;
}
.block-order-method--subtotal > p span {
  font-size: 1.0rem;
  padding: 0px 0.3em;
  font-weight: normal;
}
.block-order-method--price {
  margin-top: 6px;
  margin-bottom: 40px;
  border-top: 1px #e0e0e0 solid;
  padding-top: 15px;
}
.block-order-method--price dl {
  display: flex;
  justify-content: space-between;
  margin-bottom: 11px;
}
.block-order-method--price dt {
  font-size: 1.2rem;
  font-weight: normal;
}
.block-order-method--price dd {
  font-size: 1.3rem;
}



.block-order-method--next {
  width: 100%;
  height: 50px;
}
input[type="submit"].block-order-method--next-btn {
  width: 100%;
  padding: 10px 0;
  height: 50px;
  background-color: #000000;
  color: #ffffff;
  font-size: 1.8rem;
  border-radius: 3px;
}

/* ---- 注文内容確認(通常フロー) ---- */

/* 共通設定 */
.block-order-estimate {
  margin: 15px;
}

.block-order-estimate h1 {
  margin: 0 -10px 0;
  text-align: center;
}

.block-order-estimate h2 {
  margin: 0 -15px 17px -15px;
  padding: 0 15px 15px 15px;
  font-size: 1.6rem;
  line-height: 1.3;
  background: none;
}

.block-order-estimate .form-error {
  font-weight: bold;
}


.block-order-estimate--summary{
  margin: 40px 12px 29px 12px;
}

.block-order-estimate--summary-bottom{
  margin: 49px -15px 0 -15px;
  padding: 0 25px;
}

.block-order-estimate--common-title{
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 0 -15px 18px -15px;
  padding: 10px 15px;
  background-color: #efefef;
}
.block-order-estimate--common-title h2{
  font-size: 1.6rem;
  line-height: 1.3;
  margin: 0;
  padding: 0;
}
.block-order-estimate--common-title input[type="submit"] {
  padding: 8px 21px;
  background-color: #000000;
  color: #ffffff;
  font-size: 1.1rem;
  min-height: auto;
  line-height: 1.2;
  border-radius: 30px;
}


/* ご注文者情報 / お届け先 */
.block-order-estimate--orderer{
  margin-bottom: 39px;
}
.block-order-estimate--orderer-detail{
  margin: 0 12px;
}
.block-order-estimate--orderer-name{
  font-size: 1.4rem;
  letter-spacing: 0.03em;
}
.block-order-estimate--orderer-detail address{
  font-size: 1.4rem;
  margin-top: 22px;
  line-height: 1.7;
  letter-spacing: 0.03em;
}

/* 注文商品 */
.block-order-estimate--delivery-items{
  margin-bottom: 30px;
}
.block-order-estimate--delivery-items ul{
}
.block-order-estimate--delivery-items li{
  border-bottom: 1px #E0E0E0 solid;
  padding-bottom: 15px;
  margin-top: 15px;
  margin-bottom: 15px;
}
.block-order-estimate--goods-item-detail{
  display: flex;
  align-items: center;
  margin: 0;
}
.block-order-estimate--goods-item-image{
  width: 61px;
  height: 61px;
}
.block-order-estimate--goods-item-image figure{
  width: 61px;
  height: 61px;
  border: 1px #707070 solid;
}
.block-order-estimate--goods-item-image figure img{
  max-width: 60px;
  max-height: 60px;
}

.block-order-estimate--goods-item-info{
  padding-left: 20px;
}
.block-order-estimate--goods-item-price{
  margin-top: 3px;
  color: #808080;
  font-size: 1.2rem;
}
.block-order-estimate--goods-item-price span{
  font-size: 1.0rem;
  padding-left: 0.3em;
}

.block-order-estimate--price-total{
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}
.block-order-estimate--price-total h2{
  padding: 0;
  margin: 0;
  text-align: right;
  background: none;
  font-size: 1.6rem;
  font-weight: bold;
}
.block-order-estimate--price-total p{
  font-size: 2.2rem;
  font-weight: bold;
  text-align: right;
  line-height: 1.2;
  margin-top: 9px;
}
.block-order-estimate--price-total p span{
  font-size: 1.0rem;
  padding: 0px 0.3em;
  font-weight: normal;
}

/* 注文を確定する */
.block-order-estimate--commit {
  margin: 5px 12px 60px 12px;
  text-align: center;
}
.block-order-estimate--summary-bottom + .block-order-estimate--commit{
  margin-top: 30px;
}

.block-order-estimate--commit .action .btn {
  margin: 5px 0 5px 0;
  padding: 0 0 0 4vw;
  font-size: 1.8rem;
  line-height: 50px;
  border-radius: 3px;
}

.block-order-estimate--commit>span{
  display: block;
  margin-top: 28px;
  line-height: 1.3;
  font-size: 1.2rem;
}
.block-order-estimate--commit>span span{
  text-decoration: underline;
}

.block-order-estimate--order-terms-link {
  text-decoration: underline;
  cursor: pointer;
}

/* 利用規約 */
.block-order-estimate--agreebody {
  width: 100%;
  height: 400px;
  font-size: 10px;
}

/* お選びできるノベルティがございます */
.block-order-estimate--promotion-novelty-content {
  border: 1px solid #f00;
  background-color: #fff;
  text-align: center;
  padding: 5px 0;
  margin: 10px 32px;
  font-size: 12px;
}

/* お届け先 */
.block-order-estimate--dest-content {
  background: #fff;
  border: solid 1px #dcdcdc;
  padding: 10px 90px 10px 10px;
  position: relative;
}

.block-order-estimate--dest .block-order-estimate--change-btn {
  width: 75px;
  right: 10px;
  top: 10px;
  position: absolute;
}

.block-order-estimate--dest .block-order-estimate--salesinclude-btn {
  width: 75px;
  right: 10px;
  top: 60px;
  height: 31px;
  position: absolute;
  font-size: 12px;
  padding: 5px 0 !important;
}

/* お届け先の変更(ダイアログ)*/
.block-order-estimate--dest-address-container,
.block-order-estimate--guest-address-container,
.block-order-estimate--amazonpay-address-container {
  font-size: 14px;
}
.block-order-estimate--dest-address-container h2,
.block-order-estimate--guest-address-container h2,
.block-order-estimate--amazonpay-address-container h2 {
  font-size: 14px;
  background-color: #333;
  color: #fff;
  padding: 5px;
  margin: 10px 0 14px 0;
}

.block-order-estimate--address-frame {
  background: #f8f8f8;
}

.block-order-estimate--value-label {
  display: block;
  margin: 5px 0;
}

/* ×ボタン */
.block-order-estimate--address-frame-close {
  position: relative;
  cursor: pointer;
}

.block-order-estimate--address-frame-close span {
  display: block;
  position: absolute;
  top: 8px;
  right: 8px;
  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;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.block-order-estimate--address-frame-close span:after {
  position: absolute;
  top: 0;
  right: 6px;
  content: "";
  width: 2px;
  height: 15px;
  background: #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.block-order-estimate--dest-address-list {
  padding-bottom: 10px;
}

.block-order-estimate--dest-address-item {
  background: #fff;
  border: solid 1px #dcdcdc;
  margin: 0 14px 14px 14px;
  padding: 10px;
}

.block-order-estimate--dest-address-title {
  padding-bottom: 5px;
}

.block-order-estimate--dest-address-item-buttons__selected {
  text-align: center;
  background: #fffcfc;
  border: solid 1px #f00;
  margin-top: 10px;
  padding: 5px;
  color: #f00;
  cursor: default;
  width: auto;
}

.block-order-estimate--dest-address-change-btn {
  padding: 5px;
  margin-top: 10px;
  width: 100%;
}

.block-order-estimate--dest-address-change-dest-btn {
  padding: 5px;
  margin-top: 10px;
  width: 100%;
}

.block-order-estimate--dest-address-item-register {
  background: #fff;
  border: solid 1px #dcdcdc;
  margin: 0 14px 14px 14px;
  padding: 10px;
}

.block-order-estimate--dest-address-register-btn {
  padding: 5px;
  width: 100%;
}

.block-order-estimate--dest-address-item-register-form {
  margin: 0 14px 14px 14px;
}

.block-order-estimate--dest-address-item-register-input-title {
  background: #333;
  color: #fff;
  border-radius: 0;
  border-bottom: solid 1px #dcdcdc;
  padding: 8px 2px 8px 14px;
}

.block-order-estimate--dest-address-item-register-input-form .fieldset-vertical {
  margin: 0;
}

.block-order-estimate--dest-address-item-register-input-form .form-group,
.block-order-estimate--dest-address-item-register-input-form .action-buttons {
  background-color: #fff;
  border: solid 1px #dcdcdc;
  border-top: 0;
  padding: 10px;
  margin: 0;
}

/* お届け先の変更(AmazonPay) */
.block-order-estimate--amazonpay-address-widget {
  padding: 0 10px 10px;
  width: auto;
  height: 100%;
}

.block-order-estimate--amazonpay-address-area .action {
  padding: 0 10px 10px 10px;
}

.block-order-estimate--amazonpay-address-area .action .btn {
  min-height: 24px;
  padding: 3px 0 2px 0;
  margin: 0;
}

/* お届け先の変更(ゲスト) */
.block-order-estimate--guest-address-container {
  padding-bottom: 14px;
}

.block-order-estimate--guest-address-input-form {
  background: #fff;
  border: 1px solid #dcdcdc;
  margin: 0 14px;
}

.block-order-estimate--guest-address-input-form .form-group {
  padding: 10px;
  border-bottom: 1px solid #dcdcdc;
  margin: 0;
}

/* お届け先の変更(会員・ゲスト) アクションボタン */
.block-order-estimate--dest-address-item-register-input-form .action-buttons,
.block-order-estimate--guest-address-input-form .action-buttons {
  width: 100%;
  padding: 10px;
  display: table;
}

.block-order-estimate--dest-address-item-register-input-form .action-buttons .action,
.block-order-estimate--guest-address-input-form .action-buttons .action {
  width: 50%;
  display: table-cell;
}

.block-order-estimate--dest-address-item-register-input-form .action-buttons .action .btn,
.block-order-estimate--guest-address-input-form .action-buttons .action .btn {
  margin-top: 0;
  padding: 3px 0;
  white-space: normal;
  min-height: 50px;
}

.block-order-estimate--dest-address-item-register-input-form .action-buttons .action:first-child,
.block-order-estimate--guest-address-input-form .action-buttons .action:first-child {
  padding-right: 5px;
}

.block-order-estimate--dest-address-item-register-input-form .action-buttons .action:last-child,
.block-order-estimate--guest-address-input-form .action-buttons .action:last-child {
  padding-left: 5px;
}

.block-order-estimate--dest-address-container .block-order-method--sender-message,
.block-order-estimate--guest-address-container .block-order-method--sender-message {
  padding: 0 10px;
}

/* お支払い情報 */
.block-order-estimate--method-pay{
  margin-bottom: 30px;
}
.block-order-estimate--method-pay-content {
  border-bottom: none;
  font-size: 1.4rem;
  margin: 0 13px;
  letter-spacing: 0.03em;
}

.block-order--amazonpay-btn {
  padding: 8px 21px;
  background-color: #000000;
  color: #ffffff;
  font-size: 1.1rem;
  min-height: auto;
  line-height: 1.2;
  border-radius: 30px;
}

.block-order-method--amazonpay-btn {
  padding: 8px 15px;
  background-color: #000000;
  color: #ffffff;
  font-size: 1.2rem;
  min-height: auto;
  line-height: 1.2;
  border-radius: 20px;
  margin: 8px 0 8px 0;
  text-decoration: none;
}

.block-order--amazonpay-btn:focus,
.block-order-method--amazonpay-btn:focus{
  outline:0;
}
.block-order-estimate--method h3 {
  padding: 0 90px 10px 0;
}

.block-order-estimate--method-pay-content .block-order-estimate--change-btn {
  width: 70px;
  right: 10px;
  top: 10px;
  position: absolute;
}

/* クレジットカード設定 */
.block-order-estimate--pay-input {
  margin: 0 0 40px 0;
}

.block-order-estimate--pay-selectcard-keep {
  margin-bottom: 5px;
}

.block-order-estimate--pay-detail {
}

.block-order-estimate--pay-detail .form-group {
  margin-bottom: 32px;
}
.block-order-estimate--pay-savecard input {
    display: none;
}
.block-order-estimate--pay-savecard input + label {
    display: block;
    padding-left: 25px;
    position: relative;
    line-height: 21px;
    margin-right: 20px;
    margin-bottom: 9px;
    font-size: 1.4rem;
}
.block-order-estimate--pay-savecard input + label::before {
    content: "";
    display: block;
    position: absolute;
    top: 1px;
    left: 0;
    width: 15px;
    height: 15px;
    border: 1px solid #707070;
    background-color: #ffffff;
    transition: all .4s ease;
}
.block-order-estimate--pay-savecard input:checked + label::before {
    background-color: #000000;
}
.block-order-estimate--pay-savecard input + label::after {
    content: "";
    display: block;
    position: absolute;
    top: 4px;
    left: 3px;
    width: 9px;
    height: 6px;
    border-left: 2px #ffffff solid;
    border-bottom: 2px #ffffff solid;
    transform: rotate(-45deg);
    transition: all .4s ease;
    opacity: 0;
}
.block-order-estimate--pay-savecard input:checked + label::after {
    opacity: 1;
}


.block-order-estimate--pay-detail {
}

.block-order-estimate--pay-card-brand{margin-bottom: 32px !important;}
.block-order-estimate--pay-card-brand .form-label {margin: 0 0 10px 0;}

.block-order-estimate--pay-card{margin-bottom: 37px !important;}
.block-order-estimate--pay-card .form-label {margin: 0 0 18px 0;}
.block-order-estimate--pay-card input{
  width: 100%;
  border: 2px #B7B7B7 solid;
  height: 41px;
  padding: 0 10px;
}

.block-order-estimate--pay-holdername{margin-bottom: 37px !important;}
.block-order-estimate--pay-holdername .form-label {margin: 0 0 18px 0;}
.block-order-estimate--pay-holdername input{
  width: 100%;
  border: 2px #B7B7B7 solid;
  height: 41px;
  padding: 0 10px;
}

.block-order-estimate--pay-securitycode{margin-bottom: 37px !important;}
.block-order-estimate--pay-securitycode .form-label {margin: 0 0 18px 0;}
.block-order-estimate--pay-securitycode input{
  width: 160px;
  border: 2px #B7B7B7 solid;
  height: 41px;
  padding: 0 10px;
}
.block-order-estimate--pay-securitycode .block-order-estimate--has-modal{
  margin-top: 8px;
  padding: 10px 0 10px 23px;
  font-size: 1.2rem;
  background-image: url(../../img/usr/ico_help.png);
  background-size: 15px auto;
  background-repeat: no-repeat;
  background-position: 1px center;
}
.block-order-estimate-modal-bg{
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0,0,0,0.84);
  z-index: 100;
}
.block-order-estimate-modal{
  display: none;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 90%;
  height: auto;
  padding: 25px 20px;
  background-color: #ffffff;
  z-index: 101;
}
.block-order-estimate-modal--content{
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.block-order-estimate--close{
  position: absolute;
  width: 50px;
  height: 50px;
  top: 0;
  right: 0;
}
.block-order-estimate--close span{
  position: absolute;
  top: -44px;
  right: 2px;
  width: 23px;
  height: 23px;
  transition: all .4s ease;
  z-index: 1;
}
.block-order-estimate--close span:after,
.block-order-estimate--close span:before{
  content: "";
  display: block;
  position: absolute;
  width: 32px;
  height: 1px;
  border-radius: 2px;
  background-color: #ffffff;
  top: 18px;
  right: -5px;
  margin-top: -7px;
  z-index: 2;
}
.block-order-estimate--close span:before{
  transform: rotate(45deg);
}
.block-order-estimate--close span:after{
  transform: rotate(-45deg);
}


.block-order-estimate--pay-expire{margin-bottom: 30px !important;}
.block-order-estimate--pay-expire .form-label {margin: 0 0 18px 0;}
.block-order-estimate--pay-expire .form-control p {
  display: inline-block;
  position: relative;
  height: 40px;
  margin-bottom: 8px;
}
.block-order-estimate--pay-expire p:after{
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 16px;
  width: 8px;
  height: 8px;
  border-right: 1px #000 solid;
  border-bottom: 1px #000 solid;
  transform: rotate(45deg);
  margin-top: -6px;
}
.block-order-estimate--pay-expire .form-control p.card_y{width: 160px;}
.block-order-estimate--pay-expire .form-control p.card_m{width: 120px;}
.block-order-estimate--pay-expire .form-control span{
  display: inline-block;
  line-height: 40px;
  margin-bottom: 8px;
  padding-left: 8px;
}
.block-order-estimate--pay-expire .form-control .select-wrapper {
  position: relative;
}
.block-order-estimate--pay-expire .form-control select {
  position: relative;
  width: 100%;
  height: 40px;
  padding: 0 30px 0 15px;
  font-size: 1.2rem;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: none;
  border: 2px #B7B7B7 solid;
}
.block-order-estimate--pay-expire .form-control .select-wrapper::after {
  position: absolute;
  content: "";
  display: block;
  top: 50%;
  right: 16px;
  width: 8px;
  height: 8px;
  margin-top: -6px;
  border-right: 1px #000 solid;
  border-bottom: 1px #000 solid;
  transform: rotate(45deg);
}

.block-order-estimate--pay-card-method .form-control :disabled {
  background-color: #d3d3d3;
}
.block-order-estimate--pay-card-method{margin-bottom: 30px !important;}
.block-order-estimate--pay-card-method .form-label {margin: 0 0 18px 0;}
.block-order-estimate--pay-card-method{margin-bottom: 30px !important;}
.block-order-estimate--pay-card-method .form-label {margin: 0 0 18px 0;}
.block-order-estimate--pay-card-method .form-control .select-wrapper {
  position: relative;
}
.block-order-estimate--pay-card-method .form-control select {
  position: relative;
  width: 100%;
  height: 40px;
  padding: 0 30px 0 15px;
  font-size: 1.2rem;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: none;
  border: 2px #B7B7B7 solid;
}
.block-order-estimate--pay-card-method .form-control .select-wrapper::after {
  position: absolute;
  content: "";
  display: block;
  top: 50%;
  right: 16px;
  width: 8px;
  height: 8px;
  margin-top: -6px;
  border-right: 1px #000 solid;
  border-bottom: 1px #000 solid;
  transform: rotate(45deg);
}
.block-order-estimate--pay-card-method .form-control input[type="radio"] {
  display: none;
}
.block-order-estimate--pay-card-method .form-control input[type="radio"] + label {
  position:relative;
  padding-left: 27px;
  margin-right: 20px;
}
.block-order-estimate--pay-card-method .form-control input[type="radio"] + label::before {
  content: "";
  display: block;
  position: absolute;
  top: 1px;
  left: 0;
  width: 19px;
  height: 19px;
  border: 1px solid #AAAAAA;
  border-radius: 50%;
  transition: all .4s ease;
}
.block-order-estimate--pay-card-method .form-control input[type="radio"]:not(:checked) + label:hover::before {
  border: 1px solid #000000;
}
.block-order-estimate--pay-card-method .form-control input[type="radio"] + label::after {
  content: "";
  display: block;
  position: absolute;
  top: 4px;
  left: 3px;
  width: 13px;
  height: 13px;
  background: #000000;
  border-radius: 50%;
  transition: all .4s ease;
  opacity: 0;
}
.block-order-estimate--pay-card-method .form-control input[type="radio"]:checked + label::after {
  opacity: 1;
}
.block-order-estimate--pay-card-method .form-control p.help-block {
  font-size: 1.2rem;
  position: static;
  width: 100%;
  background: none;
  margin-top: 10px;
}
.block-order-estimate--pay-card-method .form-control p.help-block:after {
  display: none;
}
.block-order-estimate--pay-card-method .form-control div {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  padding-top: 5px;
  padding-bottom: 5px;
}
.block-order-estimate--pay-card-method .form-control div:not(:nth-child(1)) {
  margin-top: 10px;
}

.block-order-estimate--border-bottom{
  margin-bottom: 30px !important;
}

.block-order-estimate--pay-savecard {
  display: none !important;
}


.block-order-estimate--pay-detail .form-control {
}
.block-order-estimate--pay-detail .form-control div{
}
.block-order-estimate--pay-detail .form-control div{
}
.block-order-estimate--pay-detail .form-control div span{
  display: block;
}
.block-order-estimate--pay-detail .form-control div span:last-of-type{
  margin-right: 0;
}
.block-order-estimate--pay-detail .form-control div span input{
  display: none;
}
.block-order-estimate--pay-detail .form-control div span input + label{
  display: block;
  padding-left: 27px;
  position:relative;
  line-height: 40px;
  font-size: 1.4rem;
}
.block-order-estimate--pay-detail .form-control div span input + label::before{
  content: "";
  display: block;
  position: absolute;
  top: 10px;
  left: 0;
  width: 19px;
  height: 19px;
  border: 1px solid #AAAAAA;
  border-radius: 50%;
  transition: all .4s ease;
}
.block-order-estimate--pay-detail .form-control div span input:checked + label{
}
.block-order-estimate--pay-detail .form-control div span input + label::after{
  content: "";
  display: block;
  position: absolute;
  top: 13px;
  left: 3px;
  width: 13px;
  height: 13px;
  background: #000000;
  border-radius: 50%;
  transition: all .4s ease;
  opacity: 0;
}
.block-order-estimate--pay-detail .form-control div span input:checked + label::after{
  opacity: 1;
}



.block-order-estimate--pay-selectcard .form-control {
  padding: 10px;
}

.block-order-estimate--pay-savecard .form-control {
}

.block-order-estimate--pay-detail .block-order-estimate--pay-selectcard {
  padding: 0;
}

#method_cardinfo{
  margin-top: 38px;
}

.block-order-estimate--pay-selectcard{
  display: none;
}

.block-order-estimate--txt p{
  font-size: 1.2rem;
  color: #737373;
}


/* コンビニ決済 */
.block-order-estimate--pay-input .block-order-estimate--cvs-select {
  position: relative;
}
.block-order-estimate--pay-input .block-order-estimate--cvs-select select {
  position: relative;
  width: 100%;
  height: 40px;
  padding: 0 30px 0 15px;
  font-size: 1.4rem;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: none;
}
.block-order-estimate--pay-input .block-order-estimate--cvs-select::after {
  position: absolute;
  content: "";
  display: block;
  top: 50%;
  right: 16px;
  width: 8px;
  height: 8px;
  border-right: 1px #000 solid;
  border-bottom: 1px #000 solid;
  transform: rotate(45deg);
  margin-top: -6px;
}

.block-order-estimate--amazonpay-wallet-widget {
  padding: 10px;
}

.block-order-estimate--amazonpay-login {
  background: #fff;
  padding: 10px;
  border: solid 1px #dcdcdc;
}

/* ご注文主様 */
.block-order-estimate--orderer-content {
  background: #fff;
  padding: 10px 90px 10px 10px;
  border: solid 1px #dcdcdc;
  position: relative;
}

.block-order-estimate--orderer-content .block-order-estimate--change-btn {
  width: 70px;
  right: 10px;
  top: 10px;
  position: absolute;
}

/* ご注文内容 */
.block-order-estimate--summary-content {
}

.block-order-estimate--total-price {
  font-weight: bold;
}

.block-order-estimate--login-state-saving {
  margin-top: 10px;
}

.block-order-estimate--login-state-saving-message {
  margin-top: 10px;
}

/* ご注文内容 お届け先 */
.block-order-estimate--delivery-info-header {
  margin-right: 10px;
}

.block-order-estimate--delivery-name {
  font-weight: bold;
}

.block-order-estimate--delivery-summary {
  border-bottom: dashed 1px #dcdcdc;
  padding: 10px;
}

.block-order-estimate--price-items {
  margin-top: 6px;
  margin-bottom: 40px;
  border-top: 1px #e0e0e0 solid;
  padding-top: 15px;
}

.block-order-estimate--price-items dl {
  display: table;
  width: 100%;
  overflow: hidden;
  margin-bottom: 11px;
}

.block-order-estimate--price-items dt {
  width: 55%;
  display: table-cell;
  font-size: 1.2rem;
  height: 100%;
  border: none;
  text-align: left;
  box-sizing: border-box;
}

.block-order-estimate--price-items dd {
  width: 45%;
  display: table-cell;
  font-size: 1.3rem;
  height: 100%;
  border: none;
  text-align: right;
  box-sizing: border-box;
}

.block-order-estimate--total dt {
  border-top: 1px solid #dcdcdc;
  padding: 5px 4px;
  font-weight: bold;
}

.block-order-estimate--total dd {
  border-top: 1px solid #dcdcdc;
  padding: 5px 4px;
}

.block-order-estimate--point-add-num {
  color: #f00;
}

.block-order-estimate--point-add-message {
  color: #f00;
  font-size: 12px;
}

/* ディスカウント情報 */
.block-order-estimate--discount-info {
  margin-bottom: 39px;
}

.block-order-estimate--discount-info .block-order-estimate--point h3,
.block-order-estimate--discount-info .block-order-estimate--promotion-code h3,
.block-order-estimate--discount-info .block-order-estimate--promotion h3,
.block-order-estimate--discount-info .block-order-estimate--coupon h3 {
  padding: 0;
  font-size: 1.6rem;
}

.block-order-estimate--discount-info .block-order-estimate--point,
.block-order-estimate--discount-info .block-order-estimate--promotion-code,
.block-order-estimate--discount-info .block-order-estimate--coupon {
}

.block-order-estimate--discount-info .block-order-estimate--promotion {
  padding: 10px;
  position: relative;
}

.block-order-estimate--discount-info .block-order-estimate--point .block-order-estimate--change-btn,
.block-order-estimate--discount-info .block-order-estimate--promotion-code .block-order-estimate--change-btn,
.block-order-estimate--discount-info .block-order-estimate--coupon .block-order-estimate--change-btn {
  position: absolute;
  right: 10px;
  top: 10px;
  width: 70px;
}

.block-order-estimate--coupon .block-order-estimate--common-title + div,
.block-order-estimate--promotion-code .block-order-estimate--common-title + div{
  font-size: 1.4rem;
  margin: 0 13px;
  letter-spacing: 0.03em;
}

/* お支払い方法 */
.block-order-estimate--method-pay h3 {
  padding: 0;
  font-size: 1.5rem;
}


/* お届け日時指定 */
.block-order-estimate--date-spec-content {
}
.block-order-estimate--date-spec-confirmation{
  margin-bottom: 30px;
}

.block-order-estimate--date-spec h3,
.block-order-estimate--time-spec h3 {
  padding-top: 0;
  padding-left: 0;
}

.block-order-estimate--date-spec,
.block-order-estimate--time-spec {
  padding: 0px 12px 10px 12px;
  font-size: 1.3rem;
  letter-spacing: 0.03em;
}

.block-order-estimate--date-spec .block-order-estimate--change-btn,
.block-order-estimate--time-spec .block-order-estimate--change-btn {
  position: absolute;
  right: 10px;
  top: 10px;
  width: 70px;
}

.block-order-estimate--confirmation-message {
  padding: 11px 2px 10px 13px;
}
.block-order-estimate--confirmation-message .help-block{
  line-height: 1.9;
}

.block-order-estimate--delivery h2{
  background-color: #efefef;
  padding-top: 15px;
}

.block-order-estimate--delivery p{
  margin-bottom: 30px;
}

/* 定期購入お届けサイクル */
.block-order-estimate--regular-cycle-content {
  background: #fff;
  border: solid 1px #dcdcdc;
  margin: 0 0 10px 0;
}

.block-order-estimate--regular-cycle-name h3 {
  padding-top: 0;
  padding-left: 0;
}

.block-order-estimate--regular-cycle-name {
  padding: 10px 90px 10px 10px;
  position: relative;
}

.block-order-estimate--regular-cycle-name .block-order-estimate--change-btn {
  position: absolute;
  right: 10px;
  top: 10px;
  width: 70px;
}

/* ノベルティ商品のノベルティ選択 */
.block-order-estimate--novelty-content {
  background-color: #fff;
  border: 1px solid #dcdcdc;
  padding: 10px;
}

.block-order-estimate--novelty-item {
  display: table;
  margin-bottom: 10px;
  width: 100%;
}

.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: 110px;
}

.block-order-estimate--novelty-item-goods {
  padding-left: 10px;
  width: auto;
}

.block-order-estimate--novelty-item-image figure {
  width: 110px;
  height: 110px;
  background: #f5f5f5;
}

/* ご注文商品 */
.block-order-estimate--goods-content {
  background: #fff;
  border: 1px solid #dcdcdc;
  border-bottom: none;
  margin: 0 0 10px 0;
}

.block-order-estimate--goods-list li {
  border-bottom: 1px solid #dcdcdc;
  padding: 10px;
}

.block-order-estimate--goods-item-image {
}

.block-order-estimate--goods-item-image figure {
}

.block-order-estimate--goods-description {
  display: table-cell;
  vertical-align: top;
  padding-left: 10px;
}

.block-order-estimate--goods-price-num {
  font-weight: bold;
}

.block-order-estimate--goods-name {
  font-weight: bold;
}

/* ご注文商品(オプション) */
.block-order-method--goods + .block-order-estimate--option{
  margin-top: -20px;
}
.block-order-estimate--option + .block-order-estimate--option{
  margin-top: 22px;
}
.block-order-estimate--option .block-order-estimate--common-title{
  background: none;
  margin: 0 -3px 2px -3px;
}
.block-order-estimate--option .block-order-estimate--common-title h2{
  font-size: 1.6rem;
  background: none;
}
.block-order-estimate--option-content-wrap{
  border-top: 1px #E0E0E0 solid;
  margin: 2px 12px;
  display: flex;
  flex-wrap: wrap;
}
.block-order-estimate--option-content{
  padding-top: 22px;
  padding-bottom: 29px;
  width: 50%;
  border-right: 1px #E0E0E0 solid;
}
.block-order-estimate--option-content:nth-of-type(odd){
}
.block-order-estimate--option-content:nth-of-type(even){
  border-right: none;
}
.block-order-estimate--option-content h3{
  font-size: 1.4rem;
  font-weight: bold;
  text-align: center;
  padding: 0;
  margin: 0 0 20px 0;
}
.block-order-estimate--option-content div{
  position: relative;
  width: 88px;
  height: 88px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto 17px auto;
  background-color: #ffffff;
}
.block-order-estimate--option-content div.noimg:before,
.block-order-estimate--option-content div.noimg:after{
  content: "";
  display: block;
  position: absolute;
  z-index: 1;
}
.block-order-estimate--option-content div.noimg:before{
  top: 45px;
  left: 3px;
  width: 82px;
  height: 1px;
  background-color: #CCCCCC;
  transform: rotate(-45deg);
}
.block-order-estimate--option-content div.noimg:after{
  width: 100%;
  height: 100%;
  border: 1px #ccc solid;
}
.block-order-estimate--option-content div img{
  display: block;
  max-width: 100%;
  max-height: 100%;
}
.block-order-estimate--option-content>span{
  display: block;
  text-align: center;
  font-size: 1.4rem;
}
.block-order-estimate--option-content>span span{
  font-size: 1.2rem;
}
.block-order-estimate--option-content--message{
  width: 100%;
  border-top: 1px #E0E0E0 solid;
  border-right: none;
  padding-top: 26px;
}
.block-order-estimate--option-content--message p{
  margin: -5px 20px 0 20px;
  line-height: 1.9;
  font-size: 1.4rem;
  letter-spacing: 0.03em;
}

.block-order-estimate--option-content--giftbag{
  width: 100%;
  border-right: none;
  padding-top: 26px;
  margin-bottom: 7px;
}

.block-order-estimate--giftbag{
}
.block-order-estimate--giftbag .block-order-estimate--common-title{
  background-color: #efefef;
  margin: 0 -15px 10px -15px;
}
.block-order-estimate--giftbag .block-order-estimate--option-content-wrap{
  border: none;
}


/* ご注文商品 その他 */
.block-order-estimate--sales-append {
  display: block;
  background: #fff;
  border: solid 1px #dcdcdc;
}

.block-order-estimate--sales-append .block-order-estimate--confirmation-title {
  padding: 10px 90px 10px 15px;
  position: relative;
}

.block-order-estimate--sales-append .block-order-estimate--confirmation-title h3 {
  padding-top: 0;
  padding-left: 0;
}

.block-order-estimate--sales-append .block-order-estimate--change-btn {
  position: absolute;
  right: 10px;
  top: 10px;
  width: 70px;
}

.block-order-estimate--sales-append-content {
  padding: 0 10px 10px 10px;
}

.block-order-estimate--sales-append-list th {
  vertical-align: top;
  background-color: #999;
  color: #fff;
}


/* ご注文商品 注文明細拡張情報 */
.block-order-estimate--sales-detail-append-link-edit {
  text-decoration: underline;
}

/* 備考 */
.block-order-estimate--comment-content {
  display: block;
  background: #fff;
  border: solid 1px #dcdcdc;
  padding: 10px;
}

.block-order-estimate--comment-content textarea {
  display: block;
  width: 100%;
}

/* メールニュース登録 */
.block-order-estimate--mailnews {
  background: #fff;
  padding: 10px;
  border: solid 1px #dcdcdc;
}

.block-order-estimate--mailnews .form-label {
  font-weight: bold;
  padding-bottom: 10px;
}

/* 会員登録 */
.block-order-estimate--entry-customer {
  display: block;
  background: #fff;
  border: solid 1px #dcdcdc;
  padding: 10px;
  margin-top: 5px;
}

.block-order-estimate--register-customer-checkbox,
.block-order-estimate--register-customer-checkbox-message {
  display: table-cell;
}

.block-order-estimate--register-customer-checkbox-message {
  margin-top: 3px;
}

.block-order-estimate--entry-customer-message {
  margin: 5px 0;
  font-size: 12px;
}

.block-order-estimate--entry-customer-point {
  color: #f00;
  font-size: 16px;
  font-weight: bold;
}

.block-order-estimate--register-customer a {
  text-decoration: underline;
}

.block-order-estimate--uid-label {
  margin-bottom: 3px;
}

.block-order-estimate--uid-label-font {
  margin-right: 10px;
}

.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--mailnews-label {
  margin-bottom: 3px;
  font-weight: bold;
  margin-right: 10px;
} 

.block-order-estimate--mailnews-message {
  font-size: 12px;
}

.block-order-estimate--commit-ft .span {
  line-height: 1.5;
}

/* AmazonPayローディング */
.block-order-amazonpay--loading {
  padding-top: 50px;
  text-align: center;
}

.block-order-amazonpay--order-back {
  margin: 10px;
}
.block-order-amazonpay--order-back-btn {
  font-size: 12px;
  background: transparent;
  padding: 18px 0 !important;
  border: 0;
  border-top: solid 1px #dcdcdc;
  border-bottom: solid 1px #dcdcdc;
}

/* ---- 注文完了(通常・ギフトフロー共通) ---- */

.block-order-complete--body {
  padding: 10px;
  text-align: center;
}

.block-order-complete--wrapper,
.block-order-complete--customerentry,
.block-order-complete--rules,
.block-order-complete--home {
  background-color: #fff;
  padding: 10px;
  margin-bottom: 10px;
}

.block-order-complete--home {
  margin-bottom: 0;
}

.block-order-complete .block-accessory-list {
  margin-top: 0;
}

.block-order-complete h1 {
  margin: -10px -10px 10px;
}

.block-order-complete--message {
  margin: 10px;
}

.block-order-complete--message p {
  padding: 10px;
}

.block-order-complete table th {
  width: 40%;
}

.block-order-complete--orderid {
  margin-bottom: 10px;
}

.block-order-complete--salesinclude {
  margin-bottom: 10px;
}

.block-order-complete--home a {
  text-decoration: underline;
}

.block-order-complete--customerentry-header {
  margin: 0 -10px 10px;
}

.block-order-complete--orderid td a {
  text-decoration: underline;
}

.block-order-complete--salesinclude td a {
  text-decoration: underline;
}

.block-order-complete--examination-btn {
  padding: 12px 70px;
  font-size: 17px;
  border-radius: 4px !important;
  margin: 0 auto;
  
}

/* ---------------------- */
/* ----ギフトフロー------- */
/* ---------------------- */

/* ---- 配送先選択 ---- */

.block-order-gift-dest {
  margin: 10px;
}

.block-order-gift-dest--header {
  margin: -10px -10px 0 -10px;
}

.block-order-gift-dest h2 {
  margin: 0 -10px 0 -10px;
}

.block-order-gift-dest--check-all {
  padding: 10px 0;
}

/* お届け先配送情報エリア */
.block-order-gift-dest--address-item {
  padding: 10px;
  margin-bottom: 10px;
  background-color: #fff;
}

.block-order-gift-dest--address-item-title {
  font-weight: bold;
  margin-bottom: 10px;
}

.block-order-gift-dest--address-item address {
  margin-left: 30px;
}

.block-order-gift-dest--address-change {
  margin-top: 10px;
  text-align: right;
}

.block-order-gift-dest--address-new {
  text-align: right;
  margin-bottom: 10px;
}

.block-order-gift-dest--cart-back {
  text-decoration: underline;
  margin-top: 10px;
  text-align: center;
}

/* 贈り主情報エリア */
.block-order-gift-dest--method-sender-info {
  background-color: #fff;
  padding: 10px;
  margin-top: 10px;
}
.block-order-gift-dest--method-sender-info p {
  font-weight: bold;
  margin-bottom: 10px;
}

.block-order-gift-dest--method-sender-info address {
  margin-left: 30px;
}

.block-order-gift-dest--method-sender-change {
  padding: 10px;
  margin-top: 10px;
  background: #f0f0f0;
  border: 1px solid #dcdcdc;
}

.block-order-gift-dest--method-sender-btn {
  margin-top: 10px;
  text-align: right;
}

.block-order-gift-dest--method-sender-input {
  background-color: #fff;
  border: 1px solid #dcdcdc;
  margin-bottom: 10px;
}

.block-order-gift-dest--method-sender-input .form-group {
  padding: 5px 10px 0 10px;
}

.block-order-gift-dest--value-label {
  display: block;
}

/* ---- 配送先商品追加 ---- */

.block-order-gift-select {
  margin: 10px;
}

.block-order-gift-select--header {
  margin: -10px -10px 0;
}

.block-order-gift-select--sender {
  margin-bottom: 5px;
}

.block-order-gift-select--sender-title {
  margin: 0 -10px;
}

.block-order-gift-select--sender-info {
  padding: 10px;
  margin-top: 10px;
  background: #fff;
}
.block-order-gift-select--sender-info p {
  font-weight: bold;
}

.block-order-gift-select--delivery-dest-add {
  margin-top: 10px;
  text-align: right;
}

.block-order-gift-select--delivery-dest-add select {
  display: inline-block;
}

.block-order-gift-select--delivery-dest-add-btn {
  display: inline-block;
  font-size: 14px;
}

.block-order-gift-select--delivery-dest-header {
  position: relative;
}

/* お届け先 */
.block-order-gift-select--delivery-dest-header-title {
  margin: 10px -10px;
}

.block-order-gift-select--delivery-dest-delete {
  text-align: right;
  position: absolute;
  right: 0;
  top: 8px;
}

.block-order-gift-select--delivery-dest-delete-btn {
  font-size: 14px;
}

.block-order-gift-select--delivery-dest-address {
  padding: 10px;
  margin-top: 10px;
  background: #fff;
}

.block-order-gift-select--delivery-dest-nickname {
  font-weight: bold;
}

/* お届け先商品 */
.block-order-gift-select--delivery-dest-goods {
  margin-top: 10px;
}

.block-order-gift-select--delivery-dest-goods-added {
  margin-top: 10px;
}

.block-order-gift-select--delivery-dest-goods-select .block-order-gift-select--delivery-dest-goods {
  padding: 10px;
  background: #f0f0f0;
  border: 1px solid #dcdcdc;
}

.block-order-gift-select--delivery-dest-goods-add {
  margin-top: 10px;
}

.block-order-gift-select--delivery-dest-goods-message {
  padding: 0 0 10px;
}

.block-order-gift-select--delivery-dest-goods-content-list .block-order-gift-select--delivery-dest-goods-checkbox-header {
  width: 30px;
}

.block-order-gift-select--delivery-dest-goods-content-list .block-order-gift-select--delivery-dest-goods-name-header {
  width: auto;
}

.block-order-gift-select--delivery-dest-goods-content-list .block-order-gift-select--delivery-dest-goods-qty-header {
  width: 50px;
}

.block-order-gift-select--delivery-dest-goods-qty input {
  width: 40px;
  text-align: right;
}

.block-order-gift-select--delivery-dest-goods-content-info th {
  width: 30%;
  max-width: 30%;
  vertical-align: middle;
  white-space: normal;
}

.block-order-gift-select--delivery-dest-goods-content-info td {
  background: #fff;
}

.block-order-gift-select--delivery-dest-goods-noshi-btn {
  font-size: 14px;
  padding: 4px 5px;
}

.block-order-gift-select--delivery-dest-goods-noshi-massage {
  padding: 0 0 10px;
}

.block-order-gift-select--delivery-dest-goods-delete {
  text-align: right;
}

.block-order-gift-select--delivery-dest-total {
  margin-top: 10px;
}

.block-order-gift-select--delivery-dest-total table th {
  width: 30%;
  max-width: 30%;
  vertical-align: middle;
  white-space: normal;
}

.block-order-gift-select--delivery-dest-total td {
  vertical-align: middle;
}

.block-order-gift-select--delivery-dest-total-price {
  display: inline-block;
  vertical-align: middle;
}

.block-order-gift-select--delivery-dest-total-price-calc {
  text-align: right;
  float: right;
  display: inline-block;
}

/* 配送方法 */
.block-order-gift-select--delivery-date h2 {
  margin: 10px -10px 0;
}

.block-order-gift-select--delivery-date-content {
  margin-top: 10px;
}

/* お支払い情報 */
.block-order-gift-select--coupon h2 {
  margin: 10px -10px 0;
}

.block-order-gift-select--coupon-content {
  margin-top: 10px;
}

.block-order-gift-select--coupon-content label {
  display: block;
  margin: 5px 0;
}

.block-order-gift-select--coupon-content input {
  display: block;
}

.block-order-gift-select--coupon-content a {
  margin-top: 10px;
}

.block-order-gift-select--promotion h2 {
  margin: 10px -10px 0;
}

.block-order-gift-select--promotion-content {
  margin-top: 10px;
}

.block-order-gift-select--promotion-content input {
  margin-top: 10px;
}

.block-order-gift-select--point-payment h2 {
  margin: 10px -10px 0;
}

.block-order-gift-select--point-payment-content {
  margin-top: 10px;
}

.block-order-gift-select--select-point-payment {
  margin-top: 10px;
}

input.block-order-gift-select--point-payment-input {
  width: 5.0em;
  background-color: #dedede;
  margin: 0 10px;
}

.block-order-gift-select--method h2 {
  margin: 10px -10px 0;
}

.block-order-gift-select--method-content {
  margin-top: 10px;
}

/* その他 */
.block-order-gift-select--other-title {
  margin: 10px -10px 0;
}

.block-order-gift-select--back {
  text-decoration: underline;
  margin-top: 10px;
  text-align: center;
}

/* ---- のし・ラッピング設定 ---- */

.block-order-gift-noshi {
  margin: 10px;
}

.block-order-gift-noshi h3 {
  margin: 0 -10px;
}

.block-order-gift-noshi--title {
  margin: -10px -10px 0;
}

.block-order-gift-noshi--sender {
  padding: 10px;
  background-color: #fff;
}

.block-order-gift-noshi--goods {
  margin-top: 10px;
  padding: 10px;
  background-color: #fff;
}

.block-order-gift-noshi--sender p {
  font-weight: bold;
}

.block-order-gift-noshi--noshi-container-title {
  margin: 10px -10px;
}

.js-order-gift-noshi-message-box-wrapper {
  margin-bottom: 10px;
}

.block-order-gift-noshi--paper-select li {
  display: inline-block;
  width: 140px;
  vertical-align: top;
  margin-right: 5px;
}

.block-order-gift-noshi--paper-message {
  margin-bottom: 10px;
}

.block-order-gift-noshi--paper-input .control-label {
  font-weight: bold;
}

.block-order-gift-noshi--nameprint-select li {
  display: inline-block;
  width: 140px;
  vertical-align: top;
  margin-right: 5px;
}

.block-order-gift-noshi--covertype-select li {
  display: inline-block;
  width: 140px;
  vertical-align: top;
  margin-right: 5px;
}

.block-order-gift-noshi--wrap-container-title {
  margin: 10px -10px;
}

.block-order-gift-noshi--wrap-select li {
  display: inline-block;
  width: 140px;
  vertical-align: top;
  margin-right: 5px;
}

.block-order-gift-noshi--section {
  margin-bottom: 10px;
}

.block-order-gift-noshi--bag-container-title {
  margin: 10px -10px;
}

.block-order-gift-noshi--bag-select li {
  display: inline-block;
  width: 140px;
  vertical-align: top;
  margin-right: 5px;
}

.block-order-gift-noshi--section {
  margin-bottom: 10px;
}

.block-order-gift-noshi--bag-input {
  font-weight: bold;
}

.block-order-gift-noshi--paper-item-price {
  display: inline-block;
}

.block-order-gift-noshi--paper-item-price {
  display: inline-block;
}

.block-order-gift-noshi--item-price {
  display: inline-block;
}

.block-order-gift-noshi--covertype-item-price {
  display: inline-block;
}

.block-order-gift-noshi--wrap-item-price {
  display: inline-block;
}

.block-order-gift-noshi--bag-item-price {
  display: inline-block;
}

.block-order-gift-noshi--nameprint-name1-1,
.block-order-gift-noshi--nameprint-name1-2,
.block-order-gift-noshi--nameprint-name2-1,
.block-order-gift-noshi--nameprint-name2-2,
.block-order-gift-noshi--nameprint-name3-1,
.block-order-gift-noshi--nameprint-name3-2 {
  display: block;
  margin-bottom: 6px;
}

.block-order-gift-noshi .action-buttons .action .btn {
  margin-top: 10px;
}

/* ---- 注文内容確認---- */

.block-order-gift-confirmation {
  padding: 10px;
}

.block-order-gift-confirmation .form-error {
  font-weight: bold;
}

.block-order-gift-confirmation--header {
  margin: -10px -10px 0;
}

.block-order-gift-confirmation--order-item-header {
  margin: 0 -10px 10px;
}

.block-order-gift-confirmation--order-item-detail-table .block-order-gift-confirmation--item-name-header {
  width: 60%;
  white-space: nowrap;
}

.block-order-gift-confirmation--order-item-detail-table .block-order-gift-confirmation--item-qty-header {
  width: 15%;
  white-space: nowrap;
}

.block-order-gift-confirmation--item-qty {
  text-align: right;
}

.block-order-gift-confirmation--order-item-detail-table .block-order-gift-confirmation--item-amount-header {
  width: 25%;
  white-space: nowrap;
}

.block-order-gift-confirmation--item-amount {
  text-align: right;
}

.block-order-gift-confirmation--item-image figure {
  width: 110px;
  height: 110px;
  background: #f5f5f5;
}

.block-order-gift-confirmation--order-item-info {
  margin-bottom: 10px;
}

.block-order-gift-confirmation--order-summary-table th {
  width: auto;
  white-space: nowrap;
}

.block-order-gift-confirmation--order-summary-table td {
  text-align: right;
}

.block-order-gift-confirmation--order-summary {
  margin-bottom: 10px;
}

.block-order-gift-confirmation .block-order-estimate--method-pay {
  margin-bottom: 10px;
}

.block-order-gift-confirmation--shipping-header {
  margin: 0 -10px 10px;
}

.block-order-gift-confirmation--orderer-table {
  margin-bottom: 10px;
}

.block-order-gift-confirmation--ordered-item-table th {
  width: auto;
  white-space: nowrap;
}

.block-order-gift-confirmation--ordered-item-table td {
  text-align: right;
}

.block-order-gift-confirmation--ordered-item-table {
  margin-bottom: 10px;
}

.block-order-gift-confirmation--ordered-item-message td {
  text-align: left;
}

.block-order-gift-confirmation--sender-table {
  margin-bottom: 10px;
}

.block-order-gift-confirmation--destination-address-header {
  margin: 0 -10px 10px;
}

.block-order-gift-confirmation--destination-address {
  padding: 10px;
  margin-bottom: 10px;
  background: #fff;
}

.block-order-gift-confirmation--sending-item-name figure {
  width: 110px;
  height: 110px;
  background: #f5f5f5;
}

.block-order-gift-confirmation--sending-item-detail-table {
  margin-bottom: 10px;
}

.block-order-gift-confirmation--other-header {
  margin: 0 -10px 10px;
}

.block-order-gift-confirmation--other-detail th {
  vertical-align: top;
  background-color: #999;
  color: #fff;
}

.block-order-gift-confirmation--other-detail {
  margin-bottom: 10px;
}

.block-order-gift-confirmation--method-pay-title {
  margin: 0 -10px;
}

.block-order-gift-confirmation--method h3 {
  margin: 0 -10px;
}

.block-order-gift-confirmation--order-comment textarea {
  display: block;
  width: 100%;
}

.block-order-gift-confirmation--order-comment {
  margin: 10px 0;
}

.block-order-gift-confirmation .action .btn-primary {
  margin: 0;
  padding: 15px 0 15px 0;
  font-size: 18px;
}

.block-order-gift-confirmation--back {
  text-decoration: underline;
  margin-top: 10px;
  text-align: center;
}

.block-order-gift-confirmation--entry-customer-title {
  margin: 0 -10px 10px;
}

.block-order-gift-confirmation--entry-customer-message {
  margin-bottom: 10px;
}

.block-order-gift-confirmation--mailnews-title {
  margin: 0 -10px 10px;
}

.block-order-gift-confirmation--mailnews-message {
  margin-bottom: 10px;
}

.block-order-gift-confirmation--novelty-header {
  margin: 0 -10px 10px;
}

.block-order-gift-confirmation--novelty-item {
  display: table;
  width: 100%;
  margin-bottom: 10px;
}

.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: 110px;
}

.block-order-gift-confirmation--novelty-item-goods {
  padding-left: 10px;
  width: auto;
}

.block-order-gift-confirmation--novelty-item-image figure {
  width: 110px;
  height: 110px;
  background: #f5f5f5;
}

.block-order-gift-confirmation--campaign-info {
  text-align: center;
  padding: 5px 0;
  margin: 10px 0;
}

.action-rakutenpay {
  text-align: center;
}

.action-rakutenpayv2{
  text-align: center;
}

.block-order-estimate--commit-btn-rakutenpayv2{
  border: none;
  background: transparent;
}

/* ディスカウント情報 */
.block-order-estimate--discount-period {
  font-size: 12px;
  text-indent: 0.5em;
  color: #777;
}

.block-order-estimate--goods-item-sales-period {
  font-size: 12px;
  color: #777;
  margin-top: 10px;
}

.block-order-estimate-goods-f{
  display: block;
  text-indent: 0.5em;
}

/* ----AmazonPayロード中表示---- */

.block-cart--amazonpay-loading {
  display: none;
  top: 0px;
  left: 0px;
  height: 100%;
  width: 100%;
  position: fixed;
  background-color: #fff;
  opacity: 0.8;
  z-index: 2;
}

.block--cart-amazonpay-loading-icon {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
}

.block-order-estimate--pay-header{
  display: flex;
  justify-content: space-between;
  padding: 10px 70px 10px 75px;
  margin-bottom: 21px;
}

.block-order-estimate--pay-header span{
  display: block;
}
.block-order-estimate--pay-header span a{
  display: block;
  width: 210px;
  line-height: 40px;
  font-size: 1.2rem;
  background-color: #000000;
  color: #ffffff;
  border-radius: 30px;
  padding: 0;
  text-align: center;
  transition: all .4s ease;
}
.block-order-estimate--pay-header span a:hover{
  opacity: 0.8;
}
.check_empty:not(:disabled){
  background-color: #ffcccc !important;
}
.block-order-estimate--change{
  font-size: 15px;
  margin: 0 auto;
}