.sub-page {
	overflow: hidden;
	background : linear-gradient(-45deg, rgba(101, 173, 46, 0.15) 0%, rgba(105, 175, 52, 0.15) 0.73%, rgba(145, 196, 105, 0.14) 7.87%, rgba(178, 214, 151, 0.13) 15.1%, rgba(206, 229, 189, 0.13) 22.27%, rgba(227, 240, 218, 0.12) 29.38%, rgba(243, 248, 238, 0.11) 36.41%, rgba(252, 253, 251, 0.11) 43.33%, rgba(255, 255, 255, 0.1) 50%, rgba(251, 253, 254, 0.11) 56.02%, rgba(238, 247, 251, 0.11) 62.27%, rgba(218, 236, 245, 0.12) 68.62%, rgba(188, 222, 238, 0.13) 75.04%, rgba(151, 203, 228, 0.13) 81.52%, rgba(105, 180, 216, 0.14) 88.05%, rgba(52, 154, 202, 0.14) 94.49%, rgba(0, 128, 189, 0.15) 100%);
	padding-bottom: 200px;
}
.mv,.lead,figure {
	position: relative;
}
figcaption {
	position: absolute;
	bottom: 0;
	right: 0;
	font-size: 10px;
	color: #fff;
	background: rgba(0, 0, 0, .6);
	padding: 3px 5px;
}
@media only screen and (max-width: 598px) {
	.sub-page {
		padding-bottom: 100px;
	}
}


.mv {
	width: 100%;
	padding: 240px 0 150px;
}
	.mv .mainCopy {
		text-align: center;
	}
	.mv .mainCopy .en {
		font-size: 140px;
		font-weight: 300;
		font-family: "Oswald", serif;
		line-height: 1;
		margin-bottom: 40px;
	}
	.mv .mainCopy h2 {
		font-size: 52px;
		font-weight: 500;
		font-family: "YakuhanMP", "Shippori Mincho", serif;
		line-height: 1.4;
	}
	.mv .mainCopy span {
		background: linear-gradient(110deg, rgba(101, 173, 46, 1) 0%, rgba(0, 128, 189, 1) 50%, rgba(0, 87, 130, 1) 100%);
		-webkit-background-clip: text;
		-webkit-text-fill-color: transparent;
	}
@media only screen and (max-width: 598px) {
	.mv {
		padding: 120px 0 80px;
	}
		.mv .mainCopy .en {
			font-size: 15.789473684vw;
			margin-bottom: 20px;
		}
		.mv .mainCopy h2 {
			font-size: 5.789473684vw;
		}
}

.loginArea {
	width: 90%;
	max-width: 1240px;
	background: #fff;
	filter: drop-shadow(0px 0px 10px rgba(0,0,0,0.2));
	padding: 100px;
	margin: 0 auto 120px;
	text-align: center;
	font-family: "YakuhanJP", "noto sans jp", serif;
}
.loginArea .login__description {
	font-size: clamp(13px, .9375vw,18px);
	font-family: "YakuhanJP", "noto sans jp", serif;
	line-height: 2;
	letter-spacing: .1em;
	margin-bottom: 50px;
}
.loginArea .login__form--list {
	display: flex;
	justify-content: center;
	align-items: stretch;
}
.loginArea .login__form--list .login__form--password {
	display: block;
	border-radius: 0;
	border: solid 1px #ccc;
	background: #fff;
	padding: 15px;
	font-size: 20px;
	font-family: "Oswald", serif;
	line-height: 1;
	font-weight: 300;
	width: 480px;
	margin-right: 10px;
}
.loginArea .login__form--list .login__form--submit {
	display: block;
	border-radius: 5px;
	background: linear-gradient(110deg, rgba(101, 173, 46, 1) 0%, rgba(0, 128, 189, 1) 50%, rgba(0, 87, 130, 1) 100%);
	color: #fff;
	font-size: 24px;
	font-family: "Oswald", serif;
	line-height: 1;
	font-weight: 300;
	width: 150px;
	text-align: center;
}
.loginArea .visitors {
	margin: 60px auto 0;
	padding: 40px;
	max-width: 800px;
	background: #f2f9fc;
}
.loginArea .visitorsTxt {
	font-size: clamp(13px, .9375vw, 18px);
	margin-bottom: 30px;
}
.loginArea .visitorsBtn {
	display: block;
	position: relative;
	width: 380px;
	margin: 0 auto;
	line-height: 80px;
	color: #fff;
	font-weight: 600;
	font-size: clamp(15px, 1.25vw,24px);
	border-radius: 5px;
	z-index: 2;
}
.loginArea .visitorsBtn:before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border-radius: 5px;
	z-index: -1;
	background: linear-gradient(110deg, rgba(245, 199, 79, 1) 0%, rgba(147, 113, 26, 1) 50%, rgba(197, 158, 57, 1) 100%);
}
.loginArea .visitorsBtn:after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border-radius: 5px;
	z-index: -1;
	opacity: 0;
	transition: .3s;
	background: linear-gradient(110deg, rgba(197, 158, 57, 1) 0%, rgba(147, 113, 26, 1) 50%, rgba(245, 199, 79, 1) 100%);
}
.loginArea .visitorsBtn:hover:after {
	opacity: 1;
}
@media only screen and (max-width: 598px) {
	.loginArea {
		padding: 40px 20px;
		margin: 0 auto 60px;
	}
	.loginArea .login__description {
		margin-bottom: 30px;
	}
	.loginArea .login__form--list {
		display: block;
	}
	.loginArea .login__form--list .login__form--password {
		display: block;
		font-size: 18px;
		width: 100%;
		margin-right: 0;
		margin-bottom: 10px;
	}
	.loginArea .login__form--list .login__form--submit {
		display: block;
		border-radius: 3px;
		font-size: 18px;
		padding: 15px;
		width: 100%;
	}

	.loginArea .visitors {
		margin: 30px auto 0;
		padding: 30px 20px;
	}
	.loginArea .visitorsTxt {
		margin-bottom: 20px;
	}
	.loginArea .visitorsBtn {
		width: 240px;
		line-height: 50px;
		border-radius: 3px;
	}
	.loginArea .visitorsBtn:before {
		border-radius: 3px;
	}
	.loginArea .visitorsBtn:after {
		border-radius: 3px;
	}
}

