a {text-decoration:none;}
a,area {outline:none;}
i,em,address {font-style:normal;}

/* --- Page Header (Title Area) --- */
/* 이미지백그라운드 */
.page-header {
    position: relative;
    z-index: 1;
  background-color: var(--color-bg-section);
  padding: 60px 0;
  margin-top: 80px; /* Header Height offset */
  text-align: center;
}


/* 어두운 오버레이 추가 (이미지 위에 글씨 잘 보이게) */
.page-header::before {
    content: "";
    position: absolute;
    top: 0; left: 0; width: 100%; height: 100%;
    background: rgba(0, 0, 0, 0.5); /* 검정 50% 투명도 */
    z-index: -1;
}
.page-header h1 { font-size: 2.6rem; margin-top: 10px; color: #ffffff; }
.page-header h4 { font-size: 1.2rem; margin-top: 10px; color: #ffffffc9; font-weight: 500 }

.breadcrumb { font-size: 1rem; color: #ffffffc8; font-weight: 500; }


/* --- 각 메뉴별 배경 이미지 --- */

/* 1번 메뉴 (센터소개 계열) */
.page-header {background-image: url('../image/main_visual_09.jpg');}
.page-header.menu-04 {background-image: url('../image/main_visual_12.jpg');}
.page-header.menu-05 {background-image: url('../image/main_visual_14.jpg');}
.page-header.menu-06 {background-image: url('../image/main_visual_09.jpg');}
.page-header.menu-09 {background-image: url('../image/main_visual_02.jpg');}
.page-header.sub-bg-01-01 {background-image: url('../image/main_visual_01.jpg');}
.page-header.sub-bg-01-02 {background-image: url('../image/main_visual_02.jpg');}
.page-header.sub-bg-01-03 {background-image: url('../image/main_visual_03.jpg');}
.page-header.sub-bg-01-04 {background-image: url('../image/main_visual_04.jpg');}
.page-header.sub-bg-01-05 {background-image: url('../image/main_visual_04.jpg');}

.page-header.sub-bg-02-01 {background-image: url('../image/main_visual_05.jpg');}
.page-header.sub-bg-02-02 {background-image: url('../image/main_visual_06.jpg');}
.page-header.sub-bg-02-03 {background-image: url('../image/main_visual_07.jpg');}
.page-header.sub-bg-02-04 {background-image: url('../image/main_visual_08.jpg');}

.page-header.sub-bg-03-01 {background-image: url('../image/main_visual_09.jpg');}
.page-header.sub-bg-03-02 {background-image: url('../image/main_visual_10.jpg');}
.page-header.sub-bg-03-03 {background-image: url('../image/main_visual_11.jpg');}

.page-header.sub-bg-05-03 {background-image: url('../image/main_visual_13.jpg');}
.page-header.sub-bg-05-02 {background-image: url('../image/main_visual_14.jpg');}





/* 테이블 */
table caption {padding:0;font-size:0;line-height:0;overflow:hidden}
input.text,
select.text,
textarea.text {border:#ddd 1px solid; outline:0; transition:.2s linear;}
input.text,
select.text {height:30px; padding:0 10px;}
input.text:focus,
select.text:focus,
textarea.text:focus {border-color:#aaa;}
select.text {min-width:160px; max-width:100%;} 

.info-content h3, .stit {
    font-size: 22px;     font-weight: 700;     margin: 40px 0 20px 0;     padding-left: 15px;     border-left: 4px solid #e67e22;
}
.payment_container {width:830px; max-width:100%; padding:0; margin:0 auto !important;}

.tac {text-align:center !important;}
.tal {text-align:left !important;}
.red {color:#f00;}
/* 팝업레이어 */
#hd_pop {z-index:1000;position:relative;margin:0 auto;height:0}
#hd_pop h2 {position:absolute;font-size:0;line-height:0;overflow:hidden}
.hd_pops {position:absolute;border:1px solid #e9e9e9;background:#fff;}
.hd_pops img{max-width:100%}
.hd_pops_con {}
.hd_pops_footer {padding:0;background:#000;color:#fff;text-align:left;position:relative;}
.hd_pops_footer:after {display:block;visibility:hidden;clear:both;content:""}
.hd_pops_footer button {padding:10px;border:0;color:#fff}
.hd_pops_footer .hd_pops_reject{background:#000;text-align:left}
.hd_pops_footer .hd_pops_close{background:#393939;position:absolute;top:0;right:0}

.msg_sound_only, .sound_only {display:inline-block !important;position:absolute;top:0;left:0;margin:0 !important;padding:0 !important;font-size:0;line-height:0;border:0 !important;overflow:hidden !important}

.tbl input[type="text"], .tbl input[type="tel"], .tbl input[type="email"],  .tbl input[type="password"], .tbl textarea { width: 100%; padding: 12px; border: 1px solid #ccc; border-radius: 6px; font-size: 16px;  }
.tbl { position: relative; width:100%; }
.tbl:after {display:block;visibility:hidden;clear:both;content:""}
.tbl table {border-top:2px solid #34495e; width:100%;border-collapse: collapse;}
.tbl th,
.tbl td {width: 300px; border-bottom:#ddd 1px solid; color:#000; line-height:26px; padding:15px 10px;}
.tbl th {font-weight:500; background:#f8f9fa; text-align:center !important;}
.tbl td {color:#525252; text-align: center !important;}
.tbl th:first-child,
.tbl td:first-child {border-left:0;}
.tbl.wauto th {width:auto !important;}
.over_tbl table {display:inline-block;}

.board_bottom .btns {overflow:hidden; width:100%; margin-top:50px; }
.board_bottom .btns .btn {display:inline-block; padding:0 50px; height:40px; line-height:40px; border-radius: 30px; background:#fff; color:#0080c6; font-weight:bold; text-align:center; border:#0080c6 1px solid; vertical-align:top; transition:.2s linear;}
.board_bottom .btns .btn:hover {color:#0067a0; border-color:#0067a0;}
.board_bottom .btns.tac {font-size:0; text-align:center;}
.board_bottom .btns.tac .btn {font-size:15px; color:#0080c6; font-weight:700; height:50px; line-height:48px; border:#0080c6 1px solid; margin:0 5px; background:none;}
.board_bottom .btns.tac .btn:hover {color:#0067a0; border-color:#0067a0;}
.board_bottom .btns.tac .btn_g {color:#666; border-color:#666;}
.board_bottom .btns.tac .btn_g:hover {color:#333; border-color:#333;}

.fancybox-overlay {background:none;}
.fancybox-skin {background:#fff;}
.fancy_pop {width:830px; max-width:100%; padding:0; margin:0 !important;}
.fancy_pop.container {padding:0;}
.fancy_pop .title {font-size:24px; color:#003e60; font-weight:700; line-height:54px; padding:0 20px; margin-bottom:0; text-align:center;}
.fancy_pop .title em {color:#b8defb;}
.fancy_pop .inbox {padding:20px 20px 40px;font-size:15px; }
.fancy_pop .inbox.tac {padding-bottom:20px;}
.fancy_pop .tbl th {width:260px;}
.fancy_pop .tbl td.tal {padding:0 20px;}
.fancy_pop .board_bottom .btns.tac {margin-top:30px;}
.fancybox-close {top:20px !important; right:20px !important; width:34px !important; height:34px !important; background-image:none !important;}
.fancybox-close:before,
.fancybox-close:after {content:""; position:absolute; top:50%; left:50%; width:30px; height:3px; background:#003e60; margin-left:-20px;}
.fancybox-close:before {transform:rotate(45deg);}
.fancybox-close:after {transform:rotate(-45deg);}
.fancy_pop .tbl th.w1 {width:260px;}
.fancy_pop .tbl th.w2 {width:auto;}
.fancy_pop h3 { font-size: 1.2em; font-weight: 700; margin: 40px 0 20px 0; padding-left: 15px; border-left: 4px solid #e67e22; }
.fancy_pop h3:first-child { margin-top: 0; }
.fancy_pop .popup_info {font-size: 0.9em; line-height:1.5em;}

.my_board_wrap {display:flex; flex-wrap:wrap; gap:22px;}
.my_board_wrap dl {width:calc(50% - 11px); border:#ddd 1px solid;}
.my_board_wrap dt {position:relative; font-size:18px; color:#333; font-weight:700; line-height:28px; padding:10px 20px; border-bottom:#ddd 1px solid;}
.my_board_wrap dt .more {position:absolute; top:0; right:0; width:48px; height:48px;}
.my_board_wrap dt .more:before,
.my_board_wrap dt .more:after {content:""; position:absolute; top:50%; left:50%; background:#0b407b; transform:translate(-50%,-50%);}
.my_board_wrap dt .more:before {width:14px; height:2px;}
.my_board_wrap dt .more:after {width:2px;height:14px;}
.my_board_wrap dd {padding:25px 20px;}

.lecture-info .txt {position: relative; display: inline-block; padding:20px 15px; min-height:160px; width:100%;}
.lecture-info .cate {display:flex; gap:3px;}
.lecture-info .cate span {font-size:12px; color:#fff; font-weight:700; line-height:22px; width:38px; text-align:center; border-radius:5px;}
.lecture-info .cate .c1 {background:#8b00ff;}
.lecture-info .cate .c2 {background:#57c1cc;}
.lecture-info .cate .c3 {background:#5aa5da;}
.lecture-info .cate .c4 {background:#7081c3;}
.lecture-info .cate .c5 {background:#ff5400;}
.price del   { color:#aaa; }
.tag-end { display: inline-block; border: 1px solid #0b1624; color: #0b1624; padding: 5px 20px; border-radius: 4px;   }
.apply-btn { display: inline-block; text-decoration: none; background-color:#0b1624; border: 1px solid #0b1624; color: #fff; padding: 5px 20px; border-radius: 4px; font-weight: 700; transition: all 0.3s; }
.apply-btn:hover { background-color: #0056b3; color: #fff; }
.tag-grade {
    display: inline-block;    padding: 0.2rem 0.6rem;    border-radius: 4px;    font-size: 0.8rem;    font-weight: 700;    color: #fff;    background: #888;
}
.tag-grade.expert {
    background: #c5a059;
}

.mypage-dashboard { background-color: #f8f9fa; padding: 30px; border-radius: 10px; margin-bottom: 40px; }
.mypage-dashboard h3 { font-size: 22px; margin-bottom: 20px; }
.cta-buttons { display: flex; gap: 15px; margin-top: 30px; }
.cta-buttons .cta-btn-main.red { background-color: #e74c3c; border-color: #e74c3c;}
.cta-buttons .cta-btn-main.red:hover { background-color: #c0392b; }
.content-tabs.lecture-detail-tabs { margin-bottom: 30px; }


.lecture_tabs {text-align:center; font-size:0; margin-bottom:50px;}
.lecture_tabs li {display:inline-block; vertical-align:top; margin:0 5px;}
.lecture_tabs li a {display:block; font-size:18px; color:#1e445b; line-height:53px; height:55px; width:225px; border:#ddd 1px solid; border-top-color:#1e445b;}
.lecture_tabs li.on a {color:#fff; background:#0b407b;}

.lecture-count { font-size: 16px; color: #555; margin: 20px 0; }
.lecture-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 30px; }
.lecture-card { text-decoration: none; color: inherit; border: 1px solid #eee; border-radius: 8px; overflow: hidden; transition: box-shadow 0.3s, transform 0.3s; }
.lecture-card:hover { transform: translateY(-5px); box-shadow: 0 8px 20px rgba(0,0,0,0.1); }
.lecture-thumbnail { width: 100%; aspect-ratio: 4 / 2.3; overflow: hidden; display: flex; justify-content: center; align-items: center; background-color: #f0f0f0; }
.lecture-thumbnail img { width: 100%; height: 100%; object-fit: cover; display: block; }
.lecture-info { padding: 10px; }
.lecture-info h4 { font-size: 17px; margin-bottom: 10px; }
.lecture-info .price { font-size: 17px; font-weight: 700; color: #e74c3c; }
.lecture-detail-header { display: flex; gap: 40px; margin-bottom: 50px; }
.lecture-detail-thumbnail { flex-basis: 40%; }
.lecture-detail-thumbnail img { width: 100%; border-radius: 8px; }
.lecture-detail-info { flex-basis: 60%; }
.lecture-detail-info h2 { font-size: 28px; margin-bottom: 20px; }
.lecture-detail-info .info-deflist td.price { font-size: 24px; color: #e74c3c; font-weight: 700; }
.lecture-description .desc-item { margin-bottom: 30px; }
.lecture-description h4 { font-size: 20px; font-weight: 700; margin-bottom: 15px; padding-left: 15px; border-left: 4px solid #e67e22;}
.lecture-description p { line-height: 1.8; color: #555; }
.lecture-description ol { padding-left: 20px; }
.lecture-description ol li { margin-bottom: 10px; line-height: 1.8; color: #555;}
.lecture-syllabus { list-style: none; border-top: 2px solid #333; padding-left: 0; }
.lecture-syllabus li { padding: 20px; border-bottom: 1px solid #eee; font-size: 18px; }
.lecture-syllabus li span { font-weight: 700; margin-right: 15px; color: #0056b3; }
.status-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.status-box { background-color: #fff; border-radius: 8px; padding: 25px; text-align: center; border: 1px solid #eee; }
.status-box i { font-size: 24px; color: #0056b3; margin-bottom: 10px; }
.status-box span { display: block; font-size: 16px; color: #555; margin-bottom: 5px; }
.status-box strong { font-size: 28px; font-weight: 700; }
.info-list.compact li { margin-bottom: 8px; font-size: 15px; }
.lecture-table { width: 100%; border-collapse: collapse; margin-top: 20px; }
.lecture-table th { background-color: #f8f9fa; padding: 15px; font-weight: 500; border-top: 2px solid #34495e; border-bottom: 1px solid #ddd; }
.lecture-table td { padding: 15px; text-align: center; border-bottom: 1px solid #eee; vertical-align: middle; }
.lecture-table .status-tag { font-size: 14px; padding: 4px 12px; border-radius: 15px; font-weight: 700; }
.lecture-table .status-tag.in-progress { background-color: #e0f7fa; color: #00796b; }
.lecture-table .status-tag.completed { background-color: #e3f2fd; color: #1565c0; }

.lecture-main-row .title { text-align: left; font-weight: 700; }
.cta-btn-sub.small { padding: 2px 10px; font-size: 12px; }
.lecture-sub-row { display: none; }
.lecture-sub-row td { padding: 0; background-color: #fdfdfd; }
.toggle-details { background: none; border: 1px solid #ccc; width: 30px; height: 30px; border-radius: 50%; cursor: pointer; transition: transform 0.3s, background-color 0.3s; }
.toggle-details i { color: #555; }
.toggle-details:hover { background-color: #f0f0f0; }
.toggle-details.expanded { transform: rotate(180deg); }
.sub-lecture-list table { width: 100%; border-collapse: collapse; }
.sub-lecture-list th { background-color: #f9f9f9; padding: 12px 30px; text-align: left; border: none; border-bottom: 1px solid #eee; font-weight: 500; }
.sub-lecture-list td { border: none; border-bottom: 1px solid #eee; text-align: center; }
.sub-lecture-list tbody tr:last-child td { border-bottom: none; }
.sub-lecture-list a { text-decoration: none; color: #0056b3; }

.cta-section { text-align: center; margin-top: 60px; }
.cta-btn-main, .cta-btn-sub { font-family: 'Noto Sans KR', sans-serif; padding: 15px 50px; font-size: 16px; font-weight: 700; border-radius: 30px; cursor: pointer; border: 2px solid #0056b3; margin: 0 10px; transition: all 0.3s; }
.cta-btn-main { background-color: #0056b3; color: #fff; }
.cta-btn-main:hover { background-color: #2980b9; }
.cta-btn-sub { background-color: #fff; color: #0056b3; }
.cta-btn-sub:hover { background-color: #ecf0f1; }

.jq_tab {display:flex; flex-wrap:wrap; border:#ddd 1px solid; margin-bottom: 5px;}
.jq_tab li {line-height:25px; padding:15px 0; border-left:#ddd 1px solid; text-align:center; cursor:pointer; display:flex; justify-content:center; align-items:center;}
.jq_tab li.on {color:#fff; background:#2c6eb7;}
.jq_tab.set3 li {width:calc(100%/3); border-top:#ddd 1px solid;}
.jq_tab.set3 li:nth-child(3n-2) {border-left:0;}
.jq_tab.set3 li:nth-child(-n+3) {border-top:0;}
.jq_tab.set2 li {width:50%;}
.jq_tab.set4 li {width:25%;}
.jq_tab.set5 li {width:20%;}
.jq_tab li a {color:inherit;width:100%;font-size:small;}
.mypage .my_top {position:relative; border:#e4e6e9 1px solid; background:#f9fafb; padding:30px 221px 30px 35px; display:flex; align-items:center;}
.mypage .my_top .pic {position:relative; width:116px; height:144px; border:#ddd 1px solid; background:#fff url('/images/icon_my.png') no-repeat bottom center;}
.mypage .my_top .pic img {position:absolute; top:50%; left:50%; width:100%; height:100%; object-fit:cover; transform:translate(-50%,-50%);}
.mypage .my_top .txt {width:calc(100% - 116px); padding-left:20px;}
.mypage .my_top .name {font-size:17px; color:#333; font-weight:500; margin-bottom:15px;}
.mypage .my_top .name strong {font-size:17px; font-weight:500;}
.mypage .my_top dl {display:flex; align-items:center;}
.mypage .my_top dt,
.mypage .my_top dd {font-size:15px; color:#999; line-height:25px;}
.mypage .my_top dt {padding-right:10px;}
.mypage .my_top dd {display:flex; gap:4px;}
.mypage .my_top dd span {font-size:12px; color:#fff; font-weight:700; line-height:20px; height:20px; padding:0 10px; border-radius:2px; padding:0 10px;}
.mypage .my_top dd span.c1 {background:#49505d;}
.mypage .my_top dd span.c2 {background:#b94545;}
.mypage .my_top dd span.c3 {background:#02bfec;}
.mypage .my_top .btn {position:absolute; top:50%; right:30px; width:186px; height:50px; line-height:48px; padding:0 20px; font-size:15px; color:#999; font-weight:600; border:#ccc 1px solid; transform:translate(0,-50%);}
.mypage .my_top .btn:after {content:""; position:absolute; top:calc(50% - 5px); right:20px; width:10px; height:10px; border-top:#878787 1px solid; border-right:#878787 1px solid; transform:rotate(45deg);}
.mypage .my_links {padding:40px 0 55px; display:flex; justify-content:center; gap:80px;}
.mypage .my_links a p {font-size:15px; color:#333; line-height:20px; margin-top:15px; text-align:center;}
/* ---------------------------------- */
/* 반응형 스타일 (모바일) - 최종 수정본 */
/* ---------------------------------- */

/* 공지사항 */
.board_top {/*display:flex;*/ justify-content:space-between; margin-bottom:35px;}
.board_top select.text {width:180px; padding:0 20px; border-radius:25px; background:#fff url('/images/arrow_select2.png') no-repeat right 26px center;}
.board_top .select_area {display:flex; border:#efefef 1px solid; border-radius:25px; overflow:hidden;}
.board_top .select_area .text {width:calc(100% - 72px); height:48px; border:0;}
.board_top .select_area .text::placeholder {color:#b2b2b2;}
.board_top .select_area .btn_search {width:72px;  border:0px;}

.board_list {border-top:#0b1624 2px solid;}
.board_list .w1 {width:80px;}
.board_list .w3 {width:150px;}
.board_list th,
.board_list td {height:54px; font-size:16px; text-align:center; border-bottom:#ddd 1px solid;}
.board_list th {color:#222; font-weight:600; background:#f9f9f9;}
.board_list td {color:#666;}
.board_list td.tal { text-align:left; }
.board_list td a {display:inline-block;vertical-align:top; max-width:100%; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
.board_list .notice span {display:block; font-size:15px; color:#fff; font-weight:500; line-height:35px; height:35px; width:50px; background:#0078ff; text-align:center; margin:0 auto;}

/* 뉴스&이벤트 */
.gall_list {display:flex; flex-wrap:wrap; gap:30px;}
.gall_list a {width:calc((100% - 60px)/3); overflow: hidden; border-radius:15px;border:#ebebeb 1px solid;  }
.gall_list span {display:block;}
.gall_list .imgfit {aspect-ratio:4/3;}
.gall_list .imgfit img {transition:.2s linear;}
.gall_list .txt {padding:20px 20px;}
.gall_list .tit {font-size:1.2em; color:#222; font-weight:600; line-height:1.5em; height:60px; text-overflow:ellipsis; overflow:hidden; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2;}
.gall_list .date {font-size:0.8em; color:#888; line-height:1;}

/* 합격증 */
.pass_certificate {position:relative; width:640px; height:900px; padding:60px 70px;}
.pass_certificate.purity { background:url('/images/bg_pass_purity.jpg?v=202603') no-repeat 50% 0 / cover; }
.pass_certificate.purity.new { background:url('/images/bg_pass_purity2.jpg?v=202603') no-repeat 50% 0 / cover; }
.pass_certificate.purity.FCA { background:url('/images/bg_pass_purity_FCA.jpg?v=202603') no-repeat 50% 0 / cover; }
.pass_certificate.purity.FPS { background:url('/images/bg_pass_purity_FPS.jpg?v=202603') no-repeat 50% 0 / cover; }

.pass_certificate.edu { background:url('/images/bg_pass_certificate_edu.jpg?v=202603') no-repeat 50% 0 / cover; }
.pass_certificate.vod { background:url('/images/bg_pass_certificate_vod.jpg?v=202603') no-repeat 50% 0 / cover; }
.pass_certificate.FCA { background:url('/images/bg_pass_certificate_FCA.jpg?v=202603') no-repeat 50% 0 / cover; }
.pass_certificate.FPS { background:url('/images/bg_pass_certificate_FPS.jpg?v=202603') no-repeat 50% 0 / cover; }

.pass_certificate.edupass { background:url('/images/bg_pass_certificate_edupass.jpg?v=202603') no-repeat 50% 0 / cover; }

.pass_certificate .no {font-size:10px; font-weight:700; color:#333;font-size:20px; margin-bottom:30px; padding-left:70px; padding-top:5px;}
.pass_certificate .title {font-size:50px; color:#000; font-weight:700; line-height:56px; text-align:center; margin-bottom:20px;}
.pass_certificate .title.edu {font-size:37px; color:#000; font-weight:700; line-height:56px; text-align:center; margin-bottom:20px;}
.pass_certificate .title p {font-size:20px; font-weight:400; line-height:26px; margin-top:10px;}
.pass_certificate .txt_box {position:relative;}
.pass_certificate table {margin-bottom:40px;}
.pass_certificate table th,
.pass_certificate table td {font-size:17px; color:#000; line-height:34px;}
.pass_certificate table th {width:80px; text-align:justify;}
.pass_certificate table td {padding-left:10px; font-weight:300;}
.pass_certificate .txt_box .badge {position:absolute; top:0; right:0; width:120px; height:120px; border:#d7d7d7 1px solid; padding:2px; background:#fff; text-align:center;}
.pass_certificate .txt_box .badge img {width:auto; height:auto; max-width:100%; max-height:100%;}
.pass_certificate .cont {font-size:17px; color:#000; font-weight:700; line-height:22px; width:90%; max-width:500px;  text-align:justify; margin:0 auto;}
.pass_certificate .cont p {font-size:11px; line-height:16px; font-weight:400; margin-top:10px;}
.pass_certificate .company {position:relative; z-index:1; margin-top:55px;}
.pass_certificate .date {font-size:18px; color:#000; line-height:20px; text-align:center; margin-bottom:5px;}
.pass_certificate .comp {font-size:19px; color:#000; font-weight:700; line-height:22px; text-align:center; margin-bottom:30px;}
.pass_certificate .company .stamp {position:absolute; top:0; left:50%; width:69px; height:69px; margin-left:65px; z-index:-1;}
.pass_certificate .company .stamp img {width:auto; height:auto; max-width:100%; max-height:100%;}
.pass_certificate .btm {font-size:12px; color:#666; line-height:14px; width:100%; max-width:430px; margin:0 auto;}
.pass_certificate .btn_print {position:absolute; top:0; left:0; width:80px; height:30px; line-height:28px; font-size:13px; color:#0067a0; font-weight:500; border:#0067a0 1px solid; background:rgba(255,255,255,.8);}
.pass_certificate .back,
.pass_certificate .ie_txt {display:none;}
.pass_certificate .ie_txt {position:absolute; bottom:0; left:0; width:100%; height:30px; line-height:30px; font-size:13px; color:#666; text-align:center;}
.pass_certificate.ie .ie_txt {display:block;}
.pass_certificate ul {margin-bottom:40px;}
.pass_certificate ul li {list-style:none;font-size:18px; color:#000; line-height:34px; padding-left:10px; font-weight:500;}
.pass_certificate ul li span{font-size:18px;  font-weight:300;}

.pass_certificate.purity .title {font-size:30px;padding:0px; text-align:center; font-weight:700;}
.pass_certificate.purity .cont p {font-size:15px; font-weight:700;line-height:20px; margin-top:10px;}
.pass_certificate.purity .infobox {font-size:15px; line-height:22px;; color:#000;  font-weight:700; width:100%;  margin:0 auto; }
.pass_certificate.purity table th,
.pass_certificate.purity table td {font-size:15px; color:#000; line-height:24px;}
.pass_certificate.purity table th {width:80px; text-align:justify;}
.pass_certificate.purity table td {padding-left:10px;}
.pass_certificate.purity .date {font-size:18px; color:#000; line-height:20px; text-align:center; margin-bottom:5px;}

/* 청렴서 */
.purity_box.pop {width:550px;}
.purity_box li {font-size:14px; line-height:30px;}
.purity_box .select_area {}
.purity_box .select_area .name {font-size:35px; color:#2c6eb7; font-weight:500; line-height:40px; padding-bottom:30px;  text-align:center;width:100%;}
.purity_box p {font-size:16px; color:#222; line-height:25px; text-align:left; padding:30px 0px;}
.purity_box .date {font-size:24px; color:#222; line-height:25px; text-align:center; padding:30px 0px;}
.purity_box .tbl table {border-top:#333 2px solid;}
.purity_box .tbl td {border-left:#ddd 1px solid; font-size:16px; color:#7b7b7b; line-height:30px; padding:10px 30px; height:auto; vertical-align:top;}
.purity_box .tbl td:first-child {border-left:0;}
.purity_box .tbl td .radio {display:inline-block; vertical-align:top; line-height:30px; margin-right:90px;}
.purity_box .tbl td .radio:last-child {margin-right:0;}
.purity_box .tbl td .radio i {top:8px;}

.purity_box table { border-top:#ddd 1px solid; width:100%;}
.purity_box table .w1 {width:125px;}
.purity_box th,
.purity_box td {border-bottom:#ddd 1px solid; border-left:#ddd 1px solid; height:56px;}
.purity_box th:first-child {border-left:0;}
.purity_box thead th {font-size:17px; color:#222; font-weight:400; line-height:22px; text-align:center;}
.purity_box tbody th {position:relative; font-size:17px; color:#222; line-height:20px; text-align:left;     font-weight:400; }
.purity_box tbody th em {position:absolute; top:calc(50% - 13px); left:16px; width:26px; height:26px; line-height:26px; text-align:center; font-size:16px; color:#fff; background:#2c6eb7;}
.purity_box tbody td .chk {display:block;}
.purity_box tbody td .chk input {display:none;}
.purity_box tbody td .chk i {display:block; width:32px; height:32px; margin:0 auto; background:url('/images/icon_chk.png') #e5e5e5 no-repeat 50% 50%; border-radius:50%; transition:.2s linear;}
.purity_box tbody td .chk input:checked + i {background-color:#2c6eb7;}

.purity_box .dlarea {display:flex; gap:60px; justify-content:center;}
.purity_box .dlarea dl {display:flex; gap:30px; font-size:16px; color:#222;}
.purity_box .dlarea dt { line-height:40px;}
.purity_box .dlarea dd {font-weight:300; width:180px;}
.purity_box .dlarea dd .text {text-align:center; height:40px;}


.lecture_certificates {border-top:#0b407b 2px solid;}
.lecture_certificates table {width:100%;    display:table;}
.lecture_certificates th,
.lecture_certificates td {border-bottom:#0b407b 1px solid; text-align:center;}
.lecture_certificates th {height:55px; font-size:17px; color:#333; font-weight:500;}
.lecture_certificates td {padding:10px 0; font-size:15px; color:#333; line-height:40px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
.lecture_certificates td a {font-size:13px; color:#fff; padding:10px; text-align:center; background:#0b407b; margin:5px;}
.lecture_certificates .end{ background:#eee;}
.lecture_certificates .ing{ background:#a5d8f1;}

.lecture_problem {border-top:#0b407b 2px solid;}
.lecture_problem li {position:relative; border-bottom:#bdbdbd 1px solid; padding:30px 10px; font-size:20px; color:#333; line-height:27px;}
.lecture_problem li .select input {display:none;}
.lecture_problem li .select_radio {padding-left:35px;}
.lecture_problem li .select_radio .select {position:relative; display:block; padding-left:25px; font-size:18px; color:#525252; line-height:20px; margin-top:20px;}
.lecture_problem li .select_radio .select i {position:absolute; top:1px; left:0; width:18px; height:18px; line-height:16px; border-radius:50%; border:#525252 1px solid; font-size:11px; color:#525252; text-align:center; transition:.2s linear;}
.lecture_problem li .select_radio .select input:checked + i {font-size:0; background:#aaa; border-color:#aaa;}
.lecture_problem li .select_ox {position:absolute; top:19px; right:10px; overflow:hidden;}
.lecture_problem li .select_ox .select {float:left; margin-left:15px;}
.lecture_problem li .select_ox .select i {display:block; font-size:28px; color:#aaa; line-height:48px; height:50px; width:70px; border:#aaa 1px solid; text-align:center; transition:.2s linear;}
.lecture_problem li .select_ox .select input:checked + i {color:#fff; background:#aaa;}
.lecture_problem .wr_answer { padding:5px; background:#a5d8f1; border-color:#a5d8f1; margin-top:20px;}
.lecture_problem .wr_content { padding:5px;}

.modal { display: none; position: fixed; z-index: 2000; left: 0; top: 0; width: 100%; height: 100%; overflow: auto; background-color: rgba(0,0,0,0.6); animation: fadeIn 0.3s; }
.modal.active { display: flex; justify-content: center; align-items: center; }
.modal-content { background-color: #fff; margin: auto; padding: 40px; border-radius: 10px; width: 90%; max-width: 600px; position: relative; box-shadow: 0 5px 25px rgba(0,0,0,0.2); }
.modal-content h2 { font-size: 24px; margin-bottom: 20px; color: #2c3e50; }
.modal-content p { font-size: 16px; line-height: 1.8; color: #333; }
.close-button { color: #aaa; position: absolute; top: 15px; right: 25px; font-size: 28px; font-weight: bold; cursor: pointer; }
.close-button:hover, .close-button:focus { color: #000; }

.certificate-modal { max-width: 800px; padding: 0; font-family: 'Noto Sans KR'; }
.cert-header { background-color: #f0f0f0; padding: 10px 20px; display: flex; justify-content: space-between; align-items: center; }
.print-btn { padding: 5px 15px; border: 1px solid #888; background-color: #fff; cursor: pointer; }
.cert-body { padding: 50px; text-align: center; background-color: #fff; }
.cert-logo-top { margin-bottom: 20px; }
.cert-logo-top img { height: 60px; }
.cert-body h1 { font-size: 48px; font-weight: 600; letter-spacing: 10px; }
.cert-subtitle { font-size: 18px; color: #888; margin-bottom: 50px; }
.cert-info table { width: 100%; text-align: left; margin-bottom: 50px; font-size: 18px; border-collapse: collapse; }
.cert-info th, .cert-info td { padding: 12px 0; }
.cert-info th { font-weight: 700; width: 120px; }

.cert-info { width: 100%; text-align: left; margin-bottom: 50px; font-size: 18px; border-collapse: collapse; }
.cert-info dl { padding: 7px 0; width:100%; }
.cert-info dt, .cert-info dd { line-height:1.3em; display:inline-block; }
.cert-info dt { font-weight: 700; min-width: 120px; padding-right:10px; }

.modal-content .cert-main-text { font-size: 22px; line-height: 1.8em; margin-bottom: 10px; /*word-break: keep-all;*/ }
.modal-content .cert-main-text2 { font-size: 23px; line-height: 2em; margin-bottom: 10px; /*word-break: keep-all;*/ }
.modal-content .cert-main-text_en { font-size: 16px; line-height: 1.5em; margin-bottom: 40px; }
.modal-content .cert-date { font-size: 20px; margin-bottom: 40px; }
.modal-content .cert-footer { position: relative; display: flex; justify-content: center; align-items: center;     width: 100%;}
.modal-content .cert-footer img { height: 80px; }
.modal-content .cert-footer .cert-stamp { position: absolute; height: 100px; right: 150px; }

@media print { 
body * { visibility: hidden; } 
#results-modal, #results-modal * { visibility: visible; } 
#results-modal { position: absolute; left: 0; top: 0; width: 100%; height: 100%; background-color: white; z-index: 9999; display: block !important; } 
.modal-content.results-modal-content { box-shadow: none; border: 2px solid #000; width: 100%; height: 100%; max-width: 100%; border-radius: 0; } 
.results-header .close-button, #print-cert-btn { display: none; } 
}
@media print { 
#modal-certificate, #modal-certificate * { visibility: visible; } 
#modal-certificate { position: absolute; left: 0; top: 0; width: 100%; height: 100%; background-color: white; z-index: 9999; display: block !important; } 
.cert-header { display: none; } 
}


@media (max-width: 768px) {
	/* --- Page Header (Title Area) --- */
	.page-header {
	  padding: 60px 0;
	  margin-top: 50px; /* Header Height offset */
	}
	.page-header h1{ font-size: 2.0rem;}
	.page-header h4{ font-size: 1.0rem;}
	.breadcrumb{ font-size: 0.8rem;}
	.menu-toggle{top:20px;}

	.board_list colgroup,
	.board_list thead {display:none;}
	.board_list table,
	.board_list tbody,
	.board_list td {display:block;}
	.board_list tr {display:flex; flex-wrap:wrap; gap:5px; border-bottom:#ddd 1px solid; padding:10px 0;}
	.board_list th,
	.board_list td {height:auto; font-size:13px; border:0;}
	.board_list .num {display:none;}
	.board_list .type:before {content:"구분 :"; font-size:12px; color:#999; margin-right:5px;}
	.board_list .tal {width:100%;}
	.board_list .notice .tal a:before {content:"공지"; font-size:12px; color:#fff; line-height:20px; height:20px; width:40px; background:#0078ff; text-align:center; display:inline-block; vertical-align:top; margin-right:5px;}
	.board_list .date {color:#999;}

/* 뉴스&이벤트 */
	.gall_list {gap:8px;}
	.gall_list a {width:100%;}
	.gall_list .txt {padding:15px;}
	.gall_list .tit {font-size:14px; line-height:22px; height:44px;}
	.gall_list .date {font-size:13px; padding-left:14px; margin-top:10px; background-size:10px;}
	

	.tbl input[type="text"], .tbl input[type="tel"], .tbl input[type="email"],  .tbl input[type="password"], .tbl textarea { padding: 10px 10px;  font-size: 12px;  }
	.over_tbl {position:relative; overflow:hidden; padding-top:24px;}
	.over_tbl:before {content:"\f0a6 \ 좌우로 스크롤해주세요."; position:absolute; top:0; right:0; font-family:"Font Awesome 5 Free"; font-weight:900;}
	.over_tbl > div {overflow:auto;}
	.over_tbl > div table {width:767px;}

	.tbl.mo_break_tbl table,
	.tbl.mo_break_tbl thead,
	.tbl.mo_break_tbl tbody,
	.tbl.mo_break_tbl th,
	.tbl.mo_break_tbl td {display:block;}
	.tbl.mo_break_tbl tr {display:flex; flex-wrap:wrap;}
	.tbl.mo_break_tbl th {width:30%;}
	.tbl.mo_break_tbl td {width:70%;}
	.tbl.mo_break_tbl td img {max-height:25px;}
	.tbl th, .tbl td { font-size:12px; line-height:16px;  padding:5px 5px; text-align: center !important;}

	.board_bottom .btns { margin-top:30px; }
	.board_bottom  .btns.tac .btn {font-size:13px; margin:0 1px; height:30px; line-height:30px; border-radius: 15px;}

	.fancy_pop .title {font-size:19x; line-height:50px; padding:0 10px;}
	.fancy_pop .inbox {padding:0px 0px; font-size:12px;}
	.fancy_pop .tbl td.tal {padding:0 10px;}
	.fancybox-close {width:50px; height:50px;}
	.fancybox-close:before,
	.fancybox-close:after {width:30px; margin-left:-15px;}

	.jq_tab li {padding:10px 0;}
	.jq_tab li {font-size:10px; line-height:20px; padding:5px 0;}
/* 마이페이지 */
	.mypage .my_top {padding:20px;}
	.mypage .my_top .pic {width:100px; height:135px;}
	.mypage .my_top .txt {width:calc(100% - 100px); padding-left:10px;}
	.mypage .my_top .btn {position:relative; width:100%; height:40px; line-height:38px; right:0; display:block; transform:translate(0,0); margin-top:10px;}
	.mypage .my_links {padding:30px 0 40px; gap:40px;}
	.mypage .my_board_wrap dl {width:100%;}

	.lecture_tabs { position:relative; display:block; margin-bottom:20px; width:100%;}
	.lecture_tabs li{ width:40%;}
	.lecture_tabs li a {font-size:15px; line-height:33px; height:35px; width:100%;}

	.lecture_problem li {font-size:15px;     line-height: 1.5em;}
	.lecture_problem li .select_radio .select {padding-left:25px; font-size:15px; line-height:20px; margin-top:15px;}
	.lecture_problem li .select_ox .select i {font-size:23px; line-height:38px; height:50px; width:70px; }
	.cta-btn-main, .cta-btn-sub{font-size: 14px; padding: 10px 30px;}
	.hd_pops {top:50px !important; left:1% !important; max-width:98%;}
	.hd_pops_con {width:100% !important; height:auto !important;}
}
@media screen and (max-width:424px){
	.menu-toggle{top:15px;}
	.nav-container .top.active{right:80px;}
	.page-header {padding:40px 0;}
	.page-header h1{ font-size: 2.0rem;}
	.page-header h4{ font-size: 1.0rem;}

	.jq_tab.set4 li {width:50%;}
	.info-content h3, .stit {
		font-size: 1.2rem;  margin: 20px 0 10px 0;     padding-left: 15px;  
	}
	.status-grid {
		grid-template-columns: 1fr; /* 나의 교육현황 세로 정렬 */
		margin-bottom: 1rem;
	}
	.status-box {padding:10px 10px;}
	.status-box span{display:inline-block; padding:0 10px;}

}
