.pc-only {
  display: block;
}

@media (max-width: 767px) {
  .pc-only {
    display: none !important;
  }
}

.sp-only {
  display: none;
}

@media (max-width: 767px) {
  .sp-only {
    display: block !important;
  }
}

body:has(.vis-mq3) {
  overflow: clip visible;
}

.vis-mq3 {
  --mq3-col: 100vw;
  --mq3-col-left: 0px;
  --mq3-side: 0px;
  position: relative;
  overflow-x: clip;
  background: #fff;
  font-family: "noto-serif-jp", "Noto Serif JP", serif;
  line-height: 1.8;
  color: #1a1a1a;
}

.vis-mq3 img {
  display: block;
  width: 100%;
  height: auto;
}

.vis-mq3 a {
  color: inherit;
  text-decoration: none;
}

@media (min-width: 768px) {
  .vis-mq3 {
    --mq3-col: clamp(360px, 33.12vw, 900px);
    --mq3-col-left: calc((100vw - var(--mq3-col)) * 0.1543);
    --mq3-side: calc(100vw - var(--mq3-col-left) - var(--mq3-col));
    background: #1a1a1a url("../images/pc-bg.jpg") center/cover no-repeat fixed;
  }
}

.vis-mq3__inner {
  position: relative;
  width: 100%;
  max-width: 100vw;
  margin: 0 auto;
  overflow-x: clip;
}

@media (min-width: 768px) {
  .vis-mq3__inner {
    width: var(--mq3-col);
    max-width: none;
    margin: 0 0 0 var(--mq3-col-left);
    background: #fff;
    box-shadow: 0 0 2.5vw rgba(0, 0, 0, 0.35);
  }
}

.vis-mq3 .mq3-fv {
  position: relative;
  width: 100%;
}

.vis-mq3 .mq3-fv__close {
  position: fixed;
  inset: 0;
  z-index: 30;
  background: #1a1a1a url("../images/header-hero.jpg") center top/cover no-repeat;
  opacity: 1;
  pointer-events: none;
  transition: opacity 1s cubic-bezier(0.4, 0, 0.2, 1);
  will-change: opacity;
}

@media (min-width: 768px) {
  .vis-mq3 .mq3-fv__close {
    left: var(--mq3-col-left);
    right: auto;
    width: var(--mq3-col);
  }
}

.vis-mq3 .mq3-fv.is-pulled .mq3-fv__close {
  opacity: 0;
}

.vis-mq3 .mq3-fv.is-fv-done .mq3-fv__close {
  visibility: hidden;
}

.vis-mq3 .mq3-fv__pull {
  position: relative;
  width: 100%;
  overflow: hidden;
}

.vis-mq3 .mq3-fv__pull img {
  display: block;
  width: 100%;
  height: auto;
}

