@charset "UTF-8";

body{
	font-size:12px;
	line-height:1.5;
}
h2 span,
h3 span{
	font-size:11px;
}
img{
	max-width:100%;
	height:auto;
}
a{
	word-wrap:break-word;
}
.btn a{
	padding:20px;
}
.btn2 a{
	padding:10px;
}
.btn a span{
	display:inline-block;
	font-size:0.6em;
}
.btn.half a{
	width: 100%;
	padding: 15px;
}
p,li,dt,dd,td{
	font-size: 14px;
	line-height:1.75;
}
em{
	font-style:normal;
	font-weight:700;
	font-size:1.1em;
}
small{
	font-size:10px;
}
section+section{
	padding-top: 60px;
}
header{
	width:100%;
	margin: 0 auto 0 auto;
	position:relative;
	padding:0;
	text-align:center;
}
.headerWrap{
	width:100%;
}
header h1,.main_logo{
	width: 36.16%;
	max-width: 200px;
	line-height: 0;
	margin:10px auto;
	padding:0 0 0 0;
}
header h1 img,.main_logo img{
	width:100%;
	height: auto;
}
.head_date{
	position:relative;
	right: auto;
	top:auto;
	text-align:center;
	width:auto;
	padding: 0 7% 15px 7%;
}
.head_date img{
	width:100%;
	height:auto;
}
.not_strong{
	font-size: 11px;
}
nav{
	/*display:none;*/
	width: 100%;
	border-top:none;
	position: absolute;
}
header nav a{
	color: #20253c;
}
.follow_header{
	display:none;
	z-index: 1000;
	border-bottom:0;
	box-sizing: border-box;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.follow_header h1{
	display: block;
}
#header2{
	background:#fff;
	/*position: absolute;*/
	text-align: center;
	height: 100vh;
	max-height: 100%;
	overflow-y: scroll;
}
.sub_nav_block{
	background: #fff;
	/*display: none;
	position: fixed;
	top: 0;
	left: 0;
	letter-spacing:-.4em;*/
	padding: 40px 0 0;
	text-align:center;
	width: 100%;
	/*height: 100%;*/
	height: auto;
	/*z-index:1000;*/
}
.sub_nav_block li{
	display: inline-block;
	letter-spacing:0.08em;
	margin:0;
	text-align:center;
	width: 100%;
	/*height:60px;*/
}
.sub_nav_block li a{
	background:none;
	line-height:60px;
	border-bottom: #f4f4f4 solid 1px;
}
.sub_nav_block li a span{
	display:block;
	width:45px;
	height:45px;
	margin-left:calc((100% - 45px)/2);
	margin-right:calc((100% - 45px)/2);
}
.sub_nav_block li a span svg{
	width:100%;
	height:auto;
}
.sub_nav_block li a span svg#iconFood,
.sub_nav_block li a span svg#iconNews,
.sub_nav_block li a span svg#iconAccess,
.sub_nav_block li a span svg#iconFaq{
	width:44%;
	margin:0 28%;
}
.sub_nav_block li a span svg#iconActivity,
.sub_nav_block li a span svg#iconShop,
.sub_nav_block li a span svg#iconAreamap,
.sub_nav_block li a span svg#iconContact{
	width:62%;
	margin:0 19%;
}
.sub_nav_block li.menu_about ul,
.sub_nav_block li.menu_contents ul{
	display:-webkit-box;
	display:-ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
.sub_nav_block li.menu_about ul li,
.sub_nav_block li.menu_contents ul li{
	background-color: #f4f4f4;
	box-sizing: border-box;
	width:50%;
}
.sub_nav_block li.menu_about ul li{
	width: 100%;
}
.sub_nav_block li.menu_about ul li:nth-child(2n),
.sub_nav_block li.menu_contents ul li:nth-child(2n){
	border-left: #ddd solid 1px;
}
.sub_nav_block li.menu_about ul li:nth-child(n+3),
.sub_nav_block li.menu_contents ul li:nth-child(n+3){
	border-top: #ddd solid 1px;
}

/*.sub_nav_contents{
	font-size:0;
	padding: 30px 0;
}
.sub_nav_contents li{
	display: inline-block;
	margin: 0 0 25px 0;
	width: 50%;
}
.sub_nav_contents li a{
	display:inline-block;
}
*/
#attention_btn {
	position: relative;
	top: auto;
	left: auto;
	display: block;
	z-index: 1;
	width: 100%;
	margin: 0;
	margin-top: 0;
}
#attention_btn a{
	background: none!important;
}
#attention_btn img{
	width: 90%;
	margin: 5%;
}

