@charset "utf-8";

#online_recruit {
	position:relative;
	width:100%;
	margin:0;
	padding:0;
	text-align:center;
	overflow:hidden;
}

/* 온라인 입사지원 시스템 */
#step01 {
	width:600px;
	margin:0 auto;
	padding:0;
	border:8px solid #1a1a1a;
}
#step01 .setp_footer {
	font-size:15px;
	color:#555;
	padding:20px 0;
	background:#f7f7f7;
	border-top:1px solid #ddd;
	text-align:center;
}
#step01 .recruit_write {
	width:240px;
	font-size:24px;
	color:#fff;
	padding:13px 0 13px;
	background:#b52025;
	border:3px solid #b6121b;
	border-radius:10px;
	-moz-border-radius:10px;
	-webkit-border-radius:10px;
	text-align:center;
	text-decoration:none;
	display:inline-block;
}
#step01 .recruit_write span {
	font-size:13px;
	color:#ccc;
	margin-top:5px;
	display:block;
}
#step01 .recruit_write:hover {
	color:#b6121b;
	background:#fff;
}
#step01 .recruit_write:hover span {
	color:#777;
}

/* 개인정보 동의서 */
#step02 {
	width:600px;
	margin:0 auto;
	padding:0;
	border:8px solid #1a1a1a;
}
#step02 fieldset {
	margin-top:10px;
	vertical-align:middle;
}
#step02 p {
	margin-top:40px;
	vertical-align:middle;
}

/* 입사지원서 */
#step03 {
	width:950px;
	margin:0 auto;
	padding:0;
	border:8px solid #1a1a1a;
}
#step03 .form_wrap {
	overflow:hidden;
}

