@charset "utf-8";

/**
 *
 *  サイト共通
 *
 */

/*--------------------------------------------------------------------------
   reset
---------------------------------------------------------------------------*/

html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,ins,kbd,q,samp,small,strong,
sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,
figcaption,figure,footer,header,hgroup,menu,nav,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent;}
body{line-height:1;}
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block;}
nav ul{list-style:none;}
ul,ol,li,dl,dt,dd{list-style-type:none;list-style-position:outside;}
blockquote,q{quotes:none;}
blockquote:before,blockquote:after,q:before,q:after{content:none;}
a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent;}
img{vertical-align:top;border:0;}
table{border-collapse:collapse;border-spacing:0;}
hr{display:block;height:1px;border:0;border-top:1px solid #ccc;margin:0;padding:0;}
input,select{vertical-align:middle;}


/*--------------------------------------------------------------------------
   html
---------------------------------------------------------------------------*/

html{
	overflow-y: scroll;
	font-size: 62.5%;
}


/*--------------------------------------------------------------------------
   body
---------------------------------------------------------------------------*/

body{
	color: #1A1A1A;
	background: #FFF;
	font-family:"Noto Sans JP","ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN","游ゴシック体", "Yu Gothic", YuGothic,"メイリオ",Meiryo ,"ＭＳ Ｐゴシック" ,"MS P Gothic" ,sans-serif;
	font-size: 1.4rem;
	line-height: 1.8;	
}

/* fonts */
.qs{
	font-family: 'Quicksand', sans-serif;	
}
.mont{
	font-family: 'Montserrat', sans-serif;
}
.ropa{
	font-family: 'Ropa Sans', sans-serif;
}

strong{
	font-family: 'Ropa Sans', sans-serif;
	font-size: 2.5rem;
	color: #FF9900;	
}


/* color */
.red{ color: #FF3534; }
.pink{ color: #FF61E9; }
.orange{ color: #FF6E1B; }
.yellow{ color: #F4B816; }
.green{ color: #00C61D; }
.blue{ color: #0AACFF; }

/*--------------------------------------------------------------------------
   base link
---------------------------------------------------------------------------*/

a{
	outline: none;
}
a:link,
a:visited{
	text-decoration: none;
	color: #1A1A1A;
}

.ophover{
	transition: opacity ease .3s;	
}
.ophover:hover{
	opacity: .7;
}


/*--------------------------------------------------------------------------
   img
---------------------------------------------------------------------------*/
img{
	max-width: 100%;
	height: auto;	
}

/*--------------------------------------------------------------------------
   Animation
---------------------------------------------------------------------------*/

.fade,.fade01,.fade02,.fade03,.fade04,
.delay01,.delay02,.delay03,.delay04,.delay05 {
	transition: 1s;
}
.fade {
	opacity: 0;
	transform: translate(0,0); 
}
.fade01{
	opacity: 0;
	transform: translate(0,100px); 	
}
 .fade02 {
	opacity: 0;
	transform: translate(0,-100px); 
}
.fade03 {
	opacity: 0;
	transform: translate(-100px,0); 
}
.fade04 {
	opacity: 0;
	transform: translate(100px,0); 
}
.delay01{
	transition-delay: 0.3s;		
}
.delay02{
	transition-delay: 0.6s;		
}
.delay03{
	transition-delay: 0.9s;		
}
.delay04{
	transition-delay: 1.2s;		
}
.delay05{
	transition-delay: 1.5s;		
}

 .mv {
	opacity: 1;
	transform: translate(0,0); 
}


/*--------------------------------------------------------------------------
   PC
---------------------------------------------------------------------------*/
.sp{
	display: none;	
}
/* box-sizing ---*/	
header, footer, section, div, h1, h2, h3, h4, h5, p, ul, ol, li, dl, dt, dd, th, td, a, span {
	box-sizing: border-box;
}


/*--------------------------------------------------------------------------
   Container
---------------------------------------------------------------------------*/
#Page{
	overflow: hidden;
	background:url(../img/border-bar_pc.png) no-repeat center top;
	background-size: 100% 30px;
	letter-spacing: 0.05em;		
}
#Page.border{
	border-left: 10px solid #FF6E1B;
	border-right: 10px solid #0AACFF;
}
.inner{
	max-width: 1080px;
	padding: 0 20px;
	margin: 0 auto;
}

.logo_s{
	position: fixed;
	left: 40px;
	top: 60px;	
}
.btn-close{
	display:none;
	position: absolute;
	right: 40px;
	top: 60px;
	cursor: pointer;
	width: 32px;
	transition: .3s;		
}
.btn-close:hover{
	opacity: .7;
}

section h2{
	text-align: center;	
}

/*--------------------------------------------------------------------------
   Top
---------------------------------------------------------------------------*/

/* intro
-----------------------------------------------------------------*/
.intro{
	padding: 115px 0;
	border-left: 10px solid #FF6E1B;
	border-right: 10px solid #0AACFF;
	text-align: center;	
}
.intro h1{
	margin-bottom: 45px;	
}
.intro .txt-subtitle{
	margin-bottom: 50px;
	font-size: 2.5rem;
	line-height: 2;
	font-weight: 900;
}
.intro .txt-lead{
	margin-bottom: 50px;
	font-size: 2rem;
	line-height: 2;
	font-weight: 900;
}

.intro .date{
	margin-bottom: 45px;	
}

.date p{
	position: relative;
	display: inline-block;
	background: #FFF;
	border-radius: 5px;
	box-shadow: 8px 10px 0 #1A1A1A;
	font-weight: 900;
	line-height: 1;		
}
.date p > span{
	position: relative;
	display: block;
	padding: 17px 35px;
	font-size: 2.3rem;	
}
.date strong{
	padding: 0 3px;
	font-size: 4.0rem;	
	font-family: 'Montserrat', sans-serif;
}

.date p::before,
.date p::after,
.date p > span::before,
.date p > span::after{
	position: absolute;
	display: block;
	content: "";
	background: #1A1A1A;	
}

.date p::before,
.date p::after{
	left: 5px;
	width: calc(100% - 5px);
	height: 2px;	
}
.date p::before{
	top: 0;
}
.date p::after{
	bottom: 0;
}
.date p > span::before,
.date p > span::after{
	top: 5px;
	width: 2px;
	height: calc(100% - 10px);	
}
.date p > span::before{
	left: 0;
}
.date p > span::after{
	right: -1px;
}

.intro .ticket-list{
	display: flex;
	justify-content: center;
	margin-bottom: 60px;
}
.intro .ticketinfo{
	margin-top: 20px;
	margin-bottom: 60px;
}
.intro .ticket-list > div {
	display: flex;
	align-items: flex-end;
	margin: 0 20px;
	padding-bottom: 5px;
	font-size: 2rem;
	font-weight: 900;
	line-height: 1.5;
	border-bottom: 3px dashed #1A1A1A;	
}
.intro .ticket-list dt{
	margin-right: 30px;	
}
.intro .ticket-list strong{
	padding-right: 3px;
	font-size: 4rem;
	line-height: 1;
	font-family: 'Montserrat', sans-serif;
}
.intro .btn-covid19 a,.backbtn.btn-covid19 a{
	display: block;
	max-width: 520px;
	height: 60px;
	margin: 0 auto;
	border-radius: 5px;
	border:2px solid #1A1A1A;
	background:url(../img/btn_arw_w.svg) no-repeat right 20px center #1A1A1A;
	background-size: 8px auto;
	line-height: 52px;
	color: #FFF;
	font-size: 2rem;
	font-weight: 500;
	transition: .3s;	
}
.backbtn.btn-covid19 a {
	text-align: center;
}
.intro .btn-covid19 a:hover,.backbtn.btn-covid19 a:hover{
	background-color: #FFF;
	background-image:url(../img/btn_arw.svg);
	color: #1A1A1A;	
}

.intro .btn-pdf a,.backbtn.btn-pdf a{
	display: block;
	max-width: 520px;
	height: 60px;
	margin: 0 auto;
	border-radius: 5px;
	border:2px solid #00C61D;
	background:url(../img/btn_arw_w.svg) no-repeat right 20px center #00C61D;
	background-size: 8px auto;
	line-height: 52px;
	color: #FFF;
	font-size: 2rem;
	font-weight: 500;
	transition: .3s;	
}
.backbtn.btn-pdf a {
	text-align: center;
}
.intro .btn-pdf a:hover,.backbtn.btn-pdf a:hover{
	background-color: #FFF;
	background-image:url(../img/btn_arw.svg);
	color: #00C61D;	
}

.intro .btn-app a,.backbtn.btn-app a{
	display: block;
	max-width: 520px;
	height: 60px;
	margin: 0 auto;
	border-radius: 5px;
	border:2px solid #e0a1ff;
	background:url(../img/btn_arw_w.svg) no-repeat right 20px center #e0a1ff;
	background-size: 8px auto;
	line-height: 52px;
	color: #FFF;
	font-size: 2rem;
	font-weight: 500;
	transition: .3s;	
}
.backbtn.btn-app a {
	text-align: center;
}
.intro .btn-app a:hover,.backbtn.btn-app a:hover{
	background-color: #FFF;
	background-image:url(../img/btn_arw.svg);
	color: #e0a1ff;	
}


/* gnav
-----------------------------------------------------------------*/
.gnav{
	position: absolute;
	left: 0;
	width: 100%;
	transform: translateY(-50%);	
}
.gnav dt{
	display: none;	
}
.gnav dd{
	max-width: 1000px;
	margin: 0 auto;
	border: 3px solid #1A1A1A;
	border-radius: 30px;
	background: #FFF;  
}
.gnav dd ul{
	display: flex;
}
.gnav dd ul li{
	position: relative;	
	width: 20%;
	text-align: center;	
}
.gnav dd a{
	display: block;
	height: 60px;
	line-height: 58px;	
}
.gnav dd a span{
	padding: 0 25px;
	font-size: 1.6rem;
	font-weight: 700;
	background:url(../img/btn_arw_down.svg) no-repeat left top 63%;
	background-size: 14px auto;	
}
.gnav dd ul li:nth-child(1):hover a{
	color: #FF6E1B;	
}
.gnav dd ul li:nth-child(2):hover a{
	color: #F4B816;	
}
.gnav dd ul li:nth-child(3):hover a{
	color: #FF61E9;	
}
.gnav dd ul li:nth-child(4):hover a{
	color: #00C61D;	
}
.gnav dd ul li:nth-child(5):hover a{
	color: #0AACFF;	
}
.gnav dd ul li:nth-child(n+2)::before{
	position: absolute;
	left: -1px;
	top: 50%;
	transform: translateY(-50%);
	display: block;
	content: "";
	width: 2px;
	height: 20px;
	background: #CCC;	
}


/* Concept
-----------------------------------------------------------------*/
#Concept{
	padding: 110px 0;
	background : linear-gradient(180deg, rgba(255, 110, 27, 1) 0%, rgba(244, 184, 22, 1) 99.97%);	
}
#Concept h2{
	margin-bottom: 60px;	
}
#Concept .txt{
	font-size: 1.8rem;
	font-weight: 500;
	line-height: 2.6;
	text-align: center;	
}
#Concept .txt+.txt{
	margin-top: 40px;
	letter-spacing: 0;
}
#Concept .txt span{
	padding-bottom: 5px;
	border-bottom: 2px dotted #1A1A1A;
}


