/* FONTS */
@import url("../assets/fonts/plus-jakarta-sans/stylesheet.css");
/* LIBRARIES */
@import url("../js/libs/fontawesome/css/all.css");
@import url("../js/libs/swiper/swiper-bundle.min.css");
@import url("../js/libs/magnific/magnific-popup.min.css");
@import url("../js/libs/aos/aos.css");
@import url("../js/libs/select2/select2.min.css");
/* CORE */
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-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

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

body {
  line-height: 1;
}

ol,
ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

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

table {
  border-collapse: collapse;
  border-spacing: 0;
}

.d-flex {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
}
.d-flex.a-start {
  align-items: flex-start;
  -webkit-align-items: flex-start;
}
.d-flex.f-stretch {
  align-items: stretch;
  -webkit-align-items: stretch;
}
.d-flex.f-between {
  justify-content: space-between;
  -webkit-justify-content: space-between;
}
.d-flex.f-center {
  align-items: center;
  -ms-align-items: center;
  -webkit-align-items: center;
  justify-content: center;
  -webkit-justify-content: center;
}
.d-flex.f-center.f-between {
  justify-content: space-between;
  -webkit-justify-content: space-between;
}
.d-flex.f-start {
  justify-content: flex-start;
  -webkit-justify-content: flex-start;
}
.d-flex.f-end {
  justify-content: flex-end;
  -webkit-justify-content: flex-end;
}
.d-flex.f-ctn {
  width: calc(100% + 2.4rem);
  margin-left: -1.2rem;
}
@media (max-width: 1200px) {
  .d-flex.f-ctn {
    width: calc(100% + 1.5rem);
    margin-left: -0.75rem;
  }
}
.d-flex.f-nowrap {
  flex-wrap: nowrap;
  -webkit-flex-wrap: nowrap;
}
.d-flex.f-col {
  flex-direction: column;
  -webkit-flex-direction: column;
}

.as-end {
  align-self: flex-end;
  -webkit-align-self: flex-end;
}

.as-center {
  align-self: center;
  -webkit-align-self: center;
}

.row-6 {
  width: 50%;
  margin: 0 auto;
}
@media screen and (max-width: 1200px) {
  .row-6 {
    width: 80%;
  }
}
@media screen and (max-width: 500px) {
  .row-6 {
    width: 100%;
  }
}

.col {
  padding: 0 1.2rem;
}
@media (max-width: 1200px) {
  .col {
    padding: 0 0.75rem;
  }
}

.col-1 {
  width: 8.3333333333%;
}

.col-2 {
  width: 16.6666666667%;
}

.col-3 {
  width: 25%;
}

.col-4 {
  width: 33.3333333333%;
}

.col-5 {
  width: 41.6666666667%;
}

.col-6 {
  width: 50%;
}

.col-7 {
  width: 58.3333333333%;
}

.col-8 {
  width: 66.6666666667%;
}

.col-9 {
  width: 75%;
}

.col-10 {
  width: 83.3333333333%;
}

.col-11 {
  width: 91.6666666667%;
}

.col-12 {
  width: 100%;
}

:root {
  --padding: 5.6rem;
}

@media screen and (max-width: 1200px) {
  :root {
    --padding: 2.4rem;
  }
}
@media screen and (max-width: 550px) {
  :root {
    --padding: 1.5rem;
  }
}
* {
  box-sizing: border-box;
}

html {
  font-size: 10px;
}
@media (min-width: 2000px) {
  html {
    font-size: 100%;
  }
}
@media (max-width: 1580px) {
  html {
    font-size: 8px;
  }
}
@media (max-width: 1200px) {
  html {
    font-size: 10px;
  }
}

body {
  font-family: "Plus Jakarta Sans", "sans-serif";
  font-size: 1.6rem;
  color: #333;
  line-height: 1.5;
  overflow: hidden auto;
  -webkit-tap-highlight-color: transparent;
}

/* width */
::-webkit-scrollbar {
  width: 7px;
}
@media (max-width: 1200px) {
  ::-webkit-scrollbar {
    width: 3px;
  }
}

/* Track */
::-webkit-scrollbar-track {
  background: transparent;
}

/* Handle */
::-webkit-scrollbar-thumb {
  background: #c3c3c3;
  border-radius: 2rem;
}

button,
select,
input,
textarea {
  font-family: "Plus Jakarta Sans", "sans-serif";
  font-size: 1.4rem;
  line-height: 1.2;
  padding: 0;
  border: none;
  outline: none;
  resize: none;
  vertical-align: middle;
}

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

.container {
  position: relative;
  width: 100%;
  max-width: 144.6rem;
  height: 100%;
  margin: 0 auto;
  padding: 0 1.5rem;
}
@media (max-width: 1580px) {
  .container {
    max-width: 80%;
  }
}
@media (max-width: 1368px) {
  .container {
    max-width: 90%;
  }
}
@media (max-width: 1200px) {
  .container {
    max-width: 100%;
  }
}
@media (max-width: 768px) {
  .container {
    padding: 0 0.8rem;
  }
}

.no-scroll {
  touch-action: none;
  -webkit-overflow-scrolling: none;
  overflow: hidden;
  overscroll-behavior: none;
}

.cursor-pointer {
  cursor: pointer;
}

img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  vertical-align: middle;
}

.line-ani {
  width: 0%;
  height: 0.1rem;
  perspective-origin: 50%;
  transform-origin: 50%;
  background-color: #191919;
  border-top-width: 0;
  transition: 0.8s ease-in-out;
}
.line-ani.active {
  width: 100%;
}
.line-ani-vertical {
  width: 0.1rem !important;
  height: auto !important;
  background-color: transparent;
  position: relative;
}
@media screen and (max-width: 850px) {
  .line-ani-vertical {
    display: none;
  }
}
.line-ani-vertical .line-vertical {
  position: absolute;
  top: 0;
  display: block;
  width: 100%;
  height: 0;
  background-color: #191919;
  transition: 0.8s ease-in-out 0.3s;
}
.line-ani-vertical.active {
  height: auto !important;
}
.line-ani-vertical.active .line-vertical {
  height: 100%;
}

