@charset "UTF-8";

@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New:wght@400;500;700;900&display=swap');
@import url("https://use.typekit.net/lkj7xyn.css");


/****************************************

		  RESET

*****************************************/
html, body,
h1, h2, h3, h4, h5, h6,
a, p, span,
em, small, strong,
sub, sup,
mark, del, ins, strike,
abbr, dfn,
blockquote, q, cite,
code, pre,
ol, ul, li, dl, dt, dd,
div, section, article,
main, aside, nav,
header, hgroup, footer,
img, figure, figcaption,
address, time,
audio, video,
canvas, iframe,
details, summary,
fieldset, form, label, legend,
table, caption,
tbody, tfoot, thead,
tr, th, td {
	margin: 0;
	padding: 0;
	border: 0;
}


html {
	font-size: clamp(13px, 1.1vw, 2.2vh);
}

body {
    line-height: 1.7;
    font-family: 'Manrope','Zen Kaku Gothic New', sans-serif;
    background: #7b1a09;
    position: relative;
    height: auto;
    color: #ffffff;
    font-weight: 500;
    letter-spacing: 0.07em;
}

body::before {
    content: '';
    display: block;
    background: linear-gradient(-45deg, #310202, #e4301d);
    position: fixed;
    width: 100%;
    height: 100vh;
    top: 0;
    left: 0;
    z-index: 99999;
    transition: 1s;
}

body.loaded::before {
    opacity: 0;
    pointer-events: none;
}


* {
	font-family: inherit;
	font-size: inherit;
	line-height: inherit;
}
article,
aside,
footer,
header,
nav,
section,
main {
	display: block;
}

* {
	box-sizing: border-box;
}

*:before,
*:after {
	box-sizing: inherit;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}

ol,
ul {
	list-style: none;
}

img,
video {
	max-width: 100%;
}

img {
	border-style: none;
}

footer {
	background: #fff;
	padding: 2.5em 0;
	color: #f8b500;
}

.red {
	color: #ffb398;
}
.blue {
    color: #001c84;
    font-weight: bold;
}

blockquote,
q {
	quotes: none;
}

blockquote:after,
blockquote:before,
q:after,
q:before {
	content: "";
}
[hidden] {
	display: none !important;
}

[disabled] {
	cursor: not-allowed;
}

:focus:not(:focus-visible) {
	outline: none;
}
.sr-only {
	position: absolute;
	clip: rect(1px, 1px, 1px, 1px);
	left: -9999px;
	top: -9999px;
}
p.just {
	text-align: justify;
	text-justify: inter-ideograph;        
}
br.brsp {
	display:none;   
}
@media (max-width: 767px) {
br.brsp {
	display:block;   
}
}
img{
	width: 100%;
}


.sml {
	font-size: 0.85em;
}

a {
    color: #ff9c79;
}



.fadeup {
	transition: all .5s ease-out;
	transform: translatey(1rem);
	opacity: 0;
	filter: blur(0.8rem);
}
 
.loaded .fadeup.started {
	transform: none;
	opacity: 1;
	filter: none;
}

.loaded .fade_list.started > li {
	transform: none;
	opacity: 1;
}
.fade_list > li {
	transform: translateY(1.5em);
	opacity: 0;
	transition: 0.8s ease;
}


.footer .copyright {
	font-weight: 500;
	color: #000;
	text-align: center;
}



/****************************************
	wovn
*****************************************/


.block--languages {
    position: fixed;
    right: 6rem;
    top: 1.6rem;
    z-index: 100;
}
body.body--app .block--languages{right: 15px;}
.wovn-languages {
	color: #121212;
	font-size: 10px;
	font-weight: 400;
	z-index: 5;
	cursor: pointer;
	transition: all 0.6s cubic-bezier(0.035, 0.675, 0.225, 1.025) 0.3s;
	position: relative;
}
.wovn-languages .icon {
	position: absolute;
	top: 50%;
	right: 15px;
	transform: translateY(-50%);
	width: 12px;
	height: 12px;
}
.wovn-languages .icon::before {
	content: "";
	display: block;
	width: 9px;
	height: 9px;
	position: absolute;
	bottom: 0;
	left: 0;
	border: 0px;
	border-bottom: solid 1px;
	border-right: solid 1px;
	transform: rotate(45deg);
	z-index: 10;
	transform-origin: right;
}
.wovn-languages .icon::after {
	content: "";
	display: block;
	width: 1px;
	height: 10px;
	position: absolute;
	left: 50%;
	top: 0;
	transform: translateX(-50%);
	background-color: #121212;
}
.wovn-languages .nav-switch_btn {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    justify-content: space-between;
    line-height: 1;
    border: 1px solid #ffffff66;
    background: linear-gradient(179deg, #ff0505ab, #c784009c);
    backdrop-filter: blur(40px);
    padding: 6px 10px;
    width: 58px;
    border-radius: 6px;
    color: #fff;
    box-shadow: 0 0 0.8rem inset #ec0207, 0 0 0.8rem #43000230;
}
.wovn-languages .nav-switch_btn .langIcon {
	display: block;
	width: 14px;
	height: 14px;
}
.wovn-languages .nav-switch_btn .langIcon svg {
    fill: #ffffff;
    width: inherit;
    height: inherit;
}
.wovn-languages .nav-switch_btn .nav-current {
	margin-left: 6px;
	text-transform: uppercase;
	font-size: 12px;
}
.wovn-languages .nav-switch_btn .nav-current:empty {
margin-left: initial;
}
.wovn-languages .nav-switch_btn:has(.nav-current:empty) {
width: -webkit-fit-content;
width: -moz-fit-content;
width: fit-content;
}
.wovn-languages .nav-dropdown {
position: absolute;
top: 50%;
right: 10px;
line-height: 1.4;
text-align: left;
font-size: 10px;
z-index: 2;
-webkit-transform: translateY(-50%);
		transform: translateY(-50%);
}
.wovn-languages .nav-dropdown .list--language {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    color: #ffffff;
}
.wovn-languages .nav-dropdown .list--language li {
width: 100%;
display: none;
cursor: pointer;
padding-bottom: 0;
line-height: 1.4;
padding: 0;
white-space: nowrap;
}
.wovn-languages .nav-dropdown .list--language li::after {
content: none;
}
.wovn-languages.visible::before {
margin-top: 0;
-webkit-transform: rotate(-135deg);
		transform: rotate(-135deg);
}
.wovn-languages.visible .nav-dropdown {
    opacity: 1;
    pointer-events: visible;
    z-index: 1;
    border: none;
    /* color: #121212; */
    top: 30px;
    left: 50%;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    background: transparent;
    background: #c40f0f7a;
    overflow: hidden;
    -webkit-box-shadow: 0 13px 30px -12px rgba(18, 18, 18, 0.3);
    box-shadow: 0 13px 30px -12px rgba(18, 18, 18, 0.3);
    border-radius: 6px;
    box-shadow: 0 0.8rem 1rem #450202b8;
    -webkit-backdrop-filter: blur(5px);
    backdrop-filter: blur(5px);
}
.wovn-languages.visible .nav-dropdown .list--language li {
	position: relative;
	display: block;
	-webkit-transition: opacity 0.4s;
	transition: opacity 0.4s;
	padding: 8px 8px 8px 24px;
}
.wovn-languages.visible .nav-dropdown .list--language li.selected {
	pointer-events: none;
	transition: none;
	color: #121212;
	background: #d0d0d0;
}
.wovn-languages.visible .nav-dropdown .list--language li.selected::after {
	content: "";
	position: absolute;
	display: block;
	top: 11px;
	left: 8px;
	width: 10px;
	height: 5px;
	border-left: 2px solid #121212;
	border-bottom: 2px solid #121212;
	transform: rotate(-45deg);
}
.wovn-languages.visible .nav-dropdown .list--language li:hover {
	opacity: 0.5;
}

.cc-color-override-1332973529.cc-window{
	color: #000!important;
	background-color: #fff!important;
	border: 1px solid #000;
	padding: 2vw!important;
	width: 97%!important;
	max-width: 1180px;
	margin: 0 auto;
	bottom: 1.5vw!important;
	box-shadow: 0 13px 13px -8px rgba(0, 0, 0, 0.168627451)!important;
	left: 1.5%!important;
	font-size: 14px;
	padding: 2vw;
}
body .cc-color-override-1332973529 .cc-btn{
	color: #fff;
	border-color: transparent;
	background-color: #000;
	line-height: 2.2;
	border-radius: 4em;
	letter-spacing: 0.1em;
	font-size: 13px;
	padding: 0.5em 1em;
}
body .cc-color-override-1332973529 .cc-btn{transition: background .4s,color .4s;}
body .cc-color-override-1332973529 .cc-link {
    display: block;
	transition: opacity .4s;
}


@media screen and (max-width: 960px) {

.block--languages {
    right: 5.5rem;
}

}


/****************************************
	ビジュアル
*****************************************/

.bgBox {
    position: fixed;
    width: 100%;
    height: 100%;
    height: 100svh;
    top: 0;
    left: 0;
    z-index: -1;
    background: url(/static/vaundy/fanclub/feature/asiatour2026/img/ph_kv_asia_R6mBdcCX.jpg);
    background-size: cover;
    background-position: 50% 70%;
    min-height: 50vw;
}


.visual {
	margin: 0;
	position: relative;
	height: 100svh;
	overflow: hidden;
}

.visual .visualInner {
	max-width: 190vh;
	position: relative;
	height: 100%;
	margin: 0% auto 0;
}
.scrolled .visual .visualInner {
}

.main_visual {
}

.loaded .main_visual {
}

.visual_title {
    width: 50%;
    position: fixed;
    top: 8%;
    transform: translateX(-50%);
    line-height: 0;
    left: 50%;
}

.loaded  .visual_title {
}


.logo_vaundy {
    mix-blend-mode: overlay;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 80%;
}

.scroll {
	display: block;
	width: 1px;
	height: 5rem;
	position: absolute;
	bottom: 2rem;
	right: 3.5%;
	z-index: 10;
	text-decoration: none;
	text-align: center;
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease 1.8s;
	opacity: 0;
}

.loaded .scroll {
	opacity: 1;
}

.scroll:after {
	content: "";
	position: absolute;
	height: 0;
	width: 1px;
	top: 0px;
	left: 0;
	right: 0;
	margin: auto;
	display: block;
	background: #ffffff;
	-webkit-animation: scroll 2s linear 1.7s infinite;
	animation: scroll 2s linear 1.7s infinite;
}
.scroll::before {
	content: 'SCROLL';
	position: absolute;
	bottom: 0;
	right: 1em;
	font-size: 1.1em;
	font-family: meno-display, serif;
	font-weight: 600;
	line-height: 1;
	letter-spacing: 0.01em;
}

  @-webkit-keyframes scroll {
	0%{ height: 0; top: 0; bottom: auto; opacity: 1; }
	35%{ opacity: 1; }
	46% { height: 100%; top: 0; bottom: auto; }
	50% { height: 100%; bottom: 0; top: auto; }
	54% { height: 100%; bottom: 0; top: auto; }
	100% { height: 0; bottom: 0; top: auto;}
  }
  @keyframes scroll {
	0%{ height: 0; top: 0; bottom: auto; opacity: 1; }
	35%{ opacity: 1; }
	46% { height: 100%; top: 0; bottom: auto; }
	50% { height: 100%; bottom: 0; top: auto;}
	54% { height: 100%; bottom: 0; top: auto;}
	100% { height: 0; bottom: 0; top: auto; }
  }


.anker_list {
    display: flex;
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 100;
    transition: 0.3s;
}

.scrolled .anker_list {
}

.anker_list > li {
    width: calc(100% / 6);
}
.anker_list > li a {
    display: block;
    padding: 1rem;
    color: #fff;
    text-decoration: none;
    text-align: center;
    font-family: brother-1816, sans-serif;
    font-weight: 700;
    letter-spacing: 0.02em;
    height: 4rem;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: 0.3s;
    position: relative;
    border-radius: 2rem 2rem 0 0;
    overflow: hidden;
}

.anker_list > li a::before {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: -1;
    background: linear-gradient(180deg, #ef7827, #f70000);
    box-shadow: 0 0 0.8rem inset #ec0207, 0 0 0.8rem #43000230;
    transition: 0.3s;
    opacity: 0;
}

.anker_list > li.current a::before {
    opacity: 1;
}

.anker_list::before {
    content: '';
    display: block;
    width: 100%;
    height: 8rem;
    position: fixed;
    background: linear-gradient(180deg, transparent 0%, #0000005c);
    bottom: 0;
    left: 0;
    z-index: -1;
}

body:not(.schedule_mode) .anker_list > li a::before {
    opacity: 0;
}


/****************************************
	メニュー
*****************************************/

#gNav {
    position: fixed;
    right: 0;
    box-sizing: border-box;
    top: 0;
    padding: 0;
    z-index: 999;
    width: 100%;
    height: 100vh;
    height: 100dvh;
    transform: translateX(100%);
    transition: 0.5s;
    background: linear-gradient(-45deg, #310202, #e4301d);
    background-position: 100% 0;
    box-shadow: 0 0 2rem #0000006e;
}

#gNav.open {
	transform: none;
}

#gNav .gnavMenu {
}

#gNav .gnavMenu > li {
    margin-bottom: 1.5rem;
}

#gNav .gnavMenu > li:last-child {
    margin-bottom: 0;
}