.vis-mq3 .mq3-fv__pull::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 1;
  background: url("../images/hero-pull.jpg") center top/100% 100% no-repeat;
  filter: blur(calc(0.004 * var(--mq3-col)));
  -webkit-mask-image: linear-gradient(to right, #000 0%, rgba(0, 0, 0, 0) 40%);
  mask-image: linear-gradient(to right, #000 0%, rgba(0, 0, 0, 0) 40%);
  pointer-events: none;
}

.vis-mq3 .mq3-fv__pull::after {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 2;
  background: linear-gradient(to right, rgba(255, 255, 255, 0.476) 0%, rgba(255, 255, 255, 0) 36.935%);
  pointer-events: none;
}

.vis-mq3 .mq3-fv__lead {
  position: absolute;
  left: 45.41%;
  top: 61.632%;
  z-index: 3;
  color: #fff;
  font-weight: 500;
  font-size: 3.06667vw;
  line-height: 2.4024;
  letter-spacing: -0.055em;
  white-space: nowrap;
  text-shadow: 0 0 3.2vw rgba(0, 0, 0, 0.4);
}

@media (min-width: 768px) {
  .vis-mq3 .mq3-fv__lead {
    font-size: calc(0.03067 * var(--mq3-col));
  }
}

.vis-mq3 .mq3-fv__logobox {
  position: absolute;
  left: 5.676%;
  top: 0;
  width: 32.97%;
  height: 84.89%;
  z-index: 40;
  pointer-events: none;
}

.vis-mq3 .mq3-fv__logo {
  position: sticky;
  top: 33vh;
  top: 33svh;
  width: 100%;
  height: auto;
  filter: drop-shadow(0 0 2.66667vw rgba(0, 0, 0, 0.4));
}

.vis-mq3 .mq3-look {
  position: relative;
  width: 100%;
  height: 0;
  margin: 0;
}

.vis-mq3 .mq3-look__photo {
  position: absolute;
  overflow: hidden;
}

.vis-mq3 .mq3-look__photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.vis-mq3 .mq3-look__heading {
  position: absolute;
  z-index: 2;
  font-family: "Arapey", serif;
  font-size: 4.86667vw;
  line-height: 1.207;
  letter-spacing: 0.025em;
}

@media (min-width: 768px) {
  .vis-mq3 .mq3-look__heading {
    font-size: calc(0.04867 * var(--mq3-col));
  }
}

.vis-mq3 .mq3-look__heading span {
  display: inline;
  padding: 0.96vw 2.84vw;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
}

@media (min-width: 768px) {
  .vis-mq3 .mq3-look__heading span {
    padding: calc(0.0096 * var(--mq3-col)) calc(0.0284 * var(--mq3-col));
  }
}

.vis-mq3 .mq3-look__copy {
  position: absolute;
  z-index: 2;
  font-family: "Arapey", serif;
  font-size: 3.33333vw;
  line-height: 1.207;
}

@media (min-width: 768px) {
  .vis-mq3 .mq3-look__copy {
    font-size: calc(0.03333 * var(--mq3-col));
  }
}

.vis-mq3 .mq3-look01__heading span,
.vis-mq3 .mq3-look03__heading span,
.vis-mq3 .mq3-look07__heading span {
  background: #fff;
  color: #1a1a1a;
}

.vis-mq3 .mq3-look02__heading span,
.vis-mq3 .mq3-look05__heading span {
  background: #2e7d84;
  color: #fff;
}

.vis-mq3 .mq3-look04__heading {
  color: #2e7d84;
}

.vis-mq3 .mq3-look01__copy {
  color: #fff;
  text-align: center;
}

.vis-mq3 .mq3-look02__copy {
  color: #2e7d84;
}

.vis-mq3 .mq3-look03__copy {
  color: #1a1a1a;
}

.vis-mq3 .mq3-look04__copy {
  color: #2e7d84;
}

.vis-mq3 .mq3-look07__copy {
  color: #fff;
}

.vis-mq3 .mq3-look03__heading,
.vis-mq3 .mq3-look03__copy {
  writing-mode: vertical-rl;
  text-orientation: mixed;
}

.vis-mq3 .mq3-look04__heading,
.vis-mq3 .mq3-look05__heading {
  letter-spacing: 0;
}

.vis-mq3 .mq3-look07__copy {
  font-size: 3.46667vw;
}

@media (min-width: 768px) {
  .vis-mq3 .mq3-look07__copy {
    font-size: calc(0.03467 * var(--mq3-col));
  }
}

.vis-mq3 .mq3-look03__copy {
  line-height: 1.105;
}

.vis-mq3 .mq3-look03__heading span {
  padding: 2.36vw 0.96vw;
}

@media (min-width: 768px) {
  .vis-mq3 .mq3-look03__heading span {
    padding: calc(0.0236 * var(--mq3-col)) calc(0.0096 * var(--mq3-col));
  }
}

.vis-mq3 .mq3-bg {
  position: absolute;
  left: 0;
  z-index: 0;
  width: 100%;
  pointer-events: none;
  -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.375) 4%, rgba(0, 0, 0, 0.65) 8%, rgba(0, 0, 0, 0.849) 12%, #000 16%, #000 80%, rgba(0, 0, 0, 0.939) 84%, rgba(0, 0, 0, 0.79) 88%, rgba(0, 0, 0, 0.598) 92%, rgba(0, 0, 0, 0.353) 96%, rgba(0, 0, 0, 0) 100%);
  mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.375) 4%, rgba(0, 0, 0, 0.65) 8%, rgba(0, 0, 0, 0.849) 12%, #000 16%, #000 80%, rgba(0, 0, 0, 0.939) 84%, rgba(0, 0, 0, 0.79) 88%, rgba(0, 0, 0, 0.598) 92%, rgba(0, 0, 0, 0.353) 96%, rgba(0, 0, 0, 0) 100%);
}

.vis-mq3 .mq3-bg--look03 {
  top: 10.337%;
}

.vis-mq3 .mq3-bg--look07 {
  top: 7.625%;
}

.vis-mq3 .mq3-daisy {
  position: absolute;
  width: 9.333%;
  aspect-ratio: 1 / 1;
  background: url("../images/icon-daisy.svg") center/contain no-repeat;
  z-index: 1;
}

