/* http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;
}
strong { font-weight: bold;}
a {transition: all 1.0s ease 0s; color: #FFF;}
a:hover {transition: all 1.0s ease 0s; opacity: 0.6;}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}

body {
	font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
	font-weight: 400;
	width: 100%;
	font-size: 2.1vmin;
	line-height: 3.8vmin;
}

	/*読み込み時処理*/
	@keyframes slideOut {
	  from {
		transform: translateY(0);
	  }
	  to {
		transform: translateY(-100%);
	  }
	}
	#loader {
	  position: fixed;
	  top: 0;
	  left: 0;
	  width: 100%;
	  height: 100%;
	  z-index: 999;
	  background-color: #222;
	}
	#loader.open {
	  animation-name: slideOut;
	  animation-fill-mode: forwards;
	  animation-duration: 1s;
	  animation-delay: 1s;
	}
	/*読み込み時処理*/

#brsrk {
	width: 100%;
	height: 85vh;
	background: url("img/back.jpg") no-repeat center;
	background-size: cover;
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	z-index: 10;
}

#brsrk .main_area {
	display: none;
	width: 100%;
	height: 85vh;
	margin: 0 auto;
	background: url("img/main2.png") no-repeat center 80%;
	background-size: 60%;
	position: relative;
}

#brsrk .main_area h1 {
	width: 40vw;
	margin: 5vh auto 0;
	-webkit-filter: drop-shadow(0px 0px 8px rgba(0,0,0,1));
    filter: drop-shadow(0px 0px 8px rgba(0,0,0,1));
}
#brsrk .main_area .date {
	width: 30vw;
	position: absolute;
	bottom: 30vh;
	left: calc(50% - 17vw);
}

.slideWrap {
	display: none;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%
}
.sp_only { display: none;}

/*漫画コマ*/
#brsrk .fade_slide {
	position: relative;
	width: 100%;
	height: 82vh;
}
#brsrk .fade_slide .fade_wrap {
	width:  100%;
	height: 82vh;
	margin: 0 auto;
}

#brsrk .main_area .comic_right,
#brsrk .main_area .comic_left {
	position: absolute;
    top: 0;
	height: 82vh;
	width: 50%;
}
#brsrk .main_area .comic_right {
	left: 50%;
}
#brsrk .main_area .comic_left {
	right: 50%;
}

#brsrk .fade_slide .fade_wrap { pointer-events: none;}
#brsrk .fade_slide .fade_wrap figure { position: absolute;}
#brsrk .fade_slide .fade_wrap figure img { 
	max-width: 100%;
	height: auto;
}
#brsrk .fade_slide .fade_wrap figure.w1 img { width:20vw; }
#brsrk .fade_slide .fade_wrap figure.w2 img { width:16vw; }
#brsrk .fade_slide .fade_wrap figure.w3 img { width:14vw; }

/*1番目*/
#brsrk .main_area .comic_left figure.comic_l1 { top: 2vh; right: 30vw;}
#brsrk .main_area .comic_left figure.comic_l2 { bottom: 8vh; right: 21vw;}
#brsrk .main_area .comic_right figure.comic_r1 { top: 2.5vh; left: 30vw;}
#brsrk .main_area .comic_right figure.comic_r2 { top: 35vh; left: 35vw;}
#brsrk .main_area .comic_right figure.comic_r3 { bottom: 0vh; left: 20vw;}
/*//1番目*/

/*2番目*/
#brsrk .main_area .comic_left figure.comic_l3 { top: 2vh; right: 30vw;}
#brsrk .main_area .comic_left figure.comic_l4 { top: 35vh; right: 23vw;}
#brsrk .main_area .comic_left figure.comic_l5 { bottom: 0vh; right: 20vw;}
#brsrk .main_area .comic_right figure.comic_r4 { top: 2.5vh; left: 25vw;}
#brsrk .main_area .comic_right figure.comic_r5 { top: 38vh; left: 30vw;}
#brsrk .main_area .comic_right figure.comic_r6 { bottom: 0vh; left: 22vw;}
/*//2番目*/

/*3番目*/
#brsrk .main_area .comic_left figure.comic_l6 { top: 2vh; right: 32vw;}
#brsrk .main_area .comic_left figure.comic_l7 { top: 35vh; right: 20vw;}
#brsrk .main_area .comic_left figure.comic_l8 { bottom: 0vh; right: 28vw;}
#brsrk .main_area .comic_right figure.comic_r7 { top: 2.5vh; left: 28vw;}
#brsrk .main_area .comic_right figure.comic_r8 { top: 35vh; left: 30vw;}
#brsrk .main_area .comic_right figure.comic_r9 { bottom: 0vh; left: 20vw;}
/*//3番目*/

/*4番目*/
#brsrk .main_area .comic_left figure.comic_l9 { top: 2vh; right: 30vw;}
#brsrk .main_area .comic_left figure.comic_l10 { top: 35vh; right: 20vw;}
#brsrk .main_area .comic_left figure.comic_l11 { bottom: 0vh; right: 25vw;}
#brsrk .main_area .comic_right figure.comic_r10 { top: 10vh; left: 22vw;}
#brsrk .main_area .comic_right figure.comic_r11 { bottom: 10vh; left: 30vw;}
/*//4番目*/

/*5番目*/
#brsrk .main_area .comic_left figure.comic_l12 { top: 1.5vh; right: 30vw;}
#brsrk .main_area .comic_left figure.comic_l13 { top: 42vh; right: 28vw;}
#brsrk .main_area .comic_left figure.comic_l14 { bottom: 0vh; right: 21vw;}
#brsrk .main_area .comic_right figure.comic_r12 { top: 2.5vh; left: 25vw;}
#brsrk .main_area .comic_right figure.comic_r13 { top: 40vh; left: 22vw;}
#brsrk .main_area .comic_right figure.comic_r14 { bottom: 0vh; left: 30vw;}
/*//5番目*/


