@charset "UTF-8";

.m-productLine__item{
  width: 100%;
}

/* 商品アイテム */
.m-productLine__item .c-product-head__status{
  margin-top: 1.4rem;
  padding-right: 0;
  position: static;
}

.m-productLine__item .c-product-head__status:not(:has(.c-product-sIcon > *)){
  display: none !important;
}

.m-productLine__item .c-product-head__picture::before,
.m-productLine-typeList__item .c-typeListProduct-pictureBox__picture::before{
  content: none;
}

.m-productLine__item .c-product-head__link{
  padding-top: 0.8rem;
  display: block;
  position: relative;
}

.m-productLine__item .c-product-head__picture,
.m-productLine-typeList__item .c-typeListProduct-pictureBox__picture{
  position: relative;
  border-radius: 1rem;
  overflow: hidden;
}

.m-productLine__item .c-product-head__image,
.m-productLine-typeList__item .c-typeListProduct-pictureBox__image{
  position: relative;
  aspect-ratio: 1;
}

.m-productLine__item .c-product-head__image--soldout,
.m-productLine-typeList__item .c-product-head__image--soldout{
  position: absolute;
  width: 100%;
  height: 100%;
  display: grid;
  place-content: center;
  top: 0;
  left: 0;
  font-family: var(--font-en);
  font-size: 1.8rem;
  font-weight: var(--fw-semibold);
  letter-spacing: 0.07em;
  line-height: 1;
  background-color: rgb(0 0 0 / 0.4);
  color: var(--color-white);
}

.m-productLine__item .c-product-head__link .c-product-sIcon__item{
  width: 3.6rem;
  height: 3.6rem;
  position: absolute;
  top: 0;
  right: 1rem;
  z-index: 2;
}

.m-productLine__item .c-product-head__status .c-product-sIcon__item[data-icon-no]{
  padding: 0.3rem 0.5rem;
  font-size: 1rem;
  font-weight: var(--fw-medium);
  letter-spacing: 0.07em;
  line-height: 1;
  border: 1px solid var(--color-icon-accent);
  border-radius: 0.2rem;
  color: var(--color-icon-accent);
}

.m-productLine__item .c-product-head__status .c-product-sIcon__item[data-icon-no="11"],
.m-productLine__item .c-product-head__status .c-product-sIcon__item[data-icon-no="12"],
.m-productLine__item .c-product-head__status .c-product-sIcon__item[data-icon-no="13"]{
  --color-icon-accent: #EF9022;
}

.m-productLine__item .c-product-head__status .c-product-sIcon__item[data-icon-no="14"],
.m-productLine__item .c-product-head__status .c-product-sIcon__item[data-icon-no="15"]{
  --color-icon-accent: #47919F;
}

.m-productLine__item .c-product-head__status .c-product-sIcon__item[data-icon-no="16"],
.m-productLine__item .c-product-head__status .c-product-sIcon__item[data-icon-no="17"]{
  --color-icon-accent: #59AC6F;
}

.m-productLine__item .c-product-sIcon{
  display: flex;
  gap: 0.4rem;
}

.m-productLine__item .c-product-sIcon :where(img){
  height: 1.8rem;
  width: auto;
}

.m-productLine__item .c-product-body{
  margin-top: 1.4rem;
}

.m-productLine__item .c-product-body__catchcopy{
  font-size: 1.2rem;
  font-weight: var(--fw-medium);
  letter-spacing: 0.07em;
  line-height: 1.5;
  color: #787878;
}

.m-productLine__item .c-product-body__title-name{
  margin-top: 0.6rem;
  font-size: 1.4rem;
  font-weight: var(--fw-regular);
  letter-spacing: 0.07em;
  line-height: 1.6;
}

.m-productLine__item .c-product-body__price[data-is-subsc="true"]{
  margin-top: 1rem;
  display: grid;
  gap: 0.4rem;
}

.m-productLine__item .c-product-body__price:not([data-is-subsc="true"]){
  margin-top: 1rem;
  display: flex;
  align-items: baseline;
}

.m-productLine__item .c-product-body__price-subsc{
  align-items: baseline;
}

