@charset "UTF-8";
.flex-box {
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem;
}
.flex-box .wd-half {
  width: calc(50% - 0.4rem);
}
.flex-box.nowrap {
  flex-wrap: nowrap;
}
.flex-box.grow {
  flex-grow: 1;
}
.flex-box.column {
  flex-direction: column;
}
.flex-box.center {
  justify-content: center;
}
.flex-box.between {
  justify-content: space-between;
}
.flex-box.right {
  justify-content: flex-end;
}
.flex-box.a-start {
  align-items: flex-start;
}
.flex-box.a-center {
  align-items: center;
}
.flex-box.a-end {
  align-items: flex-end;
}
.flex-box.gap4 {
  gap: 0.4rem;
}
.flex-box.gap12 {
  gap: 1.2rem;
}
.flex-box.gap20 {
  gap: 2rem;
}
.flex-box.gap24 {
  gap: 2.4rem;
}
.flex-box.gap40 {
  gap: 4rem;
}

#wrap {
  overflow: hidden;
  padding-top: 8.2rem;
}

#header {
  background: #fff;
  box-shadow: 0 4px 20px 0 rgba(152, 169, 181, 0.1);
}

#contents {
  position: relative;
  padding: 8rem 0 10rem;
}
#contents.bg-obj::before {
  position: absolute;
  top: -10rem;
  left: 0;
  z-index: -1;
  width: 58.4rem;
  height: 137.4rem;
  background: url(/html/images/contents/sub_obj01.png) no-repeat center left / contain;
  content: "";
}
#contents.bg-obj::after {
  position: absolute;
  top: 20rem;
  right: 0;
  z-index: -1;
  width: 61.4rem;
  height: 150.6rem;
  background: url(/html/images/contents/sub_obj02.png) no-repeat center right / contain;
  content: "";
}

@media (max-width: 768px) {
  #contents.bg-obj::before,
  #contents.bg-obj::after {
    width: 40rem;
  }

  #contents.bg-obj::before {
    top: -25rem;
  }
  #contents.bg-obj::after {
    top: 0;
  }
}
.con__top {
  margin-bottom: 6rem;
  text-align: center;
}
.con__title {
  font-size: 4.8rem;
  font-weight: 700;
  line-height: 1.25;
}
.con__title-sub {
  font-size: 4rem;
  font-weight: 700;
  line-height: 1.25;
  text-align: center;
}
.con__desc {
  margin-top: 3.2rem;
  font-size: 2rem;
  font-weight: 500;
  color: #616161;
  line-height: 1.5;
}
.con__desc-sub {
  margin-top: 2.4rem;
  font-size: 2rem;
  font-weight: 500;
  color: #616161;
  line-height: 1.5;
  text-align: center;
}