/*//漫画コマ*/


/*コンテンツ*/

#contentsWrap .date {
	background: url("img/date_bg.png") repeat-x top center;
	background-size: cover;
	color: #FFF;
	text-align: center;
	padding: 56px 0 32px;
	box-sizing: border-box;
	min-height: 14vh;
	margin-top: -3.5vw;
	position: relative;
	z-index: 90;
}
#contentsWrap .date .ymd { font-size: 5vw; margin: 1vw;}
#contentsWrap .date .ymd span { font-size: 3vw;}
#contentsWrap .date .pos { font-size: 2.5vw;}


/*ナビゲーション*/
#contentsWrap nav {
	background: #a40000;
}
#contentsWrap nav.fixed_menu {
    position: fixed;
    top: 0;
    width: 100%;
	z-index: 995;
}
#contentsWrap nav ul {
	display: flex;
	justify-content: center;
	align-items: center;
}
#contentsWrap nav ul li { margin: 0 2vmin; overflow: hidden;}
#contentsWrap nav ul li a{
	color: #FFF;
	font-size: 1.8vmin;
	line-height: 1;
	text-decoration: none;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	transition: all 1.0s ease 0.1s;
	padding: 3.6vmin 0 3.6vmin 3vmin;
	background: url("img/menu_icon_off.png") no-repeat top 2.6vmin left 0;
	background-size: 2.3vmin auto;
}


#contentsWrap nav ul li a:hover { 
	color: #500000;
	background: url("img/menu_icon_on.png") no-repeat top 2.6vmin left 0;
	background-size: 2.6vmin auto;
	transition: all 0.3s ease 0s;
	opacity: 1;
}
#contentsWrap nav ul li.hover a{
	color: #500000;
	background: url("img/menu_icon_on.png") no-repeat top 2.6vmin left 0;
	background-size: 2.6vmin auto;
	transition: all 0.3s ease 0s;
	opacity: 1;
	cursor: default;
	pointer-events: none;
}


section:before {
    content: '';
    display: block;

    margin-top: -80px;
    padding-top: 80px;
}


/*--固定背景の設定--*/
#contentsWrap { width: 100%;}
#contentsWrap section {
	display: flex;
	box-sizing: border-box;
	color: #FFF;
	align-items: center;
	justify-content: center;
	padding: 5%;
}

#contentsWrap .cd-fixed-bg {
    position: relative;
    min-height: 100vh;
    background-attachment: fixed;
    background-repeat: no-repeat;
    z-index: 2;
}

	/*--固定背景00--*/
	#contentsWrap .cd-fixed-bg.cd-bg-0  {
		background-image: url('img/bk00.png');
		background-color:#630000;
		background-position:right -50px top 150px;
	}

	/*--固定背景01--*/
	#contentsWrap .cd-fixed-bg.cd-bg-1  {
	  background-image: url('img/bk01.png');
		background-color:#000;
		background-position:right -80px top 50px;
	}

	/*--固定背景02--*/
	#contentsWrap .cd-fixed-bg.cd-bg-2  {
	  background-image: url('img/bk02.png');
		background-color:#630000;
		background-position:left -400px top 50px;
	}

	/*--固定背景03--*/
	#contentsWrap .cd-fixed-bg.cd-bg-3  {
	  background-image: url('img/bk03.png');
		background-color:#000;
		background-position:right -20px top 100px;
	}

	/*--固定背景04--*/
	#contentsWrap .cd-fixed-bg.cd-bg-4  {
	  background-image: url('img/bk04.png');
		background-color:#630000;
		background-position:right -100px top 50px;
	}

	/*--固定背景05--*/
	#contentsWrap .cd-fixed-bg.cd-bg-5  {
	  background-image: url('img/bk05.png');
		background-color:#000;
		background-position:left -100px top 50px;
	}

	/*--固定背景06--*/
	#contentsWrap .cd-fixed-bg.cd-bg-6  {
	  background-image: url('img/bk06.png');
		background-color:#630000;
		background-position:right -50px top 0;
	}

	/*--固定背景07--*/
	#contentsWrap .cd-fixed-bg.cd-bg-7  {
	  background-image: url('img/bk07.png');
		background-color:#000;
		background-position:left 20px top 0;
	}

#contentsWrap .w600 { width: 800px; margin: 0 auto; position: relative; z-index: 10;}
#contentsWrap .w940 { width: 940px; margin: 0 auto; position: relative; z-index: 10;}
#contentsWrap section h2 {
	margin: 0 auto 24px;
	text-align: center;
	font-size: 2.5vmin;
	background: url("img/h2_deco.svg") no-repeat bottom center;
	width: 130px;
	padding-bottom: 32px;
}
#contentsWrap .Btn a {
	display: inline-block;
	color: #FFF;
	text-decoration: none;
	background: #a40000;
	font-size: 2.5vmin;
	padding: 1.8vmin;
	margin: 0 auto 20px;
}

/*FAQ*/
.faq_q { color: red;
    font-size: 1.3em;}
.faq_a {margin-bottom: 20px;}


/*先生の挨拶*/
#contentsWrap #greeting p {
	margin-bottom: 2.5vmin;
}
#contentsWrap #greeting p:last-child { text-align: right;}


/*NEWS*/
#contentsWrap #NEWS ul { margin-bottom: 2.1vw;}
#contentsWrap #NEWS ul li {
	padding: 2vmin 0;
	border-bottom: 1px solid #535353;
	display: flex;
	line-height: 1.6;
}
#contentsWrap #NEWS ul li strong { 
	margin-right: 2.1vmin;
	display: block;
	width: 18vmin;
}
#contentsWrap #NEWS ul li span { width: calc(100% - 20vmin);}
#contentsWrap #NEWS a { color: #FFF;}
#contentsWrap #NEWS .rightTxt { text-align: right; margin-bottom: 2.1vw;}


