@charset "UTF-8";

@font-face {
  font-family : "Miss Stanfort";
  src         : url("../fonts/MissStanfort.eot");
  src         : url("../fonts/MissStanfort.eot?#iefix") format("embedded-opentype"), url("../fonts/MissStanfort.woff2") format("woff2"), url("../fonts/MissStanfort.woff") format("woff"), url("../fonts/MissStanfort.ttf") format("truetype"), url("../fonts/MissStanfort.svg#MissStanfort") format("svg");
  font-weight : normal;
  font-style  : normal;
  font-display: swap;
}

:root {
  --font-body      : "Montserrat", serif;
  --font-title     : "Cormorant Garamond", serif;
  --font-sub       : "Miss Stanfort";
  --width-container: 1268px;
  --color-red      : #e43e30;
  --color-text     : #626365;
  --color-grad     : linear-gradient(180deg,
      #e53f30 -77.84%,
      rgba(229, 63, 48, 0) 100%);
}

@media (min-width: 1700px) {
  :root {
    --width-container: 1496px;
  }
}

@media (min-width: 1920px) {
  :root {
    --width-container: 1690px;
  }
}

@media (min-width: 2560px) {
  :root {
    --width-container: 2254px;
  }
}

html {
  font-size      : 13px;
  scroll-behavior: smooth;
}

@media (min-width: 1440px) {
  html {
    font-size: clamp(13px, 1vw + 8px, 16px);
  }
}

@media (min-width: 920px) and (max-width: 1056px) {
  html {
    font-size: 14px;
  }
}

body {
  font-family: var(--font-body);
  font-size  : 1rem;
  font-weight: 500;
}

body::-webkit-scrollbar {
  width        : 6px;
  border-radius: 10px;
}

body::-webkit-scrollbar-track {
  background: #f1f1f1;
}

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

.main {
  background: var(--color-theme);
}

.container_frame {
  width  : var(--width-container);
  display: block;
  margin : auto;
}

@media (min-width: 1279px) and (max-width: 1439px) {
  .container_frame {
    width: calc(100% - 5.375rem);
  }
}

@media (min-width: 921px) and (max-width: 1279px) {
  .container_frame {
    width: calc(100% - 3.125rem);
  }
}

@media (max-width: 920px) {
  .container_frame {
    width        : 100%;
    padding-left : 25px;
    padding-right: 25px;
  }
}

.p-left-section {
  padding-left: calc((100% - var(--width-container)) / 2);
}

@media (min-width: 1279px) and (max-width: 1439px) {
  .p-left-section {
    padding-left: 60px;
  }
}

@media (min-width: 769px) and (max-width: 1279px) {
  .p-left-section {
    padding-left: 40px;
  }
}

@media (max-width: 769px) {
  .p-left-section {
    padding-left : 15px;
    padding-right: 15px;
  }
}

.p-right-section {
  padding-right: calc((100% - var(--width-container)) / 2);
}

@media (min-width: 1279px) and (max-width: 1439px) {
  .p-right-section {
    padding-right: 60px;
  }
}

@media (min-width: 769px) and (max-width: 1279px) {
  .p-right-section {
    padding-right: 40px;
  }
}

@media (max-width: 769px) {
  .p-right-section {
    padding-left : 15px;
    padding-right: 15px;
  }
}

