#login{
    min-height: 80vh;
}
#login .wrap_in{
    padding-top: 10%;
    display: flex;
    font-size: 16px;
}
#login .wrap_in .login_wrap{
    display: flex;
    flex-direction: column;
    width: 310px;
    margin: 0 auto ;
    word-break: keep-all;
}


#login .login_logo{
    width: 180px;
    height: 5rem;
    background-image: url('/image/toolro_logo.png');
    background-size: auto 70%;
    background-repeat: no-repeat;
    background-position: center top;
    margin: 0 auto 30px auto;
}
#login .login_sub_title{
    font-size: 18px;
    color: #555;
    text-align: center;
    margin-bottom: 40px;
}
#login .login_sub_title span{
    font-weight: bold;
    color: var(--main-color);
}
#login .login_radio{
    display: flex;
    justify-content: center;
    margin-bottom: 18px;
}
#login .login_radio_in{
    display: flex;
    width: auto;
    border: 1px solid #ccc;
    padding: 0 20px 0 20px;
    border-radius: 20px;
    cursor: pointer;

}
#login .login_radio_in:has(input:checked){
    border-color: var(--main-color);

}
#login .login_radio_personal{
    margin-right: 8px;
    cursor: pointer;
}
#login .login_radio_in label{
    line-height: 40px;
    font-size: 15px;
    color: #888;
    cursor: pointer;
}
#login .login_radio input{
    appearance: none;
    display: block;
    width: 20px;
    height: 100%;
    margin-right: 4px;
    background-image: url("/image/icon_check_888.png");
    background-repeat: no-repeat;
    background-size: auto 12px;
    background-position: center;
    cursor: pointer;
}
#login .login_radio input:checked{
    background-image: url("/image/icon_check_main.png");
}
#login .login_radio input:checked+label{
    color: var(--main-color);
}
#login .login_id{
    margin-bottom: 12px;
    display: flex;
    flex-direction: column;
    position: relative;
}
#login .login_pw {
    margin-bottom: 8px;
    position: relative;
}

#login .login_pw .password_cover{
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    width: 20px;
    cursor: pointer;
}

#login .login_pw .password_cover img{
    width: 100%;
    height: 100%;
}

#login .login_pw .password_cover .eye_on{
    display: none;
}

#login .login_id input,
#login .login_pw input{
    width: 100%;
    height: 45px;
    border: 1px solid #ccc;
    border-radius: 5px;
    padding: 0 15px 0 45px;
    background-repeat: no-repeat;
    background-position: 15px center;
    background-size: auto 18px;
}
#login .login_pw input::-ms-reveal {
    display: none;
}
#login .login_id label,
#login .login_pw label{
    position: absolute;
    left: 15px;
    top: 50%;
    transform: translateY(-50%);
    color: #888;
    /* font-weight: bold; */
}
#login .login_method_wrap .login_line{
    text-align: center;
    color: #888;
    font-size: 16px;
    line-height: 1;
    position: relative;
    margin-bottom: 30px;
}
#login .login_method_wrap .login_line:after,
#login .login_method_wrap .login_line:before{
    content: "";
    display: block;
    width: 27%;
    height: 1px;
    background-color: #ccc;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}
#login .login_method_wrap .login_line:before{
    left: 0;
}
#login .login_method_wrap .login_line:after{
    right: 0;
}


#login .login_option_wrap{
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
    margin: 10px 0 40px;
    padding: 0 5px;
}
#login .login_save{
    display: flex;
    height: 20px;

}
#login .login_save input{
    margin-right: 4px;
    border: 1px solid #888;
}
#login .login_save label{
    line-height: 20px;
    color: #555;
}
#login .login_wrap .login_find{
    display: flex;
}
#login .login_wrap .login_find a{
    color: #555;
    line-height: 20px;
}
#login .login_wrap .login_find a:hover{
    color: var(--main-color);
}
#login .login_wrap .login_find .login_find_id{
    margin-right: 4px;
}


#login .login_btn{
    width: 100%;
    height: 45px;
    background-color: var(--main-color);
    color: #fff;
    text-align: center;
    line-height: 45px;
    border-radius: 2px;
    border:0;
    margin-bottom: 3rem;
    cursor: pointer;
    letter-spacing: 2px;
}



#login .login_list {
    margin-bottom: 40px;
}     
#login .login_list ul{
    display: flex;
    justify-content: center;
}
#login .login_list ul li{
    width: 50px;
    height: 50px;
    border-radius: 50%;
    margin-right: 12px;
    border: 1px solid #ccc;
    background-repeat: no-repeat;
    background-size: 55% auto;
    background-position: center;
    cursor: pointer;
}
#login .login_list ul li:last-child{
    margin-right: 0;
}

