@charset "utf-8";


/* responsive
-------------------------------------------------- */

/* PC Only */

@media (min-width: 768px) {
	.pc {
		display: inline-block !important;
	}

	.sp {
		display: none !important;
	}
}

/* SP Only */

@media (max-width: 767px) {
	.pc {
		display: none !important;
	}

	.sp {
		display: inline-block !important;
	}
}


/* keyframes
-------------------------------------------------- */

@keyframes fadeIn {
	0% {
		opacity: 0
	}

	100% {
		opacity: 1
	}
}

@keyframes fadeOut {
	0% {
		opacity: 1
	}

	100% {
		opacity: 0
	}
}

@keyframes zoom {
	0% {
		width: 80.2%;
	}

	100% {
		width: 48%;
	}
}

@keyframes slideR {
	0% {
		width: 0%;
	}

	100% {
		width: 100%;
	}
}


/* leyout
-------------------------------------------------- */

.block {
	position: relative;
	padding-bottom: 100px;
	/*background: linear-gradient(#f2f1f1, #cdcccc);*/
}

.block .heading {
	height: 100vh;
}

.block .heading .sticky {
	position: -webkit-sticky;
	position: sticky;
	top: 0;
	height: 100vh;
}
.block-b {
	position: relative;
	padding-bottom: 0;
	/*background: linear-gradient(#f2f1f1, #cdcccc);*/
}

.fadein {
	opacity: 0;
	transform: translateY(80px);
	transition: opacity 0.5s, transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.fadein.move {
	opacity: 1;
	transform: translateY(0);
}

.heading h4 {
	position: relative;
	display: table-cell;
	z-index: 3;
}

.heading .notes {
	position: absolute;
	bottom: 20%;
	right: 250px;
	color: #fff;
	z-index: 3;
}

.heading .bg {
	position: relative;
	margin: 0 auto;
	width: 100%;
	max-width: 1600px;
	height: 100vh;
	display: table;
	background: center center no-repeat;
	background-size: contain;
}

.heading .bg .wrap {
	position: absolute;
	left: 0;
	bottom: 8%;
	width: 100%;
	text-align: center;
}

.heading .bg .text {
	margin: 0 auto;
	width: 90%;
	max-width: 1000px;
	font-size: 30px;
	line-height: 42px;
	font-weight: bold;
    text-shadow: 2px 2px 10px #000;
	letter-spacing: 0.09em;
	transform: translateY(30px);
	transition: all 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.heading .bg .wrap .notes {
	margin: -4em auto 4em auto;
	max-width: 1000px;
	font-family: YuGothic, "Custom Yu Gothic", "Yu Gothic", sans-serif;
	color: #000;
	font-size: 12px;
	line-height: 18px;
	letter-spacing: 0.05em;
	text-align: right;
}

.detail {
	margin: 0 auto;
	width: 100%;
	max-width: 1200px;
	padding-left: 40px;
	padding-right: 40px;
}
.detail-s {
	margin: 0 auto;
	width: 100%;
}

.box {
	margin-top: 80px;
}

.row {
	display: flex;
	justify-content: space-between;
}

.row > div {
	width: 50%;
}

.row > li {
	margin-left: 10%;
}

.row > li:first-child {
	margin-left: 0;
}

.row > li figure {
	margin-top: 20px;
}

.row > .right {
	margin: 0 0 0 25px;
}

.fadeImageL.move figure {
	opacity: 1;
	width: 48%;
	/*height: 300px;*/
}
.fadeImageL figure {
	opacity: 0;
    transition: 0.5s linear 0.7s;
}

.block .model {
	position: absolute;
	top: -30px;
	left: 0;
	font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	font-size: 14px;
	line-height: 1em;
	letter-spacing: 0;
}

.block h5 .model {
	top: -36px;
	left: -7px;
}

.block .model.eosr {
	padding: 4px 6px;
	color: #fff;
	background-color: #434343;
}

.block .model.eosrp {
	padding: 2px 4px;
	color: #e60012;
	border: #e60012 2px solid;
}

/* SP Only */

@media (max-width: 599px) {
	.block {
		padding-bottom: 25px;
		padding-bottom: 5vw;
	}
	.detail {
		max-width: 100%;
		padding-right: 20px;
		padding-left: 20px;
	}


	.box {
		margin-top: 40px;
		margin-top: 10.66666vw;
	}

	.heading .mask .notes {
		right: 20px;
		right: 5.33333vw;
	}

	.heading .bg {
		background-size: 150% auto;
	}

	.heading .bg .wrap {
		/*bottom: 14vh;*/
	}

	.heading .bg .wrap .text {
		font-size: 13px;
		font-size: 3.46666vw;
		line-height: 21px;
		line-height: 5.6vw;
	}

	.heading .bg .wrap .notes {
		margin: -2em auto 2em auto;
		font-size: 10px;
		font-size: 2.66666vw;
		line-height: 12px;
		line-height: 3.2vw;
	}

	.row {
		display: block;
	}
	
	.row > div {
	width: 100%;
	}
		
	.row > li {
		margin-left: 0;
	}

	.row > .right {
		margin-left: 0;
		text-align: center;
	}
	
	.model {
		top: -18px;
		top: -4.8vw;
		font-size: 11px;
		font-size: 2.93333vw;
	}

	h5 .model {
		top: -22px;
		top: -5.86666vw;
		left: -4px;
		left: -1.06666vw;
	}

	.model.eosr {
		padding: 2px 3px;
		padding: 0.53333vw 0.8vw;
		color: #fff;
		background-color: #434343;
	}

	.model.eosrp {
		padding: 1px 2px;
		padding: 1px 0.53333vw;
		border-width: 1px;
	}
	
	.fadeImageL.move figure {
		width: 100%;
		height: auto;
}
}


/* text
-------------------------------------------------- */

.top h4 {
	color: #fff;
	font-size: 60px;
	line-height: 75px;
	letter-spacing: 0.1em;
	text-indent: 0.1em;
	text-align: center;
	white-space: nowrap;
	vertical-align: middle;
	opacity: 1;
	transition: opacity 1.5s;
	text-shadow: 3px 3px 7px #000;
}

h4 span.copy {
	margin-top: 40px;
	display: block;
}

/* SP Only */

@media (max-width: 767px) {
	h4 span.copy {
		font-size: 30px;
		font-size: 8vw;
	}
}

/* movie
-------------------------------------------------- */

.half {
	position: relative;
	width: 100%;
	height: 100vh;
	overflow: hidden;
}