/* Artist
-----------------------------------------------------------------*/
#Artist{
	padding: 110px 0;
	background : linear-gradient(180deg, rgba(244, 184, 22, 1) 0%, rgba(255, 97, 233, 1) 100%);
}
#Artist h2{
	margin-bottom: 60px;
}
#Artist .date{
	margin-bottom: 15px;
	text-align: center;
}
#Artist .time{
	margin-bottom: 40px;
	text-align: center;
	font-size: 1.6rem;
	font-weight: 700;	
}
#Artist .artist-list{
	display: flex;
	justify-content: space-between;	
}
#Artist .artist-list:first-of-type{
	margin-bottom: 65px;
}
#Artist .artist-list .pic img{
	max-width: 190px;
	box-shadow: 10px 10px 0 #F4B816;	
}
#Artist .artist-list .pic{
	margin-bottom: 30px;	
}
#Artist .artist-list h3{
	text-align: center;
	font-size: 1.8rem;
	font-weight: 700;
	letter-spacing: 0.1em;	
}

/* News
-----------------------------------------------------------------*/
#News{
	padding: 110px 0;
	background : linear-gradient(180deg, rgba(255, 97, 233, 1) 0%, rgba(0, 198, 29, 1) 100%);
}
#News h2{
	margin-bottom: 85px;
}
#News .news-cont{
	max-width: 1180px;
	margin: 0 auto;
	padding: 0 70px;
}
#News .news-item{
	max-width: 250px;
	margin: 0 auto;
	padding: 0 10px;	
}
#News .news-item .pic{
	margin-bottom: 20px;
}
#News .news-item .pic img{
	max-width: none;
	width: 100%;
	box-shadow: 8px 8px 0 #FF61E9;
}
#News .news-item h3{
	margin-bottom: 5px;
	font-size: 1.6rem;
	line-height: 1.4;
	font-weight: 500;	
}
#News .news-item .news-date{
	font-size: 1.3rem;
	font-weight: bold;
	letter-spacing: 0.07em;
}

