@charset "utf-8";
.topContents{padding-bottom: 120px;}
.mainimage{
	max-width: 1115px;
	min-width: 1000px;
	margin: 20px auto 0;
	/*display: grid;*/
	width: 100%;
	position: relative;
}
.indexContents{
	max-width: 1115px;
	min-width: 1000px;
	margin: 0 auto;
	clear: both;
}
.scrollBtn{
	display: inline-block;
	width: 100px;
	height: 20px;
	position: absolute;
	bottom: -80px;
	left: calc(50% - 50px);
	transform: rotateZ(90deg);
}
.scrollBtn a{
	text-decoration: none;
	color: #000;
	font-family: 'Roboto', sans-serif;
	font-weight: 700;
	position: relative;
	display: block;
	width: 100px;
	height: 20px;
}
.scrollBtn a::before{
	content: "";
	display: inline-block;
	width: 50px;
	height: 1px;
	background: #000;
	position: absolute;
	right: 0;
	bottom: 5px;
}
.scrollBtn a::after{
	content: "";
	display: inline-block;
	width: 5px;
	height: 5px;
	background: #000;
	bottom: 3px;
	right: 36px;
	position: absolute;
}
/*---------- 見出し ----------*/
.newsBox h2,.voiceName,.scheduleBox h2,.linkBox h2{
	background: url("./../images/base/h2.png") left top / 50px no-repeat;
	padding-left: 65px;
	line-height: 100%;
	font-size: 3.6rem;
}
.newsBox h2,.scheduleBox h2,.linkBox h2{
	font-family: 'Roboto', sans-serif;
	font-weight: 700;
}
.newsBox h2 span,.scheduleBox h2 span,.linkBox h2 span{
	font-size: 1.5rem;
	display: block;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 300;
}
.voiceName{
	padding-top: 5px;
	padding-bottom: 10px;
	margin-bottom: 30px;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 900;
}
.scheduleBox h2{margin-bottom: 30px;}

/*---------- NEWS ----------*/
.newsBox{
	display: flex;
	padding: 50px 0;
}
.newsBox > div:first-child{
	width: 300px;
}
.newsBox > div:last-child{
	width: calc(100% - 300px);
}
.newsBox h2{
	margin-bottom: 25px;
}
.newsBox > div:first-child a{
	color: #000;
	padding-bottom: 5px;
	text-decoration: none;
	border-bottom: 2px solid #000;
	font-family: 'Roboto', sans-serif;
	font-weight: 700;
}
.newsBox .newsList1 li{
	padding-bottom: 0;
	border-bottom: none;
}
/*---------- Message ----------*/
.indexMessageBox{
    display:flex;
    padding:0px 0 100px;
    align-items: center;
}
.indexMessageBox > div:nth-child(1){
    width:calc(100% - 425px);
}
.indexMessageBox > div:nth-child(2){
    width:400px;
    margin-left:25px;
}
.indexMessageBox h2{
    font-family:'Noto Sans JP',sans-serif;
    font-weight:900;
    margin-bottom:30px;
    font-size:3.5rem;
    letter-spacing: 0.1rem;    
    line-height:1;
    min-height:50px;
    display:flex;
    align-items: center;
}
.indexMessageBox h2::before{
    content:"";
    background-image:url("./../images/base/h2.png");
    background-position:left top;
    background-size:50px;
    background-repeat:no-repeat;
    display:inline-block;
    width:50px;
    height:50px;
    margin-right:15px;
}
.indexMessageBox img{
    display:block;
    margin:0 auto;
}
.indexMessageBox p{
    margin-bottom:25px;
}
@media only screen and (max-width:999px){
    .indexMessageBox{
        flex-direction: column;
        padding:100px 0 100px;        
    }
    .indexMessageBox > div:nth-child(1),
    .indexMessageBox > div:nth-child(2){
        width:100%;
        margin-left:0px;
    }
    .indexMessageBox h2{
        font-family:'Noto Sans JP',sans-serif;
        font-weight:900;
        margin-bottom:30px;
        font-size:3.0rem;
        letter-spacing: 0.1rem;    
        line-height:1;
        min-height:35px;
        display:flex;
        align-items: center;
    }
    .indexMessageBox h2::before{
        content:"";
        background-image:url("./../images/base/h2.png");
        background-position:left top;
        background-size:35px;
        background-repeat:no-repeat;
        display:inline-block;
        width:35px;
        height:35px;
        margin-right:15px;
    }
    .indexMessageBox p{
        margin-bottom:25px;
    }
}
/*---------- Voice ----------*/
.voice{
	padding: 200px 0 220px;
	position: relative;
}
.voice::before{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 200px;
	content: "";
	background: url("./../images/contents/index/voice.png") left top / contain no-repeat;
}
.voice::after{
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 120px;
	content: "";
	background: url("./../images/contents/index/voice-after.png") center / cover no-repeat;
}

