/* ======================== login ======================== */
#login_wrap {
    display: flex;
    justify-content: center;
    background-color: #FAFAFA;
    padding: 16px 16px 41px;
    overflow: auto;
}

#login_wrap>div[class$='_container'] {
    width: 100%;
    background-color: #fff;
    border-radius: 5px;
}

/* ======================== login page header ======================== */
#login_wrap>div[class$='_container']>.page_head {
    padding-bottom: 12px;
    text-align: center;
    margin-bottom: 40px;
}

#login_wrap>div[class$='_container']>.page_head span {
    font-size: 16px;
    font-weight: 700;
    color: #222222;
}

/* ======================== login page nav ======================== */
#login_wrap>div[class$='_container']>.page_nav {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    gap: 0 14px;
}

#login_wrap>div[class$='_container']>.page_nav a {
    font-size: 16px;
    color: #AAAAAA;
    text-decoration: underline;
    cursor: pointer;
}

/* input - email */
#login_wrap .input_area .email_wrap {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0 9px;
    margin-bottom: 8px;
}

#login_wrap .input_area .email_wrap span {
    font-size: 16px;
    font-weight: 700;
    color: #222222;
}

#login_wrap .input_area .email_wrap input {
    width: calc((100% - 34px) / 2);
}

/* input - verify, input - new password check */
#login_wrap .input_verify_wrap,
#login_wrap .input_checkpw_wrap,
#login_wrap .input_pw_wrap {
    position: relative;
}

#login_wrap .input_verify_wrap .input_wrap {
    display: flex;
    justify-content: flex-start;
    align-items: center;
}

#login_wrap .input_verify_wrap .input_wrap .btn_default {
    max-width: 99px;
    margin-left: 16px;
    background-color: #fff;
    font-size: 14px;
}

#login_wrap .input_verify_wrap.input_img .input_wrap .btn_default {
    max-width: 79px;
}

#login_wrap .input_verify_wrap .input_wrap input,
#login_wrap .input_verify_wrap .input_wrap div {
    width: calc(100% - 115px);
}

#login_wrap .input_verify_wrap.input_img .input_wrap input {
    width: calc(100% - 87px);
}

#login_wrap .input_verify_wrap .input_wrap input[name='verification_number'].error,
#login_wrap .input_verify_wrap .input_wrap input[name='id'].error,
#login_wrap .input_checkpw_wrap>input[name="passwordcheck"].error {
    border-color: #F64E60;
}

#login_wrap .input_verify_wrap .input_wrap input[name='id'].complete {
    border-color: #1A9D40;

}

/* icon - password */
#login_wrap .icon_password {
    position: absolute;
    width: 22px;
    bottom: 3px;
    right: 16px;
}

#login_wrap .icon_password img {
    cursor: pointer;
    filter: invert(75%) sepia(19%) saturate(19%) hue-rotate(315deg) brightness(91%) contrast(81%)
}

#login_wrap .input_area span[class^="messege_"] {
    position: absolute;
    bottom: -21px;
    font-size: 12px;
}

.login_container {
    height: calc(100% - 57px);
    padding: 64px 16px 16px;
}


.login_container h1 {
    max-width: 160px;
    margin: 0 auto 73px;
}

.login_container .input_area {
    margin-bottom: 72px;
}

.login_container .input_area>div:not(:last-of-type) {
    margin-bottom: 32px;
}

.login_container .input_area>div input {
    width: 100%;
}

.login_container .btn_area {
    width: 100%;
}

.login_container .btn_area .find_wrap {
    display: flex;
    justify-content: flex-end;
    gap: 0 19px;
    margin-bottom: 16px;
}

.login_container .btn_area .find_wrap>div {
    cursor: pointer;
}

.login_container .btn_area .find_wrap>div span {
    display: inline-block;
    font-size: 16px;
    color: #AAAAAA;
}

.login_container .btn_area .find_wrap>div img {
    display: inline-block;
    margin-left: 5px;
    width: 19px;
    vertical-align: sub;
}

.login_container .btn_area button {
    font-size: 18px;
}

.login_container .btn_area button:first-of-type {
    margin-bottom: 8px;
    color: #fff;
}

.login_container .btn_area .blue_line.blue_font {
    background-color: #fff;
}

.login_container .page_nav {
    margin-bottom: 64px;
}