/**************** 아카데미 통합페이지 ****************/
.academy_wrap{
    max-width: 1920px;
    margin: 0 auto;
    text-align: center;
}
.academy_wrap *{
    font-family: "NotoSansKR";
}
.academy_banner{
    position: relative;
}
.academy_banner img{
    width: 100%;
}
.academy_banner .tit_box{
    position: absolute;
    top: 0; bottom: 0;
    left: 0; right: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    gap: 24px;
}
.academy_banner .tit_box .tit{
    color: #FFF;
    text-align: center;
    font-size: 36px;
    font-style: normal;
    font-weight: 700;
    line-height: 140%; /* 53.2px */
}
.academy_banner .tit_box .sub_tit{
    color: #FFF;
    text-align: center;
    font-size: 18px;
    font-style: normal;
    font-weight: 500;
    line-height: 150%; /* 27px */
}

.academy_basecamp{
    margin: 160px 0 80px 0;
}

.academy_basecamp h1{
    color: #000;
    text-align: center;
    font-size: 36px;
    font-style: normal;
    font-weight: 700;
    line-height: 100%; /* 36px */
    letter-spacing: -0.72px;
}
.academy_basecamp .swiper-container {
    width: 100%;
    max-width: 1920px;
    margin-top: 80px;
}
.academy_basecamp .swiper-container .swiper-wrapper{
    cursor: auto !important;
}
.academy_basecamp .swiper-container .swiper-slide {
    width: 960px !important;
}

.academy_basecamp .swiper-container .swiper-slide .img_box{
    position: relative;
    display: flex;
    background: #000;
    width: 100%;
    height: 100%;
}
.academy_basecamp .swiper-container .swiper-slide .img_box .deem{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #000;
    opacity: 0.5;
}

.academy_basecamp .swiper-container .swiper-slide .img_box img{
    width: 100%;
    height: auto;
    display: block;

}
.academy_basecamp .swiper-container .swiper-slide .img_box .addr_box{
    display: block; /* 항상 block 상태 */
    position: absolute;
    left: 0; right: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.00) 41.87%, rgba(0, 0, 0, 0.90) 100%), 50% / cover no-repeat;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.5s ease;
}

.academy_basecamp .swiper-container .swiper-slide .img_box .addr_box .addr{
    display: flex;
    justify-content: center;
    align-items: end;
    gap: 4px;
    height: 100%;
    width: 100%;
    padding: 64px 0;
}

.academy_basecamp .swiper-container .swiper-slide .img_box .addr_box span{
    font-size: 18px;
    font-weight: 700;
    line-height: 100%; /* 18px */
    color: #FFF;
}
.academy_basecamp .swiper-container .swiper-slide .desc{
    display: none;
    margin-top: 64px;
}
.academy_basecamp .swiper-container .swiper-slide .desc h3{
    font-size: 28px;
    font-weight: 700;
    line-height: 100%; /* 28px */
    letter-spacing: -0.56px;
    margin-bottom: 16px;
}
.academy_basecamp .swiper-container .swiper-slide .desc p{
    color: #666;
    font-size: 18px;
    font-weight: 500;
    line-height: 150%; /* 27px */
    letter-spacing: -0.36px;
}

.academy_basecamp .swiper-container .swiper-slide.swiper-slide-active .img_box .deem{
    opacity: 0;
}
.academy_basecamp .swiper-container .swiper-slide.swiper-slide-active .img_box:hover .addr_box{
    opacity: 1;
    visibility: visible;
}
.academy_basecamp .swiper-container .swiper-slide.swiper-slide-active .desc{
    display: block;
}

.academy_basecamp .swiper-container .swiper-button-prev{
    background-image: url('//cdn.byn.kr/real/_data/academy/main/pc/btn_prev.svg');
    top: auto;
    bottom: 25px;
    left: calc(50% - 230px);
}
.academy_basecamp .swiper-container .swiper-button-next{
    background-image: url('//cdn.byn.kr/real/_data/academy/main/pc/btn_next.svg');
    top: auto;
    bottom: 25px;
    left: calc(50% + 200px);
}

.academy_basecamp .swiper-container .swiper-button-prev:after,
.academy_basecamp .swiper-container .swiper-button-next:after{content: '';}

.academy_basecamp .fade-up {
    opacity: 0;
    transform: translateY(50px);
    animation: fadeUp 0.3s ease-out forwards;
    animation-delay: 0.3s;
}

/* 주제별 진열 프로그램 */
.academy_display_subject{
    text-align: left;
    padding: 60px 8.3333%;
}
.academy_display_subject h1{
    font-size: 32px;
    font-style: normal;
    font-weight: 700;
    line-height: 100%; /* 32px */
    letter-spacing: -0.64px;
}

