@charset "UTF-8";

/* base */
body{
	position:relative;
	background-color:#080808;
	padding:0;
	text-align:center;
	color:#efefef;
	font-family: 'Roboto', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "游ゴシック", "Yu Gothic", Osaka, sans-serif;
}
img{
	opacity:1;
	transition: opacity 0.25s;
	max-width:100%;
	height:auto;
}
.thumbnail{
	border-radius:0;
	padding:0;
}
a,a:link,a:visited{
	color:#c8063d;
}
a:hover img{
	opacity:0.8;
}
h1{
	font-family: 'Rajdhani', sans-serif;
	letter-spacing:0.05em;
	font-size:28px;
	font-size:2.8rem;
	margin-bottom:30px;
	padding-top:30px;
}




/* header */
.logo{
	padding:30px;
}
.logo img{
	width:33%;
	max-width:150px;
	height:auto;
}

/* global */
#global{
	position:fixed;
	top:0;
	left:30px;
	z-index:9999;
	padding-top:30px;
}
#global ul{
	margin:0;
	padding:0;
}
#global li{
	list-style:none;
	text-align:left;
	padding:20px 0;
	font-size:18px;
	font-size:1.8rem;
}
#global li a:before{
	opacity:0;
	position:absolute;
	left:-20px;
	content:'>';
	transition: opacity 1s ease-out;
}
#global li a.active:before{
	opacity:1;
}


/* footer */
.copyright{
	font-size:12px;
	font-size:1.2rem;
	padding:18px 0 17px;
	margin-bottom:0;
	color:#aaa;
	background-color:#000;
}
.pagetop {
    position: fixed;
    right: 3%;
    bottom: 0;
    max-width: 1170px;
    margin: 0 auto 10px;
    text-align: right;
    z-index: 9999;
}
.pagetop a {
    width: 72px;
    height: 72px;
    display: block;
    text-align: center;
	font-family: 'Rajdhani', sans-serif;
    font-weight: 400;
    margin-right: 15px;
    color: #aaa;
    font-size: 14px;
    font-size: 1.4rem;
	background:url(../images/bg-pagetop.png);
}
.pagetop i {
    font-size: 50px;
    font-size: 5rem;
}

/* content */
.content section{
	max-width:640px;
	margin:0 auto;
	padding:30px 25px;
	text-align:left;
}
.content section p{
	margin-bottom:30px;
	line-height:170%;
}

/* misc */
.btnset{
	text-align:center;
}
.btnset input[type="submit"],
.mfp_buttons button{
	color:#333;
	padding:6px 10px 4px;
}
.btnset input[type="submit"]:hover,
.mfp_buttons button:hover{
	opacity:0.7;
}

a.arrow{
    position: relative;
    display: block;
    padding-left: 15px;
}
a.arrow:before{
	position:absolute;
	left:0;
	font-family:FontAwesome;
	content:'\f101 ';
	font-weight:normal;
	padding-right:10px;
	color: #c8063d;
}

.mb10{
    margin-bottom: 10px !important;
}




/*-------------------- 
		top 
--------------------*/
body#top #topprg{
	position:relative;
	background:url(../../images/bg-top.jpg) center center;
	background-size:cover;
	padding:0;
}

#top #smphoto{
	display:none;
}
#top #toplogo{
	position:relative;
	width:100%;
	height:100%;
	height:100vh;
}
#top #toplogo img{
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  width:150px;
  height:auto;
  max-width: 100%;
  max-height: 100%;
}

#top #push{
	position:relative;
}
#top #push img{
	position:relative;
  top: -200px;
  width:400px;
  height:auto;
  max-width: 100%;
  max-height: 100%;
}

#colorbox:focus{
	outline:none;
}
#cboxOverlay{
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:100%;
	background-color:#000;
	opacity:0.5 !important;
}

