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

.visual-utilities {
  background-color: #1a5450;
  position: relative;
  color: #fff;
}
.visual-utilities.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;
}
.visual-utilities.show-text .visual-wrapper::before {
  -webkit-animation: scaleSmall2 1.5s linear forwards;
  animation: scaleSmall2 1.5s linear forwards;
}
.visual-utilities .title-common-primary .title-viewport {
  -webkit-animation-delay: 1.1s !important;
  animation-delay: 1.1s !important;
}
.visual-utilities .master-bg {
  background-image: url(../img/utilities/banner_visual_01.jpg);
}
.visual-utilities .background-wrapper {
  position: absolute;
}
.visual-utilities .background-wrapper::before {
  content: "";
  background: url(../img/utilities/mask_visual_01.png) 0% 0%/100% auto no-repeat;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  pointer-events: none;
}
.visual-utilities .object-common {
  position: relative;
  z-index: 0;
}
.visual-utilities .visual-container {
  height: 100%;
  position: relative;
  z-index: 1;
  pointer-events: none;
}
.visual-utilities .visual-viewport {
  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: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  pointer-events: none;
}
.visual-utilities .visual-wrapper {
  position: relative;
  pointer-events: auto;
}
.visual-utilities .visual-wrapper::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: #004c40;
  pointer-events: none;
  -webkit-transform-origin: bottom;
  -ms-transform-origin: bottom;
  transform-origin: bottom;
  -webkit-transform: scaleY(1);
  -ms-transform: scaleY(1);
  transform: scaleY(1);
  opacity: 0;
}
.visual-utilities .visual-title {
  display: block;
  margin: 0;
  text-align: center;
  font-family: "Vogun", sans-serif;
  font-weight: 400;
  text-transform: uppercase;
}
.visual-utilities .box {
  cursor: pointer;
}
@media print, (min-width: 768px) {
  .visual-utilities .title-common-primary {
    margin-bottom: 0.1rem;
  }
  .visual-utilities .background-wrapper {
    width: 1920px;
    height: 1080px;
  }
  .visual-utilities .visual-wrapper {
    padding-top: 0.38rem;
    height: 2.74rem;
  }
  .visual-utilities .visual-viewport {
    min-height: 100dvh;
  }
  .visual-utilities .visual-title {
    margin-bottom: 0.2rem;
    font-size: 0.5rem;
    line-height: 1.2;
  }
}
@media only screen and (max-width: 767.98px) {
  .visual-utilities .master-bg {
    -webkit-transform: none !important;
    -ms-transform: none !important;
    transform: none !important;
    top: 0 !important;
    left: 0 !important;
    width: 4.4rem;
    height: 2.48rem;
  }
  .visual-utilities .master-bg svg {
    width: 100%;
    height: 100%;
  }
  .visual-utilities .background-wrapper {
    position: relative;
    height: 2.48rem;
  }
  .visual-utilities .visual-background {
    padding-top: 56.25%;
  }
  .visual-utilities .visual-wrapper {
    padding: 0.3rem 0 0.6rem;
  }
  .visual-utilities .visual-title {
    margin-bottom: 0.15rem;
    font-size: 0.3rem;
    line-height: 1.3333333333;
  }
}