#gNav a {
    display: block;
    text-decoration: none;
    font-size: 2.2em;
    width: fit-content;
    color: #fff;
    font-family: brother-1816, sans-serif;
    font-weight: 700;
    line-height: 1.3;
}
#gNav a.submenu {
    font-size: 1.3rem;
    margin-bottom: 0.2rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

#gNav a.submenu::before {
    content: '';
    display: block;
    width: 2rem;
    border-bottom: 1px solid;
}

.gNav_logo {
	width: 45%;
	margin: 0 auto 40px;
	line-height: 0;
	max-width: 250px;
}


.gNavInr {
    margin: auto;
    display: flex;
    flex-direction: column;
    justify-content: center;
    box-sizing: border-box;
    width: 100%;
    height: 100%;
    padding: 3rem;
}

#gNav .menu {
	display: -webkit-flex;
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
	margin: auto;
}
#gNav .menu li a {
	display: block;
	color: #fff;
	font-size: 1.3vw;
	letter-spacing: 0.05em;
}
#gNav .menu li a.off {
	opacity: 0.5;
	pointer-events: none;    
}


#menuButton {
    display: block;
    width: 4rem;
    height: 4rem;
    position: fixed;
    top: 0.5rem;
    right: 0.5rem;
    z-index: 9999;
    border: none;
    text-decoration: none;
    opacity: 1;
    background: #000;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(180deg, #ef7827, #f70000);
    box-shadow: 0 0 0.8rem inset #ec0207, 0 0 0.8rem #43000230;
    border-radius: 1rem;
}

