@charset "utf-8";

.img-thumbnail { max-width: 100%; height: auto; }

/* 게시판 검색창 */
.searchBox { text-align: right; }
.searchBox select { display: inline-block; width: 88px; height: 28px; line-height: 28px; box-sizing: border-box; vertical-align: middle; border: 1px solid #dedede;}
.searchBox input { display: inline-block; height: 28px; line-height: 28px; box-sizing: border-box; vertical-align: middle; border: 1px solid #dedede;}
.searchBox input[type=button] { background: #4d3c7c; font-size: 0.75em; width: 40px; text-align: center; border: none; color: #fff; cursor: pointer; }

/* 게시판 페이지상태 */
.pageState { margin-top: -6px; font-size: 0.813em; margin-bottom: 5px; }
.pageState span { font-weight: 600; }


/* BOARD LIST */
.boardList { width: 100%; border-top: 3px solid #4d3c7c; }
.boardList .post { padding: 15px 10px; box-sizing: border-box; display: flex; justify-content: space-between; border-bottom: 1px solid #ccc; }
/*.boardList .post:hover { background: #f7fbff; }*/

.boardList .postNum { display: block; width: 7%; text-align: center; color: #767676; font-size: 0.875em; }
.boardList .postWrap { width: 70%; box-sizing: border-box; padding: 0 10px; }
.boardList .postTitle { font-size: 1em; margin-bottom: 7px; }
.boardList .postTitle a:hover { text-decoration: underline; color: #4d3c7c; }
.boardList .postInfo { display: flex; font-size: 0.75em; color: #767676; }
.boardList .postInfo li::after { content: '|'; padding-left: 10px; margin-right: 10px; }
.boardList .postInfo li:last-child::after { display: none; }
.boardList .postInfo strong { font-weight: 400; padding-left: 3px;}

.boardList .postName { width: 23%; text-align: right; align-self: center; font-size: 0.925em; }

.boardList .pwdWin { position:absolute; left:350px; border:solid 2px #4d3c7c; padding:6px 8px 8px 8px; background:#fff; display:none; }
.boardList .pwdWin input { height: 25px; border: 1px solid #ccc; box-sizing: border-box; }
.boardList .pwdWin button { padding: 5px 15px; font-size: 0.813em; border: 1px solid #dcdcdc; border-radius: 2px; background: #efefef; }
.boardList .pwdWin button:hover { background: #dde8f2; }

.boardList .staticDate { width: 15%; box-sizing: border-box; padding: 0 10px; }
.boardList .staticCnt { width: 5%; text-align: center; font-size: 0.925em; }
.boardList .staticBar { width: 73%; font-size: 0.925em; }
 
#progress {
    appearance: none;
}
#progress::-webkit-progress-bar {
    background:#f0f0f0;
    border-radius:10px;
    box-shadow: inset 3px 3px 10px #ccc;
}
#progress::-webkit-progress-value {
    border-radius:10px;
    background: #1D976C;
    background: -webkit-linear-gradient(to right, #93F9B9, #1D976C);
    background: linear-gradient(to right, #93F9B9, #1D976C);

}

/* 썸네일형 게시판 */
.thumBoardList { width: 100%; border-top: 3px solid #4d3c7c; display: flex; flex-wrap: wrap; border-bottom: 1px solid #ccc; padding: 20px 0 10px; }
.thumBoardList .post { width: calc(33.3% - 15px); padding-bottom: 22%; box-sizing: border-box; height: 0; position: relative;  margin: 0 30px 40px 0; border: 1px solid #ccc; }
.thumBoardList .post a { display: block; width: 100%; height: 100%; overflow: hidden; position: absolute; padding: 10px; box-sizing: border-box; padding-bottom: 50px; }

.thumBoardList figure { width: 100%; height: 100%; background-position: center; background-size: cover; background-repeat: no-repeat;  }

.thumBoardList .postOver { position: absolute; left: 0; bottom: 0; z-index: 10; width: 100%; height: 50px; display: flex; flex-wrap: wrap; padding: 10px; box-sizing: border-box; justify-content: center; align-content: center; box-sizing: border-box; }
.thumBoardList .postTitle { font-weight: 500; margin-bottom: 0px; text-align: center; word-break: keep-all; color: #4d3c7c; font-size: 1.125em; font-weight: 600;  }
.thumBoardList .postDate { display: block; width: 100%; text-align: center; font-size: 0.875em; color: #4d3c7c; opacity: 0.7; }

.thumBoardList .post:hover { background: #4d3c7c; }
.thumBoardList .post:hover .postTitle { color: #fff; }


/* 비디오 게시판 */
.videoBoardList { width: 100%; border-top: 3px solid #4d3c7c; display: flex; flex-wrap: wrap; border-bottom: 1px solid #ccc;  }
.videoBoardList .post { width: 50%; box-sizing: border-box; position: relative; padding: 10px 10px 25px; }

.videoBoardList figure { width: 100%; margin-bottom: 10px;  }
.videoBoardList figure iframe { width: 100%; height: 375px;  }

.videoBoardList .postTitle { font-weight: 500; margin-bottom: 7px; word-break: keep-all; text-align:center; }
.videoBoardList .postDate { display: block; width: 100%; font-size: 0.875em; opacity: 0.7; }



/* 비디오 게시판2 */
.videoBoardList2 { width: 100%; border-top: 3px solid #4d3c7c; display: flex; flex-wrap: wrap; border-bottom: 1px solid #ccc;  }
.videoBoardList2 .post { width: 33%; box-sizing: border-box; position: relative; padding: 10px 10px 25px; }

.videoBoardList2 figure { width: 100%; margin-bottom: 10px;  }
.videoBoardList2 figure iframe { width: 100%; height: 250px;  }

.videoBoardList2 .postTitle { font-weight: 500; margin-bottom: 7px; word-break: keep-all; text-align:center; }
.videoBoardList2 .postDate { display: block; width: 100%; font-size: 0.875em; opacity: 0.7; }


/* 채용 게시판 */
.recrBoard { display: grid; grid-template-columns: 1fr 1fr; gap: 30px; }
.recrBoard  .post { display: flex; align-items: center; justify-content: space-between; gap: 20px; border-bottom: 1px solid #ddd; padding: 20px 10px; font-family: 'Pretendard', sans-serif; }
.recrBoard  .post a { display: flex; align-items: center; justify-content: space-between; text-decoration: none; color: #333; width: 100%; }
.recrBoard  .post figure { flex: 0 0 140px; height: 80px; display: flex; align-items: center; justify-content: center; }
.recrBoard  .post figure img { max-width: 100%; max-height: 100%; object-fit: contain; }
.recrBoard  .post .recrInfo { flex: 1; padding: 0 20px; }
.recrBoard  .post .recrInfo p { font-size: 1.25em; font-weight: 600; margin: 0 0 5px 0; }
.recrBoard  .post .recrInfo span { font-size: 0.9rem; color: #555; }
.recrBoard  .post .recrBtns { flex: 0 0 auto; }
.recrBoard  .post .recrBtns button { background-color: #7f3c8d; color: #fff; border: none; padding: 8px 16px; border-radius: 4px; font-size: 0.85rem; cursor: pointer; }
.recrBoard  .post .recrBtns button:hover { background-color: #4d3c7c; }






.pagination { text-align: center; margin: 30px auto 0; clear:both; }

.pagination a {color:#767676; border:solid 1px #dedede; display:inline-block; margin:2px; width:25px; height:25px; text-align:center; font-size:12px; line-height:25px; vertical-align:middle;}
.pagination a.on {color:#ffffff; background:#4d3c7c; border:1px solid #4d3c7c; display:inline-block; margin:2px; width: 25px;  height: 25px; text-align: center; font-size: 12px; line-height: 25px; vertical-align: middle;}
.pagination .prev_g a, .pagination .next_g a {width:25px; height:25px; background:url('../img/pagination_arrow.png') no-repeat;}
.pagination .prev_g a.page_p_end {background-position:0 0;}
.pagination .prev_g a.page_p {background-position:-25px 0;}
.pagination .next_g a.page_n_end {background-position:-75px 0;}
.pagination .next_g a.page_n {background-position:-50px 0;}

.pagination a.M_on { color:#fff; background:#4d3c7c; border:#606060 solid 1px; font-weight:500; }
.pagination a.Arrow { padding:1px 0 1px 0;}

.pagination .pager span {color:#777777; border:solid 1px #dedede; display:inline-block; margin:0 2px; width:25px; height:25px; text-align:center; font-size:12px; line-height:25px; vertical-align:middle; cursor:pointer; }
.pagination .pager span.on {color:#ffffff; background:#555e65; border:1px solid #6c777f; display:inline-block; margin:0 2px; width: 25px;  height: 25px; text-align: center; font-size: 12px; line-height: 25px; vertical-align: middle; cursor:pointer;}


/* 게시판 버튼 */
.boardBtnList { width: 100%; text-align: right; margin-top: 20px; }
.boardBtnList::after { content: ''; display: block; clear: both; float: none; }
.boardBtnList li { display: inline-block; margin-bottom: 5px; }
.boardBtnList li.left { float: left; }
.boardBtnList li a { display: block; padding: 5px 15px; font-size: 0.813em; border: 1px solid #dcdcdc; border-radius: 2px; background: #efefef; }
.boardBtnList li a:hover { background: #dde8f2; }
.boardBtnList li a:hover { background: #dde8f2; }
.boardBtnList li button { display: block; padding: 5px 15px; font-size: 0.813em; border: 1px solid #dcdcdc; border-radius: 2px; background: #efefef; }
.boardBtnList li button:hover { background: #dde8f2; }







/* BOARD VIEW */
.boardView { width: 100%; border-top: 3px solid #4d3c7c; border-bottom: 1px solid #ccc; margin-bottom: 20px;  }

.boardView .postTop { padding: 17px; box-sizing: border-box; border-bottom: 1px solid #ccc; }
.boardView .postTitle { font-size: 1.125em; font-weight: 500; margin-bottom: 7px; color: #222; }
.boardView .postInfo { display: flex; flex-wrap: wrap; font-size: 0.75em; color: #888; }
.boardView .postInfo li::after { content: '|'; padding-left: 10px; margin-right: 10px; }
.boardView .postInfo li:last-child::after { display: none; }
.boardView .postInfo strong { font-weight: 600; padding-left: 3px;}

.boardView .postAttachment { padding: 17px; background: #efefef; border-top: 1px solid #ccc; display: flex;  }
.boardView .postAttachment dt { font-size: 0.75em; width: 62px; line-height: 25px; }
.boardView .postAttachment dd li { margin-top: 5px;}
.boardView .postAttachment dd li:first-child { margin-top: 0;}
.boardView .postAttachment dd span { font-size: 0.875em; text-decoration: underline; margin-right: 10px; }
.boardView .postAttachment dd a { display: inline-block; padding: 3px 7px 3px 23px; border: 1px solid #ccc; font-size: 0.688em; border-radius: 3px; }
.boardView .postAttachment dd a.fileDown { background: #fff url('../img/downIcon.png') no-repeat left 7px center; }
.boardView .postAttachment dd a.filePreview { background: #fff url('../img/previewIcon.png') no-repeat left 7px center; }
.boardView .postCon { padding: 28px 17px; font-size: 0.875em; }


.boardViewList { width: 100%; border-top: 3px solid #333; margin-top: 50px; }
.boardViewList dl { padding: 11px 30px 11px 0; box-sizing: border-box; display: flex; border-bottom: 1px solid #ccc; font-size: 0.875em; align-items: baseline;  word-break: keep-all; }
.boardViewList dl dt { width: 15%; text-align: center; border-right: 1px solid #e4e4e4; font-weight: 500; }
.boardViewList dl dd { width: 85%; box-sizing: border-box; padding-left: 20px; }
.boardViewList dl a:hover { text-decoration: underline; }

/* 댓글 */
.comment { width: 100%; margin-top: 20px; border-top: 1px solid #ccc; }
.comtView dl { display: flex; flex-wrap: wrap; padding: 10px; box-sizing: border-box; border-bottom: 1px solid #ccc; position: relative; font-size: 0.975em; }
.comtView dl dt { font-weight: 500; line-height: 1.5; margin-right: 10px; }
.comtView dl dd.date { font-size: 0.75em; line-height: 1.5; padding: 4px 0 0; color: #666; }
.comtView dl dd.edit { position: absolute; right: 5px; top: 0px;}
.comtView dl dd.edit button { color: transparent; text-indent: -9999px; font-size: 0; display: inline-block; width: 12px; height: 12px;}
.comtView dl dd.edit button.editBtn { background: url('../img/editIcon.png') no-repeat center center; margin-right: 3px; }
.comtView dl dd.edit button.delBtn { background: url('../img/btn_allNavClose.png') no-repeat center center; }
.comtView dl dd:last-child { width: 100%; margin-top: 10px; font-size: 0.875em; }

.comtWrite { width: 100%; margin-top: 10px; }
.comtWrite form { width: 100%; display: block; box-sizing: border-box; padding: 10px; display: flex; flex-wrap: wrap; }
.comtWrite dl { display: flex; flex-wrap: wrap; width: 30%; font-size: 0.875em; }
.comtWrite dl dt label { line-height: 1.8; }
.comtWrite dl dd { margin-left: 10px; }
.comtWrite dl dd input { height: 25px; border: 1px solid #ccc; box-sizing: border-box; }
.comtWrite textarea { width: 100%; height: 80px; border: 1px solid #ccc; box-sizing: border-box; padding: 10px; margin-top: 10px; }
.comtWrite .boardBtnList { margin-top: 10px; }
.comtWrite .req { font-size: 0.813em; color: #E20000; }

.deletebtn { background: #f2f2f2; text-align: center; padding: 30px 5px;margin-bottom: 15px; border-bottom: 1px solid #ccc; }
.deletebtn label { margin-right: 10px;}
.deletebtn input#delPW { height: 25px; border: 1px solid #ccc; box-sizing: border-box; }
.deletebtn button { padding: 2px 15px; font-size: 0.813em; border: 1px solid #222; border-radius: 2px; background: #4b4b4b; margin-left: 5px; color: #fff; }

.editbtn { background: #f2f2f2; padding: 15px 10px;margin-bottom: 15px; border-bottom: 1px solid #ccc; }
.editbtn label { margin-right: 10px;}
.editbtn input { height: 25px; border: 1px solid #ccc; box-sizing: border-box; }
.editbtn textarea { width: 100%; height: 80px; border: 1px solid #ccc; box-sizing: border-box; padding: 10px; margin-top: 10px; }


/* 온라인채용관 VIEW */
.cpnInfo { display: flex; flex-wrap: wrap; gap: 20px; padding: 20px; border: 1px solid #ddd; border-radius: 4px; } 
.cpnInfo > figure { flex: 0 0 220px; } 
.cpnInfo > figure img { max-width: 100%; border: 1px solid #ccc; border-radius: 4px; } 
.cpnInfo > div { flex: 1; display: flex; flex-direction: column; gap: 10px; } 
.cpnInfo p { font-size: 0.95rem; color: #333; line-height: 1.4; } 
.cpnInfo .cpnDesc { display: flex; flex-direction: column; gap: 5px; margin-top: 10px; } 
.cpnInfo .cpnDesc dl { display: flex; gap: 10px; margin: 0; font-size: 0.9rem; color: #555; } 
.cpnInfo .cpnDesc dt { font-weight: 600; color: #7f3c8d; min-width: 80px; } 
.cpnInfo .cpnDesc dd { margin: 0; flex: 1; } 
.cpnInfo .cpnPic { margin-top: 10px; display: flex; gap: 10px; flex-wrap: wrap; } 
.cpnInfo .cpnPic img { max-width: 250px; border: 1px solid #ccc; border-radius: 4px; } 


.cpnInfo2 { width: 100%; border-top: 3px solid #4d3c7c; border-bottom: 1px solid #ccc; margin-bottom: 20px;  box-sizing: border-box; padding: 0 5px; }
.cpnInfo2 textarea { width: 100%; box-sizing: border-box; padding: 5px; height: 50px; }
.cpnInfo2 input { width:100%; height: 30px; border: 1px solid #ccc; box-sizing: border-box; }
.cpnInfo2 div { padding: 10px 0 10px 20px; }
.cpnInfo2 div dl { display: flex; padding: 5px 0; }
.cpnInfo2 div dl dt { font-weight: 500; width: 80px; margin-right: 10px;}
.cpnInfo2 div dl dd { width: calc(100% - 90px);  word-break: keep-all; }

.recrInfo2 input { width:100%; height: 30px; border: 1px solid #ccc; box-sizing: border-box; }

table.recrInfo2 { width: 100%; border-collapse: collapse; margin-top: 20px; font-size: 0.95rem; }
table.recrInfo2 thead th { background-color: #7f3c8d; color: #fff; font-weight: 600; padding: 10px; border: 1px solid #ddd; }
table.recrInfo2 tbody td { padding: 8px; border: 1px solid #ddd; color: #333; text-align: center; }
table.recrInfo2 tbody tr:nth-child(even) { background-color: #f9f9f9; }

div.recrInfo2 { display: flex; flex-direction: column; gap: 8px; margin-top: 20px; font-family: 'Pretendard', sans-serif; font-size: 0.95rem; }
div.recrInfo2 dl { display: flex; gap: 10px; border-bottom: 1px solid #ddd; padding: 8px 0; }
div.recrInfo2 dt { min-width: 100px; font-weight: 600; color: #7f3c8d; }
div.recrInfo2 dd { margin: 0; flex: 1; color: #333; line-height: 1.4; word-break: keep-all;  }

.recrWrite { display: flex; flex-direction: column; gap: 10px; margin-top: 20px; font-family: 'Pretendard', sans-serif; font-size: 0.95rem; }
.recrWrite dl { display: flex; gap: 10px; border-bottom: 1px solid #ddd; padding: 8px 0; flex-wrap: wrap; }
.recrWrite dt { min-width: 120px; font-weight: 600; color: #7f3c8d; }
.recrWrite dd { margin: 0; flex: 1; display: flex; flex-wrap: wrap; gap: 5px; }
.recrWrite input[type="text"], .recrWrite input[type="password"], .recrWrite input[type="tel"], .recrWrite input[type="file"], .recrWrite select { padding: 6px; border: 1px solid #ccc; border-radius: 4px; font-size: 0.9rem; }
.recrWrite select { min-width: 80px; }
.recrWrite .req { color: #d00; font-size: 0.8rem; margin-left: 5px; font-weight: 400; }
.policy { margin-top: 20px; border: 1px solid #ddd; padding: 10px; line-height: 1.4; font-size: 0.9rem; background: #fafafa; }
.policy h4 { font-size: 1rem; margin: 10px 0 5px 0; color: #7f3c8d; }
.policy table { width: 100%; border-collapse: collapse; margin-top: 10px; font-size: 0.9rem; }
.policy table th { background: #7f3c8d; color: #fff; padding: 6px; border: 1px solid #ccc; }
.policy table td { padding: 6px; border: 1px solid #ccc; }
.agrCheck { margin: 10px 0 20px; display: block; }
.agrCheck #checkBox { margin-right: 5px; width: 15px; height: 15px; vertical-align: middle; }

.recBtns { text-align: center; }
#recUpload { background-color: #7f3c8d; color: #fff; padding: 10px 30px; border: none; border-radius: 4px; font-size: 1rem; cursor: pointer; }
#recUpload:hover { background-color: #4d3c7c; }
#recCancel { background-color: #fff; color: #7f3c8d; border: 1px solid #7f3c8d; padding: 10px 30px; border-radius: 4px; font-size: 1rem; cursor: pointer; margin-left: 10px; }
#recCancel:hover { background-color: #f4eef6; }


/* 채용설명회 */

.bdTopTextBox { box-sizing: border-box; padding: 15px 15px 10px; border: 5px solid #efefef; font-size: 0.95em; line-height: 1.8; margin-bottom: 20px; }
.bdTopTextBox span { color: #db0000; margin-top: 5px; font-size: 0.875em; }
.bdTopTextBox strong { display: inline-block; line-height: 1.4; background: linear-gradient(to top, #ffe400 50%, transparent 50%); }

.bdTopList li { padding-left: 10px; position: relative; font-size: 0.95em; line-height: 1.2; margin: 0 0 10px; }
.bdTopList li::before { content: '-'; position: absolute; left: 0; top: 2px; }
.bdTopList li span.warning { display: block;  color: #ef0000; font-size: 0.9em; word-break: keep-all; position: relative; padding-left: 15px; margin: 3px 0 0; }
.bdTopList li span.warning::before { content: '※'; display: block; position: absolute; left: 0; top: 1px; color: #ef0000; text-align: center; font-size: 12px;  }


/* BOARD WRITE */
.boardWrite { width: 100%; border-top: 3px solid #4d3c7c; border-bottom: 1px solid #ccc; margin-bottom: 20px;  }
.boardWrite .req { font-size: 0.813em; color: #E20000; }
.boardWrite dl { display: flex; font-size: 0.875em; padding: 12px 0; border-bottom: 1px solid #ccc; width: 100%; }
.boardWrite dl dt { width: 15%; box-sizing: border-box; padding: 0 10px; text-align: center;  line-height: 25px; }
.boardWrite dl dd { width: 85%; box-sizing: border-box; padding: 0 10px; }

.boardWrite dl dd input[type=text] { height: 30px; border: 1px solid #ccc; box-sizing: border-box;  }
.boardWrite dl dd input[type=tel] { width: 50px; height: 30px; border: 1px solid #ccc; box-sizing: border-box; }
.boardWrite dl dd select { height: 30px; border: 1px solid #ccc; box-sizing: border-box; }
.boardWrite dl dd input[type=radio] { line-height: 30px; }


.boardWrite .postTitle input[type=text] { width: 100%; }
.boardWrite .postTitle input[type=password] { width: 200px; height: 30px; border: 1px solid #ccc; box-sizing: border-box; }
.boardWrite .postDate p { display: inline-block; }
.boardWrite .postDate p:first-child { margin-right: 5px;}
.boardWrite .postDate input[type=text] { width: 100px; margin-right: 5px; }
.boardWrite .postDate .calendarBtn { line-height: 30px; margin-right: 5px; }
.boardWrite .postDate .calendarBtn img { width: 20px; vertical-align: middle;}

.boardWrite .postCon { padding: 15px 12px; box-sizing: border-box; border-bottom: 1px solid #ccc;  }
.boardWrite .postCon p { font-size: 0.875em; line-height: 1.2; margin-bottom: 10px; }
.boardWrite .postCon textarea { width: 100%; height: 300px; box-sizing: border-box; border: 1px solid #ccc; }

.boardWrite .postFile { border: 0; }
.boardWrite .postFile li { margin-bottom: 5px; }





/* 참여기업 상단 */
.orDesc { margin-bottom: 50px; padding: 0 0 20px; border-bottom: 1px solid #ccc;  font-size: 1.125em; line-height: 1.75; color: #333; word-break: keep-all; }