.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)));
}

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

h1,
h2,
h3,
h4,
h5,
h6 {
  margin-bottom: 1.5em;
  font-weight: bold;
}

h1 {
  font-size: 2em;
}

h2 {
  font-size: 1.8em;
}

h3 {
  font-size: 1.6em;
}

h4 {
  font-size: 1.4em;
}

h5 {
  font-size: 1.2em;
}

h6 {
  font-size: 1em;
}

ol,
ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

table {
  width: 100%;
  margin-bottom: 1.5em;
  border-spacing: 0;
  border-collapse: collapse;
}

table th,
table td {
  padding: 0.5em;
  border: 1px solid #000;
}

table th {
  font-weight: bold;
}

caption,
table th,
table td {
  font-weight: normal;
  text-align: left;
  vertical-align: middle;
}

q,
blockquote {
  quotes: none;
}

q::before,
q::after,
blockquote::before,
blockquote::after {
  content: none;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}

*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

body * {
  max-height: 99999em;
  word-break: break-word;
}

p {
  margin-bottom: 1.5em;
}

a {
  color: inherit;
  text-decoration: none;
}

a:hover {
  text-decoration: none;
}

img {
  display: inline-block;
  max-width: 100%;
  height: auto;
  vertical-align: middle;
}

a img {
  border: none;
}

input,
label,
select,
button {
  line-height: inherit;
}

input,
label,
select,
button,
textarea {
  display: inline-block;
  margin: 0;
  padding: 0;
  border: 0;
  background: none;
  font: inherit;
  word-break: normal;
  vertical-align: middle;
  white-space: normal;
  -webkit-appearance: none;
}

button {
  color: inherit;
}

textarea {
  overflow: auto;
  line-height: 1.5;
  white-space: pre-line;
  resize: none;
}

button:focus {
  outline: 0;
}

input:focus,
textarea:focus,
select:focus {
  outline: auto;
}

input[type=search] {
  -webkit-appearance: textfield;
}

::-webkit-search-decoration {
  display: none;
}

@media print {
  html,
  body {
    width: 1600px;
    margin: 0;
  }
  body {
    -webkit-print-color-adjust: exact;
  }
  @page {
    margin: 0;
    size: 11in 14.028in;
  }
  @page :left {
    margin: 0;
  }
  @page :right {
    margin: 0;
  }
  @page :first {
    margin-top: 0;
  }
}
html {
  line-height: 1;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
@media print, (min-width: 768px) {
  html {
    overflow: auto scroll;
    font-size: 5.2083333333vw;
  }
}
@media (min-width: 768px) and (max-width: 1366.98px) {
  html {
    font-size: 4.7619047619vw;
  }
}
@media only screen and (max-width: 767.98px) {
  html {
    min-height: 100vh;
    font-size: 22.7272727273vw;
  }
  html::-webkit-scrollbar {
    width: 0;
    opacity: 0;
  }
}
@media only screen and (max-width: 439.98px) {
  html {
    font-size: 26.6666666667vw;
  }
}

body {
  background-color: #000;
  color: #195450;
  font-family: "TT_Commons", serif;
  font-size: 0.2rem;
  font-weight: 400;
  line-height: 1.3;
  -webkit-tap-highlight-color: rgba(255, 255, 255, 0);
}
html.is-frozen-windows body {
  position: fixed;
  width: 100%;
}

body,
html {
  width: 100%;
  height: auto;
  margin: 0;
  padding: 0;
}

.container,
.footer,
.header {
  -webkit-animation: Start 1s steps(1, end) 0s 1 normal both;
  animation: Start 1s steps(1, end) 0s 1 normal both;
}

* {
  overflow-anchor: none;
  scrollbar-width: none;
}

::-webkit-scrollbar-track {
  background-color: transparent;
}

::-webkit-scrollbar-thumb {
  background-color: var(--color-normal);
}

a:not([class]) {
  -webkit-transition: -webkit-text-decoration 0.3s ease;
  transition: -webkit-text-decoration 0.3s ease;
  transition: text-decoration 0.3s ease;
  transition: text-decoration 0.3s ease, -webkit-text-decoration 0.3s ease;
  text-decoration: underline;
  text-decoration-thickness: 0.01rem;
  text-underline-offset: 0.04rem;
}
a:not([class]):hover {
  text-decoration-color: transparent;
}
html.is-touchable a:not([class]):hover {
  text-decoration-color: inherit;
}

img,
svg {
  image-rendering: smooth;
  shape-rendering: geometricprecision;
}

.hidden {
  display: none;
}

.trans {
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  opacity: 1;
  text-decoration: none;
  cursor: pointer;
}
.trans:hover {
  opacity: 0.8;
}
html.is-touchable .trans:hover {
  opacity: 1;
}

.load {
  -webkit-transition: opacity 0.26s;
  transition: opacity 0.26s;
  opacity: 0.001;
}
html.is-visible .load {
  opacity: 1;
}

.image-common {
  display: block;
  width: 100%;
}

.object-common {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.wrapper {
  margin-right: auto;
  margin-left: auto;
}
@media print, (min-width: 768px) {
  .wrapper {
    width: calc(100% - 0.6rem);
    max-width: 16.22rem;
  }
}
@media only screen and (max-width: 767.98px) {
  .wrapper {
    width: calc(100% - 0.32rem);
  }
}

@media print, (min-width: 768px) {
  .sp {
    /* stylelint-disable-next-line declaration-no-important */
    display: none !important;
  }
}

@media only screen and (max-width: 767.98px) {
  .pc {
    /* stylelint-disable-next-line declaration-no-important */
    display: none !important;
  }
}

.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);
  opacity: 1;
  -webkit-transition: opacity 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out;
}

.header.header-hidden * {
  opacity: 0 !important;
}

.header.hide.header-hidden::after,
.smooth .header.hide.header-hidden::after {
  opacity: 0 !important;
}

.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: 1rem;
  }
}
@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 {
  display: block;
  position: fixed;
  z-index: 20;
  -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);
  opacity: 0;
}

.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) {
  .smooth .header.hide .logo {
    top: -0.03rem;
    width: 1.2rem;
  }
  .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.27rem;
    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;
  display: none;
}

@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;
  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: inherit;
}

.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.32rem;
    color: var(--color-normal-dark);
  }
  .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: 1920px;
  height: 1080px;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  -webkit-transform-origin: top left;
  -ms-transform-origin: top left;
  transform-origin: top left;
}

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

.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;
  }
  .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.05rem;
  width: 0.03rem;
  -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.05rem;
  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 (min-width: 768px) {
  .footer-common {
    background: url("../img/common/footer_bg_01.jpg") 50% 0%/cover no-repeat;
  }
}
@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: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    height: 100%;
    padding: 0.78rem 0 0.4rem;
  }
  .block-footer-information .information-wrapper {
    margin-bottom: 0.2rem;
  }
  .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;
    width: 100%;
  }
  .block-footer-information .block-wrapper:nth-child(2) .block-logo {
    max-width: 2.92rem;
    width: 100%;
  }
}
@media only screen and (max-width: 767.98px) {
  .block-footer-information {
    padding: 0.25rem 0.1rem 0;
  }
  .block-footer-information .information-wrapper .wrapper {
    width: 100%;
    padding: 0 0.06rem;
  }
  .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;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
}

#home-page .slider-footer-company .slider-slide {
  border: 1px solid #fff;
}

.slider-footer-company .slider-slide img {
  display: block;
  width: auto;
  height: 100%;
  object-fit: contain;
  margin: 0 auto;
}

.slider-footer-company .slider-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: center;
}

@media (min-width: 768px) {
  #home-page .slider-footer-company .slider-slide {
    border-radius: 0.2rem;
  }
  .slider-footer-company .slider-wrapper {
    margin: -0.15rem;
  }
  
  .slider-footer-company .slider-slide {
    padding: .12rem 0.2rem;
  }

  .slider-footer-company .slider-inner {
    width: calc(100% / 6);
    padding: 0.15rem;
    height: 1.4rem;
  }
  .slider-footer-company .slider-viewport + .slider-viewport {
    margin-top: 0.76rem;
  }
}
@media only screen and (max-width: 767.98px) {
  #home-page .slider-footer-company .slider-slide {
    border-radius: 0.1rem;
  }
   .slider-footer-company .slider-wrapper {
    margin: -0.1rem;
  }
  
  .slider-footer-company .slider-slide {
    padding: .12rem 0.3rem;
  }

  .slider-footer-company .slider-inner {
    width: calc(100% / 2);
    padding: 0.1rem;
    height: .8rem;
  }
  .slider-footer-company .slider-viewport + .slider-viewport {
    margin-top: 0.2rem;
  }
}
.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 0.8rem;
  }
  .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.1rem -0.05rem 0.15rem;
  }
  .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_03.svg");
}

.list-footer-details .item-icon.is-phone {
  background-image: url("../img/common/icon_contact_02.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;
  margin-left: 0.05rem;
}

.contact-credits strong a {
  text-decoration: none;
}

@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: #fff url("../img/common/icon_sns_01.svg") center center/contain no-repeat;
}

.contact-credits-list .item-link.is-youtube {
  background: #fff url("../img/common/icon_sns_02.svg") center center/contain no-repeat;
}

.contact-credits-list .item-link.is-tiktok {
  background: #fff url("../img/common/icon_sns_03.svg") center center/contain no-repeat;
}

.contact-credits-list .item-link.is-zalo {
  background: #fff url("../img/common/icon_sns_04.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.34rem;
    height: 0.34rem;
  }
}
@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 {
  position: relative;
}

.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;
  }
}
.footer-social-bar {
  position: fixed;
  right: 0;
  bottom: 0;
  z-index: 99;
  opacity: 0;
}
.footer-social-bar .social-icons {
  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.1rem;
}
.footer-social-bar .social-icon {
  display: block;
}
@media print, (min-width: 768px) {
  .footer-social-bar {
    margin-right: 0.3rem;
    margin-bottom: 0.5rem;
  }
  .footer-social-bar .social-icon {
    width: 0.45rem;
    height: 0.45rem;
  }
}
@media only screen and (max-width: 767.98px) {
  .footer-social-bar {
    margin-right: 0.16rem;
    margin-bottom: 0.5rem;
  }
  .footer-social-bar .social-icon {
    width: 0.35rem;
    height: 0.35rem;
  }
}

.popup-overlay {
  position: fixed;
  inset: 0;
  background: rgba(25, 84, 80, 0.75);
  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;
  opacity: 0;
  pointer-events: none;
  -webkit-transition: opacity 0.25s ease;
  transition: opacity 0.25s ease;
  z-index: 999999999;
  width: 100%;
  height: 100%;
}
.popup-overlay .image-wrapper {
  position: relative;
  z-index: 1;
  pointer-events: none;
}
.popup-overlay .form-detail {
  color: #fff;
  margin: 0;
}
.popup-overlay #closePopup {
  color: #c19e74;
  position: absolute;
  top: 0;
  right: 0;
  font-size: 0.22rem;
  line-height: 1.1818181818;
  cursor: pointer;
  z-index: 2;
}
.popup-overlay .box-wrapper {
  overflow: hidden;
  position: relative;
}
.popup-overlay .box-wrapper::before {
  position: absolute;
  content: "";
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  pointer-events: none;
  border: 1px solid #c19e74;
}
.popup-overlay .form-title {
  text-transform: uppercase;
  color: #c19e74;
  font-weight: 700;
  font-size: 0.25rem;
  line-height: 1.04;
}
.popup-overlay .box-form {
  z-index: 2;
}
@media print, (min-width: 768px) {
  .popup-overlay .box-wrapper {
    width: 10.42rem;
    border-radius: 0.2rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .popup-overlay .box-wrapper::before {
    bottom: 0;
    border-radius: 0.5rem 0 0 0.5rem;
    max-width: calc(50% + 1.8rem);
    max-height: calc(80% - 0.1rem);
    background: #004944 url(../img/common/popup_bg_01.png) center center/cover no-repeat;
  }
  .popup-overlay .box-form {
    width: 100%;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    margin-top: 1.66rem;
    margin-right: -0.94rem;
    padding: 0 0 0 0.6rem;
  }
  .popup-overlay .box-image {
    width: 5.94rem;
    height: 5.4rem;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
  }
  .popup-overlay .form-title {
    margin-bottom: 0.14rem;
  }
  .popup-overlay .form-detail {
    padding: 0 0 0.21rem;
    font-size: 0.2rem;
    line-height: 1.3;
  }
  .popup-overlay .form-wrapper {
    margin-bottom: 0.08rem;
  }
  .popup-overlay .form-controller {
    margin-top: 0.26rem;
  }
  .popup-overlay .button-common-primary {
    padding: 0.07rem 0.57rem 0.06rem 0.29rem;
    font-size: 0.22rem;
  }
  .popup-overlay #closePopup {
    margin: 0.11rem 0.76rem 0 0;
  }
}
@media only screen and (max-width: 767.98px) {
  .popup-overlay .box-wrapper {
    max-width: 3.91rem;
  }
  .popup-overlay .box-wrapper::before {
    top: 0;
    border-radius: 0.5rem 0.5rem 0 0.5rem;
    height: 4.22rem;
    background: #004944 url(../img/common/sp/popup_bg_01.png) center center/cover no-repeat;
  }
  .popup-overlay .box-form {
    padding: 0.42rem 0.2rem;
  }
  .popup-overlay .box-form::before {
    border-radius: 0 0 9999px 9999px;
  }
  .popup-overlay .box-image {
    width: 3.41rem;
    height: 3.68rem;
    margin: -1.47rem 0 0 0.57rem;
  }
  .popup-overlay .form-title {
    margin-bottom: 0.15rem;
  }
  .popup-overlay .form-detail {
    text-align: justify;
    padding: 0 0 0.18rem;
    font-size: 0.16rem;
    line-height: 1.25;
  }
  .popup-overlay .input-common input {
    height: 0.28rem;
    font-size: 0.16rem;
    padding: 0.03rem 0.14rem 0.06rem;
  }
  .popup-overlay .form-wrapper {
    margin-bottom: 0.09rem;
  }
  .popup-overlay .form-controller {
    margin-top: 0.24rem;
  }
  .popup-overlay .button-common-primary {
    padding: 0.05rem 0.46rem 0.05rem 0.28rem;
    font-size: 0.2rem;
    line-height: 1.3;
  }
  .popup-overlay .button-common-primary::after {
    width: 0.15rem;
    height: 0.15rem;
  }
  .popup-overlay #closePopup {
    margin: -0.12rem 0 0 0;
  }
}
@media only screen and (max-width: 439.98px) {
  .popup-overlay .box-wrapper {
    max-width: 3.6rem;
  }
  .popup-overlay .box-image {
    width: 3.1rem;
    height: 3.38rem;
    margin: -1.37rem 0 0 0.6rem;
  }
}

