@charset "UTF-8";
/* ==========================================================================
   Base
============================================================================= */
/*font*/
@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Sans+JP:wght@500;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Lilita+One&display=swap');
.engf {
	font-family: 'Viga', sans-serif;
}
.jpnf {
	font-family: 'IBM Plex Sans JP', sans-serif!important;
	font-weight: 500;
}
.engfC {
	font-family: 'Lilita One', cursive !important;
}
html {
	font-size: 62.5%;
}
body {
	margin: 0;
	padding: 0;
	width: 100%;
	height: 100%;
	font-family: "IBM Plex Sans JP", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", Meiryo, メイリオ, Osaka, "MS PGothic", arial, helvetica, Roboto, "Droid Sans", sans-serif;
	font-size: 14px;
	font-size: 1.4rem;
	letter-spacing: 0.05em;
	line-height: 160%;
	color: #5E480B;
	background: #F6ECD7 url("../img/bg_base.png") repeat 0 0;
	-webkit-font-smoothing: antialiased;
	-webkit-text-size-adjust: 100%;
	overflow-x:hidden;
}
a {
	color:#4B8637;
	cursor: pointer;
	word-wrap: break-word; 
	word-break: break-all;
	white-space: normal;
}
a.t2Left{
	display: inline-block;
	text-align: left;
	width: fit-content;
}
a:hover {
	color:#4B8637;
}
a:visited {
	color: #4B8637;
}
a:active, a:focus {
	outline:0;
}
a:link, a:visited {
	text-decoration: none;
}
a:hover, a:active, a:focus {
	text-decoration: none;
}
p {
	margin: 0;
	padding: 0;
}
em {
	font-weight: bold;
	font-style: normal;
}
strong {
	font-weight: bold;
	font-style: normal;
}
img {
	border:0;
	vertical-align: middle;
	-webkit-backface-visibility: hidden;
}
ol, ul {
	list-style: none;
	padding: 0;
	margin: 0;
}
input, textarea {
	box-sizing: border-box;
	line-height: 1.8;
	border: 0;
	border-radius: 0;
	outline: none;
}
sup {
	font-size: 71.42857%;
	vertical-align: super;
}