#login .login_list ul li:first-child{
    background-image: url('/image/naver.svg');
}
#login .login_list ul li:nth-child(2){
    background-image: url('/image/kakao.png');
    background-position: center 12px;
}
#login .login_list ul li:nth-child(3){
    background-image: url('/image/google.png');
}

#login .login_join{
    text-align: center;
    color: #333;
    cursor: default;
    font-size: 14px;
}
#login .login_join span{
    color: var(--main-color);
    margin: 0 4px;
    text-decoration: underline;
    cursor: pointer;
}
@media screen and (max-width: 460px){
    /*#login .wrap_in .login_wrap{*/
    /*    width: 100%;*/
    /*}*/
    #login .login_sub_title{
        font-size: 14px;
    }
    #login .login_id input,
    #login .login_pw input{
        width: 100%;
    }
}
/* login end */





/* join_select start */
#join_select{
    position: relative;
    display: flex;
    min-height: 70vh;   
}
#join_select .join_select_wrap{
    width: 310px;
    margin: auto;
    
}
#join_select .join_select_wrap .join_select_title{
    text-align: center;
    font-size: 24px;
    line-height: 1;
    margin-bottom: 32px;
}
#join_select .join_select_wrap .join_select_title span{
    color: var(--main-color);
}


#join_select .join_select_wrap .join_select_btn_wrap{
    display: flex;
    justify-content: center;
    margin-bottom: 12px;
    font-size: 14px;
}
#join_select .join_select_wrap .join_select_btn_wrap .join_select_btn{
    width: 150px;
    height: 80px;
    text-align: right;
    line-height: 80px;
    border: 1px solid #ccc;
    padding: 0 30px;
    border-radius: 5px;
    background-repeat: no-repeat;
    background-size: auto 28px;
    background-position: 30px center;
    cursor: pointer;
}
#join_select .join_select_wrap .join_select_btn_wrap .normal{
    margin-right: 8px;
    background-image: url('/image/join_user.png');

}
#join_select .join_select_wrap .join_select_btn_wrap .company{
    background-image: url('/image/join_company.png');
}


#join_select .join_select_wrap .join_select_main{
    text-align: right;
}

#join_select .join_select_wrap .join_select_main a{
    color: #555;
    padding-right: 20px;
    line-height: 1;
    background-image: url('/image/icon_arrow_right.png');
    background-repeat: no-repeat;
    background-position: right 10px center;
    background-size: auto 8px;
    font-size: 16px;
    margin-top: 10px;
}

/* join_select end */


/* join_detail_user start */
#join_detail_user .wrap_in{
    width: 400px;
    padding: 100px 0 300px;
}
#join_detail_user .jd_title_wrap{
    margin-bottom: 40px;
}
#join_detail_user .jd_title{
    font-size: 26px;
    line-height: 1;
    font-weight: bold;
    text-align: center;
    margin-bottom: 12px;
}
#join_detail_user .jd_title span{
    font-weight: bold;
    color: var(--main-color);
}
#join_detail_user .jd_sub_title{
    font-size: 18px;
    line-height: 1;
    text-align: center;
    color: #555;
}

#join_detail_user .jd_line{
    display: flex;
    flex-direction: column;
    height: auto;
    margin-bottom: 24px;
}

#join_detail_user .jd_line:nth-child(2), #join_detail_user .jd_line:nth-child(3){
    position: relative;
}

#join_detail_user .jd_line .password_cover{
    position: absolute;
    right: 10px;
    top: 32px;
    transform: translateY(50%);
    width: 20px;
    cursor: pointer;
}

#join_detail_user .jd_line .password_cover img{
    width: 100%;
    height: 100%;
}

#join_detail_user .jd_line .password_cover .eye_on{
    display: none;
}

#join_detail_user .jd_line label{
    position: relative;
    display: block;
    height: 28px;
    line-height: 1px;
    font-size: 16px;
    padding-top: 10px;
    padding-left: 5px;
    color: #555;
}
#join_detail_user .jd_line input{
    height: 45px;
    border: 1px solid #aaa;
    border-radius: 5px;
    padding: 0 10px;
}

#join_detail_user .jd_line .jd_line_status{
    font-size: 13px;
    line-height: 1px;
    margin-top: 8px;
    margin-left: 8px;
    color: #555;
    display: none;
}
#join_detail_user .jd_line .jd_line_status.cant{
    color: #ff0000;
    display: none;
}
#join_detail_user .jd_line .jd_line_status.can{
    color: green;
}


