/* #region FV */
.fv {
  width: 100%;
  height: 100vh;
  min-height: 660px;
  max-height: 60vw;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}
.fv__inner {
  width: 100%;
}
.fv__contents {
  width: 100%;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}
.fv__contents__back {
  width: 100%;
  height: 36.6vw;
  min-height: 528px;
}
.fv__contents__back img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.fv__contents h2 {
  position: absolute;
  inset: 0;
  margin: auto;
  width: -moz-fit-content;
  width: fit-content;
  height: -moz-fit-content;
  height: fit-content;
  font-size: 64px;
  font-weight: 700;
  color: #fff;
  text-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
  padding-top: 44px;
}
.fv__contents .scroll {
  position: absolute;
  bottom: -100px;
  right: 120px;
}
.fv__contents .scroll #scroll-circle {
  animation: 8s rotate linear infinite;
}
@keyframes rotate {
  0% {
    transform: rotate(0);
    transform-origin: center;
  }
  100% {
    transform: rotate(360deg);
    transform-origin: center;
  }
}
.fv__contents .scroll #scroll-arrow {
  animation: 2s updown ease-in-out infinite;
}
@keyframes updown {
  0% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(10px);
  }
  100% {
    transform: translateY(0);
  }
}
@media (max-width: 1180px) {
  .fv__contents .scroll {
    right: 5%;
    bottom: -60px;
  }
  .fv__contents .scroll svg {
    width: 120px;
    height: 120px;
  }
}
@media (max-width: 767px) {
  .fv {
    height: auto;
    min-height: 100vw;
    max-height: unset;
    padding-top: 60px;
  }
  .fv__contents__back {
    height: 100vw;
  }
  .fv__contents h2 {
    font-size: 40px;
    text-align: center;
  }
  .fv__contents .scroll svg {
    width: 88px;
    height: 88px;
  }
}

