@charset "utf-8";

/* init */
.pc {
	display: block;
	background-color: #fff;
}
.sp {
	display: none;
}

.pc .menu {
	background-color: #000;
	position: fixed;
	z-index: 1000;
	top: 35%;
	left: -2px;
	width: 90px;
	height: 250px;
}
.pc .menu li:first-child {
	margin-top: 30px;
}
.pc .menu li {
	padding-left: 15px;
	margin-bottom: 20px;
}
.pc .menu li a {
	color: #fff;
	font-size: 10px;
	text-decoration: none;
}
.pc .menu li.menuOv::before {
	content: '▲';
	font-size: 5px;
	color: #fff;
	position: absolute;
	/*top: 45px;*/
	left: -3px;
	transform: rotate(90deg);
	transition: 0.3s;
}

.evtArea {
	width: 100%;
	height: auto;
	position: relative;
	overflow: hidden;
}

/* bg */
.bg,
.bg img {
	width: 100%;
	z-index: 10;
	position: relative;
}

/* csvMainVisual */
.csvMainVisual {
}
.csvMainVisual p.mainImg {
	position: absolute;
	width: 100%;
	/*display: none;*/
	z-index: 100;
}
.csvMainVisual p.cttl {
	position: absolute;
	top: 3.9%; 
	/*left: 32.5%;
	width: 35%;*/
	left: 25%;
	width: 50%;
	max-width: 693px;
	opacity: 0;
	z-index: 100;
}
.csvMainVisual p.ttl {
	position: absolute;
	top: 6.7%;
	/*left: 32.4%;
	width: 35.1%;*/
	left: 25%;
	width: 50%;
	opacity: 0;
	z-index: 100;
}
.csvMainVisual p.mvTxt {
	position: absolute;
	top: 8.8%;
	left: 0;
	width: 100%;
	opacity: 0;
	text-align: center;
	z-index: 100;
}
.csvMainVisual p.mvTxt span {
	font-size: 1.07vw;
	letter-spacing: 1.4px;
	line-height: 3.8vh;
	color: #5c5c5c;
}
.csvMainVisual p.mainImg img,
.csvMainVisual p.cttl img,
.csvMainVisual p.ttl img,
.csvMainVisual p.mvTxt img {
	width: 100%;
}

/* s1 */
.s1-grid-msk {
	position: absolute;
	top: 19.6%;
	left: 0;
	width: 0;
	height: 30%;
}
.s1-grid {
	position: absolute;
	width: 100%;
	top: 19.6%;
	left: 0;
	z-index: 40;
	border-bottom: solid 1px #ebebeb;
	transform: skewY(23.7deg);
}
.s1-grid-bg {
	position: absolute;
	width: 0%;
	z-index: 5;
	background-color: #CCC;
	top: 5.6%;
	height: 16%;
}
.s1-obj-main {
	position: absolute;
	top: 16.9%;
	left: 11.4%;
	width: 32.6%;
	z-index: 100;
	opacity: 0;
}
.s1-obj-bg {
	position: absolute;
	top: 24%;
	left: 7.2%;
	width: 14.2%;
	z-index: 50;
	opacity: 0;
}
.s1-number {
	position: absolute;
	top: 23.4%;
	left: 23.3%;
	width: 12.8%;
	z-index: 60;
	opacity: 0;
}
.s1-ttl {
	position: absolute;
	top: 25.2%;
	left: 31.3%;
	width: 15%;
	z-index: 70;
	opacity: 0;
}
.s1-txt {
	position: absolute;
	top: 26.7%;
	left: 34.2%;
	width: 17.6%;
	max-width: 121px;
	z-index: 80;
	opacity: 0;
}
.s1-obj-main img,
.s1-obj-bg img,
.s1-number img,
.s1-ttl img,
.s1-txt img {
	width: 100%;
}

