.fs-c-breadcrumb {
  max-width: 1000px;
}
.fs-l-main {
  max-width: 1000px;
}
.fs-l-checkout-success {
  max-width: 750px;
}

.fs-c-quantity__select {
  border-style: solid;
}

.fs-l-cart__contentsArea {
  width: calc(690 / 750 * 100vw);
  margin: 0 auto;
}
.fs-c-buttonContainer {
  padding: 0;
}
.fs-body-cart .fs-c-estimatedDeliveryDate {
  margin: 32px 0;
  padding: 20px 25px; 
}
@media screen and (min-width: 768px) {
  .br-sp {
    display: none;
  }
  #fs_ShoppingCart #cart-free-area05 .txt {
    text-align: left;
    margin-top: 36px;
  }
  .fs-body-cart .fs-c-estimatedDeliveryDate {
    margin: 64px 0;
    padding: 40px 50px;
  } 
}
@media screen and (min-width: 960px) {
  .fs-l-cart__contentsArea {
    width: 100%;
  }
}
.cart-nav .num {
  display: grid;
  place-items: center;
  width: 40px;
  aspect-ratio: 1 / 1;
  font-size: 20px;
  background-color: #bbb7aa;
  color: #fff;
  border-radius: 50%;
}
.cart-nav .txt {
  color: #bbb7aa;
}
.fs-body-cart .cart-nav li:nth-child(1) .num,
.fs-body-customerDetails .cart-nav li:nth-child(2) .num,
.fs-body-checkout .cart-nav li:nth-child(3) .num,
.fs-body-checkout-success li:nth-child(4) .cart-nav .num{
  background-color: #645e59;
}

.fs-body-cart .cart-nav li:nth-child(1) .txt,
.fs-body-customerDetails .cart-nav li:nth-child(2) .txt,
.fs-body-checkout .cart-nav li:nth-child(3) .txt,
.fs-body-checkout-success .cart-nav li:nth-child(4) .txt {
  color: #54534f;
}
.cart-nav-area {
  margin-top: 30px;
}
.cart-nav-box {
  width: calc(690 / 750 * 100vw);
  max-width: 750px;
  margin: 0 auto;
}
.cart-nav-box::after {
  background-image: none;
  background-color: #bbb7aa;
  background-size: initial;
  width: 75%;
}

@media screen and (min-width: 768px) {
  .cart-nav-area {
    margin-top: 56px;
  }
  .cart-nav .num {
    width: 70px;
    font-size: 32px;
  }
  .cart-nav .txt {
    font-size: 16px;
  }
  .cart-nav-box::after {
    top: 35px;
  }
}
#fs-checkout-payHere-container,
#fs-checkout-amazon-container {
  width: calc(650 / 690 * 100%);
  margin: 0 auto;
}
.fs-c-purchaseHere {
  display: grid;
  grid-template-columns: auto auto; /* 1列目=見出し語、2列目=残り */
  justify-items: start;
  row-gap: 8px; /* 元のgapがあれば調整 */
}
.fs-page__cart .fs-c-purchaseHere {
  grid-template-columns: 1fr auto;
}
.fs-page__cart .fs-c-button--purchaseHere {
  display: grid;
  place-items: center;
}
.fs-page__cart .fs-c-featuredProduct {
  display: none;
}

/* メッセージ行はグリッド全幅を使う */
.fs-c-purchaseHere__message {
  grid-column: 1 / -1;
}
.fs-c-purchaseHere__message {
  font-size: 0;
}
.fs-c-purchaseHere__message::after {
  content: '※追加で送料390円がかかります。（一部地域を除く）';
  font-size: 10px;
  color: #c02222;
  letter-spacing: calc(70 / 1000 * 1em);
  line-height: calc(21 / 12);
}

/* ボタンを内包するdivに列を継承させる */
.fs-c-cartPayment__button {
  display: grid;
  grid-template-columns: subgrid;
  grid-column: 1 / -1;
}

/* aタグはinlineなのでgrid化して列を継承 */
.fs-c-button--loginAndPurchase,
.fs-c-button--unregisteredUserPurchase {
  display: grid;
  grid-template-columns: subgrid;
  place-content: center;
  grid-column: 1 / -1;
  width: 325px;
  height: 45px;
  padding: 0 10px;
  -moz-column-gap: 8px;
       column-gap: 8px;
}
.fs-c-button--loginAndPurchase {
  background-color: #645e59;
}
.fs-c-button--unregisteredUserPurchase {
  background-color: #fff;
  border: 1px solid #645e59;
  color: #645e59;
}
.fs-c-button--unregisteredUserPurchase:visited {
  color: #645e59;
}