.popup-box {
  -webkit-transform: scale(0.85);
  -ms-transform: scale(0.85);
  transform: scale(0.85);
  -webkit-transition: -webkit-transform 0.25s ease;
  transition: -webkit-transform 0.25s ease;
  transition: transform 0.25s ease;
  transition: transform 0.25s ease, -webkit-transform 0.25s ease;
  opacity: 0;
  position: relative;
}

.popup-overlay.active {
  opacity: 1;
  pointer-events: auto;
}

.popup-overlay.active .popup-box {
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
  opacity: 1;
}

.input-common .wpcf7-not-valid-tip {
  position: absolute;
  top: calc(50% + 0.02rem);
  right: 0;
  margin-right: 0.1rem;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}

@media print, (min-width: 768px) {
  .wpcf7-response-output {
    position: absolute;
    bottom: -0.28rem;
    width: 65%;
    right: 0;
  }
}
@media only screen and (max-width: 767.98px) {
  .wpcf7-response-output {
    font-size: 0.15rem;
    margin: 2em 0 1em;
    padding: 0.1rem;
    color: #ffb900;
  }
}

@-webkit-keyframes scaleSmall2 {
  0% {
    opacity: 0;
    -webkit-transform: scaleY(0.2);
    transform: scaleY(0.2);
  }
  100% {
    opacity: 0.8;
    -webkit-transform: scaleY(1);
    transform: scaleY(1);
  }
}

