/* CSS Document */

html,
body {
	padding: 0;
	margin: 0;
	font-family: "Noto Sans JP", sans-serif;
}
img {
	width: 100%;
	height: auto;
	border: none;
}
ul,li {
	list-style: none;
	margin: 0;
	padding: 0;
}
h1,h2,h3,p,a {
	text-decoration: none;
	margin: 0;
	padding: 0;
}

#wrap {
	position: relative;
}
#wrap .pcv {
	display: none;
}
@media only screen and (min-width: 769px)  {
	#wrap .pcv {
		display: block;
	}
	#wrap .spv {
		display: none;
	}
}


#main_visual {
	position: relative;
}
#main_visual .visual::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0.4);
	z-index: 10
}
#main_visual .visual {
	position: relative;
}
#main_visual .title {
	position: relative;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	width: 100%;
	max-width: 700px;
	z-index: 150;
}
#main_visual .title .logo {
	width: 45%;
	margin: 0 auto;
	line-height: 0;
}
#main_visual .title h1 {
	width: 80%;
	margin: 0 auto 10%;
	line-height: 0;
	filter: invert(1)
}
#main_visual .visual ul {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	position: relative;
	box-sizing: border-box;
/*	border-top: 1px solid #000;
	border-bottom: 1px solid #000;*/
}

#main_visual .visual ul li {
	line-height: 0;
	position: relative;
}

#main_visual .visual ul li img:nth-of-type(2) {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	animation: switch 5s infinite;
	opacity: 0;
}

@media only screen and (min-width: 769px)  {
	#main_visual .visual {
		width: 60%;
	}

	#main_visual .visual ul {
		display: grid;
		grid-template-columns: 1fr 1fr 1fr;
		position: relative;
		box-sizing: border-box;
		border-top: none;
	}

}
@keyframes switch {
  0%{ opacity: 0;}
  5%{ opacity: 1;}
  50%{ opacity: 1;}
  55%{ opacity: 0;}
  100%{ opacity: 0;}
}


.brand {
	position: relative;

}
.brand li {
	background: #d1ac88;
	box-sizing: border-box;
	height: 120px;
	border-bottom: 1px solid #FFF;
	position: relative;
}
.brand li:nth-of-type(5) {
	border-bottom: none;
}
.brand li .logo {
	filter: invert(1);
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	width: 50%;
	max-width: 300px;
	line-height: 0;
}
.brand li::before {
	content: "";
	position: absolute;
	top: 50%;
	right: 5%;
	transform: translate(0,-50%);
	background: url("../img/arrow.svg") no-repeat;
	background-size: 20px;
	width: 20px;
	height: 20px;
	z-index: 1;
	filter: invert(1)
}
.brand li a {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 2
}
@media only screen and (min-width: 769px)  {
	.brand {
		position: absolute;
		top: 0;
		left: 60%;
		width: 40%;
		height: 100%
	}	
	.brand ul {
		height: 100%;
	}
	.brand li {
		height: 20%;
	}
}

#main_foot {
	border-top: 1px solid #000;
	margin: 0 auto;
	padding: 15% 0
}
#main_foot .copy {
	font-size: 10px;
	margin: 0% auto 0;
	text-align: center;
}
@media only screen and (min-width: 769px)  {
	#main_foot {
		border-top: 1px solid #000;
		margin: 0 auto;
		padding: 100px 0
	}
	#main_foot .copy {
		font-size: 10px;
		text-align: center;
	}	
}


#main_visual .title {
	opacity: 0;
	transition: 1.5s all 0s ease;
}
#main_visual.in .title {
	opacity: 1;
}
#main_visual ul {
	opacity: 0;
	transition: 1.5s all 0s ease;
}
#main_visual.in ul {
	opacity: 1;
}
.anim {
	opacity: 0;
	transform: translate(0,30px);
}
.anim.ac {
	animation: 1.5s keyimg 0s forwards;
}
@keyframes keyimg {
	0% {
		opacity: 0;
		transform: translate(0,30px)
	}
	100% {
		opacity: 1;
		transform: translate(0)
	}
}