.center {
	text-align: center;
}
.textL {
	text-align: left;
}
.t2Left{
	text-align: left;
	width: fit-content!important;
}
.colG {
	color: #527B35
}
.line{
	margin: 20px 0;	
	border-top:2px #66C1EE dotted;

}
a.wavy {
	padding-bottom: 5px;
	text-decoration: underline;
	text-decoration-style: wavy;
}
.tac {
	text-align: center!important;
}
.tar {
	text-align: right!important;
}
.tal {
	text-align: left!important;
}
.mt1r {
	margin-top: 1rem!important;
}
.mt2r {
	margin-top: 2rem!important;
}
.mt3r {
	margin-top: 3rem!important;
}
.mt5r {
	margin-top: 5rem!important;
}
.pr5 {
	padding-right: .5rem;
}
.spV {
	display:  block;
}
.pcV {
	display: none;
}
.tabV {
	display: none;
}
.fontS {
	font-size:1.0rem;
}
.fontM {
	font-size:1.4rem;
}
.fontL {
	font-size:1.8rem!important;
}
.fontSL {
	font-size: 1.2rem!important;
	line-height: 1.2!important;
	text-align: left;
}
.fontB {
	font-weight: bold!important;
}
.fontBL {
	font-size: 1.6rem!important;
	font-weight: bold!important;
}
.fontSPlTABc {
	text-align: left!important;
}
.fontSPcTABl {
	text-align: center!important;
}
.fontRed {
	color: #cd5840;
	text-align: left;
	font-size: 	1.4rem;
	line-height: 1.4;
	margin: 	2rem 0;
	text-align: center;
	font-weight: 600;
}
.fontRed span {
	display: 	block;
}
.fontRotare {
	display: inline-block;
	transform: rotate(180deg);
}
.fontHorizontal  {
	display: inline-block;
	transform: scaleX(-1);
}
h3 {
	padding:0;
	font-weight: 600;
}
h3 a {
	color: #2A2121;
	line-height: 1.5;
}
h3, h4, h5 {
	margin: 1rem 0;
	font-weight: 500;
	font-size: 1.8rem;
	line-height: 1.4;
	font-weight: 	600;
}
img {
	image-rendering: -webkit-optimize-contrast;
}
h3, h4, h5 {
	margin: 1rem 0;
	font-family: 'IBM Plex Sans JP', sans-serif;
	font-weight: 700;
	font-size: 1.8rem;
	line-height: 1.4;
}
p {
	font-family: 'IBM Plex Sans JP', sans-serif;
	font-weight: 500;
	letter-spacing: -.01rem;
}
ul li {
	font-family: 'IBM Plex Sans JP', sans-serif;
	font-weight: 700;
	letter-spacing: -.01rem;
}
#footer {
	position: relative;
	font-family: 'IBM Plex Sans JP', sans-serif;
	font-weight: 500;
	font-size: 1.0rem;
	line-height: 1.4;
	text-align: center;
	color: #5E480B;
	letter-spacing: 0.1rem;
}
#footer .inner {
	margin:0 auto;
	padding:2vw 0;
	background: none;
}
#footer a img {
}
#footer a:hover img {
	opacity: 0.8;
}
#footer ul.sns li a {
	color: #5E480B;
}
#footer ul.sns li a:hover {
	background:#5E480B;
	color: #fff;
}
#footer ul.sns {
	margin: 20px auto;
	text-align: center;
}
#footer ul.sns li {
	display: inline-block;
}
#footer ul.sns li a {
	background-color:#fff;
	padding:0;
	margin: 0 5px;
	width: 40px;
	height: 40px;
	line-height: 34px;
	text-align: center;
	border-radius: 50%;
	font-size: 14px;
	display: flex;
	justify-content: center;
	align-items: center;
	border: none;
}
/* clearfix
-------------- */
.clear {
	clear:both;
}
.cf:before, .cf:after {
	content: " ";
	display: table;
}
.cf:after {
	clear: both;
}
.cf {
	*zoom: 1;
}
section:before, section:after {
	content: " ";
	display: table;
}
section:after {
	clear: both;
}
section {
	*zoom: 1;/*7*/
}
*, *:before, *:after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
#pagetop {
	position: fixed;
	bottom: 10px;
	right: 10px;
	font-size:1.4rem;
	opacity: 	0;
	transition: all 1s ease;
	display: none;
}
#pagetop.show {
	opacity: 1;
	transform: none;
}
#pagetop a {
	text-decoration: none;
	color: #66C1EE;
	width: 60px;
	height: 60px;
	padding: 0;
	text-align: center;
	display: block;
	border-radius: 50px;
	font-size: 30px;
	line-height: 60px;
	background: #fff;
	border: 3px solid #66C1EE;
}
#pagetop a:hover {
	background: #66C1EE;
	color: #fff;
	text-decoration: none;
}
.fadein {
	opacity: 0;
	transform : translate(0, 50px);
	transform: scale(.6);
	transition-duration: .5s;
	transition-timing-function: cubic-bezier(.215, .61, .355, 1);
}
.fadein.scrollin {
	opacity: 1;
	transform: translate(0, 0);
}
.google_map {
	position:relative;
	width:100%;
	height:0;
	padding-top:75%;
	margin: 3rem auto 0;
}
.google_map iframe {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
}
.cs {
	text-align: center;
}
.cs p {
	font-family: 'Lilita One', cursive;
	letter-spacing: .2rem;
	font-size: 1.8rem;
}
.cs img {
	width: 	50%;
	height: 	auto;
	margin: 	0 auto;
	padding: 30px 0 0;
	max-width: 300px;
}
i.box {
	border: 1px solid #5E480B;
	padding: 0 0.5rem;
	margin-right: 0.5rem;
	font-style: normal;
}
.indent14 {
	font-size: 1.4rem!important;
	text-indent: -1.4rem!important;
	padding-left: 1.4rem!important;
	;
}
.indent16 {
	text-indent: -1.6rem;
	padding-left: 1.6rem;
}
a.btn, .storesingle p a {
	position: relative;
	margin: 2rem auto;
	padding: 2rem 3.5rem 2rem 2rem;
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 10px;
	font-size: 1.6rem;
	width: 100%;
	color: #fff!important;
	background: #ef8a1a;
	text-decoration: none!important;
	box-shadow: inset 0px 0px 0px 3px #ef8a1a, inset 0px 0px 0px 6px #fff;
	word-break: break-all;
}
a.btn:after, .storesingle p a:after {
	position: absolute;
	right: 15px;
	font-size: 16px;
	top: calc( 50% - 15px);
	line-height: 30px;
	color: #fff;
	content: "\e90f";
	font-family: 'OUTDOORSMILE2024' !important;
	font-weight: normal;
}
a.btn_otherP:after {
	content: "\e904"!important;
	font-family: 'OUTDOORSMILE2024' !important;
}
a.btn:hover, .storesingle p a:hover {
	background: #ef8a1a;
	color: #fff!important;
}
a.btn:link {
	color: #ef8a1a;
}
a.btnsizeS {
	width: 	80%;
	max-width: 600px;
	margin: 	0 auto;
}
a.btn_small {
	font-size: 1.2rem!important;
	max-width: 250px!important;
}
/*=====================================================================
Layout
=====================================================================*/
header + section {
	margin-top: 60px!important;
}
body#index header + section {
	margin-top: 0px!important;
}
.container {
	padding: 0 5%;
	width: 100%;
	position: relative;
	overflow: hidden;
}
section .inner {
	width: 100%;
	margin: 20px auto 0;
	border-radius: 20px;
	padding: 20px;
	box-sizing: border-box;
}
#booth section .inner, #stage section .inner {
	margin:0 auto 0;
}
.singlepage {
	padding: 7vw!important;
	border-radius: 3vw;
	margin: -35px auto 0!important;
	background: #fff!important;
	box-shadow: inset 0px 0px 0px 5px #fff, inset 0px 0px 0px 8px #66C1EE !important;
}
#booth .singlepage, #stage .singlepage {
	margin: 0 auto 0!important;
}
.cspage {
	background: #efd57e!important;
	box-shadow: inset 0px 0px 0px 5px #fff, inset 0px 0px 0px 10px #efd57e!important;
}
body#index .morelist {
	text-align: right;
	margin: 2rem 0 3rem;
	font-family: 'IBM Plex Sans JP', sans-serif;
	font-weight: 600;
	font-size: 2rem;
}
body#index .morelist span {
	font-size: 1.2rem;
	margin-left: 0.5rem;
}
body#index .morelist a {
	color: #527B35;
	;
	font-size: 1.5rem;
	font-weight: 600;
}
body#index .wraplist {
	margin: 10px 0 20px;
}
body#index #boothlist {
	padding-top: 2vw;
}
.bg2nd {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 60px;
	z-index: 120;
	background:transparent url(../img/bg_2nd_sp.png) no-repeat center bottom;
	background-size: cover;
}
body#index .bg2nd {
	display: none;
}
/*menu______________________*/
#header {
	position: fixed;
	top: 0;
	width: 100%;
	height: 60px;
	z-index: 130;
}
body#index #header {
	background: none
}
#toplogo {
	height: 60px;
	text-align: center;
	display: flex;
	margin: 0 auto;
	padding: 0 10px 10px 10px;
	align-items: center;
	justify-content: left;
}
#header h1 {
	margin:5px 0 0 5px;
	text-align: left;
}
#header h1 img {
	width:40px;
	height: 40px;
	margin:0 auto;
}
#header p.infom {
	margin:8px 5px 0;
	padding: 0;
	text-align: left;
	color: #48861c;
	font-family: 'Lilita One', cursive;
	font-size: 	1.2rem;
	line-height: 1;
	letter-spacing: .08em;
	transition: all .2s;
}
#header p.infom span {
	font-size: 1.0rem;
	font-family: 'IBM Plex Sans JP', sans-serif;
	font-weight:700;
}
#header p.infom .main {
	font-size: 1.2rem;
	font-weight: 600;
}
body#index #header h1, body#index #header .infom {
	display: none;
}
nav {
	margin:0;
	padding: 0;
}
input[type="checkbox"] {
	display: none;
}
.mainMenu ul {
	background: none;
}
.mainMenu {
	box-sizing: border-box;
	position: fixed;
	top: 0;
	right: 0;
	width:40vw;
	height:100vh;
	margin: 0;
	padding:  0;
	opacity: 0;
	overflow-x: hidden;
	overflow-y: auto;
	display: none;
}
.mainMenu::-webkit-scrollbar {
	display:none;
}
.mainMenu {
	-ms-overflow-style:none;
}
.mainMenu li {
	text-align: center;
	padding: 0;
	display: block;
	border-bottom: 1px solid #66C1EE;
	border-right: none;
}
.mainMenu li a {
	font-family: 'IBM Plex Sans JP', sans-serif;
	font-weight: 700;
	display: block;
	font-size:1.4rem;
	line-height: 1.2;
	letter-spacing: 0.05rem;
	padding:  0;
	color: #5E480B;
	transition: all .2s;
	width: 40vw;
	height: 	5rem;
	display: 	flex;
	align-items: center;
	justify-content: center
}
.mainMenu li a:hover {
	color: #ef8a1a;
	border: none;
}
.mainMenu li p {
	position: relative;
	margin: 0;
	top: -10px;
	left: 0;
	padding:0 .5rem;
	transform: none;
	font-size: 2.0rem;
	line-height: 1.2;
	width: auto;
	background: none;
	color: #fff;
}
.mainMenu li p span {
	font-size: 1.2rem;
	font-weight: bold;
}
.mainMenu li.cs{
	pointer-events: none;
}
.mainMenu li.cs a{
	color: #A7D8EF;
}
.check {
	display: none;
}
.menu-btn {
	position: fixed;
	top: 0;
	right: 6px;
	display: block;
	width: 60px;
	height: 60px;
	font-size: 10px;
	text-align: center;
	cursor: pointer;
	z-index: 3;
	border-radius:10px;
}
body#index #header .menu-btn {
	background: #66C1EE;
	top: 6px;
	right: 6px;
}
body#index #header .bar {
	background: #fff
}
.bar {
	position: absolute;
	top: 20px;
	left:20px;
	display: block;
	width: 21px;
	height: 3px;
	background: #5E480B;
	transition: all .5s;
	transform-origin: left top;
	border-radius: 10px 10px 10px 10px;
}
.bar.middle {
	top: 29px;
	opacity: 1;
}
.bar.bottom {
	top: 38px;
	-webkit-transform-origin: left bottom;
	-ms-transform-origin: left bottom;
	transform-origin: left bottom;
}
.menu-btn:hover .bar {
	background: #5E480B;
}
.close-menu {
	position: fixed;
	top: 0;
	right:40vw;
	width: 100%;
	height: 100vh;
	background: rgba(0, 0, 0, 0);
	visibility: hidden;
	opacity: 0;
}
/* ---menuchecked */
#header .check:checked ~ .menu-btn {
	background: #66C1EE;
	right:  40vw;
	z-index: 101;
	border-top-left-radius: 10px;
	border-bottom-left-radius: 10px;
	border-top-right-radius: 0;
	border-bottom-right-radius: 0;
}
body#index #header .check:checked ~ .menu-btn{
	right:  40vw;	
}
.check:checked ~ .mainMenu {
	display: block;
	-webkit-transform: none;
	-ms-transform: none;
	transform: none;
	opacity: 1;
	background: #fff;
	-webkit-transform-origin: right center;
	-ms-transform-origin: right center;
	transform-origin: right center;
}
.check:checked ~ #header {
	transition-delay: 0s;
}
.check:checked ~ .menu-btn {
	margin-right: 0;
}
.check:checked ~ .menu-btn .bar.top {
	width: 28px;
	transform: rotate(45deg);
	background: #FFF;
}
.check:checked ~ .menu-btn .bar.middle {
	opacity: 0;
}
.check:checked ~ .menu-btn .bar.bottom {
	width:28px;
	top:  39px;
	transform: rotate(-45deg);
	background: #FFF;
}
.check:checked ~ .close-menu {
	background: rgba(0, 0, 0, .5);
	visibility: visible;
	opacity: 1;
	z-index: 3;
}
#header.fixed {
	background: rgba(255, 255, 255, .8);
}
#header.fixed .menu-btn {
	position: fixed;
	top: 0;
	right: 6px;
}
/*imglist______________________*/
.imglist {
	width: 100%;
}
.imglist .inner {
	width: 100%;
	padding: 0 0 4vw;
}
.imglist .sub .title {
	margin:  3rem 0 0;
	font-size: 3rem
}
.imglist ul {
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	margin: 0 auto 0;
	padding: 0;
	width: 100%;
}
.imglist ul li {
	width:31%;
	padding: 2%;
	margin: 0 1vw 2vw;
	position: relative;
	box-sizing: border-box;
	background: #fff;
	overflow: hidden;
	pointer-events: none;
	border: 3px solid #fff;
	border-radius: 10px;
}
.imglist ul li:hover {
	border: 3px solid #ef8a1a;
}
.imglist h2 {
	background: #527B35;
	color: #fff!important;
	position: relative;
	line-height: 50px;
	height: 50px;
	padding: 0 50px!important;
	border-radius: 50px;
}
.imglist ul li a h3 {
	font-size: 1.4rem;
	line-height: 1.1;
	word-wrap: break-word;
	color: #5E480B;
	width: 90%;
	z-index: 5;
	background: #fff;
	text-align: center;
}
.imglist ul li span {
	position: absolute;
	top: 0;
	left: 0;
	color: #fff;
	font-size: 1.0rem;
	line-height: 1.4rem;
	background: #f2cb21;
	padding: 0.2rem 0.6rem 0.2rem;
	font-family: 'M PLUS Rounded 1c', sans-serif;
	font-weight: 600;
	border-radius: 0 0 10px 0;
	z-index: 2;
}
.imglist .thumb {
	display: flex;
	flex-direction: column;
	align-items: center;
}
.imglist img {
	width: 90%;
}
.imglist ul li a {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	pointer-events: auto;
	text-align: center;
	word-break: break-all;
}
/*toppage about*/
.schedule i {
	background: #5E480B;
	color: #fff!important;
	position: relative;

	padding: 3px 20px!important;
	border-radius: 50px;
	font-style: normal;
	font-size: 1.2rem;
}
#ABOUT .schedule i{
	display:inline-block;
	margin: 10px 0;
}
#topinfo {
	background: transparent;
	position: relative;
	height: auto;
	width: 100%;
	overflow: hidden;
	margin: -30px auto 0;
	text-align: center;
	z-index:    30;
}
#topinfo h4 {
	font-family: 'Lilita One', cursive;
	font-size: 3rem;
	line-height:   1;
	font-weight: normal;
	margin: 2.5rem 0 1rem;
	padding: 0;
	color: #527e15;
}
#topinfo h5 {
	font-size: 1.6rem;
	font-weight: 700;
	font-family: 'IBM Plex Sans JP', sans-serif;
	transform: rotate( 0.03deg );
	color: #5E480B;
}
#topinfo h5 s {
	font-size: 1.2rem;
	text-decoration: none;
}
#topinfo h6 {
	font-size: 1.4rem;
	line-height: 1.4;
	font-weight: 700;
	font-family: 'IBM Plex Sans JP', sans-serif;
}

