/* *************************************************************************************
* 
* member.css (로그인, 회원가입, 마이페이지)
* 
* **************************************************************************************/
/*로그인*/
.content:has(.page_login), .content:has(.page_bgGray) {background-color: #F9F9F9;}
.page_login .cnt_tab {max-width: 80rem; margin: 5rem auto;}
.page_login .login_title{text-align: center; font-size: 3rem; margin-bottom: 4rem; }
.page_login .login_desc {margin: 2rem 0; text-align: center; line-height: 1.6;}
.page_login .login_icon {margin-bottom: 3rem; text-align: center;}
.page_login .basic_btn .btn{width: 18rem; height: 5rem; line-height: 5rem; border-radius: var(--border-radius-30px);}
.page_login .wh_box{max-width: 80rem; border-radius: 2rem; background-color: #fff; padding:5rem 3rem; margin:0 auto;}
.page_login .wh_box + .wh_box {margin-top: 5rem;}
.page_login .wh_box > .login_title{font-weight: 600;}
.page_login .gray_box {padding:2rem; background-color: #F3F6F9; border-radius: 2rem; margin-bottom: 2rem;}
.page_login .gray_box .board_basic td {background-color: #fff;}
.page_login .box_tit {font-weight: 600; font-size: 2rem; margin-bottom: 2rem;}
.page_login .box_tit2 {padding-bottom: 2rem; margin-bottom: 2rem; font-size: 1.8rem; font-weight: 600; border-bottom: 1px solid #E6E6E6;}
.page_login .certif_list {display: flex; gap: 5rem; justify-content: center; text-align: center;}
.page_login .certif_list .imgs > img {width: 16rem;}
.page_login .certif_list > li > a{max-width: 20rem; width: 100%; height: 4rem; line-height: 4rem; padding: 0 1.5rem; margin-top: 2rem; border-radius: 3rem; background-color: #fff; border: 1px solid #E5E5E5; transition: 0.3s;} 
.page_login .find_login {font-size: 2rem; line-height: 1.6; text-align: center;}
.page_login .find_login .import {color: #ec2156;}
.page_login .agree_desc {margin-top: 1rem; margin-bottom: 1rem;}

.login_input {width: 100%; height: 5.5rem; padding: 0 2rem; border: 0; border-radius: var(--border-radius-30px); border:1px solid #E2E2E2; line-height: 1; box-sizing: border-box;}
.loginbox {margin:2rem auto; max-width: 46rem;}
.loginbox > p {margin-bottom: 1.2rem;}
.loginbox .imgs{text-align: center; margin-bottom: 6rem;}
.loginbox .link_list{display: flex; align-items: center; justify-content: center; margin-top: 3rem;}
.loginbox .link_list > li{padding:0 2rem; position: relative; font-weight: 600;}
.loginbox .link_list > li:not(:last-child)::before{width: 1px; height: 14px; background-color: #D9D9D9; position: absolute; right: 0; top:50%; transform: translateY(-50%); display: inline-block; content:"";}
.loginbox .basic_btn .btn {width: 100%;}

/*회원가입 유형선택*/
.join_category{margin-top: 5rem; display: flex; flex-wrap: wrap; gap: 3rem;}
.join_category > li {flex: 1;}
.join_category > li > a{display: block; background-color: #fff; border:2px solid transparent; border-radius: 1.6rem; text-align: center; padding:4rem 1.2rem; transition: 0.3s;}
.join_category > li > a > span{min-width: 8rem; display: inline-block; padding-top: 10rem; position: relative;}
.join_category > li > a > span::before{width: 8rem; height: 8rem; background-image: url("/images/site/NGLMS/content/join_img01.png"); background-repeat: no-repeat; background-size: contain; position: absolute; left:50%; top:0; transform: translateX(-50%); display: block; content:"";}
.join_category > li:nth-child(2) > a > span::before{background-image: url("/images/site/NGLMS/content/join_img02.png");}
.join_category > li:nth-child(3) > a > span::before{background-image: url("/images/site/NGLMS/content/join_img03.png");}
.join_category > li:nth-child(4) > a > span::before{background-image: url("/images/site/NGLMS/content/join_img04.png");}
.join_category > li > a > p{width: 12rem; height: 4rem; line-height: 4rem; margin: 2.5rem auto 0; border-radius: 3rem; background-color: #fff; border:1px solid #E5E5E5; transition: 0.3s;}

/*회원가입 - 회원정보 입력*/
.member_form{margin-bottom: 5rem;}
.member_form > li{display: flex; align-items: flex-start; flex-wrap: wrap; gap: 1rem;}
.member_form > li + li{margin-top: 2rem;}
.member_form .form {width: calc(100% - 15rem);}
.member_form .form .input_group {padding-top: 1.3rem;}
.member_form .form .input_group.refund {margin-right: 0; align-items: flex-start;}
.member_form .subject {display: flex; align-items: center; width: 14rem; min-height: 5rem; font-weight: 600;}
.member_form .subject .import_red {display: inline-block; margin-right: 0.3rem;}
.member_form .btn{min-width: 14rem; height: 5rem; line-height: 4.8rem; border-radius: 4rem; text-align: center; padding:0 1.5rem; overflow: hidden;}
.member_form .btn.default{border:1px solid #333; background-color: #fff;}
.member_form .btn.dark{background-color: #333; border:1px solid #333; color: #fff;}
.member_form .btn.primary{background-color: var(--primary-point-color);color: #fff;}
.member_form input[type="text"],
.member_form input[type="number"],
.member_form input[type="password"],
.member_form select{height: 5rem; line-height: 5rem; border-radius: 3rem; border: 1px solid #E5E5E5; padding:0 2rem; box-sizing: border-box; text-align: left;}
.member_form select{padding-right: 4rem;}
.member_form .w100p {width: 100%;}
.member_form .address input[type="text"] {width: 100%; margin-top: 1rem;}
.member_form .address .zip {display: flex; gap: 1rem; flex-wrap: wrap;}
.member_form .address .zip input[type="text"] {flex: 1; margin-top: 0;}
.member_form .email {width: 100%; display: flex; align-items: center; flex-wrap: wrap; gap: 1rem;}
.member_form .email input,.member_form .email select{width: calc(100% / 3 - 1.6rem);}
.member_form .tel {display: flex; gap: 1rem; align-items: center;}
.member_form .tel input, .member_form .tel select{width: calc(100% / 3 - 7rem);}
.member_form .certif_number {display: flex; gap: 1rem; flex-wrap: wrap;}
.member_form .certif_number input[type="text"] {width: calc(100% - 30rem);}
.member_form .form_desc {margin-top: 1rem;}
.password_check .member_form > li {flex-direction: row; justify-content: center; align-items: center; flex-wrap: nowrap;}
.password_check .member_form .subject {width: 8rem;}
.password_check .member_form input {width: 100%;}

/*회원가입 진행단계*/
.member_step{display: flex; justify-content: center; margin-bottom: 5rem;}
.member_step .step{margin-bottom: 1rem;}
.member_step .step_tit {font-weight: 700; letter-spacing: -0.8px;}
.member_step > li{width: 17rem; position: relative; text-align: center;}
.member_step > li:not(:last-child)::after {position: absolute; top: 1.3rem; left: 50%; width: 100%; height: 0.2rem; background-color: #BEC0CF; content: "";}
.member_step > li > p {position: relative; display: flex; flex-direction: column; padding-top: 4rem;}
.member_step > li > p::before, .member_step >li > p::after {position: absolute; top: 0; left: 50%; transform: translateX(-50%); width: 2.8rem; height: 2.8rem; background-color: #BEC0CF; border-radius: 100%; content: ''; z-index: 2;}
.member_step > li > p::after {z-index: 3;}
.member_step > li.active > p::before {background-color: #fff; border-color: #246BEB;}
.member_step > li.active > p::after {background: #246BEB url("/images/site/NGLMS/icon/step_active.png") no-repeat center;}
.member_step > li.active .step{color: #246BEB;}

/*약관동의*/
.member_agree > li {margin-bottom: 5rem;}
.member_agree .scroll_box {max-height: 35rem;padding-right: 1rem;overflow-y: scroll;padding: 5px 1rem 5px 5px;} /* 20260710 */
.member_agree .text_title1 {margin-bottom: 1rem; font-weight: bold;}
.member_agree .common_text {margin-bottom: 3rem;}
.member_agree .board_basic{font-size: 1.5rem;}

/*정회원 전환 규정*/
.membership_agree {font-size: 1.7rem;}
.membership_agree > li {margin-bottom: 3.5rem;}
.membership_agree .dash_list > li {line-height: 1.3;}
.membership_agree .dash_list > li + li {margin-top: 1.2rem;}
.membership_agree .box_tit {margin-bottom: 1rem; font-size: 2.2rem;}
.gray_box .membership_agree > li {margin-bottom: 1.5rem;}

/* *************************************************************************************
* 
* 마이페이지
* 
* **************************************************************************************/
.sc_my {display: flex; gap: 2rem; flex-wrap: wrap;}
.sc_my .my_info {width: 36rem;}
.sc_my .my_member {position: relative; margin-bottom: 2rem; padding: 3rem; background-color: #eaf0f5; border-radius: var(--border-radius-base);}
.sc_my .my_member .name {margin-bottom: 1rem; font-size: 2rem;}
.sc_my .alarm_btn {position: absolute; top: 2rem; right: 2rem;}
.sc_my .alarm_btn > span {display: inline-block; position: absolute; right: 0; top: 0; width: 1.8rem; height: 1.8rem; border-radius: 50%; font-size: 1.4rem; text-align: center; border: 1px solid #000; background-color: #f73c3c; color: #fff;}
.sc_my .menu {display: flex; margin-top: 4.5rem; flex-wrap: wrap; gap: 1rem;}
.sc_my .menu > li {width: calc(50% - 0.5rem);}
.sc_my .menu > li > a {display: block; width: 100%; padding: 0.8rem 1.5rem; background-color: #fff; border-radius: 3rem; text-align: center;}
.sc_my .my_board > li > a {display: inline-flex; align-items: center; width: 100%; height: 6rem; padding: 0 8rem 0 3rem; font-size: 1.8rem; border: 1px solid var(--border-gray-color); border-radius: 1rem; background-image: url("/images/site/NGLMS/icon/half_arr_gray.svg"); background-size: 4rem; background-position: right 3rem center; background-repeat: no-repeat;}
.sc_my .my_board > li + li {margin-top: 0.7rem;}
.sc_my .my_plan {width: calc(100% - 38rem); border: 1px solid var(--border-gray-color); border-radius: var(--border-radius-base); overflow: hidden;}
.sc_my .plan_header {display: flex; justify-content: space-between; align-items: center; gap: 1rem; padding: 1.5rem 3.5rem; background-color: #e9f8c4; border-bottom: 1px solid var(--border-gray-color); flex-wrap: wrap;}
.sc_my .plan_header strong {font-size: 2.2rem;}
.sc_my .plan_header button {padding: 0.6rem 1.2rem; margin-left: auto; border: 1px solid #959595; background-color: #fff; border-radius: 3rem; line-height: 1;}
.sc_my .plan_cnt {display: flex;}
.sc_my .learn_info {width: calc(100% - 46rem); padding: 3rem 2rem; border-right: 1px solid var(--border-gray-color);}
.sc_my .learn_info > p {padding: 2rem 1.2rem; margin-bottom: 2.5rem; text-align: center; background-color: var(--bg-gray); border-radius: var(--border-radius-base); line-height: 1.6;}
.sc_my .learn_month {text-align: center;}
.sc_my .month_img {margin-bottom: 1.5rem;}
.sc_my .month_img > img {margin-bottom: -0.5rem;}
.sc_my .month_img  .month {position: relative; display: block; width: 100%; height: 4rem; line-height: 4rem; color: #fff; font-size: 1.8rem; background-color: var(--sub-primary-color); border-radius: 1rem; text-align: center; z-index: 1;}
.sc_my .month_time {line-height: 1.5;}

/*달력 커스텀*/
.sc_my .custom_calendar {width: 46rem; padding: 1.5rem 2rem;}
.sc_my .custom_calendar .fc-button-primary:focus {box-shadow: none;}
.sc_my .custom_calendar .fc-button-primary:focus-visible {outline: 2px dashed #0e0852;}
.sc_my .custom_calendar .fc-event-selected::after, .sc_my .custom_calendar .fc-event:focus::after {background-color: transparent;}
.sc_my .custom_calendar .fc-button-primary:not(:disabled).fc-button-active, .sc_my .custom_calendar .fc-button-primary:not(:disabled):active {background-color: transparent; border-color: var(--border-gray-color); color: inherit; box-shadow: none;}
.sc_my .custom_calendar .fc-toolbar {max-width: 25rem; margin: 0 auto 1rem;}
.sc_my .custom_calendar .fc-toolbar-title {margin: 0 2rem; font-size: 2.2rem; font-weight: bold;}
.sc_my .custom_calendar .fc-button-primary {width: 3.5rem; height: 3.5rem; padding: 0; background-color: #fff; border: 1px solid var(--border-gray-color); border-radius: 50%;}
.sc_my .custom_calendar .fc-icon {width: 3.5rem; height: 3.5rem; padding-top: 0.5rem;}
.sc_my .custom_calendar .fc-icon::before {color: #222;}
.sc_my .custom_calendar td, 
.sc_my .custom_calendar th {border: 0; font-size: 1.6rem;}
.sc_my .custom_calendar .fc-view-harness {flex-grow: initial;}
.sc_my .custom_calendar .fc-col-header {border-top: 1px solid var(--border-gray-color); border-bottom: 1px solid var(--border-gray-color);}
.sc_my .custom_calendar .fc-col-header-cell-cushion {padding: 0.6rem; font-weight: 500; text-align: center;}
.sc_my .custom_calendar .fc-scrollgrid {border: 0;}
.sc_my .custom_calendar .fc-daygrid-day-top {position: relative; margin: 0.2rem; align-items: center; justify-content: center;}
.sc_my .custom_calendar .fc-day-other .fc-daygrid-day-top{opacity: 0.6;} /* 20260710 */

.sc_my .custom_calendar .calendar-focus-area:focus-visible {
    outline: 3px dashed red;
    outline-offset: -3px;
}

.sc_my .custom_calendar .fc-day-today {background-color: transparent;}
.sc_my .custom_calendar .fc-day-today .fc-daygrid-day-number {line-height: 3rem;background-color: #007bc7;border: 0.2rem solid #007bc7;outline: 0;color: #fff;font-weight: 700;box-shadow: 1px 1px 10px rgba(0, 0, 0, 0.6);} /* 20260710 */
.sc_my .custom_calendar .is-active .fc-daygrid-day-number {outline: 2px solid #009bfa;outline-offset: 2px;border-radius: 0.8rem;}
.sc_my .custom_calendar .fc-daygrid-day-number {display: block; width: 3.2rem; height: 3.2rem; line-height: 3.2rem; padding: 0; border-radius: 50%; text-align: center; cursor: pointer; z-index: auto;}
.sc_my .custom_calendar .fc-daygrid-day-number > span {position:relative; z-index: 1;}
.sc_my .custom_calendar .fc-day-sun {color: #dd303b;}
.sc_my .custom_calendar .fc-day-sat {color: #0072ff;}
.sc_my .custom_calendar .fc-daygrid-day-events {position: absolute; left: 0; bottom: 0; display: none; width: 100%; margin-bottom: 0;}
.sc_my .custom_calendar .attend-dot {position: absolute; top:0; left:50%; transform:translateX(-50%); width: 3.2rem; height: 3.2rem; border-radius: 50%; background-image: url("/images/site/NGLMS/common/attend_check.png"); background-size: 3.4rem; background-position: center; background-repeat: no-repeat; z-index: 1;}
.sc_my .custom_calendar .fc-day-today .fc-daygrid-day-events {display: block;}
.sc_my .custom_calendar .is-active .fc-daygrid-day-events {display: block;}
.sc_my .custom_calendar .fc-daygrid-day-frame {position: initial;}
.sc_my .custom_calendar .fc-daygrid-body > table {border-bottom: 1px solid var(--border-gray-color);}
.sc_my .custom_calendar .fc-event:focus {box-shadow: none;}
.sc_my .custom_calendar .fc-event-selected::after, .custom .calendar .fc-event:focus::after {background: none;}

/*하단 이벤트 영역*/
.sc_my .custom_calendar .fc-daygrid-body {padding-bottom: 7rem;}
.sc_my .custom_calendar .fc-h-event {background-color: #fff; border: 0; margin: 0;}
.sc_my .custom_calendar .no-event-msg {display: none; margin-top: -0.5rem; color: #000; text-align: center;}
.sc_my .custom_calendar .custom-event {display: none; position: relative; align-items: center; height: 6rem; padding-left: 7rem; color: #000; font-size: 1.6rem; flex-wrap: wrap; gap: 0.3rem;}
.sc_my .custom_calendar .custom-event::before {position: absolute; left: 0; top: 50%; transform: translateY(-50%); width: 6rem; height: 6rem; background-color: #f3f5fb; background-image: url("/images/site/NGLMS/icon/cal_icon.png"); background-position: center; background-repeat: no-repeat; border-radius: 50%; content: '';}
.sc_my .custom_calendar .is-active .custom-event {display: flex;}
.sc_my .custom_calendar .event-date {display: block; width: 100%; font-size: 1.8rem; font-weight: 700; line-height: 1;}
.sc_my .custom_calendar .event-category {display: inline-block; margin-right: 1rem; color: #dd303b; font-weight: 700;}
.sc_my .custom_calendar .event-title {display: inline-block; width: 25rem; color: #222; text-overflow: ellipsis; white-space: nowrap; overflow: hidden;}
.sc_my .custom_calendar .more {position: absolute; right: 0; top: 0.2rem; display: inline-block; width: 3rem; height: 3rem; border: 1px solid #888; background-color: #fff; background-image: url("/images/site/NGLMS/icon/plus_bk_icon.svg"); background-position: center; background-repeat: no-repeat; border-radius: 50%;}

.sc_my .custom_calendar .fc-event:not(:has(.custom-event)) .no-event-msg {display: block;}
.sc_my .custom_calendar .is-active:not(:has(.custom-event)) .no-event-msg {display: block;}
/*.sc_my .custom_calendar .fc-day:has(.fc-event) .fc-daygrid-day-top::after {position: absolute; left: 50%; bottom: 0; transform: translateX(-50%); width: 0.5rem; height: 0.5rem; background-color: #959595; border-radius: 50%; content: '';} */

.sc_my .custom_calendar .fc-daygrid-day-top[data-has-event="true"]::after {position: absolute;left: 50%;bottom: 0;transform: translateX(-50%);width: 0.5rem;height: 0.5rem;background-color: #959595;border-radius: 50%;content: ''; z-index: 1;}
.sc_my .custom_calendar .fc-daygrid-day-events .fc-event {display: none;}
.sc_my .custom_calendar .custom-event .more {cursor: pointer;}
.sc_my .custom_calendar .custom-event .more:hover {opacity: 0.7;}
.sc_my .custom_calendar .custom-event .more:focus {outline: 2px solid #999;}

/*my스케줄 관리하기 - 달력*/
#popup_calendar {display: flex; opacity: 0; visibility: hidden;}
.month_plan {margin-bottom: 3rem;}
.month_plan .custom_calendar {width: 100%; padding: 0; flex-direction: row;}
.month_plan .custom_calendar .fc-toolbar {width: 38rem; padding: 3rem; max-width: none; margin: 0 5rem 0 0; background-color: #f3f5fb; border-radius: var(--border-radius-base); text-align: center;}
.month_plan .custom_calendar .fc-toolbar span {display: block;}
.month_plan .custom_calendar .fc-toolbar-title {font-size: 6rem; word-break: keep-all;}
.month_plan .custom_calendar .fc-view-harness {width: calc(100% - 43rem);}
.month_plan .custom_calendar .fc-col-header-cell-cushion {padding: 1.2rem;}
.month_plan .custom_calendar .fc-daygrid-day-top {height: 7rem; margin: 0;}
.month_plan .custom_calendar .fc-daygrid-body {padding-bottom: 0;}
.month_plan .custom_calendar .fc-daygrid-day-events {display: none;}
.month_plan .custom_calendar .fc-day:has(.fc-event) .fc-daygrid-day-top::after {bottom: 0.8rem;}

/*학습 현황*/
.sc_state {margin-top: 4rem; padding: 2.5rem 2rem; background-color: #f7f8fc; border: 1px solid var(--border-gray-color); border-radius: var(--border-radius-base);}
.sc_state .state_header {display: flex; align-items: center; justify-content: center; margin-bottom: 2.5rem;}
.sc_state .state_tit {display: inline-block; margin: 0 1.5rem; font-size: 2.4rem;}
.sc_state .state_tit span {color: var(--high-primary-font-color);}
.sc_state .btn {width: 3.5rem; height: 3.5rem; line-height: 1rem; background-color: #fff; border-radius: 50%;}
.sc_state .next {transform: rotate(180deg);}
.sc_state .btn > img {width: 1rem;}
.sc_state .dl_list {display: flex; justify-content: center; align-items: center; gap: 1rem 4rem; flex-wrap: wrap;}
.sc_state .dl_list dl + dl {margin-top: 0;}
.sc_state .dl_list dl:nth-child(3n + 2) dt {background-color: #ccf8ed;}
.sc_state .dl_list dl:nth-child(3n + 3) dt {background-color: #dce6ff;}
.sc_state .dl_list dl:nth-child(3n + 4) dt {background-color: #eaf4d2;}
.sc_state .dl_list dt {padding: 0.5rem 1rem; font-size: 1.6rem; font-weight: 400;}
.sc_state .dl_list dd {width: calc(100% - 11rem); margin-left: 1rem; font-size: 1.6rem;}

/*공지사항*/
.sc_notice.my {margin-top: 5rem; display: flex; flex-wrap: wrap;}
.sc_notice.my .notice_list > li:first-child .date_box {border-color: #1299d1;}
.sc_notice.my .notice_list > li:first-child .date_box span {color: #1299d1;}

/*학습중인 강좌*/
.sc_course {margin-top: 5rem;}
.sc_course .board_search {margin-bottom: 5rem;}
.sc_course .table_desc {margin-bottom: 3rem;}
.sc_course .con_desc {margin-bottom: 1rem;}
.sc_course .con_desc strong {font-size: 1.8rem;}

/*학습지원센터*/
.sc_center {display: flex; margin-top: 5rem; flex-wrap: wrap; gap: 2rem 3rem;}
.sc_center > article {width: calc(50% - 1.5rem);}
.sc_center .border_box {display: flex; align-items: center; height: calc(100% - 5rem); padding: 2.5rem; border: 1px solid var(--border-gray-color); border-radius: var(--border-radius-base); flex-wrap: wrap;}
.sc_center .info_group {width: 100%; margin-bottom: 2rem; display: flex; align-items: center; flex-wrap: wrap;}
.sc_center .icon {width: 12rem; margin-right: 3rem; text-align: center;}
.sc_center .info {width: calc(100% - 15rem);}
.sc_center .title {margin-bottom: 1.2rem;}
.sc_center .title strong {display: block; margin-bottom: 0.5rem; font-size: 2.4rem;}
.sc_center .title > p {margin-top: 0.5rem; font-weight: 300;}
.sc_center .title .number {display: inline-block; margin-left:1rem;}
.sc_center .list {display: flex; gap: 1rem 2.5rem; width: 100%; margin-top: auto; padding: 1.5rem 3rem; border-radius: var(--border-radius-base); flex-wrap: wrap;}
.sc_center .list > li {position: relative; padding-left: 1.2rem;}
.sc_center .list > li::before {position: absolute; left: 0; top: 0.8rem; width: 0.6rem; height: 0.6rem; background-color: #222; border-radius: 50%; content: '';}
.sc_center .list > li > a {display: block; width: 100%;}
.sc_center .center .list {background-color: #f3f0fe;}
.sc_center .display .list {background-color: #dcf0f2;}

/*응시하기 팝업*/
.score_msg {margin-bottom: 2.5rem; padding: 1.2rem; font-size: 2.4rem; font-weight: 600; background-color: #d0edfa; border-radius: 1rem; text-align: center;}
.score_msg > span {color: #203a59;}
.popup_exam .score_msg {background-color: var(--bg-gray); font-size: 2rem;}
.popup_exam .score_msg.quiz {text-align: left;}
.popup_exam .quiz_icon {display: inline-block; width: 4rem; height: 4rem; line-height: 4rem; margin-right: 1rem; font-size: 1.5rem; background-color: var( --sub-primary-color); color: #fff; font-weight: bold; text-align: center; border-radius: 50%;}
.popup_exam .quiz_icon + strong {display: inline-block; width: calc(100% - 7rem); vertical-align: text-top;}
.popup_exam {display: flex;}
.popup_exam .exam_tit {display: block; margin-bottom: 1.2rem; font-size: 2rem;}
.popup_exam .exam_info {width: 25rem; margin-right: 4rem; gap:3rem; flex-wrap:wrap;}
.popup_exam .exam_test {width: calc(100% - 29rem);}
.popup_exam .border_box {width: 100%; padding: 2rem; margin-bottom: 3rem; border: 1px solid var(--border-gray-color); border-radius: 1rem;}
.popup_exam .question {padding: 1rem; margin-bottom: 1.5rem; font-size: 1.7rem;}
.popup_exam .exam_view {padding: 3rem 2rem; margin: 2rem 0; background-color: #d0edfa; border-radius: 1rem;}
.popup_exam .dl_table {width:100%;}
.popup_exam .dl_table.v1 {margin-top:2rem}
.popup_exam .dl_table > dl {display: flex; align-items: center; background-color: #f6f6f6; border: 1px solid var(--border-gray-color);}
.popup_exam .dl_table > dl + dl {border-top: 0;}
.popup_exam .dl_table > dl > dt {min-width: 10rem; padding: 1rem 1.5rem; background-color: #f6f6f6; font-size: 1.7rem; font-weight: 600; text-align: center;}
.popup_exam .dl_table > dl > dd {flex: 1; padding: 1rem 1.5rem; background-color: #fff;}
.popup_exam .score_table {position: relative; display: flex; flex-wrap: wrap; border: 1px solid var(--border-gray-color); border-bottom: 0;}
.popup_exam .score_table::after {position: absolute; left: 0; bottom: 0; width: 100%; height: 1px; background-color: var(--border-gray-color); content: '';}
.popup_exam .score_table > dl {display: block; width: calc(100% / 5); border-bottom: 1px solid var(--border-gray-color); text-align: center;}
.popup_exam .score_table > dl > dt {padding: 0.5rem; background-color: #f6f6f6;}
.popup_exam .score_table > dl > dd {padding: 1rem 0 0.8rem;}
.popup_exam .score_table input {width: 1.5rem; height: 1.5rem; background-image: url("/images/site/NGLMS/common/checkbox_border.svg"); background-size: 1.5rem;}
.popup_exam .score_table input:checked {background-image: url("/images/site/NGLMS/common/checkbox_full.svg");} 
.popup_exam .exam_radio {padding-left: 1rem;}
.popup_exam .exam_radio .item + .item {margin-top: 1rem;}
.popup_exam .exam_radio .item label {display: inline-block; vertical-align: middle; margin-left: 0.5rem;}
.popup_exam .table_line i {background-color: var(--border-gray-color);}
.popup_exam .table_line .vt_line {position: absolute; top: 0; width: 1px; height: 100%;}
.popup_exam .table_line .vt0 { left: calc(100% / 5 * 1); }
.popup_exam .table_line .vt1 { left: calc(100% / 5 * 2); }
.popup_exam .table_line .vt2 { left: calc(100% / 5 * 3); }
.popup_exam .table_line .vt3 { left: calc(100% / 5 * 4); }
.popup_exam .table_line .vt4 { left: calc(100% / 5 * 5); }
.popup_exam .correct {background-color: #1263bc;}
.popup_exam .wrong {background-color: #ff1919;}
.popup_exam .answer_color {display: flex; margin-top: 2rem; margin-bottom: 1.5rem;}
.popup_exam .answer_color li {display: flex; align-items: center; margin-right: 2rem; font-weight: 600; line-height: 1;}
.popup_exam .answer_color .box {display: block; width: 1.5rem; height: 1.5rem; margin-right: 0.5rem;}
.popup_exam .answer_status {position: relative;}
.popup_exam .answer_grid {display: flex; flex-wrap: wrap; outline: 1px solid var(--border-gray-color);}
.popup_exam .answer_grid > li {width: calc(100% / 5); height: 4rem; line-height: 4rem; color: #fff; border-bottom: 1px solid var(--border-gray-color); text-align: center;}
.popup_exam .answer_grid > li > button {width: 100%; padding: 0;}
.popup_exam .correct_desc {margin-top: 3rem;}
.popup_exam .correct_desc .score_msg {background-color: #d1edf9;}
.popup_exam .correct_desc .question {padding-left: 3rem;}

/*마이페이지 - 회원정보 수정*/
.member_modify {max-width: 50rem; margin: 10rem auto 5rem; padding-top:3rem;}
.member_modify .member_title {margin-bottom: 2.5rem; text-align: center;}
.member_modify .member_title .tit {margin-bottom: 1.2rem; padding: 1rem 1.5rem; border: 1px solid #333; font-size: 2rem; font-weight: 500; color: #333;}
.member_modify .member_title .desc {font-size: 1.7rem; font-weight: 500; color: #444;}
.member_modify .member_title .txt {display: block; margin: 2.5rem 0; font-size: 1.7rem; line-height: 1.6; color: #888; font-weight: 500;}
.member_modify .basic_input.bg {background-color: #dbebff;}
.member_modify .basic_btn {margin-top: 5rem;}
.member_modify .basic_btn .btn {padding:0 1.5rem; flex:1; font-size:1.6rem;}
.member_modify .join_row {margin-bottom: 1.5rem;}
.member_modify .modify_desc {font-size: 1.4rem; color: #555;}

/* *************************************************************************************
* 
* 서비스이용안내
* 
* **************************************************************************************/
/*개인정보처리방침*/
.privacy_print {margin-bottom: 2rem; display: flex; align-items: center; justify-content: right; gap: 1rem;}
.privacy_print > li {display: flex; align-items: center; justify-content: center; width: 5rem; height: 5rem; background-color: #fff; border: 1px solid var(--border-gray-color); background-color: #fff; border-radius: 50%; text-align: center;}
.privacy_print img {width: 2rem;}
.privacy_print .print img {width: 2.2rem;}
.privacy_service {max-width: 100%;}
.privacy_service .wh_box {width: 100%; padding: 3rem; background-color: #fff; border-radius: var(--border-radius-base);}
.privacy_service .purple_box {width: 100%; padding: 3rem 2rem; background-color: #f3f6f9; border-radius: var(--border-radius-base);}
.privacy_service .desc {line-height: 1.6;}
.privacy_service a.link_site {color: var(--primary-color); font-weight: 500; text-decoration: underline; text-underline-offset: 0.3rem;}
.privacy_service .basic_btn .btn {border-radius: 5rem;}
.privacy_label {margin: 2.5rem 0;}
.privacy_label .label {padding: 1.2rem; background-color: #bed8f5; color: var(--primary-point-color); font-weight: 700; text-align: center; border-radius: 1.5rem 1.5rem 0 0;}
.privacy_label .privacy_list {display: flex; flex-wrap: wrap; border: 1px solid var(--border-gray-color); border-radius: 0 0 1.5rem 1.5rem;}
.privacy_label .privacy_list > li {width: calc(100% / 3); min-height: 20rem; padding: 2.5rem; border-right: 1px solid var(--border-gray-color); text-align: center;}
.privacy_label .privacy_list > li:nth-child(3n) {border-right: 0;}
.privacy_label .privacy_list > li:nth-child(-n+3) {border-bottom: 1px solid var(--border-gray-color);}
.privacy_label .privacy_list .txt {margin-top: 1.5rem;}
.privacy_label .privacy_list .txt > span {display: block; margin-top: 0.5rem; font-size: 1.4rem; color: #555;}
.privacy_index {margin-bottom: 3rem;}
.privacy_index .index_tit {width: 12rem; height: 4.8rem; line-height: 4.8rem; margin: 0 auto 3rem; background-color: var(--primary-point-color); color: #fff; border-radius: 5rem; font-weight: 700; text-align: center;}
.privacy_index .number_list {display: flex; gap: 2rem; flex-wrap: wrap;}
.privacy_index .number_list > li {width: calc(50% - 1rem); height: 2.8rem; padding-left: 3.8rem;}
.privacy_index .number_list > li > a:hover {text-decoration: underline; text-underline-offset: 0.3rem; font-weight: 600;}
.privacy_index .number_list > li::before {top: -0.3rem; width: 2.8rem; height: 2.8rem; line-height: 2.8rem; background-color: #4061d2; color: #fff; font-weight: 700; text-align: center; border-radius: 50%;}
.privacy_index .number_list > li + li {margin-top: 0;}

.privacy_item {margin-bottom: 5rem;}
.privacy_item .tit {display: block; margin-bottom: 1.5rem; font-size: 2.2rem;}
.privacy_item .depth1_list > li {counter-increment: number; position: relative; padding-left: 2.5rem; line-height: 1.5;}
.privacy_item .depth1_list > li {margin-bottom: 2rem;}
.privacy_item .depth1_list > li::before {content:counter(number); position:absolute; left:0; top:0.2rem; display:block; width:1.5rem; height:1.5rem; line-height:1.5rem; border: 1px solid; text-align: center; border-radius:50%; font-size: 1.2rem;}
.privacy_item .depth1_list > li > .scroll_table {margin-top: 1.5rem;}
.privacy_item .depth2_list {margin-top: 0.8rem;}
.privacy_item .depth2_list > li {margin-bottom: 0.5rem; padding-left: 2rem;}
.privacy_item .depth2_list .num {display: inline-block; margin-left: -2rem; margin-right: 0.3rem;}
.privacy_item .dash_list {margin-top: 0.5rem;}
.privacy_item .dash_list > li {padding-left: 1rem;}
.privacy_item .point {color: #3454c2;}

/*Only PC*/
@media all and (min-width:1200px){
    .join_category > li > a:hover, .join_category > li > a:focus{border-color: #134E7C;}
    .join_category > li > a:hover > p, .join_category > li > a:focus > p{background-color: #134E7C; color:#fff;border-color: #134E7C;}
    .certif_list > li > a:hover, .certif_list > li > a:focus {background-color: #134E7C; color: #fff; border-color: #134E7C;}
    .sc_my .menu > li > a:hover {outline: 1px solid #444;}
    .sc_my .my_board > li > a:hover {font-weight: 500; border-color: #406ed7; background-image: url("/images/site/NGLMS/icon/half_arr_high.svg"); transition: .3s;}
    .sc_my .custom_calendar .fc-event:hover .more {background-color: #333; border-color: #333; background-image: url("/images/site/NGLMS/icon/plus_icon.svg"); transition: .3s;}
}

/* *************************************************************************************
*
* 모바일
* 
* **************************************************************************************/
@media all and (max-width:1200px){
    /*마이페이지*/
    .mypage_content {padding-top: 3rem;}
}

@media all and (max-width:1024px){
    /*마이페이지*/
    .sc_my .menu {margin-top:2rem;}
    .sc_my .my_info {width: 100%; display: flex; flex-wrap: wrap;}
    .sc_my .my_member {width: 36rem;}
    .sc_my .alarm_btn {top: 1rem; right: 1rem;}
    .sc_my .my_board {width: calc(100% - 38rem); margin-left: 2rem;}
    .sc_my .my_board > li + li {margin-top: 2rem;}
    .sc_my .my_plan {width: 100%;}

    /*캘린더*/
    .sc_my .custom_calendar {width: 70rem;}

    .sc_center .border_box {padding: 2rem 1.5rem;}
    .sc_center .icon {width: 8rem; margin-right: 2rem;}
    .sc_center .icon > img {width: 7rem;}
    .sc_center .info {width: calc(100% - 10rem);}

    /*월간 일정표*/
    .month_plan .custom_calendar {width: 100%; flex-direction: column;}
    .month_plan .custom_calendar .fc-toolbar {width: 100%; max-width: 35rem; padding-top: 0; margin: 0 auto; background-color: #fff;}
    .month_plan .custom_calendar .fc-toolbar-title {font-size: 2.2rem;}
    .month_plan .custom_calendar .fc-view-harness {width: 100%;}
}

@media all and (max-width:780px){
    .page_login .wh_box {padding: 3rem 2rem;}
    .page_login .login_title {margin-bottom: 4rem; font-size: 2rem; word-break: keep-all;}
    .page_login .login_icon img {width: 6rem;}
    .page_login .certif_list {gap: 1.5rem;}
    .page_login .certif_list > li > a {padding: 0;}

    /*회원유형 선택*/
    .join_category {gap: 2rem;}
    .join_category > li {width: calc(50% - 1rem); flex: auto;}

    /*회원정보 입력*/
    .member_form > li {flex-direction: column;}
    .member_form .subject {width: auto; min-height: 3.5rem;}
    .member_form .form {width: 100%;}
    .member_form .tel {gap: 0.5rem;}
    .member_form .tel input, .member_form .tel select {width: calc(100% / 3 - 1rem);}
    .member_form .tel:has(.btn) input, .member_form .tel:has(.btn) select {width: calc(100% / 3 - 5rem);}

    /*마이페이지*/
    .sc_my .my_member {width: 30rem; padding: 2rem;}
    .sc_my .my_board {width: calc(100% - 31rem); margin-left: 1rem;}
    .sc_my .my_board > li + li {margin-top: 1rem;}
    .sc_my .my_board > li > a {padding: 0 1.5rem;}
    .sc_my .plan_header {padding: 1.5rem 2rem;}
    .sc_my .plan_cnt {flex-direction: column;}
    .sc_my .learn_info {width: 100%; padding: 2rem;}
    .sc_my .month_img > img {width: 12rem;}

    /*캘린더*/
    .sc_my .custom_calendar {width: 100%;}
    .sc_my .custom_calendar .event-date {display: none;}

    .sc_state {padding: 2rem 1.5rem;}
    .sc_state .dl_list {gap: 1rem 2rem;}
    .sc_state .dl_list dl {width: calc(100% / 2 - 1rem);}
    .sc_state .dl_list dd {font-size: 1.4rem; word-break: keep-all;}
    .sc_center > article {margin-top: 1rem; width: 100%;}
    .sc_center .list {padding: 1.5rem; gap: 1rem 2rem;}

    /*마이페이지 - 회원정보 변경*/
    .member_modify {width: 100%; max-width: none; margin: 0 auto;}
    
    /*응시하기 팝업*/
    .popup_exam {flex-wrap:wrap; gap:5rem;}
	.popup_exam .exam_info {width:100%; margin-right:0;}
	.popup_exam .dl_table {width:calc(50% - 1.5rem);}
	.popup_exam .exam_test {width:100%;}
	.popup_exam .exam_view {padding:2rem 1rem;}
	.popup_exam .border_box {padding:2rem 1.2rem;}
	.popup_exam .table_line .vt0 { left: calc(100% / 5 * 1);}
	.popup_exam .table_line .vt1 { left: calc(100% / 5 * 2);}
	.popup_exam .table_line .vt2 { left: calc(100% / 5 * 3);}
	.popup_exam .table_line .vt3 { left: calc(100% / 5 * 4);}
	.popup_exam .table_line .vt4 { left: calc(100% / 5 * 5);}

    /*개인정보처리방침*/
    .privacy_service .wh_box {padding: 2rem;}
    .privacy_label .privacy_list > li {min-height: 12rem; padding: 1.5rem 1rem;}
    .privacy_label .privacy_list .img > img {width: 4.5rem;}
    .privacy_label .privacy_list .txt > p {font-size: 1.4rem;}
}

@media all and (max-width:480px){
    /*회원가입*/
    .page_login .page_title {margin: 1rem 0 3.5rem;}
    .page_login .basic_btn .btn {min-width: auto; width: calc(100% / 3 - 1rem); flex: 1; padding: 0 1rem; font-size: 1.6rem;}
    .member_step .step-tit {font-size: 1.4rem;}
    .member_form > li + li{margin-top: 2rem;}
    .member_form .form .input_group {padding-top: 0.8rem;}
    .member_form input[type="text"], .member_form input[type="number"], .member_form input[type="password"] , .member_form select {width: 100%; border-radius: 1rem;}
    .member_form .btn {width: 100%; border-radius: 1rem;}
    .member_form .tel {flex-wrap: wrap;}
    .member_form .tel input {width: calc(50% - 7.8rem);}
    .member_form .tel select {width: 10rem;}
    .member_form .tel:has(.btn) {gap: 1rem 0.5rem;}
    .member_form .tel:has(.btn) input {width: calc(50% - 7rem);}
    .member_form .tel:has(.btn) select {width: 10rem;}
    .member_form .tel .btn {width: 100%;}
    .member_form .email input {width: calc(50% - 2rem);}
    .member_form .email select {width: 100%;}
    .member_form .address .zip input[type="text"] {width: 100%;}
    .member_form .certif_number input[type="text"] {width: 100%;}
    .member_form .certif_number .btn {flex: 1;}

    /*마이페이지*/
    .sc_my .my_member {width: 100%;}
    .sc_my .my_board {width: 100%; margin-left: 0;}
    .sc_my .my_board > li > a {height: 5rem;}
    .sc_center .icon {display: none;}
    .sc_center .info {width: 100%;}
    
    /*캘린더*/
    .sc_my .custom_calendar .custom-event {padding-left: 6rem;}
    .sc_my .custom_calendar .custom-event::before {width: 5rem; height: 5rem; background-size: 5rem;}
    
    /*응시하기 팝업*/
    .popup_exam .dl_table {width:100%;}

    /*개인정보처리방침*/
    .privacy_index .number_list > li {width: 100%;}
}