/*開催概要*/
#contentsWrap #OVERVIEW ul { margin-bottom: 1.5vw;}
#contentsWrap #OVERVIEW ul li {
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	padding: 2vmin 0;
	line-height: 1.6;
	border-bottom: 1px solid #535353;
	font-size: 1.8vmin;
}
#contentsWrap #OVERVIEW ul li strong { 
	width: 140px;
	font-size: 2.2vmin;
}
#contentsWrap #OVERVIEW a { color: #FFF;}
#contentsWrap #OVERVIEW .tbtmTxt { font-size: 1.8vmin; line-height: 1.5; margin-bottom: 2vmin;}



/*チケット*/
#contentsWrap #TICKET ul li {
	font-size: 1.7vmin;
	line-height: 2.6vmin;
	margin-bottom: 1.4vmin;
	padding-left: 1.7vmin;
	text-indent: -1.7vmin;
}
#contentsWrap #TICKET h3 {
	font-size: 2.5vmin;
	margin:64px 0 16px;
	font-weight: bold;
}
#contentsWrap #TICKET h3 span { font-size: 1.8vmin;}

#contentsWrap #TICKET table { width: 100%;}
#contentsWrap #TICKET table tr th,
#contentsWrap #TICKET table tr td { 
	border-top: 1px solid #535353;
	border-bottom: 1px solid #535353;
	padding: 2vmin 0;
	vertical-align: middle;
	color: #FFF;
	line-height: 1.3;
}
#contentsWrap #TICKET table tr th { text-align: left;}
#contentsWrap #TICKET table tr td { 
	text-align: right;
	padding: 2vmin;
	font-size: 2vmin;
}
#contentsWrap #TICKET table .small { font-size: 1.5vmin;}
#contentsWrap #TICKET .tbtmTxt { margin-top: 10px; font-size: 1.8vmin;}
#contentsWrap #TICKET .tbtmTxt strong { font-size: 2.2vmin; display: block; margin: 5px 0;}
#contentsWrap #TICKET .special3item p , #contentsWrap #TICKET .special3item ul li { font-size: 1.85vmin;}
#contentsWrap #TICKET .buy {
	text-align: center;
	padding: 20px 0;
}
#contentsWrap #TICKET p.lsnLink { text-align: center;}


/*展示内容*/
#contentsWrap #DISPLAY .dispTxt p {
	margin-bottom: 2.1vmin;
}

#contentsWrap #DISPLAY .floormap {
	display: flex;
	justify-content: center;
	align-content: flex-start;
	margin-top: 30px;
}
#contentsWrap #DISPLAY .floormap .mapImg,
#contentsWrap #DISPLAY .floormap .mapContents { width: calc(50% - 10px);}
#contentsWrap #DISPLAY .floormap .mapImg img { width: 100%;}
#contentsWrap #DISPLAY .floormap .mapImg area { cursor: pointer;}

#contentsWrap #DISPLAY .floormap .mapContents {
	background: rgba(0,0,0,0.5);
	padding: 20px 54px 30px;
    box-sizing: border-box;
}
#contentsWrap #DISPLAY .floormap .mapContents  .slick-dots { position: absolute; left: 0; bottom: -20px;}

#contentsWrap #DISPLAY .floormap .mapContents h3 { text-align: center; margin-bottom: 20px; line-height: 1;}
#contentsWrap #DISPLAY .floormap .mapContents .mciImg {width: 90%; margin: 0 auto 20px;}
#contentsWrap #DISPLAY .floormap .mapContents .mciImg img { 
	max-width: 100%;
	max-height: 270px;
	width: auto;
	height: auto;
	margin: 0 auto;
}
#contentsWrap #DISPLAY .floormap .mapContents .mciTxt { font-size: 1.6vmin; line-height: 2.4vmin; margin-bottom: 15px;}
#contentsWrap #DISPLAY .floormap .mapContents .mciTxt.onlyTxt { margin-top: 50%; text-align: center;}

/*グッズ*/

/********準備中用CSS********/
#contentsWrap #GOODS .w940 {
	/*height: 100vh;*/
	position: relative;
	padding-top: 70px;
}
#contentsWrap #GOODS .soon {
    position: absolute;
    width: 100%;
    top: 50vh;
    left: 0;
}
/********準備中用CSS********/


#contentsWrap #GOODS { text-align: center;}
#contentsWrap #GOODS ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	margin: 36px 0;
}
#contentsWrap #GOODS ul.catelist li {
	margin-bottom: 2vmin;
}
#contentsWrap #GOODS ul.catelist li::after {
	content: "／";
	padding: 0 1vmin;
}

#contentsWrap #GOODS .picup { margin: 70px 0;}
#contentsWrap #GOODS .goodslist h3 { font-size: 2.4vmin; margin-bottom: 32px;}
#contentsWrap #GOODS .goodslist .goodslistWrap {
	display: flex;
	justify-content: flex-start;
	align-content: flex-start;
	flex-wrap: wrap;
}
#contentsWrap #GOODS .goodslist .goodslistWrap .goodslistBox {
	width: calc(100% / 4 - 15px);
	text-align: left;
	margin-right: 20px;
	margin-bottom: 20px;
}
#contentsWrap #GOODS .goodslist .goodslistWrap .goodslistBox:nth-child(4n) { margin-right: 0;}
#contentsWrap #GOODS .goodslist .goodslistWrap .goodslistBox a {
	display: block;
	text-decoration: none;
	cursor: pointer;
}
#contentsWrap #GOODS .goodslist .goodslistWrap .goodslistBox a:hover {opacity: 1;}
#contentsWrap #GOODS .goodslist .goodslistWrap .goodslistBox .boxImg {
	width: 100%;
	background: #FFF;
	margin-bottom: 10px;
	overflow: hidden;
}
#contentsWrap #GOODS .goodslist .goodslistWrap .goodslistBox .boxImg img {width: 100%; }
#contentsWrap #GOODS .goodslist .goodslistWrap .goodslistBox .boxTxt p:first-child { line-height: 1.5;}