@keyframes MoveUpInitial {
  100% {
    transform: translate3d(0, -105%, 0);
  }
}
@keyframes MoveUpEnd {
  0% {
    transform: translate3d(0, 100%, 0);
  }
  100% {
    transform: translate3d(0, 0, 0);
  }
}
.btn {
  display: block;
  width: 100%;
  max-width: max-content;
  padding: 0.8rem 1.6rem;
  border-radius: 2.4rem;
  border: 0.1rem solid #333;
  background-color: #fff;
  transition: 0.3s;
  cursor: pointer;
  font-size: 1.6rem;
  line-height: 1.5;
  color: #333;
  font-weight: 700;
}
.btn.btn-black {
  background-color: #333;
  color: #fff;
}
.btn.btn-black-big {
  max-width: 100%;
  padding: 2.4rem 4.2rem;
  border-radius: 0.8rem;
  font-size: 1.8rem;
}
@media screen and (max-width: 600px) {
  .btn.btn-black-big {
    padding: 1.2rem 2.4rem;
    font-size: 1.6rem;
  }
}
@media screen and (min-width: 1201px) {
  .btn:hover .btn-ani-wrap {
    animation: MoveUpInitial 0.3s linear forwards, MoveUpEnd 0.3s linear forwards;
  }
}
.btn-ani {
  overflow: hidden;
  display: block;
}
.btn-ani-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
}

@media screen and (min-width: 1201px) {
  body:hover .cursor-mouse {
    opacity: 1;
  }
}

.swiper-controls {
  display: flex;
  align-items: center;
}
.swiper-controls-num {
  display: flex;
  font-size: 1.8rem;
  font-weight: 700;
  margin-right: 2.4rem;
}
@media screen and (max-width: 550px) {
  .swiper-controls-num {
    font-size: 1.5rem;
  }
}
.swiper-controls-navi {
  display: flex;
}

.swiper-navi {
  width: 4rem;
  height: 4rem;
  margin: 0 0.4rem;
  border-radius: 50%;
  border: 0.2rem solid transparent;
  cursor: pointer;
  position: relative;
}
.swiper-navi::before, .swiper-navi::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  transition: 0.6s cubic-bezier(0.61, 0.22, 0.23, 1);
  -webkit-transition: 0.6s cubic-bezier(0.61, 0.22, 0.23, 1);
  width: 1.5rem;
  height: 1rem;
}
@media screen and (min-width: 1201px) {
  .swiper-navi:hover {
    border-color: #BDBDBD;
  }
}
@media (min-width: 1201px) {
  .swiper-navi.prev:hover::after {
    transform: translate(-150%, -50%) scale(0);
    -webkit-transform: translate(-150%, -50%) scale(0);
    opacity: 0;
    visibility: hidden;
  }
  .swiper-navi.prev:hover::before {
    opacity: 1;
    visibility: visible;
    transform: translate(-50%, -50%) scale(1);
    -webkit-transform: translate(-50%, -50%) scale(1);
    -o-transform: translate(-50%, -50%) scale(1);
    transition: 0.6s cubic-bezier(0.61, 0.22, 0.23, 1);
    -webkit-transition: 0.6s cubic-bezier(0.61, 0.22, 0.23, 1);
    -o-transition: 0.6s cubic-bezier(0.61, 0.22, 0.23, 1);
  }
}
.swiper-navi.prev::before {
  background: url("../assets/images/swiper-arrow-left.png") no-repeat;
  background-size: contain;
  opacity: 0;
  visibility: hidden;
  transform: translate(0%, -50%) scale(0);
  -webkit-transform: translate(0%, -50%) scale(0);
  -o-transform: translate(0%, -50%) scale(0);
}
.swiper-navi.prev::after {
  background: url("../assets/images/swiper-arrow-left.png") no-repeat;
  background-size: contain;
}
@media (min-width: 1201px) {
  .swiper-navi.next:hover::after {
    transform: translate(50%, -50%) scale(0);
    -webkit-transform: translate(50%, -50%) scale(0);
    opacity: 0;
    visibility: hidden;
  }
  .swiper-navi.next:hover::before {
    opacity: 1;
    visibility: visible;
    transform: translate(-50%, -50%) scale(1);
    -webkit-transform: translate(-50%, -50%) scale(1);
    -o-transform: translate(-50%, -50%) scale(1);
    transition: 0.6s cubic-bezier(0.61, 0.22, 0.23, 1);
    -webkit-transition: 0.6s cubic-bezier(0.61, 0.22, 0.23, 1);
    -o-transition: 0.6s cubic-bezier(0.61, 0.22, 0.23, 1);
  }
}
.swiper-navi.next::before {
  background: url("../assets/images/swiper-arrow-right.png");
  background-size: contain;
  opacity: 0;
  visibility: hidden;
  transform: translate(-100%, -50%) scale(0);
  -webkit-transform: translate(-100%, -50%) scale(0);
}
.swiper-navi.next::after {
  background: url("../assets/images/swiper-arrow-right.png");
  background-size: contain;
}
.swiper-navi.swiper-button-disabled {
  pointer-events: none;
  opacity: 0.4;
}

.swiper-pagin {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -ms-align-items: center;
  align-items: center;
  -webkit-align-items: center;
  justify-content: center;
  -webkit-justify-content: center;
  width: 100%;
  margin-top: 2.4rem;
  position: relative;
}
.swiper-pagin .swiper-pagination-bullet {
  width: 1rem;
  height: 1rem;
  margin: 0 0.2rem;
  transition: 0.3s;
  border-radius: 2.4rem;
}
.swiper-pagin .swiper-pagination-bullet-active {
  width: 2rem;
  background-color: #000;
}

