@charset "UTF-8";
html {
  font-size: 0.4762142857vw;
}

@media screen and (min-width: 1400px) {
  html {
    font-size: 6.667px;
  }
}
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  vertical-align: baseline;
  box-sizing: border-box;
}

h1, h2, h3, h4, h5, h6, p, a {
  font-size: 100%;
  line-height: 1;
  transform: rotate(0.03deg);
  -moz-transform: rotate(0.03deg);
  -ms-transform: rotate(0.03deg);
  -o-transform: rotate(0.03deg);
  -webkit-transform: rotate(0.03deg);
}

.feature {
  box-sizing: border-box;
  width: 100%;
  margin: 0 auto;
  overflow: clip;
  position: relative;
  font-feature-settings: "palt" 1;
  font-family: "Yu Gothic", "游ゴシック", "YuGothic", "游ゴシック体", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN", sans-serif;
  font-weight: 400;
  font-style: normal;
  color: #565656;
}

.feature a {
  transition: 0.3s;
  display: block;
  color: #565656;
  text-decoration: none;
}
.feature a:hover {
  opacity: 0.7;
  text-decoration: none;
}

.feature img, svg, video {
  width: 100%;
  height: auto;
  display: block;
  vertical-align: bottom;
}

.l-container {
  width: 100%;
  overflow: clip;
}

* {
  box-sizing: border-box;
}

.js-fade {
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.8s ease, transform 0.8s ease;
}

.js-fade.is-show {
  visibility: visible;
  opacity: 1;
  transform: none;
  pointer-events: inherit;
}

section {
  scroll-margin-top: 100px;
}

.header {
  height: 80px;
  background: #000;
}

.footer {
  height: 300px;
  background: #000;
}

.feature {
  display: flex;
  justify-content: center;
}

.pc-left {
  width: 53.5714285714%;
  position: sticky;
  top: 80px;
  height: calc(100vh - 80px);
}
.pc-left .main-all {
  width: 32%;
  margin-top: 4.6rem;
  margin-left: 38.3rem;
}

.pc-right {
  width: 46.4285714286%;
}

.feature__inner {
  width: 75rem;
  margin: 0 auto;
  position: relative;
  padding-bottom: 20rem;
  margin-top: 8.5rem;
  overflow: clip;
}

.main-lead {
  text-align: center;
}
.main-lead .main-lead-m {
  font-family: "biz-udpmincho", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 2.8rem;
  line-height: 1.8571428571;
  letter-spacing: 0.025em;
}
.main-lead .main-lead-s {
  font-family: "biz-udpmincho", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 2.6rem;
  line-height: 1.9230769231;
  letter-spacing: 0.025em;
  margin-top: 2.3rem;
}
.main-lead .scroll-icon {
  width: 0.2rem;
  margin: 0 auto;
  margin-top: 7rem;
  animation: liner 2.5s cubic-bezier(1, 0, 0, 1) infinite;
}
@keyframes liner {
  0% {
    transform: scale(1, 0);
    transform-origin: 0 0;
  }
  30% {
    transform: scale(1, 1);
    transform-origin: 0 0;
  }
  70% {
    transform: scale(1, 1);
    transform-origin: 0 100%;
  }
  100% {
    transform: scale(1, 0);
    transform-origin: 0 100%;
  }
}

.main-contents {
  position: relative;
  margin-top: 8.2rem;
}
.main-contents .item-block {
  position: relative;
}
.main-contents .item-block .item-color {
  font-family: "georgia", sans-serif;
  font-weight: 400;
  font-style: italic;
  font-size: 6rem;
  line-height: 1.1166666667;
  letter-spacing: -0.025em;
  position: relative;
}
.main-contents .item-block .item-color::after {
  content: "";
  display: block;
  height: 0.4rem;
  width: 100%;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
}
.main-contents .item-block .credit li a {
  font-family: "georgia", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 2.8rem;
  line-height: 2.3928571429;
  letter-spacing: -0.025em;
}
.main-contents .item-block .color-block {
  position: relative;
}
.main-contents .item-block .color-block .color-txt {
  font-family: "biz-udpmincho", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 2.4rem;
  line-height: 2;
  letter-spacing: 0.025em;
}

