@charset "UTF-8";

.main_wrap .tabs {
  padding: 14px 0;
  overflow: hidden;
}
.main_wrap .tabs li {
  float: left;
}
.main_wrap .tabs li + li {
  position: relative;
  margin-left: 20px;
  padding-left: 20px;
}
.main_wrap .tabs li + li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 1px;
  height: 20px;
  background-color: #ccc;
}
.main_wrap .tabs li .tab {
  background-color: transparent;
  border: 0;
  font-size: 18px;
  line-height: 1;
  color: #ccc;
}
.main_wrap .tabs li .tab.is-active {
  font-weight: 700;
  color: #1b2a46;
}

.main_wrap section {
  position: relative;
}
.main_wrap section .section_title {
  font-size: 24px;
  font-weight: bold;
  color: #1b2a46;
}
.main_wrap section .section_desc {
  margin-top: 14px;
  font-size: 18px;
}
.main_wrap section .btn_more {
  z-index: 1;
  position: absolute;
  right: 20px;
  top: 6px;
  font-weight: bold;
  color: #2557b5;
}

.main_wrap .intro_section {
  margin-top: 48px;
}
.main_wrap .intro_section .card-wrap-option-vidio-overflow {
  overflow: hidden;
}
.main_wrap .intro_section video {
  position: absolute;
  width: calc(100% - 40px);
  height: 100%;
  object-fit: cover;
  border-radius: 10px;
}
.main_wrap .intro_section .card {
  padding: 215px 41px 25px;
  background-color: #21314a;
  border-radius: 10px;
  line-height: 1.6;
  color: #fff;
}
.main_wrap .intro_section .card.empty_text_card {
  padding: 295px 41px 25px;
}
.main_wrap .intro_section .card .tag {
  position: relative;
  font-size: 14px;
  font-weight: 700;
  color: #fff;
}
.main_wrap .intro_section .card .tag::before {
  content: "";
  position: absolute;
  left: -39px;
  top: -28px;
  width: 79px;
  height: 79px;
  background-color: #fff;
  border-radius: 50%;
  opacity: 0.1;
}
.main_wrap .intro_section .card .title {
  position: relative;
  font-size: 34px;
  font-weight: 700;
}
.main_wrap .intro_section .card .desc {
  position: relative;
  margin-top: 20px;
  font-size: 24px;
}

.main_wrap .main_slide .item {
  cursor: pointer;
}
.main_wrap .main_slide .item .content_box {
  position: relative;
  height: 420px;
  /*overflow: hidden;*/
}
.main_wrap .main_slide .item .content_box .content {
  z-index: 2;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  /* margin-top: -91px; */
}
.main_wrap .main_slide .item .title {
  font-size: 44px;
  line-height: 64px;
  color: #333333;
  font-weight: bold;
}
.main_wrap .main_slide .item .title .point {
  color: #00deff;
}
.main_wrap .main_slide .item .desc {
  margin-top: 24px;
  font-weight: 400;
  font-size: 24px;
  line-height: 29px;
  color:#333333;
}
.main_wrap .main_slide .item .desc_btn {
  height: 52px;
  padding: 0 60px;
  font-weight: 700;
  font-size: 16px;
  color: #FFFFFF;
  border-radius: 65px;
  border :0 none;
}
.main_wrap .main_slide .item .desc.main-round-label {
  position: absolute;
  top: -70px;
}
.main_wrap .main_slide .item .desc.main-round-label span {
  font-weight: 700;
  background-color: #fff;
  color: #007EC3;
  font-size: 20px;
  border-radius: 20px;
  padding: 5px 20px 7px;
}
.main_wrap .main_slide .item .visual_img {
  z-index: 1;
  position: absolute;
  right: 0;
}

.main_wrap .main_slide .item.reset-animation .title,
.main_wrap .main_slide .item.reset-animation .desc {
  transform: translateY(-40px);
  opacity: 0;
  transition: all 0s;
}
.main_wrap .main_slide .item .title,
.main_wrap .main_slide .item .desc {
  /*  position: relative;
  top: 0; */
  transform: translateY(-40px);
  opacity: 0;
  transition: 1s ease-in-out;
}
.main_wrap .main_slide .item.slick-active .title,
.main_wrap .main_slide .item.slick-active .desc {
  transform: translateY(0);
  opacity: 1;
  /* animation: 1.4s fadeInDown; */
}

.main_wrap .main_slide .item.reset-animation .visual_img img {
  transform: translateX(40px);
  opacity: 0;
  transition: all 0s;
}
.main_wrap .main_slide .item .visual_img img {
  /* position: relative; */
  /* left: 0; */
  transform: translateX(40px);
  opacity: 0;
  transition: 1s ease-in-out;
}
.main_wrap .main_slide .item.slick-active .visual_img img {
  transform: translateX(0);
  opacity: 1;
  /* animation: 1.4s fadeInLeft; */
}

/* @keyframes fadeInDown {
  from {
    transform: translateY(-40px);
    opacity: 0;
  }
  to {
    transform: translateY(0);
    opacity: 1;
  }
}
@keyframes fadeInLeft {
  from {
    transform: translateX(80px);
    opacity: 0;
  }
  to {
    transform: translateX(0);
    opacity: 1;
  }
} */

.main_wrap .main_slide .item-01 {
  overflow: hidden;
  background-color: #000416;
  background-image : url("https://cdn.pudufu.co.kr/assets/banner/main/main_banner_1_bg_250310.png");
  background-size: cover;
  background-position: 50% 50%;
}
.main_wrap .main_slide .item-01 .title, .main_wrap .main_slide .item-01 .desc {
  color: #ffffff;
}
.main_wrap .main_slide .item-01 .content_box {
  /*overflow: inherit;*/
}
.main_wrap .main_slide .item-01 .visual_img {
  top: 60px;
  right: 30px;
  z-index: 1;
  max-width: 340px;
}
.main_wrap .main_slide .item-01 .visual_img_bg {
  top: 40px;
  right: -110px;
  z-index: 0;
  max-width: 700px;
}
.main_wrap .main_slide .item-02 {
  background: #D7DBE1;
}
.main_wrap .main_slide .item-02 .title, .main_wrap .main_slide .item-02 .desc {
  color: #333333;
}
.main_wrap .main_slide .item-02 .visual_img {
  top: -135px;
  right: -75px;
  width: 800px;
}

/* 기본(992px 이상): 첫번째 이미지 노출 */
.main_wrap .main_slide .item-03 .visual_img img:nth-of-type(1) { display: block; }
.main_wrap .main_slide .item-03 .visual_img img:nth-of-type(2) { display: none; }

.main_wrap .main_slide .item-03 {
  background-color: #000416;
  background-image : url("https://cdn.pudufu.co.kr/assets/banner/main/main_banner_3_back_260519.png");
  background-size: cover;
  background-position: 50% 50%;
}
.main_wrap .main_slide .item-03 .title,
.main_wrap .main_slide .item-03 .desc {
  /*color: #ffffff;*/
}
.main_wrap .main_slide .item-03 .visual_img {
	right: 20px;
	top: 60px;
	max-width: 660px;
}
.main_wrap .main_slide .item-03 .visual_img.visual_img_bg {
	top: 50px;
	right: -60px;
	max-width: 400px;
	z-index: 0;
}

/*.main_wrap .main_slide .slick-prev {
  bottom: -6px;
  right: 100px;
}
.main_wrap .main_slide .slick-next {
  bottom: -6px;
  right: 30px;
}*/

.main_wrap .product_section {
  margin-top: 48px;
}

.main_wrap .product_section.typeB {
  margin-top: 48px;
}

.main_wrap .product_section .product_list {
  margin-top: 20px;
}

