#sec01_shoplistarea img@charset "UTF-8";


/* TEMPLATE +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ High Resolution parts */
@media only screen and (-webkit-min-device-pixel-ratio:1.5),only screen and (min-resolution:1.5dppx){

}
/* TEMPLATE High Resolution parts end*/



/* INTERFACE */


body{
	-webkit-text-size-adjust:100%;
	margin:0;
	padding:0;
	color: #333;
	position: relative;
	background-color: #fffdf4;
	font-family:'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック',sans-serif;
}
body::after{
	content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
    z-index: -1;
    background-image: url('../img/body_flower.png');
    background-repeat: repeat-y;
    background-position: center top;
    background-size: 100% auto;
}

.all_title{
	width: 100%;
	max-width: 350px;
	margin: 0 auto 45px;
	padding: 10px 0;
	box-sizing: border-box;
	text-align: center;
	font-size: 22px;
	line-height: 1em;
	letter-spacing: 1px;
	color: #fff;
	background-image: url('../img/all_title_bg.png');
	background-repeat: no-repeat;
	background-position: center;
	background-size: 100% 100%;
}
.all_title.yellow{
	color: #faee00;
}


#tyusenkai_area h1{
	margin: 0 auto -1px;
	padding: 40px 20px 70px;
	box-sizing: border-box;
	font-size: 12px;
	line-height: 1em;
	position: relative;
}
#tyusenkai_area h1::after{
	content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
	background-image: url('../img/h1_bg02.png'),url('../img/h1_bg01.jpg');
	background-repeat: no-repeat;
	background-position: center bottom,center;
	background-size: 100% auto,cover;
    z-index: -2;
}
#tyusenkai_area h1 img{
	display: block;
	width: 100%;
	max-width: 417px;
	margin: 0 auto;
}

@media screen and (max-width: 1300px){
	#tyusenkai_area h1 img{
		max-width: 330px;
	}
}

#sec01{
	position: relative;
}
#sec01::after{
	content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
	background-image: url('../img/sec01_bg02.png'),url('../img/sec01_bg01.png');
	background-repeat: no-repeat,repeat;
	background-position: center bottom,center;
	background-size: 100% auto,34px auto;
    z-index: -2;
}

#sec01>div{
	width: 100%;
	max-width: 840px;
	margin: 0 auto;
	padding: 50px 20px 65px;
	box-sizing: border-box;
}

#sec01>div #sec01_copy{
	margin: 0 0 40px;
	padding: 0;
	font-size: 12px;
	line-height: 1em;
}
#sec01>div #sec01_copy img{
	display: block;
	width: 100%;
	max-width: 460px;
	margin: 0 auto;
}

#sec01>div #nittei{
	display: block;
	width: 100%;
	max-width: 420px;
	margin: 0 auto 35px;
}

#sec01>div ul#keihin_01{
	margin: 0 auto 80px;
	padding: 0;
	list-style-type: none;
	overflow: hidden;
}
#sec01>div ul#keihin_01 li{
	width: 32%;
	float: left;
	margin: 0 2% 0 0;
	padding: 0;
	border: solid 4px #e74014;
	border-radius: 5px;
	box-sizing: border-box;
}
#sec01>div ul#keihin_01 li:last-child{
	margin: 0;
}
#sec01>div ul#keihin_01 li img{
	display: block;
	width: 100%;
}

#sec01>div #sec01_text01{
	font-size: 26px;
	font-weight: bold;
	line-height: 1.8em;
	text-align: center;
	margin: 0 auto 40px;
}
#sec01>div #sec01_text01 span{
	font-size: 16px;
}

#sec01>div #sec01_btn{
	display: block;
	width: 100%;
	max-width: 347px;
	margin: 0 auto 55px;
}
#sec01>div #sec01_btn:hover{
	opacity: 0.7;
}
#sec01>div #sec01_btn img{
	display: block;
	width: 100%;
}


