/*ログインログアウトの表示切り替えを行うCSS*/
header .fs-clientInfo.is-ready {
  display: flex;
}
/* .logout.my-false { display: none; } */
.login-btn.my-true { display: none; }
.mypage.my-false { display: none; }
.mypage.my-true { display: block; }

header nav .btn.login.my-true a::before {
  background: url(../img/icon_mypage.png) center center / contain no-repeat;
  width: 2.4rem;
  height: 2.4rem;
  margin-right: 5px;
}

/* top (「#fs_CustomPage」は表示確認用のフリーページなので公開時に消す！)*/
#fs_Top .fs-l-page, #home .fs-l-page {
  margin-top: 0;
}

/* mv */
.top-slide .slick-slider {
  line-height: 0;
}

.top-mv {
  height: calc(100vh - 50px);
}
@media screen and (max-width: 768px) {
  .top-mv {
    height: calc(100vh - 250px);
    margin-bottom: 18rem;
  }
}
@media screen and (max-width: 375px) {
  .top-mv {
    height: calc(100vh - 150px);
    margin-bottom: 18rem;
  }
}


#top-mv-layout {
  height: 100%;
}

#top-mv-layout .pc-only, #top-mv-layout .sp-only, .top-slide, .top-slide .slick-slide > div, .top-slide .fs-pt-carousel__slide {
  height: 100%;
}

@media screen and (max-width: 768px) {/*追加　調整20241203*/
  .top-slide {
    max-height: 730px !important;
  }
  #top-mv-layout .pc-only, #top-mv-layout .sp-only, .top-slide, .top-slide .slick-slide > div, .top-slide .fs-pt-carousel__slide {
    height: auto;
  }
}


.top-slide .slick-list {
  height: 100%!important;
}

.top-slide .fs-pt-carousel__slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* .top-slide .slick-list,  */
.top-slide .slick-track {
  height: 100%;
}

.top-slide .slick-dots {
  position: absolute;
  top: 50%;
  transform: translateY(-50%) rotate(90deg);
  right: 0px;
  text-align: center;
}

.top-slide .slick-dots li {
  position: relative;
  display: block;
  margin: 0;
  height: auto;
  width: auto;
  padding: 0;
}

.top-slide .slick-dots li + li {
  margin-left: 8px;
}

.top-slide .slick-dots li button {
  display: block;
  width: 10px;
  height: 10px;
  cursor: pointer;
  color: transparent;
  border-radius: 50%;
  border: none;
  outline: none;
  background: #FFF;
  opacity: 0.5;
}

.top-slide .slick-dots li.slick-active button {
  opacity: 1;
}

.fs-c-slick .slick-dots li button:before {
  display: none;
}

@media screen and (min-width: 769px) {

  .top-01 .fs-c-productListCarousel.fs-c-slick {
    display: block;
  }
  .top-01 span.fs-c-productListCarousel__ctrl {
    display: none !important;
  }
  .top-01 .fs-c-productListCarousel__list {
    display: block;
    width: 100%;
  }
  .top-01 div.slick-track {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    grid-gap: 0 3.7rem;
    width: 100% !important;
    transform: none !important;
  }
  .top-01 div.slick-track::before {
    content: none !important;
  }
}

.top-01 article.fs-c-productListCarousel__list__item.fs-c-productListItem {
  min-width: 100%;
  margin: 0;
}

.top-01 article.fs-c-productListCarousel__list__item.fs-c-productListItem {
  background-color: #fff;
  border: 1px solid #E2DDD4;
  padding: 4rem 2rem;
}

.top-01 .fs-c-productListItem__control {
  display: none;
}

.top-01 .fs-c-productListItem__productName {
  font-size: 2.2rem;
  font-weight: 700;
  margin-bottom: 1rem;
  color: #625F4F;
  margin: 20px 0 0;
}

.top-01 .fs-c-productListItem__productDescription {
  font-size: 2rem;
  line-height: 1.6;
  letter-spacing: .2rem;
  color: #74624C;
  margin: 0;
}

.top-01 span.fs-c-price__currencyMark {
  display: none;
}

.top-01 span.fs-c-price__value {
  font-size: 2.2rem;
  font-weight: 700;
  color: #625F4F;
}

.top-01 span.fs-c-productPrice__main__price.fs-c-price::after {
  display: block;
  content: "円";
  color: #625F4F;
  font-size: 1.5rem;
  font-weight: 700;
}

.top-01 span.fs-c-productPrice__addon {
  color: #625F4F;
  font-size: 15px;
  font-weight: 700;
}

.top-01 .slick-slide > div {
  height: 100%;
}

.top-01 .slick-slide > div > article {
  height: 100%;
}

.top-01 .fs-c-productListCarousel__list__item {
  display: grid!important; 
  grid-template-columns: 25% auto 40%; 
  grid-template-rows: 1fr auto auto; 
  gap: 0; 
  grid-template-areas: 
    "desc desc img"
    "name name img"
    "price shipping img"; 
}
.top-01 .fs-c-productListItem__imageContainer { 
  grid-area: img; 
}
.top-01 .fs-c-productListItem__productDescription { 
  grid-area: desc; 
}
.top-01 .fs-c-productListItem__productName { 
  grid-area: name; 
}
.top-01 .fs-c-productListItem__prices  { 
  grid-area: price;
  margin-top: 1rem;
}
.top-01 .fs-c-productMarks { 
  grid-area: shipping;
  margin-left: 1rem;
  margin-top: 2.2rem;
}

