@media print{.header, .header_sp, .navi, .weather_info_sp, .search, .footer_sp, .footer{display:none;}} 

.header{	width:1050px;margin:0 auto;}
.wrap{	width:100%;	margin-bottom:-4px;}




html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
    margin:0;
    padding:0;
    border:0;
    outline: none;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}

body {
	font-family: '游ゴシック体', 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	margin:0;padding:0;
	font-size:1rem;
	line-height:1.8em;
	color:#000;
	font-weight: 450;
	background-color:#5d8725;
}


a {
	color: inherit;
	text-decoration: none;
	transition: all 0.3s;
}

a:hover  {
	filter:alpha(opacity=50);
	-moz-opacity: 0.5;
	opacity: 0.6;
}

img {
	height: auto;
	width: auto;
	max-width: 100%;
	line-height: 100%;
	vertical-align: top;
}
img{
	vertical-align:bottom;
	width:100%;
}

span.txbr{display: inline-block;}

.small{font-size:0.8em;line-height:1.0em;}
.bold{font-weight:bold;}
.btm_space{margin-bottom:15px;}
.btm_border{border-bottom:1px solid #DDD;}

.txt_line_link{

	background-image: linear-gradient(rgba(0, 0, 0, 0) 50%, rgba(201, 215, 229, 1) 50%);
	background-position: 0 0%;
	background-size: auto 200%;
	transition: .3s;
	color:#578fc6;
}
.txt_line_link:hover{
	background-position: 0 100%;
	color: #475777;
}

.loading{
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0px;
	left: 0px;
	background: #ffffff;
	z-index: 10005;
}

.loading:after {
	content: "";
	background: url("../img/load.webp") no-repeat;
	background-size: 200px auto;
	width: 200px;
	height: 200px;
	position: absolute;
	top: 50%;
	left: 50%;
	margin: -100px 0 0 -100px;
	z-index: 10006;
}

p.indent {
	padding-left:1em;
	text-indent:-1em;
	padding-bottom:5px;
}



.material-icons{
	margin-bottom:10px;font-size:1em;
	display: inline-flex;
	vertical-align: middle;
}



/* SNS */
#s-share{
	display:flex;
	align-items: flex-start;
	width:260px;margin:0 auto;
}
.s-share-btn{padding:2px;}
.fb_iframe_widget > span {
	vertical-align: baseline !important;
}



/*------------------------------------------
タイトル下、sp用サブメニュー
------------------------------------------*/
.right_icon{
	display: none;
}

/*------トップに戻るボタン-----*/
.pagetop {
	position: fixed;
	bottom: 90px;
	right: 10px;
	z-index:99;
	font-weight:bold;

	border-radius:50%;
}

.pagetop a {
	display: block;
	text-align: left;
	color: #222;
	text-decoration: none;
	padding: 0;
	color:#FFFFFF;
	transition: all 0.3s;
}

.pagetop a:hover  {
	color: #ffff00;

	padding:0 0 10px 0;
	filter:alpha(opacity=50);
	-moz-opacity: 0.5;
	opacity: 0.6;
	/*transform: rotateZ( 360deg );*/
}


/*------トップに戻るボタン-----*/

/*------右下チケットボタン-----*/
/*
.pageticket {
	position: fixed;
	bottom: 60px;
	right: -10px;
	z-index:99;
	font-weight:bold;
}

.pageticket a {
	display: block;
	text-align: left;
	color: #222;
	text-decoration: none;
	padding: 0;
	color:#FFFFFF;
	transition: all 0.3s;
}

.pageticket a:hover  {
	color: #ffff00;
	padding:0 10px 0 0;
	filter:alpha(opacity=50);
	-moz-opacity: 0.5;
	opacity: 0.6;
}
*/
/*------トップに戻るボタン-----*/


.root {
	position: fixed;
	bottom: 10px;
	right: 10px;
	z-index:99;
	font-weight:bold;

}

.root a {
	display: block;
	text-align: left;
	color: #222;
	text-decoration: none;
	padding: 0;
	color:#FFFFFF;
	transition: all 0.3s;
}

.root a:hover  {
	color: #ffff00;
	padding:0 0 10px 0;
	filter:alpha(opacity=50);
	-moz-opacity: 0.5;
	opacity: 0.6;
}

