@charset "UTF-8";
/* #### main  ####  */
.main_banner {
}
.main_banner .swiper-slide {
  background: url(../_img/common/main_banner_back.png) no-repeat center center / cover;
  padding: 120px 0;
}
.main_banner .swiper-slide .container {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.main_banner .text_area h1 {
  font-weight: 700;
  font-size: 40px;
  line-height: 140%;
  margin-bottom: 16px;
}
.main_banner .text_area p {
  font-weight: 500;
  font-size: 16px;
  line-height: 160%;
  color: #767676;
  margin-bottom: 40px;
}
.main_banner .btns {
  display: flex;
  gap: 8px;
}
.main_banner .img_area {
  max-width: 648px;
  width: 100%;
  aspect-ratio: 648/440;
  border-radius: 20px;
  overflow: hidden;
}
.main_banner .img_area img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.container .title {
  font-weight: 700;
  font-size: 36px;
  line-height: 140%;
  text-align: center;
}
.container .title_sub {
  margin-top: 16px;
  color: #767676;
  font-size: 16px;
  font-weight: 500;
  line-height: 140%;
  text-align: center;
}
.news_section {
  padding: 80px 0;
}
.news_section .title {
  margin-bottom: 40px;
}
.news_box {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  row-gap: 40px;
  align-items: center;
}
.news_box .news_item {
  display: flex;
  align-items: center;
  border: 1px solid #e5e5ec;
  background: #fff;
  border-radius: 20px;
  padding: 16px 20px;
  flex: 1;
  transition: 0.25s;
}
.news_box .news_item:hover {
  box-shadow: 10px 10px 30px 0 #0000000f;
}
.news_box .news_item > img {
  width: 72px;
  aspect-ratio: 1/1;
  object-fit: cover;
  overflow: hidden;
  border-radius: 4px;
}
.news_box .news_item .txt_box {
  margin-left: 20px;
  width: 100%;
  margin-right: 10px;
}
.news_box .news_item .txt_box h2 {
  font-size: 20px;
  font-weight: 700;
  line-height: 140%;
  margin-bottom: 8px;
  text-overflow: ellipsis;
  overflow: hidden;
  word-break: break-word;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
}
.news_box .news_item .txt_box span {
  color: #767676;
  font-size: 14px;
  font-weight: 400;
  line-height: 140%;
}
.news_box .news_item .arrow_right_icon {
  background: url(../_img/icon/icon_arrow_btn.svg) no-repeat center center / contain;
  width: 40px;
  height: 40px;
}
.edu_section {
  padding: 120px 0;
  background: #ecf3f6;
}
.edu_logo_wrap {
  margin-top: 40px;
}
.slide_item_box--top,
.slide_item_box--bottom {
  display: flex;
  overflow: hidden;
  flex-shrink: 0;
}

.slide_list {
  display: flex;
  align-items: center;
  flex-shrink: 0;
}

.slide_item_box {
  width: 190px;
  height: 80px;
  background: #fff;
  border-radius: 4px;
  overflow: hidden;
  margin-right: 20px;
  box-shadow: 0 3px 10px 0 #cbcdd74d;
  display: flex;
  align-items: center;
  justify-content: center;
}

.slide_item_box img {
  width: 100%;
  height: 100%;
  max-height: 48px;
  object-fit: contain;
}

.slide_item_top.original {
  animation: rollingleft1 33s linear infinite;
}

.slide_item_top.clone {
  animation: rollingleft2 33s linear infinite;
}

.slide_item_bottom.original {
  animation: rollingleft1 33s linear infinite;
  animation-direction: reverse;
}

.slide_item_bottom.clone {
  animation: rollingleft2 33s linear infinite;
  animation-direction: reverse;
}

@keyframes rollingleft1 {
  0% {
    transform: translateX(0);
  }

  50% {
    transform: translateX(-100%);
  }

  50.01% {
    transform: translateX(100%);
  }

  100% {
    transform: translateX(0);
  }
}

@keyframes rollingleft2 {
  0% {
    transition: translateX(0);
  }

  100% {
    transform: translateX(-200%);
  }
}
.character_section {
  padding: 160px 0;
}
.charac_list {
  display: flex;
  gap: 16px;
  margin-top: 40px;
  align-items: center;
  justify-content: center;
}

.keyword-item {
  width: 88px;
  min-width: 88px;
  position: relative;
  color: #fff;
  display: flex;
  height: 500px;
  justify-content: center;
  align-items: center;
  transition: 0.5s;
  cursor: pointer;
  border-radius: 20px;
  overflow: hidden;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}
.keyword-item::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to left, rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.4));
  pointer-events: none;
  z-index: 1;
}

/* 각 카드별 백그라운드 이미지 */
.keyword-item.item01 {
  background-image: url(../_img/common/keyword_01.png);
}
.keyword-item.item02 {
  background-image: url(../_img/common/keyword_02.png);
}
.keyword-item.item03 {
  background-image: url(../_img/common/keyword_03.png);
}
.keyword-item.item04 {
  background-image: url(../_img/common/keyword_04.png);
}

.keyword-item.active {
  width: 100%;
}
.keyword-item.active::after {
  background: linear-gradient(253.81deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.52) 100%);
}

.keyword-item h3 {
  writing-mode: vertical-rl;
  text-orientation: sideways;
  font-size: 20px;
  white-space: nowrap;
  color: #fff;
  z-index: 2;
  position: absolute;
}
.keyword-item h3 span {
  display: inline-block;
}
.keyword-item .num {
  position: absolute;
  top: 20px;
  right: 20px;
  width: 48px;
  height: 48px;
  background: #ffffff99;
  border-radius: 100%;
  color: #111111;
  font-size: 16px;
  font-weight: 500;
  text-align: center;
  line-height: 48px;
  z-index: 3;
}
.keyword-item.active h3 {
  display: none;
}
.keyword-item .content {
  display: none;
  z-index: 2;
}

.keyword-item.active .content .desc {
  position: absolute;
  bottom: 40px;
  left: 40px;
}

.keyword-item.active .content .desc h1 {
  color: #ffffff;
  font-size: 32px;
  font-weight: 400;
  line-height: 140%;
}
.keyword-item.active .content .desc .badge {
  margin-bottom: 16px;
  background: #ffffff33;
  backdrop-filter: blur(5px);
  height: 36px;
  line-height: 36px;
  padding: 0 16px;
  color: #fff;
  font-size: 14px;
  font-weight: 500;
  display: inline-block;
  border-radius: 100px;
  width: fit-content;
}
.keyword-item.active .content {
  display: block;
}
.review_section {
  padding: 160px 0;
  background: url(../_img/common/review_back.png) no-repeat center center / cover;
}
.review_list {
  padding-top: 40px;
  /* display: grid; */
  /* grid-template-columns: 1fr 1fr; */
  /* gap: 20px; */
  overflow: visible;
}