.body_unit{
	margin-top:0;
	padding-top:0;
	padding-bottom: 0;
}
.contents_body > section{
	padding: 60px 0;
}
section+section{
	padding-top: 60px;
}
.contents_body h1, aside h1{
	font-size:22px;
}
aside{
	width:100%;
	margin:0;
	padding-top: 60px;
	padding-bottom: 30px;
	background:#fff;
}
aside h1{
	margin:0 5%;
	position: relative;
	width: 90%;
	text-align: center;
	background: none;
}
aside h1 .logo_close{
	position: absolute;
	right: 0;
	top: 0;
	width: 4.06%;
}
aside h1 .logo_close img{
	width: 100%;
	height: auto;
	vertical-align:middle;
}

body aside ul{
	margin:0 auto;
	width:100%;
	overflow:hidden;
	padding: 20px 0 0px 0;
	font-size:0;
	margin-bottom: 40px;
	text-align: center;
}
aside ul li{
	display:inline-block;
	vertical-align:middle;
	height:auto;
	text-align:center;
	width:22.5%;
	margin:0;
	padding: 10px 5.4%;
}

aside ul li img{
	max-width:100%;
	height:auto;
}
#sponsored .sponsoredlink{
	width: 100%;
}
aside ul.sponsoredlink li{
	width: 28%;
	padding: 12px 7%;
}
aside ul.sponsoredlink li:nth-child(3){
	width: 44%;
    padding: 12px 0;
}

footer{
	min-width:0;
	margin: 0 0 10px 0;
	padding-top: 30px;
}
footer p{
	width:auto;
}
#footer_logo{
	padding: 0 0 0 0;
	margin:15px auto 0 auto;
	width: 30%;
}
#sns_head{
	position:static;
	text-align:center;
	margin-bottom: 40px;
}

#twitter-widget-0{
	width:100%;
}


.contents_body{
	width: 90%;
	margin: 0 5%;
}
.contents_body h1{
	margin-bottom:45px;
}
aside h1{
	margin-bottom:15px;
}
ul.col2,
ul.col3{
	margin: 0 -15px -15px 0;
}
ul.col2 li,
ul.col3 li{
	display:inline-block;
	margin: 0 15px 15px 0;
	vertical-align:top;
}
ul.col2 li{
	width:calc(50% - 15px);
}
ul.col3 li{
	width:calc(33.33% - 15px);
}


.bx-wrapper .bx-viewport {
  padding: 0 !important;
  left: 0px !important;
}
.bxslider img {
	margin:0 auto;
	display:block;
	max-height:250px;
	width:auto;
}

#main_v{
	width: auto;
	margin: 10px 0 0;
}
.slick-dots {
	bottom:inherit;
}

a.goticket{
	background: #ff7825;
	text-align: center;
	width: 100%;
	display: block;
}

.event_contents{
	margin:0;
	margin-left: -5%;
	padding: 10px 0 0 0;
}
.event_contents li{
	width: 42.5%;
	margin: 0 0 5% 5%;
}
.event_contents li a{
	width:100%;
}


.top_ticket_information a{
	margin-right:0;
}
#kyousan{
	margin-top: 45px;
	padding: 20px;
}


/*common*********************************************/
.contents_archives_title{
	padding: 50px 0 15px 0;
}