.vis-mq3 .mq3-c {
  -webkit-mask-image: linear-gradient(135deg, #000 0%, #000 33%, rgba(0, 0, 0, 0) 66%, rgba(0, 0, 0, 0) 100%);
  mask-image: linear-gradient(135deg, #000 0%, #000 33%, rgba(0, 0, 0, 0) 66%, rgba(0, 0, 0, 0) 100%);
  -webkit-mask-size: 350% 350%;
  mask-size: 350% 350%;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: 100% 100%;
  mask-position: 100% 100%;
  translate: 0 20px;
  transition: -webkit-mask-position 1.4s linear, mask-position 1.4s linear, translate 1.5s ease;
  transition-delay: var(--mq3-delay, 0s);
}

.vis-mq3 .mq3-c.is-in {
  -webkit-mask-position: 0% 0%;
  mask-position: 0% 0%;
  translate: 0 0;
}

.vis-mq3 .mq3-c.is-revealed {
  -webkit-mask-image: none;
  mask-image: none;
}

.vis-mq3 .mq3-photo-b {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0;
  transition: opacity 0.8s ease;
  z-index: 2;
}

.vis-mq3 [data-mq3-d].is-swapped .mq3-photo-b {
  opacity: 1;
}

.vis-mq3 .mq3-daisy {
  opacity: 0;
  transform: translate(85.7%, -113.8%);
  transition: opacity 0.55s ease-out, transform 1.25s cubic-bezier(0.22, 0.68, 0.3, 1);
  transition-delay: var(--mq3-delay, 0s);
}

.vis-mq3 .mq3-daisy.is-in {
  opacity: 1;
  transform: translate(0, 0);
}

.vis-mq3 .mq3-look05__pan {
  position: relative;
  width: 100%;
  margin-top: -2.533%;
  height: calc(1.215064 * var(--mq3-col));
}

.vis-mq3 .mq3-look05__pan-sticky {
  position: relative;
  height: 100%;
}

.vis-mq3 .mq3-look05__pan-photo {
  position: absolute;
  left: 0;
  width: 192.52%;
  height: calc(100% + 1px);
  overflow: hidden;
  will-change: transform;
  transform: translate3d(calc(var(--mq3-pan, 0) * -48.057%), 0, 0);
}

.vis-mq3 .mq3-look05__pan-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

@media (prefers-reduced-motion: reduce) {
  .vis-mq3 .mq3-c,
.vis-mq3 .mq3-c.is-in,
.vis-mq3 .mq3-daisy,
.vis-mq3 .mq3-daisy.is-in {
    -webkit-mask-image: none;
    mask-image: none;
    clip-path: none;
    opacity: 1;
    translate: none;
    transform: none;
    transition: none;
    animation: none;
  }
  .vis-mq3 .mq3-look05__pan-photo {
    transform: none;
  }
}

.vis-mq3 .mq3-credit {
  position: absolute;
  left: 4.467%;
  width: 91.307%;
  z-index: 3;
  text-align: center;
  font-family: "noto-serif-jp", "Noto Serif JP", serif;
  font-weight: 500;
  font-size: 3.29867vw;
  color: #000;
}

@media (min-width: 768px) {
  .vis-mq3 .mq3-credit {
    font-size: calc(0.03299 * var(--mq3-col));
  }
}

.vis-mq3 .mq3-credit__label {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 75.117%;
  height: 4.58667vw;
  margin: 0 auto 1.02667vw;
  background: #000;
  color: #fff;
  font-size: 2.96933vw;
  line-height: 1;
  letter-spacing: 0.05em;
  text-indent: 0.05em;
}

@media (min-width: 768px) {
  .vis-mq3 .mq3-credit__label {
    height: calc(0.04587 * var(--mq3-col));
    margin-bottom: calc(0.01027 * var(--mq3-col));
    font-size: calc(0.02969 * var(--mq3-col));
  }
}

.vis-mq3 .mq3-credit__line {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 6.16vw;
  white-space: nowrap;
}

@media (min-width: 768px) {
  .vis-mq3 .mq3-credit__line {
    height: calc(0.0616 * var(--mq3-col));
  }
}

.vis-mq3 .mq3-credit__sen {
  height: 0;
  margin: 1.50667vw 0 1.18667vw;
  border: 0;
  border-top: 1px solid #000;
}

@media (min-width: 768px) {
  .vis-mq3 .mq3-credit__sen {
    margin: calc(0.01507 * var(--mq3-col)) 0 calc(0.01187 * var(--mq3-col));
  }
}

.vis-mq3 .mq3-credit__item {
  display: inline-flex;
  align-items: center;
}

.vis-mq3 .mq3-credit__price {
  margin-left: 2.36vw;
}

@media (min-width: 768px) {
  .vis-mq3 .mq3-credit__price {
    margin-left: calc(0.0236 * var(--mq3-col));
  }
}

.vis-mq3 .mq3-credit__sep {
  margin: 0 2.29333vw;
}

@media (min-width: 768px) {
  .vis-mq3 .mq3-credit__sep {
    margin: 0 calc(0.02293 * var(--mq3-col));
  }
}

.vis-mq3 .mq3-credit__icon {
  flex: 0 0 auto;
  width: 3.73333vw;
  height: 3.73333vw;
  margin-right: 0.93333vw;
  background: url("../images/icon-daisy.svg") center/contain no-repeat;
}

@media (min-width: 768px) {
  .vis-mq3 .mq3-credit__icon {
    width: calc(0.03733 * var(--mq3-col));
    height: calc(0.03733 * var(--mq3-col));
    margin-right: calc(0.00933 * var(--mq3-col));
  }
}

.vis-mq3 .mq3-credit__buy {
  margin-left: 0.96vw;
  color: inherit;
  text-decoration: none;
}

@media (min-width: 768px) {
  .vis-mq3 .mq3-credit__buy {
    margin-left: calc(0.0096 * var(--mq3-col));
  }
}

.vis-mq3 .mq3-credit__buy--disabled {
  opacity: 0.4;
  pointer-events: none;
}

.vis-mq3 .mq3-look01 {
  margin-top: -0.667%;
  padding-top: 430.4%;
}

.vis-mq3 .mq3-look01__p1 {
  left: 0;
  top: 0.014%;
  width: 100%;
  height: 34.656%;
}

.vis-mq3 .mq3-look01__p2back {
  left: 0;
  top: 34.67%;
  width: 100%;
  height: 22.138%;
}

.vis-mq3 .mq3-look01__p2a {
  left: 4.827%;
  top: 37.867%;
  width: 45.173%;
  height: 15.716%;
}

.vis-mq3 .mq3-look01__p2b {
  left: 50%;
  top: 37.867%;
  width: 45.173%;
  height: 15.716%;
}

.vis-mq3 .mq3-look01__p3 {
  left: 0;
  top: 56.808%;
  width: 100%;
  height: 34.656%;
}

.vis-mq3 .mq3-look01__credit {
  top: 92.224%;
}

.vis-mq3 .mq3-look02 {
  margin-top: 15.067%;
  padding-top: 287.067%;
}

.vis-mq3 .mq3-look02__p1 {
  left: 0;
  top: -0.039%;
  width: 88.893%;
  height: 46.238%;
}

.vis-mq3 .mq3-look02__p2 {
  left: 44.813%;
  top: 42.159%;
  width: 55.187%;
  height: 28.737%;
}

.vis-mq3 .mq3-look02__p3a {
  left: 17.267%;
  top: 73.208%;
  width: 31.4%;
  height: 16.363%;
}

.vis-mq3 .mq3-look02__p3b {
  left: 51.333%;
  top: 73.208%;
  width: 31.4%;
  height: 16.363%;
}

.vis-mq3 .mq3-look02__credit {
  top: 90.71%;
}

.vis-mq3 .mq3-look03 {
  margin-top: -30.667%;
  padding-top: 507.067%;
}

.vis-mq3 .mq3-look03__p1 {
  left: 16.547%;
  top: 8.958%;
  width: 83.453%;
  height: 24.604%;
}

.vis-mq3 .mq3-look03__p2 {
  left: 0;
  top: 34.348%;
  width: 47.347%;
  height: 13.884%;
}

.vis-mq3 .mq3-look03__p3 {
  left: 60.8%;
  top: 36.389%;
  width: 31.733%;
  height: 9.334%;
}

.vis-mq3 .mq3-look03__p4 {
  left: 32.613%;
  top: 49.019%;
  width: 49.76%;
  height: 14.696%;
}

.vis-mq3 .mq3-look03__p5 {
  left: 5.8%;
  top: 65.358%;
  width: 88.64%;
  height: 26.177%;
}

.vis-mq3 .mq3-look03__credit {
  top: 92.153%;
}

.vis-mq3 .mq3-look04 {
  margin-top: 0.4%;
  padding-top: 624.8%;
}

.vis-mq3 .mq3-look04__p1a {
  left: 0;
  top: 2.17%;
  width: 50%;
  height: 11.927%;
}

.vis-mq3 .mq3-look04__p1b {
  left: 50%;
  top: 2.17%;
  width: 50%;
  height: 11.927%;
}

.vis-mq3 .mq3-look04__p2 {
  left: 21.373%;
  top: 15.179%;
  width: 57.373%;
  height: 13.762%;
}

.vis-mq3 .mq3-look04__p3 {
  left: 0;
  top: 29.985%;
  width: 100%;
  height: 23.873%;
}

.vis-mq3 .mq3-look04__p4 {
  left: 0;
  top: 51.809%;
  width: 42.88%;
  height: 10.245%;
}

.vis-mq3 .mq3-look04__credit {
  top: 62.557%;
}

.vis-mq3 .mq3-look04__movie {
  position: absolute;
  left: 0;
  top: 71.176%;
  width: 100%;
  height: 28.453%;
  background: #c6c9cc;
}

.vis-mq3 .mq3-look04__movie-video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  max-width: none;
}

.vis-mq3 .mq3-look05 {
  margin-top: 0;
  padding-top: 245.8413%;
}

.vis-mq3 .mq3-look05__p2 {
  left: 0;
  top: 0%;
  width: 100%;
  height: 27.0642%;
}

.vis-mq3 .mq3-look05__p3back {
  left: 0;
  top: 27.0149%;
  width: 100%;
  height: 60.7716%;
}

.vis-mq3 .mq3-look05__p3a {
  left: 7.613%;
  top: 31.5378%;
  width: 84.893%;
  height: 51.7303%;
}

.vis-mq3 .mq3-look05__credit {
  top: 89.0162%;
}

.vis-mq3 .mq3-look06 {
  margin-top: 10.667%;
  padding-top: 369.067%;
}

.vis-mq3 .mq3-look06__p1 {
  left: 5.68%;
  top: 1.052%;
  width: 88.64%;
  height: 35.961%;
}

.vis-mq3 .mq3-look06__p1kiri {
  left: 22.585%;
  width: 57.85%;
  top: 17.179%;
  height: 3.829%;
  z-index: 2;
}

.vis-mq3 .mq3-look06__p1kiri img {
  object-fit: fill;
}

.vis-mq3 .mq3-look06__p2 {
  left: 13.893%;
  top: 38.812%;
  width: 72.453%;
  height: 19.635%;
}

.vis-mq3 .mq3-look06__p3 {
  left: 0;
  width: 75.12%;
  top: 60.181%;
  height: 30.336%;
}

.vis-mq3 .mq3-look06__p4 {
  left: 75%;
  top: 60.181%;
  width: 74.88%;
  height: 30.336%;
}

.vis-mq3 .mq3-look06__credit {
  top: 91.041%;
}

.vis-mq3 .mq3-look07 {
  margin-top: -10.8%;
  padding-top: 530.533%;
}

.vis-mq3 .mq3-look07__p1 {
  left: 16.547%;
  top: 3.634%;
  width: 83.453%;
  height: 23.516%;
}

.vis-mq3 .mq3-look07__p2 {
  left: 18%;
  top: 31.52%;
  width: 64%;
  height: 8.057%;
}

.vis-mq3 .mq3-look07__p3 {
  left: 5.8%;
  top: 44.725%;
  width: 88.64%;
  height: 25.016%;
}

.vis-mq3 .mq3-look07__p4 {
  left: 11.84%;
  top: 73.021%;
  width: 74.88%;
  height: 21.146%;
}

.vis-mq3 .mq3-look07__credit {
  top: 94.783%;
}

.vis-mq3 .mq3-look01__heading {
  left: 9.906%;
  top: 54.584%;
}

.vis-mq3 .mq3-look01__copy {
  left: 19.32%;
  top: 35.242%;
}

.vis-mq3 .mq3-look02__heading {
  left: -0.12%;
  top: 64.951%;
}

.vis-mq3 .mq3-look02__copy {
  left: 2.574%;
  top: 52.787%;
}

.vis-mq3 .mq3-look03__heading {
  right: 67.214%;
  top: 19.654%;
}

.vis-mq3 .mq3-look03__copy {
  right: 81.76%;
  top: 19.653%;
}

.vis-mq3 .mq3-look04__heading {
  left: 48%;
  top: 54.537%;
}

.vis-mq3 .mq3-look04__copy {
  left: 47.693%;
  top: 56.707%;
}

.vis-mq3 .mq3-look05__heading {
  left: -0.12%;
  top: 8.2345%;
}

.vis-mq3 .mq3-look07__heading {
  left: 7.853%;
  top: 29.693%;
}

.vis-mq3 .mq3-look07__copy {
  left: 36.48%;
  top: 39.892%;
}

.vis-mq3 .mq3-look03__daisy {
  transform: translate(-85.7%, -113.8%);
}

.vis-mq3 .mq3-look03__daisy:nth-of-type(1) {
  left: 11.84%;
  top: 64.168%;
}

.vis-mq3 .mq3-look03__daisy:nth-of-type(2) {
  left: 0.72%;
  top: 83.96%;
}

.vis-mq3 .mq3-look03__daisy:nth-of-type(3) {
  left: 89.373%;
  top: 90.533%;
}

.vis-mq3 .mq3-look03__daisy:nth-of-type(4) {
  left: 84.053%;
  top: 69.573%;
}

.vis-mq3 .mq3-look04__marquee {
  position: absolute;
  left: -3.013%;
  width: 106.04%;
  top: 21.404%;
  height: 1.411%;
  overflow: hidden;
  z-index: 0;
  pointer-events: none;
  -webkit-mask-image: linear-gradient(to right, #000 0, #000 22.94%, transparent 22.94%, transparent 77.16%, #000 77.16%, #000 100%);
  mask-image: linear-gradient(to right, #000 0, #000 22.94%, transparent 22.94%, transparent 77.16%, #000 77.16%, #000 100%);
}

.vis-mq3 .mq3-look04__marquee-track {
  display: flex;
  width: 260.639%;
  height: 100%;
  --mq3-cell-flower: 67.25%;
  animation: mq3-marquee 24s linear infinite;
}

.vis-mq3 .mq3-look06__marquee {
  position: absolute;
  left: -3.013%;
  width: 106.04%;
  top: 17.179%;
  height: 3.829%;
  overflow: hidden;
  z-index: 1;
  pointer-events: none;
}

.vis-mq3 .mq3-look06__marquee-track {
  display: flex;
  width: 260.639%;
  height: 100%;
  --mq3-cell-flower: 67.25%;
  animation: mq3-marquee 24s linear infinite;
}

.vis-mq3 .mq3-daisy-cell {
  position: relative;
  flex: 0 0 5%;
  height: 100%;
}

.vis-mq3 .mq3-daisy-cell i {
  position: absolute;
  left: 0;
  top: 0;
  width: var(--mq3-cell-flower, 62.909%);
  aspect-ratio: 77 / 73;
  background: url("../images/icon-daisy.svg") center/contain no-repeat;
}

.vis-mq3 .mq3-look06__marquee-track .mq3-daisy-cell:nth-child(even) i {
  top: auto;
  bottom: 0;
}

@keyframes mq3-marquee {
  from {
    transform: translate3d(0, 0, 0);
  }
  to {
    transform: translate3d(-50%, 0, 0);
  }
}

@media (prefers-reduced-motion: reduce) {
  .vis-mq3 .mq3-look04__marquee-track,
.vis-mq3 .mq3-look06__marquee-track {
    animation: none;
  }
}

.vis-mq3 .mq3-look07__daisy:nth-of-type(1) {
  left: 4.947%;
  top: 80.782%;
}

.vis-mq3 .mq3-look07__daisy:nth-of-type(2) {
  left: 53.013%;
  top: 70.653%;
}

.vis-mq3 .mq3-look07__daisy:nth-of-type(3) {
  left: 5.56%;
  top: 91.777%;
}

.vis-mq3 .mq3-look07__daisy:nth-of-type(4) {
  left: 83.573%;
  top: 87.109%;
}

.vis-mq3 .mq3-look07__daisy:nth-of-type(5) {
  left: 88.28%;
  top: 75.478%;
}

.vis-mq3 .mq3-items {
  position: relative;
  width: 100%;
  height: 700vh;
  margin-top: 12%;
  --mq3-items-card-h: min(var(--mq3-col) * 1.58937, 92svh);
  --mq3-items-dots-h: calc(var(--mq3-col) * 0.0453333);
  --mq3-items-slack: max(
      0px,
      calc((100svh - var(--mq3-items-card-h) - var(--mq3-items-dots-h)) / 2)
    );
  margin-bottom: calc(-1 * var(--mq3-items-slack));
}

.vis-mq3 .mq3-items__sticky {
  position: sticky;
  top: 0;
  height: 100vh;
  height: 100svh;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.vis-mq3 .mq3-items__track {
  display: flex;
  width: 100%;
  transform: translate3d(calc(var(--mq3-item-p, 0) * -300%), 0, 0);
  transition: transform 0.55s cubic-bezier(0.44, 0.02, 0.2, 1);
  will-change: transform;
}

.vis-mq3 .mq3-items__dots {
  display: flex;
  gap: 1.86667vw;
  margin-top: 3.2vw;
}

@media (min-width: 768px) {
  .vis-mq3 .mq3-items__dots {
    gap: calc(0.01867 * var(--mq3-col));
    margin-top: calc(0.032 * var(--mq3-col));
  }
}

.vis-mq3 .mq3-items__dots span {
  box-sizing: border-box;
  width: 1.33333vw;
  height: 1.33333vw;
  border-radius: 50%;
  border: 1px solid rgba(0, 0, 0, 0.55);
  transition: background-color 0.35s ease;
}

@media (min-width: 768px) {
  .vis-mq3 .mq3-items__dots span {
    width: calc(0.01333 * var(--mq3-col));
    height: calc(0.01333 * var(--mq3-col));
  }
}

.vis-mq3 .mq3-items__dots span.is-active {
  background: #000;
}

.vis-mq3 .mq3-item {
  flex: 0 0 100%;
  max-width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}

.vis-mq3 .mq3-item__card {
  position: relative;
  width: 100%;
  aspect-ratio: 828 / 1316;
  max-height: 92svh;
  container-type: inline-size;
}

.vis-mq3 .mq3-item__img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
}

.vis-mq3 .mq3-item__txt {
  position: absolute;
  inset: 0;
  z-index: 2;
  text-align: center;
  color: #fff;
}

.vis-mq3 .mq3-item__txt h3 {
  position: absolute;
  left: 0;
  top: 74.79%;
  width: 100%;
  margin: 0;
  font-family: "Arapey", serif;
  font-weight: 400;
  font-size: 5.7169cqw;
  line-height: 1.2886;
  letter-spacing: 0.025em;
  text-indent: 0.025em;
}

.vis-mq3 .mq3-item__rule {
  position: absolute;
  left: 10.987%;
  top: 85.621%;
  width: 84.547%;
  height: 1px;
  margin: 0;
  background: rgba(255, 255, 255, 0.6);
}

.vis-mq3 .mq3-item__buyrow {
  position: absolute;
  left: 0;
  top: 87.776%;
  width: 100%;
  margin: 0;
  display: flex;
  align-items: baseline;
  justify-content: center;
}

.vis-mq3 .mq3-item__price {
  font-family: "noto-serif-jp", "Noto Serif JP", serif;
  font-weight: 500;
  font-size: 4.6633cqw;
  line-height: 1;
  letter-spacing: 0;
  margin-right: 3.228cqw;
}

.vis-mq3 .mq3-item__buy {
  position: relative;
  top: -0.2667cqw;
  font-family: "noto-serif-jp", "Noto Serif JP", serif;
  font-weight: 500;
  font-size: 3.4676cqw;
  line-height: 1;
  letter-spacing: 0;
  color: #fff;
  text-decoration: none;
}

.vis-mq3 .mq3-item-nav {
  position: relative;
  z-index: 1;
  margin-top: 2.133%;
}

.vis-mq3 .mq3-item-nav__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  width: 71.853%;
  aspect-ratio: 538.9 / 52.05;
  margin: 0 auto;
  background: #fff;
  border: 1px solid #000;
  border-radius: 999px;
  color: #000;
  text-decoration: none;
  font-family: "Arapey", serif;
  font-size: 4.89333vw;
  letter-spacing: 0.05em;
  line-height: 1;
  white-space: nowrap;
}

@media (min-width: 768px) {
  .vis-mq3 .mq3-item-nav__btn {
    font-size: calc(0.04893 * var(--mq3-col));
  }
}

.vis-mq3 .mq3-item-nav__btn + .mq3-item-nav__btn {
  margin-top: 4.107%;
}

.vis-mq3 .mq3-item-nav__daisy {
  flex: 0 0 auto;
  width: 6.216%;
  height: auto;
}

.vis-mq3 .mq3-item-nav__btn--daisy span {
  margin: 0 1.856%;
}

.vis-mq3__footer-photo {
  position: relative;
  width: 100%;
  margin-top: -21.013%;
  padding-top: 211.72%;
  overflow: hidden;
}

.vis-mq3__footer-photo > .vis-mq3__footer-img {
  position: absolute;
  top: 0;
  left: -7%;
  width: 115.213%;
  height: auto;
  max-width: none;
  -webkit-mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0) 14.5%, black 35.5%);
  mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0) 14.5%, black 35.5%);
}

