@charset "UTF-8";

.login {
	display: flex;
	flex-flow: column;
	justify-content: center;
	align-items: center;
	position: relative;
	z-index: 2;
	min-height: 100dvh;
}

.login_hd {
	width: 394px;
	margin-bottom: 30px;
}

.login_hd img {
	width: 100%;
}

.login_input {
	width: 500px;
	padding: 30px;
	border: #e0e0e0 1px solid;
	border-radius: 25px;
	box-shadow: 0 3px 6px #00000016;
	background: #ffffff;
}

.login_input_wrap {
}

.login_input_cnt {
	margin-bottom: 14px;
}

.login_input_cnt label {
	display: block;
	margin-bottom: 5px;
	font-size: 14px;
}

.login_input_cnt p {
}

.login_input_cnt p a {
	color: #707070;
	text-decoration: underline;
}

input[type="password"],
input[type="email"],
input[type="text"] {
	display: inline-block;
	width: 100%;
	max-width: 100%;
	padding: 6px 16px;
	border: solid 1px #c9c9c9;
	border-radius: 5px;
	box-sizing: border-box;
	background: #ffffff;
	font-size: inherit;
	line-height: 1.5;
	vertical-align: middle;
	outline: none;
}

input[type="password"]:focus,
input[type="email"]:focus {
	border: solid 2px #283c50;
}

.login_input_rem {
}

.login_input_rem_wrap {
}

.login_input_rem_cnt {
	margin: 3px 3px 3px 4px;
	padding: initial;
	border: initial;
	box-sizing: border-box;
	background-color: initial;
	cursor: default;
	appearance: auto;
}

.login_input_rem_txt {
}

.login_input_btm {
	display: flex;
	justify-content: end;
	align-items: end;
	gap: 18px;
	margin-top: 15px;
}

.login_input_btm_forget {
	font-size: 14px;
	text-decoration: underline;
	margin-bottom: 10px;
}

.login_input_btm button {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 88px;
	height: 45px;
	border-radius: 10px;
	font-size: 15px;
	font-family: "Noto Sans JP", sans-serif;
}

.login_reset_btm_short button {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 200px;
	height: 45px;
	border-radius: 10px;
	font-size: 15px;
	font-family: "Noto Sans JP", sans-serif;
}

.login_link{
    max-width: 200px;
    margin-left: auto;
}
.login_link > a{
    background-color: #619EB3;
    color: #fff;
    min-height: 45px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    font-size: 15px;
    font-weight: 500;
    font-family: "Noto Sans JP", sans-serif;
    transition-duration: .3s;
    transition-property: background-color,color;
}

.login_link > a:hover{
	/* background-color: #283b50; */
}

.reset-s_links {
	display: flex;
	gap: 20px;
	margin-bottom: 55px;
}

.reset-s_links a {
	display: flex;
	justify-content: center;
	align-items: center;
	width: calc((100% - 20px) / 2);
	max-width: 260px;
	height: 45px;
	border-radius: 10px;
	color: #ffffff;
	font-weight: bold;
	font-size: 18px;
}

.reset-s_links button {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100px;
	height: 45px;
	border-radius: 10px;
	font-size: 15px;
	font-family: "Noto Sans JP", sans-serif;
}



@media screen and (max-width:1240px) {
}

@media screen and (max-width:768px) {
	.login {
	}

	.login_hd {
		width: 270px;
	}

	.login_hd img {
	}

	.login_input {
		width: 93%;
		max-width: 450px;
		padding: 25px 18px;
		border-radius: 15px;
	}

	.login_input_wrap {
	}

	.login_input_cnt {
	}

	.login_input_cnt label {
	}

	input[type="password"],
	input[type="email"] {
	}

	input[type="password"]:focus,
	input[type="email"]:focus {
	}

	.login_input_rem {
	}

	.login_input_rem_wrap {
	}

	.login_input_rem_cnt {
	}

	.login_input_rem_txt {
	}

	.login_input_btm {
		gap: 8px;
	}

	.login_input_btm_forget {
	}

	.login_input_btm button {
	}

	.reset-s_links a {
		display: flex;
		justify-content: center;
		align-items: center;
		width: 50%;
		max-width: 260px;
		height: 45px;
		border-radius: 10px;
		color: #ffffff;
		font-weight: bold;
		font-size: 18px;
	}
}
