html{    
    height:100%;
}
body {
    padding:0px;
    top:-20px;
    background-position: center center;
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-size: cover;
    height:auto;
    min-width:600px;
    color:#555;
}
#logo_l{
    margin:0 auto 0px;
    display:table;
    /*width:100%;*/
    max-width:500px;
    height:auto;
    margin-bottom:12px;
}
#logo_l img{
    zoom:0.5;
}
.mask_modal{
    position:fixed;  
    inset:0;
    background-color:black;
    opacity:0;
    z-index:100;    
}

.token_input{
    inset:0;
    opacity:0; 
    /*top:30px;*/
    width:360px;
    height:540px;
    display:block;
    position:fixed;
    z-index:101;
    margin:50px auto;
    padding:20px;
    background-color: #f4f4f4;    
}

.token_input_container{

}

.envelope_logo{
    text-align:center;
}

i.fa-unlock-alt{
    position:relative;
    color:#AAA;
    text-align: center;
    margin:20px auto;
}

.token_input_title{
    padding:4px;
    text-align: center;
    color:#777;
    font-size:20px;
}

.token_input_desc{
    padding:12px;
    text-align:center;
    color:#777;
    font-size:14px;
}

#token_input_num{
    display:block;
    padding:8px 28px;
    width:120px;
    font-size:19px;
    font-weight:bold;
    color:black;
    margin:12px auto;
    letter-spacing: .6rem
}

#token_input_num::placeholder{
    color:#ddd;
}

.token_send_div{
}

.btn_token_send{
    border-radius: 100px;
    display: block;
    width: 160px;
    padding: 8px;
    /*box-sizing: border-box;*/
    border:none;
    background: #6fa1ff;
    color: #FFF;
    text-decoration: none;
    text-align: center;
    margin: 24px auto 0;
    font-size:16px;
}

.btn_token_send:hover{
    background: #4f81ff;
    color: #fff;    
}

.tokenmail_resend_div{
    margin-top: 24px;
}

.tokenmail_resend_desc{
    margin: 0 auto 4px;
    width:230px;
    color:#777;
}

.btn_tokenmail_resend{
    border-radius: 6px;
    display: block;
    width: 230px;
    padding: 4px;
    border:1px #ccc solid;
    background: #eeffff;
    color: #777;
    text-decoration: none;
    text-align: center;
    margin: 0 auto ;
    font-size:12px;    
}

.btn_tokenmail_resend:hover{
    background-color: #aabbbb;
    color:#666;
}

.token_cancel_div{
    margin-top: 18px;    
}

.btn_token_cancel{
    border-radius: 6px;
    display: block;
    width: 100px;
    padding: 6px;
    /*box-sizing: border-box;*/
    border:none;
    background: #ccc;
    color: #999;
    text-decoration: none;
    text-align: center;
    margin: 0 auto ;
    font-size:11px;    
}

.btn_token_cancel:hover{
    background-color: #aaa;
    color:#666;
}

#UserUsername,#UserPassword{
    ime-mode: disabled; /* ieのみ */
    min-width:100px;
}

#login-container{
    box-sizing:border-box;
    position:relative;
    display: block;
    margin: 20px auto 0;
    background-color: #FCFCFC;
    max-width:600px;
    min-width:290px;
    height:auto;
    text-align: center;
    vertical-align: middle;
    padding:20px 30px;
}

#tbl-login {
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    position: relative;
    margin: auto;
    border:0px;
    padding:0px 20px;
    max-width:452px;
}
.description{
    color:red;
    text-align: left;
    padding:2px 4px;
    margin:0 0 6px;
    font-size:11px;
}
.tbl-login-tbl{
    display:table;
    width:100%;
}
#tbl-login th, #tbl-login td{
    padding:8px;    
}
.tbl-login-row{
    display:table-row;
}
.tbl-login-cell{
    display: table-cell;
    padding:6px;
    max-width:80px;
    font-weight:bold;
    text-align: left;
}
.tbl-login-cell>input{
    padding:6px 6px;
}
.cell-th{
    max-width:140px;
    width:140px;
    text-align: right;
}
#login_form{
    margin:0 auto;
    max-width:500px;
    min-width:200px;
    padding:24px 0;
    background-color:#e5e5e5;
}

input{
    width:260px;
    padding:2px 4px;
}

.submit{
    width:120px;
    height:40px;
    margin:0px auto 15px;
}
.btn_back_login{
    width:160px;
    height:40px;
    margin:0px auto 15px;    
}
#status{
    position:relative;
    margin:auto;
    top:-4px;
    background-color: #FAA;
    font-weight:bold;
    padding:4px;
    min-width:200px;
    font-size:12px;
}
#msg_alert{
    display:none;
    margin:auto;
    padding:20px;
    width:70%;
    height:70%;
    text-align:center;
    background:#Fbb;
    border:2px #333 solid;
    font-size:14px;
    font-weight:bold;
    color:#333;
}
#msg_alert a{
    font-weight:bold;
    color:blue;
}
.redirect_login{
    margin:15px;
    padding:15px;
}

.open_privacy:hover{
    cursor: pointer;
    color:red;
}
#privacy_container{
    display:none;
    /*position:absolute;*/
    margin:0;
    padding:40px;
    box-sizing: border-box;
/*    background:#444;*/
    top:0px;
    width:100%;
    height:100%;
}

img.btn_close{
    z-index:100;
    
    position:absolute;
    cursor:pointer;
    top:30px;
    right:60px;
}
img.btn_close:hover{
    cursor:pointer;
}
.privacy_background{
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: black; /* 任意の背景色 */
    opacity: 0.5;
    z-index: 0;
}
.privacy_inner{
    position:absolute;
    top:20px;
    right:120px;
    left:120px;
    bottom:20px;
    padding:20px 40px;
    background:#FEFEFE;
    opacity:1;
    overflow:auto;
    z-index: 1;
    text-align: left;
    /*width:650px;
    max-width:650px;
    margin:0 auto;*/
}

.privacy_inner h1{
    font-size:20px;
    font-weight:bold;
    margin:30px 0;
    text-align:center;
}
.privacy_inner h2{
    line-height:30px;
    margin-top:20px;
}
.privacy_inner p{
    margin-bottom:8px;
}
.privacy_inner ul{
    margin-left: 20px;
    margin-bottom:8px;    
}

.tou{
    width: 100%;
    text-align: center;
    margin:10px 0 30px;
    font-size:12px;    
}
.tou label .open_privacy{
    text-decoration: underline;
    font-size:12px;
}
.tou_chk{
    margin-top:-3px;
    margin-right:4px;
    vertical-align: middle;
    width: 14px;
    transform: scale(1.25);
}

/*table{
    table-layout:fixed;
}*/
/* Responsive Full Background Image Using CSS
 * Tutorial URL: http://sixrevisions.com/css/responsive-background-image/
*/

/* For mobile devices */
@media only screen and (max-width: 440px) {
    #login-container{
        top:0px;
        padding:20px 10px;
    }
    #login_form{
        margin:0 20px;
    }
    .tbl-login-tbl{
        display:block;
    }    
    .tbl-login-row{
        display:inline-block;
        margin-bottom:8px;
    }
    .tbl-login-cell{
        display: inline-block;
        min-width:120px;
        max-width:150px;
        text-align: center;
        padding:4px;
    }
    .cell-th{
        padding-bottom:0px;
        
    }
    #privacy_container{
        padding:15px;
    }    
}