.main_wrap .product_section .best_slider .slick-dots {
  inset: inherit;
  right: 20px;
  bottom: 100%;
  width: auto;
  margin-bottom: 45px;
  padding: 0 13px;
}
.main_wrap .product_section .best_slider .slick-dots li {
  margin: 0 7px;
  padding: 0;
}
.main_wrap .product_section .best_slider .slick-dots li button {
  width: 14px;
  height: 14px;
  background-color: #fff;
  border: 2px solid #e0e0e0;
}
.main_wrap .product_section .best_slider .slick-dots li.slick-active button {
  background-color: #1b2a46;
  border-color: #1b2a46;
}
.main_wrap .product_section .best_slider .slick-arrow {
  top: 50%;
  width: 57px;
  height: 57px;
  margin-top: -146px;
  background-color: rgba(27, 42, 70, 60%);
}
.main_wrap .product_section .best_slider .slick-prev {
  left: 20px;
  background-image: url("../images/arrow_left_white.svg");
}
.main_wrap .product_section .best_slider .slick-next {
  right: 20px;
  background-image: url("../images/arrow_right_white.svg");
}

.main_wrap .product_section.typeB .best_slider .slick-arrow {
  left: auto;
  top: auto;
  bottom: 100%;
  width: 48px;
  height: 48px;
}
.main_wrap .product_section.typeB .best_slider .slick-prev {
  right: 58px;
  background: url("https://cdn.pudufu.co.kr/assets/icon/btn_prev.svg") no-repeat 50% 50%;
}
.main_wrap .product_section.typeB .best_slider .slick-next {
  right: 10px;
  background: url("https://cdn.pudufu.co.kr/assets/icon/btn_next.svg") no-repeat 50% 50%;
}

/* 슬라이드 프로그레스 바 */
.slide-progress-container {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 10;
}

.slide-indicator {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 60px;
  color: #ffffff;
  font-size: 14px;
  font-weight: 500;
  gap: 10px;;
}

.slide-controls {
  display: flex;
  align-items: center;
}

.slide-nav {
  cursor: pointer;
  padding: 4px 8px;
  margin: 0 8px;
  border-radius: 4px;
  transition: background-color 0.2s ease;
  user-select: none;
}

.slide-nav:hover {
  background-color: rgba(255, 255, 255, 0.2);
}

.slide-counter {
  margin: 0 4px;
  font-family: 'Arial', sans-serif;
}

.slide-progress-bar {
  flex: 1;
  height: 4px;
  background-color: rgba(255, 255, 255, 0.3);
  position: relative;
  margin-left: 20px;
}