img.voiceTitle{
	display: block;
	width: 100%;
}
.voiceText{
    margin-bottom:10px;
}
.indexVoiceList,
.indexVoiceList2{
	padding: 120px 0 0;
	position: relative;
}
.indexVoiceList2{
    display:flex;
    flex-wrap:wrap;
}
/*.indexVoiceList::before{
	display: block;
	content: "";
	position: absolute;
	width: 577px;
	height: 203px;
	top: -203px;
	left: 0;
	background: url("./../images/contents/index/voice.png") left / contain no-repeat;
}*/
/*.indexVoiceList::before{
	content: "";
	position: absolute;
	left: 60px;
	top:-30px;
	background: url("./../images/contents/index/ayamate.png") left top / contain no-repeat;
	width: 640px;
	height: 138px;
}*/

.indexVoiceList > li,
.indexVoiceList2 > li{
	display: flex;
    justify-content: space-between;
	position: relative;
	margin-bottom: 100px;
}
.indexVoiceList2 > li{
    width:calc((100% - 100px)/2);
    margin:0 99.9px 100px 0;
}
.indexVoiceList2 > li:nth-child(2n){
    margin-right:0;
}
.indexVoiceList > li:last-child{
    margin-bottom:0;
}
/*.indexVoiceList2 > li > div:nth-child(2) > div{
	height:420px
}*/
.indexVoiceList2 > li > div{
    width:calc((100% - 25px) /2);
}
.indexVoiceList2 > li > div > img,
.indexVoiceList2 > li img,
.indexVoiceList > li img{
	width: 100%;
	height: auto;
	display: block;
	margin: 0 auto;
}
.indexVoiceList2 > li > div > img,
.indexVoiceList2 > li img{
    height: auto;
}
.indexVoiceList2 > li > div,
.indexVoiceList > li > div{
	max-width: 420px;
    /*height:420px;*/
}
.indexVoiceList > li > div:first-child{
	padding-top: 150px;
}
.indexVoiceList2 > li > div:first-child{
	padding-top: 110px;
    margin-left: 25px;
}
.indexVoiceList2 > li:nth-child(even) > div:first-child{
	padding-top: 110px;
    margin-left: 0px;
    margin-right: 25px;
}
ul.indexVoiceList2 li:nth-child(odd),
ul.indexVoiceList li:nth-child(odd) {
    flex-direction: row-reverse;
}
.indexVoiceList2 > li > div > p,
.indexVoiceList > li > div > p{margin-bottom: 25px;}
.indexVoiceList2 > li > div > div:last-child a,
.indexVoiceList > li > div > div:last-child a{
	text-decoration: none;
	border-bottom: 2px solid #000;
	padding-bottom: 5px;
	color: #000;
	font-family: 'Roboto', sans-serif;
	font-weight: 700;
}
.indexVoiceList > li::before{
    display: block;
	text-align: center;
	position: absolute;
	top: -40px;
	left: 50%;
	transform: translateX(-50%);
	-webkit- transform: translateX(-50%);
	line-height: 100%;
	font-family: 'Roboto', sans-serif;
	font-weight: 400;
	font-size: 12rem;
}
.indexVoiceList2 > li::before{
    display: block;
	text-align: center;
	position: absolute;
	top: 0px;
	left: 70%;
	transform: translateX(-50%);
	-webkit- transform: translateX(-50%);
	line-height: 100%;
	font-family: 'Roboto', sans-serif;
	font-weight: 400;
	font-size: 8rem;
}
ul.indexVoiceList2 li:nth-child(even)::before{
    left:20%;
}
.indexVoiceList2 > li:nth-child(1)::before,.indexVoiceList > li:nth-child(1)::before{content: "#01";}
.indexVoiceList2 > li:nth-child(2)::before,.indexVoiceList > li:nth-child(2)::before{content: "#02";}
.indexVoiceList2 > li:nth-child(3)::before,.indexVoiceList > li:nth-child(3)::before{content: "#03";}
.indexVoiceList2 > li:nth-child(4)::before,.indexVoiceList > li:nth-child(4)::before{content: "#04";}
/*.voice01::before,.voice02::before,.voice03::before,.voice04::before{
	display: block;
	text-align: center;
	position: absolute;
	top: -40px;
	left: 50%;
	transform: translateX(-50%);
	-webkit- transform: translateX(-50%);
	line-height: 100%;
	font-family: 'Roboto', sans-serif;
	font-weight: 400;
	font-size: 12rem;
}
.voice01::before{content: "#01";}
.voice02::before{content: "#02";}
.voice03::before{content: "#03";}
.voice04::before{content: "#04";}*/
.viewAllBtn a{
	display: block;
	color: #000;
	font-family: 'Roboto', sans-serif;
	font-weight: 700;
	text-align: center;
	border:2px solid #000;
	text-decoration: none;
	padding: 10px;
	transition:0.3s;
}
.viewAllBtn a:hover{
	color: #fff;
	background: #000;
	transition:0.3s;
}