.menu_toggle img{
	vertical-align:baseline;
}

section h2{
	font-size:20px;
	margin-bottom:15px;
}
section h3{
	font-size:18px;
}
section article{
	letter-spacing: 0.06em;
  padding-top:60px;
}

.contents_detail_img{
	width:100%;
	vertical-align:top;
	margin-bottom:20px;
	margin-right: 0;
}
.contents_detail_img > img{
	width:100%;
	height:auto;
}
.contents_detail_body,
.contents_detail_img .logo{
	width:100%;
}
.col1 .contents_detail_body{
	margin-top: 0;
}
.contents_detail_img .logo img+img{
	margin: 0 0 0 25px;
}
.contents_detail_body p{
	font-size: 14px;
}
.contents_detail_body p+p{
	margin-top:1em;
}
.contents_detail_body .contents_profile{
	padding:15px;
	margin-top:15px;
}
.contents_detail_body .contents_profile p{
	font-size: 12px;
}
.contents_detail_body .contents_profile strong{
	font-size:12px;
}

.contents_list{
	margin:0 -3.34% -10px 0;
}
.contents_list li{
	width:46.66%;
	margin:0 3.34% 10px 0;
}
.contents_list li p{
	font-size:10px;
	line-height:1.25;
	padding:7px 0 0 0;
	word-break: break-all;
}

.cl_ws p:before,
.cl_activity p:before,
.cl_food p:before,
.cl_shop p:before{
	font-size:10px;
	transform: scale(0.72);
	margin-top:-23px;
	margin-left:-11px;
	width:80px;
	height:18px;
}

.about_ticket_link a img{
	width:100%;
	max-width:250px;
	height:auto;
}

.timetable_live{
	margin:30px 0;
	width:100%;
	height:auto;
}


/*contact--------------------------------------*/

table{
	margin: 45px 0;
}
table th{
	font-size: 14px;
	padding: 0.75em 0;
}
table td{	
	padding: 0.75em 0;
}
.stay table{
	width: 100%;
}
.stay table td:first-child{
	text-align: left;
	padding: 0.75em 0 0.75em 0.75em;
	width: 64%;
}

#contact_form table th{
	background:#e7e7e7;
	text-align:left;
	border:1px solid #ccc;
	padding:10px;
	width:auto;
}


/*shop*/
.mountainlabo_item img{
	display:block;
	width:100%;
}
.mountainlabo_credit{
	display:block;
	width:100%;
	margin: 0 0 0 0;
}

#cboxLoadedContent{
	border:0 solid #fff;
	background:#fff;
}


/*news*/
.news_special_img img{
	width:100%;
}


/**/
#timetable_day1sp table ,#timetable_day2sp table {
	margin:0 0 15px 0;
}
#timetable_day1sp table td,#timetable_day2sp table td{
	padding: 0 5px 10px 5px;
	font-size:10px;
}
#timetable_day1sp table img,#timetable_day2sp table img{
	width:100%;
	height:auto;
}

#timetable_day1sp table .tt_time_sp,#timetable_day2sp table .tt_time_sp{
	background:#eee9db;
	white-space:nowrap;
	font-size:14px
}

#tgstage_sp{
	background:#e83928;
	text-align:center;
	padding:3px 0;
}
#tt_date_sp{
	border-bottom:6px solid #eee9db;
	margin-bottom:10px;
}
#tt_date_sp li{
	width:46%;
	max-width:300px;
	border-radius:5px;
	background:#dcdcdc;
	display:inline-block;
	padding:10px 0;
	text-align:center;
	line-height:0;
	vertical-align:top;
}

#tt_date_sp li.ttsp_day1{
	margin:0 15px 0 0;
	padding:10px 0 15px 0;
	border-bottom-left-radius:0;
	border-bottom-right-radius:0;
	background:#eee9db;
}

.tt_tgstage_program{
	background:#e83928;
	border-bottom:1px solid #fff;
}
.tt_tgstage_program2{
	background:#249fc1;
	border-bottom:1px solid #fff;
}