.slide-progress-fill {
  height: 100%;
  background-color: #ffffff;
  width: 0%;
  transition: width 1.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

/* 모바일 반응형 */
@media screen and (max-width: 767px) {
  .slide-indicator {
    padding: 8px 15px;
    font-size: 12px;
  }
  
  .slide-nav {
    padding: 2px 6px;
    margin: 0 4px;
    font-size: 12px;
  }
  
  .slide-counter {
    margin: 0 2px;
    font-size: 12px;
  }
  
  .slide-progress-bar {
    margin-left: 15px;
  }
}

.main_wrap .banner_slider {
  margin-top: 10px;
}
.main_wrap .banner_slider .item {
  display: block;
  position: relative;
  margin-top: 67px;
  text-align: left;
  height: 200px;
  border-radius: 8px;
  width: 49.5%;
}
.main_wrap .banner_slider .item:nth-child(1) {
  padding: 0;
}
.main_wrap .banner_slider .item:nth-child(1) a:nth-child(1) {
  margin-bottom: 10px;
  display: block;
}
.main_wrap .banner_slider .item:nth-child(1) a:nth-child(1) div {
  background: linear-gradient(99.84deg, #1D4289 2.41%, #273041 100%);
  border-radius: 8px;
  padding: 80px 0 0 60px;
  height: 200px;
  width: 100%;
}
.main_wrap .banner_slider .item:nth-child(1) a:nth-child(2) div {
  background: #2B2B2B;
  border-radius: 8px;
  padding: 23px 0 0 40px;
  height: 67px;
  width: 100%;
  font-size: 20px;
}
.main_wrap .banner_slider .item:nth-child(2) {
  background-color: #FFF9F4;
  padding: 50px;
  border: 1px solid #E0E0E0;
  float: right;
}
.main_wrap .banner_slider .item > div {
  padding: 0;
}
.main_wrap .banner_slider .item > div + div:after {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 1px;
  height: 56px;
  margin-top: -28px;
  background-color: #f0d4c2;
}
.main_wrap .banner_slider .item .item_label {
  font-size: 16px;
  font-weight: bold;
  line-height: 16px;
  color: #375690;
}
.main_wrap .banner_slider .item:nth-child(1) a:nth-child(1) .item_label {
  font-weight: bold;
  font-size: 40px;
  line-height: 100%;
  color: #fff;
}
.main_wrap .banner_slider .item:nth-child(1) a:nth-child(1) img {
  position: absolute;
  right: 55px;
  top: 78px;
}
.main_wrap .banner_slider .item:nth-child(1) a:nth-child(2) .item_label {
  font-weight: normal;
  font-size: 20px;
  line-height: 100%;
  color: #fff;
}
.main_wrap .banner_slider .item:nth-child(1) a:nth-child(2) img {
  position: absolute;
  right: 60px;
  bottom: 16px;
  width: 35px;
}
.main_wrap .banner_slider .item .item_content {
  margin-top: 7px;
  font-size: 24px;
  line-height: 1.67;
  text-align: left;
  color: #1b2a46;
}
.main_wrap .banner_slider .item .item_content span:nth-child(1) {
  display: block;
  font-weight: bold;
  font-size: 24px;
  line-height: 24px;
  margin-bottom: 9px;
  color: #333;
}
.main_wrap .banner_slider .item .item_content span:nth-child(2) {
  display: block;
  font-size: 14px;
  line-height: 16px;
  color: #888;
  margin-bottom: 16px;
}
.main_wrap .banner_slider .item .item_content span:nth-child(3) {
  display: block;
  font-size: 14px;
  line-height: 16px;
  color: #888;
  font-weight: bold;
  text-decoration: underline;
}
.main_wrap .banner_slider .item .item_content img {
  width: 24px;
  height: 24px;
  margin-top: 9px;
}

.main_wrap .banner_slider .item .item_content .font-poppins {
  font-size: 28px;
  font-weight: 600;
}
.main_wrap .banner_slider .item .visual_img {
  position: absolute;
  right: 35px;
  bottom: 15px;
  /* width: 290px; */
  /*width: 25%;*/
}

.main_wrap .live_section .product_slider {
  margin-top: 15px;
}
.main_wrap .live_section .product_slider .slick-slide {
  margin-top: 42px;
}
.main_wrap .live_section .product_slider .slick-arrow {
  bottom: 100%;
}
.main_wrap .live_section .product_slider .slick-prev {
  right: 68px;
}
.main_wrap .live_section .product_slider .slick-next {
  right: 20px;
}
.main_wrap .live_section .float_slider {
  margin-top: 70px;
}
.main_wrap .intro_section .live_section .float_slider {
  margin-top: 0;
}
.main_wrap .live_section .float_slider::before,
.main_wrap .live_section .float_slider::after {
  content: "";
  z-index: 1;
  position: absolute;
  left: 0;
  width: 100%;
  height: 40px;
}
.main_wrap .live_section .float_slider::before {
  background-image: linear-gradient(to bottom, #fff, rgba(255, 255, 255, 0));
  top: 0;
}
.main_wrap .live_section .float_slider::after {
  bottom: 0;
  background-image: linear-gradient(to top, #fff 0%, rgba(255, 255, 255, 0) 100%);
}
.main_wrap .live_section .float_slider .item {
  position: relative;
  margin: 4px 0;
  padding: 18px 16px 18px 20px;
  border-radius: 8px;
  background-color: #f9f9f9;
}
.main_wrap .live_section .float_slider .item .nickname {
  font-size: 14px;
  font-weight: bold;
  color: #375690;
}
.main_wrap .live_section .float_slider .item .content {
  margin-top: 9px;
  font-size: 14px;
}
.main_wrap .live_section .float_slider .item .date {
  position: absolute;
  top: 18px;
  right: 16px;
  font-size: 12px;
  color: #8f8f8f;
}
.main_wrap .live_section.typeA{
  margin-top: 48px;
}
.main_wrap .live_section .review_content .section_title img {
  margin-left: 5px;
  margin-top: 3px;
}

.main_wrap .product_section .btn_more {
  font-size: 15px;
  color: #375690;
  right: 65px;
}
.main_wrap .product_section .main_list_slide .slick-prev {
  top: -55px;
  right: 115px;
}
.main_wrap .product_section .main_list_slide .slick-next {
  top: -55px;
  right: 20px;
}

.main_wrap .review_section {
  padding: 48px 0 60px;
  background-color: #E0E3EA;
  overflow: hidden;
}
.main_wrap .review_section .section_title {
  color: #333;
}
.main_wrap .review_section .section_desc {
  color: #555;
}
.main_wrap .review_section .btn_more {
  font-size: 15px;
  color: #375690;
  right: 60px;
}
.main_wrap .review_section .review_slider {
  margin: 57px -10px 0;
}
.main_wrap .review_section .review_slider .slick-prev {
  top: -127px;
  right: 108px;
}
.main_wrap .review_section .review_slider .slick-next {
  top: -127px;
  right: 0;
}
.main_wrap .review_section .review_slider .slick-list {
  overflow: visible;
}
.main_wrap .review_section .review_slider .item {
  width: 360px;
  margin: 0 10px;
  border-radius: 20px;
  background: linear-gradient(
    to top,
    #406EE4 0%,
    #406EE4 50px,
    #fff 50px,
    #fff 100%
  );
  padding: 16px 28px;
}
.main_wrap .review_section .review_slider .item .user_rating {
  margin: 0 0 0 -3px;
}
.main_wrap .review_section .review_slider .item .content {
  height: 120px;
  font-size: 18px;
  -webkit-line-clamp: 4;
}
.main_wrap .review_section .review_slider .item .link_more {
  text-decoration: none;
}
.main_wrap .review_section .review_slider .item hr {
  background: #F0F0F0;
  height: 1px;
  border: 0;
  margin: 7px 0 10px;
}
.main_wrap .review_section .review_slider .item .info {
  height: 18px;
}
.main_wrap .review_section .review_slider .item .user_nickname {
  float: left;
}
.main_wrap .review_section .review_slider .item .date {
  float: left;
  margin-right: 8px;
  margin-top: 2px;
}
.main_wrap .review_section .review_slider .item .user_best_review_img {
  float: left;
}
.main_wrap .review_section .review_slider .item .title {
  margin-top: 30px;
  color: #fff;
  font-size: 17px;
  height: 20px;
}

.main_wrap .keyword_section {
  margin-top: 48px;
}
.main_wrap .keyword_section .keyword_section_title {
  font-size: 20px;
  font-weight: bold;
}
.main_wrap .keyword_section .keyword_section_desc {
  margin-top: 17px;
}
.main_wrap .keyword_section .keyword_list {
  margin: 38px -8px 0;
  overflow: hidden;
}
.main_wrap .keyword_section .keyword_list li {
  float: left;
  padding: 0 8px 16px;
}
.main_wrap .keyword_section .keyword_list .keyword {
  display: block;
  padding: 15px 23px;
  border-radius: 105px;
  border: 1px solid #eee;
  line-height: 1;
}

.main_wrap .bottom_banner {
  margin-top: 48px;
}
.main_wrap .bottom_banner > a {
  display: block;
  padding: 58px 240px 60px 80px;
  border-radius: 10px;
  background-color: #000;
  overflow: hidden;
  position: relative;
}
.main_wrap .bottom_banner .title {
  font-size: 28px;
  font-weight: bold;
  line-height: 1;
  color: #fff;
  position: relative;
  z-index: 1;
}
.main_wrap .bottom_banner .desc {
  display: inline-block;
  margin-top: 14px;
  padding-right: 24px;
  background: url("../images/main_bottom_banner_chevron_right.svg") no-repeat 100% 50%;
  background-size: 16px;
  color: #3068C6;
  font-weight: 700;
  position: relative;
  z-index: 1;
}
.main_wrap .bottom_banner .visual_img {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  right: 0;
  background-image: url("https://cdn.pudufu.co.kr/assets/banner/sub_page/main_bottom_banner_240226.png");
  background-repeat: no-repeat;
  background-position: right -130px top -23px;
  z-index: 0;
}

.free-checkbox {
  position: absolute;
  top: 13px;
  right: 20px;
}
.free-checkbox > label {
  cursor: pointer;
}
.free-checkbox > label .title {
  font-size: 18px;
  font-weight: 700;
  color: #535353;
  position: relative;
}
.free-checkbox > label input {
  width: 18px;
  height: 18px;
  vertical-align: sub;
  cursor: pointer;
}

.over-checkbox {
  position: absolute;
  top: 14px;
  right: 20px;
}
.over-checkbox > label {
  cursor: pointer;
}
.over-checkbox > label .title {
  /*display: inline-block;*/
  font-size: 18px;
  font-weight: 700;
  color: #535353;
  position: relative;
}
.over-checkbox > label input {
  display: none;
}
.over-checkbox > label input + .title:before {
  content: "";
  position: absolute;
  left: -34px;
  top: -2px;
  width: 28px;
  height: 31px;
  background: url("../images/ico_over_checkbox_off.svg") no-repeat 1px 1px;
  background-size: cover;
  background-position-y: -2px;
}
.over-checkbox > label input:checked + .title:before {
  background-image: url("../images/ico_over_checkbox_on.svg");
}

.not_found-ebook {
  margin: 48px auto 0;
  padding: 27px 20px 37px;
  background-color: #fff;
  border: 1px dashed #a7a7a7;
  border-radius: 8px;
  text-align: center;
}
.not_found-ebook .ico {
  width: 80px;
}
.not_found-ebook .content {
  margin-top: 20px;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.6;
  color: #a7a7a7;
}
.not_found-ebook .btn {
  max-width: 280px;
  margin: 32px auto 0;
}



/* 프리미엄 페이지 앵커 위치 변경 */
.anchor {
  display: block;
  position: relative;
  top: -75px;
  visibility: hidden;
}

/* banner section start */
.main_wrap .sub_banner_wrap{
  padding : 20px;
  display: flex;
  flex-wrap : wrap;
  gap : 10px;
}

.main_wrap .banner {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  overflow: hidden;
}
.main_wrap .banner.typeA{
  width : 100%;
  height : 480px;
  padding-top : 50px;
  align-items: flex-start;
}
.main_wrap .banner.typeB {
  width: calc(50% - 5px);
  height : 575px;
  padding-top : 70px;
  background: #000000;
}
.main_wrap .banner.typeC {
  width: calc(50% - 5px);
  height : 575px;
  padding-top : 70px;
  background: #F5F4F6;
}
.main_wrap .banner.typeD{
  width: calc(50% - 5px);
  height : 575px;
  padding-top : 70px;
  background: #F5F4F6;
}
.main_wrap .banner.typeD.full{
  width: calc(50% - 5px);
  height : 575px;
  padding-top : 70px;
  background-image : url("/assets/frontend/default_new/images/main_banner_241029.png");
  background-position: center center;
  background-size: cover;
}

.main_wrap .banner.typeA .desc {
  margin-top : 50px;
  text-align: left;
  line-height: 1.7;
  font-size: 18px;
  z-index: 1;
}

.main_wrap .banner .title {
  display: inline-block;
  font-size : 44px;
  font-weight: bold;
  color : #1D1D1F;
}
.main_wrap .banner.typeB .title{
  font-size : 34px;
  color : #ffffff;
}
.main_wrap .banner.typeC .title,
.main_wrap .banner.typeD .title{
  font-size :  34px;
}

.main_wrap .banner .desc {
  margin-top : 24px;
  display: inline-block;
  font-size : 19px;
  font-weight: normal;
  text-align: center;
  color : #1D1D1F;
}
.main_wrap .banner.typeB .desc{
  color : #ffffff;
}
.main_wrap .banner .more_wrap{
  display: flex;
  gap : 20px;
}
.main_wrap .banner .more {
  margin-top : 32px;
  position: relative;
  display: inline-block;
  padding-right : 20px;
  font-size : 15px;
  font-weight: bold;
  color : #3068C6;
  cursor: pointer;
  z-index : 10;
}
.main_wrap .banner .more:after{
  content: "";
  position: absolute;
  top : 2px;
  right : 0px;
  width : 14px;
  height : 14px;
  background: url("/assets/frontend/default_new/images/ico-right-arrow.svg") no-repeat;
}

.main_wrap .banner.typeB .background{
  position: absolute;
  bottom : 0px;
  width : 100%;
  height : 300px;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) -7.81%, #000000 92.19%);
}
.main_wrap .banner.typeD .background{
  position: absolute;
  width: 100%;
  height: 181px;
  left: 0px;
  top: 169px;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, #000000 100%);
}

.main_wrap .banner #banner_1 {
  position: absolute;
  width : 100%;
  height : 100%;
  bottom : -92px;
  right: 0;
  background-image: url("/assets/frontend/default_new/images/main_banner_231228.png");
  background-repeat: no-repeat;
  background-position: right top;
}
.main_wrap .banner #banner_2 {
  position: absolute;
  width : 100%;
  height: 100%;
  bottom : -140px;
  background-image : url("/assets/frontend/default_new/images/main_banner_240604.png");
  background-repeat: no-repeat;
  background-position: center bottom;
}
.main_wrap .banner #banner_3 {
  position: absolute;
  width : 100%;
  height: 100%;
  bottom : -170px;
  background-image : url("/assets/frontend/default_new/images/banner_3.png?ver=2");
  background-repeat: no-repeat;
  background-position: center top;
}
.main_wrap .banner #banner_4 {
  position: absolute;
  width : 100%;
  height: 100%;
  left : 1%;
  bottom : -15px;
  background-image : url("/assets/frontend/default_new/images/banner_4.png");
  background-repeat: no-repeat;
  background-position: center bottom;
}
.main_wrap .banner #banner_5 {
  position: absolute;
  width : 100%;
  height: 100%;
  bottom: 0;
  background-image : url("/assets/frontend/default_new/images/main_banner_240726.png");
  background-repeat: no-repeat;
  background-position: center bottom;
}

