/*-------------------------------
---#pagetop
-------------------------------*/

#pagetop .general {
  background-color: #A53C14;
}

#pagetop:hover .general {
  background-color: #D04A19;
}

#pagetop .general .arrow {
  font-size: 2rem;
}

#pagetop .general .arrow::before {
  content: '\f062';
}

#pagetop .general .arrow i {
  display: none;
}

#pagetop .general .pagetop_txt {
  display: none !important;
}


/*-------------------------------
---.page-hero
-------------------------------*/

.page-hero .section_inner {
  position: relative;
  height: 100%;
  min-height: 50vw;
}

.page-hero .page-title {
  position: absolute;
  top: 45%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  width: min(60rem, 71.5%);
}

.page-hero .video_container {
  position: fixed;
  top: 0;
  left: 50%;
  transform: translate(-50%, 0);
  -webkit-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  z-index: -1;
  display: block;
  width: 100vw;
  width: 100svw;
  max-width: 2240px;
  height: 100vh;
  height: 100svh;
}

.page-hero .bg_video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.page-hero .intro {
  color: #fff;
  width: 100%;
  text-align: center;
  position: absolute;
  top: 55%;
  letter-spacing: 0.1em;
}
.page-hero .intro .txt_body {
  width: fit-content;
  margin: 0 auto;
  font-size: var(--font-size-xxl);
}

/*-------------------------------
---.main
-------------------------------*/

.main {
  display: grid;
  grid-template-columns: 100%;
  grid-auto-rows: minmax(min(calc(1920px * 0.3875), 38.75vw), max-content);
}

.main .section:not(:last-child) .section_inner {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-auto-rows: auto;
  align-items: center;
}

.main .section:not(:last-child) .section_contents {
  padding: 3rem 15.5%;
  margin-left: auto;
  margin-right: auto;
}

.main .section:not(:last-child) .contents_inner {
  width: min(31em, 100%);
}

.main .section:not(:last-child):nth-child(odd) .contents_inner {
  margin-right: auto;
}

.main .section:not(:last-child):nth-child(even) .contents_inner {
  margin-left: auto;
}

.main .section .catch_copy {
  margin-left: auto;
  margin-right: auto;
}

.main .section:not(:last-child) .catch_copy {
  width: min(28.5rem, 75%);
  margin-bottom: 7.5%;
}

.main .section.realization .catch_copy {
  width: min(20rem, 45%);
}

.main .section:not(:last-child):nth-child(odd) .image {
  order: -1;
}

.resort {
  background-color: #fff;
}

.relax,
.realization {
  background-color: #C89687;
}

.real {
  background-color: #FFFAEB;
}

.relax .image,
.real .image {
  margin-top: 0.725%;
  margin-bottom: 0.725%;
}

.future .section_inner {
  position: relative;
  height: 100%;
  min-height: 50vw;
}

.future .section_contents {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  width: 100%;
}

.future .catch_copy {
  width: min(28.5rem, 24.1%);
  margin-bottom: 3.75%;
}

.future .link-all {
  width: 37.5%;
  margin-left: auto;
  margin-right: auto;
}

.future .link-all a {
  display: block;
  background-color: #a53c14;
  padding: 6%;
}