.blog__cate {
  display: inline-block;
  padding: 0.4rem 0.6rem;
  border-radius: 0.4rem;
  background: #e6f5ff;
  background-color: #e6f5ff;
  font-size: 1.6rem;
  font-weight: 500;
  color: #0d88df;
  line-height: 1.4;
}
.blog__cate.cate02 {
  background-color: #e4faf2;
  color: #00a15b;
}
.blog__date {
  display: inline-block;
  position: relative;
  padding-left: 2.1rem;
  font-size: 1.6rem;
  color: #9e9e9e;
  line-height: 1.4;
}
.blog__date::before {
  position: absolute;
  top: -1px;
  left: 0;
  font-family: "remixicon";
  content: "\f20f";
}
.blog__top {
  position: relative;
}
.blog__top::before {
  position: absolute;
  top: -8.2rem;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
  width: 100vw;
  height: 74rem;
  background: linear-gradient(180deg, #fff 0%, #e4f3ff 85.1%, #fff 100%);
  content: "";
}
.blog__main {
  display: flex;
  overflow: hidden;
  margin-bottom: 8rem;
  border-radius: 2rem;
  background: #fff;
}
.blog__main:hover .blog__main-thumb img {
  transform: scale(1.14);
}
.blog__main:hover .blog__main-title {
  text-decoration: underline;
  text-underline-offset: 4px;
}
.blog__main-thumb {
  flex-grow: 1;
  max-width: 65rem;
  overflow: hidden;
  border-radius: 2rem;
  aspect-ratio: 13/8;
}
.blog__main-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s;
}
.blog__main-con {
  display: flex;
  flex-direction: column;
  flex-shrink: 0;
  max-width: 50%;
  width: 55rem;
  padding: 5rem 4rem 5rem 6rem;
  gap: 3.2rem;
}
.blog__main-title {
  display: -webkit-box;
  overflow: hidden;
  margin: 1.6rem 0 2.4rem;
  text-overflow: ellipsis;
  font-size: 3.2rem;
  font-weight: 700;
  color: #222;
  line-height: 1.3;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.blog__main-desc {
  display: -webkit-box;
  overflow: hidden;
  text-overflow: ellipsis;
  font-size: 1.8rem;
  color: #616161;
  line-height: 1.4;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.blog__main-date {
  margin-top: auto;
}
.blog__tab {
  display: flex;
  justify-content: center;
  margin-bottom: 4rem;
  gap: 0.8rem;
}
.blog__tab-btn {
  padding: 0.8rem 2.4rem;
  border-radius: 5rem;
  background: #e8edf5;
  font-size: 1.6rem;
  font-weight: 500;
  color: #616161;
  line-height: 1.4;
  transition: 0.24s;
}
.blog__tab-btn:hover,
.blog__tab-btn.active {
  background-color: #0095ff;
  color: #fff;
}
.blog__list {
  display: flex;
  flex-wrap: wrap;
  gap: 4rem 3.2rem;
}
.blog__item {
  display: flex;
  flex-direction: column;
  width: calc(33.3333333333% - 2.2rem);
  gap: 2.4rem;
}
.blog__item:hover .blog__title {
  text-decoration: underline;
  text-underline-offset: 4px;
}
.blog__thumb {
  width: 100%;
  overflow: hidden;
  border-radius: 2rem;
  background: #dadada;
  aspect-ratio: 19/12;
}
.blog__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.blog__con {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
}
.blog__title {
  display: -webkit-box;
  overflow: hidden;
  text-overflow: ellipsis;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.3;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.blog__desc {
  overflow: hidden;
  margin-top: 0.8rem;
  margin-bottom: 2.4rem;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 1.8rem;
  color: #616161;
  line-height: 1.4;
}
.blog__info {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  margin-top: auto;
  gap: 0.8rem 1.6rem;
}
.blog__view-top {
  position: relative;
  padding-bottom: 4rem;
  text-align: center;
}
.blog__view-top::before {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background: linear-gradient(90deg, rgb(255, 255, 255) 0%, rgb(222, 222, 222) 15%, rgb(158, 158, 158) 50%, rgb(222, 222, 222) 85%, rgb(255, 255, 255) 100%);
  content: "";
}
.blog__view-title {
  font-size: 4rem;
  font-weight: 700;
  line-height: 1.3;
}
.blog__view-desc {
  margin-top: 1.6rem;
  font-size: 2rem;
  color: #616161;
  line-height: 1.4;
}
.blog__view-info {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 2.4rem;
  gap: 1.6rem;
}
.blog__view-con {
  max-width: 90rem;
  padding: 6rem 0;
  margin: 0 auto;
  font-size: 1.8rem;
  line-height: 1.4;
}
.blog__view-con img {
  max-width: 100% !important;
}
.blog__view-btn {
  position: relative;
  padding-top: 4rem;
  text-align: center;
}
.blog__view-btn::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background: linear-gradient(90deg, rgb(255, 255, 255) 0%, rgb(222, 222, 222) 15%, rgb(158, 158, 158) 50%, rgb(222, 222, 222) 85%, rgb(255, 255, 255) 100%);
  content: "";
}
.blog__tag {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  margin-top: 4rem;
  gap: 0.8rem;
}
.blog__tag-item {
  display: inline-block;
  padding: 0.8rem 2rem;
  border: 1px solid #e0e0e0;
  border-radius: 5rem;
  font-size: 1.6rem;
  color: #616161;
  line-height: 1.4;
}
.blog__contents {
  margin-top: 10rem;
}
.blog__contents-title {
  margin-bottom: 4.8rem;
  font-size: 4rem;
  font-weight: 700;
}
.blog__contents-con {
  position: relative;
}
.blog__contents-btn {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 1;
}
.blog__contents-btn--prev {
  left: -8.4rem;
}
.blog__contents-btn--next {
  right: -8.4rem;
}
.blog__paging {
  display: none;
  justify-content: center;
  margin-top: 3.2rem;
}
.blog__paging .swiper-pagination-bullet {
  transition: 0.24s;
}
.blog__paging .swiper-pagination-bullet-active {
  background-color: #0095ff;
}

@media (max-width: 1400px) {
  .blog__contents-con {
    margin: 0 6rem;
  }
  .blog__contents-con .slide-btn {
    width: 5rem;
    height: 5rem;
    font-size: 3rem;
  }
  .blog__contents-con .blog__contents-btn--prev {
    left: -7rem;
  }
  .blog__contents-con .blog__contents-btn--next {
    right: -7rem;
  }
}
@media (max-width: 540px) {
  .blog__contents-con {
    position: relative;
    padding-top: 4rem;
    margin: 0;
  }
  .blog__contents-con::before {
    position: absolute;
    top: 0;
    left: 0;
    font-size: 1.8rem;
    color: #0095ff;
    line-height: 1.4;
    content: "옆으로 밀어서 더 많은 게시글을 확인하세요.";
  }
  .blog__contents-con .slide-btn {
    display: none;
  }
  .blog__paging {
    display: flex;
  }
}
.paging__list {
  display: flex;
  justify-content: center;
  margin-top: 6rem;
  gap: 0.4rem;
}
.paging__btn {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 4.6rem;
  height: 4.6rem;
  border: 1px solid #e0e0e0;
  border-radius: 50%;
  background: #fff;
  font-size: 1.4rem;
  font-weight: 500;
  color: #424242;
  transition: 0.24s;
}
.paging__btn:hover {
  background-color: #e8edf5;
  color: #616161;
}
.paging__btn.active {
  background-color: #222;
  color: #fff;
  border-color: #222;
}
.paging__btn i {
  font-size: 1.8rem;
  font-weight: 400;
}
.paging__num {
  display: flex;
  justify-content: center;
  margin: 0 0.8rem;
  gap: 0.4rem;
}

@media (max-width: 768px) {
  .blog__main-con {
    padding: 4rem;
  }
  .blog__item {
    width: calc(50% - 1.6rem);
  }
  .blog__view-top::before,
  .blog__view-btn::before {
    background: linear-gradient(90deg, rgb(255, 255, 255) 0%, rgb(222, 222, 222) 5%, rgb(158, 158, 158) 50%, rgb(222, 222, 222) 95%, rgb(255, 255, 255) 100%);
  }
}
@media (max-width: 680px) {
  .blog__top::before {
    height: 104rem;
  }
  .blog__main {
    flex-direction: column;
    border: 1px solid #e0e0e0;
  }
  .blog__main-thumb,
  .blog__main-con {
    max-width: 100%;
    width: 100%;
  }
}
@media (max-width: 480px) {
  .blog__main-con {
    padding: 3.4rem 3rem;
  }
  .blog__item {
    width: 100%;
  }
  .blog__view-top::before,
  .blog__view-btn::before {
    background: #9e9e9e;
  }
  .blog__view-title {
    font-size: 3.6rem;
  }
}
@media (max-width: 420px) {
  .blog__top::before {
    height: 96rem;
  }
  .paging__btn--prev,
  .paging__btn--next {
    display: none;
  }
}
.form__wrap {
  max-width: 100rem;
  margin: 0 auto;
}
.form__con + .form__con {
  margin-top: 7.2rem;
}
.form__title {
  margin-bottom: 2.4rem;
  font-size: 2.4rem;
  font-weight: 500;
  line-height: 1.4;
}
.form__title span {
  margin-right: 0.4rem;
  color: #0095ff;
}
.form__title-sub {
  margin-bottom: 1.6rem;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.4;
}
.form__border {
  max-height: 30rem;
  overflow: auto;
  padding: 2.4rem 4rem;
  border: 1px solid #ddd;
  border-radius: 1.2rem;
  font-size: 1.8rem;
  color: #6c757d;
  line-height: 1.5;
}
.form__border + .form__consent {
  margin-top: 2.8rem;
}
.form__list {
  display: flex;
  flex-wrap: wrap;
  gap: 1.2rem;
}
.form__item {
  display: flex;
  flex-direction: column;
  width: calc(33.3333333333% - 0.8rem);
  gap: 0.4rem;
}
.form__item.full {
  width: 100%;
}
.form__item label {
  font-size: 1.8rem;
  font-weight: 500;
  color: #495057;
  line-height: 1.5;
}
.form__item input {
  height: 5.4rem;
  padding: 1.4rem 2rem;
  padding: 0.8rem 2rem;
  border: 1px solid #dee2e6;
  border: 1px solid #dee2e6;
  border-radius: 0.8rem;
  border-radius: 0.8rem;
  font-size: 1.8rem;
  color: #222;
  transition: border-color 0.24s;
}
.form__item input:focus {
  outline: none;
  border-color: #0095ff;
}
.form__item input::placeholder {
  color: #6c757d;
}
.form__item textarea {
  width: 100%;
  height: 23rem;
  padding: 1.6rem 2rem;
  border: 1px solid #dee2e6;
  border-radius: 1.2rem;
  font-size: 1.8rem;
  line-height: 1.5;
  transition: border-color 0.24s;
  resize: none;
}
.form__item textarea:focus {
  outline: none;
  border-color: #0095ff;
}
.form__item textarea::placeholder {
  color: #6c757d;
}

.dot-list {
  display: flex;
  flex-direction: column;
}
.dot-list > li {
  position: relative;
  padding-left: 1.4rem;
}
.dot-list > li::before {
  position: absolute;
  top: 1rem;
  left: 0;
  width: 0.5rem;
  height: 0.5rem;
  border-radius: 50%;
  background-color: #6c757d;
  content: "";
}
.dot-list.white > li::before {
  width: 0.6rem;
  height: 0.6rem;
  border: 1px solid #a1a1a1;
  background-color: #fff;
}

.check__wrap {
  text-align: left;
}
.check__wrap input[type="checkbox"] {
  position: absolute;
  opacity: 0;
  width: auto;
  height: auto;
}
.check__wrap input[type="checkbox"] + label {
  display: block;
  position: relative;
  padding: 1.4rem 2rem;
  padding-left: 4.6rem;
  border: 1px solid #dee2e6;
  border-radius: 1.2rem;
  font-size: 1.8rem;
  line-height: 1.4;
}
.check__wrap input[type="checkbox"] + label::before {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 1.7rem;
  left: 2rem;
  width: 1.8rem;
  height: 1.8rem;
  border: 1px solid #6c757d;
  border-radius: 50%;
  background-color: #fff;
  transition: 0.24s;
  content: "";
}
.check__wrap input[type="checkbox"] + label::after {
  position: absolute;
  top: -1px;
  left: -1px;
  opacity: 0;
  width: calc(100% + 2px);
  height: calc(100% + 2px);
  border: 2px solid #0095ff;
  border-radius: 1.2rem;
  transition: 0.24s;
  content: "";
}
.check__wrap input[type="checkbox"]:checked + label::before {
  border: 1px solid #0095ff;
  background-color: #0095ff;
  font-family: "remixicon";
  font-size: 1.5rem;
  color: #fff;
  content: "\eb7a";
}
.check__wrap input[type="checkbox"]:checked + label::after {
  opacity: 1;
}
.check__wrap input[type="checkbox"]:disabled + label::before {
  border: 1px solid #ddd;
  background-color: #ddd;
  color: #999;
}

@media (max-width: 640px) {
  .form__item {
    width: 100%;
  }
}
.form__list.radio {
  flex-wrap: wrap;
  gap: 1.2rem 4rem;
}

.radio__wrap {
  text-align: left;
}
.radio__wrap input[type="radio"] {
  position: absolute;
  opacity: 0;
  width: auto;
  height: auto;
}
.radio__wrap input[type="radio"] + label {
  position: relative;
  padding-left: 2.6rem;
  font-size: 1.8rem;
  line-height: 1.4;
}
.radio__wrap input[type="radio"] + label::before {
  display: inline-block;
  position: absolute;
  top: 0.2rem;
  left: 0;
  width: 2rem;
  height: 2rem;
  border: 1px solid #6c757d;
  border-radius: 50%;
  background-color: #fff;
  content: "";
}
.radio__wrap input[type="radio"] + label::after {
  display: inline-block;
  position: absolute;
  top: 0.7rem;
  left: 0.5rem;
  opacity: 0;
  width: 1rem;
  height: 1rem;
  border-radius: 50%;
  background-color: #0095ff;
  transition: 0.14s;
  content: "";
}
.radio__wrap input[type="radio"]:checked + label::after {
  opacity: 1;
}
.radio__wrap input[type="radio"]:disabled + label::before {
  background-color: #ddd;
}
.radio__wrap input[type="radio"]:disabled + label::after {
  background-color: #999;
}

.inquiry-finish {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 30rem;
  padding: 4rem 2.4rem;
  border: 1px solid rgba(219, 219, 219, 0.5);
  border-radius: 2rem;
  background: #fff;
  box-shadow: 10px 10px 20px 0 rgba(59, 117, 158, 0.04);
  gap: 3rem 6rem;
}
.inquiry-finish__icon {
  flex-shrink: 0;
  width: 12rem;
  height: 12rem;
}
.inquiry-finish__desc {
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.6;
}

@media (max-width: 640px) {
  .inquiry-finish {
    flex-direction: column;
    text-align: center;
  }
}
.price__wrap {
  position: relative;
  padding: 6rem 0 10rem;
}
.price__wrap::before {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
  width: calc(100vw - 16rem);
  height: 100%;
  border-radius: 5rem;
  background: #f5f9ff;
  content: "";
}
.price__btn {
  position: relative;
  padding: 1rem 2.4rem;
  border-radius: 3rem;
  font-size: 1.8rem;
  font-weight: 600;
  color: #616161;
  line-height: 1;
  transition: 0.24s;
}
.price__btn.active {
  background-color: #222;
  color: #fff;
}
.price__btn.active span {
  background: url("/html/images/contents/price_btn-active.svg") no-repeat center center/contain;
}
.price__btn-wrap {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  padding: 0.6rem;
  margin: 3.2rem 0 4.8rem;
  border: 1px solid #9e9e9e;
  border-radius: 50rem;
}
.price__btn span {
  position: absolute;
  top: 1.6rem;
  right: 1.4rem;
  transform: translate(100%, -100%);
  width: 9rem;
  height: 4rem;
  padding-top: 0.5rem;
  background: url("/html/images/contents/price_btn.svg") no-repeat center center/contain;
  font-size: 1.4rem;
  font-weight: 500;
  color: #fff;
  line-height: 1.5;
  transition: 0.24s;
}
.price__tab {
  display: flex;
  flex-direction: column;
  flex: 1 0 0;
  position: relative;
  max-width: 38rem;
  padding: 4rem 3.2rem;
  border-radius: 2rem;
  background: #fff;
  box-shadow: 5px 5px 20px 0 rgba(145, 193, 229, 0.2);
}
.price__tab::before {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  width: 100%;
  height: 100%;
  border: 2px solid #0095ff;
  border-radius: 2rem;
  pointer-events: none;
  transition: 0.3s;
  content: "";
}
.price__tab:hover::before {
  opacity: 1;
}
.price__tab:hover .price__tab-btn {
  background-color: #0095ff;
  color: #fff;
}
.price__tab-sub {
  margin-bottom: 0.8rem;
  font-size: 1.4rem;
  font-weight: 500;
  color: #616161;
}
.price__tab-list {
  padding-left: 1rem;
}
.price__tab-item {
  color: #616161;
}
.price__tab-item.plus {
  color: #9e9e9e;
}
.price__tab-item.plus::before {
  left: 0.1rem;
  font-family: "Pretendard";
  font-size: 2.4rem;
  line-height: 1;
  content: "+";
}
.price__tab-wrap {
  display: none;
  margin-bottom: 3.2rem;
  gap: 3.2rem;
}
.price__tab-wrap.active {
  display: flex;
  justify-content: center;
}
.price__tab-title {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  position: relative;
  font-size: 3.2rem;
  font-weight: 700;
  color: #000;
  gap: 1.2rem 2rem;
}
.price__tab-title.change {
  justify-content: center;
  margin-bottom: 1.6rem;
}
.price__tab-feature {
  display: inline-block;
  padding: 0.8rem 1.6rem;
  border: 1px solid #0095ff;
  border-radius: 50rem;
  font-size: 1.4rem;
  font-weight: 500;
  color: #0095ff;
}
.price__tab-desc {
  margin-top: 1.4rem;
  font-size: 2rem;
  color: #424242;
  line-height: 1.4;
}
.price__tab-desc span {
  font-size: 1.8rem;
  color: #757575;
}
.price__tab-con {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  padding-top: 1.6rem;
  margin-top: 2.4rem;
  border-top: 1px solid #eee;
  gap: 3.2rem;
}
.price__tab-current {
  font-size: 4rem;
  font-weight: 700;
  color: #0095ff;
}
.price__tab-price {
  display: flex;
  align-items: center;
  margin-top: 0.8rem;
  font-size: 2.4rem;
  font-weight: 700;
  color: #616161;
  gap: 0.2rem;
}
.price__tab-sale {
  display: inline-block;
  padding: 0.4rem 0.8rem;
  border-radius: 50rem;
  background: #f5f5f5;
  font-size: 1.5rem;
  font-weight: 500;
  color: #0095ff;
  line-height: 1.2;
  text-align: center;
}
.price__tab-sale:first-of-type {
  margin-left: 1rem;
}
.price__tab-btn {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 6.7rem;
  padding: 0.8rem 2rem;
  border-radius: 50rem;
  background-color: #f5f5f5;
  font-size: 2rem;
  font-weight: 500;
  color: #616161;
  line-height: 1.2;
  text-align: center;
  transition: 0.24s;
  gap: 1rem;
}
.price__tab-btn.color {
  flex-direction: column;
  background-color: #222;
  color: #0095ff;
  gap: 0.4rem;
}
.price__tab-btn.color p {
  width: 100%;
  font-size: 1.6rem;
  color: #e0e0e0;
}
.price__tab-btn span {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.price__tab-cancel {
  position: absolute;
  top: 0;
  right: 0;
  padding: 0.6rem 1rem;
  border-radius: 50rem;
  background-color: #ffd8d8;
  font-size: 1.6rem;
  font-weight: 500;
  color: #d43333;
}
.mt-auto {
  margin-top: auto;
}
.price__include-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 1.8rem 0 0.8rem;
  border-bottom: 1px solid #eee;
  font-size: 1.8rem;
  color: #616161;
  gap: 0.8rem 2rem;
}
.price__include-item strong {
  font-weight: 400;
  color: #0095ff;
  text-align: right;
}
.price__feature {
  display: flex;
  align-items: center;
  padding: 5rem;
  margin-top: 4rem;
  border-radius: 2rem;
  background: #fff;
  box-shadow: 5px 5px 20px 0 rgba(145, 193, 229, 0.2);
  gap: 4rem 6rem;
}
.price__feature-img {
  max-width: 45%;
  width: 50rem;
  overflow: hidden;
  border-radius: 2rem;
  aspect-ratio: 50/28;
}
.price__feature-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.price__feature-con .check-list {
  margin-bottom: 4rem;
}
.price__change-btn {
  display: flex;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  z-index: 0;
  height: 5.6rem;
  margin-top: auto;
  border-radius: 50rem;
  background-color: #0095ff;
  font-size: 2rem;
  font-weight: 500;
  color: #fff;
  gap: 1rem;
}
.price__change-btn.disabled {
  background-color: #bdbdbd;
  color: #fff;
  pointer-events: none;
}
.price__change-btn.disabled::before {
  display: none;
}
.price__change-btn::before {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  border-radius: 50rem;
  background: linear-gradient(180deg, #0095ff 0%, #0156ff 100%);
  transition: 0.24s;
  content: "";
}
.price__change-btn:hover::before {
  opacity: 1;
}
.price__change-btn.current,
.price__change-btn.reserve {
  border: 1px solid #9e9e9e;
  background-color: #fff;
  color: #616161;
}
.price__change-btn.current::before,
.price__change-btn.reserve::before {
  display: none;
}
.price__change-btn span {
  margin-left: -0.6rem;
  font-size: 1.8rem;
}

.notice-text {
  position: relative;
  padding-left: 2.4rem;
  font-size: 1.6rem;
  font-weight: 500;
  color: #424242;
  line-height: 1.5;
}
.notice-text::before {
  position: absolute;
  top: -0.1rem;
  left: 0;
  font-family: "remixicon";
  font-size: 1.8rem;
  color: #0095ff;
  content: "\ee58";
}
.notice-text.gray {
  color: #757575;
}
.notice-text.gray::before {
  color: #9e9e9e;
}
.notice-text.c42 {
  color: #424242;
}

.check-list {
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
}
.check-list.bold > li {
  padding-left: 2.6rem;
  font-size: 2rem;
  font-weight: 600;
}
.check-list > li {
  position: relative;
  padding-left: 2.4rem;
  font-size: 1.8rem;
  line-height: 1.5;
  text-align: left;
}
.check-list > li::before {
  position: absolute;
  top: 0;
  left: 0;
  font-family: "remixicon";
  font-weight: 400;
  color: #0095ff;
  content: "\eb7a";
}
.check-list > li p {
  font-size: 1.6rem;
  color: #9e9e9e;
}

@media (max-width: 1440px) {
  .price__wrap {
    padding: 6rem 4rem 10rem;
  }
  .price__wrap::before {
    width: 100%;
  }
}
@media (max-width: 1024px) {
  .price__tab-wrap {
    flex-direction: column;
  }
  .price__tab {
    max-width: 100%;
  }
  .price__feature {
    flex-direction: column;
  }
  .price__feature-img {
    max-width: 100%;
  }
  .price__feature-con {
    text-align: center;
  }
}
@media (max-width: 480px) {
  .price__wrap {
    padding: 6rem 3rem 8rem;
  }
  .price__feature {
    padding: 4rem 3rem;
  }
  .price__tab {
    padding: 4rem 2.4rem;
  }
  .price__change-btn.reserve {
    font-size: 1.8rem;
  }
}
.faq__wrap {
  display: flex;
  justify-content: space-between;
  padding-top: 10rem;
  gap: 6rem;
}
.faq__top .con__title-sub,
.faq__top .con__desc-sub {
  text-align: left;
}
.faq__top .con__cate {
  display: inline-block;
  padding: 1rem 2.4rem;
  margin-bottom: 3.4rem;
  border: 1px solid #0095ff;
  border-radius: 50rem;
  font-size: 1.6rem;
  font-weight: 500;
  color: #0095ff;
  line-height: 1.5;
}
.faq__list {
  display: flex;
  flex-direction: column;
  max-width: 60%;
  width: 68rem;
  gap: 1.6rem;
}
.faq__item {
  padding: 3.2rem 4rem;
  border: 2px solid #fafafa;
  border-radius: 2rem;
  background-color: #fafafa;
  line-height: 1.5;
  cursor: pointer;
  transition: 0.24s;
}
.faq__item.active {
  background-color: #fff;
  border-color: #0095ff;
}
.faq__item.active .faq__title::after {
  transform: rotate(45deg);
}
.faq__title {
  position: relative;
  padding-right: 4rem;
  font-size: 2rem;
  font-weight: 700;
}
.faq__title::after {
  position: absolute;
  top: 0;
  right: 0;
  font-family: "remixicon";
  font-size: 2rem;
  font-weight: 400;
  color: #000;
  transition: 0.3s;
  content: "\f4b1";
}
.faq__desc {
  display: none;
  margin-top: 1.6rem;
  font-size: 1.8rem;
}

@media (max-width: 768px) {
  .faq__top {
    text-align: center;
  }
  .faq__top .con__title-sub,
  .faq__top .con__desc-sub {
    text-align: center;
  }
  .faq__top .con__title-sub br:nth-child(2),
  .faq__top .con__desc-sub br:nth-child(2) {
    display: none;
  }
  .faq__wrap {
    flex-direction: column;
  }
  .faq__list {
    max-width: 100%;
    width: 100%;
  }
}
@media (max-width: 480px) {
  .faq__item {
    padding: 3rem;
  }
}
.login__wrap {
  padding: 8rem 6rem;
  border: 1px solid rgba(219, 219, 219, 0.5);
  border-radius: 2rem;
  background: #fff;
  box-shadow: 10px 10px 20px 0 rgba(59, 117, 158, 0.04);
  text-align: center;
}
.login__desc {
  margin-bottom: 4rem;
  font-size: 2rem;
  color: #616161;
  line-height: 1.5;
}
.login__btn {
  display: flex;
  justify-content: center;
  align-items: center;
  min-width: 24rem;
  height: 6rem;
  padding: 0 2rem;
  border-radius: 1rem;
  box-shadow: 0 0 10px 0 rgba(153, 153, 153, 0.1);
  font-size: 1.6rem;
  font-weight: 600;
}
.login__btn-wrap {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 0.8rem;
}
.login__btn.login01 {
  border: 1px solid #e0e0e0;
  background: #fff;
}
.login__btn.login01::before {
  width: 4rem;
  height: 4rem;
  background: url(/html/images/contents/sns_icon01.svg) no-repeat center center/contain;
  content: "";
}
.login__btn.login02 {
  background: #fae300;
  color: #391b1b;
}
.login__btn.login02::before {
  width: 4rem;
  height: 4rem;
  background: url(/html/images/contents/sns_icon02.svg) no-repeat center center/contain;
  content: "";
}
.login__btn.login03 {
  background: #00c73c;
  color: #fff;
}
.login__btn.login03::before {
  width: 4rem;
  height: 4rem;
  background: url(/html/images/contents/sns_icon03.svg) no-repeat center center/contain;
  content: "";
}

@media (max-width: 768px) {
  .login__btn-wrap {
    flex-direction: column;
  }
}
@media (max-width: 480px) {
  .login__wrap {
    padding: 6rem 3rem;
  }
}
.pay__area {
  max-width: 70rem;
  margin: 0 auto;
}
.pay__title {
  margin-bottom: 2.4rem;
  font-size: 2.4rem;
  font-weight: 500;
  line-height: 1.4;
}
.pay__wrap {
  display: flex;
  flex-direction: column;
  padding: 2.4rem;
  border: 1px solid #e0e0e0;
  border-radius: 1.2rem;
  gap: 1.6rem;
}
.pay__item {
  display: flex;
  min-height: 5.4rem;
  gap: 1.2rem;
}
.pay__label {
  min-width: 12rem;
  padding-top: 1.4rem;
  font-size: 1.8rem;
  font-weight: 500;
  color: #495057;
  line-height: 1.5;
}
.pay__input {
  display: flex;
  align-items: center;
  flex-grow: 1;
  flex-wrap: wrap;
  max-width: 40rem;
  font-size: 1.8rem;
  font-weight: 500;
  color: #495057;
  line-height: 1.5;
  gap: 0.4rem 0.8rem;
}
.pay__num {
  display: flex;
  gap: 0.4rem;
}
.pay__num .input__style {
  flex: 1 0 0;
}
.pay__desc {
  width: 100%;
  font-size: 1.6rem;
  font-weight: 500;
  color: #0095ff;
  line-height: 1.5;
}
.pay__check {
  display: flex;
  gap: 3.2rem;
}
.pay__total {
  display: flex;
  justify-content: space-between;
  padding: 1.6rem 2.4rem;
  border: 1px solid #dee2e6;
  border-radius: 1.2rem;
  background: #f5f9ff;
}
.pay__total-title {
  font-size: 1.8rem;
  line-height: 1.4;
}
.pay__total-con {
  color: #0095ff;
  line-height: 1.2;
  text-align: right;
}
.pay__total-plan {
  font-size: 1.8rem;
  font-weight: 500;
}
.pay__total-price {
  margin-top: 0.8rem;
  font-size: 2.4rem;
  font-weight: 700;
}

.input__style {
  width: 100%;
}
.input__style input {
  width: 100%;
  height: 5.4rem;
  padding: 0.8rem 2rem;
  border: 1px solid #dee2e6;
  border-radius: 0.8rem;
  font-size: 1.6rem;
  transition: border-color 0.24s;
  outline: none;
}
.input__style input::placeholder {
  color: #6c757d;
}
.input__style input:focus {
  border-color: #0095ff;
}
.input__style.size-sm {
  width: 6rem;
}
.input__style.size-md {
  width: 9.6rem;
}

input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
  margin: 0;
  -webkit-appearance: none;
}

input[type="number"] {
  -moz-appearance: textfield;
}

.check__style {
  text-align: left;
}
.check__style.fs16 label {
  font-size: 1.6rem;
}
.check__style a {
  text-decoration: underline;
  text-underline-offset: 4px;
}
.check__style input {
  position: absolute;
  opacity: 0;
  width: auto;
  height: auto;
}
.check__style input + label {
  position: relative;
  padding-left: 2.6rem;
  font-size: 1.8rem;
  color: #222;
  line-height: 1.4;
}
.check__style input + label::before {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 0.3rem;
  left: 0;
  width: 1.8rem;
  height: 1.8rem;
  border: 1px solid #6c757d;
  border-radius: 50%;
  background-color: #fff;
  transition: 0.24s;
  content: "";
}
.check__style input:checked + label::before {
  border: 1px solid #0095ff;
  background-color: #0095ff;
  font-family: "remixicon";
  font-size: 1.5rem;
  color: #fff;
  content: "\eb7a";
}
.check__style input:disabled + label::before {
  border: 1px solid #ddd;
  background-color: #ddd;
  color: #999;
}

.select__style {
  position: relative;
  width: 100%;
}
.select__style::after {
  position: absolute;
  top: 50%;
  right: 2rem;
  transform: translateY(-50%);
  font-family: "remixicon";
  font-size: 1.8rem;
  color: #495057;
  content: "\ea4e";
}
.select__style select {
  width: 100%;
  height: 5.4rem;
  padding: 0.8rem 2rem;
  padding-right: 4.4rem;
  border: 1px solid #dee2e6;
  border-radius: 0.8rem;
  font-size: 1.6rem;
  transition: border-color 0.24s;
  outline: none;
  appearance: none;
}

.page__item + .page__item {
  margin-top: 5.2rem;
}
.page__item a {
  text-decoration: underline;
  text-underline-offset: 0.3rem;
}
.page__item .dot-list > li {
  position: relative;
  font-size: 1.8rem;
  color: #616161;
  line-height: 1.6;
}
.page__title {
  margin-bottom: 1.6rem;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.4;
}
.page__text {
  font-size: 1.8rem;
  color: #616161;
  line-height: 1.5;
}
.page__text + ul {
  margin-top: 1rem;
}
.page__link {
  font-weight: 700;
  color: #0095ff;
  text-decoration: underline;
  text-underline-offset: 0.4rem !important;
  text-decoration-thickness: 2px !important;
}

.num-list {
  counter-reset: numList;
}
.num-list > li {
  position: relative;
  padding-left: 3rem;
  font-size: 1.8rem;
  color: #616161;
  line-height: 1.6;
}
.num-list > li::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 2.4rem;
  text-align: right;
  content: counter(numList) ".";
  counter-increment: numList;
}
.num-list > li .dot-list {
  margin: 0.6rem 0;
}

/* 개인정보처리방침 */
.privacy {
  font-size: 1.8rem;
  line-height: 1.5;
}

@media (max-width: 1280px) {
  .privacy p {
    font-size: 15px !important;
  }
}
@media (max-width: 460px) {
  .privacy p {
    font-size: 14px !important;
  }
}
.privacy span {
  font-size: 1.6rem;
}

@media (max-width: 768px) {
  .privacy span {
    font-size: 14px !important;
  }
}
.privacy > div + div {
  margin-top: 5rem;
}

.privacy .table-scroll {
  margin-bottom: 2rem;
}

.privacy-desc {
  margin-bottom: 5rem;
}

.privacy-box {
  overflow: hidden;
  border-top: 1px solid #b4b4b4;
}

.privacy-box-title strong {
  display: block;
  padding: 2rem;
  background: #f8f8f8;
  font-size: 2.2rem;
  text-align: center;
}

.privacy-box-title div {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 2.3rem 2rem;
  border-bottom: 1px solid #e8e8e8;
  text-align: center;
}

.privacy-box-align ul {
  display: flex;
  flex-wrap: wrap;
  width: calc(100% + 1px);
}

.privacy-box-align ul li {
  width: 33.3333333333%;
  border-bottom: 1px solid #e8e8e8;
  border-right: 1px solid #e8e8e8;
}

.privacy-box-align-align5 ul li {
  width: 20%;
}

.privacy-box-align-align6 ul li {
  width: 16.6666%;
}

.privacy-box-align-align2 ul li {
  width: 50%;
}

.privacy-labeling li {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 2.4rem 2rem;
  text-align: center;
  gap: 1.15rem;
}

.privacy-labeling img {
  max-width: 9.6rem;
  width: 5.5rem;
}

.privacy-labeling span {
  font-weight: 500;
  letter-spacing: -1px;
}

.privacy-labeling-icon {
  display: flex;
  justify-content: center;
  flex-shrink: 0;
}

.privacy-list li a,
.privacy-list li button {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding: 1.5rem 3rem;
  gap: 1rem;
}

.privacy-list li a:hover span,
.privacy-list li button:hover span {
  color: #000;
}

.privacy-list li a span,
.privacy-list li button span {
  font-size: 1.8rem;
}

.privacy-list li a img,
.privacy-list li button img {
  width: 5.6rem;
}

.privacy-contents > ul {
  display: flex;
  flex-direction: column;
  gap: 3rem;
}

.privacy-item-title {
  display: flex;
  align-items: center;
  margin-bottom: 1rem;
}

.privacy-item-title span {
  margin-right: 1.5rem;
  font-size: 2rem;
  font-weight: 700;
}

.privacy-item-title img {
  width: 5rem;
  margin: 0 2px;
}

.privacy-bullet > li {
  position: relative;
  margin-bottom: 0.5rem;
}

@media (max-width: 1280px) {
  .privacy-bullet > li {
    font-size: 15px;
  }
  .privacy-box-align-align5 ul li {
    width: 50%;
  }
}
@media (max-width: 460px) {
  .privacy-bullet > li {
    font-size: 14px;
  }
}
.privacy-bullet > li + li {
  margin-top: 1rem;
}

.privacy-bullet > li:last-of-type {
  margin-bottom: 0;
}

.privacy-bullet > li::before {
  display: block;
  position: absolute;
  left: 0;
}

.privacy-bullet-number2 {
  counter-reset: counter2;
}

.privacy-bullet-number2 > li {
  padding-left: 1.8rem;
}

@media (max-width: 1280px) {
  .privacy-bullet-number2 > li {
    padding-left: 2.4rem;
  }
}
.privacy-bullet-number2 > li::before {
  top: 0;
  counter-increment: counter2;
  content: counter(counter2) ")";
}

.privacy-bullet-number4 {
  counter-reset: counter4;
}

.privacy-bullet-number4 > li {
  padding-left: 2.6rem;
}

.privacy-bullet-number4 > li::before {
  top: 0;
  left: 0;
  counter-increment: counter4;
  content: counter(counter4, hangul) ".";
}

.privacy-bullet-circle > li {
  position: relative;
  padding-left: 1.2rem;
}

.privacy-bullet-circle > li::before {
  top: 1rem;
  width: 0.4rem;
  height: 0.4rem;
  background: #495057;
  content: "";
}

.privacy-bullet-line > li {
  padding-left: 1.1rem;
}

.privacy-bullet-line > li::before {
  top: 1.3rem;
  width: 0.5rem;
  height: 2px;
  background: #222;
  content: "";
}

.privacy-prevlist .dot-list {
  margin-top: 0.5rem;
}

.privacy-prevlist .dot-list a i {
  margin-left: 0.5rem;
}

.privacy * + .privacy-bullet {
  margin-top: 1rem;
}

.privacy-item-button {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}

.privacy-item-button a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: calc(33.3333333333% - 0.6666666667rem);
  height: 5rem;
  padding: 0 1.5rem;
  border: 1px solid #dee2e6;
  border-radius: 0.5rem;
  font-size: 1.7rem;
}