.main_wrap .banner.banner-bg-video{
  background: none;
  z-index: 0;
}
.main_wrap .banner.banner-bg-video .bg-video_content {
  position: absolute;
  width: 100%;
  margin-top: -70px;
  object-fit: cover;
  object-position: center;
  z-index: -1;
  height: 100%;
}

.main_wrap .banner_section .banner_1_belt {
  width: 100%;
  background-color: #FFE372;
  color: #000000;
  font-weight: 700;
  font-size: 25px;
  text-align: center;
  padding: 15px 0;
  line-height: 1.6;
  cursor: pointer;
}
.main_wrap .banner_section .banner_1_belt span {
  color: #BF0000;
}
.main_wrap .banner_section .banner_1_belt .belt_more {
  width: 28px;
  height: 28px;
  margin-left: 10px;
  vertical-align: middle;
}
/* banner section end*/

/* pdf vod notice section start */
.main_wrap .notice_section {
  margin-top: 48px;
}
.main_wrap .notice_section div.notice_box {
  width: 100%;
  height: 68px;
  background-color: #E2F7FF;
  position: relative;
  padding-left: 30px;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 20px;
}
.main_wrap .notice_section div.notice_box .notice_title {
  font-size: 18px;
  font-weight: 700;
}
.main_wrap .notice_section div.notice_box .notice_icon_belt {
  width: 30px;
  height: 30px;
}
.main_wrap .notice_section div.notice_box .btn_notice_close {
  margin-left: auto;
  margin-right: 20px;
  background: none;
  border: none;
}
/* pdf vod notice section end */

/* main 수강생 후기 */
.middle_banner {
	height: 320px;
	padding: 40px 0;
	background-image: url('/assets/frontend/default_new/images/main_middle_banner.png?ver=1');
	background-position: 50% 50%;
	background-size: cover;
	position: relative;
	margin-bottom: clamp(80px, calc(22vw + 50px), 100px);
}

.section-review-vod .title {
	color: #fff;
	font-size: 24px;
	font-weight: 700;
	margin-bottom: 14px;
}
.section-review-vod .desc {
	color: #fff;
	font-size: 14px;
}
.section-review-vod .btn_more {
	color: #fff !important;
}

.section-review-vod .review-vod {
	position: relative;
	max-width: 1620px;
	margin: 40px auto 0;
}

.section-review-vod .course_review_slider {
	list-style: none;
	padding: 0;
	margin: 0;
	display: grid;
	grid-template-columns: repeat(3, 1fr); /* PC: 3열 */
	gap: 20px;
}

.section-review-vod .course_review_slider li {
	position: relative;
	padding-bottom: 56.23%; /* 16:9 비율 */
	height: 0;
	overflow: hidden;
	border-radius: 12px;
	margin: 0; /* 그리드 gap 사용 */
}

.section-review-vod .course_review_slider iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: none;
	border-radius: 12px;
}

/* Slick 슬라이더 커스텀 스타일 */
.section-review-vod .btn_more {
	top: -80px !important;
	right: 100px !important;
}
.course_review_slider .slick-prev {
	top: -93px;
	right: 155px;
	color: #fff;
	background: url("/assets/frontend/default_new/images/btn_prev_white.svg") no-repeat 50% 50%;
}
.course_review_slider .slick-next {
	top: -93px;
	right: 58px;
	background: url("/assets/frontend/default_new/images/btn_next_white.svg") no-repeat 50% 50%;
}
/* // main 수강생 후기 */

/* 수강생 후기 리스트 */
.section-review-list {
	margin-bottom: 88px;
}
.section-review-list .review-list .slick-prev {
	top: -60px;
	right: 155px;
}
.section-review-list .review-list .slick-next {
	top: -60px;
	right: 58px;
}
.section-review-list .review-list .btn_more {
	top: -7px;
	right: 100px;
}
.section-review-list .review-list {
	max-width: 1620px;
	margin: 40px auto 0;
}

/* 홈 수강생 후기 그리드 */
.section-review-list .review-grid-container {
	margin-top: 0;
}
.section-review-list .review-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
	margin-bottom: 20px;
}
.section-review-list .review-grid-item {
	position: relative;
	overflow: hidden;
	transition: transform 0.3s ease;
}
.section-review-list .review-grid-item:hover {
	transform: translateY(-2px);
}
.section-review-list .review-thumbnail {
	position: relative;
	width: 100%;
	height: 0;
	padding-bottom: 60.9375%; /* 64:39 비율 */
	overflow: hidden;
	border-radius: 9px;
}
.section-review-list .review-thumbnail img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.3s ease;
	border-radius: 9px;
}
.section-review-list .review-grid-item:hover .review-thumbnail img {
	transform: scale(1.05);
}
.section-review-list .review-info {
	padding: 12px 0;
}
.section-review-list .review-title {
	font-size: 14px;
	font-weight: 600;
	margin: 0;
	line-height: 1.4;
	color: #000000;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
}
.section-review-list .review-course-title {
	font-size: 12px;
	font-weight: 700;
	color: #888888;
	margin: 0 0 9px 0;
	line-height: 1.3;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

/* 반응형 */
@media (max-width: 768px) {
	.section-review-vod .title {
		font-size: 16px;
	}
	.section-review-list .review-grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 15px;
	}
	.section-review-list .review-grid-item:nth-child(n+3) {
		display: none;
	}
}
@media (max-width: 480px) {
	.section-review-list .review-grid {
		grid-template-columns: 1fr;
		gap: 15px;
	}
}

.section-review-list .reviews li .thumb {
	position: relative;
	/*overflow: hidden;  !* 이미지와 배너가 컨테이너를 벗어나지 않도록 *!*/
	border-radius: 8px;  /* 컨테이너 자체에 border-radius 적용 */
}

.section-review-list .reviews li .thumb img {
	width: 100%;
	height: auto;
	display: block;
	border-radius: 8px;  /* 컨테이너에서 처리하므로 이미지에서는 제거 */
}
.section-review-list .reviews .thumb_badge {
	position: absolute;
	top: 10px;
	right: 16px;
	padding: 5px 8px;
	font-size: 11px;
	background: #5379F3;
	color: #fff;
	border-radius: 12px;
}