#sec01>div #keihin_02{
	width: calc(100% + 40px);
	margin: 0 -20px 30px;
	padding: 50px 20px 40px;
	box-sizing: border-box;
	border-radius: 5px;
	border: solid 4px #c89f69;
	background-color: #fff;
	position: relative;
}
#sec01>div #keihin_02 h2{
	width: 300px;
	font-size: 12px;
	line-height: 1em;
	margin: 0 auto 27px;
	position: relative;
}
#sec01>div #keihin_02 h2 img{
	display: block;
	width: 132px;
	margin: 0 auto;
}
#sec01>div #keihin_02 h2::after{
	content: '';
	display: block;
	width: 195px;
	height: 3px;
	margin: 18px auto 0;
	background-color: #e74014;
}

#sec01>div #keihin_02 h2 img#sarani{
	width: 128px;
	position: absolute;
	top: -60px;
	left: -30px;
}
#sec01>div #keihin_02>img{
	display: block;
	width: 100%;
	margin: auto;
}

#sec01>div #sec01_text02{
	font-size: 14px;
	text-align: center;
	margin: 0 auto;
}


#sec02{
	position: relative;
}
#sec02::after{
	content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
	background-image: url('../img/sec02_bg.png');
	background-repeat: repeat;
	background-position: center;
	background-size: 49px auto;
    z-index: -2;
}

#sec02>div{
	width: 100%;
	max-width: 840px;
	margin: 0 auto;
	padding: 40px 20px 60px;
	box-sizing: border-box;
}

#sec02>div #oubo01{
	display: block;
	width: 100%;
	max-width: 730px;
	margin: 0 auto 50px;
}

#sec02>div>section{
	overflow: hidden;
}
#sec02>div>section>.sec02_num{
	display: block;
	width: 60px;
	float: left;
}
#sec02>div>section>div{
	width: calc(100% - 60px);
	padding: 15px 0 30px 25px;
	box-sizing: border-box;
	float: right;
}
#sec02>div>section>div h3{
	margin: 0 0 35px;
	padding: 0;
	font-size: 20px;
	line-height: 1.4em;
	letter-spacing: 1px;
}
#sec02>div>section>div h3 span{
	font-size: 24px;
	margin: 0 2px 0 0;
	padding: 0;
	position: relative;
}
#sec02>div>section>div h3 span::after{
	content: '';
	display: block;
	width: 100%;
	height: 10px;
	background-color: #ffd200;
	position: absolute;
	bottom: -3px;
	left: 0;
	z-index: -1;
}
#sec02>div>section>div img{
	display: block;
	width: 100%;
	margin: 0 auto 20px;
}
#sec02>div>section>div img#sec02_pic01{
	max-width: 480px;
}
#sec02>div>section>div img#sec02_pic02{
	max-width: 480px;
}
#sec02>div>section>div img#sec02_pic03{
	max-width: 480px;
}

#sec02>div>section>div ul{
	margin: 0 0 25px;
	padding: 0;
	list-style-type: none;
}
#sec02>div>section>div ul li{
	margin: 0 0 10px;
	font-size: 16px;
	font-weight: bold;
}
#sec02>div>section>div ul li::before{
	content: '・';
}
#sec02>div>section>div ul li img{
	display: inline-block;
	width: 38px;
	margin: 0 5px -5px 0;
}

#sec02>div>section>div h4{
	max-width: 115px;
	text-align: center;
	font-size: 20px;
	margin: 0 0 22px;
	padding: 2px 0;
	box-sizing: border-box;
	border-radius: 2px;
	background-color: #ffd200;
}
#sec02>div>section>div ul.list_text li{
	display: inline-block;
	font-weight: normal;
}
#sec02>div>section>div ul.list_text li:first-child::before{
	display: none;
}

