@charset "UTF-8"; 

/* 초기화 및 초기 세팅 */
:root { 
 /* 버튼 및 인풋 폼 높이 세팅 */
 --hd_height: 8rem; 
 --height: 4.8rem; 
 --height_sm: 3.2rem; 
 --height_md: 6.9rem; 
 --height_lg: 8.3rem; 
 --ic_date: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 24 24"><path d="M5 22q-.825 0-1.413-.587Q3 20.825 3 20V6q0-.825.587-1.412Q4.175 4 5 4h1V2h2v2h8V2h2v2h1q.825 0 1.413.588Q21 5.175 21 6v14q0 .825-.587 1.413Q19.825 22 19 22Zm0-2h14V10H5v10ZM5 8h14V6H5Zm0 0V6v2Z"/></svg>'); 
 } 


html { font-size:10px; } 
body { margin:0 auto; padding:0; } 
html, h1, h2, h3, h4, h5, h6, form, fieldset, img { margin:0; padding:0; border:0 } 
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display:block } 

ul, dl,dt,dd { margin:0; padding:0; list-style:none } 
legend { position:absolute; margin:0; padding:0; font-size:0; line-height:0; text-indent:-9999em; overflow:hidden } 
label, input, button, select, img { vertical-align:middle; } 
input, button { margin:0; padding:0; } 
input[type="submit"] { cursor:pointer } 
button { cursor:pointer } 
select { margin:0 } 
p { margin:0; padding:0; word-break:keep-all; line-height: 130%; } 
hr { display:none } 
a { text-decoration:none } 
a:hover { text-decoration: none; } 
.un_reboot_a { color: var(--main); text-decoration: underline; } 
*, :after, :before { 
 -webkit-box-sizing:border-box; 
 -moz-box-sizing:border-box; 
 box-sizing:border-box; 
 word-break: keep-all; 
 } 

img { max-width:100%; display:inline-block; height: auto; } 