/* 채용 공통 */
.setp_inner {
	padding:30px;
	overflow:hidden;
}
.kap_logo {
	height:40px;
	background:url('/image/recruit/kap_logo.png') 50% 50% no-repeat;
	display:block;
}
.recruit_tit01 {
	font-size:32px;
	font-weight:bold;
	letter-spacing:-1px;
	margin:0 auto;
	padding:10px 0 13px 0;
	border-bottom:1px solid #555;
	display:block;
}
.recruit_tit02 {
	font-size:16px;
	color:#333;
	font-weight:bold;
	margin:30px 0 0 0;
	padding:0;
	text-align:left;
}
.recruit_tit03 {
	font-size:20px;
	color:#1b1b1b;
	font-weight:bold;
	padding:0 0 0 20px;
	background:url('/image/common/con_txt_icon01.png') 0 60% no-repeat;
	text-align:left;
}
.recruit_tit04 {
	font-size:16px;
	color:#fff;
	font-weight:bold;
	margin:15px 0 0 0;
	padding:5px 0 6px 0;
	background:#333;
	text-align:center;
}
.info_txt01 {
	padding:0;
	text-align:justify;
}
.info_txt01 li {
	font-size:15px;
	color:#555;
	margin:0 0 10px 20px;
	padding:0;
	list-style:disc;
}
.info_txt02 {
	font-size:15px;
	color:#555;
	margin:0 auto;
	display:block;
}
.caution_txt {
	font-size:15px;
	color:#f44b3a;
	text-align:center;
	display:block;
}
.recruit_textarea {
	width:100%;
	height:150px;
	font-size:13px;
	color:#555;
	margin-top:15px;
	padding:10px;
	border:1px solid #eaeaea;
	text-align:left;
}
.btn_add {
	font-size:13px;
	color:#fff !important;
	padding:5px 15px 6px 15px;
	background:#aaa;
	border:none;
	border-radius:0 0 3px 3px;
	-moz-border-radius:0 0 3px 3px;
	-webkit-border-radius:0 0 3px 3px;
	text-align:center;
	text-decoration:none !important;
	vertical-align:middle;
	display:inline-block;
	cursor:pointer;
}
.caution_box {
	margin:15px 0 0 0;
	padding:8px;
	background:url('/image/common/info_box.png');
}
.caution_box .caution_inner {
	font-size:15px;
	color:#555;
	line-height:1.5em;
	margin:0 auto;
	padding:20px;
	background:#fff;
	text-align:justify;
	overflow:hidden;
}
.caution_box .caution_inner ul {
	margin:0;
	padding:0;
}
.caution_box .caution_inner li {
	font-size:13px;
	color:#555;
	margin:0 0 0 20px;
	padding:0;
	list-style:disc;
}
.caution_box .caution_inner em {
	font-size:13px;
	color:#f44b3a;
	font-style:normal;
	margin-left:10px;
	padding:0;
	vertical-align:top;
	display:inline-block;
}
.caution_box .caution_inner fieldset {
	margin:10px 0 0 0;
	padding:10px 0;
	border:2px solid #f44b3a;
}
.caution_box .caution_inner fieldset > span {
	font-size:15px;
	color:#333;
	font-weight:bold;
	padding:0 10px;
}
#regist_box {
	padding:20px 10px;
	background:#333;
}
#regist_box .caution_txt01 {
	font-size:18px;
	color:#fff;
}
#regist_box .caution_txt02 {
	font-size:15px;
	color:#fff000;
	margin:10px 0 0 0;
	padding:0 0 15px 0;
	border-bottom:1px solid #222;
}
#regist_box .password_wrap {
	margin:0 auto;
	padding:15px 0 0 0;
	border-top:1px solid #444;
}
#regist_box .password_wrap > label {
	font-size:15px;
	color:#fff;
	font-weight:bold;
	padding:0 5px;
}
.btn_wrap {
	margin:20px 0 0 0;
	padding:0;
}
.recruit_confirm {
	font-size:16px;
	color:#fff !important;
	font-weight:bold;
	padding:10px 25px 12px 25px;
	background:#b6121b;
	border:none;
	border-radius:3px;
	-moz-border-radius:3px;
	-webkit-border-radius:3px;
	text-align:center;
	text-decoration:none !important;
	vertical-align:middle;
	display:inline-block;
}
.recruit_modify {
	font-size:16px;
	color:#fff !important;
	font-weight:bold;
	padding:10px 25px 12px 25px;
	background:#6473ac;
	border:none;
	border-radius:3px;
	-moz-border-radius:3px;
	-webkit-border-radius:3px;
	text-align:center;
	text-decoration:none !important;
	vertical-align:middle;
	display:inline-block;
}
.recruit_delete {
	font-size:16px;
	color:#fff !important;
	font-weight:bold;
	padding:10px 25px 12px 25px;
	background:#12b5bb;
	border:none;
	border-radius:3px;
	-moz-border-radius:3px;
	-webkit-border-radius:3px;
	text-align:center;
	text-decoration:none !important;
	vertical-align:middle;
	display:inline-block;
}
.recruit_cancel {
	font-size:16px;
	color:#fff !important;
	font-weight:bold;
	padding:10px 25px 12px 25px;
	background:#555;
	border:none;
	border-radius:3px;
	-moz-border-radius:3px;
	-webkit-border-radius:3px;
	text-align:center;
	text-decoration:none !important;
	vertical-align:middle;
	display:inline-block;
}

.recruit_print {
    font-size:16px;
    color:#fff !important;
    font-weight:bold;
    padding:10px 25px 12px 25px;
    background: #5aa43c;
    border:none;
    border-radius:3px;
    -moz-border-radius:3px;
    -webkit-border-radius:3px;
    text-align:center;
    text-decoration:none !important;
    vertical-align:middle;
    display:inline-block;
}

.recruit_status {
    font-size:16px;
    color:#fff !important;
    font-weight:bold;
    padding:10px 25px 12px 25px;
    background: #2E9AFE;
    border:none;
    border-radius:3px;
    -moz-border-radius:3px;
    -webkit-border-radius:3px;
    text-align:center;
    text-decoration:none !important;
    vertical-align:middle;
    display:inline-block;
}