.bn_a {
	width: 80%;
	margin: 20px auto;
	max-width: 360px;
	display: none!important;
}
.bn_a a:hover {
	opacity: 0.8;
}
h3.title2 {
	text-align: center;
	font-family: 'Lilita One', cursive!important;
	font-size: 1.8rem;
	text-align: center;
	color: #fff;
	margin: 3rem 0 2rem;
}
h3.title2 span {
	background:#5E480B;
	border-radius: 40px;
	padding:  10px 20px!important;
}
body#booth .imglist ul {
	justify-content: left;
}
body#booth .imglist ul li {
	width: calc((100% - 2*10px) / 2);
	padding:0;
	margin: 0 5px 10px;
	position: relative;
}
body#booth .imglist ul li:before {
	content: "";
	display: block;
	padding-top: 100%;
}
body#booth .imglist img {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	object-fit: cover;
}
body#booth .imglist ul li a h3 {
	position: absolute;
	bottom: 0;
	border-radius: 30px;
	padding:  0.3rem 1rem;
	font-size: 1.2rem
}
body#booth .imglist ul li img {
	opacity: 0;
	transition: opacity 3s;
}
body#booth .imglist ul li img.lazyloaded {
	opacity: 1;
}
div#smallbooth {
	margin-top: 3rem;
}
body#booth .imglist ul.smallbooth {
	width: 100%;
}
body#booth .imglist ul.smallbooth li {
	width:calc((100%/3) - 2vw );
}
body#booth .imglist ul.smallbooth li img {
	height:calc(100% - 4.6rem);
	padding: 0;
	bottom:auto;
}
body#booth .imglist ul.smallbooth li a h3 {
	margin:0;
	padding:7px 0 0;
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	align-items:center;
	position:relative;
	height:4.6rem;
	background:transparent;
}
body#booth .imglist ul.smallbooth li a h3 i {
	width:100%;
}
/*stage*/
body#stage .imglist ul li {
	width: calc((100% - 2*10px) / 2);
	padding:0;
	background: #fff;
	margin: 0 5px 10px;
	position: relative;
	border: 3px solid #fff;
	border-radius: 10px;
}
body#stage .imglist ul li .thum {
	position: relative;
	width: 100%;
	overflow: hidden;
}
body#stage .imglist ul li img {
	width:100%;
	height:auto;
}
body#stage .imglist ul li a:hover img {
	opacity: 0.8;
}
body#stage .imglist ul li h3 {
	margin: .5rem 0 0;
	padding: 0;
	font-size: 1.4rem;
	color: #24456B;
	height: auto;
	width: 100%;
	line-height: 1.1;
	text-align: center;
	background: #fff;
	display: 	flex;
	align-items: 		center;
	justify-content: center;
}
body#stage .imglist #MC ul {
	width: 80%;
	margin:0 auto;
	align-items: 		center;
	justify-content: center;
}
body#stage .imglist ul.mclist li {
	height: auto;
	display: inline-block;
	padding: 0;
	margin: 0 10px 20px;
	position: relative;
	border: none;
	border: 3px solid #fff;
	/*width: calc((100% - 2*20px) / 2);*/
	width: 80%;
}
body#stage .imglist ul.mclist li h3 {
	width: 33vw;
	width: 100%;
	position: relative;
}
body#stage .imglist ul.timetable li {
	width: 80vw;
	height: auto;
	margin: 0 auto 6vw;
	padding: 0;
}
/*icon*/
.wood, .smile {
	margin: 	0 auto;
}
.wood img, .smile img {
	width: 8vw;
	max-width:40px!important;
}
/*toppage about*/

ul.notice {
	list-style: none;
	text-align: left;
	max-width: 800px;
	margin: 	0 auto;
	padding: 	0 3vw;
}
ul.notice li {
	padding: 0 .2rem 1.5rem 1rem;
	text-indent: -1.8rem;
	font-size: 1.6rem;
	line-height: 1.6;
}
ul.notice li:before {
	list-style-type: none;
	font-family: 'OUTDOORSMILE2024' !important;
	content: "\e91f";
	padding: 0 .2rem 0 0;
}
.catch {
	margin: 	2rem auto;
	max-width: 	1000px
}
.catch p {
	text-align: left;
	line-height: 1.6!important;
	font-weight: 800;
	margin: 	.5rem auto;
}

