/* Slickの基本レイアウトも含め、全てミニスライダーに限定。 */
.home-mini-slider, .home-mini-slider * { box-sizing: border-box; }
.home-mini-slider { width: 100%; margin: 0; padding: 42.5px 20px; background: #fff; color: #686868; }
.home-mini-slider [hidden] { display: none !important; }
.home-mini-slider__inner { position: relative; display: grid; grid-template-columns: 30px minmax(0,1098px) 30px; gap: 17px; align-items: center; max-width: min(1192px,var(--common-inner-width,1200px)); margin: 0 auto; }
.home-mini-slider__stage { grid-column: 2; min-width: 0; position: relative; }
.home-mini-slider__track { position: relative; display: block; touch-action: pan-y; -webkit-tap-highlight-color: transparent; }
.home-mini-slider .slick-list { position: relative; overflow: hidden; display: block; margin: 0 -12px; padding: 0; }
.home-mini-slider .slick-track { position: relative; top: 0; left: 0; display: flex; margin: 0; }
.home-mini-slider .slick-slide { float: none; display: block; min-height: 1px; height: auto; }
.home-mini-slider .slick-loading .slick-track { visibility: hidden; }
.home-mini-slider .slick-list.dragging { cursor: grabbing; }
.home-mini-slider .home-mini-slider__slide { margin: 0; padding: 0 12px; border: 0; }
.home-mini-slider .home-mini-slider__banner { display: block; width: 100%; aspect-ratio: 350 / 150; margin: 0; padding: 0; background: #fff; text-decoration: none; }
.home-mini-slider .home-mini-slider__banner img { display: block; width: 100%; height: 100%; aspect-ratio: 350 / 150; object-fit: contain; margin: 0; border: 0; opacity: .86; }
.home-mini-slider .home-mini-slider__banner:hover { opacity: 1; }
.home-mini-slider .home-mini-slider__arrow { appearance: none; position: relative; display: block; width: 30px; height: 60px; padding: 0; margin: 0; border: 0; border-radius: 0; background: transparent center / 30px 60px no-repeat; box-shadow: none; cursor: pointer; }
.home-mini-slider .home-mini-slider__arrow--prev { grid-column: 1; grid-row: 1; background-image: url('images/arrow-pc-prev.svg'); }
.home-mini-slider .home-mini-slider__arrow--next { grid-column: 3; grid-row: 1; background-image: url('images/arrow-pc-next.svg'); }
.home-mini-slider .home-mini-slider__arrow:disabled { opacity: .35; cursor: default; }
.home-mini-slider .home-mini-slider__pagination { display: none; }
.home-mini-slider :is(button,a,[tabindex]):focus-visible { outline: 3px solid #0bae64; outline-offset: 3px; }
.home-mini-slider .home-mini-slider__banner:focus-visible { outline-offset: -3px; }
.home-mini-slider__status { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
.home-mini-slider__track:not(.slick-initialized) { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; }
.home-mini-slider__track:not(.slick-initialized) .home-mini-slider__slide { padding: 0; }
@media (max-width: 767px) {
  .home-mini-slider { padding: 32px 20px 28px; }
  .home-mini-slider__inner { display: block; max-width: 350px; }
  .home-mini-slider .slick-list { margin: 0; }
  .home-mini-slider .home-mini-slider__banner img { opacity: 1; }
  .home-mini-slider .home-mini-slider__slide { padding: 0; }
  .home-mini-slider .home-mini-slider__arrow { position: absolute; top: calc(min(100vw - 40px,350px) * 150 / 350 / 2); transform: translateY(-50%); z-index: 2; width: 48px; height: 48px; background: transparent; }
  .home-mini-slider .home-mini-slider__arrow::before { content: ''; position: absolute; width: 52px; height: 52px; left: -2px; top: 0; background: center / 52px 52px no-repeat; pointer-events: none; }
  .home-mini-slider .home-mini-slider__arrow--prev { left: -16px; }
  .home-mini-slider .home-mini-slider__arrow--next { right: -16px; }
  .home-mini-slider .home-mini-slider__arrow--prev::before { background-image: url('images/arrow-sp-prev.svg'); }
  .home-mini-slider .home-mini-slider__arrow--next::before { background-image: url('images/arrow-sp-next.svg'); }
  .home-mini-slider .home-mini-slider__pagination { display: flex; align-items: center; gap: 8px; width: max-content; max-width: 100%; height: 24px; margin: 4px auto -8px; padding: 0; overflow-x: auto; overflow-y: hidden; scrollbar-width: none; overscroll-behavior-x: contain; }
  .home-mini-slider__pagination::-webkit-scrollbar { display: none; }
  .home-mini-slider .home-mini-slider__dot { appearance: none; flex: 0 0 8px; display: grid; place-items: center; width: 8px; height: 24px; padding: 0; margin: 0; border: 0; border-radius: 0; box-shadow: none; background: transparent; cursor: pointer; }
  .home-mini-slider .home-mini-slider__dot::before { content: ''; display: block; width: 8px; height: 8px; border-radius: 4px; background: #d9d9d9; }
  .home-mini-slider .home-mini-slider__dot[aria-current="true"] { flex-basis: 18px; width: 18px; }
  .home-mini-slider .home-mini-slider__dot[aria-current="true"]::before { width: 18px; background: #0bae64; }
  .home-mini-slider .home-mini-slider__dot:focus-visible { outline-offset: 0; }
  .home-mini-slider__track:not(.slick-initialized) { grid-template-columns: 1fr; gap: 12px; }
}
@media (prefers-reduced-motion: reduce) {
  .home-mini-slider *, .home-mini-slider *::before { transition: none !important; animation: none !important; scroll-behavior: auto !important; }
}