.top-01 .fs-c-productMark__item { 
  font-size: 1.1rem;
  font-weight: 400;
  border: 1px solid #707070;
  padding: .1rem 1rem;
}
.top-mv .pickup {
  bottom: 5rem;
}
/* .top-mv .pickup {
  position: absolute;
  z-index: 1;
  bottom: 5rem;
  left: 40px;
  border: 1px solid #E3D0B3;
  background: #F7F6F0;
  width: 42rem;
  height: 11rem;
  text-decoration: none;
} */
.top-mv .news p {
  margin: 0;
}
.top-mv .news p a {
  color: #fff;
}

@media screen and (max-width: 768px) {
  .top-01 .fs-c-productListCarousel__ctrl {
    display: none !important;
  }
  .top-01  .slick-track {
    display: flex;
  }
  .top-01 .slick-slider {
    margin: 0;
    width: calc(100% + 20px);
    overflow: visible;
  }
  .top-01 .slick-list {
    padding: 0!important;
    overflow: visible;
  }
  .top-01 .slick-slide {
    margin: 0 5px;
    height: auto !important;
  }
  .top-01 .fs-c-productListCarousel__list {
    overflow: visible;
    margin-left: 25px;
  }
  .top-01 .fs-c-productListCarousel__list__item {
    display: grid!important; 
    grid-template-columns: auto 40%; 
    grid-template-rows: auto auto; 
    gap: 0; 
    grid-template-areas: 
      "desc  img"
      "name name"
      "price shipping"; 
  }
  .top-01 article.fs-c-productListCarousel__list__item.fs-c-productListItem {
    padding: 1.5rem;
    max-width: 295px;
    min-width: 295px;
    width: 295px!important;
  }
  .top-01 .fs-c-productListItem__productDescription {
    font-size: 1.6rem;
    margin-top: 1rem;
  }
  .top-01 .fs-c-productListItem__productName {
    margin: 10px 0 0;
  }
  .top-01 .fs-c-productName__name {
    font-size: 1.8rem;
  }
  .top-01 span.fs-c-price__value {
    font-size: 1.9rem;
  }
  .top-01 span.fs-c-productPrice__main__price.fs-c-price::after {
    font-size: 70%;
  }
  .top-01 span.fs-c-productPrice__addon {
    font-size: 70%;
  }
  .top-01 .fs-c-productMarks {
    margin-left: .5rem;
    margin-top: 1.8rem;
  }
  .top-01 .fs-c-productMark__item {
    font-size: 1.1rem;
    padding: .1rem 1rem;
  }
}


.recommend.flex {
  justify-content: flex-start;
  width: 100%;
}

.recommend.flex .slick-arrow {
  display: none;
}

.recommend.flex.fs-c-productListCarousel.fs-c-slick {
  display: block;
}
.recommend.flex span.fs-c-productListCarousel__ctrl {
  display: none !important;
}
.recommend.flex .fs-c-productListCarousel__list {
  display: block;
  width: 100%;
}

@media screen and (min-width: 769px) {
  .recommend.flex div.slick-track {
    display: grid !important;
    grid-template-columns: 1fr 1fr 1fr !important;
    grid-gap: 15px;
    width: 100% !important;
    transform: none !important;
  }
  .recommend.flex div.slick-track::before {
    content: none !important;
  }
}

.recommend.flex article.fs-c-productListCarousel__list__item.fs-c-productListItem {
  min-width: 100%;
  margin: 0;
}

.recommend.flex .slick-slide {
  border: 1px solid #D1C9BC;
}
.recommend.flex .fs-c-productListItem__image > a {
  aspect-ratio: 1/1;
  display: block;
  background-color: #fff;
}
.recommend.flex .fs-c-productListItem__image > a > img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.recommend.flex .fs-c-productName__name {
  padding: .5rem;
  text-align: center;
  font-size: 1.6rem;
  color: #74624C;
}

.recommend.flex .fs-c-productListItem__prices, .recommend.flex .fs-c-productListItem__control, .recommend.flex .fs-c-productMarks {
  display: none;
}

@media screen and (max-width: 768px) {
  .recommend.flex .fs-c-productListCarousel__list {
    overflow: visible;
  }
  .recommend.flex  .slick-track {
    display: flex;
  }
  .recommend.flex .slick-slider {
    overflow: visible;
  }
  .recommend.flex .slick-list {
    overflow: visible;
  }
  .recommend.flex .slick-slide {
    margin: 0 5px;
    height: auto !important;
  }
  .recommend.flex .fs-c-productListCarousel__list__item {
    flex-basis: 158px;
    max-width: 158px;
    min-width: 158px;
  }
}

.news-slide .slick-track {
  display: flex;
}

.news-slide .slick-slide {
  height: auto !important;
}

.news-slide a.news-item {
  height: 100%;
}

.news-slide a.news-item .cat {
  margin: 0;
}

.news-slide .slick-slide .image {
  aspect-ratio: 400/280;
  background-color: #eee;
}
.news-slide .slick-slide .image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.top-02 p {
  margin: 0;
}

.top-08 .bnrs .fs-pt-column {
  display: flex;
  justify-content: space-between;
  gap: 2rem 0;
}
.top-08 .bnrs .fs-pt-column + .fs-pt-column {
  margin-top: 2rem;
}
.top-08 .bnrs .fs-pt-column__item {
  width: 32%;
  padding: 0;
  display: block;
}
.top-08 .bnrs .bnrs-sp {
  display: none;
}


@media screen and (max-width: 768px) {
  .top-08 .bnrs .bnrs-pc {
    display: none;
  }
  .top-08 .bnrs .bnrs-sp {
    display: block;
  }
  .top-08 .bnrs .fs-pt-column {
    flex-wrap: wrap;
    gap: 1rem 0;
  }
  .top-08 .bnrs .fs-pt-column + .fs-pt-column {
    margin-top: 1rem;
  }
  .top-08 .bnrs .fs-pt-column__item {
    width: 48%;
  }
  .top-mv .news {
    z-index: 1;
  }
  
}

