/* ----------------------------------------
reset
---------------------------------------- */
ul, ol {
  font-size: unset;
  line-height: inherit;
}
p {
  padding: 0;
  line-height: inherit;
  font-size: unset;
  letter-spacing: normal;
}


/* ----------------------------------------
sysRequired
---------------------------------------- */
#sysMain .sysRequired{
  display: flex;
  justify-content: center;
  align-items: center;
  width: 6rem;
  height: 2.4rem;
  line-height:normal;
  font-size: 1.2rem;
  font-weight: bold;
  white-space: nowrap;
  margin: 0;
  color: #fff;
  background-color: #d35753;
}

#sysMain .sysFormItem .sysRequired{
  position: absolute;
  top:3rem;
  left:26rem;
}

  .sysRequired::before {
    content:none;
  }
  .sysRequired::after {
    content:none;
  }

/* ----------------------------------------
input / select
---------------------------------------- */
#sysMain input::placeholder,
.opcItem_itemOptionGroup_edit::placeholder,
.opcItem_purposeAnditemCommonOptionGroup_edit::placeholder{
  color: #ccc;
}

#sysMain input,
.opcItem_itemOptionGroup_edit input,
.opcItem_purposeAnditemCommonOptionGroup_edit input{
  font-size: 1.6rem;
}
#sysMain textarea,
.opcItem_itemOptionGroup_edit textarea,
.opcItem_purposeAnditemCommonOptionGroup_edit textarea{
  font-size: 1.6rem;
  min-height: 15rem;
}

.sysFormField label,
.opcItem_itemOptionGroup_edit label,
.opcItem_purposeAnditemCommonOptionGroup_edit label{
  font-size: 1.6rem;
}
  .sysFormField input[type="checkbox"],
  .opcItem_itemOptionGroup_edit input[type="checkbox"],
  .opcItem_purposeAnditemCommonOptionGroup_edit input[type="checkbox"]{
    margin: 0 1rem 0 0;
  }

.sysFormField select,
#sysBasket select,
.opcDeliveryMethod_hopeDeliveryTime_edit,
.opcBillingAddress_prefState_edit,
.opcDeliveryAddress_prefState_edit,
.opcItem_itemOptionGroup_edit select,
.opcItem_num_edit,
.opcItem_purposeAnditemCommonOptionGroup_edit select{
  position: relative;
  padding: 0 3rem 0 1rem;
  height: 5rem;
  
  -moz-appearance: menulist;
  -webkit-appearance: menulist;
  appearance: menulist;
  
  border-radius: 0;
  outline: none;
  cursor: pointer;
  min-width: 22rem;
  box-sizing: border-box;
  border: 1px solid #cccccc;
  padding: 0.9rem 3rem 0.8rem 2rem;
  font-size: 1.6rem;
  color: #333;
  background-color: transparent;
  transition-property: border-color;
  transition-duration: 0.12s;
  z-index: 1;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

input[type="search"], input[type="text"], input[type="tel"], input[type="email"], input[type="password"], textarea {
  border: 1px solid #ccc;
}

/* ----------------------------------------
sysErrorMessage errorMessage
---------------------------------------- */
#sysMemberRegisterIndex .sysForm .sysErrorMessage {
  display: none;
}

#sysRegi .sysErrorMessage{
  margin: 0 auto 1rem;
}

.sysErrorMessage{
  font-size: 1.6rem;
  line-height: 2;
  padding: 0;
  max-width: 120rem;
  margin: 0 auto 4rem;
}

.sysErrorFormField {
    background:-webkit-gradient(linear, left top, left bottom, from(#fce6e3), to(#fce6e3)) !important;
    background-color: #fce6e3 !important;
}

/* ----------------------------------------
新規会員登録
---------------------------------------- */
.sysMemberRegister .sysHeadline{
  display: flex;
  justify-content: center;
  align-items: center;
  width: auto;
  max-width: 120rem;
  height: 8rem;
  background-color: #fdfbf7;
  font-size: 3.4rem;
  font-weight: normal;
  color: #333 !important;
  letter-spacing: normal;
  margin: 0 auto 6rem !important;
  padding: 0 4rem;
}

.sysMemberRegister .sysHeadline span {
  z-index: auto;
  margin: 0;
  padding: 0;
  background:none;
}

.sysMemberRegister .sysHeadline b{
  display: none;
}
.sysTitle::before,
.sysHeadline::before{
  content:none;
}


.sysMemberRegister #sysWrap {
  max-width: none;
  overflow: inherit;  
  padding: 0 6rem;
  margin: 0 0 16rem 0;
}

.sysMemberRegister #sysMain{
  /*max-width: 140rem;*/
  max-width: 120rem;
  width: auto;
  border: none;
  padding: 8rem 0 0 !important;
  margin: 0 auto;
}


#sysMemberRegisterIndex #sysMain input[type="text"],
#sysMemberRegisterIndex #sysMain textarea {
  margin: 0;
}

.sysMemberRegister #sysMain .sysForm{
  border-top: 1px solid #e8e5e2;
  margin: 0 0 3rem 0;
}