#menuButton .menuInner {
    width: 65%;
    position: relative;
}

#menuButton span:first-child {
    top: -10px;
}
#menuButton span:nth-child(3) {
    top: 10px;
}

#menuButton.active span {
}
#menuButton.active span:first-child {
    transform: rotate(45deg);
    top: 0;
}
#menuButton.active span:nth-child(2) { opacity: 0;} 
#menuButton.active span:nth-child(3) {
    transform: rotate(-45deg);
    top: 0;
}

#gNav .menu {
	display: -webkit-flex;
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
	width: 40%;
	margin: 40px auto;
}

#menuButton span {
    display: block;
    background: #ffffff;
    width: 100%;
    height: 0px;
    border-bottom: 1px solid #ffffff;
    position: absolute;
    -webkit-transition: all 0.4s;
    transition: all 0.4s;
    left: 0;
    top: 50%;
}



.inBox{
	width: 80%;
	margin: auto;
	position: relative;
	max-width: 80rem;
	z-index: 1;
}
h2 {
    text-align: center;
    font-size: 6.5em;
    position: relative;
    line-height: 1;
    z-index: 1;
    padding: 0 0%;
    margin: 0 auto 6rem;
    font-family: 'brother-1816';
    font-weight: 700;
    font-style: normal;
}

h2 p {
	position: relative;
	transition: 0.5s ease;
}

h2.started p {
}

h2 .sub_tit {
    font-size: 0.25em;
    letter-spacing: 0.3em;
    font-weight: 800;
    line-height: 1.5;
    text-indent: 0.3em;
}



#attention {
    background: #67291c1f;
}

.attentionList li {
	font-size: 0.85em;
	text-indent: -1em;
	margin: 0 0 0.2em 1em;
	line-height: 1.6;
}
.attentionList li:last-child {
	margin-bottom: 0;
}

.attentionList li.sml {
	font-size: 0.85em;
}

.attentionList.attentionList_mb > li {
	margin-bottom: 0.8em;
}
.attentionList.attentionList_mb > li:last-child {
	margin-bottom: 0;
}

#attention .txt--sub {
	font-size: .8em;
}

.attentionBox > dt {
	font-weight: 600;
	margin-bottom: 0.5em;
}

.footer_box {
    width: 100%;
    padding: 6rem 2rem;
    background: #9a1d1b;
}
.copy {
	text-align: center;
	font-size: 0.7em;
	font-weight: 500;
}




/****************************************
	概要
*****************************************/

.contents {
	position: relative;
	padding: 8.5em 0;
	overflow: hidden;
}

.detailArea {
	background-position: top;
	background-size: auto;
	overflow: hidden;
}


.detailBox{
}

.detailBox:last-child {
	margin-bottom: 0;
}


.general_box {
    position: relative;
    padding: 4rem 5rem;
    background: #fff;
    margin-bottom: 4rem;
    border-radius: 1rem;
    color: #2b2a28;
}

.general_box:last-child {
margin-bottom: 0;
}