.text_gradient {
  background             : var(--color-grad);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.segTitle {
  font-size     : 12.5rem;
  font-family   : var(--font-title);
  color         : var(--color-red);
  text-transform: uppercase;
  line-height   : 1.2;
}

@media (max-width: 1200px) {
  .segTitle {
    font-size: 10.5rem;
  }
}

@media (min-width: 920px) and (max-width: 1056px) {
  .segTitle {
    font-size: 2.5rem;
  }
}

@media (max-width: 920px) {
  .segTitle {
    font-size: 35px;
  }
}

.subTitle {
  font-size  : 12.5rem;
  font-style : italic;
  font-family: var(--font-title);
}

@media (max-width: 1200px) {
  .subTitle {
    font-size: 10.5rem;
  }
}

@media (max-width: 920px) {
  .subTitle {
    font-size: 5rem;
  }
}

a {
  text-decoration: none;
}

.loading_page {
  height        : 100vh;
  width         : 100vw;
  transition    : opacity 0.5s ease-in-out;
  pointer-events: none;
  z-index       : 999999;
  position      : fixed;
  top           : 0;
  left          : 0;
}

.loading_page .logo {
  width         : 17.4rem;
  position      : absolute;
  top           : 50%;
  left          : 50%;
  transform     : translate(-50%, -50%) rotateY(90deg);
  transition    : all 1.5s ease-in-out;
  pointer-events: all;
  z-index       : 1;
  opacity       : 0;
  filter        : brightness(20);
}

.loading_page.change_color .logo {
  filter    : none;
  transition: opacity 0.5s ease-in-out;
}

.loading_page .lock_key {
  position      : absolute;
  top           : 50%;
  left          : 50%;
  transform     : translate(-50%, -50%);
  transition    : all 0.5s ease-in-out;
  pointer-events: all;
  pointer-events: none;
  z-index       : 1;
}

.loading_page .lock_key .lock {
  position               : absolute;
  top                    : 0;
  left                   : 0;
  transform-style        : preserve-3d;
  will-change            : transform;
  -webkit-transform-style: preserve-3d;
  transform              : perspective(140px) rotateY(270deg) translateX(19px);
  transition             : transform 1.5s ease-in-out, opacity 0.5s ease-in-out;
  width                  : 2.6rem;
}

.loading_page .lock_key .key {
  width     : 6.6rem;
  opacity   : 0;
  transition: opacity 0.5s ease-in-out, transform 1.5s ease-in-out;
}

.loading_page::after {
  position  : absolute;
  content   : "";
  width     : 100%;
  height    : 100%;
  background: var(--color-red);
  top       : 0;
  left      : 0;
  transition: opacity 0.5s ease-in-out;
}

.loading_page.step1 .lock {
  transform: perspective(140px) rotateY(366deg) translateX(19px);
}

.loading_page.step2 .lock {
  opacity: 0;
}

.loading_page.step2 .key {
  opacity: 1;
}

.loading_page.step3 .key {
  transform: rotateY(90deg);
}

.loading_page.step4 .logo {
  opacity  : 1;
  transform: translate(-50%, -50%);
}

.loading_page.step4 .key {
  opacity: 0;
}

.loading_page.unactive::after {
  opacity       : 0;
  pointer-events: none;
}

.loading_page.unactive .logo {
  width    : 5.6rem;
  top      : 4.2rem;
  left     : 5.7rem;
  transform: translate(0, 0);
}

.loading_page.unactive .key {
  opacity: 0;
}

@media (max-width: 1440px) {
  .loading_page.unactive .logo {
    top : 1.2rem;
    left: 1.7rem;
  }
}

@media (max-width: 920px) {
  .loading_page.change_color .logo {
    filter: brightness(20);
  }
}

.lineChild,
.lineParent {
  overflow: hidden;
}

.homeBanner {
  position: relative;
  overflow: hidden;
}

.homeBanner::after {
  content   : "";
  position  : absolute;
  bottom    : 0;
  left      : 0;
  width     : 100%;
  height    : 20%;
  background: linear-gradient(0deg, #1b2013, rgba(27, 32, 19, 0.8784313725), rgba(27, 32, 19, 0.631372549), transparent);
}

.homeBanner .background {
  width        : 100vw;
  height       : 100vh;
  -o-object-fit: cover;
  object-fit   : cover;
}

.homeBanner .background2,
.homeBanner .background3 {
  position     : absolute;
  bottom       : 0;
  left         : 0;
  width        : 100%;
  height       : 100%;
  -o-object-fit: cover;
  object-fit   : cover;
}

.homeBanner .pat_tree {
  position: absolute;
  bottom  : 0;
  left    : -1px;
  width   : calc(100% + 2px);
  height  : 100%;
}

.homeBanner .pat_tree.pat_mobi {
  display: none;
}

.homeBanner .pat_right {
  position : absolute;
  bottom   : 0;
  right    : 0;
  width    : 33%;
  animation: parallax_img2 12s ease-in-out infinite;
}

.homeBanner .pat_left_bottom {
  position : absolute;
  bottom   : 6.5rem;
  left     : 0;
  animation: parallax_img2 12s ease-in-out infinite;
}

.homeBanner .pat_left_top {
  position : absolute;
  bottom   : 16.2rem;
  left     : 0;
  width    : 16%;
  animation: parallax_img 12s ease-in-out infinite;
}

@media (max-width: 920px) {
  .homeBanner {
    overflow: hidden;
  }

  .homeBanner .pat_tree.pat_desk {
    display: none;
  }

  .homeBanner .pat_tree.pat_mobi {
    display: block;
  }

  .homeBanner::after {
    background: linear-gradient(0deg, #1b2013, rgba(27, 32, 19, 0.99), rgba(27, 32, 19, 0.86), rgba(27, 32, 19, 0.49), transparent);
    height    : 27%;
  }

  .homeBanner .pat_left_bottom {
    width    : 30%;
    transform: translate(0, -50%);
    bottom   : unset;
    top      : 34%;
  }

  .homeBanner .pat_right {
    width  : 60%;
    z-index: 1;
  }

  .homeBanner .pat_left_top {
    transform: translate(0, -50%);
    bottom   : unset;
    top      : 26%;
    width    : 30%;
  }
}

@keyframes parallax_img {

  0%,
  100% {
    transform: translateY(0) rotate(40deg);
  }

  50% {
    transform: translateY(-30px) rotate(37deg);
  }
}

@keyframes parallax_img2 {

  0%,
  100% {
    transform: translateY(0) rotate(0deg);
  }

  50% {
    transform: translateY(-30px) rotate(0deg);
  }
}

.homeComplex {
  position   : relative;
  padding-top: 10.5rem;
}

.homeComplex::after {
  position  : absolute;
  content   : "";
  width     : 100%;
  height    : 60%;
  background: linear-gradient(180deg, #fbf1f0 0%, #ffffff 50%);
  top       : 0;
  left      : 0;
}

.homeComplex .pat_left {
  position: absolute;
  z-index : 1;
  bottom  : 2%;
  left    : 0;
  width   : 21%;
}

.homeComplex .pat_right {
  position: absolute;
  z-index : 1;
  bottom  : 2%;
  right   : 0;
  width   : 17%;
}

.homeComplex .content_complex {
  position     : relative;
  z-index      : 1;
  text-align   : center;
  margin-bottom: 4.5rem;
  overflow     : hidden;
}

.homeComplex .content_complex .txt2 {
  color                  : var(--color-red);
  font-size              : 10.8rem;
  font-family            : var(--font-sub);
  background             : linear-gradient(180deg, #e53f30 19.16%, rgba(229, 63, 48, 0) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  padding-right          : 20px;
  padding-left           : 32px;
}

.homeComplex .content_complex .txt2 .lineChild,
.homeComplex .content_complex .txt2 .lineParent {
  overflow: unset;
}

.homeComplex .content_complex .txt3 {
  margin-top : -4rem;
  margin-left: 34rem;
  line-height: 1.2;
}

.homeComplex .content_complex .txt3 .lineParent:nth-child(1) .lineChild {
  padding-top: 10px;
}

.homeComplex .content_complex .txt1 {
  margin-right: 0.5rem;
}

.homeComplex .content_complex .txt1,
.homeComplex .content_complex .txt3 {
  color      : var(--color-text);
  font-size  : 3rem;
  font-weight: 300;
}

.homeComplex .house_complex {
  display        : flex;
  align-items    : flex-end;
  justify-content: center;
  bottom         : 0;
  padding-bottom : 7rem;
  padding-left   : 9.3rem;
  padding-right  : 2.7rem;
  gap            : 2rem;
  width          : 80%;
  margin         : 0 auto 2rem auto;
  position       : relative;
  z-index        : 1;
}

.homeComplex .house_complex::after {
  content   : "";
  position  : absolute;
  width     : 100%;
  height    : 3.7rem;
  background: var(--color-grad);
  bottom    : 0;
  left      : 0;
}

.homeComplex .house_complex .house1 {
  width: 23rem;
}

.homeComplex .house_complex .house2 {
  width: 15rem;
}

.homeComplex .house_complex .house3 {
  width: 15rem;
}

@media (max-width: 920px) {
  .homeComplex {
    padding-top: 50px;
  }

  .homeComplex .content_complex {
    margin-bottom: 70px;
    margin-left  : -6%;
    overflow     : unset;
  }

  .homeComplex .content_complex .txt1,
  .homeComplex .content_complex .txt3 {
    font-size: 1rem;
  }

  .homeComplex .content_complex .txt1 {
    margin-right: 1rem;
    display     : flex;
    gap         : 3px;
  }

  .homeComplex .content_complex .txt3 {
    margin-left    : 47%;
    width          : 55%;
    text-align     : center;
    display        : flex;
    flex-wrap      : wrap;
    margin-top     : -2rem;
    justify-content: center;
  }

  .homeComplex .content_complex .txt3 .lineParent {
    display    : flex !important;
    align-items: flex-end;
    margin-left: 5px;
  }

  .homeComplex .content_complex .txt2 {
    font-size  : 4.5rem;
    padding    : 10px 0;
    line-height: 1;
  }

  .homeComplex .pat_left {
    width : 30%;
    bottom: -4.5rem;
  }

  .homeComplex .pat_right {
    width : 27%;
    bottom: -4.5rem;
  }

  .homeComplex .house_complex {
    width  : 60%;
    padding: 0;
    gap    : 1.25rem;
  }

  .homeComplex .house_complex::after {
    height: 2rem;
    bottom: -3rem;
  }

  .homeComplex .house_complex .house1 {
    width     : 30%;
    transition: all 1sease;
  }

  .homeComplex .house_complex .house2,
  .homeComplex .house_complex .house3 {
    width     : 20%;
    transition: all 1sease;
  }
}

.homeStory {
  padding-bottom : 16rem;
  padding-top    : 5.83rem;
  position       : relative;
  display        : flex;
  align-items    : center;
  justify-content: center;
}

.homeStory .content_story {
  position: relative;
  z-index : 1;
}

.homeStory .segTitle {
  margin-top : -4.5rem;
  line-height: 1;
}

.homeStory .segTitle .lineChild {
  padding-bottom: 10px;
}

.homeStory .subTitle,
.homeStory .segTitle {
  line-height: 1;
  text-align : center;
  overflow   : hidden;
}

.homeStory .description {
  gap   : 1.7rem;
  width : 70%;
  margin: 2rem auto 0 auto;
}

.homeStory .description .left_content {
  text-align: right;
}

.homeStory .description .right_content {
  text-align: left;
}

@media (max-width: 920px) {
  .homeStory {
    padding-bottom: 80px;
  }

  .homeStory .segTitle {
    margin-top: -0.5rem;
  }

  .homeStory .description {
    flex-flow: column;
    width    : 100%;
    gap      : 14px;
  }

  .homeStory .description .left_content {
    text-align: center;
  }

  .homeStory .description .right_content {
    text-align: center;
  }
}

.homeProject {
  position   : relative;
  padding-top: 5.8rem;
}

.homeProject::after {
  position  : absolute;
  content   : "";
  width     : 100%;
  height    : 60%;
  background: linear-gradient(180deg, #fbf1f0 0%, #ffffff 50%);
  top       : 0;
  left      : 0;
}

.homeProject .content_project {
  position: relative;
  z-index : 1;
}

.homeProject .segTitle {
  margin-top    : -4.5rem;
  line-height   : 1;
  padding-bottom: 10px;
}

.homeProject .segTitle .lineChild {
  padding-bottom: 20px;
  padding-top   : 20px;
  margin-top    : -10px;
}

.homeProject .subTitle,
.homeProject .segTitle {
  line-height: 1;
  text-align : center;
  overflow   : hidden;
}

.homeProject .description {
  text-align: center;
  width     : 50%;
  margin    : 2rem auto 6.8rem auto;
}

.homeProject .img_proj {
  position: relative;
  z-index : 1;
  overflow: hidden;
}

.homeProject .img_proj img {
  width : 100%;
  height: auto;
}

@media (max-width: 920px) {
  .homeProject .description {
    width: 100%;
  }

  .homeProject .img_proj {
    height: 518px;
  }

  .homeProject .img_proj .img_proj1 {
    height       : 100%;
    -o-object-fit: cover;
    object-fit   : cover;
  }
}

.homeProject3 {
  transform  : none !important;
  padding    : 0;
  margin     : 0;
  display    : flex;
  align-items: flex-end;
  flex-flow  : column;
}

.homeProject3 .img_wrapper {
  position: relative;
  /* Giữ cấu trúc */
  width   : 100%;
  height  : auto;
  overflow: hidden;
  /* Đảm bảo không vượt khung */
}

@media (max-width: 768px) {
  .homeProject3 .img_proj {
    overflow: unset;
  }
}

.homeProject2,
.homeProject3 {
  position   : relative;
  padding-top: 5.8rem;
}

.homeProject2::after,
.homeProject3::after {
  position  : absolute;
  content   : "";
  width     : 100%;
  height    : 60%;
  background: linear-gradient(180deg, #fbf1f0 0%, #ffffff 50%);
  top       : 0;
  left      : 0;
}

.homeProject2 .img_proj,
.homeProject3 .img_proj {
  position: relative;
  z-index : 1;
  overflow: hidden;
  margin  : auto;
}

.homeProject2 .img_proj img,
.homeProject3 .img_proj img {
  width : 100%;
  height: auto;
}

.homeProject2 .description2,
.homeProject3 .description2 {
  width        : 70%;
  position     : relative;
  z-index      : 1;
  padding-left : 15%;
  margin-bottom: 7rem;
}

.homeProject2 .description3,
.homeProject3 .description3 {
  width        : 80%;
  position     : relative;
  z-index      : 1;
  padding-left : 25%;
  margin-bottom: 7rem;
}

@media (max-width: 920px) {

  .homeProject2 .description2,
  .homeProject2 .description3,
  .homeProject3 .description2,
  .homeProject3 .description3 {
    width       : 100%;
    text-align  : center;
    padding-left: 0;
  }

  .homeProject2 .img_proj,
  .homeProject3 .img_proj {
    overflow: unset;
  }

  .homeProject2 .img_proj img,
  .homeProject3 .img_proj img {
    height       : 518px;
    -o-object-fit: cover;
    object-fit   : cover;
  }
}

.homeProject2 .img_proj {
  position: relative;
}

.homeProject2 .img_proj .mask_inner {
  position       : absolute;
  top            : -1px;
  left           : 0;
  width          : 100%;
  height         : 100%;
  z-index        : 1;
  display        : flex;
  align-items    : flex-start;
  justify-content: center;
}

.homeProject2 .img_proj .mask_inner div {
  flex      : 20%;
  height    : 100%;
  background: #fff;
  transition: height 1s ease-in-out;
}

.homeProject2 .img_proj .mask_inner div.mask1 {
  transition-delay: 0.1s;
}

.homeProject2 .img_proj .mask_inner div.mask2 {
  transition-delay: 0.2s;
}

.homeProject2 .img_proj .mask_inner div.mask3 {
  transition-delay: 0.3s;
}

.homeProject2 .img_proj .mask_inner div.mask4 {
  transition-delay: 0.4s;
}

.homeProject2 .img_proj .mask_inner div.mask5 {
  transition-delay: 0.5s;
}

@media (max-width: 920px) {
  .homeProject2 .img_proj .mask_inner {
    opacity: 0;
  }
}

.img_proj3 {
  padding-bottom: 2px;
  position      : relative;
  /* Ban đầu theo dòng chảy */
  width         : 100%;
  height        : auto;
  margin-bottom : 0 !important;
  transition    : all 0.5s ease;
  /* Hiệu ứng mượt */
}

.img_proj3.shrink {
  transform       : scale(0.3);
  transform-origin: bottom;
}

.img_proj3.shrink .background {
  transform: scale(0.6);
}

.img_proj3 img {
  max-width    : 100%;
  height       : auto;
  -o-object-fit: cover;
  object-fit   : cover;
  /* Đảm bảo hình ảnh luôn đúng tỷ lệ */
}

.img_proj3 .mask_img {
  position   : absolute;
  top        : -3px;
  left       : 0;
  width      : 100%;
  height     : 100%;
  z-index    : 1;
  transform  : none;
  translate  : none;
  will-change: transform;
}

@media (max-width: 920px) {
  .img_proj3 .mask_img {
    width: 97%;
  }
}

.homeHaus {
  padding: 0;
  margin : 0;
}

.homeHaus .img_haus img {
  width     : 100%;
  transition: all 1s ease-in-out;
}

.homeHaus .content_haus {
  padding   : 2.3rem 0 9.8rem 0;
  text-align: center;
}

.homeHaus .logo_haus {
  margin-bottom: 4.5rem;
  overflow     : hidden;
}

.homeHaus .logo_haus img {
  width: 21.3rem;
}

.homeHaus .small_title {
  color         : var(--color-red);
  text-transform: uppercase;
  margin-bottom : 2.2rem;
  font-weight   : 600;
  letter-spacing: 0.16em;
  font-size     : 1.67rem;
  line-height   : 1.2;
  overflow      : hidden;
}

.homeHaus .description {
  color : #000;
  width : 65%;
  margin: auto;
}

@media (max-width: 920px) {
  .homeHaus .description {
    width: 100%;
  }

  .homeHaus .content_haus {
    padding: 2rem 0 80px 0;
  }

  .homeHaus .small_title {
    font-size: 20px;
  }

  .homeHaus .img_haus img {
    height       : 528px;
    -o-object-fit: cover;
    object-fit   : cover;
  }

  .homeHaus .logo_haus {
    margin-bottom: 2rem;
  }

  .homeHaus .logo_haus img {
    width: 150px;
  }
}

.homePartner {
  background   : var(--color-red);
  color        : #fff;
  padding      : 5.83rem 0;
  margin-bottom: -1px;
  z-index      : 1;
  position     : relative;
}

.homePartner .content_partner {
  text-align: center;
  margin    : auto;
}

.homePartner .segTitle {
  color        : #fff;
  line-height  : 1;
  margin-top   : -4.5rem;
  margin-bottom: 9rem;
}

.homePartner .subTitle {
  background             : linear-gradient(180deg, #ffffff 25.43%, #e63e30 81.11%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  line-height            : 1;
}

.homePartner .list_partner {
  gap            : 13.7rem;
  justify-content: center;
  width          : 72%;
  margin         : auto;
}

.homePartner .list_partner article {
  font-size  : 0.83rem;
  font-weight: 400;
}

.homePartner .list_partner .logo_part {
  margin-bottom: 1.9rem;
}

.homePartner .list_partner .name_part {
  margin-bottom: 2rem;
}

.homePartner .list_partner .name_part .txt2 {
  font-size  : 0.87rem;
  font-weight: 300;
}

@media (max-width: 920px) {
  .homePartner .list_partner {
    flex-flow: column;
    width    : 100%;
    gap      : 60px;
  }

  .homePartner .segTitle {
    margin-bottom: 2rem;
    margin-top   : -0.5rem;
  }
}

.homeInquiry {
  position      : relative;
  overflow      : hidden;
  height        : 100vh;
  display       : flex;
  align-items   : flex-end;
  pointer-events: none;
}

.homeInquiry .container_frame {
  margin-bottom: 0;
}

.homeInquiry .effect_key {
  position       : absolute;
  background     : var(--color-red);
  z-index        : 3;
  width          : 100%;
  height         : 100%;
  top            : 0;
  left           : 0;
  display        : flex;
  align-items    : center;
  justify-content: center;
  flex-flow      : column;
  transform      : none !important;
  padding        : 0 !important;
}

.homeInquiry .effect_key .img1 {
  width    : 2.6rem;
  position : absolute;
  transform: translate(-50%, -50%);
  top      : calc(50% - 7rem);
  left     : calc(50% - 3px);
}

.homeInquiry .effect_key .img2 {
  width    : 7rem;
  transform: translate(10px, 0);
}

.homeInquiry .effect_key .img3 {
  height   : 100%;
  position : absolute;
  transform: translate(-50%, -50%) scale(0.3);
  top      : calc(50% - 7rem);
  left     : calc(50% - 5px);
}

.homeInquiry::after {
  position  : absolute;
  content   : "";
  width     : 100%;
  height    : 60%;
  background: linear-gradient(180deg, #fbf1f0 0%, #ffffff 50%);
  top       : 0;
  left      : 0;
}

.homeInquiry .content_inquiry {
  position      : relative;
  z-index       : 1;
  text-align    : center;
  width         : 15rem;
  margin        : auto;
  color         : #000;
  font-size     : 0.83rem;
  padding-bottom: 5rem;
  pointer-events: all;
}

.homeInquiry .content_inquiry .description {
  margin-bottom: 2.78rem;
}

.homeInquiry .small_title {
  color         : var(--color-red);
  text-transform: uppercase;
  margin-bottom : 2.2rem;
  font-weight   : 600;
  letter-spacing: 0.16em;
  font-size     : 1.67rem;
  line-height   : 1.2;
}

.homeInquiry .param_info .item {
  margin-bottom: 1.78rem;
}

.homeInquiry .param_info .item:last-child {
  margin-bottom: 0;
}

.homeInquiry .param_info .item a {
  color     : #000;
  transition: color 0.3s ease-in-out;
}

.homeInquiry .param_info .item a:hover {
  color: var(--color-red);
}

.homeInquiry .or_unit_other {
  margin-top: 2.67rem;
}

.homeInquiry .or_unit_other span {
  font-style   : italic;
  margin-bottom: 0.72rem;
}

.homeInquiry .or_unit_other .name_other {
  color        : var(--color-red);
  margin-bottom: 1rem;
}

.homeInquiry .or_unit_other .logo_other {
  width        : 13.4rem;
  margin-bottom: 1.78rem;
}

.homeInquiry .or_unit_other .door {
  width: 6.3rem;
}

.homeInquiry .pat_tree {
  position: absolute;
  bottom  : 3.5rem;
  left    : 0;
  z-index : 1;
  width   : 100%;
}

.homeInquiry .pat_tree .left,
.homeInquiry .pat_tree .right {
  width          : 30%;
  display        : flex;
  align-items    : center;
  justify-content: center;
}

.homeInquiry .pat_tree .left {
  justify-content: flex-start;
}

.homeInquiry .pat_tree .right {
  justify-content: flex-end;
}

.homeInquiry .pat_tree .left1,
.homeInquiry .pat_tree .right3 {
  width        : 15%;
  margin-bottom: 2rem;
  animation    : parallax_img2 12s ease-in-out infinite;
}

.homeInquiry .pat_tree .left2,
.homeInquiry .pat_tree .right2 {
  width      : 50%;
  margin-left: -2rem;
  animation  : parallax_img2 12s ease-in-out infinite;
}

.homeInquiry .pat_tree .right2 {
  margin-left : unset;
  margin-right: -2rem;
}

.homeInquiry .pat_tree .left3,
.homeInquiry .pat_tree .right1 {
  width     : 30%;
  margin-top: 2rem;
  animation : parallax_img2 12s ease-in-out infinite;
}

.homeInquiry .pat_wave {
  position: absolute;
  bottom  : 0;
  left    : 0;
  z-index : 1;
  width   : 100%;
}

.homeInquiry .pat_wave .pat2,
.homeInquiry .pat_wave .pat3,
.homeInquiry .pat_wave .pat4 {
  position: absolute;
  top     : 0;
  width   : 100%;
  left    : 0;
}

.homeInquiry .pat_wave .pat2 {
  z-index         : 3;
  bottom          : 0;
  transform-origin: top left;
  animation       : leftParallax 30s cubic-bezier(0.19, 1, 0.22, 1) infinite;
  animation-delay : 0.2s;
}

.homeInquiry .pat_wave .pat3 {
  z-index         : 2;
  transform-origin: top right;
  animation       : slideInParallax 30s cubic-bezier(0.19, 1, 0.22, 1) infinite;
  animation-delay : 0.4s;
}

.homeInquiry .pat_wave .pat4 {
  z-index         : 1;
  transform-origin: top right;
  animation       : leftParallax 30s cubic-bezier(0.19, 1, 0.22, 1) infinite;
  animation-delay : 0.6s;
}

.homeInquiry .pat_wave .pat1 {
  position   : relative;
  padding-top: 3rem;
  z-index    : 4;
  width      : 100%;
  height     : 9rem;
}

@media (max-width: 920px) {
  .homeInquiry .pat_tree {
    bottom: 4.5rem;
  }

  .homeInquiry .effect_key .img3 {
    top       : calc(70% - 7rem);
    transition: transform 2s ease, opacity 0.01s ease;
  }
}

@keyframes leftParallax {
  from {
    transform: translateX(-120%);
    opacity  : 0;
  }

  to {
    transform: translateX(0);
    opacity  : 1;
  }
}

@keyframes rightParallax {
  from {
    transform: translateX(-120%);
    opacity  : 0;
  }

  to {
    transform: translateX(0);
    opacity  : 1;
  }
}

.controls_head {
  position   : fixed;
  display    : flex;
  z-index    : 999;
  top        : 4.2rem;
  right      : 5.7rem;
  align-items: center;
}

.controls_head .wpml-ls-legacy-list-horizontal.wpml-ls-statics-footer {
  margin-bottom : 0 !important;
  padding-bottom: 0 !important;
}

.controls_head .wpml-ls-legacy-list-horizontal.wpml-ls-statics-footer ul {
  display: flex;
}

.controls_head .wpml-ls-legacy-list-horizontal .wpml-ls-current-language a {
  font-weight   : bold;
  padding-bottom: 0;
}

.controls_head .wpml-ls-legacy-list-horizontal a {
  color         : var(--color-red);
  padding-bottom: 0 !important;
}

@media (max-width: 1440px) {
  .controls_head {
    top  : 1.2rem;
    right: 1.7rem;
  }
}

@media (max-width: 920px) {
  .controls_head {
    z-index: 9999;
  }

  .controls_head .wpml-ls-legacy-list-horizontal a {
    color: #fff;
  }
}

#myAudio {
  opacity       : 0;
  position      : absolute;
  pointer-events: none;
}

.soundWave {
  width         : 45px;
  height        : 25px;
  cursor        : pointer;
  z-index       : 999;
  pointer-events: all;
  position      : relative;
}

.soundWave.hideAnm span {
  animation: unset !important;
}

.soundWave.active span {
  animation: bodong 1.5s infinite ease;
}

.soundWave.active img {
  animation: spin 8s linear infinite;
}

.soundWave span {
  width     : 3px;
  height    : 5px;
  bottom    : 0px;
  position  : absolute;
  background: var(--color-red);
}

.soundWave span:first-child {
  left           : 0px;
  animation-delay: 0.3s;
}

.soundWave span:nth-child(2) {
  left           : 7px;
  animation-delay: 0.4s;
  height         : 7px;
}

.soundWave span:nth-child(3) {
  left           : 14px;
  animation-delay: 0.6s;
  height         : 9px;
}

.soundWave span:nth-child(4) {
  left           : 21px;
  animation-delay: 0.8s;
  height         : 11px;
}

.soundWave span:nth-child(5) {
  left           : 28px;
  animation-delay: 1s;
  height         : 13px;
}

@media (max-width: 767px) {
  .soundWave span {
    background: #fff;
  }
}

@keyframes bodong {
  0% {
    height    : 5px;
    background: bule;
  }

  30% {
    height    : 15px;
    background: bule;
  }

  60% {
    height    : 20px;
    background: bule;
  }

  80% {
    height    : 15px;
    background: bule;
  }

  100% {
    height    : 5px;
    background: bule;
  }
}

.nav_menu {
  position  : fixed;
  right     : 2rem;
  transform : translate(0, -50%);
  top       : 50%;
  gap       : 1rem;
  opacity   : 0;
  transition: opacity 0.5s ease;
}

.nav_menu.active {
  opacity: 1;
}

.nav_menu.change .dots {
  background: #fff;
}

.nav_menu ul {
  list-style: none;
  padding   : 0;
  margin    : 0;
  gap       : 1.3rem;
  display   : flex;
  flex-flow : column;
}

.nav_menu ul span {
  position      : absolute;
  opacity       : 0;
  background    : var(--color-red);
  color         : #fff;
  text-transform: uppercase;
  font-size     : 0.8rem;
  line-height   : 1;
  transform     : translate(0, -50%);
  top           : 50%;
  right         : calc(100% + 5px);
  transition    : opacity 0.5s ease;
  padding       : 6px 10px;
  border-radius : 100px;
}

.nav_menu ul li {
  position: relative;
}

.nav_menu ul li:hover span {
  opacity: 1;
}

.nav_menu .dots {
  width        : 10px;
  height       : 10px;
  background   : var(--color-red);
  border-radius: 50%;
  opacity      : 0.5;
}

.nav_menu li.active .dots {
  opacity: 1;
}

@media (max-width: 920px) {
  .nav_menu {
    display: none;
  }
}

#smooth-wrapper {
  position: relative;
}

@media (max-width: 920px) {
  #smooth-wrapper::after {
    content   : "";
    position  : fixed;
    width     : 100%;
    background: var(--color-red);
    height    : 80px;
    top       : 0;
    left      : 0;
    z-index   : 999;
  }
}

/*# sourceMappingURL=style.css.map */