.item-block.item-block01 .item-name {
  font-family: "georgia", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 10rem;
  line-height: 0.95;
  letter-spacing: -0.025em;
  color: #d9c4b3;
  text-align: center;
}
.item-block.item-block01 .item-name span {
  font-family: "georgia", sans-serif;
  font-weight: 400;
  font-style: italic;
}
.item-block.item-block01 .color-block01 {
  display: flex;
  margin-top: 2.4rem;
}
.item-block.item-block01 .color-block01.is-show .ph {
  visibility: visible;
  opacity: 1;
}
.item-block.item-block01 .color-block01 .ph {
  width: 37.5rem;
  visibility: hidden;
  opacity: 0;
  transition: opacity 0.8s ease;
}
.item-block.item-block01 .color-block01 .ph.ph02 {
  transition-delay: 0.5s;
}
.item-block.item-block01 .color-block01 .item-color {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  margin-bottom: -7.6rem;
}
.item-block.item-block01 .color-block01 .item-color::after {
  background: #C8C8C8;
  width: 30rem;
}
.item-block.item-block01 .color-block01 .credit {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  margin-bottom: -13.7rem;
}
.item-block.item-block01 .color-block02 {
  display: flex;
  flex-direction: column;
  margin-top: 25.6rem;
}
.item-block.item-block01 .color-block02 .ph03 {
  width: 50rem;
}
.item-block.item-block01 .color-block02 .ph04 {
  width: 40rem;
  margin-left: auto;
  margin-top: -12rem;
}
.item-block.item-block01 .color-block02 .item-color {
  position: absolute;
  top: 0;
  right: 0;
  margin-top: 28rem;
  margin-right: -6rem;
  font-family: "georgia", sans-serif;
  font-weight: 400;
  font-style: italic;
  transform: rotate(90deg);
}
.item-block.item-block01 .color-block02 .item-color::after {
  background: #ad9f9c;
  width: 39rem;
}
.item-block.item-block01 .color-block02 .credit {
  position: absolute;
  top: 0;
  left: 0;
  margin-top: 74.3rem;
  margin-left: 2.5rem;
}
.item-block.item-block01 .color-block03 {
  display: flex;
  flex-direction: column;
  margin-top: 17.4rem;
}
.item-block.item-block01 .color-block03.is-show .ph {
  opacity: 1;
  visibility: visible;
}
.item-block.item-block01 .color-block03 .ph-bg {
  width: 93.38rem;
  position: absolute;
  top: 0;
  left: 0;
  margin-top: -2rem;
  margin-left: -16rem;
}
.item-block.item-block01 .color-block03 .ph05 {
  width: 40rem;
  margin-left: auto;
  z-index: 2;
  visibility: hidden;
  opacity: 0;
  transition: opacity 0.8s ease 0.8s;
  background: #fff;
}
.item-block.item-block01 .color-block03 .ph06 {
  width: 66rem;
  margin-top: -20.3rem;
  margin-left: -5rem;
  visibility: hidden;
  opacity: 0;
  transition: opacity 0.8s ease;
  z-index: 1;
  background: #fff;
}
.item-block.item-block01 .color-block03 .item-color {
  position: absolute;
  top: 0;
  left: 0;
  margin-top: 12rem;
  margin-left: 8.8rem;
  font-family: "georgia", sans-serif;
  font-weight: 400;
  font-style: italic;
  color: #fff9f3;
}
.item-block.item-block01 .color-block03 .item-color::after {
  background: #fff9f3;
  width: 18rem;
}
.item-block.item-block01 .color-block03 .credit {
  position: absolute;
  top: 0;
  left: 0;
  margin-top: 82rem;
  margin-left: 2.3rem;
}
.item-block.item-block01 .color-block03 .color-txt-box {
  position: relative;
  width: 63.2rem;
  margin-top: 8.5rem;
  margin-left: 6rem;
}
.item-block.item-block01 .color-block03 .color-txt-box .color-txt {
  position: absolute;
  top: 0;
  left: 0;
  margin-top: 5.7rem;
  margin-left: 2.7rem;
  white-space: nowrap;
}
.item-block.item-block02 {
  margin-top: 15.2rem;
}
.item-block.item-block02 .item-name {
  font-family: "georgia", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 9rem;
  line-height: 1.0222222222;
  letter-spacing: -0.025em;
  color: #d9c4b3;
  text-align: center;
}
.item-block.item-block02 .item-name span {
  font-family: "georgia", sans-serif;
  font-weight: 400;
  font-style: italic;
}
.item-block.item-block02 .color-block01 {
  margin-top: 2.8rem;
}
.item-block.item-block02 .color-block01 .ph-slider {
  width: 75rem;
}
.item-block.item-block02 .color-block01 .item-color {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  margin-bottom: -7.1rem;
}
.item-block.item-block02 .color-block01 .item-color::after {
  background: #f4e6c9;
  width: 20rem;
}
.item-block.item-block02 .color-block01 .credit {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  margin-bottom: -14rem;
}
.item-block.item-block02 .color-block02 {
  display: flex;
  flex-direction: column;
  margin-top: 28.5rem;
}
.item-block.item-block02 .color-block02.is-show .ph-bg, .item-block.item-block02 .color-block02.is-show .ph {
  visibility: visible;
  opacity: 1;
  transform: none;
}
.item-block.item-block02 .color-block02 .ph-bg {
  width: 31.5rem;
  position: absolute;
  top: 0;
  right: 0;
  margin-top: 2rem;
  visibility: hidden;
  opacity: 0;
  transform: translateY(2.5rem);
  transition: opacity 0.8s ease 1.6s, transform 0.8s ease 1.6s;
}
.item-block.item-block02 .color-block02 .ph02 {
  width: 50rem;
  visibility: hidden;
  opacity: 0;
  transform: translateY(2.5rem);
  transition: opacity 0.8s ease, transform 0.8s ease;
  z-index: 1;
  background: #fff;
}
.item-block.item-block02 .color-block02 .ph03 {
  width: 32rem;
  margin-left: auto;
  margin-top: -26rem;
  visibility: hidden;
  opacity: 0;
  transform: translateY(2.5rem);
  transition: opacity 0.8s ease 0.8s, transform 0.8s ease 0.8s;
  z-index: 2;
  background: #fff;
}
.item-block.item-block02 .color-block02 .item-color {
  position: absolute;
  top: 0;
  left: 0;
  margin-top: 68.8rem;
  margin-left: 13.2rem;
  font-family: "georgia", sans-serif;
  font-weight: 400;
  font-style: italic;
}
.item-block.item-block02 .color-block02 .item-color::after {
  background: #bc8d62;
  width: 20rem;
}
.item-block.item-block02 .color-block02 .credit {
  position: absolute;
  top: 0;
  left: 0;
  margin-top: 75.4rem;
  margin-left: 13.7rem;
}
.item-block.item-block02 .color-block02 .color-txt-box {
  position: relative;
  width: 63.2rem;
  margin-top: 3.6rem;
  margin-left: 5.8rem;
}
.item-block.item-block02 .color-block02 .color-txt-box .color-txt {
  position: absolute;
  top: 0;
  left: 0;
  margin-top: 5.7rem;
  margin-left: 1.8rem;
  white-space: nowrap;
}
.item-block.item-block02 .all {
  width: 50rem;
  margin: 0 auto;
  margin-top: 31rem;
}
.item-block.item-block02 .staff-credit {
  text-align: center;
  font-family: "georgia", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 2rem;
  line-height: 1.3;
  letter-spacing: 0.025em;
  margin-top: 19.7rem;
}
.item-block.item-block02 .staff-credit span {
  font-family: "biz-udpmincho", sans-serif;
  font-weight: 400;
  font-style: normal;
}/*# sourceMappingURL=style.css.map */