/* #endregion */
/* #region Concept */
.concept {
  padding-top: 20px;
  padding-bottom: 252px;
  position: relative;
}
.concept::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: #F2F2F2;
  -webkit-clip-path: polygon(0 400px, 100% 40px, 100% calc(100% - 20px), 0 calc(100% - 300px));
          clip-path: polygon(0 400px, 100% 40px, 100% calc(100% - 20px), 0 calc(100% - 300px));
}
.concept__inner {
  width: 1120px;
  max-width: 90%;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  z-index: 3;
}
.concept__inner__title {
  max-width: 100%;
  position: relative;
  padding: 40px;
  font-size: clamp(28px, 2.84vw, 41px);
  line-height: 1.65;
  font-weight: 700;
}
.concept__inner__title .deco1 {
  position: absolute;
  left: -112px;
  top: -140px;
}
.concept__inner__title .deco2 {
  position: absolute;
  right: 80px;
  top: 80px;
}
.concept__inner__title img {
  position: relative;
}
.concept__inner__title__back {
  position: absolute;
  left: 0;
  top: 0;
  width: 337px;
  max-width: 100%;
  height: 100%;
  border-top: 2px solid #111;
  border-bottom: 2px solid #111;
  border-left: 2px solid #111;
}
.concept__inner__title__back::before {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  width: 2px;
  height: 20px;
  background-color: #111;
}
.concept__inner__title__back::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  width: 2px;
  height: 20px;
  background-color: #111;
}
.concept__inner__title span {
  font-size: clamp(36px, 3.6vw, 52px);
  padding-right: 4px;
}
.concept__inner__title span.bc1 {
  background: linear-gradient(0deg, transparent 0%, transparent 10px, rgba(191, 97, 101, 0.6) 10px, rgba(191, 97, 101, 0.6) 26px, transparent 16px, transparent 100%);
}
.concept__inner__title span.bc2 {
  background: linear-gradient(0deg, transparent 0%, transparent 10px, rgba(210, 168, 80, 0.8) 10px, rgba(210, 168, 80, 0.8) 26px, transparent 16px, transparent 100%);
}
.concept__inner__title span.bc3 {
  background: linear-gradient(0deg, transparent 0%, transparent 10px, rgba(28, 114, 138, 0.8) 10px, rgba(28, 114, 138, 0.8) 26px, transparent 16px, transparent 100%);
}
.concept__inner__text {
  margin-top: 80px;
  padding: 0 40px;
  font-size: 24px;
  font-weight: 700;
  position: relative;
}
.concept__inner__text span {
  font-size: 32px;
}
.concept__inner__text span.fc1 {
  color: #B85458;
}
.concept__inner__text span.fc2 {
  color: #CB9D3D;
}
.concept__inner__text span.fc3 {
  color: #1C728A;
}
.concept__inner__text .deco3 {
  position: absolute;
  right: -68px;
  top: 90px;
}
.concept__box {
  margin-top: 142px;
  width: 100%;
  padding: 80px 160px;
  position: relative;
}
.concept__box::before {
  content: "";
  position: absolute;
  top: 0px;
  right: 0px;
  width: 100%;
  height: 100%;
  border-left: 1px solid #000;
  border-right: 1px solid #000;
  border-bottom: 1px solid #000;
  z-index: 3;
}
.concept__box::after {
  content: "";
  position: absolute;
  top: 12px;
  right: -12px;
  width: 100%;
  height: 100%;
  background: #fff;
  z-index: 2;
}
.concept__box * {
  position: relative;
  z-index: 4;
}
.concept__box h3 {
  position: absolute;
  top: -10px;
  left: -1px;
  margin: 0;
  width: calc(100% + 2px);
  height: 20px;
  z-index: 3;
  display: flex;
  align-items: center;
  justify-content: center;
}
.concept__box h3::before {
  content: "";
  width: 100%;
  height: 1px;
  background: #000;
  margin-right: 40px;
}
.concept__box h3::after {
  content: "";
  width: 100%;
  height: 1px;
  background: #000;
  margin-left: 40px;
}
.concept__box h3 span {
  flex: none;
  font-size: 40px;
  line-height: 1.2;
}
.concept__box h3 span span {
  background: linear-gradient(0deg, rgba(218, 184, 114, 0.8) 0%, rgba(218, 184, 114, 0.8) 16px, transparent 16px, transparent 100%);
}
.concept__box__contents {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 32px;
}
.concept__box__contents__block h4 {
  font-size: 24px;
  font-weight: 700;
  display: flex;
  align-items: center;
  gap: 14px;
}
.concept__box__contents__block p {
  margin-top: 8px;
  font-size: 16px;
  font-weight: 500;
  padding: 0 0 0 50px;
}
.concept__box__contents__block .img {
  margin-top: 16px;
  overflow-x: auto;
}
.concept__box__contents__block .img img {
  min-height: 192px;
  max-width: 100%;
}
.concept__box__introduce {
  position: absolute;
  top: calc(100% - 16px);
  left: 0;
  right: 0;
  margin: auto;
  width: 456px;
  max-width: 80vw;
}
.concept__box .deco4 {
  position: absolute;
  top: -12px;
  left: -18px;
  width: 37px;
  height: 20px;
  background-color: #748B7A;
  z-index: 1;
}
.concept__box .deco5 {
  position: absolute;
  right: -77px;
  top: 570px;
  z-index: 1;
}
.concept__box .deco6 {
  position: absolute;
  left: -40px;
  bottom: -36px;
  z-index: 4;
}
@media (max-width: 1180px) {
  .concept {
    overflow: hidden;
  }
  .concept__inner__title {
    width: -moz-fit-content;
    width: fit-content;
    margin-left: auto;
    margin-right: auto;
  }
  .concept__inner__title .deco2 {
    right: 0;
  }
  .concept__inner__title span.bc1 {
    background: linear-gradient(0deg, transparent 0%, transparent 6px, rgba(191, 97, 101, 0.6) 6px, rgba(191, 97, 101, 0.6) 18px, transparent 18px, transparent 100%);
  }
  .concept__inner__title span.bc2 {
    background: linear-gradient(0deg, transparent 0%, transparent 6px, rgba(210, 168, 80, 0.8) 6px, rgba(210, 168, 80, 0.8) 18px, transparent 18px, transparent 100%);
  }
  .concept__inner__title span.bc3 {
    background: linear-gradient(0deg, transparent 0%, transparent 6px, rgba(28, 114, 138, 0.8) 6px, rgba(28, 114, 138, 0.8) 18px, transparent 18px, transparent 100%);
  }
  .concept__inner__text {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
  }
  .concept__inner__text span.fc1 {
    margin-top: 8px;
    margin-bottom: 32px;
  }
  .concept__inner__text span.fc2 {
    margin-top: 8px;
    margin-bottom: 32px;
  }
  .concept__inner__text span.fc3 {
    margin-top: 8px;
    margin-bottom: 20px;
  }
  .concept__inner__text .deco3 {
    right: -5vw;
  }
  .concept__box {
    padding: 80px max(50% - 400px, 60px);
  }
  .concept__box h3 .flex {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  .concept__box h3 .flex span {
    display: inline-block;
    width: -moz-fit-content;
    width: fit-content;
    text-align: center;
  }
}
@media (max-width: 767px) {
  .concept {
    padding-top: 120px;
    padding-bottom: 50vw;
    overflow: hidden;
  }
  .concept::before {
    -webkit-clip-path: polygon(0 400px, 100% 240px, 100% calc(100% - 80px), 0 calc(100% - 160px));
            clip-path: polygon(0 400px, 100% 240px, 100% calc(100% - 80px), 0 calc(100% - 160px));
  }
  .concept__inner {
    max-width: 100%;
  }
  .concept__inner__title {
    font-size: clamp(16px, 5.12vw, 20px);
    padding: 24px 8px 24px 20px;
    max-width: 95%;
    margin-left: auto;
    margin-right: auto;
  }
  .concept__inner__title .deco1 {
    width: 112px;
    height: 110px;
    left: 24px;
    top: -100px;
  }
  .concept__inner__title .deco2 {
    width: 16px;
    height: 58px;
    top: unset;
    bottom: -40px;
    right: 12px;
  }
  .concept__inner__title span {
    font-size: clamp(20px, 7.18vw, 28px);
  }
  .concept__inner__title span.bc1 {
    background: linear-gradient(0deg, transparent 0%, transparent 4px, rgba(191, 97, 101, 0.6) 4px, rgba(191, 97, 101, 0.6) 12px, transparent 12px, transparent 100%);
  }
  .concept__inner__title span.bc2 {
    background: linear-gradient(0deg, transparent 0%, transparent 4px, rgba(210, 168, 80, 0.8) 4px, rgba(210, 168, 80, 0.8) 12px, transparent 12px, transparent 100%);
  }
  .concept__inner__title span.bc3 {
    background: linear-gradient(0deg, transparent 0%, transparent 4px, rgba(28, 114, 138, 0.8) 4px, rgba(28, 114, 138, 0.8) 12px, transparent 12px, transparent 100%);
  }
  .concept__inner__title__back {
    width: 100%;
  }
  .concept__inner p {
    font-size: 16px;
    padding: 0;
    margin-top: 48px;
    max-width: 95%;
    margin-left: auto;
    margin-right: auto;
  }
  .concept__inner p span {
    font-size: 28px;
  }
  .concept__inner p .deco3 {
    right: -2vw;
    top: unset;
    bottom: -40px;
    width: 40px;
    height: 60px;
  }
  .concept__box {
    padding: 80px 24px;
    margin-top: 102px;
    max-width: 90%;
    margin-left: auto;
    margin-right: auto;
  }
  .concept__box::after {
    top: 6px;
    right: -6px;
  }
  .concept__box h3 .flex span {
    display: inline-block;
    width: -moz-fit-content;
    width: fit-content;
    text-align: center;
    font-size: 24px;
    background: linear-gradient(0deg, rgba(218, 184, 114, 0.8) 0%, rgba(218, 184, 114, 0.8) 4px, transparent 4px, transparent 100%);
  }
  .concept__box h3 span {
    background: none;
  }
  .concept__box__contents__block h4 {
    font-size: 18px;
    align-items: flex-start;
  }
  .concept__box__contents__block h4 svg {
    margin-top: 8px;
    flex: none;
  }
  .concept__box__contents__block p {
    margin-top: 8px;
  }
  .concept__box__contents__block .img {
    text-align: center;
  }
  .concept__box__contents__block .img img {
    max-height: 240px;
    max-width: unset;
  }
  .concept__box__contents__block .img::-webkit-scrollbar {
    width: 10px;
    height: 10px;
  }
  .concept__box__contents__block .img::-webkit-scrollbar-thumb {
    --bg-opacity: 1;
    background-color: rgba(0, 0, 0, 0.3);
  }
  .concept__box .deco6 {
    width: 90px;
    height: 48px;
    left: -8px;
    bottom: -14px;
  }
}

/* #endregion */
/* #region Contact */
.contact {
  position: relative;
}
.contact .page__contact__box {
  display: contents;
}
.contact__inner {
  width: 900px;
  max-width: 90%;
  margin-left: auto;
  margin-right: auto;
  position: relative;
}
.contact__inner .deco6 {
  position: absolute;
  right: calc(-50vw + 450px);
  top: 300px;
}
.contact__inner .deco7 {
  position: absolute;
  top: 0;
  bottom: 0;
  left: -212px;
  margin: auto;
}
.contact__inner .deco8 {
  position: absolute;
  bottom: 312px;
  right: calc(-50vw + 524px);
}
.contact__inner .deco9 {
  position: absolute;
  left: -40px;
  bottom: -20px;
}
.contact__inner h2 {
  font-size: 48px;
  line-height: 1.2;
  font-weight: 700;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 20px;
}
.contact__inner h2::before {
  content: "";
  width: 24px;
  height: 54px;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNSIgaGVpZ2h0PSI1NCIgdmlld0JveD0iMCAwIDI1IDU0IiBmaWxsPSJub25lIj4KICA8cGF0aCBkPSJNMSAxTDIzLjc3NzMgNTIuMTU4NSIgc3Ryb2tlPSJibGFjayIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiLz4KPC9zdmc+");
  background-repeat: no-repeat;
}
.contact__inner h2::after {
  content: "";
  width: 24px;
  height: 54px;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNSIgaGVpZ2h0PSI1NCIgdmlld0JveD0iMCAwIDI1IDU0IiBmaWxsPSJub25lIj4KICA8cGF0aCBkPSJNMjQgMUwxLjIyMjc1IDUyLjE1ODUiIHN0cm9rZT0iYmxhY2siIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIi8+Cjwvc3ZnPg==");
  background-repeat: no-repeat;
}
.contact__inner h2 span span {
  background: linear-gradient(0deg, rgba(191, 97, 101, 0.6) 0%, rgba(191, 97, 101, 0.6) 16px, transparent 16px, transparent 100%);
}
.contact__flow {
  margin-top: 80px;
}
.contact__flow img {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.contact__flow p {
  margin-top: 24px;
  font-size: 16px;
  color: #D12424;
  text-align: center;
}
.contact input,
.contact textarea,
.contact select {
  width: 100%;
  background-color: #fff;
  padding: 12px 16px;
  font-size: 16px;
  letter-spacing: 0;
  line-height: 1.5;
  font-weight: 400;
  color: #24252C;
  border: 1px solid #333;
  border-radius: 0;
  outline: none;
}
.contact input::-moz-placeholder, .contact textarea::-moz-placeholder, .contact select::-moz-placeholder {
  color: #636363;
}
.contact input::placeholder,
.contact textarea::placeholder,
.contact select::placeholder {
  color: #636363;
}
.contact input:-webkit-autofill,
.contact textarea:-webkit-autofill,
.contact select:-webkit-autofill {
  -webkit-text-fill-color: #24252C;
  -webkit-box-shadow: 0 0 0 1000px #e3e3e3 inset;
}
.contact textarea {
  resize: both;
  min-height: 24px;
}
.contact input[type=submit],
.contact button[type=submit] {
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  font-size: 20px;
  font-weight: 700;
  padding: 32px;
  border-radius: 0;
  cursor: pointer;
  background: linear-gradient(90deg, #000 0%, #000 50%, #fff 50%, #fff 100%);
  background-size: 200% 100%;
  background-position: right;
  transition: all 0.4s;
}
.contact input[type=submit]:hover,
.contact button[type=submit]:hover {
  background-position: left;
  color: #fff;
}
.contact input[type=checkbox] {
  cursor: pointer;
}
.contact input[type=radio],
.contact input[type=checkbox] {
  width: 1px;
  height: 1px;
  opacity: 0;
  display: none;
}
.contact input[type=radio] + label,
.contact input[type=radio] + .mwform-radio-field-text,
.contact input[type=radio] + .mwform-checkbox-field-text,
.contact input[type=checkbox] + label,
.contact input[type=checkbox] + .mwform-radio-field-text,
.contact input[type=checkbox] + .mwform-checkbox-field-text {
  display: flex;
  align-items: center;
  gap: 16px;
  position: relative;
  cursor: pointer;
}
.contact input[type=radio] + label::before,
.contact input[type=radio] + .mwform-radio-field-text::before,
.contact input[type=radio] + .mwform-checkbox-field-text::before,
.contact input[type=checkbox] + label::before,
.contact input[type=checkbox] + .mwform-radio-field-text::before,
.contact input[type=checkbox] + .mwform-checkbox-field-text::before {
  content: "";
  display: inline-block;
  width: 20px;
  height: 20px;
  background-color: transparent;
  border-radius: 100%;
  border: 1px solid #24252C;
}
.contact input[type=radio] + label::after,
.contact input[type=radio] + .mwform-radio-field-text::after,
.contact input[type=radio] + .mwform-checkbox-field-text::after,
.contact input[type=checkbox] + label::after,
.contact input[type=checkbox] + .mwform-radio-field-text::after,
.contact input[type=checkbox] + .mwform-checkbox-field-text::after {
  content: "";
  position: absolute;
  left: 4px;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 14px;
  height: 14px;
  background-color: #24252C;
  border-radius: 100%;
  transform: scale(0);
  transition: all 0.2s;
}
.contact input[type=radio]:checked + label::after,
.contact input[type=radio]:checked + .mwform-radio-field-text::after,
.contact input[type=radio]:checked + .mwform-checkbox-field-text::after,
.contact input[type=checkbox]:checked + label::after,
.contact input[type=checkbox]:checked + .mwform-radio-field-text::after,
.contact input[type=checkbox]:checked + .mwform-checkbox-field-text::after {
  transform: scale(1);
}
.contact__form, .contact form {
  display: flex;
  flex-direction: column;
  gap: 40px;
  margin-top: 48px;
}
.contact__block {
  display: flex;
  justify-content: space-between;
  gap: 40px;
  position: relative;
}
.contact__block label {
  padding-top: 10px;
}
.contact__block label span.must {
  color: #D12424;
}
.contact__block__input {
  width: 624px;
  max-width: 70%;
  flex: none;
  display: flex;
  align-items: flex-end;
  flex-wrap: wrap;
  gap: 20px 56px;
}
.contact__block__input label {
  padding: 0;
}
.contact__block__privacy {
  width: 624px;
  max-width: 70%;
  height: 160px;
  overflow-y: auto;
  flex: none;
  border: 1px solid #000;
  background-color: #fff;
}
.contact__block__privacy ol, .contact__block__privacy .flame {
  height: -moz-fit-content;
  height: fit-content;
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 20px 32px;
  margin: 0;
}
.contact.page__contact {
  padding: 100px 0 0;
  position: relative;
}
.contact.page__contact::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: #F2F2F2;
  -webkit-clip-path: polygon(0 15%, 100% 5%, 100% 100%, 0 90%);
          clip-path: polygon(0 15%, 100% 5%, 100% 100%, 0 90%);
}
.contact.page__contact .page__contact__inner {
  width: 1120px;
  max-width: 90%;
  margin-left: auto;
  margin-right: auto;
  position: relative;
}
.contact.page__contact .page__contact__inner input[type=submit],
.contact.page__contact .page__contact__inner button[type=submit] {
  padding: 20px;
}
.contact.page__contact .page__contact__title h1 {
  font-size: 40px;
  font-weight: 700;
  text-align: center;
}
.contact.page__contact .page__contact__title h2 {
  margin-top: 64px;
  font-size: 24px;
  font-weight: 700;
  text-align: center;
}
.contact.page__contact .page__contact__title h2::before, .contact.page__contact .page__contact__title h2::after {
  display: none;
}
.contact.page__contact .page__contact__title p {
  margin-top: 16px;
  font-size: 16px;
  font-weight: 400;
  text-align: center;
}
.contact.page__contact .page__contact__box {
  display: flex;
  flex-direction: column;
  gap: 30px;
  background-color: #fff;
  padding: 80px;
}
.contact.page__contact .page__contact__box .contact__block label {
  padding-top: 0;
}
.contact.page__contact .page__contact__box .contact__block__input {
  align-items: flex-start;
}
@media (max-width: 1180px) {
  .contact__inner .deco6 {
    right: -5vw;
  }
  .contact__inner .deco7 {
    left: -8vw;
  }
  .contact__inner .deco8 {
    right: -4vw;
  }
  .contact__block__input {
    gap: 16px 32px;
  }
}
@media (max-width: 767px) {
  .contact__inner h2 {
    font-size: 24px;
  }
  .contact__inner h2 span span {
    background: linear-gradient(0deg, rgba(191, 97, 101, 0.6) 0%, rgba(191, 97, 101, 0.6) 4px, transparent 4px, transparent 100%);
  }
  .contact__inner h2 span.flex {
    background: none;
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  .contact__inner h2 span.none {
    display: none;
  }
  .contact__inner .deco6 {
    width: 60px;
    top: 368px;
  }
  .contact__inner .deco7 {
    width: 5vw;
    left: -6vw;
  }
  .contact__inner .deco8 {
    width: 8vw;
    right: -5vw;
  }
  .contact__inner .deco9 {
    width: 67px;
    height: 35px;
    left: -8px;
    bottom: -8px;
  }
  .contact__flow {
    margin-top: 40px;
  }
  .contact__flow p {
    font-size: 14px;
    width: 294px;
    max-width: 73vw;
    margin-left: auto;
    margin-right: auto;
  }
  .contact__block {
    flex-direction: column;
    gap: 12px;
  }
  .contact__block__input {
    width: 100%;
    max-width: 100%;
    gap: 16px;
  }
  .contact__block label {
    padding-top: 0;
    font-weight: 500;
  }
  .contact__block__privacy {
    width: 100%;
    max-width: 100%;
  }
  .contact__block__privacy ol, .contact__block__privacy .flame {
    padding: 16px;
  }
  .contact__form, .contact form {
    gap: 24px;
  }
  .contact input[type=radio] + label,
  .contact input[type=checkbox] + label {
    min-width: calc(50% - 8px);
    gap: 8px;
  }
  .contact input[type=submit],
  .contact button[type=submit] {
    font-size: 16px;
    padding: 24px;
  }
  .contact.page__contact {
    padding-top: 60px;
  }
  .contact.page__contact .page__contact__title h1 {
    font-size: 24px;
  }
  .contact.page__contact .page__contact__title h2 {
    margin-top: 20px;
    font-size: 20px;
  }
  .contact.page__contact .page__contact__title p {
    margin-top: 12px;
    font-size: 12px;
  }
  .contact.page__contact .page__contact__box {
    padding: 40px 20px;
    gap: 16px;
  }
  .contact.page__contact .contact__block__submit {
    flex-direction: column-reverse;
  }
  .contact.page__contact form {
    margin-top: 24px;
  }
}

/* #endregion */
/* #region Slider */
.slider {
  margin-top: 100px;
  padding: 112px 0;
  position: relative;
  pointer-events: none;
}
.slider .text-swiper-container {
  width: 100%;
}
.slider .text-swiper-wrapper {
  transition-timing-function: linear;
}
.slider .text-swiper-slide {
  width: -moz-fit-content !important;
  width: fit-content !important;
}
.slider .text-swiper-slide p {
  width: -moz-fit-content;
  width: fit-content;
  font-size: 120px;
  font-weight: 700;
  font-family: "Inter";
  -webkit-text-stroke: 1px #000;
  -webkit-text-fill-color: transparent;
  white-space: nowrap;
}
@media (max-width: 767px) {
  .slider .text-swiper-slide p {
    font-size: 80px;
  }
}
.slider__img {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: -moz-fit-content;
  width: fit-content;
  z-index: 2;
}
@media (max-width: 767px) {
  .slider__img {
    max-height: 240px;
  }
  .slider__img img {
    max-height: 240px;
  }
}
@media (max-width: 767px) {
  .slider {
    padding: 60px 0;
  }
}

/* #endregion */
/* #region Thanks */
.thanks {
  width: 100%;
  min-height: 100vh;
  position: relative;
}
.thanks::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: #F2F2F2;
  -webkit-clip-path: polygon(0 20%, 100% 5%, 100% 95%, 0 80%);
          clip-path: polygon(0 20%, 100% 5%, 100% 95%, 0 80%);
}
.thanks__inner {
  position: relative;
  width: 100%;
  height: 100%;
  min-height: 100vh;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.thanks__inner h2 {
  margin-top: 48px;
  font-size: 32px;
}
.thanks__inner p {
  margin-top: 24px;
  font-size: 16px;
  font-weight: 400;
  line-height: 2;
  text-align: center;
}
.thanks__inner .btn {
  margin-top: 48px;
  width: 640px;
  max-width: 90%;
}
.thanks__inner .btn a {
  display: block;
  width: 100%;
  padding: 24px;
  background: linear-gradient(90deg, #000 0%, #000 50%, #fff 50%, #fff 100%);
  background-size: 200% 100%;
  background-position: right;
  transition: all 0.4s;
  font-size: 16px;
  color: #000;
  font-weight: 700;
  text-decoration: none;
  text-align: center;
  border: 1px solid #000;
}
.thanks__inner .btn a:hover {
  background-position: left;
  color: #fff;
  opacity: 1;
}
@media (max-width: 767px) {
  .thanks__inner {
    max-width: 90%;
    margin-left: auto;
    margin-right: auto;
  }
  .thanks__inner h1 {
    font-size: 1rem;
  }
  .thanks__inner h1 svg {
    max-width: 73vw;
    max-height: 15vw;
  }
  .thanks__inner h2 {
    margin-top: 32px;
    font-size: 20px;
  }
  .thanks__inner p {
    margin-top: 16px;
    font-size: 14px;
  }
  .thanks__inner .btn {
    margin-top: 40px;
  }
}

/* #endregion */
/* #region Scroll-hint */
@keyframes scroll-hint-appear {
  0% {
    transform: translateX(40px);
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  50%, 100% {
    transform: translateX(-40px);
    opacity: 0;
  }
}
.scroll-hint.is-right-scrollable {
  background: linear-gradient(270deg, rgba(0, 0, 0, 0.15) 0, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0));
}

.scroll-hint.is-right-scrollable.is-left-scrollable {
  background: linear-gradient(90deg, rgba(0, 0, 0, 0.15) 0, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0)), linear-gradient(270deg, rgba(0, 0, 0, 0.15) 0, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0));
}

.scroll-hint.is-left-scrollable {
  background: linear-gradient(90deg, rgba(0, 0, 0, 0.15) 0, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0));
}

.scroll-hint-icon {
  position: absolute;
  top: calc(50% - 25px);
  left: calc(50% - 60px);
  box-sizing: border-box;
  width: 120px;
  height: 80px;
  border-radius: 5px;
  transition: opacity 0.3s;
  opacity: 0;
  background: rgba(0, 0, 0, 0.7);
  text-align: center;
  padding: 20px 10px 10px 10px;
}

.scroll-hint-icon-wrap {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  max-height: 100%;
  pointer-events: none;
}

.scroll-hint-text {
  font-size: 10px;
  color: #FFF;
  margin-top: 5px;
}

.scroll-hint-icon-wrap.is-active .scroll-hint-icon {
  opacity: 0.8;
}

.scroll-hint-icon:before {
  display: inline-block;
  width: 40px;
  height: 40px;
  color: #FFF;
  vertical-align: middle;
  text-align: center;
  content: "";
  background-size: contain;
  background-position: center center;
  background-repeat: no-repeat;
  background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNS43NyIgaGVpZ2h0PSIzMC41MiIgdmlld0JveD0iMCAwIDI1Ljc3IDMwLjUyIj48dGl0bGU+44Ki44K744OD44OIIDM8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxwYXRoIGQ9Ik0yMS4zMywzMC41Mkg3Ljg1QTEuNTUsMS41NSwwLDAsMSw2LjMsMjlhMTIuNDYsMTIuNDYsMCwwLDAtLjYzLTQuNDIsMjUuMTYsMjUuMTYsMCwwLDAtNC4yNS01bC0uMDYtLjA2QTUsNSwwLDAsMSwwLDE1Ljg2YTMuNjQsMy42NCwwLDAsMSwxLjE3LTIuNjIsMy42MywzLjYzLDAsMCwxLDUuMTQuMDdWMy43N2EzLjc3LDMuNzcsMCwxLDEsNy41NCwwVjguMzNhMy4zNSwzLjM1LDAsMCwxLDEuMjYsMCwzLDMsMCwwLDEsMiwxLjIyLDMuNSwzLjUsMCwwLDEsMi0uMDYsMy4yMSwzLjIxLDAsMCwxLDIsMS41NCwzLjc0LDMuNzQsMCwwLDEsMywuNDdBNC4yMSw0LjIxLDAsMCwxLDI1Ljc0LDE1YzAsLjExLDAsLjI3LDAsLjQ2YTE5LjI2LDE5LjI2LDAsMCwxLS44NCw3Yy0uMTQuMzgtLjM2LjgxLS41NiwxLjIybC0uMTEuMjJjMCwuMDctLjA5LjE0LS4xNC4yMWE3LjEzLDcuMTMsMCwwLDAtMS4xNywyLjE3Yy0uMDYuNTYtLjA2LDIuMTUtLjA1LDIuNzFBMS41NSwxLjU1LDAsMCwxLDIxLjMzLDMwLjUyWk04LjYxLDI4LjIxaDEyYzAtLjcxLDAtMS43MS4wNy0yLjIzYTguNzQsOC43NCwwLDAsMSwxLjU5LTMuMjVsLjA2LS4xMmExMCwxMCwwLDAsMCwuNDYtMSwxNi44LDE2LjgsMCwwLDAsLjctNi4xMmMwLS4yMywwLS40MSwwLS41NGgwYTIsMiwwLDAsMC0uNjQtMS41MiwxLjMzLDEuMzMsMCwwLDAtMS41NS4wOCwxLjEzLDEuMTMsMCwwLDEtMS4xOC4yOCwxLjE1LDEuMTUsMCwwLDEtLjc4LS45NCwxLjI2LDEuMjYsMCwwLDAtLjc1LTEuMTEsMSwxLDAsMCwwLTEuMTEuMjhsLS4xLjFhMS4xNSwxLjE1LDAsMCwxLTEuMTkuMjksMS4xNiwxLjE2LDAsMCwxLS43OC0uOTVjLS4wOS0uNjgtLjIxLS43Ny0uNy0uODdhLjgyLjgyLDAsMCwwLTEsLjQ4LDEuMTYsMS4xNiwwLDAsMS0yLjE2LS41OFYzLjc3YTEuNDYsMS40NiwwLDEsMC0yLjkyLDB2Ny44NWwwLDQuMzNhMS4xNywxLjE3LDAsMCwxLS44MywxLjExLDEuMTUsMS4xNSwwLDAsMS0xLjItLjM1bC0xLS45MWMtLjQ3LS40Mi0uNzMtLjY2LS44NC0uNzdhMS4zNSwxLjM1LDAsMCwwLTItLjEyTDIuNywxNWExLjMyLDEuMzIsMCwwLDAtLjM5LDFBMi41NywyLjU3LDAsMCwwLDMsMTcuODVsMCwwYTI3LjI0LDI3LjI0LDAsMCwxLDQuNyw1LjYyQTEyLjYzLDEyLjYzLDAsMCwxLDguNjEsMjguMjFaTTIzLjIsMjMuMzVaTTYuNTEsMTYuNTlaIiBmaWxsPSIjZmZmIi8+PC9nPjwvZz48L3N2Zz4=);
}