/* ラベルもflexではなくgrid化して列を継承 */
.fs-c-button--loginAndPurchase .fs-c-button__label,
.fs-c-button--unregisteredUserPurchase .fs-c-button__label {
  display: grid;
  grid-template-columns: subgrid;
  grid-column: 1 / -1;
  align-items: baseline;
  font-size: 0;
}

/* 1列目（見出し語）を右揃え */
.fs-c-button--loginAndPurchase .fs-c-button__label::before,
.fs-c-button--unregisteredUserPurchase .fs-c-button__label::before {
  font-size: 12px;
  grid-column: 1;
  grid-row: 1 / span 1;
  justify-self: end;
}
.fs-c-button--loginAndPurchase .fs-c-button__label::after,
.fs-c-button--unregisteredUserPurchase .fs-c-button__label::after {
  justify-self: start;
}

.fs-c-button--loginAndPurchase .fs-c-button__label::before {
  content: '会員の方';
  white-space: nowrap;
}
.fs-c-button--unregisteredUserPurchase .fs-c-button__label::before {
  content: '非会員の方';
  white-space: nowrap;
}

/* 2列目（本文）は共通 */
.fs-c-button--loginAndPurchase .fs-c-button__label::after,
.fs-c-button--unregisteredUserPurchase .fs-c-button__label::after {
  font-size: 12px;
  grid-column: 2;
  grid-row: 1 / span 1;
}

.fs-c-button--loginAndPurchase .fs-c-button__label::after {
  content: 'ご注文手続きへ進む';
  white-space: nowrap;
}
.fs-c-button--unregisteredUserPurchase .fs-c-button__label::after {
  content: 'ご注文手続きへ進む';
  white-space: nowrap;
}
.fs-c-cartPayment, .fs-c-payWithAmazon {
  margin-top: 8px;
}
@media screen and (min-width: 768px) {
  #fs-checkout-payHere-container,
  #fs-checkout-amazon-container {
    width: 100%;
  }
  .fs-c-purchaseHere__message::after {
    font-size: 12px;
  }
  .fs-c-button--loginAndPurchase .fs-c-button__label::before,
  .fs-c-button--unregisteredUserPurchase .fs-c-button__label::before {
    font-size: 16px;
  }
  .fs-c-button--loginAndPurchase .fs-c-button__label::after,
  .fs-c-button--unregisteredUserPurchase .fs-c-button__label::after {
    font-size: 12px;
  }
  .fs-c-cartPayment, .fs-c-payWithAmazon {
    margin-top: 4px;
  }
}

/*------------------------------
  お届け日関連
------------------------------*/
.deliveryDateArea {
  max-width: 750px;
  margin: 0 auto;
}
.fs-c-estimatedDeliveryDate {
  background-color: #faf8f4;
}

