@charset "utf-8";

body{
	font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    -webkit-font-smoothing: antialiased;
    font-size: 14px;
    color: #fff;
    background: #000;
}
#wrapper{
	position: relative;
	z-index: 1;
}
img{
	width: 100%;
	height: auto;
}
a{
	font-family: 'Hind', sans-serif;
	font-weight: 500;
	text-decoration: none;
	color: #349cd7;
}
.spbr, .spbr2{
	display: none;
}

#main{
	position: sticky;
	top: 0;
	z-index: 200;
}
#contents{
	padding: 50px 0 100px;
/* 	background-color: rgba(225, 225, 225, 0.8); */
}
#contents section{
	padding: 50px 0;
}
#contents .inner{
	max-width: 950px;
    margin: 0 auto;
    padding: 0 50px;
    position: relative;
}
#contents .mainSec h2{
	font-family: 'Hind', sans-serif;
	font-weight: 600;
    font-size: 50px;
    line-height: 1em;
    padding: 50px 0;
    text-align: center;
    letter-spacing: 1px;
    color: #349cd7;
    letter-spacing: 5px;
}
.btn a{
    text-align: center;
    border: solid 1px #349cd7;
    display: block;
    padding: 15px 0;
    margin: 0 auto;
    transition: .3s;
    -webkit-transition: .3s;
    letter-spacing: 5px;
}
.btn a:hover{
	color: #fff;
    border: solid 1px #349cd7;
    background: #349cd7;
}

/***** gimmick *****/
.fadeIn{
	opacity: 0;
    transform: translate(0,5%);
    -webkit-transform: translate(0,5%);
    transition: .3s ease-out;
    -webkit-transition: .3s ease-out;
}
.fadeIn.scrollIn{
	opacity: 1;
    transform: translate(0,0);
    -webkit-transform: translate(0,0);
    transition: .8s ease-out;
    -webkit-transition: .8s ease-out;
}
/***** gimmick *****/


/***** loading *****/
#loading{
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1000;
	background: #fff;
}
.loading #loading{
	display: block;
}
#loading .load-title{
	
}
#loading .load-text{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
}
#loading .load-text .logo{
	width: 40%;
	margin: 0 auto;
}
#loading .load-text .title{
	width: 40%;
	margin: 0 auto;
	padding-top: 50px;
}
#loading .enter{
	position: absolute;
	bottom: 20%;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	cursor: pointer;
	font-size: 13px;
	text-align: center;
	border: solid 1px #000;
	padding: 20px 0;
	width: 10%;
	opacity: 0;
	color: #000;
	letter-spacing: 5px;
    border-radius: 30px;
    text-indent: 0.3em;
}
#loading .enter:hover{
	color: #fff;
	background: #000;
	border: solid 1px #000;
	transition: .5s;
	-webkit-transition: .5s;
}

#loading .load-title .load-text .logo,
#loading .load-title .load-text .title{
	opacity: 0;
}
#loading .load-title.anim1 .load-text .logo,
#loading .load-title.anim1.anim2 .load-text .title,
#loading .load-title.anim1.anim2.anim3 .enter{
	opacity: 1;
	animation: fade 3s;
	-webkit-animation: fade 3s;
}
@keyframes fade{
	0% {opacity: 0;}
	100% {opacity: 1;}
}


/***** header *****/
header{
	background: #000;
	overflow: hidden;
	position: sticky;
	top: 0;
	z-index: 100;
}
header .mainvisual{
	line-height: 0;
	height: 100vh;
	display: flex;
	align-items: center;
}
header .mainvisual img{
	width: 106%;
	margin-left: -50px;
}
header .scroll{
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	font-family: 'Hind', sans-serif;
	color: #349cd7;
	font-size: 16px;
	letter-spacing: 5px;
}
header .scroll:before{
	content: "";
	position: absolute;
	width: 1px;
	height: 80px;
	left: 50%;
	background: #349cd7;
	bottom: 0;
	animation: scroll-anime 2s ease-out 0s infinite normal;
    -webkit-animation: scroll-anime 2s ease-out 0s infinite normal;
}
header .scroll p{
	padding-bottom: 95px;
	text-indent: 5px;
}
@keyframes scroll-anime{
	0% {
		transform: scaleY(0);
		-webkit-transform: scaleY(0);
		transform-origin: top;
		-webkit-transform-origin: top;
	}
	30% {
		transform: scaleY(1);
		-webkit-transform: scaleY(1);
		transform-origin: top;
		-webkit-transform-origin: top;
	}
	50% {
		transform: scaleY(1);
		-webkit-transform: scaleY(1);
		transform-origin: bottom;
		-webkit-transform-origin: bottom;
	}
	80% {
		transform: scaleY(0);
		-webkit-transform: scaleY(0);
		transform-origin: bottom;
		-webkit-transform-origin: bottom;
	}
	100% {
		transform: scaleY(0);
		-webkit-transform: scaleY(0);
		transform-origin: bottom;
		-webkit-transform-origin: bottom;
	}
}
header .scroll.--is_show{
	opacity: 0;
}


/***** navigation *****/
#navigation{
	position: fixed;
	left: 10px;
/* 	top: 20px; */
	padding: 20px 0;
	z-index: 999;
}
#navigation .logo{
	width: 15%;
	padding-left: 10px;
	padding-bottom: 15px;
}


