
#login_body > div {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    margin: 0 auto;
    max-width: var(--main-width);
    padding: 1em;
    aspect-ratio: 1.45;
    height: auto;
    min-height: 450px;
}

#f_login {
    display: flex;
    width: 100%;
    max-width: 400px;
    height: auto;
    border: 1px solid var(--border-02);
    padding: 1em;
    flex-direction: column;
    gap: 2em;
    background-color: #fff;
}

#f_login legend {
    display: block;
    width: 100%;
    height: auto;
    text-align: center;
    font-size: 1.2em;
    font-weight: bold;
    padding-bottom: 1em;
    color: #222;
}

#f_login .login_desc_box {
    display: grid;
    width: 100%;
    grid-template-columns: 6em auto;
    row-gap: .5em;
}

main .login_desc_box > .attr {
    display: flex;
    width: 100%;
    height: auto;
    padding: .5em 0;
    align-items: center;
    justify-content: left;
    color: var(--text-07);
    font-weight: 600;
}


main .login_desc_box > .desc {
    display: block;
    width: 100%;
    height: auto;
    padding: .25em 0 .25em .5em;
}


#f_login input[type="submit"] {
    display: block;
    width: 100%;
    height: auto;
    font-size: 1.2em;
    padding: .5em 0;
    text-align: center;
    margin-top: 1em;
}


#f_login .social_login > legend {
    border-top: 1px solid var(--border-02);
    padding-top: 2em;
}

#f_login .lost_box {
    display: block;
    width: 100%;
    height: auto;
    padding: .5em 0;
    text-align: center;
}

#f_login .lost_box a:hover {
    text-decoration: underline;
}

#f_login .social_list {
    display: grid;
    width: 100%;
    height: auto;
    grid-template-columns: 1fr;
    gap: .5em;
}

#f_login .social_list > .sns_btn {
    display: flex;
    width: 100%;
    height: auto;
    padding: .5em;
    align-items: center;
    justify-content: left;
    gap: .5em;
    font-weight: 600;
}

#f_login .social_list > .sns_btn > img {
    width: 1.75em;
    height: auto;
}

#f_login .social_list > .sns_btn > span {
    font-size: .9em;
}

#f_login .social_list > .naver {
    border: 1px solid #1ea505;
    background-color: #1fc800;
    color: #fff;
}

#f_login .social_list > .naver:hover {
    background-color: #1cb900;
}

#f_login .social_list > .kakao {
    border: 1px solid #e2c10a;
    background-color: #ffeb00;
    color: #3c1e1e;
}

#f_login .social_list > .kakao:hover {
    background-color: #edda00;
}

#f_login .cert_passwd {
    display: block;
    width: 80%;
    min-width: 8em;
    height: auto;
    margin: 1em auto;
}

#f_login .msg {
    text-align: center;
}

@media (max-width : 640px) {
    #login_body > div {
        aspect-ratio: unset;
    }
}
