ul.gall_list * {transition: all 0.3s ease-out; word-break: normal; }
ul.gall_list {width:100%; display:flex; flex-wrap:wrap;  gap:20px; }
ul.gall_list li {width:calc(25% - 15px);   position:relative; cursor:pointer }


ul.gall_list li .img {position:relative; height:300px; overflow:hidden; cursor:pointer; }
ul.gall_list li img {width:100%;   }
ul.gall_list li div.img_bg {width:100%; height:100%; position:absolute; left:50%; top:50%; transform: translate(-50%, -50%);   }
ul.gall_list li:hover  div.img_bg {border:1px solid red; width:115%; height:115%}


ul.gall_list li .text { margin-top:10px; box-sizing:border-box; color:#555; font-size:15px; box-sizing:border-box;}
ul.gall_list li h5 {font-size:1.1em; color:#222; font-weight:400; margin-bottom:3px; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; word-wrap: break-word; }
ul.gall_list li h5 b {font-weight:700}
ul.gall_list li h5 + p { overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; word-wrap: break-word; }
ul.gall_list li p.date {font-size:14px; margin-top:4px; letter-spacing:0; color:#555; font-weight:300}

 

 @media all and (max-width:1101px) {
		ul.gall_list {gap:20px 0; justify-content:space-between }
		ul.gall_list li {width:48% }
		ul.gall_list li .img {height:47vw }
 

}
 

.table { width: 100%; display: table;  }

.row {display: table-row; background: #fff; font-size:1em; }
.row.th {font-weight:500; color: #fff; background:#333;}
.row.notice {background-color:#eff8fc}
 
.cell { padding:11px 12px; display:table-cell; vertical-align:middle;  text-align:Center;  border-bottom:1px solid #ddd; color:#666}
.cell a {color:#111}
.row.th .cell { color: #fff}

.cell.td_tit  {width:70%; text-align:left;  line-height:1.3; font-size:1em; font-weight:400}
.cell.td_tit a:hover {text-decoration:underline}
 
.cell.td_tit  a {color:#222}

.cell.td_tit span {background-color:var(--main_c); color:#fff; width:20px; height:20px; display:inline-flex; align-items:center; font-weight:300; font-size:13px;   justify-content:center; line-height:0; border-radius:2px; margin-left:5px;  vertical-align:5px;  box-sizing:border-box}
.cell.no {width:50px; }
.cell.class {width:100px; }
 

@media screen and (min-width:900px) {
  
   .cell.name {width:100px; white-space:nowrap;  }
   .cell.date {width:100px;  white-space:nowrap;   }
   .cell.hit {width:80px; white-space:nowrap;  }

}
 
@media screen and (max-width:1100px) {
	 .cell.td_tit  {width:50%; }

 }


@media screen and (max-width:900px) {
	.table { display: block; font-size:1em }
    .table * {line-height:1.3}
	.row {padding:13px 2%; display: block;  border-bottom:1px solid #ddd}
	.row.th {padding: 0; height: 2px; }
	.row.th .cell { display: none; }
	  
	.row .cell:before { margin-bottom: 3px; content:attr(data-title); text-transform: uppercase;color:#555;}
	.cell { padding:0; padding-right:5px; display: block; border-bottom:none; text-align:left}
 	.cell_col {display:inline-block; width:auto; font-size:.9em;  }
	 
	.cell.td_tit  {width:100%; font-size:1.05em;  display:inline-block}
    .cell.no {display:none}
	.cell_col.cell_select {width:100%; margin-bottom:8px }

    .data .cell.td_tit {margin-bottom:5px} 
  
}
 
 
/*뷰페이지*/
 
.board_view_wrap {
    max-width: 900px;
    margin: 0 auto;
    padding: 60px 20px;
}

/* 제목 */
.view_title h3 {
    font-size: 28px;
    font-weight: 700;
    padding-bottom: 20px;
    border-bottom: 2px solid #222;
}

/* 정보 */
.view_info {
    display: flex;
    gap: 20px;
    padding: 15px 0;
    font-size:.9em;
    color: #666;
    border-bottom: 1px solid #ddd;
	background-color:#fff; 
}
.view_info a {color:#111}
.view_info a:hover {text-decoration:underline}
.view_info b {
    color: #222;
    margin-right: 6px;
}

/* 첨부파일 */
.view_file {
    padding: 15px 0;
    border-bottom: 1px solid #ddd;
  font-size:.9em;
  background-color:#fff; 
}

.view_file a {
    margin-left: 10px;
    color: #005bac;
    text-decoration: underline;
}

/* 내용 */
.view_content {
    padding: 40px 0;
    font-size: 16px;
    line-height: 1.8;
    color: #333;
	background-color:#fff; 
 }

 
.view_content * {all: revert;}
.view_content iframe { all: revert-layer; }
.view_content ul, .view_content ol, .view_content li {  all: revert;   }


/* 이전/다음글 */
.view_nav {
    margin-top: 30px;
    border-top: 1px solid #222;
	background-color:#fff; 
}

.view_nav dl {
    display: flex;
    padding: 12px 0;
    border-bottom: 1px solid #ddd;
	font-size:.9em;
	color:#333
}

.view_nav dt {
    width: 80px;
    font-weight: 600;
    color: #222;
}

.view_nav dl a {
    color: #333;
}

.view_nav dd a:hover {
    text-decoration: underline;
}
.view_nav dl a:hover {text-decoration:underline}

/* 버튼 */
.view_btns {
    margin-top: 40px;
    text-align: center;
}

.btn_list {
    display: inline-block;
    padding: 12px 40px;
    border: 1px solid #222;
    color: #222;
    font-weight: 600;
}

.btn_list:hover {
    background: #222;
    color: #fff;
}
 
.btn_wrap {width:100%; display:inline-block }
 
 a.list_btn {
    text-align: center;
    line-height: 31px;
    padding: 0 20px;
    font-weight: 400;
    font-size: 0.90em;
    float: right;
    margin-top: 15px;
    margin-left: 5px;
    background-color: #fff;
	border:1px solid #ddd; 
    border-radius: 3px;
    color: #444;
}


  
/*페이지*/


.page {text-align:center;   width:100%; margin-top:30px; display:inline-block; font-size:0}
.page ul { width:100%; text-align:center; }
.page li { display:inline-block; font-size:14px; font-weight:300;  }
 

.page a {
	display:inline-block;
 	text-decoration:none; vertical-align:middle;
 	border:1px solid #d1d1d1; background-color:#fff;  width:29px; line-height:29px; height:29px;  margin-left:-1px; color:#999; text-align:Center; 
   }

.page img {width:29px; height:29px; vertical-align:top;  }
 
.page a.ov  {border:1px solid #555; background-color:#555; color:#fff;}

 
 
 @media screen and (max-width:800px) {

		.page a { width:25px; line-height:25px; height:25px; }
     	.page img {width:25px; height:25px; vertical-align:top;  }

}

   
 

/*search*/
 						
.search {margin-bottom:30px; height:40px;  width:100%; display:flex;  justify-content:flex-end; font-size:15px}
.search input  {width:30%;  border:1px solid #ddd; margin-left:-1px;  padding-left:10px; font-size:1em;   color:#333;  }
.search select  { font-size:1em;  color:#333; border:1px solid #ddd;  vertical-align:middle; width:100px; padding-left:5px  }
.search a {background-color:#333;   color:#fff; line-height:40px; font-size:1em;  padding:0 20px; display:inline-block; vertical-align:middle;}
									   
 


.faq_list {
    border-top: 2px solid #222;
}

.faq_item {
    border-bottom: 1px solid #ddd;
}

.faq_q {
    width: 100%;
    padding: 15px 10px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: none;
    border: none;
    cursor: pointer;
      text-align: left;
	  font-size:1.05em; 
	  background-color:#fff; 
	  font-weight:500; 
}

.faq_q .farrow {
    width: 10px;
    height: 10px;
    border-right: 2px solid #333;
    border-bottom: 2px solid #333;
    transform: rotate(45deg);
    transition: transform .3s ease;
	

}

.faq_item.active .faq_q .farrow {
    transform: rotate(-135deg);
}

.faq_a {
    max-height: 0;
    overflow: hidden;
    transition: max-height .35s ease;
}

.faq_a p {
    padding: 0 10px 20px;
     color: #555;
     background-color:#fff; 

}


.application {max-width:800px !important}
.application p.r {margin-top:40px; color:#666; font-size:.98em; font-weight:300}

.application ul {width:100%; background-color:#fff; border:2px solid #ddd;  padding:30px;  box-sizing:border-box; display:flex; flex-wrap:wrap;  margin:0 auto;  margin-top:10px;}
.application ul li {width:100%; display:flex; align-items:center; margin-bottom:15px; box-sizing:border-box;    color:#333; line-height:1.5}
.application ul li h3 {font-size:1.05em; margin-bottom:5px; font-weight:600; color:#333; width:170px; flex-shrink:0; line-height:1.1; }
.application ul li h3.point {display:flex; gap:5px}
.application ul li h3.point:after {width:6px; height:6px; border-radius:50%; background-color:var(--main_c);  content:''; }
.application span.point {width:6px; height:6px; border-radius:50%; background-color:var(--main_c); display:inline-block; vertical-align:top; margin-right:3px}

.application ul li > div {width:100%; display:flex; align-items:Center}
.application ul li > div.flex_none {display:inline-block}
.application ul li > div > div {width:100%}

.application ul li input {vertical-align:middle;}
.application ul li input + a.s_btn { margin-left:5px; line-height:35px}
.application ul li select {height:37px; font-size:.95em; padding:0 5px; box-sizing:border-box; color:#333; border:1px solid #999;  }

.application ul li  input[type="file"] { font-size:.95em; padding-left:0}
.application ul li  input[type="checkbox"] { margin-right:5px; }
.application ul li  input[type="text"] { height: 40px; font-size: .95em; width:100%; border:none; border-bottom:1px solid #333;  box-sizing:border-box; }
 
.application ul li textarea { height: 150px; width:100%; font-size: .95em; padding:10px;  border:1px solid #333; box-sizing:border-box; }
 
.application ul li div.check_div  {flex-wrap:wrap; border-top:1px solid #ddd; border-left:1px solid #ddd;}
.application ul li div.check_div p {width:50%; border-bottom:1px solid #ddd;  border-right:1px solid #ddd; box-sizing:border-box; padding:10px; }
.application ul li div.check_div p b {font-weight:500; margin-right:15px}
 
.application ul li div.email input[type="text"]:nth-child(1)  {width:40%; margin-right:10px}
.application ul li div.email input[type="text"]:nth-child(2) {width:60%; margin-left:10px}


.application p.info_txt {color:#444; font-size:.97em}
.application .radio_div {display:flex}
.application .radio_div p  {margin-right:20px}

textarea.privacy_text {width:100%; height:145px;   font-size:.95em; font-weight:300; line-height:1.5;  color:#333; box-sizing:border-box; padding:0}
.privacy_text {width:100%; background-color:#f9f9f9; box-sizing:border-box; padding:15px;  font-size:.95em; font-weight:300; line-height:1.5;  color:#333; }
.privacy_check {margin-top:10px; }
.privacy_check b {color:#000; font-weight:600; text-decoration:underline}

.application h4.tit {font-size:1.3em}

.info_pre {width:100%; border:1px solid #999;  box-sizing:border-box; padding:15px; margin-top:10px; font-size:.97em; line-height:1.4; color:#444;  }
.info_pre + div {text-align:right; margin-top:10px; box-sizing:border-box; color:#444}

@media screen and (max-width:900px) {
		.application ul {padding:0; border:none}
		.application ul li {flex-wrap:wrap; padding:13px 0; margin-bottom:0}
		.application ul li.col-2 {width:100%; padding-right:0}
		.application ul li.col-2:nth-child(2n) {padding-right:0; padding-left:0}

		.application ul li h3 {width:100%; margin-bottom:5px }

		.application ul li >  div {width:100%; }
		.application  .flex.gap10 {gap:5px; margin-top:10px}
		.application  .flex.gap10 p {width:100%; }

}

 