@charset "UTF-8";

/*==========================
共通
============================*/

/* サイドバー */

.box-side-item {
  margin-top: 27px;
}

/* 見出し */

.mypage-title {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.mypage-title > .tit {
  color: #3f4537;
  font-size: 24px;
  font-weight: bold;
}

.img-mypage-title {
  margin-right: 17px;
}

.img-mypage-title > img {
  width: 56px;
  height: auto;
}

/*　ボタン　*/

.btn-mypage-decision {
  position: relative;
  padding: 9px 47px 9px 40px;
  background: #a9d38c;
  background: -moz-linear-gradient(top, #a9d38c 0%, #6baf39 36%, #64a934 66%, #2f9026 100%);
  background: -webkit-linear-gradient(top, #a9d38c 0%,#6baf39 36%,#64a934 66%,#2f9026 100%);
  background: linear-gradient(to bottom, #a9d38c 0%,#6baf39 36%,#64a934 66%,#2f9026 100%);
  font-size: 22px;
  color: #fff;
  border-radius: 8px;
  letter-spacing: .1em;
  box-shadow:0px 1px 4px 0px #e8e8e8;
  text-shadow:0px 0px 2px #6fab40;
  border: solid 2px #8ec769;
  -moz-transition: opacity 0.5s ease;
  -o-transition: opacity 0.5s ease;
  -ms-transition: opacity 0.5s ease;
  -webkit-transition: opacity 0.5s ease;
  transition: opacity 0.5s ease;
}

.btn-mypage-decision::after {
  display: block;
  content: '';
  position: absolute;
  top: 50%;
  right: 15px;
  width: 6px;
  height: 6px;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  margin-top: -5px;
}

.btn-mypage-decision:hover {
  -moz-transition: opacity 0.5s ease;
  -o-transition: opacity 0.5s ease;
  -ms-transition: opacity 0.5s ease;
  -webkit-transition: opacity 0.5s ease;
  transition: opacity 0.5s ease;
  opacity: 0.8;
  text-decoration: none;
}

.btn-mypage-decision[disabled="disabled"] {
  background: #EFEFEF;
  color: #999;
  text-shadow: none;
  border: none;
  cursor: default;
}

.btn-mypage-decision.no-arrow::after {
  display: none;
}

.btn-mypage-back {
  position: relative;
  padding: 9px 57px 9px 70px;  
  background: #f4f4f4;
  background: -moz-linear-gradient(top, #f4f4f4 0%, #e0e0e0 36%, #c6c6c6 66%, #b0b0b0 100%);
  background: -webkit-linear-gradient(top, #f4f4f4 0%,#e0e0e0 36%,#c6c6c6 66%,#b0b0b0 100%);
  background: linear-gradient(to bottom, #f4f4f4 0%,#e0e0e0 36%,#c6c6c6 66%,#b0b0b0 100%);
  border: solid 2px #f1f1f1;
  font-size: 22px;
  color: #000;
  border-radius: 8px;
  letter-spacing: .1em;
  box-shadow:0px 1px 4px 0px #e8e8e8;
  -moz-transition: opacity 0.5s ease;
  -o-transition: opacity 0.5s ease;
  -ms-transition: opacity 0.5s ease;
  -webkit-transition: opacity 0.5s ease;
  transition: opacity 0.5s ease;
}

.btn-mypage-back::after {
  display: block;
  content: '';
  position: absolute;
  top: 50%;
  left: 25px;
  width: 6px;
  height: 6px;
  border-top: solid 2px #000;
  border-right: solid 2px #000;
  -moz-transform: rotate(-135deg);
  -ms-transform: rotate(-135deg);
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg);
  margin-top: -4px;
}

.btn-mypage-back.no-arrow::after {
  display: none;
}

.btn-mypage-back:hover {
  -moz-transition: opacity 0.5s ease;
  -o-transition: opacity 0.5s ease;
  -ms-transition: opacity 0.5s ease;
  -webkit-transition: opacity 0.5s ease;
  transition: opacity 0.5s ease;
  opacity: 0.8;
  text-decoration: none;
}

.btn-mypage-delete {
  position: relative;
  padding: 9px 47px 9px 40px;
  background: #f4f4f4;
  background: -moz-linear-gradient(top, #f4f4f4 0%, #e0e0e0 36%, #c6c6c6 66%, #b0b0b0 100%);
  background: -webkit-linear-gradient(top, #f4f4f4 0%,#e0e0e0 36%,#c6c6c6 66%,#b0b0b0 100%);
  background: linear-gradient(to bottom, #f4f4f4 0%,#e0e0e0 36%,#c6c6c6 66%,#b0b0b0 100%);
  font-size: 22px;
  color: #000;
  border-radius: 8px;
  letter-spacing: .1em;
  box-shadow:0px 1px 4px 0px #e8e8e8;
  border: solid 2px #f1f1f1;
  -moz-transition: opacity 0.5s ease;
  -o-transition: opacity 0.5s ease;
  -ms-transition: opacity 0.5s ease;
  -webkit-transition: opacity 0.5s ease;
  transition: opacity 0.5s ease;
}

.btn-mypage-delete:hover {
  -moz-transition: opacity 0.5s ease;
  -o-transition: opacity 0.5s ease;
  -ms-transition: opacity 0.5s ease;
  -webkit-transition: opacity 0.5s ease;
  transition: opacity 0.5s ease;
  opacity: 0.8;
  text-decoration: none;
}

/*　loding　*/

#flower-loader {
  display: none;
}

#flower-loader .flower {
  position: fixed;
  left: 50%;
  top: 50%;
  z-index: 1000;
  overflow: hidden;
  text-indent: -9999px;
  display: inline-block;
  width: 16px;
  height: 16px;
  background: #FFF;
  border-radius: 100%;
  -moz-box-shadow: white 0 0 15px 0, #f6abb8 -12px -12px 0 4px, #f6abb8 12px -12px 0 4px, #f6abb8 12px 12px 0 4px, #f6abb8 -12px 12px 0 4px;
  -webkit-box-shadow: white 0 0 15px 0, #f6abb8 -12px -12px 0 4px, #f6abb8 12px -12px 0 4px, #f6abb8 12px 12px 0 4px, #f6abb8 -12px 12px 0 4px;
  box-shadow: white 0 0 15px 0, #f6abb8 -12px -12px 0 4px, #f6abb8 12px -12px 0 4px, #f6abb8 12px 12px 0 4px, #f6abb8 -12px 12px 0 4px;
  -moz-animation: flower-loader 5s infinite ease-in-out;
  -webkit-animation: flower-loader 5s infinite ease-in-out;
  animation: flower-loader 5s infinite ease-in-out;
  -moz-transform-origin: 50% 50%;
  -ms-transform-origin: 50% 50%;
  -webkit-transform-origin: 50% 50%;
  transform-origin: 50% 50%;
  zoom: 1.2;
}

#flower-loader:after {
  display: block;
  content: "";
  position: fixed;
  background-color: rgba(255, 255, 255, 0.5);
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 950;
}

#flower-loader.flower-loader--show {
  display: block;
}

#overlay {
  opacity: 0;
  -moz-transition: opacity 0.25s ease-in-out;
  -o-transition: opacity 0.25s ease-in-out;
  -ms-transition: opacity 0.25s ease-in-out;
  -webkit-transition: opacity 0.25s ease-in-out;
  transition: opacity 0.25s ease-in-out;
  position: fixed;
  right: -100%;
  top: 0;
  z-index: 90;
  background-color: rgba(0, 0, 0, 0.5);
  width: 100%;
  height: 100%;
}

#overlay.overlay--show {
  opacity: 1;
  right: 0;
}

/*　定期、ご注文履歴の共通モジュール　*/

.box-order-wrap {
  padding: 15px;
  border: solid 1px #848484;
}

.content-mypage-regularly-detail .box-order-wrap,
.content-mypage-history-order .box-order-wrap {
  padding-right: 0;
  border-right: none;
  border-left: none;
}

.title-order {
  margin: 0 0 11px 22px;
  font-size: 20px;
  color: #63685d;
}

.box-order {
  margin-bottom: 14px;
  padding: 15px 0;
  border-bottom: solid 1px #848484;
}

.box-order:last-child {
  margin-bottom: 0; 
  border-bottom: none;  
}

.box-order-shipment {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
  margin-bottom: 22px;
}

.box-order-shipment-title {
  margin-right: 12px;
  font-size: 18px;
  font-weight: bold;
}

.box-order-shipment-date {
  color: #63685d;
  font-size: 13px;
}

.box-order-flex {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
}

.box-order-products {
  width: 500px;
  border-right: solid 1px #848484;
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 auto;
  flex: 0 0 auto;
}

.box-order-products-item {
  margin-bottom: 50px;
}

.box-order-products-item:last-child {
  margin-bottom: 35px;
}

.box-order-products-item-inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;    
}

.box-order-products-img {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 auto;
  flex: 0 0 auto;
  width: 134px;
  min-height: 134px;
  margin-right: 17px;
}

.box-order-products-detail {
  padding-top: 12px;
}

.box-order-products-detail .course {
  margin-bottom: 5px;
  font-size: 1.5rem;
  color: #63685d;
}

.box-order-products-detail .product-name {
  margin-bottom: 22px;
  font-size: 1.5rem;
  color: #63685d;
}

.box-order-products-detail .product-name .desc {
  margin-left: 5px;
  font-size: 1.2rem;
}

.box-order-products-detail .price {
  font-size: 1.5rem;
  color: #63685d;
}

.box-order-products-detail .price .taxToNum {
  margin-left: 5px;
  font-size: 1.2rem;
}

.box-order-change {
  -webkit-box-flex: 1;
  -webkit-flex: 1 1 auto;
  flex: 1 1 auto;
  padding-top: 17px;
}

.box-order-change > p {
  padding-left: 20px;
  font-size: 14px;
  color: #63685d;
}

.box-order-change .payment-method {
  margin-bottom: 3px;
}

.box-order-change .total-payment {
}

.box-order-change .btn-order-change {
  padding: 6px 9px;
  font-size: 14px;
}

.btn-order-change-wap {
  margin-top: 40px;
  padding-left: 20px;
  text-align: center;
}

.btn-order-back {
  margin-top: 128px;
  text-align: center;
}

.box-order-detail-payment {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;    
  -webkit-box-align: flex-end;
  -webkit-align-items: flex-end;
  align-items: flex-end;
}

.box-order-detail-payment-inner {
  padding: 0 0 10px 28px
}

.box-order-detail-payment-litst {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;  
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
}

.box-order-detail-payment-litst > dt {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 auto;
  flex: 0 0 auto;
  width: 169px;
  color: #63685d;
}

.box-order-detail-payment-litst > dd {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 auto;
  flex: 0 0 auto;
  color: #63685d; 
}

.box-order-detail-payment-litst > dd > span {
  font-weight: bold;
  color: #4b5144;
}

.box-regular-order-change {
  margin-top: 57px;
}

.box-regular-order-change .box-change-info {
  font-size: 16px;
  margin-bottom: 12px;
}

.box-regular-order-change .box-change-info .txt-change-id {
  font-weight: bold;
}

.box-regular-order-change .box-change-info .txt-change-id > span {
  font-size: 13px;
}

.table-regular-order-change {
  margin-bottom: 80px;
}

.table-regular-order-change:last-child {
  margin-bottom: 0;
}

.box-regular-order-change + .btn-order-back {
  margin: 90px 0 115px;
}

.box-unEditable .txt {
  margin-bottom: 10px;
  font-size: 1.3rem;
  font-weight: bold;
  text-align: left;
}

.box-unEditable > .tel {
  margin-top: 10px;
  font-size: 18px;
  color: #63685d;
  text-align: center;
  font-weight: bold;
}

.box-unEditable > .tel > a {
  cursor: default;
  text-decoration: none; 
}

.box-unEditable .is-disabled {
  background: #EFEFEF;
  color: #999;
  text-shadow: none;
  border: none;
  cursor: default;
}

.content-mypage-regularly-detail .box-regular-order-change .box-unEditable .tel a {
  font-size: 2.3rem;
}

input[name="last_name"],
input[name="first_name"],
input[name="last_kana"],
input[name="first_kana"] {
  width: 149px;
}

.tit-order {
  margin-bottom: 10px;
  font-size: 2rem;
}



/*==========================
ページ固有
============================*/

/*　トップ　*/

.box-character-massage {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  margin: 15px 0 32px 30px;
}

.box-character-massage-img {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 auto;
  flex: 0 0 auto;
  width: 100px;
  height: auto;
  margin-right: 30px;
}

.box-character-massage-text {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 auto;
  flex: 0 0 auto;
  width: 600px;
  position: relative;
  border: solid 2px #d2d2d2;
  border-radius: 12px;
  padding: 20px 40px;
  box-sizing: border-box;
}

.box-character-massage-text::before {
  content: '';
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  left: -13px;
  top: 40px;
  border-right: 12px solid #d2d2d2;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
}

.box-character-massage-text::after {
  content: '';
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  left: -10px;
  top: 40px;
  border-right: 12px solid #ffffff;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
}

.box-character-massage-text > .txt {
  font-size: 18px;
  color: #3f4537;
}

.bnr-mypage-campaign {
  margin-top: 65px;
}

.mypage-campaign-bnr {
  margin-top: 0px;
}

.margin-cancel {
  margin: 0px;
}

.bnr-mypage-campaign-title {
  margin: 0 0 18px 18px;
  font-size: 20px;
}

.bnr-mypage-campaign-list {
  display: flex;
  justify-content: center;
  gap: 20px;
  margin-bottom: 20px;
}

.bnr-mypage-campaign-list img {
  max-width: 370px;
  width: 100%;
  height: auto;
}

.btn-mypage-inquiry, .btn-mypage-tel {
  display: none;
}

.btn-mypage-product-list {
  margin: 0 auto;
}

.btn_center {
  text-align: center;
}

.mypage-month-recommend {
  display: flex;
  margin: 6% auto 3%;
}
.mypage-month-recommend .__deco-left {
  width: 50px;
}
.mypage-month-recommend .__deco-right {
  width: 35px;
}
.mypage-month-recommend .__title {
  width: 35%;
  margin: 0 auto 0;
  text-align: center;
  font-size: 2rem;
  color: #419271;
  padding: 0.5rem 0rem;
  border-top: 1px solid;
  border-bottom: 1px solid;
}

.mypage-recommend {
  width: 35%;
  margin: 6% auto 3%;
  text-align: center;
  font-size: 2rem;
  color: #419271;
  padding: 0.5rem 0rem;
  border-top: 1px solid;
  border-bottom: 1px solid;
}

.center {
  text-align: center;
  margin: 0 auto;
}

.content-body {
  display: flex;
  margin-top: 3%;
}

.content-title {
  width: 35%;
  margin: 8% auto 0;
  text-align: center;
  font-size: 2rem;
  color: #419271;
  /* text-shadow: #90C0AA 1px 0 1px; */
  /* text-shadow: #C0DCCD 2px 0 1px; */
  padding: 0.5rem 0rem;
  border-top: 1px solid;
  border-bottom: 1px solid;
}

.sp {
  display: none;
}

.content-left {
  width: 47%;
  height: auto;
  margin-right: 6%;
}

.content-right {
  width: 47%;
  height: auto;
}

.content-back-num-bnr {
  width: 70%;
  margin: 0 auto;
}

.bnr-mypage-mr-bottom, .btn-mypage-product-list {
  text-align: center;
  margin-bottom: 20px;
}

.product-list__title {
  width: 35%;
  margin: 6% auto 3%;
  text-align: center;
  font-size: 2rem;
  color: #419271;
  padding: 0.5rem 0rem;
  border-top: 1px solid;
  border-bottom: 1px solid;
}

.max-width {
  width: 100%;
}

.my-notice {
  margin-bottom: 6%;
  border: 0.5px solid #BDA897;
  font-size: 1.4rem;
  overflow-wrap: break-word;
}

.my-notice__title {
  background: #814E23;
  color: #fff;
  font-size: 1.5rem;
  text-align: center;
}

/* インスタグラム表示 */
.instagram {}
.instagram-head {
  width: 100%;
  margin-top: 6%;
}
.instagram-body {
  background-color: #ECF2DF;
}
.instagram-list {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-evenly;
}
.instagram-list .instagram-list__item {
  margin-bottom: 0.8vw;
  width: 19%;
}
.instagram-btn {
  padding: 2% 0%;
  background-color: #ECF2DF;
  text-align: center;
}

/*　メール変更　*/

.box-mypage-email .example {
  margin-top: -10px;
  font-size: 1.2rem;
  color: #6f7469;
}

.box-mypage-email .box-btn {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.box-mypage-email-comp .btn-mypage-decision {
  padding: 8px 80px 8px 75px;  
}


/* 定期詳細 */

.content-mypage-regularly-detail .txt-support-msg {
  margin-bottom: 17px;
}

.content-mypage-regularly-detail .btn-mypage-decision {
  width: 240px;
  padding: 5px 0;
  font-size: 16px;
  text-align: center;
}

.content-mypage-regularly-detail .btn-mypage-decision.is-disabled {
  border-color: #EFEFEF;
  cursor: default;
  background: #EFEFEF;
  color: #999;
  text-shadow: none;  
}

/* 定期住所変更 */

.content-mypage-regularly-addressList .table-addressList .btn-mypage-decision {
  padding: 7px 25px;
  font-size: 1.5rem;
}

.content-mypage-regularly-addressList .table-addressList .btn-mypage-decision[disabled="disabled"] {
  border-color: #EFEFEF;
  cursor: default;
  background: #EFEFEF;
  color: #999;
  text-shadow: none;
}

.check-use-address {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: rgba(0,0,0,.5);
  z-index: 999;
}

.check-use-address-inner {
  position: absolute;
  top: 50%;
  left: 50%;
  background: #fff;
  border-radius: 5px;
  width: 400px;
  height: 200px;
  margin-top: -100px;
  margin-left: -200px;
}
.check-use-address-inner .txt {
  margin-top: 30px;
  text-align: center;
  font-weight: bold;
  font-size: 1.8rem;
}

.check-use-address-inner .box-btn {
  margin-top: 50px;
}

.check-use-address-inner .box-btn button {
  width: 100px;
  padding: 9px 0;
  font-size: 15px;
}

.check-use-address-inner .box-btn .btn-mypage-back {
  margin-right: 20px;
}


.content-mypage-regularly-addressList .list-detail {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: flex-start;
  -ms-align-items: flex-start;
  align-items: flex-start;
  margin-bottom: 15px;
}

.content-mypage-regularly-addressList .list-detail:last-child {
  margin-bottom: 0;
}

.content-mypage-regularly-addressList .list-detail > dt  {
  width: 95px;
  margin: 3px 20px 0 0;
  font-size: 1.6rem;
}

.content-mypage-regularly-addressList .list-detail > dd  {
  font-size: 1.8rem;
}

/* 定期お届け予定日 */

#box-calender-order-change .ui-datepicker {
  margin: 0 auto;
}

.content-mypage-regularly-calender .txt-date {
  margin-bottom: 15px;
  font-size: 2rem;
  text-align: center;
}


/* 定期お支払い方法変更 */

.content-mypage-regularly-payment .table-regularly-payment td {
  background: #fff;
}

.content-mypage-regularly-payment .table-regularly-payment td.error {
  background: #ffc4c4;
}

.box-payment-card-registration {
  margin-top: 30px;
  padding: 10px;
  background: #fff;
}

.box-payment-card-registration .tit {
  margin-bottom: 10px;
}

.box-payment-card-registration .list-payment-card-registration + .list-payment-card-registration {
  margin-top: 4px;
}

/* 住所変更 */

.content-mypage-address .btn-address-update {
  font-size: 1.6rem;
}

.content-mypage-address .list-address {
  margin-bottom: 50px;
}

.box-address-complete .btn-mypage-decision {
  width: 313px;
  padding: 9px 0;
}

.content-mypage-address .address-detail {
  padding: 20px;
}

.content-mypage-address .list-detail {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: flex-start;
  -ms-align-items: flex-start;
  align-items: flex-start;
  margin-bottom: 15px;
}

.content-mypage-address.list-detail:last-child {
  margin-bottom: 0;
}

.content-mypage-address .list-detail > dt  {
  width: 95px;
  margin: 3px 20px 0 0;
  font-size: 1.6rem;
}

.content-mypage-address .list-detail > dd  {
  font-size: 1.8rem;
}

.content-mypage-address .list-btn-container  {
  display: flex;
  text-align: center;
  justify-content: center;
  gap: 20px;
}

/* クレジットカード登録 */

.box-character-credit-massage {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  margin: 15px 0 32px 30px;
}

.box-character-credit-massage.is-thanks {
  margin-bottom: 70px;
}

.box-character-credit-massage-img {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 auto;
  flex: 0 0 auto;
  width: 100px;
  height: auto;
  margin-right: 30px;
}

.box-character-credit-massage-text {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 auto;
  flex: 0 0 auto;
  width: 600px;
  position: relative;
  padding: 20px 40px;
  background: #eaeaea;
  box-sizing: border-box;
}

.box-character-credit-massage.is-thanks .box-character-credit-massage-text {
  width: 620px;
}

.box-character-credit-massage-text::before {
  content: '';
  position: absolute;
  display: block;
  border-radius: 50%;
  background-color: #eaeaea;
  top: 24%;
  left: -20px;
  width: 50px;
  height: 50px;
}

.box-character-credit-massage-text::after{
  content: '';
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  border-radius: 50%;
  transform: rotate(-45deg);
  top: 22%;
  left: -20px;
  border-left: 20px solid #ffffff;
  border-top: 20px solid #ffffff;
  border-right: 20px solid transparent;
  border-bottom: 20px solid transparent;
}

.box-character-credit-massage-text > .title {
  margin-bottom: 5px;
  font-size: 1.8rem;
}

.box-character-credit-massage-text > .txt {
  font-size: 1.6rem;
  color: #3f4537;
}

/* クレジットカード登録 thanks*/

.box-update-credit {
  padding-bottom: 15px;
  margin-left: 15px;
  border: solid 1px #7f7f7f;
}

.box-update-credit-title {
  padding: 11px 0;
  background: #ffe779;
  border-bottom: solid 1px #7f7f7f;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
}

.box-update-credit-text {
  padding: 17px 0;
  font-size: 18px;
  color: #3e4436;
  text-align: center;
}

.box-update-credit-btn {
  text-align: center;
}

.box-update-credit-btn .btn-mypage-decision {
  padding: 8px 36px 10px 20px;
}


/* ご注文履歴 */

.tab-history {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;  
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
}

.tab-history > li {
  width: 384px;
  padding: 8px 0;
  background: #eee;
  text-align: center;
  border-left: solid 1px #c1c1c1;
  border-top: solid 2px #c1c1c1;
  border-right: solid 1px #c1c1c1;
  border-radius: 8px 8px 0 0;
  font-size: 18px;
  color: #838483;
}

.tab-history > li:first-child {
  margin-left: 5px;
}

.tab-history > li:last-child {
  margin-right: 5px;
}

.tab-history > li.is-active {
  position: relative;
  z-index: 10;
  margin-bottom: -1px;
  background: #fff;
  border-bottom: solid 1px #fff;
  color: #3f4537;
}

.tab-history > li.is-active:first-child {
  margin-left: 0;
  margin-right: auto;
}

.tab-history > li.is-active:last-child {
  margin-right: 0;
  margin-left: auto;
}

.tab-history-box-wap {
  padding: 55px 18px 20px;
  border: solid 1px #c1c1c1;
}

.box-order-history {
  width: 260px;
  height: 28px;
  margin-bottom: 22px;
}

.box-count {
  margin-bottom: 22px;
  padding-bottom: 10px;
  border-bottom: solid 1px #989c97;
}

.box-count .text-count {
  font-size: 18px;
}

.box-history-change {
  margin-bottom: 18px;
  padding-left: 20px;
  font-size: 14px;
  color: #63685d;  
}

.box-history-pager {
  margin-top: 30px;
}

.box-history-pager .current {
  margin-bottom: 20px;
  font-size: 1.6rem;
  text-align: center;
  font-size: bold;  
}

.list-history-pager {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.list-history-pager > li {
  margin-right: 10px;
}

.list-history-pager > li.is-hidden {
  visibility: hidden;
}

.list-history-pager > li:last-child {
  margin-right: 0;
}

.list-history-pager > li.num {
  font-size: 1.6rem;
  font-weight: bold;
}

.box-history-detail {
  margin-top: 52px;
  padding: 0 3px 6px;
  border: solid 1px #848484;
}

.box-history-detail > .list-history-item {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;  
  padding: 6px 0 0 19px;
}

.box-history-detail > .list-history-item + .list-history-item {
  margin-top: 6px;
  border-top: dashed 1px #848484;  
}

.box-history-detail > .list-history-item dt {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 auto;
  flex: 0 0 auto;  
  width: 176px;
  font-size: 1.8rem;
}

.box-history-detail > .list-history-item dd {
  font-size: 1.8rem;
}

.box-history-detail > .list-history-item dd > a {
  position: relative;
  color: #3a86c4;
}

.box-history-detail > .list-history-item dd > a::after {
  display: block;
  content: "";
  width: 14px;
  height: 14px;
  position: absolute;
  right: -20px;
  top: 50%;
  margin-top: -6px;
  background: url(/asset/images/page/mypage/icon_blank.jpg) no-repeat top center;
  background-size: 14px 14px;
}

/* マイページ > サイドバー */
.mypage-sidebar-wrapper {
  width: 200px;
}
.mypage-sidebar__customer-id {
  font-size: 16px;
}
.mypage-sidebar__menu {
  background-color: #f4ede5;
  padding: 0 10px;
}
.mypage-sidebar__menu a {
  text-decoration: none;
}
.mypage-sidebar__menu li {
  padding: 15px 10px;
  border-bottom-color: #acb969;
  border-bottom-style: dashed;
  border-bottom-width: 1.5px;
}
.mypage-sidebar__menu li:last-child {
  border-bottom: none;
}
.mypage-sidebar__menu li:hover {
  opacity: 0.8;
}
.mypage-sidebar-menu-item {
  display: flex;
  align-items: center;
  gap: 5px;
}
.mypage-sidebar-menu-item__icon {
  position: relative;
  display: inline-block;
  background: 0 0 no-repeat;
  background-size: 100% auto;
  vertical-align: top;
  line-height: 1;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 8.5px 0 8.5px 9px;
  border-color: transparent transparent transparent #3f4537;
}
.mypage-sidebar-menu-item__text {
  font-size: 16px;
}
.mypage-sidebar-button-logout {
  text-align: center;
}

/* マイページtop > wrapper */
.mypage-top-wrapper {
  margin-top: 30px;
  margin-bottom: 60px;
  width: 1000px;
  display: flex;
  justify-content: center;
  gap: 15px;
}

/* マイページtop > サイドバー */
.mypage-top-sidebar {
  margin-top: 190px;
}

/* マイページtop > コンテンツ */
.mypage-top-contents {
  width: 700px;
}

/* マイページtop > タイトル */
.mypage-top-title {
  display: grid;
  grid-template-areas: 'image';
  position: relative;
  width: 100%;
  height:auto;
  margin-top: 15px;
}
.mypage-top-title__image {
  grid-area: image;
  width: 100%;
  height: auto;
  object-fit: cover;
}
.mypage-top-title__text {
  grid-area: image;
  justify-self: left;
  align-self: end;
  font-size: 28px;
  letter-spacing: 4px;
  z-index: 1;
  margin: 0 0 5px 40px;
}

/* マイページtop > セクションのタイトル */
.mypage-top-section-title {
  display: flex;
  justify-content: center;
}
.mypage-top-section-title img {
  width: 50px;
  height: auto;
}
.mypage-top-section-title .text {
  font-size: 28px;
  letter-spacing: 4px;
  margin: 5px 10px;
  text-align: center;
  width: 380px;
}

/* マイページtopのバナー */
.mypage-top-banner a:hover {
  cursor: pointer;
  opacity: 0.8;
}
.mypage-top-banner video {
  width: 100%;
}

/* マイページtop > お知らせ */
.mypage-top-notice__title {
  background: #e7edca;
  font-size: 24px;
  letter-spacing: 4px;
  text-align: center;
  padding: 1rem 0;
}
.mypage-top-notice__content {
  border-bottom: 10px solid #e7edca;
  border-left: 10px solid #e7edca;
  border-right: 10px solid #e7edca;
  padding: 2rem 3rem;
  font-size: 1.6rem;
}
.mypage-top-notice__content p {
  font-size: 16px;
  letter-spacing: 2px;
}
.news-wrapper {
  margin: 80px 0 0;
  background: #e7edca;
  padding: 1rem;
}
.news-content--header {
  padding: 0 0 1rem;
  font-size: 24px;
  letter-spacing: 4px;
  text-align: center;
}
.news-content--body {
  background: white;
  padding: 2rem 3rem;
}
.news-content--body li {
  border-bottom: #acb969 1.5px dashed;
  padding: 2rem 0;
  font-size: 1.6rem;
}
.news-content--footer {
  background: white;
  padding: 0 0 2rem;
  text-align: center;
}
.btn-mypage-notice-more {
  position: relative;
  padding: 9px 47px 9px 40px;
  background: #a9d38c;
  background: -moz-linear-gradient(top, #a9d38c 0%, #6baf39 36%, #64a934 66%, #2f9026 100%);
  background: -webkit-linear-gradient(top, #a9d38c 0%,#6baf39 36%,#64a934 66%,#2f9026 100%);
  background: linear-gradient(to bottom, #a9d38c 0%,#6baf39 36%,#64a934 66%,#2f9026 100%);
  font-size: 22px;
  color: #fff;
  border-radius: 8px;
  letter-spacing: .1em;
  box-shadow:0px 1px 4px 0px #e8e8e8;
  text-shadow:0px 0px 2px #6fab40;
  border: solid 2px #8ec769;
  -moz-transition: opacity 0.5s ease;
  -o-transition: opacity 0.5s ease;
  -ms-transition: opacity 0.5s ease;
  -webkit-transition: opacity 0.5s ease;
  transition: opacity 0.5s ease;
}
.btn-mypage-notice-more::after {
  display: block;
  content: '';
  position: absolute;
  top: 50%;
  right: 15px;
  width: 6px;
  height: 6px;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  margin-top: -5px;
}
.btn-mypage-notice-more:hover {
  -moz-transition: opacity 0.5s ease;
  -o-transition: opacity 0.5s ease;
  -ms-transition: opacity 0.5s ease;
  -webkit-transition: opacity 0.5s ease;
  transition: opacity 0.5s ease;
  opacity: 0.8;
  text-decoration: none;
}

/* マイページtop > 今月のイチオシ情報 */
.mypage-top-monthly-recommend-contents {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: repeat(2, 1fr);
  gap: 20px;
}
.mypage-top-monthly-recommend-content:hover {
  opacity: 0.5;
}
.mypage-top-monthly-recommend-content video {
  width: 100%;
}

/* マイページtop > 会報誌・お役立ち情報 */
.mypage-top-newsletter-contents {
  display: flex;
  justify-content: center;
  gap: 20px;
}
.mypage-top-newsletter-content .mypage-top-newsletter__button {
  position: relative;
  margin: 20px auto 0;
  padding: 5px 25px;
  width: 85%;
  background: #e7edca;
  text-align: center;
}
.mypage-top-newsletter-content .mypage-top-newsletter__button:hover {
  opacity: 0.5;
}
.mypage-top-newsletter-content .mypage-top-newsletter__link {
  color: #44291b;
  font-size: 18px;
  text-decoration: none;
}
.mypage-top-newsletter-content .mypage-top-newsletter__arrow {
  position: absolute;
  right: 15px;
}

/* マイページtop > メニュー */
.mypage-top-menu-contents {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(2, 1fr);
  gap: 12px 12px;
  width: 100%;
  height: auto;
  justify-content: center;
  justify-items: center;
  padding: 0 25px;
}
.mypage-top-menu-content {
  display: grid;
  grid-template-areas: 'image';
  position: relative;
  width: 225px;
  height:190px;
}
.mypage-top-menu-content:hover {
  cursor: pointer;
  opacity: 0.8;
}
.mypage-top-menu-content a {
  text-decoration: none;
}
.mypage-top-menu-content img {
  grid-area: image;
  width: 225px;
  height: auto;
  object-fit: cover;
}
.mypage-top-menu-content .text {
  color: #795d38;
  font-weight: 500;
  grid-area: image;
  justify-self: center;
  align-self: start;
  font-size: 18px;
  letter-spacing: 1px;
  line-height: 1.2;
  z-index: 1;
  text-align: center;
  margin-top: -160px;
}
.mypage-top-menu-content:first-child .text {
  text-align: center;
  margin-top: -150px;
}

/* マイページtop > あなたにおすすめの商品 */
.mypage-top-recommend-products {
  display: flex;
  justify-content: center;
  align-items: start;
  gap: 40px;
}
.mypage-top-recommend-product {
  width: 207px;
  height: auto;
}
.mypage-top-recommend-product__description {
  background-color: #f8f1e8;
  padding: 10px 20px 0 20px;
  min-height: 60px;
}
.mypage-top-recommend-product__description p {
  font-size: 14px;
  line-height: 1.2;
}
.mypage-top-recommend-product__name {
  background-color: #f8f1e8;
  font-size: 20px;
  font-weight: 500;
  padding: 5px 20px 22px 20px;
  height: 100px;
}
.mypage-top-recommend-product__button {
  background-color: #f8f1e8;
  padding: 0 20px 22px 20px;
  text-align: center;
}
.mypage-top-recommend-product__button a {
  text-decoration: none;
}
.mypage-top-recommend-product__button a:hover {
  cursor: pointer;
  opacity: 0.8;
}

/* キャンセルフォーム */
.mypage-cancel-main {
  color: #3E3A39;
}
.mypage-cancel-main a {
  cursor: pointer;
  text-decoration: none;
}
.mypage-cancel-main a :hover {
  opacity: 0.7;
}
.mypage-cancel-main img {
  width: 100%;
}
.mypage-cancel-title-wrapper {
  /* width: 98%; */
  margin: 14% auto 0;
  /* background-color: #FFFA60; */
}
/* .mypage-cancel-title-contents {
  padding:  1%;
  animation-name: flash;
  animation-duration: 1.5s;
  animation-timing-function: step-end;
  animation-iteration-count: infinite;
}
@keyframes flash {
  0% {
    background-color: #FFFA60;
    color: #3E3A39;
  }
  50% {
    background-color: #3E3A39;
    color: #FFFA60;
  }
  100% {
    background-color: #FFFA60;
    color: #3E3A39;
  }
}
.mypage-cancel-title-content {
  padding: 5% 5%;
  border: 2px solid #3E3A39;
}
.mypage-cancel-title-content__header {
  font-size: 36px;
  font-weight: bold;
  text-align: center;
}
.mypage-cancel-title-content__body {
  margin-top: 1%;
  font-size: 28px;
  text-align: center;
} */
.mypage-cancel-change-menu-wrapper {
  margin-top: 11.4%;
}
.mypage-cancel-change-menu-content__body {
  margin-top: 10%;
}
.mypage-cancel-change-menu-content__buttons {
  width: 92.1%;
  margin: 0 auto;
}
.mypage-cancel-change-menu-content__buttons .mypage-cancel-change-menu-content__button:not(:first-child) {
  margin-top: 2.1%;
}
.mypage-cancel-change-menu-content__details {
  margin-top: 10.1%;
}
.mypage-cancel-change-menu-content__detail-header {
  position: relative;
  padding: 2.9%;
}
.mypage-cancel-change-menu-content__detail-header.orange {
  background-color: #FFE19C;
}
.mypage-cancel-change-menu-content__detail-header.green {
  background-color: #E7F5AE;
}
.mypage-cancel-change-menu-content__detail-header.pink {
  background-color: #FFDDDE;
}
.mypage-cancel-change-menu-content__detail-header-text {
  font-size: 24px;
  letter-spacing: 0.1em;
  text-align: center;
}
.mypage-cancel-change-menu-content__detail-header-text.bold {
  font-size: 32px;
  font-weight: bold;
}
.mypage-cancel-change-menu-content__detail-header-speech-bubble-question {
  position: absolute;
  top: -12%;
  left: 1%;
  width: 6%;
  z-index: 2;
}
.mypage-cancel-change-menu-content__detail-header-arrow {
  position: absolute;
  bottom: -11%;
  right: 0;
  left: 0;
  margin: auto;
  width: 3%;
  z-index: 2;
}
.mypage-cancel-change-menu-content__detail-header-person {
  position: absolute;
  top: -51%;
  right: -2%;
  width: 11%;
  z-index: 2;
}
.mypage-cancel-change-menu-content__detail-body {
  position: relative;
  padding: 4.3% 3% 11.6%;
}
.mypage-cancel-change-menu-content__detail-body.orange {
  background-color: #FFF7E3;
}
.mypage-cancel-change-menu-content__detail-body.green {
  background-color: #FEFFE3;
}
.mypage-cancel-change-menu-content__detail-body.pink {
  background-color: #FFF8F6;
}
.mypage-cancel-change-menu-content__detail-body-content {
  width: 100%;
  margin: 0 auto;
}
.mypage-cancel-change-menu-content__detail-body-button {
  position: absolute;
  width: 85%;
  right: 0;
  left: 0;
  margin: 0 auto;
}
.mypage-cancel-change-menu-content__detail-body-button.change-delivery-date {
  bottom: 12%;
}
.mypage-cancel-change-menu-content__detail-body-button.change-cycle {
  bottom: 9%;
}
.mypage-cancel-change-menu-content__detail-body-button.change-product {
  bottom: 14%;
}
.mypage-cancel-change-menu-content__footer-text {
  margin-top: 7.4%;
  font-size: 32px;
  text-align: center;
}
.mypage-cancel-change-menu-content__footer-buttons {
  width: 81%;
  margin: 3.5% auto 0;
}
.mypage-cancel-change-menu-content__footer-buttons .mypage-cancel-change-menu-content__footer-button:not(:first-child) {
  margin-top: 4.6%;
}
.mypage-cancel-menu-wrapper {
  width: 90%;
  margin: 11% auto 0;
}
.mypage-cancel-menu-content {
  height: 575px;
  display: flex;
  flex-direction: column;
  gap: 4.2%;
  justify-content: space-between;
  align-items: center;
}
.mypage-cancel-menu-content a {
  display: block;
  width: 100%;
}
.mypage-cancel-menu__rectangle {
  width: 100%;
  padding: 3.5% 3.3% 3.5% 18.2%;
  display: flex;
  align-items: center;
  border-radius: 31px;
}
.mypage-cancel-menu__rectangle.orange {
  background-color: #FFE19C;
}
.mypage-cancel-menu__rectangle.green {
  background-color: #E7F5AE;
}
.mypage-cancel-menu__rectangle.pink {
  background-color: #FFDDDE;
}
.mypage-cancel-menu__textarea {
  width: 95%;
}
.mypage-cancel-menu__text--normal {
  font-size: 30px;
}
.mypage-cancel-menu__text--emphasis {
  font-size: 40px;
  font-weight: bold;
}
.mypage-cancel-leftover-wrapper {
  margin-top: 19.5%;
}
.mypage-cancel-leftover-content__header {
  position: relative;
  padding: 2.9% 2.9%;
  background-color: #FFE19C;
  text-align: center;
}
.mypage-cancel-other-inquiry-wrapper {
  margin-top: 7.4%;
}
.mypage-cancel-other-inquiry-content__header {
  font-size: 20px;
  text-align: center;
}
.mypage-cancel-other-inquiry-content__body {
  height: 180px;
  margin: 3.5% auto 0;
  width: 42.1%;
  display: flex;
  flex-direction: column;
  gap: 2.3%;
  justify-content: space-between;
  align-items: center;
}
.mypage-cancel-benefit-wrapper {
  position: relative;
  margin-top: 10.5%;
  padding: 11% 12.2% 17%;
  background: url(https://img.sakura-forest.com/asset/images/page/mypage/cancel/benefit-background.png) center / cover repeat, repeating-linear-gradient(90deg, #FEF9D1, #FEF9D1 90.9px, #FFFBE0 90.9px, #FFFBE0 181.8px);
}
.mypage-cancel-benefit-content__item {
  margin-top: 10%;
}
.mypage-cancel-support-wrapper {
  padding: 8% 0 0;
}
.mypage-cancel-support-title-wrapper {
  /* width: 60%; */
  margin: 0 auto;
}
.mypage-cancel-support-tel-wrapper {
  /* padding: 20% 0 0; */
  position: relative;
}
.mypage-cancel-support-tel-content__body {
  position: relative;
  background-color: #FFFDD4;
}
.mypage-cancel-support-tel-content__body-questions {
  position: absolute;
  top: -25%;
  right: 0;
  left: 0;
  width: 80%;
  margin: 0 auto;
}
.mypage-cancel-support-tel-content__body-main {
  width: 65%;
  padding: 3% 0 15%;
  margin: 0 auto;
}
.mypage-cancel-support-tel-content__body-but {
  position: absolute;
  top: 90%;
  right: 0;
  left: 0;
  width: 75%;
  margin: 0 auto;
}
.mypage-cancel-support-line-wrapper {
  width: 75%;
  margin: 0 auto;
  padding: 18% 0 0;
}
.mypage-cancel-support-line-content__footer {
  width: 85%;
  margin: 5% auto 0;
}
/* .mypage-cancel-offer-wrapper {
  padding: 20% 0 0;
} */
.mypage-cancel-offer__body {
  position: relative;
  background-color: #FFE8E9;
  padding: 0 0 14%;
}
.mypage-cancel-offer-products-1 {
  position: absolute;
  top: -8%;
  left: 2%;
  width: 24%;
}
.mypage-cancel-offer-products-2 {
  position: absolute;
  top: -9%;
  right: 3%;
  width: 17%;
}
.mypage-cancel-offer-main {
  width: 75%;
  margin: 0 auto;
}
.mypage-cancel-offer-change {
  width: 80%;
  margin: 5.5% auto 0;
}
.mypage-cancel-offer-change a:not(:first-child) {
  margin-top: 2%;
}
.mypage-cancel-offer-cancel {
  width: 78%;
  margin: 2.5% auto 0;
}

/* キャンセルフォーム > 定期間隔・個数の変更 */
.mypage-change-cycle__header {
  padding: 1% 0;
  background-color: #87CD00;
  color: #FFFFFF;
  font-size: 32px;
  font-weight: bold;
  text-align: center;
}
.mypage-change-cycle__form {
  padding: 0 3.3% 9%;
  background-color: #FEFFE3;
}
.mypage-change-cycle__form-contents li:not(:last-child) {
  border-bottom: solid 1px #A4A2A2;
}
.mypage-change-cycle__form-content {
  padding: 3% 2%;
}
.mypage-change-cycle__form-content-title {
  color: #87CD00;
  font-size: 24px;
  font-weight: bold;
  text-align: center;
}
.mypage-change-cycle__form-label {
  display: inline-block;
  width: 29%;
  font-size: 20px;
  letter-spacing: 0.1em;
}
.mypage-change-cycle__form-quantity-input,
.mypage-change-cycle__form-cycle-input {
  padding: 3.3% 0 0;
}
.mypage-change-cycle__form-quantity-input select,
.mypage-change-cycle__form-cycle-input select,
.mypage-change-cycle__form-content-other-request textarea {
  padding: 1%;
  font-size: 20px;
  letter-spacing: 0.1em;
}
.mypage-change-cycle__form-quantity-note {
  padding: 3.3% 0 0;
  font-size: 16px;
}
.mypage-change-cycle__form-content-other-request textarea {
  width: 70%;
  vertical-align:top;
}
.mypage-change-cycle__form-button {
  width: 65%;
  margin: 4.2% auto 0;
}

/* キャンセルフォーム > 商品の変更 */
.mypage-change-product__header {
  padding: 1% 0;
  background-color: #EC4346;
  color: #FFFFFF;
  font-size: 32px;
  font-weight: bold;
  text-align: center;
}
.mypage-change-product__form {
  padding: 0 3.3% 9%;
  background-color: #FFF8F6;
}
.mypage-change-product__form-contents li:not(:last-child) {
  border-bottom: solid 1px #A4A2A2;
}
.mypage-change-product__form-content {
  padding: 3% 2%;
}
.mypage-change-product__form-content-title {
  color: #EC4346;
  font-size: 24px;
  font-weight: bold;
  text-align: center;
}
.mypage-change-product__form-request-input textarea {
  width: 100%;
  margin: 0 auto;
}
.mypage-change-product__form-label {
  display: inline-block;
  width: 29%;
  font-size: 20px;
  letter-spacing: 0.1em;
}
.mypage-change-product__form-request-input,
.mypage-change-product__form-quantity-input,
.mypage-change-product__form-cycle-input {
  padding: 3.3% 0 0;
}
.mypage-change-product__form-request-input textarea,
.mypage-change-product__form-quantity-input select,
.mypage-change-product__form-cycle-input select,
.mypage-change-product__form-content-other-request textarea {
  padding: 1%;
  font-size: 20px;
  letter-spacing: 0.1em;
}
.mypage-change-product__form-quantity-note {
  padding: 3.3% 0 0;
  font-size: 16px;
}
.mypage-change-product__form-content-other-request textarea {
  width: 70%;
  vertical-align:top;
}
.mypage-change-product__form-button {
  width: 65%;
  margin: 4.2% auto 0;
}

/* LINE */
.mypage-line-official {
  position: relative;
}
.mypage-line__moreover {
  position: absolute;
  width: 15.2%;
  top: -1%;
  right: 0;
  left: 0;
  margin: 0 auto;
}

/* register-account */
.register-account-header-wrapper {
  display: flex;
  justify-content: center;
  align-items: center;
}
.register-account-header__icon {
  width: 56px;
}
.register-account-header__title {
  margin-left: 17px;
  font-size: 24px;
}
.register-account-main-wrapper {
  width: 70%;
  margin: 40px auto 0;
}
.register-account-main-offer__image {
  width: 100%;
}
.register-account-main-form th {
  width: 40%;
}
.register-account-main-form td {
  width: 60%;
}
.register-account-main-form__input-text {
  width: 100%;
  padding: 5px 8px;
  font-size: 14px;
  text-align: left;
  line-height: 1.4;
}
.register-account-main-form__opt-in {
  margin-top: 5px;
  font-size: 16px;
  text-align: center;
}
.register-account-button-wrapper {
  margin-top: 30px;
  text-align: center;
}
.register-account-button button {
  position: relative;
  padding: 9px 47px 9px 40px;
  background: linear-gradient(to bottom, #a9d38c 0%,#6baf39 36%,#64a934 66%,#2f9026 100%);
  font-size: 22px;
  color: #fff;
  border-radius: 8px;
  letter-spacing: .1em;
  box-shadow: 0px 1px 4px 0px #e8e8e8;
  text-shadow: 0px 0px 2px #6fab40;
  border: solid 2px #8ec769;
  transition: opacity 0.5s ease;
}
.register-account-button button:hover {
  cursor: pointer;
  opacity: 0.7;
}
.register-account-button button::after {
  position: absolute;
  display: block;
  content: '';
  top: 50%;
  right: 15px;
  width: 6px;
  height: 6px;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  margin-top: -5px;
}
.register-account-button button.disabled {
  cursor: not-allowed;
  filter:brightness(0.7);
  opacity: 1;
}
.register-account-main-form__note {
  margin-top: 20px;
  font-size: 14px;
  line-height: 1.4;
}

/* register-account-thanks */
.register-account-thanks-main-wrapper {
  width: 70%;
  margin: 40px auto 0;
}
.register-account-main-image {
  width: 100%;
}

/* sms-auth */
.sms-auth-wrapper {
  width: 700px;
  margin: 0 auto;
}
.sms-auth-title-wrapper {
  margin-top: 30px;
}
.sms-auth-title-contents {
  font-size: 24px;
  font-weight: bold;
  text-align: center;
}
.sms-auth-description-wrapper {
  margin-top: 20px;
}
.sms-auth-description-contents {
  font-size: 18px;
  /* text-align: center; */
}
.sms-auth-note-wrapper {
  margin-top: 5px;
}
.sms-auth-note-contents {
  font-size: 14px;
}
.sms-auth-form-wrapper {
  margin-top: 60px;
}
.sms-auth-form-contents th {
  width: 30%;
}
.sms-auth-form-contents td {
  width: 70%;
}
.sms-auth-submit-wrapper {
  margin-top: 60px;
}
.sms-auth-submit-contents {
  text-align: center;
}
.mypage-submit-button {
  position: relative;
  width: 350px;
  padding: 9px 47px 9px 40px;
  background: linear-gradient(to bottom, #a9d38c 0%,#6baf39 36%,#64a934 66%,#2f9026 100%);
  font-size: 22px;
  color: #fff;
  border-radius: 8px;
  letter-spacing: .1em;
  box-shadow: 0px 1px 4px 0px #e8e8e8;
  text-shadow: 0px 0px 2px #6fab40;
  border: solid 2px #8ec769;
  transition: opacity 0.5s ease;
}
.mypage-submit-button:hover {
  cursor: pointer;
  opacity: 0.7;
}
.mypage-submit-button:after {
  position: absolute;
  display: block;
  content: '';
  top: 50%;
  right: 15px;
  width: 6px;
  height: 6px;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  transform: rotate(45deg);
  margin-top: -5px;
}
.mypage-submit-button.disabled {
  cursor: not-allowed;
  filter:brightness(0.7);
  opacity: 1;
}
.sms-auth-back-wrapper {
  margin-top: 30px;
}
.sms-auth-back-contents {
  text-align: center; 
}
.mypage-back-button {
  position: relative;
  width: 180px;
  padding: 9px 57px 9px 70px;
  background: linear-gradient(to bottom, #f4f4f4 0%, #e0e0e0 36%, #c6c6c6 66%, #b0b0b0 100%);
  font-size: 22px;
  color: #000;
  border-radius: 8px;
  letter-spacing: .1em;
  box-shadow: 0px 1px 4px 0px #e8e8e8;
  border: solid 2px #f1f1f1;
  transition: opacity 0.5s ease;
}
.mypage-back-button:hover {
  cursor: pointer;
  opacity: 0.7;
}
.mypage-back-button:after {
  position: absolute;
  display: block;
  content: '';
  top: 50%;
  left: 25px;
  width: 6px;
  height: 6px;
  border-top: solid 2px #000;
  border-right: solid 2px #000;
  transform: rotate(-135deg);
  margin-top: -4px;
}
.sms-auth-form-auth-code {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 30px;
}
.sms-auth-form-auth-code > input {
  width: 100px;
  height: 100px;
  font-size: 32px;
  font-weight: bold;
  text-align: center;
}

/* LINE ID連携完了ページ */
.mypage-line-link-id-thanks-wrapper {
  margin-top: 30px;
}
.mypage-line-link-id-thanks-title-contents {
  text-align: center;
}
.mypage-line-link-id-thanks-title-text {
  font-size: 24px;
  font-weight: bold;
}
.mypage-line-link-id-thanks-description-wrapper {
  margin-top: 40px;
}
.mypage-line-link-id-thanks-description-contents {
  text-align: center;
}
.mypage-line-link-id-thanks-description-text {
  font-size: 15px;
}
.mypage-line-link-id-thanks-button-wrapper {
  display: flex;
  justify-content: center;
  margin: 40px auto 0;
}

/* 生年月日特典テキスト（マイページ用） */
.col.birthday-col {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center !important;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  width: fit-content;
}
.col.birthday-col .icon--require {
  -webkit-align-self: center;
  align-self: center;
}
tr.birthday-row th,
tr.birthday-row td {
  vertical-align: middle;
}
.birthday-text-wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-align-items: flex-start;
  align-items: flex-start;
  max-width: 220px;
}
.birthday-text-wrap .box {
  width: 4em;
}
.birthday-benefit-note {
  font-size: 13px;
  color: #4CAF50;
  margin: 0;
  padding: 0;
  text-align: left;
  width: fit-content;
}
.birthday-icon-wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: flex-end;
  justify-content: flex-end;
  width: auto;
  -webkit-flex-shrink: 0;
  flex-shrink: 0;
}
.birthday-th-wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  width: 100%;
}