/* Ticket
-----------------------------------------------------------------*/
#Ticket{
	padding: 110px 0;
	background : linear-gradient(180deg, rgba(0, 198, 29, 1) 0%, rgba(10, 172, 255, 1) 100%);
}
#Ticket h2{
	margin-bottom: 80px;
}
.column{
	padding: 50px 40px;
	border:3px solid;
	border-radius: 10px;
	background: #FFF;	
}
#Ticket .column{
	border-color: #00C61D;
	box-shadow: 10px 10px 0 #00C61D;
}

.column > dl > div{
	padding: 25px 0;
}
.column > dl > div:nth-child(n+2){
	border-top: 1px solid #E5E5E5;
}
.column > dl > div > dt{
	font-size: 1.6rem;
	font-weight: 700;
}
.column > dl > div > dd{
	font-size: 1.5rem;
	line-height: 1.5;
}
.column > dl > div > dd h4 {
	margin-bottom: 10px;
}
.column > dl > div > dd h4:nth-of-type(n+2){
	margin-top: 15px;
}
.column > dl > div > dd ul li{
	padding-left: 1em;
	text-indent: -1em;
	padding-left: 1em;	
}
.column > dl > div > dd ul li:nth-child(n+2){
	margin-top: 10px;	
}
.column > dl > div > dd ul li span {
	font-size: 1.0rem;
	padding-right: 5px;
}
.column > dl > div > dd dl > div:nth-child(n+2){
	margin-top: 15px;
}
.column > dl > div > dd dl dt{
	margin-bottom: 10px;
	font-weight: bold;
}
.column > dl > div > dd p+dl{
	margin-top: 10px;
}
#Ticket .column > dl > div > dt{
	margin-bottom: 15px;
	color: #00C61D;	
}