.sysMemberRegister #sysMain .sysForm .sysFormItem{
  position: relative;
  border-bottom: 1px solid #e8e5e2;
  border-left: 1px solid #e8e5e2;
  border-right: 1px solid #e8e5e2;
  display: flex;
  width: 100%;
  padding: 0;
}

.sysMemberRegister #sysMain .sysForm .sysFormLabel {
  display: block;
  line-height:normal;
  font-size: 1.6rem;
  font-weight: bold;
  margin: 0;
  padding: 3rem 12rem 3rem 3rem;
  width: 36rem;
  border-right: 1px solid #e8e5e2;
  background-color: #f5f5f5;
}

.sysMemberRegister #sysMain .sysForm .sysFormField{
  width: calc(100% - 36rem);
  margin: 0;
  padding: 3rem;
  font-size: 1.2rem;
  line-height: 1.714;
}

@media screen and (min-width: 768px) and (max-width: 1100px) {
  .sysMemberRegister div#sysMain{
    width: 100% !important;
    margin: 0 auto;
    padding: 8rem 0 0 !important;}
}


.sysMemberAgreementFormLabel{
  display: inline-block;
  font-size: 1.6rem;
  margin: 0 0 2rem 0;
  padding: 0;
}

.sysMemberAgreement {
  border: 1px solid #e8e5e2;
  padding: 3rem;
  font-size: 1.6rem;
  line-height: 2;
  margin: 0 0 3rem 0;
}


#sysMemberRegisterIndex #sysMain .form__inner p{
  font-size:1.6rem;
  line-height: 2;
  text-align: left;
}

#sysMemberRegisterIndex #sysMain .sysForm{
  border: none;
}


#sysMemberRegisterIndex .sysFormItem.sysName{
  border-top: 1px solid #e8e5e2;
  margin: 4rem 0 0 0;
}

#sysMemberRegisterIndex .attention{
  display: flex;
  align-items: center;
  margin: 0 0 4rem 0;
}

#sysMemberRegisterIndex .required{
  display: flex;
  justify-content: center;
  align-items: center;
  width: 6rem;
  height: 2.4rem;
  font-size: 1.2rem;
  font-weight: bold;
  color: #fff;
  background-color: #d35753;
  margin: 0 1rem 0 0;
}

#sysMemberRegisterIndex #sysMain .sysForm{
  position: relative;
}
#sysMemberRegisterIndex #sysMain .sysForm > label{
  display: block;
  width: 20rem;
  margin: 0 auto;
  font-size: 1.6rem;
}

#sysMemberRegisterIndex #sysMain .sysForm > label input[type="checkbox"]{
  margin: 0 1rem 0 0;
}

#sysMemberRegisterIndex #sysMain .sysForm > label + .sysRequired{
  position: absolute;
  top:-0.3rem;
  left:calc(50% + 7rem);
}

          /*-----sysZipcode-------*/
          #sysMemberRegisterIndex #sysMain .sysForm .sysZipcode .sysFormField{
            width: 28rem;
          }

          #sysMemberRegisterIndex .sysZipcode .sysButton{
            position: relative;
            width: 16rem;
            height: 4rem;
            font-size: 1.4rem;
            font-weight: bold;
            color: #ff6666;
            border-radius: 0;
            background-color: #f5f5f5;
            margin: 3.5rem 0 0 0;
          }

          #sysMemberRegisterIndex .sysZipcode .sysButton::after {
            content: "";
            position: absolute;
            top: 50%;
            right: 1.5rem;
            width: 0.8rem;
            height: 0.8rem;
            border-top: solid 0.1rem #816a58;
            border-right: solid 0.1rem #816a58;
            transform: translateY(-50%) rotate(45deg);
          }

          /*-----sysMemberPassword-------*/
          #sysMemberRegisterIndex #sysMain .sysForm .sysMemberPassword{
            display: block;
          }
          /*#sysMemberRegisterIndex #sysMain .sysForm .sysMemberPassword .sysFormLabel:nth-of-type(1){
            border-bottom: 1px solid #e8e5e2; 
          }*/
          /*#sysMemberRegisterIndex #sysMain .sysForm .sysMemberPassword .sysFormField:nth-of-type(1)*/
          #sysMemberRegisterIndex #sysMain .sysForm .sysMemberPassword .sysFormField{
            position: absolute;
            left: 36rem;
            top: 0;
          }
          /*#sysMemberRegisterIndex #sysMain .sysForm .sysMemberPassword .sysFormField:nth-of-type(2)*/
          #sysMemberRegisterIndex #sysMain .sysForm .sysMemberPassword .sysFormField:last-of-type{
            position: absolute;
            left: 36rem;
            top: 10rem;
          }
          #sysMemberRegisterIndex #sysMain .sysForm .sysMemberPassword .sysFormLabel:nth-of-type(1){
            height: 24rem;
          }

          /*#sysMemberRegisterIndex #sysMain .sysForm .sysMemberPassword .sysFormLabel:nth-of-type(2)*/
          #sysMemberRegisterIndex #sysMain .sysForm .sysMemberPassword .sysFormLabel:last-of-type{
            position: absolute;
            left: 39rem;
            top: 11rem;
            display: inline-block;
            line-height: normal;
            font-size: 1.6rem;
            font-weight: bold;
            margin: 0;
            padding: 0;
            width: auto;
            border:none;
            background:none;
          }
          /*#sysMemberRegisterIndex #sysMain .sysForm .sysMemberPassword .sysFormLabel:nth-of-type(2) span*/
          #sysMemberRegisterIndex #sysMain .sysForm .sysMemberPassword .sysFormLabel:last-of-type span{
            display: none;
          }

          /*-----sysFormItem sysGender-------*/
          
          #sysMemberRegisterIndex #sysMain .sysForm ul.sysFormField{
            width: auto;
            padding: 0;
          }