.vis-mq3__footer {
  position: absolute;
  inset: 0;
  text-align: center;
  font-family: "Arapey", serif;
  color: #fff;
}

.vis-mq3__footer .mq3-footer__credit {
  position: absolute;
  top: 22.023%;
  left: 0;
  width: 100%;
  font-family: "noto-serif-jp", "Noto Serif JP", serif;
  font-weight: 600;
  font-size: 2.976vw;
  line-height: 1.849;
  letter-spacing: 0.025em;
}

@media (min-width: 768px) {
  .vis-mq3__footer .mq3-footer__credit {
    font-size: calc(0.02976 * var(--mq3-col));
  }
}

.vis-mq3__footer .mq3-footer__brand {
  position: absolute;
  top: 94.351%;
  left: 2.653%;
  text-align: left;
}

.vis-mq3__footer .mq3-footer__logo {
  display: block;
  width: 15.34667vw;
  height: auto;
}

@media (min-width: 768px) {
  .vis-mq3__footer .mq3-footer__logo {
    width: calc(0.15347 * var(--mq3-col));
  }
}

.vis-mq3__footer .mq3-footer__copyright {
  margin-top: 1.86667vw;
  font-family: "noto-serif-jp", "Noto Serif JP", serif;
  font-weight: 500;
  font-size: 2.2vw;
  line-height: 1;
  letter-spacing: 0.025em;
  white-space: nowrap;
}

