@charset "UTF-8";
/*
|---------------------------------------------------------------
| 商品詳細
|---------------------------------------------------------------
*/
.aba-footer__guide {
  margin-top: 0;
}

.fs-l-main {
  width: 100%;
  max-width: 100%;
  margin: 0;
  padding: 0;
}

.fs-l-pageMain {
  width: 100%;
  max-width: 100%;
  margin: 0;
  padding: 0;
}

.fs-l-productLayout {
  width: 100%;
  max-width: calc(var(--aba-container-maxwidth, 1200px) + var(--aba-container-padding, 25px) * 2);
  padding: 0 var(--aba-container-padding, 25px);
  margin: 0 auto clamp(40px, 5.33vw, 60px);
  display: grid;
  grid-template-columns: minmax(0, 1fr);
}
.fs-l-productLayout__item {
  container-type: inline-size;
}
@media (min-width: 750.02px) {
  .fs-l-productLayout {
    --aba-gap: 60px;
    width: 100%;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--aba-gap, 0px);
  }
}

/*--------------- バリエーション ---------------*/
.fs-c-productChooseVariation {
  font-family: var(--aba-font-family-gothic, inherit);
  margin: 0 0 30px;
}
.fs-c-variationPanelList__label {
  /* display: none; */
}
.fs-c-variationPanelList__label .fs-c-variationLabel__value {
  display: none;
}
.fs-c-variationPanelList__list {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  grid-auto-flow: dense;
}
.fs-c-variationPanelList__list__item {
  min-width: 0;
}
.fs-c-variationPanelList__panel {
  border-radius: 10px;
  overflow: hidden;
  text-align: center;
  font-size: clamp(12px, 1.6vw, 14px);
}
.fs-c-variationPanelList__panel__content {
  color: #231816 !important;
  background: #ffffff !important;
  padding: 0.75em 0.25em;
}
.fs-c-variationPanelList__panel__label {
  font-size: 1em;
  font-weight: normal;
}

.fs-c-variationPanelList__radio:checked + .fs-c-variationPanelList__panel {
  border-color: #231816;
}

/*--------------- 商品名 ---------------*/
.fs-c-productNameHeading {
  display: block;
  font-size: 26px;
  font-weight: 500;
  line-height: 1.5;
  margin: 0 0 0.25em;
}
.fs-c-productNameHeading__copy {
  display: block;
  font-size: 0.57em;
}
.fs-c-productNameHeading__name {
  display: block;
  font-size: 1em;
}
@media (min-width: 750.02px) {
  .fs-c-productNameHeading {
    font-size: 28px;
  }
}

/*--------------- 商品番号 ---------------*/
.fs-c-productNumber {
  border: 0;
  padding: 0;
  font-size: 12px;
  font-family: var(--aba-font-family-gothic);
  margin: 0 0 2em;
}
.fs-c-productNumber__label {
  font-weight: normal;
}
.fs-c-productNumber__label::after {
  content: "：";
}
.fs-c-productNumber__number {
  font-weight: normal;
}

/*--------------- カートに入れる ---------------*/
.fs-c-button--addToCart--detail,
.fs-c-button--addToCart--variation,
.fs-c-button--addToCart--subscriptionDetail,
.fs-c-button--addToSubscriptionCart--detail {
  color: #ffffff;
  background: #231816;
  border-color: #231816;
  font-family: var(--aba-font-family-gothic, inherit);
}

/*--------------- 会員価格で購入するにはログインが必要です。 ---------------*/
.fs-c-productMembersLoginLink {
  display: block;
  font-size: 14px;
  line-height: 1.5;
  padding: 0.46em 0.5em;
  color: #ffffff !important;
  background: #231816;
  text-decoration: none !important;
  text-align: center;
  margin: 0.5em 0;
}
@media (min-width: 750.02px) {
  .fs-c-productMembersLoginLink {
    display: inline-block;
  }
}

