@charset "UTF-8";
.container,
.footer,
.header {
  visibility: hidden;
}

:root {
  --color-normal: #0a3d60;
  --color-normal-light: #8bc0b6;
  --color-normal-light-2: #87b1a9;
  --color-normal-dark: #184e47;
  --color-highlight: #c19e74;
  --color-highlight-dark: #877055;
  --color-white: #fff;
  --color-red: #db595e;
  --color-pink: #ee849f;
  --color-black: #222;
  --color-grey: #646875;
  --color-grey-light: #aaa;
  --color-light: #ddd;
  --color-white-grey: #efefef;
  --color-bg: #ececec;
  --color-bg-black: #000;
  --color-text-scroll: #f2f2f2;
  --color-blue: #14799e;
  --color-orange: #dc6f27;
  --color-white-alpha: rgba(255, 255, 255, 0.5);
  --color-black-alpha: rgba(0, 0, 0, 0.5);
  --color-normal-alpha-03: rgba(10, 61, 96, 0.3);
  --color-normal-alpha-05: rgba(10, 61, 96, 0.5);
  --color-dark-alpha: rgba(24, 78, 71, 0.5);
  --color-highlight-alpha: rgba(171, 135, 104, 0.5);
  --color-white-zero: rgba(255, 255, 255, 0);
  --color-white-alpha-01: rgba(255, 255, 255, 0.1);
  --color-white-alpha-02: rgba(255, 255, 255, 0.2);
  --color-white-alpha-03: rgba(255, 255, 255, 0.3);
  --color-white-alpha-04: rgba(255, 255, 255, 0.4);
  --color-white-alpha-05: rgba(255, 255, 255, 0.5);
  --color-white-alpha-06: rgba(255, 255, 255, 0.6);
  --color-white-alpha-07: rgba(255, 255, 255, 0.7);
  --color-white-alpha-08: rgba(255, 255, 255, 0.8);
  --color-white-alpha-09: rgba(255, 255, 255, 0.9);
  --color-black-zero: rgba(0, 0, 0, 0);
  --color-black-alpha-01: rgba(0, 0, 0, 0.1);
  --color-black-alpha-02: rgba(0, 0, 0, 0.2);
  --color-black-alpha-03: rgba(0, 0, 0, 0.3);
  --color-black-alpha-04: rgba(0, 0, 0, 0.4);
  --color-black-alpha-05: rgba(0, 0, 0, 0.5);
  --color-black-alpha-06: rgba(0, 0, 0, 0.6);
  --color-black-alpha-07: rgba(0, 0, 0, 0.7);
  --color-black-alpha-08: rgba(0, 0, 0, 0.8);
  --color-black-alpha-09: rgba(0, 0, 0, 0.9);
  --color-bg-hide: linear-gradient(90deg, rgba(17, 74, 90, 1) 30%, rgba(17, 74, 90, 0) 80%);
  --color-black-alpha: linear-gradient(0deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.5) 100%);
  --color-hide-top: linear-gradient(0deg, rgba(5, 44, 56, 0) 15%, rgba(5, 44, 56, 0.8) 40%, rgba(5, 44, 56, 0.8) 70%);
  --color-bg-banner: linear-gradient(0deg, rgba(17, 74, 90, 1) 0%, rgba(17, 74, 90, 0.3) 100%);
  --color-block-hide: linear-gradient(0deg, rgba(24, 78, 71, 0) 20%, rgba(24, 78, 71, 1) 100%);
  --color-black-thumb: linear-gradient(0deg, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0) 60%);
  --color-border: linear-gradient(0deg, #184e47 0%, #8bc0b6 50%, #ab8768 100%);
  --color-black-gradient: linear-gradient(0deg, rgba(0, 0, 0, 0.7) 0%, rgba(0, 0, 0, 0) 80%);
  --color-banner-hide: linear-gradient(0deg, rgba(10, 61, 96, 1) 10%, rgba(10, 61, 96, 0) 60%);
  --color-border-gradient: linear-gradient(135deg, #ab8768 0%, rgba(255, 255, 255, 0) 50%, #e1cab0 100%);
  --color-mask: linear-gradient(90deg, rgba(0, 0, 0, 1) 50%, rgba(0, 0, 0, 0) 100%);
  --color-dot: linear-gradient(135deg, #ab8768 0%, #dc6f27 100%);
  --color-dot-2: linear-gradient(135deg, #cb4600 0%, #7f1417 100%);
  --color-text-gradient: linear-gradient(90deg, #c69b77 0%, #62b9d3 30%, #fff 70%, #7b9164 100%);
  --color-text-red: linear-gradient(90deg, #fff 0%, #8bc0b6 30%, #fff 50%, #ab8768 80%, #dc6f27 100%);
  --color-bg-news: linear-gradient(0deg, #8bc0b6 0%, #184e47 50%, #0a3d60 100%);
  --color-bg-blur: linear-gradient(0deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 100%);
  --color-bg-gradient: linear-gradient(135deg, #ab8768 0%, #877055 50%, #ab8768 100%);
  --color-bg-gradient-2: linear-gradient(135deg, #8bc0b6 0%, #184e47 50%, #8bc0b6 100%);
  --block-A: #184e47;
  --block-B: #877055;
  --office: #6b90b8;
  --shophouse: #c9b8a6;
  --trendy: #dfdc8e;
  --classy: #ffd57e;
  --morden: #f37477;
  --morden-1: #beddd8;
  --morden-2: #81ccba;
  --morden-3: #ffd1d1;
  --morden-4: #f5acac;
  --elegant: #9ea2cc;
  --font-note: "Oswald";
}

img:not([src]) {
  visibility: hidden;
}

.splitting .char,
.splitting .word {
  display: inline-block;
}

.splitting .char {
  position: relative;
}

.splitting .char::after,
.splitting .char::before {
  content: attr(data-char);
  visibility: hidden;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transition: inherit;
  transition: inherit;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.splitting {
  --word-center: calc((var(--word-total) - 1) / 2);
  --char-center: calc((var(--char-total) - 1) / 2);
  --line-center: calc((var(--line-total) - 1) / 2);
}

.splitting .word {
  --word-percent: calc(var(--word-index) / var(--word-total));
  --line-percent: calc(var(--line-index) / var(--line-total));
}

.splitting .char {
  --char-percent: calc(var(--char-index) / var(--char-total));
  --char-offset: calc(var(--char-index) - var(--char-center));
  --distance: calc((var(--char-offset) * var(--char-offset)) / var(--char-center));
  --distance-sine: calc(var(--char-offset) / var(--char-center));
  --distance-percent: calc((var(--distance) / var(--char-center)));
}

.mask,
.mask::before {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.mask {
  position: fixed;
  z-index: 2000;
}

.mask::before {
  background-color: #195450;
}

.loadx::after,
.mask::after,
.mask::before {
  content: "";
  position: absolute;
}

.mask::after {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.wrap-logo,
.wrap-logo .stroke {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}

.wrap-logo {
  z-index: 10;
  height: 100%;
}

.wrap-logo .stroke {
  display: block;
  height: auto;
}

.loadicon {
  position: fixed;
  top: 50%;
  left: 50%;
  width: 28vw;
  height: 8.96vw;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  -webkit-transition: all 0.6s ease-in-out;
  transition: all 0.6s ease-in-out;
}

.load-present {
  display: block;
  position: relative;
  width: 100%;
  height: 100%;
  overflow: visible;
}

.loader .x-line,
.stroke-line {
  stroke: var(--color-white);
  stroke-miterlimit: 10;
}

.stroke-line {
  stroke-width: 0.5;
  stroke-dasharray: 800;
  stroke-dashoffset: 800;
  fill-opacity: 0;
}

.loader .stroke-line {
  -webkit-transform-origin: center center;
  -ms-transform-origin: center center;
  transform-origin: center center;
  -webkit-animation-name: DrawStroke;
  animation-name: DrawStroke;
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.loader .x-line {
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  -webkit-animation: aniStroke 3s alternate 1;
  animation: aniStroke 3s alternate 1;
  stroke-width: 0.3;
  stroke-dasharray: 2000;
  stroke-dashoffset: 2000;
  fill: none;
}

.loader .stroke-ani,
.mask.hide .loadicon,
.mask.hide .stroke,
.mask.hide::after,
.mask.hide::before {
  -webkit-animation-name: fadeOut;
  animation-name: fadeOut;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.loader .stroke-ani,
.mask.hide .loadicon {
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
}

.mask-inner {
  position: fixed;
  z-index: 2000;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.mask-inner svg {
  display: block;
  position: absolute;
  top: calc(50% - 12.8vw);
  left: 0;
  width: 100vw;
  height: auto;
}

.stroke-ani {
  stroke-width: 0.1;
  stroke-dasharray: 800;
  stroke-dashoffset: 800;
  stroke: var(--color-white);
  fill-opacity: 0;
  stroke-miterlimit: 10;
}

.loader .stroke-ani {
  -webkit-transform-origin: center center;
  -ms-transform-origin: center center;
  transform-origin: center center;
  -webkit-animation-name: DrawInner;
  animation-name: DrawInner;
  -webkit-animation-duration: 2.5s;
  animation-duration: 2.5s;
}

.mask-inner.hide {
  -webkit-animation-name: fadeOutBlur;
  animation-name: fadeOutBlur;
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.loadx {
  display: none;
  position: fixed;
  z-index: 110000;
  top: calc(50% - 1.5rem);
  left: calc(50% - 1.5rem);
  width: 3rem;
  height: 3rem;
  border: 0.3rem solid;
  border-radius: 50%;
  border-color: var(--color-white-alpha);
}

.loadx::after {
  top: -0.5rem;
  left: -0.5rem;
  width: calc(100% + 1rem);
  height: calc(100% + 1rem);
  -webkit-animation: Preloader 1s linear infinite;
  animation: Preloader 1s linear infinite;
}

.header {
  position: fixed;
  z-index: 100;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
  color: var(--color-white);
}

.header.active .logo {
  opacity: 0;
}

.header::after {
  -webkit-transition: opacity 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out;
  opacity: 0;
  background-color: var(--color-white-alpha-02);
  pointer-events: none;
  -webkit-backdrop-filter: blur(5px);
  backdrop-filter: blur(5px);
}

@media only screen and (max-width: 767.98px) {
  .header.hide .nav-click .nav-text > span,
  .header.hide .language li,
  .header.hide .language li a {
    color: #fff;
  }
  .header.hide .nav-line-button .nav-line {
    background-color: #fff;
  }
  .header.hide.active .nav-click .nav-text > span,
  .header.hide.active .language li,
  .header.hide.active .language li a {
    color: #fff;
  }
  .header.hide.active .nav-line-button .nav-line {
    background-color: #fff;
  }
}
@media (min-width: 768px) {
  .header::after {
    height: 5rem;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1100.98px) {
  .header::after {
    height: 70px;
  }
}
@media only screen and (max-width: 767.98px) {
  .header::after {
    height: 0.7rem;
  }
}
.header::after,
.logo::after,
.logo::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}

.logo {
  position: fixed;
  z-index: 50;
  -webkit-transition: all 0.8s cubic-bezier(0.5, 0.5, 0.3, 1);
  transition: all 0.8s cubic-bezier(0.5, 0.5, 0.3, 1);
}

.logo::after,
.logo::before {
  display: block;
  z-index: 5;
  height: 100%;
  -webkit-transition: opacity 0.8s ease-in-out;
  transition: opacity 0.8s ease-in-out;
}

.logo::before {
  opacity: 0;
}

.logo::after {
  opacity: 1;
}

.logo.center-load::before {
  opacity: 1;
}

.logo.onclick {
  cursor: pointer;
  pointer-events: auto;
}

.logo.center-load {
  top: calc(50% - 4.48vw);
  left: calc(50% - 14vw);
  width: 28vw;
  height: 8.96vw;
}

.logo.center-load::after {
  opacity: 0;
}

@media (min-width: 768px) {
  .logo {
    top: 0.22rem;
    left: 0.5rem;
    width: 1.56rem;
    height: 1rem;
  }
}
@media only screen and (max-width: 767.98px) {
  .logo {
    top: 0.1rem;
    left: 0.2rem;
    width: 0.75rem;
    height: 0.48rem;
  }
}
.make-blur {
  position: absolute;
  top: -5vw;
  left: calc(50% - 25vw);
  width: 50vw;
  height: 10vw;
  background: var(--color-bg-circle);
  -webkit-backdrop-filter: blur(5px);
  backdrop-filter: blur(5px);
  -webkit-filter: blur(20px);
  filter: blur(20px);
}

.right-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: fixed;
  z-index: 30;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: auto;
  height: auto;
  -webkit-transition: all 0.8s cubic-bezier(0.5, 0.5, 0.3, 1);
  transition: all 0.8s cubic-bezier(0.5, 0.5, 0.3, 1);
  color: var(--color-highlight);
}

@media (min-width: 768px) {
  .right-header {
    top: 0.18rem;
    right: 0.5rem;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1100.98px) {
  .right-header {
    top: 20px;
    right: 0.15rem;
    -webkit-transition: top 0.2s ease-in-out;
    transition: top 0.2s ease-in-out;
  }
}
@media only screen and (max-width: 767.98px) {
  .right-header {
    top: 0.1rem;
    right: 0.2rem;
  }
}
.right-header.white {
  color: var(--color-white);
}

@media only screen and (max-width: 767.98px) {
  .header.hide .right-header {
    top: 0.27rem;
  }
}
.option-head {
  display: none;
}

.hotline,
.subscribe {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: auto;
  height: auto;
  margin: 0;
  padding: 0 0.1rem;
  color: currentcolor;
}

.subscribe {
  padding: 0 0.1rem 0 0;
}

.hotline .effect-text,
.subscribe .effect-text {
  display: block;
  position: relative;
  font-size: 0.9rem;
  font-weight: 700;
  text-transform: uppercase;
  pointer-events: none;
}

.subscribe .effect-text {
  font-size: 0.8rem;
}

.hotline .icon,
.subscribe .icon {
  display: block;
  position: relative;
  width: 2.5rem;
  height: 2.5rem;
  margin-right: 0.5rem;
  overflow: hidden;
  border-radius: 50%;
}

.hotline .icon::after,
.subscribe .icon::after,
.v360 .icon::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 1px solid currentcolor;
  border-radius: 50%;
  opacity: 0.5;
}

.hotline svg,
.subscribe svg {
  display: block;
  position: relative;
  z-index: 2;
  width: 80%;
  height: 80%;
  margin: 10%;
}

.hotline path,
.subscribe path {
  -webkit-transform-origin: center center;
  -ms-transform-origin: center center;
  transform-origin: center center;
}

.hotline path.normal,
.subscribe path.normal {
  fill: currentcolor;
}

.hotline path.hover,
.subscribe path.hover {
  -webkit-transform: translateY(calc(100% + 1rem));
  -ms-transform: translateY(calc(100% + 1rem));
  transform: translateY(calc(100% + 1rem));
  fill: currentcolor;
}

.hotline .icon,
.hotline path,
.link-home path,
.subscribe .icon,
.subscribe path,
.v360 path {
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

.subscribe.current path.normal {
  -webkit-transform: none;
  -ms-transform: none;
  transform: none;
}

.link-home.current .normal,
.main-menu li .nav-item.active .normal,
.subscribe.current span.normal {
  -webkit-transform: translateY(-100%);
  -ms-transform: translateY(-100%);
  transform: translateY(-100%);
}

.subscribe.current span.hover {
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
  color: var(--color-highlight);
}

.subscribe.current {
  pointer-events: none;
}

.subscribe.current .icon::after {
  border-color: transparent;
  opacity: 1;
  background-color: var(--color-highlight);
  -webkit-box-shadow: 0 1rem 1rem 0 var(--color-black-alpha-01);
  box-shadow: 0 1rem 1rem 0 var(--color-black-alpha-01);
}

.link-home,
.v360 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.link-home,
.link-home .icon {
  width: 2rem;
  height: 2rem;
}

.link-home .icon {
  display: block;
  position: relative;
}

.link-home svg,
.link-social .icon div,
.share a .icon div,
.social li .icon div {
  display: block;
  position: relative;
  width: 100%;
  height: 100%;
}

.link-home path,
.v360 path {
  -webkit-transform-origin: center center;
  -ms-transform-origin: center center;
  transform-origin: center center;
}

.link-home .normal,
.v360 path.normal {
  fill: currentcolor;
}

.link-home .hover,
.v360 path.hover {
  -webkit-transform: translateY(calc(100% + 1rem));
  -ms-transform: translateY(calc(100% + 1rem));
  transform: translateY(calc(100% + 1rem));
  fill: currentcolor;
}

.link-home.current .hover {
  -webkit-transform: none;
  -ms-transform: none;
  transform: none;
}

.link-home.current,
.main-menu li.current > a {
  pointer-events: none;
}

.v360 {
  width: auto;
  height: auto;
  margin: 0 0 0 2rem;
  color: currentcolor;
}

.v360 .icon {
  display: block;
  position: relative;
  width: 2.5rem;
  height: 2.5rem;
  margin: 0 0 0 0.5rem;
  overflow: hidden;
  border-radius: 50%;
}

.v360 .effect-text {
  font-size: 0.9rem;
  font-weight: 700;
  text-transform: uppercase;
  pointer-events: none;
}

.language,
.language ul,
.logo-center span,
.nav-click .line-svg,
.v360 .effect-text,
.v360 svg {
  display: block;
  position: relative;
}

.v360 svg {
  z-index: 2;
  width: 70%;
  height: 70%;
  margin: 15%;
}

.language,
.language ul {
  height: auto;
}

.language {
  position: relative;
  z-index: 5;
  width: auto;
  text-align: center;
}

.language::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  width: 0.01rem;
  height: 0.225rem;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  background: #fff;
}

.language ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  margin: 0;
}

.language li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  border-radius: 50%;
  color: #fff;
}

.language li.active {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.language li.active a {
  color: #c19e74 !important;
}

.language li.active::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 1px solid #c19e74;
  border-radius: 50%;
  opacity: 0.5;
}

.language li a,
.language li button {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  position: relative;
  z-index: 5;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 100%;
  height: auto;
  margin: 0;
  color: #fff;
  text-transform: uppercase;
}

@media (min-width: 768px) {
  .language {
    top: -0.06rem;
    margin-right: 0.22rem;
    padding-right: 0.13rem;
  }
  .language li {
    width: 0.47rem;
    height: 0.47rem;
    padding: 0 0.06rem;
  }
  .language a,
  .language button {
    font-size: 0.2rem;
    line-height: 1.45;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1100.98px) {
  .language {
    margin: 0 0.2rem;
    padding-right: 0.2rem;
  }
  .language li {
    margin-right: 8px;
    padding: 0;
  }
  .language li:last-child {
    margin-right: 0;
  }
  .language li a {
    font-size: 0.28rem;
  }
}
@media only screen and (max-width: 767.98px) {
  .language {
    top: -0.05rem;
    margin-right: 0.1rem;
    padding-right: 0.05rem;
  }
  .language li {
    width: 0.28rem;
    height: 0.28rem;
  }
  .language a {
    font-size: 0.14rem;
    line-height: 2.0714285714;
  }
}
.nav-click,
.navigation {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.language li a,
.language li button,
.language li::after,
.nav-click,
.nav-click rect {
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

.nav-click {
  position: relative;
  z-index: 5;
  width: auto;
  height: auto;
  color: #fff;
  cursor: pointer;
}

.nav-click .nav-text {
  display: block;
  position: relative;
  margin-right: -0.08rem;
}

.nav-click .nav-text > span {
  display: block;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: 0.3s all ease-in-out;
  transition: 0.3s all ease-in-out;
  color: #fff;
  font-weight: 400;
  text-transform: uppercase;
}

.nav-click .nav-text > span.is-close {
  opacity: 0;
}

@media (min-width: 768px) {
  .nav-click .line-svg,
  .nav-click .nav-line-button {
    width: 0.4rem;
    height: 0.3rem;
  }
  .nav-click .nav-text {
    top: -0.06rem;
    width: 0.66rem;
  }
  .nav-click .nav-text > span {
    font-size: 0.2rem;
    line-height: 1.45;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1100.98px) {
  .nav-click .nav-line-button {
    position: relative;
    top: -1px;
    width: 0.3rem;
    height: 0.25rem;
  }
  .nav-click .nav-text {
    width: 1rem;
  }
  .nav-click .nav-text > span {
    font-size: 0.28rem;
  }
}
@media only screen and (max-width: 767.98px) {
  .nav-click .line-svg,
  .nav-click .nav-line-button {
    width: 0.2rem;
    height: 0.2rem;
  }
  .nav-click .nav-text {
    top: -0.05rem;
    width: 0.46rem;
  }
  .nav-click .nav-text > span {
    font-size: 0.14rem;
    line-height: 2.0714285714;
  }
}
.nav-line-button .nav-line {
  display: block;
  position: relative;
  height: 0.01rem;
  margin-left: auto;
  -webkit-transition: all 0.35s ease;
  transition: all 0.35s ease;
  background: #fff;
}

@media (min-width: 768px) {
  .nav-line-button .nav-line {
    width: 0.27rem;
  }
  .nav-line-button .nav-line:nth-child(2) {
    top: 0.07rem;
    width: 0.18rem;
  }
  .nav-line-button .nav-line:nth-child(3) {
    top: 0.14rem;
  }
  .nav-click.active .nav-line:nth-child(1) {
    -webkit-transform: translateY(0.1rem) rotate(-36deg);
    -ms-transform: translateY(0.1rem) rotate(-36deg);
    transform: translateY(0.1rem) rotate(-36deg);
  }
  .nav-click.active .nav-line:nth-child(3) {
    -webkit-transform: translateY(-0.06rem) rotate(36deg);
    -ms-transform: translateY(-0.06rem) rotate(36deg);
    transform: translateY(-0.06rem) rotate(36deg);
  }
}
@media only screen and (max-width: 767.98px) {
  .nav-line-button .nav-line {
    width: 0.13rem;
  }
  .nav-line-button .nav-line:nth-child(2) {
    top: 0.03rem;
    width: 0.09rem;
  }
  .nav-line-button .nav-line:nth-child(3) {
    top: 0.06rem;
  }
  .nav-click.active .nav-line:nth-child(1) {
    -webkit-transform: translateY(0.05rem) rotate(-36deg);
    -ms-transform: translateY(0.05rem) rotate(-36deg);
    transform: translateY(0.05rem) rotate(-36deg);
  }
  .nav-click.active .nav-line:nth-child(3) {
    -webkit-transform: translateY(-0.03rem) rotate(36deg);
    -ms-transform: translateY(-0.03rem) rotate(36deg);
    transform: translateY(-0.03rem) rotate(36deg);
  }
}
.nav-click.active .nav-line:nth-child(2) {
  opacity: 0;
}

.nav-click.active .nav-text span.is-menu {
  visibility: hidden;
  opacity: 0;
}

.nav-click.active .nav-text span.is-close {
  opacity: 1;
}

.nav-click.active .one {
  width: 100px;
  -webkit-transform: translate(0, 2rem) rotate(45deg);
  -ms-transform: translate(0, 2rem) rotate(45deg);
  transform: translate(0, 2rem) rotate(45deg);
}

.nav-click.active .three {
  width: 100px;
  -webkit-transform: translate(0, -2rem) rotate(-45deg);
  -ms-transform: translate(0, -2rem) rotate(-45deg);
  transform: translate(0, -2rem) rotate(-45deg);
}

.nav-click.active .two {
  width: 0;
}

.navigation {
  position: fixed;
  z-index: 20;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  text-align: center;
  pointer-events: none;
}

.nav-custom {
  -webkit-transform: translateY(10px);
  -ms-transform: translateY(10px);
  transform: translateY(10px);
  -webkit-transition: opacity 0.5s ease-in-out 0.3s, -webkit-transform 0.5s ease-in-out 0.3s;
  transition: opacity 0.5s ease-in-out 0.3s, -webkit-transform 0.5s ease-in-out 0.3s;
  transition: opacity 0.5s ease-in-out 0.3s, transform 0.5s ease-in-out 0.3s;
  transition: opacity 0.5s ease-in-out 0.3s, transform 0.5s ease-in-out 0.3s, -webkit-transform 0.5s ease-in-out 0.3s;
  opacity: 0;
}

.navigation.show .nav-custom {
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
  opacity: 1;
}

@media only screen and (max-width: 767.98px) {
  .navigation {
    background: #195450 url("../img/common/menu_bg_01.png") center center/cover no-repeat;
  }
}
.nav {
  display: block;
  position: absolute;
  z-index: 30;
  width: 100%;
  height: 100vh;
  text-align: right;
}

.nav::before {
  width: 1px;
  -webkit-transform: scale3d(1, 0, 1);
  transform: scale3d(1, 0, 1);
  -webkit-transform-origin: top center;
  -ms-transform-origin: top center;
  transform-origin: top center;
  opacity: 0.5;
  background-color: var(--color-normal-dark);
}

.nav .nav-custom .nav-item {
  color: #c19e74;
  font-family: "TT_Commons", serif;
  font-weight: 400;
  text-transform: none;
}

@media (min-width: 768px) {
  .nav {
    top: 0;
    right: 0;
    max-width: 6.37rem;
    background: #195450 url("../img/common/menu_bg_01.png") center center/cover no-repeat;
  }
  .nav .nav-custom .nav-item {
    margin-top: 0.16rem;
    font-size: 0.25rem;
    line-height: 1.04;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1100.98px) {
  .nav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    overflow-y: auto;
    text-align: center;
  }
}
@media only screen and (max-width: 767.98px) {
  .nav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    top: 0.7rem;
    left: 0;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: calc(100% - 1.5rem);
    overflow-y: auto;
    text-align: center;
  }
  .nav .nav-custom .nav-item {
    font-size: 0.16rem;
    line-height: 2;
  }
}
.nav::before,
.overlay-menu::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
}

.main-menu {
  display: inline-block;
  position: relative;
  width: 100%;
  height: 100%;
  margin: 0;
  list-style: none;
}

.main-menu li {
  display: block;
  margin: 0 0 0.25rem;
}

.main-menu li.current > a {
  color: #c19e74;
}

@media (min-width: 768px) {
  .main-menu {
    padding: 1.76rem 0.52rem 0.3rem;
  }
  .main-menu li {
    font-size: clamp(14px, 0.3rem, 0.45rem);
  }
}
@media only screen and (min-width: 768px) and (max-width: 1100.98px) {
  .main-menu {
    width: 100%;
    padding: 1.5rem 4vw;
  }
  .main-menu li {
    margin: 0.25rem 0;
    padding: 0;
    text-align: right;
  }
  .main-menu li:nth-child(1) {
    display: block;
  }
  .main-menu li:last-child {
    margin: 0.1rem 0 0.3rem;
  }
}
@media only screen and (max-width: 767.98px) {
  .main-menu {
    height: 100vh;
    padding: 0.6rem 0.2rem;
  }
}
.item-menu-second > a,
.main-menu li {
  position: relative;
  color: #fff;
}

.nav-item {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  position: relative;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  color: currentcolor;
  font-family: Vogun, sans-serif;
  font-weight: 500;
  text-transform: uppercase;
}

@media (min-width: 768px) {
  .nav-item {
    font-size: clamp(14px, 0.3rem, 0.45rem);
    line-height: 1.3333333333;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1100.98px) {
  .nav-item {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 0.3rem;
  }
}
@media only screen and (max-width: 767.98px) {
  .nav-item {
    font-size: 0.18rem;
  }
}
.main-menu li .nav-item.active .hover {
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
}

.logo-center {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 65vw;
  height: 100vh;
}

@media only screen and (min-width: 768px) and (max-width: 1100.98px) {
  .logo-center {
    width: calc(100% - 6.37rem);
  }
  .logo-center span {
    width: 100%;
    height: 100%;
  }
}
.logo-center span {
  width: 60vmin;
  height: 19.2vmin;
  opacity: 0;
}

.navigation.show,
.overlay-menu.show {
  pointer-events: auto;
}

.navigation.show .logo-center span {
  -webkit-animation-name: scaleLarge;
  animation-name: scaleLarge;
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
  -webkit-animation-delay: 0.3s;
  animation-delay: 0.3s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.navigation.show .nav::before {
  -webkit-animation-name: aniHeight;
  animation-name: aniHeight;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-delay: 1s;
  animation-delay: 1s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.overlay-menu {
  position: fixed;
  z-index: 5;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  -webkit-transition: opacity 0.5s ease-in-out;
  transition: opacity 0.5s ease-in-out;
  opacity: 0;
  background: rgba(0, 76, 64, 0.6);
  pointer-events: none;
}

@media only screen and (max-width: 767.98px) {
  .overlay-menu {
    display: none;
  }
}
.overlay-menu::before {
  width: 100%;
}

.overlay-menu.show {
  opacity: 1;
}

.item-menu-second > a .inner,
.nav-drop,
.nav-item .inner,
.text-break > strong {
  display: inline-block;
}

.nav-item .normal .char {
  opacity: 0;
}

.nav-drop.show,
.nav-item .normal.show .char {
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
}

.nav-item .normal.show .char {
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
  -webkit-animation-delay: calc(100ms * var(--char-index));
  animation-delay: calc(100ms * var(--char-index));
}

.nav-drop {
  position: absolute;
  top: 0.6rem;
  right: -2rem;
  width: 1.2rem;
  height: 1.2rem;
  opacity: 0;
}

.nav-drop.show {
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-delay: 1s;
  animation-delay: 1s;
}

.nav-drop::before {
  content: "";
  position: absolute;
  width: 0.5rem;
  height: 0.5rem;
  -webkit-transform: rotate(220deg);
  -ms-transform: rotate(220deg);
  transform: rotate(220deg);
  -webkit-transition: border-color 0.3s ease-in-out;
  transition: border-color 0.3s ease-in-out;
  border-top: 0.15rem solid currentcolor;
  border-left: 0.15rem solid currentcolor;
}

.sub-menu-drop {
  height: auto;
  padding: 0;
  overflow: hidden;
  -webkit-transform: none;
  -ms-transform: none;
  transform: none;
  -webkit-transition: height 0.3s ease-in-out, padding 0.3s ease-in-out;
  transition: height 0.3s ease-in-out, padding 0.3s ease-in-out;
}

.sub-menu-drop.off {
  height: 0;
  padding: 0;
}

.sub-menu-drop.off.active {
  height: var(--data-height);
  padding: 0.5rem 0;
}

.container,
.item-menu-second,
.sub-menu-drop {
  display: block;
  position: relative;
  width: 100%;
}

.item-menu-second {
  z-index: 5;
  height: auto;
  counter-increment: section;
}

.item-menu-second > a {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin: 0.1rem 0;
  padding: 0.3rem 0;
  font-size: 1rem;
  font-weight: 600;
  text-transform: uppercase;
  white-space: nowrap;
}

.item-menu-second > a::before {
  content: "0" counter(section) ".";
  display: inline-block;
  padding: 0 0.5rem 0 0;
  color: currentcolor;
  font-size: 0.6rem;
  font-weight: 600;
}

.item-menu-second.current,
.item-menu-second.current > a {
  pointer-events: none;
}

.item-menu-second.active > a,
.item-menu-second.active > a::before,
.item-menu-second.current > a,
.item-menu-second.current > a::before,
.item-menu-second > a .hover {
  color: var(--color-highlight);
}

.container {
  height: 100vh;
  margin: 0;
  padding: 0;
  overflow: hidden;
}

.wrap-content,
.wrap-slide {
  position: relative;
  z-index: 5;
}

.wrap-content {
  display: block;
  width: 100%;
  height: auto;
  margin: 0;
  padding: 0;
}

.wrap-slide {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 80vw;
  height: 100vh;
}

.smooth .container {
  height: auto;
}

.title-main,
.title-page {
  z-index: 5;
  width: auto;
  height: auto;
}

.title-page {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: absolute;
  top: 10%;
  right: 2rem;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 0;
  -webkit-transform: translateY(-100%) rotate(-90deg);
  -ms-transform: translateY(-100%) rotate(-90deg);
  transform: translateY(-100%) rotate(-90deg);
  -webkit-transform-origin: 100% 100%;
  -ms-transform-origin: 100% 100%;
  transform-origin: 100% 100%;
}

.title-main h2,
.title-page h1 {
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 0;
  overflow: hidden;
  opacity: 0;
}

.title-page .text-inner span {
  color: currentcolor;
  font-size: 1.2rem;
  font-weight: 600;
  line-height: 1;
  text-transform: uppercase;
}

.text-ani-item .char,
.text-break .char,
.text-inner .char,
.title-page .text-inner .char {
  opacity: 0;
}

.title-main {
  display: block;
  position: relative;
  line-height: 1;
}

.title-main h3 {
  display: block;
  z-index: 1;
  margin: 0 0 1rem;
  color: currentcolor;
  font-size: 1.5rem;
  font-weight: 600;
}

.text-break,
.text-inner,
.title-main h3 {
  position: relative;
  width: 100%;
  height: auto;
}

.text-inner {
  display: block;
  z-index: 1;
  line-height: 1;
}

.text-ani-item span {
  font-size: unset;
  line-height: unset;
}

.text-break {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
}

.text-break > strong {
  position: relative;
  font-size: 7vw;
  font-weight: 400;
  line-height: 1;
}

.text-break > small,
.title-main > small {
  display: inline-block;
  position: relative;
  font-size: 4vw;
  line-height: 1;
}

.text-break,
.text-break span {
  line-height: 1;
}

.title-main > small {
  font-size: 7vw;
}

.effect-text .inner,
.scroll-text {
  overflow: hidden;
  pointer-events: none;
}

.effect-text .inner,
.effect-text .inner .normal,
.go-top svg,
.srcoll-down svg {
  display: block;
  position: relative;
}

.srcoll-down {
  display: none !important;
}

.effect-text .inner .hover {
  position: absolute;
  bottom: 0;
  left: 0;
  -webkit-transform: translateY(calc(100% + 1rem));
  -ms-transform: translateY(calc(100% + 1rem));
  transform: translateY(calc(100% + 1rem));
  -webkit-transition: -webkit-transform 0.3s ease-in-out;
  transition: -webkit-transform 0.3s ease-in-out;
  transition: transform 0.3s ease-in-out;
  transition: transform 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;
}

.scroll-text {
  position: absolute;
  z-index: 1;
  bottom: -3rem;
  left: 0;
  width: 100%;
  height: auto;
  margin: 0;
  padding: 1rem 0;
  opacity: 0;
  white-space: nowrap;
}

.scroll-slide,
.scroll-text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
}

.scroll-text .logo-line {
  display: block;
  width: 55vw;
  height: 13.2vw;
  opacity: 0.1;
}

.scroll-text span {
  position: relative;
  padding: 0 2rem;
  color: var(--color-normal);
  font-size: 15vw;
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
  white-space: nowrap;
  -webkit-text-fill-color: var(--color-normal);
  -webkit-text-stroke-color: var(--color-white-alpha-03);
  -webkit-text-stroke-width: 1px;
}

.scroll-text.fade {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
  -webkit-animation-delay: 0.3s;
  animation-delay: 0.3s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.scroll-text.fade .scroll-slide {
  -webkit-animation: scrollText 25s linear infinite;
  animation: scrollText 25s linear infinite;
}

.go-top,
.srcoll-down {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: fixed;
  z-index: 15;
  bottom: 1rem;
  left: 2rem;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 4rem;
  height: 4rem;
  opacity: 0;
  pointer-events: none;
}

.go-top span,
.srcoll-down span {
  position: absolute;
  z-index: 5;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 2px solid transparent;
  border-radius: 50%;
  background: var(--color-border-gradient) border-box;
  -webkit-mask: -webkit-gradient(linear, left top, left bottom, color-stop(0, var(--color-white))) padding-box, -webkit-gradient(linear, left top, left bottom, color-stop(0, var(--color-white)));
  -webkit-mask: linear-gradient(var(--color-white) 0 0) padding-box, linear-gradient(var(--color-white) 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
}

.go-top svg,
.srcoll-down svg {
  z-index: 5;
  width: 60%;
  height: 60%;
  margin: 20%;
}

.go-top::after,
.srcoll-down::after {
  content: "";
  position: absolute;
  top: 10%;
  left: 10%;
  width: 80%;
  height: 80%;
  border-radius: 50%;
}

.srcoll-down.show {
  cursor: pointer;
  pointer-events: auto;
}

.srcoll-down.show svg {
  -webkit-animation: trackBallSlide 3s alternate infinite;
  animation: trackBallSlide 3s alternate infinite;
}

.go-top.show span,
.srcoll-down.show span {
  -webkit-animation: Preloader 3s alternate infinite;
  animation: Preloader 3s alternate infinite;
}

.srcoll-down.center {
  bottom: calc(7.6923076923vh + 3rem);
  left: calc(50% - 3rem);
}

.go-top.show,
.srcoll-down.show {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.is-touch .go-top::after,
.is-touch .srcoll-down::after {
  -webkit-backdrop-filter: blur(5px);
  backdrop-filter: blur(5px);
  background-color: var(--color-black-alpha-03);
}

.go-top.show {
  display: none !important;
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
  cursor: pointer;
  pointer-events: auto;
}

@media only screen and (min-width: 768px) and (max-width: 1100.98px) {
  .header.active .logo {
    opacity: 0;
    pointer-events: none;
  }
}
@media screen and (min-width: 1100px) {
  .showed .header.active .left-header {
    opacity: 0 !important;
    pointer-events: none;
  }
  .header.light .right-header {
    color: var(--color-white);
  }
  .header.light .logo::after,
  .title-page.hide {
    opacity: 0;
  }
  .header.light .logo::before,
  .smooth .header.hide .logo::after,
  .smooth .header.hide::after {
    opacity: 1;
  }
  .header.active .right-header {
    color: var(--color-normal-dark);
  }
  .title-page {
    -webkit-transition: opacity 0.5s ease-in-out, color 0.5s ease-in-out;
    transition: opacity 0.5s ease-in-out, color 0.5s ease-in-out;
  }
  .zoom-object .header {
    opacity: 0;
    pointer-events: none;
  }
  .smooth .header.hide .left-header,
  .smooth .header.hide .right-header {
    top: 0.1rem;
    color: var(--color-normal-dark);
  }
  .smooth .header.hide .logo {
    top: 0.5rem;
    left: calc(50% - 6.25rem);
    width: 12.5rem;
    height: 4rem;
  }
  .smooth .header.hide .logo::before {
    opacity: 0;
  }
  .left-header.color-normal-dark .link-social,
  .smooth .header.hide .link-social {
    border-color: currentcolor;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1100.98px) {
  .header.hide .logo,
  .smooth .header.hide .logo {
    top: 10px;
    left: 10px;
    width: 120px;
    height: 50px;
  }
}
@media screen and (max-width: 1100px) {
  .not-need {
    display: none;
    visibility: hidden;
  }
  .go-top,
  .srcoll-down {
    left: 1rem;
    width: 4rem;
    height: 4rem;
  }
  .srcoll-down {
    top: calc(var(--top-height) - 6rem);
    bottom: auto;
  }
  .srcoll-down.not-mobile,
  .wrap-logo .stroke {
    display: none;
  }
  .go-top {
    z-index: 90;
    bottom: 2rem;
  }
  .loadicon,
  .logo.center-load {
    width: 50vw;
    height: 16vw;
  }
  .logo.center-load {
    top: calc(50% - 8vw);
    left: calc(50% - 25vw);
  }
  .mask-inner svg {
    left: 5vw;
    width: 90vw;
  }
  .stroke-ani {
    stroke-width: 0.3;
  }
  .footer,
  .smooth .footer {
    position: relative;
    bottom: auto;
    left: auto;
  }
  .footer.hide {
    opacity: 1;
    pointer-events: auto;
  }
  .bottom {
    display: block;
    z-index: 20;
    padding: 1rem 5vw;
  }
  .item-policy {
    display: inline-block;
    margin: 2rem 0;
  }
  .social {
    display: block;
    width: 100%;
    text-align: center;
  }
  .social ul {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
  }
  .social p {
    display: block;
    position: relative;
    margin: 0;
    padding: 1rem;
  }
  .link-social,
  .social-second li a {
    width: 2.8rem;
    height: 2.8rem;
  }
  .copyright {
    display: block;
    padding: 2rem 0;
    text-align: center;
  }
  .container {
    height: auto;
  }
  .title-page {
    top: calc(var(--top-height) - 5rem);
    right: auto;
    left: 0;
    width: 100%;
    height: auto;
    padding: 0 5vw;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
    text-align: center;
  }
  .title-page .text-inner span {
    color: var(--color-white);
    font-size: 2rem;
  }
  .scroll-text {
    position: relative;
    top: auto;
    bottom: auto;
    left: auto;
  }
  .scroll-text.fade {
    -webkit-animation-name: fadeIn;
    animation-name: fadeIn;
    -webkit-animation-duration: 0.5s;
    animation-duration: 0.5s;
    -webkit-animation-delay: 0s;
    animation-delay: 0s;
  }
  .header.hide::after,
  .smooth .header.hide::after {
    opacity: 1;
  }
  .header.hide .left-header,
  .smooth .header.hide .left-header {
    top: 15px;
  }
  .showed .header.active .left-header {
    opacity: 0 !important;
    pointer-events: none;
  }
  .header.light:not(.hide) .right-header {
    color: var(--color-white);
  }
  .header.light:not(.hide) .logo::after {
    opacity: 0;
  }
  .header.light:not(.hide) .logo::before {
    opacity: 1;
  }
  .header.active .right-header,
  .header.active .right-header.white {
    color: var(--color-normal-dark);
  }
}
@media only screen and (min-width: 768px) and (max-width: 1100.98px) {
  .header.hide .right-header,
  .smooth .header.hide .right-header {
    top: 24px;
    color: var(--color-normal-dark);
  }
}
@media only screen and (max-width: 767.98px) {
  .header.hide .right-header,
  .smooth .header.hide .right-header {
    color: var(--color-normal-dark);
  }
}
.color-white {
  color: var(--color-white);
  text-shadow: 0 1px 1px var(--color-black-alpha-02);
}

.color-grey {
  color: var(--color-grey);
}

.color-white-grey {
  color: var(--color-white-grey);
}

.box-nav .inner .hover,
.color-highlight {
  color: var(--color-highlight);
}

.color-black {
  color: var(--color-black);
}

.color-normal {
  color: var(--color-normal);
}

.color-normal-dark {
  color: var(--color-normal-dark);
}

.color-normal-light {
  color: var(--color-normal-light);
}

.text-color,
.text-color-head,
.text-gradient {
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  background-image: var(--color-text-gradient);
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
}

.text-color-head {
  background-image: var(--color-text-red);
  background-size: 300% auto;
}

.pic-trans {
  height: 100%;
}

.pic-trans > .trans-x {
  left: -10%;
  width: 120%;
}

.pic-trans > .trans-y {
  top: -10%;
  height: 120%;
}

.pause-gsap,
.play-gsap,
.tagline {
  position: absolute;
  overflow: hidden;
}

.pause-gsap,
.play-gsap {
  display: inline-block;
  width: 0;
  height: 0;
  margin: 0.5rem auto;
  padding: 0.5rem;
  opacity: 0;
  background-color: var(--color-highlight);
  pointer-events: none;
}

.tagline {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  z-index: 10;
  bottom: 0;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 100%;
  height: auto;
  line-height: 1;
  text-align: center;
}

.tagline-inner {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  position: relative;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.tagline-inner strong {
  display: inline-block;
  font-size: 6rem;
  font-weight: 400;
  line-height: 1;
}

.tagline-inner small {
  display: inline-block;
  margin: 1.5rem 1rem 0 0;
  font-size: 4rem;
  line-height: 1;
}

.tagline-inner .char {
  opacity: 0;
  line-height: inherit;
}

.tagline-big {
  display: block;
  position: relative;
  top: -2rem;
  width: auto;
  height: auto;
  opacity: 0;
}

.tagline-big span {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  position: relative;
  margin: auto;
  font-size: 3rem;
  font-weight: 700;
}

.box-nav,
.box-nav > ul li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.box-nav {
  position: absolute;
  z-index: 10;
  top: 0;
  left: 0;
  width: auto;
  height: 100vh;
  padding: 0;
  color: var(--color-white);
}

.box-nav > ul {
  display: block;
  padding: 0 0 0 2rem;
  list-style: none;
}

.box-nav > ul,
.box-nav > ul li,
.box-nav > ul li .click {
  position: relative;
  width: auto;
  height: auto;
}

.box-nav > ul li {
  margin: 1rem 0;
  text-align: left;
}

.box-nav > ul li::before {
  content: "";
  display: block;
  position: absolute;
  width: 0.8rem;
  height: 0.8rem;
  -webkit-transform: scale(0.8);
  -ms-transform: scale(0.8);
  transform: scale(0.8);
  border: 1px solid;
  border-radius: 50%;
  border-color: currentcolor;
  opacity: 0.5;
}

.box-nav > ul li .click {
  display: block;
  padding: 0 2rem;
  color: currentcolor;
  text-transform: uppercase;
}

.box-nav > ul li .click span {
  font-size: 0.6rem;
  font-weight: 700;
}

.box-nav > ul li.current {
  opacity: 1;
  pointer-events: none;
}

.box-nav > ul li.current::before {
  -webkit-transform: none;
  -ms-transform: none;
  transform: none;
  border-color: transparent;
  opacity: 1;
  background-color: currentcolor;
}

.box-nav > ul li:last-child {
  display: none;
}

.box-nav.normal {
  color: var(--color-normal);
}

.box-slider {
  display: block;
  overflow: hidden;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.box-slider,
.content-main,
.group-central {
  position: relative;
  width: 100%;
  height: auto;
}

.group-central {
  display: block;
}

.content-main {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  min-height: 100vh;
}

.content-main::after,
.content-main::before {
  content: "";
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}

.content-group {
  display: block;
  position: relative;
  width: auto;
  height: auto;
}

.desktop-slide {
  height: 100dvh;
}

.desktop-slide .group-central {
  position: absolute;
  top: 0;
  left: 0;
  height: 100dvh;
  overflow: hidden;
  -webkit-transform: translate3d(0, 100%, 0);
  transform: translate3d(0, 100%, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  pointer-events: none;
}

.desktop-slide .group-central.show-text,
.item-library.is-active a {
  pointer-events: auto;
}

.desktop-slide .group-central:first-child {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.desktop-slide .content-main {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  padding: 2rem;
}

.bg-cover,
.bg-cover::after,
.bg-cover::before {
  position: absolute;
  left: 0;
  width: 100%;
  height: 100%;
}

.bg-cover {
  top: 0;
  overflow: hidden;
}

.bg-cover::after,
.bg-cover::before {
  content: "";
  display: none;
  bottom: 0;
  opacity: 0;
  pointer-events: none;
}

.bg-cover img,
.bg-full img,
.icon-x img,
.pic-cover img {
  display: block;
  position: relative;
  width: 100%;
  height: 100%;
  pointer-events: none;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center center;
  object-position: center center;
}

.bg-cover img.column {
  min-height: 120vh;
  margin-top: -10vh;
}

.pic-cover,
.pic-img {
  display: block;
  position: relative;
  width: 100%;
}

.pic-cover {
  z-index: 2;
  height: auto;
  overflow: hidden;
}

.pic-img {
  height: 100%;
  pointer-events: none;
}

.full-banner,
.picleft,
.picright {
  display: block;
  position: relative;
  width: auto;
  height: auto;
}

.pic-img.column {
  left: -10%;
  width: 120%;
}

.full-banner {
  width: 100%;
  overflow: hidden;
}

#about-page .home-partner .bg-cover,
.details-center.partner .load-title::before,
.full-banner .slidebox-arrows {
  display: none;
}

.overlay-hover {
  display: none;
  position: absolute;
  z-index: 5;
  top: 0;
  left: 12vw;
  width: 100%;
  height: 100%;
  opacity: 0;
}

.next-right,
.prev-left {
  display: block;
  top: 20vh;
  width: 20vw;
  height: 60vh;
}

.next-right {
  right: 0;
  left: auto;
}

.box-txt,
.box-txt ul {
  display: block;
  margin: 0;
}

.box-txt {
  position: relative;
  z-index: 5;
  width: 100%;
  height: auto;
  text-align: left;
}

.box-align h3,
.box-txt h3,
.box-txt p {
  display: block;
  position: relative;
  margin: 0 0 1rem;
}

.box-txt ul {
  list-style: none;
}

.box-txt li {
  display: block;
  margin: 0 0 1rem;
}

.box-txt li > p {
  margin: 0;
}

.text-quote {
  padding-left: 6rem;
}

.text-quote::before {
  content: "";
  position: absolute;
  top: -3rem;
  left: 0;
  width: 6rem;
  height: 6rem;
}

.box-align,
.box-align li,
.box-align > ul,
.box-txt li,
.box-txt ul {
  position: relative;
  width: 100%;
}

.box-align {
  display: block;
  height: auto;
}

.box-align p {
  font-size: 0.8rem;
}

.box-align > ul {
  display: grid;
  grid-template-columns: auto auto;
  list-style: none;
}

.box-align li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin: 0 0 0.5rem;
}

.box-align strong {
  display: block;
  color: var(--color-highlight);
  font-size: 110%;
}

.box-align li p,
.icon-x,
.text-content,
.text-content li p {
  display: block;
  position: relative;
}

.icon-x {
  width: 5vw;
  min-width: 5vw;
  height: 5vw;
  margin-right: 1rem;
  padding: 0.3rem;
  border-radius: 50%;
  background-color: var(--color-normal);
}

.text-content {
  z-index: 5;
  width: auto;
  height: auto;
}

.text-content > ul {
  margin: 0;
  list-style: none;
}

.text-content li {
  position: relative;
  width: 100%;
  height: auto;
}

.bgx-slide {
  display: block;
  position: absolute !important;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  overflow: hidden;
}

.banner-home,
.bg-full,
.bgx-item,
.text-content > ul {
  display: block;
  position: relative;
  width: 100%;
}

.bgx-item {
  height: 100vh;
}

.home-intro .content-main,
.home-video .content-main {
  display: block;
  padding: 0;
}

.banner-home,
.bg-full {
  overflow: hidden;
}

.banner-home {
  height: 100vh;
  background-color: var(--color-normal);
}

.bg-full {
  height: 100%;
}

.bg-full::after,
.faci-item::after {
  content: "";
  position: absolute;
  left: 0;
  width: 100%;
  background: var(--color-black-gradient);
}

.bg-full::after {
  bottom: 0;
  height: 30%;
  mix-blend-mode: multiply;
  opacity: 0;
  pointer-events: none;
}

.home-about .content-main {
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  padding: 0 7rem;
}

.home-about .pic-cover {
  position: absolute;
  top: 18vh;
  left: 15rem;
  width: 45vw;
  height: 70vh;
  border-radius: 0 15vw;
}

.home-about .pic-cover img {
  -o-object-position: 80% center;
  object-position: 80% center;
}

.home-about .text-content {
  width: 35vw;
}

.home-about .box-txt {
  text-align: justify;
}

.home-about .wrap-view-more {
  padding-left: 6rem;
}

.home-lifestyle .content-main {
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  padding: 0;
}

.lifestyle-item,
.lifestyle-slide {
  display: block;
  position: relative;
  height: 100vh;
}

.lifestyle-slide {
  width: 125vh;
}

.lifestyle-item {
  width: 100%;
}

.lifestyle-item .pic-cover {
  height: 100%;
}

.lifestyle-item.is-active .pic-img > img {
  -webkit-animation-name: scaleBright;
  animation-name: scaleBright;
  -webkit-animation-duration: 1.5s;
  animation-duration: 1.5s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.lifestyle-text {
  display: block;
  position: relative;
  z-index: 5;
  width: 30vw;
  height: auto;
}

.lifestyle-item-text {
  display: block;
  position: relative;
  width: 100%;
  height: 100%;
}

.lifestyle-item-text .text-content {
  width: 100%;
  padding: 20vh 0;
}

.lifestyle-item-text .box-txt {
  padding: 0 5vw 0 0;
  text-align: justify;
}

.lifestyle-text .slidebox-arrows {
  bottom: 5vh;
  left: 18vw;
}

.lifestyle-item-text .text-break::before {
  content: "";
  position: absolute;
  bottom: -1vw;
  left: 0;
  width: 15vw;
  height: 15vw;
  opacity: 0;
}

.home-facilities .content-main {
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  padding: 0;
}

.home-facilities .wrap-content {
  width: 75vw;
  height: 60vh;
  margin-bottom: 5vh;
}

.faci-item,
.faci-slide {
  display: block;
  position: relative;
  margin: 0;
}

.faci-slide {
  z-index: 5;
  width: 100%;
  height: 100%;
}

.faci-item {
  width: 13vw;
  height: 20vw;
  padding: 0;
  overflow: hidden;
  -webkit-transition: height 0.6s ease-in-out, -webkit-filter 0.6s ease-in-out;
  transition: height 0.6s ease-in-out, -webkit-filter 0.6s ease-in-out;
  transition: filter 0.6s ease-in-out, height 0.6s ease-in-out;
  transition: filter 0.6s ease-in-out, height 0.6s ease-in-out, -webkit-filter 0.6s ease-in-out;
  border-radius: 1rem;
  aspect-ratio: 1;
  -webkit-filter: brightness(50%);
  filter: brightness(50%);
}

.faci-item .pic-cover {
  height: 100%;
  -webkit-transform-origin: center center;
  -ms-transform-origin: center center;
  transform-origin: center center;
  border-radius: 1rem;
}

.faci-item::after {
  z-index: 3;
  top: 0;
  height: 100%;
  border-radius: 1rem;
}

.faci-item .box-txt {
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: auto;
  margin: 0;
  padding: 1rem;
}

.faci-item .box-txt h3 {
  margin: 0;
  color: currentcolor;
  font-size: 1rem;
  text-transform: uppercase;
}

.faci-slide .slidebox-track {
  height: 100%;
  overflow: visible;
}

.faci-slide .slidebox-list {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.faci-item.is-active {
  width: 50vw;
  height: 28.125vw;
  -webkit-box-shadow: 0.5rem 0.5rem 1rem 0 var(--color-black-alpha-03);
  box-shadow: 0.5rem 0.5rem 1rem 0 var(--color-black-alpha-03);
  aspect-ratio: 16/9;
  -webkit-filter: brightness(110%) contrast(110%);
  filter: brightness(110%) contrast(110%);
}

.faci-item.is-active .box-txt {
  bottom: -100%;
}

.faci-item.is-active::after {
  opacity: 0;
}

.bg-slide {
  position: absolute !important;
  top: 0;
  left: 0;
  width: 100%;
  mix-blend-mode: multiply;
}

.bg-slide .bg-cover {
  position: relative;
}

.bg-slide,
.bg-slide .bg-cover img {
  height: 100vh;
}

.text-slide {
  z-index: 10;
  width: 100%;
  max-width: 50vw;
  height: auto;
  margin: -5vh 0 0;
  padding: 0 2rem;
}

.text-slide,
.tilte-slide,
.tilte-slide h3 {
  display: block;
  position: relative;
}

.tilte-slide {
  width: 100%;
  height: auto;
}

.tilte-slide .box-txt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 0.5rem 0;
  opacity: 0;
}

.tilte-slide .number-usp {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 4rem;
  height: 4rem;
  border-radius: 50%;
  background: var(--color-highlight);
  font-size: 1.5rem;
}

.tilte-slide h3 {
  margin: 2rem 0 0 1rem;
  font-size: 1.5rem;
  font-weight: 700;
  text-transform: uppercase;
}

.tilte-slide.is-active .box-txt {
  -webkit-animation-name: fadeInDown;
  animation-name: fadeInDown;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.text-slide .slidebox-arrows {
  top: 0;
  left: 60vw;
}

.home-facilities .wrap-slide {
  position: absolute;
  bottom: 0;
  left: 8rem;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: auto;
  height: auto;
}

.home-facilities .title-main {
  margin: 0 2rem 0 0;
}

.home-facilities .text-break {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin: 0;
}

.home-facilities .text-break > small {
  font-family: Montserrat, sans-serif;
  font-size: 1.5vw;
  font-weight: 700;
}

.home-facilities .text-break > strong {
  font-size: 5vw;
}

.home-location .content-main {
  padding: 0 0 0 15vw;
}

.home-location .text-content {
  width: 30vw;
  padding: 0 3rem 0 0;
}

.home-location .text-break {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.home-location .text-break > small {
  font-size: 4vw;
}

.home-location .text-break > small:last-child,
.location-intro .text-break > small:last-child {
  padding: 0 0 0 5vw;
}

.home-location .box-txt {
  text-align: justify;
}

.box-cover-right,
.viewer {
  position: absolute;
  top: 0;
  overflow: hidden;
}

.box-cover-right {
  z-index: 3;
  left: 0;
  width: 100%;
  height: 100%;
}

.box-cover-right::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.map-img,
.map-img > img,
.map-svg,
.panzoom {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.map-img > img,
.map-svg {
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center center;
  object-position: center center;
}

.map-dot .map-svg {
  z-index: 5;
}

.map-img image,
.map-top,
.pointer-map {
  pointer-events: none;
}

.pointer-map {
  -webkit-transform: translate(1000px, 455px);
  -ms-transform: translate(1000px, 455px);
  transform: translate(1000px, 455px);
  -webkit-transform-origin: center bottom;
  -ms-transform-origin: center bottom;
  transform-origin: center bottom;
}

.st-line {
  stroke-width: 3px;
  stroke-dasharray: 5;
  stroke-dashoffset: 0;
  stroke: var(--color-white-grey);
  fill: none;
  stroke-miterlimit: 5;
}

.st-line.sm {
  stroke-width: 1px;
}

.st-line.more {
  stroke: var(--color-normal-light);
}

.c-dot {
  opacity: 0;
}

.c-path,
.c-path-no {
  fill: var(--color-white);
  -webkit-filter: drop-shadow(0.05rem 0.05rem 0.05rem var(--color-black-alpha-03));
  filter: drop-shadow(0.05rem 0.05rem 0.05rem var(--color-black-alpha-03));
}

.map-img.show .c-path.on-view {
  fill: url("#gradient-dot");
}

.map-img.show .c-path-no.on-view {
  fill: url("#gradient-dot-2");
}

.map-img.show .st-line {
  -webkit-animation: StrokeLine 3s infinite linear;
  animation: StrokeLine 3s infinite linear;
}

.dot-p {
  cursor: pointer;
}

.dot-p,
.text-map {
  -webkit-transform-origin: center center;
  -ms-transform-origin: center center;
  transform-origin: center center;
}

.compass {
  top: 20vh;
  right: 2rem;
}

.compass,
.compass-3,
.compass-4 {
  position: absolute;
  z-index: 10;
  width: 5rem;
  height: 5rem;
}

.button-zoom {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: absolute;
  z-index: 20;
  top: calc(50% - 3.5rem);
  right: 2rem;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: auto;
  height: auto;
}

.pic-zoom-in,
.pic-zoom-out {
  display: block;
  position: relative;
  width: 3rem;
  height: 3rem;
  margin: 0.5rem;
  border-radius: 50%;
  color: var(--color-white);
}

.pic-zoom-out {
  opacity: 0.5;
  pointer-events: none;
}

.pic-zoom-out.no-disable {
  opacity: 1;
  pointer-events: auto;
}

.pic-zoom-in svg,
.pic-zoom-out svg {
  display: block;
  position: relative;
  z-index: 5;
  width: 80%;
  height: 80%;
  margin: 10%;
}

.pic-zoom-in::before,
.pic-zoom-out::before {
  content: "";
  position: absolute;
  top: -10%;
  left: -10%;
  width: 120%;
  height: 120%;
  -webkit-animation: Preloader 3s alternate infinite;
  animation: Preloader 3s alternate infinite;
  border: 2px solid transparent;
  border-radius: 50%;
  background: var(--color-border-gradient) border-box;
  -webkit-mask: -webkit-gradient(linear, left top, left bottom, color-stop(0, var(--color-white))) padding-box, -webkit-gradient(linear, left top, left bottom, color-stop(0, var(--color-white)));
  -webkit-mask: linear-gradient(var(--color-white) 0 0) padding-box, linear-gradient(var(--color-white) 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
}

.pic-zoom-in::after,
.pic-zoom-out::after {
  content: "";
  position: absolute;
  top: 5%;
  left: 5%;
  width: 90%;
  height: 90%;
  border-radius: 50%;
}

.pic-zoom-in::after,
.pic-zoom-out.no-disable::after {
  background-color: var(--color-highlight);
}

.pic-zoom-out::after {
  background-color: var(--color-grey-light);
}

.ratio-4-3 .button-zoom {
  right: 5rem;
  left: auto;
}

.info-box {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.faci-text,
.show-box {
  width: auto;
  height: auto;
}

.show-box {
  position: absolute;
  z-index: 500;
  top: auto;
  right: auto;
  left: auto;
  max-width: 20rem;
  padding: 0.5rem;
  -webkit-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out;
  border-radius: 1rem;
  background-color: var(--color-white);
  -webkit-box-shadow: 0 1.5rem 2rem 0 var(--color-black-alpha-01);
  box-shadow: 0 1.5rem 2rem 0 var(--color-black-alpha-01);
  color: var(--color-normal);
  text-align: center;
  text-shadow: 0 1px 1px var(--color-black-alpha-01);
  cursor: pointer;
}

.faci-text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-size: 0.7rem;
}

.box-partner h3,
.faci-text p {
  display: block;
  position: relative;
}

.faci-text p {
  padding: 0 10px;
  text-align: left;
  white-space: normal;
}

.show-box {
  -webkit-transform: scale(0);
  -ms-transform: scale(0);
  transform: scale(0);
  opacity: 0;
}

.show-box.showup {
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
  opacity: 1;
}

.home-partner .content-main {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  padding: 18vh 0 0;
}

.home-partner .bg-cover {
  top: auto;
  bottom: 0;
  height: 45vw;
}

.home-partner .pic-img img {
  -o-object-position: center bottom;
  object-position: center bottom;
}

.box-partner,
.group-logo {
  position: relative;
  z-index: 5;
  height: auto;
}

.group-logo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 100%;
  max-width: 60rem;
  margin: 2vh auto;
}

.box-partner {
  display: inline-block;
  width: auto;
  padding: 0 2rem;
}

.box-partner h3 {
  margin: 1rem 0;
  color: var(--color-normal);
  font-size: 0.8rem;
  text-align: center;
  text-transform: uppercase;
}

.logo-partner,
.logo-partner img {
  display: block;
  position: relative;
  width: auto;
  height: auto;
}

.logo-partner {
  -webkit-box-flex: 0;
  -ms-flex: none;
  flex: none;
  margin: auto;
}

.logo-partner img {
  max-width: 15rem;
  max-height: 6rem;
  margin: 0 auto;
  pointer-events: none;
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center center;
  object-position: center center;
}

.box-partner .wrap-view-more {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 1rem;
}

.box-partner .icon-svg {
  width: 4rem;
  height: 4rem;
}

.link-partner {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.group-logo.bottom-group,
.group-logo.center-group {
  max-width: 70vw;
}

.group-logo.center-group .box-partner:nth-child(3) {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.group-logo.center-group .box-partner:nth-child(3) h3 {
  width: 100%;
}

.group-logo.center-group .logo-partner img {
  max-width: 12rem;
  max-height: 5rem;
}

.group-logo.bottom-group .logo-partner img {
  max-width: 10rem;
  max-height: 5rem;
}

.bottom-group {
  display: block;
}

.bottom-group h3 {
  margin: 1rem 0;
  color: var(--color-normal);
  font-size: 0.8rem;
  text-align: center;
  text-transform: uppercase;
}

.bottom-group h3,
.slide-partner {
  display: block;
  position: relative;
  width: 100%;
  height: auto;
}

.home-contact .content-main {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 0 3rem 0 15vw;
}

.home-contact .pic-cover {
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2;
  width: 45vw;
  height: 70vh;
  border-radius: 0 15vw;
}

.home-contact .content-group {
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
  width: 35vw;
}

.home-contact .text-break {
  display: block;
  margin-bottom: 1rem;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.4;
}

.box-info {
  padding: 0 5vw 0 0;
}

.box-info > li {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: auto;
  margin: 0 0 1rem;
}

.box-info > li .icon {
  display: block;
  position: relative;
  -webkit-box-flex: 0;
  -ms-flex: none;
  flex: none;
  width: 1.6rem;
  height: 1.6rem;
  margin: 0 1rem 0 0;
}

.box-info > li a,
.box-info > li p {
  display: inline-block;
  position: relative;
  text-align: justify;
}

.box-info > li a {
  margin: 0 1rem 0 0;
}

.box-info > li:last-child {
  width: 100%;
}

.register .content-main {
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  padding: 0 3rem;
}

.register .text-break {
  display: block;
  margin-bottom: 0;
}

.register .text-break > strong {
  display: block;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
}

.group-time,
.wrap-form {
  position: relative;
  width: 100%;
  height: auto;
}

.wrap-form {
  display: block;
  z-index: 5;
  max-width: 30rem;
}

.register.revert .content-main {
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  padding: 0 7rem;
}

.about-intro .content-main {
  padding: 0 0 0 14vw;
}

.about-intro .bg-cover {
  left: 10vw;
}

.about-intro .tagline {
  position: relative;
  bottom: auto;
  padding-left: 0.5rem;
  text-align: left;
}

.about-intro .tagline,
.about-intro .tagline-inner,
.opt-02 .title-key > div {
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
}

.about-intro .text-content {
  width: 35rem;
}

.project-scale .content-main {
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  padding: 0 7rem;
}

.project-scale .text-content {
  width: 30rem;
}

.project-scale .box-txt li {
  margin: 0;
}

.project-scale .box-txt p {
  margin: 0 0 0.5rem;
}

.details-center.partner .load-title h2 {
  color: var(--color-white);
  font-size: 3rem;
}

.details-center.partner {
  padding: 1rem 0;
  overflow: hidden;
  border-radius: 2rem;
}

.contact-page .content-main {
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  padding: 0 7rem;
}

.contact-page .text-content {
  width: 30rem;
}

.location-intro .content-main {
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  padding: 0 7rem;
}

.location-intro .text-content {
  width: 35rem;
}

.location-intro .text-break {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.library .text-break > strong,
.location-intro .text-break > small {
  font-size: 5vw;
}

.location-intro .srcoll-down {
  position: relative;
  bottom: auto;
  left: auto;
  width: 6rem;
  height: 6rem;
  margin: 2rem auto;
  color: var(--color-highlight);
  cursor: pointer;
  pointer-events: auto;
}

#location-page .home-location .content-main {
  display: block;
  padding: 0;
}

#location-page .home-location .bg-cover {
  width: 100vh;
  height: 100vh;
}

#location-page .viewer {
  right: 0;
}

#location-page .panzoom {
  top: 6vh;
}

#location-page .panzoom.zoom-active {
  top: 0;
}

#location-page .home-location .mask-right {
  -webkit-mask-image: var(--color-mask);
  mask-image: var(--color-mask);
}

.location-extra .content-main {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 3rem 0 0 10vw;
}

.location-extra .text-content {
  width: 50vw;
  margin: 0 3rem;
}

.location-extra .pic-cover {
  width: 35vw;
}

.location-extra .title-main {
  margin-bottom: 1rem;
  color: var(--color-highlight);
}

.group-time {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0 3vw;
}

.box-time {
  display: inline-block;
  position: relative;
  color: var(--color-normal);
}

.box-time .time {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-flex: 0;
  -ms-flex: none;
  flex: none;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin: 0 0 1rem -2rem;
}

.box-time .time span {
  width: 4rem;
  height: 4rem;
  margin-right: -1rem;
}

.box-time .time small {
  position: relative;
  margin-left: 0.5rem;
  font-size: 0.6rem;
}

.big-thumb,
.box-time .time p,
.box-time .time span {
  display: block;
  position: relative;
}

.box-time .time p {
  font-size: 1.5vw;
  font-weight: 700;
}

.time-location {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  margin: 0;
}

.time-location ul {
  position: relative;
  list-style: disc;
}

.time-location li p {
  margin-bottom: 0.3rem;
  font-family: var(--font-note);
  font-size: 0.7rem;
  white-space: nowrap;
}

.big-thumb {
  width: 100%;
  height: 100%;
  overflow: hidden;
  -webkit-transform: scale(0.8);
  -ms-transform: scale(0.8);
  transform: scale(0.8);
  -webkit-transform-origin: center center;
  -ms-transform-origin: center center;
  transform-origin: center center;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  border-radius: 2rem;
  cursor: pointer;
  pointer-events: none;
  aspect-ratio: 16/9;
}

.big-thumb::after {
  content: "";
  position: absolute;
  z-index: 5;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 50%;
  background: var(--color-black-thumb);
  mix-blend-mode: multiply;
}

.big-thumb .pic-cover {
  left: -10%;
  width: 120%;
  height: 100%;
}

.title-pic {
  display: block;
  position: absolute;
  z-index: 5;
  padding: 1rem 2rem;
  opacity: 0;
  text-align: center;
}

.title-pic .text-small,
.title-pic h3 {
  position: relative;
  font-weight: 700;
  text-transform: uppercase;
}

.title-pic .text-small {
  display: block;
  margin-bottom: 0.3rem;
  font-size: 0.7rem;
}

.title-pic h3 {
  display: inline-block;
  z-index: 1;
  color: currentcolor;
  font-size: 2rem;
}

.gallery-slide {
  display: block;
  position: relative;
  z-index: 5;
  width: 50rem;
  margin: 3vh auto;
}

.gallery-slide .slidebox-track {
  overflow: visible;
}

.gallery-slide .slidebox-list {
  height: auto;
}

.gallery-slide .slidebox-arrows {
  top: calc(100% - 1rem);
  right: -14rem;
}

.item-library {
  padding: 0 1rem;
}

.item-library .view-album {
  right: 3rem;
  bottom: 2rem;
  opacity: 0;
  pointer-events: none;
}

.item-library .download-pdf,
.item-library .view-video,
.item-library .view-virtual {
  top: calc(50% - 3rem);
  left: calc(50% - 3rem);
  opacity: 0;
  pointer-events: none;
}

.item-library.is-active .big-thumb {
  -webkit-box-shadow: 0 1.5rem 1.5rem 0 var(--color-black-alpha-02);
  box-shadow: 0 1.5rem 1.5rem 0 var(--color-black-alpha-02);
  pointer-events: auto;
}

.item-library:not(.slidebox-item-clone).is-active .title-pic,
.item-library:not(.slidebox-item-clone).is-active a {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.item-library:not(.slidebox-item-clone).is-active .title-pic {
  -webkit-animation-delay: 0.2s;
  animation-delay: 0.2s;
}

.item-library:not(.slidebox-item-clone).is-active .big-thumb {
  -webkit-transform: none;
  -ms-transform: none;
  transform: none;
}

.library .title-main {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: absolute;
  bottom: 0;
  left: 0;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 100%;
  padding: 2rem 5vw;
  text-align: center;
}

.library .text-break {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: auto;
  margin: 0;
}

.brochure-library .content-main {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 4rem 15rem;
}

.brochure-content {
  width: calc(60vh + 2rem);
  margin: -5rem auto 0;
}

.brochure-item {
  display: block;
  position: relative;
  width: auto;
  height: 60vh;
  margin: auto;
  -webkit-transition: opacity 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out;
  opacity: 0.3;
  aspect-ratio: 1;
}

.brochure-item .big-thumb {
  width: 60vh;
  height: 60vh;
  margin: auto;
  border-radius: 50%;
  aspect-ratio: 1;
}

.brochure-item .big-thumb::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background: var(--color-border);
  pointer-events: none;
}

.brochure-item .big-thumb::after {
  pointer-events: none;
}

.brochure-item .big-thumb .pic-cover,
.brochure-item .big-thumb::after {
  top: 0.5rem;
  left: 0.5rem;
  width: calc(100% - 1rem);
  height: calc(100% - 1rem);
  border-radius: 50%;
}

.brochure-item .title-pic {
  bottom: 2rem;
  width: 100%;
}

.brochure-content .slidebox-arrows {
  top: 50%;
  right: auto;
  left: -6rem;
  width: calc(100% + 12rem);
  height: 0;
}

.brochure-item:not(.slidebox-item-clone).is-active {
  opacity: 1;
}

.picture-library .content-main {
  padding: 2rem 15rem;
}

.picture-item {
  aspect-ratio: 16/9;
  display: block;
  height: auto;
}

.picture-item .title-pic {
  bottom: 1rem;
  left: 1rem;
  text-align: left;
}

.video-library .content-main {
  padding: 2rem 0;
}

.master-map,
.picture-item,
.video-item {
  position: relative;
  width: 100%;
}

.video-item {
  display: block;
  height: auto;
  -webkit-transition: opacity 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out;
  opacity: 0.3;
  aspect-ratio: 16/9;
}

.video-item.is-active {
  opacity: 1;
}

.video-item .title-pic {
  bottom: 1rem;
  left: 0;
  width: 100%;
  text-align: center;
}

.video-content .slidebox-arrows {
  top: 50%;
  right: auto;
  left: -6rem;
  width: calc(100% + 12rem);
  height: 0;
}

.virtual-library .content-main {
  padding: 2rem 0;
}

.block .content-main,
.masterplan .content-main {
  display: block;
  padding: 0;
}

.block .compass,
.masterplan .compass {
  top: 15vh;
  right: auto;
  left: 5%;
}

.master-map {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  height: 100vh;
  overflow: hidden;
}

.master-bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 2310px;
  height: 1400px;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
}

.block .master-bg::after,
.master-bg::before {
  content: "";
  position: absolute;
  top: 0;
  pointer-events: none;
  -webkit-backdrop-filter: blur(5px);
  backdrop-filter: blur(5px);
}

.master-bg::before {
  left: 0;
  width: 100%;
  height: 25rem;
  -webkit-mask: -webkit-gradient(linear, left top, left bottom, color-stop(0, #000), color-stop(50%, #000), to(transparent));
  -webkit-mask: linear-gradient(180deg, #000 0, #000 50%, transparent 100%);
}

.block .master-bg::after {
  right: 0;
  width: 30rem;
  height: 100%;
  -webkit-mask: -webkit-gradient(linear, right top, left top, color-stop(0, #000), color-stop(50%, #000), to(transparent));
  -webkit-mask: linear-gradient(-90deg, #000 0, #000 50%, transparent 100%);
}

[data-name=masterplan-02] .block .master-bg::after {
  right: auto;
  left: 0;
  -webkit-mask: -webkit-gradient(linear, left top, right top, color-stop(0, #000), color-stop(50%, #000), to(transparent));
  -webkit-mask: linear-gradient(90deg, #000 0, #000 50%, transparent 100%);
}

.floor-02 .master-bg::before,
.floor-03-B .master-bg::before,
.floor-36-37 .master-bg::before {
  -webkit-mask: -webkit-gradient(linear, left top, left bottom, color-stop(0, #000), color-stop(80%, #000), to(transparent));
  -webkit-mask: linear-gradient(180deg, #000 0, #000 80%, transparent 100%);
}

.masterplan .title-main {
  position: absolute;
  top: 14vh;
  left: calc(5% + 5rem);
  width: auto;
  text-align: center;
}

.block .title-main {
  position: absolute;
  top: 12vh;
  left: 0;
  width: 100%;
  text-align: center;
}

.block .text-break,
.masterplan .text-break {
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: auto;
}

.block .text-break > small,
.masterplan .text-break > small {
  margin: 1rem 0;
  font-family: Montserrat, sans-serif;
  font-size: 1.4vw;
  font-weight: 700;
  text-transform: uppercase;
}

.block .text-break > small:last-child,
.facilities .text-break > small:last-child,
.masterplan .text-break > small:last-child {
  margin: 1rem;
}

.masterplan .text-break > strong {
  font-size: 7vw;
}

.block .text-break > strong {
  font-size: 5vw;
}

[data-name=masterplan-02] .block .title-main {
  top: 20vh;
  width: 60%;
}

[data-name=block-A] {
  background-color: var(--block-A);
  fill: var(--block-A);
}

[data-name=block-B] {
  background-color: var(--block-B);
  fill: var(--block-B);
}

.hover-svg {
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}

.hover-svg.show {
  pointer-events: auto;
}

.hover-block {
  cursor: pointer;
}

.hover-block.disable {
  pointer-events: none;
}

.name-block,
.slide-pic-nav .arrow svg {
  -webkit-transform-origin: center center;
  -ms-transform-origin: center center;
  transform-origin: center center;
}

.name-block text {
  fill: var(--color-white);
  font-weight: 700;
}

.name-block line {
  stroke-width: 1px;
  stroke: var(--color-white);
}

.name-block .block-stroke {
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  stroke-width: 5px;
  stroke-dasharray: 3000;
  stroke-dashoffset: 3000;
  stroke: var(--color-white);
  fill: var(--color-highlight-alpha);
  fill-opacity: 0;
}

.name-block.showbox .block-stroke {
  fill: var(--color-highlight);
  fill-opacity: 1;
}

.name-block .ani-fill {
  fill: url("#cir-dot");
}

.note-available,
.note-available::after,
.wrap-note {
  position: absolute;
  width: 100%;
  height: auto;
}

.note-available {
  display: inline-block;
  z-index: 20;
  width: auto;
  padding: 1rem 1.2rem;
  -webkit-transform: scale(0);
  -ms-transform: scale(0);
  transform: scale(0);
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  opacity: 0;
  background-color: transparent;
  pointer-events: none;
}

.note-available::after {
  content: "";
  top: 0;
  left: 0;
  height: 100%;
  border-radius: 1rem;
  -webkit-box-shadow: 0 1.5rem 2rem 0 var(--color-black-alpha-02);
  box-shadow: 0 1.5rem 2rem 0 var(--color-black-alpha-02);
}

.note-available .info,
.note-available h3 {
  display: block;
  position: relative;
  z-index: 5;
  width: 100%;
  height: auto;
  text-align: center;
}

.note-available h3 {
  margin-bottom: 0.5rem;
  font-size: 1.5rem;
  text-transform: uppercase;
}

.note-available .info {
  max-width: 15rem;
  overflow: hidden;
}

.note-available .info p {
  line-height: 1.4;
}

.note-01 {
  top: 23%;
  left: 37.5%;
}

.note-02 {
  top: 63%;
  left: 63.5%;
}

.note-01::after {
  background: var(--color-bg-gradient-2);
}

.note-02::after {
  background: var(--color-bg-gradient);
}

.note-available.showbox {
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
  opacity: 1;
}

.block-note,
.block-note li,
.block-note ul {
  width: auto;
  height: auto;
}

.block-note ul {
  list-style: none;
}

.block-note li {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  position: relative;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin: 0.5rem;
}

.block-note li span {
  width: 1.4rem;
  height: 1.4rem;
  margin-right: 0.5rem;
  border: 1px solid var(--color-white-alpha);
  border-radius: 0.2rem;
}

.block-note,
.block-note li p,
.block-note li span,
.block-note ul {
  display: block;
  position: relative;
}

.block-note li p strong {
  display: block;
  font-size: 0.7rem;
}

.all-dot {
  position: absolute;
  z-index: 10;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.note-faci {
  z-index: 5;
  bottom: 3vh;
  height: auto;
  text-align: center;
}

.block-note li p,
.key-block p,
.note-faci span {
  font-size: 0.6rem;
  text-transform: uppercase;
}

.note-faci span,
.title-block h3 {
  position: relative;
  font-weight: 700;
}

.note-faci span {
  display: inline-block;
  width: auto;
  height: auto;
  padding: 10px 15px;
  color: var(--color-light);
}

.block .block-note,
.masterplan .block-note {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: absolute;
  bottom: 12vh;
  left: 0;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 100%;
}

.block .block-note ul,
.masterplan .block-note ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.block-svg,
.note-faci,
.title-block {
  position: absolute;
  left: 0;
  width: 100%;
  pointer-events: none;
}

.title-block {
  display: block;
  z-index: 10;
  top: 3vh;
  height: auto;
  text-align: center;
}

.title-block h3 {
  display: block;
  color: var(--color-highlight);
  font-size: 1rem;
  text-transform: uppercase;
}

.title-block h3 strong {
  display: block;
  position: relative;
  color: var(--color-white);
  font-family: var(--font-spec);
  font-size: 3rem;
  font-weight: 400;
  line-height: 1;
}

.block-svg {
  z-index: 1;
  top: 0;
  height: 100%;
}

.block-svg.show {
  pointer-events: auto;
}

.block-area {
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  stroke-width: 1;
  stroke: var(--color-white);
  cursor: pointer;
  fill-opacity: 0;
  stroke-opacity: 0;
}

.block-area.show {
  fill-opacity: 1;
  -webkit-filter: drop-shadow(0.2rem 0.3rem 0.5rem var(--color-black-alpha-03));
  filter: drop-shadow(0.2rem 0.3rem 0.5rem var(--color-black-alpha-03));
  stroke-opacity: 1;
}

.text-house {
  -webkit-transform-origin: center center;
  -ms-transform-origin: center center;
  transform-origin: center center;
  pointer-events: none;
}

.text-house text {
  fill: var(--color-normal);
  font-size: 0.6rem;
  font-weight: 700;
}

[data-name=office] {
  background-color: var(--office);
}

[data-name=shophouse] {
  background-color: var(--shophouse);
}

[data-name=trendy] {
  background-color: var(--trendy);
}

[data-name=classy] {
  background-color: var(--classy);
}

[data-name=morden] {
  background-color: var(--morden);
}

[data-name=morden-1] {
  background-color: var(--morden-1);
}

[data-name=morden-2] {
  background-color: var(--morden-2);
}

[data-name=morden-3] {
  background-color: var(--morden-3);
}

[data-name=morden-4] {
  background-color: var(--morden-4);
}

[data-name=elegant] {
  background-color: var(--elegant);
}

.shophouse {
  background-color: var(--shophouse);
}

.trendy {
  background-color: var(--trendy);
}

.classy {
  background-color: var(--classy);
}

.morden {
  background-color: var(--morden);
}

.morden-1 {
  background-color: var(--morden-1);
}

.morden-2 {
  background-color: var(--morden-2);
}

.morden-3 {
  background-color: var(--morden-3);
}

.morden-4 {
  background-color: var(--morden-4);
}

.elegant {
  background-color: var(--elegant);
}

.info-house,
.key-block {
  position: absolute;
  height: auto;
}

.key-block {
  display: block;
  z-index: 10;
  right: 5vw;
  bottom: 8vh;
  max-width: 14rem;
}

.key-block > .compass {
  top: 0;
  right: 0;
  left: auto;
  width: 3rem;
  height: 3rem;
}

.key-block p {
  top: 0.1rem;
}

.key-block strong,
.note-available .info p {
  display: block;
  position: relative;
  font-size: 0.8rem;
}

.key-block .key,
.key-block img {
  display: block;
  width: 100%;
  height: auto;
}

.key-block img {
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center center;
  object-position: center center;
}

.info-house {
  z-index: 60;
  top: 0;
  left: 0;
  width: 100%;
}

.key-block p,
.keyplan-svg svg,
.list-info,
.share-item a .icon div {
  display: block;
  position: relative;
  width: 100%;
  height: auto;
}

.house-text {
  position: absolute;
  z-index: 120;
  top: 50%;
  left: 50%;
  width: auto;
  max-width: 15rem;
  height: auto;
  padding: 0.2rem;
  -webkit-transform: scale(0);
  -ms-transform: scale(0);
  transform: scale(0);
  border-radius: 0.6rem;
  opacity: 0;
  background-color: var(--color-white);
  -webkit-box-shadow: 0 1.5rem 2rem 0 var(--color-black-alpha-02);
  box-shadow: 0 1.5rem 2rem 0 var(--color-black-alpha-02);
  color: var(--color-normal);
  text-align: left;
}

.house-text::after {
  content: "";
  position: absolute;
  top: calc(50% - 1rem);
  left: -0.8rem;
  width: 0;
  height: 0;
  margin: 0;
  border-width: 1rem 1rem 1rem 0;
  border-style: solid;
  border-color: transparent var(--color-white) transparent transparent;
}

.num-block,
.num-block p {
  display: block;
  position: relative;
}

.num-block {
  width: 100%;
  height: auto;
  margin: 0;
  padding: 0.2rem 0.5rem;
  border-radius: 0.5rem 0.5rem 0 0;
  background-color: var(--color-normal);
}

.num-block p {
  color: var(--color-white);
  font-size: 1rem;
}

.num-block span {
  position: absolute;
  z-index: 2;
  top: 0.5rem;
  right: 0.5rem;
  width: 1.6rem;
  height: 1.6rem;
  border: 1px solid var(--color-white);
  border-radius: 0.3rem;
}

.area-des,
.area-des h3,
.go-link {
  position: relative;
  font-size: 0.7rem;
}

.area-des {
  display: block;
  width: 100%;
  height: auto;
  padding: 0.5rem;
  color: var(--color-normal);
}

.area-des h3,
.go-link {
  text-transform: uppercase;
}

.area-des h3 {
  display: block;
  margin: 0 0 0.3rem;
  font-weight: 400;
  line-height: 1;
}

.area-des small,
.num-block p {
  font-weight: 700;
  text-transform: uppercase;
}

.area-des p,
.area-des small,
.house-title small {
  display: block;
  position: relative;
  font-size: 0.7rem;
}

.area-des h3 strong,
.area-des p strong {
  font-size: 120%;
}

.go-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 0;
  padding: 0.3rem 0.8rem;
  border-radius: 0 0 0.5rem 0.5rem;
  background-color: var(--color-highlight);
  color: var(--color-white);
  font-weight: 700;
  text-align: center;
}

.house-text.showup {
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-delay: 0s;
  animation-delay: 0s;
  pointer-events: auto;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.is-touch .house-text {
  cursor: pointer;
}

.is-touch .house-text::after {
  display: none;
}

.load-apartment {
  display: none;
  position: fixed;
  z-index: 30;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  opacity: 0;
}

.bg-house {
  overflow: hidden;
  -webkit-transition: opacity 1s ease-in-out;
  transition: opacity 1s ease-in-out;
  opacity: 0;
  background: var(--color-normal);
}

.bg-house .bg-house-img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}

.bg-house.show {
  opacity: 1;
}

.bg-house.show .bg-house-img {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
  -webkit-animation-delay: 0.5s;
  animation-delay: 0.5s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.bg-house,
.house-load {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.house-detail {
  display: block;
  position: relative;
  z-index: 20;
  width: 100%;
  height: 100vh;
  text-align: center;
}

.house-detail::after {
  content: "";
  position: absolute;
  bottom: -2rem;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
}

.house-detail.show-house::after {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-delay: 1s;
  animation-delay: 1s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.apartment-pic,
.content-apartment {
  position: relative;
  z-index: 10;
  margin: 0;
}

.content-apartment {
  display: block;
  width: 100%;
  height: 100%;
}

.apartment-pic {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 50vw;
  height: 100vh;
  text-align: center;
}

.scale-pic,
.scale-pic > img {
  display: block;
  position: relative;
  height: auto;
}

.scale-pic {
  width: 100%;
  margin: 4rem 0 0;
  pointer-events: none;
}

.scale-pic > img {
  width: auto;
  max-width: 50vw;
  max-height: 75vh;
  margin: auto;
  padding: 0;
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center center;
  object-position: center center;
}

.content-house-left {
  position: absolute;
  z-index: 5;
  top: 50%;
  left: 6vw;
  width: 25%;
  height: auto;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  color: var(--color-white);
  text-align: left;
}

.group-des,
.top-title {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  position: relative;
  margin-bottom: 1rem;
}

.top-title {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  width: auto;
  height: auto;
}

.group-des {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 1rem 0;
  border-bottom: 1px solid var(--color-white-alpha-03);
}

.block-des,
.floor-des,
.house-title {
  position: relative;
  text-transform: uppercase;
}

.block-des {
  display: block;
  width: auto;
  height: auto;
  font-size: 1rem;
  font-weight: 700;
}

.floor-des,
.house-title {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.floor-des {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  width: auto;
  height: auto;
  color: var(--color-normal-light);
  font-size: 1rem;
  font-weight: 700;
}

.floor-des::before {
  content: " / ";
  display: block;
  margin: 0 0.5rem;
  font-weight: 400;
}

.house-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 0 1rem;
}

.house-title small {
  width: 100%;
  font-size: 0.8rem;
  font-weight: 400;
}

.house-title strong {
  font-size: 1.5rem;
}

.house-number {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  position: relative;
  margin: -0.5rem 1rem;
  padding: 0.5rem 0.8rem;
  border-radius: 1rem;
  color: var(--color-black);
}

.apartment-des,
.house-title strong,
.share span,
.top-title h3 {
  display: inline-block;
  position: relative;
}

.top-title h3 {
  width: auto;
  height: auto;
  margin: 0.5rem 0;
  font-size: 2rem;
}

.apartment-des {
  width: auto;
  height: auto;
  padding: 1rem 0;
  border-top: 1px solid var(--color-white-alpha-03);
  border-bottom: 1px solid var(--color-white-alpha-03);
}

.apartment-des p {
  font-size: 0.9rem;
}

.apartment-des strong {
  font-size: 120%;
}

.share {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  z-index: 5;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin: 1rem 0;
  font-size: 0.7rem;
  text-transform: uppercase;
}

.share span {
  margin-right: 1rem;
}

.floor-des::before,
.share a,
.slide-pic-nav .arrow {
  position: relative;
  color: var(--color-white);
}

.share a {
  display: block;
  width: 2.6rem;
  height: 2.6rem;
  border: 1px solid var(--color-white-alpha-05);
  border-radius: 50%;
}

.apartment-des p,
.des-house p,
.share a .icon {
  display: block;
  position: relative;
}

.share a .icon {
  width: 60%;
  height: 60%;
  margin: 20%;
  overflow: hidden;
}

.share a .icon .hover {
  -webkit-transform: translateY(100%);
  -ms-transform: translateY(100%);
  transform: translateY(100%);
}

.des-house {
  position: absolute;
  z-index: 5;
  bottom: 2rem;
  left: 2rem;
  width: 25vw;
  height: auto;
  text-align: left;
  pointer-events: none;
}

.des-house p {
  color: var(--color-white-alpha-05);
  font-size: 0.6rem;
  font-style: italic;
  line-height: 1.2;
}

.slide-pic-nav {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  position: fixed;
  z-index: 99;
  top: calc(50% - 2rem);
  right: 7rem;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: auto;
  height: auto;
  opacity: 0;
}

.slide-pic-nav .arrow {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  z-index: 1;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 4rem;
  height: 4rem;
  margin: 0 1rem;
  cursor: pointer;
}

.slide-pic-nav .arrow::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-animation: Preloader 3s alternate infinite;
  animation: Preloader 3s alternate infinite;
  border: 2px solid transparent;
  border-radius: 50%;
  background: var(--color-border-gradient) border-box;
  -webkit-mask: -webkit-gradient(linear, left top, left bottom, color-stop(0, var(--color-white))) padding-box, -webkit-gradient(linear, left top, left bottom, color-stop(0, var(--color-white)));
  -webkit-mask: linear-gradient(var(--color-white) 0 0) padding-box, linear-gradient(var(--color-white) 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
}

.slide-pic-nav .arrow::after {
  content: "";
  position: absolute;
  top: 15%;
  left: 15%;
  width: 70%;
  height: 70%;
  border-radius: 50%;
}

.slide-pic-nav .arrow svg {
  display: block;
  position: absolute;
  z-index: 2;
  top: 20%;
  left: 20%;
  width: 60%;
  height: 60%;
}

.slide-pic-nav .arrow-next::after {
  background-color: var(--color-highlight);
}

.slide-pic-nav .arrow-prev svg {
  -webkit-transform: scaleX(-1);
  -ms-transform: scaleX(-1);
  transform: scaleX(-1);
}

.slide-pic-nav .arrow-next.disabled,
.slide-pic-nav .arrow-prev.disabled {
  opacity: 0.2;
  pointer-events: none;
}

.slide-pic-nav.show {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
  -webkit-animation-delay: 1s;
  animation-delay: 1s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.keyplan {
  position: absolute;
  z-index: 15;
  right: 3rem;
  bottom: 2rem;
  width: 22rem;
  height: auto;
  color: var(--color-white);
  text-align: center;
}

.keyplan > .compass {
  top: 0;
  right: 0;
  left: auto;
  width: 3rem;
  height: 3rem;
  opacity: 1;
}

.title-key {
  width: 100%;
  height: auto;
  margin: 0 0 0.5rem;
  font-size: 0.6rem;
}

.title-key p,
.title-key > div {
  text-transform: uppercase;
}

.title-key > div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-size: 0.7rem;
  font-weight: 700;
}

.keyplan-svg,
.load-text em,
.title-key,
.title-key p,
.title-key span {
  display: block;
  position: relative;
}

.hover-text.current p > strong,
.title-key .block-num {
  color: var(--color-white);
}

.title-key .floor-num {
  margin-left: 0.5rem;
  color: var(--color-normal-light-2);
}

.keyplan-svg {
  width: 100%;
  height: auto;
  opacity: 0;
}

.keyplan-svg svg,
.share-item a .icon div {
  height: 100%;
}

.keyplan-svg svg .bg path {
  stroke: none;
  fill: var(--color-white-alpha-02);
}

.keyplan-svg svg .frame path {
  stroke-width: 1px;
  stroke: var(--color-white-alpha);
  fill: none;
}

.keyplan-svg svg > path,
.keyplan-svg svg > polygon,
.keyplan-svg svg > polyline,
.keyplan-svg svg > rect {
  stroke: none;
  opacity: 0;
}

.keyplan-svg .key-area {
  -webkit-transition: opacity 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out;
  cursor: pointer;
  -webkit-filter: drop-shadow(0.1rem 0.2rem 0.2rem var(--color-black-alpha-02));
  filter: drop-shadow(0.1rem 0.2rem 0.2rem var(--color-black-alpha-02));
}

.keyplan-svg .key-area.active {
  opacity: 1;
  pointer-events: none;
}

.keyplan-svg .key-area.show,
.keyplan-svg .key-area:hover {
  opacity: 1;
}

.tooltip,
.tooltip span {
  width: auto;
  height: auto;
  -webkit-transition: opacity 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out;
  opacity: 0;
  pointer-events: none;
}

.tooltip {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  position: absolute;
  z-index: 2;
  top: 2.3rem;
  left: 50%;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  border: 1px solid var(--color-white-alpha-02);
  border-radius: 0.3rem;
  background: var(--color-black-alpha-01);
  -webkit-box-shadow: 0.1rem 0.2rem 0.5rem 0 var(--color-black-alpha-02);
  box-shadow: 0.1rem 0.2rem 0.5rem 0 var(--color-black-alpha-02);
  text-align: center;
}

.tooltip span {
  display: inline-block;
  position: relative;
  background: 0 0;
  font-size: 0.6rem;
  font-weight: 700;
  text-transform: uppercase;
  white-space: nowrap;
}

.tooltip .shophouse {
  display: none;
}

.tooltip .trendy {
  color: var(--trendy);
}

.tooltip .classy {
  color: var(--classy);
}

.tooltip .morden {
  color: var(--morden);
}

.tooltip .morden-1 {
  color: var(--morden-1);
}

.tooltip .morden-2 {
  color: var(--morden-2);
}

.tooltip .morden-3 {
  color: var(--morden-3);
}

.tooltip .morden-4 {
  color: var(--morden-4);
}

.tooltip .elegant {
  color: var(--elegant);
}

.tooltip span:nth-child(1) {
  min-width: 1.5rem;
  padding: 0.5rem 0 0.5rem 0.8rem;
}

.tooltip span:nth-child(2) {
  padding: 0.5rem 0.8rem 0.5rem 0.5rem;
  color: var(--color-white);
}

.tooltip.showup {
  opacity: 1;
  cursor: pointer;
  pointer-events: auto;
}

.hover-text.current p > strong::before,
.tooltip.showup span {
  opacity: 1;
}

.opt-02 .keyplan {
  width: 19rem;
}

.opt-02 .keyplan > .compass {
  top: 2rem;
}

.opt-02 .title-key {
  top: 2.5rem;
  margin: 0;
  text-align: left;
}

.opt-02 .keyplan-svg {
  width: 15rem;
  margin: 0 1rem;
}

.opt-02 .tooltip {
  top: 4.5rem;
  left: 0;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  padding: 0.5rem;
  -webkit-transform: none;
  -ms-transform: none;
  transform: none;
  text-align: left;
}

.opt-02 .tooltip span {
  padding: 0;
}

.facilities .title-main {
  position: absolute;
  bottom: 3vh;
  left: 0;
  width: 100%;
  text-align: center;
}

.facilities .text-break,
.hover-text p > strong {
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.facilities .text-break > small {
  margin: 1rem 0;
  font-family: Montserrat, sans-serif;
  font-size: 1.2vw;
  font-weight: 700;
  text-transform: uppercase;
}

.facilities .text-break > strong {
  font-size: 6vw;
}

.facilities .content-main {
  display: block;
  padding: 0;
}

.facilities .compass {
  top: 15vh;
  right: auto;
  left: 5%;
}

.facilities .master-bg::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 30rem;
  height: 100%;
  pointer-events: none;
  -webkit-backdrop-filter: blur(5px);
  backdrop-filter: blur(5px);
  -webkit-mask: -webkit-gradient(linear, right top, left top, color-stop(0, #000), color-stop(50%, #000), to(transparent));
  -webkit-mask: linear-gradient(-90deg, #000 0, #000 50%, transparent 100%);
}

.floor-03 .master-bg::after,
.floor-top .master-bg::after {
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  width: 40rem;
  -webkit-mask: -webkit-gradient(linear, right top, left top, color-stop(0, #000), color-stop(70%, #000), to(transparent));
  -webkit-mask: linear-gradient(-90deg, #000 0, #000 70%, transparent 100%);
}

.floor-02 .title-main,
.floor-03-B .title-main,
.floor-36-37 .title-main {
  top: 15vh;
  bottom: auto;
  width: 60%;
}

.dot-num {
  -webkit-transform-origin: center center;
  -ms-transform-origin: center center;
  transform-origin: center center;
  cursor: pointer;
}

.dot-num text {
  -webkit-transition: fill 0.3s ease-in-out;
  transition: fill 0.3s ease-in-out;
  fill: var(--color-white);
  font-size: 14px;
  font-weight: 700;
}

.dot-num .cir-dot {
  -webkit-filter: drop-shadow(0.2rem 0.3rem 0.5rem var(--color-black-alpha-03));
  filter: drop-shadow(0.2rem 0.3rem 0.5rem var(--color-black-alpha-03));
  -webkit-transition: fill 0.3s ease-in-out, stroke 0.3s ease-in-out;
  transition: fill 0.3s ease-in-out, stroke 0.3s ease-in-out;
}

.dot-num.show .cir-dot {
  fill: url("#cir-dot");
}

.dot-num.current .cir-dot {
  stroke-width: 0.5rem;
  stroke: var(--color-normal-dark);
  fill: var(--color-white);
}

.dot-num.current text {
  fill: var(--color-white-zero);
}

.faci-note {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: absolute;
  z-index: 5;
  top: 15vh;
  right: 0;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 16rem;
  height: 70vh;
}

.box-list-inner h3,
.scroll-list {
  display: block;
  position: relative;
  width: 100%;
  height: auto;
}

.option-scroll {
  display: block;
  width: 14rem;
  overflow: hidden;
}

.option-scroll .scroll-list {
  height: 100%;
  overflow: hidden auto;
}

.list-inner {
  display: block;
  position: relative;
  width: 100%;
  height: auto;
  padding: 0 0.5rem;
}

.box-list-inner {
  margin: 0 0 1rem;
}

.box-list-inner h3 {
  display: inline-block;
  width: auto;
  font-size: 0.8rem;
  font-weight: 800;
  -webkit-filter: drop-shadow(0 0.1rem 0.05rem var(--color-black-alpha));
  filter: drop-shadow(0 0.1rem 0.05rem var(--color-black-alpha));
}

.box-list-inner,
.box-list-inner ul,
.hover-text {
  display: block;
  position: relative;
  width: 100%;
  height: auto;
}

.box-list-inner ul {
  list-style: none;
}

.hover-text {
  z-index: 5;
  margin: 0.6rem 0;
  padding-left: 1.6rem;
  text-align: left;
  cursor: pointer;
}

.hover-text p,
.show-box-inner p {
  display: block;
  position: relative;
  font-family: var(--font-note);
  font-size: 0.7rem;
  font-weight: 400;
  text-transform: uppercase;
}

.hover-text p {
  -webkit-transition: color 0.3s ease-in-out;
  transition: color 0.3s ease-in-out;
}

.hover-text p > strong {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: absolute;
  z-index: 2;
  top: calc(50% - 0.7rem);
  left: -1.8rem;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 1.4rem;
  height: 1.4rem;
  border-radius: 50%;
  font-weight: 700;
  text-align: center;
}

.hover-text p > strong::after,
.hover-text p > strong::before {
  content: "";
  -webkit-transition: opacity 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out;
  border-radius: 50%;
}

.hover-text p > strong::before {
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  background: var(--color-dot);
}

.hover-text p > strong::after {
  border: 1px solid currentcolor;
  opacity: 0.5;
}

.hover-text.current p > strong::after {
  opacity: 0;
}

.hover-text.current p {
  color: var(--color-orange);
}

.hover-text p > strong::after,
.info-box-list,
.item-news-home::after,
.show-box-info {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.show-box-info {
  z-index: 50;
  top: auto;
  left: auto;
  width: auto;
  max-width: 12rem;
  height: auto;
  padding: 0.3rem;
  -webkit-transform: scale(0);
  -ms-transform: scale(0);
  transform: scale(0);
  -webkit-transition: opacity 0.3s ease-in-out, left 50ms ease, top 50ms ease, -webkit-transform 0.3s ease;
  transition: opacity 0.3s ease-in-out, left 50ms ease, top 50ms ease, -webkit-transform 0.3s ease;
  transition: opacity 0.3s ease-in-out, transform 0.3s ease, left 50ms ease, top 50ms ease;
  transition: opacity 0.3s ease-in-out, transform 0.3s ease, left 50ms ease, top 50ms ease, -webkit-transform 0.3s ease;
  border-radius: 1rem;
  opacity: 0;
  background-color: var(--color-white);
  -webkit-box-shadow: 0 1.5rem 2rem 0 var(--color-black-alpha-02);
  box-shadow: 0 1.5rem 2rem 0 var(--color-black-alpha-02);
  color: var(--color-normal);
  text-align: center;
  cursor: pointer;
}

.show-box-info img,
.show-box-inner {
  display: block;
  position: relative;
  width: auto;
  height: auto;
}

.show-box-inner p {
  padding: 0.3rem 0.5rem;
  text-align: center;
  white-space: normal;
}

.show-box-inner p em,
.show-box-inner p strong {
  display: none;
}

.show-box-info .pic-img {
  height: auto;
  margin: 0;
  overflow: hidden;
  border-radius: 0.7rem;
}

.show-box-info .pic-img::after {
  content: "";
  position: absolute;
  z-index: 1;
  top: 0.5rem;
  right: 0.5rem;
  width: 2rem;
  height: 2rem;
  border-radius: 50%;
}

.show-box-info img {
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center;
}

.show-box-info.showup {
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
  opacity: 1;
}

.home-news {
  z-index: 10;
  background: var(--color-bg-news);
}

.home-news .content-main {
  display: block;
  min-height: inherit;
  padding: 0 0 5vw;
}

.home-news .wrap-view-more {
  margin: 0 3rem 0 0;
}

.wrap-news {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  z-index: 5;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 80%;
  max-width: 65rem;
  height: auto;
  margin: auto;
  gap: 0 1rem;
}

.item-news-home {
  width: 30%;
  height: auto;
  padding: 0.5rem;
  cursor: pointer;
}

.item-news-home::after {
  content: "";
  border: 1px solid var(--color-white-alpha-03);
}

.date-thumb,
.item-news-home,
.pic-news {
  display: block;
  position: relative;
}

.pic-news {
  width: 100%;
  height: auto;
}

.pic-news .pic-cover {
  aspect-ratio: 16/9;
}

.item-news-home .box-txt {
  padding: 0.5rem 1rem;
}

.item-news-home .box-txt h3 {
  display: -webkit-box;
  margin-bottom: 1rem;
  overflow: hidden;
  font-size: 1.2rem;
  font-weight: 500;
  text-overflow: ellipsis;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
}

.date-thumb {
  margin-bottom: 0.5rem;
  color: var(--color-light);
  font-size: 0.7rem;
  font-weight: 400;
}

.news-highlight {
  width: 40%;
  background-color: var(--color-black-alpha-02);
}

.news-highlight .box-txt h3 {
  margin-bottom: 1rem;
  font-size: 1.5rem;
  -webkit-line-clamp: 4;
}

.go-news {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  z-index: 10;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin: 0;
  padding: 0.8rem 0;
  color: var(--color-white);
  text-align: left;
}

.go-news span,
.go-news::after {
  display: block;
  position: relative;
}

.go-news span {
  font-size: 0.7rem;
  font-weight: 700;
  text-transform: uppercase;
  white-space: nowrap;
}

.go-news::after {
  content: "";
  width: calc(100% - var(--but-width));
  height: 1px;
  margin: 0 0 0 1rem;
  opacity: 0.5;
  background-color: currentcolor;
}

.news-banner .bg-cover::after {
  display: block;
  z-index: 2;
  opacity: 1;
  background: var(--color-banner-hide);
}

.news-banner .bg-cover::before {
  display: block;
  z-index: 1;
  opacity: 1;
  background: var(--color-black-alpha-01);
  mix-blend-mode: multiply;
}

.news-banner .content-main {
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  min-height: inherit;
  padding: 50vh 5vw 0;
}

.news-banner .title-main {
  width: 100%;
  text-align: center;
}

#progress-page .title-main,
.news-banner .text-break {
  width: auto;
}

.news-banner .text-break > strong {
  font-size: 10vw;
}

.news-banner .scroll-text {
  z-index: 3;
  bottom: 0;
  mix-blend-mode: overlay;
}

.item-news,
.wrap-news-two {
  position: relative;
  z-index: 5;
}

.wrap-news-two {
  display: block;
  width: 100%;
  height: auto;
  margin: 3rem 0 0;
}

.item-news {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 80%;
  margin: 0 0 0.5rem;
  padding: 2rem 2rem 2rem 20%;
  cursor: pointer;
}

.item-news::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 1px solid var(--color-white-alpha-03);
}

.item-news .box-txt {
  display: inline-block;
  max-width: 35rem;
  padding: 0 2rem;
}

.item-news .box-txt h3 {
  display: -webkit-box;
  overflow: hidden;
  font-size: 1.2rem;
  font-weight: 500;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

.item-news .pic-news {
  display: block;
  max-width: 20vw;
  height: 20vh;
  margin-left: 5rem;
  overflow: hidden;
  aspect-ratio: 16/9;
}

.date,
.item-news,
.item-news .pic-news .pic-cover {
  height: auto;
}

.date {
  display: block;
  position: relative;
  width: auto;
  padding: 0.8rem 2rem;
  color: var(--color-light);
  font-size: 0.7rem;
  white-space: nowrap;
}

.item-news:nth-child(even) {
  margin-left: 20%;
  padding: 2rem 20% 2rem 2rem;
  background-color: var(--color-black-alpha-01);
}

.item-news:nth-child(even)::after {
  border-color: transparent;
}

.item-news:nth-child(even) .icon-content {
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
  margin: 0 4rem 0 0;
}

.item-news:nth-child(even) .date {
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2;
}

.item-news:nth-child(even) .pic-news {
  -webkit-box-ordinal-group: 4;
  -ms-flex-order: 3;
  order: 3;
}

.item-news:nth-child(even) .box-txt {
  -webkit-box-ordinal-group: 5;
  -ms-flex-order: 4;
  order: 4;
}

.progress {
  z-index: 10;
}

.progress .content-main {
  display: block;
  min-height: inherit;
  padding: 0 0 5vw;
}

.progress-list {
  display: block;
  position: relative;
  width: 70%;
  height: auto;
  min-height: 100vh;
  margin: auto;
  padding-bottom: 5vw;
}

.progress-list.show {
  min-height: inherit;
}

.wrap-page {
  display: grid;
  position: relative;
  grid-gap: 1rem;
  grid-template-columns: auto auto;
  width: 100%;
  margin: 0;
}

.box-progress,
.wrap-page {
  height: auto;
}

.box-progress h3 {
  height: auto;
  padding: 0.8rem 1rem;
  font-size: 0.9rem;
  font-weight: 400;
}

.box-progress,
.box-progress h3,
.pic-progress,
.pic-progress img {
  display: block;
  position: relative;
  width: 100%;
}

.pic-progress {
  aspect-ratio: 16/9;
  height: auto;
  overflow: hidden;
}

.pic-progress img {
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center center;
  object-position: center center;
  pointer-events: none;
}

.wrap-select {
  display: block;
  position: absolute;
  z-index: 20;
  top: -8rem;
  right: 0;
  width: auto;
  height: auto;
  padding: 0 15% 0 0;
}

.select-list {
  display: block;
  position: relative;
  z-index: 20;
  width: 18rem;
  height: 3rem;
  border-radius: 3rem;
}

.select-box,
.select-header {
  width: 100%;
  height: auto;
  -webkit-box-shadow: 0 1.5rem 2rem 0 var(--color-black-alpha-02);
  box-shadow: 0 1.5rem 2rem 0 var(--color-black-alpha-02);
}

.select-header {
  display: block;
  position: relative;
  border-radius: 3rem;
  background-color: var(--color-highlight);
  cursor: pointer;
}

.select-header .but {
  display: block;
  position: absolute;
  z-index: 1;
  top: 0.5rem;
  right: 0.5rem;
  width: 2rem;
  height: 2rem;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  border: 1px solid;
  border-radius: 50%;
  border-color: var(--color-white-alpha-05);
}

.select-header h3,
.sub-menu-inner a span {
  display: block;
  font-weight: 700;
  text-transform: uppercase;
}

.select-header h3 {
  padding: 0 3rem 0 1.5rem;
  overflow: hidden;
  color: var(--color-white);
  font-size: 1rem;
  line-height: 3rem;
  text-align: left;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.select-box {
  display: none;
  position: absolute;
  z-index: 99999;
  top: 3rem;
  left: 0;
  max-height: 18.5rem;
  overflow: hidden auto;
  border-radius: 1rem;
  opacity: 0;
  background-color: var(--color-normal-dark);
}

.select-box.show {
  display: block;
}

.select-box ul {
  width: 100%;
  height: auto;
  list-style: none;
}

.select-box li {
  width: 100%;
  height: auto;
  margin: 0;
  color: var(--color-light);
  cursor: pointer;
}

.load-text p,
.select-box li,
.select-box li a,
.select-box li h3,
.select-box ul,
.sub-menu {
  display: block;
  position: relative;
}

.select-box li a {
  width: 100%;
  height: auto;
  color: currentcolor;
}

.select-box li h3 {
  padding: 0.5rem 1.5rem;
  font-size: 0.8rem;
  font-weight: 700;
  line-height: 2rem;
  text-align: left;
}

.select-box li.current,
.select-box li.selected {
  background-color: var(--color-highlight);
  color: var(--color-white);
  pointer-events: none;
}

.select-box li.current {
  background-color: var(--color-normal);
}

.select-header.onclick .but {
  border-color: transparent;
  background-color: var(--color-normal-dark);
}

.sub-menu {
  position: absolute;
  z-index: 20;
  right: 0;
  bottom: 0;
  width: auto;
  height: auto;
  padding: 0 15% 0 0;
}

.sub-menu-inner,
.sub-menu-inner a {
  position: relative;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.sub-menu-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  width: 100%;
  height: auto;
}

.sub-menu-inner a {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  z-index: 10;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 0 0.5rem;
  padding: 0.3rem;
  border-radius: 5rem;
  background-color: var(--color-normal-dark);
}

.sub-menu-inner a span {
  z-index: 5;
  padding: 1rem 2rem;
  border-radius: 5rem;
  font-size: 1.2rem;
}

.sub-menu-inner a span::after {
  content: "";
  position: absolute;
  top: 0.4rem;
  left: 0.4rem;
  width: calc(100% - 0.8rem);
  height: calc(100% - 0.8rem);
  border: 1px solid var(--color-white-alpha-05);
  border-radius: 5rem;
}

.sub-menu-inner a.current {
  background-color: var(--color-highlight);
  pointer-events: none;
}

.thank-you .content-main {
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  padding: 3rem;
}

.thank-you .text-content {
  width: 30vw;
}

.error-info .box-txt p,
.thank-you .box-txt p {
  font-size: 120%;
}

.error-info .box-txt strong,
.sub-menu-inner a span,
.thank-you .box-txt strong,
.wrap-go-news .icon-svg svg {
  color: var(--color-white);
}

.error-info .content-main {
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  padding: 3rem;
}

.error-info .text-content {
  width: 30vw;
}

.load-text,
.load-text iframe,
.load-text video {
  display: block;
  position: relative;
  width: 100%;
  height: auto;
}

.load-text {
  z-index: 5;
  margin: 0;
  padding: 0 0 2rem;
  text-align: left;
}

.load-text ul {
  padding: 0 3vw 1rem 4vw;
  list-style-type: disc;
}

.load-text li {
  position: relative;
  width: auto;
  height: auto;
}

.load-text h2,
.load-text h3,
.load-text h4 {
  display: block;
  position: relative;
  margin: 0 0 1rem;
  padding: 0 3rem;
}

.load-text em strong,
.load-text h3 em,
.load-text h3 span,
.load-text p span,
.load-text p strong,
.load-text p strong em {
  font-size: inherit !important;
}

.load-text p {
  margin: auto;
  padding: 0 3rem 1rem;
}

.load-text iframe,
.load-text video {
  max-width: 100%;
  margin: auto auto 1rem;
  aspect-ratio: 1.77;
}

.load-text audio {
  min-height: 3rem;
}

.load-text div:not(.div-figure, .chapeau, .thumbs),
.load-text span {
  margin: auto;
}

.load-text img {
  max-width: 100%;
  margin: auto;
  border-radius: 1rem;
  pointer-events: none;
}

.load-text img.ratio-h {
  max-height: 80vh;
}

.load-text blockquote {
  margin: 0 0 1rem 1rem;
  margin-bottom: 1rem;
  margin-left: 1.5rem;
  padding-left: 1rem;
  border-left: 1px solid currentcolor;
}

.load-text h2 {
  font-size: 1.5rem;
}

.load-text h3 {
  font-size: 1.2rem;
}

.load-text h4 {
  font-size: 1.1rem;
}

.load-text blockquote p {
  padding: 0.8rem 0;
}

.load-title {
  width: 100%;
  height: auto;
  margin: 0;
  padding: 2rem;
  text-align: center;
}

.load-title::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: calc(50% - 50vw);
  width: 100vw;
  height: 1px;
  background-color: var(--color-white-alpha-02);
}

.load-title h2 {
  z-index: 5;
  width: 100%;
  height: auto;
  color: var(--color-highlight);
  font-size: 2rem;
  font-weight: 600;
  text-transform: uppercase;
}

.load-title > p {
  display: inline-block;
  position: relative;
  margin: 0.8rem 0;
  font-size: 1rem;
  text-transform: uppercase;
}

.load-title .date {
  margin-bottom: 1rem;
  padding: 0;
}

.chapeau,
.chapeau > p,
.load-title,
.load-title h2 {
  display: block;
  position: relative;
}

.chapeau {
  width: 90%;
  height: auto;
  margin: 1rem auto;
  padding: 2rem 5%;
}

.chapeau::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 1rem;
  background-color: var(--color-highlight);
}

.chapeau > p {
  font-size: 1rem;
  font-style: italic;
}

.load-text table {
  display: table;
  width: 100% !important;
  max-width: 100%;
  height: auto !important;
  margin: 0 auto 1rem;
  table-layout: fixed;
  border-spacing: 1px;
}

.load-text table tbody {
  min-width: 320px;
}

.load-text table td,
.load-text table th {
  padding: 0.8rem 1.5rem;
  border: 1px solid var(--color-white-alpha-02);
  border-radius: 0.3rem;
  line-height: 1.6;
  text-align: left;
  vertical-align: middle;
}

.load-text table em,
.load-text table p,
.load-text table p:last-child,
.load-text table span {
  padding: 0 !important;
}

.figure-img,
.figure-two-img {
  position: relative;
  width: 100%;
  height: auto;
  margin: 0 0 1rem;
  text-align: center;
}

.figure-img {
  display: block;
}

.figure-two-img {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.img-one,
.img-two {
  display: inline-block;
  width: calc(50% - 0.3rem);
  height: auto;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center center;
  object-position: center center;
}

.figure-img img:not(.img-one, .img-two) {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto !important;
  margin: auto;
  border-radius: 1rem;
}

.figure-img + p:not(.height-zero),
.figure-two-img + p:not(.height-zero) {
  margin: 20px 0 0;
}

.load-text figcaption {
  display: block;
  position: relative;
  width: 80%;
  margin: 1rem auto;
  font-size: 0.8rem;
  font-style: italic;
  text-align: center;
}

.div-figure,
.figure-caption {
  position: relative;
  width: 100%;
  height: auto;
}

.div-figure {
  display: grid;
  grid-gap: 0.8rem;
  grid-template-columns: 1fr 1fr;
  margin: 0 auto 1rem;
  text-align: center;
}

.figure-caption {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  grid-column: 1/2;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.figure-caption img {
  display: block;
  position: relative;
  width: 100%;
  height: calc(100% - 2rem);
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center center;
  object-position: center center;
}

.figure-caption:nth-child(2n+3),
.figure-caption:nth-child(3n+2) {
  grid-column: 2/2;
}

.figure-caption:nth-child(3n+3) {
  grid-column: 1/3;
}

.content-popup,
.content-popup > span {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.content-popup {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  z-index: 9990;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  opacity: 0;
  text-align: center;
}

.content-popup > span {
  z-index: 1;
}

.content-popup.no-after {
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  text-align: left;
}

.details-center,
.scroll-popup {
  display: block;
  position: relative;
  width: 100%;
  height: auto;
}

.details-center {
  z-index: 5;
  width: 80%;
  max-width: 65rem;
  margin: auto;
  opacity: 0;
}

.details-center .load-text {
  padding: 5%;
}

.details-news,
.policy {
  padding-bottom: 10vw;
}

.details-news .load-text,
.partner .load-text {
  padding: 1rem 5% 5%;
}

.wrap-view-more {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  z-index: 5;
  margin: 2vh 0;
}

.view-more {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  position: relative;
  z-index: 5;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.view-more span {
  display: inline-block;
  position: relative;
  z-index: 5;
  margin: 0 -1.5rem 0 0;
  font-size: 0.7rem;
  font-weight: 700;
  text-transform: uppercase;
  white-space: nowrap;
}

.icon-svg {
  width: 5rem;
  height: 5rem;
  border-radius: 50%;
}

.icon-svg::before {
  content: "";
  position: absolute;
  top: 15%;
  left: 15%;
  width: 70%;
  height: 70%;
  border-radius: 50%;
}

.arrow-more svg,
.icon-svg,
.icon-svg svg {
  display: block;
  position: relative;
}

.icon-svg svg {
  width: 100%;
  height: 100%;
  color: var(--color-highlight);
}

.icon-svg .after,
.icon-svg .before {
  -webkit-transform-origin: 50% 50%;
  -ms-transform-origin: 50% 50%;
  transform-origin: 50% 50%;
  stroke-width: 1;
  stroke-dasharray: 570;
  stroke-dashoffset: 570;
  fill: none;
}

.icon-svg .before {
  stroke: currentcolor;
}

.icon-svg .after {
  stroke: var(--color-white-zero);
}

.icon-svg.show .before {
  -webkit-animation-name: Show100;
  animation-name: Show100;
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.wrap-go-news {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  z-index: 5;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}

.wrap-go-news .icon-svg {
  width: 4rem;
  height: 4rem;
}

.wrap-go-news .view-more span {
  margin: 0 -0.8rem 0 0;
  font-size: 0.6rem;
}

.arrow-more,
.click-more {
  position: relative;
  color: var(--color-white);
}

.click-more {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  z-index: 5;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  height: auto;
  margin: 3rem 0;
  text-align: center;
}

.click-more .view-more {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 0;
  color: var(--color-white);
}

.click-more .view-more span {
  margin: 0.5rem 0 1rem;
  font-size: 0.7rem;
  text-transform: uppercase;
  white-space: nowrap;
}

.arrow-more {
  display: inline-block;
  z-index: 2;
  width: 5rem;
  height: 5rem;
  border-radius: 50%;
}

.arrow-more::after,
.arrow-more::before {
  content: "";
  position: absolute;
  -webkit-transform-origin: center center;
  -ms-transform-origin: center center;
  transform-origin: center center;
  border-radius: 50%;
}

.arrow-more::before {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 1px solid var(--color-white-alpha);
}

.arrow-more::after {
  top: 10%;
  left: 10%;
  width: 80%;
  height: 80%;
  border: 1px solid transparent;
  opacity: 0.5;
}

.arrow-more svg {
  z-index: 2;
  width: 60%;
  height: 60%;
  margin: 20%;
  -webkit-transform-origin: center center;
  -ms-transform-origin: center center;
  transform-origin: center center;
}

.success,
.warning {
  position: fixed;
  z-index: 110000;
  top: 50%;
  left: 50%;
  height: auto;
  padding: 1rem 1.5rem;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  border-radius: 0.8rem;
  -webkit-box-shadow: 0 1.5rem 2rem 0 var(--color-black-alpha-02);
  box-shadow: 0 1.5rem 2rem 0 var(--color-black-alpha-02);
  line-height: 1.6;
  text-align: center;
  cursor: pointer;
}

.warning {
  width: 20rem;
  background-color: var(--color-red);
  color: var(--color-white);
  font-size: 1.2rem;
  text-shadow: 1px 1px 0 var(--color-black-alpha-02);
}

.success {
  width: 90%;
  max-width: 30rem;
  background: var(--color-highlight);
  color: var(--color-black);
}

.form-error {
  display: block;
  position: absolute;
  z-index: 99999;
  top: -2rem;
  left: 2rem;
  cursor: pointer;
}

.form-error-content {
  display: inline-block;
  position: relative;
  z-index: 9999;
  width: auto;
  max-width: 20rem;
  height: auto;
  padding: 0.5rem 0.8rem;
  border-radius: 0.5rem;
  background-color: var(--color-red);
  -webkit-box-shadow: 0 1.5rem 2rem 0 var(--color-black-alpha-02);
  box-shadow: 0 1.5rem 2rem 0 var(--color-black-alpha-02);
  color: var(--color-white);
  font-size: 0.8rem;
  line-height: 1.4;
}

.form-error-content::after {
  content: "";
  position: absolute;
  bottom: -0.5rem;
  left: 1rem;
  width: 0;
  height: 0;
  border-width: 0.7rem 0.6rem 0;
  border-style: solid;
  border-color: var(--color-red) transparent transparent;
}

.all-pics {
  display: none;
  z-index: 9999;
  width: 100%;
  height: 100%;
}

.all-pics.show {
  display: block;
}

.all-pics .text-length {
  position: absolute;
  z-index: 9998;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
  opacity: 0;
  text-align: center;
}

.album-pic-center .pic-name h3,
.all-pics .text-length h3 {
  display: inline-block;
  position: relative;
  line-height: 1.4;
  text-align: center;
  text-transform: uppercase;
}

.all-pics .text-length h3 {
  padding: 1rem 1.5rem;
  color: var(--color-white);
  font-size: 0.9rem;
  text-shadow: 0 1px 2px var(--color-black-alpha-02);
}

.all-album,
.all-pics,
.full {
  position: fixed;
  top: 0;
  left: 0;
  overflow: hidden;
}

.full,
.full > span {
  width: 100vw;
  height: 100vh;
}

.full {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.album-center .pinch-zoom > img,
.full .img-cover,
.full img {
  display: block;
  position: relative;
  width: auto;
  height: auto;
}

.album-center .pinch-zoom > img,
.full img {
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center center;
  object-position: center center;
  pointer-events: none;
}

.full img {
  z-index: 5;
  max-width: 100%;
  max-height: 100vh;
  margin: 0 auto;
  border: 0;
  outline: 0;
  opacity: 0;
}

.full > span {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
}

.full .overlay-hover {
  display: block;
}

.fullscreen .overlay-dark {
  z-index: 99995;
}

.all-album {
  display: none;
  z-index: 99999;
  width: 100%;
  height: 100%;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.all-album.show {
  display: block;
}

.album-load {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  z-index: 100;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 100vw;
  height: 100vh;
  opacity: 0;
  text-align: center;
}

.title-album {
  position: absolute;
  z-index: 5;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
  padding: 0.8rem 5vw;
  opacity: 0;
  color: var(--color-white);
  text-transform: uppercase;
  pointer-events: none;
}

.album-center,
.title-album h2 {
  display: block;
  position: relative;
}

.title-album h2 {
  font-size: 1rem;
}

.album-center {
  width: 100%;
  height: 100vh;
  opacity: 0;
}

.album-pic-center {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 100vw !important;
  height: 100vh;
  margin: 0 !important;
  overflow: hidden;
}

.album-pic-center .pic-name {
  position: absolute;
  z-index: 5;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
  padding: 2rem 5vw;
  overflow: hidden;
  color: var(--color-white);
}

.album-pic-center .pic-name h3 {
  font-size: 0.7rem;
}

.album-pic-center .pic-name .char,
.zoom-active .pic-name {
  opacity: 0;
}

.album-pic-center.is-active .pic-name .char {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
  -webkit-animation-duration: 0.5s;
  animation-duration: 0.5s;
  -webkit-animation-delay: calc(10ms * var(--char-index));
  animation-delay: calc(10ms * var(--char-index));
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.album-center .pinch-zoom {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.album-center .pinch-zoom > img {
  max-width: 90vw;
  max-height: 84vh;
  margin: auto;
}

.container-zoom {
  display: block;
  position: relative;
  width: 100%;
  height: 100vh;
}

.container-zoom > img {
  -webkit-box-shadow: 0 1rem 1rem 0 var(--color-black-alpha-01);
  box-shadow: 0 1rem 1rem 0 var(--color-black-alpha-01);
}

.pinch-zoom > div,
.pinch-zoom > img {
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
}

.pinch-zoom > .zoom-transition {
  -webkit-transition: -webkit-transform ease 250ms;
  transition: -webkit-transform ease 250ms;
  transition: transform ease 250ms;
  transition: transform ease 250ms, -webkit-transform ease 250ms;
}

.pinch-zoom {
  overflow: hidden;
}

.pinch-zoom.zoom-active {
  cursor: -webkit-grab;
  cursor: grab;
}

.pinch-zoom.zoom-active:active {
  cursor: -webkit-grabbing;
  cursor: grabbing;
}

.pinch-zoom > .overlay-hover {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 60%;
  max-width: 400px;
  height: 60%;
  max-height: 400px;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  opacity: 0;
  cursor: none;
}

.album-pic-center.is-active .pinch-zoom > .overlay-hover,
.full-screen.active svg .exit {
  display: block;
}

.pinch-zoom.zoom-active > .overlay-hover {
  cursor: -webkit-grab;
  cursor: grab;
}

.pinch-zoom.zoom-active > .overlay-hover:active {
  cursor: -webkit-grabbing;
  cursor: grabbing;
}

.full-screen {
  display: none;
  position: fixed;
  right: 1rem;
  bottom: 1rem;
  width: 4rem;
  height: 4rem;
  opacity: 0;
  color: var(--color-white);
  cursor: pointer;
  pointer-events: none;
}

.download-pdf svg,
.full-screen svg,
.view-album svg,
.view-video svg,
.view-virtual svg {
  display: block;
  position: absolute;
  z-index: 2;
  top: 20%;
  left: 20%;
  width: 60%;
  height: 60%;
  -webkit-transform-origin: center center;
  -ms-transform-origin: center center;
  transform-origin: center center;
}

.full-screen svg .exit,
.full-screen.active svg .open {
  display: none;
}

.full-screen::after {
  content: "";
  position: absolute;
  border: 1px solid var(--color-white-alpha-05);
  border-radius: 50%;
}

.allvideo,
.full-screen::after,
.full-screen::before {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.full-screen::before {
  content: "";
  position: absolute;
  border-radius: 50%;
}

.full-screen.show {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-delay: 0.5s;
  animation-delay: 0.5s;
  pointer-events: auto;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.fullsreen-support .full-screen {
  display: block;
  z-index: 999999;
}

.allvideo {
  display: none;
  position: fixed;
  z-index: 2200;
  overflow: hidden;
}

.allvideo.show {
  display: block;
}

.video-list,
.video-wrap {
  position: absolute;
  z-index: 100;
}

.video-list {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-align: center;
}

.video-wrap {
  display: block;
  top: 50%;
  left: 50%;
  width: 80vmax;
  height: 45vmax;
  overflow: hidden;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  background-color: var(--color-bg-black);
}

.video-skin,
.video-wrap iframe,
.video-wrap.virtual {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.video-skin {
  position: absolute;
  z-index: 10;
}

.video-wrap iframe {
  display: block;
  position: absolute;
}

.video-wrap.virtual {
  -webkit-transform: none;
  -ms-transform: none;
  transform: none;
}

.video-list > .logo {
  z-index: 200;
  top: 1rem;
  left: 1rem;
  mix-blend-mode: overlay;
}

.video-list > .logo::before {
  opacity: 0.5;
}

.video-list > .logo::after {
  display: none;
}

.download-pdf,
.view-album,
.view-video,
.view-virtual {
  display: block;
  position: absolute;
  z-index: 100;
  width: 6rem;
  height: 6rem;
  border-radius: 50%;
}

.download-pdf svg,
.view-album svg,
.view-video svg,
.view-virtual svg {
  top: 15%;
  left: 15%;
  width: 70%;
  height: 70%;
}

.download-pdf::after,
.view-album::after,
.view-video::after,
.view-virtual::after {
  content: "";
  position: absolute;
  top: 10%;
  left: 10%;
  width: 80%;
  height: 80%;
  -webkit-transform-origin: center center;
  -ms-transform-origin: center center;
  transform-origin: center center;
  border: 1px solid var(--color-white);
  border-radius: 50%;
  opacity: 0.5;
}

.download-pdf::before,
.view-album::before,
.view-video::before,
.view-virtual::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-transform-origin: center center;
  -ms-transform-origin: center center;
  transform-origin: center center;
  border-radius: 50%;
}

.close,
.close-album {
  right: 1rem;
}

.close,
.close-album,
.close-apartment,
.close-pics,
.close-popup,
.close-video,
.close-virtual {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: fixed;
  z-index: 999999;
  top: 1rem;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 4rem;
  height: 4rem;
  border: 1px solid var(--color-white-alpha-05);
  border-radius: 50%;
  opacity: 0;
  cursor: pointer;
}

.close-pics,
.close-popup,
.close-video,
.close-virtual {
  right: 1rem;
}

.close-album::before,
.close-apartment::before,
.close-pics::before,
.close-popup::before,
.close-video::before,
.close-virtual::before,
.close::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 50%;
}

.close svg,
.close-album svg,
.close-apartment svg,
.close-pics svg,
.close-popup svg,
.close-video svg,
.close-virtual svg {
  display: block;
  position: absolute;
  z-index: 5;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: visible;
  border-radius: 50%;
}

.close .c-rotate,
.close-album .c-rotate,
.close-apartment .c-rotate,
.close-pics .c-rotate,
.close-popup .c-rotate,
.close-video .c-rotate,
.close-virtual .c-rotate {
  -webkit-transform: rotate(-90deg);
  -ms-transform: rotate(-90deg);
  transform: rotate(-90deg);
  -webkit-transform-origin: 50% 50%;
  -ms-transform-origin: 50% 50%;
  transform-origin: 50% 50%;
  stroke-width: 1;
  stroke-dasharray: 537;
  stroke-dashoffset: 537;
  stroke: var(--color-white-zero);
  fill: none;
}

.close .c-x,
.close-album .c-x,
.close-apartment .c-x,
.close-pics .c-x,
.close-popup .c-x,
.close-video .c-x,
.close-virtual .c-x {
  -webkit-transform-origin: center center;
  -ms-transform-origin: center center;
  transform-origin: center center;
  fill: var(--color-white);
}

.close-apartment,
.close-video {
  top: calc(50% - 2rem);
}

.ratio-4-3 .close-video {
  top: 1rem;
}

.close-popup::before {
  opacity: 1;
}

.close-album::after,
.close-apartment::after,
.close-pics::after,
.close-popup::after,
.close-video::after {
  opacity: 0;
}

.close-album::after,
.close-apartment::after,
.close-pics::after,
.close-popup::after,
.close-video::after,
.close-virtual::after,
.close::after {
  content: "";
  display: block;
  position: absolute;
  top: 10%;
  left: 10%;
  width: 80%;
  height: 80%;
  border-radius: 50%;
  background-color: var(--color-highlight);
}

.close::after {
  opacity: 0;
}

.close-virtual::after,
.is-touch .close-album::after,
.is-touch .close-apartment::after,
.is-touch .close-pics::after,
.is-touch .close-popup::after,
.is-touch .close-video::after,
.is-touch .close::after {
  opacity: 1;
}

.close-apartment {
  right: 2rem;
  pointer-events: none;
}

.close-apartment.show {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-delay: 0.3s;
  animation-delay: 0.3s;
  pointer-events: auto;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.overlay-dark {
  position: fixed;
  z-index: 500;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  -webkit-transition: clip-path 0.9s ease-in-out;
  transition: clip-path 0.9s ease-in-out;
  pointer-events: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-backdrop-filter: blur(5px);
  backdrop-filter: blur(5px);
  clip-path: circle(0 at 50% 0);
}

.overlay-dark::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0.95;
  background: var(--color-normal-dark);
}

.overlay-dark.show {
  clip-path: circle(150% at 50% 50%);
  pointer-events: auto;
}

.cursor-bg,
.cursor-zoom {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
}

.cursor-zoom {
  z-index: 10;
  width: 5vw;
  height: 5vw;
  pointer-events: none;
}

.cursor-bg {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  -webkit-transform: scale(0);
  -ms-transform: scale(0);
  transform: scale(0);
  -webkit-transition: all 0.6s ease-in-out;
  transition: all 0.6s ease-in-out;
  border-radius: 50%;
  background: var(--color-black-alpha-02);
  -webkit-backdrop-filter: blur(3px);
  backdrop-filter: blur(3px);
}

.cursor-text,
.form,
form {
  display: block;
  position: relative;
}

.cursor-text {
  color: var(--color-white);
  font-weight: 700;
  line-height: 1.6;
  text-align: center;
  text-transform: uppercase;
}

.cursor-zoom.active {
  opacity: 1;
}

.cursor-zoom.active .cursor-bg {
  -webkit-transform: none;
  -ms-transform: none;
  transform: none;
  opacity: 1;
}

.zoom-active .cursor-zoom {
  display: none;
}

.is-mobile .cursor-zoom,
.is-touch .cursor-zoom {
  display: none !important;
}

.form,
form {
  z-index: 5;
  width: 100%;
  height: auto;
}

.require-col {
  margin: 0;
  text-align: left;
}

.input-text,
.require-col {
  display: block;
  position: relative;
  width: 100%;
  height: auto;
}

.input-text input[type=text] {
  width: 100%;
  height: 3.5rem;
  padding: 0 1rem;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  border: 0;
  border-bottom: 1px solid var(--color-white-alpha-05);
  background-color: transparent;
  color: var(--color-white);
  font-size: 1rem;
  line-height: 3.5rem;
}

.input-area textarea:focus,
.input-text input[type=text]:focus {
  border-color: var(--color-highlight);
  -webkit-box-shadow: 0 1.5rem 2rem 0 var(--color-black-alpha-02);
  box-shadow: 0 1.5rem 2rem 0 var(--color-black-alpha-02);
}

.input-area,
.input-but {
  position: relative;
  width: 100%;
  height: auto;
}

.input-area {
  display: block;
  margin: 0;
}

.input-area textarea {
  width: 100%;
  height: 8rem;
  padding: 1rem;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  border: 0;
  border-bottom: 1px solid var(--color-white-alpha-05);
  background-color: transparent;
  color: var(--color-white);
  font-size: 1rem;
  line-height: 1.4;
  resize: none;
}

.input-but {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  z-index: 5;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  margin: 1rem 0 0;
}

.holder {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  overflow: hidden;
  -webkit-transition: opacity 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out;
  color: var(--color-light);
  font-size: 0.8rem;
  line-height: 3.5rem;
  pointer-events: none;
}

.holder.hide {
  width: 0;
  opacity: 0;
}

.button {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: auto;
  padding: 0.8rem 1.5rem 0.8rem 0.8rem;
  border-radius: 2rem;
  background-color: var(--color-highlight);
  color: var(--color-white);
}

.button::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 2rem;
  background: var(--color-normal);
  clip-path: circle(0 at 50% 0);
}

.button .arrow,
.button span,
.button svg {
  display: block;
  position: relative;
  z-index: 5;
}

.button span {
  margin-left: 0.5rem;
  font-size: 0.8rem;
  font-weight: 700;
  line-height: 1rem;
  text-shadow: 0 1px 1px var(--color-black-alpha-02);
  text-transform: uppercase;
}

.button .arrow,
.button svg {
  width: 1.2rem;
  height: 1.2rem;
}

.button,
.print,
.print-box {
  position: relative;
  height: auto;
}

.print {
  display: block;
  width: 100%;
  padding: 0 5%;
  text-align: center;
}

.print-box {
  display: inline-block;
  width: auto;
  margin: 0;
  padding: 0.5rem;
  border-radius: 0.8rem;
  background-color: var(--color-normal-dark);
  -webkit-box-shadow: 0 1.5rem 2rem 0 var(--color-black-alpha-02);
  box-shadow: 0 1.5rem 2rem 0 var(--color-black-alpha-02);
}

.print-box a,
.share-item a {
  color: var(--color-highlight);
}

.share-but,
.share-but::before {
  height: 3rem;
  vertical-align: middle;
}

.share-but {
  z-index: 1;
  width: auto;
  padding: 0 0.5rem;
  font-size: 0.6rem;
  line-height: 3rem;
  text-transform: uppercase;
}

.share-but::before {
  content: "";
  width: 3rem;
}

.share-but,
.share-but::before,
.share-item,
.share-item li,
.share-item ul {
  display: inline-block;
  position: relative;
}

.share-item {
  width: auto;
  height: auto;
  vertical-align: middle;
  white-space: nowrap;
}

.share-item ul {
  display: block;
  width: 100%;
  height: auto;
  text-align: left;
}

.share-item li {
  width: 3rem;
  height: 3rem;
  margin: 0 0.3rem;
}

.share-item a {
  display: block;
  width: 100%;
  height: 100%;
  border: 1px solid var(--color-highlight-alpha);
  border-radius: 0.5rem;
}

.share-item a .icon,
.share-item a svg {
  display: block;
  position: relative;
  width: 80%;
  height: 80%;
  margin: 10%;
}

.share-item a .icon {
  overflow: hidden;
}

.share-item a .icon .hover {
  -webkit-transform: translateY(100%);
  -ms-transform: translateY(100%);
  transform: translateY(100%);
}

.no-scroll {
  overflow: hidden;
  overflow: hidden;
}

.no-link {
  pointer-events: none !important;
}

.display-none,
.hidden,
.hide-it {
  display: none !important;
}

.display-block {
  display: block !important;
}

.disable-link {
  cursor: none;
}

.mobile-view {
  display: none;
}

.level-index-out {
  z-index: -9999;
  opacity: 0;
  pointer-events: none;
}

.level-index-in {
  z-index: 9990;
}

.onclick {
  cursor: pointer;
}

.height-zero {
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden;
}

.sub-mobile {
  display: none;
}

@media screen and (max-width: 1300px) {
  .option-scroll {
    width: 12rem;
  }
  .floor-03 .master-bg::after,
  .floor-top .master-bg::after {
    width: 50rem;
  }
  .key-block {
    right: 2vw;
  }
}
@media screen and (max-width: 1100px) {
  .cursor-zoom {
    display: none !important;
  }
  .download-pdf,
  .view-album,
  .view-video,
  .view-virtual {
    width: 4rem;
    height: 4rem;
  }
  .download-pdf::before,
  .view-album::before,
  .view-video::before,
  .view-virtual::before {
    background-color: var(--color-highlight);
  }
  .close,
  .close-album,
  .close-apartment,
  .close-pics,
  .close-popup,
  .close-video,
  .close-virtual {
    top: 1rem;
    right: 1rem;
    width: 50px;
    height: 50px;
    margin: 0;
  }
  .close-album::after,
  .close-apartment::after,
  .close-pics::after,
  .close-popup::after,
  .close-video::after,
  .close-virtual::after,
  .close::after {
    display: none;
  }
  .close-album::before,
  .close-apartment::before,
  .close-pics::before,
  .close-popup::before,
  .close-video::before,
  .close-virtual::before,
  .close::before {
    top: 10%;
    left: 10%;
    width: 80%;
    height: 80%;
    opacity: 1;
    background-color: var(--color-dark-alpha);
  }
  .column,
  .pic-trans > .trans-x {
    -webkit-transform: none !important;
    -ms-transform: none !important;
    transform: none !important;
  }
  .pic-trans {
    height: auto;
  }
  .pic-trans > .trans-x {
    left: auto;
    width: 100%;
  }
  .pic-trans > .trans-y {
    top: auto;
    height: auto;
    -webkit-transform: none !important;
    -ms-transform: none !important;
    transform: none !important;
  }
  .full-screen {
    top: 1rem;
    right: auto;
    bottom: auto;
    left: 1rem;
    width: 50px;
    height: 50px;
  }
  .all-pics .text-length h3,
  .text-house text,
  .title-album h2 {
    font-size: 0.8rem;
  }
  .video-skin {
    top: 0;
    bottom: auto;
    left: 0;
  }
  .overlay-video.show {
    height: 100%;
  }
  .album-pic-center img {
    max-width: 98%;
    max-height: inherit;
  }
  .title-album {
    top: 0;
    left: 0;
    width: 100%;
    padding: 1rem;
    text-align: center;
  }
  .album-pic-center .pic-name {
    padding: 1rem 80px;
  }
  .container-zoom {
    height: auto;
  }
  .container-zoom.zoomin {
    height: 90vh;
  }
  .album-center .container-zoom {
    height: 100vh;
  }
  .allvideo {
    z-index: 5000;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .video-skin,
  .video-wrap {
    position: absolute;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
  .video-wrap {
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
  }
  .video-skin {
    z-index: 10;
    width: 100%;
    height: 100%;
    min-height: 100%;
  }
  .details-center {
    width: 100%;
    max-width: inherit;
  }
  .wrap-view-more {
    margin: 2rem 0;
  }
  .icon-svg {
    width: 4rem;
    height: 4rem;
  }
  .view-more span {
    margin: 0 -1rem 0 0;
    font-size: 10px;
  }
  .box-nav,
  .content-main::after,
  .content-main::before {
    display: none;
  }
  .desktop-slide {
    height: auto;
  }
  .content-main,
  .group-central {
    min-height: inherit;
  }
  .content-main {
    display: block;
  }
  .desktop-slide .group-central {
    position: relative;
    z-index: auto !important;
    top: auto;
    left: auto;
    height: auto;
    min-height: inherit;
    -webkit-transform: none !important;
    -ms-transform: none !important;
    transform: none !important;
    pointer-events: auto;
  }
  .desktop-slide .group-central:first-child {
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
  .desktop-slide .content-main {
    display: block;
    position: relative;
    top: auto;
    left: auto;
    height: auto;
    min-height: inherit;
    padding: 0;
  }
  .sub-mobile {
    display: block;
    position: fixed;
    z-index: 50;
    top: 7rem;
    left: 0;
    width: auto;
    height: auto;
    -webkit-transform: translateX(-100%);
    -ms-transform: translateX(-100%);
    transform: translateX(-100%);
    -webkit-transition: -webkit-transform 0.3s ease-in-out;
    transition: -webkit-transform 0.3s ease-in-out;
    transition: transform 0.3s ease-in-out;
    transition: transform 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;
    opacity: 0;
  }
  .sub-mobile.top {
    top: 70px;
  }
  .slidebar {
    position: absolute;
    z-index: 80;
    top: 0;
    left: 100%;
    width: 2.5rem;
    height: 2.5rem;
    padding: 0.3rem;
    border-radius: 0 0.3rem 0.3rem 0;
    background: var(--color-highlight);
    cursor: pointer;
  }
  .slidebar::after {
    content: "";
    display: block;
    position: relative;
    width: 100%;
    height: 100%;
  }
  .sub-mobile li,
  .sub-mobile ul {
    display: block;
    position: relative;
    height: auto;
  }
  .sub-mobile ul {
    width: auto;
    margin: 0;
    padding: 0.5rem 0;
    border-radius: 0 0 0.3rem;
    background: var(--color-highlight-dark);
    list-style: none;
  }
  .sub-mobile li {
    width: 100%;
    border-bottom: 1px solid var(--color-white-alpha);
  }
  .sub-mobile li:first-child {
    border-top: 1px solid var(--color-white-alpha);
  }
  .sub-mobile li .click {
    display: block;
    position: relative;
    width: 100%;
    height: auto;
    padding: 0.5rem 1.5rem;
    background: var(--color-highlight);
    text-align: left;
  }
  .sub-mobile li .inner {
    display: block;
    color: var(--color-white);
    font-size: 0.7rem;
    font-weight: 700;
    text-transform: uppercase;
  }
  .sub-mobile li .click.current {
    pointer-events: none;
  }
  .sub-mobile.active {
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
  .sub-mobile li .click.current,
  .sub-mobile.active .slidebar {
    background: var(--color-highlight-dark);
  }
  .sub-mobile.active ul {
    -webkit-box-shadow: 0 1rem 1.5rem 0 var(--color-black-alpha-02);
    box-shadow: 0 1rem 1.5rem 0 var(--color-black-alpha-02);
  }
  .sub-mobile.show {
    -webkit-animation-name: fadeIn;
    animation-name: fadeIn;
    -webkit-animation-duration: 2s;
    animation-duration: 2s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
  }
  .text-quote {
    padding: 0 5rem;
  }
  .text-quote::before {
    top: -2.5rem;
    width: 5rem;
    height: 5rem;
  }
  .bg-cover {
    position: relative;
    top: auto;
    left: auto;
    height: auto;
  }
  .faci-item::after,
  .next-right,
  .prev-left {
    display: none;
  }
  .bg-full img,
  .home-about .pic-cover img,
  .home-partner .pic-img img {
    -o-object-position: center center;
    object-position: center center;
  }
  .home-about .content-main {
    padding: 0;
  }
  .home-about .pic-cover {
    position: relative;
    top: auto;
    left: auto;
    width: 90%;
    height: auto;
    margin: 5vw auto 0;
    border-radius: 0 15vw;
  }
  .home-about .text-content {
    width: 100%;
    max-width: 800px;
    margin: auto;
    padding: 10vw 8vw 0;
  }
  .home-about .wrap-view-more {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding-left: 0;
  }
  .wrap-slide {
    width: 100%;
    height: auto;
  }
  .home-lifestyle .wrap-slide {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
  }
  .lifestyle-item-text .box-txt {
    padding: 0;
  }
  .lifestyle-item-text .text-break::before {
    bottom: 0;
    left: 10vw;
  }
  .lifestyle-item-text .text-content {
    padding: 10vw 0 0;
  }
  .lifestyle-text .slidebox-arrows {
    position: relative;
    bottom: auto;
    left: auto;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin: 1rem;
  }
  .bgx-item,
  .bgx-slide {
    height: var(--wrap-height);
  }
  .home-facilities {
    background: 0 0 !important;
  }
  .home-facilities .content-main {
    padding: 5vw 5vw 10vw;
  }
  .home-facilities .wrap-content {
    width: 100%;
    height: auto;
    margin-bottom: 0;
  }
  .faci-item,
  .faci-slide {
    width: 100%;
    height: auto;
  }
  .faci-item {
    margin: 0;
    border-radius: 0;
    aspect-ratio: unset;
  }
  .faci-item .pic-cover {
    height: auto;
    border-radius: 0.5rem;
    aspect-ratio: 16/9;
  }
  .faci-item .box-txt {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    bottom: auto;
    left: auto;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin: 1rem 0;
    padding: 0 5vw;
    text-align: center;
  }
  .faci-item .box-txt h3,
  .home-facilities .text-break > small {
    font-size: 1.2rem;
  }
  .faci-slide .slidebox-track {
    height: auto;
  }
  .faci-slide .slidebox-list {
    -webkit-box-align: unset;
    -ms-flex-align: unset;
    align-items: unset;
  }
  .faci-item.is-active {
    width: 100%;
    height: auto;
    -webkit-box-shadow: none;
    box-shadow: none;
  }
  .faci-item.is-active .box-txt {
    bottom: auto;
  }
  .faci-item.is-active::after {
    opacity: 0;
  }
  .number-usp {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 3rem;
    height: 3rem;
    margin-right: 0.5rem;
    border-radius: 50%;
    background: var(--color-highlight);
    font-size: 1rem;
  }
  .home-facilities .icon-svg svg,
  .home-location .icon-svg svg {
    color: var(--color-white);
  }
  .home-facilities .wrap-slide {
    position: relative;
    bottom: auto;
    left: auto;
    width: 100%;
    margin-bottom: 1rem;
  }
  .home-facilities .text-break > strong {
    font-size: 10vw;
  }
  .bg-slide,
  .box-cover-right::before,
  .text-slide {
    display: none;
  }
  .home-location .content-main {
    display: block;
    padding: 0 0 10vw;
  }
  .home-location .text-content {
    width: 100%;
    padding: 5vw 8vw 0;
  }
  .home-location .box-txt {
    max-width: 600px;
    margin: 2rem auto;
  }
  .home-location .tagline-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 1rem;
  }
  .home-location .text-break,
  .home-location .wrap-view-more {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .home-location .text-break > small {
    margin: auto;
    font-size: 10vw;
  }
  .home-location .text-break > small:last-child,
  .location-intro .text-break > small:last-child {
    padding: 0;
  }
  .box-cover-right,
  .viewer {
    position: relative;
    top: auto;
    width: 100%;
  }
  .box-cover-right {
    left: auto;
    height: auto;
    overflow: visible;
  }
  .viewer {
    right: auto;
    max-width: inherit;
    height: 84.5vw;
  }
  .map-img {
    left: -15vw;
    width: 130vw;
  }
  .info-box {
    height: 84.5vw;
  }
  .compass {
    top: 5%;
    right: 1rem;
    width: 70px;
    height: 70px;
  }
  .button-zoom {
    position: relative;
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    padding: 2rem;
  }
  .pic-zoom-in,
  .pic-zoom-out {
    width: 2.5rem;
    height: 2.5rem;
    margin: 0;
  }
  .pic-zoom-in {
    margin-right: 1.5rem;
  }
  .home-partner .content-main {
    padding: 8vw 5vw;
  }
  .home-partner .bg-cover {
    bottom: auto;
  }
  .group-logo {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    max-width: inherit;
    margin: 0;
  }
  .box-partner {
    width: auto;
    margin: 1rem 0.5rem;
    padding: 0;
  }
  .group-logo.center-group .logo-partner img,
  .logo-partner img {
    max-width: 10rem;
    max-height: 5rem;
  }
  .box-partner .wrap-view-more {
    padding: 0;
  }
  #about-page .home-partner .bg-cover {
    display: block;
  }
  .group-logo.center-group .box-partner:nth-child(3) .logo-partner {
    margin: 0 0 2rem;
  }
  .group-logo.bottom-group,
  .group-logo.center-group {
    max-width: inherit;
  }
  .home-contact .content-main {
    padding: 5vw 0 0;
  }
  .home-contact .pic-cover {
    width: 90%;
    height: auto;
    margin: auto;
    border-radius: 0 15vw;
  }
  .home-contact .content-group {
    width: 100%;
    padding: 5vw;
    color: var(--color-black);
    text-shadow: none;
  }
  .home-contact .text-break {
    text-align: center;
  }
  .box-info {
    max-width: 600px;
    margin: auto !important;
    padding: 0;
  }
  .box-info > li .icon {
    width: 2rem;
    height: 2rem;
    margin: 0 0.5rem 0 0;
    opacity: 0.5;
    -webkit-filter: brightness(250%);
    filter: brightness(250%);
  }
  .box-info > li a:last-child {
    margin: 0;
  }
  .register .content-main,
  .register.revert .content-main {
    padding: 8vw 5vw;
    text-align: center;
  }
  .register .content-group {
    padding: 0;
  }
  .register .title-main {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: first baseline;
    -ms-flex-align: first baseline;
    align-items: first baseline;
    width: 100%;
  }
  .register .text-break {
    width: auto;
  }
  .register .text-break > strong {
    font-size: 1.2rem;
  }
  .register .text-content {
    width: 100%;
    margin-bottom: 5vw;
    padding: 0 5vw;
    text-align: center;
  }
  .register .text-content li {
    display: block;
    text-align: center;
  }
  .wrap-form {
    max-width: 600px;
    margin: 0 auto;
  }
  .input-but {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .about-intro .content-main {
    padding: 0;
  }
  .about-intro .bg-cover {
    left: auto;
  }
  .about-intro .text-content {
    width: 100%;
    max-width: 800px;
    margin: auto;
    padding: 8vw;
  }
  .project-scale .content-main {
    padding: 0;
  }
  .project-scale .text-content {
    width: 100%;
    max-width: 800px;
    margin: auto;
    padding: 8vw;
  }
  .contact-page .text-break > small,
  .library .text-break > strong,
  .location-intro .text-break > small,
  .project-scale .text-break > small {
    font-size: 10vw;
  }
  .details-center.partner .load-title {
    padding: 1rem;
  }
  .details-center.partner .load-title h2,
  .title-pic h3 {
    font-size: 2rem;
  }
  .details-center.partner {
    border-radius: 0;
  }
  .contact-page .content-main {
    padding: 0;
  }
  .contact-page .text-content {
    width: 100%;
    max-width: 800px;
    margin: auto;
    padding: 8vw 5vw;
  }
  .contact-page .box-info {
    max-width: inherit;
  }
  .location-intro .content-main {
    padding: 0;
  }
  .location-intro .text-content {
    width: 100%;
    padding: 8vw;
    text-align: center;
  }
  .location-intro .box-txt {
    max-width: 600px;
    margin: 2rem auto;
  }
  #location-page .home-location .bg-cover {
    width: 100%;
    height: auto;
  }
  #location-page .viewer {
    right: auto;
  }
  #location-page .panzoom,
  #location-page .panzoom.zoom-active,
  .key-block p {
    top: auto;
  }
  #location-page .home-location .mask-right {
    -webkit-mask-image: unset;
    mask-image: unset;
  }
  .location-extra .pic-cover {
    width: 100%;
    padding: 5vw;
  }
  .location-extra .text-content {
    width: 100%;
    margin: 0;
    padding: 0 8vw 8vw;
  }
  .location-extra .title-main {
    margin-bottom: 2rem;
    color: var(--color-white);
    text-align: center;
  }
  .group-time {
    display: block;
    overflow-x: auto;
    white-space: nowrap;
  }
  .box-time {
    padding: 0 1rem;
    color: var(--color-white);
  }
  .box-time .time {
    margin: 0 0 1rem;
  }
  .box-time .time span {
    margin-right: -0.5rem;
  }
  .box-time .time p {
    font-size: 1.5rem;
  }
  .time-location ul {
    margin-right: 2rem;
    white-space: nowrap;
  }
  .time-location li p {
    font-size: 0.9rem;
  }
  .big-thumb {
    height: auto;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
    -webkit-transition: none;
    transition: none;
    border-radius: 1rem;
    pointer-events: auto;
  }
  .big-thumb .pic-cover {
    left: 0;
    width: 100%;
  }
  .title-pic {
    display: block;
    position: relative;
    width: 100%;
    padding: 1rem;
    opacity: 1;
  }
  .gallery-slide {
    width: 100%;
    max-width: 800px;
    margin: auto;
  }
  .item-library {
    aspect-ratio: unset;
    margin: 0 0 2rem !important;
  }
  .item-library .view-album {
    right: auto;
    bottom: auto;
  }
  .item-library .download-pdf,
  .item-library .view-album,
  .item-library .view-video,
  .item-library .view-virtual {
    top: calc(50% - 2rem);
    left: calc(50% - 2rem);
    opacity: 1;
    pointer-events: auto;
  }
  .library .title-main {
    position: relative;
    bottom: auto;
    left: auto;
  }
  .brochure-library .content-main {
    padding: 5vw;
  }
  .brochure-item {
    width: 100%;
    height: auto;
    -webkit-transition: none;
    transition: none;
    opacity: 1;
    aspect-ratio: unset;
  }
  .brochure-item .big-thumb {
    width: 50vw;
    height: 50vw;
  }
  .brochure-item .title-pic {
    bottom: auto;
  }
  .brochure-library .tagline {
    position: relative;
    bottom: auto;
    left: auto;
  }
  .picture-library .content-main {
    padding: 5vw;
  }
  .picture-library .logo-a-content {
    left: -3rem;
  }
  .picture-library .tagline-inner {
    text-align: center;
  }
  .picture-item .title-pic {
    bottom: auto;
    left: auto;
    text-align: center;
  }
  .video-library .content-main {
    padding: 5vw;
  }
  .video-item {
    opacity: 1;
  }
  .video-item .title-pic {
    bottom: auto;
  }
  .virtual-library .content-main {
    padding: 5vw;
  }
  #facilities-page,
  #masterplan-page {
    margin-top: 7rem;
  }
  .masterplan {
    background: var(--color-normal-light);
  }
  .block .title-main,
  .masterplan .title-main {
    top: 1rem;
    bottom: auto;
    left: 0;
    width: 100%;
    text-align: center;
    pointer-events: none;
  }
  [data-name=masterplan-02] .block .title-main {
    top: 1rem;
    width: 100%;
  }
  .block .text-break > small,
  .facilities .text-break > small,
  .item-news-home .box-txt h3,
  .masterplan .text-break > small {
    font-size: 1rem;
  }
  .block .text-break > strong,
  .facilities .text-break > strong,
  .masterplan .text-break > strong {
    font-size: 5rem;
  }
  .block .master-bg::after,
  .note-01 {
    display: none;
  }
  .note-02 {
    top: 15%;
    right: 5vw;
    left: auto;
  }
  .name-block.showbox .block-stroke {
    fill: var(--color-highlight-alpha);
    fill-opacity: 0;
  }
  .block .text-break,
  .masterplan .text-break {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    width: 100%;
  }
  .name-block .ani-fill {
    fill-opacity: 0.5;
  }
  .master-bg::before {
    display: none;
    height: 150px;
  }
  .block .master-map > .compass,
  .masterplan .master-map > .compass {
    top: 20%;
    left: 0;
  }
  .block .block-note {
    top: 100px;
    bottom: auto;
    padding: 1rem;
  }
  .masterplan .block-note {
    padding: 1rem;
  }
  .block-note {
    width: 100%;
  }
  .block-note ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .block-note li {
    margin: 0.2rem 0.5rem;
  }
  .block-note li span {
    width: 1.2rem;
    height: 1.2rem;
  }
  .block .note-faci,
  .house-text::after {
    display: none;
  }
  .key-block {
    top: calc(var(--top-height) - 150px);
    bottom: auto;
    left: calc(50% - 125px);
    width: 250px;
    max-width: inherit;
  }
  .key-block .key {
    margin: -1.5rem 0 0;
  }
  .key-block > .compass {
    width: 2.5rem;
    height: 2.5rem;
  }
  .info-house,
  .list-info {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .info-house {
    position: relative;
    z-index: 10;
    top: auto;
    left: auto;
    margin: auto;
  }
  .list-info {
    padding: 1rem;
  }
  .block-name {
    display: block;
  }
  .house-text {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    top: auto !important;
    left: auto !important;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 48%;
    max-width: 180px;
    margin: 0 4px 10px;
    padding: 0;
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
    -webkit-transition: none;
    transition: none;
    opacity: 1;
    -webkit-box-shadow: none;
    box-shadow: none;
    cursor: pointer;
    pointer-events: auto;
  }
  .num-block span {
    top: 0.5rem;
  }
  .area-des h3 {
    font-size: 0.7rem;
  }
  .load-apartment {
    z-index: 200;
    height: 100%;
    overflow: hidden auto;
    background-color: var(--color-normal);
  }
  .bg-house {
    position: fixed;
  }
  .bg-house .bg-house-img {
    display: none;
  }
  .house-load {
    position: relative;
    top: auto;
    left: auto;
    height: auto;
  }
  .house-detail {
    height: auto;
  }
  .house-detail::after {
    top: 5rem;
    bottom: auto;
    height: calc(100% - 5rem);
  }
  .content-apartment {
    height: auto;
    padding: 5rem 0 0;
  }
  .apartment-pic {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    position: relative;
    z-index: 10;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 50vw;
    height: 100vh;
    margin: 0;
    text-align: center;
  }
  .scale-pic {
    position: relative;
    margin: 1rem 0;
    pointer-events: none;
  }
  .apartment-pic,
  .scale-pic {
    display: block;
    width: 100%;
    height: auto;
  }
  .scale-pic > img {
    width: 96%;
    max-width: 900px;
    max-height: 900px;
  }
  .content-house-left {
    position: relative;
    top: auto;
    left: auto;
    width: 100%;
    padding: 0;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
    text-align: center;
  }
  .top-title {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 100%;
  }
  .house-title small {
    display: inline-block;
    width: auto;
    margin: 0.5rem;
  }
  .house-title,
  .news-highlight .box-txt h3 {
    font-size: 1.2rem;
  }
  .house-number,
  .item-news-home::after,
  .item-news::after {
    border-radius: 0.5rem;
  }
  .apartment-des {
    width: 100%;
  }
  .floor-des {
    color: var(--color-white);
  }
  .share {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    margin: 1rem auto;
  }
  .box-time .time span,
  .share a {
    width: 3rem;
    height: 3rem;
  }
  .des-house {
    position: relative;
    bottom: auto;
    left: auto;
    width: 100%;
    padding: 1rem 5vw 5rem;
    text-align: center;
  }
  .des-house p {
    font-size: 12px;
  }
  .slide-pic-nav {
    top: 1rem;
    right: auto;
    left: 1rem;
  }
  .slide-pic-nav .arrow {
    width: 50px;
    height: 50px;
    margin: 0;
  }
  .slide-pic-nav .arrow-next {
    margin: 0 1rem;
  }
  .slide-pic-nav.show {
    -webkit-animation-name: goRight;
    animation-name: goRight;
  }
  .keyplan {
    position: relative;
    right: auto;
    bottom: auto;
    width: 320px;
    margin: 1rem auto;
    padding: 2rem 0;
  }
  .keyplan > .compass {
    top: 1rem;
    width: 50px;
    height: 50px;
  }
  .another-link h3,
  .title-key {
    font-size: 13px;
  }
  .title-key > div {
    font-size: 14px;
  }
  .keyplan-svg svg .frame path {
    stroke: var(--color-white);
  }
  .news-banner .bg-cover::after,
  .news-banner .bg-cover::before,
  .tooltip {
    display: none;
  }
  .keyplan-svg .key-area {
    pointer-events: none;
  }
  .opt-02 .title-key > div {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
  }
  .opt-02 .title-key .floor-num {
    margin: 0;
  }
  .opt-02 .keyplan {
    width: 16rem;
  }
  .virtual-item,
  .wrap-another-link {
    position: relative;
    top: auto;
    right: auto;
    width: 320px;
    margin: 2rem auto;
  }
  .virtual-item {
    display: block;
    width: auto;
    height: auto;
    margin: 1rem auto;
    text-align: center;
  }
  .virtual-item h3 {
    padding: 0.8rem;
    font-size: 1rem;
  }
  .virtual-item .view-virtual {
    margin: 0 auto;
  }
  .facilities .title-main {
    top: 1rem;
    bottom: auto;
  }
  .facilities .compass {
    top: 15%;
    left: 0;
  }
  .hover-svg {
    pointer-events: auto;
  }
  .facilities .text-break {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    width: 100%;
  }
  .floor-02 .title-main,
  .floor-03-B .title-main,
  .floor-36-37 .title-main {
    top: 1rem;
    width: 100%;
  }
  .faci-note {
    display: block;
    position: relative;
    top: auto;
    right: auto;
    left: auto;
    width: 100%;
    height: auto;
    padding: 0 5vw;
    background-color: var(--color-normal-dark);
  }
  .option-scroll {
    width: 100%;
  }
  .option-scroll .scroll-list,
  .scroll-list {
    padding: 2rem 0 1rem;
    overflow: auto hidden;
    text-align: center;
    scroll-behavior: smooth;
  }
  .box-list-inner,
  .list-inner {
    display: inline-block;
    width: auto;
  }
  .list-inner {
    text-align: left;
    white-space: nowrap;
  }
  .box-list-inner {
    margin: 0 2rem 0 0;
  }
  .box-list-inner:last-child {
    margin: 0;
  }
  .box-list-inner h3 {
    display: block;
    background-clip: unset;
    background-image: unset;
    color: var(--color-normal-light);
    font-size: 0.9rem;
    font-weight: 700;
    -webkit-text-fill-color: unset;
    -webkit-filter: none;
    filter: none;
    -webkit-box-decoration-break: unset;
    box-decoration-break: unset;
  }
  .text-color-head.show {
    -webkit-animation: none;
    animation: none;
  }
  .box-list-inner ul {
    display: inline-block;
    width: auto;
    margin: 0 2rem 0 0;
    vertical-align: top;
  }
  .hover-text {
    margin: 1rem 0;
  }
  .dot-num.current .cir-dot {
    stroke-width: 1rem;
    stroke: var(--color-red);
  }
  .dot-num text {
    font-size: 16px;
  }
  .sub-menu {
    position: relative;
    right: auto;
    bottom: auto;
    width: 100%;
    padding: 0;
  }
  .sub-menu-inner {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .sub-menu-inner a {
    border-radius: 3rem;
    background-color: var(--color-normal);
  }
  .sub-menu-inner a span {
    padding: 0.7rem 1.2rem;
    border-radius: 3rem;
    font-size: 1rem;
  }
  .sub-menu-inner a span::after {
    top: 0.2rem;
    left: 0.2rem;
    width: calc(100% - 0.4rem);
    height: calc(100% - 0.4rem);
    border-radius: 3rem;
  }
  .news-banner .content-main {
    display: block;
    padding: 2rem;
  }
  .news-banner .text-break > strong {
    font-size: 10vw;
  }
  .news-banner .scroll-text {
    display: none;
  }
  .news-banner .title-main {
    width: 100%;
    text-align: center;
  }
  .news-banner .text-break {
    width: auto;
  }
  .home-news .content-main {
    padding: 0 5vw 8vw;
  }
  .wrap-news {
    display: block;
    width: 100%;
    max-width: 700px;
  }
  .item-news-home,
  .news-highlight {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    margin: 0 0 1rem;
    padding: 1rem;
  }
  .pic-news {
    width: 50%;
  }
  .pic-news .pic-cover {
    height: 200px;
    border-radius: 0.3rem;
    aspect-ratio: unset;
  }
  .item-news-home .box-txt {
    width: 50%;
    padding: 1rem;
  }
  .news-highlight .pic-news .pic-cover {
    height: 250px;
  }
  .wrap-news-two {
    display: none;
  }
  .item-news,
  .item-news:nth-child(even) {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    margin: 0 0 1rem;
    padding: 1rem;
    background-color: transparent;
  }
  .item-news .pic-news {
    width: 50%;
    max-width: inherit;
    height: auto;
    margin: 0;
    aspect-ratio: unset;
  }
  .item-news .pic-news .pic-cover {
    height: 200px;
    border-radius: 0.3rem;
  }
  .item-news .box-txt {
    display: block;
    width: 50%;
    max-width: inherit;
    padding: 1rem;
  }
  .item-news .box-txt h3 {
    margin-bottom: 0.5rem;
    font-size: 1rem;
  }
  .date {
    width: 100%;
    margin-bottom: 0.5rem;
    padding: 0;
  }
  .item-news:nth-child(even)::after {
    border-color: var(--color-white-alpha-03);
  }
  .load-title {
    padding: 2rem 5%;
  }
  .details-news {
    padding-bottom: 10vw;
  }
  .progress .content-main {
    padding: 0 5vw 5vw;
  }
  .progress-list {
    width: 100%;
    margin: 2rem 0;
  }
  .box-progress h3 {
    position: relative;
    bottom: auto;
    left: auto;
    font-size: 1rem;
  }
  .wrap-select {
    position: relative;
    top: auto;
    right: auto;
    width: 100%;
    padding: 0;
  }
  .select-list {
    width: 300px;
    margin: 0 auto 3rem;
  }
  .thank-you .content-main {
    padding: 5vw 0;
  }
  .thank-you .title-main {
    width: 100%;
    text-align: center;
  }
  .thank-you .text-break {
    width: auto;
  }
  .thank-you .text-content {
    width: 100%;
    padding: 8vw;
    text-align: center;
  }
  .thank-you .box-txt {
    text-align: center;
  }
  .thank-you .wrap-view-more {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    margin: 1rem auto;
  }
  .error-info .icon-svg::before,
  .thank-you .icon-svg::before {
    background: var(--color-normal);
  }
  .error-info .content-main {
    padding: 5vw 0;
  }
  .error-info .title-main {
    width: 100%;
    text-align: center;
  }
  .error-info .text-break {
    width: auto;
  }
  .error-info .text-content {
    width: 100%;
    padding: 8vw;
    text-align: center;
  }
  .error-info .box-txt {
    text-align: center;
  }
  .error-info .wrap-view-more {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    margin: 1rem auto;
  }
  .project-register {
    z-index: 20;
    right: 0;
    left: auto;
    width: auto;
    height: auto;
    min-height: inherit;
  }
  .project-register::after {
    width: 100%;
    height: 100%;
    border-radius: 1rem 0 0;
  }
  .project-register .close {
    display: block;
    position: absolute;
    z-index: 10;
    top: 10px;
    right: 10px;
    width: 30px;
    height: 30px;
    opacity: 1;
  }
  .project-register.hidden {
    visibility: hidden;
  }
  .title-small h2 {
    font-size: 1.6rem;
  }
  .wrap-register {
    display: block;
    height: auto;
    padding: 5vw;
  }
  .wrap-register .require-col {
    display: block;
    width: 100%;
    max-width: 500px;
    margin: 0 auto;
  }
  .wrap-register .input-text {
    width: 280px;
    margin: 1rem 0;
  }
  .wrap-register .input-but {
    margin: 1rem 0;
  }
}
@media only screen and (max-width: 1100px) and (orientation: portrait) {
  .banner-home {
    height: 133.3333333333vw;
    max-height: 80vh;
  }
  .bg-full::after {
    display: none;
  }
  .tagline {
    position: relative;
    bottom: auto;
    padding: 0 5vw 1rem;
  }
  .tagline-inner strong {
    font-size: 14vw;
  }
  .lifestyle-text .text-break > small,
  .tagline-inner small {
    font-size: 10vw;
  }
  .tagline-big span {
    font-size: 7vw;
  }
  .tagline-big {
    top: -5vw;
  }
  .home-lifestyle .wrap-slide {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .lifestyle-slide {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
    width: 100vw;
  }
  .lifestyle-item,
  .lifestyle-slide {
    height: 80vw;
  }
  .lifestyle-text {
    top: -10vw;
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
    width: 100%;
    padding: 0 8vw;
  }
  .lifestyle-text .text-break > strong {
    font-size: 15vw;
  }
  .facilities .master-map {
    display: block;
    height: 90.3225806452vw;
  }
  .floor-02 .master-map,
  .floor-03 .master-map,
  .floor-03-B .master-map,
  .floor-36-37 .master-map,
  .floor-top .master-map {
    height: 121.7391304348vw;
  }
  .masterplan .master-map {
    max-height: 550px;
  }
  .block .master-map,
  .masterplan .master-map {
    height: 90.3225806452vw;
  }
  .block .text-break > small:last-child,
  .masterplan .text-break > small:last-child {
    width: 100%;
    margin: 1rem;
    font-size: 1.5rem;
  }
  .block .block-note,
  .masterplan .block-note {
    position: relative;
    top: auto;
    bottom: auto;
    left: auto;
    border-bottom: 1px solid var(--color-white-alpha);
  }
}
@media only screen and (max-width: 1100px) and (orientation: landscape) {
  .banner-home {
    height: 100vh;
    min-height: 100vh;
  }
  .bg-full::after {
    height: 50%;
  }
  .tagline-inner strong {
    font-size: 10vw;
  }
  .tagline-inner small {
    font-size: 7vw;
  }
  .tagline-big span {
    font-size: 5vw;
  }
  .tagline-big {
    top: -3vw;
  }
  .lifestyle-slide {
    width: 50vw;
  }
  .lifestyle-item,
  .lifestyle-slide {
    height: 62.5vw;
  }
  .lifestyle-text {
    width: 50vw;
    padding: 5vw;
  }
  .lifestyle-text .slidebox-arrows {
    bottom: 0;
    left: 5vw;
  }
  .facilities .master-map,
  .masterplan .master-map {
    display: block;
    height: 75vw;
  }
  .block .master-map {
    height: 87.5vw;
  }
  [data-name=masterplan-02] .block .master-map {
    height: 103.7037037037vw;
  }
}
@media screen and (max-width: 900px) {
  .dot-num text {
    font-size: 18px;
  }
  .text-house text {
    font-size: 0.9rem;
  }
}
@media screen and (max-width: 780px) {
  .block .text-break > small:last-child,
  .facilities .text-break > small:last-child,
  .masterplan .text-break > small:last-child {
    width: 100%;
    margin: 1rem;
    font-size: 1.5rem;
  }
  .block .block-note,
  .masterplan .block-note {
    position: relative;
    top: auto;
    bottom: auto;
    left: auto;
    border-bottom: 1px solid var(--color-white-alpha);
  }
}
@media screen and (max-width: 680px) {
  .wrap-page {
    display: block;
  }
  .box-progress {
    margin-bottom: 1rem;
  }
  .key-block {
    top: calc(var(--top-height) - 95px);
    left: calc(50% - 90px);
    width: 200px;
  }
  .key-block p {
    font-size: 0.5rem;
  }
  .block-note {
    width: 100%;
  }
  .block-note ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .block-note li {
    margin: 0.2rem 0.5rem;
  }
  .block-note li span {
    width: 1.2rem;
    height: 1.2rem;
  }
  .block .note-faci {
    display: none;
  }
}
@media print {
  .banner,
  .bread,
  .footer,
  .go-top,
  .header,
  .loadx,
  .overlay-dark,
  .print,
  .relative-page,
  .scrollbar,
  .srcoll-down,
  .sub-menu,
  .title-page {
    display: none;
  }
  .ani-item,
  .chapeau,
  .container,
  .load-text,
  .load-title {
    visibility: visible;
    -webkit-transform: none !important;
    -ms-transform: none !important;
    transform: none !important;
    opacity: 1 !important;
  }
  .container {
    margin: auto;
  }
  .ani-item,
  .chapeau,
  .load-text,
  .load-title {
    width: 100% !important;
    max-width: inherit;
  }
}
.text-uppercase {
  text-transform: uppercase;
}

* ::-webkit-scrollbar,
::-webkit-scrollbar {
  display: none;
  width: 0;
}

.smooth,
.smooth-detail {
  min-height: 100vh;
  scroll-behavior: auto;
}

.smooth [data-prevent],
.smooth-detail [data-prevent] {
  -ms-scroll-chaining: none;
  overscroll-behavior: contain;
}

[data-orientation=vertical] {
  overflow: hidden auto;
}

[data-orientation=horizontal] {
  overflow: auto hidden;
}

.scrollbar-body,
.scrollbar-inner {
  position: fixed;
  top: 0;
  right: 0;
  width: 0.6rem;
  height: 100%;
  -webkit-transform-origin: center right;
  -ms-transform-origin: center right;
  transform-origin: center right;
}

.scrollbar-inner {
  z-index: 140;
}

.scrollbar-body {
  z-index: 130;
}

.scrollbar-body-thumb,
.scrollbar-inner-thumb {
  position: absolute;
  top: 0;
  right: 0.1rem;
  width: 0.3rem;
  -webkit-transition: opacity 0.3s ease-in-out, width 0.2s ease, height 0.2s ease;
  transition: opacity 0.3s ease-in-out, width 0.2s ease, height 0.2s ease;
  border-radius: 0.3rem;
  opacity: 0;
  background-color: var(--color-white-alpha);
  cursor: -webkit-grab;
  cursor: grab;
}

.scrollbar-body-thumb:active,
.scrollbar-inner-thumb:active {
  cursor: -webkit-grabbing;
  cursor: grabbing;
}

.scrollbar-body-thumb:hover,
.scrollbar-inner-thumb:hover {
  width: 0.5rem;
  border-radius: 0.5rem;
  opacity: 1;
}

[data-orientation=horizontal] .scrollbar-body,
[data-orientation=horizontal] .scrollbar-inner {
  top: auto;
  right: auto;
  bottom: 0.1rem;
  left: 0;
  width: 100%;
  height: 0.3rem;
  border-radius: 0.3rem;
}

[data-orientation=horizontal] .scrollbar-body-thumb,
[data-orientation=horizontal] .scrollbar-inner-thumb {
  right: auto;
  bottom: 0;
}

[data-orientation=horizontal] .scrollbar-body-thumb:hover,
[data-orientation=horizontal] .scrollbar-inner-thumb:hover {
  height: 0.5rem;
  border-radius: 0.5rem;
  opacity: 1;
}

.scrolling .scrollbar-body-thumb,
.scrolling .scrollbar-inner-thumb {
  opacity: 1;
}

.scrolling .trans,
.scrolling iframe {
  pointer-events: none;
}

.stopped {
  overflow: hidden;
}

.stopped > .scrollbar-body,
.stopped > .scrollbar-inner {
  opacity: 0;
  pointer-events: none;
}

.is-mobile .scrollbar-body,
.is-mobile .scrollbar-inner,
.is-touch .scrollbar-body,
.is-touch .scrollbar-inner {
  display: none;
}

@media only screen and (min-width: 768px) and (max-width: 1100.98px) {
  .section-top-keyvisual.group-central {
    height: 10.5rem;
  }
}
@media only screen and (max-width: 767.98px) {
  .section-top-keyvisual.group-central {
    height: 4.18rem;
  }
}
.list-top-keyvisual {
  width: 100%;
  height: 100%;
}

.list-top-keyvisual > div {
  width: 100%;
  height: 100%;
}

.list-top-keyvisual .swiper-slide {
  overflow: hidden;
}

.list-top-keyvisual .slider-image {
  position: relative;
  width: 100%;
  height: 100%;
}

.list-top-keyvisual .slider-wrapper {
  position: relative;
  overflow: hidden;
}

.list-top-keyvisual .slider-decor {
  position: absolute;
  z-index: 1;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}

.list-top-keyvisual .slider-content {
  display: block;
  position: absolute;
  z-index: 2;
  width: 100%;
  -webkit-transition: opacity 1s cubic-bezier(0.8, 0, 0.2, 1), -webkit-transform 1s cubic-bezier(0.8, 0, 0.2, 1);
  transition: opacity 1s cubic-bezier(0.8, 0, 0.2, 1), -webkit-transform 1s cubic-bezier(0.8, 0, 0.2, 1);
  transition: transform 1s cubic-bezier(0.8, 0, 0.2, 1), opacity 1s cubic-bezier(0.8, 0, 0.2, 1);
  transition: transform 1s cubic-bezier(0.8, 0, 0.2, 1), opacity 1s cubic-bezier(0.8, 0, 0.2, 1), -webkit-transform 1s cubic-bezier(0.8, 0, 0.2, 1);
  opacity: 0;
  pointer-events: none;
}

.list-top-keyvisual .swiper-slide-active .slider-content {
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
  opacity: 1;
}

.list-top-keyvisual .text-title {
  display: block;
  margin: 0;
  color: #fff;
  text-align: center;
  text-shadow: 0 0 4px rgba(0, 0, 0, 0.4);
}

.list-top-keyvisual .text-title.is-lion {
  color: #f9f3dd;
}

.list-top-keyvisual .title-bottom {
  font-family: "TT_Commons_Bold", sans-serif;
  font-weight: 700;
}

.list-top-keyvisual .text-title span {
  display: block;
}

.list-top-keyvisual .slider-image img {
  -o-object-position: top center;
  object-position: top center;
}

.list-top-keyvisual .content-logo {
  margin: 0 auto;
}

.list-top-keyvisual .content-title {
  color: #004c40;
  font-family: Vogun, sans-serif;
  font-weight: 500;
  text-align: center;
  text-transform: uppercase;
}

.list-top-keyvisual .title-wrapper {
  margin-bottom: 0;
}

.list-top-keyvisual .swiper-pagination-bullet {
  border: 1px solid #fff;
  background: transparent !important;
}

.list-top-keyvisual .swiper-pagination-bullet-active {
  background: #fff !important;
}

@media (min-width: 768px) {
  .list-top-keyvisual .swiper-pagination {
    bottom: 0.74rem !important;
  }
  .list-top-keyvisual .swiper-pagination-bullet {
    width: 0.1rem;
    height: 0.1rem;
  }
  .list-top-keyvisual .slider-content {
    max-width: 6.93rem;
    -webkit-transform: translateY(0.8rem);
    -ms-transform: translateY(0.8rem);
    transform: translateY(0.8rem);
  }
  .list-top-keyvisual .slider-content.is-first {
    top: 0.42rem;
    left: 2.21rem;
  }
  .list-top-keyvisual .slider-content.is-second {
    top: 1.92rem;
    left: 2.06rem;
  }
  .list-top-keyvisual .slider-content.is-third {
    top: 0.86rem;
    left: 5.5rem;
  }
  .list-top-keyvisual .slider-content.is-fourth {
    top: 0.86rem;
    left: 5.94rem;
  }
  .list-top-keyvisual .content-logo {
    max-width: 5.61rem;
    margin-bottom: 0.43rem;
  }
  .list-top-keyvisual .content-text {
    margin-bottom: -0.03rem;
  }
  .list-top-keyvisual .text-title.is-small .title-top,
  .list-top-keyvisual .text-title.is-small .title-bottom {
    font-size: 0.4rem;
    line-height: 0.7;
  }
  .list-top-keyvisual .title-top {
    margin-bottom: 0.26rem;
    font-size: 0.48rem;
    line-height: 0.5833333333;
  }
  .list-top-keyvisual .title-bottom {
    font-size: 0.46rem;
    line-height: 0.6086956522;
  }
  .list-top-keyvisual .content-title {
    font-size: 0.6rem;
    line-height: 1.3;
  }
  .list-top-keyvisual .title-wrapper {
    margin-top: 0.3rem;
  }
}
@media only screen and (min-width: 1101px) and (max-width: 1799.98px) {
  .list-top-keyvisual .slider-decor.is-right img {
    -o-object-position: top right;
    object-position: top right;
  }
  .list-top-keyvisual .slider-decor.is-left img {
    -o-object-position: top left;
    object-position: top left;
  }
}
@media only screen and (max-width: 767.98px) {
  .list-top-keyvisual .slider-content {
    max-width: 2.12rem;
    -webkit-transform: translateY(0.4rem);
    -ms-transform: translateY(0.4rem);
    transform: translateY(0.4rem);
  }
  .list-top-keyvisual .swiper-pagination-bullet {
    width: 0.07rem;
    height: 0.07rem;
  }
  .list-top-keyvisual .slider-content.is-first {
    top: 0.43rem;
    left: 0.85rem;
  }
  .list-top-keyvisual .slider-content.is-second {
    top: 0.8rem;
    left: 0.24rem;
  }
  .list-top-keyvisual .slider-content.is-third {
    top: 0.57rem;
    left: 0.56rem;
  }
  .list-top-keyvisual .slider-content.is-fourth {
    top: 0.48rem;
    left: 1.14rem;
  }
  .list-top-keyvisual .content-logo {
    max-width: 1.66rem;
    margin-bottom: 0.01rem;
  }
  .list-top-keyvisual .content-text {
    margin-bottom: -0.03rem;
  }
  .list-top-keyvisual .text-title.is-small .title-top {
    margin-bottom: -0.07rem;
  }
  .list-top-keyvisual .text-title.is-small .title-top,
  .list-top-keyvisual .text-title.is-small .title-bottom {
    font-size: 0.14rem;
    line-height: 2;
  }
  .list-top-keyvisual .title-top {
    margin-bottom: -0.12rem;
  }
  .list-top-keyvisual .title-top,
  .list-top-keyvisual .title-bottom {
    font-size: 0.15rem;
    line-height: 1.8666666667;
  }
  .list-top-keyvisual .content-title {
    max-width: 1.96rem;
    margin: 0 auto;
    font-size: 0.25rem;
    line-height: 1.3;
  }
  .list-top-keyvisual .title-wrapper {
    margin-top: 0.02rem;
  }
}
.section-top-information {
  position: relative;
  background: #195450 url("../img/top/video_bg_01.jpg") center center/cover no-repeat;
}

.section-top-information::after {
  content: "";
  position: absolute;
  z-index: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  -webkit-transform: matrix(1, 0, 0, -1, 0, 0);
  -ms-transform: matrix(1, 0, 0, -1, 0, 0);
  transform: matrix(1, 0, 0, -1, 0, 0);
  opacity: 0.8;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(36.38%, #195450), to(rgba(25, 84, 80, 0)));
  background: linear-gradient(180deg, #195450 36.38%, rgba(25, 84, 80, 0) 100%);
  pointer-events: none;
}

.section-top-information .wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  z-index: 1;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  height: 100%;
}

.section-top-information .information-controller {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.section-top-information .information-wrapper {
  height: 100%;
}

@media (min-width: 768px) {
  .section-top-information {
    padding: 0.5rem 0;
  }
  .section-top-information::after {
    height: 5.74rem;
  }
  .section-top-information .information-thumbnail {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -webkit-transform: scale(1.05);
    -ms-transform: scale(1.05);
    transform: scale(1.05);
    -webkit-transition: -webkit-transform 1.2s ease;
    transition: -webkit-transform 1.2s ease;
    transition: transform 1.2s ease;
    transition: transform 1.2s ease, -webkit-transform 1.2s ease;
  }
  .section-top-information.show-text .information-thumbnail {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
  }
  .section-top-information .information-controller {
    margin-bottom: 0.2rem;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1100.98px) {
  .section-top-information.group-central {
    height: 9.93rem;
  }
}
@media only screen and (max-width: 767.98px) {
  .section-top-information::after {
    height: 100%; background: transparent !important;
  }
  .list-top-information .item-list br{display: none;}
  .section-top-information .information-wrapper {
    padding: 0.26rem 0 0.32rem;
    background-color: #1a5450;
  }
}
.list-top-information {
  color: #fff;
}

.list-top-information .list-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
  list-style: none;
}

.list-top-information .list-item {
  position: relative;
}

.show-text .data-index .ani-fadeIn.on-show.list-item::before {
  height: 100%;
  -webkit-transition: height 0.8s ease-in-out 0.4s;
  transition: height 0.8s ease-in-out 0.4s;
}

.list-top-information .list-item::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 1px;
  height: 0;
  background-color: rgba(255, 255, 255, 0.4);
}

.list-top-information .item-title {
  font-weight: 400;
}

@media (min-width: 768px) {
  .list-top-information .list-item {
    width: 16.6666666667%;
    padding: 0.16rem 0 0.38rem;
  }
  .list-top-information .item-wrapper {
    padding: 0.02rem 0.18rem;
  }
  .list-top-information .item-title {
    margin-bottom: 0.08rem;
    font-size: 0.28rem;
    line-height: 1.5;
  }
}
@media only screen and (max-width: 767.98px) {
  .list-top-information {
    padding: 0 0.03rem;
  }
  .list-top-information .list-item::before {
    height: 100%;
  }
  .list-top-information .list-wrapper {
    margin-top: -0.04rem;
  }
  .list-top-information .list-item {
    width: 50%;
    margin-bottom: 0.14rem;
    padding: 0.04rem 0.19rem 0.14rem;
  }
  .list-top-information .item-title {
    margin-bottom: 0;
    font-size: 0.17rem;
    line-height: 1.5294117647;
  }
  .list-top-information .item-list {
    font-size: 0.15rem;
    line-height: 1.1333333333;
  }
}
.section-top-introduction {
  background: url("../img/top/video_bg_01.jpg") center center/cover no-repeat;
}

@media (min-width: 768px) {
  .section-top-introduction {
    padding: 0.9rem 0;
  }
  .section-top-introduction .wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 100%;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1100.98px) {
  .section-top-introduction.group-central {
    height: 10.3rem;
  }
}
@media only screen and (max-width: 767.98px) {
  .section-top-introduction .wrapper {
    padding: 0 0.04rem;
  }
  .section-top-introduction {
    padding: 0.22rem 0;
  }
}
.section-top-area {
  background-color: #024b40;
}

.section-top-area .wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  z-index: 1;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  height: 100%;
}

.section-top-area .area-viewport {
  height: 100%;
}

.section-top-area .thumbnail-wrapper {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  position: relative;
}

.section-top-area .thumbnail-wrapper img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
}

.section-top-area .thumbnail-icon {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}

@media (min-width: 768px) {
  .section-top-area .area-thumbnail {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: absolute;
    top: 0;
    right: 0;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 100%;
    height: 100dvh;
  }
  .section-top-area .area-wrapper {
    max-width: 4.66rem;
  }
  .section-top-area .area-image {
    max-width: 3.87rem;
    margin-left: -0.14rem;
  }
  .section-top-area .title-common-primary {
    margin-bottom: 0.24rem;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1100.98px) {
  .section-top-area.group-central {
    height: 11.05rem;
  }
  .section-top-area .area-thumbnail {
    height: 100%;
  }
}
@media only screen and (max-width: 767.98px) {
  .section-top-area .area-viewport {
    padding: 0.23rem 0.04rem 0.18rem;
  }
  .section-top-area .image-wrapper {
    max-width: 3.87rem;
    margin: -0.05rem 0.01rem 0.25rem;
  }
}
.section-top-utilities {
  background: #195450 url("../img/top/utilities_bg_01.png") center center/cover no-repeat;
}

.section-top-utilities .utilities-paragraph {
  color: #fff;
}

.section-top-utilities .utilities-paragraph p:last-child {
  margin-bottom: 0;
}

.section-top-utilities .utilities-paragraph ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.section-top-utilities .utilities-paragraph li {
  position: relative;
}

.section-top-utilities .utilities-paragraph li::before {
  content: "・";
  position: absolute;
  left: 0;
  margin-left: 0.04rem;
}

@media (min-width: 768px) {
  .section-top-utilities {
    padding: 0.5rem 0;
  }
  .section-top-utilities .text-break {
    margin-bottom: 0.1rem;
  }
  .section-top-utilities .wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 100%;
  }
  .section-top-utilities .utilities-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
  }
  .section-top-utilities .utilities-content {
    width: 6.57rem;
  }
  .section-top-utilities .utilities-paragraph {
    margin-bottom: 0.45rem;
    font-size: 0.2rem;
    line-height: 1.3;
  }
  .section-top-utilities .utilities-paragraph p {
    margin-bottom: 0.14rem;
  }
  .section-top-utilities .utilities-paragraph ul {
    margin-bottom: 0.16rem;
  }
  .section-top-utilities .utilities-paragraph li {
    padding-left: 0.3rem;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1100.98px) {
  .section-top-utilities.group-central {
    height: 10.3rem;
  }
}
@media only screen and (max-width: 767.98px) {
  .section-top-utilities {
    padding: 0.32rem 0 0.26rem;
  }
  .section-top-utilities .wrapper {
    width: calc(100% - 0.4rem);
  }
  .section-top-utilities .title-common-primary {
    margin-bottom: 0.08rem;
  }
  .section-top-utilities .utilities-paragraph {
    margin-bottom: 0.14rem;
    font-size: 0.15rem;
    line-height: 1.1333333333;
  }
  .section-top-utilities .utilities-paragraph p {
    margin-bottom: 0.09rem;
  }
  .section-top-utilities .utilities-paragraph ul {
    margin-bottom: 0.09rem;
  }
  .section-top-utilities .utilities-paragraph li {
    padding-left: 0.24rem;
  }
}
.list-top-utilities {
  display: grid;
  grid-gap: 0;
  grid-template-columns: repeat(6, 1fr);
  grid-template-rows: repeat(6, 1fr);
}

.list-top-utilities .grid-item:nth-child(1) {
  grid-area: 2/1/4/4;
}

.list-top-utilities .grid-item:nth-child(2) {
  grid-area: 1/4/4/5;
}

.list-top-utilities .grid-item:nth-child(3) {
  grid-area: 1/5/4/7;
}

.list-top-utilities .grid-item:nth-child(4) {
  grid-area: 4/1/6/5;
}

.list-top-utilities .grid-item:nth-child(5) {
  grid-area: 4/5/7/7;
}

@media (min-width: 768px) {
  .list-top-utilities {
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    max-width: 10.35rem;
    -webkit-transform: translateY(calc(-50% + 0.2rem));
    -ms-transform: translateY(calc(-50% + 0.2rem));
    transform: translateY(calc(-50% + 0.2rem));
  }
  .list-top-utilities .grid-item:nth-child(1) {
    width: 4.48rem;
    height: 2.97rem;
    margin-top: 0.03rem;
  }
  .list-top-utilities .grid-item:nth-child(2) {
    width: 1.74rem;
    height: 4.43rem;
    margin: 0.1rem 0 0 -0.26rem;
  }
  .list-top-utilities .grid-item:nth-child(3) {
    width: 3.85rem;
    height: 4.43rem;
    margin-top: 0.1rem;
  }
  .list-top-utilities .grid-item:nth-child(4) {
    width: 6.35rem;
    height: 2.97rem;
    margin-top: 0.08rem;
  }
  .list-top-utilities .grid-item:nth-child(5) {
    width: 3.85rem;
    height: 3.92rem;
    margin-top: 0.08rem;
  }
}
@media only screen and (max-width: 767.98px) {
  .list-top-utilities {
    grid-gap: 0.08rem;
    margin-bottom: -0.2rem;
    padding: 0 0.2rem;
  }
  .list-top-utilities .grid-item {
    width: 100%;
    height: auto;
    margin: 0;
  }
}
.section-top-plan {
  position: relative;
  background: #195450 url("../img/top/video_bg_01.jpg") center center/cover no-repeat;
}

.section-top-plan::after {
  content: "";
  position: absolute;
  z-index: 0;
  top: 0;
  left: 0;
  width: 100%;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(13.51%, #004944), color-stop(95.68%, rgba(0, 73, 68, 0)));
  background: linear-gradient(180deg, #004944 13.51%, rgba(0, 73, 68, 0) 95.68%);
  pointer-events: none;
}

.section-top-plan .plan-thumbnail {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.section-top-plan .wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  height: 100%;
}

@media (min-width: 768px) {
  .section-top-plan {
    padding: 1.45rem 0;
  }
  .section-top-plan::after {
    height: 4.68rem;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1100.98px) {
  .section-top-plan.group-central {
    height: 10.8rem;
  }
}
@media only screen and (max-width: 767.98px) {
  .section-top-plan {
    padding: 0.16rem 0;
  }
  .section-top-plan.group-central {
    height: 2.61rem;
  }
  .section-top-plan::after {
    height: 1.33rem;
  }
}
.section-top-library {
  background: #195450 url("../img/top/video_bg_01.jpg") center center/cover no-repeat;
}

.section-top-library .outer-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  height: 100%;
}

@media (min-width: 768px) {
  .section-top-library {
    padding: 0.4rem 0;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1100.98px) {
  .section-top-library.group-central {
    height: 10.3rem;
  }
}
@media only screen and (max-width: 767.98px) {
  .section-top-library {
    padding: 0.28rem 0 0.24rem;
  }
  .section-top-library .title-common-primary {
    margin-bottom: 0.08rem;
  }
}
.slider-top-library {
  position: relative;
  overflow: hidden;
  color: #fff;
  font-size: 0.24rem;
  line-height: 1.5;
}

.slider-top-library .slider-viewport {
  width: auto;
}

.slider-top-library .slider-slide {
  padding: 0 0.2rem;
}

.slider-top-library .slider-slide.swiper-slide-active .slide-banner {
  -webkit-transform: scale(1, 1);
  -ms-transform: scale(1, 1);
  transform: scale(1, 1);
}

.slider-top-library .slider-slide.swiper-slide-active .slide-wrapper {
  opacity: 1;
  pointer-events: auto;
}

.slider-top-library .slide-banner {
  -webkit-transform: scale(0.8328267477, 0.8328267477);
  -ms-transform: scale(0.8328267477, 0.8328267477);
  transform: scale(0.8328267477, 0.8328267477);
  -webkit-transition: -webkit-transform 0.5s ease;
  transition: -webkit-transform 0.5s ease;
  transition: transform 0.5s ease;
  transition: transform 0.5s ease, -webkit-transform 0.5s ease;
}

.slider-top-library .slide-wrapper {
  position: relative;
  min-height: 0.5rem;
  -webkit-transition: opacity 0.5s ease;
  transition: opacity 0.5s ease;
  opacity: 0;
  pointer-events: none;
}

.slider-top-library .slide-label {
  display: block;
  position: relative;
  z-index: 0;
}

.slider-top-library .slide-arrow {
  display: block;
  position: absolute;
  z-index: 1;
  top: 0;
  right: 0;
  background: url("../img/common/icon_arrow_02.svg") 50% 50%/100% auto no-repeat;
}

.slider-top-library .slide-arrow.is-next {
  -webkit-transform: scale(-1, 1);
  -ms-transform: scale(-1, 1);
  transform: scale(-1, 1);
}

@media (min-width: 768px) {
  .slider-top-library .title-common-primary {
    margin-bottom: 0.3rem;
  }
  .slider-top-library .slider-viewport {
    margin: 0 -7.05rem;
  }
  .slider-top-library .slide-banner {
    margin-bottom: 0.15rem;
  }
  .slider-top-library .slide-label {
    font-size: 0.28rem;
    line-height: 1.5;
  }
  .slider-top-library .slide-arrow {
    width: 0.5rem;
    height: 0.5rem;
  }
  .slider-top-library .slide-arrow.is-previous {
    right: 0.85rem;
  }
  .slider-top-library .slide-wrapper {
    padding: 0.07rem 1.6rem 0.07rem 0;
  }
}
@media (min-width: 768px) and (max-height: 1200px) {
  .slider-top-library .slider-viewport {
    margin: 0 -3.05rem;
  }
}
@media only screen and (max-width: 767.98px) {
  .slider-top-library .slide-label {
    font-size: 0.2rem;
    line-height: 1.4;
  }
  .slider-top-library .slide-arrow {
    width: 0.23rem;
    height: 0.23rem;
    margin-top: 0.1rem;
  }
  .slider-top-library .slide-arrow.is-previous {
    right: 0.4rem;
  }
  .slider-top-library .slide-wrapper {
    padding: 0.07rem 0.8rem 0.07rem 0;
  }
  .slider-top-library .slide-banner {
    margin-bottom: 0.04rem;
  }
}
.section-top-news {
  background: #195450 url("../img/top/news_bg_01.png") center center/cover no-repeat;
}

.section-top-news .news-controller {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

@media (min-width: 768px) {
  .section-top-news .wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    max-width: 15.08rem;
    height: 100%;
  }
  .section-top-news .title-common-primary {
    margin-bottom: 0.2rem;
  }
  .section-top-news .button-common-primary {
    min-width: 1.97rem;
  }
  .section-top-news .button-common-primary::after {
    width: 0.15rem;
    height: 0.15rem;
  }
  .section-top-news .news-controller {
    margin-top: -0.26rem;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1100.98px) {
  .section-top-news.group-central {
    height: 10.5rem;
  }
}
@media only screen and (max-width: 767.98px) {
  .section-top-news {
    padding: 0.36rem 0 0.26rem;
  }
  .section-top-news .wrapper {
    width: calc(100% - 0.4rem);
  }
  .section-top-news .button-common-primary {
    min-width: 1.14rem;
    padding: 0.04rem 0.16rem 0.03rem 0.01rem;
  }
}
.news-slide-controller .swiper-pagination-bullet {
  width: 0.1rem;
  height: 0.1rem;
  border: 1px solid #fff;
  background: transparent !important;
}

.news-slide-controller .swiper-pagination-bullet-active {
  background: #fff !important;
}

@media only screen and (max-width: 767.98px) {
  .news-slide-controller {
    margin-top: -0.34rem;
  }
  .news-slide-controller .swiper-pagination {
    position: unset;
    margin-bottom: 0.12rem;
  }
}
.list-top-news .list-wrapper {
  margin: 0;
  padding: 0;
  list-style: none;
}

.list-top-news .item-date {
  display: block;
  color: #c19e74;
  text-transform: uppercase;
}

.list-top-news .item-title {
  color: #fff;
  font-weight: 400;
  text-transform: uppercase;
}

.list-top-news .item-detail {
  margin: 0;
  color: #fff;
}

.list-top-news .item-image {
  display: block;
  position: relative;
  overflow: hidden;
}

.list-top-news .item-image img {
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transition: -webkit-transform 3s cubic-bezier(0, 0.6, 0.45, 1);
  transition: -webkit-transform 3s cubic-bezier(0, 0.6, 0.45, 1);
  transition: transform 3s cubic-bezier(0, 0.6, 0.45, 1);
  transition: transform 3s cubic-bezier(0, 0.6, 0.45, 1), -webkit-transform 3s cubic-bezier(0, 0.6, 0.45, 1);
}

.list-top-news .item-wrapper:hover .item-image img {
  -webkit-transform: scale(1.1);
  -ms-transform: scale(1.1);
  transform: scale(1.1);
}

@media (min-width: 768px) {
  .list-top-news .list-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin: 0 -0.275rem;
  }
  .list-top-news .list-item {
    width: 33.3333333333%;
    padding: 0 0.275rem;
  }
  .list-top-news .list-item:nth-child(odd) {
    margin-top: 0.75rem;
  }
  .list-top-news .item-date {
    margin-bottom: 0.02rem;
    font-size: 0.18rem;
    line-height: 1.9444444444;
  }
  .list-top-news .item-title {
    display: -webkit-box;
    margin-bottom: 0.16rem;
    overflow: hidden;
    font-size: 0.28rem;
    line-height: 1.25;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
  }
  .list-top-news .item-detail {
    display: -webkit-box;
    overflow: hidden;
    font-size: 0.2rem;
    line-height: 1.3;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
  }
  .list-top-news .item-image {
    aspect-ratio: 460/465;
    margin-bottom: 0.13rem;
  }
  .list-top-news .item-controller {
    margin-top: 0.24rem;
  }
}
@media (min-width: 768px) and (max-height: 1200px) {
  .list-top-news {
    max-width: 10.5rem;
    margin: 0 auto;
  }
  .list-top-news .item-title {
    font-size: 0.24rem;
  }
  .list-top-news .item-detail {
    font-size: 0.18rem;
  }
}
@media only screen and (max-width: 767.98px) {
  .list-top-news .list-item {
    margin-bottom: 0.2rem;
  }
  .list-top-news .list-item:last-child {
    margin-bottom: 0;
  }
  .list-top-news .item-date {
    margin: 0.02rem 0 0;
    font-size: 0.18rem;
    line-height: 1.9444444444;
  }
  .list-top-news .item-title {
    display: -webkit-box;
    margin-bottom: 0.1rem;
    overflow: hidden;
    font-size: 0.17rem;
    line-height: 1.1764705882;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
  }
  .list-top-news .item-detail {
    display: -webkit-box;
    overflow: hidden;
    font-size: 0.15rem;
    line-height: 1.1333333333;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
  }
  .list-top-news .item-image {
    margin-bottom: 0.08rem;
    padding-top: 95.25%;
  }
  .list-top-news .item-controller {
    margin-top: 0.1rem;
  }
}
@media (min-width: 768px) {
  .footer-common {
    background: url("../img/common/footer_bg_01.png") 50% 0%/100% auto no-repeat;
    background-color: #003430;
  }
}
@media only screen and (max-width: 767.98px) {
  .footer-common {
    background: #003430 url("../img/common/sp/footer_bg_01.png") top center/4.4rem 2.52rem no-repeat;
  }
}
.block-footer-information .block-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.block-footer-information .block-logo {
  margin: 0 auto;
}

.block-footer-information .footer-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

@media (min-width: 768px) {
  .block-footer-information {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 100%;
    padding: 0.78rem 0 0.8rem;
  }
  .block-footer-information .information-wrapper {
    margin-bottom: 0.44rem;
  }
  .block-footer-information .block-logo {
    min-height: 1.8rem;
  }
  .block-footer-information .footer-wrapper {
    gap: 0.3rem;
    /* margin-bottom: 0.86rem; */
  }
  .block-footer-information .title-common-primary {
    margin-bottom: 0.24rem;
    font-size: 0.4rem;
    line-height: 1.5;
  }
  .block-footer-information .block-wrapper {
    width: 5.2rem;
  }
  .block-footer-information .block-wrapper:nth-child(1) .block-logo {
    max-width: 1.79rem;
  }
  .block-footer-information .block-wrapper:nth-child(2) .block-logo {
    max-width: 2.92rem;
  }
}
@media only screen and (max-width: 767.98px) {
  .block-footer-information {
    padding: 0.25rem 0.1rem 0;
  }
  .block-footer-information .information-wrapper {
    margin-bottom: 0.1rem;
  }
  .block-footer-information .title-common-primary {
    margin-bottom: 0.05rem;
    font-size: 0.2rem;
    line-height: 3;
  }
  .block-footer-information .block-logo {
    min-height: 1.2rem;
  }
  .block-footer-information .block-wrapper:nth-child(1) .block-logo {
    max-width: 1.03rem;
  }
  .block-footer-information .block-wrapper:nth-child(2) .block-logo {
    max-width: 1.96rem;
  }
}
.slider-footer-company {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  visibility: hidden;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  height: 0;
  overflow: hidden;
  -webkit-transition: opacity 0.35s ease;
  transition: opacity 0.35s ease;
  opacity: 0;
}

.slider-footer-company.active {
  visibility: visible;
  height: auto;
  opacity: 1;
}

.slider-footer-company .slider-viewport {
  width: 100%;
  overflow: hidden;
}

.slider-footer-company .slider-wrapper,
.slider-footer-company .slider-slide {
  -webkit-transition-timing-function: linear !important;
  transition-timing-function: linear !important;
}

.slider-footer-company .slider-slide {
  width: auto;
}

.slider-footer-company .slider-slide img {
  display: block;
  width: auto;
  height: 100%;
}

@media (min-width: 768px) {
  .slider-footer-company .slider-slide {
    height: 1.5rem;
    padding: 0 0.18rem;
  }
  .slider-footer-company .slider-viewport + .slider-viewport {
    margin-top: 0.6rem;
  }
}
@media only screen and (max-width: 767.98px) {
  .slider-footer-company .slider-slide {
    height: 0.81rem;
    padding: 0 0.05rem;
  }
  .slider-footer-company .slider-viewport + .slider-viewport {
    margin-top: 0.13rem;
  }
}
.list-top-footer .list-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
  list-style: none;
}

.list-top-footer .list-item:last-child {
  margin-right: 0;
}

.list-top-footer .item-title {
  display: block;
  -webkit-transition: color 0.3s ease, -webkit-text-decoration 0.3s ease;
  transition: color 0.3s ease, -webkit-text-decoration 0.3s ease;
  transition: color 0.3s ease, text-decoration 0.3s ease;
  transition: color 0.3s ease, text-decoration 0.3s ease, -webkit-text-decoration 0.3s ease;
  color: #fff;
  font-family: Vogun, sans-serif;
  font-weight: 500;
  text-transform: uppercase;
}

.list-top-footer .item-title.is-active {
  color: #c19e74;
  text-decoration: underline;
}

.list-top-footer .item-title:hover {
  color: #c19e74;
  text-decoration: underline;
}

@media (min-width: 768px) {
  .list-top-footer {
    max-width: 13.15rem;
    margin: 0 auto;
  }
  .list-top-footer .list-wrapper {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .list-top-footer .list-item {
    margin-right: 0.8rem;
  }
  .list-top-footer .item-title {
    text-underline-offset: 0.12rem;
    font-size: 0.3rem;
    line-height: 2;
  }
  .list-top-footer .item-title.is-active {
    text-underline-offset: 0.12rem;
  }
}
@media only screen and (max-width: 767.98px) {
  .list-top-footer {
    margin: 0.67rem -0.05rem 0;
  }
  .list-top-footer .list-item {
    margin: 0 0.4rem 0.1rem 0;
  }
  .list-top-footer .item-title {
    text-underline-offset: 0.06rem;
    font-size: 0.16rem;
    line-height: 1.875;
  }
  .list-top-footer .item-title.is-active {
    text-underline-offset: 0.06rem;
  }
}
@media only screen and (max-width: 439.98px) {
  .list-top-footer .list-item {
    margin: 0 0.13rem 0.1rem 0;
  }
  .block-footer-information .block-wrapper:nth-child(2) .block-logo {
    max-width: 1.4rem;
  }
}
.contact-footer-wrapper {
  color: #fff;
  /* display: flex;
  flex-direction: column;
  height: 100%;
  justify-content: flex-end; */
}

.contact-footer-wrapper .footer-inner {
  border-top: 1px solid #d9d9d9;
}

@media (min-width: 768px) {
  .contact-footer-wrapper {
    padding: 0.5rem 0 0;
  }
  .contact-footer-wrapper .footer-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 0 0.5rem;
    padding-top: 0.5rem;
  }
  .contact-credits {
    margin-top: -0.8rem;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1100.98px) {
  .contact-credits {
    margin-top: -0.5rem;
  }
}
@media only screen and (max-width: 767.98px) {
  .contact-footer-wrapper {
    margin: 0.26rem -0.1rem 0;
    background: #003430 url("../img/common/footer_bg_02.png") center center/100% auto repeat;
  }
  .contact-footer-wrapper .footer-inner {
    padding: 0.26rem 0.05rem 0.17rem;
  }
}
.table-footer-contact .entry-title {
  display: block;
  font-size: 0.2rem;
  font-weight: 700;
  line-height: 1.3;
}

@media (min-width: 768px) {
  .table-footer-contact {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 0.42rem;
    width: 10.58rem;
  }
  .table-footer-contact .table-entry {
    width: calc(50% - 0.21rem);
  }
  .table-footer-contact .entry-title {
    margin-bottom: 0.25rem;
  }
}
@media only screen and (max-width: 767.98px) {
  .table-footer-contact {
    margin-bottom: 0.26rem;
  }
  .table-footer-contact .table-entry + .table-entry {
    margin-top: 0.23rem;
  }
  .table-footer-contact .entry-title {
    margin-bottom: 0.11rem;
  }
}
.list-footer-details {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 0.06rem;
}

.list-footer-details .list-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.list-footer-details .item-icon {
  display: block;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  width: 0.18rem;
  height: 0.26rem;
  background: 50% 50%/100% auto no-repeat;
}

.list-footer-details .item-icon.is-address {
  background-image: url("../img/common/icon_contact_01.svg");
}

.list-footer-details .item-icon.is-email {
  background-image: url("../img/common/icon_contact_02.svg");
}

.list-footer-details .item-icon.is-phone {
  background-image: url("../img/common/icon_contact_03.svg");
}

@media (min-width: 768px) {
  .list-footer-details {
    font-size: 0.2rem;
    line-height: 1.3;
  }
  .list-footer-details .item-icon {
    margin-right: 0.21rem;
  }
}
@media only screen and (max-width: 767.98px) {
  .list-footer-details {
    font-size: 0.15rem;
    line-height: 1.1333333333;
  }
  .list-footer-details .item-icon {
    margin-right: 0.11rem;
  }
  .list-footer-details .item-wrapper {
    padding-top: 0.04rem;
  }
}
.form-footer-contact {
  -webkit-box-flex: 1;
  -ms-flex: 1 1 0px;
  flex: 1 1 0;
}

.form-footer-contact .form-title {
  display: block;
  color: #c1a880;
  font-weight: 700;
}

.form-footer-contact .form-detail p {
  margin: 0;
}

.form-footer-contact .form-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 0.08rem;
}

.form-footer-contact .form-controller {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

@media (min-width: 768px) {
  .form-footer-contact .form-title {
    margin-bottom: 0.2rem;
    font-size: 0.25rem;
    line-height: 1.2;
  }
  .form-footer-contact .form-detail {
    margin-bottom: 0.17rem;
    font-size: 0.2rem;
    line-height: 1.3;
  }
  .form-footer-contact .form-controller {
    margin-top: 0.2rem;
  }
}
@media only screen and (max-width: 767.98px) {
  .form-footer-contact .form-title {
    margin-bottom: 0.12rem;
    font-size: 0.2rem;
    line-height: 1.3;
  }
  .form-footer-contact .form-detail {
    margin-bottom: 0.17rem;
    font-size: 0.15rem;
    line-height: 1.1333333333;
  }
  .form-footer-contact .form-controller {
    margin-top: 0.16rem;
  }
}
.contact-credits strong {
  color: #c1a880;
}

@media only screen and (max-width: 767.98px) {
  .contact-credits {
    width: 2.56rem;
    font-size: 0.15rem;
    line-height: 1.2;
  }
}
.contact-credits-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
  list-style: none;
}

.contact-credits-list .item-link {
  display: block;
  border-radius: 50%;
  background-color: #fff;
}

.contact-credits-list .item-link.is-facebook {
  background: url("../img/common/ico-facebook.svg") center center/contain no-repeat;
}

.contact-credits-list .item-link.is-youtube {
  background: url("../img/common/ico-youtube.svg") center center/contain no-repeat;
}

.contact-credits-list .item-link.is-tiktok {
  background: url("../img/common/ico-tiktok.svg") center center/contain no-repeat;
}

.contact-credits-list .item-link.is-zalo {
  background: url("../img/common/ico-zalo.svg") center center/contain no-repeat;
}

@media (min-width: 768px) {
  .contact-credits-list {
    margin-bottom: 0.25rem;
  }
  .contact-credits-list .list-item {
    margin-right: 0.1rem;
  }
  .contact-credits-list .item-link {
    width: 0.2559rem;
    height: 0.2559rem;
  }
}
@media only screen and (max-width: 767.98px) {
  .contact-credits-list {
    margin: 0.48rem 0 0.15rem -0.02rem;
  }
  .contact-credits-list .list-item {
    margin-right: 0.17rem;
  }
  .contact-credits-list .item-link {
    width: 0.3rem;
    height: 0.3rem;
  }
}
.input-common input {
  width: 100%;
  height: 0.4rem;
  padding: 0 0.2rem;
  border: none;
  border-radius: 0.2rem;
  background-color: rgba(255, 255, 255, 0.2);
  color: #fff;
}

.input-common input::-moz-placeholder {
  color: #fff;
}

.input-common input::-webkit-input-placeholder {
  color: #fff;
}

.input-common input:-ms-input-placeholder {
  color: #fff;
}

.input-common input::-ms-input-placeholder {
  color: #fff;
}

.input-common input::placeholder {
  color: #fff;
}

@media (min-width: 768px) {
  .input-common {
    font-size: 0.2rem;
    line-height: 1.3;
  }
}
@media only screen and (max-width: 767.98px) {
  .input-common {
    font-size: 0.15rem;
    line-height: 1.7333333333;
  }
}
/*# sourceMappingURL=top.css.map */