#sysMemberRegisterIndex .sysFormField a{
  color: #ff6666;
  text-decoration: underline;
  border-bottom: none;
  margin: 0 0 1.5rem 0;
}
#sysMemberRegisterIndex .sysFormField a.hover{
  text-decoration: none;
}

#sysMemberRegisterIndex #sysMain > form{
  padding: 0;
}

#sysMemberRegisterConfirm #sysMain h2 + div{
  font-size: 1.6rem;
  line-height: 2;
  margin: 0 0 4rem 0;
}

#sysMemberRegisterConfirm #sysMain .sysFormField {
  border: none;
  padding: 3rem;
  font-size:1.6rem;
  min-height:none;
  margin: 0 auto;
}

#sysMemberRegisterConfirm label{
  margin: 0 !important;
}

#sysMemberRegisterConfirm #sysMain > form{
  padding: 0;
}

#sysMemberRegisterConfirm #sysMain form + form .sysForm{
  border: none;
  margin: 0;
  padding: 0;
}

.sysMemberRegister #sysMain p{
  font-size:1.6rem;
  line-height: 1.875;
  text-align: center;
  margin:0 0 4rem 0;
}

/* ----------------------------------------
カート
---------------------------------------- */
#sysBasket #sysWrap {
  max-width: none;
  overflow: inherit;
  padding: 0 6rem;
  margin: 0 0 16rem 0;
}

#sysBasket #sysMain {
  display: flex;
  flex-direction: column;
  
  max-width: 120rem;
  width: auto;
  border: none;
  padding: 8rem 0 0 !important;
  margin: 0 auto;
}

#sysBasket .sysHeadline{order: -3;}
#sysBasket .sysTotal{order: -1;}
#sysBasket .sysItemListArea{order: -2;}

#sysBasket .sysHeadline{
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  max-width: 120rem;
  height: 8rem;
  background-color: #fdfbf7;
  font-size: 3.4rem;
  font-weight: normal;
  color: #333 !important;
  letter-spacing: normal;
  margin: 0 auto 6rem !important;
  padding: 0 4rem;
}

#sysBasket .sysHeadline span {
  z-index: auto;
  margin: 0;
  padding: 0;
  background:none;
}

#sysBasket .sysHeadline b{
  display: none;
}


#sysBasket .sysItemListArea .sysCartTitle{
  color: #333;
  font-size: 2.4rem;
  font-weight: bold;
  margin: 0 0 2rem 0;
}

#sysBasket .sysItemListArea .sysBox{
  font-size: 1.6rem;
  line-height: 2;
  color: #333;
  text-align: center;
  background-color: #f5f5f5;
  border: none;
  margin: 0 0 4rem 0;
  padding: 2rem 3rem;
}

#sysBasket .sysTotal{
  margin: 0 0 4rem 0;
}

#sysBasket .sysTotal .sysBox{
  font-size: 1.6rem;
  color: #333;
  background-color: #fff;
  border: 10px solid #f3e7de;
  border-radius: 0;
  box-shadow: none;
  margin: 0;
  padding: 3rem;
}

#sysBasket .sysTotal .sysBox .sysTotalTxt{
  margin: 0 0 1.5rem 0;
}

#sysBasket .sysTotal .sysBox .sysTotalTxt .sysCartAttention{
  font-size: 3rem;
}
#sysBasket .sysTotal .sysBox .sysCartAttention{
  color:#dc4f96; 
}

@media screen and (min-width: 768px) and (max-width: 1100px) {
  .sysCart #sysMain {
    width: 100% !important;}
}


.sysCartItemAreaMessage{
  font-size: 1.6rem;
  line-height: 2;
  color: #333;
  margin: 0 0 2rem 0;
}

#sysBasket .sysItemListArea .nav .sysBox{
  border: 1px solid #e8e5e2;
  background-color: #fff;
  text-align: left;
  padding: 4rem;
}

#sysBasket #sysMain .sysNextSubmitArea:first-of-type{
  display: none;
}


#sysBasket .sysItemListArea .nav .sysBox .sysProductImg{
  width: 20rem;
  height: auto;
  margin:0 3rem 0 0;
}

#sysBasket .sysItemListArea .nav .sysBox .sysProduct {
  float: left;
  width: calc(100% - 20rem - 3rem);
}

#sysBasket .sysItemListArea .nav .sysBox .sysProduct .sysItemName a{
  display: inline-block;
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1.5;
  color: #333;
  margin: 0 0 1rem 0;
}