.privacy-item-button a span {
  font-size: 1.7rem;
}

.privacy-item-button a i {
  font-size: 2rem;
  color: #b7b7b7;
}

@media (max-width: 1280px) {
  .privacy-box-align-align6 ul li {
    width: 33.333%;
  }
  .privacy-box-align-align6 ul li:last-of-type {
    display: none;
  }
  .privacy-list li a,
  .privacy-list li button {
    flex-direction: column;
    align-items: flex-start;
    height: 100%;
    padding: 1.5rem;
    gap: 1rem;
  }
  .privacy-list .privacy-labeling-icon {
    margin-top: 2rem;
    margin-right: 0;
    align-self: flex-end;
  }
}
@media (max-width: 1280px) {
  .privacy-title {
    flex-direction: column;
    align-items: center;
    padding: 4rem 2.5rem;
  }
  .privacy-title-icon {
    margin-bottom: 2rem;
  }
  .privacy-title-text {
    padding-left: 0;
  }
  .privacy-box-align-align6 ul li {
    width: 50%;
  }
  .privacy-box-align-align6 ul li:last-of-type {
    display: block;
  }
  .privacy-item-button a {
    width: 100%;
    height: 40px;
  }
  .privacy-item-button a span {
    font-size: 15px;
  }
  .privacy-item-button a i {
    font-size: 16px;
  }
  .privacy-list li a span,
  .privacy-list li button span {
    font-size: 15px;
  }
  .privacy-labeling img,
  .privacy-list li a img {
    width: 46px;
  }
  .privacy-item-title span {
    font-size: 18px;
  }
  .privacy-item-title img {
    width: 46px;
    margin: 0;
  }
}
.table {
  position: relative;
  overflow: hidden;
  overflow-x: auto;
  border-top: 2px solid #222;
}