.ticketbox {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin: 0 auto 0;
	padding: 0;
}
.ticketbox li {
	border: 1px solid #794E1E;
	margin: 1%;
	padding: 20px;
	width: 	100%;
	text-align: center;
	border-radius: 5px;
}
.ticketbox li.sub {
	border: 1px dotted #48861c;
}
.ticketbox li img {
	margin: 10px auto!important;
	width: 80%;
	max-width: 150px!important;
	height:   auto;
}
.ticketbox li img.wlong {
	margin: 0 auto 10px!important;
	width: 80%;
	max-width: 200px!important;
	height:   auto;
}
.ticketbox li p.t {
	margin-top: 2rem;
	text-align: left;
	font-size: 1.4rem;
	line-height: 1.4
}
.ticketbox a h3 {
	font-size: 2.0rem;
	height: 40px;
}
.ticketbox a:hover, .ticketbox a:hover h3 {
	opacity: 0.7;
}
.imglist ul.topstage li {
	width: 47.5%;
	height: calc(28vw + 4rem);
	padding: 0;
	border: none;
	overflow: hidden;
	background: none;
}
.imglist ul.topstage li div {
	width: 40vw;
	height: 26vw;
	border: none;
	overflow: hidden;
}
.imglist ul.topstage li img {
	width: 100%;
}
.imglist ul.topstage li h3 {
	height: 3rem;
	display: inline-block;
	background: none;
	font-size:1.4rem;
}
.imglist ul.smallbooth li {
	width: calc((100% - 10vw) / 4);
	padding: 0;
	overflow: hidden;
}
.imglist ul.smallbooth li div {
	width: 26vw;
	text-align: center;
	overflow: hidden;
}
.imglist ul.smallbooth li img {
	width: 90%;
	object-fit: cover;
}
/*coming soon*/
.comingsoon {
	background: #fff;
	text-align: center;
	padding: 10vw
}
.comingsoon img {
	max-width:  100%
}
/*title*/
.title {
	text-align: center;
	margin: 0 auto;
}
.title h2 {
	background: #5E480B;
	color: #fff;
	font-family: 'Lilita One', cursive;
	font-size: 2rem;
	font-weight: normal;
	line-height: 40px;
	height: 40px;
	display: inline-block;
	margin: 0 auto 10px;
	padding: 0 50px!important;
	border-radius: 40px;
	letter-spacing: .2rem;
	position: relative;
	z-index: 	5;
}
.container .pan {
	text-align: right;
	font-family: 'Roboto Condensed', sans-serif;
	font-weight: 600;
	font-size: 1rem;
	margin: -30px 0 0;
	display:none;
}
.container .pan p {
	padding: 0;
	margin: 1rem 0 0;
	font-weight: 600;
	color: #5E480B;
}
.container .pan p:hover {
	color: #5E480B;
}
.container .inner .base {
	margin: 0 auto;
}
.container .inner .base img {
	margin: 0 auto;
	max-width: 100%;
}
/*share*/
.social-box {
	margin: 4vw 0 2vw;
}
.share {
	margin:  0;
	padding: 2vw;
	font-size: 0;
	text-align: center;
	background:  #f8f8f8;
}
.share li {
	display:inline-block;
	font-size: 1.2rem;
	line-height: 1.4;
	padding: 0 0.5rem 0;
}
.share li p {
	font-size: 1.0rem
}
.share li:first-child {
	width: 100%;
	margin-bottom: 10px;
	font-weight: 600;
}
.share li:first-child span {
	display: block;
}
.share li a {
	text-decoration: none;
	color:#5E480B;
	border: 1px solid #5E480B;
	padding: 5px;
}
.share li a i {
	font-size:140%;
	padding: 1rem 01.3rem 0;
}
.share li a:hover {
	color: #527B35;
	background: #fff
}
.share-box {
	position: relative;
	width: 90vw;
	height: 90vw;
	margin-top: 12.5vw;
	overflow: hidden;
	box-sizing: border-box;
	margin: 30px auto;
}
.andmore {
	margin: 3vw 0;
	text-align: center;
	font-weight: 600;
	font-size: 1.5rem;
	color: #5E480B;
	display:none!important;
}
.andmore:after {
	content: "\e916";
	display: block;
	font-family: 'OUTDOORSMILE2024' !important;
}
.andmore a {
	color: #382f26!important
}
#boothlist h5 {
	text-align: center;
	font-family: 'IBM Plex Sans JP', sans-serif;
	font-size: 1.6rem;
	color: #527B35
}
.text_s {
	font-size: 1.2rem;
	text-align: left;
}
#INFO {
	width: 100%;
}
.topinfo {
	width: 86vw;
	padding: 30px;
	background: #fff;
	max-width: 980px;
	margin: 10px auto 0;
	border-radius: 10px;
}
#INFO ul {
}
#index #INFO ul li:first-child {
	border-top: 2px solid #efd57e;
}
#index #INFO ul li:last-child {
	border-bottom: 2px solid #efd57e;
}
#INFO ul li:last-child {
	border-bottom: none;
}
#INFO ul li {
	border-bottom: 2px solid #efd57e;
	padding: 1rem 0;
}
#INFO ul li a {
	color: #ef8a1a;
}
#INFO ul li a:hover {
	border-bottom: 2px solid #fdd300;
	color: #fdd300;
}
body#index #INFO ul li a {
	color: 	#5E480B;
}
#INFO ul li H4 {
	margin: 0 1rem 0 1rem;
	padding-left: 1rem;
	text-indent: -1.8rem;
	font-size: 1.6rem;
}
#INFO ul li H4:before {
	content: "\e91a";
	font-family: 'OUTDOORSMILE2024' !important;
	padding-right: 0.5rem;
}
#INFO ul li H4 span.time {
	font-family: 'Roboto Condensed', sans-serif;
	font-weight: 400;
	font-size: 1.4rem;
	margin-left: 2rem;
	color: #b6b6b6;
	display: block;
}
#INFO ul li p {
	margin:0 2rem 0 0;
	font-size: 1.4rem;
	line-height: 1.6;
}
#INFO ul li p:first-child {
	margin: 3rem 2rem 0 0;
}
#INFO ul li figure {
	margin: 20px auto;
	width: 100%;
}
#INFO ul li figure img {
	max-width: 100%;
	margin: 5px 0
}
#INFO .topinfo ul li H4 {
	font-size: 1.4rem;
	font-weight: 400
}
/*coming soon*/
.comingsoon {
	background: #fff;
	text-align: center;
	padding: 10vw
}
.comingsoon img {
	max-width:  100%
}
.subtitle {
	background: #5E480B;
	color: #fff!important;
	position: relative;
	line-height: 50px;
	height: 50px;
	padding: 0 30px!important;
	border-radius: 50px;
	font-style: normal;
	display: 	inline-block;
}
.about h3 {
	font-family: 'Roboto Condensed', sans-serif;
	font-weight: 600;
	font-size: 3rem;
	margin: 1rem 0 0;
	padding:  0;
	white-space: nowrap;
	color: #527B35;
}
.about h4 {
	font-size: 	1.65rem;
	font-weight: 600;
	margin: 0;
	padding:  0;
	word-wrap: break-word;
}
.about h4 span {
	font-size: 1.2rem;
	text-align: center;
}
.about h4 span.ticket {
	border-radius: 20px;
	padding: 0 0.6em;
	background: #527B35;
	color: #fff;
	font-size: 1.4rem;
}
.about h5 {
	color: #527B35;
	font-weight: 500;
	margin: 4rem 0 0;
	padding: 0 1rem .5rem 0;
	white-space: nowrap;
}
.contact {
	margin-bottom: 3vw;
}
/*ACCESS*/
.accessbox div.box {
	text-align: left;
	padding: 2rem;
	margin:  1rem 0;
	width:100%;
	border: 1px solid #ddd;
	border-radius: 10px;
	font-family: 'IBM Plex Sans JP', sans-serif;
	font-size: 1.6rem;
	font-weight: 500;
	
	line-height: 1.2;
}
.accessbox div.box p {
	line-height: 1.2;
	margin-top: 1rem;
}
.accessbox div.box p.ind14 {
	text-indent: -1.4rem!important;
	padding-left: 1.4rem!important;
}
.accessbox div.box p.menu {
	text-align: center;
	font-size: 1.8rem;
	margin-bottom: 2rem;
}
.accessbox div.box i.menu {
	font-size: 40px;
	margin-bottom: 1rem;
	display: 	block;
	text-align: center;
}
.accessbox div.box ul {
	margin: 0 auto!important;
	padding-left: 2rem!important;
}
.accessbox div.box p.sub {
	line-height: 1.2;
	margin-top: 1rem;
	max-width: 	none;
	display: block;
	font-size: 1.4rem;
}
#ACCESS .iconship {
	border: none !important;
	margin: 0!important;
	padding: 0!important;
	text-align: center!important;
}
#ACCESS .iconship i{
	font-size: 50px;
}
#ACCESS .iconship img {
	max-width: 60px!important;
}
#ACCESS .iconship_root {
	border: none !important;
	margin: 0!important;
	padding: 0!important;
	text-align: center!important;
}
#ACCESS .iconship_root p {
	line-height: 1.6!important;
	text-indent: 0 !important;
}
#ACCESS .iconship_root span.point {
	border: 2px solid #ccc;
	padding: 3px 6px;
	display: inline-block;
	margin-bottom: 10px;
}
#ACCESS .iconship_root s {
	text-decoration: none;
}
#ACCESS .iconship_root .spV {
	display: inline-block;
}
#ACCESS .iconship_root .journey {
	margin-top: 5px;
}
#FAQ ul {
	text-align: left;
	width: 100%;
	margin: 0 auto;
}
#FAQ ul li H4:before {
	content: "\e918";
	font-family: 'OUTDOORSMILE2024' !important;
	padding-right: 0.5rem
}
#FAQ ul li H4 {
	margin: 0 0 0 1rem;
	padding-left:1rem;
	text-indent:-2rem;
	font-size: 1.6rem;
	font-weight: 600;
	color: #527B35
}
#FAQ a .btn {
	width: 90%;
}
#FAQ a.btnin {
	color: #4B8637;
	border: 1px solid #4B8637;
	border-radius: 20px	;
	padding: 0 10px;
	font-size: 1.4rem;
}
#FAQ a.btnin:after {
	content: "";
	content: "\e904";
	font-family: 'OUTDOORSMILE2024' !important;
	font-weight: normal;
	font-size: 12px;
}
#FAQ ul li  {
	font-weight: normal;
}
#FAQ ul li p {
	margin: 0 .8rem 3rem 2rem;
}
#FAQ ul li p.t2 {
	margin: 0 .8rem 1rem 2rem;
}
#FAQ ul li .sum {
	margin: .5rem .8rem 0 2rem;
}
#FAQ ul li .sum p{
	margin: 0;
}
#FAQ ul li .indent14{
	margin: 0 0 0 2rem;
}
#FAQ ul li .sum .sumlist{

	margin: 0.5rem 0 0;
	text-indent: -1.4rem !important;
    padding-left: 1.4rem !important;
}
}
#FAQ ul li .sum .sumlist span{
	display: inline;
}
#FAQ ul li .sum i.sumbox{
	border: 1px solid #5E480B;
	padding: 0 0.5rem;
	margin-right: 0.5rem;
	font-style: normal;
}
#FAQ ul li p span {
	display: block;
	font-size: 1.2rem;
	text-indent: -1em;
	padding-left: 1em;
	line-height: 1.6;
}
#FAQ ul li p.list {
	display: block;
	font-size: 1.4rem;
	text-indent: -1em;
	padding-left: 1em;
	line-height: 1.6;
	font-style: normal;
}
#FAQ .subbox {
	margin: -2rem 2rem 3rem;
	padding:1rem 0.5rem 1rem 1rem;
	border: 1px solid #794E1E;
	border-radius: 10px;
}
#FAQ .subbox .indent14{
	margin: 0 ;
}
#FAQ .subbox p {
	margin: 0;
}
#FAQ .subbox span {
	font-weight: 400;
}
/**/
.logo {
	margin: 0 auto 0;
	text-align: center;
	max-width: 100%
}
.logo img {
	max-width: 600px;
	width: 	100%;
	height: 	auto;
}
body#booth .logo img {
	max-width: 30%
}
body#stage .logo img {
	max-width: 800px;
	width: 100%;
	height: 	auto;
}
.storesingle .title + .logo img {
	max-width: 50%;
	width: 50%;
	height: auto;
}
.storesingle .logo + h3 {
	padding: 4% 10%;
	margin: 0 0;
	font-size: 2rem;
	text-align: center;
	font-weight: 700;
}
.storesingle p {
	font-size: 1.4rem;
	line-height: 1.6
}
.storesingle .info, .storesingle .info2 {
	padding: 0;
	margin: 4vw auto 0;
	border-top: none;
	width: 100%;
}
.storesingle .info p, .storesingle .info2 p {
}
.base p {
	font-size: 1.4rem;
	line-height: 1.6
}
.base p.sub {
	font-size: 1.4rem;
	line-height: 1.6;
	text-align: left;
	max-width: 	630px;
	margin: 	0 auto;
}
.base span.box {
	border: 1px solid #5E480B;
	padding: 0 0.5rem;
	line-height: 2;
	font-style: normal;
}
.base ul.list {
	list-style: disc;
	padding: 0;
	margin: 0 1rem 0 3rem;
}
.base ul.list li {
	text-align: left;
}
#ABOUT .base ul.list {
	width: 500px;
	margin: 0 auto 2rem;
}
body#booth .storesingle .info::before {
	width: 80%;
	padding: 1rem 0 1rem;
	content: "展示内容";
	font-size: 1.4rem;
	color: #527B35;
	display: block;
	text-align: center;
	font-family: 'IBM Plex Sans JP', sans-serif;
	font-weight: 700;

	width: 100%;
	border-top: 3px dotted #93785F;
	margin: 0px auto;
}
body#stage .storesingle .info::before {
	width: 80%;
	padding: 1rem 0 1rem;
	content: "LIVE INFO.";
	font-size: 1.4rem;
	color: #527B35;
	display: block;
	text-align: center;
	font-family: 'Roboto Condensed', sans-serif;
	font-weight: 600;
	width: 100%;
	border-top: 3px solid rgb(71, 69, 64);
	margin: 0px auto;
}
body#stage .storesingle .info2::before {
	width: 80%;
	padding: 1rem 0 1rem;
	content: "RELEASE INFO.";
	font-size: 1.4rem;
	color: #527B35;
	display: block;
	text-align: center;
	font-family: 'Roboto Condensed', sans-serif;
	font-weight: 600;
	width: 100%;
	border-top: 3px solid rgb(71, 69, 64);
	margin: 0px auto;
}
.storesingle .main, .main {
	width: 100%;
	margin: 0 auto;
	max-width: 800px;
}
.storesingle div.imgblock {
	width: 100%;
	height: auto;
	margin: 3vw auto 0;
	padding: 0;
	text-align: center;
}
.storesingle div.imgblock img {
	margin-bottom: 5px;
	height: auto;
	width: 60%;
	border: 3px solid #fff;
}
.storesingle div.imgblock img.x-wide {
	margin-bottom: 5px;
	height:auto;
	width: 100%;
}
body#stage .storesingle .main a {
	position: static;
	margin: 2rem auto;
	padding: 0;
	display: inline;
	border-radius: 0;
	font-size: 1.4rem;
	width: 100%;
	color: #ef8a1a!important;
	background: none;
	text-decoration: none!important;
	box-shadow: none;
	word-break: normal;
	text-align: left!important;
	letter-spacing: .05rem;
}
body#stage .storesingle .main a:after {
	position: static;
	color:#ef8a1a!important;
	content: "\e90f";
	font-family: 'OUTDOORSMILE2024' !important;
	padding-left: 0.5rem;
	font-size: 1.2rem;
}
body#stage .storesingle .info2 p a {
	display: inline-block;
	text-align: left;
	line-height: 1.8;
	font-size: 1.4rem;
	margin: 0;
	border:none;
	padding:0.5rem;
	width:auto;
	background: #fff;
}
 body#stage .storesingle .main .profileLink {
    margin-top: 40px;	
  }
  body#stage .storesingle .main .profileLink a{
    color: #5E480B !important ;
    font-size: 20px;
    line-height: 20px;
  }
  body#stage .storesingle .main .profileLink a:after{
    content: "";
  }
  body#stage .storesingle .main .profileLink a.line{
        border: 1px solid #5E480B;
    padding: 10px;
    border-radius: 3px;
    font-size: 16px;
    display: inline;
    margin: 20px 0 0;
  }
   body#stage .storesingle .main h6{
   	background:#5E480B ;
   	border-radius:10px;
   	color: #fff;
   	font-size: 1.6rem	;
   	padding:  10px 20px;	
   	margin: 	0 0 1rem;
   	display: inline-block;
   }