/*---------- SCHEDULE ----------*/
.scheduleBox{
	padding: 120px 0 170px;
	position: relative;
}
.scheduleBox::after{
	position: absolute;
	content: "";
	width: 100%;
	height: 120px;
	bottom:0;
	background: #f2f2f2;
}
.eventBox{
	padding-top: 100px;
	position: relative;
}
.scheduleBox h3{
	font-size: 3.0rem;
	font-weight: 700;
	margin-bottom: 25px;
}
/*.eventBox .newsList1 li{
	border-bottom: 1px dashed #ccc;
	padding-bottom: 15px;
}*/
.eventBox .newsList1Title a:first-child{
	margin-right: 20px;
}
.eventBox .newsList1Title a:hover{
	text-decoration: underline;
}
.eventBox .newsList1{
	margin-bottom: 60px;
}
/*---------- PARTNER ----------*/
.linkBox{
	padding: 120px 0;
}
.linkBox .indexContents{
	display: flex;
}
.linkBox .indexContents > div,.linkBox .indexContents > ul{
	width: 50%;
}
/*.linkBox .indexContents > ul{
	border-top:2px solid #000;
	border-left:2px solid #000;
}
.linkBox .indexContents > ul li{
	border-right:2px solid #000;
	border-bottom:2px solid #000;
	margin: 0;
}*/
/*.linkBox .indexContents > div:last-child{
	border-top:2px solid #000;
	border-left:2px solid #000;
}*/
/*.linkBox .indexContents > div:last-child{
	display: flex;
	flex-wrap: wrap;
}*/
.linkBox .indexContents > div:last-child > div{
	border-right:2px solid #000;
	border-left:2px solid #000;
	margin: 0;
	border-bottom:2px solid #000;

}
.linkBox .indexContents > div:last-child > div:first-child{
	border-top:2px solid #000;
}
.linkBox .indexContents > div:last-child > div a{
	padding: 15px;
	display: block;
	text-decoration:none;
	color:#000;
	position: relative;
	transition: 0.3s;
	margin: 0;
}
.linkBox .indexContents > div:last-child > div a:hover{
	background: #000;
	color: #fff;
	transition: 0.3s;
}
.linkBox .indexContents >div:last-child > div a::before{
	position: absolute;
	right: 5px;
	top:5px;
	content: "";
	width: 16px;
	height: 16px;
	background-color: #000;
	display: inline-block;
	-webkit-mask: url("./../images/contents/index/link.svg");
	mask: url("./../images/contents/index/link.svg");
	-webkit-mask-size: cover;
	mask-size: cover;
}
.linkBox .indexContents > div:last-child >div a:hover::before{
	background-color: #fff;
}
@media only screen and (max-width:999px){
	.topContents{
		padding-bottom: 145px;
	}
	.mainimage{
		min-width: 100px;
		padding: 0 15px;
	}
	.mainimage img{
		display: block;
		margin: 0 auto;
	}
	.indexContents{
		min-width: 100px;
    	width: 100%;
		padding: 0 15px 0 15px;
	}
	.newsBox h2,.voiceName,.scheduleBox h2,.linkBox h2{
		background-size: 35px;
		padding-left: 50px;
	}
	.voiceName{
		padding-top: 0;
		padding-bottom:0;
	}
	.newsBox h2 span, .scheduleBox h2 span, .linkBox h2 span{
		line-height: 1.7;
	}

	/*---------- NEWS ----------*/
	.newsBox{display: inherit;}
	.newsBox > div:first-child,.newsBox > div:last-child{width: 100%;}
	.newsBox > div:first-child > div{text-align: right;}
	/*---------- Voice ----------*/
	.voice{padding: 65px 0 120px;}
	.voice::before{
		height: 80px;
		background-size: cover;
	}
    .indexVoiceList2{
        display:flex;
        flex-wrap:wrap;
    }
    .indexVoiceList2 > li{
        width:100%;
        margin:0 0px 15px 0;
        margin-bottom:100px;
    }
    .indexVoiceList2,
	.indexVoiceList{padding-top: 90px;}
	.indexVoiceList2::before,.indexVoiceList::before{
		width: 300px;
		height: 65px;
		left: 0;
		top: 0;
	}
	.indexVoiceList2 > li,.indexVoiceList > li{
		flex-wrap: wrap;
	}
	.indexVoiceList2 > li:last-child,.indexVoiceList > li:last-child{margin-bottom: 40px;}
	.indexVoiceList2 > li img,.indexVoiceList > li img{
		width: 100%;
		height: auto;
	}
	.indexVoiceList2 > li > div,.indexVoiceList > li > div{width: 100%;}
	.indexVoiceList2 > li > div:first-child,.indexVoiceList > li > div:first-child,
    .indexVoiceList2 > li:nth-child(even) > div:first-child{
		order:2;
		padding-top: 25px;
        margin-left:25px;
        margin-right:25px;
	}
	.indexVoiceList2 > li > div:last-child,.indexVoiceList > li > div:last-child{order:1;}
    .indexVoiceList2 > li:nth-child(1)::before,
    .indexVoiceList > li:nth-child(1)::before,
    .indexVoiceList2 > li:nth-child(2)::before,
    .indexVoiceList > li:nth-child(2)::before,
    .indexVoiceList2 > li:nth-child(3)::before,
    .indexVoiceList > li:nth-child(3)::before,
    .indexVoiceList2 > li:nth-child(4)::before,
    .indexVoiceList > li:nth-child(4)::before{
		font-size: 8rem;
		top: -50px;
	}
	/*.voice01::before, .voice02::before, .voice03::before, .voice04::before{
		font-size: 8rem;
		top: -50px;
	}*/
    .indexVoiceList2 > li > div > div:last-child,
	.indexVoiceList > li > div > div:last-child{
		text-align: center;
	}
	.voice::after{
		height: 80px;
	}
	/*---------- SCHEDULE ----------*/
	.scheduleBox{
		padding: 50px 0 120px;
	}
	.eventBox{padding-top: 40px;}
	.eventBox .newsList1{margin-bottom: 30px;}
	.scheduleBox::after{
		height: 80px;
	}
	/*---------- PARTNER ----------*/
	.linkBox {
    	padding: 40px 0;
	}
	.linkBox .indexContents{display: inherit;}
	.linkBox .indexContents > div, .linkBox .indexContents > ul{width: 100%;}
	.linkBox h2{margin-bottom: 25px;}
}