.academy_wrap .academy_display_subject .swiper-container .swiper-button-prev{
    width: 40px;
    height: 40px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M15 4L7 12L15 20' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    top: 41.5%;
    left: 0;
    transform: translateY(-41.5%);
    background-color: rgba(255, 255, 255, 0.50);
    z-index: 99;
}
.academy_wrap .academy_display_subject .swiper-container .swiper-button-next{
    width: 40px;
    height: 40px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M9 20L17 12L9 4' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    top: 41.5%;
    right: 0;
    transform: translateY(-41.5%);
    background-color: rgba(255, 255, 255, 0.50);
}
.academy_wrap .academy_display_subject .swiper-container .swiper-button-prev:after,
.academy_wrap .academy_display_subject .swiper-container .swiper-button-next:after{
    content: '';
}
.academy_wrap .academy_display_subject .swiper-container .swiper-button-next.swiper-button-disabled,
.academy_wrap .academy_display_subject .swiper-container .swiper-button-prev.swiper-button-disabled{
    opacity: 1;
    pointer-events: auto;
    cursor: pointer;
}

.academy_wrap .academy_display_subject .swiper-container .swiper-buttons{
    display: none;
}

/* 키워드별 진열 프로그램 */
.academy_wrap .academy_display_keyword{
    display: flex;
    gap: 0 24px;
    padding: 80px 8.3333%;

}
.academy_wrap .academy_display_keyword .keyword_info{
    width: 23.875%;
    text-align: left;
    max-width: 382px;
    flex: 0 0 23.875%;
}
.academy_wrap .academy_display_keyword .keyword_info h1{
    font-family: Montserrat;
    font-size: 32px;
    font-weight: 700;
    line-height: 100%; /* 32px */
    letter-spacing: -0.64px;
    margin-bottom: 40px;
}
.academy_wrap .academy_display_keyword .keyword_info .keyword_list{
    display: flex;
    flex-direction: column;
}
.academy_wrap .academy_display_keyword .keyword_info .keyword_list li{
    padding: 14px 0;
    color: #777;
    font-size: 20px;
    font-weight: 500;
    line-height: 100%; /* 20px */
    letter-spacing: -0.4px;
    cursor: pointer;
}
.academy_wrap .academy_display_keyword .keyword_info .keyword_list li.on{
    color: #000;
    font-weight: 700;
}
.academy_wrap .academy_display_keyword .keyword_info .keyword_list li:hover{
    color: #000;
}


/* 아카데미 프로그램 리스트*/
.academy_wrap .academy_program_list{
    width: 100%;
    margin-top: 40px;
}
.academy_wrap .academy_program_list .swiper-wrapper.on{
    margin-bottom: 32px;
}

.academy_wrap .academy_program_list .academy_program .thumb{
    position: relative;
    width: 100%;
    max-width: 382px;
    aspect-ratio: 382 / 491;
}
.academy_wrap .academy_program_list .academy_program .thumb .deem {
    position: absolute;
    width:100%;
    height:100%;
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.60) 0%, rgba(0, 0, 0, 0.60) 100%);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    color: #FFF;
    gap: 12px;
}
.academy_wrap .academy_program_list .academy_program .thumb .deem p{
    color: #FFF;
    text-align: center;
    font-family: Montserrat;
    font-size: 28px;
    font-style: normal;
    font-weight: 400;
    line-height: 100%; /* 28px */
    letter-spacing: -0.56px;
}
.academy_wrap .academy_program_list .academy_program .thumb .deem p.prg_start{
    font-family: Montserrat;
    font-size: 16px;
    font-weight: 500;
    letter-spacing: -0.32px;
}

.academy_wrap .academy_program_list .academy_program .thumb img{
    object-fit: cover;
    width: 100%;
    height: 100%;
}
.academy_wrap .academy_program_list .academy_program .icons{
    position: absolute;
    width: 100%;
    top: 0; left: 0;
    padding: 16px;
    display: flex;
    flex-direction: row;
    gap: 4px;
}
.academy_wrap .academy_program_list .academy_program .icons span{
    color: #000;
    font-family: "Noto Sans CJK KR";
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: 100%; /* 14px */
    letter-spacing: -0.28px;
    padding: 12px;
    border: 1px solid rgba(255, 255, 255, 0.50);
    background: #FFF;
}
/* 모집예정 ,모집마감 */
.academy_wrap .academy_program_list .academy_program.st_2 .icons .aca_stat,
.academy_wrap .academy_program_list .academy_program.st_3 .icons .aca_stat{
    background: rgba(0, 0, 0, 0.50);
    color: #A3A3A3;
    border: none;
}
.academy_wrap .academy_program_list .academy_program.st_2 .cnt_date,
.academy_wrap .academy_program_list .academy_program.st_3 .cnt_date{
    color: #A3A3A3;
}

/*
.basecamp_main_box .swiper-slide .academy_program a .thumb .icons .aca_stat.st_Y {
    background-color: #00000A;
}
.basecamp_main_box .swiper-slide .academy_program a .thumb .icons .aca_stat.st_Y_n {
    background-color: #009D23;
}
.basecamp_main_box .swiper-slide .academy_program a .thumb .icons .aca_stat.st_C {
    background-color: #666666;
}
.basecamp_main_box .swiper-slide .academy_program a .thumb .icons .aca_stat.st_N {
    background-color: #666666;
}
*/