#join_detail_user .jd_line .input_line{
    display: flex;
    justify-content: space-between;
}
#join_detail_user .jd_line .input_line input{
    width: calc(100% - 110px);
}
#join_detail_user .jd_line .input_line button{
    width: 100px;
    color: var(--main-color);
    border: 1px solid var(--main-color);
    border-radius: 5px;
    background-color: transparent;
}

#join_detail_user .jd_line select{
    width: 100%;
    height: 45px;
    border: 1px solid #aaa;
    border-radius: 5px;
    padding: 0 10px;
    color: #555;
}




#join_detail_user .jd_condition .jdc_title{
    color: #555;
    font-size: 16px;
    font-weight: bold;
    padding-left: 5px;
    margin-bottom: 12px;
}
#join_detail_user .jd_condition .jdc_wrap{
    border: 1px solid #ccc;
    border-radius: 10px;
    padding: 20px;
    margin-bottom: 40px;
}
#join_detail_user .jd_condition .jdc_cndtn_head{
    border-bottom: 1px solid #ccc;
    padding-bottom: 10px;
    margin-bottom: 10px;
}
#join_detail_user .jd_condition .jdc_line{
    display: flex;
}
#join_detail_user .jd_condition .jdc_line input[type="checkbox"]{
    width: 16px;
    height: 16px;
    margin-top: 6px;
    margin-bottom: auto;
    margin-right: 8px;
}
#join_detail_user .jd_condition .jdc_line_in{
    display: flex;
    flex-direction: column;
}
#join_detail_user .jd_condition .jdc_all_agree{
    font-size: 18px;
    font-weight: bold;
    margin-top: 4px;
}
#join_detail_user .jd_condition .jd_condition_descript{
    font-size: 13px;
    color: #777;
    margin-top: 4px;
}
#join_detail_user .jd_condition .jdc_line_title{
    color: #555;
    font-size: 14px;
    line-height: 2;
}
#join_detail_user .jd_condition .essential .jdc_line_title{
    color: #222;
}


#join_detail_user .jdc_btn_wrap button{
    width: 100%;
    height: 45px;
    color: #fff;
    background-color: var(--main-color);
    border: 0;
    border-radius: 5px;
}
#join_detail_user .jdc_btn_wrap button:focus{
    outline: none;
}
#join_detail_user .jdc_btn_wrap button:disabled{
    background-color: #f2f2f2;
    color: #555555;
}
/* join_detail_user end */



/* join_detail_cmpny start */
#join_detail_cmpny .wrap_in{
    width: 400px;
    padding: 100px 0 300px;
}
#join_detail_cmpny .jd_title_wrap{
    margin-bottom: 40px;
}
#join_detail_cmpny .jd_title{
    font-size: 26px;
    line-height: 1;
    font-weight: bold;
    text-align: center;
    margin-bottom: 12px;
}
#join_detail_cmpny .jd_title span{
    font-weight: bold;
    color: var(--main-color);
}
#join_detail_cmpny .jd_sub_title{
    font-size: 18px;
    line-height: 1;
    text-align: center;
    color: #555;
}

#join_detail_cmpny .jd_line{
    display: flex;
    flex-direction: column;
    height: auto;
    margin-bottom: 24px;
}

#join_detail_cmpny .jd_line:nth-child(2), #join_detail_cmpny .jd_line:nth-child(3){
    position: relative;
}

#join_detail_cmpny .jd_line .password_cover{
    position: absolute;
    right: 10px;
    top: 40px;
    transform: translateY(50%);
    width: 20px;
    cursor: pointer;
}

#join_detail_cmpny .jd_line .password_cover img{
    width: 100%;
    height: 100%;
}

#join_detail_cmpny .jd_line .password_cover .eye_on{
    display: none;
}