.section {
  padding: 0 var(--padding);
}
.section-box {
  padding: 8rem 0;
  align-items: stretch;
}
@media screen and (max-width: 850px) {
  .section-box {
    flex-wrap: wrap;
  }
}
@media screen and (max-width: 550px) {
  .section-box {
    padding: 4.2rem 0;
  }
}
.section-sticky {
  position: sticky;
  top: 4.2rem;
}
.section-col {
  line-height: 1.3;
}
@media screen and (max-width: 850px) {
  .section-col {
    width: 100%;
  }
  .section-col:not(:last-child) {
    margin-bottom: 2.4rem;
  }
}
@media screen and (max-width: 850px) and (max-width: 550px) {
  .section-col:not(:last-child) {
    margin-bottom: 1.6rem;
  }
}
@media screen and (max-width: 1200px) {
  .section-col:nth-child(1) {
    padding-right: 2.4rem;
  }
}
@media screen and (max-width: 550px) {
  .section-col:nth-child(1) {
    padding-right: 0;
  }
}
.section-col-flex {
  display: flex;
}
.section-col .num {
  font-size: 2rem;
  margin-right: 4.5rem;
  margin-top: 1rem;
  font-weight: 700;
}
@media screen and (max-width: 1200px) {
  .section-col .num {
    margin-right: 2.4rem;
    margin-top: 0.5rem;
  }
}
@media screen and (max-width: 550px) {
  .section-col .num {
    margin-right: 0.2rem;
    font-size: 2rem;
    margin-top: 0.2rem;
  }
}
.section-col .title {
  font-size: 3.6rem;
  font-weight: 800;
  line-height: 1.3;
  display: flex;
  margin-bottom: 1.2rem;
}
@media screen and (max-width: 1200px) {
  .section-col .title {
    font-size: 2.4rem;
  }
}
@media screen and (max-width: 550px) {
  .section-col .title br {
    display: none;
  }
}
.section-col .desc {
  font-size: 1.8rem;
  margin-bottom: 2.4rem;
  line-height: 1.5;
}
@media screen and (max-width: 1200px) {
  .section-col .desc {
    font-size: 1.6rem;
  }
}
.section-col .statistic {
  margin: 3.2rem 0;
}
@media screen and (max-width: 768px) {
  .section-col .statistic {
    margin: 0.8rem 0;
  }
}
.section-col .statistic .list {
  width: calc(100% + 14rem);
  margin-left: -7rem;
  margin-bottom: -3.2rem;
  justify-content: space-between;
  position: relative;
}
.section-col .statistic .list::before {
  content: "";
  position: absolute;
  top: 0;
  left: 47%;
  width: 0.3rem;
  height: 50%;
  background-color: #585860;
}
@media screen and (max-width: 1200px) {
  .section-col .statistic .list::before {
    content: none;
  }
}
@media screen and (max-width: 1550px) {
  .section-col .statistic .list {
    width: calc(100% + 7rem);
    margin-left: -3.5rem;
  }
}
@media screen and (max-width: 1200px) {
  .section-col .statistic .list {
    width: calc(100% + 4.8rem);
    margin-left: -2.4rem;
  }
}
@media screen and (max-width: 550px) {
  .section-col .statistic .list {
    width: calc(100% + 1.6rem);
    margin-left: -0.8rem;
    margin-bottom: -1.6rem;
  }
}
.section-col .statistic .item {
  width: 50%;
  margin-bottom: 3.2rem;
  position: relative;
  max-width: max-content;
  padding: 0 7rem;
}
@media screen and (max-width: 1550px) {
  .section-col .statistic .item {
    padding: 0 3.5rem;
  }
}
@media screen and (max-width: 1200px) {
  .section-col .statistic .item {
    padding: 0 2.4rem;
  }
}
@media screen and (max-width: 550px) {
  .section-col .statistic .item {
    padding: 0 0.8rem;
    width: 100%;
    margin-bottom: 1.6rem;
  }
}
.section-col .statistic .item .wrap {
  flex-wrap: nowrap;
}
.section-col .statistic .num {
  margin: 0;
  font-size: 2.4rem;
  font-weight: 800;
}
@media screen and (max-width: 550px) {
  .section-col .statistic .num {
    font-size: 1.8rem;
  }
}
.section-col .statistic .txt {
  font-size: 1.6rem;
  color: #585860;
  margin-top: 1.6rem;
  margin-left: 0.8rem;
}
@media screen and (max-width: 550px) {
  .section-col .statistic .txt {
    font-size: 1.4rem;
  }
}
.section-content {
  margin-left: 4.5rem;
}
.section-container.active .line-ani {
  width: 100%;
}
.section .section-col-3 .content {
  padding-left: 8rem;
}
@media screen and (max-width: 1200px) {
  .section .section-col-3 .content {
    padding-left: 2.4rem;
  }
}
@media screen and (max-width: 550px) {
  .section .section-col-3 .content {
    padding-left: 0;
  }
}
.section-one .section-col:nth-child(1) .content {
  max-width: 73rem;
}
.section-one .section-box {
  padding: 8rem 0;
}
@media screen and (max-width: 550px) {
  .section-one .section-box {
    padding: 4.2rem 0;
  }
}
.section-one .btn {
  margin-top: 2.4rem;
}
@media screen and (max-width: 768px) {
  .section-one .btn {
    margin-top: 1.2rem;
  }
}
.section-one .section-sticky {
  height: 100%;
}
.section-one .section-col-flex {
  height: 100%;
}
.section-one .content {
  overflow: hidden;
  display: flex;
  flex-direction: column;
}
.section-one .content .section-one-controls {
  margin-top: 2.4rem;
  flex: 1;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}