/*storelist*/
#storelist .inner {
	margin: -30px auto 0;
	padding: 0;
	background: none;
	width: 96%;
}
#storelist ul {
	display:block;
}
#storelist ul li {
	height: auto;
	background: #fff;
	padding: 8vw;
	margin: 0 0 6vw;
	border-radius: 3vw;
	position: relative;
	box-sizing: border-box;
	background: #fff;
	box-shadow: inset 0px 0px 0px 5px #fff, inset 0px 0px 0px 8px #66C1EE;
}
#storelist ul li p {
	font-size: 1.6rem;
	line-height: 1.8;
	width: 100%;
	margin: 0 auto;
}
#storelist ul li .info p {
	font-size: 1.4rem;
	line-height: 1.6;
	text-align: left;
	width: 90%;
}
#storelist ul li .title h3 {
	font-family: 'IBM Plex Sans JP', sans-serif;
	font-weight: 700;
	
	font-size: 1.6rem;
	color: #24456B;
	text-align: center;
	border-bottom: dotted 5px #efd57e;
	padding-bottom: 1rem;
	margin-bottom: 2rem;
}
#storelist ul li .title img {
	margin-top: 5px;
	padding:  0;
	max-height: 95px;
	width: auto;
}
#storelist ul li .info {
	font-size: 1.4rem;
	line-height: 1.6;
	color: #5E480B;
	display: block;
	width: 100%;
	padding: 1rem 0 2rem;
	margin: 0px auto;
	margin-bottom: 1rem;
	margin:2rem 0 0;
	border-radius: 10px;
	text-align: center;
	background: #F9EECB;
	border-radius: 5px;
}
#storelist ul li .info:before {
	font-family: 'Lilita One', cursive;
	content: "MENU";
	letter-spacing: .3rem;
	text-align: center;
	display: inline-block;
	color: #5E480B;
	margin: 1rem auto;
	padding: 0;
	font-size: 1.6rem;
	border-bottom:5px double #5E480B;
}
#storelist ul li .imgblock {
	text-align: center;
	margin-top: 2rem;
	padding: 10px;
}
#storelist ul li a img {
	padding: 5px 0 0;
	max-height: 150px;
	width: auto;
}
#storelist ul li p a {
	display: block;
	text-align: left;
	line-height: 1.4;
	font-size: 1.4rem;
	font-weight: 600;
	margin: 20px auto 0;
	color: #fff;
	padding: 20px 50px 20px 20px;
	width: 100%;
	background: #ef8a1a;
	border-radius: 10px;
	position: relative;
	word-break: break-all;
}
#storelist ul li p a:after {
	position: absolute;
	right: 15px;
	font-size: 25px;
	top: calc( 50% - 15px);
	line-height: 30px;
	content: "\e90f";
	font-family: 'OUTDOORSMILE2024' !important;
	font-weight: normal;
}
#storelist ul li p a:hover {
	background: #ef8a1a;
	color: #fff
}
.storesingle ul.nav {
	width: 86vw;
	margin: 6vw auto 3vw;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
}
.storesingle ul.nav li {
	font-size: 1.4rem;
	width: 49%;
	padding: 0;
	margin:  0;
	display: flex;
	align-items: center;
}
.storesingle ul.nav li.prev {
	margin: 0 1% 0 0
}
.storesingle ul.nav li.next {
	margin: 0 0 0 1%;
}
.storesingle ul.nav li.prev p a:before {
	content: "\e903";
	font-family: 'OUTDOORSMILE2024' !important;
	padding-right: .5em;
	display: inline;
	position: 	absolute;
	left: 15px;
	top: calc(50% - 0.7rem);
	line-height: 1.4rem;
}
.storesingle ul.nav li.next p a:before {
	content: "";
}
.storesingle ul.nav li.next p a:after {
	content: "\e904";
	font-family: 'OUTDOORSMILE2024' !important;
	padding-left: .5em;
	display: inline;
	font-size: 1.4rem;
	top: calc(50% - 0.7rem);
	line-height: 1.4rem;
}
.storesingle ul.nav li p {
	width: 100%;
	width: 100%;
	height: 80px;
	display: flex;
	justify-content: center;
	align-items: center;
	background: #5E480B;
}
.storesingle ul.nav li p a {
	display: block;
	text-align: center;
	line-height: 1.2;
	font-size: 1.2rem;
	margin: 0;
	padding:0 10px 0 30px;
	width: 100%;
	color:  #fff;
	border: none;
	border-radius: 0;
	box-shadow: none;
	background: none
}
.storesingle ul.nav li.next p a {
	padding:0 30px 0 10px;
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
}
.storesingle ul.next li p a:hover {
	background: none
}
.storesingle ul.nav p a:after {
	display: 	none;
}
/*PRESENT */
.anq {
	margin: 3em 0;
	padding: 0;
}
#PRESENT h5, #PRESENT h6 {
	color: #ef8a1a;
	margin: 0;
	text-align: center;
	font-size: 1.6rem
}
#PRESENT h5 {
	margin-top: 3rem;
}
#PRESENT p a {
	display: block;
	text-align: center;
	line-height: 1.8;
	font-size: 1.4rem;
	margin: 40px auto 0;
	border: 3px solid #ef8a1a;
	padding: 20px;
	width: 80%;
	background: #fff;
	font-family: 'IBM Plex Sans JP', sans-serif;
	
	font-weight: 500;
}
#PRESENT p a:hover {
	background: #ef8a1a;
	border: 3px solid #ef8a1a;
	color: #fff;
}
#PRESENT img {
	padding:0;
}
ul.presentImg {
	display: flex;
	flex-wrap: wrap;
	margin: 	2rem 0;
}
ul.presentImg li {
	width: 50%;
	padding: 1%;
}
ul.presentImg li img {
	border: 1px solid #775141;
	border-radius: 8px;
}
a.btnsizeS {
	margin: 3rem auto;
}
.preBtn {
	margin-bottom: 6vw;
}
.presentmenu {
	display: none;
	padding-top: 20px;
}
.presentmenu_sp {
	display: block;
}
/*anime_____________*/
#boothlist ul {
	animation: fadeInPage .5s ease-out 0s 1 normal;
	-webkit-animation: fadeInPage .5s ease-out 0s 1 normal;
}
@keyframes fadeInPage {
	0% {
		opacity: 0;
		transform: translate3d(0, 20px, 0);
	}
	100% {
		opacity: 1;
		transform: translate3d(0, 0, 0);
	}
}
@media screen and (min-width:520px) {
	.spV {
		display:none;
	}
	.tabV {
		display: block!important;
	}
	.fontSPlTABc {
		text-align: center;
	}
	.fontSPcTABl{
		text-align: left!important;
	}
	section .inner {
		margin: 0 auto 0;
	}

	#pagetop {
		display: block;
	}
	.container .pan {
		display: block;
	}
	.bg2nd {
		background:transparent url(../img/bg_2nd_tab.png) no-repeat center bottom;
		background-size: cover;
		height: 70px;
	}
	#storelist ul li p a {
		text-align: center;
	}
	.accessbox div.box {
		padding: 3rem;
	}
	.imglist .inner {
		width: 100%;
		padding: 0 4vw 4vw;
	}
	.imglist ul li {
		width: 22%;
		margin: 0 1% 2vw;
	}