.general_box_tit {
	text-align: center;
	font-size: 1.5em;
	font-weight: 800;
	margin-bottom: 1.5em;
	letter-spacing: 0.1em;
	text-indent: 0.1em;
	color: #ff6c00;
	border-bottom: 1px solid;
	padding-bottom: 1.5rem;
}

.general_txt {
	font-size: 1.1em;
	margin-bottom: 1.2em;
	line-height: 1.8;
	font-weight: 600;
}

.general_txt:last-child {
	margin-bottom: 0;
}





.detail_txt {
	font-size: 15px;
	margin-top: 30px;
	text-align: center;
}


.detailBox_tit {
	margin-bottom: 15px;
	position: relative;
	width: 70%;
	line-height: 0;
}

.general_flex {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 2rem;
}

.general_flex:last-child {
	margin-bottom: 0;
}

.fc_ph {
    line-height: 0;
    margin-bottom: 1.5rem;
}

.general_flex .fc_ph {
	width: 37%;
	line-height: 0;
}
.general_flex .general_flex_txt {
	width: 60%;
}


.link{
	color: #f8bb00;
	font-size: 12px;
}
.link:hover{
transition: 0.4s;
	opacity: 0.7;
}


.btn a {
    max-width: 27rem;
    padding: 1.5em 2.5em;
    display: block;
    box-sizing: border-box;
    font-weight: bold;
    margin: 0 auto 1.2em;
    font-size: 1.2em;
    line-height: 1.4;
    height: auto;
    transition: 0.4s;
    text-decoration: none;
    text-align: center;
    background: #e62828;
    position: relative;
    color: #ffffff;
    border: 1px solid #e62828;
    background: linear-gradient(180deg, #ef7827, #f70000);
    box-shadow: 0 0 0.8rem inset #ec0207, 0 0 0.8rem #43000230;
    border-radius: 1rem;
}
.btn a:hover {
    filter: brightness(1.3);
}


.btn a .btn_txt {
	position: relative;
	z-index: 1;
}

.btn:last-child a {
	margin-bottom: 0;
}

.btn a::before {
	content: '\f054';
	position: absolute;
	top: 50%;
	right: 1.28em;
	font: normal normal normal 14px/1 FontAwesome;
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
	line-height: 0;
	z-index: 1;
}


.btn.hide a {
	background: #a4a4a4;
	color: #dedede;
    box-shadow: none;
	pointer-events: none;
	border: none;
}
.btn.end a {
    background: #a4a4a4;
    color: #dedede;
    box-shadow: none;
    border: none;
}

.btn_list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 15px;
}

.btn_list > li {
	width: 47%;
	margin: 0 10px 20px;
}

.btn_list > li .btn a {
	max-width: none;
}

.attentionList li a {
	text-decoration: underline;
}


.btn.fc_btn a {
}

.btn a .min {
	font-size: 0.75em;
	margin-left: 0.5em;
}

.btn.btn_entry a {
    background: #000000;
    color: #ff6c00;
    border: none;
}


.innerWrap {
	width: 76%;
	margin: 0 auto;
	position: relative;
}


#schedule {
	padding: 0;
}

#schedule .innerWrap {
	margin: 0 auto;
	position: relative;
}

.schedule_inner {
	position: relative;
	padding: 8.5em 0;
	background-size: cover;
	z-index: 1;
}

.schedule_inner:nth-of-type(odd) {
    background: linear-gradient(-45deg, #310202, #b31d0d);
}

.schedule_inner:nth-of-type(even) {
    background: linear-gradient(45deg, #310202, #b31d0d);
}

#schedule .schedule_table {
    background: #ffffff21;
    padding: 3rem;
    border-radius: 1rem;
}

#schedule table {
	width: 100%;
	border-bottom: 1px solid;
	margin: 0 auto;
	text-align: left;
	border-collapse: collapse;
	border-spacing: 0;
	letter-spacing: 0.02em;
	font-size: 0.98em;
}

#schedule tr {
	position: relative;
}

#schedule tr:first-child th {
	padding-bottom: 1em;
	padding-top: 0;
	font-family: brother-1816, sans-serif;
	font-weight: 700;
	font-size: 1.1em;
	line-height: 1;
}

#schedule td {
	border-top: 1px solid;
	vertical-align: middle;
	padding: 1.5rem 0;
	position: relative;
	font-weight: 500;
}


#schedule .soldout td.date::before {
	content: 'SOLD \A OUT!!';
	position: absolute;
	left: -44px;
	white-space: pre;
	color: #E6E691;
	font-family: 'Caveat', cursive;
	line-height: 1;
	top: 18px;
	transform: rotate(-9deg);
	font-size: 16px;
}


#schedule .date {
	width: 20%;
}

#schedule .date .week {
	font-size: 0.5em;
	margin-left: 5px;
}

#schedule .area {
	width: 12%;
	padding: 0 1.3rem;
	text-align: center;
}
#schedule .venue {
	width: 35%;
	line-height: 1.5;
	padding: 1rem 1.5rem;
}
#schedule td.venue {
	font-weight: 600;
	font-size: 1.1em;
}
#schedule .venue a {
	transition: 0.3s;
}
#schedule .venue a:hover { opacity: 0.5;}

#schedule .venue a i {
	margin-left: 5px;
	font-size: 12px;
}

#schedule .venue_info {
	font-size: 0.85em;
	line-height: 1.55;
}


#schedule .venue_info .info_tit {
	border-left: 3px solid;
	padding-left: 0.3em;
	display: inline-block;
	margin-bottom: 0.3em;
}

#schedule .venue_info a {
    text-decoration: none;
}
#schedule .info {
	width: 25%;
}

#schedule .time {
	width: 20%;
}

#schedule .time span { display: block; padding: 7px 0 0 0;}


#schedule .general {
	width: 10%;
	padding: 5px;
	text-decoration: none;
}
#schedule .general .week { font-size: 12px;  margin-left: 5px; font-family: sans-serif;}

