/* ----------------------------
共通レイアウト
---------------------------- */
.p-box--login-wrap {
	display: flex;
	justify-content: space-between;
	gap: 20px;
	margin-top: 40px;
}

/* ----------------------------
ボックス共通
---------------------------- */
.p-box--login-form,
.p-box--login-info {
	height: 436px;
	box-sizing: border-box;
	padding: 36px;
}
.p-box--login-wrap:has(.u-text-notice:not(:empty)) .p-box--login-form,
.p-box--login-wrap:has(.u-text-notice:not(:empty)) .p-box--login-info {
	height: 480px;
}

.p-box--login-form {
	max-width: 604px;
	padding-top: 46px;
	background-color: #f2f2f2;
}

.p-box--login-info {
	max-width: 556px;
	border-right: 2px solid #ccc;
	border-bottom: 2px solid #ccc;
}
.p-box--login-info h4{
	margin: 0 0 30px;
}

.p-box--login-info img {
	max-width: 500px;
	margin-top: 40px;
}
/* ----------------------------
フォーム内レイアウト
---------------------------- */

.p-box--login-form input[type="text"],
.p-box--login-form input[type="password"]  {
	display: block;
	width: 514px;
	height: 60px;
	padding: 8px 20px;
	margin-bottom: 30px;
	border-radius: 5px;
	border: 1px solid #ccc;
	box-sizing: border-box;
}

.p-box--login-footer {
	margin-top: 46px;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 16px;
	flex-wrap: wrap;
}
.p-box--login-wrap:has(.u-text-notice:not(:empty)) .p-box--login-footer {
	margin-top: 20px;
}

.p-box--login-links {
	line-height: 1.6;
}

.p-box--login-form .c-btn--nkblue {
	font-weight: bold;
	width: 200px;
}

/* ----------------------------
レスポンシブ：1200px 未満で縦並び & 幅 80%
---------------------------- */
@media (max-width: 1199px) {
	.p-box--login-wrap {
		gap: 40px;
	}

	.p-box--login-wrap {
		flex-direction: column;
		align-items: center;
	}
	.p-box--login-form input[type="text"],
	.p-box--login-form input[type="password"]  {
		width: 100%;
	}

	.p-box--login-form,
	.p-box--login-info {
		width: 80%;
		max-width: none;
	}
	.p-box--login-info img {
		max-width: 100%;
	}
}

/* ----------------------------
レスポンシブ：640px 未満で左右 10px マージン
---------------------------- */
@media (max-width: 639px) {
	.p-box--login-form,
	.p-box--login-info {
		width: calc(100% - 20px);
	}
}

@media (max-width: 480px) {
	.p-box--login-foot {
		margin-top:20px;
		flex-direction: column;
	}


	.c-btn--nkblue {
		margin-top: 8px;
	}
}