.table table {
  display: table;
  position: relative;
  width: 100%;
  text-align: center;
  table-layout: fixed;
  border-collapse: collapse;
}

.table table::after {
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  width: 1px;
  height: 100%;
  background: #fff;
  content: "";
}

@media (max-width: 1640px) {
  .table table {
    min-width: 45.7rem;
  }
}
.table table th,
.table table td {
  border-right: 1px solid #e0e0e0;
  letter-spacing: -0.03em;
}

.table table th {
  padding: 2rem 0.5rem;
  background: #f8f9fa;
  font-size: 1.8rem;
  color: #222222;
}

@media (max-width: 1280px) {
  .table table th {
    padding: 1rem 0.5rem;
    font-size: 15px;
  }
}
.table table th[scope="row"] {
  border-bottom: 1px solid #e0e0e0;
}

.table table td {
  display: table-cell;
  padding: 2rem 1rem;
  border-bottom: 1px solid #e0e0e0;
  font-size: 1.8rem;
  color: #616161;
}

@media (max-width: 1280px) {
  .table table td {
    padding: 1rem;
    font-size: 15px;
  }
}
.table table td.sm {
  padding: 2rem 1rem;
  font-size: 14px;
}

.table caption {
  display: table-caption;
}

.table colgroup {
  display: table-column-group;
}