#schedule td.date {
	font-weight: bold;
	font-size: 2.7em;
	font-family: brother-1816, sans-serif;
	line-height: 1.2;
	letter-spacing: -0.02em;
}

#schedule td.date .year {
	writing-mode: sideways-rl;
	font-size: 0.38em;
	letter-spacing: -0.03em;
	vertical-align: -1px;
}

#schedule td.time {
	font-size: 1.2em;
	font-family: brother-1816, sans-serif;
	font-weight: 600;
	line-height: 1;
}
#schedule td.area {
	font-weight: 600;
	font-size: 1.1em;
}


#schedule td.date .new {
    font-size: 0.8rem;
    width: 4rem;
    height: 2.7rem;
    position: absolute;
    background: #ffffffcc;
    display: flex;
    align-items: center;
    justify-content: center;
    top: 0.4rem;
    left: -2rem;
    border-radius: 50%;
    letter-spacing: -0.02em;
    color: #e62828;
    line-height: 1.1;
    transform: rotate(-10deg);
    border: 1px solid;
}


#ticket {
    background: linear-gradient(-45deg, #310202, #b31d0d);
}

#ticket h2 p {
}


#ticket .price {
    list-style: none;
    margin: 0 auto 6rem;
    width: 70%;
}
#ticket .price > li {
    display: flex;
    justify-content: space-between;
    padding: 2rem 0;
    border-bottom: 1px solid;
    flex-wrap: wrap;
    align-items: center;
    line-height: 1.4;
}
#ticket .price > li:first-child {
	border-top: 1px solid;
}
#ticket .price > li h5 {
    font-size: 1.3em;
    font-weight: bold;
    width: 40%;
    letter-spacing: 0.1em;
    padding-right: 2rem;
}
#ticket .price > li h5 .sml {
    font-size: 0.7em;
    letter-spacing: 0.02em;
}

#ticket .price > li .price_info {
    width: 60%;
    padding-left: 2rem;
    text-align: right;
    border-left: 1px dashed;
}

#ticket .price > li .price_txt {
    font-size: 2.5em;
    letter-spacing: 0.1em;
    font-weight: bold;
    margin-bottom: 0.5rem;
    line-height: 1;
    font-family: 'brother-1816';
    letter-spacing: 0.05em;
}
#ticket .price > li .price_txt:last-child {
	margin-bottom: 0;
}

#ticket .price > li .price_txt .sml {
    font-size: 0.45em;
}

#ticket .price > li .price_txt .sml.price_note {
    display: inline-block;
    text-indent: -1.2em;
    padding-left: 1.2em;
    line-height: 1.6;
}

#ticket .price > li .price_txt + .attentionList {
	border-top: 1px dotted;
	padding-top: 1.2rem;
	font-size: 0.95em;
}

#ticket .note {
	font-size: 14px;
	font-weight: bold;
}

#ticket .price_kind {
	display: inline-block;
	background: #ffffff;
	font-size: 0.75em;
	padding: 0 0.65em;
	margin-bottom: 0.4em;
	color: #2d2d2d;
	letter-spacing: 0.05em;
	font-weight: bold;
}

#ticket .txt--notice {
	color: #ff0000;
	font-size: 1.4em;
	text-align: center;
}

.accordion {
    margin-bottom: 1rem;
    position: relative;
    border-radius: 1rem;
    overflow: hidden;
    box-shadow: 0 0 0.8rem #43000230;
}
.accordion:last-child {
	margin-bottom: 0;
}

dl.accordion dt {
    cursor: pointer;
    position: relative;
    padding: 2.4rem 6rem 2.4rem 3.5rem;
    font-size: 1.3em;
    color: #ffffff;
    background: linear-gradient(180deg, #ef7827, #f70000);
    box-shadow: 0 0 0.8rem inset #ec0207;
}

dl.accordion dt .end {
    font-size: 0.8em;
}

dl.accordion dt .past {
	display: inline-block;
	margin: 0 0 0 10px;
	border-radius: 100px;
	font-size: 80%;
	background: #4a5058;
	color: #FFF;
	line-height: 1em;
	padding: 5px 15px 4px;
	vertical-align: 1px;
}
dl.accordion dt .type {
	display: inline-block;
	margin: 0 10px 0 0;
	font-size: 80%;
	background: #ffffff;
	color: #081427;
	line-height: 1em;
	padding: 5px 15px 4px;
	vertical-align: 1px;
	font-weight: bold;
}

dl.accordion dd {
    padding: 3.5rem;
    display: none;
    background: #0000005c;
    color: #ffffff;
}

.accordion dt::before, .accordion dt::after {
	content: "";
	display: block;
	width: 1rem;
	height: 0px;
	border-top: 2px solid;
	position: absolute;
	top: 50%;
	right: 2.7rem;
	transition: all 0.3s ease-out;
	z-index: 1;
}

.accordion dt::after {
	transform: rotate(90deg);
}

.accordion.on dt::after {
	transform: translateY(-50%) rotate(0deg);
	opacity: 0;
}

.accordion.open dd {
	display: block;
}


.ticketInfo {
	width: 100%;
	margin-bottom: 3rem;
}
.ticketInfo:last-child {
	margin-bottom: 0;
}

.ticketInfo_desc .target_wrap {
    display: flex;
    flex-wrap: wrap;
    border-bottom: 1px solid;
    position: relative;
    align-items: center;
}

.ticketInfo_desc .target_wrap:last-child {
	margin-bottom: 0;
}

.ticketInfo_target {
	width: 10em;
	font-weight: bold;
	padding: 1.5rem 0;
	position: relative;
}

.ticketInfo_target::after {
	content: '';
	display: block;
	width: 1px;
	height: calc(100% - 2rem);
	border-left: 1px solid;
	position: absolute;
	top: 1rem;
	right: 0;
}

.ticketInfo_target_desc {
    width: calc(100% - 10em);
    padding: 1.5rem 0 1.5rem 2rem;
    line-height: 1.6;
}

.ticketInfo_desc.desc_large .ticketInfo_target {
    width: 17rem;
}
.ticketInfo_desc.desc_large .ticketInfo_target_desc {
	width: calc(100% - 17rem);
}


.ticketInfo_desc .target_wrap:first-child {
	border-top: 1px solid;
}

.ticketAttention {
	margin-bottom: 3rem;
}

.ticketBox_inner {
	margin-bottom: 7rem;
}
.ticketBox_inner:last-child {
	margin-bottom: 0;
}

.fc_entry.accordion {
	padding: 4rem;
}

.logo_fc {
	line-height: 0;
	width: 57%;
	margin: 0 auto 3rem;
}

.btn.fc_entry a {
	background: #fff;
	box-shadow: none;
	color: #081427;
}

.btn.fc_entry a::after {
	display: none;
}


.cs {
	font-size: 0.9rem;
	font-weight: 600;
	padding: 2rem 0.5rem;
}



.btn.fc_entry.btn_contact a {
	font-size: 1em;
	letter-spacing: 0.01em;
}


section#movie {
}