.scroll-hint-icon:after {
  content: "";
  width: 34px;
  height: 14px;
  display: block;
  position: absolute;
  top: 10px;
  left: 50%;
  margin-left: -20px;
  background-repeat: no-repeat;
  background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMy4yOSIgaGVpZ2h0PSIxMi4wMiIgdmlld0JveD0iMCAwIDMzLjI5IDEyLjAyIj48dGl0bGU+44Ki44K744OD44OIIDE8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxsaW5lIHgxPSIxLjg1IiB5MT0iNi4wMSIgeDI9IjEwLjQiIHkyPSI2LjAxIiBmaWxsPSIjZmZmIi8+PHBhdGggZD0iTTEwLjQsNy4xN0gxLjg1YTEuMTYsMS4xNiwwLDEsMSwwLTIuMzFIMTAuNGExLjE2LDEuMTYsMCwxLDEsMCwyLjMxWiIgZmlsbD0iI2ZmZiIvPjxwYXRoIGQ9Ik03LjQsMTJhMS4xNSwxLjE1LDAsMCwxLS43Mi0uMjVsLTYuMjUtNUExLjIsMS4yLDAsMCwxLDAsNS44NywxLjE0LDEuMTQsMCwwLDEsLjQ2LDVMNi43LjIzQTEuMTYsMS4xNiwwLDAsMSw4LjEsMi4wOEwzLDUuOTEsOC4xMiwxMEExLjE2LDEuMTYsMCwwLDEsNy40LDEyWiIgZmlsbD0iI2ZmZiIvPjxsaW5lIHgxPSIzMS40NSIgeTE9IjYuMDEiIHgyPSIyMi44OSIgeTI9IjYuMDEiIGZpbGw9IiNmZmYiLz48cGF0aCBkPSJNMzEuNDUsNy4xN0gyMi44OWExLjE2LDEuMTYsMCwxLDEsMC0yLjMxaDguNTZhMS4xNiwxLjE2LDAsMCwxLDAsMi4zMVoiIGZpbGw9IiNmZmYiLz48cGF0aCBkPSJNMjUuOSwxMmExLjE4LDEuMTgsMCwwLDEtLjkxLS40M0ExLjE3LDEuMTcsMCwwLDEsMjUuMTcsMTBsNS4wOS00LjA1TDI1LjIsMi4wOEExLjE2LDEuMTYsMCwwLDEsMjYuNTkuMjNMMzIuODQsNWExLjE2LDEuMTYsMCwwLDEsLjQ1LjkxLDEuMTQsMS4xNCwwLDAsMS0uNDMuOTJsLTYuMjQsNUExLjE3LDEuMTcsMCwwLDEsMjUuOSwxMloiIGZpbGw9IiNmZmYiLz48L2c+PC9nPjwvc3ZnPg==);
  opacity: 0;
  transition-delay: 2.4s;
}