.text h2 , .event_button{
	font-family: "Mochiy Pop P One", sans-serif;
	font-weight: 400;
	font-style: normal;
}



/*------------------------------------------
メイン画像
------------------------------------------*/

#main{
	padding-top:70px;

}

.main_top{
/*
	background-color:#60c6f2;
	background: linear-gradient(187deg,rgba(28, 184, 237, 1) 0%, rgba(148, 228, 255, 1) 100%);
	background:url("https://025.teny.co.jp/theme/special/bousai-fair/img/yane.png") repeat-x , #60c6f2;
*/
background: #10B7EE;
	/*
	background:url("https://025.teny.co.jp/theme/special/bousai-fair/img/yane.png") repeat-x , url("https://025.teny.co.jp/theme/special/bousai-fair/img/bg_sora.jpg") fixed;
	*/
	background:url("../img/bg_fusen_right.svg") right top no-repeat , url("../img/bg_fusen_left.svg") left top no-repeat ,linear-gradient(180deg,rgba(16, 183, 238, 1) 80%, rgba(255, 235, 57, 1) 100%);

}

#bg_rainbow{

  background-image: url("../img/bg_rainbow.svg");
  background-position: -100px calc(100% + 50px);
  background-size: 60% 100%;
  background-repeat: no-repeat;
	/*

	background:
	url("https://025.teny.co.jp/theme/special/bousai-fair/img/grass_top.webp") bottom repeat-x ,
	url("../img/bg_grass.svg") 50% 40% no-repeat;
	background-size: auto, cover;
	*/



}

/*
#roop {
	width: 100%;
	background: url("https://025.teny.co.jp/theme/special/bousai-fair/img/bg_cloud.webp") repeat-x 100% 100% / auto;
	background-position: 0 0;
	-webkit-animation: bgroop 100s linear infinite;
	animation: bgroop 100s linear infinite;
}

@-webkit-keyframes bgroop {
	from {
		background-position: 0 0;
	}to {
		background-position: -800px 0;
	}
}
@keyframes bgroop {
	from {
		background-position: 0 0;
	}to {
		background-position: -800px 0;
	}
}
*/

#roop {
  width: 100%;
  background: url("https://025.teny.co.jp/theme/special/bousai-fair/img/bg_cloud.webp") repeat-x 0 0 / auto;
  animation: bgroop 100s linear infinite;
}

@keyframes bgroop {
  from { background-position: 0 0; }
  to   { background-position: -600px 0; }
}


#main_img{
	width:95%;max-width:1000px;padding:30px 0;margin:0 auto;
}


#top_enq_stamp{display:grid;grid-template-columns: 1fr 1fr;width:100%;max-width:1000px;margin:0em auto;}
#top_enq_stamp img{width:100%;max-width:600px;}



/*------------------------------------------
項目タイトル
------------------------------------------*/
h1{
	border-bottom: 6px dotted #ff9d00;
	font-size: 1.8em;
	color: #333;
	width:95%;max-width:1000px;margin:0 auto;padding:80px 0 10px 0;text-align:left;
	margin-bottom:50px;

	font-family: "Mochiy Pop P One", sans-serif;
	font-weight: 400;
	font-style: normal;

}


h2{
	display:inline;background: linear-gradient(transparent 60%, #eaf1f7 60%);
	font-size:clamp(18px, 2.5vw, 25px);line-height:clamp(22px, 2.5vw, 28px);
	 text-shadow: 
	       1px  1px 1px #ffffff,
	      -1px  1px 1px #ffffff,
	       1px -1px 1px #ffffff,
	      -1px -1px 1px #ffffff,
	       1px  0px 1px #ffffff,
	       0px  1px 1px #ffffff,
	      -1px  0px 1px #ffffff,
	       0px -1px 1px #ffffff;
}

h2.blue{color:#295fa3;}
h2.green{color:#098d4a;}

p.blue::first-letter{color:#039fde;}

#stage_schedule{
	background-color:#FFFFFF;
	background:url("../img/memo24.png")repeat-x #FFF 50% 10px;padding-top:10px;
	width:90%;max-width:950px;margin:0 auto;padding:1em;box-sizing:border-box;
	font-family: "Mochiy Pop P One", sans-serif;
	font-weight: 400;
	font-style: normal;
	box-shadow: 5px 5px 5px 0 rgba(0, 0, 0, 0.3);
}


#stage_schedule .text{
	font-size:clamp(18px, 2.5vw, 25px);line-height:clamp(18px, 2vw, 26px);padding:1.5em 0 0 0;
}

#stage_schedule_grid{
	display:grid;grid-template-columns:1fr 1fr;color:#FFF;gap:1em;padding:1em;
}

#stage_schedule_grid .day{
	display:block;border-radius:10px;box-shadow: 5px 5px 5px 0 rgba(0, 0, 0, 0.3);padding:20px;box-sizing:border-box;

}

