@charset "utf-8";
/* CSS Document */
html{
	font-size:62.5%;
}
a:hover{
	text-decoration: none;
}

section{
	font-size:1.6rem;
	color:#fff;
	font-family: "メイリオ", Meiryo,"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	width:100% ;
	height:100vh;
	max-height: 55vw;
	overflow:hidden;
	position:relative;
}
.roboto{
	font-family:Roboto;
	font-weight:100;
	font-style:italic;
}
.top-bg-wrap{
	position:fixed;
	width:100%;
	height: 100vh;
	z-index:-1;
}
.top-bg img{
	width: 100vw;
	height: 100vh;
	object-fit: cover;
	font-family: 'object-fit: cover;'
}

header{
	position:fixed;
	top: 45px;
	z-index:20;
	width:100vw
}
input{
	display:none;
	}
#menu-trigger{
	width: 150px;
	position:relative;
	left: 45px;
	display:flex;
	color: #fff;
	font-size:2.0rem;
	align-items: center;
}
#menu-trigger img{
	width: 40px;
	height: 40px;
	margin-right: 10px;
}
#menu-trigger p{
	display: flex;
    align-items: center;
    height: 40px;
    margin-bottom: 0;

}
nav{
    position: absolute;
	top: 40px;
	left: 44px;
	z-index: 200;
	font-size:1.5rem;
	}
nav ul{
	position: relative;
}
nav ul li:first-child{
	position: absolute;
	left: -335px;
	transition: 0.3s;
    background: #C90D0D;
}
nav ul li:nth-child(2){
	position: absolute;
	left: -335px;
	top: 53px;
	transition:  0.2s;
	transition-delay: 0.1s;
    background: #C90D0D;
}
nav ul li:nth-child(3){
	position: absolute;
	left: -335px;
	top: 106px;
	transition:  0.2s;
	transition-delay: 0.2s;
    background: #C90D0D;
}
nav ul li:nth-child(4){
	position: absolute;
	left: -335px;
	top: 159px;
	transition:  0.2s;
	transition-delay: 0.3s;
    background: #C90D0D;
}
nav ul li:nth-child(5){
	position: absolute;
	left: -335px;
	top: 212px;
	transition:  0.2s;
	transition-delay: 0.4s;
    background: #C90D0D;
}
nav ul li:nth-child(6){
	position: absolute;
	left: -335px;
	top: 265px;
	transition:  0.2s;
	transition-delay: 0.5s;
    background: #C90D0D;
}
#menu:checked ~ nav ul li{
	left: 0;
}
#head-warp nav ul {
	list-style-type: none;
	padding-left: 0;
	margin: 0;
}
nav a{
	color: #fff;
}
nav label{
	position: absolute;
	top: 5px;
	right:10px;
	font-size: 1.8rem;
	color: #C90D0D;
	background: #fff;
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
	font-weight: bold;
	padding-bottom: 4px;
}
#head-warp nav ul li{
	border-bottom: solid 1px #222;
	border-left: solid 1px #222;
	border-right: solid 1px #222;
	padding: 15px;
	height: 53px;
    width: 290px;
}
#head-warp nav ul li a::before{
	content: "＞";
	margin-right: 5px;
	font-weight: bold;
	color: #fff;
}
#head-warp nav ul li:first-child{
	border-top: solid 1px #222;
}
#logo{
	position: absolute;
	right: 45px;
	top: 0px;
}
#logo img{
	width: 120px;
}
#logo span{
	display:block;
	text-decoration: none;
	font-size:1.3rem;
	color:#fff;
	margin-top:5px;
	font-weight:bold;
}
#sctn01{
	background: url(../images/road.png) right top no-repeat rgba(0,0,0,0.7);
	background-size: auto 100%;
}
#sctn01 h1{
	font-size:6.0rem;
	text-align:center;
	margin: 0 auto;
	position:relative;
	top: 25vh;	
}
#sctn01 h1 span{
	display:block;
	color:#C90D0D;
	font-size:3.4rem;
	margin-top:30px;
}


#sctn02{
	width:100%;
	height:215px;
	padding: 30px 0;
	background:#C90D0D;
	text-align:center;
}

#sctn02 h2{
	font-size: 34px;
	margin-bottom: 20px;
	position:relative;
}
#sctn02 h2::before,#sctn02 h2::after{
	content:"";
	display:inline-block;
	width:10px;
	height: 2px;
	background:#fff;
	margin: 10px 30px;
}