@media (min-width: 768px) {
  .vis-mq3__footer .mq3-footer__copyright {
    margin-top: calc(0.01867 * var(--mq3-col));
    font-size: calc(0.022 * var(--mq3-col));
  }
}

.vis-mq3 .mq3-linenav {
  display: none;
}

@media (min-width: 768px) {
  .vis-mq3 .mq3-linenav {
    display: block;
    position: fixed;
    top: 50%;
    left: calc(var(--mq3-col-left) + var(--mq3-col) + 0.0976 * var(--mq3-side));
    width: calc(0.8027 * var(--mq3-side));
    aspect-ratio: 1135 / 897;
    transform: translateY(-50%);
    z-index: 20;
    pointer-events: none;
  }
}

.vis-mq3 .mq3-linenav__label {
  position: absolute;
  left: 50.352%;
  top: -1.1348%;
  transform: translateX(-50%);
  white-space: nowrap;
  line-height: 1;
  font-family: "Arapey", serif;
  font-size: calc(0.0402 * var(--mq3-side));
  letter-spacing: 0;
  color: #000;
}

.vis-mq3 .mq3-linenav__item {
  position: absolute;
  overflow: hidden;
  pointer-events: auto;
  clip-path: inset(0 100% 0 0);
  will-change: clip-path;
}

