/* common form */
::placeholder,
::-webkit-input-placeholder,
::-ms-input-placeholder {font-weight: 400; color: #333;}

label { vertical-align: middle;}
label input { vertical-align: middle;}
input.w100 {width: 100%;}
input.w80 {width: 80%;}
input.w60 {width: 60%;}
input.w50 {width: 50%;}
input.w40 {width: 40%;}
input.w30 {width: 30%;}
input.w20 {width: 20%;}
input.mx-w5 {width: 100%; max-width: 5rem;}
input.mx-w10 {width: 100%; max-width: 10rem;}
input.mx-w20 {width: 100%; max-width: 20rem;}
input.mx-w30 {width: 100%; max-width: 30rem;}
input.mx-w40 {width: 100%; max-width: 40rem;}

/* 들여쓰기 */
.indent {margin-left: 1.2rem;}
.font_nanum {font-family: 'NanumGothic' !important; font-size: 0.95em !important; font-weight: inherit !important;}

/* 박스 스타일 : 게시판 머리글 */
.box_st5 {position: relative; border: 2px solid #E6E5ED; background: #fff;}
.box_st5:before {content: ''; position: absolute; top: -2px; left: -2px; width: 50px; height: 50px; border-top: 4px solid #3F4E81; border-left: 4px solid #3F4E81;}
.box_st5:after {content: ''; position: absolute; bottom: -2px; right: -2px; width: 50px; height: 50px; border-bottom: 4px solid #6C8CF4; border-right: 4px solid #6C8CF4;}
.box_st_ico {position: relative; min-height: 4.4rem;}
.box_st_ico .ico_boxImg {position: absolute; left: 0; top: 0;}

/* 텍스트 */
.oneTpye { color: #DB2D2D !important; }
.twoTpye { color: #24477C !important; }
p.areaTxt { font-size: 0.9rem; font-weight: 400; color: #000; line-height: 1.5; word-break: keep-all; }

/* 타이틀(공통) */
[class^='titT'] {font-size: 1.1rem;}
h3[class^='tit'] {margin-top: 3rem; line-height: 1.5; font-weight: bold;}
[class^="box_st"] [class^='tit']:nth-of-type(1) {margin-top: 0;}
h3[class^='tit'][class*='1'] + h4[class^='tit'][class*='2'] {margin-top: 1.25rem;}
.tab_st3 + h3[class^="tit"],
h3[class^="tit"]:first-of-type {margin-top: 0;}
div + h3[class^='tit'], p + h3[class^='tit'] {margin-top: 3rem !important;}
h4[class^='tit'] {margin-top: 2.5rem; line-height: 1.3; font-weight: bold;}
h4[class^='tit']:nth-of-type(1) {margin-top: 0;}
h4[class^='tit'][class*='2'] + h5[class^='tit'][class*='3'] {margin-top: 0.5rem;}
*:not(h3) + h4[class^='tit'] {margin-top: 1.5rem !important;}
h5[class^='tit'] {margin-top: 2rem; line-height: 1.3; font-weight: bold;}
h5[class^='tit']:nth-of-type(1) {margin-top: 0;}
h5[class^='tit'][class*='3'] + h6[class^='tit'][class*='4'] {margin-top: 0.5rem;}
*:not(h4) + h5[class^='tit'] {margin-top: 1rem !important;}
.box_st2 h4[class^='tit']:first-of-type {margin-top: 0 !important;}
.box_st2 h5[class^='tit']:first-of-type {margin-top: 0 !important;}

/* 타이틀(텍스트 타입) */
.tit1 {position: relative; margin-top: 2rem; font-size: 1.4rem; color: #000; padding-top: 0.75rem; }
.tit1::before { position: absolute; content: ""; top: 0; left: 0; width: 1.6rem; height: 0.5rem; border-radius: 0.25rem; background: linear-gradient(to right, #4465D4, #8EA9FF); }  
.tit2 {position: relative; margin-top: 1.5rem; font-size: 1.2rem; color: #3F4E81; }
.tit3 {position: relative; margin-top: 1rem; font-size: 1.1rem; color: #222222;}
[class^="tit"]:not([class^="title_"]) {margin-bottom: 0.55rem;}
[class^="tit3"]:not([class^="title_"]) {margin-bottom: 0.35rem;}

/* 블릿 */
.bu_st1,
.list_st1 > li {position: relative; margin-top: 0.45rem; padding-left: 0.65rem; color: #222;line-height: 1.5;} 
.bu_st2,
.list_st2 > li {position: relative; margin-top: 0.25rem; padding-left: 0.65rem; color: #222;line-height: 1.5;} 

.bu_st3,
.bu_st4,
.list_st3 > li,
.list_st4 > li {position: relative; margin-top: 0.25rem; font-size: 0.75rem; padding-left: 0.5rem; color: #333;line-height: 1.5;} 

.bu_st1:before,
.list_st1 > li:before {position: absolute; top: 0.45rem; left: 0; width: 6px; height: 6px; border-radius: 50%; background: #3F4E81; content: '';}
.bu_st2:before,
.list_st2 > li:before {position: absolute; top: 0.55rem; left: 0; width: 0.35rem; height: 2px; background: #666665; content: '';}
.bu_st3:before,
.list_st3 > li:before {position: absolute; top: 0.45rem; left: 0; width: 4px; height: 4px; border-radius: 50%; background: #666665; content: '';}
.bu_st4:before,
.list_st4 > li:before {position: absolute; top: 0.5rem; left: 0; width: 0.3rem; height: 2px; background: #888; content: '';}

[class^="list_st"] .btns { margin: 1rem 0 !important; }

/* P : 블릿 타입 */
.bu_st2 {margin-left: 0.5rem; }
.bu_st3 {margin-left: 1rem; color: #555555;}
.bu_st4 {margin-left: 1.5rem; color: #555555;}

/* 리스트 : 블릿 타입 */
.list_st3 > li,
.list_st4 > li { color: #555555;}

li.bu_none:before {display: none !important;}

/* 리스트 : 텍스트 타입 */
.list_stT1 > li {margin-top: 0.25rem; font-size: 0.8rem; color: #333;}
.list_stT1 ol li,
.list_stT1 ul li {padding-left: 10px;}
.list_stT1 li ul[class^="list_st"] {margin-left: 10px;}

/* 리스트 : 순차적 리스트 타입 */
[class^="list_ol"] > li { line-height: 1.5; color: #222; font-size: 0.8rem; }
.list_ol1 > li .list_ol2,
.list_ol1 > li .list_ol3 { margin-top: 0.5rem; }
.list_ol1 > li {position: relative; margin-top: 0.25rem; padding-left: 1.45rem; }
.list_ol1 > li > span.num {position: absolute; top: 0; left: 0;font-size: 0.75rem; font-weight: bold; color: #3F4E81; align-items: center; justify-content: center; display: flex; line-height: 1.2rem; letter-spacing: 0; } 
.list_ol2 > li {position: relative; margin-top: 0.25rem; padding-left: 1.6rem; }
.list_ol2 > li > span.num {position: absolute; top:0; left: 0; width: 1.2rem; height: 1.2rem; display: flex; align-items: center; justify-content: center; text-align: center; font-size: 0.6rem; font-weight: bold; color: #fff; background: #6C8CF4; border-radius: 50%; font-family: 'GmarketSans'; letter-spacing: 0; } 
.list_ol3 > li {position: relative; margin-top: 0.2rem; padding-left: 1.6rem; }
.list_ol3 > li > span.num {position: absolute; top: 0; left: 0; width: 1.2rem; height: 1.2rem; display: flex; align-items: center; justify-content: center; text-align: center; font-size: 0.6rem; font-weight: 600; color: #666665; background: #D4DEFF; border-radius: 50%; letter-spacing: 0; } 


/* 리스트 : 가로 나열 */
ul[class*='li_w'],
ol[class*='li_w'] {overflow: hidden;}
.li_w50 > li {float: left; width: 50%;}
.li_w30 > li {float: left; width: 33%;}
.li_w25 > li {float: left; width: 25%;}
.li_w20 > li {float: left; width: 20%;}

/* 텍스트 요소 : 폰트컬러 타입 */
.pc_gray {color: #666665 !important;}
.pc_gray_v2 {color: #888888 !important;}
.pc_black {color: #000 !important;}
.pc_black_v2 {color: #222222 !important;}
.pc_black_v3 {color: #333 !important;}
.pc_blue {color: #4F9EEA !important;}
.pc_blue_v2 {color: #425FC0 !important;}
.pc_red {color: #DE001E !important;}
.pc_navy {color: #3F4E81 !important;}
.pc_org {color: #FF7052 !important;}
.pc_org_v2 {color: #FF8437 !important;}
.pc_purp {color: #9D64DA !important;}
.pc_pink {color: #EE5D91 !important;}
.pc_pink_v2 {color: #F96099 !important;}
.pc_mint {color: #6C8CF4 !important;}

/* 텍스트 요소 : 텍스트 배경색 */
.bg_blue,
.bg_org,
.bg_purple,
.bg_green {display: inline-block; padding: 0.2rem 0.8rem !important; border-radius: 0.25rem; }
.bg_blue {background: #ebf6fc !important; color: #1a76d5; }
.bg_org {background: #fff6db !important; color: #e86634; }
.bg_green {background: #dff9f2 !important; color: #008964; }
.bg_purple {background: #f2e8ff !important; color: #501bc2; }

/* 텍스트 요소 : 강조 타입 */
.Tline_b {text-decoration: underline !important;}
.f_weightB {font-weight: bold;}
.font_Fr {font-weight: 400 !important;}
.font_Fm {font-weight: 600 !important;}
.font_Fb {font-weight: 700 !important;}

/* 텍스트 요소 : 폰트 크기 */
.fs12 {font-size: 0.6rem !important;}
.fs13 {font-size: 0.65rem !important;}
.fs14 {font-size: 0.7rem !important;}
.fs16 {font-size: 0.8rem !important;}
.fs18 {font-size: 0.9rem !important;}
.fs20 {font-size: 1rem !important;}
.fs22 {font-size: 1.1rem !important;}
.fs24 {font-size: 1.2rem !important;}
.fs26 {font-size: 1.3rem !important;}

/* 텍스트 요소 : 링크 타입 */
a.bu_link,
a.bu_linkL,
a.bu_mail,
a.bu_mailL,
a.bu_dow,
a.bu_downL,
a.bu_tel,
a.bu_telL,
a.bu_down {position: relative; display: inline-block; word-break: break-all; line-height: 1.5; } 
.txt_p > [class^="bu_"],
[class^="list_st"] > li > [class^="bu_"] {margin: 0 0.25rem;}
a.bu_mail { text-decoration: none; }
a.bu_mail::before { position: absolute; content: ""; height: 1px; width: 100%; background: #091f46; left: 0; bottom: 3px; }
a.bu_link::after,
a.bu_linkL:before,
a.bu_mail:after,
a.bu_mailL:before,
a.bu_down:after,
a.bu_downL:before,
a.bu_tel:after,
a.bu_telL:before {display: inline-block; padding-left: 0.3rem; font-family: 'remixicon'; color: #0953C7; }
a.bu_link {color: #0953c7; font-weight: 500; }
/* a.bu_link:after {background: #091f46;} */
a.bu_link:hover,
a.bu_link:focus { text-decoration: underline; }
a.bu_link::after {content: "\ecaf"; }
a.bu_mail {color: #091f46; }
/* a.bu_mail:after {background: #091f46;} */
a.bu_mail:after {content: "\ea07";}
a.bu_down {color: #091f46;}
/* a.bu_down:after {background: #091f46;} */
a.bu_down:after {content: "\eb7c";}
a.bu_tel {color: #091f46;}
/* a.bu_tel:after {background: #091f46;} */
a.bu_tel:after {content: "\e9d3";}

/* 텍스트 요소 : 주의&경고&말풍선 타입 */
div + .bu_atte, 
div + .bu_wnrn, 
div + .bu_ment, 
table + .bu_atte, 
table + .bu_wnrn, 
table + .bu_ment, 
ul + .bu_atte, 
ul + .bu_wnrn, 
ul + .bu_ment {margin-top: 0.6rem; line-height: 1.5; color: #222; }
.bu_atte {position: relative; margin-top: 0.25rem; padding-left: 0.95rem; }
.bu_atte:before {position: absolute; top: 0; left: 0; display: block; content: "※"; color: #333333; line-height: 1.1rem; font-family: 'SCDream'; }
.bu_info,
.bu_wnrn {position: relative; padding-left: 1.3rem; line-height: 1.5; color: #222; font-size: 0.8rem; } 
.bu_info:before,
.bu_wnrn::before { content: "\eca1"; position: absolute; left: 0; top: 0.1rem; line-height: 1; font-family: 'remixicon'; color: #3F4E81; font-size: 1rem; font-weight: 400 !important; }
.bu_info:before { color: #FF79A9 !important; }

.bu_info.font_Fr:before,
.bu_wnrn.font_Fr::before,
.bu_info.font_Fm:before,
.bu_wnrn.font_Fm::before { content: "\eca0"; }

/* 테이블 : 테이블 기본 타입 */
div[class*='tbl_st'] {position: relative; margin-top: 0.75rem; width: 100%; background: #fff; overflow: hidden; color: #222; }
div[class*='tbl_st'] > table {position: relative; margin-left: -1px; width: 100%; text-align: center; border-top: 2px solid #000000; -webkit-overflow-scrolling: touch; word-break: keep-all; /* word-break: break-all; 강제 줄바꿈 */ }
div[class*='tbl_st'] > table thead th {padding: 0.45rem 0.5rem; line-height: 1.5; vertical-align: middle; font-weight: 600; background: #fff; border-bottom: 1px solid #888; border-left: 1px solid #D5D5D5; font-size: 0.9rem; }
div[class*='tbl_st'] > table tbody td,
div[class*='tbl_st'] > table tbody th {padding: 0.75rem 1rem; line-height: 1.5; vertical-align: middle; background: #fff; border-bottom: 1px solid #D5D5D5; border-left: 1px solid #D5D5D5; word-break: break-all; font-size: 0.85rem; }
div[class*='tbl_st'] > table tbody th { font-weight: 600; font-size: 0.9rem; background: #FBFBFB; }

/* 테이블 내 인풋 요소 */
div[class*='tbl_st'] .inputBox { display: flex; flex-wrap: wrap; gap: 0.5rem; }

/* 테이블 필수 입력요소 */
div[class*='tbl_st'] em.chkIco { position: relative; top: -0.25rem; color: #dd3444; margin: 0 0.15rem; }

/* 테이블 : PC 스크롤 */
div[class*='tbl_st'].scroll_wide {overflow: auto;}

/* 테이블 : 테이블2 라인 타입 */
.tbl_st2 > table {margin-left: 0 !important; border-right: 1px solid #dad8d9;}

/* 테이블 - form */
table .btns { margin: 0 !important; }
table a[class^='btn_'] {margin: 0; padding: 0.35rem 0.5rem; font-size: 0.75rem; min-width: 6rem; border-width: 1px !important; }
table a[class^='btn_'].btnIco > i { margin-left: 1rem; }
table a[class^='btn_'].btnMini { width: 1.4rem !important; height: 1.4rem !important; min-width: auto !important; text-indent: -9999px !important; font-size: 0 !important; padding: 0 !important; align-items: center; justify-content: center; border-radius: 0.2rem; }
table a[class^='btn_'].btnMini > i { font-size: 0.75rem !important; text-indent: 0 !important; line-height: 1; }

/* 라디오 박스 스타일 */
.rdoBox label { display: flex; align-items: center; line-height: 1rem; gap: 0.3rem; padding-left: 1.15rem; position: relative; color: #000000; margin: 0; }
.rdoBox ul { display: flex; flex-wrap: wrap; gap: 0.5rem 0.75rem; }

/* 기존 input[type="radio"] 설정을 아래와 같이 수정/보완 */
input[type="radio"] {
    position: relative; /* absolute에서 relative로 변경하여 흐름에 맞게 배치 */
    top: 0; /* 강제 위치 조정 해제 */
    display: inline-block;
    vertical-align: middle;
    appearance: none;
    -webkit-appearance: none;
    width: 1.1rem; /* 크기를 조금 키우면 클릭이 편해집니다 */
    height: 1.1rem !important;
    border: 1px solid #BDBDBD;
    border-radius: 50%;
    background: #fff;
    cursor: pointer;
    margin: 0 0.3rem 0 0; /* 라벨과의 간격 확보 */
}

/* 체크되었을 때 내부 점(::before) 위치 중앙 정렬 보정 */
input[type="radio"]::before {
    position: absolute;
    content: "";
    border-radius: 50%;
    background-color: #000;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 0.6rem;
    height: 0.6rem;
    opacity: 0;
    visibility: hidden;
}

/* 라벨과 인풋이 한 줄에 잘 붙도록 설정 */
td.al label {
    display: inline-flex;
    align-items: center;
    margin-right: 1.2rem; /* 항목 간 간격 */
    cursor: pointer;
    vertical-align: middle;
    line-height: 1.8rem; /* 인풋 높이와 맞춰서 정렬 */
}
.rdoBox.ac ul { justify-content: center; }
.rdoBox.ar ul { justify-content: end; }

.rdo_w80 .rdoBox ul li { min-width: 4rem; }

input[type="radio"] + label { color: #000000; }
input[type='radio']:checked { border-color:#000000 !important; }
input[type="radio"]:checked::before { opacity: 1; visibility: visible; }
input[type="radio"]:focus { outline: 1px solid #000; outline-offset: 1px; }

/* 체크박스 커스텀 스타일 */
.chkBox ul { display: flex; flex-wrap: wrap; gap: 0.5rem 0.9rem; }
.chkBox input[type="checkbox"] { position: absolute; width: 1px; height: 1px; margin: -1px; border: 0; padding: 0; clip: rect(0 0 0 0); clip-path: inset(50%); overflow: hidden; }
.chkBox label { width: 100%; display: flex; gap: 0.25rem; line-height: 1rem; margin: 0; }
.chkBox .custom_checkbox { width: 1rem; height: 1rem; display: inline-flex; align-items: center; justify-content: center; position: relative; cursor: pointer; position: relative; }
.chkBox .custom_checkbox::before { position: absolute; content: "\eb85"; left: 50%; top: 50%; transform: translate(-50%,-50%); color: #666665; font-size: 0.95rem; font-family: 'remixicon'; line-height: 1; }
.chkBox .txt_lb { color: #333333; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.chkBox input[type="checkbox"]:checked ~ .txt_lb { font-weight: 600; }
.chkBox input[type="checkbox"]:checked + .custom_checkbox::before { content: "\eb82"; color: #3F4E81; }

/* 테이블 - 기타 */
.tbl_utile {margin-top: -20px; line-height: 16px; text-align: right; font-size: 0.75rem;}

/* form */
select, input:not(input[type^='checkbox'], input[type^='radio']) {padding: 0 0.7rem; height: 1.8rem; line-height: 1.8rem; color: #666665; border: 1px solid #888; min-width: 8.5rem; border-radius: 0.2rem; font-size: 0.75rem; }
select { padding: 0 2rem 0 0.75rem; -o-appearance: none; -webkit-appearance: none; -moz-appearance: none; appearance: none; background: url('/images/web/forteacher/con_com/selArrow.png')no-repeat right 0.85rem center; }

input[type="date"] { position: relative; }
input[type="date"]:after { position: absolute; content: "\eb21"; font-family: 'remixicon'; width: 1rem; height: 1rem; right: 0.5rem; top: 50%; transform: translateY(-50%); font-size: 1rem; color: #555555; display: flex; align-items: center; justify-content: center; }
input[type="date"]::-webkit-clear-button,
input[type="date"]::-webkit-inner-spin-button {  display: none; } 
input[type="date"]::-webkit-calendar-picker-indicator{ opacity:0; z-index: 1; cursor: pointer; }

/* 유틸 */
/* td 정렬사용 */
.tb_txtL td {text-align: left;}
.tb_txtC td {text-align: center;}
.tb_txtR td {text-align: right;}

/* tr 색상 */
.tbl_bg_bl,
.tbl_bg_bl th {color: #111; background-color: #e5eef6 !important;}/* 블루 */
.tbl_bg_ye,
.tbl_bg_ye th {color: #111; background-color: #fff4e6 !important;}/* 옐로우 */
.tbl_bg_re,
.tbl_bg_re th {color: #111; background-color: #ffe1e1 !important;}/* 레드 */
.tbl_bg_gr,
.tbl_bg_gr th {color: #111; background-color: #eefff7 !important;}/* 그린 */
.tbl_bg_org,
.tbl_bg_org th {color: #111; background-color: #ffe0d2 !important;}/* 오렌지 */
.tbl_l {border: 2px solid #333 !important;}
.tbl_L_t {border-top: 2px solid #333 !important;}
.tbl_L_b {border-bottom: 2px solid #333 !important;}
.tbl_L_l {border-left: 2px solid #333 !important;}
.tbl_Lbl {border: 2px solid #014d9b !important;}
.tbl_Lbl_t {border-top: 2px solid #014d9b !important;}
.tbl_Lbl_b {border-bottom: 2px solid #014d9b !important;}
.tbl_Lbl_l {border-left: 2px solid #014d9b !important;}
.tbl_Lre {border: 2px solid #ff6363 !important;}
.tbl_Lre_t {border-top: 2px solid #ff6363 !important;}
.tbl_Lre_b {border-bottom: 2px solid #ff6363 !important;}
.tbl_Lre_l {border-left: 2px solid #ff6363 !important;}
.tbl_Lgr {border: 2px solid #099e5e !important;}
.tbl_Lgr_t {border-top: 2px solid #099e5e !important;}
.tbl_Lgr_b {border-bottom: 2px solid #099e5e !important;}
.tbl_Lgr_l {border-left: 2px solid #099e5e !important;}
.tbl_Lye {border: 2px solid #f9ba00 !important;}
.tbl_Lye_t {border-top: 2px solid #f9ba00 !important;}
.tbl_Lye_b {border-bottom: 2px solid #f9ba00 !important;}
.tbl_Lye_l {border-left: 2px solid #f9ba00 !important;}

/* 선 없음 : 테이블 좌, 우 선 없는 테이블 사용시 필요 */
.tbl_LT_none {border-top: none !important;}
.tbl_LB_none {border-bottom: none !important;}
.tbl_LL_none {border-left: none !important;}
.tbl_LR_none {border-right: none !important;}

/* 박스 : 박스 기본 타입 */
[class^="box_st"] {position: relative; z-index: 0; font-size: 0.8rem; color: #222; line-height: 1.5; } 
[class^="box_st"] .boxTit { font-size: 1.1rem; font-weight: bold; color: #222; margin-bottom: 0.4rem; }
[class^="box_st"].box_ico .boxTit { font-size: 1.2rem; font-weight: bold; color: #3F4E81; margin-bottom: 0.4rem; }
[class^="box_st"] .inner { padding: 1.5rem 2rem; position: relative; border-radius: 1rem; margin-bottom: 2rem; }

.box_st1 { position: relative;}  
.box_st1 .inner { background: #FFFFFF; border: 1px solid #D5D5D5; }
.box_st2 { position: relative; } 
.box_st2 .inner { background: linear-gradient(to right, #ffeef2, #fff4e9); }
.box_st3 { position: relative; }
.box_st3 .inner { background: #F9F9F9; border: 1px solid #D4D4D4; }

[class^="box_st"] .btns {margin: 1.2rem 0 0 0; padding-top: 1rem; text-align: right; border-top: 1px solid #ccc;}
[class^="box_st"] .btns [class^="btn"] {padding: 0.5rem 0.9rem; font-size: 0.8rem;}
[class^="box_st"].box_ico .inner { position: relative; padding: 1.75rem 3rem 1.75rem 8.35rem; border-radius: 1rem 1rem 3rem 1rem; border: 1px solid transparent; background: linear-gradient(#fff, #fff) padding-box, linear-gradient(to right, #fd89aa, #6685eb) border-box; z-index: 1; overflow: hidden; }
[class^="box_st"].box_ico .inner::before {  content: ""; position: absolute; border-radius: 50%; width: 11rem; height: 11rem; background: #fff6fa; left: -4.5rem; top: -5.2rem; z-index: -1; }
[class^="box_st"].box_ico .ico {position: absolute; top: 1.75rem; left: 3rem; display: flex; align-items: center; justify-content: center; width: 3.6rem; height: 3.6rem; height: auto; }
[class^="box_st"].box_ico .ico img { max-width: 100%; }
.box_st_img {padding: 1rem; text-align: center; border: 2px dotted #e7e7e7; background: #fff;}
.box_st_img img {max-width: 100%;}

/* box_st_ico 스타일 추가 */
.box_st_ico .inner {position:relative; min-height:76px; padding-left:7.5rem;}
.box_st_ico .ico_boxImg {position:absolute; left:1.5rem; top:1.15rem;}

.boxImg { display: flex; gap: 0.5rem 2rem; flex-wrap: wrap; }

/* 박스 : 정렬 */
.box_wrap {display: flex; flex-wrap: wrap; margin-left: -0.3rem; width: calc(100% + 0.6rem);}
.box_wrap > [class^="box_st"] {margin: 0.3rem; width: calc(25% - 0.6rem);}
.box_wrap.box_w30 > [class^="box_st"] {width: calc(33.33% - 0.6rem);}
.box_wrap.box_w50 > [class^="box_st"] {width: calc(50% - 0.6rem);}

/* 기본 박스 : 검색 */
[class^="box_st"] .search_wrap {overflow: hidden;}
[class^="box_st"] .search_wrap input {float: left; padding: 0 0.5rem; width: calc(100% - 110px); height: 45px; border: 1px solid #e7e7e7; border-radius: 0;}
[class^="box_st"] .search_wrap .btn_style3 {float: left; margin: 0 0 0 10px; padding: 0; width: 100px; line-height: 45px; text-align: center;}

/* 탭 : 공통 */
div[class^="tab_st"] {position: relative; margin-bottom: 2.5rem; font-weight: 500;}
div[class^="tab_st"] > .select {display: none;}

/* 탭 : 1차 탭 */
.tab_st1 ul {display: flex; flex-wrap: wrap; width: 100%; overflow: hidden; border: 1px solid #D5D5D5; border-radius: 0.3rem; }
.tab_st1 li { width: 20%; position: relative; display: flex; }
.tab_st1 li a { position: relative; display: block; text-align: center;  padding: 0.6rem 1rem; background: #fff; font-size: 1rem; color: #222; width: 100%; border-right: 1px solid #D5D5D5; }
.tab_st1 li:nth-child(5n) a { border-right: none; }
.tab_st1 li:nth-child(n+6) a { border-top: 1px solid #d5d5d5; }
.tab_st1 li a::before { position: absolute; content: ""; left: -1px; top: -1px; width: calc(100% + 1px); height: calc(100% + 2px); background-color: #3F4E81; opacity: 0; visibility: hidden; z-index: -1; }
.tab_st1 li a:after { position: absolute; content: ""; height: 1px; width: calc(100% + 1px); background: #d5d5d5; bottom: -1px; left: -1px; }
/* 탭 : 1차 탭  : active */
.tab_st1 li a:hover,
.tab_st1 li a:focus { background-color: #F0F4FF; }
.tab_st1 li.on a { color: #fff; font-weight: bold; z-index: 1; }
.tab_st1 li.on a::before { opacity: 1; visibility: visible; }

/* 탭 : 슬라이드 탭 */
.tab_v2 { width: 100%; overflow: hidden; position: relative; border: 1px solid #D7D9DD; border-radius: 1.5rem; background: #fbfbfb; padding: 0.6rem 7rem; }
.tab_v2 > button { display: none; }
.tab_v2 .swiper { width: 100%; overflow: hidden; }
.tab_v2 .swiper-button-prev,
.tab_v2 .swiper-button-next { background: none; margin: 0 !important; padding: 0 !important; height: auto; width: auto; position: unset !important; background-image: none !important; }
.tab_v2.actSwiper > button { position: absolute !important; top: 50% !important; transform: translateY(-50%) !important; display: inline-flex; align-items: center; justify-content: center; border-radius: 50%; background: #fff; width: 1.7rem; height: 1.7rem; border: 1px solid #dde2ed; color: #000000; font-size: 0.9rem; bottom: auto !important; }
.tab_v2.actSwiper > button.swiper-button-prev { left: 0.6rem !important; right: auto !important; }
.tab_v2.actSwiper > button.swiper-button-next { right: 0.6rem !important; left: auto !important; }
.tab_v2[class*="Tab_N"] .swiper-wrapper { display: flex; align-items: center; }
.tab_v2.Tab_N2 .swiper-wrapper .swiper-slide { width: 50%; }
.tab_v2.Tab_N3 .swiper-wrapper .swiper-slide { width: calc(100% / 3); }
.tab_v2.Tab_N4 .swiper-wrapper .swiper-slide { width: 25%; }
.tab_v2.Tab_N5 .swiper-wrapper .swiper-slide { width: 20%; }
.tab_v2.Tab_N6 .swiper-wrapper .swiper-slide { width: calc(100% / 6); }
.tab_v2.Tab_N7 .swiper-wrapper .swiper-slide { width: calc(100% / 7); }
.tab_v2 .swiper-wrapper .swiper-slide { display: flex; align-items: center; justify-content: center; }
.tab_v2 .swiper-wrapper .swiper-slide a { display: inline-block; max-width: 100%; overflow: hidden; }
.tab_v2 .swiper-wrapper .swiper-slide a span { position: relative; padding-left: 0.7rem; color: #333; font-size: 0.9rem; line-height: 1.75rem; display: block; text-align: start; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; padding-right: 0.1rem; }
.tab_v2 .swiper-wrapper .swiper-slide a span::before { position: absolute; content: ""; border-radius: 50%; width: 0.25rem; height: 0.25rem; background: #888; left: 0; top: 0.75rem; }
.tab_v2 .swiper-wrapper .swiper-slide a.current span { color: #3F4E81; padding-left: 1.25rem; font-weight: bold; }
.tab_v2 .swiper-wrapper .swiper-slide a.current span::before { content: "\eb78"; background: none !important; width: auto; height: auto; color: #3f4e81; top: 0; font-family: 'remixicon'; font-weight: 400 !important; }
.tab_v2 .swiper-wrapper .swiper-slide a:hover span,
.tab_v2 .swiper-wrapper .swiper-slide a:focus span { color: #222; }
.tab_v2 .swiper-wrapper .swiper-slide a:hover span::before,
.tab_v2 .swiper-wrapper .swiper-slide a:focus span::before { background: #222; }

/* 탭 : 개수 지정 */
div[class^="tab_st"][class*="Tab_w"] ul {flex-wrap: wrap;}
div.tab_st1.Tab_w50 li {width: 50%;}
.tab_st1.Tab_w50 li a { border-right: 1px solid #d5d5d5 !important; }
.tab_st1.Tab_w50 li:nth-child(2n) a { border-right: none !important; }
.tab_st1.Tab_w50 li:nth-child(n+3) a { border-top: 1px solid #d5d5d5 !important; }
div.tab_st1.Tab_w30 li {width: calc(100% / 3);}
.tab_st1.Tab_w30 li a { border-right: 1px solid #d5d5d5 !important; }
.tab_st1.Tab_w30 li:nth-child(3n) a { border-right: none !important; }
.tab_st1.Tab_w30 li:nth-child(n+4) a { border-top: 1px solid #d5d5d5 !important; }
div.tab_st1.Tab_w25 li {width: 25%;}
.tab_st1.Tab_w25 li a { border-right: 1px solid #d5d5d5 !important; }
.tab_st1.Tab_w25 li:nth-child(4n) a { border-right: none !important; }
.tab_st1.Tab_w25 li:nth-child(n+5) a { border-top: 1px solid #d5d5d5 !important; }


/* 탭 : 반응형 */
.reactTab {display: block;}
.reactTab a.selectTab {display: none;}

/* 버튼 : 버튼들 감싸는 레이아웃 */
.btns {margin: 2.3rem 0 0; display: flex; flex-wrap: wrap; gap: 0.5rem; align-items: center; }

.btns.al { justify-content: start; }
.btns.ac { justify-content: center; }
.btns.ar { justify-content: end; }

/* 버튼 : 기본 */
.btn_bl { border-color: #1a76d5 !important;}
.btn_bl2 { border-color: #edf7ff !important;}
.btn_navy { border-color: #1c388d !important;}
.btn_navy2 { border-color: #091f46 !important;}
.btn_gr { border-color: #3F4E81 !important; } 
.btn_gray { border-color: #555555 !important;} 
.btn_grn { border-color: #dff9f2 !important;} 
.btn_red { border-color: #dc3445 !important;} 
.btn_dGrn { border-color: #008494 !important; }
.btn_Lgrn { border-color: #85bc20 !important;} 
.btn_purple { border-color: #993f98 !important;} 
.btn_org { border-color: #FF7052 !important;} 
.btn_blk { border-color: #333 !important;}
.btn_Lorg { border-color: #faa618 !important;}
.btn_pnk { border-color: #EE5D91 !important;}
.btn_gray:hover,
.btn_gray:focus { color: #fff !important; background: #555555 !important; font-weight: 600; }
.btn_pnk:hover,
.btn_pnk:focus { color: #fff !important; background: #EE5D91 !important; font-weight: 600; }
.btn_dGrn:hover,
.btn_dGrn:focus { color: #fff !important; background: #dff9f2 !important; font-weight: 600; }
.btn_bl:hover,
.btn_bl:focus { color: #fff !important; background: #1a76d5 !important; font-weight: 600; }
.btn_bl2:hover,
.btn_bl2:focus { color: #fff !important; background: #edf7ff !important; font-weight: 600; }
.btn_navy:hover,
.btn_navy:focus { color: #fff !important; background: #1c388d !important; font-weight: 600; }
.btn_navy2:hover,
.btn_navy2:focus { color: #fff !important; background: #091f46 !important; font-weight: 600; }
.btn_gr:hover,
.btn_gr:focus { color: #fff !important; background: #3F4E81 !important; font-weight: 600; }
.btn_grn:hover,
.btn_grn:focus { color: #fff !important; background: #008494 !important; font-weight: 600; }
.btn_red:hover,
.btn_red:focus { color: #fff !important; background: #dc3445 !important; font-weight: 600; }
.btn_Lgrn:hover,
.btn_Lgrn:focus { color: #fff !important; background: #85bc20 !important; font-weight: 600; }
.btn_purple:hover,
.btn_purple:focus { color: #fff !important; background: #993f98 !important; font-weight: 600; }
.btn_org:hover,
.btn_org:focus { color: #fff !important; background: #FF7052 !important; font-weight: 600; }
.btn_Lorg:hover,
.btn_Lorg:focus { color: #fff !important; background: #faa618 !important;  font-weight: 600;}
.btn_blk:hover,
.btn_blk:focus { color: #fff !important; background: #333 !important; font-weight: 600; }
.btn_gray,
.btn_pnk,
.btn_nUse,
.btn_Lorg,
.btn_blk,
.btn_bl,
.btn_bl2,
.btn_navy,
.btn_navy2,
.btn_gr,
.btn_red,
.btn_grn,
.btn_purple,
.btn_org,
.btn_Lgrn,
.btn_gry,
.btn_dGrn {display: inline-flex; padding: 0.525rem 0.75rem; line-height: 1rem; text-align: center; vertical-align: middle; font-size: 0.8rem; transition: background-color 0.3s ease; background: #fff; border: 2px solid transparent; color: #333; min-width: 8.5rem; justify-content: center; border-radius: 0.1rem; font-weight: 500; border-radius: 0.3rem; }

.btnIco {position: relative; justify-content: space-between !important; }
.btnIco i {padding-left: 1rem; line-height: 1; vertical-align: top; font-size: 0.85rem; display: inline-flex; align-items: center; justify-content: center; font-weight: 400 !important; }

.btn_gr.btnIco { color: #3F4E81; } 
.btn_gray.btnIco { color: #555555; } 
.btn_org.btnIco { color: #FF7052; } 
.btn_blk.btnIco { color: #333; }
.btn_pnk.btnIco { color: #ee5d91; }

/* 버튼 : 게시판 버튼 */
[class^="btn_"].btnIco,
[class^="btn_"].nts { font-weight: 600; }
.btn_gr.nts { border-color: #3F4E81 !important; background: #EFF3FF; color: #3F4E81; } 
.btn_org.nts { border-color: #FF7052 !important; background: #FFEBE6; color: #FF7052; } 
.btn_gray.nts { border-color: #555555 !important; background: #fff; color: #555555; } 
.btn_blk.nts { border-color: #333 !important; background: #F4F4F4; color: #333; }
.btn_pnk.nts { border-color: #EE5D91 !important; background: #FFEDF3; color: #ee5d91; }

/* 버튼 : 파일다운로드 */
.btnFileDwn.w_100 { width: 100%; }
.btnFileDwn { display: flex; width: calc((100% - 1.25rem) / 2); padding: 0.6rem 1rem; border: 1px solid #cccccc; border-radius: 0.5rem; align-items: center; }
.btnFileDwn > p { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; flex: 1; padding: 0 0.5rem; color: #3d3d3d; }
.btnFileDwn > span { border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; color: #fff; background: #1a76d5; font-size: 0.9rem; width: 1.75rem; height: 1.75rem; }
.btnFileDwn > em { display: inline-flex; align-items: center; justify-content: center; background: #fff; border: 1px solid #cccccc; width: 1.5rem; height: 1.5rem; color: #3d3d3d; border-radius: 0.25rem; transition: 0.2s ease-in-out; } 

.btnFileDwn:hover > p,
.btnFileDwn:focus > p { font-weight: bold; }
.btnFileDwn:hover > em,
.btnFileDwn:focus > em { border-color: #1a76d5; background: #1a76d5; color: #fff; }

/* 버튼 : 비활성화 시 */
.btn_nUse { background: #d4d4d7; font-weight: 400; cursor: auto; } 

/* 버튼 : 이전에 쓰던 스타일 추가 */
.btn_line_style1 {display: inline-block; padding: 0.5rem 1rem; font-size: 0.8rem; font-weight: 500; color: #1161bc; border-width: 2px; border-style: solid; border-color: #1161bc;}
.btn_line_style1:hover,
.btn_line_style1:focus {color: #2962a4; border-color: #2962a4;}
.btn_line_style2 {display: inline-block; padding: 0.5rem 1rem; font-size: 0.8rem; font-weight: 500; color: #444; border-width: 2px; border-style: solid; border-color: #444;}
.btn_line_style2:hover,
.btn_line_style2:focus {color: #111; border-color: #111;} 

/* 버튼 : 작은 아이콘 */
[class^='btnMini'] { display: inline-flex; align-items: center; justify-content: center; width: 1.5rem; height: 1.5rem; background: #ededed; border-radius: 0.25rem; color: #3d3d3d; transition: 0.2s ease-in-out; }
[class^='btnMini']:hover,
[class^='btnMini']:focus { color: #fff;  background: #555555; } 

/* 버튼 : 작은버튼 */
a[class^="btn_"].mini,
button[class^="btn_"].mini {padding: 0.1rem 1rem; font-size: 0.75rem; min-width: 5.5rem; }

/* 버튼 : 아이콘만 */
a[class^="btn_"].ico i,
button[class^="btn_"].ico i {padding-left: 0;}

/* 버튼 : 여백 */
/* div + a[class^="btn_"],
table + a[class^="btn_"],
ul + a[class^="btn_"],
p + a[class^="btn_"],
br + a[class^="btn_"] {margin-top: 0.5rem;} */

/* 이미지 사이즈 : 확대보기 */
.rsp_img {position: relative; width: auto; max-width: 100%; line-height: 0; display: flex; align-items: center; justify-content: center; font-size: 0; line-height: 0; border: 1px solid #D5D5D5; border-radius: 1.4rem; padding: 2.25rem 2rem; }
.rsp_img img {max-width: 100%;}
.rsp_img .btn-zoom {position: absolute; right: 1rem; bottom: 1rem; display: block; width: 45px; height: 45px; text-indent: -9999em; background: url('/images/web/forteacher/con_com/rspImg.png') no-repeat; overflow: hidden; z-index: 100; background-size: contain; }

/* 콘텐츠 준비중 */
.Coming_soon {padding: 3.2rem 1rem 3.05rem; text-align: center; border: 1px solid #D5D5D5; overflow: hidden; background: #fff; border-radius: 1.4rem; }
.Coming_soon img {max-width: 15.2rem;}
.Coming_soon span {margin: 1.75rem 0 0.6rem; font-size: 1.4rem; color: #061E4D; display: block; }
.Coming_soon span em {font-weight: 700; position: relative; z-index: 1; }
.Coming_soon span em::before { content: ''; width: 100%; height: 0.6rem; background: #d9edff; position: absolute; bottom: -0.1rem; left: 0; z-index: -1; }
.Coming_soon p {position: relative; color: #333; line-height: 1.5; font-size: 0.85rem; text-align: center; word-break: keep-all; }

/* 라인 */
.line_dot {margin-bottom: 1rem; padding-top: 1rem; border-bottom: 2px dotted #d2d2d2;}
.line_dot_b {border-bottom: 2px dotted #d2d2d2;}
.line_dash {margin-bottom: 1rem; padding-top: 1rem; border-bottom: 1px dashed #d2d2d2;}

/* display */
.disIb {display: inline-block !important;}

/* input select px */
.InpSel_50 {width: 50px !important;}
.InpSel_80 {width: 80px !important;}
.InpSel_100 {width: 100px !important;}
.InpSel_150 {width: 150px !important;}
.InpSel_200 {width: 200px !important;}
.InpSel_250 {width: 250px !important;}
.InpSel_300 {width: 300px !important;}
.InpSel_350 {width: 350px !important;}
.InpSel_400 {width: 400px !important;}
.InpSel_450 {width: 450px !important;}
.InpSel_500 {width: 500px !important;}

/* input select % */
.InpSel_w10 {width: 10% !important;}
.InpSel_w20 {width: 20% !important;}
.InpSel_w30 {width: 30% !important;}
.InpSel_w40 {width: 40% !important;}
.InpSel_w50 {width: 50% !important;}
.InpSel_w60 {width: 60% !important;}
.InpSel_w70 {width: 70% !important;}
.InpSel_w80 {width: 80% !important;}
.InpSel_w90 {width: 90% !important;}
.InpSel_w100 {width: 100% !important;}

/* 패딩값 */
.pd0  {padding:0 !important;}

.pd5  {padding:5px !important;}
.pd10 {padding:10px !important;}
.pd15 {padding:15px !important;}
.pd20 {padding:20px !important;}
.pd30 {padding:30px !important;}

.pdt5  {padding-top:5px !important;}
.pdt10 {padding-top:10px !important;}
.pdt15 {padding-top:15px !important;}
.pdt20 {padding-top:20px !important;}
.pdt30 {padding-top:30px !important;}
.pdt40 {padding-top:40px !important;}

.pdr5  {padding-right:5px !important;}
.pdr10 {padding-right:10px !important;}
.pdr15 {padding-right:15px !important;}
.pdr20 {padding-right:20px !important;}
.pdr30 {padding-right:30px !important;}

.pdb5  {padding-bottom:5px !important;}
.pdb10 {padding-bottom:10px !important;}
.pdb15 {padding-bottom:15px !important;}
.pdb20 {padding-bottom:20px !important;}
.pdb30 {padding-bottom:30px !important;}

.pdl5  {padding-left:5px !important;}
.pdl10 {padding-left:10px !important;}
.pdl15 {padding-left:15px !important;}
.pdl20 {padding-left:20px !important;}
.pdl30 {padding-left:30px !important;}

/* 마진 */
.mg0  {margin:0 !important;}

.mg5  {margin:5px !important;}
.mg10 {margin:10px !important;}
.mg15 {margin:15px !important;}
.mg20 {margin:20px !important;}
.mg30 {margin:30px !important;}

.mgt5  {margin-top:5px !important;}
.mgt10 {margin-top:10px !important;}
.mgt15 {margin-top:15px !important;}
.mgt20 {margin-top:20px !important;}
.mgt30 {margin-top:30px !important;}
.mgt40 {margin-top:40px !important;}
.mgt50 {margin-top:50px !important;}
.mgt55 {margin-top:55px !important;}

.mgt5n  {margin-top:-5px !important;}
.mgt10n  {margin-top:-10px !important;}

.mgr5  {margin-right:5px !important;}
.mgr10 {margin-right:10px !important;}
.mgr15 {margin-right:15px !important;}
.mgr20 {margin-right:20px !important;}
.mgr30 {margin-right:30px !important;}

.mgb0  {margin-bottom:0 !important;}
.mgb5  {margin-bottom:5px !important;}
.mgb10 {margin-bottom:10px !important;}
.mgb15 {margin-bottom:15px !important;}
.mgb20 {margin-bottom:20px !important;}
.mgb30 {margin-bottom:30px !important;}

.mgl5  {margin-left:5px !important;}
.mgl10 {margin-left:10px !important;}
.mgl15 {margin-left:15px !important;}
.mgl20 {margin-left:20px !important;}
.mgl30 {margin-left:30px !important;}

@media screen and (max-width: 1640px) {
	.tab_v2 { padding: 0.6rem 4rem; }
}

@media screen and (max-width: 1240px){

	/* 탭 : 공통 */
	.reactTab[class^="tab_st"] > .select { position: relative; display: block; height: auto; padding: 0.75rem 3rem 0.75rem 1rem; border-radius: 0.5rem; font-size: 0.9rem; border: 1px solid #3F4E81; border-radius: 0.6rem 0.6rem 0 0; background: #3F4E81; color: #fff; }
	.tab_st1:not(.notJS) > .select:before { right: 1rem; left: auto; position: absolute; content: "\e943"; font-family: 'xeicon'; top: 50%; transform: translateY(-50%); }
	.reactTab[class^="tab_st"] > .select span { display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
	.reactTab[class^="tab_st"] ul {display: none; margin-bottom: 0; margin-left: 0; width: 100%; text-align: left; padding: 0 1rem; border-radius: 0 0 0.3rem 0.3rem; border-bottom: none; position: relative; }
	.reactTab[class^="tab_st"] ul::before { position: absolute; content: ""; height: 1px; width: 100%; bottom: 0; left: 0; background: #e0e0e0; }
	.reactTab[class^="tab_st"] li {display: block; width: 100% !important;}
	.reactTab[class^="tab_st"] li a { text-align: start; border-right: none !important; border-top: none !important; padding: 0.6rem 0; border-bottom: 1px solid #e0e0e0 !important; font-size: 0.9rem; }
	.reactTab[class^="tab_st"] li a span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; display: block; }
	.reactTab[class^="tab_st"] li a:after { display: none; }
	.reactTab[class^="tab_st"] li a:before {display: none;}
	.reactTab[class^="tab_st"] ul > li > a.select { display: none !important; }
	.reactTab[class^="tab_st"] li::before { display: none !important; }

	/* 테이블 : 유틸 */
	.tbl_utile {margin-top: 0;}

	/* 웹 화면 none / 태블릿 모바일 blcok : 이미지맵 사용시 */
	.WnTMb {display: block;}
}
@media screen and (max-width: 1024px){
	
	/* 테이블 : 테이블 기본 타입 */
	div[class*='tbl_st'] > table {word-break: break-all;}
	div[class*='tbl_st'] > table tbody th { font-size: 0.85rem }
	div[class*='tbl_st'] > table tbody td, div[class*='tbl_st'] > table tbody th { padding: 0.5rem 0.75rem; font-size: 0.8rem; }

	/* 테이블 스크롤 */
	div[class*='tbl_st'].scroll_gr {width: 100%; background-repeat: no-repeat; background-position: right 5px; background-size: 30px 100%; overflow-x: auto; z-index: 1;
		background-image: gradient(linear, right top, left top, from(rgba(0, 0, 0, 0.1)), to(rgba(0, 0, 0, 0)));
		background-image: linear-gradient(to left,rgba(0, 0, 0, 0.1) 0%, rgba(0, 0, 0, 0) 100%);
	}
	div[class*='tbl_st'].scroll_gr table {width: 1024px;}

	/* 박스 : 정렬 */
	.box_wrap > [class^="box_st"] {width: calc(33.33% - 0.6rem);}

	.Coming_soon { padding: 2rem 1rem; }
	.Coming_soon img { max-width: 13.75rem; }
	.Coming_soon span { margin: 1.25rem 0 0.5rem; font-size: 1.2rem; }
	.Coming_soon span em::before { bottom: 0; height: 0.45rem; }

}

@media screen and (max-width: 860px){
	div[class*='tbl_st'].scroll_gr table {width: 860px;}

	/* 박스 : 정렬 */
	.box_wrap.box_w30 > [class^="box_st"],
	.box_wrap > [class^="box_st"] {width: calc(50% - 0.6rem);}
}

@media screen and (max-width: 768px){
	.tit1 { padding-top: 0.65rem; }
	.tit1::before { height: 0.4rem; width: 1.4rem; }
	div + h3[class^='tit'], p + h3[class^='tit'] {margin-top: 2.5rem !important;}

	/* 박스 : 박스 기본 타입 */
	[class^="box_st"].box_ico .ico { display: none; }
	[class^="box_st"].box_ico .inner { padding: 1.5rem 1.75rem; min-height: auto; }
	.box_st_ico {padding-left:0;}
	.box_st_ico .ico_boxImg {position:relative; left:auto; top:auto; margin:0 auto 10px; text-align:center;}

	/* 버튼 */
	[class^="btn_"] { min-width: auto !important; border-width: 1px !important; }

	div[class*='tbl_st'] > table th.hasCIco { flex-direction: row; }

	.reactTab[class^="tab_st"] > .select { padding: 0.65rem 2.5rem 0.65rem 1rem; }
	.reactTab[class^="tab_st"] li a { padding: 0.5rem 0; font-size: 0.85rem; }

	/* 이미지 사이즈 : 확대보기 */
	.rsp_img { padding: 1rem; }

	.tab_v2 { padding: 0.6rem 3rem; } 
	p.areaTxt { font-size: 0.85rem; }
	.Coming_soon img { max-width: 12.5rem; }

	.bu_st1:before, .list_st1 > li:before { width: 4px; height: 4px; }
	.bu_st1, .bu_st2, .list_st1 > li, .list_st2 > li { padding-left: 0.5rem; margin-top: 0.25rem; }
	.list_ol1 > li .list_ol2, .list_ol1 > li .list_ol3 { margin-top: 0.35rem; }

	.mgt55 {margin-top:2rem !important;}

	[class^="list_st"] .btns { margin: 0.5rem 0 !important; }
} 

@media screen and (max-width: 580px) {
	.Coming_soon img { max-width: 10.5rem; }
}

@media screen and (max-width: 560px){
	/* 박스 : 박스 기본 타입 */
	[class^="box_st"] .inner { padding: 1.25rem 1.5rem; }
}

@media screen and (max-width: 480px){
	/* 타이틀(텍스트 타입) */
	.tit1 {font-size: 1.1rem; padding-top: 0.45rem; }
	.tit1::before { height: 0.3rem; width: 1.1rem; }
	.tit2 {font-size: 1rem;}
	.tit3 {font-size: 0.95rem;}
	[class^="tit"]:not([class^="title_"]) {margin-bottom: 0.35rem;}

	h3[class^='tit'][class*='1'] + h4[class^='tit'][class*='2'] { margin-top: 1rem; }
	*:not(h3) + h4[class^='tit'] { margin-top: 1.25rem !important; }
	div + h3[class^='tit'], p + h3[class^='tit'] {margin-top: 2rem !important;}

	/* 테이블 */
	div[class*='tbl_st'] > table tbody th,
	div[class*='tbl_st'] > table tfoot th {font-size: 0.8rem;}

	/* 박스 : 정렬 */
	.box_wrap > [class^="box_st"] {margin: 0.3rem 0; width: 100% !important;}

	/* 버튼 */
	[class^="btn_"] { padding: 0.4rem 0.75rem !important; font-size: 0.75rem; }

	/* 이미지 사이즈 : 확대보기 */
	.rsp_img .btn-zoom { width: 2rem; height: 2rem; }

	.Coming_soon { padding: 1.5rem 1rem; }
	.Coming_soon img { max-width: 9.5rem; }
	.Coming_soon span { margin: 1rem 0 0.35rem; font-size: 1.1rem; }
	.Coming_soon p { font-size: 0.8rem; }

	.reactTab[class^="tab_st"] > .select { padding: 0.5rem 2rem 0.5rem 1rem; }
	.tab_st1:not(.notJS) > .select:before { font-size: 0.8rem; }
	.reactTab[class^="tab_st"] li a { font-size: 0.8rem; }

	/* 박스 : 박스 기본 타입 */
	[class^="box_st"] { line-height: 1.3; }
	[class^="box_st"] .inner { padding: 1rem 1.25rem !important; }
	[class^="box_st"].box_ico .boxTit { font-size: 1.1rem; }
	[class^="box_st"] .boxTit { font-size: 1.05rem; margin-bottom: 0.35rem; }
}

@media screen and (max-width: 380px) {
	.reactTab[class^="tab_st"] > .select { padding: 0.5rem 2rem 0.5rem 0.75rem; }
	.reactTab[class^="tab_st"] ul { padding: 0 0.75rem; }
	.reactTab[class^="tab_st"] li a { padding: 0.4rem 0; }
}