#sysBasket .sysItemListArea .nav .sysBox .sysProduct .sysItemName a.hover{
  color: #ff6666;
}

#sysBasket .sysItemListArea .nav .sysBox .sysProduct .sysItemRetailPrice{
  font-size: 1.6rem;
  line-height: 1.5;
  color: #333;
}

#sysBasket .sysItemListArea .nav .sysBox hr{
  border: none;
  margin: 0;
}

#sysBasket .sysItemListArea .nav .sysBox .sysNumArea{
  display: none;
}

#sysBasket .sysItemListArea .nav .sysBox .sysSubTotalArea .sysCartInForm{
  background-color: #f5f5f5;
  padding: 4rem;
  margin: 0 0 3rem 0;
}

#sysBasket .sysItemListArea .nav .sysBox .sysCartAttention{
  color: #dc4f96;
}

/*#sysBasket #sysSelections div{
  width:65%;
  height: 7rem; 
}

#sysBasket #sysSelections select,
#sysBasket #sysSelections input{
  float: right;
  width: calc(100% - 22rem);
  max-width: none;
  height: auto;
  margin: 0 !important;
}*/

#sysBasket select{
  background-color: #fff;
}
#sysBasket #sysSelections select,
#sysBasket #sysSelections input{
  display: block;
  width: 50%;
  min-width: 50%;
  margin: 0 0 auto 0;
}


/* ----------------------------------------
ログイン
---------------------------------------- */
#sysRegi #sysWrap {
  max-width: none;
  overflow: inherit;
  padding: 0 6rem;
  margin: 0 0 16rem 0;
}

#sysRegi #sysMain {  
  max-width: 120rem;
  width: auto;
  border: none;
  padding: 8rem 0 0 !important;
  margin: 0 auto;
}

#sysRegi #sysPurchaseAuthMember{}
#sysRegi #sysPurchaseAuthMember .sysCartTitle{
  font-size: 2.4rem;
  color: #333;
  margin: 0 0 2rem 0;
}
#sysRegi #sysPurchaseAuthMember .sysBox{
  border: 1px solid #e8e5e2;
  margin: 0 auto 6rem;
  padding: 4rem;
}

#sysRegi #sysPurchaseAuthMember .sysBox .sysForm{
  width: 60rem;
  margin: 0 auto;
}

#sysRegi #sysRegisterForm{}

#sysRegi #sysRegisterForm .sysCartTitle{
  font-size: 2.4rem;
  color: #333;
  margin: 0 0 2rem 0;
}

#sysRegi #sysRegisterForm .sysBox{
  background-color: #fdfbf7;
  border: none;
  margin: 0 auto 6rem;
  padding: 4rem;
}
#sysRegi #sysRegisterForm .sysBox p{
  font-size:1.6rem;
  color: #333;
  text-align: center;
  margin: 0 0 2rem 0;
}

#sysMain .sysFormLabel {
  font-size: 1.6rem;
  color: #333;
  padding: 0;
}

/* ----------------------------------------
お届け
---------------------------------------- */
.sysOpcBody #sysWrap {
  max-width: none;
  overflow: inherit;
  padding: 0 6rem;
  margin: 0 0 16rem 0;
}

.sysOpcBody #sysMain {  
  max-width: 120rem;
  width: auto;
  border: none;
  padding: 8rem 0 0 !important;
  margin: 0 auto;
}

.opcDeliveryMethod_edit{
  border: 1px solid #e8e5e2;
  padding: 4rem;
}

.opcDeliveryMethod_buttonGroup_edit {
  padding: 0;
}

.opcDeliveryMethod_deliveryMethodListGroup_edit{
  width: 60rem;
  margin: 0 auto;
  padding:0 0 4rem 0;
  border-bottom: 1px solid #e8e5e2;
}

.opcDeliveryMethod_deliveryMethodAndLabelGroup_edit{
  font-size: 1.6rem;
  color: #333;
}

.opcDeliveryMethodTitle{
  font-size: 2.4rem;
  color: #333;
  margin: 0 0 2rem 0;
}
.opcDeliveryMethod_hopeDeliveryTime_edit{
  background: #fff !important;
  margin: 0 0 0 1.5rem !important;
}


/* ----------------------------------------
お支払い
---------------------------------------- */
.opcPaymentMethodTitle{
  font-size: 2.4rem !important;
  color: #333;
  margin: 0 0 2rem 0;
}

.opcPaymentMethodList{
  border: 1px solid #e8e5e2;
  padding: 4rem;
}

.opcPaymentMethod_edit{
  margin: 0 0 4rem 0;
}

.opcPaymentMethod_paymentMethodAndLabelGroup_edit{
  font-size: 1.6rem;
  font-weight: bold;
  color: #333;
}

.opcPaymentMethod_paymentMethodDetailGroup_edit{
  font-size: 1.4rem;
  color: #333;
  line-height: 1.714;
  background: #fdfbf7;
  padding: 2rem;
  margin: 0;
}

.opcPaymentMethod_edit {
  padding: 0;
}