/*stage*/
body#stage .imglist ul li {
	width: calc(((100% - 3*10px) / 3) - 1px );
	height: auto;
	display: inline-block;
	padding: 5px;
	background: #fff;
	margin: 0 5px 10px;
	position: relative;
}
body#stage .imglist ul li .thum {
	position: relative;
}
body#stage .imglist ul li img {
	width:100%;
	height:auto;
}
body#stage .imglist ul li h3 {
	margin: 1rem 0 0;
	position: relative;
	line-height: 1.2;
	font-size: 1.6rem;
}
body#stage .imglist #MC ul {
	justify-content: center;
	margin: 0 auto;
	width: 100%;
	max-width: 1024px;
}
body#stage .imglist ul.mclist li {
	width: 25%;
	height: auto;
}
body#stage .imglist ul.mclist li img {
}
body#stage .imglist ul.mclist li h3 {
	width: 16vw;
	font-size: 1.6rem
}
body#stage .imglist ul.timetable {
	display: flex;
	justify-content: 	center;
	width: 100%!important;
	max-width: 900px;
}
body#stage .imglist ul.timetable li {
	width: 44.5%;
	height: auto;
	margin: 0 1% 0!important;
	padding: 0;
	border: none!important;
	border-radius: 10px;
	max-width: 	460px
}
body#stage .imglist ul.timetable li img {
	width: 100%;
	height: auto;
	padding-bottom: 0;
}
/*present*/
ul.presentImg li {
	width: 25%;
	padding: 1%;
}
body#booth .imglist ul li {
	width: calc((100% - 40px) / 4);
}
body#booth .imglist ul.smallbooth li {
	width: calc((100% - 5*10px) / 5);
}
#smallbooth h4 {
	font-size: 2rem;
	margin: 3rem 0 2rem;
}
.storesingle p a {
	font-size: 1.6rem;
}
body#stage .imglist ul li {
	width: calc((100% - 3*10px) / 3);
	padding:5px;
	margin: 0 5px 10px;
	position: relative;
}
}
@media screen and (min-width:960px) {
	.spV {
		display:none;
	}
	.tabV {
		display: none;
	}
	.pcV {
		display: inline-block;
	}
	.pctabV {
		display: block;
	}
	.pcV {
		display: block!important;
	}
	.fontSL {
		text-align: center;
	}
	.fontRed {
		text-align: center;
		font-size: 1.8rem;
	}
	.fontRed span {
		display: 	inline-block;
	}
	.inner {
		width: 100%;
	}
	.container .inner .base {
		width: 90%;
	}
	.bg2nd {
		background: transparent url(../img/bg_2nd.png) no-repeat center bottom;
		background-size: cover;
		height: 100px;
	}
	header + section, header + section.imglist, header + section.static, header + section.storesingle {
		margin-top: 120px!important;
		padding: 0 5%;
	}
	.container {
		padding: 	0;
	}
	body#index header + section {
		margin-top: 0!important;
	}
	a.btn:after, .storesingle p a:after {
		font-size: 2rem;
	}