.fs-body-cart .fs-c-estimatedDeliveryDate {
  display: grid;
  row-gap: 12px;
}
.fs-c-estimatedDeliveryDate__notice {
  order: 1;
}
.fs-c-estimatedDeliveryDate__info {
  font-size: 0;
}
.fs-c-button--changeLocation {
  color: #4b8dc5;
}
.fs-c-estimatedDeliveryDate__location {
  background-color: #fff;
  border: 1px solid #a09a89;
  position: relative;
  display: grid;
  place-items: center;
  width: 108px;
  height: 28px;
}
.fs-c-estimatedDeliveryDate__location::before {
  content: "";
  display: inline-block;
  width: 15px;
  height: 15px;
  flex: 0 0 auto;
  position: absolute;
  top: 50%;
  left: 0;
  translate: 20% -50%;
  background: url("https://sesto.jp/202609/images/icon/pin.png") no-repeat center / contain;
}
.fs-c-estimatedDeliveryDate__info::after {
  content:"※予約商品をご購入の場合は、全ての商品がそろい次第まとめて発送いたします。\A表示されているお届け目安日にお届けすることはできませんので、あらかじめご了承ください。\A※商品をかごに入れた時点では在庫の確保はできておりません。";
  color:#c02222;
  white-space: pre-wrap;
  font-weight: 400;
  display: block;
  font-size: 10px;
  line-height: calc(36 / 20);
}
.fs-c-deliveryDateInfo::after {
  content:"【予約商品をご購入の場合】は、すべての商品が揃い次第まとめて発送いたします。\Aお届け日のご指定をいただいても、入荷後の発送となるため、ご希望日にお届けできませんのでご了承ください。";
  color:#c02222;
  white-space: pre-wrap;
  font-weight: 400;
  display: block;
  font-size: 10px;
  line-height: calc(36 / 20);
}
.fs-c-estimatedDeliveryDate__info time.fs-c-time {
  display: block;
}
.fs-c-estimatedDeliveryDate__info time.fs-c-time::after {
  content: 'にお届け';
}
.fs-c-estimatedDeliveryDate__condition {
  font-size: 12px;
}
.fs-c-estimatedDeliveryDate__info time.fs-c-time {
  font-size: 18px;
  font-weight: 450;
}
.fs-c-estimatedDeliveryDate__info time.fs-c-time::after {
  font-size: 16px;
  font-weight: 400;
}
.fs-c-continueShopping {
  width: calc(650 / 750 * 100vw);
  max-width: 455px;
  margin: 0 auto;
}
.fs-c-button--continueShopping {
  display: grid;
  place-items: center;
  width: 100%;
  height: 45px;
  background-color: #fff;
  border: 1px solid #645e59;
  color: #645e59;
  font-size: 12px;
}
.fs-c-button--continueShopping:visited {
  color: #645e59;
}
@media screen and (min-width: 768px) {
  .fs-c-estimatedDeliveryDate__condition {
    font-size: 12px;
  }
  .fs-c-estimatedDeliveryDate__info time.fs-c-time {
    font-size: 28px;
  }
  .fs-c-estimatedDeliveryDate__info time.fs-c-time::after {
    font-size: 24px;
  }
  .fs-c-button--continueShopping {
    height: 60px;
    font-size: 16px;
  }
  .fs-c-estimatedDeliveryDate__info::after {
    font-size: 16px;
  }
  .fs-c-deliveryDateInfo::after {
    font-size: 16px;
  }
}

.fs-c-payWithAmazon {
  display: grid;
}

.fs-c-payWithAmazon__message {
  order: 1;
  font-size: 0;
}
.fs-c-payWithAmazon__message::after {
  content: '※Amazonアカウントでお支払いの場合、住所・カード情報の入力不要\A※ポイント・クーポン使用可能';
  white-space: pre-wrap;
  font-size: 10px;
  letter-spacing: calc(100 / 1000 * 1em);
  line-height: calc(36 / 20);
  color: #54534f;
}
@media screen and (min-width: 768px) {
  .fs-c-payWithAmazon__message::after {
    font-size: 12px;
  }
}

.fs-c-button--change--small,
.fs-c-button--useCoupon {
  background-color: #645e59;
  box-shadow: none;
  border: none;
  color: #fff!important;
  letter-spacing: calc(45 / 1000 * 1em);
}
.fs-c-button--change--small:visited,
.fs-c-button--useCoupon:visited {
  color: #fff!important;
}
.fs-c-button--chooseDestination {
  background-color: #fff;
  box-shadow: none;
  border: 1px solid #645e59;
  color: #645e59;
  letter-spacing: calc(45 / 1000 * 1em);
}
.fs-c-button--chooseDestination:visited {
  color: #645e59;
}
.fs-c-checkout-preview__button {
  justify-self: end;
}

/* 注文完了 */
.fs-l-checkout-success .fs-c-heading--page,
.fs-l-checkout-success .i-complete--ttl {
  display: block;
  max-width: 750px;
  margin: 0 auto;
  padding-bottom: 16px;
  margin-bottom: 16px;
  border: none;
  border-bottom: 1px solid #a09a89;
  box-sizing: border-box;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 600;
  letter-spacing: calc(45 / 1000 * 1em);
  color: #363636;
  text-align: center;
  font-size: 16px;
}
section.fs-c-checkoutSuccess.fs-c-subSection h2 {
  font-size: 12px;
  font-weight: 400;
  text-align: left;
}
section.fs-c-checkoutSuccess.fs-c-subSection p {
  font-size: 12px;
  padding: 0;
  margin: 0;
  line-height: calc(36 / 24);
}
.i-complete__enquete {
  width: 100%;
  max-width: 100%;
}
.i-complete--text {
  font-size: 12px;
  line-height: calc(36 / 24);
}

@media screen and (min-width: 768px) {
  .fs-l-checkout-success .fs-c-heading--page,
  .fs-l-checkout-success .i-complete--ttl {
    font-size: 32px;
  }
  section.fs-c-checkoutSuccess.fs-c-subSection h2 {
    font-size: 16px;
  }
  section.fs-c-checkoutSuccess.fs-c-subSection p {
    font-size: 16px;
  }
}