.opcPaymentMethod_paymentMethodErrorMessage_edit {
  font-size: 1.6rem;
  line-height: 2;
  margin: 3rem auto 3rem;
}


/* ----------------------------------------
ご注文者情報
---------------------------------------- */
.opcBillingAddressTitle{
  font-size: 2.4rem !important;
  color: #333;
  margin: 0 0 2rem 0;
}

.opcBillingAddress_edit{
  border: 1px solid #e8e5e2;
  padding: 4rem;
  font-size: 1.6rem;
  color: #333;
}

.opcBillingAddress_edit div{
  margin: 0 0 2rem 0;
}

.opcBillingAddress_edit div > span{
  margin: 0 0 1rem 0;
  font-weight: bold;
}

.opcBillingAddress_prefState_edit{
  background-color: #fff !important;
}

.opcCommonEditLabel{
  display: flex;
  align-items: center;
  gap: 1rem;
  margin: 0;
  
  padding-left: 0;
  line-height: 2;
  font-size: 1.6rem;
}

.opcCommonRequireLabel{
  display: flex;
  justify-content: center;
  align-items: center;
  width: 6rem;
  height: 2.4rem;
  line-height:normal;
  font-size: 1.2rem;
  font-weight: bold;
  white-space: nowrap;
  margin: 0;
  color: #fff !important;
  background-color: #d35753;
}
          /*-----pref-------*/
          .opcBillingAddress_prefState_edit{
            margin: 0;
          }

          /*-----sysZipcode-------*/
          .opcBillingAddress_zipCode_edit[type="tel"]{
            width: 22rem;
          }

          .opcBillingAddress_zipCodeSearchButton_edit{
            position: relative;
            width: 16rem;
            height: 4rem;
            font-size: 1.4rem;
            font-weight: bold;
            color: #ff6666;
            border: none;
            border-radius: 0;
            background-color: #f5f5f5 !important;
            margin: 0 0 0 2rem;
          }

          .opcBillingAddress_zipCodeSearchButton_edit.hover{
            background-color: #e8e5e2 !important;
          }

          .opcBillingAddress_zipCodeSearchButton_edit::after {
            content: "";
            position: absolute;
            top: 50%;
            right: 1.5rem;
            width: 0.8rem;
            height: 0.8rem;
            border-top: solid 0.1rem #816a58;
            border-right: solid 0.1rem #816a58;
            transform: translateY(-50%) rotate(45deg);
          }


/* ----------------------------------------
お届け先情報
---------------------------------------- */
.opcDeliveryAddressTitle{
  font-size: 2.4rem !important;
  color: #333;
  margin: 0 0 2rem 0;
}

.opcDeliveryAddress_edit{
  border: 1px solid #e8e5e2;
  padding: 4rem;
  font-size: 1.6rem;
  color: #333;
}

.opcDeliveryAddress_edit div{
  margin: 0 0 2rem 0;
}

.opcDeliveryAddress_edit div .opcCommonEditLabel{
  margin: 0 0 1rem 0;
}

.opcDeliveryAddress_edit div .opcCommonEditLabel > span{
  font-weight: bold;
}

.opcDeliveryAddress_prefState_edit{
  background-color: #fff !important;
}

.opcCommonEditLabel{
  display: flex;
  align-items: center;
  gap: 1rem;
}
.opcCommonRequireLabel{
  display: flex;
  justify-content: center;
  align-items: center;
  width: 6rem;
  height: 2.4rem;
  line-height:normal;
  font-size: 1.2rem;
  font-weight: bold;
  white-space: nowrap;
  margin: 0;
  color: #fff !important;
  background-color: #d35753;
}

          /*-----sysZipcode-------*/
          .opcDeliveryAddress_zipCode_edit[type="tel"]{
            width: 22rem;
          }

          .opcDeliveryAddress_zipCodeSearchButton_edit{
            position: relative;
            width: 16rem;
            height: 4rem;
            font-size: 1.4rem;
            font-weight: bold;
            color: #ff6666;
            border: none;
            border-radius: 0;
            background-color: #f5f5f5 !important;
            margin: 0 0 0 2rem;
          }

          .opcDeliveryAddress_zipCodeSearchButton_edit.hover{
            background-color: #e8e5e2 !important;
          }

          .opcBillingAddress_zipCodeSearchButton_edit::after {
            content: "";
            position: absolute;
            top: 50%;
            right: 1.5rem;
            width: 0.8rem;
            height: 0.8rem;
            border-top: solid 0.1rem #816a58;
            border-right: solid 0.1rem #816a58;
            transform: translateY(-50%) rotate(45deg);
          }

.opcDeliveryAddress_openDialogButtonGroup_edit{
  text-align: right;
}

.opcDeliveryAddress_openDialogButton_edit{
  font-size: 1.6rem;
  color: #ff6666;
  border: none;
  padding: 0 0 0.5rem 0 !important;
  margin: 0;
  text-decoration: underline;
  
}
.opcDeliveryAddress_openDialogButton_edit.hover{
  text-decoration: none;
}

.modaal-content-container .opcDeliveryAddressEditDialog{
 font-size: 1.6rem;
}

