.service-page {
  max-width: 106rem;
  margin: 0 auto;
  gap: var(--spacing-12);
}
.service-page h1 {
  font-size: var(--typography-Heading2-B-40-font-size);
  font-weight: var(--typography-Heading2-B-40-font-weight);
  line-height: var(--typography-Heading2-B-40-line-height);
  letter-spacing: var(--typography-Heading2-B-40-letter-spacing);
}
.service-page h2 {
  font-size: var(--typography-Heading4-B-32-font-size);
  font-weight: var(--typography-Heading4-B-32-font-weight);
  line-height: var(--typography-Heading4-B-32-line-height);
  letter-spacing: var(--typography-Heading4-B-32-letter-spacing);
}
.service-page h3 {
  font-size: var(--typography-Heading6-B-24-font-size);
  font-weight: var(--typography-Heading6-B-24-font-weight);
  line-height: var(--typography-Heading6-B-24-line-height);
  letter-spacing: var(--typography-Heading6-B-24-letter-spacing);
}
.service-page h4 {
  font-size: var(--typography-Heading5-SB-24-font-size);
  font-weight: var(--typography-Heading5-SB-24-font-weight);
  line-height: var(--typography-Heading5-SB-24-line-height);
  letter-spacing: var(--typography-Heading5-SB-24-letter-spacing);
}
.service-page p {
  font-size: var(--typography-Body1-R-18-font-size);
  font-weight: var(--typography-Body1-R-18-font-weight);
  line-height: var(--typography-Body1-R-18-line-height);
  letter-spacing: var(--typography-Body1-R-18-letter-spacing);
  color: var(--gray-700);
}
.service-page .s-visual {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-48);
  padding-top: 6.4rem;
}
.service-page .s-visual .txt {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: var(--spacing-12);
}
.service-page .s-visual .txt p {
  text-align: center;
}
.service-page .s-visual .s-video {
  width: 100%;
  overflow: hidden;
  max-height: 59.6rem;
}
.service-page .s-visual .s-video video {
  width: 100%;
  height: 100%;
}
.service-page .service-info {
  padding-top: 12rem;
  display: flex;
  flex-direction: column;
  gap: var(--spacing-40);
}
.service-page .service-info ul {
  display: flex;
  gap: var(--spacing-24);
}
.service-page .service-info ul li {
  width: calc((100% - 48px) / 3);
  aspect-ratio: 1/1;
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  gap: var(--spacing-12);
  background-color: var(--gray-50);
  padding: var(--spacing-24);
  box-sizing: border-box;
  justify-content: space-between;
}
.service-page .service-info ul li img {
  max-height: 8.6rem;
  object-fit: contain;
}
.service-page .service-main {
  padding-top: 12rem;
  display: flex;
  flex-direction: column;
  gap: var(--spacing-60);
}
.service-page .service-main .s-main-list {
  display: flex;
  flex-direction: column;
  gap: 12rem;
}
.service-page .service-main .s-main-list li {
  display: flex;
  gap: 9.7rem;
  flex-wrap: wrap;
}
.service-page .service-main .s-main-list li .left {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-12);
  flex: 1 0 calc(50% - 4.85rem);
}
.service-page .service-main .s-main-list li .left .top {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-6);
}
.service-page .service-main .s-main-list li .left .teal-txt {
  font-size: var(--typography-Body2-B-16-font-size);
  font-weight: var(--typography-Body2-B-16-font-weight);
  line-height: var(--typography-Body2-B-16-line-height);
  letter-spacing: var(--typography-Body2-B-16-letter-spacing);
}
.service-page .service-main .s-main-list li .left a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--spacing-8);
  font-size: var(--typography-Body1-M-18-font-size);
  font-weight: var(--typography-Body1-M-18-font-weight);
  line-height: var(--typography-Body1-M-18-line-height);
  letter-spacing: var(--typography-Body1-M-18-letter-spacing);
  color: var(--teal-500);
  border-radius: var(--radius-full);
  padding: var(--spacing-12) var(--spacing-16);
  box-sizing: border-box;
  border: 1px solid var(--teal-500);
  max-width: 24rem;
  margin-top: 1.6rem;
  transition: all 0.3s;
  height: 4.8rem;
}
.service-page .service-main .s-main-list li .left a img {
  width: 1.2rem;
}
.service-page .service-main .s-main-list li .left a:hover {
  background-color: var(--teal-50);
}
.service-page .service-main .s-main-list li .left a:active {
  background-color: var(--teal-100);
}
.service-page .service-main .s-main-list li .right {
  flex: 1 0 calc(50% - 4.85rem);
  aspect-ratio: 1.73/1;
  min-width: 34rem;
}
.service-page .service-main .s-main-list li .right img {
  width: 100%;
  height: 100%;
  border-radius: var(--radius-md-8);
  object-fit: cover;
}
.service-page .bg-img {
  margin-top: 12rem;
  position: relative;
  left: 50%;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
  width: 100vw;
  max-width: 100vw;
  transform: none;
  overflow: hidden;
  height: 62rem;
}
.service-page .bg-img h2 {
  position: absolute;
  top: 8rem;
  z-index: 1;
  left: 50%;
  transform: translateX(-50%);
  text-align: center;
  width: 100%;
}
.service-page .bg-img .img-box {
  overflow: hidden;
  width: 100%;
  height: 100%;
}
.service-page .bg-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/*# sourceMappingURL=service.css.map */