#cboxClose {
	position:relative;
	margin-top:20px;
	color:#aaa;
	letter-spacing:1px;
	background-color:transparent;
	border:none;
	text-transform:uppercase;
	padding-left:15px;
}
#cboxClose:before {
	position:absolute;
	top:-1px;
	left:1px;
	font-family:FontAwesome;
	content:'\f00d ';
	font-weight:normal;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

#top #topprg .sns{
	position:absolute;
	right:20px;
	bottom:10px;
	list-style:none;
	z-index:999;
}
#top #topprg .sns li{
	display:inline-block;
	font-size:40px;
	font-size:4rem;
	padding:10px;
}
#top #topprg .sns li i{
}
#top #topprg .sns li a:link,
#top #topprg .sns li a:visited{
	color:#fff;
}
#top #topprg .sns li a:hover{
	opacity:0.7;
}


/*-------------------- 
		news 
--------------------*/
#news{
	background-color:#000;
}

.youtube {
  position: relative;
  padding-top: 56.25%;
  margin-bottom:20px;
}
.youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}

#news #newsframe ul {
	height:514px;
	overflow:auto;
	border:1px solid #666;
	padding:10px;
	list-style:none;
	margin-bottom:14px;
}
#news #newsframe ul .newMark{
	background-color:#cfcfcf;
	color:#a90936;
	padding:0 5px;
	margin-left:8px;
	font-size:90%;
	line-height:100%;
}
#news #newsframe ul li dt{
	color:#999;
}
#news #newsframe ul li dd{
	position:relative;
}
#news #newsframe ul li a{
	display:block;
	color:#eee;
	padding-left:15px;
}
#news #newsframe ul li a:before{
	position:absolute;
	left:0;
	font-family:FontAwesome;
	content:'\f101 ';
	font-weight:normal;
	padding-right:10px;
	color: #c8063d;
}
#news #newsframe ul li.newscopy{
	padding-top:100px;
}
#news #newsframe ul li.newscopy a:before{
	content:'';
}
#news #newsframe ul li a:hover,
#news #newsframe ul li a:active {
	color:#fff;
	text-decoration:underline;
}
#news #newsframe .more a {
	display:block;
	border:1px solid #6f6f6f;
	text-align:center;
	font-size:18px;
	font-size:1.8rem;
	line-height:30px;
}
#news #newsframe .more a:hover,
#news #newsframe .more a:active {
	background-color:#111;
}

/* news下層 */
body#news #global{
	display:block !important;
}
body#news #newsframe{
	margin-bottom:150px;
}
body#news #newsframe ul{
	height:auto;
	border:none;
	padding:0;
	margin-bottom:30px;
}
body#news #newsframe li{
	margin-bottom:80px;
	line-height:172%;
}
body#news #newsframe h2{
	background-color:#222;
	font-size:20px;
	font-size:2.0rem;
	padding:10px 15px 8px;
	margin:10px auto 20px;
}
body#news #newsframe dd .clearfix{
	line-height:172%;
}
body#news #newsframe img{
	margin-bottom:10px;
}
body#news .pager a{
	margin:0 10px;
}


/*-------------------- 
		live 
--------------------*/
#schedule{
	padding:50px 0;
	background:#010101 url(../images/bg-schedule.png) no-repeat center top;
	background-size:100% auto;
}