.opcDeliveryAddressEditDialog_customerDeliveryAddressButton {
  width: 100%;
  margin-left: 0;
}

.modaal-container {
  padding: 1.5rem;
}

.modaal-content-container {
  padding: 0 !important;
}

.modaal-content-container .opcDeliveryAddressEditDialog {
  font-size: 1.4rem;
}


/* ----------------------------------------
注文確認画面
---------------------------------------- */
.opcOrderSummaryTitle,
.opcItemTitle,
.opcRemarksTitle{
  font-size: 2.4rem !important;
  color: #333;
  margin: 0 0 2rem 0;
}

.opcOrderSummary{
  font-size: 1.6rem;
  line-height: 2;
  color: #333;
  border: 10px solid #f3e7de;
  padding: 3rem;
  margin: 0 0 4rem 0;
}

.opcOrderSummary_totalPricesAndLabelGroup,
.opcOrderSummary_totalPricesGroup{
  font-size: 2.1rem;
}

.opcBillingAddress,
.opcDeliveryAddress,
.opcDeliveryMethod,
.opcItem,
.opcPaymentMethod,
.opcRemarks_edit{
  border: 1px solid #e8e5e2;
  padding: 4rem;
  font-size: 1.6rem;
  line-height: 2;
  color: #333;
  margin: 0 0 4rem 0;
}

.opcBillingAddress .opcCommonReferenceLabel,
.opcDeliveryAddress .opcCommonReferenceLabel,
.opcDeliveryMethod .opcCommonReferenceLabel,
.opcPaymentMethod .opcCommonReferenceLabel{
  display: inline;
  font-weight: bold;
}

.opcBillingAddress .opcCommonReferenceLabel::after,
.opcDeliveryAddress .opcCommonReferenceLabel::after,
.opcDeliveryMethod .opcCommonReferenceLabel::after,
.opcPaymentMethod .opcCommonReferenceLabel::after{
  content: "：";  
  position: relative;
}

.opc > .opcRequestOrderArea:first-of-type{
  display: none;
}

.opcItem_itemImageGroup {
  width: auto;
}

.opcItem_itemSummary{
  width: calc(100% - 23rem);
  padding: 0;
}

.opcItem_itemImage{
  width: 20rem;
  height: auto;
  margin:0 3rem 0 0;
}

.opcItem_itemAndLabelGroup{
  margin-bottom: 3rem;
}

.opcItem_rentalSchedulesGroup{
  border: 4px solid #e8e5e2;
  padding: 1rem 3rem;
  margin: 0 0 2rem 0;
}

.opcItem_itemName {
  font-size: 1.6rem;
}

.opcItem_rentalStartDateLabel,
.opcItem_rentalUsageStartDateLabel{
  font-weight: bold;
}
.opcItem_rentalStartDate,
.opcItem_rentalUsageStartDate{
  float: none;
}


.opcItem_num_edit{
  background-color: #fff !important;
}

.opcItem_deliveryAddressItemGroup_edit {
  border-top:none;
}
.opcItem_deliveryAddressItemGroup_edit {
  padding: 0;
}

.opcItem_numAndLabelGroup_edit{
  margin: 0 0 2rem 0;
}
.opcItem_increaseNumButton_edit,
.opcItem_decreaseNumButton_edit{
  display: none;
}

.opcItem_itemOptionGroup_edit{
  background-color: #f5f5f5;
  padding: 4rem;
  margin: 0 0 3rem 0;
}

.opcItem_itemOptionGroup_edit select{
  background-color: #fff !important;
}
.opcItem_itemOptionGroup_edit select,
.opcItem_itemOptionGroup_edit input{
  display: block;
  width: 50%;
  min-width: 50%;
  margin: 0 0 auto 0;
}
.opcItem_itemOptionAndLabelGroup_edit{
  margin-bottom: 10px;
}

.opcItem_deliveryAddressItemGroup{
  border-top: none;
}


/*--OP--*/
.opcItem_purpose_edit {
  margin: 0 0 2rem 0;
  background-color: #f3e7de;
  padding: 3rem;
}

.opcItem_purposeAnditemCommonOptionGroup_edit{
  background-color: #f5f5f5;
  padding: 4rem;
  margin: 0 0 3rem 0;
}

.opcItem_purposeAnditemCommonOptionGroup_edit select{
  background-color: #fff !important;
}
.opcItem_purposeAnditemCommonOptionGroup_edit select,
.opcItem_purposeAnditemCommonOptionGroup_edit input{
  display: block;
  width: 50%;
  min-width: 50%;
  margin: 0 0 auto 0;
}
.opcItem_itemCommonOptionAndLabelGroup_edit:not(:last-child){
  margin-bottom: 1rem;
}

.opcItem_itemCommonOptionTitleLabel_edit{
  display: none;
}

.opcItem_itemCommonOptionSelectRequireLabel_edit{
  display: none;
}

.opcItem_initialErrorMessage{
  text-align: left;
  margin-left: 0;
}
.opcConfirm_initialErrorMessage{
  display: block;
  text-align: left;
  margin: 0 0 4rem 0;
  font-size: 1.6rem;
}


