* {
  margin: 0px;
  padding: 0px;
  box-sizing: border-box;
}
:root {
  --primary: #37b8b1;
  --secondary: #2f2b59;
  --title: #0d1c2d;
  --text: #474747;
}
html {
  scroll-behavior: smooth;
  font-size: clamp(7.5px, 0.520834vw, 10px);
}
.content {
  max-width: 140rem;
  margin: 0px auto;
  position: relative;
}
li {
  list-style: none;
}
a {
  color: inherit;
  cursor: pointer;
  font-size: inherit;
  text-decoration: none;
}
.flex {
  display: flex;
}
.center {
  text-align: center;
}
.flex_center {
  justify-content: center;
}
.flex_middle {
  align-items: center;
}
body {
  font-size: 1.6rem;
  word-break: break-word;
  color: var(--title);
}
.Cormorant,
h1,
h2,
h3,
strong,
.title {
}
.img.img_ct img {
  object-fit: contain;
}
.img img {
  width: 100%;
  height: 100%;
  display: block;
  transition: 0.5s;
  aspect-ratio: inherit;
}
.img_bg {
  position: relative;
  z-index: 2;
}
.img_bg > img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  left: 0px;
  top: 0px;
  z-index: -2;
  pointer-events: none;
}
.btn {
  display: inline-block;
  cursor: pointer;
  transition: 0.3s;
  text-align: center;
  border-radius: 100px;
  background-color: var(--primary);
  border: 1px solid var(--primary);
  color: rgb(255, 255, 255);
  font-weight: 700;
  font-size: 2.2rem;
  line-height: 6.8rem;
  padding: 0px 3rem;
  min-width: 20.3rem;
}
.btn:hover {
  background-color: transparent;
  color: var(--primary);
}
.head.white {
  color: rgb(255, 255, 255);
}
.head.white p {
  color: rgba(255, 255, 255, 0.8);
}
.head h2 {
  font-size: 6.2rem;
  line-height: 1.09677;
  font-weight: 700;
}
.head p {
  font-size: 1.8rem;
  line-height: 3.2rem;
  color: var(--text);
}
.footer_contact > img {
  max-width: 187.8rem;
  left: 50%;
  transform: translateX(-50%);
}
.footer_contact .flex {
  min-height: 81rem;
  padding: 18rem 0px 10rem;
}
.footer_contact .head {
  position: relative;
  z-index: 2;
  width: 47.857%;
}
.footer_contact .head h2 {
  font-size: 6.4rem;
  line-height: 1.1875;
}
.footer_contact p {
  max-width: 56.8rem;
  margin: 1.5rem auto 0px;
}
.footer_contact .btn {
  margin-top: 4.4rem;
  padding: 0px 5.9rem;
}
.footer_contact .imgs {
  position: static;
}
.footer_contact .imgs ul {
  position: static;
}
.footer_contact .imgs .img {
  position: absolute;
  height: auto;
  pointer-events: none;
}
.footer_contact .imgs .img:nth-child(1) {
  left: -6.2%;
  top: 33.5%;
  width: 8.214%;
}
.footer_contact .imgs .img:nth-child(2) {
  left: 7.5%;
  top: 40.2%;
  width: 15.929%;
}
.footer_contact .imgs .img:nth-child(3) {
  left: 8.4%;
  top: 63.7%;
  width: 18.857%;
}
.footer_contact .imgs .img:nth-child(4) {
  right: 17.1%;
  top: 17.2%;
  width: 11.929%;
}
.footer_contact .imgs .img:nth-child(5) {
  right: -4%;
  top: 27.8%;
  width: 17.5%;
}
.footer_contact .imgs .img:nth-child(6) {
  right: -4.1%;
  top: 58.3%;
  width: 31.5%;
}
.footer_contact .star_mask {
  position: static;
}
.footer_contact .star_mask ul {
  position: static;
}
.footer_contact .star_mask .img {
  position: absolute;
  width: 3.6rem;
  height: auto;
  pointer-events: none;
  animation: 2s ease 0s infinite alternate none running scaleStar;
}
.footer_contact .star_mask .img:nth-child(2n) {
  animation-delay: 1s;
}
.footer_contact .star_mask .img:nth-child(1) {
  left: 3.6%;
  top: 26.2%;
}
.footer_contact .star_mask .img:nth-child(2) {
  left: 20.3%;
  top: 84.2%;
}
.footer_contact .star_mask .img:nth-child(3) {
  left: 52.6%;
  top: 20.5%;
}
.footer_contact .star_mask .img:nth-child(4) {
  left: 61%;
  top: 86.7%;
}
.footer_contact .bn_img {
  position: absolute;
  width: 47.246%;
  height: auto;
  pointer-events: none;
  left: -32.43%;
  bottom: -16.173%;
}
@media screen and (min-width: 769px) and (max-width: 1220px) {
  .content {
    padding: 0px 3rem;
    max-width: 1220px;
  }
  .head h2 {
    font-size: 5.4rem;
  }
  .footer_contact .head h2 {
    font-size: 5.4rem;
  }
  .footer_contact .imgs .img:nth-child(6),
  .footer_contact .imgs .img:nth-child(5) {
    right: 1%;
  }
}