.table col {
  display: table-column;
}

.table thead {
  display: table-header-group;
}

.table thead th:last-child {
  border-right: none;
}

.table tbody th {
  border-bottom: 1px solid #e0e0e0;
  background: #fff;
  font-weight: 400;
  color: #616161;
}

.table tr {
  display: table-row;
}

.table tr td:last-of-type {
  border-right: none;
}

@media (max-width: 1400px) {
  .table-scroll {
    position: relative;
  }
}
@media (max-width: 1640px) {
  .table.lg {
    overflow-x: auto;
  }
}
.solution__top {
  display: flex;
  gap: 2.4rem;
}
.solution__top-item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  flex: 1 0 0;
  padding: 5rem;
  border-radius: 2rem;
  background: #f5f9ff;
}
.solution__top-item img {
  width: 7.2rem;
}
.solution__top-item strong {
  display: block;
  margin: 3.2rem 0 1.6rem;
  font-size: 3.2rem;
}
.solution__top-item span {
  display: block;
  margin-bottom: 2.4rem;
  font-size: 2.4rem;
  font-weight: 700;
}
.solution__top-item p {
  font-size: 1.8rem;
  color: #616161;
  letter-spacing: -0.045em !important;
  line-height: 1.5;
}
.solution__sec {
  padding-top: 10rem;
  text-align: center;
}
.solution__sec.sec02 .solution__cate {
  color: #4d6aff;
  border-color: #4d6aff;
}
.solution__sec.sec02 .solution__item.active .solution__title {
  color: #4d6aff;
}
.solution__sec.sec03 .solution__cate {
  color: #974cff;
  border-color: #974cff;
}
.solution__sec.sec03 .solution__item.active .solution__title {
  color: #974cff;
}
.solution__cate {
  display: inline-block;
  padding: 1rem 2.4rem;
  border: 1px solid #0095ff;
  border-radius: 50rem;
  font-size: 1.6rem;
  font-weight: 500;
  color: #0095ff;
  line-height: 1.5;
}
.solution__summary {
  margin: 2.4rem 0 6rem;
  font-size: 4rem;
  font-weight: 500;
  line-height: 1.25;
}
.solution__box {
  position: relative;
  z-index: 0;
  min-height: 67rem;
  padding: 8rem 0;
  text-align: left;
}
.solution__box::before {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
  width: calc(100vw - 16rem);
  height: 100%;
  border-radius: 5rem;
  background: #f8f9fd;
  content: "";
}
.solution__item {
  display: flex;
}
.solution__item.active .solution__title {
  font-size: 3.2rem;
  color: #0095ff;
}
.solution__item .check-list {
  margin-bottom: 4rem;
}
.solution__item .check-list > li {
  padding-left: 2.6rem;
  font-size: 2rem;
  font-weight: 600;
  line-height: 1.5;
}
.solution__item .check-list > li + li {
  margin-top: 0.8rem;
}
.solution__item .check-list > li .dot-list {
  margin-top: 0.2rem;
}
.solution__item .check-list > li .dot-list > li {
  font-size: 1.8rem;
  font-weight: 400;
  color: #6c757d;
  line-height: 1.5;
}
.solution__con {
  max-width: calc(40% - 2rem);
  width: 46rem;
}
.solution__sample {
  position: absolute;
  top: 8rem;
  right: 0;
  max-width: calc(60% - 2rem);
  width: 68rem;
  overflow: hidden;
  border-radius: 2rem;
  box-shadow: 5px 5px 20px 0 rgba(0, 0, 0, 0.1);
}
.solution__sample video {
  width: 100% !important;
  height: auto !important;
}
.solution__sample img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.solution__title {
  margin-bottom: 1.6rem;
  font-size: 2.4rem;
  font-weight: 700;
  color: #9e9e9e;
  line-height: 1.25;
}
.solution__desc {
  margin-bottom: 2.4rem;
  font-size: 2rem;
  font-weight: 500;
  color: #616161;
  line-height: 1.5;
}
.solution__btm {
  display: flex;
  justify-content: space-between;
  padding-top: 10rem;
  gap: 4rem;
}
.solution__btm-con {
  display: flex;
  flex-direction: column;
  max-width: 60%;
  width: 68rem;
  gap: 1.6rem;
}
.solution__btm-item {
  display: flex;
  padding: 3.2rem 4rem;
  border: 2px solid #eee;
  border-radius: 2rem;
  background: #fff;
  gap: 3.2rem;
}
.solution__btm-item strong {
  display: block;
  margin-bottom: 1.6rem;
  font-size: 2rem;
}
.solution__btm-item p {
  font-size: 1.8rem;
  color: #616161;
  line-height: 1.5;
}
.solution__btm-icon {
  flex-shrink: 0;
  width: 6rem;
}