.section-one .content .swiper-controls {
  flex: 1;
  justify-content: space-between;
}
.section-one-slider {
  border-radius: 1.6rem;
  overflow: hidden;
}
.section-one-slider .swiper-wrap {
  align-items: stretch;
}
.section-one-slider .swiper-slide {
  overflow: hidden;
  height: auto;
}
.section-one-slider .img {
  height: 100%;
}
.section-one-slider .img img {
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 550px) {
  .section-two .section-content {
    margin-left: 0;
  }
  .section-two .btn {
    margin: 0 auto;
  }
}
.section-three .section-box {
  flex-wrap: wrap;
}
.section-three .section-col-flex {
  justify-content: center;
}
@media screen and (max-width: 550px) {
  .section-three .section-col-flex {
    justify-content: flex-start;
  }
}
@media screen and (max-width: 1200px) {
  .section-three .section-col.col-5 {
    width: 33.3333333333%;
  }
}
@media screen and (max-width: 1200px) and (max-width: 850px) {
  .section-three .section-col.col-5 {
    width: 100%;
  }
}
@media screen and (max-width: 1200px) {
  .section-three .section-col.col-7 {
    flex: 1;
  }
}
.section-four .section-box {
  padding-bottom: 0;
}
@media screen and (max-width: 768px) {
  .section-four .section-box {
    padding-bottom: 0;
  }
}
.section-four .section-box-sub {
  width: 100%;
  margin: 0 auto;
  margin-top: 4.8rem;
  padding: 0 1.2rem;
  padding-bottom: 8rem;
  justify-content: space-around;
}
@media screen and (max-width: 1200px) {
  .section-four .section-box-sub {
    padding: 0;
    padding-bottom: 8rem;
    justify-content: flex-start;
  }
}
@media screen and (max-width: 550px) {
  .section-four .section-box-sub {
    padding-bottom: 4.2rem;
  }
}
.section-four .section-box-sub-col {
  max-width: max-content;
}
@media screen and (max-width: 1200px) {
  .section-four .section-box-sub-col {
    width: 100%;
  }
}
.section-four .section-box-sub-col:nth-child(2) {
  min-width: 10%;
}
@media screen and (max-width: 1550px) {
  .section-four .section-box-sub-col:nth-child(2) {
    min-width: 18%;
  }
}
@media screen and (max-width: 1200px) {
  .section-four .section-box-sub-col:nth-child(2) {
    display: none;
  }
}
.section-four .section-box-sub-flex {
  padding: 0;
  flex-direction: column;
}
@media screen and (max-width: 768px) {
  .section-four .section-box-sub-flex {
    padding: 0 0.75rem;
  }
}
.section-four .section-box-sub-flex .title {
  max-width: max-content;
  padding: 0.8rem 1.6rem;
  border-radius: 20px;
  background: var(--Gray-5, #E0E0E0);
  box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
  font-size: 1.6rem;
  font-weight: 700;
  margin-bottom: 1.2rem;
}
@media screen and (max-width: 1200px) {
  .section-four .section-col.col-6:nth-child(1) {
    width: 41.6666666667%;
  }
}
@media screen and (max-width: 1200px) and (max-width: 850px) {
  .section-four .section-col.col-6:nth-child(1) {
    width: 100%;
  }
}
@media screen and (max-width: 1200px) {
  .section-four .section-col.col-6:nth-child(2) {
    flex: 1;
  }
}
.section-six .section-box {
  padding-bottom: 2.4rem;
}
.section-six .section-sub-content {
  margin-top: 4.2rem;
}
@media screen and (max-width: 550px) {
  .section-six .section-col .desc {
    margin-bottom: 0;
  }
}
.section-seven .section-box {
  align-items: center;
}
.section-seven .section-box .section-col-flex {
  justify-content: center;
}
@media screen and (max-width: 850px) {
  .section-seven .section-box .section-col-flex {
    justify-content: flex-start;
  }
  .section-seven .section-box .section-col-flex .title br {
    display: none;
  }
}
@media screen and (max-width: 1200px) {
  .section-seven .section-col.col-6:nth-child(1) {
    width: 41.6666666667%;
  }
}
@media screen and (max-width: 1200px) and (max-width: 850px) {
  .section-seven .section-col.col-6:nth-child(1) {
    width: 100%;
  }
}
@media screen and (max-width: 1200px) {
  .section-seven .section-col.col-6:nth-child(2) {
    flex: 1;
  }
}

.content-container {
  line-height: 1.5;
  width: 90%;
  margin: 0 auto;
}
@media screen and (max-width: 550px) {
  .content-container {
    width: 100%;
  }
}

.section-box-sub-flex {
  padding: 3.2rem 0;
  align-items: stretch;
  justify-content: center;
}
.section-box-sub-flex .title {
  font-size: 3.2rem;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  padding-right: 6.4rem;
}
@media screen and (max-width: 850px) {
  .section-box-sub-flex .title {
    font-size: 2rem;
    padding-right: 0;
  }
}
@media screen and (max-width: 550px) {
  .section-box-sub-flex .title {
    width: 100%;
    margin-bottom: 1.6rem;
    font-size: 1.8rem;
  }
}
.section-box-sub-flex .content {
  flex: 1;
  margin-left: 2.8rem;
  display: flex;
}
@media screen and (max-width: 550px) {
  .section-box-sub-flex .content {
    margin-left: 0;
  }
}

.section-sub {
  padding-bottom: 8rem;
}
@media screen and (max-width: 550px) {
  .section-sub {
    padding-bottom: 4.8rem;
  }
}
.section-sub-body {
  margin-top: 1.6rem;
}
.section-sub-footer {
  margin-top: 2.4rem;
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}
.section-sub-footer .btn {
  width: 60%;
  margin-top: 3.2rem;
  margin-left: auto;
  margin-right: auto;
  padding: 1.2rem 2.4rem;
}
@media screen and (max-width: 768px) {
  .section-sub-footer .btn {
    padding: 0.8rem 1.2rem;
    width: 70%;
    font-size: 1.6rem;
  }
}

.num-sub {
  flex-shrink: 0;
  font-size: 2rem;
  font-weight: 800;
  margin-bottom: 1.6rem;
}

.title-sub {
  font-size: 2.4rem;
  font-weight: 800;
}
@media screen and (max-width: 1200px) {
  .title-sub {
    font-size: 2rem;
  }
}
@media screen and (max-width: 550px) {
  .title-sub {
    font-size: 1.8rem;
  }
}

.desc-sub {
  margin-top: 1.6rem;
  font-size: 1.8rem;
}
@media screen and (max-width: 1200px) {
  .desc-sub {
    font-size: 1.6rem;
  }
}

.txt-hover {
  position: relative;
}
.txt-hover::before, .txt-hover::after {
  content: "";
  position: absolute;
  width: 0;
  height: 0.1rem;
  background-color: #333;
  transition: 0.3s ease-in-out;
}
.txt-hover::before {
  top: -0.1rem;
  left: 0;
}
.txt-hover::after {
  bottom: -0.3rem;
  right: 0;
}
@media screen and (min-width: 1201px) {
  .txt-hover:hover::before, .txt-hover:hover::after {
    width: 100%;
  }
}

.attr-item {
  display: flex;
}
.attr-item:not(:last-child) {
  margin-bottom: 1.2rem;
}
.attr-item .icon {
  flex-shrink: 0;
  width: 2.4rem;
  height: 2.4rem;
  margin-right: 1.6rem;
}
.attr-item .name {
  font-weight: 700;
}

@media screen and (max-width: 768px) {
  .section .d-flex.f-ctn {
    width: calc(100% + 1.5rem);
    margin-left: -0.75rem;
  }
  .section .col-6 {
    padding: 0 0.75rem;
  }
}
.hd {
  position: relative;
  top: 0;
  z-index: 100;
  padding: var(--padding);
  border-bottom: 0.1rem solid #333;
}
@media screen and (max-width: 1200px) {
  .hd {
    position: sticky;
    background-color: #fff;
  }
}
.hd-ctn {
  align-items: center;
}
.hd-left-ctn {
  align-items: center;
}
.hd-mid {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.hd-menu {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -ms-align-items: center;
  align-items: center;
  -webkit-align-items: center;
  justify-content: center;
  -webkit-justify-content: center;
  color: #000;
}
@media screen and (max-width: 550px) {
  .hd-menu {
    width: 4.2rem;
    height: 4.2rem;
    max-width: 4.2rem;
    padding: 0;
  }
  .hd-menu .txt {
    display: none;
  }
}
.hd-menu .icon {
  width: 1.6rem;
  height: 1.6rem;
  position: relative;
  margin-left: 0.8rem;
}
@media screen and (max-width: 550px) {
  .hd-menu .icon {
    margin-left: 0;
  }
}
.hd-menu .icon-line {
  display: block;
  position: absolute;
  width: 100%;
  height: 0.2rem;
  border-radius: 0.1rem;
  background-color: #333;
  transition: 0.3s;
}
.hd-menu .icon-line:nth-child(1) {
  top: 30%;
}
.hd-menu .icon-line:nth-child(2) {
  top: 70%;
}
@media screen and (max-width: 768px) {
  .hd-map {
    display: none;
  }
}
.hd-map .icon {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -ms-align-items: center;
  align-items: center;
  -webkit-align-items: center;
  justify-content: center;
  -webkit-justify-content: center;
  flex-shrink: 0;
  width: 2.4rem;
  height: 2.4rem;
  margin-right: 0.8rem;
  flex-shrink: 0;
}
.hd-map .txt {
  font-size: 1.4rem;
  font-weight: 700;
}
.hd-logo {
  font-size: 2.4rem;
  font-weight: 800;
}
@media only screen and (max-width: 1200px) {
  .hd-logo {
    font-size: 2rem;
  }
}
@media only screen and (max-width: 800px) {
  .hd-logo {
    font-size: 1.7rem;
  }
}
.hd-logo-link {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -ms-align-items: center;
  align-items: center;
  -webkit-align-items: center;
  justify-content: center;
  -webkit-justify-content: center;
  max-width: 32rem;
}
.hd-logo-link img {
  object-fit: contain;
}
.hd-contact {
  color: #000;
  font-size: 1.4rem;
}
@media screen and (max-width: 550px) {
  .hd-contact {
    width: 4.2rem;
    height: 4.2rem;
    max-width: 4.2rem;
    padding: 0;
  }
  .hd-contact .txt {
    display: none;
  }
  .hd-contact .btn {
    padding: 0;
    width: 100%;
    height: 100%;
    max-width: 100%;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    -ms-align-items: center;
    align-items: center;
    -webkit-align-items: center;
    justify-content: center;
    -webkit-justify-content: center;
  }
}
.hd-contact-call {
  position: relative;
}
.hd-contact-call .number-phone {
  position: absolute;
  top: 100%;
  right: 0;
  font-size: 2rem;
  font-weight: 800;
}
@media screen and (max-width: 1200px) {
  .hd-contact-call .number-phone {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 768px) {
  .hd-contact-call .number-phone {
    display: none;
  }
}
.hd-contact .icon {
  width: 2.4rem;
  height: 2.4rem;
  flex-shrink: 0;
  transform: rotateY(180deg);
  margin-right: 0.8rem;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -ms-align-items: center;
  align-items: center;
  -webkit-align-items: center;
  justify-content: center;
  -webkit-justify-content: center;
}
@media screen and (max-width: 550px) {
  .hd-contact .icon {
    width: 1.8rem;
    height: 1.8rem;
    margin: 0;
  }
  .hd-contact .icon .fas {
    font-size: 1.6rem;
  }
}

.h-partner .list {
  display: flex;
}
.h-partner-flex {
  padding: 3.2rem 0;
  padding-bottom: 0;
  align-items: stretch;
  justify-content: center;
}
@media screen and (max-width: 550px) {
  .h-partner-flex {
    padding-top: 0;
  }
}
.h-partner-flex .title {
  font-size: 3.2rem;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  padding-right: 6.4rem;
}
@media screen and (max-width: 850px) {
  .h-partner-flex .title {
    width: 100%;
    font-size: 2rem;
  }
}
.h-partner-flex .list {
  flex: 1;
  flex-wrap: wrap;
  justify-content: center;
  margin-bottom: -2.4rem;
}
@media screen and (max-width: 850px) {
  .h-partner-flex .list {
    margin-bottom: -0.4rem;
  }
}
@media screen and (max-width: 550px) {
  .h-partner-flex .list {
    padding: 0 0.75rem;
  }
}
@media screen and (max-width: 550px) {
  .h-partner-flex .list {
    justify-content: space-around;
  }
}
.h-partner-flex .item {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -ms-align-items: center;
  align-items: center;
  -webkit-align-items: center;
  justify-content: center;
  -webkit-justify-content: center;
  padding: 2.4rem 5.6rem;
}
@media screen and (max-width: 1200px) {
  .h-partner-flex .item {
    padding: 2.4rem;
  }
}
@media screen and (max-width: 850px) {
  .h-partner-flex .item {
    padding: 0.4rem;
  }
}
.h-partner-flex .item .logo {
  padding: 4.2rem;
  border-radius: 50%;
  box-shadow: 0rem 0rem 4rem rgba(0, 0, 0, 0.16);
  width: 20rem;
  height: 20rem;
}
@media screen and (max-width: 1200px) {
  .h-partner-flex .item .logo {
    padding: 3.2rem;
    width: 17rem;
    height: 17rem;
  }
}
@media screen and (max-width: 850px) {
  .h-partner-flex .item .logo {
    width: 14rem;
    height: 14rem;
  }
}
@media screen and (max-width: 550px) {
  .h-partner-flex .item .logo {
    padding: 1.2rem;
    width: 10rem;
    height: 10rem;
  }
}
.h-partner-flex .item img {
  object-fit: contain;
}

.faq {
  line-height: 1.5;
  width: 90%;
  margin: 0 auto;
  margin-top: 5rem;
}
@media screen and (max-width: 1200px) {
  .faq {
    margin-top: 2.4rem;
  }
}
@media screen and (max-width: 550px) {
  .faq {
    margin-top: 0;
    width: 100%;
  }
}
.faq .item {
  padding: 1.8rem;
  border-radius: 1.6rem;
  border: 0.1rem solid #BDBDBD;
  transition: 0.3s;
  cursor: pointer;
  font-size: 1.8rem;
}
@media screen and (max-width: 550px) {
  .faq .item {
    font-size: 1.6rem;
    padding: 1.6rem;
    border-radius: 0.8rem;
  }
}
.faq .item:not(:last-child) {
  margin-bottom: 2.4rem;
}
@media screen and (max-width: 550px) {
  .faq .item:not(:last-child) {
    margin-bottom: 0.8rem;
  }
}
.faq .item.active {
  border-color: #333;
}
.faq .item.active .q {
  color: #333;
}
.faq .item.active .fal {
  transform: rotate(-180deg);
}
.faq .q {
  display: flex;
  padding-right: 3.2rem;
  position: relative;
  font-weight: 500;
}
.faq .q .icon {
  position: absolute;
  width: 2.4rem;
  height: 2.4rem;
  top: 0.5rem;
  right: 0;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -ms-align-items: center;
  align-items: center;
  -webkit-align-items: center;
  justify-content: center;
  -webkit-justify-content: center;
}
.faq .q .icon .fal {
  font-size: 3.2rem;
  transition: 0.3s;
}
@media screen and (max-width: 550px) {
  .faq .q .icon .fal {
    font-size: 2.4rem;
  }
}
.faq .a {
  margin-top: 0.8rem;
  color: #585860;
  display: none;
}

.h-file {
  width: 80%;
  margin: 0 auto;
  margin-top: 2.8rem;
}
@media screen and (max-width: 1200px) {
  .h-file {
    width: 90%;
  }
}
@media screen and (max-width: 768px) {
  .h-file {
    margin-top: 0;
    width: 100%;
  }
  .h-file .item {
    width: 100%;
    margin-bottom: 2.4rem;
  }
  .h-file .item:last-child {
    margin-bottom: 0;
  }
}
.h-file .list {
  justify-content: space-around;
}
.h-file .item {
  max-width: max-content;
}
@media screen and (max-width: 768px) {
  .h-file .item {
    max-width: 100%;
  }
}
.h-file-tt {
  align-items: center;
  font-size: 3.2rem;
  font-weight: 700;
  margin-bottom: 3.2rem;
  margin-left: 7.2rem;
}
@media only screen and (max-width: 1200px) {
  .h-file-tt {
    font-size: 2.7rem;
  }
}
@media only screen and (max-width: 800px) {
  .h-file-tt {
    font-size: 2.2rem;
  }
}
@media screen and (max-width: 768px) {
  .h-file-tt {
    margin-left: 0;
    font-size: 1.8rem;
    margin-bottom: 1.6rem;
  }
}
.h-file-tt .icon {
  flex-shrink: 0;
  margin-right: 1.2rem;
  width: 4.2rem;
  height: 4.2rem;
  border-radius: 50%;
  border: 0.2rem solid #333;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -ms-align-items: center;
  align-items: center;
  -webkit-align-items: center;
  justify-content: center;
  -webkit-justify-content: center;
  padding: 0.8rem;
}
.h-file-tt .icon .far, .h-file-tt .icon .fal {
  font-size: 2.4rem;
}
.h-file-item {
  display: flex;
  align-items: flex-start;
}
.h-file-item:not(:last-child) {
  margin-bottom: 1.6rem;
}
@media screen and (max-width: 550px) {
  .h-file-item:not(:last-child) {
    margin-bottom: 0.8rem;
  }
}
.h-file-item .num {
  margin-top: 0;
  margin-right: 1.6rem;
  font-size: 2.4rem;
}
@media screen and (max-width: 550px) {
  .h-file-item .num {
    font-size: 1.4rem;
  }
}
.h-file-item .desc {
  margin-bottom: 0;
}
.h-file-item .txt {
  font-size: 1.8rem;
}
@media screen and (max-width: 550px) {
  .h-file-item .txt {
    font-size: 1.6rem;
  }
}
.h-file-item .txt .name {
  font-weight: 600;
  margin-top: 0.5rem;
}
@media screen and (max-width: 550px) {
  .h-file-item .txt .name {
    margin-top: 0;
  }
}
.h-file-item .txt .desc {
  font-weight: 300;
  font-style: italic;
  font-size: 1.8rem;
}
@media screen and (max-width: 550px) {
  .h-file-item .txt .desc {
    font-size: 1.4rem;
  }
}

.h-support {
  display: flex;
}
.h-support .h-support-call {
  display: flex;
  align-items: center;
  font-size: 2.4rem;
}
@media screen and (max-width: 1200px) {
  .h-support .h-support-call {
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 550px) {
  .h-support .h-support-call {
    font-size: 1.4rem;
  }
}
.h-support .icon {
  width: 2.4rem;
  height: 2.4rem;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -ms-align-items: center;
  align-items: center;
  -webkit-align-items: center;
  justify-content: center;
  -webkit-justify-content: center;
}
.h-support .txt {
  display: block;
  margin: 0 0.8rem;
}
.h-support .number-phone {
  display: block;
  font-size: 3.2rem;
  font-weight: 800;
}
@media screen and (max-width: 1200px) {
  .h-support .number-phone {
    font-size: 2.4rem;
  }
}

.h-form {
  line-height: 1.5;
  width: 90%;
  margin: 0 auto;
  margin-top: 2.4rem;
}
@media screen and (max-width: 550px) {
  .h-form {
    width: 100%;
    margin-top: 0;
  }
}
@media screen and (min-width: 551px) {
  .h-form .f-r {
    flex-wrap: nowrap;
  }
}
.h-form .f-r:not(:last-child) {
  margin-bottom: 2.4rem;
}
@media screen and (max-width: 550px) {
  .h-form .f-r:not(:last-child) {
    margin-bottom: 0.8rem;
  }
}
.h-form .f-c {
  width: 100%;
}
@media screen and (max-width: 550px) {
  .h-form .f-c:not(:last-child) {
    margin-bottom: 0.8rem;
  }
}
.h-form .f-c .btn {
  width: 100%;
  max-width: 100%;
  padding: 1.6rem;
  font-size: 1.8rem;
  border-radius: 4.2rem;
}
@media screen and (max-width: 550px) {
  .h-form .f-c .btn {
    font-size: 1.6rem;
    padding: 0.8rem;
  }
}
.h-form-ipt,
.h-form .select2-container--default .select2-selection--single {
  width: 100%;
  height: auto;
  line-height: 1.5;
  padding: 1.6rem;
  border-radius: 0.8rem;
  border: 0.1rem solid #585860;
  color: #333;
  font-size: 1.8rem;
}
.h-form-ipt::placeholder,
.h-form .select2-container--default .select2-selection--single::placeholder {
  color: #585860;
}
@media screen and (max-width: 550px) {
  .h-form-ipt,
.h-form .select2-container--default .select2-selection--single {
    padding: 0.8rem;
    font-size: 1.6rem;
  }
}
.h-form .select2-container .select2-selection--single .select2-selection__rendered {
  padding: 0;
}
.h-form .select2-container--default .select2-selection--single .select2-selection__rendered {
  line-height: 1.5;
}
.h-form .select2-container--default .select2-selection--single .select2-selection__arrow {
  top: 50%;
  transform: translateY(-50%);
  right: 0.8rem;
}
.h-form select.h-form-ipt {
  padding-right: 3.2rem;
}

.locator-device {
  background-color: #000;
  color: #fff;
  flex-wrap: nowrap;
  border-radius: 2.4rem;
  position: relative;
  margin-bottom: 8rem;
}
@media screen and (max-width: 1200px) {
  .locator-device {
    margin-bottom: 4.8rem;
  }
}
@media screen and (max-width: 550px) {
  .locator-device {
    flex-wrap: wrap;
    border-radius: 1.6rem;
  }
}
.locator-device .content {
  padding: 6.4rem;
  padding-bottom: 7rem;
}
@media screen and (max-width: 1200px) {
  .locator-device .content {
    padding: 3.2rem;
  }
}
@media screen and (max-width: 550px) {
  .locator-device .content {
    width: 100%;
    padding: 2.4rem;
  }
}
.locator-device .content .title {
  font-size: 4rem;
  font-weight: 700;
  margin-bottom: 2.4rem;
}
@media screen and (max-width: 1200px) {
  .locator-device .content .title {
    font-size: 2.4rem;
  }
}
.locator-device .content .price {
  font-size: 5.6rem;
  margin-bottom: 3.2rem;
  align-items: flex-end;
  font-weight: 800;
  line-height: 1;
}
@media only screen and (max-width: 1200px) {
  .locator-device .content .price {
    font-size: 5.1rem;
  }
}
@media only screen and (max-width: 800px) {
  .locator-device .content .price {
    font-size: 4rem;
  }
}
@media screen and (max-width: 1200px) {
  .locator-device .content .price {
    font-size: 3.2rem;
  }
}
.locator-device .content .price-cover {
  font-size: 3.2rem;
  font-weight: 600;
  text-decoration: line-through;
  margin-right: 1.2rem;
  margin-bottom: 1.2rem;
}
@media only screen and (max-width: 1200px) {
  .locator-device .content .price-cover {
    font-size: 2.7rem;
  }
}
@media only screen and (max-width: 800px) {
  .locator-device .content .price-cover {
    font-size: 2.2rem;
  }
}
@media screen and (max-width: 1200px) {
  .locator-device .content .price-cover {
    font-size: 2.4rem;
  }
}
.locator-device .img {
  position: absolute;
  right: 0;
  width: 50%;
  height: 100%;
  border-radius: 2.4rem;
  overflow: hidden;
}
@media screen and (max-width: 550px) {
  .locator-device .img {
    position: relative;
    width: 100%;
    border-radius: 1.6rem;
    padding: 0;
  }
}

.swiper-gen {
  width: calc(100% + 2.4rem);
  margin-left: -1.2rem;
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 1200px) {
  .swiper-gen {
    width: calc(100% + 1.5rem);
    margin-left: -0.75rem;
  }
}
.swiper-gen .swiper-wrapper {
  align-items: stretch;
}
.swiper-gen .swiper-slide {
  height: auto;
}

.h-service .item {
  width: 33.3333333333%;
  padding: 0 1.2rem;
}
@media screen and (max-width: 1200px) {
  .h-service .item {
    padding: 0 0.75rem;
    width: 50%;
  }
}
@media screen and (max-width: 700px) {
  .h-service .item {
    width: 70%;
  }
}
@media screen and (max-width: 450px) {
  .h-service .item {
    width: 80%;
  }
}
@media screen and (max-width: 400px) {
  .h-service .item {
    width: 90%;
  }
}
.h-service .item .wrap {
  height: 100%;
  padding: 3.2rem;
  border-radius: 1.6rem;
  background-color: #F1F1F1;
  display: flex;
  flex-direction: column;
}
@media screen and (max-width: 700px) {
  .h-service .item .wrap {
    padding: 1.5rem;
  }
}

.vehicle-badge-slider {
  width: calc(100% + 2.4rem);
  margin-left: -1.2rem;
  overflow: hidden;
}
@media screen and (max-width: 550px) {
  .vehicle-badge-slider {
    width: calc(100% + 0.8rem);
    margin-left: -0.4rem;
  }
}
.vehicle-badge-list {
  margin-bottom: -1.2rem;
}
.vehicle-badge-item {
  width: 33.3333333333%;
  padding: 0 1.2rem;
  margin-bottom: 1.2rem;
}
@media screen and (max-width: 550px) {
  .vehicle-badge-item {
    padding: 0 0.4rem;
  }
}

.license-plates {
  max-width: 60rem;
  margin: 0 auto;
}

.h-feedback-slider {
  overflow: hidden;
}
.h-feedback-slider .swiper-container {
  overflow: hidden;
}
@media screen and (min-width: 851px) {
  .h-feedback-slider .swiper-container {
    height: 66rem;
  }
}
.h-feedback-slider .swiper-slide {
  height: calc(33.3333333333% - 4.8rem);
  min-height: calc(33.3333333333% - 4.8rem);
}
@media screen and (min-width: 851px) {
  .h-feedback-slider .item:not(:last-child) {
    margin-bottom: 2.4rem;
  }
}
.h-feedback .list {
  align-items: stretch;
}
.h-feedback .list .swiper-slide {
  height: auto;
  height: calc(33.3333333333% - 2.4rem);
  min-height: calc(33.3333333333% - 2.4rem);
}
@media screen and (min-width: 851px) {
  .h-feedback .list {
    flex-direction: column;
  }
}
.h-feedback .wrap {
  height: 100%;
  padding: 3.2rem;
  border: 0.1rem solid #BDBDBD;
}
@media screen and (max-width: 550px) {
  .h-feedback .wrap {
    padding: 1.6rem;
  }
}
.h-feedback .quote {
  font-size: 1.8rem;
  font-weight: 600;
  margin-bottom: 2.4rem;
}
@media screen and (max-width: 550px) {
  .h-feedback .quote {
    font-size: 1.6rem;
  }
}
.h-feedback .info {
  display: flex;
}
.h-feedback .info .avt {
  width: 3.2rem;
  height: 3.2rem;
  border-radius: 50%;
  overflow: hidden;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -ms-align-items: center;
  align-items: center;
  -webkit-align-items: center;
  justify-content: center;
  -webkit-justify-content: center;
}
@media screen and (max-width: 550px) {
  .h-feedback .info .avt {
    margin-top: 0.2rem;
  }
}
.h-feedback .info .avt img {
  object-fit: contain;
}
.h-feedback .info .txt {
  margin-left: 0.8rem;
}
.h-feedback .info .txt .name {
  font-size: 1.6rem;
  font-weight: 600;
}
.h-feedback .info .txt .title {
  font-size: 1.4rem;
  color: #585860;
  margin-bottom: 0;
}
.h-feedback .swiper-controls {
  margin-top: 3.2rem;
}
@media screen and (max-width: 850px) {
  .h-feedback .swiper-controls {
    margin-top: 0.8rem;
    justify-content: flex-end;
  }
}

.ft {
  padding: var(--padding);
  border-top: 0.1rem solid #333;
}
@media screen and (max-width: 850px) {
  .ft .col-6 {
    width: 100%;
  }
  .ft .h-social {
    justify-content: flex-start;
    margin-top: 2.4rem;
  }
}
@media screen and (max-width: 550px) {
  .ft {
    padding: 4.8rem 0.75rem;
  }
}
.ft-ctn {
  align-items: center;
}
.ft .hd-logo-link {
  justify-content: flex-start;
}
.ft .hd-map {
  padding-left: 0;
}
@media screen and (max-width: 768px) {
  .ft .hd-map {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    -ms-align-items: center;
    align-items: center;
    -webkit-align-items: center;
    justify-content: center;
    -webkit-justify-content: center;
    justify-content: flex-start;
    flex-wrap: nowrap;
    align-items: flex-start;
    margin-top: 0.8rem;
  }
}

.h-social {
  display: flex;
  justify-content: flex-end;
  font-weight: 700;
  color: #585860;
}
@media screen and (max-width: 550px) {
  .h-social {
    font-size: 1.2rem;
  }
}
.h-social-txt {
  margin-right: 1.2rem;
}
.h-social-item {
  padding: 0.8rem 1.2rem;
}

.h-menu {
  position: fixed;
  z-index: 110;
  top: 0;
  left: 0;
  width: 30vw;
  height: 100vh;
  background-color: #3f3b37;
  box-shadow: 0.2rem 0 1.8rem #00000042;
  transition: all 0.3s ease-in-out;
  transform: translateX(-100%);
}
@media screen and (max-width: 1200px) {
  .h-menu {
    width: 70vw;
  }
}
@media screen and (max-width: 550px) {
  .h-menu {
    width: 80vw;
  }
}
.h-menu.active {
  transform: translateX(0);
}
.h-menu-wrap {
  padding-top: 12vh;
  width: 80%;
  margin: 0 auto;
}
@media screen and (max-width: 550px) {
  .h-menu-wrap {
    width: 85%;
  }
}
@media screen and (max-width: 380px) {
  .h-menu-wrap {
    padding-top: 10vh;
  }
}
.h-menu-close {
  position: absolute;
  z-index: 2;
  top: 2.4rem;
  left: 2.4rem;
  width: 4.8rem;
  height: 4.8rem;
  background-color: #f0eee8;
  padding: 1.2rem;
  cursor: pointer;
}
@media screen and (max-width: 550px) {
  .h-menu-close {
    top: 0.8rem;
    left: 0.8rem;
    width: 4.2rem;
    height: 4.2rem;
    border-radius: 50%;
  }
}
.h-menu .menu-item-link {
  display: block;
  line-height: 1.5;
  color: #fff7;
  text-decoration: none;
  position: relative;
  font-weight: 500;
  transition: background 0.1s ease-in-out;
  font-size: calc(0.2rem + 1vw);
  padding: 1.5vh 0;
  cursor: pointer;
  text-transform: uppercase;
  transition: all 0.2s;
}
@media screen and (max-width: 1200px) {
  .h-menu .menu-item-link {
    font-size: 2.4rem;
  }
}
@media screen and (max-width: 850px) {
  .h-menu .menu-item-link {
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 550px) {
  .h-menu .menu-item-link {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 380px) {
  .h-menu .menu-item-link {
    font-size: 1.5rem;
  }
}
.h-menu .menu-item-link.current {
  color: #f0eee8;
  transform: scale(1.1);
}
.h-menu .menu-item-link.current::after {
  width: 100%;
}
.h-menu .menu-item-link::after {
  content: "";
  display: block;
  width: 0;
  height: 0.1rem;
  background: #f0eee8;
  transition: width 0.3s;
  position: relative;
  top: 0.4rem;
}
@media screen and (min-width: 1201px) {
  .h-menu .menu-item-link:hover {
    color: #f0eee8;
    transform: scale(1.1);
  }
  .h-menu .menu-item-link:hover::after {
    width: 100%;
  }
}
.h-menu .taixecongnghe {
  position: absolute;
  font-size: 3.2vw;
  bottom: 10%;
  width: 90%;
  left: 50%;
  transform: translateX(-50%);
  color: #f5f5f5;
  opacity: 0.1;
  font-weight: 800;
  pointer-events: none;
}
@media screen and (max-width: 1200px) {
  .h-menu .taixecongnghe {
    font-size: 8vw;
  }
}
@media screen and (max-width: 550px) {
  .h-menu .taixecongnghe {
    font-size: 10vw;
    bottom: 2%;
  }
}
@media screen and (max-width: 380px) {
  .h-menu .taixecongnghe {
    font-size: 8vw;
  }
}
.h-menu .taixecongnghe-2 {
  margin-top: -2vw;
  margin-left: 5vw;
}

.h-discount {
  padding: 4.2rem 5.6rem;
  background-color: #333;
  color: #fff;
  border-radius: 2.4rem;
  width: 87%;
  margin: 2.4rem auto 2.4rem auto;
}
@media screen and (max-width: 550px) {
  .h-discount {
    width: 100%;
    padding: 2.4rem;
    border-radius: 1.6rem;
  }
  .h-discount .content {
    width: 100%;
  }
  .h-discount-btn {
    width: 100%;
    margin-top: 0.8rem;
    justify-content: flex-start !important;
  }
}
.h-discount-btn {
  display: flex;
  justify-content: flex-end;
}
.h-discount-btn .btn {
  padding: 1.6rem 4.2rem;
}
.h-discount-flex {
  align-items: center;
}
.h-discount-title {
  font-size: 4.8rem;
  margin-bottom: 0.4rem;
  font-weight: 800;
}
@media only screen and (max-width: 1200px) {
  .h-discount-title {
    font-size: 4.3rem;
  }
}
@media only screen and (max-width: 800px) {
  .h-discount-title {
    font-size: 3.2rem;
  }
}
@media screen and (max-width: 550px) {
  .h-discount-title {
    font-size: 2.4rem;
  }
}
.h-discount-desc {
  font-size: 1.6rem;
}
@media screen and (max-width: 550px) {
  .h-discount-desc br {
    display: none;
  }
}

.h-form .f-c {
  position: relative;
}

.h-form .f-c .btn {
  margin-top: 1.2rem;
}

.h-form .f-c .error {
  font-size: 1.4rem;
  color: red;
  position: absolute;
  top: calc(100% + 0.4rem);
  left: 1.2rem;
  font-weight: 500;
}

@media screen and (max-width: 550px) {
  .h-form .f-c .btn {
      margin-top: 2.4rem;
  }
}

.popup {
  position: fixed;
  z-index: 100;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  transition: 0.3s;
  opacity: 0;
  pointer-events: none;
  visibility: hidden;
}

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

.popup.active .popup-bg {
  opacity: 1;
  pointer-events: auto;
  visibility: visible;
}

.popup .wrap {
  padding: 3.2rem;
  padding-top: 7.2rem;
  border-radius: 2.4rem;
  background-color: #fff;
  text-align: center;
  box-shadow: 0rem 0rem 4rem rgba(0, 0, 0, 0.03);
  position: relative;
  z-index: 2;
  max-width: 56rem;
}

.popup-bg {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 100vw;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.16);
  transition: 0.3s;
  opacity: 0;
  visibility: hidden;
  cursor: pointer;
  pointer-events: none;
}

.popup .check {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 9.6rem;
  height: 9.6rem;
  background-color: #00aa13;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
}

.popup .check .icon {
  color: #fff;
  font-size: 4.8rem;
}

.popup .title {
  font-size: 3.2rem;
  font-weight: 700;
  margin-bottom: 1.6rem;
}

.popup .desc {
  margin-bottom: 4.2rem;
}

.popup .btn {
  margin: 0 auto;
}

@media screen and (max-width: 768px) {
  .popup .wrap {
    min-width: 90vw;
    padding: 1.6rem;
    padding-top: 4.8rem;
    border-radius: 1.6rem;
  }

  .popup .check {
      width: 7.2rem;
      height: 7.2rem;
  }

  .popup .check .icon {
    font-size: 3.2rem;
  }
}

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