@charset "utf-8";
/* CSS Document */

/*------------------------------------------------------

	グローバル

------------------------------------------------------*/

body { min-width: 0px; font-size: 0.9em; line-height: 1.8;}

.ta_right-s_center { text-align: center;}
.ta_left-s_center { text-align: center;}

.hidden_s { display: none !important;}

/* margin */
.mb40-20 { margin-bottom: 20px !important;}
.mb60-30 { margin-bottom: 30px !important;}
.mb80-40 { margin-bottom: 40px !important;}
.mb100-60 { margin-bottom: 60px !important;}
.mb120-60 { margin-bottom: 60px !important;}
.mb160-80 { margin-bottom: 80px !important;}

/* ------------------------
	ヘッダー
------------------------ */

.header { padding: 0px 0px 0px 0px; line-height: 0px;width: 100vw;}
.header .box01{width: 100%;padding: 25px 50px 25px 25px;}
.header .box01 div{max-width: 110px;}
.header .box01 div:nth-of-type(2){
    display: block;
	position: fixed;
    right: 60px;
    top: 25px;
}
.header h1 img { width: auto; height: 30px; vertical-align: middle;}

select.sp_lang { border: solid 1px #000; border-radius: 3px; padding: 0.2em 0.4em; margin-left: 1em;}

/* ==========================
	フッター 
   ========================== */
.footer .box_link{flex-flow: column;text-align: center;}
.footer .box_link p{margin-bottom: 10px;font-size: 1.3em;}
.footer .box_link ul{flex-flow: column;text-align: center;gap:10px;}
.footer .box_link ul li{padding-left: 0px;}
.footer .box_link ul li:nth-of-type(1){width: 16em; background-position: left top 5px;margin-left: auto;margin-right: auto;}
.footer .box_link ul li:nth-of-type(2){width: 16em; background-position: left top;margin-left: auto;margin-right: auto;}
.footer .box_link ul li:nth-of-type(3){width: 16em; background-position: left top;margin-left: auto;margin-right: auto;}


/* ------------------------
	グローバルナビ
------------------------ */

/* ハンバーガーメニュー */
.humberger {
	cursor: pointer;
	display: block;
	position: fixed;
	top: 20px;
	right: 10px;
	width: 35px;
	height: 35px;
	z-index: 10001;
    background-image: url("../images/hamburger_open.svg");
    transition: all .3s;
}

.is-open .humberger{
    background-image: url("../images/hamburger_close.svg");
    transition: all .3s;
}

/* ナビ本体 */
.sp-navi { -webkit-text-size-adjust: 100%;}
.sp-navi.is-open {
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 9999;
	background: rgba(3,3,3,.5);
	display: block;
}

.sp-navi.is-open .sp-navi-inner {
	opacity: 1;
	visibility: visible;
	z-index: 10000;
}
.sp-navi .sp-navi-inner {
	background: #000000;
	overflow-y: auto;
	opacity: 0;
	visibility: hidden;
	position: fixed;
	top: 0;
	/*left: 0px;*/
	right: 0px;
	height: 100%;
	width: 90%;
	transition: all .3s;
	padding-bottom: 80px;
    padding-top: 80px;
}


.sp-navi .sp-navi-inner .navi-main > li {
	margin-left: 5%;
	margin-right: 5%;
	border-bottom: 1.5px solid #000000;
	position: relative;
}
.sp-navi .sp-navi-inner .navi-main > li:before {
	background: #000;
	content: "";
	height: 3px;
	width: 0px;
	position: absolute;
	left: 5px;
	top: 20px;
}
/*.sp-navi .sp-navi-inner .navi-main > li:first-child { border-top: 1px solid #ddd;}*/

.sp-navi .sp-navi-inner .navi-main > li > span {
	display: block;
	padding: 13px 10px 13px 10px;
	overflow: hidden;
	line-height: 1.3em;
	text-decoration: none;
	cursor: pointer;
	font-weight: bold;
	font-size: 16px;
}

.sp-navi .sp-navi-inner .navi-main > li > a {
	display: block;
	padding: 13px 10px 13px 10px;
	overflow: hidden;
	line-height: 1.3em;
	text-decoration: none;
	cursor: pointer;
	font-weight: bold;
	font-size: 1.5em;;
    color: white;
    font-family: "Oswald", sans-serif;
    
}

.sp-navi .sp-navi-inner .navi-main > li > a:after{
    color: white;
    font-size: 0.8em;
    padding-left: 20px;
}

.sp-navi .sp-navi-inner .navi-main > li:nth-of-type(1) > a:after {content: 'トップ';}
.sp-navi .sp-navi-inner .navi-main > li:nth-of-type(2) > a:after {content: 'コンセプト';}
.sp-navi .sp-navi-inner .navi-main > li:nth-of-type(3) > a:after {content: '出演';}
.sp-navi .sp-navi-inner .navi-main > li:nth-of-type(4) > a:after {content: 'ご案内';}
.sp-navi .sp-navi-inner .navi-main > li:nth-of-type(5) > a:after {content: 'お知らせ';}
.sp-navi .sp-navi-inner .navi-main > li:nth-of-type(6) > a:after {content: 'チケット';}

.sp-navi .sp-navi-inner .navi-main > li > a:hover{
  text-decoration: underline solid white;
}

.sp-navi .sp-navi-inner .navi-main > li > ul > li { width: 100%;}
.sp-navi .sp-navi-inner .navi-main > li > ul > li > a {
	display: block;
	font-size: 14px;
	line-height: 1.3em;
	padding: 13px 10px 13px 60px;
	position: relative;
	text-decoration: none;
	font-weight: bold;
}
.sp-navi .sp-navi-inner .navi-main > li > ul > li > a:hover {
  color: #000000;
  text-decoration: underline solid;
}

.sp-navi .logo { padding: 0px 60px 0px 10px; line-height: 50px; display: flex; justify-content: space-between; align-items: center;}
.sp-navi .logo img { width: auto; height: 30px; vertical-align: middle;}

/* ==========================
	コンテンツ
   ========================== */

/*sec_01*/
.sec_01 .title{min-width: 284px;top: 60%;}
.sec_01 .box_date_place{top: 72%;border: 5px solid #FFFFFF;}
.sec_01 .box_date_place .date {font-size: 1.5em;padding: 15px 14px;}
.sec_01 .box_date_place .place {font-size: 1.0em;padding: 10px 10px;}
.sec_01 .box_bnr{width: 100vw;top: 93%;}

/*sec_02*/
.sec_02{background-color: #000000;padding: 30px 15px;}
.sec_02 .box_news h2{margin-bottom: 0px;}
.sec_02 .box_news{padding: 15px 15px;}
.sec_02 .box_news .news_dl a dl dt span:nth-of-type(2){margin-left: 10px;}

/*sec_03*/
.sec_03 .box01{
    padding: 50px 0px 75px;
    background-position: bottom right;
}

.sec_03 .box01 h2{
    position: relative;
    transform: none;
    top: auto;
    left: auto;
    margin-bottom: 30px;
}

.sec_03 .box01 > div{padding: 0 15px;}
.sec_03 .box01 > div > p:nth-of-type(1){font-size: 1.8em;}
.sec_03 .box01 > div > p:nth-of-type(2){line-height: 1.8em;}


/*sec_04*/
.sec_04{padding-top: 40px; border-bottom: 20px solid #000000;margin-bottom: 60px;}
.sec_04 h2{display: flex;align-items: center;padding-left: 15px;line-height: 2.3em;}
.sec_04 h2 span:nth-of-type(1){font-size: 2.5em;}
.sec_04 h2 span:nth-of-type(2){font-size: 1.25em;margin-left: 40px;}

.sec_04 .hidden_l > div{padding: 40px 15px;}
.sec_04 .hidden_l > div:nth-of-type(2n-1){background-image: linear-gradient(180deg, rgba(168, 175, 255, 1), rgba(137, 149, 255, 1) 100%, rgba(168, 175, 255, 1) 50%);}
.sec_04 .hidden_l > div:nth-of-type(2n){  background-image: linear-gradient(180deg, rgba(134, 143, 255, 1), rgba(180, 189, 255, 1) 100%, rgba(168, 175, 255, 1) 50%);}
.sec_04 .hidden_l > div:not(:last-of-type){margin-bottom: 10px;}

.sec_04 .hidden_l .box_performers_sns_sp{display: flex;margin-bottom: 20px;}
.sec_04 .hidden_l .box_performers_sns_sp > figure{width: 48%;margin: auto;}
.sec_04 .hidden_l .box_performers_sns_sp .box_name_sns_sp{
    width: 48%;
    margin-left: auto;
    border-left: 3px solid #000000;
    padding-left: 1em;
}
.sec_04 .hidden_l .box_performers_sns_sp .box_name_sns_sp h4{font-size: 1.5em;line-height: 1.2em;margin-bottom: 10px;}
.sec_04 .hidden_l .box_sns_sp > div:nth-of-type(1){margin-bottom: 10px;}
.sec_04 .hidden_l .box_sns_sp > div:nth-of-type(1) p{
    
    background-color: #000000;
    width: 1.7em;
    font-size: 1.3em;
    font-weight: 500;
    line-height: 0;
    padding: 0.4em 0.2em 0.65em;
}
.sec_04 .hidden_l .box_performers_sns_sp .box_sns_sp ul{display: flex;}
.sec_04 .hidden_l .box_performers_sns_sp .box_sns_sp ul li{width: 20%;}

.sec_04 .hidden_l .btn_view_sp{
    width: 170px;
    border: 2px solid #FFFFFF;
    border-radius: 23px;
    text-align: center;
    transition: all .3s;
    margin-bottom: 20px;
    background-color: white;
    margin-left: auto;
    margin-right: auto;
}

/*.sec_04 .hidden_l .btn_view_sp:hover{margin-left: 20px;}*/
.sec_04 .hidden_l .btn_view_sp a{
    display: block;
    width: 100%;
    font-size: 1.125em;
    padding: 5px 0;
    transition: all .3s;
    color: #B4BDFF;
}
.sec_04 .hidden_l .btn_view_sp a:hover{color: #B4BDFF;}
.sec_04 .hidden_l .box_youtube_sp{box-shadow: -10px 10px;max-width: 450px;margin: 0 auto;}

/*sec_05*/
.sec_05{margin-bottom: 80px;}
.sec_05 .box01{
    width: 100%;
    padding: 40px 15px 60px;
    margin-left: 0
}
.sec_05 .box01 .box02{width: 100%;text-align: center;}
.sec_05 .box01 .box02 .btn_ticket{max-width: 250px;margin: 0 auto;}
.sec_05 .box01 .box02 .btn_ticket a{display: block;width: 100%;}

/*sec_06*/
.sec_06 .box01{width: 100%;padding: 40px 15px;}
.sec_06 .box01 .box02{width: 100%;}
.sec_06 .box01 .box02 .box_flyer{padding: 50px 15px;margin: 0 auto 40px;}
.sec_06 .box01 .box02 .box_flyer table{padding-left: 0px;}
.sec_06 .box01 .box02 .box_flyer table tr td{padding-left: 2em;}
.sec_06 .box01 .box02 .box_time_table{}

/*下層ページ*/
.page_ttl{background-color: black;padding: 20px;margin-top: 80px;margin-bottom: 20px;}
.news_sec01{padding: 60px 15px 60px;}
.news_sec01 .title{font-size: 1.3em;border-bottom: 4px solid #707070;margin-bottom: 20px;}


/* ------------------------
	投稿
------------------------ */

.news_list > li { width: 33.3333%;}
.news_list h3 { min-height: 0px;}

.article_wrap h1 { font-size: 1.65em;}

/* 見出し */
.single_article h2 { font-size: 1.4em;}
.single_article h3 { font-size: 1.3em;}

/*WP用 投稿表示*/
img.aligncenter, img.alignright, img.alignleft {
	display: block;
	margin: 0px auto;
}
.alignright, .alignleft { float: none;}

/* ページャー(シングル) */
.pager li { margin: 0px 10px 5px;}
.pager li a { font-size: 0.8em;}
.pager .previous, .pager .next { position: static;}

.writer_box { padding: 45px 15px 15px;}
.writer_box h2 { padding: 1px 20px 3px;}
.writer_box .left { width: 25%; max-width: 200px;}
.writer_box .box_inner { padding-left: 15px;}

/* 投稿者情報 */
@media only screen and (max-width: 640px) {
	.news_list > li { width: 50%;}
}