.vis-mq3 .mq3-linenav__item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.vis-mq3 .mq3-linenav__item.is-shown {
  clip-path: inset(0);
  transition: clip-path 1s ease;
}

.vis-mq3 .mq3-linenav__item::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 1;
  background-color: rgba(0, 0, 0, 0.465);
  transition: background-color 0.45s cubic-bezier(0.22, 0.61, 0.36, 1);
  pointer-events: none;
}

.vis-mq3 .mq3-linenav__item.is-lit::before, .vis-mq3 .mq3-linenav__item:hover::before {
  background-color: rgba(0, 0, 0, 0);
}

.vis-mq3 .mq3-linenav__item:nth-of-type(1) {
  left: 0;
  top: 12.263%;
  width: 22.026%;
  height: 41.36%;
}

.vis-mq3 .mq3-linenav__item:nth-of-type(2) {
  left: 25.991%;
  top: 12.263%;
  width: 22.026%;
  height: 41.36%;
}

.vis-mq3 .mq3-linenav__item:nth-of-type(3) {
  left: 51.982%;
  top: 12.263%;
  width: 22.026%;
  height: 41.36%;
}

.vis-mq3 .mq3-linenav__item:nth-of-type(4) {
  left: 77.974%;
  top: 12.263%;
  width: 22.026%;
  height: 41.36%;
}

