/*****************************/
/*********** 로그인 ***********/
/*****************************/
.page_login_tit {
    align-items: start !important;
    padding:0px;
}

.login_wrap {
    min-height: calc(100vh - 220px);
}

.login_wrap .form_wrap {
    width: 40%;
}

.login_wrap .page_tit .tit {
    margin-top: 0;
}

.login_wrap .page_tit {
	width: 40%;
	margin:44px auto 0;
}

@media (min-width: 768px) and (max-width: 1199px) {
    .login_wrap .form_wrap {
        width: 80%;
    }
    .login_wrap .page_tit {
		width: 80%;
	}
}

@media (min-width: 576px) and (max-width: 767px) {
    .login_wrap .form_wrap {
        width: 80%;
    }
    .login_wrap .page_tit {
		width: 80%;
	}
}

@media (min-width: 360px) and (max-width: 575px) {
    .login_wrap .form_wrap {
        width: 80%;
    }
    .login_wrap .page_tit {
		width: 80%;
	}
}

.page_tit .tit {
    color: #0E249A;
}

.login_wrap .form_wrap .form_input {
    margin-bottom: 20px;
}

.login_wrap .form_wrap .form_input label {
    margin-bottom: 12px;
}
.login_wrap .form_wrap .btn_wrap {
    display: flex;
    justify-content: center; /* 수평 가운데 정렬 */
    align-items: center; /* 수직 가운데 정렬 */
    flex-direction: column; /* 한 줄씩 나열 */
}

.login_wrap .form_wrap .btn_wrap .btn-d {
    width: 100%;
    height: 59px;
    background-color: #33B58E;
    display: flex; /* 내부 텍스트를 가운데 정렬하기 위해 flex 사용 */
    justify-content: center; /* 수평 가운데 정렬 */
    align-items: center; /* 수직 가운데 정렬 */
}

.login_wrap .form_wrap .btn_wrap p{
   	margin-top:20px;
}

.login_wrap .form_wrap .btn_wrap p a{
   	color:#717171;
}

.login_add .login_add_list {
    font-size: 0;
    text-align: center;
    margin-top: 25px;
}

.login_add .login_add_list > li {
    position: relative;
    display: inline-block;
    padding: 0 16px;
    font-size: 16px;
    cursor: pointer;
}

.login_add .login_add_list > li::before {
    content: '';
    display: block;
    position: absolute;
    left: 0;
    top: 50%;
    width: 1px;
    height: 12px;
    background-color: #c8d2db;
    transform: translateY(-50%);
}

.login_add .login_add_list > li:first-child::before {
    display: none;
}

.login_add .login_add_list > li a {
    position: relative;
    display: block;
    color: #555;
}

/******************************/
/********** 로그인 끝 **********/
/*****************************/


/******************************/
/******* 방문자 신청  ********/
/******************************/
.page_con {
    min-height: 100vh; /* 최소 높이를 설정하여 화면에 꽉 차도록 조정 */
}
/********************/

/* 유효성 체크 오류시 문구 색상 */
label.error {
	color: #ff0000;
	background-color: #FFF;
	font-size: 0.8rem;
}

input.error {
	border-color: #ff0000 !important;
}

/* 커서 포인터 */
.cursor-pointer {
    cursor: pointer;
}

/* 셀렉트 박스 비활성화 */
.readonly-select {
    pointer-events: none; /* 클릭 비활성화 */
    background-color: #f0f0f0; /* 시각적으로 비활성화 표시 */
}

/* readonly 지정된 input 배경색 지정 */
input.readonly {
    background-color: #f0f0f0; /* 원하는 배경색 */
    color: #333; /* 텍스트 색상 */
}