.abs{
	position: absolute;padding:0;
}



.main_ryo{
	padding:20px 0;margin:0 auto 1em auto;width:90%;max-width:960px;border-radius:20px;box-sizing:border-box;
	border-top:20px solid #FFF;
	border-bottom:20px solid #FFF;
	background:url(../img/ryo_bg_white.webp) bottom center repeat-y,url(../img/ryo_bg.webp);
	background-color:#FFF;
}
.ryo_grid{
	display:grid;grid-template-columns:1fr 1fr;width:95%;gap:10px;
	/*margin: -60px auto;padding-bottom:30px;*/margin:0 auto;place-content: center;place-items: end center;
}

.ryo_grid div{width:100%;box-sizing:border-box;}
.ryo_grid div img{width:100%;max-width:380px;margin:0 auto;}

.ryo_grid div:nth-child(1){width:100%;border-right:5px dotted #000;}
.ryo_grid div:nth-child(3){border-right:5px dotted #000;border-top:5px dotted #000;}
.ryo_grid div:nth-child(4){border-top:5px dotted #000;}




.gatanavi{
	display:block;cursor:pointer;margin:10px auto;box-shadow: 0px 3px 5px #777;padding:5px;box-sizing:border-box;color:#FFF;font-weight:bold;background-color:#ee5321;
	border:5px solid #FFF;text-align:center;border-radius:7px;width:90%;
}


/*------------------------------------------
ステージスケジュール
------------------------------------------*/

#stage{
/*
	background:url("https://025.teny.co.jp/theme/special/bousai-fair/img/grass_bottom.webp") bottom;
*/
	background-color:#FFEB39;
	text-align:center;
}
.event_button{
	border:5px solid #FFF;
	background-color:#038e46;
	color:#FFF;
	width:90%;max-width:950px;border-radius:10px;margin:1em auto;display:block;font-size:clamp(18px, 5vw, 25px);line-height:clamp(23px, 5vw, 35px);padding:1em 0;

	font-family: "Mochiy Pop P One", sans-serif;
	font-weight: 400;
	font-style: normal;



	box-shadow: 5px 5px 5px 0 rgba(0, 0, 0, 0.3);
}

/*------------------------------------------
イベント
------------------------------------------*/
#event{

/*	border-top:20px solid #32771b;*/
	background-color:#c3d94e;
	background:url('../img/event_bg.svg') center / cover no-repeat,#c3d94e;

	/*url("https://025.teny.co.jp/theme/special/bousai-fair/img/yane.png") repeat-x 0 -50px,*/
	/*url('https://025.teny.co.jp/theme/special/bousai-fair/img/bg_stripe_y.png'),
	url('../img/event_bg.svg') / cover;*/

}

#event_inner{
	background-image: url('../img/bg_pop.svg');
	background-size: 100% 100%;
	background-repeat: no-repeat;
}


.event_title{
	width:100%;max-width:300px;padding-left:0px;height:60px;/*margin:-55px auto 1% auto;*/margin:-55px auto 3% -20px;
}

#event_grid{
	width:calc(100% - 20px);max-width:1000px;margin:0 auto;
	text-align:left;
	column-count: 2;
	column-gap: 0;
}

.text figure {
}

/*
#event_grid .two_colum{
	grid-column: span 2;text-align:center;padding-left:50px;padding-top:1em;
}

#title_concert{
	max-width:300px;padding-bottom:10px;
}
*/

.text_box_dotted{
	width:100%;
	border:5px solid #000;
	padding:0px;
	margin-bottom:20px;

	border-width: 30px;
	border-style: solid;
	border-image: url("../img/event_bg.webp");
	border-image-slice: fill 30;
	border-image-repeat: round;
	box-sizing:border-box;

	-webkit-column-break-inside: avoid;
	page-break-inside: avoid;
	break-inside: avoid;
}