@media screen and (min-width: 769px) and (max-width: 1024px) {
  .content,
  .swiper_content {
    max-width: 896px;
  }
  .head h2 {
    font-size: 5rem;
  }
  .footer_contact .head h2 {
    font-size: 5rem;
  }
}

@media screen and (min-width: 769px) and (max-width: 896px) {
  .content,
  .swiper_content {
    max-width: 768px;
  }
  .head h2 {
    font-size: 4.5rem;
  }
  .footer_contact .head h2 {
    font-size: 4.5rem;
  }
}

@media screen and (min-width: 769px) {
  ul::-webkit-scrollbar,
  div::-webkit-scrollbar {
    width: 4px;
    height: 4px;
  }
  ul::-webkit-scrollbar-thumb,
  div::-webkit-scrollbar-thumb {
    border-radius: 10px;
    background-color: rgb(139, 139, 139);
  }
}

@media screen and (max-width: 768px) {
  html {
    font-size: 10px;
  }
  body {
    font-size: 1.4rem;
  }
  .content {
    padding: 0px 30px;
  }
  .btn,
  .btn_line {
    font-size: 14px;
    line-height: 40px;
    padding: 0px 20px;
    min-width: 120px;
  }
  div.head h2 {
    font-size: 22px;
    line-height: 1.3;
    letter-spacing: unset;
    max-width: unset;
    word-spacing: unset;
  }
  div.head .desc,
  div.head p {
    font-size: 14px;
    line-height: 1.5;
    letter-spacing: unset;
    max-width: unset;
    word-spacing: unset;
    margin-top: 12px;
  }
  div.head .btn,
  div.head .btn_line {
    font-size: 14px;
    line-height: 40px;
    padding: 0px 20px;
    min-width: 120px;
    margin-top: 20px;
  }
  .footer_contact {
    background-color: var(--secondary);
  }
  .footer_contact .flex {
    min-height: unset;
    padding: 50px 0px;
  }
  .footer_contact .head h2 {
    font-size: 22px;
    line-height: 1.3;
  }
  .footer_contact .star_mask .img {
    width: 20px;
  }
  .footer_contact .imgs .img:nth-child(1) {
    width: 6%;
    left: 2%;
    top: 11.5%;
  }
  .footer_contact .imgs .img:nth-child(2) {
    width: 12%;
  }
  .footer_contact .imgs .img:nth-child(3) {
    width: 15%;
  }
  .footer_contact .imgs .img:nth-child(4) {
    width: 10%;
  }
  .footer_contact .imgs .img:nth-child(5) {
    width: 15%;
    right: 2%;
  }
  .footer_contact .imgs .img:nth-child(6) {
    width: 25%;
    right: 2%;
  }
  .footer_contact .bn_img {
    left: -10%;
    width: 40%;
  }
}

@media screen and (max-width: 576px) {
  .content {
    padding: 0px 20px;
  }
  .footer_contact .head {
    width: 100%;
  }
}

@keyframes scaleStar {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(0.5);
  }
}