.scroll-hint-icon-wrap.is-active .scroll-hint-icon:after {
  opacity: 1;
}

.scroll-hint-icon-wrap.is-active .scroll-hint-icon:before {
  animation: scroll-hint-appear 1.2s linear;
  animation-iteration-count: 2;
}

.scroll-hint-icon-white {
  background-color: #FFF;
  box-shadow: 0 4px 5px rgba(0, 0, 0, 0.4);
}

.scroll-hint-icon-white:before {
  background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNS43NyIgaGVpZ2h0PSIzMC41MiIgdmlld0JveD0iMCAwIDI1Ljc3IDMwLjUyIj48dGl0bGU+44Ki44K744OD44OIIDQ8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxwYXRoIGQ9Ik0yMS4zMywzMC41Mkg3Ljg1QTEuNTUsMS41NSwwLDAsMSw2LjMsMjlhMTIuNDYsMTIuNDYsMCwwLDAtLjYzLTQuNDIsMjUuMTYsMjUuMTYsMCwwLDAtNC4yNS01bC0uMDYtLjA2QTUsNSwwLDAsMSwwLDE1Ljg2YTMuNjQsMy42NCwwLDAsMSwxLjE3LTIuNjIsMy42MywzLjYzLDAsMCwxLDUuMTQuMDdWMy43N2EzLjc3LDMuNzcsMCwxLDEsNy41NCwwVjguMzNhMy4zNSwzLjM1LDAsMCwxLDEuMjYsMCwzLDMsMCwwLDEsMiwxLjIyLDMuNSwzLjUsMCwwLDEsMi0uMDYsMy4yMSwzLjIxLDAsMCwxLDIsMS41NCwzLjc0LDMuNzQsMCwwLDEsMywuNDdBNC4yMSw0LjIxLDAsMCwxLDI1Ljc0LDE1YzAsLjExLDAsLjI3LDAsLjQ2YTE5LjI2LDE5LjI2LDAsMCwxLS44NCw3Yy0uMTQuMzgtLjM2LjgxLS41NiwxLjIybC0uMTEuMjJjMCwuMDctLjA5LjE0LS4xNC4yMWE3LjEzLDcuMTMsMCwwLDAtMS4xNywyLjE3Yy0uMDYuNTYtLjA2LDIuMTUtLjA1LDIuNzFBMS41NSwxLjU1LDAsMCwxLDIxLjMzLDMwLjUyWk04LjYxLDI4LjIxaDEyYzAtLjcxLDAtMS43MS4wNy0yLjIzYTguNzQsOC43NCwwLDAsMSwxLjU5LTMuMjVsLjA2LS4xMmExMCwxMCwwLDAsMCwuNDYtMSwxNi44LDE2LjgsMCwwLDAsLjctNi4xMmMwLS4yMywwLS40MSwwLS41NGgwYTIsMiwwLDAsMC0uNjQtMS41MiwxLjMzLDEuMzMsMCwwLDAtMS41NS4wOCwxLjEzLDEuMTMsMCwwLDEtMS4xOC4yOCwxLjE1LDEuMTUsMCwwLDEtLjc4LS45NCwxLjI2LDEuMjYsMCwwLDAtLjc1LTEuMTEsMSwxLDAsMCwwLTEuMTEuMjhsLS4xLjFhMS4xNSwxLjE1LDAsMCwxLTEuMTkuMjksMS4xNiwxLjE2LDAsMCwxLS43OC0uOTVjLS4wOS0uNjgtLjIxLS43Ny0uNy0uODdhLjgyLjgyLDAsMCwwLTEsLjQ4LDEuMTYsMS4xNiwwLDAsMS0yLjE2LS41OFYzLjc3YTEuNDYsMS40NiwwLDEsMC0yLjkyLDB2Ny44NWwwLDQuMzNhMS4xNywxLjE3LDAsMCwxLS44MywxLjExLDEuMTUsMS4xNSwwLDAsMS0xLjItLjM1bC0xLS45MWMtLjQ3LS40Mi0uNzMtLjY2LS44NC0uNzdhMS4zNSwxLjM1LDAsMCwwLTItLjEyTDIuNywxNWExLjMyLDEuMzIsMCwwLDAtLjM5LDFBMi41NywyLjU3LDAsMCwwLDMsMTcuODVsMCwwYTI3LjI0LDI3LjI0LDAsMCwxLDQuNyw1LjYyQTEyLjYzLDEyLjYzLDAsMCwxLDguNjEsMjguMjFaTTIzLjIsMjMuMzVaTTYuNTEsMTYuNTlaIi8+PC9nPjwvZz48L3N2Zz4=);
}