.concert_grid{display:grid;grid-template-columns:1fr 1fr;gap:5px;padding-top:5px;}

#event_grid .item_grid{
	display:grid;grid-template-columns:80px 1fr;gap:5px;
	width:100%;margin:0 auto;margin: 0 0 0 -35px;width: calc(100% + 25px);
}

#event_grid .item_grid .day{
	text-align:left;margin:0 -100px 0 0;
}

#event_grid .item_grid .day img{
	max-width:80px;
}

#event_grid .item_grid .text{
	border-bottom:2px dotted #CCC;
	margin-bottom:0.5em;
	padding-bottom:1em;
	padding-top:10px;
	padding:10px;

}

#event_grid .item_grid .text p{
	padding:5px 0;
}
/*#event_grid .item_grid .text div{
	padding-top:0.5em;
}
*/
#event_grid .item_grid .text img{
	border-radius:10px;
}

#event #food{
	width:90%;max-width:700px;margin:0 auto;padding-bottom:2em;text-align:center;
}





/*------------------------------------------
フード
------------------------------------------*/
#food_under{
	background-color:#FFFBC3;

	background:url("../img/bg_line_food.webp") repeat-x top center,url("../img/food_bg.webp"),#FFFBC3;
	padding-bottom:0em;

	position: relative;
}
/*
#food_title{
    width: 100%;
    max-width: 300px;
    position: absolute;
    left: 50%;
    top: -20px;
    transform: translateX(-50%);
}

#food_left{z-index:2;}
#food_right{background-color:#FFFFFF;border-radius:20px;border:dashed 2px #EC6D81;box-sizing:border-box;padding:50px 20px 50px 50px;margin:auto 0 auto -55px;z-index:1;}
#food_text{
	width:100%;max-width:1000px;margin:-55px auto 0 auto;
	box-sizing:border-box;
}
*/
#food_text{
	width:100%;max-width:1100px;margin:0 auto;
	box-sizing:border-box;
}
#food_grid{
	display:grid;grid-template-columns:1fr 1fr;place-content: center;place-items: center;padding:20px;
}
@media (min-width: 0px) and (max-width: 1200px) {

	.text figure{
		width: 100%;
	}


	/*------------------------------------------
	イベント
	------------------------------------------*/
	#event{

		/*border-top:20px solid #32771b;*/
		background-color:#c3d94e;
		background:url('../img/event_bg.svg') top center ,#c3d94e;

		/*url("https://025.teny.co.jp/theme/special/bousai-fair/img/yane.png") repeat-x 0 -50px,*/
		/*url('https://025.teny.co.jp/theme/special/bousai-fair/img/bg_stripe_y.png'),
		url('../img/event_bg.svg') / cover;*/

	}


}


/*------------------------------------------
アクセス
------------------------------------------*/
#access{
	background-color:#FFFBC3;

	background:url("../img/bg_line.webp") repeat-x top center,url("../img/access_bg.webp"),#FFFBC3;
	padding-bottom:2em;
}

#access_title{
	width:95%;max-width:300px;margin:0 auto 1em auto;padding-top:10px;
}

#access_map{
	width:95%;max-width:600px;margin:0 auto;background-color:#FFF;border:2px dashed #11a84e;border-radius:20px;padding:20px;box-sizing:border-box;
}

#access_text{
	width:95%;max-width:600px;margin:0 auto;padding-top:10px;font-size:0.8em;
}

/*------------------------------------------
アクセス注目の企画
------------------------------------------*/
#kikaku{
	background-color:#00a84d;background:url('https://025.teny.co.jp/theme/special/bousai-fair/img/bg_stripe_y.png');
}

/*------------------------------------------
見どころ
------------------------------------------*/
#midokoro{
	font-weight:bold;
	background-color:#FFFBC3;
	background:url("https://025.teny.co.jp/theme/special/bousai-fair/img/yane.png") repeat-x 0 -50px,url("https://025.teny.co.jp/theme/special/bousai-fair/img/bg_stripe.png");
	padding:1em 0;

}

#midokoro_grid{
	display:grid;grid-template-columns: 1fr 1fr 1fr;width:95%;max-width:1000px;margin:0 auto;padding:1em 0;gap:10px;
}

#midokoro_grid a{display:block;}
#midokoro_grid img{border-radius:10px;}