/*--------------- 価格 ---------------*/
.fs-c-productPrice__addon:where(:not([class*="--listed"]))::before,
.fs-c-productPrice__main__addon:where(:not([class*="--listed"]))::before,
.fs-c-productPrice__addon:where(:not([class*="--listed"]))::after,
.fs-c-productPrice__main__addon:where(:not([class*="--listed"]))::after {
  /* display: none; */
  visibility: hidden;
  pointer-events: none;
}

/*--------------- 商品マーク ---------------*/
.fs-c-productMark {
  gap: 5px 10px;
}

.fs-c-productMark__mark {
  font-size: 13px;
  line-height: 1;
  padding: 0.19em 0.25em;
}
@media (min-width: 750.02px) {
  .fs-c-productMark__mark {
    font-size: 14px;
    line-height: 1.5;
    padding: 0.04em 0.25em;
  }
}

/*
 * Section
------------------------------------------------*/
.aba-pd-section {
  display: block;
  width: 100%;
  padding: 80px 0;
}
.aba-pd-section__header {
  display: block;
  width: 100%;
  margin: 0 0 clamp(40px, 5.33vw, 50px);
}
.aba-pd-section__body {
  display: block;
  width: 100%;
}

.aba-pd-section-title {
  display: block;
  width: 100%;
  font-size: clamp(30px, 4vw, 40px);
  text-align: center;
}
.aba-pd-section-title__en {
  display: block;
  width: 100%;
  font-size: 1em;
  font-weight: normal;
  font-family: var(--aba-font-family-en, inherit);
  letter-spacing: 0.025em;
}
.aba-pd-section-title__ja {
  display: block;
  width: 100%;
  font-size: max(16px, 0.4em);
  font-weight: normal;
  font-family: var(--aba-font-family-ja, inherit);
}
.aba-pd-section-title__en + .aba-pd-section-title__ja {
  margin-top: 0.75em;
}

/*
 * 商品画像
------------------------------------------------*/
.aba-pd-images {
  display: block;
  margin: 0 0 30px;
  --aba-thumbnail-maxwidth: 55px;
  --aba-thumbnail-gap: 10px;
}
@media (min-width: 750.02px) {
  .aba-pd-images {
    --aba-thumbnail-maxwidth: calc((100% - var(--aba-thumbnail-gap, 0px) * 4) / 5);
  }
}

.fs-c-productCarouselMainImage__image {
  display: block;
  vertical-align: bottom;
}
.fs-c-productCarouselMainImage__image > img {
  display: block;
}
@media (min-width: 750.02px) {
  .fs-c-productCarouselMainImage__image > img {
    --aba-max-size: calc((min(100vw, var(--aba-container-maxwidth, 1200px)) - var(--aba-gap, 0px)) / 2);
    max-width: var(--aba-max-size);
    max-height: var(--aba-max-size);
  }
}
.fs-c-productCarouselMainImage__expandButton {
  display: none;
}
.fs-c-productCarouselMainImage__thumbnailList {
  margin: clamp(20px, 2.67vw, 50px) 0;
  gap: var(--aba-thumbnail-gap);
}
.fs-c-productCarouselMainImage__thumbnailList > li {
  margin: 0;
  flex: 0 0 var(--aba-thumbnail-maxwidth);
  max-width: var(--aba-thumbnail-maxwidth);
}
.fs-c-productCarouselMainImage__thumbnailList > li img {
  display: block;
  width: 100%;
  height: auto;
  border: 0;
}
.fs-c-productCarouselMainImage__thumbnailList > li img + figcaption {
  margin-top: 0.25em;
}
@media (min-width: 750.02px) {
  .fs-c-productCarouselMainImage__thumbnailList {
    overflow: hidden;
    flex-wrap: wrap;
  }
}