/***** release *****/
#release .release-info .jkt,
#release .release-info .text,
#release .release-info .btn{
	width: 40%;
	margin: 0 auto;
}
#release .release-info .text{
	text-align: center;
	font-size: 25px;
	padding: 20px 0;
}
#release .release-info .text h3{
	margin-bottom: 10px;
	width: 70%;
	margin: 0 auto;
}


/***** lyric *****/
#lyric{
	text-align: center;
}
#lyric h3{
	font-size: 20px;
	padding-bottom: 20px;
}
#lyric p{
	line-height: 2em;
}
#lyric .textBox{
	font-size: 14px;
	height: 16em;
	overflow: hidden;
	position: relative;
	text-align: center;
	padding-bottom: 65px;
}
#lyric .textBox.show{
	padding-bottom: 0;
}
.textBox .lyrictext{
	overflow: hidden;
	height: 100%;
}
.textBox.show{
	height: auto;
}
#lyric .textBox p{
	margin-bottom: 1em;
	line-height: 2.5em;
}
#lyric .textBox .more-btn{
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	display: block;
	text-align: center;
	cursor: pointer;
}
#lyric .textBox .more-btn:before{
	content: "...";
	font-size: 20px;
	display: block;
	text-align: center;
}
#lyric .textBox .more-btn span{
	padding: 30px 0 0;
	display: inline-block;
	font-size: 15px;
	font-family: 'Hind', sans-serif;
	line-height: 1.1em;
	border-bottom: 1px solid #349cd7;
	position: relative;
	overflow: hidden;
	color: #349cd7;
}
#lyric .textBox .more-btn span:after{
	content: "";
	width: 100%;
	height: 1em;
	display: block;
	position: absolute;
	left: -101%;
	bottom: 0;
	transition: 0s;
	-webkit-transition: 0s;
}
#lyric .textBox.show{
	height: auto;
}
#lyric .textBox.show .more-btn{
	display: none;
}


/***** footer *****/
#siteFooter{
	font-size: 12px;
	padding: 40px 0;
	background: #349cd7;
	text-align: center;
}
#siteFooter .copyright{
	line-height: 20px;
    text-align: center;
    font-family: 'Hind', sans-serif;
    color: #fff;
    padding-top: 30px;
}
#siteFooter .sns ul li{
	display: inline-block;
	padding: 0 10px;
}
#siteFooter .sns ul li a{
	display: block;
	width: 25px;
    height: 25px;
	text-indent: -999px;
	overflow: hidden;
}
#siteFooter .sns ul li.x a{
	background: url(../img/icon_x.png) no-repeat center center;
	background-size: 100%;
}
#siteFooter .sns ul li.yt a{
	background: url(../img/icon_youtube.png) no-repeat center center;
	background-size: 100%;
}
#siteFooter .sns ul li.ig a{
	background: url(../img/icon_ig.png) no-repeat center center;
	background-size: 100%;
}
#siteFooter .sns ul li.tiktok a{
	background: url(../img/icon_tiktok.png) no-repeat center center;
	background-size: 100%;
}

@media (max-width: 980px){
	header .mainvisual img{
		width: 126%;
		margin-left: -140px;
	}
}
@media (max-width: 768px){
	header .mainvisual img{
		width: 160%;
		margin-left: -240px;
	}
	#loading .load-text .logo{
		width: 50%;
	}
	#loading .load-text .title{
		width: 50%;
		padding-top: 30px;
	}
	#loading .enter{
		width: 20%;
	}
}
@media (max-width: 640px){
	.spbr{
		display: block;
	}
	#loading .load-text .logo,
	#loading .load-text .title{
		width: 60%;
	}
	header .mainvisual{
		display: flex;
		align-items: center;
	}
	header .mainvisual img{
		width: 130%;
		margin-left: -130px;
	}
	header .scroll{
		font-size: 16px;
	}
	header .scroll:before{
		height: 60px;
	}
	header .scroll p{
		padding-bottom: 75px;
	}
	#navigation{
		padding: 27px 0;
/* 		top: 30px; */
		left: 0;
		background-color: rgba(0, 0, 0, 0.7);
	}
	#navigation .logo{
		width: 25%;
		margin: 0 auto;
		padding: 0;
	}
	#release .release-info .jkt, 
	#release .release-info .text, 
	#release .release-info .btn{
		width: 60%;
	}
}
@media (max-width: 480px){
	.spbr2{
		display: block;
	}
	#loading .load-text .logo,
	#loading .load-text .title{
		width: 70%;
	}
	#loading .enter{
		width: 40%;
		padding: 15px 0;
	}
	header .mainvisual img{
		width: 150%;
		margin-left: -115px;
	}
	header .scroll{
		font-size: 13px;
	}
	#navigation{
		padding: 37px 0;
/* 		top: 35px; */
	}
	#navigation .logo{
		width: 40%;
	}
	#navigation .sns ul li{
		padding: 0 7px;
	}
	#contents{
		padding: 30px 0 60px;
	}
	#contents section{
		padding: 30px 0;
	}
	#contents .mainSec h2{
		font-size: 35px;
		padding: 30px 0;
	}
	#release .release-info .jkt, 
	#release .release-info .text, 
	#release .release-info .btn{
		width: 100%;
	}
	#lyric h3{
		font-size: 18px;
	}
	#lyric .textBox{
		font-size: 13px;
	}
}


