@media (max-width: 1440px) {
  .solution__box {
    padding: 6rem 4rem;
  }
  .solution__box::before {
    width: 100%;
  }
  .solution__sample {
    top: 6rem;
    right: 4rem;
    width: calc(60% - 6rem);
  }
}
@media (max-width: 1024px) {
  .solution__top-item {
    padding: 4rem;
  }
  .solution__box {
    min-height: auto;
    padding: 0;
  }
  .solution__box::before {
    display: none;
  }
  .solution__item {
    flex-direction: column;
    padding: 6rem 4rem;
    border-radius: 5rem;
    background: #f8f9fd;
  }
  .solution__item + .solution__item {
    margin-top: 6rem;
  }
  .solution__item .solution__desc,
  .solution__item .check-list,
  .solution__item .solution__sample {
    display: block;
  }
  .solution__title {
    font-size: 3.2rem;
    color: #0095ff;
  }
  .solution__con {
    max-width: 100%;
    width: 100%;
  }
  .solution__sample {
    position: relative;
    top: auto;
    right: auto;
    max-width: 100%;
    width: 100%;
  }
}
@media (max-width: 768px) {
  .solution__top {
    flex-direction: column;
  }
  .solution__top-item {
    align-items: center;
    text-align: center;
  }
  .solution__top-item p {
    letter-spacing: -0.02em !important;
  }
  .solution__item {
    padding: 5rem 3rem;
  }
  .solution__item .check-list {
    display: inline-block !important;
  }
  .solution__desc br {
    display: none;
  }
  .solution__con {
    text-align: center;
  }
  .solution__btm {
    flex-direction: column;
    text-align: center;
    gap: 0;
  }
  .solution__btm-con {
    max-width: 100%;
    width: 100%;
    text-align: left;
  }
  .solution__btm-item {
    padding: 3rem;
    gap: 2.4rem;
  }
  .solution__btm-icon {
    width: 5rem;
  }
}
.interactive__top {
  display: flex;
  padding: 5rem;
  border-radius: 2rem;
  background-color: #001e6b;
  gap: 5rem;
}
.interactive__top-item {
  flex: 1 0 0;
}
.interactive__top-icon {
  width: 6.4rem;
  height: 6.4rem;
  margin-bottom: 2.4rem;
}
.interactive__top-title {
  padding-bottom: 2.4rem;
  margin-bottom: 2.4rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.3);
  font-size: 3.2rem;
  font-weight: 700;
  color: #3badff;
  line-height: 1.3;
}
.interactive__top-desc {
  opacity: 0.8;
  font-size: 2rem;
  font-weight: 500;
  color: #fff;
  line-height: 1.5;
}
.interactive__sec {
  padding: 8rem 0 10rem;
}
.interactive__title {
  font-size: 4rem;
  font-weight: 700;
  line-height: 1.25;
}
.interactive__desc {
  margin-top: 3.2rem;
  font-size: 2.4rem;
  font-weight: 500;
  color: #222;
  line-height: 1.5;
}
.interactive__desc-sub {
  font-size: 1.8rem;
  color: #616161;
  line-height: 1.6;
}
.interactive__info {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 2.4rem;
}
.interactive__info.center {
  flex-direction: column;
}
.interactive__info-con {
  max-width: 50%;
}
.interactive__info-img {
  max-width: 40%;
  width: 40rem;
}
.interactive__con + .interactive__con {
  margin-top: 6rem;
}
.interactive__con-title {
  margin-bottom: 2.4rem;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.25;
}
.interactive__point {
  padding: 1.2rem 3rem;
  margin: 5rem 0 2.4rem;
  border: 1px solid #0095ff;
  border-radius: 5rem;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.25;
  text-align: center;
}

.offer__list {
  display: flex;
  flex-wrap: wrap;
  counter-reset: offerList;
  gap: 1.6rem;
}
.offer__item {
  position: relative;
  width: calc(25% - 1.2rem);
  padding: 2.4rem;
  padding-top: 5.4rem;
  border: 2px solid #eee;
  border-radius: 1.2rem;
  font-size: 1.8rem;
  line-height: 1.4;
}
.offer__item.width {
  flex-grow: 1;
}
.offer__item::before {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 2.4rem;
  left: 2.4rem;
  width: 2.2rem;
  height: 2.2rem;
  border-radius: 0.4rem;
  background-color: #0095ff;
  font-size: 1.4rem;
  font-weight: 600;
  color: #fff;
  content: counter(offerList);
  counter-increment: offerList;
}

.choice__list {
  display: flex;
  flex-direction: column;
  padding: 3.2rem 2.4rem;
  border-radius: 1.2rem;
  background: #f5f9ff;
  gap: 2rem;
}
.choice__item {
  position: relative;
  padding-left: 3rem;
  font-size: 1.8rem;
  font-weight: 500;
  color: #424242;
  line-height: 1.4;
}
.choice__item::before {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 0.2rem;
  left: 0;
  width: 2.2rem;
  height: 2.2rem;
  border-radius: 0.4rem;
  background: #3d4a8f;
  font-family: "remixicon";
  font-size: 1.6rem;
  color: #fff;
  content: "\eb7a";
}

.cms__list {
  display: flex;
  flex-wrap: wrap;
  gap: 2.4rem;
}
.cms__item {
  width: calc(50% - 1.2rem);
  padding: 4rem;
  border-radius: 2rem;
  background: #f5f9ff;
}
.cms__item strong {
  display: block;
  margin-bottom: 2rem;
  font-size: 2rem;
  line-height: 1.25;
}
.cms__item p {
  font-size: 1.8rem;
  color: #616161;
  line-height: 1.5;
}

.tech__wrap {
  display: flex;
  flex-direction: column;
  margin-top: 6rem;
  gap: 8rem 0;
}
.tech__item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 6rem 4rem;
  border-radius: 2rem;
  background: #f8f9fd;
  gap: 8rem;
}
.tech__item:nth-of-type(even) {
  flex-direction: row-reverse;
  padding: 4rem;
  background: #fff;
}
.tech__con > strong {
  display: block;
  margin-bottom: 2rem;
  font-size: 2.8rem;
  line-height: 1.25;
}
.tech__con > p {
  font-size: 1.8rem;
  color: #616161;
  line-height: 1.6;
}
.tech__img {
  display: flex;
  max-width: 45%;
}
.tech__img.img02 {
  gap: 2.8rem;
}
.tech__img.img02 img {
  width: 24rem;
}
.tech__img.img03 {
  gap: 4.8rem;
}
.tech__img.img03 .tech__img-item {
  width: 18rem;
}
.tech__img-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 1.2rem;
}
.tech__img-item span {
  display: inline-block;
  padding: 0.6rem 1.6rem;
  border-radius: 50rem;
  background-color: #f5f5f5;
  font-size: 1.6rem;
  font-weight: 600;
  color: #616161;
}
.tech__img-item p {
  font-size: 1.6rem;
  color: #616161;
  line-height: 1.3;
}

.logo__slide + .logo__slide {
  margin-top: 4rem;
}
.logo__slide-wrap {
  position: relative;
  left: 50%;
  transform: translateX(-50%);
  width: 100vw;
}
.logo__slide .swiper-wrapper {
  align-items: center;
  transition-timing-function: linear !important;
}
.logo__slide-item {
  width: auto !important;
}