/* ----------------------------------------
完了画面
---------------------------------------- */
#sysThanks #sysWrap {
  max-width: none;
  overflow: inherit;
  padding: 0 6rem;
  margin: 0 0 16rem 0;
}

#sysThanks #sysMain {
  max-width: 100rem;
  width: auto;
  border: none;
  padding: 8rem 0 0 !important;
  margin: 0 auto;
}

#sysThanks .sysBox{
  font-size: 1.6rem;
  color: #333;
  line-height: 2;
  border: none;
  padding: 0;
  margin: 0 auto;
  text-align: center;
}

#sysThanks.sysCart .sysBox:nth-of-type(2) div:nth-of-type(1){
  font-size: 2.4rem;
  line-height: 2;
  margin: 0 0 4rem 0;
}

#sysThanks .sysBox .sysOrderNumber{
  display: block;
  font-size: 1.8rem !important; 
  border: 1px solid #e8e5e2;
  padding: 1.5rem;
  margin: 1rem 0 1rem 0;
}

#sysThanks .sysBox .sysCartNote{
  font-size: 1.4rem; 
  color: #333;
  padding-left:1em;
	text-indent:-1em;
}

#sysThanks .thanks__inner{
  padding: 4rem 0 0 0; 
}
#sysThanks .thanks__txt{
  font-weight: bold;
  color: #dc4f96;
  margin: 0 0 2rem 0;
}
#sysThanks .thanks__note{
  font-size: 1.4rem; 
  background-color:#fdfbf7; 
  text-align: left; 
  padding: 3rem 4rem;
  margin: 0 0 4rem 0;
}

#sysThanks .thanks__note li:first-child{
  margin: 0 0 2rem 0;
}

#sysThanks .thanks__note li:not(:first-child){
  padding-left:1em;
	text-indent:-1em;
}



#sysThanks .thanks__kikuzuur{
  margin: 0 0 4rem 0;
}
#sysThanks .thanks__kikuzuur li span{
  font-weight: bold;
}

#sysThanks .thanks__kikuzuur .kiku__address,
#sysThanks .thanks__kikuzuur .kiku__time{
  margin: 0 0 1.5rem 0; 
}

#sysThanks .link-btn a{
  color: #fff;
}


@media screen and (min-width: 768px) and (max-width: 1100px) {
  #sysThanks #sysWrap,
  #sysCartError #sysMain {
    width: 100% !important;
    margin-left: 0;
  }
}


/* ----------------------------------------
エラー画面
---------------------------------------- */
#sysCartError #sysWrap {
  max-width: none;
  overflow: inherit;
  padding: 0 6rem;
  margin: 0 0 16rem 0;
}

#sysCartError #sysMain {
  display: flex;
  flex-direction: column;
  
  max-width: 120rem;
  width: auto;
  border: none;
  padding: 8rem 0 0 !important;
  margin: 0 auto;
}

#sysCartError .sysBox{
  border: none;
}

#sysCartError .sysCartError{
  font-size: 1.6rem;
  line-height: 2;
  color: #333;
  margin: 0 0 6rem 0;
}



/* ----------------------------------------
BTN
---------------------------------------- */
.opcCommonButton{
  padding: 0;
}

#sysMemberRegisterIndex .sysButton[type="submit"],
#sysMemberRegisterConfirm .sysBackButton,
#sysBasket #sysMain .sysBackButton[type="submit"],
#sysBasket .sysItemListArea .nav .sysBox .sysDeleteArea,
#sysRegi #sysMain #sysPurchaseAuthMember .sysButton,
#sysRegi #sysMain #sysRegisterForm .sysButton,
#sysRegi #sysMain .sysBackSubmitArea .sysButton,
.sysOpcBody .opcDeliveryMethod_backButton_edit.opcCommonButtonEdit,
.sysOpcBody .opcPaymentMethod_backButton_edit.opcCommonButtonEdit,
.sysOpcBody .opcBillingAddress_editButton,
.sysOpcBody .opcDeliveryAddress_editButton,
.sysOpcBody .opcDeliveryMethod_editButton,
.sysOpcBody .opcPaymentMethod_editButton,
.sysOpcBody .opcOrderBackToBasket_backToBasket,
.sysOpcBody .opcItem_addButton.opcCommonButton,
.sysOpcBody .opcItem_deleteButton_edit.opcCommonButton{
  display: flex;
  justify-content: center;
  align-items: center;
  width: 22rem;
  height: 5rem;
  margin: 0 auto 0;
  float: none;
  font-size: 1.6rem;
  color: #816a58;
  border-radius: 50px;
  border: 2px solid #e8e5e2;
  background-color: #fff;
}

#sysBasket .sysItemListArea .nav .sysBox .sysDeleteArea,
.sysOpcBody .opcBillingAddress_editButton,
.sysOpcBody .opcDeliveryAddress_editButton,
.sysOpcBody .opcDeliveryMethod_editButton,
.sysOpcBody .opcPaymentMethod_editButton,
.sysOpcBody .opcItem_addButton.opcCommonButton,
.sysOpcBody .opcItem_deleteButton_edit.opcCommonButton{
  margin: 0 0 0 auto;
}