.review_list .review_item {
  box-shadow: 10px 10px 30px #0000000f;
  border: 1px solid #e5e5ec;
  border-radius: 20px;
  padding: 32px;
  background: #fff;
  height: auto;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  /* max-width: 610px;
  width: 100%; */
}
.review_list .review_item h3 {
  color: #111111;
  font-weight: 600;
  font-size: 20px;
  line-height: 160%;
  padding-bottom: 20px;
  height: 100%;
  border-bottom: 1px solid #f1f1f5;
}
.review_list .review_item .student_inform {
  margin-top: 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.review_list .review_item .student_inform .right {
  display: flex;
  align-items: flex-start;
  gap: 8px;
}
.review_list .review_item .student_inform .right .check_icon {
  width: 24px;
  height: 24px;
  display: inline-block;
  transition: 0.3s;
  background: url(../_img/icon/icon_check.svg) no-repeat center center / contain;
}
/* .review_list .review_item:hover .student_inform .right .check_icon {
  width: 32px;
  height: 32px;
} */
.review_list .review_item .student_inform .right h4 {
  color: #333333;
  font-weight: 500;
  font-size: 14px;
  line-height: 160%;
}
.review_list .review_item .student_inform .left {
  display: flex;
  align-items: center;
  gap: 12px;
}
.review_list .review_item .student_inform .student_img {
  width: 48px;
  height: 48px;
  object-fit: cover;
  overflow: hidden;
  border-radius: 100%;
}

.review_list .review_item .student_inform .text span {
  color: #111111;
  font-weight: 600;
  font-size: 16px;
  line-height: 140%;
  margin-bottom: 4px;
  display: inline-block;
}
.review_list .review_item .student_inform .text p {
  color: #767676;
  font-weight: 500;
  font-size: 14px;
  line-height: 140%;
}
.platform_section {
  padding: 120px 0;
}
.platform_list {
  margin-top: 40px;
  display: flex;
  gap: 20px;
}
.platform_list > li,
.effect_list > li {
  flex: 1;
  box-shadow: 10px 10px 30px 0 #0000000f;
  border: 1px solid #e5e5ec;
  border-radius: 12px;
  overflow: hidden;
}
.platform_list li .head,
.effect_list li .head {
  height: 66px;
  line-height: 66px;
  text-align: center;
}
.platform_list li .head.green {
  background: linear-gradient(to right, #35a854, #35c45b);
}
.platform_list li .head.blue {
  background: linear-gradient(to right, #0a66c2, #159bff);
}
.platform_list li .head.purple {
  background: linear-gradient(to right, #9747ff, #ff9a00);
}
.platform_list li .head h1 {
  line-height: 66px;
  color: #ffffff;
  font-weight: 600;
  font-size: 20px;
}

.platform_list li .content {
  padding: 24px;
  background: #fff;
  display: flex;
  flex-direction: column;
  gap: 20px;
  height: 336px;
}
.platform_list li .content h2 {
  font-weight: 500;
  font-size: 16px;
  word-break: break-all;
  line-height: 150%;
}
.platform_list li .content .list_area h2 {
  margin-bottom: 10px;
}
.platform_list li .content .list_area .num_list {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.platform_list li .content .list_area .num_list li,
.platform_list li .gray_cont .gray_list li {
  color: #767676;
  font-weight: 500;
  font-size: 16px;
  line-height: 150%;
  text-indent: -10px;
  padding-left: 10px;
}
.platform_list li .gray_cont .gray_list {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.platform_list li .gray_cont {
  background: #f7f7fb;
  padding: 24px;
  display: flex;
  flex-direction: column;
  height: 230px;
  justify-content: space-between;
}
.custom__inner {
  padding: 80px 0 160px;
}

.custom__inner .tit {
  font-weight: 700;
  font-size: 36px;
  line-height: 140%;
  margin-bottom: 32px;
}

.top_area {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 40px;
}
.tab_list {
  display: flex;
  border-bottom: 1px solid #e5e5ec;
  width: 100%;
  overflow: auto;
}
.tab_list::-webkit-scrollbar {
  display: none;
}
.tab_list li a {
  line-height: 51px;
  height: 51px;
  display: inline-block;
  padding: 0 20px;
  color: #767676;
  font-weight: 600;
  font-size: 18px;
  flex-shrink: 0;
  white-space: nowrap;
}
.tab_list li.active a {
  border-bottom: 2px solid #111111;
  color: #111111;
}
.custom__inner .sub_title {
  margin-bottom: 16px;
  font-weight: 700;
  font-size: 20px;
  line-height: 140%;
}
.justi-title_box .sub_title {
  margin-bottom: 0;
}
.notice_list {
  border-top: 1px solid #f1f1f5;
}
.notice_list li a {
  height: 65px;
  align-items: center;
  border-bottom: 1px solid #f1f1f5;
  border-top: 1px solid transparent;
  padding: 20px;
  display: flex;
  justify-content: space-between;
  gap: 20px;
}
.notice_list li a .text {
  display: flex;
  gap: 20px;
  align-items: center;
}
.notice_list li a:hover {
  background: #f7f7fb;
}
.notice_list li a .notice_txt {
  color: #767676;
  font-weight: 500;
  font-size: 18px;
}
.notice_list li a .title_box {
  display: flex;
  align-items: center;
  gap: 8px;
}
.notice_list li a h3 {
  font-weight: 600;
  font-size: 18px;
  width: 100%;
  text-overflow: ellipsis;
  overflow: hidden;
  word-break: break-word;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
}
.notice_list li a .date_txt {
  color: #767676;
  font-weight: 500;
  font-size: 16px;
}
.notice_preview {
  margin: 32px 0;
}
.notice_preview a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 20px;
  height: 72px;
  border-radius: 4px;
  border: 1px solid #e5e5ec;
  box-shadow: 0 6px 20px 0 #00000014;
}
.notice_preview .text {
  display: flex;
  align-items: center;
  gap: 20px;
}
.notice_preview .text .notice_txt {
  color: #767676;
  font-weight: 500;
  font-size: 18px;
  line-height: 140%;
}
.notice_preview .text h3 {
  color: #111111;
  font-weight: 600;
  font-size: 18px;
  line-height: 140%;
  text-overflow: ellipsis;
  overflow: hidden;
  word-break: break-word;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
}
.notice_preview .arrow_right {
  width: 40px;
  height: 40px;
  background: url(../_img/icon/icon_arrow_btn.svg) no-repeat center center / contain;
  flex-shrink: 0;
}
.customer_flex {
  gap: 40px;
}
.customer_flex .box.two {
  flex: 0 0 calc((100% - 40px) * 0.5875);
}
.customer_flex .box.one {
  flex: 0 0 calc((100% - 40px) * 0.4125);
}
.customer_flex .box.one277 {
  min-width: 277px;
}
.customer_flex .box.one277 h2 {
  font-size: 18px;
  line-height: 140%;
}
.customer_flex .box.one277 h2.fw700 {
  margin-bottom: 8px;
}
.customer_flex .box.one277 h1 {
  font-size: 36px;
  line-height: 140%;
  margin-bottom: 8px;
}
.faq_list .no-result,
.no_cource_box {
  background: #f7f7fb;
  border-radius: 4px;
  padding: 12px 16px;
  display: flex;
  gap: 12px;
  align-items: center;
  margin-top: 16px;
  height: 56px;
  width: 100%;
}
.faq_list .no-result p,
.no_cource_box p {
  color: #767676;
  font-size: 16px;
  font-weight: 600;
}
.faq_list {
  border-top: 1px solid #f1f1f5;
}
.faq_list li .btn-lnb {
  position: relative;
  width: 100%;
  padding: 20px;
  border-bottom: 1px solid #f1f1f5;
  text-align: left;
  display: flex;
  gap: 16px;
  align-items: center;
}
.faq_list li .btn-lnb .gray_txt {
  margin-bottom: 4px;
  color: #767676;
  font-weight: 500;
  font-size: 16px;
  line-height: 140%;
}
.faq_list li .btn-lnb h2 {
  font-weight: 600;
  font-size: 18px;
  line-height: 140%;
  padding-right: 30px;
  display: flex;
}
.faq_list li .btn-lnb::before {
  content: "";
  width: 32px;
  height: 32px;
  background: url(../_img/icon/icon_q.svg) no-repeat center center / contain;
}
.faq_list li .btn-lnb.active h2 {
  color: #159bff;
}
.faq_list li .btn-lnb.active::before {
  background: url(../_img/icon/icon_q_on.svg) no-repeat center center / contain;
}
.faq_list li .btn-lnb .arrow_down {
  background: url(../_img/icon/icon_gray_arrowdown.svg) no-repeat center center / contain;
  width: 22px;
  height: 22px;
  transition: transform 0.3s;
  position: absolute;
  bottom: 23px;
  right: 20px;
}
.faq_list li .btn-lnb.active .arrow_down {
  transform: rotate(180deg);
}

.faq_list li .lnb__list {
  background: #f7f7fb;
  border-bottom: 1px solid #f7f7fb;
  padding: 20px;
  display: flex;
  gap: 13px;
}
.faq_list li .lnb__list::before {
  content: "";
  width: 32px;
  height: 32px;
  background: url(../_img/icon/icon_a.svg) no-repeat center center / contain;
  flex-shrink: 0;
  display: inline-block;
}
.faq_list li .lnb__list .lnb_text {
  display: block;
}
.faq_list li .lnb__list p {
  color: #505050;
  font-weight: 500;
  font-size: 16px;
  line-height: 160%;
}
.qna_go_box {
  border: 1px solid #e5e5ec;
  padding: 32px;
  border-radius: 4px;
}
.qna_go_box h1 {
  color: #333333;
  font-weight: 400;
  font-size: 36px;
  line-height: 140%;
  margin-bottom: 8px;
}
.qna_go_box h2 {
  margin-bottom: 8px;
  font-weight: 700;
  font-size: 16px;
  line-height: 140%;
}
.qna_go_box h3 {
  margin-bottom: 12px;
  font-weight: 400;
  font-size: 16px;
  line-height: 140%;
}

.qna_go_box p {
  color: #767676;
  font-weight: 500;
  font-size: 14px;
  line-height: 140%;
}
.qna_go_box .btn {
  margin-top: 32px;
}
.other_help_list {
  display: flex;
  gap: 8px;
  align-items: center;
  flex-wrap: wrap;
}
.other_help_list li {
  flex: 1;
  align-self: stretch;
}
.other_help_list li a {
  background: #f7f7fb;
  border-radius: 4px;
  padding: 32px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 100%;
  width: 100%;
  gap: 20px;
  min-width: 300px;
}
.other_help_list li .arrow_right {
  width: 40px;
  height: 40px;
  background: url(../_img/icon/icon_arrow_btn_wh.svg) no-repeat center center/contain;
  flex-shrink: 0;
}
.other_help_list li .txt h1 {
  font-weight: 700;
  font-size: 20px;
  line-height: 140%;
  margin-bottom: 8px;
}
.other_help_list li .txt h4 {
  font-weight: 500;
  font-size: 14px;
  line-height: 140%;
}
.pagination {
  display: flex;
  align-items: center;
  gap: 16px;
  justify-content: center;
  margin-top: 32px;
}
.pagination .paging {
  display: flex;
  align-items: center;
  gap: 2px;
}
.pagination a {
  width: 38px;
  height: 38px;
  display: inline-block;
  text-align: center;
  line-height: 38px;
  color: #000000;
  font-weight: 600;
  font-size: 13px;
  border-radius: 100%;
}
.pagination .paging li.active a {
  background: #159bff;
  color: #fff;
}
.pagination .prev_page {
  background: url(../_img/icon/icon_arrow_left.svg) no-repeat center center / contain;
}
.pagination .naxt_page {
  background: url(../_img/icon/icon_arrow_left.svg) no-repeat center center / contain;
  rotate: 180deg;
}
.notice_de {
  margin-top: 32px;
}
.notice_de .title_area {
  padding-bottom: 20px;
  border-bottom: 1px solid #e5e5ec;
}
.notice_de .title_area h1 {
  font-weight: 700;
  font-size: 24px;
  line-height: 140%;
  margin-bottom: 12px;
}
.notice_de .title_area .date {
  display: flex;
  gap: 8px;
  align-items: center;
}
.notice_de .title_area .date p,
.notice_de .title_area .lesson {
  color: #767676;
  font-weight: 500;
  font-size: 16px;
  line-height: 140%;
}
.notice_de .title_area .lesson {
  margin-bottom: 24px;
}
.notice_de .notice_content {
  margin: 20px 0;
  color: #505050;
  font-weight: 500;
  font-size: 16px;
}
.notice_de_btns {
  margin-top: 64px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 8px;
}
.notice_de_btns.mt28 {
  margin-top: 28px;
}
.notice_de_btns .right {
  display: flex;
  gap: 8px;
  align-items: center;
}
.faq_radios {
  /* display: flex;
  gap: 8px; */
  /* overflow: scroll;
  overflow-y: hidden; */
  margin-bottom: 16px;
}
.justi-title_box {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 16px;
  margin-top: 32px;
}
.justi-title_box .sub_tit {
  font-weight: 700;
  font-size: 20px;
  line-height: 140%;
}
.qna_write_inner {
  max-width: 1000px;
  width: 100%;
  padding: 0 20px;
  margin: 0 auto;
}
.qna__area {
  padding-top: 32px;
  border-top: 1px solid #111111;
}
.qna__area .qna__input {
  border: 1px solid #e5e5ec;
  border-radius: 4px;
  padding: 16px;
}
.qna__area .qna__input input {
  height: 48px;
  width: 100%;
  padding: 0;
  padding: 13px 0 9px;
  font-size: 16px;
  border: none;
  border-bottom: 1px solid #e5e5ec;
}
.qna__area .qna__input textarea {
  padding: 13px 0 0;
  width: 100%;
  margin-top: 8px;
  height: 312px;
  border: none;
}
.qna__area .qna__input input::placeholder,
.qna__area .qna__input textarea::placeholder {
  font-size: 16px;
  color: #999999;
}
.file_area {
  width: 100%;
  margin-top: 20px;
  border: 1px solid #e5e5ec;
  border-radius: 4px;
  padding: 4px 4px 4px 14px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: #fff;
}

.file_area .file-upload {
  background: #f1f1f5;
  color: #111111;
  cursor: pointer;
  flex-shrink: 0;
  width: 108px;
}
.file_area #uploadfile {
  display: none;
}
.file_area .placeholder {
  color: #999999;
  font-weight: 400;
  font-size: 16px;
}
.file_area .file_text {
  color: #767676;
  font-weight: 500;
  font-size: 16px;
}
.file_area .file_name {
  display: flex;
  gap: 8px;
  align-items: center;
}
.file_area .file_name p {
  font-weight: 400;
  font-size: 16px;
  line-height: 140%;
  color: #111111;
  text-overflow: ellipsis;
  overflow: hidden;
  word-break: break-word;

  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
}
.file_area .file_name .x_btn {
  width: 20px;
  height: 20px;
  background: url(../_img/icon/icon_x_btn_one.svg) no-repeat center center / contain;
}
.qna__area .right_btns {
  display: flex;
  gap: 8px;
  align-items: center;
  justify-content: end;
  margin-top: 32px;
}

.qna_answer {
  background: #f7f7fb;
  padding: 24px;
  margin-top: 20px;
}
.qna_answer h1 {
  font-weight: 600;
  font-size: 16px;
  line-height: 160%;
  margin-bottom: 12px;
}
.qna_answer .answer {
  color: #505050;
  font-weight: 500;
  font-size: 16px;
  line-height: 160%;
}
.qna_answer .no_answer {
  color: #767676;
  font-weight: 500;
  font-size: 16px;
  line-height: 140%;
  text-align: center;
}
.qna_answer .file_area {
  margin-top: 24px;
}
.login_inner {
  padding: 100px 20px 160px;
  max-width: 480px;
  width: 100%;
  margin: 0 auto;
}

.login_inner .title {
  font-weight: 700;
  font-size: 28px;
  line-height: 140%;
  text-align: center;
}
.login_inner .sub_desc {
  margin-top: 16px;
  color: #767676;
  font-weight: 500;
  font-size: 16px;
  line-height: 140%;
  text-align: center;
  margin-bottom: 32px;
}
.login_inner .sub_desc.mb20 {
  margin-bottom: 20px;
}
.login_inner .join_labels {
  margin-bottom: 32px;
}
.login_inner .login_btns {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.login_inner .login_btns .btn {
  position: relative;
}
.login_inner .login_btns .btn::before {
  width: 24px;
  height: 24px;
  content: "";
  position: absolute;
  left: 16px;
  top: 50%;
  transform: translateY(-50%);
}
.login_inner .login_btns .btn.kakao {
  background: #ffe812;
  color: #111111;
}

.login_inner .login_btns .btn.naver {
  background: #03c759;
  color: #fff;
}
.login_inner .login_btns .btn.kakao::before {
  background: url(../_img/icon/icon_kakao.svg) no-repeat center center / contain;
}
.login_inner .login_btns .btn.naver::before {
  background: url(../_img/icon/icon_naver.svg) no-repeat center center / contain;
}
.login_inner .login_btns .btn.google::before {
  background: url(../_img/icon/icon_google.svg) no-repeat center center / contain;
}
.verification_box {
  border: 1px solid #e5e5ec;
  border-radius: 4px;
  padding: 24px;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.verification_box img {
  width: 24px;
  height: 24px;
  object-fit: contain;
}
.verification_box h1 {
  margin-top: 12px;
  font-weight: 600;
  font-size: 18px;
  line-height: 140%;
}
.verification_box p {
  margin-top: 8px;
  color: #767676;
  font-weight: 500;
  font-size: 14px;
  line-height: 160%;
  text-align: center;
  margin-bottom: 20px;
}
.login_inner .ip_box {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.login_inner .ip_box .btn_input {
  position: relative;
}
.login_inner .ip_box .btn_input .btn {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 4px;
}
.login_inner .ip_box span {
  color: #505050;
  font-size: 16px;
  line-height: 160%;
}
.login_inner .ip_box span .req_txt {
  color: #159bff;
}
.login_inner .sns_list {
  display: flex;
  align-items: center;
  gap: 8px;
}
.agree_box {
  margin-bottom: 32px;
}
.agree_box .check-A {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.agree_box .check-A label {
  display: flex;
  align-items: center;
  gap: 8px;
}
.agree_box .check-A label h3 {
  font-weight: 400;
  font-size: 16px;
  display: flex;
  gap: 4px;
  align-items: center;
}
.agree_box .check-A label h3 .agree_his {
  color: #767676;
}
.agree_box .check-A label h3 .blue_txt {
  color: #159bff;
  font-weight: 600;
}
.agree_box .check-A label h3 .gray_txt {
  color: #999999;
  font-weight: 600;
}
.agree_box .all_agree {
  border: 1px solid #e5e5ec;
  border-radius: 4px;
  padding: 16px;
}
.agree_box .all_agree:has(#checkAll:checked) {
  border: 1px solid #159bff;
}
.agree_box .agree_item {
  padding: 16px;
}
.agree_box .agree_item .go_agree_link {
  display: inline-block;
  background: url(../_img/icon/icon_gray_right.svg) no-repeat center center / contain;
  width: 20px;
  height: 20px;
}
.login_inner .join_success_img {
  width: 56px;
  height: 56px;
  margin: 0 auto 20px;
}
.login_inner .join_success_img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.custom__inner .agree_box p {
  color: #111111;
  font-weight: 700;
  font-size: 20px;
  line-height: 140%;
  margin-bottom: 16px;
}
.custom__inner .agree_box .agree {
  height: 160px;
  border: 1px solid #e5e5ec;
  border-radius: 4px;
  padding: 13px 16px;
  overflow: auto;
}
.custom__inner .agree_box .agree::-webkit-scrollbar {
  display: none;
}
.custom__inner .agree_box .agree h6 p {
  color: #999999;
  font-weight: 400;
  font-size: 16px;
  line-height: 160%;
}
.custom__inner .agree_box .agree_item {
  padding: 16px 0 0;
}
.custom__inner .info_ip_area {
  padding-top: 32px;
  border-top: 1px solid #e5e5ec;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.custom__inner .info_ip_area h1 {
  font-weight: 700;
  font-size: 20px;
  line-height: 140%;
}
.custom__inner .info_ip_area .flex {
  width: 100%;
  gap: 20px;
}
.custom__inner .info_ip_area .flex.sel_area {
  gap: 16px;
}
.custom__inner .info_ip_area .flex.sel_area .ip_box {
  max-width: 320px;
  width: 100%;
}

.custom__inner .info_ip_area .flex.sel_area .ip_box.w500 {
  max-width: 500px;
  width: 100%;
}

.custom__inner .info_ip_area .flex.sel_area .select-primary {
  width: 100%;
}
.custom__inner .info_ip_area .ip_box {
  width: 100%;
}
.custom__inner .info_ip_area .ip_box.B {
  max-width: 320px;
  width: 100%;
}
.custom__inner .info_ip_area .ip_box h6 {
  margin-bottom: 4px;
  color: #505050;
  font-weight: 400;
  font-size: 16px;
  line-height: 140%;
  display: flex;
}
.custom__inner .info_ip_area .ip_box .req_txt {
  color: #159bff;
}
.custom__inner .info_ip_area .ip_box .file_area p {
  color: #999999;
}
.ip_box .textarea_box {
  display: flex;
  flex-direction: column;
  gap: 8px;
  border: 1px solid #e5e5ec;
  border-radius: 4px;
  padding: 16px;
}
.ip_box .textarea_box input {
  height: 48px;
  width: 100%;
  border: none;
  border-bottom: 1px solid #e5e5ec;
  padding: 0;
  border-radius: 0;
  font-size: 16px;
}
.textarea_box input::placeholder,
.textarea_box textarea::placeholder {
  font-size: 16px;
}
.textarea_box textarea {
  height: 152px;
  border: none;
  padding: 13px 0;
}
.textarea_box textarea.big {
  height: 312px;
}
.custom__inner .btn_right {
  display: flex;
  align-items: center;
  justify-content: end;
  margin-top: 32px;
  gap: 8px;
}
.custom__inner .location_area {
  margin-top: 32px;
}
.custom__inner .location_area .map_desc {
  display: flex;
  flex-direction: column;
  gap: 32px;
  width: 100%;
}
.custom__inner .location_area .map_desc .map_area {
  width: 100%;
  aspect-ratio: 1240/520;
  overflow: hidden;
}
.custom__inner .location_area .map_desc .map_text {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.custom__inner .location_area .map_desc .map_text li {
  display: flex;
  align-items: center;
  gap: 16px;
}
.custom__inner .location_area .map_desc .map_text li p.icon {
  width: 74px;
  color: #111111;
  font-weight: 700;
  font-size: 16px;
  display: flex;
  gap: 6px;
  align-items: center;
}
.custom__inner .location_area .map_desc .map_text li h5 {
  font-weight: 400;
  font-size: 16px;
}
.custom__inner .location_area .map_desc .map_text li .txt {
  display: flex;
  gap: 6px;
  align-items: center;
}
.custom__inner .location_area .map_desc .map_text li .txt .subway_txt {
  display: flex;
  gap: 6px;
  align-items: center;
}
.custom__inner .location_area .map_desc .map_text li .bus_icon {
  height: 32px;
  line-height: 32px;
  border-radius: 800px;
  padding: 0 12px;
  font-weight: 600;
  font-size: 14px;
}
.custom__inner .location_area .map_desc .map_text li .bus_icon.green {
  border: 1px solid #a2d05b;
  color: #a2d05b;
}
.custom__inner .location_area .map_desc .map_text li .subway_icon {
  width: 24px;
  height: 24px;
  line-height: 24px;
  flex-shrink: 0;
  text-align: center;
  color: #fff;
  font-weight: 600;
  font-size: 14px;
  border-radius: 100%;
}
.custom__inner .location_area .map_desc .map_text li .subway_icon.sub_2 {
  background: #3bb942;
}
.custom__inner .location_area .map_desc .map_text li .subway_icon.sub_7 {
  background: #5c6e01;
}
.custom__inner .location_area .map_desc .map_text li p.icon::before {
  width: 20px;
  height: 20px;
  content: "";
}
.custom__inner .location_area .map_desc .map_text li p.icon.location::before {
  background: url(../_img/icon/icon_location.svg) no-repeat center center/contain;
}
.custom__inner .location_area .map_desc .map_text li p.icon.bus::before {
  background: url(../_img/icon/icon_bus.svg) no-repeat center center/contain;
}
.custom__inner .location_area .map_desc .map_text li p.icon.subway::before {
  background: url(../_img/icon/icon_subway.svg) no-repeat center center/contain;
}
.custom__inner .location_area .radio_btns {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.join_labels {
  display: flex;
  gap: 2px;
  background: #f7f7fb;
  padding: 4px;
  border-radius: 4px;
}
.input_join {
  flex: 1;
  width: 100%;
  text-align: center;
}
.input_join a {
  width: 100%;
  display: inline-block;
  height: 100%;
  text-align: center;
  color: #999999;
  font-weight: 600;
  font-size: 14px;
  font-style: normal;
  height: 36px;
  line-height: 36px;
  border-radius: 4px;
  cursor: pointer;
}
.input_join.active a {
  background: #ffffff;
  color: #111111;
}
.lab_btn {
  display: flex;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  width: 100%;
}
.lab_btn.open .arrow_down {
  transform: rotate(180deg);
}

.lab_btn .arrow_down {
  background: url(../_img/icon/icon_gray_arrowdown.svg);
  width: 20px;
  transition: transform 0.3s ease;
  height: 20px;
}
/* 약관 및 개인정보 보호 */
.terms_txt {
  color: #505050;
  font-weight: 400;
  font-size: 16px;
  line-height: 160%;
}

/* class */
.class__inner {
  padding: 80px 0 160px;
}
.class__inner .tit {
  font-weight: 700;
  font-size: 36px;
  line-height: 140%;
}
.class__inner .sub_tit {
  margin-top: 16px;
  margin-bottom: 32px;
  color: #767676;
  font-weight: 500;
  font-size: 16px;
  line-height: 140%;
}
.class__inner .top_area {
  border-top: 1px solid #111111;
  border-bottom: 1px solid #e5e5ec;
  padding: 16px 0;
}
.class__inner .top_area .flex.gap8 {
  gap: 8px;
  align-items: center;
}
.class__inner .sub_area {
  border-bottom: 1px solid #e5e5ec;
  padding: 16px 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 30px;
}
.class__inner .sub_area .filter_btn {
  height: 36px;
  line-height: 36px;
  padding: 0 10px 0 8px;
  display: flex;
  gap: 6px;
  align-items: center;
  font-size: 14px;
  font-weight: 600;
}
.short_sel_area .select_basic.sel_mini {
  height: 36px;
  line-height: 36px;
  padding: 0 30px 0 8px;
  display: flex;
  gap: 6px;
  align-items: center;
  font-size: 14px;
  font-weight: 600;
  width: fit-content;
}
.short_sel_area .select_basic.sel_mini:after {
  right: 8px;
}
.class__inner .sub_area .filter_btn::before {
  content: "";
  width: 20px;
  height: 20px;
  background: url(../_img/icon/icon_filter.svg) no-repeat center center/contain;
  display: inline-block;
}
.menuSwiper {
  width: 100%;
}
.sw_category .swiper-slide {
  width: fit-content;
}
.class__inner .detail_area {
  border-bottom: 1px solid #f1f1f5;
}
.class__inner .detail_area table {
  width: 100%;
}
.class__inner .detail_area table th {
  height: 48px;
  background: #f1f1f5;
  color: #111111;
  font-weight: 600;
  font-size: 16px;
}
.class__inner .detail_area table td {
  padding: 0 16px;
}
.class__inner .detail_area .check_box {
  display: flex;
  gap: 24px;
  align-items: center;
}
.class__inner .detail_area .check_box label {
  display: flex;
  align-items: center;
  gap: 6px;
}
.class__inner .detail_area .check_box label p {
  color: #111111;
  font-weight: 500;
  font-size: 16px;
}
.short_sel_area {
  width: 100%;
  display: inline-flex;
  justify-content: flex-end;
  margin-top: 20px;
}
.short_sel_area .select_basic {
  width: 100px;
}
.category_list {
  display: flex;
  gap: 20px;
  align-items: center;
}
.sub_category_list {
  display: flex;
  align-items: center;
  gap: 8px;
}
.sub_category_list::-webkit-scrollbar {
  display: none;
}
.ai_class_area {
  /* background: url(../_img/common/ai_back.png) no-repeat center center / cover; */
  background: linear-gradient(94.63deg, rgba(253, 253, 255, 1) 0%, rgba(192, 208, 243, 1) 100%);
  margin-top: 32px;
  padding-top: 56px;
}
.class_area .title--area {
  display: flex;
  justify-content: space-between;
  margin-bottom: 24px;
  align-items: center;
}
.class_area .title--area.sm {
  margin-bottom: 16px;
}

.class_area .title--area.sm h1 {
  font-size: 20px;
}
.class_area .tit h1 {
  font-weight: 700;
  font-size: 28px;
  line-height: 140%;
}

.class_area .tit .arrow_right {
  display: flex;
  align-items: center;
}
.class_area .arrow_right::after {
  content: "";
  width: 25px;
  height: 24px;
  background: url(../_img/icon/icon_arr_right.svg) no-repeat center center/contain;
}
.class_area .tit h1 b {
  background: linear-gradient(to right, #138feb, #7635a8);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-weight: 700;
}
.class_area .tit h1 b.green {
  background: linear-gradient(to right, #35a854, #159bff);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-weight: 700;
}
.class_area .tit h2 {
  margin-top: 12px;
  color: #767676;
  font-weight: 500;
  font-size: 16px;
  line-height: 140%;
}
.ai_class_area .classSw .swiper-slide {
  width: 100%;
  height: 100%;
  background: #fff;
  border-radius: 8px;
  padding: 16px 16px 20px;
  box-shadow: 0 6px 20px 0 #00000014;
}
.ai_class_area .classSw .swiper-wrapper {
  padding-bottom: 56px;
}
.sw_top_btns {
  display: flex;
  gap: 8px;
  align-items: center;
}
.sw_top_btns .swiper-button-next,
.sw_top_btns .swiper-button-prev {
  position: static;
  margin-top: 0;
}
.classSw_btn {
  width: 38px;
  height: 38px;
  background: url(../_img/icon/icon_sw_btn.svg) no-repeat center center / contain;
}
.two_depth .swiper-button-prev,
.two_depth .swiper-button-next {
  width: 16px;
  height: 16px;

  background: url(../_img/icon/icon_gray_arrowdown.svg) no-repeat center center / contain;
  rotate: 90deg;
}
.two_depth .sw_top_btns .swiper-pagination {
  position: static;
  width: fit-content;
  font-size: 14px;
  color: #999999;
  font-weight: 500;
}
.two_depth .sw_top_btns .swiper-pagination-current {
  color: #111111;
}

.two_depth .sw_top_btns .swiper-button-next {
  rotate: -90deg;
}
.sw_top_btns .swiper-button-next {
  rotate: 180deg;
}
.sw_top_btns .swiper-button-next:after,
.sw_top_btns .swiper-button-prev:after {
  display: none;
}
.class_area.two_depth {
  padding: 48px 0;
}

.short_de_inner .class_area.two_depth {
  padding-top: 0;
}
.short_area {
  padding: 56px 0;

  background: url(../_img/common/ai_back.png) no-repeat center center / cover;
}
.wrokrun_short_list li .img_box {
  width: 100%;
  aspect-ratio: 232/280;
  border-radius: 4px;
  overflow: hidden;
  margin-bottom: 8px;
}
.wrokrun_short_list li .img_box img {
  width: 100%;

  height: 100%;
  object-fit: cover;
}
.wrokrun_short_list li .tit {
  font-weight: 600;
  font-size: 16px;
  line-height: 160%;
  text-overflow: ellipsis;
  overflow: hidden;
  word-break: break-word;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  margin-bottom: 12px;
}
.wrokrun_short_list li .views {
  display: flex;
  gap: 4px;
  align-items: center;
}
.wrokrun_short_list li .view_txt {
  color: #767676;
  font-weight: 500;
  font-size: 12px;
}
.wrokrun_short_list li .view_icon {
  width: 16px;
  height: 16px;
  background: url(../_img/icon/icon_eyes.svg) no-repeat center center / contain;
  flex-shrink: 0;
}
.all_class_sec {
  padding: 48px 0 0;
}
.all_class_sec.pb48 {
  padding-bottom: 48px;
}
.all_class_sec .recommend_list.flex {
  /* display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  column-gap: 20px;
  row-gap: 48px; */
  display: grid;
  grid-template-columns: repeat(auto-fill, 295px);
  justify-content: center;
  column-gap: 20px;
  row-gap: 48px;
}
.all_class_sec .recommend_list.flex li {
  flex: 1;
  width: 100%;
}
.all_class_sec .recommend_list.flex.shorts li button {
  width: 100%;
}
.class_de_inner {
  padding: 40px 0 160px;
}
.breadcrumb {
  display: flex;
  align-items: center;
  margin-bottom: 20px;
}
.breadcrumb span {
  color: #767676;
  font-weight: 500;
  font-size: 14px;
  display: flex;
  align-items: center;
}
.breadcrumb span:not(.current)::after {
  content: "";
  width: 20px;
  height: 20px;
  background: url(../_img/icon/icon_gray_arrow_B.svg) no-repeat center center/contain;
  display: inline-block;
}
.breadcrumb span.current {
  color: #111111;
  font-weight: 500;
  font-size: 14px;
}
.class_de_inner .class_desc {
  display: flex;
  gap: 40px;
  align-items: stretch;
}
.class_de_inner .class_desc .img_box {
  max-width: 720px;
  width: 100%;
  aspect-ratio: 720/424;
  overflow: hidden;
  border-radius: 4px;
}
.class_de_inner .class_desc .img_box img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.class_de_inner .class_desc .desc_txt h1 {
  font-weight: 700;
  font-size: 28px;
  line-height: 140%;
  margin-bottom: 16px;
}
.desc_txt .type_list {
  display: flex;
  gap: 17px;
  align-items: center;
  margin-bottom: 16px;
}
.desc_txt .type_list span {
  color: #111111;
  font-weight: 500;
  font-size: 14px;
  position: relative;
}
.desc_txt .type_list span:not(:last-child)::after {
  content: "";
  width: 1px;
  height: 16px;
  background: #e5e5ec;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: -8px;
}
.class_de_inner .class_desc .desc_txt {
  max-width: 480px;
  width: 100%;
}
.desc_txt .type_list .type_icon {
  display: flex;
  gap: 4px;
  align-items: center;
}
.desc_txt .type_list .type_icon::before {
  content: "";
  width: 16px;
  height: 16px;
  display: inline-block;
}
.desc_txt .type_list .type_icon.book::before {
  background: url(../_img/icon/icon_book.svg) no-repeat center center / contain;
}
.desc_txt .type_list .type_icon.setting::before {
  background: url(../_img/icon/icon_setting.svg) no-repeat center center / contain;
}
.desc_txt .type_list .type_icon.play::before {
  background: url(../_img/icon/icon_play.svg) no-repeat center center / contain;
}
.desc_txt .type_list .type_icon.course::before {
  background: url(../_img/icon/icon_course.svg) no-repeat center center / contain;
}
.desc_txt .type_list .type_icon.course::before {
  background: url(../_img/icon/icon_course.svg) no-repeat center center / contain;
}
.class_de_inner .class_desc .desc_txt .explanation {
  color: #767676;
  font-weight: 400;
  font-size: 14px;
  line-height: 160%;
  margin-bottom: 16px;
}
.class_de_inner .class_desc .desc_txt .badges-tag {
  margin-bottom: 24px;
}

.class_de_inner .class_desc .desc_txt .inform {
  border-radius: 4px;
  padding: 16px;
  background: #f7f7fb;
  margin-bottom: 20px;
}
.class_de_inner .class_desc .desc_txt .inform h3 {
  font-weight: 600;
  font-size: 16px;
  line-height: 140%;
  margin-bottom: 12px;
}
.class_de_inner .class_desc .desc_txt .inform .sub {
  display: flex;
  align-items: center;
  gap: 8px;
}
.class_de_inner .class_desc .desc_txt .inform .sub p {
  color: #505050;
  font-weight: 500;
  font-size: 15px;
  line-height: 140%;
  display: flex;
  align-items: center;
  gap: 8px;
}
.class_de_inner .class_desc .desc_txt .inform .sub p:not(:last-child)::after {
  content: "";
  width: 1px;
  height: 16px;
  background: #e5e5ec;
}
.class_de_inner .rating_area {
  padding: 40px 0;
}
.class_de_inner .rating_area .rating_tit {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 16px;
}
.class_de_inner .rating_area .rating_tit h1 {
  font-weight: 700;
  font-size: 24px;
  line-height: 140%;
}
.class_de_inner .rating_area .rating_tit h1 b {
  font-weight: 700;
  color: #159bff;
}
.class_de_inner .rating_area .rating_tit .go_rating {
  color: #767676;
  font-weight: 600;
  font-size: 16px;
  display: flex;
  align-items: center;
}
.class_de_inner .rating_area .rating_tit .go_rating::after {
  content: "";
  width: 20px;
  height: 20px;
  display: inline-block;
  background: url(../_img/icon/icon_gray_arrowdown.svg) no-repeat center center/contain;
  rotate: -90deg;
}
.rating_area .rating_list {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 12px;
}
.rating_area .rating_list li {
  width: 100%;
  box-shadow: 0 6px 20px 0 #00000014;
  border: 1px solid #f1f1f5;
  border-radius: 8px;
  padding: 16px 20px;
  background: #ffffff;
}
.rating_area .rating_list li .content {
  color: #505050;
  font-weight: 400;
  font-size: 14px;
  line-height: 160%;
  margin-top: 8px;
}
.rating_box {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.rating_box .rating_id {
  display: flex;
  gap: 8px;
  align-items: center;
}
.rating_box .rating_id .id {
  color: #767676;
  font-weight: 400;
  font-size: 14px;
  display: flex;
  gap: 8px;
  align-items: center;
}
.rating_box .rating_id .id::after {
  content: "";
  width: 1px;
  height: 16px;
  background: #e5e5ec;
}
.rating_box .rating_id .gray_badge {
  padding: 0 6px;
  height: 28px;
  line-height: 28px;
  border-radius: 4px;
  color: #111111;
  font-weight: 600;
  font-size: 14px;
}
.rating_box .rating_num {
  color: #111111;
  font-weight: 500;
  font-size: 14px;
  display: flex;
  align-items: center;
  gap: 4px;
}
.rating_box .rating_num::before {
  content: "";
  width: 14px;
  height: 14px;
  background: url(../_img/icon/icon_blue_star.svg) no-repeat center center / contain;
}
.class_de_inner .flex.gap56 {
  gap: 56px;
  border-top: 1px solid #e5e5ec;
  padding-top: 40px;
}
.class_de_inner .sub_box {
  flex: 1;
}

.class_de_inner .sub_box .title {
  font-weight: 700;
  font-size: 24px;
  line-height: 140%;
  text-align: left;
  margin-bottom: 16px;
}

.creator_area .gray_line {
  margin: 32px 0;
}
.creator_area .instructor {
  display: flex;
  gap: 20px;
  align-items: flex-start;
}
.creator_area .instructor img {
  width: 56px;
  height: 56px;
  object-fit: cover;
  overflow: hidden;
  border-radius: 100%;
}
.creator_area .instructor .txt .name {
  margin-bottom: 8px;
  font-weight: 700;
  font-size: 16px;
  line-height: 160%;
}
.creator_area .instructor .txt .instructor_his {
  color: #505050;
  font-weight: 400;
  font-size: 14px;
  line-height: 160%;
}
.creator_area .class_explan .gray_explan {
  color: #505050;
  font-weight: 500;
  font-size: 16px;
  line-height: 160%;
}
.class_course_area .blue_box {
  background: #f7f7fb;
  border-radius: 4px;
  padding: 12px 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 16px;
  gap: 8px;
  flex-wrap: wrap;
}
.class_course_area .blue_box h2 {
  font-weight: 700;
  font-size: 20px;
  line-height: 140%;
}
.class_course_area .blue_box .btns {
  display: flex;
  gap: 8px;
}
.class_course_area .blue_box .btns .btn {
  height: 36px;
  line-height: 36px;
  font-size: 14px;
  font-weight: 600;
  display: flex;
  gap: 6px;
  align-items: center;
}
.class_course_area .blue_box .btns .video::before {
  content: "";
  width: 20px;
  height: 20px;
  background: url(../_img/icon/icon_play.svg) no-repeat center center/contain;
}
.class_course_area .blue_box .btns .file_down::before {
  content: "";
  width: 20px;
  height: 20px;
  background: url(../_img/icon/icon_down.svg) no-repeat center center/contain;
}
.course_list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.course_list li {
  border: 1px solid #e5e5ec;
  border-radius: 4px;
}
.course_list li .btn-lnb {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;

  padding: 16px 20px;
}
.course_list li .btn-lnb .type_list {
  display: flex;
  align-items: center;
  gap: 17px;
  margin-bottom: 4px;
}
.course_list li .btn-lnb .type_list span {
  color: #999999;
  font-weight: 500;
  font-size: 14px;
  display: flex;
  gap: 4px;
  align-items: center;
  position: relative;
}
.course_list li .btn-lnb .type_list .type_icon::before {
  content: "";
  width: 20px;
  height: 20px;
  display: inline-block;
}
.course_list li .btn-lnb .type_list .type_icon.play::before {
  background: url(../_img/icon/icon_play.svg) no-repeat center center / contain;
}
.course_list li .btn-lnb .type_list span:not(:last-child)::after {
  width: 1px;
  height: 16px;
  background: #e5e5ec;
  content: "";
  position: absolute;
  top: 50%;
  right: -8px;
  transform: translateY(-50%);
}
.course_list li .btn-lnb h2 {
  font-weight: 600;
  font-size: 16px;
  line-height: 140%;
  text-align: left;
}
.course_list li .btn-lnb .arrow_down {
  background: url(../_img/icon/icon_gray_arrowdown.svg) no-repeat center center / contain;
  width: 18px;
  height: 18px;
  transition: transform 0.3s;
}
.course_list li .btn-lnb.active .arrow_down {
  transform: rotate(180deg);
}
.course_list li .btn-lnb.active {
  background: #f7f7fb;
}
.course_list .lnb__list {
  border-top: 1px solid #e5e5ec;
  padding: 12px 20px 16px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.course_list .lnb__list .btns {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  margin-top: 8px;
}
.course_list .lnb__list p {
  color: #000000;
  font-weight: 500;
  font-size: 14px;
  line-height: 140%;
}
/* shorts */
.class__inner .detail_area.shorts {
  border-top: 1px solid #111111;
}
.class__inner .detail_area.shorts td,
.class__inner .detail_area.shorts th {
  border-bottom: 1px solid #f1f1f5;
}
.all_class_sec.shorts {
  padding-top: 20px;
}
.all_class_sec.shorts.pt0 {
  padding-top: 0;
}
.all_class_sec .recommend_list.flex.shorts {
  grid-template-columns: repeat(auto-fill, 232px);
}
.recommend_list.shorts .img_box {
  aspect-ratio: 232 / 280;
}
.shorts_de .video_area {
  width: 100%;
  aspect-ratio: 1240/680;
  border-radius: 4px;
  overflow: hidden;
}
.shorts_de .shorts_text {
  margin-top: 40px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.shorts_de .shorts_text h1 {
  color: #111111;
  font-weight: 700;
  font-size: 28px;
  line-height: 140%;
}
.payment_title {
  font-weight: 700;
  font-size: 36px;
  line-height: 140%;
  padding-bottom: 32px;
  border-bottom: 1px solid #111111;
}
.payment_area {
  gap: 40px;
  padding-top: 32px;
}
.payment_area .inform_area {
  max-width: 760px;
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.payment_area .sub_title {
  font-weight: 700;
  font-size: 20px;
  line-height: 140%;
  margin-bottom: 12px;
}
.payment_area .sub_title .blue {
  color: #159bff;
  font-weight: 700;
  margin-left: 4px;
}
.payment_area .pay_list {
  gap: 12px;
}
.payment_area .pay_list label {
  width: 100%;
}
.payment_area .class_inform.pc,
.payment_area .class_inform.membership {
  border: 1px solid #e5e5ec;
  border-radius: 4px;
  padding: 16px;
  display: flex;
  gap: 20px;
}
.payment_area .class_inform.mo {
  display: none;
}
.payment_area .class_inform.blue {
  background: #f7f7fb;
}
.payment_area .class_inform.blue h1 {
  font-weight: 600;
  font-size: 16px;
  line-height: 140%;
}
.payment_area .class_inform img {
  width: 56px;
  height: 56px;
  flex-shrink: 0;
  object-fit: cover;
  border-radius: 4px;
  overflow: hidden;
}
.payment_area .class_inform .desc_txt {
  width: 100%;
}
.payment_area .class_inform .desc_txt h2 {
  font-weight: 600;
  font-size: 18px;
  line-height: 140%;
  margin-bottom: 8px;
}
.payment_area .class_inform .desc_txt .type_list {
  margin-bottom: 8px;
}
.payment_area .class_inform .desc_txt .sub {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 8px;
}
.payment_area .class_inform .desc_txt .sub p {
  color: #767676;
  font-weight: 500;
  font-size: 14px;
  line-height: 140%;
  display: flex;
  align-items: center;
  gap: 8px;
}
.payment_area .class_inform .desc_txt .sub p:not(:last-child)::after {
  content: "";
  width: 1px;
  height: 16px;
  background: #e5e5ec;
}
.payment_area .period_box {
  background: #f7f7fb;
  border-radius: 4px;
  padding: 12px 16px;
  width: 100%;
}
.payment_area .period_box.mt12 {
  margin-top: 12px;
}
.payment_area .period_box.mt12 h3 {
  align-items: flex-start;
}
.payment_area .period_box h3 {
  display: flex;
  gap: 6px;
  align-items: center;
  font-weight: 600;
  font-size: 14px;
}
.payment_area .period_box h3::before {
  content: "";
  width: 20px;
  height: 20px;
  background: url(../_img/icon/icon_warning.svg) no-repeat center center / contain;
}
.payment_area .inform_area .point_box {
  display: flex;
  align-items: center;
  gap: 20px;
  background: #f7f7fb;
  padding: 12px 16px;
  height: 56px;
  border-radius: 4px;
  margin-bottom: 12px;
}
.payment_area .inform_area .point_box p {
  color: #111111;
  font-weight: 600;
  font-size: 16px;
}
.payment_area .inform_area .point_box h4 {
  color: #111111;
  font-weight: 600;
  font-size: 18px;
}
.payment_area .inform_area .ip_box {
  position: relative;
  width: 100%;
}
.payment_area .inform_area .ip_box input {
  height: 48px;
  width: 100%;
  font-size: 16px;
  font-weight: 600;
}
.payment_area .inform_area .ip_box .btn {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 4px;
}
.payment_area .custom_area {
  max-width: 440px;
  width: 100%;
  border: 1px solid #e5e5ec;
  height: fit-content;
  border-radius: 4px;
  box-shadow: 6px 6px 20px 0 #0000000a;
}
.payment_area .custom_area .customer_inform {
  padding: 24px;
}
.payment_area .custom_area .customer_inform h1 {
  margin-bottom: 16px;
  font-weight: 700;
  font-size: 20px;
  line-height: 140%;
}
.payment_area .custom_area .customer_inform .customer_list {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.payment_area .custom_area .customer_inform .customer_list li {
  display: flex;
  gap: 16px;
  align-items: center;
}
.payment_area .custom_area .customer_inform .customer_list li p {
  color: #505050;
  font-size: 16px;
  line-height: 140%;
}
.payment_area .custom_area .customer_inform .customer_list li .w72 {
  width: 72px;
}
.price-summary {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  border-top: 1px solid #e5e5ec;
  border-bottom: 1px solid #e5e5ec;
  overflow: hidden;
  background: #fff;
}
.price-summary.four_grid {
  grid-template-columns: repeat(4, 1fr);
}
.price-summary .cell {
  position: relative;
  text-align: center;
  padding: 0 24px;
  height: 80px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.price-summary .cell + .cell {
  border-left: 1px solid #e5e5ec;
}

.price-summary .label {
  font-size: 14px;
  color: #111111;
  font-weight: 500;
  margin-bottom: 3px;
}

.price-summary .value {
  font-size: 16px;
  font-weight: 700;
}

.price-summary .label.total,
.price-summary .value.total {
  color: #159bff;
}

.price-summary .op-minus::after,
.price-summary .op-equals::after {
  z-index: 1;
  content: "";
  position: absolute;
  top: 50%;
  right: -1px;
  transform: translate(50%, -50%);
  width: 20px;
  height: 20px;
  content: "";
  border-radius: 50%;
}
.price-summary .op-minus::after {
  background: url(../_img/icon/icon_minus.svg) no-repeat center center / contain;
}
.price-summary .op-equals::after {
  background: url(../_img/icon/icon_equals.svg) no-repeat center center / contain;
}

.payment_area .refund-box {
  padding: 16px 24px 24px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.payment_area .refund-box .check-A {
  display: flex;
  gap: 8px;
  align-items: center;
}
.payment_area .refund-box .check-A h6 {
  font-weight: 400;
  font-size: 16px;
}
.payment_area .refund-box .check-A h6 b {
  font-weight: 600;
  color: #159bff;
}
.payment_area .refund-box .refund_blue {
  background: #f7f7fb;
  border-radius: 4px;
  padding: 16px;
}
.payment_area .refund-box .refund_blue h4 {
  margin-bottom: 12px;
  font-weight: 500;
  font-size: 15px;
  line-height: 150%;
}
.payment_area .refund-box .refund_blue .refund_list {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.payment_area .refund-box .refund_blue .refund_list li {
  color: #111111;
  font-weight: 400;
  font-size: 14px;
  line-height: 150%;
}
.payment_area .refund-box .refund_blue hr.gray_line {
  margin: 8px 0;
}
.border-top {
  border-top: 1px solid #111111;
}
.search_tit {
  margin-bottom: 24px;
  font-weight: 700;
  font-size: 28px;
  line-height: 140%;
}
.search_tit b {
  color: #159bff;
  font-weight: 700;
}
.more_btns {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 24px;
}
.more_btns .btn {
  width: 120px;
  justify-content: center;
  display: flex;
  gap: 6px;
  align-items: center;
  font-weight: 600;
  padding: 0 14px 0 16px;
}
.more_btns .btn::after {
  content: "";
  width: 18px;
  height: 18px;
  background: url(../_img/icon/icon_arrow_right_bl.svg) no-repeat center center / contain;
  rotate: 90deg;
}
.membership_tit {
  margin-bottom: 24px;
  font-size: 24px;
  line-height: 140%;
  font-weight: 700;
}
.membership--tit {
  padding: 0 32px;
  height: 56px;
  line-height: 56px;
  background: linear-gradient(90deg, rgba(21, 155, 255, 1) 0%, rgba(21, 155, 255, 0) 100%);
  border-radius: 12px;
  color: #ffffff;
  font-size: 24px;
  font-weight: 700;
}
.benefit_area {
  margin-top: 20px;
  margin-bottom: 32px;
  gap: 20px;
  display: flex;
  flex-wrap: wrap;
}
.benefit_area li {
  border-radius: 12px;
  width: calc(50% - 10px);
  border: 1px solid #e5e5ec;
  padding: 28px 24px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.benefit_area li h2 {
  font-weight: 700;
  font-size: 20px;
  line-height: 140%;
}
.benefit_area li p {
  color: #767676;
  font-weight: 500;
  font-size: 16px;
  line-height: 160%;
}
.membership--price {
  color: #767676;
  text-align: center;
  font-weight: 500;
  font-size: 18px;
  height: 65px;
  line-height: 65px;
  border-radius: 12px;
  padding: 0 20px;
  background: #f7f7fb;
  border: 1px solid #e5e5ec;
  margin-top: 20px;
}
.membershippay_list {
  display: flex;
  gap: 20px;
}

.membershippay_list > li {
  border: 1px solid #e5e5ec;
  background: #fff;
  width: 100%;
  border-radius: 12px;
  padding: 24px 24px 20px;
  box-shadow: 0px 8px 24px 0px rgba(0, 0, 0, 0.1);
}
.membershippay_list > li h1 {
  font-size: 22px;
  font-weight: 700;
  line-height: 140%;
  margin-bottom: 24px;
}
.membershippay_list .price {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.membershippay_list .price li {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.membershippay_list .price li .gray {
  color: #505050;
  font-size: 16px;
  font-weight: 500;
}
.membershippay_list .price li .line {
  color: #999999;
  font-size: 16px;
  text-decoration: line-through;
}
.membershippay_list .price li b {
  color: #111111;
  font-weight: 600;
  font-size: 16px;
}
.membershippay_list .warning_box {
  background: #f7f7fb;
  border-radius: 4px;
  padding: 12px 16px;
  margin: 24px 0 40px;
}
.membershippay_list .warning_box.mb0 {
  margin-bottom: 0;
}
.membershippay_list .warning_box h6 {
  font-weight: 500;
  font-size: 14px;
  display: flex;
  align-items: center;
  gap: 6px;
}
.membershippay_list .warning_box h6::before {
  content: "";
  width: 20px;
  height: 20px;
  background: url(../_img/icon/icon_warning.svg) no-repeat center center/contain;
}
.membershippay_list .day_choice {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 60px;
}
.membershippay_list .day_choice p {
  color: #505050;
  font-weight: 500;
  font-size: 16px;
}
.membershippay_list .day_choice .flex {
  align-items: center;
  gap: 8px;
}
.membershippay_list .day_choice .counter {
  display: flex;
  align-items: center;
  border: 1px solid #e5e5ec;
  border-radius: 4px;
}
.membershippay_list .day_choice .counter button {
  width: 36px;
  height: 36px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.membershippay_list .day_choice .counter img {
  width: 16px;
  height: 16px;
  object-fit: contain;
  display: inline-block;
}
.membershippay_list .day_choice .counter .count {
  border-left: 1px solid #e5e5ec;
  border-right: 1px solid #e5e5ec;
  display: inline-block;
  height: 36px;
  line-height: 36px;
  width: 52px;
  text-align: center;
  color: #111111;
  font-weight: 500;
  font-size: 16px;
}
.membershippay_list .membership--total {
  display: flex;
  align-items: center;
  margin-bottom: 20px;
  justify-content: flex-end;
}
.membershippay_list .membership--total.no_discount {
  justify-content: space-between;
}
.membershippay_list .membership--total .badge {
  font-weight: 500;
  height: 34px;
  line-height: 34px;
}
.membershippay_list .membership--total .total_price {
  display: flex;
  gap: 8px;
  align-items: center;
}
.membershippay_list .membership--total .total_price .line {
  text-decoration: line-through;
  color: #999999;
  font-size: 16px;
}
.membershippay_list .membership--total .total_price .green {
  color: #35a854;
  font-size: 16px;
  font-weight: 600;
}
.membershippay_list .membership--total .total_price .blue {
  color: #159bff;
  font-size: 16px;
  font-weight: 600;
}
.membershippay_list .membership--total h2 {
  font-weight: 700;
  line-height: 140%;
  font-size: 22px;
}
.membershippay_list .btn-big {
  font-size: 18px;
}
/* community */
.commuity_list li a {
  height: fit-content;
  padding: 20px;
}
.commuity_list li a .txt {
  display: flex;
  flex-direction: column;
  gap: 4px;
  width: 100%;
}
.commuity_list li a .lesson {
  color: #767676;
  font-weight: 500;
  font-size: 14px;
  line-height: 140%;
}
.commuity_list li a .right {
  max-width: 220px;
  width: 100%;
  display: flex;
  gap: 20px;
  align-items: center;
  justify-content: end;
}
.commuity_list li a .date_area,
.class_list .date_area {
  display: flex;
  gap: 4px;
  margin-top: 12px;
  align-items: center;
}
.commuity_list li a .date_area .date_txt:not(:last-child)::after,
.class_list .date_area .date_txt:not(:last-child)::after {
  content: "·";
  color: #767676;
  font-size: 14px;
  font-weight: 500;
  display: inline-block;
  margin-left: 4px;
}
.commuity_list li a .date_txt,
.class_list .date_area .date_txt {
  font-size: 14px;
  color: #767676;
  flex-shrink: 0;
}
.commuity_list li a .badge,
.qna_tit_area .badge {
  width: fit-content;
  min-width: fit-content;
  padding: 0 10px;
  font-size: 14px;
  font-weight: 700;
  border-radius: 4px;
}
.commuity_de .title_area .date {
  gap: 4px;
}
.commuity_de .title_area .date p:not(:last-child)::after {
  content: "·";
  color: #767676;
  font-size: 16px;
  font-weight: 500;
  display: inline-block;
  margin-left: 4px;
}

.commuity_list li a .badge_gray,
.qna_tit_area .badge_gray {
  border: 1px solid #e5e5ec;
  color: #000;
  background: #fff;
}

.commuity_list li a .badge_blue,
.qna_tit_area .badge_blue {
  color: #159bff;
  background: #ecf7ff;
}
.qna_tit_area {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.qna_answer_de .info_ip_area {
  border-top: none;
  padding-top: 0;
}
.qna_answer_de.notice_de .title_area {
  padding-bottom: 16px;
  margin-bottom: 28px;
}
.tbl_pc {
  display: table-column-group;
}
.tbl_mo {
  display: none;
}
.sub_category_list {
  overflow: auto;
  overflow-y: hidden;
  width: 100%;
}
.tbl_wrap {
  overflow: auto;
  overflow-y: hidden;
}
.tbl_wrap::-webkit-scrollbar {
  display: none;
}
.class__inner .detail_area table {
  table-layout: fixed;
}
.top_area .category_list {
  overflow: auto;
  overflow-y: hidden;
}
.file__box {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.file__box .file_area {
  margin-top: 0;
}
.coupon_alert {
  background: rgba(53, 168, 84, 0.08);
  border-radius: 4px;
  padding: 12px 16px;
  display: flex;
  gap: 6px;
  align-items: center;
  margin-top: 12px;
}
.coupon_alert img {
  width: 20px;
  height: 20px;
  object-fit: contain;
}
.coupon_alert h3 {
  color: #35a854;
  font-weight: 600;
  font-size: 14px;
}
.intro__inner.sec01 {
  padding: 167px 0;
}
.intro__inner {
  padding: 120px 0;
}

.intro__inner.sec02 {
  background: url(../_img/common/review_back.png) no-repeat center center / cover;
}
.intro__inner.blue_back {
  background: #f7f7fb;
}
.intro__inner .tit {
  margin-bottom: 40px;
}
.intro__inner .tit span {
  color: #159bff;
  font-weight: 600;
  font-size: 20px;
  line-height: 160%;
  margin-bottom: 8px;
  display: inline-block;
}
.intro__inner .tit h1 {
  color: #111111;
  font-weight: 700;
  font-size: 36px;
  line-height: 130%;
}
.intro__inner .tit h1.big {
  font-size: 48px;
}
.intro__inner .tit p {
  margin-top: 16px;
  color: #767676;
  font-size: 16px;
  line-height: 160%;
  font-weight: 500;
}
.intro__inner.sec01 .intro_img {
  width: 100%;
  aspect-ratio: 1240/468;
  border-radius: 12px;
  overflow: hidden;
}
.intro__inner.sec01 .intro_img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.intro__inner .need_list {
  display: flex;
  gap: 20px;
}
.intro__inner .need_list li {
  flex: 1;
  display: flex;
  flex-direction: column;
  background: #ffffff;
  border-radius: 12px;
  box-shadow: 10px 10px 30px 0px rgba(0, 0, 0, 0.06);
  padding: 32px;
}
.intro__inner .need_list li .num {
  margin-bottom: 20px;
  color: #111111;
  font-weight: 600;
  font-size: 24px;
  line-height: 24px;
}
.intro__inner .need_list li h1 {
  color: #111111;
  font-weight: 700;
  font-size: 24px;
  line-height: 140%;
}
.intro__inner .need_list li p {
  height: 130px;
  color: #767676;
  font-weight: 500;
  font-size: 16px;
  line-height: 160%;
  margin-top: 60px;
}
.intro__inner .blue_gradation {
  background: linear-gradient(90deg, rgba(21, 155, 255, 1) 0%, rgba(21, 155, 255, 0) 100%);
  border-radius: 12px;
  height: 56px;
  line-height: 56px;
  padding: 0 32px;
  color: #ffffff;
  font-weight: 700;
  font-size: 24px;
  margin-bottom: 20px;
}

.intro__inner .core_list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  grid-auto-rows: 1fr;
}
.intro__inner .core_list li {
  width: 100%;
  border: 1px solid #e5e5ec;
  background: #fff;
  border-radius: 12px;
  padding: 28px 24px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.intro__inner .core_list li .black_badge {
  display: inline-block;
  border-radius: 800px;
  width: fit-content;
  padding: 0 16px;
  height: 38px;
  line-height: 38px;
  color: #fefefe;
  font-weight: 700;
  font-size: 16px;
}
.intro__inner .core_list li h1 {
  font-weight: 700;
  font-size: 24px;
  line-height: 140%;
}
.intro__inner .core_list li p {
  color: #767676;
  font-weight: 500;
  font-size: 16px;
  line-height: 160%;
}
.intro__inner .advantage_list {
  display: flex;
  flex-direction: column;
}
.intro__inner .advantage_list li {
  border-bottom: 1px solid #111111;
  padding: 32px 0;
  display: flex;
  align-items: center;
}
.intro__inner .advantage_list li .num {
  margin-right: 40px;
  width: 34px;
  height: 34px;
  line-height: 34px;
  background: #f7f7fb;
  color: #111111;
  font-weight: 700;
  font-size: 16px;
  border-radius: 100%;
  text-align: center;
}
.intro__inner .advantage_list li h1 {
  color: #111111;
  font-weight: 700;
  font-size: 24px;
  line-height: 135%;
  width: 100%;
  max-width: 546px;
}
.intro__inner .advantage_list li p {
  max-width: 620px;
  width: 100%;
  color: #767676;
  font-weight: 500;
  font-size: 16px;
  line-height: 160%;
}
.intro__inner .elements_list {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.intro__inner .elements_list li {
  /* height: 112px; */
  padding: 32px;
  border-radius: 16px;
  background: #fff;
  position: relative;
  box-shadow: 10px 10px 30px 0px rgba(0, 0, 0, 0.06);
}
.intro__inner .elements_list li .box {
  display: flex;
  align-items: center;
  width: 100%;
  height: 100%;
}
.intro__inner .elements_list li .num {
  width: 34px;
  height: 34px;
  line-height: 34px;
  background: #f7f7fb;
  color: #111111;
  font-weight: 700;
  font-size: 16px;
  border-radius: 100%;
  text-align: center;
  margin-right: 12px;
}
.intro__inner .elements_list li h1 {
  font-weight: 700;
  font-size: 32px;
  line-height: 135%;
  text-align: left;
  /* width: calc(100% - 241px); */
}
.intro__inner .elements_list li .btn-lnb {
  position: absolute;
  background: #384046;
  border-radius: 800px;
  padding: 0 16px 0 18px;
  display: flex;
  align-items: center;
  gap: 8px;
  height: 48px;
  color: #fefefe;
  font-weight: 700;
  font-size: 16px;
  right: 32px;
  top: 32px;
}
.intro__inner .elements_list li .btn-lnb::after {
  content: "";
  width: 18px;
  height: 18px;
  background: url(../_img/icon/icon_arrow_down_wh.svg) no-repeat center center/contain;
}
.intro__inner .elements_list li .btn-lnb.active {
  border: 1px solid #159bff;
  background: #fff;
  color: #159bff;
}
.intro__inner .elements_list li .btn-lnb.active::after {
  background: url(../_img/icon/icon_arrow_up_blue.svg) no-repeat center center/contain;
}
.intro__inner .elements_list .lnb__list {
  margin-top: 20px;
}
.diagnostic_center {
  display: flex;
  gap: 20px;
}
.diagnostic_center .diagnostic_item {
  border: 1px solid #e5e5ec;
  background: #fff;
  border-radius: 12px;
  flex: 1;
  padding: 28px 24px;
}
.diagnostic_center .diagnostic_item .logo {
  width: 153px;
  height: 56px;
  margin-bottom: 8px;
}
.diagnostic_center .diagnostic_item .logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.diagnostic_center .diagnostic_item p {
  color: #767676;
  font-weight: 500;
  font-size: 16px;
  line-height: 160%;

  height: calc(100% - 134px);
}
.diagnostic_center .diagnostic_item .btn {
  margin-top: 24px;
}
.ai_center {
  display: flex;
  gap: 40px;
  align-items: center;
}
.ai_center .ai_img {
  max-width: 480px;
  width: 100%;
}
.ai_center .ai_img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.ai_center .ai_text {
  padding: 20px 0;
}
.ai_center .ai_text h2 {
  font-weight: 700;
  font-size: 22px;
  line-height: 135%;
  margin-bottom: 8px;
}
.ai_center .ai_text h3 {
  font-weight: 700;
  font-size: 20px;
  line-height: 135%;
}
.ai_center .ai_text p {
  color: #767676;
  font-weight: 500;
  font-size: 16px;
  line-height: 160%;
}
.ai_center .ai_text .sub_lnb_item .btn-lnb-sub {
  display: flex;
  gap: 8px;
  align-items: center;
  color: #999999;
  font-weight: 700;
  font-size: 18px;
  padding: 12px 0;
}
.ai_center .ai_text .sub_lnb_item .btn-lnb-sub::before {
  content: "";
  width: 24px;
  height: 24px;
  background: url(../_img/icon/icon_sub_lnb.svg) no-repeat center center/contain;
}
.ai_center .ai_text .sub_lnb_item .btn-lnb-sub.active {
  color: #159bff;
  padding: 12px 0 10px;
}
.ai_center .ai_text .sub_lnb_item .btn-lnb-sub.active::before {
  background: url(../_img/icon/icon_sub_lnb_ac.svg) no-repeat center center/contain;
}
.ai_center .ai_text .sub_lnb_item .lnb__sub {
  padding: 16px;
}
.ai_center .ai_text .sub_lnb_item .lnb__sub h5 {
  color: #505050;
  font-weight: 500;
  font-size: 16px;
  line-height: 160%;
}
.report_center {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.report_center h2 {
  font-weight: 700;
  font-size: 20px;
  line-height: 140%;
  margin-bottom: 8px;
}
.report_center p {
  color: #767676;
  font-weight: 500;
  font-size: 16px;
  line-height: 160%;
}
.report_center .report_item.flex {
  display: flex;
  gap: 20px;
}
.report_center .report_item_desc {
  flex: 1;
}
.report_center .report_item_desc .report_img {
  background: #f7f7fb;
  width: 100%;
  padding: 32px 0;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 12px;
  margin-bottom: 20px;
}
.report_center .report_item_desc .report_img img {
  width: 278px;
  object-fit: contain;
}
.report_center .report_item.black {
  background: #384046;
  border-radius: 12px;
  padding: 20px 0;
  text-align: center;
}
.report_center .report_item.black p {
  color: #fff;
}
.effect_list {
  display: flex;
  gap: 20px;
}
.effect_list li .head h1 {
  line-height: 66px;
  color: #ffffff;
  font-weight: 700;
  font-size: 24px;
}
.effect_list li .head.blue {
  background: #159bff;
}
.effect_list li .head.black {
  background: #384046;
}
.effect_list li .head.green {
  background: #35a854;
}
.effect_list li .lnb__list--mo .inner_content {
  padding: 20px 24px;
  background: #fff;
}
.effect_list li .lnb__list--mo .inner_content + .inner_content {
  border-top: 1px solid #f1f1f5;
}
.effect_list li .lnb__list--mo .inner_content h2 {
  font-weight: 600;
  font-size: 18px;
  line-height: 150%;
}
.effect_list li .lnb__list--mo .inner_content .desc_list {
  display: flex;
  flex-direction: column;
  gap: 10px;
  min-height: 178px;
}
.effect_list li .lnb__list--mo .inner_content .desc_list li {
  color: #767676;
  font-weight: 500;
  font-size: 16px;
  line-height: 150%;
  text-indent: -10px;
  padding-left: 10px;
}

.effect_list li .lnb__list--mo .inner_content .blue_box {
  background: #f7f7fb;
  border-radius: 4px;
  padding: 12px 0;
  width: 100%;
  margin-top: 12px;
  min-height: 72px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.effect_list li .lnb__list--mo .inner_content .blue_box h4 {
  text-align: center;
  font-weight: 500;
  font-size: 16px;
  line-height: 150%;
}
.pay_tbl {
  margin-bottom: 32px;
  border-top: 1px solid #111111;
}

.pay_tbl th,
.pay_tbl td {
  height: 46px;
  font-weight: 500;
  font-size: 16px;
  border-bottom: 1px solid #e5e5ec;
  padding: 0 16px;
}
.pay_tbl tr:last-child th,
.pay_tbl tr:last-child td {
  border-bottom: 0;
}
.pay_tbl th {
  color: #384046;
  background: #f7f7fb;
}
.pay_tbl td {
  color: #333333;
}
.pay_tbl td b {
  font-weight: 600;
}
/* 추가 */

.report_area .pdf_tbl {
  width: 100%;
}
.report_area .pdf_tbl tr th {
  height: 26px;
  background: #eff2f4;
  color: #111111;
  font-size: 10px;
  font-weight: 500;
  line-height: 140%;
}

.report_area .pdf_tbl tr td.back_gray_1 {
  background: #f8f9fa;
}
.report_area .pdf_tbl tr td.back_gray_deep {
  background: #eff2f4;
}
.report_area .pdf_tbl tr td.purplc_back {
  background: #f5f2ff;
}
.report_area .pdf_tbl tr td {
  height: 26px;
  color: #111111;
  font-size: 10px;
  font-weight: 500;
  line-height: 140%;
  text-align: center;
  padding: 6.5px;
}
.report_area .ip_text_area {
  margin-top: 12px;
  border-radius: 2px;
  overflow: hidden;
  border: 1px solid #eeeeee;
}
.report_area .ip_text_area .ip_tit {
  height: 26px;
  line-height: 26px;
  background: #eff2f4;
  padding: 0 12px;
  color: #111111;
  font-weight: 500;
  font-size: 10px;
}
.report_area .ip_text_area .ip_content {
  padding: 12px;
  color: #333333;
  font-weight: 500;
  font-size: 10px;
  line-height: 160%;
}
.report .modal_bottom_fix {
  position: sticky;
  width: 100%;
  bottom: 0;
  left: 0;
  background: #fff;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 8px;
  padding: 0 20px;
  height: 180px;
}
.flex_title {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.modal-question.class .modal__inner {
  background: #fff;
}
.modal-question.class .modal__inner .title h1,
.modal-question.class .comparison_list li .text h6,
.modal-question.class .modal__header h1 {
  color: #111111;
}
.modal-question.class .reflection_cont .title.flex {
  flex-direction: initial;
  align-items: center;
}
.modal-question.class .reflection_cont .title.flex p {
  color: #505050;
  font-size: 14px;
}
.modal-question.class .btn_modal-close {
  background: url(../_img/icon/icon_x_btn.svg) no-repeat center center / contain;
}
.modal-question.class .comparison_list li {
  background: #f7f7fb;
}
.modal-question.class .comparison_list li .prog,
.modal-question.class .comparison_list li .prog::-webkit-progress-bar {
  background: #e5e5ec;
}
.modal-question.class .fix_btn {
  background: #ffffff;
  border: 1px solid #fff;
}
.modal-question.class .modal__content .reflection_cont::-webkit-scrollbar {
  width: 6px;
  background: #fff;
}

.modal-question.class .modal__content .reflection_cont::-webkit-scrollbar-thumb {
  background: #e5e5ec;
  border-radius: 100px;
}

@media screen and (max-width: 1200px) {
  .platform_list,
  .effect_list {
    flex-direction: column;
  }
  .platform_list li .head {
    height: 56px;
    line-height: 56px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 24px;
  }
  .effect_list li .head {
    height: 63px;
    line-height: 63px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 20px;
  }
  .platform_list li .head .arrow_down,
  .effect_list li .head .arrow_down {
    background: url(../_img/icon/icon_arrow_down_wh.svg) no-repeat center center / contain;
    width: 20px;
    height: 20px;
    transition: transform 0.3s;
  }
  .platform_list li .head.btn-lnb--mo.active .arrow_down,
  .effect_list li .head.btn-lnb--mo.active .arrow_down {
    transform: rotate(180deg);
  }
}

@media screen and (min-width: 768px) and (max-width: 1200px) {
}
@media screen and (max-width: 1000px) {
  .payment_area {
    flex-direction: column;
  }
  .payment_area .custom_area {
    max-width: 100%;
  }
  .payment_area .inform_area {
    max-width: 100%;
  }
  .membershippay_list {
    flex-direction: column;
  }
}
@media screen and (max-width: 768px) {
  .main_banner .swiper-slide {
    padding: 96px 0;
  }
  .main_banner .swiper-wrapper {
    display: flex;
    align-items: stretch;
  }

  .main_banner .swiper-slide {
    height: auto;
  }
  .input_joi .main_banner {
    padding: 96px 0;
  }
  .main_banner .container {
    flex-direction: column;
    gap: 56px;
    align-items: center;
  }
  .main_banner .text_area h1 {
    font-size: 28px;
    text-align: center;
    margin-bottom: 12px;
  }
  .main_banner .text_area p {
    text-align: center;
    font-size: 14px;
    margin-bottom: 24px;
  }
  .main_banner .btns {
    justify-content: center;
  }
  .main_banner .img_area {
    border-radius: 12px;
  }
  .news_section .title {
    margin-bottom: 24px;
  }
  .container .title {
    font-size: 24px;
  }
  .news_box {
    grid-template-columns: 1fr;
    row-gap: 12px;
  }
  .news_box .news_item {
    box-shadow: 10px 10px 30px 0 #0000000f;
    padding: 14px 16px;
    border-radius: 12px;
  }
  .news_box .news_item > img {
    min-width: 48px;
    width: 48px;
  }
  .news_box .news_item .txt_box {
    margin-left: 12px;
    margin-right: 0;
  }
  .news_box .news_item .arrow_right_icon {
    display: none;
  }
  .news_box .news_item .txt_box h2 {
    font-size: 16px;
  }

  .news_box .news_item .txt_box span {
    font-size: 13px;
  }
  .container .title_sub {
    font-size: 14px;
  }
  .edu_logo_wrap {
    margin-top: 24px;
  }
  .slide_item_box--bottom.mb40,
  .slide_item_box--top.mb40 {
    margin-bottom: 12px;
  }
  .slide_item_box {
    width: 101.33px;
    height: 56px;
    margin-right: 8px;
  }
  .slide_item_box img {
    max-height: 26px;
  }
  .charac_list {
    flex-direction: column;
    margin-top: 32px;
  }
  .keyword-item {
    min-width: 100%;
    height: 68px;
  }
  .keyword-item.active {
    aspect-ratio: 320 / 360;
    height: 360px;
  }
  .keyword-item h3 {
    writing-mode: horizontal-tb;
    font-size: 16px;
  }
  .keyword-item .num {
    top: 14px;
    width: 40px;
    height: 40px;
    line-height: 40px;
    left: 20px;
  }
  .keyword-item.active .num {
    top: 20px;
  }
  .keyword-item.active .content .desc {
    left: 20px;
    bottom: 20px;
  }
  .keyword-item.active .content .desc .badge {
    height: 35px;
    line-height: 35px;
    font-size: 13px;
  }
  .keyword-item.active .content .desc h1 {
    font-size: 18px;
  }
  /* .review_list {
    grid-template-columns: 1fr;
    gap: 12px;
  } */
  .review_section .container {
    padding: 0;
  }
  .review_list {
    padding-left: 20px;
    padding-right: 20px;
    overflow: hidden;
    padding-top: 32px;
  }
  .review_list .review_item {
    padding: 24px;
    border-radius: 12px;
    width: 280px;
  }
  .review_list .review_item h3 {
    margin-bottom: 12px;
    font-size: 16px;
    padding-bottom: 12px;
  }
  .review_list .review_item .student_inform {
    gap: 12px;
    margin-top: 12px;
    flex-direction: column;
    align-items: flex-start;
  }
  .review_list .review_item .student_inform .student_img {
    width: 40px;
    height: 40px;
  }
  .review_list .review_item .student_inform .text span,
  .platform_list li .content h2,
  .platform_list li .content .list_area .num_list li,
  .platform_list li .gray_cont .gray_list li {
    font-size: 14px;
  }
  .review_list .review_item .student_inform .text p {
    font-size: 13px;
  }
  .platform_list {
    margin-top: 32px;
    flex-direction: column;
    gap: 8px;
  }
  .platform_list li .content {
    height: 100%;
    padding: 20px 24px;
    gap: 12px;
  }
  .platform_list li .head h1 {
    line-height: 56px;
    font-size: 18px;
  }
  .platform_list li .gray_cont {
    height: 100%;
    padding: 20px 24px;
  }
  .platform_list li .gray_cont .btn {
    margin-top: 20px;
  }
  .platform_section,
  .character_section,
  .review_section,
  .edu_section {
    padding: 56px 0;
  }
  .news_section {
    padding: 64px 0;
  }
  /* account */
  .login_inner {
    padding: 40px 20px 160px;
  }
  .login_inner .title {
    font-size: 24px;
  }
  .login_inner .sub_desc {
    font-size: 14px;
  }
  .login_inner .mo_mb20 {
    margin-bottom: 20px;
  }

  .join_labels {
    gap: 0;
  }
  .input_join a {
    height: 34px;
    line-height: 34px;
    font-size: 13px;
  }
  .agree_box .agree_item,
  .agree_box .all_agree {
    height: 54px;
  }
  .login_inner .join_success_img {
    margin: 0 auto 12px;
  }
  .login_inner .join_tit {
    font-size: 20px;
  }
  .class__inner {
    padding: 40px 0 80px;
  }
  .top_area,
  .class__inner .sub_area {
    flex-direction: column;
    gap: 16px;
    align-items: flex-start;
  }
  .top_area .category_list {
    order: 2;
    overflow: auto;
    overflow-y: hidden;
    width: 100%;
    gap: 16px;
  }
  .class__inner .tit {
    font-size: 24px;
  }
  .class__inner .sub_tit {
    font-size: 14px;
    margin-bottom: 20px;
  }

  .all_class_sec {
    padding: 32px 0 0;
  }
  .all_class_sec .recommend_list.flex,
  .all_class_sec .recommend_list.flex.shorts {
    grid-template-columns: 1fr 1fr;
    row-gap: 32px;
    column-gap: 8px;
  }
  .pagination.mt80 {
    margin-top: 56px;
  }
  .class_de_inner .class_desc {
    flex-direction: column;
    gap: 20px;
  }
  .class_de_inner {
    padding: 20px 0 80px;
  }
  .ai_class_area {
    margin-top: 0;
    padding-top: 32px;
  }
  .ai_class_area .container {
    padding: 0;
  }
  .ai_class_area .classSw .swiper-wrapper {
    padding-bottom: 32px;
  }
  .ai_class_area .container .title--area {
    padding: 0 20px;
  }
  .class_area .title--area {
    margin-bottom: 16px;
  }
  .class_area .tit h1 {
    font-size: 20px;
  }
  .class_area .tit h2 {
    font-size: 14px;
  }
  .sw_top_btns {
    display: none;
  }
  .ai_class_area .classSw .swiper-slide {
    width: 240px;
  }
  .ai_class_area .classSw {
    padding-left: 20px;
    padding-right: 20px;
  }
  .class_area.two_depth,
  .short_area {
    padding: 32px 0;
  }

  .class_de_inner .container {
    padding: 0;
  }
  .class_de_inner .breadcrumb,
  .class_de_inner .class_desc .desc_txt {
    padding: 0 20px;
  }
  .class_de_inner .class_desc .img_box {
    border-radius: 0;
  }
  .class_de_inner .class_desc .desc_txt {
    max-width: 100%;
  }
  .class_de_inner .class_desc .desc_txt h1 {
    font-size: 20px;
  }
  .desc_txt .type_list {
    gap: 9px;
  }
  .desc_txt .type_list .type_icon {
    gap: 2px;
  }
  .desc_txt .type_list span,
  .class_de_inner .class_desc .desc_txt .explanation {
    font-size: 13px;
  }
  .desc_txt .type_list .type_icon::before {
    width: 12px;
    height: 12px;
  }
  .desc_txt .type_list span:not(:last-child)::after {
    right: -4px;
    height: 12px;
  }
  .class_de_inner .class_desc .desc_txt .inform h3 {
    font-size: 15px;
    margin-bottom: 8px;
  }
  .class_de_inner .class_desc .desc_txt .inform .sub {
    gap: 4px;
    flex-direction: column;
    align-items: flex-start;
  }
  .class_de_inner .class_desc .desc_txt .inform .sub p:not(:last-child)::after {
    display: none;
  }
  .class_de_inner .class_desc .desc_txt .inform .sub p {
    font-size: 14px;
  }
  .class_de_inner .rating_area {
    padding: 32px 20px;
  }
  .class_de_inner .rating_area .rating_tit {
    flex-direction: column;
    gap: 8px;
    align-items: flex-start;
  }
  .class_de_inner .rating_area .rating_tit h1,
  .class_de_inner .sub_box .title {
    font-size: 18px;
  }
  .class_de_inner .rating_area .rating_tit .go_rating,
  .creator_area .class_explan .gray_explan {
    font-size: 14px;
  }
  .class_de_inner .rating_area .rating_tit .go_rating::after {
    background: url(../_img/icon/icon_arr_r_gray_mo.svg) no-repeat center center / contain;
    rotate: 0deg;
  }
  .rating_area .rating_list {
    grid-template-columns: 1fr;
  }
  .class_de_inner .flex.gap56 {
    flex-direction: column;
    padding: 32px 20px 0;
  }
  .class_course_area .blue_box {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
    padding: 16px;
  }
  .class_course_area .blue_box h2 {
    font-size: 16px;
  }
  .class_course_area .blue_box .btns {
    width: 100%;
  }
  .class_course_area .blue_box .btns .btn {
    gap: 4px;
    /* min-width: 50%; */
    width: 50%;
    padding: 0;
    display: inline-flex;
    justify-content: center;
  }
  .course_list li .btn-lnb {
    padding: 12px 16px;
  }
  .all_class_sec.shorts {
    padding-top: 32px;
  }
  .class__inner .detail_area .check_box {
    gap: 12px;
  }
  .short_de_inner .container {
    padding: 0 20px;
  }
  .short_de_inner {
    padding: 40px 0 80px;
  }
  .shorts_de .video_area {
    aspect-ratio: 320/180;
    border-radius: 0;
  }
  .shorts_de .shorts_text {
    margin-top: 20px;
  }
  .shorts_de .shorts_text h1 {
    font-size: 20px;
  }
  .class_area .title--area.sm h1 {
    font-size: 18px;
  }
  .custom__inner {
    padding: 40px 0 80px;
  }

  .payment_title {
    font-size: 24px;
    padding-bottom: 20px;
  }
  .payment_area .sub_title {
    font-size: 18px;
    margin-bottom: 16px;
  }
  .payment_area .pay_list {
    flex-direction: column;
    gap: 8px;
  }
  .payment_area .class_inform.pc {
    display: none;
  }
  .payment_area .class_inform.mo {
    display: flex;
    flex-direction: column;
  }
  .payment_area .class_inform .inform_desc {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 12px;
  }
  .payment_area .class_inform img {
    width: 48px;
    height: 48px;
  }
  .payment_area .class_inform .inform_desc h2 {
    font-weight: 600;
    font-size: 16px;
    line-height: 140%;
  }
  .payment_area .class_inform .desc_txt .sub {
    flex-direction: column;
    align-items: flex-start;
  }
  .payment_area .class_inform .desc_txt .sub p,
  .payment_area .class_inform .desc_txt .period_box h3 {
    font-size: 13px;
  }
  .payment_area .class_inform .desc_txt .period_box {
    padding: 12px 8px;
  }
  .payment_area .inform_area {
    gap: 32px;
  }
  .payment_area .inform_area .point_box {
    margin-bottom: 16px;
  }
  .payment_area .inform_area .point_box p {
    font-size: 14px;
  }
  .payment_area .inform_area .point_box h4 {
    font-size: 16px;
  }
  .payment_area .custom_area .customer_inform,
  .payment_area .refund-box {
    padding: 16px;
  }
  .payment_area .custom_area .customer_inform h1 {
    font-size: 18px;
    margin-bottom: 12px;
  }
  .payment_area .custom_area .customer_inform .customer_list li p,
  .price-summary .value,
  .payment_area .refund-box .check-A h6 {
    font-size: 14px;
  }
  .price-summary .cell {
    padding: 0;
  }
  .price-summary .label,
  .payment_area .refund-box .refund_blue .refund_list li {
    font-size: 13px;
  }
  .payment_area .refund-box .refund_blue h4 {
    font-size: 14px;
    margin-bottom: 8px;
  }
  .custom__inner .tit {
    font-size: 24px;
    margin-bottom: 20px;
  }
  .justi-title_box .sub_tit {
    font-size: 18px;
  }
  .terms_txt {
    font-size: 14px;
  }
  .tab_list.fit {
    width: fit-content;
  }
  .tab_list li a {
    height: 48px;
    line-height: 48px;
    font-size: 16px;
  }
  .notice_preview a {
    height: 54px;
  }
  .notice_preview .arrow_right {
    display: none;
  }
  .notice_preview .text .notice_txt,
  .notice_preview .text h3 {
    font-size: 16px;
  }
  .customer_flex {
    flex-direction: column;
    gap: 32px;
  }
  .custom__inner .sub_title {
    font-size: 18px;
  }
  .faq_list li .btn-lnb {
    padding: 20px;
    gap: 12px;
  }
  .faq_list li .btn-lnb .gray_txt {
    font-size: 14px;
  }
  .faq_list li .btn-lnb h2 {
    font-size: 16px;
  }
  .faq_list li .btn-lnb .arrow_down {
    top: 50%;
    transform: translateY(-50%);
  }
  .faq_list li .btn-lnb::before,
  .faq_list li .lnb__list p::before {
    width: 26px;
    height: 26px;
    flex-shrink: 0;
  }
  .qna_go_box {
    padding: 24px;
  }
  .qna_go_box h2,
  .qna_go_box h3,
  .notice_list li a .notice_txt,
  .notice_list li a .date_txt,
  .notice_de .title_area .date p,
  .notice_de .title_area .lesson,
  .faq_list li .lnb__list p {
    font-size: 14px;
  }
  .qna_go_box h1 {
    font-size: 28px;
  }
  .other_help_list li a {
    padding: 24px;
    gap: 32px;
  }
  .other_help_list li .txt h1 {
    font-size: 18px;
  }
  .faq_list li .lnb__list p {
    gap: 12px;
  }

  .justi-title_box {
    flex-direction: column;
    gap: 16px;
    align-items: flex-start;
  }
  .notice_list li a .text {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
  }
  .mypage_main .notice_list li a {
    height: fit-content !important;
    gap: 8px;
    flex-direction: column;
    align-items: flex-start;
    padding: 16px;
  }
  .notice_list li a h3 {
    font-size: 16px;
  }
  .commuity_list li a .date_area {
    margin-top: 4px;
  }
  .notice_de .title_area h1 {
    font-size: 20px;
  }
  .notice_de .notice_content {
    font-size: 15px;
  }

  .customer_flex .box.one277 h1 {
    font-size: 28px;
  }
  .customer_flex .box.one277 h2.fw700.mt40 {
    margin-top: 32px;
  }
  .customer_flex .box.one277 h2,
  .custom__inner .info_ip_area h1 {
    font-size: 18px;
  }
  .custom__inner .agree_box .agree_item {
    padding: 12px 0 0;
    height: fit-content;
  }
  .custom__inner .info_ip_area .flex {
    flex-direction: column;
  }
  .custom__inner .btn_right .btn {
    width: 100%;
  }
  .custom__inner .location_area .radio_btns {
    flex-direction: initial;
    flex-wrap: wrap;
  }
  .custom__inner .location_area .input_txt input + em {
    width: 101px;
  }
  .custom__inner .location_area .map_desc .map_area {
    aspect-ratio: 322/256;
  }
  .custom__inner .location_area .map_desc .map_text {
    gap: 24px;
  }
  .custom__inner .location_area .map_desc .map_text li {
    flex-direction: column;
    gap: 8px;
    align-items: flex-start;
  }
  .custom__inner .location_area .map_desc .map_text li h4 {
    font-size: 14px;
  }
  .custom__inner .location_area .map_desc .map_text li .txt {
    align-items: flex-start;
  }
  .custom__inner .location_area .map_desc .map_text li .bus_icon {
    height: 26px;
    line-height: 26px;
    padding: 0 10px;
    font-size: 13px;
    width: 57px;
  }

  .custom__inner .location_area .map_desc .map_text li .txt.col {
    flex-direction: column;
    gap: 4px;
  }
  .custom__inner .location_area .map_desc .map_text li .subway_icon {
    width: 20px;
    height: 20px;
    font-size: 13px;
    line-height: 20px;
  }
  .commuity_list li a .right {
    max-width: fit-content;
  }
  .commuity_list li a .right .date_txt {
    display: none;
  }
  .qna_tit_area {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }

  .qna_answer h1 {
    margin-bottom: 12px;
  }
  .qna_answer .answer {
    font-size: 15px;
  }
  .notice_de_btns {
    align-items: flex-start;
    flex-direction: column;
  }
  .notice_de_btns.mo_flex {
    flex-direction: unset;
  }
  .notice_de_btns.mo_flex .btn {
    width: fit-content;
  }
  .qna_answer .no_answer {
    font-size: 15px;
  }
  .notice_de_btns .right {
    width: 100%;
    order: 2;
  }
  .notice_de_btns .btn {
    width: 100%;
  }
  .notice_de_btns .right.col {
    flex-direction: column;
    order: 1;
  }
  .notice_de_btns .qna_answer_btn {
    width: 100%;
  }
  .membership_tit {
    margin-bottom: 16px;
    font-size: 18px;
  }
  .benefit_area,
  .membershippay_list {
    flex-direction: column;
    gap: 8px;
  }
  .membershippay_list.mb48 {
    margin-bottom: 32px;
  }
  .benefit_area li {
    width: 100%;
    padding: 16px;
    gap: 8px;
  }
  .membershippay_list > li {
    padding: 16px;
    width: 100%;
  }
  .membershippay_list > li h1 {
    font-size: 18px;
    margin-bottom: 16px;
  }
  .membershippay_list .price {
    gap: 8px;
  }
  .membershippay_list .price li .gray,
  .membershippay_list .price li b,
  .membershippay_list .day_choice p,
  .membershippay_list .price li .line,
  .membershippay_list .membership--total .total_price .line,
  .membershippay_list .membership--total .total_price .green,
  .membershippay_list .membership--total .total_price .blue {
    font-size: 14px;
  }
  .membershippay_list .warning_box {
    padding: 8px;
    margin: 12px 0 32px;
  }
  .membershippay_list .day_choice {
    margin-bottom: 32px;
  }
  .membershippay_list .membership--total {
    margin-bottom: 12px;
  }
  .membershippay_list .membership--total .badge {
    height: 32px;
    line-height: 32px;
    font-size: 14px;
    border-radius: 50px;
    padding: 0 10px;
  }
  .membership_area .btn-big {
    height: 40px;
    line-height: 40px;
    font-size: 14px;
  }
  .membershippay_list .membership--total h2 {
    font-size: 18px;
  }
  .membershippay_list .warning_box h6 {
    gap: 4px;
    font-size: 12px;
  }
  .membership--price {
    margin-top: 16px;
    height: 41px;
    line-height: 41px;
    border-radius: 4px;
    padding: 0 12px;
    font-size: 12px;
  }
  .benefit_area li .badge {
    height: 32px;
    line-height: 32px;
    padding: 0 12px;
    font-size: 14px;
  }
  .benefit_area li h2 {
    font-size: 16px;
  }
  .benefit_area li p {
    font-size: 14px;
  }
  .membership--tit {
    height: 46px;
    line-height: 46px;
    padding: 0 12px;
    border-radius: 4px;
    font-size: 16px;
  }
  .membership_area .btn-big {
    font-size: 16px;
  }
  .class_list .date_area {
    margin-top: 8px;
  }
  .notice_list li a .title_box {
    gap: 6px;
  }
  .qna_answer {
    padding: 16px;
  }
  .login_inner .sns_list {
    flex-direction: column;
  }
  .login_inner .agree_box .agree_item {
    height: 48px;
  }
  .tab_list.mo_w100p em,
  .tab_list.mo_w100p li {
    width: 100%;
    text-align: center;
    font-size: 14px;
  }
  .tab_list.mo_w100p em {
    height: 40px;
    line-height: 40px;
  }
  .top_area.mb28,
  .ai_wrap.mb28 {
    margin-bottom: 20px;
  }
  .ai_wrap .btn-lnb {
    width: 100%;
    justify-content: space-between;
  }
  .mypage_main .ai_box h2 {
    font-size: 14px;
  }
  .tbl_pc {
    display: none;
  }
  .tbl_mo {
    display: table-column-group;
  }
  .intro__inner {
    padding: 64px 0;
  }
  .intro__inner.sec01 {
    padding: 96px 0;
  }
  .intro__inner .tit {
    margin-bottom: 24px;
  }
  .intro__inner .tit span {
    font-size: 14px;
  }
  .intro__inner .tit h1 {
    font-size: 24px;
  }
  .intro__inner .tit h1.big {
    font-size: 28px;
  }
  .intro__inner .tit p {
    margin-top: 12px;
    font-size: 14px;
  }
  .intro__inner.sec01 .intro_img {
    aspect-ratio: 320/217;
    margin-top: 56px;
  }
  .intro__inner .need_list {
    flex-direction: column;
    gap: 8px;
  }
  .intro__inner .need_list li {
    padding: 24px 20px;
  }
  .intro__inner .need_list li .num {
    font-size: 16px;
    margin-bottom: 8px;
  }
  .intro__inner .need_list li h1,
  .intro__inner .core_list li h1 {
    font-size: 18px;
  }
  .intro__inner .need_list li p {
    margin-top: 12px;
    font-size: 14px;
    height: fit-content;
  }
  .intro__inner .blue_gradation {
    font-size: 18px;
    padding: 0 16px;
    background: linear-gradient(90deg, rgba(21, 155, 255, 1) 0%, rgba(21, 155, 255, 0.2) 100%);
    border-radius: 8px;
  }
  .intro__inner .core_list {
    grid-template-columns: 1fr;
    gap: 8px;
    grid-auto-rows: auto;
  }
  .intro__inner .core_list li {
    padding: 24px 20px;
  }
  .intro__inner .core_list li .black_badge {
    padding: 0 12px;
    height: 28px;

    line-height: 28px;
    font-size: 14px;
  }
  .intro__inner .core_list li p,
  .diagnostic_center .diagnostic_item p,
  .effect_list li .lnb__list--mo .inner_content .desc_list li,
  .effect_list li .lnb__list--mo .inner_content .blue_box h4,
  .ai_center .ai_text p,
  .ai_center .ai_text .sub_lnb_item .lnb__sub h5,
  .report_center p {
    font-size: 14px;
  }
  .intro__inner .elements_list {
    gap: 8px;
  }
  .intro__inner .elements_list li {
    padding: 20px;
    border-radius: 12px;
  }
  .intro__inner .elements_list li .num {
    width: 24px;
    height: 24px;
    line-height: 24px;
    font-size: 14px;
    margin-right: 8px;
  }
  .intro__inner .elements_list li h1 {
    font-size: 20px;
    height: 36px;
    line-height: 36px;
  }
  .intro__inner .elements_list li .btn-lnb {
    top: 20px;
    right: 20px;
    font-size: 14px;
    padding: 0 12px;
    height: 36px;
  }
  .diagnostic_center {
    flex-direction: column;
    gap: 0;
  }
  .diagnostic_center .diagnostic_item {
    border: none;
    padding: 0;
    border-radius: 0;
  }
  .diagnostic_center .diagnostic_item + .diagnostic_item {
    border-top: 1px solid #e5e5ec;
    margin-top: 20px;
    padding-top: 20px;
  }
  .diagnostic_center .diagnostic_item .btn {
    margin-top: 20px;
  }
  .intro__inner .advantage_list li {
    flex-direction: column;
    padding: 20px 0;
    align-items: flex-start;
  }
  .intro__inner .advantage_list li .num {
    margin-right: 0;
    width: 24px;
    height: 24px;
    line-height: 24px;
    font-size: 14px;
    margin-bottom: 8px;
  }
  .intro__inner .advantage_list li h1,
  .effect_list li .head h1,
  .ai_center .ai_text h2,
  .ai_center .ai_text h3,
  .report_center h2 {
    font-size: 18px;
  }
  .intro__inner .advantage_list li p {
    font-size: 14px;
    margin-top: 12px;
  }
  .effect_list {
    gap: 8px;
  }
  .effect_list li .lnb__list--mo .inner_content {
    padding: 20px;
  }
  .effect_list li .lnb__list--mo .inner_content h2,
  .ai_center .ai_text .sub_lnb_item .btn-lnb-sub {
    font-size: 16px;
  }
  .effect_list li .lnb__list--mo .inner_content .blue_box {
    min-height: 66px;
  }
  .effect_list li .lnb__list--mo .inner_content .desc_list {
    min-height: fit-content;
  }
  .ai_center {
    flex-direction: column;
    gap: 0;
  }
  .ai_center .ai_img {
    aspect-ratio: 280/180;
    max-width: 100%;
  }
  .ai_center .ai_text .sub_lnb_item .btn-lnb-sub {
    position: relative;
    width: 100%;
    text-align: left;
  }
  .ai_center .ai_text .sub_lnb_item .btn-lnb-sub::before {
    position: absolute;
    top: 12px;
    right: 0;
  }
  .ai_center .ai_text .sub_lnb_item .btn-lnb-sub.active::before {
    rotate: -90deg;
  }
  .ai_center .ai_text .sub_lnb_item .lnb__sub {
    padding: 0;
  }
  .report_center .report_item.flex {
    flex-direction: column;
  }
  .report_center .report_item_desc .report_img {
    padding: 32px 45px;
  }
  .report_center .report_item_desc .report_img img {
    width: 100%;
  }
  .report_center .report_item.black {
    padding: 20px;
    text-align: left;
  }
  .tbl_mobottom_30 {
    margin-bottom: 30px;
  }
  .course_list li .btn-lnb .type_list {
    gap: 11px;
  }
  .course_list li .btn-lnb .type_list span:not(:last-child)::after {
    right: -5px;
  }
  .class__inner .top_area .flex.gap8.mo_col {
    align-items: flex-start;
    width: 100%;
  }
  .class__inner .top_area .flex.gap8.mo_col form {
    flex-direction: column;
    align-items: flex-start !important;
  }
  .class__inner .top_area .flex.gap8.mo_col .search__area .search_icon {
    top: 20px;
  }
}