@media (max-width: 1024px) {
  .interactive__top {
    padding: 4.6rem 4rem;
    gap: 3.2rem;
  }
  .interactive__top-title {
    font-size: 2.8rem;
  }
  .interactive__top-desc {
    font-size: 1.8rem;
  }
}
@media (max-width: 768px) {
  .interactive__top {
    flex-direction: column;
    gap: 6rem;
  }
  .interactive__top-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
  }
  .interactive__top-title {
    width: 100%;
  }
  .interactive__info {
    flex-direction: column;
    margin-bottom: 4rem;
    text-align: center;
    gap: 4rem;
  }
  .interactive__info .notice-text {
    display: inline-block;
  }
  .interactive__info-con {
    max-width: 100%;
  }
  .interactive__info-img {
    max-width: 100%;
  }
  .offer__item {
    width: calc(50% - 0.8rem);
  }
  .cms__item {
    padding: 3.6rem 3rem;
  }
  .tech__wrap {
    gap: 4rem;
  }
  .tech__item,
  .tech__item:nth-of-type(even) {
    flex-direction: column;
    padding: 4rem 3rem;
    gap: 6rem;
  }
  .tech__img {
    max-width: 100%;
  }
}
@media (max-width: 560px) {
  .cms__item {
    width: 100%;
  }
}
@media (max-width: 480px) {
  .offer__item {
    width: 100%;
  }
}

/* 260616 추가 */
.btn-style.wd20 {
  justify-content: center;
  min-width: 20rem;
}
.ir__bg {
  position: relative;
  padding: 10rem 0 12rem;
  margin-bottom: 16rem;
}
.ir__bg::before {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
  width: calc(100vw - 16rem);
  height: 100%;
  border-radius: 5rem;
  background: #f5f9ff;
  content: "";
}
.con__desc-sub.lg {
  margin-top: 3.2rem;
  font-size: 2.4rem;
  color: #222;
}

@media (max-width: 768px) {
  .con__desc-sub.lg {
    font-size: 2.2rem;
  }
}

.ir__sec01 {
  display: flex;
  flex-direction: column;
  padding: 16rem 0;
  gap: 10rem;
}
.ir__sec01-tab {
  display: flex;
  gap: 8rem;
}
.ir__sec01-tab.reverse {
  flex-direction: row-reverse;
}
.ir__sec01-tab > div {
  flex: 1 0 0;
}
.ir__sec01-tab .con__title-sub,
.ir__sec01-tab .con__desc-sub {
  text-align: left;
}
.ir__sec01-tab .con__desc-sub {
  color: #222;
}

@media (max-width: 768px) {
  .ir__sec01-tab {
    flex-direction: column-reverse !important;
    align-items: center;
    max-width: 560px;
    margin: 0 auto;
    gap: 4rem;
  }
  .ir__sec01-tab .con__title-sub,
  .ir__sec01-tab .con__desc-sub {
    text-align: center;
  }
  .btn-style.wd20 {
    justify-content: center;
    min-width: 18rem;
  }
}

#wrap.sub:has(.ir__scroll) {
  overflow: unset;
}
.ir__title {
  margin-bottom: 6rem;
  text-align: center;
}
.ir__title img {
  max-height: 9rem;
}
.ir__scroll {
  display: flex;
  flex-direction: column;
  padding-top: 30rem;
  gap: 5rem;
}
.ir__scroll-item {
  display: flex;
  justify-content: space-between;
  position: sticky;
  left: 0;
  padding: 6rem 6rem 10rem;
  border-radius: 2rem;
  background: #fff;
  box-shadow: 0 20px 40px 0 rgba(73, 126, 164, 0.2);
  gap: 4rem;
}
.ir__scroll-item--01 {
  bottom: 34rem;
  z-index: 3;
  margin-top: -30rem;
  margin-bottom: 20rem;
}
.ir__scroll-item--02 {
  bottom: 24rem;
  z-index: 2;
  margin-top: -20rem;
  margin-bottom: 10rem;
}
.ir__scroll-item--03 {
  bottom: 14rem;
  z-index: 1;
  margin-top: -10rem;
}
.ir__scroll-item--04 {
  bottom: 4rem;
}
.ir__scroll-title {
  display: flex;
  align-items: center;
  position: absolute;
  bottom: 4rem;
  left: 6rem;
  font-size: 1.8rem;
  font-weight: 500;
  color: #616161;
  line-height: 1.4;
  gap: 0.8rem;
}
.ir__scroll-title span {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 2.6rem;
  height: 2.6rem;
  border-radius: 50%;
  background-color: #0095ff;
  font-size: 1.6rem;
  font-weight: 600;
  color: #fff;
}
.ir__scroll-con strong {
  display: block;
  margin-bottom: 3.2rem;
  font-size: 3rem;
  font-weight: 700;
  line-height: 1.3;
}
.ir__scroll-con p {
  font-size: 1.8rem;
  color: #616161;
  line-height: 1.4;
}
.ir__scroll-con p + p {
  margin-top: 1.6rem;
}
.ir__scroll-img {
  flex-shrink: 0;
  max-width: 52%;
  width: 56rem;
}

@media (max-width: 1440px) {
  .ir__bg::before {
    width: 100vw;
    border-radius: 0;
  }
}