.m-productLine__item .c-product-body__price-subsc--regular{
  margin-top: 0;
  color: unset;
}

.m-productLine__item .c-product-body__price-subsc-price--discount{
  color: #E62414;
}

.m-productLine__item .c-product-body__price-subsc-icon{
  padding: 0;
  font-size: 1rem;
  font-weight: var(--fw-medium);
  letter-spacing: 0.07em;
  line-height: 1;
  color: #787878;
  border: none;
  border-radius: 0;
}

.m-productLine__item .c-product-body__price-subsc-price--prefix{
  font-family: var(--font-en);
  font-size: 1.2rem;
  font-weight: var(--fw-bold);
  letter-spacing: 0.07em;
}

.m-productLine__item .c-product-body__price-subsc-price--suffix{
  font-size: 1rem;
  font-weight: var(--fw-medium);
  letter-spacing: 0.07em;
  line-height: 1;
}

.m-productLine__item .c-product-body__price-subsc-price{
  display: flex;
  align-items: baseline;
  gap: 0.2rem;
  font-family: var(--font-en);
  font-size: 1.6rem;
  font-weight: var(--fw-bold);
  letter-spacing: 0.07em;
  line-height: 1;
}

.m-productLine__item .c-product-body__price--normal{
  display: flex;
  align-items: baseline;
  gap: 0;
  font-family: var(--font-en);
  font-size: 1.8rem;
  font-weight: var(--fw-bold);
  letter-spacing: 0.07em;
}

.m-productLine__item .c-product-body__price--normal .c-product-body__price--prefix{
  font-size: 1.6rem;
  font-weight: var(--fw-bold);
  letter-spacing: 0.07em;
  line-height: 1;
}

.m-productLine__item .c-product-body__price--normal .c-product-body__price--suffix{
  font-size: 1rem;
  font-weight: var(--fw-medium);
  letter-spacing: 0.07em;
  line-height: 1;
  color: #787878;
}

.m-productLine__item .c-product-body__price--discount + .c-product-body__price--normal{
  font-size: 1.5rem;
}

.m-productLine__item .c-product-body__price--discount + .c-product-body__price--normal .c-product-body__price--prefix{
  font-size: 1.5rem;
}

@media (min-width: 768px) {
  .m-productLine__item .c-product-body__price-subsc-icon{
    font-size: 1.1rem;
  }

  .m-productLine__item .c-product-body__price-subsc-price--prefix{
    font-size: 1.4rem;
  }

  .m-productLine__item .c-product-head__link{
    padding-top: 1rem;
  }
}

/* 絞り込みモーダル */
.s-headerModalBox{
  padding: 0;
  z-index: 2020;
}

.s-headerModalBox .s-headerModalBox__outer{
  width: 100%;
  background: #FFF8F4;
  border-radius: 0;
}

.s-headerModalBox::after{
  content: none;
}

.s-headerModalBox .s-headerModalBoxHeding{
  padding: 2.5rem 2rem 0;
  background-color: transparent;
  border-radius: 0;
}

.s-headerModalBox .s-headerModalBoxHeding__closeBtn{
  margin: 0 0 0 auto;
  padding: 0;
  width: 3.6rem;
  height: 3.6rem;
  position: static;
}

.s-headerModalBox .s-headerModalBoxHeding__closeBtn::before{
  content: none;
}

.s-headerModalBox .s-headerRefinedSearchBox{
  padding: 0 2rem 2rem;
}

.s-headerModalBox .s-headerRefinedSearchBox-item + .s-headerRefinedSearchBox-item{
  margin-top: 2rem;
  padding-top: 2rem;
  border-top: 1px solid var(--color-gray-dark);
}

.s-headerModalBox .s-headerRefinedSearchBox-item__title{
  margin-bottom: 1rem;
  font-size: 1.5rem;
  font-weight: bold;
  letter-spacing: 0.07em;
  line-height: 1;
  color: #484848;
}

.s-headerModalBox .s-headerRefinedSearchBox-item__checkList{
  padding: 0;
}

.s-headerModalBox .s-headerProductNavList-radioList{
  display: grid;
  gap: 1rem;
}

.s-headerModalBox .s-headerProductNavList-radioList__item__label{
  padding: 0;
}