#contentsWrap #GOODS .goodslist .pagination ul li { padding: 0.5em; margin: 0 4px;}

.slider li { width: 100%; height: auto;}
.slider li img { width: 100%; height: auto;}


/*巡回情報*/
#contentsWrap #TOUR .w600 {
	min-height: 100vh;
	position: relative;
	padding-top: 70px;
	box-sizing: border-box;
	text-align: center;
	font-size: 1.65vmin;
	line-height: 1.6;
}
#contentsWrap #TOUR .soon {
	position: absolute;
	width: 100%;
	top: 50vh;
	left: 0;
}
#contentsWrap #TOUR .small { font-size: 1.3vmin;}
#contentsWrap #TOUR .tab_container {
  margin: 40px auto;
}
#contentsWrap #TOUR .tab_item {
	width: calc(100% / 4 - 6px);
	display: inline-block;
	padding:0.5em 0;
	border: 1px solid #a40000 ;
	text-align: center;
	color: #FFF ;
	font-weight: bold;
	transition: all 0.2s ease;
	cursor: pointer;
	position: relative;
}

#contentsWrap #TOUR input[name="tab_item"] {
  display: none;
}
#contentsWrap #TOUR .tab_content {
	display: none;
	padding: 40px 0 0;
	clear: both;
	overflow: hidden;
	text-align: left;
}
#contentsWrap #TOUR #tab1:checked ~ #tab1_content,
#contentsWrap #TOUR #tab2:checked ~ #tab2_content,
#contentsWrap #TOUR #tab3:checked ~ #tab3_content,
#contentsWrap #TOUR #tab4:checked ~ #tab4_content {
  display: block;
}
#contentsWrap #TOUR .tab_container input:checked + .tab_item {
  background-color: #a40000 ;
}
#contentsWrap #TOUR .tab_container input:checked + .tab_item:after {
    top: 100%;
    right: 0%;
    content: " ";
	background: url("img/tab_blood.png") no-repeat;
    height: 25px;
    width: 39px;
    position: absolute;
    pointer-events: none;
	opacity:0;
	animation-name:blood;
	animation-duration:1s; 
	animation-fill-mode: forwards;
}

#contentsWrap #TOUR .tab_content table { margin-bottom: 1em; width: 100%;}
#contentsWrap #TOUR .tab_content table th,
#contentsWrap #TOUR .tab_content table td {
	color: #FFF;
	border-top: 1px solid #535353;
	padding: 1em 0;
}
#contentsWrap #TOUR .tab_content table th { 
	width: 10vmin;
	text-align: left;
	font-weight: bold;
}
#contentsWrap #TOUR .tab_content table td p { margin-bottom: 1em;}
#contentsWrap #TOUR .tab_content table td p:last-child { margin-bottom: 0;}
#contentsWrap #TOUR .tab_content table td p.indent5 { text-indent: -5em; padding-left: 5em;}
#contentsWrap #TOUR .tab_content table td p.indent1 { text-indent: -1em; padding-left: 1em;}


#contentsWrap #TOUR .tab_content table tr:last-child th,
#contentsWrap #TOUR .tab_content table tr:last-child td { border-bottom: 1px solid #535353;} 

#contentsWrap #TOUR .tab_content .map { margin-top: 1em;}

@keyframes blood {
	0% {
	 opacity: 0;
	 transform: translateY(-25px);
	}
  100%{
    opacity: 1;
     transform: translateY(0);
  }
 
}

/*SPECIAL*/
#contentsWrap #SPECIAL { text-align: center;}
#contentsWrap #SPECIAL h3 { font-size: 2.5vmin; font-weight: bold; margin-bottom: 30px;}
#contentsWrap #SPECIAL .SPimg { margin: 0 0 30px;}
#contentsWrap #SPECIAL p { margin-bottom: 1em; font-size: 1.7vmin;}
#contentsWrap #SPECIAL .w600 > div { margin-bottom: 30px; padding-bottom: 30px; border-bottom: 1px solid gray;}

#contentsWrap #SPECIAL .Preview { text-align: left;}
#contentsWrap #SPECIAL .Preview h3 { margin:64px 0 16px;}
#contentsWrap #SPECIAL h3 span { font-size: 1.8vmin;}
#contentsWrap #SPECIAL .Preview p { margin-bottom: 0;}
#contentsWrap #SPECIAL ul li {
	font-size: 1.45vmin;
	line-height: 2vmin;
	margin-bottom: 0.5em;
	padding-left: 1.45vmin;
	text-indent: -1.45vmin;
	text-align: left;
}

#contentsWrap #SPECIAL table { width: 100%;}
#contentsWrap #SPECIAL table tr th,
#contentsWrap #SPECIAL table tr td { 
	border-top: 1px solid #535353;
	border-bottom: 1px solid #535353;
	padding: 2.4vmin 0;
	vertical-align: middle;
	color: #FFF;
	line-height: 1.3;
}
#contentsWrap #SPECIAL table tr th { text-align: left;}
#contentsWrap #SPECIAL table tr td { 
	text-align: right;
	padding: 2.4vmin;
}
#contentsWrap #SPECIAL table .small { font-size: 1.5vmin;}
#contentsWrap #SPECIAL .tbtmTxt { margin-top: 10px; font-size: 1.8vmin;}