/*menu____*/
header {
	position: fixed;
	top: 0;
	width: 100%;
	height:120px;
}
#header p.infom {
	margin: 0;
	font-size: 1.4rem;
	line-height: .8;
}
#toplogo {
	padding: 0 0 0 10px;
	align-items: center;
	justify-content: center;
	height: 60px;
/* text-align: center; */
}
#header h1 {
	margin: 0;
	text-align: left;
	z-index: 	110;
}
header .inner {
	width: 86vw;
	position: relative;
	background: #fff;
}
input[type="checkbox"] {
	display: none;
}
nav {
	margin: 10px 0 0;
	padding: 0;
	display: block
}
.menu-btn {
	display: none;
}
.mainMenu {
	display: block;
	opacity: 1;
	width: 100%;
	height: auto;
	margin-top: 60px;
	padding: 0;
	overflow-y: hidden;
}
body#index .mainMenu {
	height: auto;
	margin-top: 0;
}
.menu-btn__text {
	display: none;
}
.mainMenu ul {
	text-align: center;
	font-size: 0;
	margin: 0;
	padding: 0;
}
body#index .mainMenu ul {
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: center;
	height: 60px;
	margin: 5px 0 0;
}
.mainMenu li {
	display: inline-block;
	text-align: center;
	margin: 0;
	padding: 0;
	width: auto;
	border-bottom: none;
}
.mainMenu li:first-child a {
	border-top-left-radius: 10px;
	border-bottom-left-radius: 10px;
	padding-left: 20px!important;
}
.mainMenu li:last-child a {
	border-top-right-radius: 10px;
	border-bottom-right-radius: 10px;
	padding-right: 20px!important;
}
.mainMenu li a {
	display: block;
	height: 50px;
	line-height: 50px;
	padding: 0 3px;
	width: auto;
	font-size: 1.3vw;
	color: #5E480B;
	letter-spacing: 0.02rem;
}
body#index .mainMenu li a {
	padding: 0 0.3vw;
	background: #fff;
	height: 40px;
	line-height: 40px;
	font-size: 1.2vw;
	letter-spacing: -0.04rem;
}
.mainMenu li a:after {
	content: "●";
	color: #66C1EE;
	content: "\e908";
	font-family: 'OUTDOORSMILE2024' !important;
	padding-left: 10px;
	display: inline;
	font-size: 10px;
}
.mainMenu li a.icon:after {
	display: none;
}
.mainMenu li a:hover {
	background: none;
	color: #ef8a1a;
}
body#index #header.fixed .mainMenu {
	margin-top: 0px;
}
body#index #header.fixed {
	background: rgba(255, 255, 255, .8);
	height: 80px;
}
#header.fixed {

	height: 70px;
}
#header.fixed .mainMenu {
	margin-top: 30px;
}
#header.fixed .mainMenu li a {
	height: 30px;
	line-height: 30px;
	background: none;
}
#header.fixed #toplogo {
	height: 30px;
}
#header.fixed .infom span {
	display: none;
}
#header.fixed h1 {
	height: 30px;
}
#header.fixed h1 img {
	width: 30px;
	height: 30px;
	margin: 0 auto;
}
#header.fixed .infom {
	margin: 13px 5px 0;
}
#footer {
	height: 85px;
}
#footer .inner {
	padding: 20px 0;
}
.schedule i {
	font-size: 1.4rem;
}
body#index header + section {
	margin-top: 0!important;
}
.container .inner .pan {
	margin: 0 0 3rem
}
.newsbox a h3 {
	font-size: 1.8rem;
}
.ticketbox li {
	width: calc(100% - 2%);
}
a.btn_small {
	font-size: 1.6rem!important;
}
#INFO ul li H4 span.time {
	display: inline;
	margin-left: 0.5rem;
}