#schedule section .shoulder{
	margin:0 -20px 20px;
}
#schedule section .date{
	margin:0;
	border:none;
	padding:0 0 3px;
}
#schedule section h2{
	margin:0 0 30px;
	font-weight:normal;
	font-size: 20px;
	font-size:2.0rem;
    line-height: 1.5;
}
#schedule section p{
	margin:0 0 30px 20px;
}
#schedule section .liveinfo{
	border-left:2px solid #555;
	padding:3px 0 3px 15px;
}
#schedule section h3{
	position:relative;
	padding-left:20px;
	font-size:16px;
	font-size:1.6rem;
}
#schedule section h3 i{
	position:absolute;
	top:1px;
	left:0;
	font-size:14px;
	font-size:1.4rem;
    color: #aaa;
}
#schedule section h4{
    margin-top: 0.5em;
	padding-left:20px;
	font-size:16px;
	font-size:1.6rem;
}
#schedule section h4 small{
    color: #fff;
}
#schedule section ul.attention{
    margin-bottom: 30px;
}
#schedule section ul.attention li{
    position: relative;
    list-style: none;
}
#schedule section ul.attention li:before{
    position: absolute;
    left: -20px;
    top: 0;
    content: '※';
}
#schedule section .eventer{
	margin:30px 0 0;
	padding-top:10px;
	border-top:1px solid #555;
}

#schedule section .reserve{
	margin-left:20px;
}
#schedule section .reserve h3{
	display:inline-block;
	background-color:#ececef;
	border-radius:6px;
	margin-top:0;
	padding:10px 16px 8px 14px;
	color:#9f0531;
}
#schedule section .reserve h3:hover{
	background-color:#fff;
}
#schedule section .reserve h3.active{
	background-color:#222;
	color:#efefef;
}
#schedule section .reserve h3 span{
	display:block;
	position:relative;
	padding-left:14px;
}
#schedule section .reserve h3.active span{
	padding-left:20px;
}
#schedule section .reserve h3 span:before{
	position:absolute;
	top:-1px;
	left:1px;
	font-family:FontAwesome;
	content:'\f105 ';
	font-weight:normal;
}
#schedule section .reserve h3.active span:before{
	content:'\f107 ';
}
#schedule section .reserve > div{
	display:none;
	background-color:#222;
	padding:20px;
	margin-bottom:10px;
}
#schedule section .reserve .form input,
#schedule section .reserve .form select,
#schedule section .reserve .form textarea{
	color:#333;
}
#schedule section .reserve .form h4{
	line-height:170%;
	border-left:3px solid #e0e0e0;
	padding-left:12px;
	margin-bottom:20px;
}
#schedule section .reserve .form p{
	margin-left:0;
}
#schedule section .reserve .form dt span{
	color:#cc3333;
}
#schedule section .reserve .form #mfp_confirm_table dt{
	border-bottom:1px solid #666;
	padding-bottom:2px;
	margin-bottom:3px;
}
/* thx */
body#thx #topprg{
	background:url(../../images/bg-top.jpg) center center;
	background-size:cover;
	padding:0;
}

#thx #smphoto{
	display:none;
}
#thx #toplogo{
	position:relative;
	width:100%;
	height:100%;
	height:100vh;
}
#thx #toplogo div{
  position: absolute;
  display:inline-block;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  width:280px;
  height:350px;
  max-width: 100%;
  max-height: 100%;
}
#thx #toplogo div img{
  width:150px;
  height:auto;
  margin-bottom:15px;
}



/*-------------------- 
		biography
--------------------*/
#biography{
	padding:50px 0;
	background-color:#ddd;
	color:#333;
}



/*-------------------- 
		discography
--------------------*/
#discography{
	position: relative;
	background: url(../../images/bg-top.jpg) center center;
	background-size: cover;
	background-attachment: fixed;
}
#discography h1{
	margin-top:0;
	padding-top:50px;
}
#discography section{
	padding: 30px 10px 60px;
	margin-bottom:0;
}
#discography section #discoset{
	position: relative;
	width: 100%;
	margin:0 -15px;
}
#discography .item {
	margin: 15px;
	width: 280px;
	background-color:#f4f3f3;
	padding:10px;
	color:#333;
}
#discography .item dt {
	height:260px;
}
#discography .item img {
	width: 100%;
	height:auto;
}
#discography .item dd h2{
    display: flex;
    align-items: center;
	font-family: 'Roboto', sans-serif;
	letter-spacing:0.05em;
	font-size:20px;
	font-size:2.0rem;
}
#discography .new{
	background-color:#c8063d;
	color:#fff;
	padding:2px 5px;
	margin-left:8px;
	font-size:50%;
	line-height:100%;
}
#discography .item ul{
	padding:0;
}
#discography .item li{
	list-style:none;
	display:inline-block;
	padding:0 10px 0 0;
}