#join_detail_cmpny .jd_line label{
    position: relative;
    display: flex;
    align-items: center;
    height: 28px;
    /*line-height: 1px;*/
    font-size: 16px;
    padding-top: 10px;
    padding-left: 5px;
    color: #555;
    margin-bottom: 10px;
}
/* 사업자 등록증 추가 (허우석)*/
#join_detail_cmpny .jd_line .file_area{
    display: flex;
    margin-right: 20px;
    position: relative;
}
#join_detail_cmpny .jd_line .file_area .business_registration{
    border: 0;
    padding: 10px;
}
#join_detail_cmpny .jd_line .file_area .form__label--file{
    border: 1px solid var(--main-color);
    width: 100px;
    height: 37px;
    line-height: 37px;
    padding: 0;
    color: var(--main-color);
    justify-content: center;
    font-size: 14px;
}
#join_detail_cmpny .jd_line .file_area .form__span--file{
    height: 37px;
    line-height: 37px;
    border: 1px solid #cccccc;
    margin-left: 5px;
    width: 100%;
    font-size: 13px;
    background-color: #f2f2f2;
    pading: 0 10px;
}
#join_detail_cmpny .jd_line input{
    height: 45px;
    border: 1px solid #aaa;
    border-radius: 5px;
    padding: 0 10px;
}
#join_detail_cmpny .jd_line input[type="file"]{
   display: none;
}
#join_detail_cmpny .ncs_mark{
    color:#ff0000;
    margin-left: 5px;
    line-height: 19px;
}
#join_detail_cmpny .jd_line .jd_line_status{
    font-size: 13px;
    line-height: 1;
    margin-top: 8px;
    margin-left: 8px;
    color: #555;
}
#join_detail_cmpny .jd_line .jd_line_status.cant{
    color: #ff0000;
}
#join_detail_cmpny .jd_line .jd_line_status.can{
    color: green;
}


#join_detail_cmpny .jd_line .input_line{
    display: flex;
    justify-content: space-between;
}
#join_detail_cmpny .jd_line .input_line input{
    width: calc(100% - 110px);
}
#join_detail_cmpny .jd_line .input_line button{
    width: 100px;
    color: var(--main-color);
    border: 1px solid var(--main-color);
    border-radius: 5px;
    background-color: transparent;
}

#join_detail_cmpny .jd_line select{
    width: 100%;
    height: 45px;
    border: 1px solid #aaa;
    border-radius: 5px;
    padding: 0 10px;
    color: #555;
}
/*기업회원  - 소재지*/
#join_detail_cmpny .jd_location .input_line,
#join_detail_cmpny .jd_location input{
    height: 45px;
    margin-bottom: 4px;
    cursor: pointer;
}

/* 공급가능한 카테고리 */
#join_detail_cmpny .category .jd_select_with_btn{
    display: flex;
    justify-content: space-between;
    margin-bottom: 8px;
}
#join_detail_cmpny .category .jd_select_with_btn select{
    width: calc(100% - 50px);
}
#join_detail_cmpny .category .jd_select_with_btn  button{
    height: 45px;
    width: 45px;
    background-color: transparent;
    background-image: url("/image/icon_xmark_main.png");
    background-repeat: no-repeat;
    background-size: auto 45%;
    background-position: center;
    border: 1px solid var(--main-color);
    border-radius: 5px;
    text-indent: -999999px;
}
#join_detail_cmpny #jd_category .add_category{
    display: block;
    width: 100%;
    height: 45px;
    color: var(--main-color);
    text-align: center;
    background-repeat: no-repeat;
    background-position: center;
    background-size: auto 50%;
    background-color: transparent;
    border: 1px solid var(--main-color);
    border-radius: 5px;
}



#join_detail_cmpny .jd_condition .jdc_title{
    color: #555;
    font-size: 16px;
    font-weight: bold;
    padding-left: 5px;
    margin-bottom: 12px;
}
#join_detail_cmpny .jd_condition .jdc_wrap{
    border: 1px solid #ccc;
    border-radius: 10px;
    padding: 20px;
    margin-bottom: 40px;
}
#join_detail_cmpny .jd_condition .jdc_cndtn_head{
    border-bottom: 1px solid #ccc;
    padding-bottom: 10px;
    margin-bottom: 10px;
}
#join_detail_cmpny .jd_condition .jdc_line{
    display: flex;
}
#join_detail_cmpny .jd_condition .jdc_line input[type="checkbox"]{
    width: 16px;
    height: 16px;
    margin-top: 6px;
    margin-bottom: auto;
    margin-right: 8px;
}
#join_detail_cmpny .jd_condition .jdc_line_in{
    display: flex;
    flex-direction: column;
}
#join_detail_cmpny .jd_condition .jdc_all_agree{
    font-size: 18px;
    font-weight: bold;
    margin-top: 4px;
}
#join_detail_cmpny .jd_condition .jd_condition_descript{
    font-size: 13px;
    color: #777;
    margin-top: 4px;
}
#join_detail_cmpny .jd_condition .jdc_line_title{
    color: #555;
    font-size: 14px;
    line-height: 2;
}
#join_detail_cmpny .jd_condition .essential .jdc_line_title{
    color: #222;
}


