@charset "utf-8";
html,
body {
    font-size: 17px;
}

/**************************************************************/
/**************************************************************/
/************************ basic setting ***********************/
/**************************************************************/
/**************************************************************/

/* --------------------- input & search -----------------------*/
select {
    width: 120px;
    /*height: 40px;*/
    border: 1px solid #ccc;
    padding: 0 8px;
    margin-right: 4px;
	background:#fff;
}
input#schText, .search_group input:first-child {
    height: 38px;
    padding: 0 12px;
    border: none;
}
.search_group {
    border-bottom: 1px solid #ccc;
    height: 40px;
    background: #fff;
    overflow: hidden;
}
.search_group input:first-child {
    height: 38px;
    padding: 0 12px;
    border: none;
    transform: rotate(0.03deg);
    font-weight: 400;
}
input#board_search {
    border: none;
    text-indent: -9999px;
    background: url(../images/common/ic_search_clr.png) 0 0 no-repeat;
    width: 24px;
    height: 24px;
    margin-right: 8px;
}

.radio_group {
    line-height: 1.6em;
    display: inline-block;
    margin-right: 20px;
}


input[type="checkbox"] { visibility:hidden; position:absolute; }
input[type="checkbox"] + label { display:inline-block; padding-left:25px; background: url(../images/common/checkbox.png) left no-repeat; cursor: pointer; }
input[type="checkbox"]:checked + label {background:url(../images/common/checkbox_checked.png) left no-repeat; }
input[type="radio"] { visibility:hidden; position:absolute; }
input[type="radio"] + label { display:inline-block; padding-left:25px; background: url(../images/common/radio.png) left no-repeat; cursor: pointer; }
input[type="radio"]:checked + label {background:url(../images/common/radio_checked.png) left no-repeat; }

.i_sup_sm {
	width: 80px;
}
.i_sup_md { 
	min-width: 200px; 
}
.i_sup_hf {
    width: 49%;
}
.i_sup_wd {
    width: 100%;
}

.form-inline input {margin: 4px auto 0;}

