@charset "UTF-8";
/* CSS Document */

#firstview{
	width:100%;
	
	background-color:transparent;	
	position: relative;
	
	transition: 0.5s;
}

#firstview::before{
	display:block;
	content:"";
	
	width:100%;
	height:100%;
	
	background-image: url("../../../images/_assets-page/frontpage/img-firstview01-sp.webp");
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	
	position: absolute;
	top:0;
	left:0;
	
	z-index: -10;
}

#firstview::after{
	display:block;
	content:"";
	
	width:100%;
	height:100%;
	
	background-image: url("../../../images/_assets-page/frontpage/filt-firstview.webp");
	background-repeat: repeat;
	background-size:30px;
	background-position: center;
	
	position: absolute;
	top:0;
	left:0;
	
	z-index: -5;
}

#firstview div.content{
	width:100%;
	height:100%;
	
	margin:0 auto;
	max-width: 1080px;
	
	box-sizing: border-box;
	padding:0 10px;
}

#firstview div.content-inner{
	width:100%;
	height:100%;
	
	margin:0 auto;
	max-width: 540px;
	
	display:flex;
	align-items: center;
	justify-content: center;
	
	background-color: rgba(0,0,0,0.50);
	color:#fff;
}

#firstview div.content-inner-block{
	width:100%;
	
	box-sizing: border-box;
	padding:10px;
	padding-bottom:30px;
}

#firstview p.logo{
	width:100%;
	
	box-sizing: border-box;
	padding:10px;
}

#firstview p.logo img{
	width:100%;
	vertical-align: bottom;
}

#firstview p.caption{
	font-size:1.25rem;
	line-height:1.5em;
	
	text-align: center;
	
	margin-bottom:20px;
}

#firstview p.caption::before{
	display:inline-block;
	content:"〜";
	
	box-sizing: border-box;
	padding:0 5px;
}

#firstview p.text{
	/*font-family: "Noto Serif", serif;*/
	font-size:1.0rem;
	line-height:1.75em;
}

#firstview p.text br{
	display:none;
}

#firstview p.caption::after{
	display:inline-block;
	content:"〜";
	
	box-sizing: border-box;
	padding:0 5px;
}

#firstview ul.btn{
	display:flex;
	flex-flow: row wrap;
	align-items: stretch;
	justify-content: flex-start;
	
	width:100%;
	margin:20px 0;
}

#firstview ul.btn li{
	width:50%;
	
	font-size:1.0rem;
	line-height:20px;
	font-weight:700;
	
	text-align: center;
}

#firstview ul li span.note{
	display:block;
	
	font-size:0.8rem;
	line-height:20px;
	font-weight:400;
}

#firstview ul li a{
	display:inline-block;
	width:calc(100% - 10px);
	
	box-sizing: border-box;
	padding:10px 0 20px;
	border:solid 1px #fff;
	
	background-image: url("../../../images/_assets-page/frontpage/icon_arrow-down-white.webp");
	background-repeat: no-repeat;
	background-size:15px;
	background-position: center bottom 5px;
	
	color:#fff;
	
	transition: 0.25s;
}

#firstview ul li a:hover{
	background-color:#fff;
	color:#fd5e53;
	
	background-image: url("../../../images/_assets-page/frontpage/icon_arrow-down-color.webp");
	text-decoration: none;
}

#firstview p.note{
	font-size:0.8rem;
	line-height:1.75em;
	
	text-align: center;
}

@media screen and (min-width: 768px) {
	
	#firstview::before{
		background-image: url("../../../images/_assets-page/frontpage/img-firstview01-pc.webp");
	}
	
	#firstview div.content-inner-block{
		padding:20px;
	}
	
	#firstview ul li a{
		width:calc(100% - 40px);
	}
	
	#firstview p.text{
		text-align: center;
	}
	
	#firstview p.text br{
		display:inline;
	}
	
}

@media screen and (min-width: 960px) {
	
	#firstview div.content-inner{
		margin:0;
	}
	
}

.scroll{
	display:block;
	width:60px;
	height:60px;
	
	position: absolute;
	bottom: 20px;
	left:0;
	right:0;
	
	margin:0 auto;
	z-index: 5;
	
	/*background-color:#f00;*/
}

.scroll span{
	display:block;
	
	font-size:0.8rem;
	line-height:20px;
	font-weight:700;
	
	text-align: center;
	color:#fff;
}

.scroll::after {
	animation: scroll 3.5s infinite;
	display:block;
	content: "";
	
	width:100%;
	height:100%;
	
	position: absolute;
	top:0;
	left: 0;
	
	background-image:url("../../../images/_assets-page/frontpage/icon_arrow-down-white-scroll.webp");
	background-repeat: no-repeat;
	background-size: 30px;
	background-position: top 15px center;
}

@keyframes scroll {
  0% {
    opacity: 0;
    transform: translate(0, 0);
  }
  40% {
    opacity: 1;
  }
  80% {
    opacity: 0;
    transform: translate(0, 20px);
  }
  100% {
    opacity: 0;
  }
}

@media screen and (min-width: 768px) {
	
	.scroll{
		bottom:40px;
	}
	
}

@media screen and (min-width: 960px) {
	
	.scroll{
		bottom:40px;
	}
	
}