.section-review-list .reviews .blue-banner {
	position: absolute;
	left: 0;
	right: 0;
	bottom: -20px;  /* 이미지 하단에 정확히 맞춤 */
	background-color: #5379F3;  /* 파란색 배경 */
	color: #fff;               /* 흰색 텍스트 */
	padding: 15px;
	text-align: left;
	box-sizing: border-box;  /* padding이 전체 크기에 포함되도록 */
	width: 100%;  /* 명시적으로 전체 너비 설정 */
	border-bottom-left-radius: 6px;
	border-bottom-right-radius: 6px;
}

/* 수강생 이야기  - 오른쪽 원형 화살표 */
.section-review-list .reviews .blue-banner::after {
	content: "➔";  /* 화살표 */
	position: absolute;
	right: 15px;
	top: 50%;
	transform: translateY(-50%);
	background: transparent;  /* 배경 없음 */
	color: #fff;              /* 화살표 색상 흰색 */
	border: 1px solid #fff;   /* 흰색 원 테두리 */
	border-radius: 50%;
	width: 28px;
	height: 28px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 14px;
}

.section-review-list .reviews .blue-banner .banner-title {
	font-size: 14px;
	font-weight: bold;
	margin: 0 0 6px 0;
}

.section-review-list .reviews .blue-banner .banner-sub {
	font-size: 12px;
	margin: 0;
	opacity: 0.9;
}
.section-review-list .btn_review_landing {
	display: block;
	background-color: #5379F3;
	color: #fff;
	padding: 12px 24px 16px 44px;
	border-radius: 80px;
	font-size: 16px;
	line-height: 16px;
	margin: 40px auto 0;
}
.section-review-list .btn_review_landing:after {
	content: "";
	display: inline-block;
	height: 24px;
	width: 24px;
	margin-left: 12px;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: 50% 50%;
	vertical-align: sub;
	background-image: url("/assets/frontend/default_new/images/ico_plus_sm_white.svg");
	background-position-y: 2px;
}
/* //수강생 후기 리스트 */

/* 수강생 후기 반응형 */
@media (min-width: 769px) and (max-width: 1024px) {
	.middle_banner {
		height: 350px;
	}

	.section-review-vod .course_review_slider {
		grid-template-columns: repeat(2, 1fr);
		gap: 16px;
	}

	.section-review-vod .course_review_slider li {
		padding-bottom: 56.23%; /* 16:9 비율 */
		margin: 0;
	}

	/* 수강생후기 slick pre,next button */
	.section-review-vod .btn_more {
		right: 52px !important;
	}
	.course_review_slider .slick-prev {
		right: 105px;
	}
	.section-review-vod .slick-next {
		right: 10px;
	}

	/* 수강생후기리스트 slick pre,next button */
	.section-review-list .review-list .btn_more {
		right: 68px;
	}
	.section-review-list .review-list .slick-prev {
		right: 118px;
	}
	.section-review-list .review-list .slick-next {
		right: 28px;
	}
}

/* // 수강생 후기 반응형 */


@media screen and (min-width: 1160px) {
  .main_wrap .main_slide .slick-dots {
    right: 50%;
    margin-right: -580px;
  }
}
@media (min-width: 768px) and (max-width: 1199px) {
  .main_wrap .banner_slider .item:nth-child(1) a:nth-child(1) div {
    padding-top: 84px;
  }
  .main_wrap .banner_slider .item:nth-child(1) a:nth-child(1) .item_label {
    font-size: 32px;
  }
  .main_wrap .banner_slider .item:nth-child(1) a:nth-child(1) img {
    width: 36px;
    height: 36px;
    top: 82px;
  }
  .main_wrap .banner_slider .item:nth-child(1) a:nth-child(2) div {
    padding-top: 25px;
  }
  .main_wrap .banner_slider .item:nth-child(1) a:nth-child(2) .item_label {
    font-size: 16px;
  }
  .main_wrap .banner_slider .item:nth-child(1) a:nth-child(2) img {
    width: 30px;
    height: 30px;
    bottom: 18px;
  }
  .main_wrap .banner_slider .item .item_content span:nth-child(1) {
    font-size: 18px;
  }
}
@media (min-width: 768px) and (max-width: 1159px) {
  .main_wrap .main_slide .slick-dots {
    right: 10px;
    margin-right: 0;
  }
}
@media (min-width: 991px) and (max-width: 1199px) {
  .main_wrap .main_slide .item-01 .title {
    font-size: 35px;
  }
  .main_wrap .main_slide .item-01 .desc {
    line-height: 1.5;
  }
  .main_wrap .main_slide .item-01 .desc br, .main_wrap .main_slide .item-03 .desc br {
    display: block !important;
  }
  .main_wrap .main_slide .item-01 .visual_img {
    right: -20px;
  }
  .main_wrap .main_slide .item-01 .visual_img_bg {
    top: 100px;
    right: -80px;
    max-width: 600px;
  }
  .main_wrap .main_slide .item-02 .visual_img {
    top: -81px;
    right: -75px;
    width: 700px;
  }
  .main_wrap .main_slide .item-03 .visual_img {
	  right: -60px;
	  top: 115px;
	  width: 560px;
  }
	.main_wrap .main_slide .item-03 .visual_img.visual_img_bg {
		top: 88px;
		right: -60px;
		width: 38%;
	}

  .main_wrap .main_slide .item-03 .title br {
    display: block !important;
  }
  .main_wrap .main_slide .item-03 .desc br {
    display: none !important;
  }

  .main_wrap .bottom_banner .visual_img {
    background-position: left 260px top -23px;
  }
}

/* 991px 이하: 두번째 이미지 노출 */
@media (max-width: 991px) {
	.main_wrap .main_slide .item-03 .visual_img img:nth-of-type(1) { display: none; }
	.main_wrap .main_slide .item-03 .visual_img img:nth-of-type(2) { display: block; }
}