/*------------------------------------------
お問い合わせ
------------------------------------------*/
#toi_tel{
	padding:2em;
	background-color:#ffec3f;

	text-align:center;
}

#toi_tel > h1{
	text-align:center;border:none;padding:0;margin-bottom:10px;
}
/*------------------------------------------
fotter
------------------------------------------*/

footer{
	display:grid;
	color:#fff;
	margin-top:1em;
}

#footer_inner{
	display:grid; grid-template-columns: 100px 1fr;width:90%;max-width:1000px;margin:2em auto;
	font-size:0.8em;
}

#footer_inner div:nth-child(odd){padding-right:1em;}
#footer_copy{font-size:0.8em;text-align:center;}









@media (min-width: 0px) and (max-width: 768px) {




	/*------------------------------------------
	メイン画像
	------------------------------------------*/

	#main{
		padding-top:8%;

	}


	#main_img{
		background-size:contain,cover;
	}


	.main_ryo{
		max-width:400px;padding:0;
	}
	.ryo_grid{
		grid-template-columns:1fr;
		gap:10px;
	}

	.ryo_grid div{
		border-right:none;
	}

	.ryo_grid div:nth-child(1){border-right:none;border-bottom:2px dotted #000;padding-top:0;}
	.ryo_grid div:nth-child(3){border-right:none;border-top:2px dotted #000;}
	.ryo_grid div:nth-child(4){border-top:2px dotted #000;}


	#event_inner{
		background-image: none;
	}

	#intro{
		font-size:1.0em;
	}

	.text_box{
		padding:10px;
	}


	#footer_inner{
		grid-template-columns: 1fr;width:80%;
	}

	#footer_inner div:nth-child(even){padding-bottom:1em;}
	#footer_inner div:nth-child(odd){border-bottom:1px solid #FFF;}



}




@media (min-width: 0px) and (max-width: 640px) {



	#bg_rainbow{
		background-position: -100px calc(100% - 140px);
	}



	#food_title{display:none;}
	#food_under{padding:1em 0;}

	.abs{
		position: static;padding:0;
	}


	#event_grid{
		width:calc(100% - 20px);max-width:400px;margin:0 auto;
		text-align:left;
		column-count: 2;
		column-gap: 0;
	}

	#event_grid .item_grid{
		grid-template-columns: 70px 1fr;
	}

	#event_grid .item_grid .day img{
		max-width:70px;
	}

	/*------------------------------------------
	項目タイトル
	------------------------------------------*/
	h2{/*font-size:clamp(13px, 3vw, 25px);line-height:clamp(12px, 3vw, 28px);*/font-size:16px;line-height:1.8em;}

	#event_grid{

		width:calc(100% - 20px);
		column-count: 1;
		column-gap: 0;

	}

	h1{font-size:1.5em;}


	.ticket_table{
		display:block;
		width:100%;
	}

	/*------トップに戻るボタン-----*/
	.pagetop {
		bottom: 50px;
	}

	.pagetop a, .root a {
		width:30px;
		display: block;
		text-align: left;
		text-decoration: none;
	}

	.pagetop a:hover  {
		padding:0 0 0 0;
		/*transform: rotateZ( 360deg );*/
	}

	/*------トップに戻るボタン-----*/


	/*------トップに戻るボタン-----*/


	#top_enq_stamp{grid-template-columns: 1fr;}


	/*------------------------------------------
	見どころ
	------------------------------------------*/
	#midokoro_grid{
		grid-template-columns: 1fr 1fr;
	}


	/*------------------------------------------
	schedule
	------------------------------------------*/
	.e_sub,.event_name { font-size:25px;}


	/*------------------------------------------
	food
	------------------------------------------*/
	#food_grid{
		display:grid;grid-template-columns:1fr;
	}



}

@media (min-width: 0px) and (max-width: 460px) {

	#bg_rainbow{
		background-position: -100px calc(100% - 100px);
	}
}

@media (min-width: 0px) and (max-width: 400px) {
	body{	font-size:1.0em;}
	#footer_copy{font-size:0.7em;line-height:1.8em;padmarginding:20px 0;}

	.event_box {
		grid-template-columns: repeat(1, 1fr);
		font-size:13px;
	}

	/*------------------------------------------
	見どころ
	------------------------------------------*/
	#midokoro_grid{
		display:grid;grid-template-columns: 1fr;
	}

}