#sctn03{
	background:url(../images/back2.jpg);
	background-size:cover;
	background-attachment:fixed;
	transition:0.1s;
	padding: 10vh 0;
}
#sctn04{
	background:url(../images/back3.jpg);
	background-size:cover;
	background-attachment:fixed;
	transition:0.1s;
	padding: 10vh 0;
}
#sctn05{
	background:url(../images/back4.jpg);
	background-size:cover;
	background-attachment:fixed;
	transition:0.1s;
	padding: 10vh 0;
}
#sctn06{
	background:url(../images/back5.jpg);
	background-size:cover;
	background-attachment:fixed;
	transition:0.1s;
	padding: 10vh 0;
}
#sctn07{
	background:url(../images/back6.jpg);
	background-size:cover;
	background-attachment:fixed;
	transition:0.1s;
	padding: 10vh 0;
}
#sctn08{
	background:url(../images/road.png)no-repeat,url(../images/back7.jpg) no-repeat;
	background-size:auto 100%,cover;
	background-attachment:fixed;
	transition:0.1s;
	background-position: right top,center top ;
	padding: 10vh 0;
	height: 80vh
}
.sctnslider{
	width: 100vw;
	margin: 0 auto;
}
.slide-item{
	padding: 0 5vw;
	margin-bottom:30px;
}
.slide-item p{
	margin-bottom: 30px;
}
.item-img{
	margin-bottom: 20px;
}
.slick-counter{
	position:relative;
	margin: 0 auto;
	width: 210px;
	height: 35px;
	display: flex;
	align-items:center;
	justify-content: center;
	color: #333;
	background: #fff;
}
.slick-counter::before{
	content:"";
	display:block;
	width:0;
	height:0;
	position:absolute;
	left: -15px;
    border-top: 35px solid transparent;
    border-right: 15px solid #fff;
}
.slick-counter::after{
	content:"";
	display:block;
	width:0;
	height:0;
	position:absolute;
	right: -15px;
    border-bottom: 35px solid transparent;
    border-left: 15px solid #fff;
}

#sctn03 h2,#sctn04 h2,#sctn05 h2,#sctn06 h2,#sctn07 h2{
	background: #C70118;
	width: 320px;
	height: 35px;
	font-size:1.6rem;
	display: flex;
	align-items: center;
	position:relative;
	padding-left: 20px;
	margin-bottom: 30px;
}
#sctn03 h2,#sctn04 h2,#sctn05 h2{margin-left: calc(5vw + 250px);}
#sctn06 h2,#sctn07 h2{margin-left:0}
#sctn03 h2::before,#sctn04 h2::before,#sctn05 h2::before,#sctn06 h2::before,#sctn07 h2::before{
	content:"";
	display:block;
	width:0;
	height:0;
	position:absolute;
	left: -15px;
    border-top: 35px solid transparent;
    border-right: 15px solid #C70118;
}
#sctn03 h2::after,#sctn04 h2::after,#sctn05 h2::after,#sctn06 h2::after,#sctn07 h2::after{
	content:"";
	display:block;
	width:0;
	height:0;
	position:absolute;
	right: -15px;
    border-bottom: 35px solid transparent;
    border-left: 15px solid #C70118;
}
.r-more{
	width: 175px;
	height: 50px;
	background:#C90D0D;
}
.r-more a{
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	color: #fff;
}
.r-more a::before{
	content:">";
	margin-left: 10px;
	margin-right: 10px;
}
h3{
	font-size: 3.5rem;
	margin-bottom:25px;
}

#sctn05 h3 span{
	font-size:5.0rem;
	color:#C90D0D;
	font-style:italic;
	font-weight:bold;
	display:block;
}
#sctn06 div,#sctn07 div,#sctn08 div{
width: 790px;
margin: 0 auto 0 auto;
}
#sctn06 div p,#sctn07 div p{
	margin-bottom: 30px;
}

#sctn06 div a{
	color: #fff;
}
#sctn06 div a img{
	width: 80px;
	margin-right: 20px;
}

#sctn07 div a{
	display:flex;
	width: 310px;
	height: 50px;
	background: #C90D0D;
	margin-bottom: 20px;
	align-items: center;
	color: #fff;
}
#sctn07 div a::before{
	content:">";
	margin-left: 10px;
	margin-right:10px;
}

#sctn08 h3{
	font-weight:bold;
	font-size: 5.0rem;
	color:#C90D0D;
	text-align:center;
}
#sctn08 p{
	margin-bottom: 40px;	
}
#sctn08 a{
	display: block;
	flex-wrap: wrap;
	text-align:center
}
#sctn08 a span{
	display:block;
	margin-top:10px;
	color:#fff;
	text-decoration:none;
	font-weight:bold;
	font-size:3.8rem;
}
.slide-top{
	position:relative;
}
.slide-top-item{
	position:relative;
	transition: 0.5s;
	
}

.prev-arrow{
	display: block;
    position: absolute;
    left: calc(185px + 2.5vw);
    top: 45px;
    transform: rotateZ(180deg);
	opacity: 1.0;
	transition: 0.5s;
	z-index:10
}
.next-arrow{
	display: block;
    position: absolute;
    right: calc(185px + 2.5vw);
    top: 45px;
	opacity: 1.0;
	transition: 0.5s;
	z-index:10
}

.prev-arrow.slick-disabled,
.next-arrow.slick-disabled
{
    opacity: 0;
}

#arow{
	display: block;
    position: absolute;
    bottom: 80px;
    left: calc(50% - 53px);
}

footer{
	position: fixed;
    bottom: 45px;
    left: 45px;
	width: 40px;
}
footer a{
	display: block
}
footer a img{
	width: 40px;
}
footer a.fb,footer a.yt{
	margin-bottom: 30px;
}