/* Information
-----------------------------------------------------------------*/
#Information{
	padding: 110px 0;
	background : linear-gradient(180deg, rgba(10, 172, 255, 1) 0%, rgba(255, 255, 255, 1) 100%);
}
#Information h2{
	margin-bottom: 80px;
}
#Information .column{
	border-color: #0AACFF;
	box-shadow: 10px 10px 0 #0AACFF;
}

#Information .column > dl > div{
	display: flex;
	align-items: center;	
}
#Information .column > dl > div > dt{
	flex-shrink: 0;
	padding-right: 20px;
	width: 140px;
	color: #0AACFF;	
}

/*--------------------------------------------------------------------------
   COVID 19
---------------------------------------------------------------------------*/

/* covid19
-----------------------------------------------------------------*/
.covid19{
	padding: 150px 0 10px;	
}
.covid19 .sec-ttl{
	margin-bottom: 50px;
	font-size: 3.2rem;
	font-weight: 500;
	text-align: center;	
}
.covid19 .info-list{
	max-width: 900px;
	margin: 0 auto;	
}
.covid19 .info-list > div{
	padding: 60px 0;	
}
.covid19 .info-list > div:nth-child(n+2){
	border-top: 1px solid #E5E5E5;	
}
.covid19 .info-list dt{
	margin-bottom: 50px;
	font-size: 2.3rem;
	font-weight: 500;
	line-height: 2.2;
	text-align: center;	
}
.covid19 .info-list dt span{
	padding-bottom: 5px;
	border-bottom: 2px dashed #1A1A1A;
}
.covid19 .info-list dd{
	font-size: 1.5rem;
	line-height: 1.5;
}
.covid19 .info-list dd ul li{
	padding-left: 1em;
	text-indent: -1em;
	play-during: 1em;	
}
.covid19 .info-list dd ul li:nth-child(n+2){
	margin-top: 10px;
}
.covid19 .info-list dd ul li span {
	font-size: 1.0rem;
	padding-right: 5px;
}