@keyframes scaleSmall2 {
  0% {
    opacity: 0;
    -webkit-transform: scaleY(0.2);
    transform: scaleY(0.2);
  }
  100% {
    opacity: 0.8;
    -webkit-transform: scaleY(1);
    transform: scaleY(1);
  }
}
@-webkit-keyframes aniStroke {
  0% {
    stroke-dashoffset: 2000;
  }
  100% {
    stroke-dashoffset: 0;
  }
}
@keyframes aniStroke {
  0% {
    stroke-dashoffset: 2000;
  }
  100% {
    stroke-dashoffset: 0;
  }
}
@-webkit-keyframes slideUpFade {
  0% {
    -webkit-transform: translateY(40px);
    transform: translateY(40px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
  }
}
@keyframes slideUpFade {
  0% {
    -webkit-transform: translateY(40px);
    transform: translateY(40px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
  }
}
@-webkit-keyframes DrawStroke {
  0% {
    -webkit-transform: scale(1.4);
    transform: scale(1.4);
    stroke-width: 0.5;
    stroke-dashoffset: 800;
  }
  50% {
    -webkit-transform: none;
    transform: none;
  }
  100% {
    stroke-width: 1;
    stroke-dashoffset: 0;
  }
}
@keyframes DrawStroke {
  0% {
    -webkit-transform: scale(1.4);
    transform: scale(1.4);
    stroke-width: 0.5;
    stroke-dashoffset: 800;
  }
  50% {
    -webkit-transform: none;
    transform: none;
  }
  100% {
    stroke-width: 1;
    stroke-dashoffset: 0;
  }
}
@-webkit-keyframes DrawInner {
  0% {
    stroke-dashoffset: 800;
  }
  100% {
    stroke-dashoffset: 0;
  }
}
@keyframes DrawInner {
  0% {
    stroke-dashoffset: 800;
  }
  100% {
    stroke-dashoffset: 0;
  }
}
@-webkit-keyframes Start {
  from {
    visibility: hidden;
  }
  to {
    visibility: visible;
  }
}
@keyframes Start {
  from {
    visibility: hidden;
  }
  to {
    visibility: visible;
  }
}
@-webkit-keyframes Preloader {
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes Preloader {
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@-webkit-keyframes trackBallSlide {
  90% {
    -webkit-transform: none;
    transform: none;
    color: var(--color-highlight);
  }
  95% {
    -webkit-transform: translateY(10px);
    transform: translateY(10px);
    color: var(--color-white);
  }
  100% {
    -webkit-transform: none;
    transform: none;
    color: var(--color-highlight);
  }
}
@keyframes trackBallSlide {
  90% {
    -webkit-transform: none;
    transform: none;
    color: var(--color-highlight);
  }
  95% {
    -webkit-transform: translateY(10px);
    transform: translateY(10px);
    color: var(--color-white);
  }
  100% {
    -webkit-transform: none;
    transform: none;
    color: var(--color-highlight);
  }
}
@-webkit-keyframes Trans {
  0% {
    -webkit-transform: translate(1000px, 0);
    transform: translate(1000px, 0);
    opacity: 0;
  }
  100% {
    -webkit-transform: translate(1000px, 455px);
    transform: translate(1000px, 455px);
    opacity: 1;
  }
}
@keyframes Trans {
  0% {
    -webkit-transform: translate(1000px, 0);
    transform: translate(1000px, 0);
    opacity: 0;
  }
  100% {
    -webkit-transform: translate(1000px, 455px);
    transform: translate(1000px, 455px);
    opacity: 1;
  }
}
@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@-webkit-keyframes fadeOutBlur {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-filter: blur(2rem);
    filter: blur(2rem);
  }
}
@keyframes fadeOutBlur {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-filter: blur(2rem);
    filter: blur(2rem);
  }
}
@-webkit-keyframes scaleBright {
  0% {
    -webkit-filter: brightness(250%);
    filter: brightness(250%);
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
  }
  100% {
    -webkit-filter: none;
    filter: none;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes scaleBright {
  0% {
    -webkit-filter: brightness(250%);
    filter: brightness(250%);
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
  }
  100% {
    -webkit-filter: none;
    filter: none;
    -webkit-transform: none;
    transform: none;
  }
}
@-webkit-keyframes fadeTrans {
  0% {
    opacity: 0;
  }
  100% {
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}
@keyframes fadeTrans {
  0% {
    opacity: 0;
  }
  100% {
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}
@-webkit-keyframes goLeft {
  0% {
    -webkit-transform: translate3d(200px, 0, 0);
    transform: translate3d(200px, 0, 0);
    opacity: 0;
  }
  100% {
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}
@keyframes goLeft {
  0% {
    -webkit-transform: translate3d(200px, 0, 0);
    transform: translate3d(200px, 0, 0);
    opacity: 0;
  }
  100% {
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}
@-webkit-keyframes goRight {
  0% {
    -webkit-transform: translate3d(-200px, 0, 0);
    transform: translate3d(-200px, 0, 0);
    opacity: 0;
  }
  100% {
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}
@keyframes goRight {
  0% {
    -webkit-transform: translate3d(-200px, 0, 0);
    transform: translate3d(-200px, 0, 0);
    opacity: 0;
  }
  100% {
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}
@-webkit-keyframes toLeft {
  0% {
    left: -100%;
    opacity: 0;
  }
  100% {
    left: 0;
    opacity: 1;
  }
}
@keyframes toLeft {
  0% {
    left: -100%;
    opacity: 0;
  }
  100% {
    left: 0;
    opacity: 1;
  }
}
@-webkit-keyframes toRight {
  0% {
    right: -100%;
    opacity: 0;
  }
  100% {
    right: 0;
    opacity: 1;
  }
}
@keyframes toRight {
  0% {
    right: -100%;
    opacity: 0;
  }
  100% {
    right: 0;
    opacity: 1;
  }
}
@-webkit-keyframes moveLeft {
  100% {
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
  }
}
@keyframes moveLeft {
  100% {
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
  }
}
@-webkit-keyframes moveRight {
  100% {
    -webkit-transform: translateX(100%);
    transform: translateX(100%);
  }
}
@keyframes moveRight {
  100% {
    -webkit-transform: translateX(100%);
    transform: translateX(100%);
  }
}
@-webkit-keyframes fadeInDown {
  0% {
    -webkit-transform: translate3d(0, -100px, 0);
    transform: translate3d(0, -100px, 0);
    opacity: 0;
  }
  100% {
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}
@keyframes fadeInDown {
  0% {
    -webkit-transform: translate3d(0, -100px, 0);
    transform: translate3d(0, -100px, 0);
    opacity: 0;
  }
  100% {
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}
@-webkit-keyframes fadeInDown2 {
  0% {
    -webkit-transform: translate3d(0, -20%, 0);
    transform: translate3d(0, -20%, 0);
    opacity: 0;
  }
  100% {
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}
@keyframes fadeInDown2 {
  0% {
    -webkit-transform: translate3d(0, -20%, 0);
    transform: translate3d(0, -20%, 0);
    opacity: 0;
  }
  100% {
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}
@-webkit-keyframes fadeInUp {
  0% {
    -webkit-transform: translate3d(0, 100px, 0);
    transform: translate3d(0, 100px, 0);
    opacity: 0;
  }
  100% {
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}
@keyframes fadeInUp {
  0% {
    -webkit-transform: translate3d(0, 100px, 0);
    transform: translate3d(0, 100px, 0);
    opacity: 0;
  }
  100% {
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}
@-webkit-keyframes fadeInHeight {
  0% {
    height: 0;
  }
  100% {
    height: 100%;
  }
}
@keyframes fadeInHeight {
  0% {
    height: 0;
  }
  100% {
    height: 100%;
  }
}
@-webkit-keyframes Blur {
  0% {
    -webkit-filter: blur(0);
    filter: blur(0);
    -webkit-transform: none;
    transform: none;
  }
  100% {
    -webkit-filter: blur(10px);
    filter: blur(10px);
    -webkit-transform: scale(1.05);
    transform: scale(1.05);
  }
}
@keyframes Blur {
  0% {
    -webkit-filter: blur(0);
    filter: blur(0);
    -webkit-transform: none;
    transform: none;
  }
  100% {
    -webkit-filter: blur(10px);
    filter: blur(10px);
    -webkit-transform: scale(1.05);
    transform: scale(1.05);
  }
}
@-webkit-keyframes outBlur {
  0% {
    -webkit-filter: blur(0);
    filter: blur(0);
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
  100% {
    -webkit-filter: blur(10px);
    filter: blur(10px);
    -webkit-transform: scale(1.05);
    transform: scale(1.05);
    opacity: 0;
  }
}
@keyframes outBlur {
  0% {
    -webkit-filter: blur(0);
    filter: blur(0);
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
  100% {
    -webkit-filter: blur(10px);
    filter: blur(10px);
    -webkit-transform: scale(1.05);
    transform: scale(1.05);
    opacity: 0;
  }
}
@-webkit-keyframes Scale {
  0% {
    -webkit-transform: none;
    transform: none;
  }
  100% {
    -webkit-transform: scale(100);
    transform: scale(100);
  }
}
@keyframes Scale {
  0% {
    -webkit-transform: none;
    transform: none;
  }
  100% {
    -webkit-transform: scale(100);
    transform: scale(100);
  }
}
@-webkit-keyframes scaleLarge {
  0% {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
    opacity: 0;
  }
  100% {
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}
@keyframes scaleLarge {
  0% {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
    opacity: 0;
  }
  100% {
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}
@-webkit-keyframes Ani {
  0% {
    -webkit-transform: none;
    transform: none;
    opacity: 0;
    -webkit-filter: none;
    filter: none;
  }
  70% {
    -webkit-transform: scale(2);
    transform: scale(2);
    opacity: 1;
    -webkit-filter: blur(3px);
    filter: blur(3px);
  }
  100% {
    -webkit-transform: none;
    transform: none;
    opacity: 0;
    -webkit-filter: none;
    filter: none;
  }
}
@keyframes Ani {
  0% {
    -webkit-transform: none;
    transform: none;
    opacity: 0;
    -webkit-filter: none;
    filter: none;
  }
  70% {
    -webkit-transform: scale(2);
    transform: scale(2);
    opacity: 1;
    -webkit-filter: blur(3px);
    filter: blur(3px);
  }
  100% {
    -webkit-transform: none;
    transform: none;
    opacity: 0;
    -webkit-filter: none;
    filter: none;
  }
}
@-webkit-keyframes Show100 {
  from {
    stroke-dashoffset: 570;
  }
  to {
    stroke-dashoffset: 0;
  }
}
@keyframes Show100 {
  from {
    stroke-dashoffset: 570;
  }
  to {
    stroke-dashoffset: 0;
  }
}
@-webkit-keyframes StrokeLine {
  0% {
    stroke-dashoffset: 0;
  }
  100% {
    stroke-dashoffset: 100;
  }
}
@keyframes StrokeLine {
  0% {
    stroke-dashoffset: 0;
  }
  100% {
    stroke-dashoffset: 100;
  }
}
@-webkit-keyframes aniWidth {
  0% {
    -webkit-transform: scale3d(0, 1, 1);
    transform: scale3d(0, 1, 1);
  }
  100% {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}
@keyframes aniWidth {
  0% {
    -webkit-transform: scale3d(0, 1, 1);
    transform: scale3d(0, 1, 1);
  }
  100% {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}
@-webkit-keyframes aniHeight {
  0% {
    -webkit-transform: scale3d(1, 0, 1);
    transform: scale3d(1, 0, 1);
  }
  100% {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}
@keyframes aniHeight {
  0% {
    -webkit-transform: scale3d(1, 0, 1);
    transform: scale3d(1, 0, 1);
  }
  100% {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}
@-webkit-keyframes Gradient {
  0% {
    background-position: 0 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0 50%;
  }
}
@keyframes Gradient {
  0% {
    background-position: 0 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0 50%;
  }
}
@-webkit-keyframes grayScale {
  0% {
    -webkit-filter: none;
    filter: none;
  }
  100% {
    -webkit-filter: grayscale(1);
    filter: grayscale(1);
  }
}
@keyframes grayScale {
  0% {
    -webkit-filter: none;
    filter: none;
  }
  100% {
    -webkit-filter: grayscale(1);
    filter: grayscale(1);
  }
}
@-webkit-keyframes aniText {
  0% {
    background-position: 200% 50%;
  }
  90% {
    background-position: 0 50%;
  }
  100% {
    -webkit-text-fill-color: var(--color-white);
  }
}
@keyframes aniText {
  0% {
    background-position: 200% 50%;
  }
  90% {
    background-position: 0 50%;
  }
  100% {
    -webkit-text-fill-color: var(--color-white);
  }
}
@-webkit-keyframes scrollText {
  from {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
  }
}
@keyframes scrollText {
  from {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
  }
}
@-webkit-keyframes ClipPath {
  0% {
    clip-path: circle(0 at 50% 50%);
    opacity: 1;
  }
  100% {
    clip-path: circle(150% at 50% 50%);
    opacity: 1;
  }
}
@keyframes ClipPath {
  0% {
    clip-path: circle(0 at 50% 50%);
    opacity: 1;
  }
  100% {
    clip-path: circle(150% at 50% 50%);
    opacity: 1;
  }
}
@-webkit-keyframes strokeArea {
  0% {
    stroke-dashoffset: 3000;
  }
  80% {
    fill-opacity: 0;
  }
  100% {
    stroke-dashoffset: 0;
    fill-opacity: 0.5;
  }
}
@keyframes strokeArea {
  0% {
    stroke-dashoffset: 3000;
  }
  80% {
    fill-opacity: 0;
  }
  100% {
    stroke-dashoffset: 0;
    fill-opacity: 0.5;
  }
}
@-webkit-keyframes textShine {
  0% {
    background-position: 0 50%;
  }
  100% {
    background-position: 100% 50%;
  }
}
@keyframes textShine {
  0% {
    background-position: 0 50%;
  }
  100% {
    background-position: 100% 50%;
  }
}
.fadein {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.fadeout {
  -webkit-animation-name: fadeOut;
  animation-name: fadeOut;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.fadeinup {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.fadeindown {
  -webkit-animation-name: fadeInDown;
  animation-name: fadeInDown;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.goright {
  -webkit-animation-name: goRight;
  animation-name: goRight;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.goleft {
  -webkit-animation-name: goLeft;
  animation-name: goLeft;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.toleft {
  -webkit-animation-name: toLeft;
  animation-name: toLeft;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.toright {
  -webkit-animation-name: toRight;
  animation-name: toRight;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.moveleft {
  -webkit-animation-name: moveLeft;
  animation-name: moveLeft;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  pointer-events: none;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.moveright {
  -webkit-animation-name: moveRight;
  animation-name: moveRight;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  pointer-events: none;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.zoomOut,
.popup {
  opacity: 0;
}
@media (min-width: 768px) and (max-width: 1100px) {
  .zoomOut,
  .popup {
    opacity: 1;
  }
}
@media only screen and (max-width: 767.98px) {
  .zoomOut,
  .popup {
    opacity: 1;
  }
}

.group-central.show-text .popup.on-show {
  -webkit-animation-name: ClipPath;
  animation-name: ClipPath;
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
  -webkit-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.group-central.show-text .zoomOut {
  -webkit-animation-name: scaleLarge;
  animation-name: scaleLarge;
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
  -webkit-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.group-central.show-text .ani-item-down {
  -webkit-animation-name: fadeInDown2;
  animation-name: fadeInDown2;
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
  -webkit-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.wrap_aircraft {
  -webkit-animation: aircraft 5s infinite linear;
  animation: aircraft 5s infinite linear;
}

.wrap_aircraft_2 {
  -webkit-animation: aircraft2 5s infinite linear;
  animation: aircraft2 5s infinite linear;
}

@-webkit-keyframes aircraft {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  50% {
    -webkit-transform: translateY(50px);
    transform: translateY(50px);
  }
  100% {
    -webkit-transform: translateY(1px);
    transform: translateY(1px);
  }
}

@keyframes aircraft {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  50% {
    -webkit-transform: translateY(50px);
    transform: translateY(50px);
  }
  100% {
    -webkit-transform: translateY(1px);
    transform: translateY(1px);
  }
}
@-webkit-keyframes aircraft2 {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  50% {
    -webkit-transform: translateY(-50px);
    transform: translateY(-50px);
  }
  100% {
    -webkit-transform: translateY(1px);
    transform: translateY(1px);
  }
}
@keyframes aircraft2 {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  50% {
    -webkit-transform: translateY(-50px);
    transform: translateY(-50px);
  }
  100% {
    -webkit-transform: translateY(1px);
    transform: translateY(1px);
  }
}
.section-common-news {
  background: #195450 url("../img/common/common_bg_01.png") center center/cover no-repeat;
}
.section-common-news.is-project {
  background: url("../img/common/common_bg_03.jpg") center center/cover no-repeat;
}
.section-common-news.is-market {
  background: url("../img/common/common_bg_02.jpg") center center/cover no-repeat;
}

.section-common-news .news-controller {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  pointer-events: none;
}
.section-common-news .news-controller .button-common-primary {
  pointer-events: auto;
}

@media (min-width: 768px) {
  .section-common-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-common-news .title-common-primary {
    margin-bottom: 0.2rem;
  }
  .section-common-news .button-common-primary {
    min-width: 1.97rem;
  }
  .section-common-news .button-common-primary::after {
    width: 0.15rem;
    height: 0.15rem;
  }
  .section-common-news .news-controller {
    margin-top: -0.26rem;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1100.98px) {
  .section-common-news.group-central {
    height: 10.5rem;
  }
}
@media only screen and (max-width: 767.98px) {
  .section-common-news {
    padding: 0.36rem 0 0.26rem;
  }
  .section-common-news.is-project {
    padding-top: 0.8rem;
  }
  .section-common-news .wrapper {
    width: calc(100% - 0.4rem);
  }
  .section-common-news .button-common-primary {
    min-width: 1.4rem;
    padding: 0.04rem 0.16rem 0.03rem 0.01rem;
  }
  .section-common-news .button-common-primary::after {
    right: 0.14rem;
  }
}
.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-common-news .list-wrapper {
  margin: 0;
  padding: 0;
  list-style: none;
}

.list-common-news .item-date {
  display: block;
  color: #c19e74;
  text-transform: uppercase;
}

.list-common-news .item-title {
  color: #fff;
  font-weight: 400;
  text-transform: uppercase;
}

.list-common-news .item-detail {
  margin: 0;
  color: #fff;
}

.list-common-news .item-image {
  display: block;
  position: relative;
  overflow: hidden;
}

.list-common-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-common-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-common-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-common-news .list-item {
    width: 33.3333333333%;
    padding: 0 0.275rem;
  }
  .list-common-news .list-item:nth-child(odd) {
    margin-top: 0.75rem;
  }
  .list-common-news .item-date {
    margin-bottom: 0.02rem;
    font-size: 0.18rem;
    line-height: 1.9444444444;
  }
  .list-common-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-common-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-common-news .item-image {
    aspect-ratio: 460/465;
    margin-bottom: 0.13rem;
  }
  .list-common-news .item-controller {
    margin-top: 0.24rem;
  }
}
@media (min-width: 768px) and (max-height: 1200px) {
  .list-common-news {
    max-width: 10.5rem;
    margin: 0 auto;
  }
  .list-common-news .item-title {
    font-size: 0.24rem;
  }
  .list-common-news .item-detail {
    font-size: 0.18rem;
  }
}
@media only screen and (max-width: 767.98px) {
  .list-common-news .list-item {
    margin-bottom: 0.2rem;
  }
  .list-common-news .list-item:last-child {
    margin-bottom: 0;
  }
  .list-common-news .item-date {
    margin: 0.02rem 0 0;
    font-size: 0.18rem;
    line-height: 1.9444444444;
  }
  .list-common-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-common-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-common-news .item-image {
    margin-bottom: 0.08rem;
    padding-top: 95.25%;
  }
  .list-common-news .item-controller {
    margin-top: 0.1rem;
  }
}
.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-information {
  position: relative;
  background: #195450 url("../img/top/video_bg_01.jpg") center center/cover no-repeat;
}
.section-top-information.show-text::after {
  -webkit-animation: scaleSmall2 1.5s linear forwards;
  animation: scaleSmall2 1.5s linear forwards;
}
.section-top-information.show-text .data-index .ani-item.on-show {
  -webkit-animation-delay: calc(280ms * var(--data-index)) !important;
  animation-delay: calc(280ms * var(--data-index)) !important;
}
.section-top-information .title-common-primary .title-viewport {
  -webkit-animation-delay: 1.1s !important;
  animation-delay: 1.1s !important;
}

.section-top-information::after {
  content: "";
  position: absolute;
  z-index: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  -webkit-transform-origin: bottom;
  -ms-transform-origin: bottom;
  transform-origin: bottom;
  -webkit-transform: scaleY(1);
  -ms-transform: scaleY(1);
  transform: scaleY(1);
  background: -webkit-gradient(linear, left bottom, left top, color-stop(36.38%, #195450), to(rgba(25, 84, 80, 0)));
  background: linear-gradient(0deg, #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 {
    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.8s;
  transition: height 0.8s ease-in-out 0.8s;
}

.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.16rem 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-common-plan {
  position: relative;
  background: #195450 url("../img/top/video_bg_01.jpg") center center/cover no-repeat;
}

.section-common-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-common-plan .plan-thumbnail {
  background-image: url(../img/top/plan_img_01.jpg);
}
.section-common-plan .plan-thumbnail text {
  font-family: "TT_Commons", serif;
  font-weight: 400;
  line-height: 1.1818181818;
}

.section-common-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%;
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  width: 100%;
  z-index: 10;
  pointer-events: none;
}

.section-common-plan .hover-block {
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  opacity: 0;
}

.section-common-plan .hover-block:hover {
  opacity: 1;
}

@media (min-width: 768px) {
  .section-common-plan::after {
    height: 4.68rem;
  }
  .section-common-plan .wrapper {
    padding: 0.95rem 0;
  }
}
@media (min-width: 768px) and (max-width: 1100px) {
  .section-common-plan.group-central {
    height: 10.8rem;
  }
  .section-common-plan .master-map {
    height: 100%;
  }
}
@media only screen and (max-width: 767.98px) {
  .section-common-plan.group-central {
    height: 2.9rem;
  }
  .section-common-plan .master-map {
    height: 100%;
  }
  .section-common-plan::after {
    height: 1.33rem;
  }
  .section-common-plan .wrapper {
    padding: 0.16rem 0;
  }
}
@font-face {
  font-display: swap;
  font-family: "TT_Commons";
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/TT_Commons_Regular.otf") format("opentype");
}
@font-face {
  font-display: swap;
  font-family: "TT_Commons";
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/TT_Commons_Bold.otf") format("opentype");
}
@font-face {
  font-display: swap;
  font-family: Vogun;
  font-style: normal;
  font-weight: 500;
  src: url("../fonts/vogun.otf") format("opentype");
}
.box-video-center {
  display: block;
  position: relative;
  z-index: 10;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  text-align: center;
}

@media (min-width: 768px) {
  .box-video-center {
    max-width: 16.21rem;
    height: 8.46rem;
    margin: 0 auto;
  }
  .bg-video {
    max-width: 16.21rem;
    margin: 0 auto;
  }
}
@media only screen and (max-width: 767.98px) {
  .box-video-center {
    position: relative;
    padding-top: 52.25%;
  }
  .box-video-center video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .bg-video {
    display: none;
  }
}
.pic-video {
  display: block;
  visibility: hidden;
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-transition: opacity 0.5s ease-in-out;
  transition: opacity 0.5s ease-in-out;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}

.pic-video.hide {
  opacity: 0;
  pointer-events: none;
}

.video-cover {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.video-full {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  min-width: 100%;
  height: 100%;
  min-height: 100%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  -webkit-transition: clip-path 2s cubic-bezier(0.5, 0.5, 0.3, 1);
  transition: clip-path 2s cubic-bezier(0.5, 0.5, 0.3, 1);
  clip-path: circle(0 at 50% 50%);
}

.fullscreen .video-full {
  width: 100%;
  height: 100%;
}

.box-video-center.show .pic-video {
  visibility: visible;
}

.youtube-video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  min-height: 100vh;
}

.youtube-video iframe {
  position: absolute;
  z-index: -1;
  top: 50%;
  left: 0;
  width: 100%;
  height: 56.25vw;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  pointer-events: none;
}

.full-frame .youtube-video iframe {
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  -webkit-transform: none;
  -ms-transform: none;
  transform: none;
}

.controls {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: absolute;
  z-index: 10;
  bottom: 0.1rem;
  left: calc(50% - 25vw);
  -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: auto;
  padding: 0.05rem 0.1rem;
  -webkit-transition: opacity 0.5s ease-in-out;
  transition: opacity 0.5s ease-in-out;
  text-align: center;
}

.controls.hide {
  opacity: 0;
}

.controls.hide > * {
  pointer-events: none;
}

.right-button {
  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: 0.2rem;
  min-width: 40px;
  height: auto;
}

.left-button button,
.right-button button {
  display: block;
  position: relative;
  width: 0.15rem;
  min-width: 30px;
  height: 0.15rem;
  min-height: 30px;
  margin: 0 0.03rem;
  background-color: transparent;
  cursor: pointer;
}

.left-button svg,
.right-button svg {
  display: block;
  position: relative;
  width: 100%;
  height: 100%;
}

.left-button path,
.right-button path {
  -webkit-transition: fill 0.3s ease-in-out;
  transition: fill 0.3s ease-in-out;
  stroke: none;
  fill: var(--color-white);
}

.left-button g,
.right-button g {
  display: block;
  position: relative;
  width: 100%;
  height: 100%;
}

.left-button {
  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: 180px;
  height: auto;
}

.video-time {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: auto;
  height: auto;
  margin: 0 0.03rem;
  font-size: 0.12rem;
  font-weight: 400;
}

.video-time span,
.video-time time {
  display: block;
  margin: 0 0.03rem;
  color: var(--color-white);
}

.video-progress {
  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: calc(100% - 220px);
  height: 1px;
}

.progressbar {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 1px;
  border: none;
  background: var(--color-white-alpha);
  pointer-events: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.seek {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 1px;
  margin: 0;
  -webkit-box-shadow: none;
  box-shadow: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.seek:focus {
  outline: 0;
}

.fullscreen .home-video {
  z-index: 9999 !important;
}

input[type=range]::-webkit-slider-thumb {
  width: 20px;
  height: 20px;
  margin: -10px 0 0;
  -webkit-transition: background 0.3s ease-in-out;
  transition: background 0.3s ease-in-out;
  border: none;
  border-radius: 20px;
  background: var(--color-white);
  cursor: pointer;
  -webkit-appearance: none;
  appearance: none;
}

input[type=range]::-webkit-slider-runnable-track {
  width: 100%;
  height: 1px;
  border-radius: 0;
  background: 0 0;
  -webkit-appearance: none;
}

input[type=range]::-webkit-slider-runnable-track:focus {
  outline: 0;
  background: var(--color-white);
}

input[type=range]::-webkit-slider-thumb:active {
  background: var(--color-highlight);
}

progress::-webkit-progress-bar {
  background: var(--color-white);
}

progress::-webkit-progress-value {
  background: var(--color-highlight);
}

input[type=range]::-moz-range-thumb {
  width: 20px;
  height: 20px;
  -moz-transition: background 0.3s ease-in-out;
  transition: background 0.3s ease-in-out;
  border: none;
  border-radius: 20px;
  background: var(--color-white);
  cursor: pointer;
  -moz-appearance: none;
  appearance: none;
}

input[type=range]::-moz-focusring {
  outline: 0;
  background: var(--color-white);
}

input[type=range]::-moz-range-track {
  width: 100%;
  height: 1px;
  border-radius: 0;
  background: var(--color-highlight);
  -moz-appearance: none;
  appearance: none;
}

input[type=range]::-moz-range-track:focus {
  outline: 0;
  background: var(--color-highlight);
}

input[type=range]::-moz-range-thumb:active {
  background: var(--color-highlight);
}

::-moz-progress-bar {
  background: var(--color-highlight);
}

.is-Firefox .progressbar {
  height: 2px;
}

.player-vid {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: absolute;
  z-index: 999;
  top: calc(50% - 0.3rem);
  left: calc(50% - 0.3rem);
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 1rem;
  height: 1rem;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  border-radius: 50%;
  color: var(--color-white);
  cursor: pointer;
}

.player-vid svg {
  display: block;
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
  -webkit-transform-origin: center center;
  -ms-transform-origin: center center;
  transform-origin: center center;
  pointer-events: none;
}

.button-deco {
  position: absolute;
  top: 10%;
  left: 10%;
  width: 80%;
  height: 80%;
  overflow: hidden;
  border-radius: 50%;
}

.button-deco-filler {
  position: absolute;
  top: -50%;
  left: -25%;
  width: 150%;
  height: 200%;
  -webkit-transform: translate3d(0, 75%, 0);
  transform: translate3d(0, 75%, 0);
  border-radius: 50%;
  background-color: var(--color-normal-light);
}

.player-vid.hide {
  opacity: 0;
  pointer-events: none;
}

.bg-video {
  position: absolute;
  z-index: 15;
  top: 50%;
  left: 50%;
  width: 100%;
  min-width: 100%;
  height: 100%;
  min-height: 100%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  -webkit-transition: opacity 0.6s ease-in-out;
  transition: opacity 0.6s ease-in-out;
  background-position: center center;
}

.onstream .video-full {
  pointer-events: auto;
  clip-path: circle(150% at 50% 50%);
}

.bg-video img {
  display: block;
  position: relative;
  width: 100%;
  height: 100%;
  pointer-events: none;
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center center;
  object-position: center center;
}

.bg-video.hide {
  opacity: 0;
  pointer-events: none;
}

.pause-button,
.play-button {
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 0;
  margin: 0;
  overflow: hidden;
  opacity: 0;
  pointer-events: none;
}

.playpause {
  display: none;
  position: fixed;
  z-index: 999999;
  right: 0;
  bottom: 0;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 0;
  height: 0;
  overflow: hidden;
}

.ytp-pause-overlay,
.ytp-pause-overlay-controls-hidden .ytp-pause-overlay {
  display: none !important;
}

@media (hover: hover) and (pointer: fine) {
  .left-button button:hover path,
  .right-button button:hover path {
    fill: var(--color-highlight);
  }
  input[type=range]::-webkit-slider-thumb:hover {
    background-color: var(--color-highlight);
  }
  input[type=range]::-moz-range-thumb:hover {
    background-color: var(--color-highlight);
  }
}
@media screen and (max-width: 1100px) {
  .youtube-video {
    position: relative;
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;
    width: 100%;
    height: 100%;
    min-height: inherit;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
  .full-frame .video-full,
  .video-full {
    display: block;
    position: relative;
    z-index: 1;
    top: auto;
    left: auto;
    width: 100%;
    height: 100%;
    min-height: inherit;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
  .video-cover {
    width: 100%;
    height: auto;
  }
  .box-video-center {
    position: relative;
    top: auto;
    left: auto;
    width: 100%;
    height: auto;
  }
  .video-youtube-full {
    height: auto;
  }
  .control {
    bottom: 0;
    padding: 10px;
    opacity: 1;
    font-size: 11px;
  }
  .control button {
    width: 20px;
    height: 20px;
    -webkit-transition: none;
    transition: none;
    pointer-events: auto;
  }
  .control button:hover {
    opacity: 1;
  }
  .control::after {
    -webkit-transition: none;
    transition: none;
    background-color: var(--color-black-alpha-05);
  }
  .youtube-video iframe {
    position: relative;
    z-index: 1;
    top: auto;
    left: auto;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
  .home-video.fullmode {
    position: fixed;
    z-index: 9999 !important;
    top: 0;
    left: 0;
    height: 100vh;
    overflow: hidden !important;
    background-color: var(--color-black);
  }
  .fullmode .video-cover {
    position: absolute;
    z-index: 9999;
    top: 0;
    left: 0;
    height: 100vh;
  }
  .fullmode .video-youtube-full {
    height: 100%;
  }
  .fullmode .youtube-video iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .player-vid {
    top: calc(50% - 50px);
    left: calc(50% - 50px);
    width: 100px;
    height: 100px;
    -webkit-transform: none !important;
    -ms-transform: none !important;
    transform: none !important;
    opacity: 1;
  }
  .button-deco-filler {
    top: -10%;
    left: -10%;
    width: 120%;
    height: 120%;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
  .is-IOS .youtube-video iframe,
  .is-mobile .youtube-video iframe {
    z-index: 1;
  }
  .is-iOS .control,
  .is-iOS .controls,
  .is-mobile .control,
  .is-mobile .controls {
    display: none;
    z-index: -9999;
  }
  .youtube-video + .player-vid {
    opacity: 0;
    pointer-events: none;
  }
}
@media screen and (max-width: 580px) {
  .player-vid {
    top: calc(50% - 35px);
    left: calc(50% - 35px);
    width: 80px;
    height: 80px;
  }
}
.slidebox {
  visibility: hidden;
  position: relative;
}

.slidebox-container {
  position: relative;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.slidebox-track {
  position: relative;
  overflow: hidden;
  -webkit-transition: height 0.2s ease;
  transition: height 0.2s ease;
}

.slidebox-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  height: 100%;
  margin: 0;
  padding: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.slidebox.is-initialized:not(.is-active) .slidebox-list {
  display: block;
}

.slidebox:not(.is-overflow) .slidebox-pagination {
  display: none;
}

.slidebox.is-initialized,
.slidebox.is-rendered {
  visibility: visible;
}

.slidebox-item {
  position: relative;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  margin: 0;
  list-style-type: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.slidebox-spinner {
  display: inline-block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 20px;
  height: 20px;
  margin: auto;
  -webkit-animation: Loading 1s linear infinite;
  animation: Loading 1s linear infinite;
  border: 2px solid var(--color-bg-grey);
  border-radius: 50%;
  border-left-color: transparent;
  contain: strict;
}

.slidebox-sr {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0 0 0 0);
  border: 0;
}

.slidebox-track-draggable {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.slidebox-track-fade > .slidebox-list > .slidebox-item {
  z-index: 0;
  margin: 0;
  opacity: 0;
}

.slidebox-track-fade > .slidebox-list > .slidebox-item.is-active {
  z-index: 1;
  opacity: 1;
}

.slidebox-rtl {
  direction: rtl;
}

.slidebox-draggable:active {
  cursor: -webkit-grab;
  cursor: grab;
}

.slidebox-track-ttb > .slidebox-list {
  display: block;
}

.slidebox-pagination {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -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;
  margin: 1rem 0;
  list-style-type: none;
}

.slidebox-pagination li {
  display: inline-block;
  position: relative;
  line-height: 1;
}

.slidebox-pagination-page {
  display: inline-block;
  position: relative;
  z-index: 1;
  width: 0.5rem;
  height: 0.5rem;
  margin: 3px;
  padding: 0;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  border: 1px solid var(--color-normal-alpha-05);
  border-radius: 50%;
  cursor: pointer;
}

.slidebox-pagination-page::after {
  content: "";
  position: absolute;
  top: 0.1rem;
  left: 0.1rem;
  width: 0.3rem;
  height: 0.3rem;
  -webkit-transition: background-color 0.3s ease-in-out;
  transition: background-color 0.3s ease-in-out;
  border-radius: 50%;
  background-color: var(--color-normal-alpha-05);
}

.slidebox-pagination-page.is-active {
  -webkit-transform: scale(1.5);
  -ms-transform: scale(1.5);
  transform: scale(1.5);
  border-color: var(--color-highlight-alpha);
  pointer-events: none;
}

.slidebox-pagination-page.is-active::after {
  background: var(--color-highlight);
}

.slidebox-pagination-page:hover {
  -webkit-transform: scale(1.5);
  -ms-transform: scale(1.5);
  transform: scale(1.5);
  border-color: var(--color-highlight-alpha);
}

.slidebox-pagination-page:hover::after {
  background: var(--color-highlight);
}

.slidebox-pagination-page:focus-visible {
  outline: 3px solid var(--color-highlight-alpha);
  outline-offset: 3px;
}

.slidebox-pagination-ttb {
  position: absolute;
  top: 0;
  bottom: 0;
  left: -3em;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  padding: 1em;
}

.slidebox-arrows {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: absolute;
  z-index: 10;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: auto;
  height: auto;
}

.slidebox-arrow {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  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 0.5rem;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  border-radius: 50%;
  color: var(--color-white);
  cursor: pointer;
}

.slidebox-arrow 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;
}

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

.slidebox-arrow:disabled {
  opacity: 0.5;
  pointer-events: none;
}

.slidebox-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;
}

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

.slidebox-arrow-next::after {
  background-color: var(--color-highlight);
}

.slidebox-arrows-ttb {
  top: 0;
  left: calc(100% + 1em);
  width: auto;
  height: 100%;
}

.slidebox-arrows-ttb .slidebox-arrow-prev {
  top: 1em;
  left: 0;
}

.slidebox-arrows-ttb .slidebox-arrow-next {
  top: auto;
  right: auto;
  bottom: 1em;
  left: 0;
}

.slidebox-arrows-ttb .slidebox-arrow-prev svg {
  -webkit-transform: rotate(-90deg);
  -ms-transform: rotate(-90deg);
  transform: rotate(-90deg);
}

.slidebox-arrows-ttb .slidebox-arrow-next svg {
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
}

.slidebox-toggle {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: absolute;
  top: calc(50% - 2.5rem);
  left: calc(50% - 2.5rem);
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 5rem;
  height: 5rem;
  border-radius: 50%;
  opacity: 0;
  background: var(--color-black-alpha-05);
  pointer-events: none;
}

.slidebox-toggle svg {
  position: relative;
  width: 30%;
  height: 30%;
  stroke-width: 2;
  stroke: var(--color-white);
  fill: none;
}

.slidebox-toggle-pause,
.slidebox-toggle.is-active .slidebox-toggle-play {
  display: none;
}

.slidebox-toggle.is-active .slidebox-toggle-pause {
  display: block;
}

.slidebox-toggle-pause,
.slidebox-toggle.is-active .slidebox-toggle-play {
  display: none;
}

.slidebox-toggle.is-active .slidebox-toggle-pause {
  display: inline;
}

.slidebox-arrows-rtl .slidebox-arrow-prev {
  right: 1em;
  left: auto;
}

.slidebox-arrows-rtl .slidebox-arrow-prev svg {
  -webkit-transform: scaleX(1);
  -ms-transform: scaleX(1);
  transform: scaleX(1);
}

.slidebox-arrows-rtl .slidebox-arrow-next {
  right: auto;
  left: 1em;
}

.slidebox-arrows-rtl .slidebox-arrow-next svg {
  -webkit-transform: scaleX(-1);
  -ms-transform: scaleX(-1);
  transform: scaleX(-1);
}

.thumbs {
  display: block;
  position: relative;
  z-index: 5;
  width: 29.4rem;
  height: auto;
  margin: 1rem auto;
}

.thumbs.align-middle .slidebox-list {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.thumb-item {
  display: block;
  position: relative;
  width: 4rem;
  height: 2rem;
  margin: 0 0.1rem;
  overflow: hidden;
  border: 1px solid var(--color-black-alpha);
  border-radius: 0.2rem;
  cursor: pointer;
}

.thumb-item img {
  display: block;
  position: relative;
  width: 100%;
  height: 100%;
  border-radius: 0.2rem;
  pointer-events: none;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center center;
  object-position: center center;
}

.thumb-item.is-active {
  opacity: 0.3;
  pointer-events: none;
}

.thumbs .slidebox-arrows {
  position: absolute;
  z-index: 5;
  top: 0.3rem;
  left: 0;
  width: 100%;
  height: 0;
  margin: 0;
}

.thumbs .slidebox-arrow {
  position: absolute;
  top: 0;
  width: 1.5rem;
  height: 1.5rem;
  margin: 0;
  border: 1px solid;
  border-radius: 50%;
  border-color: var(--color-white-alpha);
  color: var(--color-white);
}

.thumbs .slidebox-arrow .after,
.thumbs .slidebox-arrow .before {
  display: none;
}

.thumbs .slidebox-arrow-prev {
  left: -2.5rem;
  opacity: 1;
}

.thumbs .slidebox-arrow-next {
  right: -2.5rem;
}

.single-slide .slidebox-list,
.single-slide .slidebox-track {
  margin: auto;
}

.single-slide .slidebox-item {
  margin: 0 !important;
}

.single-slide .slidebox-arrows {
  display: none !important;
}

.single-slide .slidebox-pagination {
  display: none !important;
}

.single-slide .slidebox-progress {
  display: none !important;
}

.album-center .slidebox-track {
  width: 100%;
}

.album-center .slidebox-list {
  width: 100%;
}

.album-center .slidebox-arrows {
  top: calc(50% - 2rem);
  left: 0;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 100%;
  height: auto;
}

.album-center .slidebox-arrow {
  position: absolute;
}

.album-center .slidebox-arrow-next {
  right: 1rem;
}

.album-center .slidebox-arrow-prev {
  left: 1rem;
}

.album-load .thumbs {
  position: absolute;
  bottom: 70px;
  height: 0;
  margin: auto;
  opacity: 0;
  line-height: 0;
}

.album-load.show .thumbs {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-delay: 0.6s;
  animation-delay: 0.6s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

body.zoom-active .slidebox-arrows,
body.zoom-active .slidebox-item:not(.is-active),
body.zoom-active .slidebox-pagination,
body.zoom-active .thumb-item,
body.zoom-active .thumbs {
  z-index: -999 !important;
  opacity: 0;
  pointer-events: none;
}

body.zoom-active .slidebox-item:not(.thumb-item).is-active,
body.zoom-active .slidebox-slide:not(.thumbs),
body.zoom-active .zoom-active {
  z-index: 9999;
}

@media screen and (max-width: 1100px) {
  .thumbs .slidebox-arrows {
    display: none;
  }
  .album-center .slidebox-arrow {
    display: none;
  }
  .album-center .slidebox-pagination {
    display: none;
  }
  .pagination-custom {
    margin: 1rem 0;
    font-size: 0.8rem;
  }
  .pagination-custom .number-right::before {
    width: 1.5rem;
  }
  .slidebox-arrow {
    width: 3rem;
    height: 3rem;
  }
  .arrowcircle .slidebox-arrow {
    width: 3rem;
    height: 3rem;
    margin: 0 1rem;
  }
}
@media screen and (max-width: 580px) {
  .thumbs {
    width: 90%;
  }
  .thumb-item {
    width: 55px;
    height: 2rem;
  }
  .pagination-custom {
    margin: 0.3rem 0;
    font-size: 0.8rem;
  }
  .slidebox-arrow {
    width: 2rem;
    height: 2rem;
  }
  .arrowcircle .slidebox-arrow {
    width: 2rem;
    height: 2rem;
  }
}
@media only screen and (max-width: 1100px) and (orientation: portrait) {
  .album-load .thumbs {
    bottom: 15vh;
  }
}
@media screen and (min-width: 1100px) and (hover: hover) and (pointer: fine) {
  .slidebox-arrow::after,
  .thumb-item::after {
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
  }
  .thumb-item:hover::after {
    border-width: 3px;
    border-color: var(--color-highlight);
  }
  .slidebox-arrow:hover::after {
    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);
  }
  .slidebox-arrow:hover::before {
    -webkit-animation-play-state: paused;
    animation-play-state: paused;
  }
}
@-webkit-keyframes Loading {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
  100% {
    -webkit-transform: rotate(1turn);
    transform: rotate(1turn);
  }
}
@keyframes Loading {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
  100% {
    -webkit-transform: rotate(1turn);
    transform: rotate(1turn);
  }
}
.button-common-primary {
  position: relative;
  background-color: #c19e74;
  color: #fff;
  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;
  border-radius: 0.03rem;
  border: 0.02rem solid #c19e74;
  overflow: hidden;
  z-index: 1;
  -webkit-transition: color 0.4s ease;
  transition: color 0.4s ease;
  border-radius: 0.4rem;
  cursor: pointer;
}
.button-common-primary::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 100%;
  background-color: #195450;
  -webkit-transition: width 0.4s ease;
  transition: width 0.4s ease;
  z-index: -1;
}
.button-common-primary::after {
  content: "";
  display: block;
  position: absolute;
  right: 0.22rem;
  top: calc(50% - 0.06rem);
  -webkit-mask: url(../img/common/icon_arrow_01.svg) 50% 50%/contain no-repeat;
  mask: url(../img/common/icon_arrow_01.svg) 50% 50%/contain no-repeat;
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
  width: 0.12rem;
  height: 0.12rem;
  background-color: #fff;
}
.button-common-primary:hover {
  color: #fff;
}
.button-common-primary:hover::before {
  width: 100%;
}
.button-common-primary:hover::after {
  background-color: #fff;
}
@media print, (min-width: 768px) {
  .button-common-primary {
    padding: 0.09rem 0.4rem 0.09rem 0.27rem;
    min-height: 0.45rem;
    font-size: 0.2rem;
    line-height: 1.3;
  }
}
@media only screen and (max-width: 767.98px) {
  .button-common-primary {
    padding: 0.06rem 0.4rem 0.04rem 0.27rem;
    min-height: 0.35rem;
    font-size: 0.16rem;
    line-height: 1.3;
  }
}

.button-common-secondary {
  position: relative;
  color: #fff;
  cursor: pointer;
}

.button-common-secondary::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 0;
  width: 0.1rem;
  height: 0.1rem;
  margin-right: 0.12rem;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: margin-right 0.5s ease-in-out;
  transition: margin-right 0.5s ease-in-out;
  background-color: #fff;
  -webkit-mask: url("../img/common/icon_arrow_01.svg") 50% 50%/contain no-repeat;
  mask: url("../img/common/icon_arrow_01.svg") 50% 50%/contain no-repeat;
}

@media (min-width: 768px) {
  .button-common-secondary {
    min-height: 0.45rem;
    padding: 0.01rem 0.35rem 0.03rem 0;
    font-size: 0.2rem;
    line-height: 1.3;
  }
}
@media only screen and (max-width: 767.98px) {
  .button-common-secondary {
    min-height: 0.3rem;
    padding: 0.04rem 0.35rem 0.03rem 0;
    font-size: 0.16rem;
  }
}
.paragraph-common {
  font-size: 0.16rem;
}
.paragraph-common p:last-child {
  margin-bottom: 0;
}
@media print, (min-width: 768px) {
  .paragraph-common {
    line-height: 1.8125;
  }
}
@media only screen and (max-width: 767.98px) {
  .paragraph-common {
    line-height: 1.75;
  }
}

.paragraph-common-secondary p:last-child {
  margin-bottom: 0;
}
.paragraph-common-secondary strong {
  font-weight: 700;
}
@media print, (min-width: 768px) {
  .paragraph-common-secondary {
    font-size: 0.2rem;
    line-height: 1.3;
  }
  .paragraph-common-secondary p {
    margin-bottom: 0.15rem;
  }
}
@media only screen and (max-width: 767.98px) {
  .paragraph-common-secondary {
    font-size: 0.15rem;
    line-height: 1.3333333333;
  }
  .paragraph-common-secondary p {
    margin-bottom: 0.15rem;
  }
}

.title-common-primary {
  position: relative;
  z-index: 1;
  width: 100%;
  color: #fff;
  font-family: Vogun, sans-serif;
  font-weight: 500;
  text-align: center;
  text-transform: uppercase;
}
.title-common-primary .title-viewport {
  display: inline-block;
  clip-path: inset(0 100% 0 0);
  -webkit-transition: clip-path 1s ease;
  transition: clip-path 1s ease;
}
@media (min-width: 768px) and (max-width: 1100px) {
  .title-common-primary .title-viewport {
    clip-path: inset(0 0 0 0);
  }
}
@media only screen and (max-width: 767.98px) {
  .title-common-primary .title-viewport {
    clip-path: inset(0 0 0 0);
  }
}

.show-text .title-viewport.on-show {
  -webkit-animation: revealText 1s forwards;
  animation: revealText 1s forwards;
}

@-webkit-keyframes revealText {
  to {
    clip-path: inset(0 0 0 0);
  }
}

@keyframes revealText {
  to {
    clip-path: inset(0 0 0 0);
  }
}
.title-common-primary.is-lion .title-viewport {
  background: -webkit-gradient(linear, left top, right top, from(#fdf8da), color-stop(50.48%, #eed4a1), to(#ddb268));
  background: linear-gradient(90deg, #fdf8da 0%, #eed4a1 50.48%, #ddb268 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-fill-color: transparent;
  color: transparent;
}

.title-common-primary.is-start {
  text-align: left;
}

@media (min-width: 768px) {
  .title-common-primary {
    margin-bottom: 0.16rem;
    font-size: 0.5rem;
    line-height: 1.5;
  }
}
@media only screen and (max-width: 767.98px) {
  .title-common-primary {
    margin-bottom: 0.12rem;
    font-size: 0.25rem;
    line-height: 1.5;
  }
}
.cls-1 {
  fill: url(#radial-gradient-3);
  opacity: 0.2;
}

.cls-1,
.cls-2,
.cls-3,
.cls-4,
.cls-5,
.cls-6,
.cls-7,
.cls-8,
.cls-9,
.cls-10,
.cls-11,
.cls-12,
.cls-13,
.cls-14,
.cls-16,
.cls-17,
.cls-18,
.cls-19,
.cls-20,
.cls-21,
.cls-22,
.cls-23,
.cls-24,
.cls-25,
.cls-26 {
  stroke-width: 0px;
}

.cls-2,
.cls-27 {
  fill: #3d7561;
}

.cls-3 {
  fill: url(#radial-gradient-4);
}

.cls-3,
.cls-16 {
  mix-blend-mode: overlay;
}

.cls-4,
.cls-28 {
  fill: #6d6e71;
}

.cls-5 {
  fill: #152540;
}

.cls-6 {
  fill: #9bc19f;
}

.cls-29 {
  opacity: 0.5;
}

.cls-7 {
  opacity: 0.66;
}

.cls-7,
.cls-17 {
  fill: #fff;
}

.cls-8 {
  fill: #e6e7e8;
}

.cls-30 {
  isolation: isolate;
}

.cls-9 {
  fill: #c19e74;
}

.cls-10,
.cls-31 {
  fill: #d28773;
}

.cls-11 {
  fill: url(#radial-gradient);
  -webkit-filter: url(#outer-glow-2);
  filter: url(#outer-glow-2);
  mix-blend-mode: screen;
}

.cls-13 {
  fill: #cdd9cf;
}

.cls-14 {
  fill: #feca7a;
}

.cls-32 {
  opacity: 0.45;
}

.cls-16 {
  fill: url(#radial-gradient-2);
}

.cls-18 {
  fill: #c09d73;
}

.cls-19 {
  fill: #231f20;
}

.cls-33 {
  clip-path: url(#clippath);
}

.cls-20,
.cls-24 {
  fill: #e6cfad;
}

.cls-21 {
  fill: #d1d3d4;
}

.cls-22 {
  fill: #754a3a;
}

.cls-23 {
  opacity: 0.39;
}

.cls-23,
.cls-26 {
  fill: #b1d9ec;
}

.cls-24 {
  -webkit-filter: url(#outer-glow-1);
  filter: url(#outer-glow-1);
  opacity: 0.6;
}

.cls-25 {
  fill: #c19e75;
}

.cls-27 {
  stroke: #e9eae5;
}

.cls-27,
.cls-28,
.cls-31 {
  stroke-miterlimit: 10;
  stroke-width: 2px;
}

.cls-28 {
  stroke: #939598;
}

.cls-34 {
  opacity: 0.87;
}

.cls-31 {
  stroke: #d28773;
}

.animation-smooth {
  -webkit-animation: StrokeLineSmoother 3s infinite linear;
  animation: StrokeLineSmoother 3s infinite linear;
  stroke-width: 3px;
  stroke-dasharray: 20;
  stroke: var(--color-white-grey);
}

.animation-fast {
  -webkit-animation: StrokeLine 1.5s infinite linear;
  animation: StrokeLine 1.5s infinite linear;
  stroke-width: 3px;
  stroke-dasharray: 5;
  stroke: var(--color-white-grey);
}

@keyframes StrokeLine {
  0% {
    stroke-dashoffset: 0;
  }
  100% {
    stroke-dashoffset: 10;
    /* Move by dasharray value (5) * 2 */
  }
}
/* Alternative: Reverse direction */
@-webkit-keyframes StrokeLineReverse {
  0% {
    stroke-dashoffset: 0;
  }
  100% {
    stroke-dashoffset: -10;
  }
}
@keyframes StrokeLineReverse {
  0% {
    stroke-dashoffset: 0;
  }
  100% {
    stroke-dashoffset: -10;
  }
}
@-webkit-keyframes StrokeLineSmoother {
  0% {
    stroke-dashoffset: 0;
  }
  100% {
    stroke-dashoffset: 40;
    /* For dasharray: 20 */
  }
}
@keyframes StrokeLineSmoother {
  0% {
    stroke-dashoffset: 0;
  }
  100% {
    stroke-dashoffset: 40;
    /* For dasharray: 20 */
  }
}
@-webkit-keyframes PulseStroke {
  0%, 100% {
    stroke-width: 2px;
  }
  50% {
    stroke-width: 5px;
  }
}
@keyframes PulseStroke {
  0%, 100% {
    stroke-width: 2px;
  }
  50% {
    stroke-width: 5px;
  }
}
.animation-pulse {
  -webkit-animation: StrokeLine 3s infinite linear, PulseStroke 2s infinite ease-in-out;
  animation: StrokeLine 3s infinite linear, PulseStroke 2s infinite ease-in-out;
  stroke-dasharray: 5;
  stroke: var(--color-white-grey);
}

.rounded {
  -webkit-animation: moveIcon 2.5s ease-in-out infinite alternate;
  animation: moveIcon 2.5s ease-in-out infinite alternate;
  -webkit-transform-origin: center;
  -ms-transform-origin: center;
  transform-origin: center;
  transform-box: fill-box;
  -webkit-animation-delay: calc(150ms * var(--data-index));
  animation-delay: calc(150ms * var(--data-index));
}

@-webkit-keyframes moveIcon {
  0% {
    -webkit-transform: translateX(-10px);
    transform: translateX(-10px);
  }
  100% {
    -webkit-transform: translateX(120px);
    transform: translateX(120px);
  }
}

@keyframes moveIcon {
  0% {
    -webkit-transform: translateX(-10px);
    transform: translateX(-10px);
  }
  100% {
    -webkit-transform: translateX(120px);
    transform: translateX(120px);
  }
}
.logo::after {
  background: url("../img/common/logo_img_01.svg") no-repeat center center/contain;
}

.logo::before {
  background: url("../img/common/logo_img_01_white.svg") no-repeat center center/contain;
}

.logo-center span {
  background: url("../img/common/logo_img_01.svg") no-repeat center center/contain;
}

.left-header,
.right-header {
  opacity: 0;
}

.box-nav.not-need {
  display: none;
}

.apartment-des,
.apartment-pic,
.bg-house::after,
.des-house,
.keyplan,
.share,
.top-title,
.virtual-item,
.wrap-another-link {
  opacity: 0;
}

.show-house .top-title {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.show-house .apartment-pic {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-delay: 0.2s;
  animation-delay: 0.2s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.show-house .apartment-des {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-delay: 0.3s;
  animation-delay: 0.3s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

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

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

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

.show-house .des-house {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-delay: 1s;
  animation-delay: 1s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.show-house .wrap-another-link {
  -webkit-animation-name: fadeInDown;
  animation-name: fadeInDown;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-delay: 1s;
  animation-delay: 1s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.show-house .virtual-item {
  -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;
}

.clip-path {
  opacity: 0;
}

.clip-path.show {
  -webkit-animation-name: ClipPath;
  animation-name: ClipPath;
  -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;
}

.slidebox-arrows {
  opacity: 0;
}

.slidebox-arrows.show {
  -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;
}

.tagline.show .tagline-inner .char {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
  -webkit-animation-delay: calc(50ms * var(--char-index));
  animation-delay: calc(50ms * var(--char-index));
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.tagline.show .tagline-big {
  -webkit-animation-name: scaleLarge;
  animation-name: scaleLarge;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-delay: 0.8s;
  animation-delay: 0.8s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.text-quote::before {
  opacity: 0;
}

.text-quote.show::before {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
  -webkit-animation-delay: calc(5ms * var(--word-total));
  animation-delay: calc(5ms * var(--word-total));
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.ani-item {
  opacity: 0;
}

.box-ani,
.text-ani .word {
  opacity: 0;
}

.text-ani.show .word {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
  -webkit-animation-delay: calc(15ms * var(--word-index));
  animation-delay: calc(15ms * var(--word-index));
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.text-break.show .char {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
  -webkit-animation-delay: calc(50ms * var(--char-index));
  animation-delay: calc(50ms * var(--char-index));
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.text-break.show::before {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
  -webkit-animation-delay: calc(50ms * var(--char-total));
  animation-delay: calc(50ms * var(--char-total));
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.text-animation.show .char {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
  -webkit-animation-delay: calc(60ms * var(--char-index));
  animation-delay: calc(60ms * var(--char-index));
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.footer .data-index .ani-item.on-show {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
  -webkit-animation-duration: 1.5s;
  animation-duration: 1.5s;
  -webkit-animation-delay: calc(150ms * var(--data-index));
  animation-delay: calc(150ms * var(--data-index));
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.showed .header .right-header,
.showed .footer-social-bar {
  -webkit-animation-name: goLeft;
  animation-name: goLeft;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-delay: 1s;
  animation-delay: 1s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.showed .header .logo {
  -webkit-animation-name: goRight;
  animation-name: goRight;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-delay: 1s;
  animation-delay: 1s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.text-color-head.show {
  -webkit-animation: textShine 3s linear infinite alternate;
  animation: textShine 3s linear infinite alternate;
  opacity: 1;
}

@media screen and (min-width: 1100px) {
  .box-nav {
    -webkit-transform: translate3d(-15rem, 0, 0);
    transform: translate3d(-15rem, 0, 0);
    -webkit-transition: all 0.8s cubic-bezier(0.57, 0.21, 0.69, 0.95);
    transition: all 0.8s cubic-bezier(0.57, 0.21, 0.69, 0.95);
    opacity: 0;
  }
  .showed .box-nav.show {
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
    opacity: 1;
    pointer-events: auto;
  }
  .show-text .ani-item.on-show {
    -webkit-animation-name: fadeInUp;
    animation-name: fadeInUp;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-delay: 0.3s;
    animation-delay: 0.3s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
  }
  .details-center .ani-item.on-show {
    -webkit-animation-name: fadeIn;
    animation-name: fadeIn;
    -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;
  }
  .show-text .data-index .ani-item.on-show {
    -webkit-animation-name: fadeInUp;
    animation-name: fadeInUp;
    -webkit-animation-duration: 1.5s;
    animation-duration: 1.5s;
    -webkit-animation-delay: calc(150ms * var(--data-index));
    animation-delay: calc(150ms * var(--data-index));
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
  }
  /* .show-text .data-index .ani-fadeIn.on-show {
    animation-name: fadeInHeight;
    animation-duration: 1.5s;
    animation-delay: calc(150ms * var(--data-index));
    animation-fill-mode: forwards
  } */
  .bg-slide {
    opacity: 0;
  }
  .show-text .bg-slide {
    -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;
  }
  .show-text .bg-full::after {
    -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;
  }
  .show-text .bg-cover.on-show {
    -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;
  }
  .show-text .compass.on-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;
  }
  .input-area,
  .input-but,
  .input-text,
  .wrap-form {
    opacity: 0;
  }
  .input-text:nth-child(1) {
    -webkit-animation-delay: 0.5s;
    animation-delay: 0.5s;
  }
  .input-text:nth-child(2) {
    -webkit-animation-delay: 0.6s;
    animation-delay: 0.6s;
  }
  .input-text:nth-child(3) {
    -webkit-animation-delay: 0.7s;
    animation-delay: 0.7s;
  }
  .input-text:nth-child(4) {
    -webkit-animation-delay: 0.8s;
    animation-delay: 0.8s;
  }
  .input-area {
    -webkit-animation-delay: 0.9s;
    animation-delay: 0.9s;
  }
  .input-but {
    -webkit-animation-delay: 1s;
    animation-delay: 1s;
  }
  .show-text .input-area,
  .show-text .input-but,
  .show-text .input-text {
    -webkit-animation-name: fadeInUp;
    animation-name: fadeInUp;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
  }
  .show-text .wrap-form {
    -webkit-animation-name: fadeIn;
    animation-name: fadeIn;
    -webkit-animation-duration: 2s;
    animation-duration: 2s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
  }
  .view-more span,
  .wrap-view-more {
    opacity: 0;
  }
  .show-text .wrap-view-more {
    -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;
  }
  .show-text .view-more span {
    -webkit-animation-name: fadeIn;
    animation-name: fadeIn;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-delay: 1.5s;
    animation-delay: 1.5s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
  }
  .sub-menu {
    opacity: 0;
  }
  .show-text .sub-menu {
    -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;
  }
  .arrows,
  .slide-main,
  .slide-second {
    opacity: 0;
  }
  .show-text .slide-second {
    -webkit-animation-name: fadeInUp;
    animation-name: fadeInUp;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-delay: 0.3s;
    animation-delay: 0.3s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
  }
  .show-text .slide-main {
    -webkit-animation-name: fadeInUp;
    animation-name: fadeInUp;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-delay: 0.5s;
    animation-delay: 0.5s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
  }
  .show-text .arrows {
    -webkit-animation-name: fadeIn;
    animation-name: fadeIn;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-delay: 1s;
    animation-delay: 1s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
  }
  .lifestyle-slide {
    opacity: 0;
  }
  .home-lifestyle.show-text .lifestyle-slide {
    -webkit-animation-name: fadeIn;
    animation-name: fadeIn;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-delay: 0.3s;
    animation-delay: 0.3s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
  }
  .contact-page .bg-cover {
    opacity: 0;
  }
  .contact-page.show-text .bg-cover {
    -webkit-animation-name: fadeIn;
    animation-name: fadeIn;
    -webkit-animation-duration: 2s;
    animation-duration: 2s;
    -webkit-animation-delay: 0s;
    animation-delay: 0s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
  }
  .register .text-content {
    opacity: 0;
  }
  .register.show-text .text-content {
    -webkit-animation-name: fadeInUp;
    animation-name: fadeInUp;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-delay: 0.3s;
    animation-delay: 0.3s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
  }
  .about-intro .bg-cover,
  .project-scale .bg-cover {
    opacity: 0;
  }
  .about-intro.show-text .bg-cover {
    -webkit-animation-name: fadeIn;
    animation-name: fadeIn;
    -webkit-animation-duration: 2s;
    animation-duration: 2s;
    -webkit-animation-delay: 0s;
    animation-delay: 0s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
  }
  .project-scale.show-text .bg-cover {
    -webkit-animation-name: fadeIn;
    animation-name: fadeIn;
    -webkit-animation-duration: 2s;
    animation-duration: 2s;
    -webkit-animation-delay: 0s;
    animation-delay: 0s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
  }
  .dot-p,
  .pointer-map,
  .text-map,
  .viewer {
    opacity: 0;
  }
  .viewer {
    -webkit-animation-name: scaleLarge;
    animation-name: scaleLarge;
    -webkit-animation-duration: 2s;
    animation-duration: 2s;
    -webkit-animation-delay: 0s;
    animation-delay: 0s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
  }
  .home-location.show-text .pointer-map {
    -webkit-animation-name: Trans;
    animation-name: Trans;
    -webkit-animation-duration: 0.6s;
    animation-duration: 0.6s;
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-animation-delay: 0.8s;
    animation-delay: 0.8s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
  }
  .home-location.show-text .text-map {
    -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;
  }
  .home-location.show-text .dot-p {
    -webkit-animation-name: scaleLarge;
    animation-name: scaleLarge;
    -webkit-animation-duration: 1.5s;
    animation-duration: 1.5s;
    -webkit-animation-delay: calc(100ms * var(--data-index));
    animation-delay: calc(100ms * var(--data-index));
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
  }
  .home-location .bg-cover,
  .location-intro .bg-cover {
    opacity: 0;
  }
  .home-location.show-text .bg-cover,
  .location-intro.show-text .bg-cover {
    -webkit-animation-name: fadeIn;
    animation-name: fadeIn;
    -webkit-animation-duration: 2s;
    animation-duration: 2s;
    -webkit-animation-delay: 0s;
    animation-delay: 0s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
  }
  .location-intro.show-text .srcoll-down {
    -webkit-animation-name: fadeInDown;
    animation-name: fadeInDown;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-delay: calc(20ms * var(--word-total));
    animation-delay: calc(20ms * var(--word-total));
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
  }
  .location-intro.show-text .srcoll-down span {
    -webkit-animation: Preloader 3s alternate infinite;
    animation: Preloader 3s alternate infinite;
  }
  .box-time,
  .location-extra .pic-img {
    opacity: 0;
  }
  .location-extra.show-text .pic-img {
    -webkit-animation-name: scaleLarge;
    animation-name: scaleLarge;
    -webkit-animation-duration: 2s;
    animation-duration: 2s;
    -webkit-animation-delay: 0.8s;
    animation-delay: 0.8s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
  }
  .location-extra.show-text .box-time {
    -webkit-animation-name: fadeInUp;
    animation-name: fadeInUp;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-delay: 0.3s;
    animation-delay: 0.3s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
  }
  .brochure-library .bg-cover,
  .gallery-slide {
    opacity: 0;
  }
  .brochure-library .bg-cover::after {
    display: block;
    background: var(--color-black-gradient);
    mix-blend-mode: multiply;
  }
  .brochure-library.show-text .bg-cover::after {
    -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;
  }
  .brochure-library.show-text .bg-cover {
    -webkit-animation-name: fadeIn;
    animation-name: fadeIn;
    -webkit-animation-duration: 2s;
    animation-duration: 2s;
    -webkit-animation-delay: 0s;
    animation-delay: 0s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
  }
  .show-text .brochure-content {
    -webkit-animation-name: fadeInUp;
    animation-name: fadeInUp;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-delay: 0.6s;
    animation-delay: 0.6s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
  }
  .show-text .picture-content {
    -webkit-animation-name: fadeIn;
    animation-name: fadeIn;
    -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;
  }
  .show-text .video-content {
    -webkit-animation-name: fadeIn;
    animation-name: fadeIn;
    -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;
  }
  .box-progress.on-show {
    -webkit-animation-name: fadeInUp;
    animation-name: fadeInUp;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-delay: 0.3s;
    animation-delay: 0.3s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
  }
  .master-map {
    opacity: 0;
  }
  .show-text .master-map {
    -webkit-animation-name: fadeIn;
    animation-name: fadeIn;
    -webkit-animation-duration: 2s;
    animation-duration: 2s;
    -webkit-animation-delay: 0s;
    animation-delay: 0s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
  }
  .block .block-note,
  .block .note-faci,
  .key-block > *,
  .masterplan .block-note,
  .masterplan .note-faci,
  .text-house,
  .title-block {
    opacity: 0;
  }
  .block.show-text .block-note,
  .masterplan.show-text .block-note {
    -webkit-animation-name: fadeInUp;
    animation-name: fadeInUp;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-delay: 0.6s;
    animation-delay: 0.6s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
  }
  .block.show-text .note-faci,
  .masterplan.show-text .note-faci {
    -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;
  }
  .block.show-text .key-block > * {
    -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;
  }
  .block.show-text .text-house {
    -webkit-animation-name: scaleLarge;
    animation-name: scaleLarge;
    -webkit-animation-duration: 1.5s;
    animation-duration: 1.5s;
    -webkit-animation-delay: 1s;
    animation-delay: 1s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
  }
  .block.show-text .title-block {
    -webkit-animation-name: fadeInDown;
    animation-name: fadeInDown;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-delay: 0.3s;
    animation-delay: 0.3s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
  }
  .ratio-4-3 .block.show-text .title-block {
    -webkit-animation-name: goRight;
    animation-name: goRight;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-delay: 0.3s;
    animation-delay: 0.3s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
  }
  .box-list-inner,
  .dot-num,
  .name-block {
    opacity: 0;
  }
  .show-text .block-stroke {
    -webkit-animation-name: strokeArea;
    animation-name: strokeArea;
    -webkit-animation-duration: 3s;
    animation-duration: 3s;
    -webkit-animation-delay: 2s;
    animation-delay: 2s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
  }
  .facilities.show-text .dot-num {
    -webkit-animation-name: scaleLarge;
    animation-name: scaleLarge;
    -webkit-animation-duration: 1.5s;
    animation-duration: 1.5s;
    -webkit-animation-delay: calc(50ms * var(--data-index));
    animation-delay: calc(50ms * var(--data-index));
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
  }
  .facilities.show-text .box-list-inner {
    -webkit-animation-name: fadeInUp;
    animation-name: fadeInUp;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-delay: calc(50ms * var(--data-index));
    animation-delay: calc(50ms * var(--data-index));
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
  }
  .item-news-home {
    opacity: 0;
  }
  .home-news.show-text .item-news-home:nth-child(1) {
    -webkit-animation-name: goRight;
    animation-name: goRight;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-delay: 0s;
    animation-delay: 0s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
  }
  .home-news.show-text .item-news-home:nth-child(2) {
    -webkit-animation-name: goLeft;
    animation-name: goLeft;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-delay: 0.3s;
    animation-delay: 0.3s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
  }
  .home-news.show-text .item-news-home:nth-child(3) {
    -webkit-animation-name: goLeft;
    animation-name: goLeft;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-delay: 0.4s;
    animation-delay: 0.4s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
  }
  .error-info .box-txt,
  .error-info .title-main,
  .thank-you .box-txt,
  .thank-you .title-main {
    opacity: 0;
  }
  .thank-you.show-text .title-main {
    -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;
  }
  .thank-you.show-text .box-txt {
    -webkit-animation-name: fadeInUp;
    animation-name: fadeInUp;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-delay: 1.3s;
    animation-delay: 1.3s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
  }
  .error-info.show-text .title-main {
    -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;
  }
  .error-info.show-text .box-txt {
    -webkit-animation-name: fadeInUp;
    animation-name: fadeInUp;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-delay: 1.3s;
    animation-delay: 1.3s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
  }
}
@media screen and (max-width: 1100px) {
  .ani-item.on-show {
    -webkit-animation-name: fadeIn;
    animation-name: fadeIn;
    -webkit-animation-duration: 1.5s;
    animation-duration: 1.5s;
    -webkit-animation-delay: 0s;
    animation-delay: 0s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
  }
  .box-progress.on-show {
    -webkit-animation-name: fadeIn;
    animation-name: fadeIn;
    -webkit-animation-duration: 1.5s;
    animation-duration: 1.5s;
    -webkit-animation-delay: 0.3s;
    animation-delay: 0.3s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
  }
}
@media (hover: hover) and (pointer: fine) and (min-width: 1100px) {
  .language li a,
  .language li button,
  .language li::after {
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
  }
  .language li:hover .hover {
    color: var(--color-white);
  }
  .language li:hover::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 path {
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
  }
  .link-home:hover .normal {
    -webkit-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    transform: translateY(-100%);
  }
  .link-home:hover .hover {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
  .hotline .icon::after,
  .hotline path,
  .subscribe .icon::after,
  .subscribe path,
  .v360 .icon::after,
  .v360 path {
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
  }
  .hotline:hover span.normal,
  .subscribe:hover span.normal,
  .v360:hover span.normal {
    -webkit-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    transform: translateY(-100%);
  }
  .hotline:hover span.hover,
  .subscribe:hover span.hover,
  .v360:hover span.hover {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
    color: var(--color-highlight);
  }
  .hotline:hover .icon,
  .subscribe:hover .icon,
  .v360:hover .icon {
    color: var(--color-white);
  }
  .hotline:hover .icon::after,
  .subscribe:hover .icon::after,
  .v360:hover .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);
  }
  .hotline:hover path.normal,
  .subscribe:hover path.normal,
  .v360:hover path.normal {
    -webkit-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    transform: translateY(-100%);
  }
  .hotline:hover path.hover,
  .subscribe:hover path.hover,
  .v360:hover path.hover {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
  .main-menu li .nav-item:hover .normal {
    -webkit-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    transform: translateY(-100%);
  }
  .main-menu li .nav-item:hover .hover {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
  .main-menu li .nav-item:hover .nav-drop::before {
    color: var(--color-highlight);
  }
  .box-nav > ul li::before {
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
  }
  .box-nav > ul li:hover::before {
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
    border-color: transparent;
    opacity: 1;
    background-color: var(--color-highlight);
  }
  .effect-text {
    -webkit-transition: color 0.3s ease-in-out;
    transition: color 0.3s ease-in-out;
  }
  .effect-text span.normal {
    -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;
  }
  .effect-text:hover:hover {
    color: var(--color-highlight);
  }
  .effect-text:hover span.normal {
    -webkit-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    transform: translateY(-100%);
  }
  .effect-text:hover span.hover {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
  .nav-click .line-svg {
    -webkit-transform-origin: center;
    -ms-transform-origin: center;
    transform-origin: center;
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
  }
  .nav-click:hover {
    color: var(--color-highlight);
  }
  .nav-click:not(.active):hover .one {
    width: 100px;
  }
  .nav-click:not(.active):hover .two {
    width: 50px;
  }
  .nav-click.active:hover .line-svg {
    -webkit-transform: rotate(90deg) scale(0.8);
    -ms-transform: rotate(90deg) scale(0.8);
    transform: rotate(90deg) scale(0.8);
  }
  .select-box li,
  .select-header .but {
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
  }
  .select-box li:hover {
    background-color: var(--color-highlight);
  }
  .select-header .but:hover {
    border: none;
    background-color: var(--color-normal);
  }
  .close,
  .close-album,
  .close-apartment,
  .close-pics,
  .close-popup,
  .close-video,
  .close-virtual {
    -webkit-transition: border 0.3s ease-in-out;
    transition: border 0.3s ease-in-out;
  }
  .close .c-x,
  .close-album .c-x,
  .close-album::before,
  .close-apartment .c-x,
  .close-apartment::before,
  .close-pics .c-x,
  .close-pics::before,
  .close-popup .c-x,
  .close-popup::before,
  .close-video .c-x,
  .close-video::before,
  .close-virtual .c-x,
  .close-virtual::before,
  .close::before {
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
  }
  .close-album:hover,
  .close-apartment:hover,
  .close-pics:hover,
  .close-popup:hover,
  .close-video:hover,
  .close-virtual:hover,
  .close:hover {
    border-color: var(--color-white-zero);
  }
  .close-album:hover::before,
  .close-apartment:hover::before,
  .close-pics:hover::before,
  .close-popup:hover::before,
  .close-video:hover::before,
  .close-virtual:hover::before,
  .close:hover::before {
    -webkit-transform: scale(0.8);
    -ms-transform: scale(0.8);
    transform: scale(0.8);
    background-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);
  }
  .close-album:hover .c-rotate,
  .close-apartment:hover .c-rotate,
  .close-pics:hover .c-rotate,
  .close-popup:hover .c-rotate,
  .close-video:hover .c-rotate,
  .close-virtual:hover .c-rotate,
  .close:hover .c-rotate {
    -webkit-animation-name: Show100;
    animation-name: Show100;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
    -webkit-animation-timing-function: cubic-bezier(0.57, 0.21, 0.69, 0.95);
    animation-timing-function: cubic-bezier(0.57, 0.21, 0.69, 0.95);
    stroke: var(--color-highlight-alpha);
  }
  .close-album:hover .c-x,
  .close-apartment:hover .c-x,
  .close-pics:hover .c-x,
  .close-popup:hover .c-x,
  .close-video:hover .c-x,
  .close-virtual:hover .c-x,
  .close:hover .c-x {
    -webkit-transform: scale(0.8) rotate(90deg);
    -ms-transform: scale(0.8) rotate(90deg);
    transform: scale(0.8) rotate(90deg);
  }
  .full-screen::after,
  .full-screen::before {
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
  }
  .full-screen {
    -webkit-transition: color 0.3s ease-in-out;
    transition: color 0.3s ease-in-out;
  }
  .full-screen:hover::before {
    -webkit-transform: scale(0.8);
    -ms-transform: scale(0.8);
    transform: scale(0.8);
    background-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);
  }
  .full-screen:hover::after {
    border-color: var(--color-highlight);
  }
  .link-social,
  .link-social .icon div,
  .social li .icon div,
  .social li a {
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
  }
  .link-social:hover,
  .social li a:hover {
    border-color: transparent !important;
    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-social:hover .normal,
  .social li a:hover .normal {
    -webkit-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    transform: translateY(-100%);
  }
  .link-social:hover .hover,
  .social li a:hover .hover {
    -webkit-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    transform: translateY(-100%);
  }
  .item-policy a {
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
  }
  .item-policy a:hover {
    border-color: transparent;
    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);
  }
  .share a,
  .share a .icon div,
  .share-item a,
  .share-item a .icon div {
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
  }
  .share a:hover,
  .share-item a:hover {
    border-color: transparent;
    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);
    color: var(--color-white);
  }
  .share a:hover .normal {
    -webkit-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    transform: translateY(-100%);
  }
  .share a:hover .hover {
    -webkit-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    transform: translateY(-100%);
  }
  .share-item a:hover .normal {
    -webkit-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    transform: translateY(-100%);
  }
  .share-item a:hover .hover {
    -webkit-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    transform: translateY(-100%);
  }
  .print-but,
  .share-item a {
    -webkit-transition: color 0.3s ease-in-out;
    transition: color 0.3s ease-in-out;
  }
  .print-but:hover,
  .share-item a:hover {
    color: var(--color-highlight);
  }
  .go-top,
  .go-top::after,
  .srcoll-down::after {
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
  }
  .srcoll-down {
    -webkit-transition: color 0.3s ease-in-out, bottom 0.3s ease-in-out;
    transition: color 0.3s ease-in-out, bottom 0.3s ease-in-out;
  }
  .srcoll-down:hover {
    color: var(--color-white);
  }
  .srcoll-down:hover svg {
    -webkit-transform: none !important;
    -ms-transform: none !important;
    transform: none !important;
    -webkit-animation-play-state: paused;
    animation-play-state: paused;
    color: var(--color-white) !important;
  }
  .go-top:hover {
    color: var(--color-white);
  }
  .srcoll-down:hover::after {
    background-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);
  }
  .go-top:hover::after {
    background-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);
  }
  .icon-svg,
  .icon-svg::before,
  .view-more,
  .view-more svg {
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
  }
  .view-more span {
    -webkit-transition: color 0.3s ease-in-out;
    transition: color 0.3s ease-in-out;
  }
  .view-more:hover span {
    color: var(--color-highlight);
  }
  .view-more:hover svg {
    color: var(--color-white);
  }
  .view-more:hover .after {
    -webkit-animation-name: Show100;
    animation-name: Show100;
    -webkit-animation-duration: 2s;
    animation-duration: 2s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
    stroke: var(--color-highlight);
  }
  .view-more:hover .before {
    stroke-width: 0;
  }
  .view-more:hover .icon-svg::before {
    background-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);
  }
  .view-more:hover .icon-svg {
    margin-left: 1vw;
  }
  .view-more:hover {
    margin-right: -1vw;
  }
  .arrow-more,
  .arrow-more::after,
  .arrow-more::before,
  .view-more span {
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
  }
  .click-more .view-more:hover {
    margin: 0;
  }
  .click-more .view-more:hover .arrow-more::before {
    -webkit-transform: scale(0.6);
    -ms-transform: scale(0.6);
    transform: scale(0.6);
    border-color: transparent;
    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);
  }
  .click-more .view-more:hover .arrow-more::after {
    border-color: var(--color-highlight);
  }
  .click-more .view-more:hover .arrow-more {
    color: var(--color-white);
  }
  .click-more .view-more:hover .arrow-more svg {
    -webkit-transform: scale(0.8);
    -ms-transform: scale(0.8);
    transform: scale(0.8);
  }
  .click-more .view-more:hover span {
    margin: 1rem 0 0.5rem;
    color: var(--color-highlight);
  }
  .load-text a,
  .text-content li a {
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
  }
  .load-text a:hover,
  .text-content li a:hover {
    color: var(--color-highlight);
    text-shadow: none;
  }
  .button,
  .button::after {
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
  }
  .button:hover::after {
    clip-path: circle(100% at 50% 0);
  }
  .button:hover {
    border-color: transparent;
    -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) !important;
  }
  .arrows .arrow::after,
  .slide-pic-nav .arrow::after {
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
  }
  .arrows .arrow:hover::after,
  .slide-pic-nav .arrow:hover::after {
    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);
  }
  .arrows .arrow:hover::before,
  .slide-pic-nav .arrow:hover::before {
    -webkit-animation-play-state: paused;
    animation-play-state: paused;
  }
  .pic-zoom-in::after,
  .pic-zoom-out::after {
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
  }
  .pic-zoom-in:hover::after,
  .pic-zoom-out:hover::after {
    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);
  }
  .pic-zoom-in:hover::before,
  .pic-zoom-out:hover::before {
    -webkit-animation-play-state: paused;
    animation-play-state: paused;
  }
  .download-pdf svg,
  .download-pdf::after,
  .download-pdf::before,
  .view-album svg,
  .view-album::after,
  .view-album::before,
  .view-video svg,
  .view-video::after,
  .view-video::before,
  .view-virtual svg,
  .view-virtual::after,
  .view-virtual::before {
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
  }
  .download-pdf:hover::before,
  .view-album:hover::before,
  .view-video:hover::before,
  .view-virtual:hover::before {
    -webkit-transform: scale(0.6) rotate(-45deg);
    -ms-transform: scale(0.6) rotate(-45deg);
    transform: scale(0.6) rotate(-45deg);
    -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);
  }
  .download-pdf:hover::after,
  .view-album:hover::after,
  .view-video:hover::after,
  .view-virtual:hover::after {
    border-color: var(--color-highlight);
  }
  .download-pdf:hover svg,
  .view-album:hover svg,
  .view-video:hover svg,
  .view-virtual:hover svg {
    -webkit-transform: scale(0.9);
    -ms-transform: scale(0.9);
    transform: scale(0.9);
  }
  .sub-menu-inner a {
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
  }
  .sub-menu-inner a:hover {
    background-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);
  }
  .pic-img img {
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
  }
  .title-pic h3 {
    -webkit-transition: color 0.3s ease-in-out;
    transition: color 0.3s ease-in-out;
  }
  .item-library.hover .big-thumb {
    -webkit-filter: drop-shadow(0.5rem 1rem 1.5rem var(--color-black-alpha-02));
    filter: drop-shadow(0.5rem 1rem 1.5rem var(--color-black-alpha-02));
  }
  .item-library.hover .pic-img img {
    -webkit-filter: brightness(110%);
    filter: brightness(110%);
    -webkit-transform: scale(1.02);
    -ms-transform: scale(1.02);
    transform: scale(1.02);
  }
  .item-library.hover .title-pic h3 {
    color: var(--color-highlight);
  }
  .item-library.hover .view-album::before {
    -webkit-transform: scale(0.6) rotate(-45deg);
    -ms-transform: scale(0.6) rotate(-45deg);
    transform: scale(0.6) rotate(-45deg);
    -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);
  }
  .item-library.hover .view-album::after {
    border-color: var(--color-highlight);
  }
  .item-library.hover .view-album svg {
    -webkit-transform: scale(0.9);
    -ms-transform: scale(0.9);
    transform: scale(0.9);
  }
  .item-library.hover .download-pdf::before {
    -webkit-transform: scale(0.6) rotate(-45deg);
    -ms-transform: scale(0.6) rotate(-45deg);
    transform: scale(0.6) rotate(-45deg);
    -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);
  }
  .item-library.hover .download-pdf::after {
    border-color: var(--color-highlight);
  }
  .item-library.hover .download-pdf svg {
    -webkit-transform: scale(0.9);
    -ms-transform: scale(0.9);
    transform: scale(0.9);
  }
  .item-library.hover .view-virtual::before {
    -webkit-transform: scale(0.6) rotate(-45deg);
    -ms-transform: scale(0.6) rotate(-45deg);
    transform: scale(0.6) rotate(-45deg);
    -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);
  }
  .item-library.hover .view-virtual::after {
    border-color: var(--color-highlight);
  }
  .item-library.hover .view-virtual svg {
    -webkit-transform: scale(0.9);
    -ms-transform: scale(0.9);
    transform: scale(0.9);
  }
  .item-library.hover .view-video::before {
    -webkit-transform: scale(0.6) rotate(-45deg);
    -ms-transform: scale(0.6) rotate(-45deg);
    transform: scale(0.6) rotate(-45deg);
    -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);
  }
  .item-library.hover .view-video::after {
    border-color: var(--color-highlight);
  }
  .item-library.hover .view-video svg {
    -webkit-transform: scale(0.9);
    -ms-transform: scale(0.9);
    transform: scale(0.9);
  }
  .go-news {
    -webkit-transition: color 0.3s ease-in-out;
    transition: color 0.3s ease-in-out;
  }
  .item-news-home::after,
  .item-news::after {
    -webkit-transition: border-color 0.3s ease-in-out, -webkit-box-shadow 0.3s ease-in-out;
    transition: border-color 0.3s ease-in-out, -webkit-box-shadow 0.3s ease-in-out;
    transition: border-color 0.3s ease-in-out, box-shadow 0.3s ease-in-out;
    transition: border-color 0.3s ease-in-out, box-shadow 0.3s ease-in-out, -webkit-box-shadow 0.3s ease-in-out;
  }
  .item-news-home:hover::after,
  .item-news:hover::after {
    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);
  }
  .item-news-home:hover .go-news,
  .item-news:hover .go-news {
    color: var(--color-highlight);
  }
  .item-news-home:hover .go-news::after,
  .item-news:hover .go-news::after {
    opacity: 1;
  }
  .masterplan .hover-block:hover .fill-block {
    fill-opacity: 0.9;
  }
  .masterplan .hover-block:hover text {
    fill: var(--color-white);
  }
}
.block-area {
  position: absolute;
  cursor: pointer;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.block-area:hover {
  background: rgba(52, 152, 219, 0.3);
  border: 2px solid #3498db;
}

.block-info {
  position: absolute;
  background: white;
  padding: 20px;
  border-radius: 8px;
  -webkit-box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
  display: none;
  z-index: 1000;
  min-width: 250px;
  border: 2px solid #3498db;
}

.block-info.active {
  display: block;
  -webkit-animation: fadeIn 0.3s ease;
  animation: fadeIn 0.3s ease;
}

.is-yellow {
  background: -webkit-gradient(linear, left top, right top, from(#FDF8DA), color-stop(50.48%, #EED4A1), to(#DDB268));
  background: linear-gradient(90deg, #FDF8DA 0%, #EED4A1 50.48%, #DDB268 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-fill-color: transparent;
}

@-webkit-keyframes previewCommonIntroductionFadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes previewCommonIntroductionFadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes previewCommonIntroductionClipShow {
  0% {
    clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%);
  }
  100% {
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
  }
}
@keyframes previewCommonIntroductionClipShow {
  0% {
    clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%);
  }
  100% {
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
  }
}
@-webkit-keyframes previewCommonIntroductionBlurOut {
  0% {
    -webkit-filter: blur(0);
    filter: blur(0);
    opacity: 1;
    pointer-events: auto;
  }
  100% {
    -webkit-filter: blur(1rem);
    filter: blur(1rem);
    opacity: 0;
    pointer-events: none;
  }
}
@keyframes previewCommonIntroductionBlurOut {
  0% {
    -webkit-filter: blur(0);
    filter: blur(0);
    opacity: 1;
    pointer-events: auto;
  }
  100% {
    -webkit-filter: blur(1rem);
    filter: blur(1rem);
    opacity: 0;
    pointer-events: none;
  }
}
.preview-common-introduction {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 10000;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-animation-name: previewCommonIntroductionBlurOut;
  animation-name: previewCommonIntroductionBlurOut;
  -webkit-animation-duration: 2.4s;
  animation-duration: 2.4s;
  -webkit-animation-delay: 4s;
  animation-delay: 4s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}
.preview-common-introduction::before {
  content: "";
  background: url("../img/common/common_bg_05.jpg") 50% 0%/cover no-repeat;
  width: 100%;
  height: 100%;
  z-index: 0;
  position: absolute;
  left: 0;
  top: 0;
}
.preview-common-introduction .preview-logo {
  width: 40vw;
  height: 100%;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  position: relative;
  z-index: 2;
  background: url("../img/common/logo_img_01_white.svg") 50% 50%/contain no-repeat;
  clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%);
  -webkit-animation-name: previewCommonIntroductionClipShow;
  animation-name: previewCommonIntroductionClipShow;
  -webkit-animation-duration: 1.4s;
  animation-duration: 1.4s;
  -webkit-animation-delay: 2s;
  animation-delay: 2s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.section-common-gallery {
  background: url(../img/utilities/background_utilities_01.jpg) 50% 50%/cover no-repeat;
  color: #fff;
  overflow: hidden;
}
.section-common-gallery .gallery-container {
  width: 100%;
  height: 100%;
  position: relative;
  z-index: 1;
  overflow: hidden;
}
.section-common-gallery .gallery-viewport {
  width: 100%;
  min-height: 100%;
  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;
}
.section-common-gallery .gallery-wrapper {
  width: 100%;
}
@media print, (min-width: 768px) {
  .section-common-gallery .gallery-wrapper {
    padding: 0.23rem 0 0.21rem;
  }
  .section-common-gallery .title-common-primary {
    margin-bottom: 0.43rem;
  }
}
@media only screen and (max-width: 767.98px) {
  .section-common-gallery .gallery-wrapper {
    padding: 0.6rem 0;
  }
  .section-common-gallery .title-common-primary {
    margin-bottom: 0.3rem;
  }
}

@media print, (min-width: 768px) {
  .section-common-gallery.is-gallery .gallery-wrapper {
    padding: 0.2rem 0 0.43rem;
  }
  .section-common-gallery.is-gallery .title-common-primary {
    margin-bottom: 0.45rem;
  }
}

.section-common-gallery.is-resources {
  background-image: url(../img/library/background_resources_01.jpg);
}
@media print, (min-width: 768px) {
  .section-common-gallery.is-resources .gallery-wrapper {
    padding: 0.2rem 0 0.45rem;
  }
  .section-common-gallery.is-resources .title-common-primary {
    margin-bottom: 0.57rem;
  }
}

.section-common-gallery.is-video {
  background-image: url(../img/library/background_video_01.jpg);
}
@media print, (min-width: 768px) {
  .section-common-gallery.is-video .gallery-wrapper {
    padding: 0.52rem 0 0.1rem;
  }
  .section-common-gallery.is-video .title-common-primary {
    margin-bottom: 0.2rem;
  }
}
@media (min-width: 768px) and (max-width: 1279.98px) {
  .section-common-gallery.is-video .title-common-primary {
    margin-bottom: 0.2rem;
  }
}

.slider-common-showcase {
  position: relative;
}
.slider-common-showcase .slider-container {
  position: relative;
  z-index: 0;
}
.slider-common-showcase .slider-viewport {
  overflow: hidden;
}
.slider-common-showcase .slider-wrapper {
  overflow: visible;
}
@media print, (min-width: 768px) {
  .slider-common-showcase .slider-decoration {
    position: absolute;
    z-index: 1;
  }
  .slider-common-showcase .slider-decoration .object-common {
    -o-object-fit: contain;
    object-fit: contain;
  }
  .slider-common-showcase .slider-viewport {
    width: auto;
  }
}
@media only screen and (max-width: 767.98px) {
  .slider-common-showcase .slider-viewport {
    width: auto;
    margin: 0 0.16rem;
  }
  .slider-common-showcase .slider-slide {
    padding: 0 0.08rem;
  }
}

@media print, (min-width: 768px) {
  .slider-common-showcase.is-align-left .slider-decoration .object-common {
    -o-object-position: 0% 0%;
    object-position: 0% 0%;
  }
  .slider-common-showcase.is-align-left .slider-viewport {
    margin-right: calc(50% - 2.95rem);
    margin-left: -6.71rem;
  }
  .slider-common-showcase.is-align-left .slider-slide {
    width: auto;
    padding-left: 0.3rem;
  }
}

@media print, (min-width: 768px) {
  .slider-common-showcase.is-align-right .slider-decoration .object-common {
    -o-object-position: 100% 0%;
    object-position: 100% 0%;
  }
  .slider-common-showcase.is-align-right .slider-viewport {
    margin-right: -6.71rem;
    margin-left: calc(50% - 2.95rem);
  }
  .slider-common-showcase.is-align-right .slider-slide {
    width: auto;
    padding-right: 0.3rem;
  }
}

@media print, (min-width: 768px) {
  .slider-common-showcase.is-utilities .slider-decoration {
    width: 8.22rem;
    height: calc(100dvh - 2.28rem);
    min-height: calc(100% + 0.19rem);
    max-height: 8.22rem;
    top: -0.19rem;
    left: calc(50% + 2.72rem);
  }
}

@media print, (min-width: 768px) {
  .slider-common-showcase.is-gallery .slider-decoration {
    width: 8.51rem;
    height: calc(100dvh - 1.23rem);
    min-height: calc(100% + 0.89rem);
    max-height: 9.27rem;
    top: -0.89rem;
    right: calc(50% + 1.09rem);
  }
  .slider-common-showcase.is-gallery .slider-viewport {
    margin-right: -7.05rem;
    margin-left: calc(50% - 2.95rem + 0.34rem);
  }
}

.slider-common-showcase.is-resources .slide-common-showcase .slide-wrapper {
  padding-top: 129.1479820628%;
}
@media print, (min-width: 768px) {
  .slider-common-showcase.is-resources .slider-decoration {
    width: 9.36rem;
    height: calc(100dvh - 1.14rem);
    min-height: calc(100% + 5.8rem);
    max-height: 9.36rem;
    top: -2.9rem;
    left: calc(50% + 2.88rem);
  }
  .slider-common-showcase.is-resources .slider-viewport {
    margin-right: calc(50% - 2.6rem);
    margin-left: -2.08rem;
  }
}

.slide-common-showcase .slide-label {
  margin: 0;
  display: block;
  font-weight: 400;
  text-transform: uppercase;
}
.slide-common-showcase .slide-wrapper {
  padding-top: 70.0964630225%;
  position: relative;
}
.slide-common-showcase .slide-wrapper .object-common {
  position: absolute;
  top: 0;
  left: 0;
}
@media print, (min-width: 768px) {
  .slide-common-showcase .slide-label {
    margin-top: 0.13rem;
    font-size: 0.3rem;
    line-height: 2;
  }
}
@media only screen and (max-width: 767.98px) {
  .slide-common-showcase .slide-label {
    margin-top: 0.1rem;
    font-size: 0.18rem;
    line-height: 1.3333333333;
  }
}

.slider-common-video {
  position: relative;
}
.slider-common-video .slider-visual,
.slider-common-video .slider-navigation {
  position: relative;
  overflow: hidden;
}
.slider-common-video .slide-banner {
  padding-top: 58.1953642384%;
  position: relative;
  cursor: pointer;
}
.slider-common-video .slide-banner::after {
  content: "";
  background: url(../img/library/icon_video_01.svg) 50% 50%/auto auto no-repeat;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
}
.slider-common-video .slide-banner .object-common {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
}
.slider-common-video .slide-label {
  display: block;
  text-transform: uppercase;
}
@media print, (min-width: 768px) {
  .slider-common-video {
    max-width: 16.18rem;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 0.3rem;
  }
  .slider-common-video .slider-visual {
    width: 74.6600741656%;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
  }
  .slider-common-video .visual-viewport {
    width: calc(100% + 0.3rem);
    margin: 0 -0.15rem;
  }
  .slider-common-video .visual-slide {
    padding: 0 0.15rem;
  }
  .slider-common-video .visual-slide .slide-banner::after {
    background-size: 6.6225165563%;
  }
  .slider-common-video .slide-label {
    margin-top: 0.09rem;
    font-size: 0.3rem;
    line-height: 2;
  }
  .slider-common-video .slider-navigation {
    width: calc(25.3399258344% - 0.3rem);
    position: absolute;
    top: -0.23rem;
    right: 0;
    height: 7.49rem;
    padding: 0.23rem 0;
  }
  .slider-common-video .navigation-viewport {
    height: calc(100% + 0.33rem);
    margin: -0.165rem 0;
  }
  .slider-common-video .navigation-slide {
    height: auto !important;
    padding: 0.165rem 0.37rem 0.165rem 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .slider-common-video .navigation-slide .slide-banner {
    width: 100%;
    padding-top: 61.8075801749%;
  }
  .slider-common-video .navigation-slide .slide-banner::after {
    background-size: 14.5772594752%;
  }
  .slider-common-video .navigation-scrollbar {
    width: 0.03rem;
    border-radius: 99999px;
    background-color: rgba(217, 217, 217, 0.4);
    right: 0;
  }
  .slider-common-video .navigation-scrollbar .swiper-scrollbar-drag {
    background-color: #c1a880;
    border-radius: 99999px;
  }
}
@media only screen and (max-width: 767.98px) {
  .slider-common-video {
    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.2rem;
  }
  .slider-common-video .visual-viewport {
    width: calc(100% + 0.2rem);
    margin: 0 -0.1rem;
  }
  .slider-common-video .visual-slide {
    padding: 0 0.1rem;
  }
  .slider-common-video .visual-slide .slide-banner::after {
    background-size: 6.6225165563%;
  }
  .slider-common-video .slide-label {
    margin-top: 0.1rem;
    font-size: 0.18rem;
    line-height: 1.3333333333;
  }
  .slider-common-video .navigation-viewport {
    width: calc(100% + 0.1rem);
    margin: 0 -0.05rem;
  }
  .slider-common-video .navigation-slide {
    padding: 0 0.05rem;
  }
  .slider-common-video .navigation-slide .slide-banner::after {
    background-size: 14.5772594752%;
  }
  .slider-common-video .navigation-scrollbar {
    display: none !important;
  }
}
/*# sourceMappingURL=common.css.map */