@media (max-width: 810px) {
  .ir__scroll {
    padding-top: 0;
  }
  .ir__scroll-item {
    flex-direction: column;
    bottom: 4rem !important;
    padding: 6rem 5rem 10rem;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  .ir__scroll-title {
    left: 5rem;
  }
  .ir__scroll-con br {
    display: none;
  }
  .ir__scroll-img {
    max-width: 100%;
    margin: 0 auto;
  }
}

@media (max-height: 800px) and (min-width: 481px) {
  .ir__scroll {
    padding-top: 0;
  }
  .ir__scroll-item {
    bottom: auto;
    margin: 0;
  }
}

@media (max-width: 480px) {
  .ir__scroll-item {
    padding: 4rem 3rem 8rem;
  }
  .ir__scroll-title {
    bottom: 3rem;
    left: 3rem;
  }
  .ir__scroll-con br {
    display: inline;
  }
}

.ir__sec02 {
  padding: 10rem 0;
}
.ir__sec02-wrap {
  display: flex;
  position: relative;
  background-color: #f5f9ff;
}
.ir__sec02-wrap::before {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 8.5rem;
  height: 40.2rem;
  background: url(/html/images/contents/ir_line.svg) no-repeat center center / cover;
  content: "";
}
.ir__sec02-wrap::after {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
  width: 8.1rem;
  height: 6.5rem;
  background: url(/html/images/contents/ir_vs.svg) no-repeat center center / cover;
  content: "";
}
.ir__sec02-tab {
  flex: 1 0 0;
  padding: 5rem;
}
.ir__sec02-tab.tab02 {
  padding-left: 9rem;
  background: url(/html/images/contents/ir_shape.svg) no-repeat right center / cover;
}
.ir__sec02-tab.tab02 .ir__sec02-title {
  color: #0095ff;
}
.ir__sec02-top {
  display: flex;
  align-items: center;
  margin-bottom: 3.2rem;
  gap: 2.4rem;
}
.ir__sec02-icon img {
  width: 7.2rem;
}
.ir__sec02-title {
  font-size: 3rem;
  font-weight: 700;
}
.ir__sec02-list {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1.2rem;
}
.ir__sec02-item {
  position: relative;
  padding-left: 2.8rem;
  font-size: 2rem;
  font-weight: 500;
  color: #616161;
  letter-spacing: -0.02em;
  line-height: 1.5;
}
.ir__sec02-item strong {
  font-weight: 700;
  color: #222;
}
.ir__sec02-item::before {
  position: absolute;
  top: 0;
  left: 0;
  font-family: "remixicon";
  font-size: 2rem;
  color: #0095ff;
  content: "\eb7a";
}
.ir__sec02-list.error .ir__sec02-item::before {
  color: #d43333;
  content: "\eb98";
}

@media (max-width: 1280px) {
  .ir__sec02-tab {
    padding: 4rem;
  }
  .ir__sec02-item {
    font-size: 1.8rem;
  }
}

@media (max-width: 1080px) {
  .ir__sec02-tab.tab02 {
    background-position-x: -4px;
  }
}

@media (max-width: 1024px) {
  .ir__sec02-wrap::before,
  .ir__sec02-wrap::after {
    display: none;
  }
  .ir__sec02-wrap {
    flex-direction: column;
  }
  .ir__sec02-tab {
    padding: 4rem !important;
  }
  .ir__sec02-tab.tab02 {
    background: #e7f1ff;
  }
  .ir__sec02-item {
    font-size: 2rem;
  }
}

@media (max-width: 480px) {
  .ir__sec02-tab {
    padding: 4rem 3rem !important;
  }
}

.ir__sec03-wrap {
  display: flex;
  flex-wrap: wrap;
  gap: 1.6rem;
}
.ir__sec03-tab {
  width: calc(100% / 3 - (1.6rem * 2 / 3));
  padding: 3.2rem 4rem;
  border: 1px solid #eee;
  border-radius: 2rem;
}
.ir__sec03-icon {
  width: 6rem;
  margin-bottom: 3.2rem;
}
.ir__sec03-title {
  margin-bottom: 1.6rem;
  font-size: 2rem;
  font-weight: 700;
  color: #222;
  line-height: 1.2;
}
.ir__sec03-desc {
  font-size: 1.8rem;
  line-height: 1.5;
}

@media (max-width: 768px) {
  .ir__sec03-tab {
    width: calc(50% - 0.8rem);
    padding: 3rem;
  }
}

@media (max-width: 480px) {
  .ir__sec03-tab {
    width: 100%;
    text-align: center;
  }
  .ir__sec03-icon {
    margin: 0 auto 3.2rem;
  }
}

.ir__sec04 {
  position: relative;
  padding: 12rem 0;
  margin-top: 16rem;
}
.ir__sec04::before {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
  width: 100vw;
  height: 100%;
  border-radius: 0;
  background: #f5f9ff;
  content: "";
}
.ir__sec04-wrap {
  display: flex;
  gap: 2.4rem;
}
.ir__sec04-tab {
  flex: 1 0 0;
  padding: 4rem;
  border-radius: 2rem;
  background-color: #fff;
}
.ir__sec04-step {
  display: inline-block;
  padding: 0.6rem 1.6rem;
  margin-bottom: 2.4rem;
  border-radius: 3rem;
  background: #38acff;
  font-size: 1.6rem;
  font-weight: 700;
  color: #fff;
  line-height: 1.5;
}
.ir__sec04-step.step02 {
  background: #0095ff;
}
.ir__sec04-step.step03 {
  background: #1661ee;
}
.ir__sec04-step.step04 {
  background: #0341b3;
}
.ir__sec04-title {
  margin-bottom: 2.4rem;
  font-size: 2.4rem;
  font-weight: 700;
}
.ir__sec04-desc {
  font-size: 1.8rem;
  color: #616161;
  letter-spacing: -0.02em;
  line-height: 1.5;
}

@media (max-width: 1024px) {
  .ir__sec04-tab {
    padding: 4rem 3rem;
  }
}

@media (max-width: 840px) {
  .ir__sec04-wrap {
    flex-wrap: wrap;
  }
  .ir__sec04-tab {
    flex: 1 0 auto;
    width: calc(50% - 1.2rem);
  }
}

@media (max-width: 480px) {
  .ir__sec04-tab {
    width: 100%;
    padding: 3rem;
    text-align: center;
  }
}

.ir__btm::before {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
  width: 100vw;
  height: 100%;
  border-radius: 0;
  background: url(/html/images/contents/ir_bg.png) no-repeat center center / cover;
  content: "";
}
.ir__btm {
  position: relative;
  padding: 10rem 0;
  color: #fff;
  text-align: center;
}
.ir__btm-title {
  margin-bottom: 3.2rem;
  font-size: 4.8rem;
  font-weight: 700;
  line-height: 1.2;
}
.ir__btm-desc {
  margin-bottom: 5rem;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.5;
}

/* ir 애니메이션 */
.ir__title-wrap {
  overflow: hidden;
}
.ir__title-wrap .con__title,
.ir__title-wrap .con__desc {
  transform: translateY(100%);
  animation: textAni 1.2s 0.4s forwards;
}

@keyframes textAni {
  0% {
    transform: translateY(100%);
  }
  100% {
    transform: translateY(0);
  }
}

.ir__top {
  position: relative;
  width: 100%;
  height: 40rem;
}
.ir__ani {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 120rem;
  height: 40rem;
}
.ir__ani.ani01 {
  opacity: 0;
  animation:
    irOpacity 0s ease-in-out forwards,
    irHide 0.8s 3s ease-in-out forwards;
}
.ir__ani.ani02 {
  opacity: 0;
  animation: irOpacity 0s 4s ease-in-out forwards;
}
.ir__ani img {
  position: absolute;
  opacity: 0;
}
.ir01 {
  bottom: 0;
  right: 0;
  width: 86.6rem;
  animation:
    irOpacity 0.8s 1s forwards,
    ir01 0.8s 1.6s ease-in-out forwards;
}
.ir02 {
  top: 50%;
  left: -9rem;
  transform: translateY(-50%);
  width: 47.4rem;
  animation:
    irOpacity 0.8s 1s forwards,
    ir02 0.8s 1.6s ease-in-out forwards;
}
.ir03 {
  top: 65%;
  left: 30%;
  transform: translateY(-50%);
  width: 12.5rem;
  animation:
    irOpacity 0.8s 1.6s forwards,
    ir03 0.8s 1.6s ease-in-out forwards;
}
.ir04 {
  bottom: 0;
  left: 0;
  z-index: 1;
  width: 120rem;
  animation: irOpacity 0.8s 4.4s forwards;
}
.ir05 {
  bottom: 4rem;
  left: 0rem;
  width: 28.2rem;
  animation:
    irOpacity 0.8s 4s forwards,
    ir05 0.8s 4s ease-in-out forwards;
}
.ir06 {
  bottom: -6rem;
  left: 50%;
  transform: translateX(-50%);
  width: 50rem;
  animation:
    irOpacity 0.8s 4s forwards,
    ir06 0.8s 4s ease-in-out forwards;
}
.ir07 {
  top: 8.4rem;
  left: 44%;
  transform: translateY(2.4rem);
  width: 34.1rem;
  animation:
    irOpacity 0.6s 5s forwards,
    ir07 0.6s 5s ease-in-out forwards;
}
.ir08 {
  bottom: 0;
  left: 27%;
  transform: translateY(2.4rem);
  width: 51.2rem;
  animation:
    irOpacity 0.6s 6s forwards,
    ir08 0.6s 6s ease-in-out forwards;
}

@keyframes irOpacity {
  100% {
    opacity: 1;
  }
}
@keyframes irHide {
  100% {
    opacity: 0;
  }
}

@keyframes ir01 {
  100% {
    right: 50%;
    transform: translateX(50%);
  }
}
@keyframes ir02 {
  100% {
    left: 0;
  }
}
@keyframes ir03 {
  100% {
    transform: translateY(-50%) translateX(9rem);
  }
}
@keyframes ir05 {
  100% {
    left: 6rem;
  }
}
@keyframes ir06 {
  100% {
    bottom: 0;
  }
}
@keyframes ir07 {
  100% {
    transform: translateY(0);
  }
}
@keyframes ir08 {
  100% {
    transform: translateY(0);
  }
}

@media (max-width: 960px) {
  .ir__top {
    width: calc(100% + 6rem);
    overflow: hidden;
    margin-left: -3rem;
  }
}

@media (max-width: 768px) {
  .ir__top {
    width: calc(100% + 4.8rem);
    margin-left: -2.4rem;
  }
  .ir05 {
    display: none;
  }
}

@media (max-width: 740px) {
  .ir__ani.ani01 {
    display: none;
  }
  .ir__ani.ani02 {
    animation: irOpacity 0s ease-in-out forwards;
  }
  .ir04 {
    animation: irOpacity 0.8s 2s forwards;
  }
  .ir06 {
    animation:
      irOpacity 0.8s 1.6s forwards,
      ir06 0.8s 1.6s ease-in-out forwards;
  }
  .ir07 {
    animation:
      irOpacity 0.6s 2.6s forwards,
      ir07 0.6s 2.6s ease-in-out forwards;
  }
  .ir08 {
    animation:
      irOpacity 0.6s 3.6s forwards,
      ir08 0.6s 3.6s ease-in-out forwards;
  }
}

@media (max-width: 460px) {
  .ir__top {
    margin-top: -4rem;
  }
  .ir__ani.ani02 {
    transform: translateX(-50%) scale(0.8);
  }
}

.ircs__wrap {
  display: flex;
  margin-top: 4rem;
  border-radius: 2rem;
  background: #fff;
  padding: 6rem 0;
  box-shadow: 5px 5px 20px 0 rgba(145, 193, 229, 0.2);
}
.ircs__tab {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  flex: 1 0 0;
  padding: 0 6rem;
}
.ircs__tab:first-child {
  border-right: 1px solid #e0e0e0;
}
.ircs__cate {
  display: inline-block;
  position: relative;
  padding: 0.4rem 1.2rem 0.4rem 4.2rem;
  border: 1px solid #4d6aff;
  border-radius: 3rem;
  background: #fff;
  font-size: 2rem;
  font-weight: 600;
  color: #4d6aff;
  line-height: 1.5;
  margin-bottom: 1rem;
}
.ircs__cate::before {
  position: absolute;
  top: .6rem;
  left: 1.2rem;
  width: 2.4rem;
  height: 2.4rem;
  background: url(/html/images/contents/price_ir_icon01.svg) no-repeat center / contain;
  content: "";
}
.ircs__cate.cate02 {
  color: #0095FF;
  border-color: #0095FF;
}
.ircs__cate.cate02::before {
  background: url(/html/images/contents/price_ir_icon02.svg) no-repeat center / contain;
}
.ircs__title {
  font-size: 3.2rem;
  font-weight: 700;
  color: #222;
  line-height: 1.5;
}
.ircs__desc {
  margin-top: 0.8rem;
  font-size: 2rem;
  font-weight: 300;
  color: #616161;
  line-height: 1.5;
}
.ircs__tab .check-list {
  margin: 2.4rem 0 6rem;
}
.ircs__tab .check-list.purple > li::before {
  color: #4d6aff;
}
.ircs__tab .btn-style {
  margin-left: auto;
}

@media (max-width: 1024px) {
  .ircs__wrap {
    padding: 4rem 0;
  }
  .ircs__tab {
    padding: 0 4rem;
  }
}

@media (max-width: 768px) {
  .ircs__wrap {
    flex-direction: column;
    padding: 0 4rem;
  }
  .ircs__tab {
    padding: 4rem 0;
  }
  .ircs__tab:first-child {
    border-right: none;
    border-bottom: 1px solid #e0e0e0;
  }
}

@media (max-width: 460px) {
  .ircs__wrap {
    padding: 0 3rem;
  }
}