.ic_new {
    font-size: 13px;
    padding: 1px 8px;
    background: var(--main-color);
    color: #fff;
    font-weight: 200;
    margin-right: 8px;
    /* vertical-align: text-top; */
    /* display: inline-block; */
}
.ic_noti_link {
    margin-left: 4px;
}
.ic_noti_link img {
    vertical-align: middle;
}
.tit span.ic_file {
    margin-left: 6px;
    color: var(--main-color);
    padding-top: 3px;
}
.tit span.new {
    margin-left: 4px;
    color: var(--main-color-2);
    font-size: 32px;
}
/* -------------------------- text ---------------------------*/
.sm_comm {
    font-size: 14px;
    color: #777;
    margin-top: 4px;
}
.join_point {
    color: #ff0000;
    margin-left: 4px;
}
.inline { display: inline-block; margin-right: 20px; }
.byte { display: inline-block; line-height: 32px; padding: 0 8px; }
.bd { font-weight: bold; }
.point { color: #dc040e; }
.pt { font-weight: 500; }

/* ------------------------- button --------------------------*/
.pop_btn_area {width:100%;text-align:center;margin:20px auto;}
.btn {
    height: 60px;
    line-height: 60px;
    border: 1px solid rgba(255, 255, 255, 0);
    min-width: 150px;
    padding: 0 8px;
    font-size: 1rem;
    font-weight: 500;
	cursor:pointer;
    justify-content: center;
    align-items: center;
}
.btn_d {
    height: 60px;
    line-height: 60px;
    border: 1px solid rgba(255, 255, 255, 0);
    min-width: 150px;
    padding: 0 8px;
    font-size: 1rem;
    font-weight: 500;
	cursor:pointer;
    justify-content: center;
    align-items: center;
}
.btn_s {
    height: 48px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0 24px;
}

.btn_xs {
    width: 72px;
    height: 32px;
    border-radius: 2px;
    color: #fff;
	border:none;
	display:inline-block;
	line-height:32px;
	text-align:center;
}
.btn_xxs {
    height: 32px;
    line-height: 32px;
    display: inline-block;
    padding: 0 24px;
    font-size: 0.925rem;
}
.btn a, .btn_s a {
	width:100%;
	height:100%;
	display:block;
}
.btn_full {
    color:#fff !important;
    background: var(--sub-color) !important;
    border: none !important;
}
.btn_xs {
    height: 26px;
    justify-content: center;
    align-items: center;
    padding: 0 12px;
	display: inline-block;
}
.btn_normal {
    /* border: 1px solid #ccc; */
    background: #bbb;
    color: #fff;
}
.btn_normal_b {
    border: 1px solid #757575;
    background: #fff;
    color: #333;
}
.btn_normal_b2 {
    border: 2px solid #999;
    background: #fff;
    color: #555;
}
.btn_normal_b3 {
    border: 1px solid var(--sub-color);
    color: var(--sub-color);
	border-radius: 3px;
}
.btn_normal_b_clr {
    border: 1px solid var(--sub-color);
    background: #fff;
    color: var(--sub-color);
}
.btn_normal_b_grey {
    border: 1px solid #ddd;
    background: #fff;
    color: #888;
}
.btn_normal_b_red {
    border: 1px solid #dc040e;
    background: #fff;
    color: #dc040e;
}
.btn_full a {
    color: #fff !important;
}
.btn_preview {
    color: #fff;
	background:#666;
}
.btn_preview a {
	color:#fff;
}
.btn_list {
    color: #fff;
    background: #dc040e;
}
.btn_list a {
    color: #fff;
}
.delete { 
    background: #555;
	color:#fff;
}
.btn_line {
    text-indent: 0;
    margin-top: 8px;
}
.btn_back {
    display: inline-block;
    text-align: center;
    float: right;
    width: 120px;
    background: #222;
    height: 40px;
    line-height: 40px;
    color: #fff;
	cursor: pointer;
}
.btn_min {
    height: 40px;
    line-height: 40px;
    border: 1px solid #aaa;
    padding: 0 12px;
    font-size: 0.875rem;
}
.btn_add {
    width: 80px;
    background: var(--main-color-2);
    color: #fff;
	border:none;
}
.btn_del {
    width: 80px;
    background: var(--sub-color-2);
    color: #fff;
	border:none;
}
.btn_link {
    display: inline-block;
    height: 50px;
    line-height: 50px;
    padding: 0 24px;
    background: var(--main-color);
    color: #fff;
    border-radius: 2px;
}
.btn_search {
    height: 40px;
    padding: 0 16px;
    background: #bbb;
    display: inline-block;
    line-height: 32px;
    font-size: 14px;
    color: #fff;
    border-radius: 2px;
	border:none;
	margin-left:4px;
	cursor:pointer;
}
.btn_facebook, .btn_twitter, .btn_print {
    display: block;
    width:40px;
    height:40px;
    line-height:40px;
    border-radius:5px;
	color:#fff;
	text-align:center;
	font-size:20px;
}
.btn_facebook { background:#3c5b9a; }
.btn_twitter { background:#1da1f4; }
.btn_print { background:#e1e1e1; color:#999; }


/* -------------------------- cate&state ---------------------------*/
.cate {
    letter-spacing: -0.2px;
    margin-right: 6px;
    display: inline-block;
    font-weight: bold;
}
.cate.cate01 {
    color: var(--main-color) !important;
}
.cate.cate02 {
    /* background: var(--main-color); */
    color: var(--sub-color-2);
}
.cate.cate03 {
    /* background: var(--main-color); */
    color: var(--main-color-2);
}
.cate.cate04 {
    /* background: var(--main-color); */
    color:#555;
}
.cate.cate05 {
    /* background: var(--main-color); */
    color: #008b1e;
}
.state {
	/* min-width: 120px; */
	display: inline-flex;
	font-size: var(--txt-md);
	font-weight: 400;
	color: #fff;
	padding: 0.325rem 0.5rem;
    border-radius: var(--radius-all-xs);
	text-align: center;
	letter-spacing: -1px;
	margin: 0 auto;
	justify-content: center;
	align-items: center;
    min-width: 4.375rem;
}
.state01 { 
	background: #999;
}
.state02 { 
	background: var(--main-color-2);
}
.state03 {
	background: var(--sub-color-5);
}
.state04 { 
	background: var(--sub-color-2);
}
/* ------------------------- pager ---------------------------*/
.pager { 
	margin-top: 50px; 
}
.pager ul {
    margin:0 auto;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center; 
}
.pager li {
    width: 40px;
    height: 40px;
    /* border-top: 1px solid #ddd; */
    /* border-bottom: 1px solid #ddd; */
    margin-right: 3px;
    color: #333333;
    font-size: 16px;
    background: #fff;
    cursor: pointer;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: 0.3s;
}
.pager li:hover, .pager li.on {
    /* background: #d4d9dd8a; */
    font-weight: 600;
    color: var(--main-color);
    font-size: 1.25rem;
}
.pager li a {
    color: #333;
}
.pager li.on a {
    color: #fff;
}

/* -------------------- 첨부파일&링크 ------------------------*/
.file_info {
    border-top: 1px solid #e1e1e1;
    padding: 20px 0;
    overflow: hidden;
    display: flex;
}
.file_info h3 {
    float: left;
    position: relative;
    padding-right: 12px;
    line-height: 1.6em;
}
.file_info h3 span, .link_info h3 span {
    color: #222;
}
.file_info h3 span, .link_info h3 span.material-icons-outlined {
    color: var(--main-color-2);
}
.file_info .file_list {
    float: left;
    padding-left: 12px;
}
.file_info h3:after {
    content: '';
    width: 1px;
    height: 15px;
    background: #999;
    position: absolute;
    right: 0;
    top: 5px;
}
.file_info .file_list li {
    font-size: 0.875rem;
    line-height: 1.6em;
}
.file_info .file_list li a {
    color: #888;
    font-weight: 400;
}
.file_info .file_list li a:hover {
    text-decoration: underline;
}
.link_info {
    border-top: 1px solid #e1e1e1;
    padding: 20px 0;
    overflow: hidden;
    display: flex;
}
.link_info h3 {
    float: left;
    position: relative;
    padding-right: 12px;
    line-height: 1.6em;
}
.link_info .file_list {
    float: left;
    padding-left: 12px;
}
.link_info h3:after {
    content: '';
    width: 1px;
    height: 15px;
    background: #999;
    position: absolute;
    right: 0;
    top: 5px;
}
.link_info .file_list li {
    font-size: 15px;
    line-height: 1.6em;
}
.link_info .file_list li a {
    color: #757575;
    font-weight: 500;
}
.link_info .file_list li a:hover {
    text-decoration: underline;
}


/**************************************************************/
/**************************************************************/
/************************* basic board ************************/
/**************************************************************/
/**************************************************************/

/* ----------------- board top 게시글수&검색 -----------------*/
.board_top {
    overflow: hidden;
    margin-bottom: 1rem;
}
.board_top input {
    border: none;
    height: 38px;
}
.board_top .total {
    float: left;
    color: var(--main-color);
    font-size: 1.5rem;
    font-weight: 600;
}
.board_top .total .gr {
    font-size: 1rem;
    font-weight: 400;
    color: #222;
}
.board_top .total .sm {
    font-size: 1rem;
    color: var(--sub-color-2);
}
.board_top .search_form {
    float: right;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}
.board_top select {
    width: 120px;
    height: 40px;
    border: 0;
    border-bottom: 1px solid #ccc;
    padding: 0 8px;
    margin-right: 4px;
    background:#fff;
    font-weight: 600;
    transform: rotate(0.03deg);
}

/* ------------------ board inner 게시판 내 ------------------*/

.board_inner .info span.line {
    color: #999 !important;
    font-weight: 200 !important;
    padding: 0 0.5rem !important;
    font-size: 0.825rem !important;
    opacity: 0.8;
}

/* ------------------- board bottom 페이징 -------------------*/
.board_bottom {
    /* position: relative; */
    overflow: hidden;
	margin-top:20px;
}



/**************************************************************/
/**************************************************************/
/****************** type line 텍스트 게시판 *******************/
/**************************************************************/
/**************************************************************/
.type_line {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    position: relative;
    gap: 0;
}
.type_line td {
    /* padding: 40px 0; */
    padding: 18px 0;
    border-bottom: 1px solid #ddd;
    vertical-align: middle;
}
.type_line td p {
    color: #343434;
    font-size: 16px;
    line-height: 24px;
}



/**************************************************************/
/**************************************************************/
/****************** notice 공지사항 게시판 ********************/
/**************************************************************/
/**************************************************************/
.notice .cont {
    width: 100%;
    border-bottom: 1px solid var(--sub-color-3);
    padding: 2rem 0 1.75rem;
    border-radius: var(--radius-3-md);
}
.notice .cont:first-child {border-top: 1px solid var(--sub-color-3);}
.notice .cont .tit p {
    font-size: 1.325rem;
    color: #111;
    font-weight: 600;
    /* line-height: 1.4em; */
    transform: rotate(0.03deg);
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    white-space: pre;
    text-overflow: ellipsis;
    overflow: hidden;
}
.notice .cont a div.tit_wrap {margin-bottom: 0.75rem;overflow:hidden;font-weight: 700;display: flex;justify-content: space-between;align-items: center;}
.notice .cont a div.txt_wrap {
    max-height: 49px;
    line-height: 1.6em;
    overflow: hidden;
    transform: rotate(-.03deg);
    font-weight: 400;
}
.notice .cont a>div.refc_comm {
	width:100%;
    max-height: 24px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: pre;
}
.notice .cont a>div .tit {
	max-width: calc(100% - 18.75rem);
	max-height: 1.875rem;
	overflow: hidden;
	display: flex;
}
.notice .cont a>div .tit p {
    display: block;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    text-overflow: ellipsis;
    white-space: pre;
    overflow: hidden;
    font-weight: 600;
}
.notice .cont a>div .info {
	display: flex;
	align-items: center;
	justify-content: flex-end;
}
.notice .cont a>div .info p {
    position: relative;
    display: inline-block;
    font-size: 1rem;
    font-weight: 500;
}
.notice .cont a>div .info .state {
	font-size: 1rem;
	margin: inherit;
	margin-top: 0;
}
.notice .cont>div { height:48px; line-height:1.6em; overflow:hidden; }
.notice .cont>div img { display:none; }
.notice .cont>div.refc_file {
    height: auto;
}
.notice .cont>div.refc_file {
    padding: 20px;
    overflow: hidden;
    padding: 0;
    margin-top: 6px;
}
.notice .cont>div.refc_file h3 {
    float: left;
    position: relative;
    padding-right: 12px;
    line-height: 1.6em;
}
.notice .cont>div.refc_file .file_list {
    float: left;
    padding-left: 12px;
}
.notice .cont>div.refc_file h3:after {
    content: '';
    width: 1px;
    height: 15px;
    background: #999;
    position: absolute;
    right: 0;
    top: 5px;
}
.notice .cont>div.refc_file .file_list li {
    font-size: 15px;
    line-height: 1.6em;
}
.notice .cont>div.refc_file .file_list li a {
    color: var(--sub-color-2);
    font-weight: 500;
    position: relative;
    display: block;
    padding-right: 31px;
    font-size: 16px;
}
.notice .cont>div.refc_file .file_list li a:hover {
	text-decoration: underline;
}
.notice .cont>div.refc_file .file_list .file_count a span{
    width: 20px;
    height: 20px;
    background: var(--main-color);
    display: block;
    border-radius: 50%;
    text-align: center;
    font-size: 12px;
    color: #fff;
    line-height: 20px;
    position: absolute;
    right: 0;
    top: 3px;
}



/**************************************************************/
/**************************************************************/
/**************** notice qna 질문답변 게시판 ******************/
/**************************************************************/
/**************************************************************/
.notice .cont.qna {
    padding: 2rem 0 1.75rem;
    background: none;
}
.notice .cont.qna a .box {
    margin-bottom: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
}
.notice .cont.qna .tit p {
    font-size: 1.325rem;
}
.notice .cont.qna .tit .i_cate {
	/* width: 3.75rem; */
	display: flex;
	align-items: center;
	justify-content: center;
	margin-right: 10px;
	font-size: var(--txt-md);
	font-weight: 400;
	padding: 0.188rem 0.313rem 0.25rem;
	/*border-radius: 2px;*/
	text-align: center;
	letter-spacing: -1px;
}
.notice .cont.qna .tit .co01 {
    color: var(--main-color);
	border: 1px var(--main-color) solid;
}
.notice .cont.qna .tit .co02 {
    color: var(--c-black-4);
	border: 1px var(--c-black-4) solid;
}
.notice .cont.qna .tit .co03 {
    color: #ffa54a;
	border: 1px #ffa54a solid;
}
.notice .cont.qna .box .tit {
    max-height: 2.125rem;
    -webkit-line-clamp: 1;
    margin: 0;
    font-size: 1.325rem;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    max-width: calc(100% - 20rem);
}
#cancel-check:checked ~ .cancel_pop {display: flex;}
.cancel_pop {
    display: none;
    padding: 10px;
    margin-top: 6px;
    background: #e5e5e5;
    border-radius: 6px;
    transition: 0.3s;
}
.reply_info {
    padding: 20px;
	line-height:1.7em;
	border-top: 1px solid var(--c-black-5);
	background: #f6f6f6;
}
.reply_info img {
    margin: 10px auto;
	width: 100%;
	max-width: 800px;
	display: block;
}
.reply_info .date { font-size: var(--txt-sm); margin-left: 10px; color: #757575;}
.directions { display:none; width:420px; height:220px; margin:0 auto; background:#fff; font-size:1rem; overflow-y:hidden; box-sizing: border-box; border: 1px var(--c-black-2) solid;}
.directions .info_tit { width: 100%; height: 45px; line-height: 45px; background:#7c919d; /*border-top: 5px solid #009475; border-bottom: 1px solid #ccc;*/ text-align: center; font-size: var(--txt-lg); font-weight: 500; margin: 0 auto 20px; color: #fff;}
.directions dl.info_list dt { font-size:16px; margin-bottom: 20px; text-align: center;}
.directions dl.info_list dd { margin-bottom: 20px; text-align: center;}
.directions input {padding: 5px 5px 5px 10px;height: 35px;box-sizing: border-box; width: 90%; border: 1px solid var(--c-black-5);}
.directions .pop_close { cursor: pointer; position: absolute;top: 0px;right: 10px;}
.directions .pop_close img {width: 20px; /*padding-top: 12px;*/}


/**************************************************************/
/**************************************************************/
/****************** type pic 갤러리 게시판 ********************/
/**************************************************************/
/**************************************************************/
.type_pic {
    margin-top: 50px;
}

/* ------------------- 텍스트&이미지 탬플릿 ------------------*/
.type_pic .represent {
    height: 400px;
    border: 1px solid #dbdbdb;
	background: #fff;
}
.type_pic .represent .img_area {
    float: left;
    width: 50%;
	height:100%;
    text-align: center;
    overflow: hidden;
	border-right:1px solid #ddd;
	background: #efefef;
}
.type_pic .represent .text_area {
    width: 50%;
    height: 100%;
    float: left;
    padding: 50px;
}
.type_pic .represent .img_area img {
    /*width: 100%;*/
	height:100%;
}
.type_pic .represent .img_area iframe { width: 100%; }
.type_pic .represent .text_area .wrapper {
    position:relative;
    width:100%;
    height:100%;
    padding-top: 0;
}
.type_pic .represent .text_area .tit {
    font-size: 28px;
    color: #111;
    line-height: 1.3em;
    font-weight: 500;
    margin-bottom: 28px;
    max-height: 72px;
    overflow: hidden;
    /*text-overflow: ellipsis;
    white-space: pre;
	*/
}
.type_pic .represent .text_area .context {
    line-height: 1.5em;
    max-height: 120px;
    overflow: hidden;
	text-align:left !important;
}
.type_pic .represent .text_area .context>div, 
.type_pic .represent .text_area .context>div>p,
.type_pic .represent .text_area .context>p {
	text-align:left !important;
	font-size:15px;
}
.type_pic .represent .text_area .context img {
    display: none;
}

.type_pic .represent .text_area .info {
    position:absolute;
    bottom:0;
}
.type_pic .represent .text_area .info .date,
.type_pic .represent .text_area .info .views {
    position: relative;
    padding-right: 20px;
    display: inline-block;
    font-size: 14px;
    color: #676767;
}
.type_pic .represent .text_area .info .date:after {
    content: '';
    display: inline-block;
    margin: 0 8px;
    width: 2px;
    height: 14px;
    background: #d0d0d0;
    position: absolute;
    right: 0;
    top: 5px;
}

/* ------------------- 이미지만 있는 탬플릿 ------------------*/
.type_pic .image_grid_v {
    margin-top: -30px;
    /*overflow: hidden;*/
    display: flex;
    width: 100%;
    flex-wrap: wrap;
    gap: 30px;
}
.type_pic .image_grid_v .inner_line {
    padding: 28px 0;
    border-bottom: 1px solid #ddd;
    overflow: hidden;
}
.type_pic .image_grid_v .cont {
    width: calc((100% - 90px) / 4);
    background: #fff;
}
.type_pic .image_grid_v .cont:nth-child(4n) {
	margin-right: 0px;
}
.type_pic .image_grid_v .cont .img_area {
    width: 100%;
    aspect-ratio: 3/2;
    /*border:1px solid #e1e1e1;*/
    text-align: center;
    background: #efefef;
    overflow: hidden;
    box-sizing: border-box;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    border-radius: var(--radius-3-sm);
}
.type_pic .image_grid_v .cont .img_area img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: 0.5s;
}
.type_pic .image_grid_v .cont .img_area img:hover {transform: scale(1.1);}
.type_pic .image_grid_v .cont .text_area {
    width: 100%;
    /* height: 100%; */
    padding: 20px 4px;	
}
.type_pic .image_grid_v .cont .text_area .tit p {
    font-size: 1.125rem;
    color: #111;
    font-weight: 600;
    line-height: 1.5em;
    max-height: 3.5rem;
    overflow:hidden;
    /*overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    margin-bottom: 20px;*/
    word-break: break-word;
}
.type_pic .image_grid_v .cont .text_area .wrapper {
    position: relative;
    width: 100%;
    /* height: 100%; */
	padding: 0;
}
.type_pic .image_grid_v .cont .text_area .context {
    line-height: 1.4em;
    max-height: 45px;
    overflow: hidden;
	margin-top:14px;
}
.type_pic .image_grid_v .cont .text_area .context img { display:none; }
.type_pic .image_grid_v .cont .text_area .info {
    margin-top: 1.25rem;
    display: flex;
    align-items: center;
}
.type_pic .image_grid_v .cont .text_area .info_sm {margin-top: 0.5rem;}
.type_pic .image_grid_v .cont .text_area .info span {
    position: relative;
    display: inline-block;
    font-size: 1rem;
    color: #676767;
}

/**************************************************************/
/**************************************************************/
/************ type brochure 브로슈어/책자 게시판 **************/
/**************************************************************/
/**************************************************************/
.type_pic.type_brochure .image_grid_v .cont {width: calc((100% - 120px) / 5);background: #fff;}
.type_pic.type_brochure .image_grid_v .cont .img_area {aspect-ratio: 210/297;}
.type_pic.type_brochure .btn_down {width: 100%;height: 2.5rem;margin-top: -0.5rem;}
.type_pic.type_brochure .image_grid_v .cont .text_area .tit p {font-size: 1rem;}
/**************************************************************/
/**************************************************************/
/******* type brochure 브로슈어/책자 게시판 (가로형) **********/
/**************************************************************/
/**************************************************************/
.type_pic.type_brochure02 .image_grid_v {}
.type_pic.type_brochure02 .image_grid_v .cont {width: calc((100% - 40px) / 2);background: #fff;}

.type_pic.type_brochure02 .image_grid_v .cont a {
    display: flex;
    gap: 1.5rem;
}
.type_pic.type_brochure02 .image_grid_v .cont .img_area {
    aspect-ratio: 143/210;
    max-width: 10rem;
}
.type_pic.type_brochure02 .image_grid_v .cont .text_area {
    padding: 1rem 0 0;
}
.type_pic.type_brochure02 .image_grid_v .cont .text_area .txt {
    margin: 1rem 0;
    flex-grow: 1;
    width: 100%;
}
.type_pic.type_brochure02 .image_grid_v .cont .text_area .txt p {
    color: #555;
    font-size: 1rem;
    line-height: 1.6em;
    max-height: 6.5rem;
    overflow: hidden;
}
.type_pic.type_brochure02 .image_grid_v .cont .text_area .tit p {
    font-size: 1.325rem;
}
.type_pic.type_brochure02 .image_grid_v .cont .text_area .wrapper {
    display: flex;
    align-items: stretch;
    flex-wrap: wrap;
    height: 100%;
}

/**************************************************************/
/**************************************************************/
/********************** board view 페이지 *********************/
/**************************************************************/
/**************************************************************/
.board_view .title_info {
    overflow: hidden;
    border-bottom: 1px solid #cccccc;
}
.board_view .title_info .l_tit {
    float: left;
    /* width: calc(100% - 140px); */
    width: 100%;
}
.board_view .title_info .l_tit .wrapper {
    padding: 40px 0 30px;
    text-align: center;
}
.board_view .title_info .l_tit .tit {
    font-size: 2rem;
    font-weight: 600;
    line-height: 28px;
    margin-bottom: 25px;
}
.board_view .title_info .l_tit .tit .state {
	margin-bottom: 0.75rem;
}
.board_view .title_info .r_icon {
    float: right;
    padding: 45px 0;
}
.board_view .title_info .r_icon ul {
    overflow: hidden;
}
.board_view .title_info .r_icon ul li {
    float: left;
    margin-left: 6px;
}
.board_view .title_info .r_icon ul li:first-child {
    margin-left: 0;
}
.board_view .title_info .l_tit .info span {
    position: relative;
    display: inline-block;
    font-size: 16px;
    color: #676767;
}
.board_view .title_info .l_tit .info {
    display: flex;
    align-items: center;
    justify-content: center;
}
.board_view .contents_info {
    padding: 50px 0px;
	line-height:1.7em
}
.board_view .contents_info .board_btn {
	width: 100%;
	padding-top: 2rem;
	margin-top: 2rem;
	border-top: 1px dashed var(--sub-color-4);
}
.board_view .contents_info .board_btn .view_more {
	margin: 0 auto;
}
.board_view .contents_info img {
    margin: 10px 0;
    height: auto !important;
}
.board_view .list_info {
    border-top: 1px solid #ccc;
}
.board_view .list_info .list_line {
    height: 50px;
    line-height: 50px;
    border-bottom: 1px solid #ccc;
    overflow: hidden;
}
.board_view .list_info .list_line .ic_area {
    float: left;
    width: 100px;
    position: relative;
    text-align: center;
    color: #343434;
    font-size: 15px;
    font-weight: 600;
}
.board_view .list_info .list_line .ic_area.prev:before {
     content:'';
     display:inline-block;
     width:6px;
     height:6px;
     margin:-5px 12px auto auto;
     vertical-align:middle;
     border-right:2px solid #666;
     border-top:2px solid #666;
     transform:rotate(-45deg);
     position:absolute;
     top:28px;
     left:10px;
}
.board_view .list_info .list_line .ic_area.next:before {
     content:'';
     display:inline-block;
     width:6px;
     height:6px;
     margin:-5px 12px auto auto;
     vertical-align:middle;
     border-right:2px solid #666;
     border-top:2px solid #666;
     transform:rotate(135deg);
     position:absolute;
     top:25px;
     left:10px;
    
}
.board_view .list_info .list_line .list_name {
    float: left;
    font-size: 15px;
}
.board_view .list_info .list_line  .list_date {
    float: right;
    color: #666;
    font-size: 14px;
    font-weight: 400;
}


/**************************************************************/
/**************************************************************/
/************************ form 페이지 *************************/
/**************************************************************/
/**************************************************************/

/* -------------------- form basic setting --------------------*/
.left_form td {
    text-align: left !important;
}
.cal_wrap {
    border: 1px solid #c1c1c1;
    padding: 0 10px;
    width: fit-content;
    border-radius: 2px;
    height : 40px;
    display: flex;
    align-items: center;
    overflow: hidden;
}
.cal_wrap input {
    border: 0;
    padding: 0;
    font-size: 0.925rem;
}
.cal_wrap input:focus {text-decoration:none; outline: 0;}
.cal_wrap .ui-datepicker-trigger {
    width: 1rem;
}
/* ----------------------- form wrapper -----------------------*/
.form_wrapper {
    margin-bottom: 4rem;
}
.form_wrapper .form_tit {
    text-align: center;
}
.form_wrapper .form_area {
    margin-top: 4rem;
}
.form_wrapper .tab {
    margin-top: 3rem;
	overflow: hidden;
}
.form_wrapper .tab .tablinks {
    width: 33%;
    display: inline-block;
    text-align: center;
    background: #343434;
    height: 44px;
    line-height: 44px;
    color: #fff;
    border-radius: 2px;
	cursor: pointer;
}
.form_wrapper .tab .tablinks.active {
    background: var(--main-color);
}

/* ----------------------- form bottom -----------------------*/
.form_bottom_s {
    overflow: hidden;
	margin-top: 1rem;
}
.form_bottom {
    overflow: hidden;
    text-align: center;
    margin-top: 0.75rem;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
}
.form_bottom a {
    display: inline-block;
	margin:0 2px;
}

/* ------------------------ apply form -------------------------*/
.apply_common {
    width: 100%;
    border-top: 1px var(--c-black-5) solid;
    margin-top:20px;
    min-width: auto;
}
.apply_common tr th {
    border-bottom: 1px var(--c-black-5) solid;
    background: #f6f6f6;
    color: #222;
    width: 200px;
    padding: 12px;
    vertical-align: middle;
    border-left: 1px var(--c-black-6) solid; 
    border-right: 1px var(--c-black-6) solid;
	font-weight:500;
	line-height:1.4em;
    font-size: 1rem;
    text-align: center;
}
.apply_common tr td {
    padding: 12px;
    border-bottom: 1px var(--c-black-5) solid;
    background: #fff;
	vertical-align:middle;
	line-height:1.4em;
    text-align: left;
}
.apply_common tr td:last-child {
    border-right: 1px var(--c-black-6) solid;
}
.apply_common tr td:first-child {
    border-left: 1px var(--c-black-6) solid;
}
.apply_common tfoot th, .apply_common tfoot td { 
    background: #f6f6f6;
}
.apply_common textarea {
    width: 100%;
    min-height: 200px;
	padding:8px;
	line-height: 1.5em;
}
.apply_form .terms {
    border: 1px var(--c-black-6) solid;
    padding: 32px 28px;
    line-height: 26px;
    color: #333;
    background: #fff;
	font-size:1rem;
	margin-bottom:1rem;
}
.apply_form .terms:last-child { margin-bottom:0px; }
.apply_form .terms.terms_over {
	max-height:250px;
	overflow-y:scroll;
	-ms-overflow-style:auto;
}
.apply_form .check_group {
    margin-bottom: 1.5rem;
    line-height: 1.4em;
}
.apply_form .check_group:last-child {margin: 0;}
.apply_form .check_group01 {
	line-height: 1.6em;
	display: inline-block;
	margin-right: 20px;
}
.apply_form .check_group label {
    color: #333;
	line-height:32px;
	margin-left:8px;
	margin-right:6px;
}
.apply_form .check_group span {
    font-size: 18px;
    vertical-align: sub;
    color: var(--main-color-2);
    cursor: pointer;
}
.apply_form .container .section_group section .terms li {
    padding-left: 10px;
    position: relative;
}
.apply_form .container .section_group section .terms li:before {
    content: '';
    width: 4px;
    height: 4px;
    position: absolute;
    top: 12px;
    left: 0;
    /*background: #9e9e9e;*/
}
.apply_form .container .section_group section .terms .terms_section_inner li:before {
    content: '';
    width: 4px;
    height: 4px;
    position: absolute;
    top: 12px;
    left: 0;
    background: #9e9e9e;
}



/**************************************************************/
/**************************************************************/
/********************* responsible 반응형 *********************/
/**************************************************************/
/**************************************************************/

@media screen and (max-width:1300px) {
	.btn_search { margin-bottom:2px; }

    /* ----------------- board top 게시글수&검색 -----------------*/
	.board_top .total { font-size: 20px; }
	.board_top .total .gr { font-size: 20px; }

    /* ----------------- notice 공지사항 게시판 ------------------*/
	.notice .cont .tit p {font-size: 1.325rem;}
    .notice .cont a>div .tit {max-width: calc(100% - 16rem);}
	.notice .cont>div.refc_file .file_list li a { font-size: 15px; }

    /* ---------------- type line 텍스트 게시판 ------------------*/
	.type_line td p { font-size: 15px; }

    /* ----------------- type pic 갤러리 게시판 ------------------*/
	.type_pic .image_grid_v .cont .text_area .context {line-height: 1.5em;}
	.type_pic .image_grid_v .cont .text_area { padding: 16px 0;}
    .type_pic .image_grid_v .cont:nth-child(4n) {	margin-right: 0px;}

	/* ------------------------ apply form -----------------------*/
	.apply_form .container .section_group section .terms { padding: 28px 24px; font-size: 14px; line-height: 24px; }
}

@media screen and (max-width:980px) {
    /* ----------------- notice 공지사항 게시판 ------------------*/
	.notice .cont .tit p {font-size: 1.25rem;}
    .notice .cont a>div .info p {font-size: 0.925rem;}
    /* ----------------- type pic 갤러리 게시판 ------------------*/
	.type_pic .image_grid_v {gap: 20px;}
	.type_pic .image_grid_v .cont {width: calc((100% - 20px) /2);}
	.type_pic .image_grid_v .cont:first-child, .type_pic .image_grid_v .cont:nth-child(2) {margin-top: 0px;}
	.type_pic .image_grid_v .cont:nth-child(2n) {margin-right: 0px;}

	.type_pic.type_tit .image_grid_v .cont {
        margin: 0;
        width: calc((100% - 2rem) / 3);
    }
    .type_pic.type_brochure .image_grid_v .cont {width: calc((100% - 60px) / 3);}
    .type_pic.type_brochure .image_grid_v .cont:nth-child(3n) {margin-right: 0px;}
}

@media screen and (max-width:800px) {
	/* -------------------- 반응형 table form --------------------*/
	.apply_common.table_block {width: 100%;}
	.apply_common.table_block th[scope], .apply_common.table_block th[scope] { display: none;	}
	.apply_common.table_block th, .apply_common.table_block td {display: block; width: 100%; float: left;}
	.apply_common.table_block tr th { width:100%;  text-align: center;}
	.apply_common.table_block tr td { border-right: none !important; text-align:center; }

    /* ----------------------- form bottom -----------------------*/
	.form_bottom .btn { width: 49%; margin-bottom: 4px; }
	.form_bottom .btn_d { width: 49%; margin-bottom: 4px; }

    /* ----------------- notice 공지사항 게시판 ------------------*/
    .notice .cont {
    }
    .notice .cont a div.tit_wrap {flex-wrap: wrap;}
    .notice .cont a>div .tit {
        width: 100%;
        max-width: 100%;
        margin-bottom: 0.5rem;
    }


}
@media screen and (max-width:640px) {
    /* --------------------- input & search -----------------------*/

	.ic_new { font-size: 11px; padding: 1px 5px; }
	.sm_comm { font-size:0.825rem; }
	.search_group { width: calc(100% - 124px); }
	.search_group input:first-child { width: calc(100% - 36px); }
    .search_form_center .search_group {width: 100%;}
    /* ------------------------- button --------------------------*/
    .pop_btn_area {width:100%;text-align:center;margin:20px auto;}
	.btn_facebook, .btn_twitter, .btn_print { width: 36px; height: 36px; line-height: 36px; font-size: 16px; }
    .pop_btn_confirm {
        display: inline-block;
        text-align: center;
        width: 80px;
        background: var(--main-color);
        height: 35px;
        line-height: 35px;
        font-size: 15px;
        color: #fff;
        cursor: pointer;
        font-weight: 400;
    }
    .pop_btn_cancel {
        display: inline-block;
        text-align: center;
        width: 80px;
        background: #666;
        height: 35px;
        line-height: 35px;
        font-size: 15px;
        color: #fff;
        cursor: pointer;
        font-weight: 400;
    }

    /* ------------------------- pager ---------------------------*/
	.pager { margin-top: 20px; width: 100%;}
	.pager ul { margin:0 auto; display: flex; width: 100%; }
	.pager li { width: 32px; height: 32px; line-height: 28px; font-size: 14px; cursor: pointer;}
	.pager li img {vertical-align: middle; padding-top: 4px;}

    /* -------------------- 첨부파일&링크 ------------------------*/
	.file_info, .link_info { padding: 12px 0; }
	.file_info h3, .link_info a i { font-size: 13px; }
    .link_info a i {overflow-wrap: anywhere;}
	.file_info .file_list li { font-size: 13px; }
	.file_info h3:after { height: 14px; top: 3px; }

    /* ---------------- type line 텍스트 게시판 ------------------*/
	.type_line td p:nth-child(2) {font-size: 14px;height: 45px;line-height: 20px;overflow: hidden;}

    /* ----------------- type pic 갤러리 게시판 ------------------*/
	.type_pic .image_grid_v .cont {width: 100%; margin-top: 20px; margin-right: 0px;}
	.type_pic .image_grid_v .cont:nth-child(2) {margin-top: 20px;}
	.type_pic .image_grid_v .cont .img_area {aspect-ratio: 3/1.5;}
    .type_pic .image_grid_v .cont .text_area .info {margin-top: 10px;}
	.type_pic.type_tit .image_grid_v .cont {width: 100%; margin: 0px;}
    .type_pic.type_brochure .image_grid_v .cont {width: calc((100% - 20px) / 2);}
    .type_pic.type_brochure .image_grid_v .cont:nth-child(2n) {margin-right: 0px;}
    .type_pic.type_brochure .image_grid_v .cont:nth-child(2) {margin-top: 0;}
	
    /* ----------------- notice 공지사항 게시판 ------------------*/
	.notice .cont {font-size:1rem;}
	.notice .cont a>div:first-child { margin-bottom: 8px; }
	.notice .cont>div.refc_file .file_list li a { font-size: 13px; }
	.notice .cont>div.refc_file .file_list .file_count a span { width: 18px; height: 18px; font-size: 10px; line-height: 20px; }
	.notice .cont>div.refc_file h3 { width: 34px; }
	.notice .cont>div.refc_file .file_list { width: calc(100% - 34px); }
	.notice .cont a>div .info .reply, .notice .cont a>div .info .date, .notice .cont a>div .info .views { font-size:13px; }

    /*---------------- notice qna 질문답변 게시판 ----------------*/
    .notice .cont.qna {padding: 1rem 1.25rem;}
    .notice .cont.qna .tit p {font-size: 1.125rem;}
	.notice .cont.qna a .box {
		flex-wrap: wrap;
		gap: 0.25rem;
	}
    .notice .cont.qna a .box .info {
        margin-top: 6px;
        height: 30px;
    }
    .directions { display:none; width:96%; height:auto; margin:0 auto; background:#fff; font-size:1rem; overflow-y:hidden; box-sizing: border-box; border: 1px var(--c-black-2) solid; max-width: 420px;}
    .directions .info_tit { width: 100%; height: 45px; line-height: 45px; background:#7c919d; /*border-top: 5px solid #009475; border-bottom: 1px solid #ccc;*/ text-align: center; font-size: var(--txt-lg); font-weight: 500; margin: 0 auto 20px; color: #fff;}
    .directions dl.info_list dt { font-size:1rem; margin-bottom: 20px; text-align: center;}
    .directions dl.info_list dd { margin-bottom: 20px; text-align: center;}
    .directions input {padding: 5px 5px 5px 10px;height: 35px;box-sizing: border-box; width: 90%; border: 1px solid var(--c-black-5);}
    .directions .pop_close { cursor: pointer; position: absolute;top: 0px;right: 7px;}
    .directions .pop_close img {width: 20px;}

    /* ----------------- board top 게시글수&검색 -----------------*/
    .board_top .total {font-size: 18px;float: none;}
	.board_top .total .gr {font-size: 18px;}
	.board_top .search_form { float: none; margin-top: 15px; }
    
    /* -------------------- board view 페이지 --------------------*/
	.board_view .title_info .l_tit { float: none; width:100%; }
	.board_view .title_info .l_tit .wrapper { padding: 0; }
	.board_view .title_info .l_tit .tit { font-size: 17px; margin-bottom: 12px; }
	.board_view .title_info .l_tit .info .date, .board_view .title_info .l_tit .info .views, .board_view .title_info .l_tit .info .parts { font-size: 13px; }
	.board_view .title_info .r_icon { float: none; padding: 0; margin-top: 10px; }
	.board_view .title_info { padding: 20px 0; }
	.board_view .list_info .list_line { height: 40px; line-height: 40px; }
	.board_view .list_info .list_line .ic_area { width: 50px; font-size: 13px; }
	.board_view .list_info .list_line .ic_area.prev:before, .board_view .list_info .list_line .ic_area.next:before { display:none; }
	.board_view .list_info .list_line .list_name { width: calc(100% - 120px); font-size: 13px; }
	.board_view .list_info .list_line .list_date { font-size: 13px; width: 70px; }

    /* ------------------------ apply form ------------------------*/
	.apply_common tr th { padding: 8px; }
	.apply_common tr td { padding: 8px; font-size: 12px; text-align: center;}	
	.apply_common textarea { width: 100%; min-height: 180px; }
    .apply_common .cal_wrap {margin: 0 auto;}
	.apply_form .container .section_group section .terms { padding: 20px 16px; font-size: 13px; line-height: 22px; }
	.apply_form .container .section_group section .terms li:before { top: 9px; }
	.apply_form .container .section_group section .check_group label { font-size: 13px; }	
    
    /* ----------------------- form bottom -----------------------*/
	.form_bottom .btn { width: 49%; margin-bottom: 4px; }
	.form_bottom .btn_d { width: 100%; margin-bottom: 4px; }
	
	/* ----------------------- form wrapper -----------------------*/
	.form_wrapper .tab .tablinks { height: 36px; line-height: 36px; font-size: 13px; width: 32.5%; display: block; float: left; margin-right: 1%; }
	.form_wrapper .tab .tablinks:last-child { margin-right: 0; }
}
@media screen and (max-width:580px) {
    /*---------------- notice qna 질문답변 게시판 ----------------*/
    .notice .cont.qna a .box {flex-wrap: wrap;}
    .notice .cont.qna .box .tit, .notice .cont.qna a>div .info {width: 100%;}
}
@media screen and (max-width:480px) {
    .type_pic.type_tit .image_grid_v .cont {width: 100%; margin: 0px;}
    .type_pic.type_brochure .image_grid_v .cont {width: 100%;margin-right: 0px;margin-top: 0;}
}