@charset "utf-8";


/*==================================================================
login page
==================================================================*/
#login-content {
	flex: 1;
	display: flex;
	min-height: 100vh;
}

/*--------------------------------------------------------
left column
--------------------------------------------------------*/
#login-visual {
	display: flex;
	flex: 1;
	flex-direction: column;
	padding: 50px 0;
	background: url(../img/login_visual.jpg) no-repeat;
	background-size: cover;
}
#login-visual h1 {
	flex: 1;
	display: flex;
	justify-content: center;
	align-items: center;
}
#login-visual h1 img {
	width: 290px;
}

#login-visual p {
	text-align: center;
	color: #fff;
}


/*--------------------------------------------------------
right column
--------------------------------------------------------*/
#login-form {
	display: flex;
	flex-direction: column;
	width: 546px;
	padding: 50px 0;
}
#login-form .body {
	flex: 1;
	display: flex;
	justify-content: center;
	align-items: center;
}

#login-form dl {
	margin: 0 0 15px;
}
#login-form dl dt {
	margin-bottom: 5px;
}
#login-form dl input,
#login-form dl select {
	box-sizing: border-box;
	width: 360px;
	height: 48px;
	border-radius: 6px;
	border: solid 1px #e2e4e8;
	background: #fff;
	padding: 0 20px;
	font-size: 16px;
	position: relative;
}
#login-form .select {
	display: inline-block;
	position: relative;
}
#login-form .select::after {
	position: absolute;
    top: 50%;
    right: 25px;
    margin-top: -10px;
    font-family: 'Font Awesome 5 Free';
    content: '\f078';
    font-size: 14px;
    font-weight: 800;
    color: #c4c8ce;
    z-index: 1;
}
#login-form dl input::placeholder {
	color: rgba(37, 41, 46, 0.5);
}
#login-form dl input.error {
	border-color: #f52733;
}
#login-form dl input:focus {
	border-color: #227ae8 !important;
	filter: drop-shadow(0px 3px 6px #edf4fd) !important;
}



#login-form .btn input {
	display: block;
	width: 300px;
	height: 60px;
	margin: 30px auto;
	border-radius: 30px;
	border: none;
	font-size: 18px;
	color: #fff;
	background: #c0000b;
	filter: drop-shadow(0px 3px 10px rgba(245,39,51,0.3));
	cursor: pointer;
}
@media all and (-ms-high-contrast: none) {
	*::-ms-backdrop, #login-form .btn input {
		box-shadow: 0px 3px 10px 0px rgba(245,39,51,0.3); /* IE11 only */
	}
}

#login-form .btn input:hover {
	opacity: 0.7;
	transition: 0.3s;
}

#login-form ul.link {
	margin: 60px 0;
}
#login-form ul.link li {
	margin-bottom: 10px;
	text-align: center;
}
#login-form ul.link li a {
	color: #0a4998;
}

#login-form .foot {
	text-align: center;
}
#login-form .foot li {
	display: inline-block;
	margin: 0 6px;
}
#login-form .foot li a {
	font-size: 12px;
	color: #5b5f64;
	text-decoration: underline;
}
#login-form .foot li a:hover {
	color: #0a4998;
}