@media (min-width: 768px) and (max-width: 991px) {
  .main_wrap .main_slide .item-01 .title {
    font-size: 35px;
  }
  .main_wrap .main_slide .item-01 .desc {
    line-height: 1.5;
  }
  .main_wrap .main_slide .item-01 .desc br, .main_wrap .main_slide .item-03 .desc br {
    display: block !important;
  }
  .main_wrap .main_slide .item-01 .visual_img {
    right: -46px;
    width: 54%;
    top: 60px;
  }
  .main_wrap .main_slide .item-01 .visual_img_bg {
    right: -60px;
    width: 80%;
  }
  .main_wrap .main_slide .item-01 .visual_img_bg img {
    height: 100%;
  }

  .main_wrap .main_slide .item-02 .visual_img {
    top: -45px;
    right: -131px;
    width: 600px;
  }
  .main_wrap .main_slide .item-03 .visual_img {
	  top: 100px;
	  right: -60px;
	  width: 360px;
  }
	.main_wrap .main_slide .item-03 .visual_img.visual_img_bg {
		top: 158px;
		right: -60px;
		width: 38%;
	}
	.main_wrap .main_slide .item-03 .title {
		font-size: 35px;
	}
  .main_wrap .main_slide .item-01 .title br, .main_wrap .main_slide .item-03 .title br {
    display: block !important;
  }
  .main_wrap .main_slide .item-03 .title br {
    display: block !important;
  }

  .main_wrap .live_section .float_slider {
    margin-top: 40px;
  }

  .main_wrap .live_section.typeA .review_content{
    margin-bottom: 40px;
  }

  .main_wrap .banner_slider .item {
    height: 150px;
  }
  .main_wrap .banner_slider .item:nth-child(1) a:nth-child(1) div {
    padding-top: 61px;
    padding-left: 30px;
    height: 150px;
  }
  .main_wrap .banner_slider .item:nth-child(1) a:nth-child(1) .item_label {
    font-size: 28px;
  }
  .main_wrap .banner_slider .item:nth-child(1) a:nth-child(1) img {
    width: 30px;
    height: 30px;
    top: 60px;
    right: 30px;
  }
  .main_wrap .banner_slider .item:nth-child(1) a:nth-child(2) div {
    padding-top: 18px;
    padding-left: 15px;
    height: 50px;
  }
  .main_wrap .banner_slider .item:nth-child(1) a:nth-child(2) .item_label {
    font-size: 14px;
  }
  .main_wrap .banner_slider .item:nth-child(1) a:nth-child(2) img {
    width: 25px;
    height: 25px;
    bottom: 12px;
    right: 33px;
  }
  .main_wrap .banner_slider .item:nth-child(2) {
    padding: 20px;
  }
  .main_wrap .banner_slider .item .item_content {
    margin-top: 10px;
  }
  .main_wrap .banner_slider .item .item_content span:nth-child(1) {
    font-size: 18px;
    margin-bottom: 10px;
  }
  .main_wrap .banner_slider .item .item_content span:nth-child(2) {
    margin-bottom: 10px;
  }
  .main_wrap .banner_slider .item .visual_img {
    width: 116px;
    right: 20px;
    bottom: 20px;
  }

  .main_wrap .banner #banner_1 {
    right: -10px;
    background-image : url("/assets/frontend/default_new/images/main_banner_231228.png");
    background-size: 400px;
    background-position: right bottom;
  }

  .main_wrap .bottom_banner .visual_img {
    background-position: left 260px top -23px;
  }
}
@media screen and (min-width: 768px) {
  .main_wrap .main_slide .slick-dots {
    display: flex !important;
    flex-direction: column;
    justify-content: center;
    top: 0;
    left: inherit;
    width: 143px;
    background-color: rgba(0, 0, 0, 0.24);
    /*border-right: 1px solid #1c4187;*/
  }
  .main_wrap .main_slide .slick-dots li {
    width: 100%;
    margin: 11px 0;
  }
  .main_wrap .main_slide .slick-dots .btn {
    width: 100%;
    height: 100%;
    background-color: transparent;
    border: 0;
    font-weight: 400;
    color: #fff;
    opacity: 0.5;
    line-height: 1.2;
    text-indent: 0;
  }
  .main_wrap .main_slide .slick-dots .slick-active {
    position: relative;
  }
  .main_wrap .main_slide .slick-dots .slick-active:before,
  .main_wrap .main_slide .slick-dots .slick-active:after {
    content: "";
    position: absolute;
    border-radius: 50%;
  }
  .main_wrap .main_slide .slick-dots .slick-active:before {
    right: -6px;
    top: 4px;
    width: 11px;
    height: 11px;
    padding: 3px;
    /*border: 1px solid #1c4187;*/
  }
  .main_wrap .main_slide .slick-dots .slick-active:after {
    right: -3px;
    top: 7px;
    width: 5px;
    height: 5px;
    /*background-color: #fff;*/
  }
  .main_wrap .main_slide .slick-active .btn {
    font-weight: 700;
    opacity: 1;
  }
}