.fc_gray1 { color:#6C757D } 
.fc_gray2 { color:#ADB5BD } 
.fc_gray3{color: rgba(54, 61, 66, 0.6);}

 /*메인*/
.idx_pg { min-height:800px;   padding-top:  var(--hd_height);} 



/*서브*/
.sub_tit { position: relative; } 
.sub_pg { min-height:800px; padding-top: var(--hd_height); } 


.line_h1 { line-height:1.0em; } 
.line_h1_1 { line-height:1.1em; } 
.line_h1_2 { line-height:1.2em; } 
.line_h1_3 { line-height:1.3em; } 
.line_h1_4 { line-height:1.4em; } 
.line_h1_5 { line-height:1.5em; } 
.line_h1_6 { line-height:1.6em; } 
.line_h1_7 { line-height:1.7em; } 
.line_h1_8 { line-height:1.8em; } 
.line_h1_9 { line-height:1.9em; } 
.line_h2 { line-height:2.0em; } 


/*폰트커스텀 기본사이즈 10px*/

.tit_h1 { font-size: 6rem; margin-bottom: 4rem; font-weight: 800; line-height: 1.2; } 
.tit_h2 { font-size: 3.4rem; font-weight: 700; } 
.tit_h3 { font-size: 2.8rem; font-weight: 400; color: rgba(54, 61, 66, 0.6); margin-bottom: 2.5rem; line-height: 130%; } 
.tit_h4 { font-size: 5rem; font-weight: 800; line-height: 1.2; } 

.fs_30{font-size: 3rem;}

.fw_100 { font-weight: 100; } 
.fw_200 { font-weight: 200; } 
.fw_300 { font-weight: 300; } 
.fw_400 { font-weight: 400; } 
.fw_500 { font-weight: 500; } 
.fw_600 { font-weight: 600; } 
.fw_700 { font-weight: 700; } 
.fw_800 { font-weight: 800; } 
.fw_900 { font-weight: 900; } 

.wh_pre { white-space: pre-line; } 
.wh_nowrap { white-space: nowrap; } 

.bg-light2 { background-color:#EEF2FF; } 
/*글자 줄임말*/
.line_text { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; word-break: break-all; } 
.line1_text { 
 white-space: normal; 
 overflow: hidden; 
 text-overflow: ellipsis; 
 word-wrap: break-word; 
 display: -webkit-box; 
 -webkit-line-clamp: 1; 
 -webkit-box-orient: vertical; 
 } 
.line2_text { 
white-space: normal; 
overflow: hidden; 
text-overflow: ellipsis; 
word-wrap: break-word; 
display: -webkit-box; 
-webkit-line-clamp: 2; 
-webkit-box-orient: vertical; 

 } 
.line3_text { 
white-space: normal; 
overflow: hidden; 
text-overflow: ellipsis; 
text-align: left; 
word-wrap: break-word; 
display: -webkit-box; 
-webkit-line-clamp: 3; 
-webkit-box-orient: vertical; 

 } 

/*border radius*/
/* .rounded { border-radius: 0.5rem!important; } 
.rounded-lg { border-radius: 1.0rem!important; } 
.rounded-xl { border-radius: 2rem!important; } */

/* 폼 사각형 */
.sq_guide { display:flex; flex-wrap: wrap; } 
.sq_guide li { 
 width: 90px; 
 height: 90px; 
 border-radius: 0.5rem; 
 display: flex; 
 align-items: center; 
 justify-content: center; 
 font-size: 1.4rem; 
 margin: 0.5rem; 
 } 

/* 스크롤바 none */
.none_scroll_bar { -ms-overflow-style: none; } 
.none_scroll_bar::-webkit-scrollbar { display: none; } 

/* 버튼 */
.btn { height: var(--height); } 
.btn-sm { height: var(--height_sm); font-size: 1.6rem; } 
.btn-md { height: var(--height_md); } 
.btn-lg { height: var(--height_lg); } 

/* 인풋 자동완성 초기화 */
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active { 
-webkit-text-fill-color: var(--text); 
 -webkit-box-shadow: 0 0 0px 1000px var(--bg) inset; 
 box-shadow: 0 0 0px 1000px var(--bg) inset; 
 transition: background-color 5000s ease-in-out 0s; 
 } 

input:autofill,
input:autofill:hover,
input:autofill:focus,
input:autofill:active { 
-webkit-text-fill-color: var(--text); 
 -webkit-box-shadow: 0 0 0px 1000px var(--bg) inset; 
 box-shadow: 0 0 0px 1000px var(--bg) inset; 
 transition: background-color 5000s ease-in-out 0s; 
 } 

/* 입력 인풋 */
.form-control { height: var(--height); } 
.form-control-sm { height: var(--height_sm); } 
.form-control-md { height: var(--height_md); } 
.form-control-lg { height: var(--height_lg); } 

.ip_wr .ip_tit { margin-bottom:1rem; } 
.ip_wr .ip_tit h5 { font-size:1.8rem; font-weight:700; display:inline-block; } 

/* form-text */
.form-text { font-size: 1.3rem; display: none; align-items: center; } 
.form-text i { margin-right: 0.25rem; } 
.ip_valid .ip_valid { display: flex; color: var(--success); } 
.ip_invalid .ip_invalid { display: flex; color: var(--danger); } 

/* textarea 높이 */
textarea.form-control { height: 20rem; padding: 1rem; } 

/* 셀렉트 박스 */
.custom-select { 
 padding-right: 3.5rem; 
 color: var(--input_placeholder); 
 background-size: 2.4rem; 
 } 

/* 날짜 선택 */
input.form-control[type="date"] { position: relative; } 
input.form-control[type="date"]::-webkit-calendar-picker-indicator { 
 -webkit-appearance: none; 
 background: none; 
 width: 100%; height: 100%; cursor: pointer; 
 position: absolute; left: 0; top: 0; 
 } 
input.form-control[type="date"]::before { content: ''; display: block; width: 2.4rem; height: 2.4rem; position: absolute; top: 50%; transform: translateY(-50%); right: 1rem; background: var(--text); cursor: pointer; -webkit-mask: var(--ic_date); mask: var(--ic_date); -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat; -webkit-mask-position: center; mask-position: center; -webkit-mask-size: contain; mask-size: contain; } 


/* 체크박스 및 라디오 */
.checks_wr { display: flex; flex-wrap: wrap; margin-bottom: -1rem; } 
.checks_wr .checks { margin-right: 3rem; margin-bottom: 1rem; } 

.checks label { display: flex; align-items: center; cursor: pointer; } 
.checks label.chk_right { flex-flow: row-reverse; justify-content: flex-end; } 
.checks input { display: none; } 
.ic_box { display: inline-block; width: 3.4rem; height: 3.4rem; font-size: 2rem; text-align: center; border: 1px solid var(--border); color: var(--border); display: flex; align-items: center; justify-content: center; margin-right: 0.5rem; border-radius: 0.6rem; background: url(../img/ic_check.png) #ADB5BD no-repeat center; 
 background-size: 15px; } 
input:checked + .ic_box { border-color: var(--primary); color: var(--primary); background-color: var(--primary); } 
.chk_right .ic_box { margin-right: 0; margin-left: 0.5rem; } 
input:checked ~ .chk_p { color: var(--primary); } 

/* 페이지네이션 */
.pagination { margin-top: 40px; display: flex; justify-content: center; align-items: center; } 
.pagination li { height: 100%; } 
.pagination a { font-size: 1.8rem; padding: 0 10px; font-weight: 600; display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; } 
.pagination a.disabled { color: #AAA; } 
.pagination a.on { color: var(--main); text-decoration: underline; } 

/* 테이블 */
.table_01 { width:100%; border-collapse: collapse; border-bottom:1px solid #e3e3e3; text-align:center; border-top: 1px #000 solid; margin-left: -1px; } 
.table_01 th { background: #f5f5f5; text-align:center;  } 
 
.table_01 th, .table_01 td { padding:1rem 0.8rem;   border-bottom:1px solid #e3e3e3; border-left:1px solid #e3e3e3;} 


/* 테이블 슬래쉬 */
.table_01 th.slash { 
 background-image: url('data:image/svg+xml; utf8,<svg xmlns="http://www.w3.org/2000/svg"><line x1="0" y1="100%" x2="100%" y2="0" stroke="rgb(77,77,77)" /></svg>'); background-repeat: no-repeat; 
 } 
.table_01 th.backslash { 
 background-image: url('data:image/svg+xml; utf8,<svg xmlns="http://www.w3.org/2000/svg"><line x1="0" y1="0" x2="100%" y2="100%" stroke="rgb(77,77,77)" /></svg>'); background-repeat: no-repeat; 
 } 
.table_01 th.slash, .table_01 th.backslash { text-align: left; } 
.slash div, .backslash div { text-align: right; } 

/*테이블 반응형때*/
.table_scroll { overflow-x: auto; overflow-y: hidden; padding: 0px !important; } 



/* 페이저 */
.pager { 
 background: #F5F5F5; 
 border-radius: 15rem; 
 display: flex; 
 justify-content: center; 
 align-items: center; 
 width: 250px; 
 height: 65px; 
 margin: 3.5rem auto 0; 
 } 


/* 이미지 크롭 */
.rect { 
 width: 100%; 
 position: relative; 
 overflow: hidden; 
 } 

.rect:after { 
content: ""; 
display: block; 
padding-bottom: 100%; 
 } 

.rect img { 
position: absolute; 
width: 100%; 
height: 100%; 
object-fit: cover; 
object-position: center; 
top: 50%; 
left: 50%; 
transform: translate(-50%,-50%); 
 } 

 /* 이미지 크롭  642*362*/
.rect2 { width: 100%; position: relative; overflow: hidden;}
.rect2:after {content: "";display: block;padding-bottom: calc(362/642* 100%); }
.rect2 img {position: absolute;width: 100%;height: 100%;object-fit: cover;object-position: center;top: 50%;left: 50%;
transform: translate(-50%,-50%);
}

/* 푸터 */
.ft { color: #6C757D; background-color: #f5f5f5; padding: 4rem 0rem; font-size: 1.4rem; } 
 

/*메뉴***********************************/
body.menu_on { overflow: hidden; } 
/* 헤더 */
.h_menu { position: fixed; left: 0; top: 0; width: 100%;  align-items: center; z-index: 99; background-color: #fff; } 
.h_menu .con_wrap { display: flex; align-items: center; height: var(--hd_height); 
 justify-content: space-between; } 
.logo { width:284px; display: block; } 
.logo img {   } 

.pc_nav { height: 100%; display: flex; align-items: center; 
 justify-content: space-between; } 
.pc_nav .nav_wr { height: 100%; } 
.pc_nav .nav_ul { display: flex; height: 100%; } 
.pc_nav .nav_li { height: 100%; position: relative; } 
.pc_nav .nav_a { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; padding: 0 2rem; font-weight: 600; } 
.pc_nav .nav_a:hover { color: #0065A7; } 

.pc_nav .nav_ul2 { display: none; } 
.pc_nav .nav_li:hover .nav_ul2 { display: block; position: absolute; background: var(--bg); top: 100%; left: 50%; transform: translateX(-50%); border: 1px solid var(--border); z-index: 9999; } 
.pc_nav .nav_ul2 a { display: block; padding: 1rem 2rem; white-space: nowrap; } 

/* 모바일 메뉴 */
.hd_menu_btn { font-size: 2rem; display: none; } 

.m_menu_wr { visibility: hidden; opacity: 0; position: fixed; top: 0; right: 0; width: 100%; height: 100%; z-index: 99999; transition: all 0.5s ease-in-out; display: flex; justify-content: flex-end; } 

/* x버튼 */
.close_btn_wr { display: none; opacity: 0; } 
.m_nav .close_btn_wr { display: flex; justify-content: flex-end; opacity: 0; } 
.menu_on .m_nav .close_btn_wr { opacity: 1; } 
.close_btn { padding: 0.5rem; font-size: 2rem; border: 1px solid var(--border); height: auto; } 

/* 메뉴 열렸을때 외부 */
.menu_on .m_menu_wr { visibility: visible; opacity: 1; } 
.m_nav { position: relative; width: 100%; height: 100%; z-index: 99999; background: var(--bg); transition: all 0.4s ease-in-out; max-width: 0; transform: translateX(100%); visibility: hidden; opacity: 0; } 
.menu_on .m_nav { transform: translateX(0); visibility: visible; opacity: 1; max-width: 50rem; } 

.menu_bg { position: fixed; left: 0; top: 0; background: rgba(0,0,0,0.6); transition: all 0.4s ease-in-out; width: 100%; height: 100%; z-index: 99998; visibility: hidden; opacity: 0; } 
.menu_on .menu_bg { visibility: visible; opacity: 1; } 

/* 메뉴 열렸을때 내부 */
.m_nav .nav_wr { height: auto; } 
.m_nav .nav_ul { display: block; } 
.m_nav .nav_li { height: 100%; position: relative; } 
.m_nav .nav_a { display: flex; align-items: center; justify-content: space-between; width: 100%; height: 100%; padding: 1rem 2rem; } 
.m_nav .nav_a i { display: inline-block; } 

.m_nav .nav_ul2 { display: none; background: #f0f0f0; } 
.m_nav .nav_ul2 a { display: block; padding: 1rem 2rem; white-space: nowrap; } 

.t_btn { height: 42px; font-size: 1.8rem; padding-left: 2rem; padding-right: 2rem; margin-left: 2rem; } 

.con_wrap { width: 100%; 
 padding-right: 40px; 
 padding-left: 40px; 
 margin-right: auto; 
 margin-left: auto; 
max-width: 1280px; } 

/* @media (min-width: 768px) { 
 .container-xl, .container-lg, .container-md, .container-sm, .container { max-width: 1344px; } 
 } */


/*반응형 max 1200 xl*/
@media (max-width: 1199.98px) { 
 body { font-size: 1.8rem; } 
 .tit_h1 { font-size: 4.2rem; } 
 .tit_h2 { font-size: 3.8rem; } 
 .tit_h3 { font-size: 2.2rem; } 
  .tit_h4 { font-size: 4rem; } 
 } 

/*반응형 max 992px lg*/
@media (max-width: 991.98px) { 


 .hd_menu_btn { display: block; } 
 .logo { width: 100%; padding: 0.5rem 0rem 0.7rem; 
} 
  .logo img{width: 180px;}
 .pc_nav { display: none; } 
 .m_nav .nav_a{font-size: 2.2rem; font-weight: 700;     padding: 1rem 2rem 3rem;}
.close_btn {border:0px}
 

 } 


/*반응형 max 767px md*/
@media (max-width: 767.98px) { 
 :root { --hd_height: 6.8rem; } 
 .con_wrap { padding-right: 15px; padding-left: 15px; } 
 body { font-size: 1.6rem; } 

 .tit_h1 {font-size: 7vw;margin-bottom: 1rem;} 
 .tit_h2 {font-size: 5vw;} 
 .tit_h3 {font-size: 4vw;margin-bottom: 0;} 
  .tit_h4 { font-size: 5.5vw; } 
   .logo img{width: 150px; margin-left: 1rem;}

  
 } 

/*반응형 max 576px sm*/
@media (max-width: 575.98px) { 
 
 
 } 


/*반응형 max 380px*/
@media (max-width: 380px) { 

 } 