#sec02>div>section>div #sec02_btn{
	display: block;
	width: 100%;
	max-width: 294px;
	margin: 0 0 20px;
}
#sec02>div>section>div #sec02_btn:hover{
	opacity: 0.7;
}
#sec02>div>section>div #sec02_btn img{
	display: block;
	width: 100%;
}


#sec02 .all_title.oubobox_title{
	max-width: 400px;
}

#sec02>div ul#sec02_oubobox{
	margin: 0;
	padding: 0;
	list-style-type: none;
	text-align: center;
}
#sec02>div ul#sec02_oubobox li{
	margin: 0 auto 10px;
	font-size: 16px;
	font-weight: bold;
}

#map{
	position: relative;
}
#map::after{
	content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
	background-image: url('../img/sec02_bg.png');
	background-repeat: repeat;
	background-position: center;
	background-size: 80px auto;
    z-index: -2;
}
#map iframe{
	width: 100%;
	height: 405px;
	border: none;
}
#map #map_btn{
	display: block;
	width: 100%;
	max-width: 314px;
	margin: 0 auto;
	position: relative;
	top: -35px;
}
#map #map_btn:hover{
	opacity: 0.7;
}
#map #map_btn img{
	display: block;
	width: 100%;
}

#map>div#other_text{
	width: 100%;
	max-width: 720px;
	margin: 0 auto;
	padding: 40px 20px 150px;
	box-sizing: border-box;
	text-align: center;
}
#map>div#other_text h3{
	font-size: 18px;
	color: #b8985d;
	margin: 0 0 5px;
}
#map>div#other_text p{
	font-size: 16px;
	line-height: 1.8em;
	margin: 0 0 30px;
}
#map>div#other_text p a.tel-link{
	display: inline;
	color: #b8985d;
}
#map>div#other_text a{
	display: block;
	width: 100%;
	max-width: 310px;
	margin: 0 auto;
}
#map>div#other_text a:hover{
	opacity: 0.7;
}
#map>div#other_text a img{
	display: block;
	width: 100%;
}

#column_list_area{
	max-width: 830px;
	margin: 0 auto;
	padding: 30px 0 80px;
}
#column_list_area>h2{
	margin: 0 auto 35px;
}
#column_list_area>p{
	text-align: center;
	margin: 0 auto 35px;
}

#column_list_area .column_box{
    width: 31%;
    margin: 0 1% 30px;
    float: left;
    box-shadow: 0 1px 5px rgba(0,0,0,0.1);
}

/*end*/
.end_text{
	text-align: center;
	font-size: 18px;
	line-height: 1.8em;
	margin: 0 auto 35px;
}

/*チケットについて*/
#sec01_ticketarea{
	margin: 0 0 10px;
	overflow: hidden;
}
#sec01_ticketarea>div{
	width: 48.5%;
	float: left;
}
#sec01_ticketarea>div:last-child{
	float: right;
}
#sec01_ticketarea img.ticket{
	display: block;
	width: 100%;
	margin: 0 auto 10px;
}
#sec01_ticketarea p{
	font-size: 14px;
}
#sec01_ticketext{
	margin: 0 0 60px;
	font-size: 14px;
}

#sec01_shoplistarea{
	margin: 0 0 50px;
    text-align: center;
}
#sec01_shoplistarea h3{
    max-width: 215px;
    text-align: center;
    font-size: 20px;
    margin: 0 auto 22px;
    padding: 2px 0;
    box-sizing: border-box;
    border-radius: 2px;
    background-color: #ffd200;
}
#sec01_shoplistarea ul{
	width: 100%;
	max-width: 600px;
	margin: 0 auto 30px;
    padding: 0;
    list-style-type: none;
}
#sec01_shoplistarea ul li{
    display: inline-block;
    margin: 0 0 9px;
}
#sec01_shoplistarea ul li::before{
    content: '・';
}
#sec01_shoplistarea ul li:first-child::before{
	display: none;
}
#sec01_shoplistarea img{
	display: block;
	width: 100%;
	max-width: 450px;
	margin: 0 auto 30px;
}