.s-headerModalBox .s-headerModalBoxFooterBtn{
  padding: 1rem 2rem;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.5rem;
  position: sticky;
  bottom: 0;
  background-color: #FFF8F4;
  backdrop-filter: blur(15);
}

.s-headerModalBox .c-btn-progress{
  min-height: 5rem;
}

.c-section__heading{
  display: grid;
  gap: 1rem;
  text-align: center;
}

.c-section__heading .c-section__heading--ja{
  font-size: 2.2rem;
  font-weight: var(--fw-medium);
  letter-spacing: 0.07em;
  line-height: 1.4545;
}

.c-section__heading .c-section__heading--en{
  font-family: var(--font-en);
  font-size: 1rem;
  font-weight: var(--fw-medium);
  letter-spacing: 0.07em;
  line-height: 1;
}

/* ヒストリー */
.m-product-history{
  padding: 6rem 0 8.5rem;
  background-color: var(--color-light);
}

@media (max-width: 767px){
  .m-product-history .l-container{
    padding-inline: 0;
  }

  .m-product-history .m-product-column__content{
    padding-inline: 1rem;
    position: relative;
  }

  .m-product-history .swiper-button-disabled{
    opacity: 0;
    visibility: hidden;
    transition: opacity var(--transition-default), visibility var(--transition-default);
  }

  .m-product-history .m-product-history__arrow--prev:not(.swiper-button-disabled){
    opacity: 1;
    visibility: visible;
  }

  .m-product-history .m-product-history__arrow{
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    appearance: none;
    -webkit-appearance: none;
    background-color: transparent;
    border: none;
    z-index: 2;
  }

  .m-product-history .m-product-history__arrow--prev{
    left: 1rem;
  }

  .m-product-history .m-product-history__arrow--next{
    right: 1rem;
  }
}

@media (min-width: 768px) {
  .m-product-history .m-product-history__list{
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 2.5rem;
  }
}

.m-product-column{
  --fw-regular: 400;
  --fw-medium: 500;
  --fw-semibold: 600;
  --fw-bold: 700;
}

.m-product-column .m-product-column__content{
  margin-top: 4rem;
}

.m-product-column .c-product-head__picture{
  border-radius: 1rem;
  overflow: hidden;
}

.m-product-column .c-product-head__picture::before{
  content: none;
}

.m-product-column .c-product-head__image{
  position: static;
  aspect-ratio: 1;
  object-fit: contain;
}

.m-product-column .c-product-body{
  margin-top: 1.6rem;
}

.m-product-column .c-product-body__title-name{
  font-size: 1.4rem;
  font-weight: var(--fw-medium);
  letter-spacing: 0.07em;
  line-height: 1.7143;
}

.m-product-column .c-product-body__price{
  margin-top: 1rem;
  display: grid;
  gap: 0.3rem;
}

.m-product-column .c-product-body__price--normal{
  display: flex;
  align-items: baseline;
  font-size: 1.8rem;
  font-weight: var(--fw-bold);
  letter-spacing: 0.07em;
  line-height: 1.2222;
}

.m-product-column .c-product-body__price--prefix{
  font-size: 1.6rem;
  font-weight: var(--fw-bold);
}

.m-product-column .c-product-body__price--suffix{
  font-size: 1rem;
  font-weight: var(--fw-medium);
  letter-spacing: 0.07em;
  line-height: 1;
  color: #787878;
}

.m-product-column .c-product-body__price--discount .c-product-body__price--normal{
  font-size: 1.5rem;
}

.m-product-column .c-product-body__price--discount .c-product-body__price--prefix{
  font-size: 1.5rem;
}

.m-product-column .c-product-body__price--discount + .c-product-body__price--normal{
  font-size: 1.3rem;
}

@media (min-width: 768px) {
  .m-product-column .c-product-body{
    margin-top: 1.1rem;
  }

  .m-product-column .m-product-column__content{
    margin-top: 5rem;
    opacity: 1!important;
  }

  .m-product-column .c-product-body__price--discount + .c-product-body__price--normal .c-product-body__price--prefix{
    font-size: 1.3rem;
  }
}