.limitedLinks {
}
.limitedLinks .linksInner {
	max-width: 1600px;
	width: 90%;
	margin: 0 auto;
}
.limitedLinks .linksInner .linksTtl {
	text-align: center;
	font-size: 140px;
	font-weight: 300;
	font-family: "Oswald", serif;
	line-height: 1;
	margin-bottom: 60px;
}
	.limitedLinks .linksInner .linksTtl span {
		background: linear-gradient(110deg, rgba(101, 173, 46, 1) 0%, rgba(0, 128, 189, 1) 50%, rgba(0, 87, 130, 1) 100%);
		opacity: .15;
		-webkit-background-clip: text;
		-webkit-text-fill-color: transparent;
	}
.linksWrap {
	padding: 80px;
	border: solid 1px;
	border-image: linear-gradient(135deg, rgba(104, 174, 40, 1) 0%, rgba(0, 128, 189, 1) 56.67%, rgba(0, 83, 125, 1) 100%);
	border-image-slice: 1;
}
.linksWrap .linksSubTtl {
	text-align: center;
	font-size: 42px;
	font-weight: 500;
	font-family: "YakuhanMP", "Shippori Mincho", serif;
	line-height: 1.4;
	margin-bottom: 40px;
	margin-top: -105px;
}
	.linksWrap .linksSubTtl span {
		background: linear-gradient(110deg, rgba(101, 173, 46, 1) 0%, rgba(0, 128, 189, 1) 50%, rgba(0, 87, 130, 1) 100%);
		-webkit-background-clip: text;
		-webkit-text-fill-color: transparent;
		position: relative;
		z-index: 2;
	}
	.linksWrap .linksSubTtl span:after {
		content: '';
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%,-50%);
		width: 120%;
		height: 100%;
		background: #fff;
		z-index: -1;
	}
.linksWrap .linksTxt {
	text-align: center;
	font-size: clamp(13px, .9375vw, 18px);
	font-family: "YakuhanJP", "noto sans jp", serif;
	line-height: 2;
	letter-spacing: .1em;
	margin-bottom: 60px;
}
.linksWrap .linkslist {
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	gap: 0 2%;
}
.linksWrap .linkslist li {
	position: relative;
}
.linksWrap .linkslist li.soon:after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(../images/visitors-login/img_login_soon.png)no-repeat center center / contain;
}
@media only screen and (max-width: 598px) {
	.limitedLinks .linksInner .linksTtl {
		text-align: center;
		font-size: 60px;
		margin-bottom: 30px;
	}
	.linksWrap {
		padding: 30px;
	}
	.linksWrap .linksSubTtl {
		font-size: 24px;
		margin-bottom: 20px;
		margin-top: -45px;
	}
	.linksWrap .linksSubTtl span:after {
		left: 55%;
	}
	.linksWrap .linksTxt {
		margin-bottom: 30px;
	}
	.linksWrap .linkslist {
		display: block;
	}
	.linksWrap .linkslist li + li {
		margin-top: 10px;
	}
}