.covid19 .info-list .cocoa{
	margin-top: 45px;
	text-align: center;	
}
.covid19 .info-list .cocoa .pic{
	margin-top: 20px;	
}




/*--------------------------------------------------------------------------
   News
---------------------------------------------------------------------------*/


/* news-detail
-----------------------------------------------------------------*/
.news-detail{
	padding: 150px 0 10px;
}
.news-detail .inner{
	max-width: 940px;	
}
.news-detail h2{
	margin-bottom: 90px;	
}
.news-detail article{
	font-size: 1.5rem;
	line-height: 1.6;	
}
.news-detail h3{
	margin-bottom: 60px;
	padding-bottom: 18px;
	font-size: 2.4rem;
	font-weight: 500;
	line-height:1.4;
	border-bottom: 3px dashed #1A1A1A;	
}
.news-detail h3 .news-date{
	display: block;
	margin-bottom: 10px;
	font-size: 1.4rem;
	font-weight: bold;
}
.news-detail .pic{
	margin-bottom: 50px;
}
.news-detail p{
	margin-bottom: 45px;
}


/*--------------------------------------------------------------------------
   Footer
---------------------------------------------------------------------------*/
#Footer{
	padding:80px 0 50px;
	background:url(../img/border-bar_pc.png) no-repeat center bottom;
	background-size: 100% 30px;
	text-align:center;
}

#Footer .bnr-list,#Footer .bnr-list2{
	margin-bottom: 70px;	
}
#Footer .bnr-list > div:nth-child(n+2),#Footer .bnr-list2 > div:nth-child(n+2){
	margin-top: 45px;
}
#Footer .bnr-list dt{
	margin-bottom: 30px;
	font-size: 2rem;
	font-weight: 700;
}
#Footer .bnr-list dt::before,
#Footer .bnr-list dt::after{
display: inline-block;
content: "";
width: 30px;
height: 1px;
background: #1A1A1A;
vertical-align: middle;	
}
#Footer .bnr-list dt::before{
	margin-right: 25px;
}
#Footer .bnr-list dt::after{
	margin-left: 25px;
}
#Footer .bnr-list dd,#Footer .bnr-list2 dd{
	display: flex;
	justify-content: center;	
}
#Footer .bnr-list dd p{
	margin: 0 10px;	
}
#Footer .bnr-list2 dd p{
	width: 100%;
	max-width: 200px;
	margin: 0;	
}
#Footer .ft-logo{
	margin-bottom: 50px;	
}
#Footer .txt-link{
	margin-bottom: 35px;	
}
#Footer .txt-link li{
	display:inline-block;
	margin: 0 13px;
}
#Footer .txt-link li a{
	padding: 12px 0;
	font-size: 1.6rem;
	font-weight: 500;
	border-bottom:1px solid;	
	line-height: 1;
	transition: .3s;
}
#Footer .txt-link li:nth-child(1) a{
	border-color: #FF6E1B;	
}
#Footer .txt-link li:nth-child(1) a:hover{
	color: #FF6E1B;
}
#Footer .txt-link li:nth-child(2) a{
	border-color: #F4B816;	
}
#Footer .txt-link li:nth-child(2) a:hover{
	color: #F4B816;
}
#Footer .txt-link li:nth-child(3) a{
	border-color: #FF61E9;	
}
#Footer .txt-link li:nth-child(3) a:hover{
	color: #FF61E9;
}
#Footer .txt-link li:nth-child(4) a{
	border-color: #00C61D;	
}
#Footer .txt-link li:nth-child(4) a:hover{
	color: #00C61D;
}
#Footer .txt-link li:nth-child(5) a{
	border-color: #0AACFF;	
}
#Footer .txt-link li:nth-child(5) a:hover{
	color: #0AACFF;	
}
#Footer .copyright{
	font-size: 1rem;
}