#sysRegi #sysMain #sysPurchaseAuthMember .sysButton{
  width: 28rem;
}

#sysMemberRegisterIndex .sysButton.hover,
#sysMemberRegisterConfirm .sysBackButton.hover,
#sysBasket #sysMain .sysBackButton[type="submit"].hover,
#sysBasket .sysItemListArea .nav .sysBox .sysDeleteArea.hover,
#sysRegi #sysMain #sysPurchaseAuthMember .sysButton.hover,
#sysRegi #sysMain #sysRegisterForm .sysButton.hover,
#sysRegi #sysMain .sysBackSubmitArea .sysButton.hover,
.sysOpcBody .opcDeliveryMethod_backButton_edit.opcCommonButtonEdit.hover,
.sysOpcBody .opcPaymentMethod_backButton_edit.opcCommonButtonEdit.hover,
.sysOpcBody .opcBillingAddress_editButton.hover,
.sysOpcBody .opcDeliveryAddress_editButton.hover,
.sysOpcBody .opcDeliveryMethod_editButton.hover,
.sysOpcBody .opcPaymentMethod_editButton.hover,
.sysOpcBody .opcOrderBackToBasket_backToBasket.hover,
.sysOpcBody .opcItem_addButton.opcCommonButton.hover,
.sysOpcBody .opcItem_deleteButton_edit.opcCommonButton.hover{
  background-color: #e8e5e2 !important;
}

input[type="submit"] {
  -webkit-appearance: none;
  padding:0 !important;
  line-height: normal;
  margin-top: 0;
}

#sysMemberRegisterIndex .sysNextSubmit,
#sysMemberRegisterConfirm .sysNextSubmit,
#sysBasket #sysMain .sysNextSubmitArea .sysNextSubmit,
#sysRegi #sysMain .sysLoginButton,
#sysRegi #sysMain #sysPurchaseAuthMember .sysLoginButton,
#sysRegi #sysMain #sysRegisterForm .sysNextSubmitArea .sysNextSubmit,
.sysOpcBody .opcDeliveryMethod_completeButton_edit,
.sysOpcBody .opcPaymentMethod_completeButton_edit,
.sysOpcBody .opcBillingAddress_completeButton_edit,
.sysOpcBody .opcDeliveryAddress_completeButton_edit,
.sysOpcBody .opcConfirm_requestOrder,
.sysNextSubmit{
  float: none;
  position: relative;
  width: 30rem;
  min-height: 8rem;
  display: flex;
  justify-content: center;
  align-items: center;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 30%);
  text-align: center;
  padding: 1rem 4rem 1rem 4rem;
  color: #fff;
  font-size: 1.8rem !important;
  font-weight: normal;
  background-color: #816a58 !important; 
  transition: box-shadow 0.12s, background-color 0.12s;
  border:none !important; 
  border-radius: 0;
  margin: 8rem auto 0;
}

#sysFormConfirm .sysNextSubmit{
  width: 30rem;
  margin: 0 auto !important; 
}

#sysBasket #sysMain .sysNextSubmitArea .sysNextSubmit,
.sysOpcBody .opcConfirm_requestOrder{
  width: 30rem !important;
  margin: 2rem auto 3rem !important; 
}

#sysRegi #sysMain .sysLoginButton,
#sysRegi #sysMain #sysPurchaseAuthMember .sysLoginButton,
.sysOpcBody .opcDeliveryMethod_completeButton_edit,
.sysOpcBody .opcPaymentMethod_completeButton_edit{
  margin: 4rem auto 4rem; 
}

.sysOpcBody .opcBillingAddress_completeButton_edit,
.sysOpcBody .opcDeliveryAddress_completeButton_edit{
  margin: 0 auto; 
}

#sysRegi #sysMain #sysRegisterForm .sysNextSubmitArea .sysNextSubmit{
  width: 30rem !important;
  margin: 0 auto !important; 
}

#sysMemberRegisterConfirm .sysNextSubmit.hover,
#sysBasket #sysMain .sysNextSubmitArea .sysNextSubmit.hover,
#sysRegi #sysMain .sysLoginButton.hover,
#sysRegi #sysMain #sysPurchaseAuthMember .sysLoginButton.hover,
#sysRegi #sysMain #sysRegisterForm .sysNextSubmitArea .sysNextSubmit.hover,
.sysOpcBody .opcDeliveryMethod_completeButton_edit.hover,
.sysOpcBody .opcPaymentMethod_completeButton_edit.hover,
.sysOpcBody .opcBillingAddress_completeButton_edit.hover,
.sysOpcBody .opcDeliveryAddress_completeButton_edit.hover,
.sysOpcBody .opcConfirm_requestOrder.hover,
.sysNextSubmit.hover{
  opacity: 0.8;
  box-shadow: none;
  transition-duration: 0.12s;}


.sysNextSubmitAreaForUseAmazon{
  padding: 15px;
}
.sysNextSubmitAreaForUseAmazon:first-of-type {
  display: none;
}