.academy_wrap .academy_program_list .academy_program .cnt_date{
    position: absolute;
    bottom: 0;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    width: 100%;
    color: #FFF;
    padding: 16px;
    background: rgba(0, 0, 0, 0.50);
}
.academy_wrap .academy_program_list .academy_program .cnt_date *{
    font-size: 14px;
}

.academy_wrap .academy_program_list .academy_program .program_info{
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding: 16px;
}
.academy_wrap .academy_program_list .academy_program .program_info .prg_type{
    color: #666;
    font-family: "Noto Sans CJK KR";
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: 100%; /* 14px */
    letter-spacing: -0.28px;
}
.academy_wrap .academy_program_list .academy_program .program_info .prg_title{
    color: #000;
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: 140%; /* 22.4px */
    letter-spacing: -0.32px;
}
.academy_wrap .academy_program_list .academy_program .program_info .prg_price{
    color: #000;
    font-family: Montserrat;
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: 100%; /* 16px */
    letter-spacing: -0.32px;
}
.academy_wrap .academy_program_list .swiper-pagination{top: auto; bottom: 0;}
.academy_wrap .academy_program_list .swiper-pagination .swiper-pagination-progressbar-fill{background: #000;}


/* 프로그램 진열 (키워드별) 리스트 */
.academy_wrap .academy_display_keyword .academy_program_list{
    margin: 0;
}
.academy_wrap .academy_display_keyword .academy_program_list .swiper-wrapper{
    width: 100%;
    flex-wrap: wrap;
    gap: 40px 24px;
    align-items: flex-start;
    text-align: left;
    box-sizing: border-box;
    margin: 0;
}
.academy_wrap .academy_display_keyword .academy_program_list .swiper-wrapper .academy_program{
    width: calc(100% / 3 - 16px);
    box-sizing: border-box;
    max-width: 382px;
    aspect-ratio: 382 / 491;
}
.academy_wrap .academy_display_keyword .academy_program_list .btn_more{
    display: none;
    width: 100%;
    padding: 24px 10px;
    justify-content: center;
    align-items: center;
    gap: 4px;
    border: 1px solid #D9D9D9;
    background: #FFF;
    color: #000;
    font-size: 18px;
    font-weight: 500;
    line-height: 100%; /* 18px */
    letter-spacing: -0.36px;
    cursor: pointer;
    margin-top: 24px;
}
.academy_wrap .academy_display_keyword .academy_program_list .btn_more.on{
    display: flex;
}

@keyframes fadeUp {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/****************** START : 아카데미 상세 페이지 **************************/
#cnt .aca_box {
    width: 100%;
    max-width:1920px;
    min-height:100px;
    margin-left: auto;
    margin-right: auto;
    overflow:hidden;
    font-family: "NotoSansKR";
}

.section {
    width:100%;
}

.section.notice {
    background-color: #444B52;
    min-height: 200px;
    overflow:hidden;
}

.section .join_w_btn {
    margin: 80px auto 0 auto;
    width: 50%;
    height: 80px;
    background-color: #000;
    color: #FFF;
    text-align: center;
    font-family: "NotoSansKR";
    font-size: 24px;
    font-style: normal;
    font-weight: 600;
    line-height: 80px;
    cursor: pointer;
}

.section .join_w_btn.disabled {
    background-color: #D9D9D9;
    color: #FFF;
    cursor: default;
}

.section img{
    width:100%;
}

.bottom_aca_bar {
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 300;
    width: 100%;
    margin-left: 0;
    border-top: 1px solid #dfdfdf;
    background: #fff;
}
.bottom_aca_bar * {
    font-family: 'NotoSansKR', 'Montserrat', sans-serif;
}
.bottom_aca_bar .bar_box{
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 50%;
    max-width: 960px;
    height: 72px;
    margin: 0 auto;
}

.bottom_aca_bar .p_bar .rsv_txt{
    display: flex;
    align-items: center;
    gap: 24px;
}
.bottom_aca_bar .p_bar .p_txt{
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: 100%; /* 18px */
    letter-spacing: -1px;
}
.bottom_aca_bar .n_txt {
    color: #666;
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: 100%; /* 16px */
    letter-spacing: -1px;
}
.bottom_aca_bar .n_txt .red{
    color: #F00;
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: 100%; /* 16px */
    letter-spacing: -1px;
}

.bottom_aca_bar .n_bar {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 8px;
}

.bottom_aca_bar .n_bar .aca_join_btn {
    text-align: center;
    width: 160px;
    height: 48px;
    background: #000;
    color: #FFF;
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: 48px; /* 269.231% */
    margin-left: 16px;
    letter-spacing: -1px;
    cursor: pointer;
}

.bottom_aca_bar .n_bar .aca_join_btn.disabled {
    background-color: #D9D9D9;
    color: #FFF;
    cursor: default;
}

.aca-deem {
    background-color : rgb(0, 0, 10, 0.6);
    z-index: 999;
    top:0px;
    left:0px;
    position: fixed;
    width:100vw;
    height:100vh;
    display:flex;
    justify-content: center;
    align-items: center;
}

.modal-box {
    z-index: 115;
    width:600px;
    min-height:400px;
    background-color: white;
}

.modal-box .title {
    margin-top:60px;
    width:100%;
    color: black;
    height:24px;
    text-align: center;
    font-size: 24px;
    font-style: normal;
    font-weight: 700;
}

.modal-box .sub-title {
    color: black;
    text-align: center;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    letter-spacing: -0.16px;
    width:100%;
    height:16px;
    margin-top: 14px;
    margin-bottom: 48px;
}

.modal-box .sche_field {
    width: 510px;
    margin-left: auto;
    margin-right: auto;
    color: #252B42;
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: 24px;
    height:24px;
    letter-spacing: 0.2px;
    font-family: "NotoSansKR";
}

.modal-box .sche_field .point {
    color: #FF5C47;
}

.modal-box .input_div {
    margin-top: 10px;
    width: 510px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 32px;
}

.modal-box .input_div input[type=text] {
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    padding-left: 10px;
    border:1px solid #737373;
    width: 510px;
    height: 50px;
    outline-color: black;
}

.modal-box .input_div fieldset label {
    margin-right: 16px;
    font-size: 15px;
    font-style: normal;
    font-weight: 400;
}
.modal-box .input_div.agree_box{
    display: flex;
    flex-direction: row;
}
.modal-box .input_div.agree_box input[type=checkbox]{
    margin-top: 4px;
}
.modal-box .input_div.agree_box label{
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    letter-spacing: -0.16px;
    word-break: break-word;
}
.modal-box .input_div.agree_box .sub_txt{
    font-size: 13px;
    font-style: normal;
    font-weight: 400;
    letter-spacing: -0.13px;
    word-break: break-word;
}
.modal-box .btn-set {
    margin-top: 40px;
    width: 100%;
    display: flex;
}

.modal-box .btn-set .btn-close{
    color: #000;
    text-align: center;
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    height:58px;
    width:50%;
    line-height: 58px;
    border: 1px solid #E8E8E8;
    cursor: pointer;
}

.modal-box .btn-set .btn-join{
    color: white;
    background-color: black;
    text-align: center;
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    height:58px;
    width:50%;
    line-height: 58px;
    border: 1px solid black;
    cursor: pointer;
}


.close-txt {
    z-index: 100;
}

.closed-icon {
    margin-bottom:24px;
    margin-left: auto;
    margin-right: auto;
    width:120px;
    height:44px;
    border-radius: 4px;
    background: #F00000;
    color: #FFF;
    text-align: center;
    font-size: 20px;
    font-style: normal;
    font-weight: 700;
    line-height: 44px;
    letter-spacing: -0.5px;
}

.detail_desc_wrap .title {
    width: 100%;
    text-align: center;
    color: #000;
    font-size: 40px;
    font-style: normal;
    font-weight: 700;
    line-height: 100%;
    letter-spacing: -1px;
    margin: 96px 0 48px 0;
}

.detail_desc_wrap .desc_box {
    width: 50%;
    min-height:100px;
    margin: 0 auto;
    border-top:2px solid #000;
    border-bottom:2px solid #000;
}
.detail_desc_wrap .desc_box *{
    font-family: 'NotoSansKR', 'Montserrat', sans-serif;
}

.detail_desc_wrap .desc_box .desc_row {
    display: flex;
    width:100%;
    border-bottom: 1px solid #CFD6DC;
    padding: 32px 0;
    gap: 64px;
}

.detail_desc_wrap .desc_box .desc_row.no-line {
    border-bottom:none;
}

.detail_desc_wrap .desc_box .desc_row .head {
    width: 110px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    flex-shrink: 00;
}

.detail_desc_wrap .desc_box .desc_row .head div {
    color: #000;
    font-size: 24px;
    font-style: normal;
    font-weight: 700;
    line-height: 100%;
    letter-spacing: -1px;
}

.detail_desc_wrap .desc_box .desc_row .mid {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.detail_desc_wrap .desc_box .desc_row .mid .main {
    color: #000;
    font-size: 24px;
    font-style: normal;
    font-weight: 500;
    line-height: 100%; /* 140% */
    letter-spacing: -1px;
}

.detail_desc_wrap .desc_box .desc_row .mid .main span {
    color: #F00000;
    font-size: 20px;
    font-style: normal;
    font-weight: 700;
    line-height: 28px;
    letter-spacing: -0.5px;
}

.detail_desc_wrap .desc_box .desc_row .mid .sub {
    color: #666;
    font-size: 18px;
    font-style: normal;
    font-weight: 500;
    line-height: 100%;
    letter-spacing: -1px;
}
.detail_desc_wrap .desc_box .desc_row .mid .sub.mt16{
    margin-top: 16px;
}

.detail_desc_wrap .desc_box .desc_row .mid .sub2 {
    color: #000;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%; /* 27px */
    letter-spacing: -1px;
}

.detail_desc_wrap .desc_box .desc_row .mid .sub2.supplies{
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 16px;
}
.detail_desc_wrap .desc_box .desc_row .mid .sub2.mt8{
    margin-top: 8px;
}
.detail_desc_wrap .desc_box .desc_row .mid .sub2.mt16{
    margin-top: 16px;
}
.detail_desc_wrap .desc_box .desc_row .mid .sub2 .req {
    min-width: 72px;
    max-height: 36px;
    padding: 10px 21.5px;
    background-color: #000;
    color: #FFF;
    text-align: center;
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: 100%; /* 16px */
    letter-spacing: -1px;
}

.detail_desc_wrap .desc_box .desc_row .mid .sub2 .req.cho {
    background-color: #F6F6F6;
    color: #666;
}

.detail_desc_wrap .desc_box .desc_row .mid .open_time_box {
    color: #000;
    font-size: 24px;
    font-style: normal;
    font-weight: 500;
    line-height: 100%; /* 24px */
    letter-spacing: -1px;
}

.detail_desc_wrap .desc_box .desc_row .mid .open_desc {
    color: #666;
    font-size: 18px;
    font-style: normal;
    font-weight: 500;
    line-height: 100%; /* 150% */
    letter-spacing: -1px;
    margin-top: 16px;
}

.detail_desc_wrap .desc_box .desc_row .mid .time_line_img {
    margin-top:12px;
}
.detail_desc_wrap .desc_box .desc_row .mid img {
    width: 100%;
}

.detail_desc_wrap .desc_box .desc_row .mid .level{
    width: fit-content;
    color: #000;
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: 100%; /* 16px */
    letter-spacing: -1px;
    border: 1px solid #999;
    background: #FFF;
    padding:10px 20.5px;
}

.section .notice_box {
    width:1000px;
    margin: 100px auto;
    text-align: left;
    color: #FFF;
}

.section .notice_box .title {
    font-style: normal;
    font-weight: 700;
}

.section .notice_box .title.main {
    font-size: 32px;
    line-height: 100%; /* 32px */
    letter-spacing: -1px;
}

.section .notice_box .title.sub {
    margin-top:40px;
    display:flex;
}
.section .notice_box .title.sub .txt {
    margin-top: -2px;
    margin-left: 4px;
    font-size: 20px;
    line-height: 28px; /* 140% */
    letter-spacing: -0.5px;
}

.section .notice_box .description {
    margin-top: 16px;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px; /* 133.333% */
    letter-spacing: -0.5px;
}

.section .notice_box .line {
    width:100%;
    background-color: rgba(255, 255, 255, 0.20);
    height:1px;
    margin-top:100px;
    margin-bottom:100px;
}

.prd_wrap_inner {max-width:1240px; width:1240px; min-width:auto; margin:0 auto;}

/*현장 스케치*/
.prg_sketch {
    margin-top: 120px;
    width:100%;
}
.prg_sketch .title{
    color: #000;
    text-align: center;
    font-family: 'Pretendard';
    font-size: 48px;
    font-style: normal;
    font-weight: 700;
    line-height: 100%; /* 48px */
    letter-spacing: -1px;
    margin: 0 auto;
}

.prg_sketch .sketch_box .title_picture {
    margin-top: 80px;
    width: 50%;
    margin-left: auto;
    margin-right: auto;
}

.prg_sketch .sketch_box .desc {
    margin-top:80px;
    width:100%;
}

.prg_sketch .sketch_box .desc .title1 {
    color: #000;
    text-align: center;
    font-family: 'NotoSansKR';
    font-size: 48px;
    font-style: normal;
    font-weight: 700;
    line-height: 100%; /* 48px */
    letter-spacing: -1px;
}

.prg_sketch .sketch_box .desc .title2 {
    margin-top:32px;
    text-align: center;
    color: #00000A;
    font-family: 'NotoSansKR';
    font-size: 24px;
    font-style: normal;
    font-weight: 500;
    line-height: 100%; /* 24px */
    letter-spacing: -1px;
}

.prg_sketch .sketch_box .desc .desc_box {
    margin-top:48px;
    color: #000;
    text-align: center;
    font-family: 'NotoSansKR';
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%; /* 30px */
    letter-spacing: -1px;
}

.prg_sketch .sketch_box .slide_swiper {
    margin-top: 120px;
}
.prg_sketch .sketch_box .slide_swiper .swiper-wrapper {
    transition-timing-function: linear;
}

.prg_sketch .sketch_box .slide_swiper .swiper-wrapper .swiper-slide {
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #fff;
}

/*타임테이블*/
.section.schedule_wrap{
    background: #F6F6F6;
    margin-top: 96px;
}
.section.schedule_wrap * {
    font-family: 'NotoSansKR', 'Montserrat', sans-serif;
}
.section .time_tbl {
    width: 50%;
    min-height: 80px;
    margin: 0 auto;
    padding: 96px 0;
}

.section .time_tbl .title {
    text-align: center;
    width: 100%;
    color: #000;
    font-size: 40px;
    font-style: normal;
    font-weight: 700;
    line-height: 100%;
    letter-spacing: -1px;
}

.section .time_tbl .schedule_box {
    margin-top:48px;
    width:100%;
    border-top: 2px solid #000;
    border-bottom: 2px solid #000;
}

.section .time_tbl .schedule_box .top_desc {
    width:100%;
    color: #FFF;
    font-size: 24px;
    font-style: normal;
    font-weight: 700;
    line-height: 80px;
    letter-spacing: -0.5px;
    background-color: #FFF;
    text-align: center;
    height:80px;
}

.section .time_tbl .schedule_box .timeline {
    width:100%;
    display: flex;
    text-align: center;
    background: #FFF;
    border-bottom: 1px solid #D9D9D9;
}
.section .time_tbl .schedule_box .timeline._head{
    background: #ADADAD;
}
.section .time_tbl .schedule_box .timeline._head > div{
    color: #FFF;
}

.section .time_tbl .schedule_box .timeline.back {
    border: 4px solid #0044C8;
}

.section .time_tbl .schedule_box .timeline .round {
    display: flex;
    align-items: center;
    justify-content: center;
    width:12.5%;
    color: #000;
    font-size: 20px;
    font-style: normal;
    font-weight: 500;
    line-height: 100%;
    letter-spacing: -0.5px;
    height:60px;
}

.section .time_tbl .schedule_box .timeline .left {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 43.75%;
    color: #000;
    font-size: 20px;
    font-style: normal;
    font-weight: 500;
    letter-spacing: -0.5px;
    border-right: 1px solid #D9D9d9;
    border-left: 1px solid #D9D9d9;
}
.section .time_tbl .schedule_box .timeline .right {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 43.75%;
    color: #000;
    font-size: 20px;
    font-style: normal;
    font-weight: 500;
    letter-spacing: -0.5px;
}

.section .time_tbl .schedule_box .timeline .round.end {
    color:#DCDCDC;
    border:1px solid #F9FAFB;
}
.section .time_tbl .schedule_box .timeline .left.end {
    color:#DCDCDC;
    border:1px solid #F9FAFB;
}
.section .time_tbl .schedule_box .timeline .right.end {
    color:#DCDCDC;
    border:1px solid #F9FAFB;
}
.section .time_tbl .schedule_notice{
    display: flex;
    flex-direction: column;
    margin-top: 16px;
    text-align: left;
    gap: 2px;
}
.section .time_tbl .schedule_notice li{
    position: relative;
    display: flex;
    flex-direction: row;
    align-items: center;
    color: #666;
    font-size: 16px;
    line-height: 160%; /* 175% */
    letter-spacing: -1px;
    padding-left: 14px;
}
.section .time_tbl .schedule_notice li::before{
    content: '';
    border: 2px solid #666;
    border-radius: 50%;
    position: absolute;
    left: 0;
    top: 11px;
}

/*타임테이블 끝*/

/*유의사항 & 취소환불규정*/
.cancel_rule{
    padding: 80px 0;
    background: #333;
}
.prg_notice_wrap{
    width: 50%;
    margin: 0 auto;
}
.prg_notice_wrap * {
    font-family: 'NotoSansKR', 'Montserrat', sans-serif;
}
.prg_notice_wrap .title.main{
    color: #3C3C3C;
    font-size: 24px;
    font-style: normal;
    font-weight: 700;
    line-height: 100%; /* 24px */
    letter-spacing: -1px;
    padding-bottom: 24px;
    border-bottom: 1px solid #999;
}
.cancel_rule .prg_notice_wrap .title.main,
.cancel_rule .prg_notice_wrap .title.sub{
    color: #FFF;
}
.prg_notice_wrap .title.sub{
    color: #3C3C3C;
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: 100%; /* 16px */
    letter-spacing: -1px;
    margin-top: 32px;
    margin-bottom: 16px;
}
.prg_notice_wrap .description{
    padding-left: 12px;
}
.prg_notice_wrap .description li{
    position: relative;
    display: flex;
    flex-direction: row;
    align-items: center;
    color: #999;
    font-size: 16px;
    font-weight: 500;
    line-height: 160%; /* 175% */
    letter-spacing: -1px;
    padding-left: 14px;
}
.prg_notice_wrap .description li::before{
    content: '';
    border: 2px solid #999;
    border-radius: 50%;
    position: absolute;
    left: 0;
    top: 11px;
}
.prg_notice_wrap .description.description-num li{
    padding-left: 0px;
}
.prg_notice_wrap .description.description-num li::before{
    border: none;
}
.prg_notice_wrap .cs_info {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    margin-top: 40px;
    padding:24px;
    background-color: #111;
}
.prg_notice_wrap .cs_info span{
    color: #FFF;
    font-size: 20px;
    font-style: normal;
    font-weight: 500;
    letter-spacing: -1px;
}
/*후기 관련 css*/
.wrap_section_bar {
    width:100%;
    border-bottom: 1px solid #D9D9D9;
}
#section_con_3{
    border: none;
}
.wrap_section_bar .section_bar {
    display: flex;
    max-width: 900px;
    justify-content: center;
    margin: 0 auto;
    gap: 40px;
}

.wrap_section_bar .section_bar .bar_menu {
    color: #999;
    text-align: center;
    font-family: "NotoSansKR";
    font-size: 20px;
    font-style: normal;
    font-weight: 500;
    line-height: 1;
    letter-spacing: -1px;
    cursor:pointer;
    padding: 40px 0 16px 0;
}

.wrap_section_bar .section_bar .bar_menu.r_line {
    border-right: 1px solid #666;
}

.wrap_section_bar .section_bar .bar_menu.active {
    color: black;
    font-weight: 700;
    border-bottom: 4px solid #000;
}

.crema-product-reviews {
    text-align: center;
    max-width:1200px;
}

.aca_box .section1 {
    position: relative;
    max-width:1920px;
    width:100%;
    height:780px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-end;
    gap: 40px;
    padding-bottom: 6.25%;
}

.aca_box .section1 .top-text {
    max-width:1920px;
    width:100%;
    text-align:center;
    font-family: "NotoSansKR";
    color: #FFF;
}

.aca_box .section1 .deem{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #000;
    opacity: 0.5;
}

.aca_box .section1 .txt-1 {
    font-size: 56px;
    font-style: normal;
    font-weight: 700;
    line-height: 130%;
    letter-spacing: -1px;
}

.aca_box .section1 .txt-2 {
    font-size: 24px;
    font-style: normal;
    font-weight: 500;
    line-height: 150%; /* 36px */
    letter-spacing: -1px;
}


.aca_box .goods_title{
    text-align: center;
    width: 100%;
    color: #000;
    font-size: 40px;
    font-style: normal;
    font-weight: 700;
    line-height: 130%;
    letter-spacing: -1px;
    margin-bottom: 48px;
}
.aca_box .goods_data{
    width: 50%;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    row-gap: 80px;
    margin: 0 auto;
}
.aca_box .goods_data li{
    width: calc(50% - 12px);
}
.aca_box .goods_data li:nth-child(odd){
    margin-right: 24px;
}
.aca_box .goods_data li img{
    width: 100%;
}
.aca_box .section.mt80{
    margin-top: 80px;
}
.aca_box .section.mt96{
    margin-top: 96px;
}
.academy_event_modal{
    position: fixed;
    top: 180px;
    right: 10%;
    z-index: 9999;
}
.academy_event_modal .modal_content{
    position: relative;
}
.academy_event_modal .modal_content a {
    position: absolute;
    bottom: 4%;
    width: 90%;
    height: 11%;
    left: 0;
    right: 0;
    margin: 0 auto;
}

/* 아카데미 내 프로모션 상품 */
.aca_box_prd{
    margin: 96px auto;
}
.aca_box_prd .prd_wrap_inner{
    width: 960px;
    max-width: 960px;
}
.aca_box_prd .prd_pos{
    margin-top: 0;
    color: #000;
    text-align: center;
    font-family: "NotoSansKR";
    font-size: 40px;
    font-weight: 700;
    line-height: 100%; /* 40px */
    letter-spacing: -1px;
}
.aca_box_prd .prd_basic{
    width: 960px;
    margin: 0 auto;
    padding: 0;
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    gap: 40px 24px;
}
.aca_box_prd .prd_basic li{
    padding: 0;
    margin: 0;
    width: 222px;
    box-sizing: border-box;
}
.aca_box_prd .prd_basic .box .img{
    width: 100%;
    aspect-ratio: 1 / 1;
    height: auto;
}
.aca_box_prd .prd_basic .box .img img{
    width: 100%;
    height: 100% !important;
}
/* 프로모션 상품 리뉴얼*/
.aca_box_prd .prd_basic--alt{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 80px 1.388%;
    width: 100%;
    font-size: 0;
    text-align: left !important;
    margin-top: 50px;
}
.aca_box_prd .prd_basic--alt *{
    line-height: 1 !important;
}
.aca_box_prd .prd_basic--alt li{
    width: 25%;
    max-width: 230px;
    box-sizing: border-box;
    padding: 0;
}
.aca_box_prd .prd_basic--alt .box .img {
    overflow: hidden;
    position: relative;
    z-index: 1;
    width: 100%;
    height: auto;
    aspect-ratio: 1 / 1;
    margin: 0 auto;
    text-align: center;
    /*border: 1px solid red;*/
}
.aca_box_prd .prd_basic--alt .box .img .prdimg img{
    width: 100%;
    height: auto !important;
    aspect-ratio: 1 / 1;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.aca_box_prd .prd_basic--alt .box .icon {
    position: absolute;
    top: 10px;
    left: 5px;
    display: flex;
    flex-direction: column;
    width: 40px !important;
    height: fit-content !important;
    row-gap: 6px;
}
.aca_box_prd .prd_basic--alt .box .icon img{
    width: 100% !important;
    height: 100% !important;
    margin: 0;
}
.aca_box_prd .prd_basic--alt .box .info{
    text-align: left !important;
    padding: 0 12px;
}
.aca_box_prd .prd_basic--alt .box .name{
    padding-top: 16px;
}
.aca_box_prd .prd_basic--alt .box .name *{
    font-family: "NotoSansKR";
    font-size: 14px;
    font-weight: 500;
    line-height: 130% !important; /* 19.6px */
}
.aca_box_prd .prd_basic--alt .box .price{
    padding-top: 18px;
    height: auto !important;
    display: flex;
    align-items: center;
    gap: 6px;
}
.aca_box_prd .prd_basic--alt .box .price *{
    font-family: Montserrat;
}
.aca_box_prd .prd_basic--alt .box .price .sell strong,
.aca_box_prd .prd_basic--alt .box .price .discount strong{
    color: #000;
    font-size: 15px;
    font-weight: 600;
    line-height: normal;
}
.aca_box_prd .prd_basic--alt .box .consumer{
    color: #b1b1b1;
    font-size: 14px;
    font-weight: 400;
    line-height: normal;
    margin: 0;
}
.aca_box_prd .prd_basic--alt .box .price p.percent{
    color: #FF5C47;
    font-size: 14px;
    font-weight: 400;
    margin: 0;
}
.aca_box_prd .prd_basic--alt .box .price .sellY{
    margin: 0;
}
.aca_box_prd .prd_basic--alt .box .member_price{
    margin-top: 6px;
    padding: 0;
}
.aca_box_prd .prd_basic--alt .box .member_price .txt{
    font-family: "NotoSansKR";
    font-size: 13px;
    font-weight: 400;
    line-height: normal;
    letter-spacing: -1px;
}
.aca_box_prd .prd_basic--alt .box .member_price .price{
    font-weight: 500;
    font-size: 13px;
    color: #FF5C47;
    display: inline-block;
    padding: 0;
    margin-left: 4px;
}
.aca_box_prd .prd_basic--alt .box .item-desc{
    display: flex;
    flex-direction: row;
    align-items: center;
    margin-top: 18px;
    color: #666 !important;
}

.aca_box_prd .prd_basic--alt .box .info .item_save_point{
    margin: 0 !important;
    color: #666 !important;
    font-family: Montserrat;
    font-size: 12px !important;
}
.aca_box_prd .prd_basic--alt .box .info .item_save_point::before{
    content: "";
    margin: 0 8px;
    background: #D2D2D2;
    width: 1px;
    height: 10px;
    display: inline-block;
    vertical-align: top;
}
.aca_box_prd .prd_basic--alt .box .info .badge-info{
    display: flex;
    gap: 4px;
    flex-wrap: wrap;
    margin-top: 10px;
}
.aca_box_prd .prd_basic--alt .box .info .badge-info span{
    color: #7A7A7A;
    font-family: "NotoSansKR";
    font-size: 10px;
    font-weight: 500;
    line-height: 100%; /* 10px */
    letter-spacing: -0.5px;
    padding: 4px;
    border: 1px solid #ccc;
}
.aca_box_prd .prd_basic--alt .crema_product_reviews_score__container{
    color: #666 !important;
}

.aca_box_prd .prd_basic--alt .crema_product_reviews_score__container svg{
    fill: #666 !important;
}



/* 크리마 리뷰 적용해야함 */
.products_reviews_gallery_body__reviews{
    width: 960px;
    margin: 0 auto;
    padding: 0;
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    gap: 40px 24px;
}
.products_reviews_gallery_body__index_thumbnail_container .review_thumbnail{
    float: left;
    border: 1px solid #e5e5e5;
    padding: 0;
    margin: 0;
    width: 222px;
    box-sizing: border-box;
}
.pagination__button--disabled{
    color: #999 !important;
}
.pagination__button--active, .pagination__button:active {
    background: #000;
    color: #FFF;
}
.pagination__button{
    font-size: 18px !important;
    color: #999 !important;
    font-family: NotoSansKR;
}


@media (max-width: 1920px) {
    .bottom_aca_bar{
        width:100vw;
    }
    .aca_box .section1 {
        width:100vw;
        height: calc(100vw*0.40625)
    }
}