#contentsWrap #SPECIAL #ar { text-align: left; line-height: 1.8;}
#contentsWrap #SPECIAL #ar .center { text-align: center;}
#contentsWrap #SPECIAL #ar .border { 
	border: 1px solid #FFF;
	padding: 1em;
	font-size: 1.45vmin;
	margin-bottom: 1em;
}


#social { 
	background: #000;
	padding: 30px 0 40px;
	position: relative;
	z-index: 96;
}
#social ul {
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 10px;
}
#social ul li a img { 
	height: 35px;
	width: auto;
	margin: 0 10px 0;
}
#social h2 { 
	width: 240px;
	text-align: center;
	margin: 0 auto;
}

#social .goTop {
	position: fixed;
	right: 2.5vmin;
	bottom: 3.5vmin;
}
#social .goTop a {
	background: url("img/goTop_img.png") no-repeat;
	background-size: contain;
	display: block;
	box-sizing: border-box;
	padding-top: 5px;
	width: 53px;
	height: 100px;
	text-align: center;
	font-size: 16px;
	text-decoration: none;
}

#pageTemp .pageBody p {
	font-size: 1.8vmin;
	margin-bottom: 1em;
}
#pageTemp .pageBody a { overflow-wrap: break-word;}
#pageTemp .pageBody ul { margin-bottom: 1em;}
#pageTemp .pageBody ul li {
	font-size: 1.8vmin;
	line-height: 1.3;
	text-indent: -1.8vmin;
	padding-left: 1.8em;
	margin-bottom: 0.5em;
}

@keyframes shake
{
  from{
    transform: translateX(-5px) translateY(0px);
  }
  
  20%{
    transform: translateX(5px) translateY(0px);
  }
  
  40%{
    transform: translateX(-10px) translateY(-3px);
  }
  
  60%{
    transform: translateX(10px) translateY(0px);
  }
  
   80%{
    transform: translateX(-10px) translateY(0px);
  }
  
  to{
    transform: translateX(-5px) translateY(0px);
  }
}

/*モーダル*/
.remodal { 
	background: none;
	color: #FFF;
	width: 100%;
	max-width: 100%;
	height: 100vh;
	display: flex;
	justify-content: center;
	align-items: center;
}
.remodal .modal_inner {
	width: 460px;
}
.remodal-close {
	position: fixed;
	top: 3vmin;
	right: 3vmin;
	left: auto;
	color: #FFF;
	width: 50px;
	height: 50px;
}
.remodal-close:before { 
	font-size: 100px;
	transition: all 1.0s ease 0s;
}
.remodal .modal_inner .boxTxt {
	text-align: left;
	margin-top: 30px;
	line-height: 2.8vmin;
}
.remodal .modal_inner .boxTxt .note { margin-top: 20px;}