.iframe_wrap {
	padding-top: 56.25%;
	height: 0;
	position: relative;
}
.iframe_wrap iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}


section#vaws {
    background: #ff6c00;
}

.logo-fc {
	width: 40%;
	margin: 0 auto 2rem;
	line-height: 0;
}
.fc_tit_entry {
	text-align: center;
	font-size: 2em;
	font-weight: 800;
	text-indent: 0.4em;
}
.fc_title {
	margin-bottom: 4rem;
}

.fc_icon {
	position: absolute;
	width: 12rem;
	top: -3rem;
	right: -3rem;
	transform: rotate(12deg);
}

.general_box .ticketInfo_desc .target_wrap {
    align-items: normal;
}

.attr_box {
    background: #fff;
    color: #000000;
    padding: 2.5rem;
    margin-bottom: 2rem;
    border-radius: 1rem;
}
.attr_box:last-child {
	margin-bottom: 0rem;
}

.attr_tit {
	margin-bottom: 1rem;
	font-size: 1.1em;
	font-weight: bold;
	border-left: 3px solid #fc7204;
	padding-left: 0.6em;
}

.attr_box .attentionList {
	margin-bottom: 1.5rem;
}
.attr_box .attentionList:last-child {
	margin-bottom: 0rem;
}

.attr_box .attentionList > li {
	font-size: 0.9em;
	letter-spacing: 0.03em;
}
.attr_box .attentionList .sml {
	font-size: 0.85em;
}

.attr_txt {
	margin-bottom: 1rem;
	letter-spacing: 0.03em;
	font-size: 0.9em;
}
.attr_txt:last-child {
	margin-bottom: 0rem;
}

.attr_box .contact_box .attentionList > li {
	font-size: 0.85em;
	margin-bottom: 0.1em;
}

.contact_box {
	background: #ebebeb;
	padding: 1.5rem 2rem;
	margin-bottom: 2px;
}

.contact_txt {
	font-size: 0.85em;
	margin-bottom: 0.5em;
}
.contact_txt:last-child {
	margin-bottom: 0em;
}
.contact_tit {
	font-weight: bold;
	margin-bottom: 0.2rem;
	font-size: 1.03em;
}

.attr_box a {
	word-break: break-all;
}


.accordion_arc {
	margin-bottom: 2rem;
}
.accordion_arc:last-child {
	margin-bottom: 0;
}

.accordion_arc > dt {
	font-weight: bold;
	font-size: 1.2em;
	position: relative;
	border-bottom: 1px solid;
	padding: 1.2rem 0;
	cursor: pointer;
}

.accordion_arc > dd {
	display: none;
	padding-top: 2rem;
}

.accordion_arc > dt::before, .accordion_arc > dt::after {
	content: "";
	display: block;
	width: 1rem;
	height: 0px;
	border-top: 2px solid;
	position: absolute;
	top: 50%;
	right: 0;
	transition: all 0.3s ease-out;
	z-index: 1;
}

.accordion_arc > dt::after {
	transform: rotate(90deg);
}

.accordion_arc.on > dt::after {
	transform: translateY(-50%) rotate(0deg);
	opacity: 0;
}

.accordion_arc.arc_visible > dt {
    pointer-events: none;
    cursor: auto;
}
.accordion_arc.arc_visible > dt::before, .accordion_arc.arc_visible > dt::after {
    display: none;
}
.accordion_arc.arc_visible dd {
    display: block;
}

.no_ind {
	text-indent: 0 !important;
	margin-left: 0 !important;
}

.red {
	color: #e62828;
}
.bold {
	font-weight: bold;
}


.inner_box {
	margin-bottom: 3rem;
}
.inner_tit {
	border-left: 0.2em solid;
	padding-left: 0.6em;
	font-weight: bold;
	line-height: 1.5;
	font-size: 1.15em;
	margin-bottom: 0.5em;
}
.inner_txt {
	margin-bottom: 1.5rem;
}
.inner_txt:last-child {
	margin-bottom: 0;
}

.stage_table {
	border-top: 1px solid #ffffffde;
}

.stage_list {
	display: flex;
	flex-wrap: wrap;
	border-bottom: 1px solid #ffffffde;
	border-left: 1px solid #ffffffde;
}

.stage_list > li {
	width: calc(100% / 7);
	text-align: center;
	padding: 1.5em 1.25em;
	line-height: 1.5;
	border-right: 1px solid #ffffffde;
}
.stage_list > li:first-child {
}



.stage_list > li .stage_cnt {
	display: inline-block;
	font-size: 0.7em;
	width: 100%;
}

.stage_list:first-child {
	color: #fff302;
	font-family: brother-1816, sans-serif;
	font-weight: 700;
	letter-spacing: 0;
	font-size: 1.3em;
}
.stage_list:first-child > li {
	line-height: 1;
	padding: 1em;
}
.stage_list > li.stage_flag {
	display: flex;
	align-items: center;
	justify-content: center;
}