.list-utilities-visual .list-wrapper {
  margin: 0;
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 0.2rem 0;
  list-style: none;
  counter-reset: list 0;
}
.list-utilities-visual .list-item {
  counter-increment: list;
  position: relative;
}
.list-utilities-visual .list-item::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 1px;
  height: 0;
  background-color: rgba(255, 255, 255, 0.4);
}
.list-utilities-visual .item-label {
  margin: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  font-weight: 700;
  text-transform: uppercase;
}
.list-utilities-visual .item-label:before {
  content: counter(list);
  border-radius: 99999px;
  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;
  background-color: #fff;
  text-align: center;
  color: #004c40;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
}
.list-utilities-visual .item-detail p {
  margin: 0;
}
@media print, (min-width: 768px) {
  .list-utilities-visual .list-item {
    -webkit-box-flex: 1;
    -ms-flex: 1 0 16.6666666667%;
    flex: 1 0 16.6666666667%;
    padding: 0.19rem 0.15rem 0.48rem 0.27rem;
  }
  .list-utilities-visual .item-label {
    min-height: 0.52rem;
    font-size: 0.2rem;
    line-height: 1.3;
  }
  .list-utilities-visual .item-label::before {
    width: 0.27rem;
    height: 0.27rem;
    margin: -0.005rem 0.1rem -0.005rem 0;
  }
  .list-utilities-visual .item-detail {
    margin-top: 0.06rem;
    padding-left: 0.37rem;
    font-size: 0.2rem;
    line-height: 1.3;
  }
}
@media only screen and (max-width: 767.98px) {
  .list-utilities-visual .list-item {
    -webkit-box-flex: 1;
    -ms-flex: 1 0 50%;
    flex: 1 0 50%;
    min-height: 1.3rem;
    padding: 0.1rem 0.15rem;
  }
  .list-utilities-visual .list-item:nth-child(1),
  .list-utilities-visual .list-item:nth-child(2n+1) {
    border-left: 1px solid rgba(255, 255, 255, 0.4);
  }
  .list-utilities-visual .item-label {
    min-height: 0.48rem;
    font-size: 0.16rem;
    line-height: 1.5;
  }
  .list-utilities-visual .item-label::before {
    width: 0.24rem;
    height: 0.24rem;
    margin-right: 0.1rem;
  }
  .list-utilities-visual .item-detail {
    margin-top: 0.05rem;
    padding-left: 0.34rem;
    font-size: 0.14rem;
    line-height: 1.7142857143;
  }
}

.map-tooltip {
  position: absolute;
  background: #c76400;
  color: white;
  white-space: nowrap;
  pointer-events: none;
  -webkit-transition: opacity 0.3s, -webkit-transform 0.3s;
  transition: opacity 0.3s, -webkit-transform 0.3s;
  transition: opacity 0.3s, transform 0.3s;
  transition: opacity 0.3s, transform 0.3s, -webkit-transform 0.3s;
  z-index: 1000;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  will-change: opacity, transform;
  opacity: 0;
}
.map-tooltip.active {
  opacity: 1;
}
.map-tooltip span {
  display: block;
  font-weight: 500;
  letter-spacing: 0.5px;
  text-align: center;
}
.map-tooltip .tooltip-image {
  position: relative;
  padding-top: 60%;
}
.map-tooltip .tooltip-image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
}
@media print, (min-width: 768px) {
  .map-tooltip {
    padding: 0.06rem 0.16rem;
    font-size: 0.14rem;
    -webkit-transform: translate(-50%, calc(-100% - 0.26rem));
    -ms-transform: translate(-50%, calc(-100% - 0.26rem));
    transform: translate(-50%, calc(-100% - 0.26rem));
    border-radius: 0.5rem;
  }
  .map-tooltip:has(.tooltip-image) {
    min-width: 3rem;
    padding: 0.14rem 0.16rem 0.06rem;
    border-radius: 0.1rem;
  }
}
@media (min-width: 768px) and (max-width: 1319.98px) {
  .map-tooltip {
    -webkit-transform: translate(-50%, calc(-100% - 0.2rem));
    -ms-transform: translate(-50%, calc(-100% - 0.2rem));
    transform: translate(-50%, calc(-100% - 0.2rem));
  }
}
@media only screen and (max-width: 767.98px) {
  .map-tooltip {
    font-size: 0.1rem;
    padding: 0.01rem 0.06rem 0.02rem;
    -webkit-transform: translate(-50%, calc(-100% - 0.05rem));
    -ms-transform: translate(-50%, calc(-100% - 0.05rem));
    transform: translate(-50%, calc(-100% - 0.05rem));
    border-radius: 0.3rem;
  }
  .map-tooltip:has(.tooltip-image) {
    border-radius: 0.05rem;
  }
}
/*# sourceMappingURL=utilities.css.map */