/*スライダー*/
.slick-dots li { width: 12px; height: 12px;}
.slick-dots li button {
    font-size: 0;
    line-height: 0;
    padding: 0;
    cursor: pointer;
    color: transparent;
    border: 0;
    text-indent: -9999px;
    display: block;
    width: 12px;
    height: 12px;
    margin: 0 8px;
    outline: 0;
    border-radius: 50%;
    transition-duration: 0.3s;
    background: #FFF;
}
.slick-dots li.slick-active button { background: #a40000;}
.slick-prev, .slick-next {
	position: absolute;
    top: 50%;
    display: block;
    width: 31px;
    height: 60px;
    padding: 0;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
    cursor: pointer;
    color: transparent;
    border: none;
    outline: none;
    background: transparent;
    z-index: 998;
	transition: all 1.0s ease 0s;
}
.slick-prev:before, .slick-next:before { content: none;}
.slick-prev {
	background: url("img/prev.png") no-repeat;
	background-size: contain;
	left: -42px;
}
.slick-next {
	background: url("img/next.png") no-repeat;
	background-size: contain;
	right: -42px;
}

.remodal-close:hover,.remodal-close:focus,
.slick-prev:hover, .slick-next:hover{ opacity: 0.6;transition: all 1.0s ease 0s;} 
.slick-disabled { opacity: 0.3; pointer-events: none;}

footer {
	font-family: "Osaka-mono", "MS Gothic", "monospace",YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
	background: #000;
	width: 100%;
	box-sizing: border-box;
	text-align: center;
	color: #FFF;
	font-size: 1vmin;
	padding: 20px;
}
footer p a { color: #FFF;}

/*下層*/
header { 
	background: url("img/back.jpg");
	background-size: cover;
	text-align: center;
}
header h1 { 
	padding: 1.5vmin 0;
	margin: 0 auto;
	-webkit-filter: drop-shadow(0px 0px 29px rgba(0,0,0,1));
    filter: drop-shadow(0px 0px 29px rgba(0,0,0,1));
}
header h1 img { 
	width: 60vmin;
	margin: 0 auto;
}

.lower .goodslist { margin-bottom: 72px;}
.lower .goodslist:before {
    content: '';
    display: block;

    margin-top: -100px;
    padding-top: 100px;
}
.lower .newsBox { margin-bottom: 50px;}
.lower .newsBox:before {
    content: '';
    display: block;

    margin-top: -80px;
    padding-top: 80px;
}
.lower .newsBox p.newsDate {margin-bottom: 10px;}
.lower .newsBox h3 { font-size: 2.3vmin; margin-bottom: 10px;}
.lower .newsBox .newsTxt {
	background: rgba(99,0,0,0.8);
	padding: 2.3vmin;
	font-size: 1.8vmin;
	line-height: 3.2vmin;
	min-height: 240px;
}
.lower .newsBox .newsTxt p { margin-bottom: 1.8vmin;}
.lower pre { white-space: pre-wrap ;}

.lower .articleBody { text-align: center;}
.lower .articleBody h3 { font-size: 2.5vmin; margin-bottom: 20px;}
.lower .articleBody .slider { width: 460px; margin: 0 auto 50px;}

/*タブ切り替え*/
.tab-wrap .btn-wrap {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap :3px;
}
 
.tab-btn {
	width: calc(100% / 4 - 6px);
	display: flex;
	justify-content: center;
	align-items: center;
	padding:0.3em 0;
	border: 1px solid #a40000 ;
	text-align: center;
	color: #FFF ;
	font-weight: bold;
	transition: all 0.2s ease;
	cursor: pointer;
	position: relative;
	line-height: 1.2;
}
.tab-btn.show {
  background-color: #a40000 ;
}
.tab-btn.show:after {
    top: 100%;
    right: 0%;
    content: " ";
	background: url("img/tab_blood.png") no-repeat;
    height: 25px;
    width: 39px;
    position: absolute;
    pointer-events: none;
	opacity:0;
	animation-name:blood;
	animation-duration:1s; 
	animation-fill-mode: forwards;
}

.tab-contents {
  display: none;
}
 
.tab-contents.show {
  	display: block;
	margin-top: 20px;
}



@media screen and (max-width: 1024px){
	#brsrk { 
		background: url("img/back_sp.jpg") no-repeat;
		background-size: cover;
		height: 70vh;
	}
	#brsrk .main_area {
		background-size: 124% auto;
		background-position: center 64%;
		height: 70vh;
	}
	#brsrk .main_area h1 {
		width: 90vw;
	}
	.slideWrap.pc_only { display: none !important;}
	
	#contentsWrap nav ul li { margin: 0 1vmin;}
	#contentsWrap nav ul li a {font-size: 1.8vmin;}
	
	#contentsWrap .cd-fixed-bg {
		background-size: cover;
		background-attachment: scroll;
	}
	#contentsWrap .cd-fixed-bg.cd-bg-2 {background-position: left 65% top 50px;}
	#contentsWrap .cd-fixed-bg.cd-bg-3,
	#contentsWrap .cd-fixed-bg.cd-bg-5{ background-size: contain;}
	#contentsWrap .cd-fixed-bg.cd-bg-4 { background-position: right 78% top -10%;}
	#contentsWrap .cd-fixed-bg.cd-bg-6 { background-position: left 0 top 0;}
	#contentsWrap .cd-fixed-bg.cd-bg-7 { background-size: 50%;}
	
	
	#contentsWrap .w600,
	#contentsWrap .w940 { width: 100%;}
	iframe { width: 100% !important;}
	#contentsWrap #NEWS .rightTxt { margin: 4vmin 0 5vmin;}
	
}
@media screen and (max-width: 768px){
	.pc_only {
		display: none !important;
	}
	.sp_only { display: block;}
	
	header h1 { 
		background: url("img/date_bg.png") no-repeat;
		background-size: contain;
		background-position: right 0% bottom -8vh;
	}
	
	nav.pc_menu {display: none;}
	
	.spmenuWrap.sp_only { 
		display: block;
	}
	.menu {
		-webkit-transform: translateX(100%);
		transform: translateX(100%);
		-webkit-transition: ease .5s;
		transition: ease .5s;
		background:rgba(99,0,0,0.8);
		height: 100vh;
		width: 50%;
		position: fixed;
		top: 0;
		right: 0;
		z-index: 980;
	}
	.menu ul { margin-top: 70px;}
	.menu ul li {
		padding: 2em 5em;
		text-align: center;
	}
	.menu ul li a{
		color: #FFF;
		line-height: 1;
		text-decoration: none;
		display: flex;
		align-items: center;
		justify-content: flex-start;
		transition: all 1.0s ease 0.1s;
		padding-left: 3vmin;
		background: url("img/menu_icon_off.png") no-repeat center left ;
		background-size: 3vmin auto;
	}

	.menu ul li a i { width: 4vmin;}
	
	.menu ul li.hover a { opacity: 0.6; pointer-events: none;} 

	.menu.open {
	  display: block;
	  -webkit-transform: translateX(0);
	  transform: translateX(0);
	  overflow-y: auto;
	  -webkit-overflow-scrolling: touch;
	}

	.drawers {
		position: fixed;
		top: 0;
		right: 0;
		z-index: 990;
	}

	.drawer {
	  display: flex;
	  align-items: center;
	  justify-content: space-between;
	  flex-direction: row;
	  position: relative;
	  height: 12vmin;
	  padding: 0 3vmin;
	}
	.navbar_toggle {
	  z-index: 999;
	}

	.navbar_toggle_icon {
	  position: relative;
	  display: block;
	  height: 1vmin;
	  width: 8vmin;
	  background: #FFF;
	  -webkit-transition: ease .5s;
	  transition: ease .5s;
	}

	.navbar_toggle_icon:nth-child(1) {
	  top: 0;
	}

	.navbar_toggle_icon:nth-child(2) {
	  margin: 1.5vmin 0;
	}

	.navbar_toggle_icon:nth-child(3) {
	  top: 0;
	}

	/*ハンバーガーメニューの開閉*/
	.navbar_toggle.open .navbar_toggle_icon:nth-child(1) {
	  top: 10px;
	  -webkit-transform: rotate(45deg);
	  transform: rotate(45deg);
	}

	.navbar_toggle.open .navbar_toggle_icon:nth-child(2) {
	  -webkit-transform: translateY(-50%);
	  transform: translateY(-50%);
	  opacity: 0;
	}

	.navbar_toggle.open .navbar_toggle_icon:nth-child(3) {
	  top: -3.8vmin;
	  -webkit-transform: rotate(-45deg);
	  transform: rotate(-45deg);
	}

	.navbar_toggle {
	  margin: 0 0 0 auto;
	}
	

	
}
@media (max-width: 480px){
	body { font-size: 4vmin; line-height: 8vmin;}
	.sp_only { display: block;}
	.navbar_toggle.open .navbar_toggle_icon:nth-child(3) {top: -2.8vmin;}
	.menu ul li { padding: 6vmin;}
	
	
	#contentsWrap .date { margin-top: -7.5vmin;}
	#contentsWrap .date .ymd { font-size: 7.5vmin;}
	#contentsWrap .date .ymd span { font-size: 4vmin;}
	#contentsWrap .date .pos { font-size: 4.5vmin;}
	
	#contentsWrap section { padding: 20% 5%;}
	#contentsWrap section h2 { font-size: 5.5vmin;}
	
	#contentsWrap .cd-fixed-bg { height: auto; min-height: 50vh;}
	#contentsWrap .cd-fixed-bg { height: auto; min-height: 50vh;}
	#contentsWrap .cd-fixed-bg.cd-bg-0 { background-size: 200%; background-position: right 30% top 50%;}
	#contentsWrap .cd-fixed-bg.cd-bg-1 { background-size: contain; background-position: right -100px top -5%;}
	#contentsWrap .cd-fixed-bg.cd-bg-2 { background-size: 200%; background-position: left 84% top 20px;}
	#contentsWrap .cd-fixed-bg.cd-bg-3 { background-size: 86%; background-position: right -80px top 20px;}
	#contentsWrap .cd-fixed-bg.cd-bg-4 { background-size: 110%; background-position: right -140px top 0%;}
	#contentsWrap .cd-fixed-bg.cd-bg-5 { background-position: left -100px top 0px;}
	#contentsWrap .cd-fixed-bg.cd-bg-6 { background-position: left 100px top 0;}
	#contentsWrap .cd-fixed-bg.cd-bg-7 { background-size: 100%;}

	
	#contentsWrap #greeting p { line-height: 9vmin;}
	
	#contentsWrap #NEWS ul li { padding: 4vmin 0; display: block;}
	#contentsWrap #NEWS ul li strong { margin-bottom: 10px; width: 100%;}
	#contentsWrap #NEWS ul li span { width: 100%;}
	#contentsWrap #NEWS .rightTxt { margin: 5.5vmin 0 7vmin;}
	
	#contentsWrap #OVERVIEW ul li { line-height:5.6vmin; display: block; padding: 3vmin 0; font-size: 3.4vmin;}
	#contentsWrap #OVERVIEW ul li strong { display: block; font-size: 4.5vmin; margin-bottom: 2vmin;}
	
	#contentsWrap #TICKET ul li { font-size: 3.8vmin; line-height:7.4vmin; margin-bottom: 3vmin; padding-left: 3.8vmin; text-indent: -3.8vmin;}
	#contentsWrap #TICKET h3 { font-size: 6vmin; line-height: 1.2;}
	#contentsWrap #TICKET h3 span { display: block; font-size: 3.8vmin; margin-top: 10px;}
	#contentsWrap #TICKET .tbtmTxt li {  line-height: 1.5;}
	#contentsWrap #TICKET .tbtmTxt strong { font-size: 4.2vmin;}
	#contentsWrap #TICKET table tr td { font-size: 3.5vmin;}
	#contentsWrap #TICKET table .small { font-size: 2.5vmin;}
	#contentsWrap #TICKET .special3item p , #contentsWrap #TICKET .special3item ul li { font-size: 4vmin;}
	#contentsWrap .Btn a { font-size: 5vmin; padding: 4vmin;}
	#contentsWrap #TICKET p.lsnLink { font-size: 4vmin; }
	
	#contentsWrap #DISPLAY .floormap { display: block;}
	#contentsWrap #DISPLAY .floormap .mapImg,
	#contentsWrap #DISPLAY .floormap .mapContents { width: 100%;}
	#contentsWrap #DISPLAY .floormap .mapImg map { display: none;}
	#contentsWrap #DISPLAY .floormap .mapContents { padding: 5% 15% 15%; margin-top: 20px;}
	#contentsWrap #DISPLAY .floormap .mapContents .mciTxt { font-size: 4vmin; line-height: 8vmin;}
	
	
	#contentsWrap #GOODS .w940 { height: auto; padding-top: 0;}
	#contentsWrap #GOODS .soon { position: inherit; top: 0;}
	
	#contentsWrap #GOODS ul li { font-size: 4vmin; margin-bottom: 3vmin;}
	#contentsWrap #GOODS .goodslist h3 { font-size: 5vmin;}
	#contentsWrap #GOODS .goodslist .goodslistWrap { flex-wrap: wrap;}
	#contentsWrap #GOODS .goodslist .goodslistWrap .goodslistBox { width: calc(50% - 10px); margin-bottom: 20px;}
	#contentsWrap #GOODS .goodslist .goodslistWrap .goodslistBox:nth-child(2n) { margin-right: 0;}
	
	#contentsWrap #TOUR .w600 { min-height: auto; padding: 0; font-size: 3.5vmin;}
	#contentsWrap #TOUR .soon { position: inherit; top: 0;}
	#contentsWrap #TOUR .tab_content table th { width: 20vmin;}
	
	#contentsWrap #SPECIAL h3 { font-size: 5vmin;}
	#contentsWrap #SPECIAL p { font-size: 4vmin;}
	#contentsWrap #SPECIAL #news_night ul li { font-size: 3.5vmin; line-height: 1.6;}
	#contentsWrap #SPECIAL .Btn a { font-size: 4vmin;}
	#contentsWrap #SPECIAL .SPimg img { max-width: 100%; height: auto;}
	#contentsWrap #SPECIAL ul li { font-size: 3.8vmin; line-height:7.4vmin; margin-bottom: 3vmin; padding-left: 3.8vmin; text-indent: -3.8vmin;}
	#contentsWrap #SPECIAL h3 span { display: block; font-size: 3.8vmin; margin-top: 10px;}
	#contentsWrap #SPECIAL .tbtmTxt li {  line-height: 1.5;}
	#contentsWrap #SPECIAL table .small { font-size: 2.5vmin;}
	
	#contentsWrap #SPECIAL #ar .border { font-size: 4vmin;}
	
	.remodal .modal_inner { width: 100%;}
	.remodal .modal_inner .boxTxt { line-height: 4.8vmin;}
	
	.lower .articleBody h3 { font-size: 4.5vmin;}
	.lower .articleBody .slider { width: 85%;}
	
	.lower .newsBox h3 { font-size: 5vmin;}
	.lower .newsBox .newsTxt { font-size: 4vmin; line-height: 7vmin;}
	
	
	#contentsWrap section#pageTemp { padding: 10% 5%;}
	#pageTemp .pageBody p {
		font-size: 4vmin;
		line-height: 1.6;
	}
	#pageTemp .pageBody ul li { 
		font-size: 4vmin;
		padding-left: 4vmin;
		text-indent: -4vmin;
	}
	
	footer { font-size: 2.2vmin;}
}