p.tw-logo {
	margin-top: 20px;
	margin-bottom: 30px;
}
p.tw-logo a {
	display: inline-block;
}


div.col-3 {
	width: 100%;
	display: flex;
	flex-direction: row;
}
div.col-3 a {
	flex: auto;
}
div.col-3 a:nth-of-type(2){
	margin-left: 1rem;
	margin-right: 1rem;
}
div.col-3 img {
	width: auto;
	max-width: 100%;
}


/*--------------------------------------------------------------------------
   mobile
---------------------------------------------------------------------------*/
@media screen and (max-width: 768px) {
	#Page img{
		width: 100%;
		height: auto;
	}
	.pc{
		display: none;	
	}
	.sp{
		display: block;	
	}
	img.sp,
	br.sp{
		display: inline;
	}



/*--------------------------------------------------------------------------
   Container
---------------------------------------------------------------------------*/
	#Page{
		min-width: 320px;
		background-image:url(../img/border-bar_sp.png);
		background-size: 100% 15px;
	}
	.inner{
		max-width: initial;	
	}
	
	.home .logo_s{
		display: none;
	}
	.logo_s{
		left: 30px;
		top: 30px;
		width: 90px;	
	}


/*--------------------------------------------------------------------------
   Top
---------------------------------------------------------------------------*/

/* intro
-----------------------------------------------------------------*/
	.intro{
		padding: 40px 0 75px;
	}
	.intro h1{
		margin-bottom: 30px;	
	}
	#Page .intro h1 img{
		width: 225px;
	}
	.intro .txt-subtitle{
		margin-bottom: 30px;
		font-size: 1.8rem;
	}
	.intro .txt-lead{
		margin-bottom: 30px;
		font-size: 1.4rem;
	}
	
	.intro .date{
		margin-bottom: 20px;	
	}
	
	
	.date p{
		display: block;		
		border-radius: 4px;
		box-shadow: 5px 7px 0 #1A1A1A;
	}
	.date p > span{
		padding: 10px 10px;
		font-size: 1.3rem;	
	}
	.date strong{
		padding: 0 2px;
		font-size: 2.3rem;	
	}
	
	.intro .ticket-list{
		display: block;
		margin-bottom: 20px;
	}
	.intro .ticket-list > div {
		display: flex;
		justify-content: space-between;
		width: 100%;
		margin: 0 0 5px;
		padding-bottom: 5px;
		font-size: 1.5rem;
	}
	.intro .ticket-list dt{
		margin-right: 20px;	
	}
	.intro .ticket-list strong{
		padding-right: 2px;
		font-size: 2.4rem;
	}
	.intro .btn-covid19 a{
		border-radius: 4px;
		background:url(../img/btn_arw_w.svg) no-repeat right 7px center #1A1A1A;
		background-size: 6px auto;
		font-size: 1.2rem;
	}
	.intro .btn-pdf a{
		border-radius: 4px;
		background:url(../img/btn_arw_w.svg) no-repeat right 7px center #00C61D;
		background-size: 6px auto;
		font-size: 1.2rem;
	}
	.intro .btn-app a{
		border-radius: 4px;
		background:url(../img/btn_arw_w.svg) no-repeat right 7px center #e0a1ff;
		background-size: 6px auto;
		font-size: 1.2rem;
	}



/* gnav
-----------------------------------------------------------------*/
	.gnav{
		padding:0;
		transform: translateY(-30px);	
	}
	.gnav dl{
		padding: 0 20px;
	}
	.gnav dt{
		display: block;
		height: 60px;
		margin: 0 auto;
		border: 2px solid #1A1A1A;
		border-radius: 30px;
		background:url(../img/btn_arw_down.svg) no-repeat left 20px center #FFF;
		background-size: 14px auto;
		text-align: center;
		line-height: 55px;
		font-size: 1.6rem;
		font-weight: 700;
		cursor: pointer; 
	}
	.gnav dt.open{
		backghround-image:url(../img/btn_arw_up.svg);
	}
	.gnav dd{
		display: none;
		max-width: initial;
		margin: 0 auto;
		border: 2px solid #1A1A1A;
		border-radius: 6px;
		background: #FFF;  
	}
	.gnav dd ul{
		display: block;
	}
	.gnav dd ul li{
		position: relative;	
		width: 100%;
		text-align: center;	
	}
	.gnav dd a{
		display: block;
		height: 60px;
		line-height: 58px;	
	}
	.gnav dd a span{
		display: block;
		background:url(../img/btn_arw_down.svg) no-repeat left 20px center #FFF;
		background-size: 14px auto;
	}
	.gnav dd ul li:nth-child(n+2)::before{
		left: 20px;
		top: 0;
		display: block;
		content: "";
		width: calc(100% - 40px);
		height: 2px;
	}