/*ティザーサイト*/
.headerTitleTeaser img{
	width: 280px;
	height: 56px;
}
.mainimageTeaser{
	max-width: 1115px;
	min-width: 1000px;
	margin: 50px auto 50px;
}
.mainimageTeaser img{
	display: block;
	margin: 0 auto;
}
.comingsoon{
	text-align: center;
	background: #009fe8;
	color: #fff;
	padding: 20px;
	font-size: 1.8rem;
}
.comingsoon span{
	font-size: 2.6rem;
}
.teaserFooter{
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin: 0 auto;
    width: 800px;
}
.teaserFooter div{
	width: calc(100% / 3);
}
.teaserFooter div:first-child img{
	width: 200px;
	height: 40px;
	display: block;
	margin: 0 auto 15px;
}
.teaserFooter div:nth-child(2){
	font-weight: bold;
	text-align: center;
}

@media only screen and (max-width:999px){
	.headerTitleTeaser img{
		width: 180px;
		height: 36px;
	}
	.mainimageTeaser{
		min-width: 100px;
		padding: 0 15px;
	}
	.teaserFooter{
		display: inherit;
		width: 100%;
	}
	.teaserFooter div:first-child img{margin-bottom: 25px;}
	.teaserFooter div{width: 100%;}
	.teaserFooter div:nth-child(2){margin-bottom: 25px;}
	/*.snsLink > ul{justify-content: center;}*/
}