/* s2 */
.s2-grid-msk {
	position: absolute;
	top: 19.6%;
	right: 0;
	width: 0;
	height: 30%;
}
.s2-grid {
	position: absolute;
	width: 100%;
	top: 27.1%;
	right: -100%;
	z-index: 5;
}
.s2-grid img {
	width: 100%;
}
.s2-obj-main {
	position: absolute;
	top: 30.7%;
	left: 48.6%;
	width: 32.6%;
	z-index: 100;
	opacity: 0;
}
.s2-obj-bg {
	position: absolute;
	top: 23%;
	left: 75.7%;
	width: 10.1%;
	z-index: 50;
	opacity: 0;
}
.s2-number {
	position: absolute;
	top: 33.4%;
	left: 79.3%;
	width: 15.8%;
	z-index: 60;
	opacity: 0;
}
.s2-ttl {
	position: absolute;
	top: 30.6%;
	left: 72.6%;
	width: 15%;
	z-index: 70;
	opacity: 0;
}
.s2-txt {
	position: absolute;
	top: 32.1%;
	left: 75.4%;
	width: 16.9%;
	max-width: 124px;
	z-index: 80;
	opacity: 0;
}
.s2-obj-main img,
.s2-obj-bg img,
.s2-number img,
.s2-ttl img,
.s2-txt img {
	width: 100%;
}

/* s3 */
.s3-grid-msk {
	position: absolute;
	top: 19.6%;
	left: 0;
	width: 0;
	height: 30%;
}
.s3-grid {
	position: absolute;
	width: 100%;
	top: 19.6%;
	left: 0;
	z-index: 40;
	border-bottom: solid 1px #ebebeb;
	transform: skewY(23.7deg);
}
.s3-obj-main {
	position: absolute;
	top: 42.7%;
	left: 20%;
	width: 32.6%;
	z-index: 100;
	opacity: 0;
}
.s3-obj-bg {
	position: absolute;
	top: 45.2%;
	left: 28.3%;
	width: 22.9%;
	z-index: 50;
	opacity: 0;
}
.s3-number {
	position: absolute;
	top: 46.7%;
	left: 42.5%;
	width: 15.8%;
	z-index: 60;
	opacity: 0;
}
.s3-ttl {
	position: absolute;
	top: 46.3%;
	left: 55.6%;
	width: 15%;
	z-index: 70;
	opacity: 0;
}
.s3-txt {
	position: absolute;
	top: 47.9%;
	left: 58.4%;
	width: 15.6%;
	max-width: 161px;
	z-index: 80;
	opacity: 0;
}
.s3-obj-main img,
.s3-obj-bg img,
.s3-number img,
.s3-ttl img,
.s3-txt img {
	width: 100%;
}

/* s4 */
.s4-grid-msk {
	position: absolute;
	top: 19.6%;
	left: 0;
	width: 0;
	height: 30%;
}
.s4-grid {
	position: absolute;
	width: 100%;
	top: 19.6%;
	left: 0;
	z-index: 40;
	border-bottom: solid 1px #ebebeb;
	transform: skewY(23.7deg);
}
.s4-obj-main {
	position: absolute;
	top: 54%;
	left: 61.8%;
	width: 32.6%;
	z-index: 100;
	opacity: 0;
}
.s4-obj-bg {
	position: absolute;
	top: 53.5%;
	left: 82.7%;
	width: 8%;
	z-index: 50;
	opacity: 0;
}
.s4-number {
	position: absolute;
	top: 60.7%;
	left: 68.1%;
	width: 16.9%;
	z-index: 60;
	opacity: 0;
}
.s4-ttl {
	position: absolute;
	top: 60.6%;
	left: 36.9%;
	width: 15%;
	z-index: 70;
	opacity: 0;
}
.s4-txt {
	position: absolute;
	top: 62%;
	left: 39.7%;
	width: 17.9%;
	max-width: 161px;
	z-index: 80;
	opacity: 0;
}
.s4-obj-main img,
.s4-obj-bg img,
.s4-number img,
.s4-ttl img,
.s4-txt img {
	width: 100%;
}

/* s5 */
.s5-grid-wrap {
	width: 70%;
	height: 100%;
}
.s5-grid-bg {
	position: absolute;
	z-index: 5;
	top: 63.1%;
	left: -2.3%;
	width: 0%;
	border-bottom: 45vw solid #ccc;
	border-left: 9.2vw solid transparent;
}
.s5-obj-main {
	position: absolute;
	top: 65.5%;
	left: 20.8%;
	width: 32.6%;
	z-index: 100;
	opacity: 0;
}
.s5-obj-bg {
	position: absolute;
	top: 69.3%;
	left: 16.7%;
	width: 0%;
	z-index: 50;
	opacity: 0;
}
.s5-number {
	position: absolute;
	top: 71.2%;
	left: 35.9%;
	width: 16.9%;
	z-index: 60;
	opacity: 0;
}
.s5-ttl {
	position: absolute;
	top: 73.8%;
	left: 49.2%;
	width: 15%;
	z-index: 70;
	opacity: 0;
}
.s5-txt {
	position: absolute;
	top: 75.2%;
	left: 52%;
	width: 17.6%;
	max-width: 177px;
	z-index: 80;
	opacity: 0;
}
.s5-obj-main img,
.s5-obj-bg img,
.s5-number img,
.s5-ttl img,
.s5-txt img {
	width: 100%;
}

