@charset "UTF-8";

:root {
	--colorBg: #ffffff;
	--colorMain: #000000;
	--colorSub: rgb(0, 0, 0, 0.06);
	--colorBgSub: rgba(255, 255, 255, 0.13);
	--colorText: #0f0f0f;
	--colorLink: #2e367e;
	--colorCaution: #c70c18;
}
*, ::before, ::after {
	-webkit-tap-highlight-color: transparent;
}

/* Scss Document */
/*

■normalize
■reset
■base
１）variable
２）library
３）generic
４）basic
５）layout
６）box
７）content
*/
/*===================================================
normalize
=====================================================*/
html {
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
	display: block;
}

a {
	background-color: transparent;
	margin: 0;
	padding: 0;
	vertical-align: baseline;
	background: transparent;
}

a:active, a:hover {
	outline: 0;
}

b,
strong {
	font-weight: 700;
}

small {
	font-size: 80%;
}

sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sup {
	top: -0.5em;
}

sub {
	bottom: -0.25em;
}

img {
	border: 0;
	font-size: 0;
	line-height: 0;
	vertical-align: top;
}

svg:not(:root) {
	overflow: hidden;
}

hr {
	display: block;
	height: 1px;
	border: 0;
	border-top: 1px solid #ccc;
	margin: 1em 0;
	padding: 0;
}

pre {
	overflow: auto;
}

button,
input,
optgroup,
select,
textarea {
	color: inherit;
	font: inherit;
	margin: 0;
}

button {
	overflow: visible;
}

button,
select {
	text-transform: none;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
	-webkit-appearance: button;
	cursor: pointer;
}

button[disabled],
html input[disabled] {
	cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
	border: 0;
	padding: 0;
}

input {
	line-height: normal;
}

