.informationSect {
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .informationSect {
    padding: 80px 0;
  }
}
@media screen and (max-width: 768px) {
  .informationSect {
    padding: 60px 0;
  }
}
.informationSect__inner {
  text-align: center;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .informationSect__inner {
    max-width: 1000px;
  }
}
@media print, screen and (min-width: 768px) and (max-width: 1000px) {
  .informationSect__inner {
    padding: 0 20px;
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  .informationSect__inner {
    padding: 0 24px;
  }
}
.informationSect__ttl {
  color: #BD875A;
  font-family: "Cormorant Garamond", serif;
  font-size: 18px;
  letter-spacing: 0.2em;
  text-align: center;
  line-height: 1.6;
}
.informationSect__ttl:before {
  content: "";
  margin-top: calc((1 - 1.6) * 0.5em);
}
.informationSect__ttl:after {
  margin-bottom: calc((1 - 1.6) * 0.5em);
}
.informationSect__ttl:before, .informationSect__ttl:after {
  content: "";
  display: block;
  height: 0;
  width: 0;
}
.informationSect__head + .informationSect__cont {
  margin-top: 40px;
}
.informationSect__heading {
  letter-spacing: 0.08em;
  margin: 0 auto;
  padding-bottom: 20px;
  position: relative;
  width: -moz-fit-content;
  width: fit-content;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .informationSect__heading {
    font-size: 36px;
  }
}
@media screen and (max-width: 768px) {
  .informationSect__heading {
    font-size: 26px;
  }
}
.informationSect__heading:after {
  background-color: #74604D;
  bottom: 0;
  content: "";
  height: 1px;
  left: 0;
  position: absolute;
  width: 100%;
}
.informationSect__heading .t {
  display: block;
}
@media screen and (min-width: 768px) {
  .informationSect__heading .t {
    line-height: 1.6;
  }
  .informationSect__heading .t:before {
    content: "";
    margin-top: calc((1 - 1.6) * 0.5em);
  }
  .informationSect__heading .t:after {
    margin-bottom: calc((1 - 1.6) * 0.5em);
  }
  .informationSect__heading .t:before, .informationSect__heading .t:after {
    content: "";
    display: block;
    height: 0;
    width: 0;
  }
}
@media screen and (max-width: 768px) {
  .informationSect__heading .t {
    line-height: 1.4;
  }
  .informationSect__heading .t:before {
    content: "";
    margin-top: calc((1 - 1.4) * 0.5em);
  }
  .informationSect__heading .t:after {
    margin-bottom: calc((1 - 1.4) * 0.5em);
  }
  .informationSect__heading .t:before, .informationSect__heading .t:after {
    content: "";
    display: block;
    height: 0;
    width: 0;
  }
}
.informationSect__cont + .informationSect__cvArea {
  margin-top: 40px;
}
@media screen and (min-width: 768px) {
  .cvList {
    display: flex;
    flex-wrap: wrap;
    gap: 80px;
    justify-content: center;
  }
}
@media screen and (min-width: 768px) {
  .cvList__item {
    width: 280px;
  }
}
@media screen and (max-width: 768px) {
  .cvList__item:not(:first-child) {
    margin-top: 24px;
  }
}
.cvList__lead {
  font-size: 12px;
  letter-spacing: 0.08em;
  text-align: center;
  line-height: 1.6;
}
.cvList__lead:before {
  content: "";
  margin-top: calc((1 - 1.6) * 0.5em);
}
.cvList__lead:after {
  margin-bottom: calc((1 - 1.6) * 0.5em);
}
.cvList__lead:before, .cvList__lead:after {
  content: "";
  display: block;
  height: 0;
  width: 0;
}
.cvList__lead + .generalBtn {
  margin-top: 24px;
}
.mainVisual {
  overflow: hidden;
  position: relative;
  width: 100%;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .mainVisual {
    aspect-ratio: 80/47;
  }
}
@media screen and (max-width: 768px) {
  .mainVisual {
    aspect-ratio: 9/16;
  }
}
.mainVisual__movie {
  height: 100%;
  left: 0;
  overflow: hidden;
  pointer-events: none;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 2;
}
.mainVisual__video {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: top center;
     object-position: top center;
  opacity: 1;
  position: relative;
  transition: opacity 0.6s ease, visibility 0.6s ease;
  visibility: visible;
  width: 100%;
  z-index: 1;
}
.mainVisual__video.is-hidden {
  opacity: 0;
  visibility: hidden;
}
.mainVisual__poster {
  height: 100%;
  left: 0;
  opacity: 0;
  position: absolute;
  top: 0;
  transition: opacity 0.4s ease-in-out, visibility 0.4s ease-in-out;
  visibility: hidden;
  width: 100%;
  z-index: 0;
}
.mainVisual__poster .photo {
  height: 100%;
  width: 100%;
}
.mainVisual__poster .photo__pic, .mainVisual__poster .photo__image {
  height: 100%;
  width: 100%;
}
.mainVisual__poster .photo__image {
  filter: blur(5px) brightness(1.2);
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: 50% 100%;
     object-position: 50% 100%;
  transition: filter 2s cubic-bezier(0.37, 0, 0.63, 1);
}
.mainVisual__poster.is-init {
  opacity: 1;
  visibility: visible;
}
.mainVisual__poster.is-init .photo__image {
  filter: blur(0) brightness(1);
}
.mainVisual__image {
  height: 100%;
  position: relative;
  width: 100%;
  z-index: 1;
}
.mainVisual__ttl {
  align-items: center;
  display: flex;
  flex-direction: column;
  left: 50%;
  position: absolute;
  text-align: center;
  z-index: 2;
}
@media screen and (min-width: 768px) {
  .mainVisual__ttl {
    gap: 40px;
    top: 14.5833333333vw;
    transform: translateX(-50%);
  }
}
@media screen and (max-width: 768px) {
  .mainVisual__ttl {
    gap: 20px;
    top: 50%;
    transform: translate(-50%, -50%);
  }
}
.mainVisual__ttl .logo {
  display: block;
}
@media screen and (min-width: 768px) {
  .mainVisual__ttl .logo {
    width: 36.1111111111vw;
  }
}
@media screen and (max-width: 768px) {
  .mainVisual__ttl .logo {
    width: 289px;
  }
}
.mainVisual__ttl .logo img {
  height: auto;
  width: 100%;
}
.mainVisual__ttl .sub {
  color: #fff;
  display: block;
  font-family: "Noto Serif JP", serif;
  font-weight: 600;
  letter-spacing: 0.2em;
  text-align: center;
  line-height: 1.6;
}
.mainVisual__ttl .sub:before {
  content: "";
  margin-top: calc((1 - 1.6) * 0.5em);
}
.mainVisual__ttl .sub:after {
  margin-bottom: calc((1 - 1.6) * 0.5em);
}
.mainVisual__ttl .sub:before, .mainVisual__ttl .sub:after {
  content: "";
  display: block;
  height: 0;
  width: 0;
}
@media screen and (min-width: 768px) {
  .mainVisual__ttl .sub {
    font-size: 18px;
  }
}
@media screen and (max-width: 768px) {
  .mainVisual__ttl .sub {
    font-size: 12px;
  }
}
.mainVisual__btn {
  align-items: center;
  background-color: rgba(255, 255, 255, 0.8);
  border: 1px solid #ccc;
  color: #595757;
  display: flex;
  font-family: "Cormorant Infant", serif;
  font-size: 13px;
  gap: 6px;
  justify-content: center;
  letter-spacing: 0.1em;
  padding: 6px 10px;
  position: absolute;
  transition: background-color 0.6s ease, opacity 0.6s ease;
  z-index: 3;
}
@media screen and (min-width: 768px) {
  .mainVisual__btn {
    bottom: 10px;
    left: 12px;
  }
}
@media screen and (max-width: 768px) {
  .mainVisual__btn {
    bottom: 20px;
    left: 18px;
  }
}
@media screen and (min-width: 768px) {
  .mainVisual__btn--stop, .mainVisual__btn--play {
    bottom: 50px;
  }
}
@media screen and (max-width: 768px) {
  .mainVisual__btn--stop, .mainVisual__btn--play {
    bottom: 60px;
    left: 18px;
  }
}
.mainVisual__btn.is-hidden {
  opacity: 0;
  pointer-events: none;
  visibility: hidden;
}
.mainVisual__btn .t {
  display: inline-block;
  line-height: 1;
  white-space: nowrap;
}
.mainVisual__btn .icon {
  display: block;
}
.mainVisual__btn .icon .skipSVG {
  display: block;
  height: auto;
  width: 16px;
}
.mainVisual__btn .icon .replaySVG {
  display: block;
  height: auto;
  width: 5px;
}
.mainVisual__btn .icon .stopSVG {
  display: block;
  height: auto;
  width: 7px;
}
.mainVisual__btn .icon .playSVG {
  display: block;
  height: auto;
  width: 5px;
}
@media screen and (min-width: 768px) {
  .mainVisual__btn:hover {
    background-color: white;
  }
}
@media (hover: hover) and (pointer: fine) {
  .mainVisual__btn:hover {
    background-color: white;
  }
}
.opening {
  height: 100%;
  left: 0;
  pointer-events: none;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 9999;
}
.opening__inner {
  height: 100%;
  position: relative;
  transition-duration: 1s;
  width: 100%;
  z-index: 1;
}
.is-load.is-visited .opening {
  display: none;
  z-index: -1 !important;
}
.sceneLoading {
  background-color: #fff;
  height: 100%;
  left: 0;
  opacity: 1;
  position: absolute;
  top: 0;
  visibility: visible;
  width: 100%;
}
.sceneLoading__inner {
  align-items: center;
  display: flex;
  flex-direction: column;
  height: 100%;
  justify-content: center;
  position: relative;
  width: 100%;
  z-index: 1;
}
.sceneLoading__inner .willroseLogo {
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .sceneLoading__inner .willroseLogo {
    width: 360px;
  }
}
@media screen and (max-width: 768px) {
  .sceneLoading__inner .willroseLogo {
    width: 230px;
  }
}
.sceneLoading__inner .loader {
  --loader-scale: 0;
  height: 2px;
  margin: 0 auto;
  position: relative;
}
@media screen and (min-width: 768px) {
  .sceneLoading__inner .loader {
    margin-top: 100px;
    width: 360px;
  }
}
@media screen and (max-width: 768px) {
  .sceneLoading__inner .loader {
    margin-top: 75px;
    width: 230px;
  }
}
.sceneLoading__inner .loader:before, .sceneLoading__inner .loader:after {
  bottom: 0;
  content: "";
  position: absolute;
  width: 100%;
}
.sceneLoading__inner .loader:before {
  background-color: #999;
  height: 2px;
  transform: scale(var(--loader-scale), 1);
  transform-origin: left;
  z-index: 2;
}
.sceneLoading__inner .loader:after {
  background-color: #ccc;
  height: 1px;
  z-index: 1;
}
.sceneMask {
  align-items: center;
  display: flex;
  height: 100%;
  justify-content: center;
  left: 0;
  opacity: 0;
  position: absolute;
  top: 0;
  visibility: hidden;
  width: 100%;
  z-index: 2;
}
.sceneMask__inner {
  height: 100%;
  position: relative;
  width: 100%;
  z-index: 1;
}
.sceneMask__mask {
  height: 100%;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  z-index: 2;
}
.sceneMask__mask .photo {
  height: 100%;
  position: relative;
  width: 100%;
  z-index: 1;
}
.sceneMask__mask .photo__pic, .sceneMask__mask .photo__image {
  height: 100%;
  width: 100%;
}
.sceneMask__mask .photo__image {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
}
.sceneMask__bg {
  background-color: #fff;
  height: 100%;
  left: 0;
  opacity: 1;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 1;
}
.sceneMask__image {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: -1;
}
.sceneMask__image .photo {
  height: 100%;
  width: 100%;
}
.sceneMask__image .photo__pic, .sceneMask__image .photo__image {
  height: 100%;
  width: 100%;
}
.sceneMask__image .photo__image {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
}
.uspArea {
  background-color: #82877D;
  color: #fff;
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .uspArea {
    margin: 0 auto;
    padding: 30px 0;
  }
}
@media screen and (max-width: 768px) {
  .uspArea {
    padding: 60px 0;
  }
}
.uspArea__inner {
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .uspArea__inner {
    max-width: 1250px;
  }
}
@media print, screen and (min-width: 768px) and (max-width: 1250px) {
  .uspArea__inner {
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  .uspArea__inner {
    padding: 0 24px;
  }
}
.guidanceArea {
  position: relative;
  z-index: 1;
}
.guidanceArea__sticky {
  height: calc(100vh - var(--header-height));
  left: 0;
  position: sticky;
  top: var(--header-height);
  z-index: -1;
}
.guidanceArea__panel {
  height: 100%;
  position: relative;
  width: 100%;
  z-index: 1;
}
.guidanceArea__intro {
  align-items: center;
  display: flex;
  height: 100%;
  justify-content: center;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  z-index: 4;
}
@media screen and (min-width: 768px) {
  .guidanceArea__scroll {
    padding-top: max(2500px, 200vh);
  }
}
@media screen and (max-width: 768px) {
  .guidanceArea__scroll {
    padding-top: 200vh;
  }
}
.guidanceArea__assist {
  bottom: 40px;
  left: 50%;
  position: absolute;
  transform: translateX(-50%);
  z-index: 2;
}
.guidanceArea__item {
  align-items: center;
  color: #fff;
  display: flex;
  justify-content: center;
  min-height: 100vh;
  position: relative;
  width: 100%;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  .guidanceArea__item {
    height: 100%;
    padding: 100px 0;
  }
}
.guidanceArea__bg {
  background-color: rgba(0, 0, 0, 0.5);
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 3;
}
.guidanceArea__video {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: top center;
     object-position: top center;
  position: relative;
  width: 100%;
}
.guidanceArea__video:-webkit-media-controls {
  display: none !important;
}
.guidanceArea__video:-webkit-media-controls-start-playback-button {
  -webkit-appearance: none;
          appearance: none;
  display: none !important;
}
.guidanceArea__poster {
  height: 100%;
  left: 0;
  opacity: 0;
  position: absolute;
  top: 0;
  transition: opacity 0.6s ease-in-out, visibility 0.6s ease-in-out;
  visibility: hidden;
  width: 100%;
  z-index: -1;
}
.guidanceArea__poster .photo {
  height: 100%;
  width: 100%;
}
.guidanceArea__poster .photo__pic, .guidanceArea__poster .photo__image {
  height: 100%;
  width: 100%;
}
.guidanceArea__poster .photo__image {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: top center;
     object-position: top center;
}
.guidanceCont {
  position: relative;
  width: 100%;
  z-index: 1;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .guidanceCont {
    max-width: 1000px;
  }
}
@media print, screen and (min-width: 768px) and (max-width: 1000px) {
  .guidanceCont {
    padding: 0 20px;
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  .guidanceCont {
    padding: 0 24px;
  }
}
.guideTxt {
  font-size: 14px;
  letter-spacing: 0.08em;
}
@media screen and (min-width: 768px) {
  .guideTxt {
    line-height: 2.8571428571;
  }
  .guideTxt:before {
    content: "";
    margin-top: calc((1 - 2.8571428571) * 0.5em);
  }
  .guideTxt:after {
    margin-bottom: calc((1 - 2.8571428571) * 0.5em);
  }
  .guideTxt:before, .guideTxt:after {
    content: "";
    display: block;
    height: 0;
    width: 0;
  }
}
@media screen and (max-width: 768px) {
  .guideTxt {
    line-height: 2.2857142857;
  }
  .guideTxt:before {
    content: "";
    margin-top: calc((1 - 2.2857142857) * 0.5em);
  }
  .guideTxt:after {
    margin-bottom: calc((1 - 2.2857142857) * 0.5em);
  }
  .guideTxt:before, .guideTxt:after {
    content: "";
    display: block;
    height: 0;
    width: 0;
  }
}
.guideTtl + .guideTxt {
  margin-top: 40px;
}
.guideTtl {
  font-family: "Cormorant Garamond", serif;
  letter-spacing: 0.04em;
  line-height: 1;
  perspective: 1000px;
}
@media screen and (min-width: 768px) {
  .guideTtl {
    font-size: 48px;
  }
}
@media screen and (max-width: 768px) {
  .guideTtl {
    font-size: 36px;
  }
}
.guideTtl .t {
  display: inline-block;
}
.guideLink {
  align-items: center;
  background-color: transparent;
  border: 1px solid #fff;
  color: #fff;
  display: flex;
  gap: 16px;
  justify-content: space-between;
  padding: 16px 18px;
  position: relative;
  transition: background-color 0.4s cubic-bezier(0.33, 1, 0.68, 1), border-color 0.4s cubic-bezier(0.33, 1, 0.68, 1);
  width: 181px;
  z-index: 1;
}
.guideLink__more {
  font-family: "Cormorant Garamond", serif;
  font-size: 14px;
  letter-spacing: 0.04em;
  line-height: 1;
  perspective: 1000px;
}
.guideLink__more .t {
  display: inline-block;
  transform: translate3d(0, 0, 0);
  transition: transform 0.4s cubic-bezier(0.33, 1, 0.68, 1), filter 0.4s cubic-bezier(0.33, 1, 0.68, 1);
}
.guideLink__comingSoon {
  font-family: "Cormorant Garamond", serif;
  font-size: 14px;
  letter-spacing: 0.04em;
  line-height: 1;
}
.guideLink__arrow {
  transition: transform 0.4s cubic-bezier(0.33, 1, 0.68, 1);
  width: 11px;
}
.guideLink__arrow .arrowSVG {
  height: auto;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .guideLink:hover {
    background-color: rgba(255, 255, 255, 0.1);
    border-color: rgba(255, 255, 255, 0.8);
  }
  .guideLink:hover .guideLink__more .t {
    filter: blur(0.3px);
    transform: translate3d(1px, -1px, 3px) rotateY(-1deg);
  }
  .guideLink:hover .guideLink__arrow {
    transform: translateX(3px);
  }
}
@media (hover: hover) and (pointer: fine) {
  .guideLink:hover {
    background-color: rgba(255, 255, 255, 0.1);
    border-color: rgba(255, 255, 255, 0.8);
  }
  .guideLink:hover .guideLink__more .t {
    filter: blur(0.3px);
    transform: translate3d(1px, -1px, 3px) rotateY(-1deg);
  }
  .guideLink:hover .guideLink__arrow {
    transform: translateX(3px);
  }
}
.guideLink--comingSoon {
  opacity: 0.6;
  pointer-events: none;
}
* + .guideLink {
  margin-top: 60px;
}
.aboutArea {
  color: #fff;
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .aboutArea {
    padding: 80px 0;
  }
}
@media screen and (max-width: 768px) {
  .aboutArea {
    padding: 60px 24px;
  }
}
.aboutArea__inner {
  background-color: #697369;
  position: relative;
  z-index: 1;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .aboutArea__inner {
    max-width: 800px;
  }
}
@media print, screen and (min-width: 768px) and (max-width: 800px) {
  .aboutArea__inner {
    width: 100%;
  }
}
@media screen and (min-width: 768px) {
  .aboutArea__inner {
    padding: 80px;
  }
}
@media screen and (max-width: 768px) {
  .aboutArea__inner {
    padding: 43px 41px;
  }
}
.aboutArea__inner:before {
  border: 1px solid #fff;
  content: "";
  display: block;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  z-index: -1;
}
@media screen and (min-width: 768px) {
  .aboutArea__inner:before {
    height: calc(100% - 40px);
    width: calc(100% - 40px);
  }
}
@media screen and (max-width: 768px) {
  .aboutArea__inner:before {
    height: calc(100% - 18px);
    width: calc(100% - 18px);
  }
}
.aboutArea__cont {
  -webkit-mask-image: linear-gradient(135deg, rgb(0, 0, 0) 0%, rgb(0, 0, 0) 50%, rgb(0, 0, 0) 60%, rgba(0, 0, 0, 0) 70%, rgba(0, 0, 0, 0) 100%);
          mask-image: linear-gradient(135deg, rgb(0, 0, 0) 0%, rgb(0, 0, 0) 50%, rgb(0, 0, 0) 60%, rgba(0, 0, 0, 0) 70%, rgba(0, 0, 0, 0) 100%);
  -webkit-mask-position: 130% 130%;
          mask-position: 130% 130%;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: 400% 400%;
          mask-size: 400% 400%;
}
@media screen and (min-width: 768px) {
  .aboutArea__cont {
    display: grid;
    grid-gap: 20px 8px;
    gap: 20px 8px;
    grid-template-columns: 1fr 360px;
  }
}
@media screen and (max-width: 768px) {
  .aboutArea__cont {
    margin-top: 40px;
  }
}
@media screen and (min-width: 768px) {
  .aboutArea__map {
    grid-column: 2;
  }
}
.aboutArea__txtArea {
  display: flex;
  flex-direction: column;
  gap: 40px;
}
@media screen and (min-width: 768px) {
  .aboutArea__txtArea {
    grid-column: auto/span 2;
  }
}
@media screen and (max-width: 768px) {
  .aboutArea__txtArea {
    margin-top: 40px;
  }
}
@media screen and (min-width: 768px) {
  .aboutArea__ttl {
    left: 105px;
    position: absolute;
    top: 83px;
    width: 226px;
    z-index: 2;
  }
}
@media screen and (max-width: 768px) {
  .aboutArea__ttl {
    margin: 0 auto;
    width: 206px;
  }
}
.aboutArea__heading {
  align-items: center;
  display: flex;
  flex-direction: column;
  font-size: 22px;
  gap: 14px;
  letter-spacing: 0.06em;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .aboutArea__heading {
    grid-column: 1;
    grid-row: 1;
    margin: 0 0 0 auto;
    padding-top: 110px;
    width: 235px;
  }
}
.aboutArea__heading .t,
.aboutArea__heading .cross {
  display: block;
  text-align: center;
  line-height: 1.437;
}
.aboutArea__heading .t:before,
.aboutArea__heading .cross:before {
  content: "";
  margin-top: calc((1 - 1.437) * 0.5em);
}
.aboutArea__heading .t:after,
.aboutArea__heading .cross:after {
  margin-bottom: calc((1 - 1.437) * 0.5em);
}
.aboutArea__heading .t:before, .aboutArea__heading .t:after,
.aboutArea__heading .cross:before,
.aboutArea__heading .cross:after {
  content: "";
  display: block;
  height: 0;
  width: 0;
}
@media screen and (max-width: 768px) {
  .aboutArea__map + .aboutArea__heading {
    margin-top: 40px;
  }
}
.aboutArea__txt {
  letter-spacing: 0.04em;
  line-height: 1.8571428571;
}
.aboutArea__txt:before {
  content: "";
  margin-top: calc((1 - 1.8571428571) * 0.5em);
}
.aboutArea__txt:after {
  margin-bottom: calc((1 - 1.8571428571) * 0.5em);
}
.aboutArea__txt:before, .aboutArea__txt:after {
  content: "";
  display: block;
  height: 0;
  width: 0;
}
@media screen and (min-width: 768px) {
  .aboutArea__txt {
    font-size: 14px;
    text-align: center;
  }
}
.aboutArea__note {
  font-size: 10px;
  letter-spacing: 0.04em;
  line-height: 2;
}
.aboutArea__note:before {
  content: "";
  margin-top: calc((1 - 2) * 0.5em);
}
.aboutArea__note:after {
  margin-bottom: calc((1 - 2) * 0.5em);
}
.aboutArea__note:before, .aboutArea__note:after {
  content: "";
  display: block;
  height: 0;
  width: 0;
}
@media screen and (min-width: 768px) {
  .aboutArea__note {
    text-align: center;
  }
}
.aboutArea.sai-animate .aboutArea__ttl {
  animation: ttlBrightnessFlash 2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.aboutArea.sai-animate .aboutArea__cont {
  animation: maskDiagonalAnimation 2s linear forwards 0.3s;
}
@keyframes ttlBrightnessFlash {
  0% {
    filter: blur(10px);
    opacity: 0.4;
  }
  30% {
    filter: blur(0);
    opacity: 0.6;
  }
  60% {
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
}
.conceptGuide {
  color: #fff;
  text-align: center;
}
.conceptGuide__ttl {
  font-size: 25px;
  letter-spacing: 0.2em;
  line-height: 1.6;
}
.conceptGuide__ttl:before {
  content: "";
  margin-top: calc((1 - 1.6) * 0.5em);
}
.conceptGuide__ttl:after {
  margin-bottom: calc((1 - 1.6) * 0.5em);
}
.conceptGuide__ttl:before, .conceptGuide__ttl:after {
  content: "";
  display: block;
  height: 0;
  width: 0;
}
@media screen and (min-width: 768px) {
  .conceptGuide__ttl + .guideTxt {
    margin-top: 60px;
  }
}
@media screen and (max-width: 768px) {
  .conceptGuide__ttl + .guideTxt {
    margin-top: 40px;
  }
}
.conceptGuide__txtArea {
  opacity: 0;
  visibility: hidden;
}
@media screen and (min-width: 768px) {
  .conceptGuide__txtArea {
    padding-top: 120px;
  }
}
@media screen and (max-width: 768px) {
  .conceptGuide__txtArea {
    padding-top: 60px;
  }
}
.conceptGuide__logo {
  align-items: flex-end;
  display: flex;
  gap: 8px;
  margin: 0 auto;
  perspective: 1000px;
  width: -moz-fit-content;
  width: fit-content;
}
.conceptGuide__logo .t {
  display: inline-block;
  transform-style: preserve-3d;
}
@media screen and (min-width: 768px) {
  .conceptGuide__logo .t--01 {
    width: 44px;
  }
}
@media screen and (max-width: 768px) {
  .conceptGuide__logo .t--01 {
    width: 31.68px;
  }
}
@media screen and (min-width: 768px) {
  .conceptGuide__logo .t--02 {
    width: 32px;
  }
}
@media screen and (max-width: 768px) {
  .conceptGuide__logo .t--02 {
    width: 23.04px;
  }
}
@media screen and (min-width: 768px) {
  .conceptGuide__logo .t--03 {
    width: 28px;
  }
}
@media screen and (max-width: 768px) {
  .conceptGuide__logo .t--03 {
    width: 20.16px;
  }
}
@media screen and (min-width: 768px) {
  .conceptGuide__logo .t--04 {
    width: 32px;
  }
}
@media screen and (max-width: 768px) {
  .conceptGuide__logo .t--04 {
    width: 23.04px;
  }
}
@media screen and (min-width: 768px) {
  .conceptGuide__logo .t--05 {
    width: 36px;
  }
}
@media screen and (max-width: 768px) {
  .conceptGuide__logo .t--05 {
    width: 25.92px;
  }
}
@media screen and (min-width: 768px) {
  .conceptGuide__logo .t--06 {
    width: 36px;
  }
}
@media screen and (max-width: 768px) {
  .conceptGuide__logo .t--06 {
    width: 25.92px;
  }
}
@media screen and (min-width: 768px) {
  .conceptGuide__logo .t--07 {
    width: 33px;
  }
}
@media screen and (max-width: 768px) {
  .conceptGuide__logo .t--07 {
    width: 23.76px;
  }
}
.conceptGuide__logo .t img {
  display: block;
  height: auto;
  width: 100%;
}
.conceptGuide__logo .space {
  display: inline-block;
  width: 1em;
}
@media screen and (min-width: 768px) {
  .planGuide {
    align-items: flex-end;
    display: flex;
    flex-direction: row-reverse;
    gap: 113px;
  }
}
@media screen and (min-width: 768px) {
  .planGuide__head {
    width: 480px;
  }
}
.planGuide__head .usableList {
  perspective: 1000px;
}
@media screen and (min-width: 768px) {
  .planGuide__head .usableList__inner {
    gap: 20px;
  }
}
@media screen and (max-width: 768px) {
  .planGuide__head .usableList__inner {
    gap: 14px;
  }
}
@media screen and (min-width: 768px) {
  .planGuide__head .usableList__item {
    width: 106px;
  }
}
@media screen and (max-width: 768px) {
  .planGuide__head .usableList__item {
    width: 75px;
  }
}
.planGuide__head .usableList__item:nth-child(2) {
  flex: 1;
}
.planGuide__head .usableList__item:nth-child(3) {
  align-self: flex-end;
}
.planGuide__head .usableList__note .caption {
  color: #fff;
}
@media screen and (min-width: 768px) {
  .planGuide__body {
    width: 409px;
  }
}
@media screen and (max-width: 768px) {
  .planGuide__body {
    margin-top: 60px;
  }
}
@media screen and (min-width: 768px) {
  .locationGuide {
    align-items: center;
    display: flex;
    gap: 54px;
    justify-content: space-between;
  }
}
@media screen and (min-width: 768px) {
  .locationGuide__head {
    flex: 1;
  }
}
.locationGuide__head .usableList {
  perspective: 1000px;
}
.locationGuide__head .usableList__inner {
  display: block;
}
@media screen and (min-width: 768px) {
  .locationGuide__head .usableList__item:nth-child(1) {
    width: 362px;
  }
}
@media screen and (max-width: 768px) {
  .locationGuide__head .usableList__item:nth-child(1) {
    width: 254px;
  }
}
@media screen and (min-width: 768px) {
  .locationGuide__head .usableList__item:nth-child(2) {
    margin: 20px auto 0 255px;
    width: 102px;
  }
}
@media screen and (max-width: 768px) {
  .locationGuide__head .usableList__item:nth-child(2) {
    margin: 14px auto 0 180px;
    width: 74px;
  }
}
@media screen and (min-width: 768px) {
  .locationGuide__head .usableList__item:nth-child(3) {
    margin: 20px 0 0 auto;
    width: 120px;
  }
}
@media screen and (max-width: 768px) {
  .locationGuide__head .usableList__item:nth-child(3) {
    margin: 14px 0 0 auto;
    width: 84px;
  }
}
.locationGuide__head .usableList__note .caption {
  color: #fff;
}
@media screen and (min-width: 768px) {
  .locationGuide__body {
    width: 459px;
  }
}
@media screen and (max-width: 768px) {
  .locationGuide__body {
    margin-top: -48px;
  }
}
@media screen and (min-width: 768px) {
  .locationGuide__body .guideTtl {
    white-space: nowrap;
  }
}
@media screen and (min-width: 768px) {
  .designGuide {
    align-items: center;
    display: flex;
    flex-direction: row-reverse;
    gap: 88px;
  }
}
@media screen and (min-width: 768px) {
  .designGuide__head {
    width: 505px;
  }
}
.designGuide__head .usableList__inner {
  display: block;
}
@media screen and (min-width: 768px) {
  .designGuide__head .usableList__item {
    width: 146px;
  }
}
@media screen and (max-width: 768px) {
  .designGuide__head .usableList__item {
    width: 99px;
  }
}
.designGuide__head .usableList__item:nth-child(1) {
  margin: 0 0 0 auto;
}
@media screen and (min-width: 768px) {
  .designGuide__head .usableList__item:nth-child(2) {
    margin: 20px 129px 0 auto;
    width: 210px;
  }
}
@media screen and (max-width: 768px) {
  .designGuide__head .usableList__item:nth-child(2) {
    margin: 14px 87px 0 auto;
    width: 142px;
  }
}
@media screen and (min-width: 768px) {
  .designGuide__head .usableList__item:nth-child(3) {
    margin-top: -21px;
  }
}
@media screen and (max-width: 768px) {
  .designGuide__head .usableList__item:nth-child(3) {
    margin-top: -14px;
  }
}
.designGuide__head .usableList__note .caption {
  color: #fff;
}
@media screen and (min-width: 768px) {
  .designGuide__body {
    width: 409px;
  }
}
@media screen and (max-width: 768px) {
  .designGuide__body {
    margin-top: 60px;
  }
}
@keyframes scrollAssistFloat {
  0% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(8px);
  }
  100% {
    transform: translateY(0);
  }
}
.scrollAssist {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 12px;
  justify-content: center;
  position: relative;
  z-index: 1;
}
.scrollAssist__txt {
  font-family: "Cormorant Garamond", serif;
  font-size: 24px;
  letter-spacing: 0.04em;
  line-height: 1;
  text-align: center;
}
.scrollAssist__icon {
  animation: scrollAssistFloat 2s ease-in-out infinite;
  width: 11px;
}
.scrollAssist__icon .svgIcon {
  display: block;
  height: auto;
  width: 100%;
}
/*# sourceMappingURL=style.css.map */