.scroll-hint-icon-white:after {
  background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMy4yOSIgaGVpZ2h0PSIxMi4wMiIgdmlld0JveD0iMCAwIDMzLjI5IDEyLjAyIj48dGl0bGU+44Ki44K744OD44OIIDI8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxsaW5lIHgxPSIxLjg1IiB5MT0iNi4wMSIgeDI9IjEwLjQiIHkyPSI2LjAxIi8+PHBhdGggZD0iTTEwLjQsNy4xN0gxLjg1YTEuMTYsMS4xNiwwLDEsMSwwLTIuMzFIMTAuNGExLjE2LDEuMTYsMCwxLDEsMCwyLjMxWiIvPjxwYXRoIGQ9Ik03LjQsMTJhMS4xNSwxLjE1LDAsMCwxLS43Mi0uMjVsLTYuMjUtNUExLjIsMS4yLDAsMCwxLDAsNS44NywxLjE0LDEuMTQsMCwwLDEsLjQ2LDVMNi43LjIzQTEuMTYsMS4xNiwwLDAsMSw4LjEsMi4wOEwzLDUuOTEsOC4xMiwxMEExLjE2LDEuMTYsMCwwLDEsNy40LDEyWiIvPjxsaW5lIHgxPSIzMS40NSIgeTE9IjYuMDEiIHgyPSIyMi44OSIgeTI9IjYuMDEiLz48cGF0aCBkPSJNMzEuNDUsNy4xN0gyMi44OWExLjE2LDEuMTYsMCwxLDEsMC0yLjMxaDguNTZhMS4xNiwxLjE2LDAsMCwxLDAsMi4zMVoiLz48cGF0aCBkPSJNMjUuOSwxMmExLjE4LDEuMTgsMCwwLDEtLjkxLS40M0ExLjE3LDEuMTcsMCwwLDEsMjUuMTcsMTBsNS4wOS00LjA1TDI1LjIsMi4wOEExLjE2LDEuMTYsMCwwLDEsMjYuNTkuMjNMMzIuODQsNWExLjE2LDEuMTYsMCwwLDEsLjQ1LjkxLDEuMTQsMS4xNCwwLDAsMS0uNDMuOTJsLTYuMjQsNUExLjE3LDEuMTcsMCwwLDEsMjUuOSwxMloiLz48L2c+PC9nPjwvc3ZnPg==);
}

.scroll-hint-icon-white .scroll-hint-text {
  color: #000;
}

/* #endregion *//*# sourceMappingURL=top.css.map */