/*top*/
#topinfo {
	z-index: 50;
}
.schedule {
	margin: 0 auto;
}
#ABOUT .schedule {
	margin: 20px auto;
}
.andmore {
	margin: 1rem;
}
#storelist .inner {
	margin: 0 auto;
}
.singlepage {
	margin: -35px auto 0;
	padding: 50px 30px 60px!important;
	border-radius: 20px;
	box-sizing: border-box;
	background: #fff;
	max-width: 1280px;
}
.storesingle .info, .storesingle .info2 {
	margin: 20px auto 0;
}
.logo {
	margin-top: 20px;
}
.ticketbox li {
	width: calc(50% - 3%);
}
#storelist ul {
	display: flex;
	flex-wrap: wrap;
}
.storesingle .title + .logo img {
	max-width: none;
	width: auto;
	height: auto;
}
.storesingle div.imgblock img {
	margin-bottom: 5px;
	height:300px;
	width: auto;
}
.storesingle div.imgblock {
	padding: 0 15px;
}
.storesingle p {
	font-size: 1.6rem;
	line-height: 2;
}
.storesingle ul.nav {
	margin-top: 40px;
	margin: 60px auto 30px;
	width: 100%;
}
.storesingle ul.nav li p a {
	font-size: 1.4rem;
}
#storelist ul li .title h3 {
	font-size: 2rem;
}
#storelist ul li {
	width: calc(50% - 20px);
	margin: 0 10px 20px;
	height: auto;
	font-size: 1.6rem;
	line-height: 1.8;
	background: #fff;
	padding: 50px;
	border-radius: 20px;
}
/*ABOUT*/

#ebi, #bird {
	width: 100px;
}
.catch p {
	width: 86%;
}
/*ACCESS*/
.google_map {
	height: 400px;
	padding-top: 0%;
}
.accessbox div.box {
	text-align: left;
	padding: 3rem;
	margin: 1rem;
}
#ACCESS .iconship_root .spV {
	display: none;
}
#ACCESS .iconship_root s {
	display: block;
}
/**/
/*imglist__________*/
.imglist .wraplist {
	display: flex;
	margin: 0 auto;
	flex-wrap: wrap;
}
.imglist ul {
	padding: 0;
	margin: 20px auto 0;
	text-align: left;
	font-size: 0;
}
.imglist ul li {
	width: calc((100% - 7*10px) / 7);
	padding: 10px;
	margin: 0 5px 10px;
}
/*smallbooth*/
.smallbooth ul li h3 {
	font-size: 1.0rem;
	text-align: center;
}
.smallbooth ul li {
	width: 9.7vw;
}
.imglist ul.smallbooth li, .imglist #smallbooth ul li {
	width: calc((100% - 12*10px) / 12);
}
body#booth .imglist ul li {
	width: calc((100% - 5*10px) / 5);
	padding:0;
	margin: 0 5px 10px;
	position: relative;
}
body#booth .imglist ul.smallbooth li {
	width: calc((100% - 7*10px) / 7);
}
.container .inner .pan {
	margin: 0;
}
.container .inner .pan p {
	margin: 0 0 0 1rem;
}
body#booth .logo img {
	max-width: 200px
}
body#booth .storesingle .logo + h3 {
	padding: 20px 0;
}

/*stage*/
body#stage .storesingle .main a {
	font-size: 1.6rem;
}
body#stage .storesingle .main a:after {
	font-size: 1.4rem;
}
/*FAQ*/
.base p, #FAQ ul li p i.list {
	font-size: 1.6rem;
}
#FAQ ul li p span {
	font-size: 1.4rem;
}
#FAQ .subbox {
	padding: 1rem 3rem;
}
/*presetnt*/
a.btnsizeS {
	margin: 3rem auto 2rem;
}
}
@media screen and (min-width: 1200px) {
	.spV {
		display:none;
	}
	.tabV {
		display: none;
	}
	.pcV {
		display: block;
	}
	.container {
		margin: 0 auto;
	}
	#index .container {
		margin: 0 auto;
	}
	#footer {
		height: 85px;
	}
	#footer .inner {
		padding: 20px 0;
	}
/*menu____________*/
#toplogo {
	height: 70px;
}
#header h1 img {
	width: 50px;
	height: 50px;
	margin: 0 auto;
}
#header p.infom {
	margin: 8px 5px 0;
	font-size: 1.8rem;
}
#header p.infom {
	font-size: 1.6rem;
}
.mainMenu {
/* margin-right: 20px; */
}
.mainMenu li a {
	font-size: 1.6rem;
	padding: 2px 1px
}
.mainMenu li {
	padding: 0 3px;
}
body#index .mainMenu li {
	padding: 0;
}
body#index .mainMenu li a {
	font-size: 1.4rem;
	padding: 	0 1rem;
}
body#index #header.fixed .mainMenu li a {
	height: 30px;
	line-height: 30px;
	font-size: 1.6rem
}
body#index #header.fixed {
	height: 70px;

}/*
 header + section {
 margin-top:80px!important;
}
header + section.imglist {
 margin-top: 80px!important;
}
header + section.static {
margin-top: 80px!important;
}
header + section.storesingle {
 margin-top: 80px!important;
}*/
body#index header + section {
	margin-top: 0!important;
}
.title {
	text-align: center;
}
.title h2 {
	line-height: 50px;
	height: 50px;
	padding: 0 50px;
}
#storelist .title h2 {
	margin: 0 auto 30px;
}
#stagelist .title h2 {
	margin: 0 auto;
}
body#index .title {
	font-size: 3rem;
}
h3 {
	font-size: 2.0rem;
}
/*top*/

.newsbox h3 {
	font-size: 2.2rem;
	text-align: center;
}
.newsbox p {
	font-size: 1.6rem;
	text-align: center;
}
#FAQ ul li H4 {
	font-size: 1.8rem;
}
ul.presentImg li {
	width: 16.66666%;
	padding: 1%;
}
.container .pan {
	margin: -30px auto 10px;
	max-width: 1280px;
}
.container .pan p {
	font-family: 'IBM Plex Sans JP', sans-serif;
	font-weight: 700;
	line-height: 1;
}
.container .pan i {
	line-height: 1;
}
}
@media screen and (min-width:1400px) {
	.container {
		padding: 	0 5%;
	}
}
@media screen and (min-width:1600px) {
	#toplogo {
		justify-content: left;
	}
	.mainMenu {
		margin-top: 0;
	}
	.mainMenu ul {
		text-align: right;
	}
	body#index .mainMenu li a {
		font-size: 1.6rem;
		padding: 0 5px;
	}
	#header.fixed, #header.fixed #toplogo {
		height: 60px;
	}
	#header.fixed .mainMenu {
		margin-top: 	0;
	}
	#header.fixed .mainMenu li a {
		height: 60px;
		line-height: 60px;
	}
	#stagelist .title h2 {
		margin: 0 auto 30px;
	}
	header + section, header + section.imglist, header + section.static, header + section.storesingle {
		margin-top:60px !important;
		padding: 0 10%;
	}
/*img_list___________________*/
.imglist ul li {
	width: calc((100% - 9*10px) / 9);
}
/*smallbooth*/
body#booth .imglist ul li {
	width: calc((100% - 7*10px) / 7);
	padding:0;
	margin: 0 5px 10px;
	position: relative;
}
body#booth .imglist ul.smallbooth li {
	width: calc((100% - 10*10px) /10);
	padding:0;
	margin: 0 5px 10px;
	position: relative;
}
/*stage*/
body#stage .imglist ul li {
	width:  calc(((100% - 100px)/5) - 1px);
	height: auto;
	margin: 0 20px 20px 0;
}
body#stage .imglist ul li .thum {
	position: relative;
	width: 100%;
}
}
@media screen and (min-width:1800px) {
	.bg2nd {
		height: 120px;
	}
}

@keyframes blink {
	0%, 100% {
		opacity: 1;
	}
	50% {
		opacity: 0;
	}
}
.blink {
	animation: blink 1s infinite;
}