#join_detail_cmpny .jdc_btn_wrap button{
    width: 100%;
    height: 45px;
    color: #fff;
    background-color: var(--main-color);
    border:0;
    border-radius: 5px;
}
#join_detail_cmpny .jdc_btn_wrap button:disabled{
    background-color: #f2f2f2;
    color: #555555;
}
#join_detail_cmpny .jdc_btn_wrap button:focus{
    outline: none;
}

#recall_page_wrap #login .wrap_in{
    height: calc(100vh - 350px);
}
#recall_page_wrap #login .wrap_in{
    justify-content: center;
    align-items: center;
    flex-direction: column;
    padding:0;
    position: relative;

}
#recall_page_wrap #login .wrap_in .tap_menu button{
    font-size: 18px;
    margin: 0 10px 80px;
    padding: 8px 12px;
    position: relative;
}
#recall_page_wrap #login .wrap_in .tap_menu button.on{
    color: var(--main-color);
    border-bottom: 1px solid var(--main-color)
}
/*#recall_page_wrap #login .wrap_in .tap_menu button::after{*/
/*    content: '|';*/
/*    position: absolute;*/
/*    top: 50%;*/
/*    right: 0;*/
/*    transform: translate(50%, -50%);*/
/*    width: 10px;*/
/*}*/
#recall_page_wrap #login .wrap_in form{
  height: 500px;
}
#recall_page_wrap #login .wrap_in .recall_info_box{
    display: none;

}
#recall_page_wrap #login .wrap_in .recall_info_box.on{
    display:block;
}
#recall_page_wrap #login .wrap_in .recall_info_box p{
    font-weight: bold;
    font-size: 18px;
    margin-bottom: 8px;
}
#recall_page_wrap #login .wrap_in .recall_info_box span{
    font-size: 16px;
}
#recall_page_wrap #login .wrap_in .recall_info_box .recall_info_detail{
    margin: 30px 0;
}
#recall_page_wrap #login .wrap_in .recall_info_box .recall_info_detail label{
    margin-bottom: 5px;
    display: block;
}
#recall_page_wrap #login .wrap_in .recall_info_box .recall_info_detail .input_line{
    margin-bottom: 10px;
}
#recall_page_wrap #login .wrap_in .recall_info_box .recall_info_detail input{
    height: 45px;
    border: 1px solid #aaa;
    border-radius: 5px;
    padding: 0 10px;
    width: calc(100% - 110px);

}
#recall_page_wrap #login .wrap_in .recall_info_box .recall_info_detail button {
    width: 100px;
    color: #ffffff;
    border: 1px solid var(--main-color);
    border-radius: 5px;
    background-color: var(--main-color);
    height: 45px;
    margin-left: 5px;
}
#recall_page_wrap #login .wrap_in .recall_info_box .recall_info_detail .copy_btn{
    color: #aaa;
    border: 1px solid #aaa;
    background-color: transparent;
}
#recall_page_wrap #login .wrap_in .recall_info_box .recall_info_detail .copy_btn.on{
    color: #fff;
    background-color: var(--main-color);
    border: none;
}
#recall_page_wrap #login .wrap_in .password .recall_info_detail .input_line:first-child input:focus{
    border: 1px solid var(--main-color)
}
#recall_page_wrap #login .wrap_in .recall_info_box .verify_btn{
    display: none;
    justify-content: center;
    height: 45px;
    background-color: var(--main-color);
    color: #ffffff;
    border-radius: 5px;
    padding: 0 12px;
    line-height: 45px;
    width: 100%;
    margin-bottom: 30px;
}
#recall_page_wrap #login .wrap_in .recall_info_box .verify_btn.on{
    display: flex;
}
#recall_page_wrap #login .wrap_in .recall_info_box .link_login_btn{
    display: flex;
    justify-content: center;
}
#recall_page_wrap #login .wrap_in .recall_info_box .link_login_btn span{
    font-size: 14px;
    color: #888888;
}
#recall_page_wrap #login .wrap_in .recall_info_box .link_login_btn span:hover{
    color: var(--main-color);
}
#recall_page_wrap #login .wrap_in .password .recall_info_detail button{
    background-color: transparent;
    color: var(--main-color)
}
/* login_detail 공통 반응형 디자인*/
@media screen and (max-width: 390px) {
    #join_detail_cmpny .wrap_in,
    #join_detail_user .wrap_in{
        width: 100%;
        padding: 40px 15px 80px 15px;
    }
    #join_detail_cmpny .jd_title,
    #join_detail_user .jd_title{
        font-size: 22px;
    }
}
/* join_detail_cmpny end */


