.price .slider-wrap{
  max-width:1200px;
  overflow:hidden;
}
.price .product-slider{
  display:block;
  margin:0 -12px;
  gap:0;
  overflow:visible;
  transform:none!important;
}
.price .product-slider .slick-track{
  display:flex;
}
.price .product-slider .slick-slide{
  height:auto;
  margin:0 12px;
}
.price .product-slider .slick-slide>div,
.price .product-slider .product-card{
  height:100%;
}
.price .product-slider .product-card{
  display:flex!important;
  flex:none!important;
  flex-direction:column;
}
.price .product-slider .product-card>div:last-child{
  flex:1;
}
.price .product-slider .price-card-date{
  margin:0 0 4px;
  padding-bottom:0.4em;
  border-bottom: 1px solid #d9d2ca;
  color:#888;
  font-size:11px;
  text-align:right;
}
.price .product-card-no-image{
  display:grid;
  place-items:center;
  width:100%;
  aspect-ratio:1;
  background:#eee9e1;
  color:#9b948c;
  font-size:12px;
  letter-spacing:.12em;
}
.price .slider-arrow{
  top:45%;
  display:grid!important;
  place-items:center;
  line-height:1;
}
.price .slider-dots{
  display:block;
  margin:26px auto 0;
}
.price .slider-dots:empty{display:none}
.price .slider-dots .slick-dots{
  display:flex;
  justify-content:center;
  gap:10px;
  margin:0;
  padding:0;
  list-style:none;
}
.price .slider-dots li{
  width:42px;
  height:5px;
  margin:0;
}
.price .slider-dots button{
  display:block;
  width:100%;
  height:100%;
  padding:0;
  border:0;
  border-radius:5px;
  background:#e3e8e2;
  overflow:hidden;
  text-indent:-9999px;
  cursor:pointer;
}
.price .slider-dots .slick-active button{background:var(--green)}

@media(max-width:900px){
  .price .slider-wrap{
    width:100%;
    max-width:1200px;
    margin-left:auto;
    margin-right:auto;
    overflow:hidden;
  }
  .price .product-slider{gap:0;overflow:visible}
  .price .slider-arrow.prev{left:8px}
  .price .slider-arrow.next{left:auto;right:8px}
}

@media(max-width:599px){
  .price .slider-wrap{
    width:100%;
    max-width:100%;
    margin:0 auto;
    overflow:hidden;
  }
  .price .product-slider{
    margin:0 -4px;
  }
  .price .product-slider .slick-slide{
    margin:0 4px;
  }
  .price .product-card>div{
    padding:10px 8px 12px;
  }
  .price .product-card .tag,
  .price .product-card small{
    font-size:8px;
  }
  .price .product-card h3{
    font-size:11px;
    overflow-wrap:anywhere;
  }
  .price .product-card p{
    font-size:9px;
    line-height:1.45;
  }
  .price .product-card strong{
    font-size:13px;
    margin-top:8px;
  }
  .price .slider-arrow.prev{left:2px}
  .price .slider-arrow.next{left:auto;right:2px}
  .price .slider-dots{margin-top:20px}
  .price .slider-dots .slick-dots{gap:6px}
  .price .slider-dots li{width:24px;height:4px}
}

/* 「眠っているBeauty」だけ768pxを境に表示を切り替える。 */
@media (min-width: 768px) and (max-width: 900px) {
  .sleeping-slider {
    width: auto;
    max-width: none;
    margin-right: auto;
    overflow: visible;
  }
  .sleeping-grid {
    display: grid;
    width: auto;
    max-width: 1100px;
    margin: 22px auto 0;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 28px;
    overflow: visible;
    scroll-snap-type: none;
    transform: none !important;
  }
  .sleeping-grid figure {
    min-width: 0;
    margin: 0 0 38px;
    flex: none;
    scroll-snap-align: none;
  }
  .sleeping-grid img {
    aspect-ratio: 360 / 310;
  }
  .sleeping-arrow,
  .sleeping-dots {
    display: none !important;
  }
}

@media (max-width: 767px) {
  .sleeping-slider {
    position: relative;
    width: 70vw;
    max-width: 70vw;
    margin-right: auto;
    margin-left: auto;
    overflow: visible;
  }
  .sleeping-grid {
    width: 100%;
    max-width: 100%;
    gap: 0;
    overflow: hidden;
  }
  .sleeping-grid.slick-initialized {
    display: block;
    width: 100%;
    max-width: 100%;
    margin: 0;
    overflow: visible;
    transform: none;
    scroll-snap-type: none;
  }
  .sleeping-grid .slick-list {
    overflow: hidden;
    border-radius: 12px;
  }
  .sleeping-grid .slick-track {
    display: flex;
  }
  .sleeping-grid figure.slick-slide {
    display: flex;
    height: auto;
    margin: 0;
    padding-right: 2vw;
    padding-left: 2vw;
    flex: 0 0 auto !important;
    flex-direction: column;
    box-sizing: border-box;
    background: transparent;
    scroll-snap-align: none;
  }
  .sleeping-grid figure.slick-slide img {
    width: 100%;
    aspect-ratio: 320 / 260;
    object-fit: cover;
    border-radius: 12px 12px 0 0;
  }
  .sleeping-grid figure.slick-slide figcaption {
    flex: 1;
    min-height: 60px;
    padding: 15px 12px;
    background: #efeae3;
    font-size: 16px;
    border-radius: 0 0 12px 12px;
  }
  .sleeping-slider .sleeping-arrow {
    top: 43%;
    z-index: 3;
    display: block !important;
  }
  .sleeping-slider .sleeping-prev {
    left: -18px;
    transform: translateY(-50%);
  }
  .sleeping-slider .sleeping-next {
    right: -18px;
    transform: translateY(-50%) rotate(180deg);
  }
  .sleeping-dots {
    display: block;
    width: 100%;
    margin: 22px 0 0;
  }
  .sleeping-dots:empty {
    display: none;
  }
  .sleeping-dots .slick-dots {
    display: flex;
    justify-content: center;
    gap: 8px;
    margin: 0;
    padding: 0;
    list-style: none;
  }
  .sleeping-dots li {
    width: 24px;
    height: 4px;
    margin: 0;
  }
  .sleeping-dots button {
    display: block;
    width: 100%;
    height: 100%;
    padding: 0;
    overflow: hidden;
    border: 0;
    border-radius: 4px;
    background: #ddd6cf;
    text-indent: -9999px;
    cursor: pointer;
  }
  .sleeping-dots .slick-active button {
    background: var(--green);
  }
}