@media screen and (max-width: 767px) {
  .main_wrap {
    background-color: #fff;
  }

  .main_wrap .tabs {
    padding: 8px 0 0;
  }
  .main_wrap .tabs li {
    line-height: 1;
  }
  .main_wrap .tabs li + li {
    margin-left: 10px;
    padding-left: 10px;
  }
  .main_wrap .tabs li + li::before {
    height: 10px;
  }
  .main_wrap .tabs li .tab {
    font-size: 12px;
  }

  #wrap {
    padding-bottom: 40px;
  }

  .main_wrap section .section_title {
    font-size: 18px;
  }
  .main_wrap section .section_desc {
    margin-top: 5px;
    font-size: 13px;
  }
  .main_wrap section .btn_more {
    top: 1px;
    font-size: 11px;
    font-weight: normal;
    color: #222;
    text-decoration: underline;
  }

  .main_wrap .intro_section {
    margin-top: 40px;
  }
  .main_wrap .intro_section .card {
    padding: 143px 20px 27px;
    line-height: 1;
  }
  .main_wrap .intro_section .card.empty_text_card {
    padding: 175px 20px 27px;
  }
  .main_wrap .intro_section .card .tag {
    font-size: 10px;
  }
  .main_wrap .intro_section .card .tag::before {
    display: none;
    left: -27px;
    width: 55px;
    height: 55px;
  }
  .main_wrap .intro_section .card .title {
    margin-top: 6px;
    font-size: 16px;
  }
  .main_wrap .intro_section .card .desc {
    margin-top: 6px;
    font-size: 14px;
    line-height: 1.6;
  }

  .main_wrap .main_slide .item .container {
    padding: 0;
  }
  .main_wrap .main_slide .item .content_box {
    /* padding: 65.625% 20px 0; */
    height: 180px;
  }
  .main_wrap .main_slide .slick-dots li {
    width: 33.333%;
    margin: 0;
  }
  .main_wrap .main_slide .slick-dots .btn {
    width: 100%;
    height: 100%;
    font-weight: 400;
    line-height: 30px;
    background-color: #fff;
    border: 0;
    border-radius: 0;
    color: #333;
    text-indent: 0;
  }
  .main_wrap .main_slide .slick-active .btn {
    background-color: #f2f6fc;
    font-weight: 700;
    color: #1d4289;
  }
  .main_wrap .main_slide .item .content_box .content {
    left: 20px;
    top: calc(50% - 3px);
  }
  .main_wrap .main_slide .item .title {
    font-size: 18px;
    line-height: 25px;
    letter-spacing: -0.03em;
  }
  .main_wrap .main_slide .item-03 .title strong {
    font-size: 14px;
  }
  .main_wrap .main_slide .item .title .visible-xs {
    display: inline-block !important;
  }
  .main_wrap .main_slide .item .desc {
    margin-top: 10px;
    font-size: 12px;
    line-height: 17px;
  }
  .main_wrap .main_slide .item .desc_btn {
    padding: 0 20px;
    height: 30px;
    border-radius: 40px;
    font-size: 10px;
    color: #FFFFFF;
  }
  .main_wrap .main_slide .item .desc.main-round-label {
    top: -38px;
  }
  .main_wrap .main_slide .item .desc.main-round-label span {
    font-size: 12px;
    padding: 2px 10px 4px;
  }
  .main_wrap .main_slide .item-01 .desc_btn {
    color: #000;
  }
  .main_wrap .main_slide .item-01 .title {
    font-size: 16px;
  }
  .main_wrap .main_slide .item-01 .desc br, .main_wrap .main_slide .item-03 .desc br {
    display: block !important;
  }
  .main_wrap .main_slide .item-01 .visual_img {
    width: 180px;
    top: 10px;
    right: -4px;
  }
  .main_wrap .main_slide .item-01 .visual_img_bg {
    width: unset;
    top: 45px;
    bottom: 0;
    right: -13px;
  }
  .main_wrap .main_slide .item-01 .visual_img_bg img {
    height: 100%;
  }
  .main_wrap .main_slide .item-02 .visual_img {
    width: 202px;
    top: -9px;
    right: -42px;
  }
  .main_wrap .main_slide .item-03 .visual_img {
    width: 140px;
	  top: 30px;
    right: 0;
  }
	.main_wrap .main_slide .item-03 .visual_img.visual_img_bg {
		width: 140px;
		top: 38px;
		right: -15px;
	}
	.main_wrap .main_slide .item-03 .title {
		font-size: 16px;
	}
  .main_wrap .main_slide .item-03 .title br {
    display: block !important;
  }

  .main_wrap .main_slide .item .title,
  .main_wrap .main_slide .item .desc {
    transform: translateY(-20px);
  }

  .main_wrap .product_section{
    margin-top: 40px;
  }
  .main_wrap .product_section .product_list {
    margin-top: 20px;
  }

  .main_wrap .product_section.typeA {
    margin-top: 40px;
  }
  .main_wrap .product_section.typeB {
    margin-top: 40px;
  }
  .main_wrap .product_section.typeB .product_list .product_item:nth-child(n+5)  {
    /*display: none;*/
  }
  .main_wrap .banner_slider {
    margin-top: 40px;
  }
  .main_wrap .banner_slider > .container {
    padding-bottom: 0;
  }
  .main_wrap .banner_slider .item {
    margin-top: 0;
    padding: 18px 0 10px 25px;;
    text-align: left;
    height: auto;
  }
  .main_wrap .banner_slider .item .item_label {
    font-size: 14px;
  }
  .main_wrap .banner_slider .item .item_content {
    margin-top: 8px;
    font-size: 16px;
    line-height: 1;
  }
  .main_wrap .banner_slider .item .item_content img {
    width: 24px;
    height: 24px;
    margin-top: 1px;
  }
  .main_wrap .banner_slider .item .item_content .font-poppins {
    font-size: 18px;
  }
  .main_wrap .banner_slider .item .item_content span {
    line-height: 1.3;
  }
  .main_wrap .banner_slider .item .item_content span:nth-child(1) {
    font-weight: bold;
    font-size: 16px;
    line-height: 22px;
    margin-bottom: 10px;
  }
  .main_wrap .banner_slider .item .item_content span:nth-child(1)::after {
    content: "\a";
    white-space: pre;
  }
  .main_wrap .banner_slider .item .item_content span:nth-child(3) {
    font-size: 12px;
    line-height: 28px;
  }
  .main_wrap .banner_slider .item .item_content span:nth-child(2) {
    display: inline-block;
    margin-top: 8px;
  }
  .main_wrap .banner_slider .item .visual_img {
    width: 100px;
    right: 18px;
  }

  .main_wrap .banner_slider .item {
    height: 150px;
    width: 100%;
  }
  .main_wrap .banner_slider .item:nth-child(1) {
    height: 100px;
  }
  .main_wrap .banner_slider .item:nth-child(1) a:nth-child(1) div {
    padding-top: 36px;
    padding-left: 30px;
    height: 100px;
  }
  .main_wrap .banner_slider .item:nth-child(1) a:nth-child(1) .item_label {
    font-size: 28px;
  }
  .main_wrap .banner_slider .item:nth-child(1) a:nth-child(1) img {
    width: 30px;
    height: 30px;
    top: 35px;
    right: 30px;
  }
  .main_wrap .banner_slider .item:nth-child(1) a:nth-child(2) div {
    padding-top: 18px;
    padding-left: 15px;
    height: 50px;
  }
  .main_wrap .banner_slider .item:nth-child(1) a:nth-child(2) .item_label {
    font-size: 14px;
  }
  .main_wrap .banner_slider .item:nth-child(1) a:nth-child(2) img {
    width: 25px;
    height: 25px;
    bottom: 12px;
    right: 33px;
  }
  .main_wrap .banner_slider .item:nth-child(2) {
    padding: 20px;
    margin-top: 30px;
  }
  .main_wrap .banner_slider .item .item_content {
    margin-top: 10px;
  }
  .main_wrap .banner_slider .item .item_content span:nth-child(1) {
    font-size: 16px;
    margin-bottom: 10px;
  }
  .main_wrap .banner_slider .item .item_content span:nth-child(2) {
    margin-bottom: 0;
  }
  .main_wrap .banner_slider .item .visual_img {
    width: 116px;
    right: 20px;
    bottom: 20px;
  }

  .main_wrap .live_section {
    margin-top: 12px;
  }
  .main_wrap .live_section.typeA{
    margin-top: 40px;
  }

  .main_wrap .live_section .product_slider {
    margin-left: -20px;
    margin-right: -20px;
  }
  .main_wrap .live_section .float_slider {
    margin-top: 20px;
  }

  .main_wrap .live_section .float_slider .item .date,
  .main_wrap .live_section .float_slider .item .nickname {
    font-size: 10px;
  }

  .main_wrap .live_section .float_slider .item .content {
    margin-top: 6px;
    font-size: 12px;
  }

  .main_wrap .live_section.typeA .review_content{
    margin-bottom: 40px;
  }
  .main_wrap .live_section .review_content .section_title img {
    /*width: 47px;*/
    height: 18px;
    margin-top: 1px;
  }
  .main_wrap .live_section.typeA .review_content .slick-list {
    height: 315px !important;
  }

  .main_wrap .review_section {
    padding: 32px 0 52px;
  }
  .main_wrap .review_section .review_slider {
    margin: 40px -6px 0;
  }
  .main_wrap .review_section .review_slider .item {
    width: 300px;
    margin: 0 6px;
  }
  .main_wrap .review_section .review_slider .slick-arrow {
    margin-bottom: 0;
  }

  .main_wrap .keyword_section {
    margin-top: 12px;
  }
  .main_wrap .keyword_section .keyword_section_title {
    font-size: 14px;
    color: #1b2a46;
  }
  .main_wrap .keyword_section .keyword_section_desc {
    margin-top: 5px;
    font-size: 12px;
  }
  .main_wrap .keyword_section .keyword_list_wrap {
    white-space: nowrap;
    overflow-y: auto;
  }
  .main_wrap .keyword_section .keyword_list {
    margin: 20px 0 0;
  }
  .main_wrap .keyword_section .keyword_list .keyword {
    padding: 9px 12px;
    border-radius: 87px;
    font-size: 12px;
  }
  .main_wrap .keyword_section .keyword_list li {
    padding: 0 4px 8px 0;
  }

  .main_wrap .bottom_banner {
    margin-top: 40px;
  }
  .main_wrap .bottom_banner > a {
    padding: 44px 0 44px 40px;
    border-radius: 10px;
  }
  .main_wrap .bottom_banner .title {
    font-size: 24px;
    line-height: 1.2;
  }
  .main_wrap .bottom_banner .title br {
    display: initial !important;
  }
  .main_wrap .bottom_banner .desc {
    margin-top: 16px;
  }
  .main_wrap .bottom_banner .visual_img {
    background-position: left 75px top -23px;
  }

  .main_wrap .premium_list_btn {
    margin-bottom: 28px;
  }

  .main_wrap .category_list.typeA {
    display: none;
  }

  /* banner section start */
  .main_wrap .sub_banner_wrap{
    padding : 10px 0px 0px 0px;
    flex-direction: column;
  }

  .main_wrap .banner.typeA{
    height : 320px;
    padding-top : 40px;
  }
  .main_wrap .banner.typeB {
    width: 100%;
    height : 400px;
    padding-top : 40px;
  }
  .main_wrap .banner.typeC {
    width: 100%;
    height : 400px;
    padding-top : 40px;
  }
  .main_wrap .banner.typeD{
    width: 100%;
    height : 400px;
    padding-top : 40px;
  }
  .main_wrap .banner.typeD.full {
    width: 100%;
    height : 400px;
    padding-top : 40px;
  }

  .main_wrap .banner .title {
    font-size : 24px !important;
  }

  .main_wrap .banner .desc {
    margin-top : 16px;
    font-size : 14px !important;
    line-height: 1.4;
  }

  .main_wrap .banner.typeA .desc {
    margin-top : 30px;
  }

  .main_wrap .banner.typeB .background{
    position: absolute;
    bottom : -43px;
    width: 100%;
    height: 225px;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) -7.81%, #000000 92.19%);
  }
  .main_wrap .banner.typeD .background{
    position: absolute;
    width: 100%;
    height: 181px;
    left: 0px;
    top: 50px;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, #000000 100%);
  }

  .main_wrap .banner #banner_1 {
    right: -10px;
    background-image : url("/assets/frontend/default_new/images/main_banner_231228.png");
    background-size: 300px;
    background-position: right bottom;
  }
  .main_wrap .banner #banner_2 {
    bottom : -35px;
    background-image : url("/assets/frontend/default_new/images/main_banner_240619.png");
  }
  .main_wrap .banner #banner_3 {
    bottom: -140px;
    background-image : url("/assets/frontend/default_new/images/banner_mo_3.png?ver=2");
  }
  .main_wrap .banner #banner_4 {
    background-image : url("/assets/frontend/default_new/images/banner_mo_4.png");
  }
  .main_wrap .banner #banner_5 {
    bottom: -60px;
    background-image : url("/assets/frontend/default_new/images/main_banner_240726.png");
  }
  .main_wrap .banner.banner-bg-video .bg-video_content {
    margin-top: -40px;
  }

  .main_wrap .banner_section .banner_1_belt {
    font-size: 12px;
    padding: 12px 0;
  }
  .main_wrap .banner_section .banner_1_belt .belt_more {
    width: 15px;
    height: 15px;
    margin-left: 0;
    vertical-align: bottom;
  }
  /* banner section end*/

  .free-checkbox {
    top: 6px;
  }
  .free-checkbox > label input {
    width: 12px;
    height: 12px;
    vertical-align: top;
    margin-top: 1px;
  }
  .free-checkbox > label .title {
    font-size: 12px;
  }

  .over-checkbox {
    top: 6px;
  }
  .over-checkbox > label .title {
    font-size: 12px;
  }
  .over-checkbox > label input + .title:before {
    top: -1px;
    left: -24px;
    width: 18px;
    height: 21px;
  }

  .not_found-ebook {
    margin-top: 40px;
    padding: 38px 20px 20px;
  }
  .not_found-ebook .content {
    font-size: 16px;
    line-height: 1.4;
  }
  .not_found-ebook .btn {
    max-width: none;
    margin-top: 26px;
  }

  .main_wrap .product_section .btn_more {
    font-size: 12px;
    font-weight: bold;
    right: 60px;
    text-decoration: none;
  }
  .main_wrap .product_section .main_list_slide .slick-prev {
    top: -55px;
    right: 90px;
  }
  .main_wrap .product_section .main_list_slide .slick-next {
    top: -55px;
    right: 0px;
  }

  .main_wrap .review_section {
    padding-bottom: 80px;
  }
  .main_wrap .review_section .review_slider .slick-prev {
    top: unset;
    right: calc(100% - 50% - 22px + 54px);
    bottom: -64px;
  }
  .main_wrap .review_section .review_slider .slick-next {
    top: unset;
    right: calc(100% - 50% - 22px - 58px);
    bottom: -64px;
  }
  .main_wrap .review_section .btn_more {
    font-size: 12px;
    font-weight: bold;
    right: calc(100% - 50% - 22px);
    bottom: -46px;
    top: unset;
    text-decoration: none;
  }
  .main_wrap .review_section .section_title {
    font-size: 15px;
  }
  .main_wrap .review_section .section_desc {
    margin-top: 12px;
    font-size: 12px;
  }
  .main_wrap .review_section .review_slider .item .content {
    font-size: 15px;
    height: 100px;
  }
  .main_wrap .review_section .review_slider .item .title {
    margin-top: 32px;
    font-size: 14px;
    height: 18px;
  }
  .main_wrap .review_section .review_slider .item .user_best_review_img {
    margin-top: -2px;
  }

  .main_wrap .notice_section {
    margin-top: 40px;
  }
  .main_wrap .notice_section div.notice_box {
    height: 58px;
    padding-left: 20px;
    gap: 14px;
  }
  .main_wrap .notice_section div.notice_box .notice_ai_icon {
    width: 28px;
  }
  .main_wrap .notice_section div.notice_box .notice_title {
    font-size: 12px;
  }
  .main_wrap .notice_section div.notice_box .notice_icon_belt {
    width: 24px;
  }
  .main_wrap .notice_section div.notice_box .btn_notice_close {
    width: 20px;
    margin-left: auto;
    margin-right: 20px;
    background: none;
    border: none;
  }
}
@media screen and (max-width: 520px) {
  .main_wrap .banner.typeA {
    height: 481px;
  }
}