@media (max-width: 750px) {
  .fs-c-productCarouselMainImage__carousel {
    width: auto;
    margin-left: calc(-1 * var(--aba-container-padding));
    margin-right: calc(-1 * var(--aba-container-padding));
  }
}
.fs-c-productCarouselMainImage__carousel.fs-c-slick .slick-prev, .fs-c-productCarouselMainImage__carousel.fs-c-slick .slick-next {
  width: 36px;
  height: 36px;
  background-color: transparent;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}
.fs-c-productCarouselMainImage__carousel.fs-c-slick .slick-prev::before, .fs-c-productCarouselMainImage__carousel.fs-c-slick .slick-next::before {
  display: none;
}
.fs-c-productCarouselMainImage__carousel.fs-c-slick .slick-prev {
  background-image: url(../images/product/icon-slider-left.svg);
}
.fs-c-productCarouselMainImage__carousel.fs-c-slick .slick-next {
  background-image: url(../images/product/icon-slider-right.svg);
}
.fs-c-productCarouselMainImage__carousel .slick-disabled {
  opacity: 0;
  visibility: hidden;
}

/*--------------- カスタマイズ画像一覧 ---------------*/
.aba-pd-images__main {
  display: block;
  width: 100%;
  overflow: hidden;
}
@media (max-width: 750px) {
  .aba-pd-images__main {
    width: auto;
    margin-left: calc(-1 * var(--aba-container-padding));
    margin-right: calc(-1 * var(--aba-container-padding));
  }
}
.aba-pd-images__main .fs-c-productPlainImage img {
  display: block;
  width: 100%;
  height: auto;
  border: 0;
}
.aba-pd-images__main > .fs-c-productPlainImage:not(:first-child) {
  display: none;
}
.aba-pd-images__thumbnail {
  width: 100%;
  margin: clamp(10px, 1.33vw, 40px) 0;
  padding: 10px 0;
  overflow-x: auto;
  overflow-y: hidden;
}
.aba-pd-images__thumbnail .fs-c-productPlainImage {
  display: block;
  margin: 0;
  cursor: pointer;
}
.aba-pd-images__thumbnail .fs-c-productPlainImage img {
  display: block;
  width: 100%;
  height: auto;
  border: 0;
  pointer-events: none;
}
.aba-pd-images__thumbnail__list {
  width: auto;
  display: flex;
  gap: var(--aba-thumbnail-gap);
}
.aba-pd-images__thumbnail__list .fs-c-productPlainImage {
  width: auto;
  flex: 0 0 var(--aba-thumbnail-maxwidth);
  max-width: var(--aba-thumbnail-maxwidth);
}
@media (max-width: 750px) {
  .aba-pd-images__thumbnail {
    width: auto;
    margin-left: 0;
    margin-right: calc(-1 * var(--aba-container-padding));
  }
}
@media (min-width: 750.02px) {
  .aba-pd-images__thumbnail {
    overflow: hidden;
    flex-wrap: wrap;
  }
}
.aba-pd-images .swiper-button-prev,
.aba-pd-images .swiper-button-next {
  width: 36px;
  height: 36px;
  background-color: transparent;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}
.aba-pd-images .swiper-button-prev::after,
.aba-pd-images .swiper-button-next::after {
  display: none;
}
.aba-pd-images .swiper-button-prev {
  background-image: url(../images/product/icon-slider-left.svg);
}
.aba-pd-images .swiper-button-next {
  background-image: url(../images/product/icon-slider-right.svg);
}

/*
 * 関連タグ
------------------------------------------------*/
.aba-pd-related-tags {
  width: 100%;
  font-family: var(--aba-font-family-gothic);
  display: flex;
  flex-wrap: wrap;
  gap: 1em;
  margin: 0 0 2em;
  font-size: 13px;
}
@media (min-width: 750.02px) {
  .aba-pd-related-tags {
    gap: 0.5em;
    font-size: 14px;
  }
}
.aba-pd-related-tags > a {
  text-decoration: underline;
}