/* s6 */
.s6-grid-bg {
	position: absolute;
	z-index: 4;
	top: 70%;
	right: 0;
	background-color: #ccc;
	width: 0%;
	height: 25.4%;
}
.s6-grid-msk {
	position: absolute;
	top: 19.6%;
	left: 0;
	width: 0;
	height: 30%;
}
.s6-grid {
	position: absolute;
	width: 100%;
	top: 19.6%;
	left: 0;
	z-index: 40;
	border-bottom: solid 1px #ebebeb;
	transform: skewY(23.7deg);
}
.s6-obj-main {
	position: absolute;
	top: 82.3%;
	left: 49.8%;
	width: 32.6%;
	z-index: 100;
	opacity: 0;
}
.s6-obj-bg {
	position: absolute;
	top: 89.1%;
	left: 23.5%;
	width: 12%;
	z-index: 50;
	opacity: 0;
}
.s6-number {
	position: absolute;
	top: 80.5%;
	left: 68.6%;
	width: 16.9%;
	z-index: 60;
	opacity: 0;
}
.s6-ttl {
	position: absolute;
	top: 84.3%;
	left: 23.9%;
	width: 21.8%;
	z-index: 70;
	opacity: 0;
}
.s6-txt {
	position: absolute;
	top: 85.7%;
	left: 26.7%;
	width: 19.7%;
	max-width: 177px;
	z-index: 80;
	opacity: 0;
}
.s6-obj-main img,
.s6-obj-bg img,
.s6-number img,
.s6-ttl img,
.s6-txt img {
	width: 100%;
}

/* s7 */
.btArea {
	position: absolute;
	right: 0;
	bottom: 0;
	background-color: #000;
	width: 36%;
	height: 6%;
	z-index: 5;
}
.btOv {
	position: absolute;
	right: 36%;
	bottom: 0;
	background-color: #ca9d2f;
	width: 36%;
	height: 6%;
	z-index: 6;
}
.btTxt {
	position: absolute;
	right: 0;
	bottom: 0;
	width: 36%;
	height: 5.5%;
}
.s7-txt {
	position: absolute;
	right: 25%;
	bottom: 25%;
	z-index: 50;
	transition: 0.3s;
}
.s7-txt:hover {
	right: 24%;
}
.s7-arrow {
	position: absolute;
	right: 11%;
	bottom: 28%;
	z-index: 50;
}
.s7-txt:hover .btOv {
	right: 0%;
}

#wrap {
	padding-bottom: 0 !important;
}

@media only screen and (max-width:599px) {
	.pc {
		display: none;
	}

	.sp {
		display: block;
	}

	.sp .s7{
		position: relative;
	}

	.sp .s7 .btTxt{
		position: absolute;
		right: 2%;
		bottom: 20px;
		width: 100%;		
	}

	.sp .s7-txt{
		right: 15%;
		bottom: 25%;
	}
	.sp .s7-arrow{
		right: 0;
		bottom: 38%;
	}

    .sp .sp-ftNav {
    	background-color: #000;
    	display: -webkit-flex;
    	display: -moz-flex;
    	display: -ms-flex;
    	display: -o-flex;
    	display: flex;
    	-webkit-flex-wrap: wrap; /* Safari */
    	flex-wrap:         wrap;
    	box-sizing: border-box;
    	padding:0;
    }

    .sp .sp-ftNav li {
        text-align: center;
        border-bottom: solid 1px #545454;
        border-right: solid 1px #545454;
        line-height: 40px;
        flex-direction: row;
        width:50%;
    	box-sizing: border-box;
    	padding:2% 0;
    }
    .sp .sp-ftNav li:first-child {
        width:100%;
    }
    .sp .sp-ftNav li:nth-child(odd){
        border-right: none;
    }
    .sp .sp-ftNav li a {
        color: #FFF;
    }

    .sp .s7 p.abText{
    	width:90%;
        position: absolute;
        top: 50%;
        left: 5%;
	}


	/* page */
	.page {
		padding-top: 64px !important;
	}
}