:root{--parvus-transition-duration:0.3s;--parvus-transition-timing-function:cubic-bezier(0.62,0.16,0.13,1.01);--parvus-background-color:#f9f4f0;--parvus-color:#2d3249;--parvus-btn-background-color:#2d3249;--parvus-btn-color:#fff;--parvus-btn-hover-background-color:#404768;--parvus-btn-hover-color:#fff;--parvus-btn-disabled-background-color:#40476899;--parvus-btn-disabled-color:#fff;--parvus-caption-background-color:#0000;--parvus-caption-color:#2d3249;--parvus-copyright-background-color:#fffc;--parvus-copyright-color:#2d3249;--parvus-loading-error-background-color:#fff;--parvus-loading-error-color:#2d3249;--parvus-loader-background-color:#f9f4f1;--parvus-loader-color:#2d3249}::view-transition-group(lightboximage){animation-duration:var(--parvus-transition-duration);animation-timing-function:var(--parvus-transition-timing-function);z-index:7}::view-transition-group(toolbar){z-index:8}body:has(.parvus[open]){touch-action:none}.parvus-trigger:has(img){display:block;position:relative}.parvus-trigger:has(img) .parvus-zoom__indicator{align-items:center;background-color:var(--parvus-btn-background-color);color:var(--parvus-btn-color);display:flex;inset-block-start:.5rem;inset-inline-end:.5rem;justify-content:center;padding:.5rem;position:absolute}.parvus-trigger:has(img) img{display:block}.parvus{background-color:initial;block-size:100%;border:0;box-sizing:border-box;color:var(--parvus-color);contain:strict;inline-size:100%;inset:0;margin:0;max-block-size:unset;max-inline-size:unset;overflow:hidden;overscroll-behavior:contain;padding:0;position:fixed}.parvus::backdrop{display:none}.parvus *,.parvus :after,.parvus :before{box-sizing:border-box}.parvus__overlay{background-color:var(--parvus-background-color);color:var(--parvus-color);inset:0;position:absolute}.parvus__slider{inset:0;position:absolute;transform:translateZ(0)}@media screen and (prefers-reduced-motion:no-preference){.parvus__slider--animate:not(.parvus__slider--is-dragging){transition:transform var(--parvus-transition-duration) var(--parvus-transition-timing-function);will-change:transform}}.parvus__slider--is-draggable{cursor:grab;touch-action:pan-y pinch-zoom}.parvus__slider--is-dragging{cursor:grabbing;touch-action:none}.parvus__slide{block-size:100%;contain:layout;display:grid;inline-size:100%;padding-block:1rem;padding-inline:1rem;place-items:center}.parvus__slide img{block-size:auto;display:block;inline-size:auto;margin-inline:auto;transform:translateZ(0)}.parvus__content{position:relative}.parvus__content--error{background-color:var(--parvus-loading-error-background-color);color:var(--parvus-loading-error-color);padding-block:.5rem;padding-inline:1rem}.parvus__caption{background-color:var(--parvus-caption-background-color);color:var(--parvus-caption-color);padding-block-start:.5rem;text-align:start}.parvus__copyright{background-color:var(--parvus-copyright-background-color);color:var(--parvus-copyright-color);inset-block-end:0;inset-inline-end:0;padding-inline:.25rem;position:absolute}.parvus__loader{block-size:6.25rem;display:inline-block;inline-size:6.25rem;inset-block-start:50%;inset-inline-start:50%;position:absolute;transform:translate(-50%,-50%)}.parvus__loader:before{animation:spin 1s linear infinite;border:.25rem solid var(--parvus-loader-background-color);border-block-start-color:var(--parvus-loader-color);border-radius:100%;content:"";inset:0;position:absolute;z-index:1}.parvus__toolbar{view-transition-name:toolbar;align-items:center;display:flex;inset-block-start:1rem;inset-inline:1rem;justify-content:space-between;pointer-events:none;position:absolute;z-index:8}.parvus__toolbar>*{pointer-events:auto}.parvus__controls{align-items:center;display:flex;gap:.5rem}.parvus__btn{appearance:none;background-color:var(--parvus-btn-background-color);background-image:none;border:.0625rem solid #0000;border-radius:0;color:var(--parvus-btn-color);cursor:pointer;display:flex;font:inherit;padding:.3125rem;position:relative;touch-action:manipulation;will-change:transform,opacity;z-index:7}.parvus__btn:focus-visible,.parvus__btn:hover{background-color:var(--parvus-btn-hover-background-color);color:var(--parvus-btn-hover-color)}.parvus__btn--previous{inset-inline-start:0}.parvus__btn--next,.parvus__btn--previous{inset-block-start:calc(50svh - 1rem);position:absolute;transform:translateY(-50%)}.parvus__btn--next{inset-inline-end:0}.parvus__btn svg{pointer-events:none}.parvus__btn[aria-hidden=true]{display:none}.parvus__btn[aria-disabled=true]{background-color:var(--parvus-btn-disabled-background-color);color:var(--parvus-btn-disabled-color)}.parvus__counter{position:relative;z-index:7}.parvus__counter[aria-hidden=true]{display:none}@media screen and (prefers-reduced-motion:no-preference){.parvus__btn,.parvus__caption,.parvus__copyright,.parvus__counter,.parvus__overlay{transition:transform var(--parvus-transition-duration) var(--parvus-transition-timing-function),opacity var(--parvus-transition-duration) var(--parvus-transition-timing-function);will-change:transform,opacity}.parvus__copyright{transition-delay:var(--parvus-transition-duration)}.parvus--is-closing .parvus__copyright,.parvus--is-vertical-closing .parvus__copyright,.parvus--is-zooming .parvus__copyright{transition-delay:0s;transition-duration:0s}.parvus--is-closing .parvus__btn,.parvus--is-closing .parvus__caption,.parvus--is-closing .parvus__copyright,.parvus--is-closing .parvus__counter,.parvus--is-closing .parvus__overlay,.parvus--is-opening .parvus__btn,.parvus--is-opening .parvus__caption,.parvus--is-opening .parvus__copyright,.parvus--is-opening .parvus__counter,.parvus--is-opening .parvus__overlay{opacity:0}.parvus--is-vertical-closing .parvus__btn:not(.parvus__btn--previous,.parvus__btn--next),.parvus--is-vertical-closing .parvus__counter,.parvus--is-zooming .parvus__btn:not(.parvus__btn--previous,.parvus__btn--next),.parvus--is-zooming .parvus__counter{opacity:0;transform:translateY(-100%)}.parvus--is-vertical-closing .parvus__btn--previous,.parvus--is-zooming .parvus__btn--previous{opacity:0;transform:translate(-100%,-50%)}.parvus--is-vertical-closing .parvus__btn--next,.parvus--is-zooming .parvus__btn--next{opacity:0;transform:translate(100%,-50%)}.parvus--is-vertical-closing .parvus__caption,.parvus--is-zooming .parvus__caption{opacity:0;transform:translateY(100%)}.parvus--is-vertical-closing .parvus__copyright,.parvus--is-zooming .parvus__copyright{opacity:0}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}

/* ==========================================================================
   Override
   ========================================================================== */

/* 背景 */
.parvus .parvus__overlay {
  background: rgba(0, 0, 0, .53);
}

/* 小さい画像を最低幅まで拡大（はみ出す高さは contain で比率を保って収める） */
.parvus .parvus__slide img {
  min-width: min(1000px, calc(100vw - 2rem));
  max-height: calc(100svh - 2rem);
  object-fit: contain;
}

/* キャプション（2〜3行想定）の分だけ高さを空ける */
.parvus .parvus__slide:has(.parvus__caption) img {
  max-height: calc(100svh - 2rem - 6rem);
}

/* キャプション */
.parvus .parvus__caption {
  color: #fff;
}

/* スライドカウント非表示 */
.parvus .parvus__counter {
  display: none;
}

/* 送り・戻しボタン */
.parvus .parvus__btn--previous,
.parvus .parvus__btn--next {
  width: 70px;
  height: 70px;
  padding: 0;
  border: 0;
  background: transparent center / contain no-repeat;
  transition: transform .3s, opacity .3s;
}

.parvus .parvus__btn--previous {
  inset-inline-start: 24px;
  background-image: url(/common/svg/prev.svg);
}

.parvus .parvus__btn--next {
  inset-inline-end: 24px;
  background-image: url(/common/svg/next.svg);
}

.parvus .parvus__btn--previous svg,
.parvus .parvus__btn--next svg {
  display: none;
}

.parvus:not(.parvus--is-zooming, .parvus--is-vertical-closing) .parvus__btn--previous:not([aria-disabled=true]):is(:hover, :focus-visible),
.parvus:not(.parvus--is-zooming, .parvus--is-vertical-closing) .parvus__btn--next:not([aria-disabled=true]):is(:hover, :focus-visible) {
  background-color: transparent;
  transform: translateY(-50%) scale(1);
}

/* 閉じるボタン */
.parvus .parvus__btn--close {
  align-items: center;
  justify-content: center;
  width: 56px;
  height: 56px;
  padding: 0;
  border-radius: 0%;
  background-color:transparent;
  color: #fff;
  transition: background-color .3s, transform .3s, opacity .3s;
}

.parvus .parvus__toolbar {
  inset-block-start: 0px;
  inset-inline: 0px;
}

.parvus .parvus__btn--close svg {
  width: 40px;
  height: 40px;
  stroke-width: 2;
}

.parvus:not(.parvus--is-zooming, .parvus--is-vertical-closing) .parvus__btn--close:is(:hover, :focus-visible) {
  color: #fff;
  transform: scale(1);
}

@media screen and (max-width: 767px) {
  .parvus .parvus__btn--previous {
    inset-inline-start: 12px;
  }

  .parvus .parvus__btn--next {
    inset-inline-end: 12px;
  }

  .parvus .parvus__btn--close {
    width: 44px;
    height: 44px;
  }

  .parvus .parvus__toolbar {
    inset-block-start: 12px;
    inset-inline: 12px;
  }

  .parvus .parvus__btn--close svg {
    width: 30px;
    height: 30px;
  }

  /* 送り・戻しボタン */
  .parvus .parvus__btn--previous,
  .parvus .parvus__btn--next {
    width: 40px;
  }
}