/*-----------------1217追加分-------------------*/
#contentsWrap #TICKET .cast {
	border: 1px solid #a40000;
	padding: 12px;
	text-align: center;
	margin-top: 20px;
}
#contentsWrap #TICKET .cast h3 { 
	margin: 0 0 16px;
	background: #a40000;
	padding: 10px;
}
#contentsWrap #TICKET .cast dl {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
}
#contentsWrap #TICKET .cast dl dt { 
	width: 49%;
	margin-bottom: 20px;
}
#contentsWrap #TICKET .cast dl dt img { width: 100%;}
#contentsWrap #TICKET .cast dl dt span { 
	display: block;
	font-size: 1.6vmin;
	line-height: 1;
}
#contentsWrap #TICKET table tr th { width: 42%;}
#contentsWrap #TICKET table.t2 tr th { width: 24%;}
#contentsWrap #TICKET table.t2 tr td { text-align: left;}
#contentsWrap #TICKET table tr td.img { padding: 10px; width: 28%;}
#contentsWrap #TICKET table tr td img { width: 100%; height: auto; display: block;}

#contentsWrap #SPECIAL .anime {
	text-align: left;
	margin-top: 40px;
	padding-top: 20px;
	border-top: 1px solid #FFF;
}
#contentsWrap #SPECIAL .anime h3 { text-align: center;}
#contentsWrap #SPECIAL .anime h4 {
	text-align: center;
	border: 1px solid #FFF;
	padding: 0.2em;
	margin: 2em 0 1em;
}
#contentsWrap #SPECIAL .anime p {
	font-size: 1.6vmin;
	line-height: 1.6;
	margin: 1em 0;
}
#contentsWrap #SPECIAL .anime img { max-width: 100%;}