/*
 * 価格・ポイント
------------------------------------------------*/
.aba-pd-prices {
  width: 100%;
  margin: 0 0 1em;
  font-size: 15px;
  display: flex;
  align-items: center;
  gap: 1em;
  flex-wrap: wrap;
}
.aba-pd-prices .fs-c-productPrices--productDetail {
  display: block;
  font-size: 0.93em;
}
.aba-pd-prices .fs-c-productPrices--productDetail .fs-c-productPrice:not(.fs-c-productPrice--listed) .fs-c-productPrice__main__price {
  font-size: 1.86em;
}
@media (min-width: 750.02px) {
  .aba-pd-prices .fs-c-productPrices--productDetail .fs-c-productPrice:not(.fs-c-productPrice--listed) .fs-c-productPrice__main__price {
    font-size: 2em;
  }
}
.aba-pd-prices .fs-c-productPointDisplay {
  background: none;
  color: inherit;
  padding: 0;
  line-height: 1.5;
  display: block;
  font-size: 1em;
  font-weight: 600;
  font-family: var(--aba-font-family-gothic);
}
.aba-pd-prices.has-memberPrice::before {
  content: "";
  display: block;
  flex-shrink: 0;
  width: clamp(72px, 9.6vw, 74px);
  height: auto;
  aspect-ratio: 1;
  padding: 0;
  pointer-events: none;
  overflow: hidden;
  background-image: url(../images/product/member-price.png);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
.aba-pd-prices.has-memberPrice .fs-c-productPrice--selling {
  font-family: var(--aba-font-family-gothic);
}
.aba-pd-prices.has-memberPrice .fs-c-productPrice--selling .fs-c-productPrice__main__price {
  font-size: 1em !important;
}
.aba-pd-prices.has-memberPrice .fs-c-productPrice--selling .fs-c-productPrice__addon {
  font-size: 0.67em;
}
.aba-pd-prices.has-memberPrice .fs-c-productPrice--member .fs-c-productPrice__main__label {
  display: none;
}
.aba-pd-prices.has-memberPrice .fs-c-productPrice--member .fs-c-productPrice__main__price {
  font-size: 2.27em;
}
.aba-pd-prices.has-memberPrice .fs-c-productPrice--member .fs-c-productPrice__addon {
  font-size: 1em;
}
.aba-pd-prices.has-memberPrice .fs-c-productPrice--selling + .fs-c-productPrice--member {
  margin-top: 0.15em;
}
.aba-pd-prices.has-memberPrice .fs-c-productPointDisplay {
  padding: 0.75em 0;
  align-self: flex-end;
}
@media (max-width: 750px) {
  .aba-pd-prices.has-memberPrice {
    /* --aba-size: 72px; */
    --aba-size: 74px;
    display: block;
    padding-left: calc(var(--aba-size) + 15px);
    min-height: var(--aba-size);
    position: relative;
  }
  .aba-pd-prices.has-memberPrice::before {
    width: var(--aba-size);
    position: absolute;
    top: 0;
    left: 0;
    right: auto;
    bottom: auto;
    z-index: 2;
    margin: auto;
  }
  .aba-pd-prices.has-memberPrice .fs-c-productPointDisplay {
    padding: 0;
  }
}
.aba-pd-prices .fs-c-subscriptionPriceTable {
  order: 1;
}

/*--------------- 価格上部 ---------------*/
.aba-pd-prices-upperContent {
  width: 100%;
  margin: 1em 0;
}

/*--------------- 価格下部 ---------------*/
.aba-pd-prices-lowerContent {
  width: 100%;
  margin: 1em 0;
}

/*
 * 関連商品
------------------------------------------------*/
.aba-pd-fs-recommendProducts {
  display: none !important;
}

.aba-pd-related-products {
  width: 100%;
  display: block;
}
.aba-pd-related-products:not(.js--active) {
  display: none;
}
.aba-pd-related-products__list {
  list-style: none;
  padding: 0;
  width: 100%;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
  gap: 30px 10px;
}
.aba-pd-related-products__list__item {
  display: block;
}
.aba-pd-related-products__list__item a {
  transition: opacity 0.4s;
  text-decoration: none !important;
}
.aba-pd-related-products__list__item a:hover {
  opacity: 0.6;
}

.aba-pd-related-product {
  display: block;
  width: 100%;
}
.aba-pd-related-product__image {
  display: block;
  width: 100%;
  margin: 0 0 10px;
}
.aba-pd-related-product__image img {
  display: block;
  width: 100%;
  height: auto;
}
.aba-pd-related-product__body {
  display: block;
  width: 100%;
  text-align: center;
}
.aba-pd-related-product .fs-c-productPrice {
  justify-content: center;
  font-size: 18px;
}
.aba-pd-related-product .fs-c-productPrice__main__label {
  display: none;
}
.aba-pd-related-product .fs-c-productPrice__addon {
  font-size: 0.56em;
  margin-left: 0.25em;
}
.aba-pd-related-product .fs-c-productPrice__addon::before, .aba-pd-related-product .fs-c-productPrice__addon::after {
  visibility: visible;
}
.aba-pd-related-product .fs-c-productListItem__prices > *:not(:last-child) {
  display: none;
}

/*
 * カート周り
------------------------------------------------*/
.aba-pd-carts {
  --aba-quantity-width: 90px;
  --aba-gap: 10px;
  padding: 30px 0;
  border-top: 1px solid #DDDDDD;
  margin-top: 30px;
  width: 100%;
  display: grid;
  grid-template-columns: var(--aba-quantity-width) minmax(0, 1fr);
  gap: var(--aba-gap);
}
@media (min-width: 750.02px) {
  .aba-pd-carts {
    --aba-quantity-width: min(135px, 23.68%);
  }
}
.aba-pd-carts > * {
  grid-column: span 2;
}
.aba-pd-carts .fs-c-productQuantityAndWishlist {
  display: block;
  grid-column: auto;
}
.aba-pd-carts .fs-c-quantity {
  padding: 0;
  width: var(--aba-quantity-width);
  max-width: 100%;
  height: 60px;
  margin: 0 10px 0 0;
}
@media (min-width: 750.02px) {
  .aba-pd-carts .fs-c-quantity {
    height: 70px;
    margin: 0;
  }
}
.aba-pd-carts .fs-c-quantity select,
.aba-pd-carts .fs-c-quantity input {
  height: 100%;
  text-align: center;
  font-size: 18px;
}
.aba-pd-carts .fs-c-quantity select {
  --aba-padding-y: 0.25em;
  --aba-padding-x: 0.67em;
  background-image: url(../images/icon/select-arrow.svg);
  background-repeat: no-repeat;
  background-size: 1.11em 0.67em;
  background-position: center right var(--aba-padding-x);
  padding: var(--aba-padding-y) calc(var(--aba-padding-x) + 1.11em) var(--aba-padding-y) var(--aba-padding-x);
}
.aba-pd-carts .fs-c-productQuantityAndWishlist__quantity {
  width: 100%;
  max-width: 100%;
}
.aba-pd-carts .fs-c-productActionButton {
  padding: 0;
  grid-column: auto;
  height: 60px;
}
@media (min-width: 750.02px) {
  .aba-pd-carts .fs-c-productActionButton {
    height: 70px;
  }
}
.aba-pd-carts .fs-c-productActionButton > * {
  width: 100%;
  min-width: 0;
  height: 100%;
  font-size: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.aba-pd-carts .fs-c-productActionButton > *::before {
  content: "";
  display: block;
  width: 1.67em;
  height: auto;
  aspect-ratio: 1;
  margin-right: 0.75em;
  flex-shrink: 0;
  background-image: url(../images/icon/cart-white.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}
.aba-pd-carts .fs-c-productActionButton .fs-c-button--addToCart--detail {
  padding-left: 1em;
  padding-right: 1em;
}
.aba-pd-carts .fs-c-productQuantityAndWishlist__wishlist {
  display: none;
}

.aba-pd-carts .fs-c-variationMatrix__panel {
  background: #ffffff;
  color: #231816;
}
.aba-pd-carts .fs-c-variationMatrix__radio:checked + .fs-c-variationMatrix__panel {
  background: #ffffff;
  color: #231816;
  border-color: #231816;
}

/* 定期 */
.aba-pd-carts .fs-c-variationAndActions .fs-c-dropdown__menu {
  padding-top: 0.75em;
  padding-bottom: 0.75em;
  font-size: 1em;
}
.aba-pd-carts .fs-c-buttonContainer--addToWishList--detail {
  order: 1;
  margin-top: 20px;
}
.aba-pd-carts .fs-c-productQuantityAndAction {
  flex-wrap: nowrap;
}
body.fs-body-productSubscribe .aba-pd-carts {
  /* padding: 30px 0 0; */
}
body.fs-body-productSubscribe .aba-pd-carts .fs-c-productQuantityAndWishlist__wishlist {
  /* position: static; */
}

body.fs-body-productSubscribe .aba-pd-carts > .fs-c-buttonContainer--addToWishList--detail {
  display: none;
}

/*--------------- 在庫説明 ---------------*/
.aba-pd-carts .fs-c-variationAndActions__stockSignLegend {
  display: none;
}

/*
 * お気に入り複製
------------------------------------------------*/
.aba-pd-clone-wishlist .fs-c-productQuantityAndWishlist {
  display: block;
  width: 100%;
}
.aba-pd-clone-wishlist .fs-c-productQuantityAndWishlist__wishlist {
  display: block;
  width: 100%;
}
.aba-pd-clone-wishlist .fs-c-button--particular.fs-c-button--addToWishList--detail,
.aba-pd-clone-wishlist .fs-c-button--particular.fs-c-button--removeFromWishList--detail {
  width: 100%;
  height: 50px;
  justify-content: center;
  font-family: var(--aba-font-family-gothic);
  font-size: 1em;
  text-align: center;
  color: inherit;
  background: none;
  border: 0;
  box-shadow: none;
  border-style: solid;
  border-width: 1px 0;
  border-color: #DDDDDD;
}
.aba-pd-clone-wishlist .fs-c-button--particular.fs-c-button--addToWishList--detail::after,
.aba-pd-clone-wishlist .fs-c-button--particular.fs-c-button--removeFromWishList--detail::after {
  display: none;
}
.aba-pd-clone-wishlist .fs-c-button--particular.fs-c-button--addToWishList--detail::before {
  content: "";
  display: block;
  width: 1.73em;
  height: auto;
  aspect-ratio: 1;
  margin-right: 0.5em;
  flex-shrink: 0;
  background-image: url(../images/icon/heart.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}
/*
 * 補足リンク
------------------------------------------------*/
.aba-pd-supportLinks {
  width: 100%;
  padding: 10px 0;
  margin-top: 10px;
  font-family: var(--aba-font-family-gothic);
}
.aba-pd-supportLinks ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: baseline;
  gap: 0.5em 1em;
}
.aba-pd-supportLinks ul li {
  display: block;
  width: auto;
  max-width: 100%;
}
.aba-pd-supportLinks a {
  display: block;
  color: inherit !important;
  text-decoration: none;
  position: relative;
  padding-right: 1em;
}
.aba-pd-supportLinks a[href]:hover {
  text-decoration: underline;
}
.aba-pd-supportLinks a::after {
  content: "";
  display: block;
  width: 0.5em;
  height: 0.5em;
  border-style: solid;
  border-width: 1px 1px 0 0;
  border-color: CurrentColor;
  transform: rotate(45deg);
  position: absolute;
  top: 0;
  right: 0.25em;
  bottom: 0;
  z-index: 2;
  margin: auto;
}

/*
 * まとめ買い表示用テキスト
------------------------------------------------*/
.aba-pd-bundleText {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

/*
 * バナー
------------------------------------------------*/
.aba-pd-banners {
  --aba-container-maxwidth: 1400px;
  container-type: inline-size;
  display: block;
  padding: 25px 0;
}
.aba-pd-banners__narrow {
  display: none;
  padding: 25px 0;
}
@container (min-width: 750px) {
  .aba-pd-banners__narrow {
    display: none !important;
  }
}
.aba-pd-banners__wide {
  display: block;
  padding: clamp(50px, 6.67vw, 75px) 0;
}
@container (max-width: 750.02px) {
  .aba-pd-banners__wide {
    display: none !important;
  }
}
@supports (container-type: inline-size) {
  .aba-pd-banners__narrow {
    display: block;
  }
}
.aba-pd-banners .fs-pt-column {
  display: grid;
}
.aba-pd-banners .fs-pt-column__item {
  display: block;
  width: 100%;
  margin: 0;
  padding: 0;
}
.aba-pd-banners .fs-pt-column__item[href] {
  transition: opacity 0.25s;
}
.aba-pd-banners .fs-pt-column__item[href]:hover {
  opacity: 0.85;
}
.aba-pd-banners .fs-pt-column__image {
  display: block;
  width: 100%;
  margin: 0;
  padding: 0;
}
.aba-pd-banners .fs-pt-column__image img {
  display: block;
  width: 100%;
  height: auto;
}
.aba-pd-banners .fs-pt-column__heading {
  display: block;
  width: 100%;
  margin: 0;
  font-size: 1em;
  font-weight: 600;
}
.aba-pd-banners .fs-pt-column__description {
  display: block;
  width: 100%;
  margin: 0;
  font-size: 0.88em;
  font-weight: normal;
}
.aba-pd-banners__narrow .fs-pt-column {
  grid-template-columns: minmax(0, 1fr);
  gap: 20px;
}
.aba-pd-banners__wide .fs-pt-column {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 40px;
}

/*
 * レコメンド
------------------------------------------------*/
.aba-pd-recommend .aile2025-fr-products__list__item:nth-child(n+6) {
  display: none;
}

.aba-pd-ranking .aile2025-fr-products {
  /* counter-reset: ranking; */
}
.aba-pd-ranking .aile2025-fr-products__list__item {
  /* counter-increment: ranking; */
}
.aba-pd-ranking .aile2025-fr-products__list__item:nth-child(n+6) {
  display: none;
}
.aba-pd-ranking .aile2025-fr-product {
  container-type: inline-size;
  position: relative;
}
.aba-pd-ranking .aile2025-fr-product::before {
  content: attr(data-index);
  display: flex;
  justify-content: center;
  align-items: center;
  width: 1.44em;
  height: auto;
  aspect-ratio: 1;
  font-size: 18px;
  font-size: 11.72cqw;
  text-align: center;
  line-height: 1;
  color: #ffffff;
  background: #231816;
  pointer-events: none;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  margin: auto;
}
.aba-pd-history .aile2025-fr-products__list__item:nth-child(n+6) {
  display: none;
}

/*
 * 擬似カートボタン
------------------------------------------------*/
.aba-pd-floatingCart {
  display: none;
  width: 100%;
  border-top: 1px solid #231816;
  background: #ffffff;
  padding: 25px 0;
  position: fixed;
  top: auto;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1005;
  margin: auto;
}
@media (max-width: 750px) {
  .aba-pd-floatingCart {
    display: block;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.4s;
  }
  .aba-pd-floatingCart.js--active {
    opacity: 1;
    pointer-events: auto;
  }
}
.aba-pd-floatingCart__btn {
  width: 100%;
  min-height: 60px;
  padding: 0.8em 1.6em 0.6em;
  font-size: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #ffffff !important;
  background: #231816;
  font-family: var(--aba-font-family-gothic);
  text-decoration: none !important;
}
.aba-pd-floatingCart__btn::before {
  content: "";
  display: block;
  width: 1.67em;
  height: auto;
  aspect-ratio: 1;
  margin-right: 0.75em;
  flex-shrink: 0;
  background-image: url(../images/icon/cart-white.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}

/*
 * 講習について問い合わせる
------------------------------------------------*/
.aba-pd-school-contact {
  display: block;
  width: 100%;
}
.aba-pd-school-contact__message {
  display: block;
  width: 100%;
  color: #231816;
  background: #ffffff;
  margin: 0 0 30px;
  padding: 1em 1em;
  font-size: 14px;
  font-family: var(--aba-font-family-gothic);
  border: 1px solid #CCCCCC;
}
.aba-pd-school-contact__action {
  display: block;
  width: 100%;
}

.aba-pd-school-contact-btn {
  width: 100%;
  font-size: 18px;
  line-height: 1.5;
  padding: 1.19em 0.5em;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--aba-font-family-gothic);
  font-weight: 400;
  color: #ffffff !important;
  background: #231816;
  text-decoration: none !important;
}
.aba-pd-school-contact-btn::before {
  content: "";
  display: block;
  width: 1.67em;
  height: auto;
  aspect-ratio: 1;
  margin-right: 0.75em;
  flex-shrink: 0;
  background-image: url(../images/icon/mail-white.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}
.aba-pd-school-contact-btn[href] {
  transition: opacity 0.4s;
}
.aba-pd-school-contact-btn[href]:hover {
  opacity: 0.6;
}

.aba-pd-school-contact ~ *:not(.fs-c-productQuantityAndWishlist) {
  display: none !important;
}
.aba-pd-school-contact ~ .fs-c-productQuantityAndWishlist > *:not(.fs-c-productQuantityAndWishlist__wishlist) {
  display: none !important;
}

/*
 * 【規約事項】
------------------------------------------------*/
.aba-pd-agreement-wrapper {
  display: none;
}

.aba-pd-agreement {
  display: block;
  width: 100%;
  margin: 0 0 1em;
  font-family: var(--aba-font-family-gothic);
  font-size: clamp(13px, 1.73vw, 14px);
}
.aba-pd-agreement p {
  margin: 0;
}
.aba-pd-agreement__nav {
  display: block;
  width: 100%;
  margin: 0.5em 0 0;
  padding: 0;
}
.aba-pd-agreement__nav a {
  display: inline-flex;
  align-items: center;
  text-decoration: underline;
}
.aba-pd-agreement__nav a::after {
  content: "";
  flex-shrink: 0;
  margin-left: 0.25em;
  display: block;
  width: 0.5em;
  height: 0.5em;
  border-style: solid;
  border-width: 1px 1px 0 0;
  border-color: CurrentColor;
  transform: rotate(45deg);
}
.aba-pd-agreement__check {
  display: block;
  width: 100%;
  margin: 0.5em 0 0;
  padding: 0.5em;
}

.fs-c-productSelection.js--agreement {
  display: block;
  width: 100%;
  padding: 15px 20px;
  border: 1px solid #DDDDDD;
  color: #231816;
  background: #ffffff;
  font-family: var(--aba-font-family-gothic);
  font-size: clamp(13px, 1.73vw, 14px);
}
.fs-c-productSelection.js--agreement .fs-c-productSelection__name {
  margin: 0;
  font-size: 1em;
  font-weight: 500;
  background: none;
}
.fs-c-productSelection.js--agreement .fs-c-productSelection__name .fs-c-requiredMark {
  display: none;
}
