@charset "UTF-8";
/* CSS Document */
/**************************************************
*制作：Shinichi Yamazaki
*Created Date：2021/12
 レスポンシブレイアウトモバイルファーストでの記述。
***************************************************/
/*---------------------------------------
*初期設定
----------------------------------------*/
*,
*:before,
*:after {
	/*全称セレクタにより全てのボックスの幅、高さにパディング、線幅も含む様に指定。*/
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
 }
html{
	font-size:62.5%;/*1rem=10px指定。*/
	height:100%;/*コンテンツ領域を自動的に画面サイズに合わせたい為、初期値autoを100%に変更する処理。*/
	overflow-x:hidden;
}
body{
	font-size:1.4rem;/*基準フォントサイズは、14pxを想定。*/
	font-family:"Noto Sans JP",sans-serif;
	color:#515151;/*基本文字色*/
	height:100%;/*コンテンツ領域を自動的に画面サイズに合わせたい為、初期値autoを100%に変更する処理。*/
}
img,
video{
	vertical-align:bottom;
	max-width:100%;/*フルードイメージ*/
}
a{
	text-decoration:none;
	color:#25A9CC;
}
a img{
	border:none;
}
ul,ol{
	list-style-type:none;
}
/*---------------------------------------
*コンテンツ
----------------------------------------*/
#wrapper{
	height:100vh;
	position:relative;
}
#login-input-area{
	width:80%;
	background-color:#FFF;
	position:absolute;
	top:45%;
	left:50%;
	transform:translate(-50%,-50%);
	padding:25px;
}
#company-logo{
    text-align:center;
    margin-bottom: 25px;
}
#company-logo img{
    width:75%;
}
h1{
	text-align:center;
	font-size:1.8rem;
	margin-bottom:15px;
}
#login-form form{
	margin:15px 0 0 0;
}
dl.input-area{
    display: flex;
    margin-bottom: 10px;
}
dl.input-area dt{
    width: 70px;
    background: #143468;
}
dl.input-area dt>label{
    display: block;
    width: 100%;
    height: 100%;
    position: relative;
}
.input-icon{
    visibility: hidden;
}
dl.input-area dt>label::after{
    content: "";
    display: block;
    width: 20px;
    height:40px;
    position:absolute;
    top:50%;
    left:50%;
    transform:translate(-50%,-50%);
}
#label-ac::after{
    background:url("../images/index_icon_id.svg") no-repeat;
    background-size: contain;
    background-position: center center;
}
#label-pw::after{
    background:url("../images/index_icon_pw.svg") no-repeat;
    background-size: contain;
    background-position: center center;
}
dl.input-area dd{
    width: 100%;
}

#login-form input[type="text"],
#login-form input[type="password"]{
	width:100%;
	padding:10px;
    border: none;
    background-color: #fffcc8;
}
.btn-submit{
	text-align:center;
	margin-top:20px;
}
#login-form input[type="submit"]{
	border:none;
	width:150px;
	height:45px;
	background:#143468;
	color:#FFF;
	font-size:1.4rem;
	border-radius:3px;
	cursor:pointer;
}
#login-form input[type="submit"]:hover{
    background: #4789CC;
}

#other-links{
    width:80%;
    background-color:#FFF;
    position:absolute;
    top:72%;
    left:50%;
    transform:translate(-50%,0);
}
#backto-website{
	text-align:center;
}
#backto-website a span{
    vertical-align: middle;
}
#backto-website a:hover{
    text-decoration: underline;
}
#backto-website a::before{
    content: "";
    display: inline-block;
    width: 18px;
    height: 18px;
    background: #0fb0c2 url("../images/index_icon_arrow.svg") no-repeat;
    background-size: 8px;
    background-position: center center;
    border-radius:50%;
    vertical-align: middle;
    margin-right: 7px;
}
#support{
    text-align:center;
	margin-top:50px;
}
#support a{
    color:#CCC;
}
#support a:hover{
    text-decoration: underline;
}
#support a::before{
    content:"";
    display:inline-block;
    width: 22px;
    height: 22px;
    background: url("../images/index_icon_support.svg") no-repeat;
    background-size: contain;
    background-position: center center;
    vertical-align: middle;
    margin-right: 7px;
}
#support a span{
    vertical-align: middle;
}
.sub-str{
	margin-bottom:25px;
}
.err-mess{
	color:#FF7465;
	margin-bottom:15px;
}
.status-mess{
	color:#0694CC;
    margin-bottom:15px;
}

/*********************************************
*タブレット（600px以上の場合）
**********************************************/
@media screen and (min-width:600px){
	#login-input-area{
		width:55%;
		padding:30px;
	}
    #login-form input[type="text"],
    #login-form input[type="password"]{
        padding:15px 10px;
    }
    dl.input-area dt{
        width: 80px;
    }
    #other-links{
        top:63%;
    }
}

/*********************************************
*PC（960px以上の場合）
**********************************************/
@media screen and (min-width:960px){
	#login-input-area{
		width:450px;
	}
    #company-logo img{
        width:65%;
    }
    #other-links{
        top:70%;
    }
}