@charset "UTF-8";
/* TOPページ
------------------------------------------------------ */
@import url("https://fonts.googleapis.com/css2?family=Shippori+Mincho&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,300..800;1,300..800&display=swap");
.pre-inc .top {
  color: #fff;
}
.pre-inc .top::before {
  position: fixed;
  z-index: -1;
  inset: 0;
  content: "";
  background: url(../images/top/bg.webp) center/cover;
}
.pre-inc .top-inner {
  max-width: min(73.4375vw, 940px);
  margin-inline: auto;
}
@media (max-width: 767px) {
  .pre-inc .top-inner {
    max-width: 85.7142857143vw;
  }
}
.pre-inc .top-caption {
  display: block;
  margin: 1em 0;
  font-size: min(0.78125vw, 10px);
  text-align: right;
}
@media (max-width: 767px) {
  .pre-inc .top-caption {
    font-size: 2.8571428571vw;
  }
}
.pre-inc .top-mv {
  position: relative;
  height: 100vh;
}
.pre-inc .top-mv__scene {
  overflow: hidden;
  position: absolute;
  inset: 0;
}
.pre-inc .top-mv__scene.--1 {
  z-index: 4;
}
.pre-inc .top-mv__scene.--1 .top-mv__copy {
  width: 57.578125vw;
}
@media (max-width: 767px) {
  .pre-inc .top-mv__scene.--1 .top-mv__copy {
    width: 71.4285714286vw;
  }
}
.pre-inc .top-mv__scene.--2 {
  z-index: 3;
}
.pre-inc .top-mv__scene.--2 .top-mv__copy {
  width: 41.71875vw;
}
@media (max-width: 767px) {
  .pre-inc .top-mv__scene.--2 .top-mv__copy {
    width: 96.1428571429vw;
  }
}
.pre-inc .top-mv__scene.--3 {
  z-index: 2;
}
.pre-inc .top-mv__scene.--3 .top-mv__copy {
  width: 40.859375vw;
}
@media (max-width: 767px) {
  .pre-inc .top-mv__scene.--3 .top-mv__copy {
    width: 94.1428571429vw;
  }
}
.pre-inc .top-mv__scene.--4 {
  z-index: 1;
}
.pre-inc .top-mv__scene.--4 .top-mv__copy {
  width: min(41.09375vw, 526px);
  scale: 1.1;
  opacity: 0;
  filter: blur(10px);
  transition: scale 1s ease-out, opacity 1s ease-out, filter 1s ease-out;
}
@media (max-width: 767px) {
  .pre-inc .top-mv__scene.--4 .top-mv__copy {
    width: 60vw;
  }
}
.pre-inc .top-mv__scene.--4.is-active .top-mv__copy {
  scale: 1;
  opacity: 1;
  filter: blur(0);
}
.pre-inc .top-mv__scene.--4 .top-mv__bg::after {
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  translate: 0 -50%;
  content: "";
  height: min(12.734375vw, 163px);
  background: linear-gradient(transparent 0%, #000 50%, transparent 100%);
}
@media (max-width: 767px) {
  .pre-inc .top-mv__scene.--4 .top-mv__bg::after {
    display: none;
  }
}
.pre-inc .top-mv__bg {
  position: absolute;
  z-index: -1;
  inset: 0;
}
.pre-inc .top-mv__bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.pre-inc .top-mv__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(2, 50%);
}
@media (max-width: 767px) {
  .pre-inc .top-mv__grid {
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(3, 33.3333333333%);
  }
}
.pre-inc .top-mv__grid .top-caption {
  font-size: 1em;
}
.pre-inc .top-mv__grid-item {
  position: relative;
}
.pre-inc .top-mv__grid-item:nth-of-type(1) .top-caption, .pre-inc .top-mv__grid-item:nth-of-type(2) .top-caption, .pre-inc .top-mv__grid-item:nth-of-type(3) .top-caption {
  top: 0;
  bottom: initial;
}
.pre-inc .top-mv__grid-item .top-caption {
  text-shadow: 0 0 1px #000, 0 0 3px #000, 0 0 6px rgba(0, 0, 0, 0.6);
}
@media (max-width: 767px) {
  .pre-inc .top-mv__grid-item .top-caption {
    top: initial !important;
    bottom: 0 !important;
  }
}
.pre-inc .top-mv__grid-caption {
  transform: translateY(150%);
  line-height: 1.5;
}
@media (max-width: 767px) {
  .pre-inc .top-mv__grid-caption {
    transform: translateY(125%);
  }
}
.pre-inc .top-mv__copy {
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
}
.pre-inc .top-mv__copy img {
  max-width: none;
  width: 100%;
}
.pre-inc .top-mv .top-caption {
  position: absolute;
  bottom: 0;
  right: 1em;
}
.pre-inc .top-mv .top-caption.--left {
  right: initial;
  left: 1em;
}
@media (max-width: 767px) {
  .pre-inc .top-mv .top-caption.--left {
    right: 1em;
    bottom: initial;
    left: initial;
    top: 0;
    line-height: 1.5;
  }
}
.pre-inc .top-entry {
  max-width: min(80.46875vw, 1030px);
  margin-inline: auto;
  text-align: center;
}
@media (max-width: 767px) {
  .pre-inc .top-entry {
    max-width: 85.7142857143vw;
    margin-top: -5vh;
  }
}
.pre-inc .top-entry__title {
  width: min(74.765625vw, 957px);
  margin: 0 auto;
}
@media (max-width: 767px) {
  .pre-inc .top-entry__title {
    width: auto;
  }
}
.pre-inc .top-entry__text {
  margin-top: 1em;
  border-top: 1px solid rgba(255, 255, 255, 0.6);
  padding-top: 1em;
  font-size: min(3.125vw, 40px);
  font-feature-settings: "palt";
  letter-spacing: 0.1em;
}
@media (max-width: 767px) {
  .pre-inc .top-entry__text {
    font-size: 5.7142857143vw;
  }
}
.pre-inc .top-entry__button {
  margin-top: min(2.34375vw, 30px);
  display: flex;
  justify-content: center;
}
@media (max-width: 767px) {
  .pre-inc .top-entry__button {
    margin-top: 7.1428571429vw;
  }
}
.pre-inc .top-intro {
  position: relative;
  margin: min(11.71875vw, 150px) 0 min(8.59375vw, 110px);
}
@media (max-width: 767px) {
  .pre-inc .top-intro {
    margin: 21.4285714286vw 0 15.7142857143vw;
  }
}
.pre-inc .top-intro__title {
  width: fit-content;
  margin: 0 auto 0.5em;
  font-size: min(4.375vw, 56px);
  letter-spacing: 0.1em;
  text-align: center;
  color: rgba(255, 255, 255, 0.3);
}
.pre-inc .top-intro__copy {
  width: min(99.765625vw, 1277px);
  margin: 0 auto;
}
@media (max-width: 767px) {
  .pre-inc .top-intro__copy {
    position: absolute;
    top: 0;
    left: 14.2857142857vw;
    rotate: 90deg;
    transform-origin: left top;
    width: 157.1428571429vw;
  }
}
.pre-inc .top-intro__body {
  max-width: min(100vw, 1280px);
  margin-inline: auto;
  display: flex;
  align-items: center;
  gap: min(9.375vw, 120px);
}
@media (max-width: 767px) {
  .pre-inc .top-intro__body {
    max-width: 85.7142857143vw;
    flex-direction: column;
    align-items: stretch;
    gap: 8.5714285714vw;
  }
}
.pre-inc .top-intro__img {
  position: relative;
  width: min(45.3125vw, 580px);
}
@media (max-width: 767px) {
  .pre-inc .top-intro__img {
    width: 71.4285714286vw;
    margin-left: auto;
  }
}
.pre-inc .top-intro__img .top-caption {
  position: absolute;
  bottom: 0;
  right: 1em;
}
.pre-inc .top-intro__content {
  display: flex;
  flex-direction: column;
  gap: min(4.6875vw, 60px);
}
@media (max-width: 767px) {
  .pre-inc .top-intro__content {
    max-width: 71.4285714286vw;
    margin-left: auto;
    gap: 5.7142857143vw;
  }
}
.pre-inc .top-intro__text {
  font-size: min(1.25vw, 16px);
  font-feature-settings: "palt";
  letter-spacing: 0.06em;
  line-height: 4.5;
}
@media (max-width: 767px) {
  .pre-inc .top-intro__text {
    font-size: 3.7142857143vw;
    line-height: 2.5;
  }
}
.pre-inc .top-intro__msg {
  font-size: min(1.796875vw, 23px);
  font-feature-settings: "palt";
  letter-spacing: 0.06em;
  line-height: 2;
}
@media (max-width: 767px) {
  .pre-inc .top-intro__msg {
    font-size: 4.2857142857vw;
  }
}
.pre-inc .top-feature {
  padding: min(2.734375vw, 35px) 0;
  background: #221815;
}
@media (max-width: 767px) {
  .pre-inc .top-feature {
    padding: 5vw 0;
  }
}
.pre-inc .top-feature__list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: min(3.90625vw, 50px) min(3.125vw, 40px);
}
@media (max-width: 767px) {
  .pre-inc .top-feature__list {
    grid-template-columns: auto;
    gap: 5.7142857143vw;
  }
}
.pre-inc .top-feature__item {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: min(5.859375vw, 75px);
  font-size: min(2.265625vw, 29px);
}
@media (max-width: 767px) {
  .pre-inc .top-feature__item {
    font-size: 5vw;
    min-height: 14.2857142857vw;
  }
}
.pre-inc .top-feature__item p {
  font-feature-settings: "palt";
  line-height: 1.5;
  text-align: center;
}
.pre-inc .top-feature__item span {
  font-size: min(1.953125vw, 25px);
}
@media (max-width: 767px) {
  .pre-inc .top-feature__item span {
    font-size: 4.2857142857vw;
  }
}
.pre-inc .top-feature__item em {
  margin: 0 0.05em;
  font-style: normal;
  font-size: 1.5em;
}
.pre-inc .top-feature__item small {
  font-size: 0.75em;
}
.pre-inc .top-feature__item:nth-of-type(1), .pre-inc .top-feature__item:nth-of-type(2) {
  position: relative;
}
.pre-inc .top-feature__item:nth-of-type(1)::after, .pre-inc .top-feature__item:nth-of-type(2)::after {
  position: absolute;
  bottom: max(-1.953125vw, -25px);
  left: 0;
  right: 0;
  content: "";
  width: 100%;
  height: 1px;
  background: rgba(255, 255, 255, 0.6);
}
@media (max-width: 767px) {
  .pre-inc .top-feature__item:nth-of-type(1)::after, .pre-inc .top-feature__item:nth-of-type(2)::after {
    bottom: -2.8571428571vw;
  }
}
@media (max-width: 767px) {
  .pre-inc .top-feature__item:nth-of-type(3) {
    position: relative;
  }
  .pre-inc .top-feature__item:nth-of-type(3)::after {
    position: absolute;
    bottom: -2.8571428571vw;
    left: 0;
    right: 0;
    content: "";
    width: 100%;
    height: 1px;
    background: rgba(255, 255, 255, 0.6);
  }
}
.pre-inc .top-feature__item:nth-of-type(2), .pre-inc .top-feature__item:nth-of-type(4) {
  position: relative;
}
.pre-inc .top-feature__item:nth-of-type(2)::before, .pre-inc .top-feature__item:nth-of-type(4)::before {
  position: absolute;
  top: 0;
  bottom: 0;
  left: max(-1.5625vw, -20px);
  content: "";
  width: 1px;
  height: 100%;
  background: rgba(255, 255, 255, 0.6);
}
@media (max-width: 767px) {
  .pre-inc .top-feature__item:nth-of-type(2)::before, .pre-inc .top-feature__item:nth-of-type(4)::before {
    display: none;
  }
}
.pre-inc .top-link {
  position: relative;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2px;
  margin-top: 2px;
}
@media (max-width: 767px) {
  .pre-inc .top-link {
    grid-template-columns: auto;
  }
}
.pre-inc .top-link_card {
  position: relative;
  display: block;
}
.pre-inc .top-link_card::before {
  position: absolute;
  inset: 0;
  content: "";
  background: rgba(0, 0, 0, 0.6);
}
.pre-inc .top-link_card[aria-disabled=true] {
  pointer-events: none;
}
.pre-inc .top-link__title {
  position: absolute;
  top: min(2.34375vw, 30px);
  left: min(3.125vw, 40px);
  font-size: min(7.8125vw, 100px);
  font-feature-settings: "palt";
  letter-spacing: 0.1em;
  line-height: 1;
  writing-mode: vertical-lr;
}
@media (max-width: 767px) {
  .pre-inc .top-link__title {
    font-size: 7.1428571429vw;
    writing-mode: initial;
  }
}
.pre-inc .top-link__text {
  position: absolute;
  top: 55%;
  left: 50%;
  translate: -50% -50%;
  font-size: min(5.46875vw, 70px);
  width: max-content;
  writing-mode: vertical-lr;
  white-space: nowrap;
  background: linear-gradient(#816D5B 0%, #EBECE1 50%, #816D5B 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  line-height: 2;
}
@media (max-width: 767px) {
  .pre-inc .top-link__text {
    left: initial;
    right: 2.8571428571vw;
    translate: 0 -50%;
    font-size: 7.1428571429vw;
    writing-mode: initial;
  }
}
.pre-inc .top-link__img {
  height: auto;
  height: 100vh;
}
@media (max-width: 767px) {
  .pre-inc .top-link__img {
    height: 35.7142857143vw;
  }
}
.pre-inc .top-link__img img {
  max-width: none;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.pre-inc .top-link .top-caption {
  position: absolute;
  bottom: 1em;
  left: 1em;
  margin: 0;
  text-align: left;
}
@media (max-width: 767px) {
  .pre-inc .top-link .top-caption {
    font-size: 2vw;
  }
}
.pre-inc .top-note {
  padding: min(3.90625vw, 50px) 0;
}
@media (max-width: 767px) {
  .pre-inc .top-note {
    padding: 14.2857142857vw 0;
  }
}
.pre-inc .top-note p {
  font-size: min(0.78125vw, 10px);
  line-height: 1.5;
  text-align: justify;
  text-indent: -1em;
  margin-left: 1em;
}
@media (max-width: 767px) {
  .pre-inc .top-note p {
    font-size: 2.8571428571vw;
  }
}
.pre-inc .top-note p + p {
  margin-top: 0.25em;
}
.pre-inc .top {
  opacity: 0;
}
.pre-inc .top.is-load {
  opacity: 1;
  transition: opacity 1s;
}
.pre-inc .top-splash {
  position: fixed;
  inset: 0;
  background: #0F1934;
  z-index: 9999;
  opacity: 1;
  visibility: visible;
}
.pre-inc .top-splash.is-hidden {
  transition: opacity 1.5s, visibility 1.5s;
  opacity: 0;
  visibility: hidden;
}/*# sourceMappingURL=top.css.map */