.stage_list > li:nth-of-type(2) {
	background: #51d3e7;
}
.stage_list > li:nth-of-type(3), .stage_list > li:nth-of-type(4) {
	background: #fb7401;
}
.stage_list > li:nth-of-type(5), .stage_list > li:nth-of-type(6) {
	background: #fc091d;
}
.stage_list > li:nth-of-type(7) {
	background: #04ad3a;
}

.stage_list.stage_tit > li {
	width: 100%;
	background: #f6f5f3;
	color: #2a2a2a;
	font-weight: bold;
	font-size: 1.2em;
	line-height: 1;
	padding: 1rem;
}

.method_list > li {
	display: flex;
	flex-wrap: wrap;
	background: #ffffff1f;
	margin-bottom: 2px;
}

.method_list > li .method_area {
	width: 28%;
	line-height: 0;
}
.method_list > li .method_txt {
	width: 72%;
	padding: 1rem 1.6rem;
	display: flex;
	align-items: center;
}


.inner_txt.upgrade_notice {
    background: #000;
    color: #fff;
    padding: 2.5rem;
    margin-bottom: 2rem;
    font-size: 1.1rem;
}

.upgradeinfo img {
    pointer-events: none;
}




.goods_img {
    line-height: 0;
    margin-bottom: 3rem;
}

.goods_img:last-child {
    margin-bottom: 0;
}


#contact {
    background: linear-gradient(-45deg, #310202, #b31d0d);
}

/****************************************

	PC

*****************************************/

@media screen and (min-width: 960px) {
.sp{
	display:none!important;  
}

#gNav {
    width: 30rem;
}

.anker_list > li a:hover::before {
    opacity: 1 !important;
}

}





/****************************************

	SP

*****************************************/

@media screen and (max-width: 960px) {

html {
	font-size: clamp(10px, 3.5vw, 2.5vh);
}

.pc{
	display:none!important;  
}

.btn a {
	font-size: 1.05rem;
}

.nav_logo {
	width: 35%;
	margin: 0 auto 3rem;
}

.bgBox {
    min-height: 110vw;
}

#gNav .gnavMenu > li {
    margin-bottom: 1.2rem;
}

#gNav a {
    display: block;
    font-size: 2.3rem;
    margin-bottom: 0.2em;
    line-height: 1.2;
    letter-spacing: 0;
}

.gNavInr {
	padding: 8%;
}


/****************************************
	SP ビジュアル
*****************************************/


.main_visual {
	width: 45%;
}

.visual {
}


.visual h1 .main_visual {
	width: 100%;
}

.visual_title {
    width: 80%;
    top: 21%;
}

.logo_vaundy {
    width: 100%;
    mix-blend-mode: plus-lighter;
    opacity: 0.5;
    top: 6rem;
}

.visual_copy {
	width: 94%;
	left: 3%;
	top: 3%;
}

.scroll {
	display: block;
	position: absolute;
	bottom: 0%;
	left: 8%;
	height: 15%;
}

.scroll::before {
	width: 62px;
	text-align: center;
	content: 'Scroll';
	bottom: 9px;
	left: 0;
}

.scroll:after {
	width: 1px;
}

.anker_list {
    width: 100%;
    display: block;
    bottom: 1.5rem;
    left: 0.6rem;
    z-index: 1;
}
.anker_list::before {
    display: none;
}

.anker_list > li {
    width: fit-content;
}

.anker_list > li a {
    padding: 0.3rem 0.8rem;
    height: auto;
    text-align: left;
    display: block;
}
.anker_list > li a img {
	max-width: 9rem;
}

.scrolled .anker_list {
    display: none;
}

h2 {
	font-size: 3.2em;
	margin-bottom: 3rem;
	letter-spacing: 0;
}

h2 .sub_tit {
    font-size: 0.35em;
}

h2 .tit_area {
	font-size: 1.3rem;
}

h2 p {
}

.inBox {
	width: 90%;
	margin: auto;
	position: relative;
	z-index: 1;
}

.contents {
	padding: 5rem 0;
}

.attentionList li {
	font-size: 11px;
}

.general_box_tit {
	margin-bottom: 1.5rem;
	line-height: 1.5;
	font-size: 1.2em;
	padding: 0 6% 1.5rem;
}

.general_box {
	margin-bottom: 2rem;
	padding: 2rem 1.2rem;
}

.general_flex .fc_ph {
	width: 100%;
	margin-bottom: 1.2rem;
}
.general_flex .general_flex_txt {
	width: 100%;
}

.general_txt {
	font-size: 1em;
	line-height: 1.7;
	margin-bottom: 0.8rem;
}

.general_flex {
	margin-bottom: 1.5rem;
}


.logo-fc {
	width: 50%;
	margin: 0 auto 1rem;
}

.fc_title {
	margin-bottom: 2.5rem;
}

.fc_tit_entry {
	font-size: 1.3em;
}

.fc_icon {
	width: 6.5rem;
	top: -2.5rem;
	right: -2rem;
}

.schedule_inner {
	padding: 5rem 0;
	background-repeat: repeat;
}

#schedule .schedule_table {
	padding: 1.5rem;
}


#schedule tr:first-child th {
	font-size: 0.8em;
	line-height: 1.4;
}

#schedule .date {
	width: 100%;
}
#schedule .time {
	width: 100%;
}
#schedule .venue {
	width: 100%;
}
#schedule .area {
	width: 15%;
}
#schedule .info {
	width: 100%;
}

#schedule tr {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	border-top: 1px solid;
	padding: 1rem 0;
	align-items: flex-start;
}
#schedule tr:first-child {
	display: none;
}

#schedule td.date {
	font-size: 2.6em;
	letter-spacing: 0;
	padding: 0;
}

#schedule .date .week {
	font-size: 0.75em;
}

#schedule td.time {
	font-size: 1.1em;
	line-height: 1.2;
	letter-spacing: -0.02em;
	padding: 0 0 0.5em;
}

#schedule td {
	padding: 0;
	display: block;
	border: none;
}