/* Concept
-----------------------------------------------------------------*/
	#Concept{
		padding: 55px 0 30px;
	}
	#Concept h2 img{
		width: auto;
		height: 66px;
	}
	#Concept h2{
		margin-bottom: 30px;	
	}
	#Concept .txt{
		font-size: 1.5rem;
		line-height: 2.4;
		text-align: left;	
	}
	#Concept .txt+.txt{
		margin-top: 20px;
	}
	#Concept .txt span{
		padding-bottom: 3px;
	}


/* Artist
-----------------------------------------------------------------*/
	#Artist{
		padding: 55px 0 30px;
	}
	#Artist h2{
		margin-bottom: 30px;
	}
	#Artist h2 img{
		width: auto;
		height: 66px;
	}
	#Artist .date{
		margin-bottom: 10px;
	}
	#Artist .time{
		margin-bottom: 20px;
		font-size: 1.3rem;
	}
	#Artist .artist-list{
		flex-wrap: wrap;
	}
	#Artist .artist-list li{
		width: calc(50% - 7px);
	}
	#Artist .artist-list li:nth-child(n+3){
		margin-top: 20px;
	}
	#Artist .artist-list:first-of-type{
		margin-bottom: 35px;
	}
	#Artist .artist-list .pic img{
		box-shadow: 5px 5px 0 #F4B816;	
	}
	#Artist .artist-list .pic{
		margin-bottom: 12px;	
	}
	#Artist .artist-list h3{
		font-size: 1.5rem;
	}

/* News
-----------------------------------------------------------------*/
	#News{
		padding: 55px 0 30px;
	}
	#News h2{
		margin-bottom: 45px;
	}
	#News h2 img{
		width: auto;
		height: 66px;
	}
	#News .news-cont{
		max-width: 1180px;
		margin: 0 auto;
		padding: 0 70px;
	}
	#News .news-item{
		max-width: auto;
		padding: 0;	
	}
	#News .news-item+.news-item{
		margin-top: 20px;
	}
	#News .slick-prev,
	#News .slick-next{
		top:45%;
	}

/* Ticket
-----------------------------------------------------------------*/
	#Ticket{
		padding: 55px 0 30px;
	}
	#Ticket h2{
		margin-bottom: 40px;
	}
	#Ticket h2 img{
		width: auto;
		height: 66px;
	}
	.column{
		padding: 25px 20px;
		border:2px solid;
		border-radius: 5px;	
	}
	#Ticket .column{
		box-shadow: 5px 5px 0 #00C61D;
	}
	
	.column > dl > div{
		padding: 15px 0;
	}
	.column > dl > div > dt{
		font-size: 1.5rem;
	}
	.column > dl > div > dd{
		font-size: 1.4rem;
		line-height: 1.5;
	}
	.column > dl > div > dd h4:nth-of-type(n+2){
		margin-top: 10px;
	}
	.column > dl > div > dd ul li{
		text-indent: -1em;
		padding-left: 1em;	
	}
	.column > dl > div > dd ul li:nth-child(n+2){
		margin-top: 3px;	
	}
	.column > dl > div > dd dl > div:nth-child(n+2){
		margin-top: 10px;
	}
	.column > dl > div > dd dl dt{
		margin-bottom: 3px;
		font-weight: bold;
	}
	.column > dl > div > dd p+dl{
		margin-top: 10px;
	}
	#Ticket .column > dl > div > dt{
		margin-bottom: 5px;
		color: #00C61D;	
	}
	
	#Ticket .btn-entry{
		margin: 20px 0;	
	}
	#Ticket .btn-entry a{
		height: 50px;
		background:url(../img/btn_arw_w.svg) no-repeat right 15px center #00C61D;
		background-size: 12px auto;
		border-radius: 4px;
		line-height: 43px;
		font-size: 1.8rem;
	}
	#Ticket .btn-entry a:hover{
		opacity: 1;	
	}