/* 입력항목 */
#form_type01 {
	font-size:14px;
	border-top:1px solid #333;
	border-bottom:1px solid #aaa;
}
#form_type01 dl {
	width:100%;
	margin:0;
	padding:0;
	display:table;
}
#form_type01 dt {
	color:#333;
	font-weight:bold;
	padding:8px 10px;
	background:#f9f9f9;
	border-right:1px solid #eaeaea;
	text-align:center;
	vertical-align:middle;
	display:table-cell;
}
#form_type01 dd {
	color:#555;
	padding:8px 10px;
	border-right:1px solid #eaeaea;
	text-align:left;
	vertical-align:middle;
	display:table-cell;
}
.hidden_object {
	display:none;
}
#tbl_recruit06 .pop_view {
	position:relative;
	color:#333;
	margin:0 0 0 10px;
	padding:3px 5px 5px 5px;
	background:#eaeaea;
	border:1px solid #ccc;
	vertical-align:middle;
	display:inline;
	cursor:pointer;
}
#tbl_recruit06 .pop_view span {
	position:absolute;
	top:-35px;
	left:130px;
	width:430px;
	color:#555;
	line-height:1.5em;
	padding:10px;
	background:#fff;
	border:2px solid #b52025;
	border-radius:5px;
	-moz-border-radius:5px;
	-webkit-border-radius:5px;
	-webkit-box-shadow:5px 5px 5px 0px rgba(0,0,0,0.35);
	-moz-box-shadow:5px 5px 5px 0px rgba(0,0,0,0.35);
	box-shadow:5px 5px 5px 0px rgba(0,0,0,0.35);
	text-align:center;
	display:none;
}
#tbl_recruit06 .pop_view:hover span {
	display:block;
	z-index:999;
}

#tbl_recruit01 {
	width:100%;
	font-size:13px;
	border-top:1px solid #333;
	border-bottom:1px solid #aaa;
	border-spacing:0;
}
#tbl_recruit01 tr:first-child th,
#tbl_recruit01 tr:first-child td {
	border-top:none;
}
#tbl_recruit01 th {
	padding:10px;
	background:#f8f8f8;
	border-right:1px solid #eaeaea;
	border-top:1px solid #eaeaea;
	vertical-align:middle;
}
#tbl_recruit01 td {
	color:#555;
	line-height:1.5em;
	padding:8px 10px;
	border-right:1px solid #eaeaea;
	border-top:1px solid #eaeaea;
	text-align:left;
}
#tbl_recruit01 td > span {
	margin-right:10px;
	vertical-align:middle;
	display:inline-block;
}
#tbl_recruit01 td > em {
	font-size:13px;
	color:#f44b3a;
	font-style:normal;
	margin-left:10px;
	padding:0;
	vertical-align:middle;
	display:inline-block;
}
#tbl_recruit01 th:last-child,
#tbl_recruit01 td:last-child {
	border-right:none;
}


#tbl_recruit11 {
    width:100%;
    font-size:13px;
    border-top:1px solid #333;
    border-bottom:1px solid #aaa;
    border-spacing:0;
}
#tbl_recruit11 tr:first-child th,
#tbl_recruit11 tr:first-child td {
    border-top:none;
}
#tbl_recruit11 th {
    padding:10px;
    background:#f8f8f8;
    border-right:1px solid #eaeaea;
    border-top:1px solid #eaeaea;
    vertical-align:middle;
}
#tbl_recruit11 td {
    color:#555;
    line-height:1.5em;
    padding:8px 10px;
    border-right:1px solid #eaeaea;
    border-top:1px solid #eaeaea;
    text-align:left;
}
#tbl_recruit11 td > span {
    margin-right:10px;
    vertical-align:middle;
    display:inline-block;
}
#tbl_recruit11 td > em {
    font-size:13px;
    color:#f44b3a;
    font-style:normal;
    margin-left:10px;
    padding:0;
    vertical-align:middle;
    display:inline-block;
}
#tbl_recruit11 th:last-child,
#tbl_recruit11 td:last-child {
    border-right:none;
}