.vis-mq3 .mq3-linenav__item:nth-of-type(5) {
  left: 12.775%;
  top: 58.64%;
  width: 22.026%;
  height: 41.36%;
}

.vis-mq3 .mq3-linenav__item:nth-of-type(6) {
  left: 38.767%;
  top: 58.64%;
  width: 22.026%;
  height: 41.36%;
}

.vis-mq3 .mq3-linenav__item:nth-of-type(7) {
  left: 64.758%;
  top: 58.64%;
  width: 22.026%;
  height: 41.36%;
}

.vis-mq3 .mq3-linenav__item:nth-of-type(1).is-shown {
  transition-delay: 0s;
}

.vis-mq3 .mq3-linenav__item:nth-of-type(2).is-shown {
  transition-delay: 0.2s;
}

.vis-mq3 .mq3-linenav__item:nth-of-type(3).is-shown {
  transition-delay: 0.4s;
}

.vis-mq3 .mq3-linenav__item:nth-of-type(4).is-shown {
  transition-delay: 0.6s;
}

.vis-mq3 .mq3-linenav__item:nth-of-type(5).is-shown {
  transition-delay: 0.8s;
}

.vis-mq3 .mq3-linenav__item:nth-of-type(6).is-shown {
  transition-delay: 1s;
}

.vis-mq3 .mq3-linenav__item:nth-of-type(7).is-shown {
  transition-delay: 1.2s;
}

@media (prefers-reduced-motion: reduce) {
  .vis-mq3 .mq3-linenav .mq3-linenav__item,
.vis-mq3 .mq3-linenav .mq3-linenav__item.is-shown {
    clip-path: inset(0);
    transition: none;
    transition-delay: 0s;
  }
}