/* Information
-----------------------------------------------------------------*/
	#Information{
		padding: 55px 0 30px;
	}
	#Information h2{
		margin-bottom: 40px;
	}
	#Information h2 img{
		width: auto;
		height: 66px;
	}
	#Information .column{
		box-shadow: 5px 5px 0 #0AACFF;
	}
	
	#Information .column > dl > div{
		display: block;
	}
	#Information .column > dl > div > dt{
		padding-right: 0;
		width: 100%;
	}

/*--------------------------------------------------------------------------
   COVID 19
---------------------------------------------------------------------------*/

/* covid19
-----------------------------------------------------------------*/
	.covid19{
		padding: 90px 0 0;	
	}
	.covid19 .sec-ttl{
		margin-bottom: 35px;
		font-size: 2.8rem;
	}
	.covid19 .info-list{
		padding: 0 5px;
	}
	.covid19 .info-list > div{
		padding: 30px 0;	
	}
	.covid19 .info-list dt{
		margin-bottom: 30px;
		font-size: 1.7rem;
	}
	
	.covid19 .info-list .cocoa{
		margin-top: 30px;
	}
	.covid19 .info-list .cocoa .pic{
		margin-top: 20px;	
	}




/*--------------------------------------------------------------------------
   News
---------------------------------------------------------------------------*/


/* news-detail
-----------------------------------------------------------------*/
	.news-detail{
		padding: 100px 0 10px;
	}
	.news-detail h2{
		margin-bottom: 40px;	
	}
	#Page .news-detail h2 img{
		width: auto;
		height: 65px;
	}
	.news-detail article{
		font-size: 1.5rem;
		line-height: 1.6;	
	}
	.news-detail h3{
		margin-bottom: 30px;
		padding-bottom: 10px;
		font-size: 2rem;
	}
	.news-detail h3 .news-date{
		margin-bottom: 5px;
		font-size: 1.3rem;
	}
	.news-detail .pic{
		margin-bottom: 20px;
	}
	.news-detail p{
		margin-bottom: 25px;
	}
	.sns-share{
		width: 180px;
	}

/*--------------------------------------------------------------------------
   Footer
---------------------------------------------------------------------------*/
	#Footer{
		padding:30px 0 25px;
		background-image:url(../img/border-bar_sp.png);
		background-size: 100% 15px;
	}
	
	#Footer .bnr-list{
		width: calc(100% + 10px);
		margin-left: -5px;
		margin-bottom: 45px;	
	}
	#Footer .bnr-list > div:nth-child(n+2){
		margin-top: 20px;
	}
	#Footer .bnr-list dt{
		margin-bottom: 15px;
		font-size: 1.5rem;
	}
	#Footer .bnr-list dt::before,
	#Footer .bnr-list dt::after{
	width: 20px;
	}
	#Footer .bnr-list dt::before{
		margin-right: 15px;
	}
	#Footer .bnr-list dt::after{
		margin-left: 15px;
	}
	#Footer .bnr-list dd p{
		margin: 0 5px;	
	}
	#Footer .ft-logo{
		width: 120px;
		margin: 0 auto 30px;	
	}
	#Footer .txt-link{
		margin-bottom: 35px;	
	}
	#Footer .txt-link li{
		display:inline-block;
		margin: 0 10px 5px;
	}
	#Footer .txt-link li a{
		display: inline-block;
		padding: 10px 0;
		font-size: 1.3rem;
	}
	p.tw-logo {
		max-width: 40px;
		margin: 20px auto;
	}
	p.tw-logo a {
		display: inline-block;
	}
	div.col-3 a:nth-of-type(2){
		margin-left: 0;
		margin-right: 0;
		margin-top: 1rem;
		margin-bottom: 1rem;
	}
	div.col-3,div.col-3 a {
		width: 100%;
		display: block;
	}


}