#tbl_recruit21 {
    width:100%;
    font-size:13px;
    border-top:1px solid #333;
    border-bottom:1px solid #aaa;
    border-spacing:0;
}
#tbl_recruit21 tr:first-child th,
#tbl_recruit21 tr:first-child td {
    border-top:none;
}
#tbl_recruit21 th {
    padding:10px;
    background:#f8f8f8;
    border-right:1px solid #eaeaea;
    border-top:1px solid #eaeaea;
    vertical-align:middle;
}
#tbl_recruit21 td {
    color:#555;
    line-height:1.5em;
    padding:8px 10px;
    border-right:1px solid #eaeaea;
    border-top:1px solid #eaeaea;
    text-align:left;
}
#tbl_recruit21 td > span {
    margin-right:10px;
    vertical-align:middle;
    display:inline-block;
}
#tbl_recruit21 td > em {
    font-size:13px;
    color:#f44b3a;
    font-style:normal;
    margin-left:10px;
    padding:0;
    vertical-align:middle;
    display:inline-block;
}
#tbl_recruit21 th:last-child,
#tbl_recruit21 td:last-child {
    border-right:none;
}


#tbl_recruit02 {
	width:100%;
	font-size:13px;
	border-top:1px solid #333;
	border-bottom:1px solid #aaa;
	border-spacing:0;
}
#tbl_recruit02 th {
	padding:10px;
	background:#f8f8f8;
	border-right:1px solid #eaeaea;
	vertical-align:middle;
}
#tbl_recruit02 td {
	color:#555;
	line-height:2.5em;
	padding:5px 6px 8px 6px;
	border-right:1px solid #eaeaea;
	border-top:1px solid #eaeaea;
	text-align:center;
}
#tbl_recruit02 th:last-child,
#tbl_recruit02 td:last-child {
	border-right:none;
}

#tbl_recruit03 {
	width:100%;
	font-size:13px;
	border-top:1px solid #333;
	border-bottom:1px solid #aaa;
	border-spacing:0;
}
#tbl_recruit03 th {
	padding:10px;
	background:#f8f8f8;
	border-top:1px solid #eaeaea;
	border-right:1px solid #eaeaea;
	vertical-align:middle;
}
#tbl_recruit03 td {
	color:#555;
	line-height:2.5em;
	padding:5px 6px 8px 6px;
	border-right:1px solid #eaeaea;
	border-top:1px solid #eaeaea;
	text-align:center;
}
#tbl_recruit03 th:last-child,
#tbl_recruit03 td:last-child {
	border-right:none;
}

#tbl_recruit04 {
	width:100%;
	font-size:13px;
	border-top:1px solid #333;
	border-bottom:1px solid #aaa;
	border-spacing:0;
}
#tbl_recruit04 th {
	padding:10px;
	background:#f8f8f8;
	border-right:1px solid #eaeaea;
	vertical-align:middle;
}
#tbl_recruit04 td {
	color:#555;
	line-height:2.5em;
	padding:5px 6px 8px 6px;
	border-right:1px solid #eaeaea;
	border-top:1px solid #eaeaea;
	text-align:center;
}
#tbl_recruit04 th:last-child,
#tbl_recruit04 td:last-child {
	border-right:none;
}

#tbl_recruit05 {
	width:100%;
	font-size:13px;
	border-top:1px solid #333;
	border-bottom:1px solid #aaa;
	border-spacing:0;
}
#tbl_recruit05 th {
	padding:10px;
	background:#f8f8f8;
	border-right:1px solid #eaeaea;
	vertical-align:middle;
}
#tbl_recruit05 td {
	color:#555;
	line-height:2.5em;
	padding:5px 6px 8px 6px;
	border-right:1px solid #eaeaea;
	border-top:1px solid #eaeaea;
	text-align:center;
}
#tbl_recruit05 th:last-child,
#tbl_recruit05 td:last-child {
	border-right:none;
}

#tbl_recruit06 {
	width:100%;
	font-size:13px;
	border-top:1px solid #333;
	border-bottom:1px solid #aaa;
	border-spacing:0;
}
#tbl_recruit06 th {
	padding:10px;
	background:#f8f8f8;
	border-right:1px solid #eaeaea;
	border-top:1px solid #eaeaea;
	vertical-align:middle;
}
#tbl_recruit06 td {
	color:#555;
	line-height:2.5em;
	padding:5px 6px 8px 6px;
	border-right:1px solid #eaeaea;
	border-top:1px solid #eaeaea;
	text-align:left;
}
#tbl_recruit06 th:last-child,
#tbl_recruit06 td:last-child {
	border-right:none;
}

