/* layout */
div.wrap.sub{min-height: 100vh; display: flex; flex-direction: column; background: #f8fafc;}
div.wrap.sub.white-bg{background: #fff;;}
div.wrap.sub div.sub-con{flex: 1; padding: 2.5rem 0;}

/* sub-header */
div.sub-con div.sub-header{display: flex; justify-content: space-between; align-items: center; margin-bottom: 2rem;}

/* title */
h2.sub-tit{font-size: 2rem; font-family: 'Pretendard-Bold', sans-serif;}
h5.sub-tit{font-size: 1.25rem; font-family: 'Pretendard-Bold', sans-serif; margin-bottom: 1rem; position: relative; padding-left: 1rem;}
h5.sub-tit::before{content: ''; position: absolute; width: 6px; height: 16px; background: linear-gradient(to bottom, var(--color-main01) 0%, var(--color-main01) 50%, var(--color-main02) 50%, var(--color-main02) 100%); left: 0; top: 50%; transform: translateY(-50%);}

/* act-btn */
div.sub-con div.sub-header ul.act-btn{display: flex; background: #fff; border-radius: 0.5rem; box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08), 0 4px 8px rgba(0, 0, 0, 0.06);}
div.sub-con div.sub-header ul.act-btn > li{position: relative;}
div.sub-con div.sub-header ul.act-btn > li::after{content: ''; position: absolute; width: 1px; height: 50%; background: var(--color-gray400); right: 0; top: 50%; transform: translateY(-50%);}
div.sub-con div.sub-header ul.act-btn > li:last-child::after{display: none;}
div.sub-con div.sub-header ul.act-btn > li a{padding: 0.8rem 1.25rem 0.8rem 2.5rem; position: relative;}
div.sub-con div.sub-header ul.act-btn > li a::before{content: ''; position: absolute; width: 1rem; height: 1rem; left: 0.8rem; top: 50%; transform: translateY(-50%); }
div.sub-con div.sub-header ul.act-btn > li.home a::before{background: url('../img/icon_home.svg')center/100% no-repeat;}
div.sub-con div.sub-header ul.act-btn > li.history a::before{width: 1.125rem; height: 1.125rem; background: url('../img/icon_app_check.svg')center/100% no-repeat;}
div.sub-con div.sub-header ul.act-btn > li.document a::before{background: url('../img/icon_upload.svg')center/110% no-repeat;}
div.sub-con div.sub-header ul.act-btn > li.apply-form a::before{background: url('../img/icon_write.svg')center/130% no-repeat;}

/* box */
div.noti-box{position: relative; background: rgba(0,164,151,.05); padding: 1.25rem; padding-left: 3.25rem; border-radius: 0.5rem; border: 1px solid var(--color-main01); color: var(--color-main01); font-family: 'Pretendard-SemiBold', sans-serif; line-height: 1.5}
div.noti-box::before{content: ''; position: absolute; width: 1.25rem; height: 1.25rem; left: 1.25rem; top: 1.25rem; background-color: var(--color-main01); -webkit-mask: url('../img/icon_info.svg') no-repeat center / contain; mask: url('../img/icon_info.svg') no-repeat center / contain;}
div.noti-box02{position: relative; background: rgba(254,242,242,1); padding: 1.5rem; padding-top: 4rem; border-radius: 0.5rem; border: 2px solid rgba(254,226,226,1); color: #b91c1c; font-family: 'Pretendard-Bold', sans-serif; text-align: center; font-size: 1.125rem; word-break: keep-all; line-height: 1.5;}
div.noti-box02::before{content: '!'; position: absolute; width: 2rem; height: 2rem; left: 50%; top: 1.5rem; transform: translateX(-50%); background: #b91c1c; color: #fff; font-size: 1.25rem; line-height: 2rem; border-radius: 50%; font-family: 'Montserrat_B', sans-serif;}
div.noti-box.yellow{background: #fffbeb; border-color: #fde68a; color: #b45309; font-size: 0.9rem; font-family: 'Pretendard-Regular', sans-serif;}
div.noti-box.yellow::before{background-color: #b45309;}

/* 입학원서 작성 > step5 최종확인 */
div.pg-wrap div.pg-application.step5 div.noti-box02{margin-top: 2rem;}
/* 결제 이후에도 증명서 제출 단계가 남아 있음을 별도 영역으로 강조합니다. */
div.pg-wrap div.pg-application.step5 div.step5-submit-notice{padding-left: 2rem; padding-right: 2rem;}
div.pg-wrap div.pg-application.step5 div.step5-submit-notice > p{margin: 0;}
div.pg-wrap div.pg-application.step5 div.step5-submit-notice div.document-upload-guide{position: relative; max-width: 48rem; margin: 1.25rem auto 0; padding: 1.25rem 1.5rem 1.25rem 4.5rem; border: 2px solid rgba(0,164,151,.45); border-radius: 0.75rem; background: #fff; color: #1f2937; text-align: left; box-shadow: 0 8px 20px rgba(0,164,151,.1);}
div.pg-wrap div.pg-application.step5 div.step5-submit-notice div.document-upload-guide::before{content: ''; position: absolute; width: 2rem; height: 2rem; left: 1.4rem; top: 50%; transform: translateY(-50%); background-color: var(--color-main01); -webkit-mask: url('../img/icon_folder.svg') center / contain no-repeat; mask: url('../img/icon_folder.svg') center / contain no-repeat;}
div.pg-wrap div.pg-application.step5 div.step5-submit-notice div.document-upload-guide span.guide-label{display: inline-block; margin-bottom: 0.45rem; padding: 0.25rem 0.6rem; border-radius: 50px; background: rgba(0,164,151,.12); color: var(--color-main01); font-family: 'Pretendard-Bold', sans-serif; font-size: 0.85rem;}
div.pg-wrap div.pg-application.step5 div.step5-submit-notice div.document-upload-guide strong{display: block; color: #0f766e; font-family: 'Pretendard-Bold', sans-serif; font-size: 1.15rem; line-height: 1.4;}
div.pg-wrap div.pg-application.step5 div.step5-submit-notice div.document-upload-guide p{margin: 0.4rem 0 0; color: #475569; font-family: 'Pretendard-Medium', sans-serif; font-size: 1rem; line-height: 1.5;}
@media(max-width: 640px){
    div.pg-wrap div.pg-application.step5 div.step5-submit-notice{padding-left: 1rem; padding-right: 1rem;}
    div.pg-wrap div.pg-application.step5 div.step5-submit-notice div.document-upload-guide{padding: 3.75rem 1rem 1.1rem; text-align: center;}
    div.pg-wrap div.pg-application.step5 div.step5-submit-notice div.document-upload-guide::before{left: 50%; top: 1.15rem; transform: translateX(-50%);}
    div.pg-wrap div.pg-application.step5 div.step5-submit-notice div.document-upload-guide strong{font-size: 1.05rem;}
}

/* 등록금 고지서 조회 */
div.congrats-box{position: relative; padding: 1.5rem; font-size: 1.1rem; line-height: 1.5; background: rgba(167, 139, 250, 0.1); border-radius: 1rem; border: 1px solid rgba(82, 44, 129, 0.2); font-family: 'Pretendard-Medium', sans-serif; padding-left: 7rem; margin-bottom: 2rem; word-break: keep-all;}
div.congrats-box::before{content: ''; position: absolute; width: 4rem; height: 4rem; background: rgba(167, 139, 250, 0.5) url('../img/icon_trophy.svg') center / 55% no-repeat; left: 1.5rem; top: 50%; border-radius: 50%; transform: translateY(-50%);}
div.congrats-box p{font-size: 1.25rem; margin-bottom: 0.5rem;} 

/* 이용약관, 개인정보처리방침 공통 */
div.privacy-wrap div.tit-box{font-family: 'Pretendard-SemiBold', sans-serif; font-size: 1.4rem; padding: 2rem; background: rgba(0,164,151,.1) url('../img/logo.svg') 2rem / 6rem no-repeat; border-radius: 1rem; position: relative; padding-left: 10rem; margin-bottom: 1rem;}
div.privacy-wrap div.set{padding: 2rem 0;}
div.privacy-wrap div.set div.tit{font-size: 1.25rem; font-family: 'Pretendard-Bold', sans-serif; margin-bottom: 1rem; padding-bottom: 1rem; border-bottom: 2px solid #333;}
div.privacy-wrap div.set div.d-box{padding: 2rem; background: var(--color-gray200); border-radius: 1rem; font-size: 1.125rem; word-break: keep-all; line-height: 1.5;}
div.privacy-wrap div.set p.txt01{font-size: 1.1rem; margin-bottom: 1.125rem;}
div.privacy-wrap ul.cir-num-list{}
div.privacy-wrap ul.cir-num-list > li{margin-bottom: 1rem; position: relative; padding-left: 2rem; font-size: 1em; line-height: inherit;}
div.privacy-wrap ul.cir-num-list > li::before{content: "0"; display: block; width: 1.5rem; height: 1.5rem; line-height: 1.5rem; text-align: center; font-size: 0.9rem; background: var(--color-main02); color: #fff; border-radius: 50%; position: absolute; top: -2px; left: 0; font-family: "Montserrat_SB", 'Pretendard-Bold', sans-serif;}
div.privacy-wrap ul.cir-num-list > li:nth-child(1):before{content: "1";}
div.privacy-wrap ul.cir-num-list > li:nth-child(2):before{content: "2";}
div.privacy-wrap ul.cir-num-list > li:nth-child(3):before{content: "3";}
div.privacy-wrap ul.cir-num-list > li:nth-child(4):before{content: "4";}
div.privacy-wrap ul.cir-num-list > li:nth-child(5):before{content: "5";}
div.privacy-wrap ul.cir-num-list > li:nth-child(6):before{content: "6";}
div.privacy-wrap ul.cir-num-list > li:nth-child(7):before{content: "7";}
div.privacy-wrap ul.cir-num-list > li:nth-child(8):before{content: "8";}
div.privacy-wrap ul.cir-num-list > li:nth-child(9):before{content: "9";}
div.privacy-wrap ul.def-num-list > li{margin: 0.8rem 0; font-size: 0.95rem; text-indent: -1rem; padding-left: 1rem;}
div.privacy-wrap ul.def-num-list > li::before{content: "0."; margin-right: 0.25rem;}
div.privacy-wrap ul.def-num-list > li:nth-child(1):before{content: "1.";}
div.privacy-wrap ul.def-num-list > li:nth-child(2):before{content: "2.";}
div.privacy-wrap ul.def-num-list > li:nth-child(3):before{content: "3.";}
div.privacy-wrap ul.def-num-list > li:nth-child(4):before{content: "4.";}
div.privacy-wrap ul.def-num-list > li:nth-child(5):before{content: "5.";}
div.privacy-wrap ul.def-num-list > li:nth-child(6):before{content: "6.";}
div.privacy-wrap ul.def-num-list > li:nth-child(7):before{content: "7.";}
div.privacy-wrap ul.def-num-list > li:nth-child(8):before{content: "8.";}
div.privacy-wrap ul.def-num-list > li:nth-child(9):before{content: "9.";}


/******** 반응형 ********/
@media screen and (max-width: 1600px){
}

@media screen and (max-width: 1440px){
    
}

@media screen and (max-width: 1280px){
    
}

@media screen and (max-width: 1200px){
    /* sub-header */
    h2.sub-tit{font-size: 1.8rem;}
}

@media screen and (max-width: 1024px){
    
}

@media screen and (max-width: 800px){
}

@media screen and (max-width: 640px){
    /* sub-header */
    h2.sub-tit{font-size: 1.5rem;}
}

@media screen and (max-width: 480px){
    /* act-btn */
    div.sub-con div.sub-header{flex-direction: column; gap: 1.25rem;}
    div.sub-con div.sub-header ul.act-btn > li a{padding: 0.5rem 1rem 0.5rem 2rem;}
    div.sub-con div.sub-header ul.act-btn > li a::before{width: 0.8rem; height: 0.8rem; left: 0.8rem;}
}

@media screen and (max-width: 400px){
    /* 등록금 고지서 조회 */
    div.congrats-box{padding-left:1.5rem; padding-top:7rem; text-align:center;}
    div.congrats-box::before{left:50%; top: 1.5rem; transform: translate(-50%, 0);}
}

@media screen and (max-width: 320px){
    
}