@media (max-width: 480px){
	
	#contentsWrap #TICKET .cast dl dt { width: 100%; }
	#contentsWrap #TICKET .cast dl dt span { font-size: 3vmin;}
	#contentsWrap #SPECIAL .anime p { font-size: 3.5vmin;}

}

/*-----------------1223追加分-------------------*/
#accordion { background: #000;}

.accordion-container .accordion-title {
	display: block;
	position: relative;
	margin: 0;
	padding: 0.625em 0.625em 0.625em 2em;
	font-size: 2vmin;
	font-weight: normal;
	color: #fff;
	background: #a40000;
	cursor: pointer;
	text-align: center;
	transition: all 0.5s ease 0s;
}

.accordion-container .accordion-title:hover,
.accordion-container .accordion-title:active,
.accordion-container .content-entry.open .accordion-title {
  background-color: #FFF;
  color: #a40000;
}

.accordion-title:after {
  content: "";
  position: absolute;
  right: 25px;
  top: 38%;
  transition: all 0.2s ease-in-out;
  display: block;
  width: 8px;
  height: 8px;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}
.accordion-title:hover:after { border-color: #a40000; }
.accordion-title.open:after {
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	top: 45%;
	border-color: #fff;
}
.accordion-title.open:hover:after {
	border-color: #a40000;
}

.accordion-content {
	display: none;
	padding: 1em;
	font-size: 1.8vmin;
}
.accordion-content p,.accordion-content ul { margin-bottom: 1em;}
.accordion-content ul li {
	padding-left: 1em;
	text-indent: -1em;
}
.movie { 
	margin-top: 40px;
	padding-top: 20px;
	border-top: 1px solid #FFF;
}
.movie h3 { margin-bottom: 20px;}
.frame_wrap {
	position: relative;
    width: 100%;
    padding-top: 56.25%;
	margin-bottom: 20px;
}
.frame_wrap iframe {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
}

@media (max-width: 480px){
	section#accordion { padding: 20px !important;}
	.accordion-title:after { right: 18px;}
	.accordion-container .accordion-title { 
		font-size: 4vmin;
		text-align: left;
		line-height: 1.6;
	}
	.accordion-content { font-size: 3.5vmin;}
}


/*-----------------20221125追加分-------------------*/
@media (max-width: 480px){
	.tab-btn { font-size: 80%;}
	#contentsWrap #OVERVIEW .tbtmTxt { font-size: 2.8vmin;}
}
	
	