input[type="checkbox"],
input[type="radio"] {
	box-sizing: border-box;
	padding: 0;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

input[type="search"] {
	-webkit-appearance: textfield;
	box-sizing: content-box;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

fieldset {
	border: 1px solid silver;
	margin: 0 2px;
	padding: 0.35em 0.625em 0.75em;
}

legend {
	border: 0;
	padding: 0;
}

textarea {
	overflow: auto;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

td,
th {
	padding: 0;
}

/*====================================
reset
=====================================*/
h1,
h2,
h3,
h4,
h5,
h6 {
	margin: 0;
	font-size: 1em;
	font-weight: 400;
}

li {
	list-style: none;
}

dl,
dd {
	margin: 0;
}

small {
	font-size: 100%;
}

em {
	font-style: normal;
}

html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
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-weight: 400;*/
	vertical-align: baseline;
	background: transparent;
}

del {
	text-decoration: line-through;
}

input,
select {
	vertical-align: middle;
}

/*====================================
 * base
=====================================*/
a {
	text-decoration: none;
	-webkit-tap-highlight-color: transparent;
}

label {
	cursor: pointer;
}

img {
	max-width: 100%;
	height: auto;
	vertical-align: middle;
}

iframe {
	border: none;
}

.clearfix:after {
	content: "";
	display: table;
	clear: both;
}

* {
	box-sizing: border-box;
}

@media screen and (min-width: 480px) {
	.sp480 {
		display: none;
	}
}

@media screen and (min-width: 600px) {
	.sp600 {
		display: none;
	}
}

@media screen and (min-width: 768px) {
	.sp768 {
		display: none;
	}
}

b {
	font-weight: bold;
}

.btn {
	color: #fff;
	background: #ff9900;
	background: -moz-linear-gradient(top, #ff9900 25%, #f96401 100%);
	background: -webkit-linear-gradient(top, #ff9900 25%, #f96401 100%);
	background: linear-gradient(to bottom, #ff9900 25%, #f96401 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff9900', endColorstr='#f96401', GradientType=0);
	border-radius: 6px;
	margin: 8px 0;
	padding: 1em 0;
	display: block;
	text-align: center;
	font-weight: 600;
	line-height: 1.3;
	text-shadow: -1px -1px 0 #cf7432;
	position: relative;
}

.btn i {
	position: absolute;
	font-size: 1.429rem;
	top: 30%;
	right: 8px;
}

.btn.noLink {
	background: #bfbfbf;
	background: -moz-linear-gradient(top, #bfbfbf 25%, #858484 100%);
	background: -webkit-linear-gradient(top, #bfbfbf 25%, #858484 100%);
	background: linear-gradient(to bottom, #bfbfbf 25%, #858484 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#bfbfbf', endColorstr='#858484', GradientType=0);
	text-shadow: -1px -1px 0 #999;
}

.noLink i {
	position: absolute;
	font-size: 1.429rem;
	top: 50%;
	right: 8px;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
}

.btn.normal {
	color: #333 !important;
	border: 1px solid #ccc;
	background: #ffffff;
	background: -moz-linear-gradient(top, #fff 38%, #eee 100%);
	background: -webkit-linear-gradient(top, #fff 38%, #eee 100%);
	background: linear-gradient(to bottom, #fff 38%, #eee 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff', endColorstr='#EEE', GradientType=0);
	text-shadow: none !important;
}

.btn_pink {
	display: block;
	position: relative;
	border-radius: 100px;
	overflow: hidden;
	background-color: #F50057;
	padding: 1em;
	font-weight: 600;
	color: #fff !important;
	text-align: center;
	transition: all .2s ease;
	max-width: 90%;
	margin: 0 auto;
}

.btn_pink i {
	position: absolute;
	font-size: 1.429rem;
	top: 50%;
	right: 8px;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
}

.btn_pink:hover {
	opacity: 0.8;
}

.btn_pink.normal {
	color: #333 !important;
	border: 1px solid #ccc;
	background: #ffffff;
	background: -moz-linear-gradient(top, #fff 38%, #eee 100%);
	background: -webkit-linear-gradient(top, #fff 38%, #eee 100%);
	background: linear-gradient(to bottom, #fff 38%, #eee 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff', endColorstr='#EEE', GradientType=0);
	text-shadow: none !important;
}

.noLink {
	background-color: #bfbfbf;
	display: block;
	position: relative;
	border-radius: 100px;
	overflow: hidden;
	padding: 1em;
	font-weight: 600;
	color: #fff !important;
	text-align: center;
	transition: all .2s ease;
}

.soldout {
	text-decoration: line-through;
}

.soldout_text {
	color: #ff007f;
	text-decoration: none !important;
	font-weight: 600;
}

i.material-icons.new {
	color: #e8611e;
	line-height: 1;
	font-size: 1.286rem;
	position: relative;
	bottom: -3px;
	padding-right: 4px;
}

body {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	font-size: 14px;
	color: var(--colorText);
	background-color: var(--colorBg);
}

main {
	line-height: 1.6;
}

main a:link,
main a:visited,
main a:active {
	text-decoration: none;
	color: var(--colorLink);
}

main a:hover {
	opacity: 0.8;
}

/*main .notes li {
	margin-bottom: 4px;
}*/

/*====================================
HEADER
=====================================*/
header {
	z-index: 100;
	position: sticky;
	top: 0;
	background: rgba(0, 0, 0, 0.96);
	backdrop-filter: blur(20px);
	/* box-shadow: 0 0 6px rgba(0, 0, 0, 0.4); */
	box-shadow: 0 0 6px rgba(255, 255, 255, 0.26);
	width: 100%;
	color: #FFF;
}

header .titlebox {
	padding: 8px;
	display: flex;
}

header .titlebox h1 {
	flex: 1;
	font-size: min(3.0vw, 14px);
	line-height: 1.3;
}

header .titlebox h1 .emp {
	color: #ff6b6b;
}

header .titlebox .headlogo {
	width: 40px;
}

header .titlebox .headlogo a {
	display: block;
}

header .titlebox .headlogo img {
	width: 100%;
}

@media screen and (min-width: 600px) {
	header .titlebox h1 {
		font-size: 16px;
	}

	/*header .titlebox h1 br {
		display: none;
	}*/
}

@media screen and (min-width: 768px) {
	header .titlebox h1 {
		font-size: min(2.2vw, 24px);
	}

	header .titlebox .headlogo {
		width: 50px;
	}
}

header nav ul.nav {
	display: flex;
	padding: 0 0 4px 0;
	justify-content: center;
	padding-bottom: 8px;
}

header nav ul.nav li {
	margin: 0 4px;
}

@media screen and (min-width: 960px) {
	header nav ul.nav {
		padding-bottom: 12px;
	}
	header nav ul.nav li {
		margin: 0 16px;
	}
}

header nav ul.nav li a {
	font-family: "Titillium Web", sans-serif;
	display: block;
	font-size: 1rem;
	line-height: 1;
	color: #FFF;
	transition: 0.2s;
	padding: 4px 8px;
	background-color: transparent;
}

@media screen and (min-width: 480px) {
	header nav ul.nav li a {
		font-size: 1.143rem;
	}
}

@media screen and (min-width: 960px) {
	header nav ul.nav li a {
		font-size: 1.429rem;
	}

	header nav ul.nav li a:hover {
		transition: 0.2s;
		opacity: 0.8;
	}
}

header nav ul.nav li:last-child {
	margin-left: 8px;
}

@media screen and (min-width: 960px) {
	header nav ul.nav li:last-child {
		margin-left: 16px;
	}
}

header nav ul.nav li:last-child a {
	background-color: #fff;
	transition: 0.2s;
	padding: 4px 12px;
	border-radius: 100vw;
	color: var(--colorText);
}

@media screen and (min-width: 960px) {
	header nav ul.nav li:last-child a:hover {
		transition: 0.2s;
	}
}

.contentsBoby {
	padding: 16px 0;
	max-width: 1100px;
	margin: 0 auto;
	word-break: break-all;
	word-wrap: break-word;
	overflow-wrap: break-word;
	letter-spacing: 0.04em;
}

.innerBody {
	padding: 0 16px;
}

.contentsBoby .textInformation {
	padding: 0 0 48px 0;
}

.contentsBoby .textInformation .sectionTtl {
	margin-bottom: 24px;
	display: block;
	padding: 8px 16px;
	background: var(--colorMain);
	font-weight: 600;
	font-size: 1.143rem;
	color: #FFF;
}

@media screen and (min-width: 960px) {
	.contentsBoby {
		display: flex;
	}

	.contentsBoby #information {
		flex: 1;
		padding: 0;
	}

	.contentsBoby #assist {
		width: 35%;
		padding: 0 16px 0 24px;
	}

	.contentsBoby .textInformation {
		padding: 0 0 64px 0;
	}

	.contentsBoby .textInformation .sectionTtl {
		margin-bottom: 32px;
	}
}



/*====================================
FOOTER
=====================================*/
footer {
	margin-top: 0px;
}

footer .breadcrumb {
	padding: 16px;
}

footer .breadcrumb ul {
	display: flex;
	flex-wrap: wrap;
}

footer .breadcrumb ul li {
	margin-right: 4px;
}

footer .breadcrumb ul li a:link,
footer .breadcrumb ul li a:visited,
footer .breadcrumb ul li a:active {
	text-decoration: underline;
	color: #0074be;
}

footer .breadcrumb ul li a:hover {
	opacity: 0.8;
}

footer .breadcrumb ul li:after {
	content: ">";
	padding-left: 4px;
}

footer .breadcrumb ul li:last-child:after {
	content: "";
}

footer .ancertop {
	display: block;
	background-color: var(--colorSub);
	color: #000;
	text-align: center;
	padding: 16px;
}

footer .copyright {
	background-color: #000;
	color: #fff;
	padding: 16px;
}

footer .copyright a {
	width: 100px;
	display: block;
	margin: 16px auto 32px auto;
}

footer .copyright p {
	font-size: 0.857rem;
}

@media screen and (min-width: 960px) {
	footer {
		margin-top: 32px;
	}

	footer .copyright p {
		text-align: center;
	}
}

footer .copyright p.copyright {
	text-align: center;
	font-size: 0.714rem;
}

/* キービジュアル */
.teaser_l {
	display: none;
}

@media screen and (min-width: 600px) {
	.teaser_s {
		display: none;
	}

	.teaser_l {
		display: block;
	}
}

@media screen and (min-width: 1280px) {
	.teaserDate_s {
		display: none;
	}
}

.teaserDate_l {
	display: none;
}

@media screen and (min-width: 1280px) {
	.teaserDate_l {
		display: block;
	}
}

.kv {
	margin-bottom: 1em;
	width: 100%;
	text-align: center;
	background-color: #000;
	/* border-bottom: 1px solid #e7e7e7; */
}

@media screen and (min-width: 960px) {}

.teaser .teaserCopy {
	text-align: center;
}

.teaser .teaserCopy strong {
	font-size: 1.4rem;
	font-weight: bold;
	color: #ff0036;
}

@media screen and (min-width: 480px) {
	.teaser .teaserCopy strong {
		font-size: 2em;
	}
}

@media screen and (min-width: 960px) {
	.teaser .teaserCopy strong {
		font-size: 3em;
	}
}

@media screen and (min-width: 1280px) {
	.teaser .teaserCopy strong {
		font-size: 3.5em;
	}
}

.teaser .teaserDate {
	text-align: center;
	margin: 0 auto 32px;
}

@media screen and (min-width: 600px) {
	.teaser .teaserDate {
		width: 50%;
	}
}


/*====================================
アンカーリンク
=====================================*/
.assistNav {
	display: flex;
	justify-content: center;
	max-width: 1100px;
	margin: 56px auto 16px;
}

.assistNav a.btn.normal {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	width: 30%;
	margin: 0 1%;
	text-align: center;
	padding: 8px 0;
	color: #444 !important;
	font-size: min(3.4vw, 13px);
}

.assistNav a.btn.normal span {
	display: block;
}

@media screen and (min-width: 768px) {
	.assistNav a.btn.normal {
		font-size: 16px;
		padding: 16px 0;
		flex-direction: row;
	}

	.assistNav a.btn.normal span {
		display: inline;
	}
}


/*====================================
textInformation
=====================================*/
.textInformation .intro {
	font-size: clamp(16px, 5.3vw, 30px);
	font-weight: 800;
	line-height: 1.5;
	text-align: center;
}

/*@media screen and (min-width: 600px) {
	.textInformation .intro {
		font-size: 32px;
	}
}

@media screen and (min-width: 960px) {
	.textInformation .intro {
		font-size: 32px;
	}
}*/

.innerTitle {
	font-weight: 600;
	font-size: 1rem;
	margin-bottom: 16px;
	padding-bottom: 8px;
	line-height: 1.2;
	border-bottom: solid 2px rgba(255, 255, 255, 0.26);
}


/*====================================
公演概要〜お問い合わせ 共通
=====================================*/
.summary {
	margin-bottom: 32px;
}

.artistsImg {
	display: flex;
	flex-direction: column;
}

.artistsImg li {
	width: 100%;
	margin-bottom: 16px;
	overflow: hidden;
}

.artistsImg li:last-child {
	margin-bottom: 0;
}

.line_bottom_space {
	margin-bottom: 1rem;
}

.block_wrapper {
	background-color: var(--colorSub);
	color: #000;
	border-radius: 8px;
	margin-top: 40px;
	padding: 16px 16px;
	text-align: left;
}
.block_wrapper .title {
	text-align: center;
	font-size: 18px;
	font-weight: bold;
	margin: 0 0 16px 0;
	background-color: #FFF;
	padding: 8px;
	color: var(--colorCaution);
}
@media screen and (min-width: 900px) {
	.block_wrapper {
		padding: 24px 24px;
	}
}
@media screen and (min-width: 768px) {
	.block_wrapper {
		text-align: center;
	}
}

.font_bold {
	font-weight: 700;
}

.ticket_caution_wrapper h3 {
	margin-top: 16px;
	font-size: 0.857rem;
	font-weight: 600;
}

.btn_top {
	max-width: 90%;
	margin: 2rem auto 1rem;
	text-align: center;
}

.reserve_btn_bottom {
	text-align: center;
}

.img_vandle_logo {
	width: 50%;
	min-width: 200px;
	margin: 24px auto;
	background-color: #fff;
}

ol.reserve_flow li {
	margin-bottom: 24px;
}
.reserve_step {
	font-weight: 600;
	font-size: 1.143rem;
	margin-top: 1rem;
	margin-bottom: 8px;
	line-height: 1.5;
}

.reserve_step span {
	position: relative;
	font-weight: bold;
	padding: 0 0 0.125em 0;
}

.reserve_step span::after {
	position: absolute;
	content: "";
	display: block;
	width: 100%;
	height: 4px;
	bottom: 0;
	background-color: var(--colorMain);
}

.btn_gold {
	display: block;
	position: relative;
	border-radius: 100px;
	overflow: hidden;
	background: linear-gradient(90deg, #b39360 0%, #fee9a0 100%);
	box-shadow: 2px 2px 4px 0px rgba(0, 0, 0, 0.4);
	padding: 1em;
	font-weight: 600;
	color: #41322b !important;
	text-align: center;
	transition: all .2s ease;
	max-width: 90%;
	margin: 0 auto;
}

.btn_gold i {
	position: absolute;
	font-size: 1.429rem;
	top: 50%;
	right: 8px;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
}

.btn_gold:hover {
	opacity: 0.6;
	box-shadow: 2px 2px 4px 0px rgba(0, 0, 0, 0);
}

.btn_gold span {
	font-size: 1rem;
	font-weight: 800;
}

.btn_resale {
	display: block;
	position: relative;
	border-radius: 100px;
	overflow: hidden;
	background-color: #ce5066;
	box-shadow: 2px 2px 4px 0px rgba(0, 0, 0, 0.4);
	padding: 1em;
	font-weight: 600;
	color: #fff !important;
	text-align: center;
	transition: all .2s ease;
	width: min(90%, 600px);
	margin: 0 auto;
}

.btn_resale i {
	position: absolute;
	font-size: 1.429rem;
	top: 50%;
	right: 8px;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
}

.btn_resale:hover {
	opacity: 0.8;
	box-shadow: 2px 2px 4px 0px rgba(0, 0, 0, 0);
}

.btn_resale span {
	font-size: min(4.2vw, 1rem);
	font-weight: 800;
}

.btn_entry {
	display: block;
	position: relative;
	border-radius: 100px;
	overflow: hidden;
	background-color: #2e367e;
	box-shadow: 2px 2px 4px 0px rgba(0, 0, 0, 0.4);
	padding: 1em;
	font-weight: 600;
	color: #FFF !important;
	text-align: center;
	transition: all .2s ease;
	width: min(90%, 600px);
	margin: 0 auto;
	font-size: min(3.7vw, 14px);
}

input.btn_entry,
button.btn_entry {
	border: none;
}

.btn_entry:hover {
	opacity: 0.8;
	box-shadow: 2px 2px 4px 0px rgba(0, 0, 0, 0);
}
.btn_entry span {
	font-size: 1rem;
	font-weight: 800;
}

p.btn_resale:hover,
p.btn_entry:hover {
	opacity: 1.0;
}

.btn_close {
	display: block;
	position: relative;
	border-radius: 100px;
	overflow: hidden;
	background-color: #aaa;
	box-shadow: 2px 2px 4px 0px rgba(0, 0, 0, 0.4);
	padding: 1em;
	font-weight: 600;
	color: #FFF !important;
	text-align: center;
	transition: all .2s ease;
	width: min(90%, 600px);
	margin: 0 auto;
}

.btn_close:hover {
	opacity: 0.8;
	box-shadow: 2px 2px 4px 0px rgba(0, 0, 0, 0);
}

.btn_close span {
	font-size: 1rem;
	font-weight: 800;
}

.ticket_wrapper dt {
	font-weight: bold;
	margin-top: 1rem;
}

.font_blue {
	color: blue;
}

.specialseat_ttl {
	text-align: center;
	font-size: 18px;
	font-weight: bold;
	margin: 32px 0 16px 0;
	background-color: #7cd1ee;
	color: #ffffff;
	padding: 8px;
}



h5 {
	background-color: #4c4c4c;
	color: #fff;
	line-height: 2rem;
	font-weight: 800;
	padding-left: 0.5rem;
	margin-top: 2rem;
}

@media screen and (min-width: 600px) {
	.artistsImg {
		flex-direction: row;
		justify-content: space-between;
	}

	.artistsImg li {
		width: calc((100% - 16px) / 2);
		margin-bottom: 0;
	}

	.hanging {
		margin-left: 1rem;
	}

	.btn_gold span {
		font-size: 1.5rem;
	}

	.btn_resale span,
	.btn_entry span {
		font-size: 1.5rem;
	}

	.btn_close span,
	.btn_entry span {
		font-size: 1.5rem;
	}
}


/*====================================
スケジュール表
=====================================*/
.pc_none {
	display: none;
}

.sp_none {
	display: inline;
}

.schedule_ttl {
	font-size: 14px;
	font-weight: bold;
	margin: 0 0 10px 0;
	border-left: solid 4px var(--colorMain);
	padding: 3px 0 0 10px;
}

table.schedule {
	border-collapse: collapse;
	font-size: 14px;
	border: 1px solid #787878;
	margin: 0px 0px 8px;
}

table.schedule th {
	padding: 3px;
	font-weight: normal;
}

table.schedule thead th {
	background: var(--colorSub);
}

table.schedule th.title {
	text-align: center;
	background: transparent;
	vertical-align: middle;
}

table.schedule td {
	padding: 8px 8px;
	text-align: center;
	vertical-align: middle;
}

table.schedule td.place,
table.schedule td.tel {
	text-align: center;
}

/*
	table.schedule tbody td:nth-of-type(4) {
		text-align: left;
	}
*/
table.schedule th,
table.schedule td {
	box-sizing: border-box;
	border-right: 1px solid #787878;
	border-bottom: 1px solid #787878;
}

table.schedule th:nth-child(1) {
	width: 140px;
}

table.schedule th:nth-child(2) {
	width: 80px;
}

table.schedule th:nth-child(3) {
	width: 260px;
}

table.schedule th:nth-child(4) {
	width: 120px;
}

/*
	table.schedule.index th:nth-child(1) {
		width: 160px;
	}
	table.schedule.index th:nth-child(2) {
		width: 80px;
	}
	table.schedule.index th:nth-child(3) {
		width: 360px;
	}
*/

table.schedule tr.even td {
	background-color: #f5f4f4;
}

table.schedule td.dot {
	border-bottom: 1px dotted #787878;
}

table.schedule td.place,
table.schedule td.contact {
	text-align: center;
}

@media screen and (max-width: 900px) {
	.pc_none {
		display: inline;
	}

	.sp_none {
		display: none;
	}

	table.schedule {
		border: none;
	}

	table.schedule thead {
		display: none;
	}

	table.schedule tbody {
		display: block;
	}

	table.schedule tbody tr {
		display: block;
		margin-bottom: 1.5em;
	}
	table.schedule tbody tr:last-child {
		margin-bottom: 0;
	}

	table.schedule tbody th,
	table.schedule tbody td {
		display: list-item;
		list-style-type: none;
		border: none;
		text-align: left;
		padding-left: 8px;
	}

	table.schedule tbody th {
		margin-bottom: 5px;
		color: #fff;
		text-align: left;
	}

	table.schedule th.title {
		background: var(--colorSub);
		color: #000;
		text-align: left;
		width: 100%;
	}

	table.schedule tbody th {
		background: #EEEEEE;
	}

	table.schedule tbody td {
		padding: 0px 0px 0px 8px;
	}

	table.schedule tbody td span.smttell {
		padding-left: 8px;
	}

	table.schedule tbody td:nth-of-type(1):before {
		content: "[地区] ";
	}

	table.schedule tbody td:nth-of-type(2):before {
		content: "[会場名] ";
	}

	table.schedule tbody td:nth-of-type(3):before {
		content: "[開場/開演] ";
	}

	table.schedule tbody td:nth-of-type(4):before {
		white-space: pre;
		content: "[公演に関するお問い合わせ]\A";
	}

	table.schedule.index th:nth-child(n) {
		width: 100%;
	}
}


/*====================================
会場MAP
=====================================*/
.accessMap .text {
	margin-bottom: 16px;
}

.accessMap .gmap iframe {
	width: 100%;
	height: 300px;
	border: 0;
	/*filter: grayscale(100%);*/
}

/*
@media screen and (min-width: 600px){
	.accessMap {
		display: flex;
		justify-content: space-between;
	}
	.accessMap > div {
		width: calc((100% - 16px) / 2);
	}
	.accessMap .text {
		margin-bottom: 0;
	}
	.accessMap .gmap iframe {
		aspect-ratio: 4 / 3;
		height: auto;
	}
}
*/


/*====================================
チケット発売情報
=====================================*/
.tickets h3 {
	text-align: center;
	font-size: 18px;
	font-weight: bold;
	margin: 0 0 16px 0;
	background-color:#0f0f0f;
	color: #FFF;
	padding: 8px;
}

.tickets .ticketWrap_Trignone {
	background-color: var(--colorSub);
	border-radius: 4px;
	padding: 16px 32px 16px 32px;
	font-size: 18px;
	font-weight: bold;
	position: relative;
	margin-bottom: 16px;
}

.tickets .ticketWrap_Trignone .tax {
	color: #000;
	font-size: 12px;
	font-weight: normal;
}

.tickets .ticketWrap_Trignone .Trignone_text {
	font-size: 14px;
	font-weight: normal;
}

.tickets .ticketWrap {
	display: flex;
	flex-direction: column;
	background-color: var(--colorSub);
	border-radius: 4px;
	padding: 16px 32px 16px 32px;
	border-right: solid 60px rgba(255, 255, 255, 0.06);
	font-size: 18px;
	font-weight: bold;
	position: relative;
	cursor: pointer;
	transition: all 0.3s;
	margin-bottom: 16px;
}

.tickets .ticketWrap.acdTrigger:hover {
	background-color: #fffb81;
}

.tickets .ticketWrap.active {
	margin-bottom: 2px;
}

.tickets .ticketWrap:not(.acdTrigger) {
	border-right: none;
	cursor: default;
}

.tickets .ticketWrap:not(.acdTrigger) .deatilBtn {
	display: none;
}

.tickets .ticketWrap .deatilBtn {
	position: absolute;
	color: #ffcd45;
	display: block;
	width: 60px;
	height: auto;
	top: 50%;
	transform: translateY(-50%) translateX(-50%);
	right: -92px;
	text-align: center;
	line-height: 1.2;
}

.tickets .ticketWrap .deatilBtn::before {
	display: inline-block;
	content: "▼";
	transition: all 0.3s;
}

.tickets .ticketWrap.active .deatilBtn::before {
	transform: rotate(180deg);
	transition: all 0.3s;
}

.tickets .ticketWrap .seat span.note {
	display: block;
	font-size: 14px;
}

.tickets .ticketWrap .price {
	color: #000;
}

.tickets .ticketWrap .tax {
	color: #000;
	font-size: 12px;
	font-weight: normal;
}

.tickets .acdTarget {
	display: none;
	padding: 16px;
	margin-bottom: 16px;
	background-color: var(--colorSub);
	border-radius: 4px;
}

.tickets .cautionred {
	color: var(--colorCaution);
}

.tickets .btnWrap {
	max-width: 90%;
	margin: 32px auto 0 auto;
}

.tickets .acdTarget .Wrapimage {
	width: 45%;
	text-align: left;
	display: flex;
	margin-bottom: 25px;
}

.tickets .acdTarget .Wrapimage img:nth-child(1) {
	margin: 0 5% 0 0;
}

.tickets .acdTarget .Wrapimage_cap {
	width: 45%;
	text-align: left;
}

.tickets .acdTarget .cap_text {
	font-size: 13px;
	font-weight: normal;
}

.tickets .acdTarget .tax {
	color: #000;
	font-size: 11px;
	font-weight: normal;
}

.tickets .ticketWrap_Trignone .Trignone_cap {
	width: 45%;
	text-align: left;
}

.tickets .ticketWrap_Trignone .cap_text {
	font-size: 13px;
	font-weight: normal;
}

@media screen and (min-width: 600px) {
	.tickets .ticketWrap {
		flex-direction: row;
		justify-content: space-between;
	}

	.tickets .ticketWrap:not(.acdTrigger) {
		border-right: solid 60px transparent;
		cursor: default;
	}

	.tickets .ticketWrap .seat {
		width: 65%;
	}

	.tickets .ticketWrap .seat span.note {
		display: inline;
	}

	.tickets .ticketWrap .price {
		width: 35%;
		text-align: right;
	}

	.tickets .acdTarget {
		padding: 32px;
	}
}


@media screen and (max-width: 600px){
.tickets .acdTarget .Wrapimage {
	width: 100%;
	text-align: center;
	display: block;
	margin-bottom: 20px;
}

.tickets .acdTarget .Wrapimage img:nth-child(1) {
	margin: 0 auto;
}

.tickets .acdTarget .Wrapimage img:nth-child(2) {
	margin: 3% 0 0 0;
}

.tickets .acdTarget .Wrapimage_cap {
	width: 100%;
	text-align: center;
}

.tickets .ticketWrap_Trignone .Trignone_cap {
	width: 100%;
	text-align: center;
}


}

/*====================================
リリース情報
=====================================*/
.release-information {
	margin-bottom: 16px;
}

.release-information h3 {
	font-size: 16px;
	font-weight: bold;
	margin-bottom: 4px;
}

.product {
	overflow: hidden;
}

.product .photo {
	text-align: center;
	width: 100px;
	float: left;
	/* border: solid 1px #E0E0E0; */
}

.product .detail {
	margin-left: 116px;
}

.release_title {
	color: #000;
	margin-bottom: 0.5rem;
	font-weight: 600;
	font-size: 1em;
}


@media screen and (min-width: 600px) {
	.release-information {
		margin-bottom: 32px;
	}
	.release-information h3 {
		margin-bottom: 8px;
	}

	.product .photo {
		width: 190px;
	}

	.product .detail {
		margin-left: 220px;
	}
	.release_title {
		font-size: 1.125rem;
	}
}


/*====================================
関連サイト
=====================================*/
.snsLink {
	/*display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;*/
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(40px, 1fr));
	gap: 16px;
	place-items: center;
}

.snsLink a {
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: #000;
	width: 40px;
	height: 40px;
	border-radius: 100px;
	box-shadow: 0 1px 4px 1px rgba(255,255,255,0.13);
}
.snsLink a img {
	width: 24px;
}

@media screen and (min-width: 480px) {
	.snsLink {
		grid-template-columns: repeat(auto-fit, 40px);
	}
}


/*====================================
リンク
=====================================*/
.link {
	margin-top: 16px;
}

.link li {
	margin-bottom: 16px;
}

.link li:last-child {
	margin-bottom: 0px;
}

.link li a {
	display: block;
	padding: 12px;
	background: var(--colorSub);
	font-weight: bold;
}


/*====================================
リスト
=====================================*/
ul.caution_list li {
	margin-bottom: 8px;
}
ul.caution_list li:last-child {
	margin-bottom: 0;
}

/*====================================
調整
=====================================*/
.tL {text-align:left !important;}
.tR {text-align:right !important;}
.tC {text-align:center !important;}
.fL {float:left !important;}
.fR {float:right !important;}

.mbSS {margin-bottom:4px !important;}
.mbS {margin-bottom:8px !important;}
.mbM {margin-bottom:16px !important;}
.mbL {margin-bottom:24px !important;}
.mbLL {margin-bottom:32px !important;}

.mb00 {margin-bottom:0 !important;}
.mb05 {margin-bottom:5px !important;}
.mb10 {margin-bottom:10px !important;}
.mb15 {margin-bottom:15px !important;}
.mb20 {margin-bottom:20px !important;}
.mb30 {margin-bottom:30px !important;}
.mb40 {margin-bottom:40px !important;}

.fz10 {font-size:10px !important;}
.fz11 {font-size:11px !important;}
.fz12 {font-size:12px !important;}
.fz13 {font-size:13px !important;}
.fz14 {font-size:14px !important;}
.fz15 {font-size:15px !important;}
.fz16 {font-size:16px !important;}
.fz18 {font-size:18px !important;}
.fz20 {font-size:20px !important;}
.fz22 {font-size:22px !important;}
.fz24 {font-size:24px !important;}
.fz28 {font-size:28px !important;}
.fz32 {font-size:32px !important;}
.fz36 {font-size:36px !important;}
.fz40 {font-size:40px !important;}

b,
strong {
	font-weight: bold;
}

.caution {
	color: var(--colorCaution) !important;
}

.underline {
	text-decoration: underline !important;
	text-underline-offset: 0.25em;
}

.inlblock {
	display: inline-block !important;
}

.sp_tL {
	text-align:left !important;
}
@media screen and (min-width: 900px) {
	.sp_tL {
		text-align:inherit !important;
	}
}