@media screen and (max-width: 440px){
  .free-checkbox {
    position: unset;
    text-align: right;
    margin-bottom: 8px;
  }
  .over-checkbox {
    position: unset;
    text-align: right;
    margin-bottom: 8px;
  }
}

/***** 메인 전용 구매현황(main_live_slider) 스타일 *****/
.main_wrap .live_section .main_live_slider {
	position: relative;
}
/* PC 버전에서 가로 모드 및 date 위치 조정 */
@media (min-width: 768px) {
	.main_wrap .live_section .main_live_slider {
		margin-top: 14px;
	}
	.main_wrap .live_section .main_live_slider .slick-track {
		display: flex;
		align-items: stretch;
	}
	.main_wrap .live_section .main_live_slider .slick-slide {
		margin: 4px 8px;
	}
	.main_wrap .live_section .main_live_slider .item {
		width: auto;
		min-width: 250px;
		display: block;
		position: relative;
		padding: 18px 16px 36px 20px; /* 하단 여백 늘림 */
	}
	/* PC에서 date를 content 하단 좌측으로 */
	.main_wrap .live_section .main_live_slider .item .date {
		position: absolute;
		bottom: 15px;
		left: 20px;
		right: auto;
		top: auto;
	}
	/* PC 가로 모드에서는 상/하 그라데이션 가림 */
	.main_wrap .live_section .main_live_slider::before,
	.main_wrap .live_section .main_live_slider::after {
		display: none;
	}
	/* PC 모드에서 가로로 길게 나오기 */
	.main_wrap .live_section .main_live_slider .slick-list {
		overflow: visible;
	}
}
/* 모바일 세로 모드는 기존 그대로 유지 */
@media (max-width: 767px) {
	.main_wrap .live_section .main_live_slider {
		margin-top: 20px;
	}
	.main_wrap .live_section .main_live_slider .item {
		margin: 4px 0;
		padding: 16px 14px 16px 18px;
	}
	.main_wrap .live_section .main_live_slider .item .date,
	.main_wrap .live_section .main_live_slider .item .nickname {
		font-size: 10px;
	}
	.main_wrap .live_section .main_live_slider .item .content {
		margin-top: 6px;
		font-size: 12px;
	}
}
/***** // 메인 전용 구매현황(main_live_slider) 스타일 *****/


/* 메인 수강생후기 반응형 */
@media (max-width: 768px) {
	.middle_banner {
		height: 450px;
	}

	.section-review-vod .course_review_slider {
		margin: 0 auto;
		display: grid;
		grid-template-columns: 1fr;
		gap: 12px;
	}

	.section-review-vod .course_review_slider li {
		padding-bottom: 56.23%; /* 16:9 비율 */
		margin: 0;
	}

	/* 수강생후기 slick pre,next button */
	.section-review-vod .btn_more {
		top: -92px !important;
		right: 32px !important;
		text-decoration: none;
		font-size: 12px;
		font-weight: bold;
	}
	.course_review_slider .slick-prev {
		top: -108px;
		right: 73px;
	}
	.course_review_slider .slick-next {
		top: -108px;
		right: -15px;
	}

	/* 수강생후기리스트 slick pre,next button */
	.section-review-list .review-list .btn_more {
		top: 1px;
		right: 60px;
		text-decoration: none;
		font-size: 12px;
		font-weight: bold;
		color: #375690;
	}
	.section-review-list .review-list .slick-prev {
		right: 108px;
	}
	.section-review-list .review-list .slick-next {
		right: 28px;
	}

	/* 수강생 후기 리스 landing 버튼 */
	.section-review-list .btn_review_landing {
		font-size: 12px;
	}
	.section-review-list .btn_review_landing:after {
		height: 20px;
		width: 20px;
	}
}

/* 수강생 후기 반응형 margin */
@media (max-width: 700px){
	.section-review-vod .middle_banner {
		margin-bottom: clamp(60px, calc(2vw + 20px), 100px);
	}
}

@media (max-width: 550px){
	.middle_banner {
		height: 350px;
	}
}
/* // 메인 수강생후기 반응형 */

/* 수강생 성공사례관: 표기 개수 및 그리드 열 설정 */
@media (min-width: 1025px) {
	.section-review-vod .course_review_slider {
		grid-template-columns: repeat(3, 1fr);
	}
	.section-review-vod .course_review_slider li:nth-child(n+4) {
		display: none;
	}
}

@media (min-width: 769px) and (max-width: 1024px) {
	.section-review-vod .course_review_slider {
		grid-template-columns: repeat(2, 1fr);
		gap: 16px;
	}
	.section-review-vod .course_review_slider li {
		margin: 0;
	}
	.section-review-vod .course_review_slider li:nth-child(n+3) {
		display: none;
	}
}

@media (max-width: 768px) {
	.section-review-vod .course_review_slider {
		grid-template-columns: 1fr;
		gap: 12px;
	}
	.section-review-vod .course_review_slider li {
		margin: 0;
	}
	.section-review-vod .course_review_slider li:nth-child(n+2) {
		display: none;
	}
}