/*hamburger menu icon*/
#sp-navi{
	position:fixed;
	top:0;
	right:0;
	line-height: 0;
	z-index:1001;
	background-color: var(--bgpointcolor);
}
#panel-btn{
  display: inline-block;
  position: relative;
  width: 56px;
  height: 56px;
  margin: 0px;
}
#panel-btn-icon{
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 30px;
  height: 2px;
  margin: -1px 0 0 -15px;
  background: #fff;
  transition: .2s;
}
#panel-btn-icon:before, #panel-btn-icon:after{
  display: block;
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 30px;
  height: 2px;
  background: #fff;
  transition: .3s;
}
#panel-btn-icon:before{
  margin-top: -12px;
}
#panel-btn-icon:after{
  margin-top: 10px;
}
#panel-btn .close{
  background: transparent;
}
#panel-btn .close:before, #panel-btn .close:after{
  margin-top: 0;
}
#panel-btn .close:before{
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
}
#panel-btn .close:after{
  transform: rotate(-135deg);
  -webkit-transform: rotate(-135deg);
}


.top_ticket_information p img {
    width: 100%;
    height: auto;
}


#photo_archive ul{
	text-align:center;
	font-size:0;
}
#photo_archive ul li{
	display:inline-block;
}
#photo_archive ul li img{
	max-width:100%;
	height:auto;
}
#photo_archive ul li{
	margin:0 3.5% 9% 3.5%;
	width:auto;
}
#photo_archive ul li img{
	max-width:100%;
}
#photo_archive ul #p1,#photo_archive ul #p2,#photo_archive ul #p3,#photo_archive ul #p4,#photo_archive ul #p15,#photo_archive ul #p16,#photo_archive ul #p19,#photo_archive ul #p20{
	max-width:43%;
}
#photo_archive ul #p6{
	max-width:40%;
}
#photo_archive ul #p7{
	max-width:35%;
}
#photo_archive ul #p8,#photo_archive ul #p9,#photo_archive ul #p11,#photo_archive ul #p14,#photo_archive ul #p18,#photo_archive ul #p21{
	max-width:34%;
}
#photo_archive ul #p10{
	max-width:53%;
}
#photo_archive ul #p12{
	max-width:45%;
}
#photo_archive ul #p13{
	max-width:29%;
}
#photo_archive ul #p17{
	max-width:55%;
}


.get_pdf{
	display:inline-block;
	width:100%;
	background:#239fc1;
	color:#fff;
	text-align:center;
	padding:10px 0;
	margin:20px 0 0 0 ;
}


#food_shop_map_sp li a{
	padding:10px 5px;
	background:#eecc06;
	color:#fff;
	display:block;
	margin-bottom:5px;
}
#food_shop_map_sp li.beerv a{
	background:#f39700;
}

.andmorelogo{
	margin: 30px 0;
	padding: 0;
}



.attention_page ul{
	padding:20px 0 0 0;
}

.addone_contents{
	border-top: 1px solid  #aaa;
	padding-top: 1.5em;
}


.titmetable_link a{
	margin-bottom: 20px;
}



.pcBr{
	display:inline;
}
.spBr{
	display:block;
}
.gotop {
	display:none;
}

#ticket_follow_btn .pcBtn{
	display: none!important;
}
#ticket_follow_btn{
	bottom: 0;
	right: 0;
	text-align: right;
	width:100%;
	z-index: 999;
}
#ticket_follow_btn a{
	border-radius: 0;
	width: 100%;
	height: auto;
	padding:0;
}
#ticket_follow_btn a.ticket_close{
	background:none;
	display: inline-block;
	position: fixed;
	width: 4.06%;
	padding: 3%;
	bottom: 7px;
	right: 0px;
	z-index: 99999;
}
a.ticket_close img{
	width:100%;
	display: inline-block;
	margin: 15%;
}

ul.attention{
	margin-left: 1.5em;
}