#schedule td.area {
	padding: 0.1em 0.2rem;
	text-align: center;
	font-size: 0.85em;
	background: #000000;
	color: #e62828;
}
#schedule td.venue {
	font-size: 1.4em;
	padding: 0;
}
#schedule td .venue_place {
	width: 100%;
	padding-right: 0;
	margin-bottom: 0.5em;
	font-size: 0.92em;
}
#schedule .venue_con {
	width: 100%;
	font-size: 0.8em;
	opacity: 0.8;
}
#schedule .venue {
	padding-left: 0;
}
#schedule td.date .new {
    top: -1.2rem;
    left: -2rem;
    display: inline-block;
    height: auto;
    text-align: center;
    margin-left: 0.7rem;
    padding: 0.6em 0.7em;
    width: auto;
    vertical-align: 3px;
    font-size: 0.9rem;
}
#schedule #schedule_tokyo .day-one .venue_info, #schedule #schedule_osaka .day-one .venue_info {
	display: none;
}


#ticket .price > li {
    padding: 1.2rem 1rem;
}

#ticket .price > li h5 {
    width: 100%;
    border: none;
    font-size: 1.1em;
    margin-bottom: 0.2em;
    padding: 0;
}
#ticket .price > li .price_info {
    width: 100%;
    border: none;
    padding: 0;
    text-align: left;
}

#ticket .price > li .price_txt {
    line-height: 1.2;
    font-size: 2.4em;
    margin-bottom: 0.1rem;
}
#ticket .price > li .price_txt + .attentionList {
	border-top: 1px dotted #ffffff4d;
}
#ticket .price > li .price_txt .sml.price_note {
    letter-spacing: 0.02em;
    font-size: 0.58em;
}

#ticket .price {
    margin-bottom: 3rem;
    width: 100%;
}

#ticket .txt--notice {
	font-size: 1em;
}

.accordion {
    margin-bottom: 1.2rem;
}
.accordion::before {
	bottom: -5px;
	right: -5px;
}

dl.accordion dt {
	padding: 1.3rem 3.4rem 1.3rem 1.5rem;
	font-size: 1.1em;
	line-height: 1.6;
}

dl.accordion dd {
	padding: 1.3rem 1.5rem 1.9rem 1.5rem;
}

.accordion dt::before, .accordion dt::after {
	right: 0.96em;
}

dl.accordion dt .type {
	font-size: 0.9em;
	padding: 5px 10px 4px;
}

.ticketInfo_target {
	width: 7em;
	padding: 1.2rem 0.8em 1.2rem 0;
}

.ticketInfo_target_desc {
	width: calc(100% - 7em);
	padding: 1.2rem 0 1.2rem 1rem;
	line-height: 1.6;
}

.ticketInfo_desc.desc_large .ticketInfo_target {
    width: 100%;
    padding: 1rem 0 0.2rem;
}
.ticketInfo_desc.desc_large .ticketInfo_target::after {
    display: none;
}
.ticketInfo_desc.desc_large .ticketInfo_target_desc {
    width: 100%;
    padding: 0 0 1rem;
}

.ticketInfo_desc .target_wrap {
	font-size: 0.92em;
}
.ticketInfo {
	margin-bottom: 1.5rem;
}

.ticketAttention {
	margin-bottom: 1.5rem;
}

.ticketBox_inner {
	margin-bottom: 3rem;
}

.inner_txt.upgrade_notice {
    padding: 1.5rem;
    margin-bottom: 1.5rem;
}

.fc_entry.accordion {
	padding: 2rem;
}

.logo_fc {
	width: 70%;
	margin: 0 auto 2rem;
}


.goods_img {
    margin-bottom: 1.5rem;
}

.link:hover{
opacity: 1;
}


.cs {
	padding: 1rem 0.5rem;
	font-size: 1.2rem;
}

.copy {
	text-align: center;
	font-size: 1em;
	writing-mode: initial;
	display: block;
	width: 100%;
	font-size: 0.7rem;
}


.btn.btn_sub a {
	font-size: 1em;
	padding: 1.2em;
	width: 17em;
}

.btn.btn_w a {
	box-shadow: 3px 3px 0 #fff;
	font-size: 1.3em;
}

.footer_box {
    text-align: center;
    padding: 2rem;
}



.btn.btn_bnr {
	margin-bottom: 3em;
}

.footer_logo {
	width: 200px;
	height: 33px;
}

body:not(.page--home) .footer .copyright {
	text-align: center;
	padding-top: 0;
}


.innerWrap {
	width: 90%;
}

.attr_box {
	padding: 1.5rem;
	margin-bottom: 1.5rem;
}

.contact_box {
	padding: 1.3rem;
}


.accordion_arc > dt {
	font-size: 1em;
	padding: 1.2rem 1.2rem 1.2rem 0;
}

.accordion_arc {
	margin-bottom: 1rem;
}

.inner_box {
	margin-bottom: 1.5rem;
}
.inner_tit {
	font-size: 1.1em;
	margin-bottom: 0.5rem;
}
.inner_txt {
	font-size: 0.9em;
}

.stage_table_wrap {
	overflow-x: scroll;
}

.stage_table {
	min-width: 540px;
}

.stage_list:first-child {
	font-size: 1.1em;
}
.stage_list:first-child > li {
	padding: 0.7em;
}
.stage_list > li {
	padding: 1em;
}

.stage_list.stage_tit > li {
	text-align: left;
	font-size: 1.1em;
	padding: 1rem 1.3rem;
}

.method_list > li .method_area {
	width: 100%;
}
.method_list > li .method_txt {
	width: 100%;
	padding: 1.2rem;
}
.method_list > li {
	margin-bottom: 1.5rem;
}


#vaws .ticketInfo_target {
    width: 100%;
    border: none;
    color: #ff6c00;
    padding: 1.2rem 0 0.8rem;
}

#vaws .ticketInfo_target::after {
    display: none;
}

#vaws .ticketInfo_target_desc {
    width: 100%;
    padding: 0 0 1.2rem;
    font-size: 0.9rem;
}

}



@media screen and (max-width: 960px) and (min-width: 500px) {

html {
    font-size: clamp(10px, 2vw, 2.5vh);
}

}
