/* @import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@200..900&family=Shippori+Mincho+B1&display=swap'); */

:target::before {
	margin-top: 0;
	padding-top: 0;
	content: "";
	display: block;
}

#wrapper {
	overflow: clip;
}

.fade-in {
	opacity: 0;
	transition-duration: 1000ms;
	transition-property: opacity, transform;
	transform: translate(0, 20vw);
	transition-timing-function: ease;
}

.fade-in-up {
	opacity: 0;
	transition-duration: 800ms;
	transition-property: opacity, transform;
	transform: translate(0, 20vw);
	transition-timing-function: ease;
}

.fade-in-up2 {
	opacity: 0;
	transition-duration: 800ms;
	transition-delay: 500ms;
	transition-property: opacity, transform;
	transform: translate(0, 20vw);
	transition-timing-function: ease;
	display: block;
}

.fade-in-down {
	opacity: 0;
	transition-duration: 1600ms;
	transition-delay: 500ms;
	transition-property: opacity, transform;
	transform: translate(0, -20vw);
	transition-timing-function: ease;
}

.scroll-in {
	opacity: 1;
	transform: translate(0, 0);
}



html body div.contentsWrapper {
	/* font-family: 'Noto Serif JP', serif; */
	color: #333;
	font-size: 2.813vw;
	line-height: 1.8em;
	padding-bottom: 15vw;
}

.contentsWrapper img {
	display: block;
}

.contentsWrapper h1 {
	width: 100%;
}

.contentsWrapper h1 img {
	width: 100%;
	height: auto;
}



.itemWrapper {
	width: 100%;
	box-sizing: border-box;
	margin: 0 auto 0 auto;
	padding: 0 0 15vw 0;
	position: relative;
	/* font-family: 'Noto Serif JP', serif; */
	color: #666;
	overflow: hidden;
}
.itemWrapper img{
	width: 100%;
	height: auto;
	display: block;
}

.itemWrapper .bgImg {
	width: 84.375vw;
	height: 100%;
	position: absolute;
	top: 18.75vw;
	right: 0;
	z-index: -1;
	display: flex;
}
.itemWrapper:nth-of-type(even) .bgImg {
	right: initial;
	left: 0;
}
.itemWrapper .bgImg img {
	width: 100%;
	height: auto;
}

.itemWrapper .mainImg{
	width: 100%;
	padding-right:5vw;
	box-sizing: border-box;
}
.itemWrapper:nth-of-type(even) .mainImg{
	padding-right: initial;
	padding-left:5vw;
}
.itemWrapper .imgWrapper{
	width: 100%;
	padding:0 5vw 0 5vw;
	box-sizing: border-box;
}
.itemWrapper .imgWrapper .imgS{
	width: 75vw;
	height: auto;
	display: block;
	margin-right:15vw;
}
.itemWrapper:nth-of-type(even) .imgWrapper .imgS{
	margin-right: initial;
	margin-left:15vw;
}

.btnAllWrapper {
	width: 100%;
	box-sizing: border-box;
	margin: 0 auto;
	padding: 18vw 6vw;
}

.btnAllWrapper img {
	width: 100%;
	height: auto;
}