.popup_wrap{
  z-index: 999999;
}
.popup_wrap input {
  display: none;
}
.popup_overlay {
  display: flex;
  justify-content: center;
  overflow: auto;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999999;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.7);
  opacity: 0;
  transition: opacity 0.5s, transform 0s 0.5s;
  transform: scale(0);
}
.popup_trigger {
  position: absolute;
  width: 100%;
  height: 100%;
}
.popup_content {
  position: relative;
  align-self: center;
  max-width: 90%;
    max-height: 90%;
    margin: 10%;
    overflow: auto;
  padding: 30px 30px;
  box-sizing: border-box;
  background: #fff;
    font-size: 16px;
  line-height: 1.4em;
  transition: 0.5s;
}
.popup_wrap input:checked ~ .popup_overlay {
  opacity: 1;
  transform: scale(1);
  transition: opacity 0.5s;
}
.close_btn{
  position: absolute;
  top:0;
  right:0;
  z-index:1000;
  background:#595858;
  padding:15px 11px 15px 13px;
  font-size:22px;
  font-weight:normal;
  font-family: 'Kosugi', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "游ゴシック", "Yu Gothic", Osaka, sans-serif;
  color:#fff;
}



/*-------------------- 
	レスポンシブ	
--------------------*/
/* col-lg */
@media only screen and (min-width: 1200px) {
	body#top #topprg{
		background-attachment:fixed;
		padding:0;
	}
	#news section,
	#discography section{
		max-width:960px;
	}
}

/* col-md */
@media only screen and (min-width: 992px) and (max-width: 1199px) {
	body#top #topprg{
    	background:none;
	}
	body#top #topprg::before {
		content:"";
		display:block;
		position:fixed;
		top:0;
		left:0;
		z-index:-1;
		width:100%;
		height:100vh;
		background:url(../../images/bg-top.jpg) center/cover no-repeat;
		-webkit-background-size:cover;
	}
	#news #newsframe ul {
		height:424px;
	}
}

/* col-sm & xs */
@media only screen and (max-width: 991px) {
	#top #toplogo {
	    height: auto;
		padding:30px 30px 150px;
	}
	#top #toplogo img{
		position:relative;
		width:33%;
		max-width:100px;
	}
	#top #push img{
		display:none;
	}
	body#top #topprg{
		background:#000 none;
	}
	#top #smphoto{
		display:block;
		margin-bottom:50px;
	}
	#top #smphoto img{
		width:100%;
	}
	#news #newsframe ul {
		height:424px;
	}
}

/* col-sm */
@media only screen and (min-width: 768px) and (max-width: 991px) {
}

/* col-xs */
@media only screen and (max-width: 767px) {
	#global {
		background-color:rgba(10,10,50,0.7);
		left:0;
		padding: 12px 5px;
	}
	#global li {
	    padding: 6px 10px;
    	font-size: 16px;
    	font-size: 1.6rem;
	}
	#global li a {
		margin-left:5px;
	}
	#global li a::before {
		left: 5px;
	}


	#schedule section h2{
		font-size:18px;
		font-size:1.8rem;
	}
	#schedule section h3{
		font-size:16px;
		font-size:1.6rem;
		padding-left:20px;
	}
    #schedule section h4,
    #schedule section p{
        padding-left: 0;
        margin-left: 0;
    }
    #schedule section ul.attention{
        padding-left: 20px;
    }
	#schedule section h3 i,
	#schedule section li,
	#schedule section p{
		font-size:12px;
		font-size:1.2rem;
	}
	#youtube iframe{
		max-width:100%;
		height:auto;
	}

}