#tbl_recruit07 {
	width:100%;
	font-size:13px;
	border-top:1px solid #333;
	border-bottom:1px solid #aaa;
	border-spacing:0;
}
#tbl_recruit07 th {
	padding:10px;
	background:#f8f8f8;
	border-right:1px solid #eaeaea;
	vertical-align:middle;
}
#tbl_recruit07 td {
	color:#555;
	line-height:2.5em;
	padding:5px 6px 8px 6px;
	border-right:1px solid #eaeaea;
	border-top:1px solid #eaeaea;
	text-align:left;
}
#tbl_recruit07 th:last-child,
#tbl_recruit07 td:last-child {
	border-right:none;
}



/* Form Type Customized */
.frm_textarea {
	width:98%;
	resize:none;
}
.frm_input {
	height:26px;
	font-size:13px;
	color:#333;
	padding:0 5px;
	line-height:28px;
	background:#f9f9f9;
	border:1px solid #eaeaea;
	vertical-align:middle;
}
.frm_blank {
	height:26px;
	font-size:13px;
	color:#333;
	padding:0 5px;
	line-height:28px;
	background:#fff;
	border:1px solid #fff;
	vertical-align:middle;
}
.frm_password {
	height:35px;
	font-size:15px;
	color:#333;
	padding:0 10px;
	line-height:35px;
	background:#fff;
	border:none;
	border-radius:3px;
	-moz-border-radius:3px;
	-webkit-border-radius:3px;
	vertical-align:middle;
}

/* ============================================================
   입력 필드 유효성 검사 에러 스타일
   ============================================================ */
.frm_input.field-error,
.frm_textarea.field-error,
select.field-error {
	border: 2px solid #e53935 !important;
	background-color: #fff5f5 !important;
}
.frm_password.field-error {
	border: 2px solid #e53935 !important;
	background-color: #fff5f5 !important;
	border-radius: 3px;
}

/* 인라인 유효성 에러 메시지 */
label.validation-error-msg {
	display: block;
	color: #e53935;
	font-size: 12px;
	margin-top: 3px;
}

/* ============================================================
   백엔드 유효성 오류 오버레이 패널 (position:fixed - 레이아웃 영향 없음)
   ============================================================ */
#validationErrorOverlay {
    position: fixed;
    top: 80px;
    right: 20px;
    z-index: 9999;
    width: 300px;
    background: #fff;
    border-left: 4px solid #e53935;
    border-radius: 4px;
    box-shadow: 0 4px 16px rgba(0,0,0,0.18);
    animation: valOverlaySlideIn 0.25s ease;
}
@keyframes valOverlaySlideIn {
    from { opacity: 0; transform: translateX(30px); }
    to   { opacity: 1; transform: translateX(0); }
}
.val-overlay-header {
    display: flex;
    align-items: center;
    background: #e53935;
    color: #fff;
    padding: 8px 10px;
    border-radius: 0 4px 0 0;
}
.val-overlay-header-icon {
    font-size: 15px;
    margin-right: 6px;
    line-height: 1;
}
.val-overlay-header-title {
    flex: 1;
    font-weight: bold;
    font-size: 13px;
}
.val-overlay-close {
    background: none;
    border: none;
    color: #fff;
    font-size: 16px;
    line-height: 1;
    cursor: pointer;
    padding: 0 2px;
    opacity: 0.85;
}
.val-overlay-close:hover { opacity: 1; }
.val-overlay-body {
    padding: 12px 14px 10px;
}
.val-overlay-message {
    color: #c62828;
    font-size: 13px;
    line-height: 1.5;
    margin: 0 0 10px;
    word-break: keep-all;
}
.val-overlay-footer {
    padding: 0 14px 12px;
}
.val-overlay-goto {
    display: inline-block;
    background: #e53935;
    color: #fff;
    border: none;
    border-radius: 3px;
    padding: 5px 12px;
    font-size: 12px;
    cursor: pointer;
    text-decoration: none;
}
.val-overlay-goto:hover { background: #c62828; }
.req-mark { color: #c0392b; margin-right: 2px; }
