* {
	box-sizing:		border-box;
	margin:			0;
	padding:		0;
}


/* -------------------------------------*
	body
 * -------------------------------------*/
body {
	font-size:		14px;
	font-family:	"Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
	background:url(../images/bg001.svg) center;
/*	background:url(../images/bg_body2.jpg) center;
*/	line-height:1.6em;
	color:#fff;
}
/* -------------------------------------*
	回りこみ解除
 * -------------------------------------*/
.clearfix:after		{ display: block; clear: both; height: 0px; visibility: hidden; content: "."; }
.clearfix			{ min-height: 1px; /* IE6、7対策 */ }
* html .clearfix	{ height: 1px; /*¥*//*/	/* MAC IE5.x対策 */ height: auto; overflow: hidden; }

/* ----------------------------------------*
	共通
 * ----------------------------------------*/
img				{ max-width:100%; vertical-align:bottom; }
ul				{ list-style:none; margin:0; padding:0; }
.list			{ padding-left:1em; text-indent:-1em; }
.indent p		{ padding:0 0 0 1em; text-indent:-1em; margin:0; }

ul.col2			{ width:100%; }
ul.col2 li		{ float:left; width:49%;  }
ul.col2 li + li	{ float:right; width:49%;  }
h1				{ color:#fff; font-size:36px; padding:1em 0 .7em 0; margin-bottom:1.3em; text-align:center; border-bottom:solid 4px #fff; vertical-align:middle; }
h1 img			{  }
h1 span			{ display:inline-block; position:relative; }
h1 span:before	{ display:inline-block; position:absolute; width:97px; height:46px; content: "●"; background:url(../images/menu_b.png) no-repeat; margin:-.4em 1em 0 -3.5em; }
h1 span:after	{ display:inline-block; position:absolute; width:97px; height:46px; content: "●"; background:url(../images/menu_b.png) no-repeat; margin:-.4em 0 0 1em; }

/*
h1:before		{ content:url(../images/icon_ikari.svg);display:inline-block; width:60px; height:50px;background-size:contain; vertical-align:bottom; margin-right:.8em;}
*/
a				{ color:#FFFF00; }
a:hover			{ color:#efefef; }
a.link			{ text-decoration:none; }
a.link:after	{ content: "●"; content:url(../images/ecalic033_007.png?v0.1); padding-left:0.2em; padding-right:0.6em; }
a.link			{ text-decoration:underline; }

}

/*
.icon {
	display:inline-block;
	margin:0 1em 0 0;
	width:60px;
	height:60px;
	background:url(../images/icon_ikari.svg) no-repeat;
}
*/

.pc_block	{ display:block; }
.sp_block	{ display:none; }

/* ----------------------------------------*
	ページ
 * ----------------------------------------*/
.base			{ width:1000px; margin: 0 auto; box-sizing:border-box; }
.page_base		{ /*background:#000; */ background: url(../images/bg2.png); }
.sec_wrapper	{ width:100%; padding:30px 60px; box-sizing:border-box; }
.box			{ border:solid 6px #fff;  background:#FF0000; }
.box h2			{ /*width:50%;*/ background: #fff; color:#ff0000; padding:5px 0; font-size:16px; text-align:center; letter-spacing:0.1em;font-size: 20px;}
.box_inner		{ padding:1em; }


/* ----------------------------------------*
	最上段ナビ
 * ----------------------------------------*/
#top_navi			{ width:100%; background:#000; padding:5px 0; /*position:fixed;*/ z-index:997; }
#top_navi .wrapper	{ color:#fff; font-size:12px; font-weight:bold; letter-spacing:0.1em; }
#top_navi a			{ color: #fff; text-decoration:none; }
#top_navi a:hover	{ color: #ffff00; }

/* ----------------------------------------*
	ヘッダ（メインビジュアル）
 * ----------------------------------------*/
#header						{ width:100%; min-width:100%; /*background:url(../images/bg_cloud-EDIT.png) top center no-repeat;*/ }
#header .main_visual		{ width:1000px; margin:0 auto; padding:0px 0 0 0; }

/* ----------------------------------------*
	メニュー
 * ----------------------------------------*/
#gmenu						{ width:100%; min-width:100%; height:auto;background: url(../images/bg2.png); /*background:url(../images/bg_menu.png) repeat-x;*/ border-top:solid #ff0000 30px; border-bottom:solid #ffff00 30px; }
#gmenu ul					{ display:flex; justify-content:space-around; width:80%; margin:20px auto; }
#gmenu li					{ padding:.5em; }
#gmenu li:nth-child(1)		{ padding-top:0px; }
#gmenu li:nth-child(2)		{ padding-top:0px; }
#gmenu li:nth-child(3)		{ padding-top:0px; }
#gmenu li:nth-child(4)		{ padding-top:0px; }
#gmenu li:nth-child(1) img	{ transform: rotate(-2deg); }
#gmenu li:nth-child(2) img	{ transform: rotate(1deg); }
#gmenu li:nth-child(3) img	{ transform: rotate(-1deg); }
#gmenu li:nth-child(4) img	{ transform: rotate(2deg); }

/* ------------------------------*
	メニュー2
 * ------------------------------*/
#menu2		{ padding:60px 30px 0 30px; }
#menu2	div { padding:0px 0px 0px 0px; float:left;  width:50%; text-align:center; }

/* ------------------------------*
	最下段コピーライト
 * ------------------------------*/
#copyright			{ background:#000; padding:5px 0; margin-top:30px; }
#copyright .inner	{ color:#fff; font-size:12px; text-align:center; }




/* ----------------------------------------*
	開催概要
 * ----------------------------------------*/

#about ul.col2 li		{ float:left; width:52%;  }
#about ul.col2 li + li	{ float:right; width:46%;  }



#outline table					{ width:100%; }
#outline table th				{ padding:.6em 1.0em .6em .5em; vertical-align:top; white-space:nowrap; }
#outline table td				{ padding:.6em .5em .6em 1.0em; vertical-align:top; }
#outline table td span			{ display:block; text-indent:-1em; padding-left:1em; font-size:12px; }
#outline.box					{ background: #FFFF00; }
#outline .box_inner				{color: #000;}
#outline.box h2                 { color: #000; }
#outline.box a 					{ color: #ff0074;}
#outline.box a:hover		    { color:#000; }
/*
#outline
*/
p.catch	{ font-size:17px; text-align:left; padding:0em 100px 2em 100px; line-height:1.6em; }

#location		{ /*margin-top:20px;*/ padding:0; }
/*
#location ul	{ margin:.5em 0; }
#location p		{ padding:.5em; line-height:1.6em;letter-spacing: 0.5px; }
*/
#location .note h3	{ text-align:center; padding:0 .5em; margin:1em 0 .5em 0; font-size:14px; }
#location .note p	{ text-align:left; padding:0; margin:0; font-size:14px; }

#location.box 	{ background:#39B44A;}
#location.box h2{ color:#39B44A;}

/*
#location p img	{ width:190px; float:left; margin:.5em 1em .5em 0; }
*/
.access	        { margin:16px 0 6px 0; }


/* ----------------------------------------*
	マップ
 * ----------------------------------------*/
#gmap				{ height:307px; margin-top:2em; color:#333; }
.addr				{ background:#663300; color:#fff; padding:.2em 1em; text-align:center; }

#gmap2				{ height:312px; margin-top:2em; color:#333; }


/* ----------------------------------------*
	エントリー
 * ----------------------------------------*/
#blk_entry p.catch	{ text-align:center; padding:0em 0 2em 0; }

.area 	  	     	{ text-align: center; padding-bottom: 30px;}

#entry_outline p				{ padding:.5em .5em 1em 1em; }
#entry_wrapper li				{ float:left; width:49%; }
#entry_wrapper li + li			{ float:right; width:49%;  }
/*
#entry_wrapper #entry_flow			{ text-align:center; }
#entry_wrapper #entry_flow li		{ width:100%; text-align:center;  }
#entry_wrapper #entry_flow li img	{ width:70%; }
*/
.ttl-entry						{ position:absolute; top:-100px; left:30%; }
#entry_outline .list			{ display:block; text-indent:-1em; padding-left:1em; font-size:12px; }

ul#blk_btn_entry				{ margin:1em 0; }
ul#blk_btn_entry li				{ float:left; width:50%; padding:3px 6px; }
a.go							{ width:190px; display:block; background:#1B1464; color: #fff; text-align:center; text-decoration:none; padding:6px 0; border-radius:10px; border:solid 2px #000; }

table.entry_menu				{ width:100%; margin:.5em 0 1em 1em; }
table.entry_menu th				{ padding:.2em 0; border-bottom:1px #ccc dotted; }
table.entry_menu th:before		{ content:'●'; }
table.entry_menu td				{ padding:.2em 1em; border-bottom:1px #ccc dotted; }
table.entry_menu td:before		{ content:''; }
table.entry_menu th span		{ color:#FF3366; }

#entry_special .box			{ border:solid 6px #ff9900;  background:#fff; border-radius:10px; }
#entry_special .box h2		{ width:100%; background:#ff9900; }
/*
.entry_contents_wrapper		{ background:url(../images/BB.png) center;}
*/
#entry_special .pic			{ text-align:center; }
#entry_special .pic img		{ width:96%; }
#entry_normal .box			{ border:solid 6px #ff9900;  background:#fff; border-radius:10px; }
#entry_normal .box h2		{ width:100%; background:#ff9900; }

ul.col2 li#entry_special	{ float:left; width:49%;  }
ul.col2 li#entry_special img	{ width:49%;  }
ul.col2 li#entry_normal		{ float:right; width:49%;  }
#entry_normal .pic2 p img   {width: 60%; float: left; margin: 0 0.5em 0.5em 0; }

.blk_btn_entry_single		{ margin:1em 0; }
.blk_btn_entry_single a.go	{ margin:0 auto; }

#profile					{ width:560px; margin:20px auto; }
#profile .box				{ border:solid 6px #ff9900;  background:#fff; border-radius:10px; padding:30px 20px; position:relative; }
#profile .box ul			{  }
#profile .box li			{ float:left; width:40%; text-align:right; }
#profile .box li +li		{ float:right; width:60%; text-align:left; }
a.profile					{ width:200px; display:block; margin:30px auto 0 auto; background:#FF6600; color: #fff; text-align:center; text-decoration:none; padding:6px 0; border-radius:10px; border:solid 2px #000; }
#profile .box .mascot03 	{ width:90%; }


/* ------------------------------*
	contents
 * ------------------------------*/

/*
#entry_contents				{ line-height: 2;text-align:center; border:solid 6px #47BA00;  width:900px; margin: 0 auto; box-sizing: border-box; border-radius:10px; background:#fff url(../images/BB.png) center;  }
#entry_contents h2     		{ font-weight:bold; font-size:25px; width:100%; background:#47BA00; color: #fff;}
#entry_contents h3     		{ line-height: 2; font-weight:bold; font-size:23px; }
#entry_contents h4     		{ line-height: 2; font-size:17px; }
#entry_contents hr     		{ line-height: 2.5; width: 100%; background-color: #663300;}
*/

#entry_contents		{ line-height:2;text-align:center; border:solid 6px #47BA00; margin: 0 auto; box-sizing: border-box; border-radius:10px; background:#fff url(../images/BB.png) center no-repeat;  }
#entry_contents h2	{ font-weight:bold; font-size:25px; width:100%; background:#47BA00; color: #fff;}
#entry_contents h3	{ line-height:2; font-weight:bold; font-size:23px; }
#entry_contents h4	{ line-height:2; font-size:17px; }
#entry_contents hr	{ line-height:2.5; width: 100%; background-color: #663300;}

#entry_contents #d12	{ padding:1.5em 0; }
#entry_contents #d12 h3	{ color:#005DFF; }
#entry_contents #d13	{ padding:1.5em 0; }
#entry_contents #d13 h3	{ color:#F91121; }
#entry_contents h4		{ margin-top:1em; }
#entry_contents h4 span	{ display:inline-block; margin-right:1em; }




/* ------------------------------*
	info
 * ------------------------------*/
#blk_info		{  }
#blk_info .inner{ padding:80px 0 0 0; position:relative; }
#info .box_inner{ height:200px; overflow:auto; background:#0000FF;}
#info h2   		{color:#0000FF;}
#blk_info dl	{ font-size:12px; min-height:400px; }
#blk_info dt	{ color:#ffff00; }
#blk_info dd	{ border-bottom:1px #ccc dotted; padding-bottom: .5em; margin-bottom:.8em; }

#blk_info ul.col2 li + li	{ padding-left:20px; }

#ask				{ margin-top:84px; }
#ask a				{ color:#ff0074; }
#ask a:hover		{ color:#000; }

/*
#ask a.btn			{ display:block; width:40%; margin: 10px auto;  background:#FF3366; color: #fff; text-align:center; text-decoration:none; padding:6px 0; border-radius:10px; border:solid 2px #000; }
#ask abtn.:hover	{ background:#FFFF66; color: #FF3366; font-weight:bold; }
*/
#ask table			{ width:100%; }
#ask table th		{ padding:0; font-weight:normal; }
#ask table td		{ padding:0; }
#ask table td span	{ display:block; text-indent:-1em; padding-left:1em; font-size:12px; }

#ask .tel			{ display:block; color:#ff0000; font-size:16px; }
#ask p + p			{  }
#ask.box 			{background:#FFFF00;}
#ask.box h2			{color:#000;}
#ask .box_inner 	{color:#000;}

.mascot01			{ position:absolute; top:0px; left:280px; width:250px; }
.mascot02			{ position:absolute; top:20px; left:580px; }




@media screen and (max-width: 768px) {
	.pc_block	{ display:none; }
	.sp_block	{ display:block; }

	#header						{ background-size:868px; }
	#header .main_visual		{ width:98%; margin:0 1%; padding:0px 0 5px 0; }

	.base			{ width:100%; margin: 0 auto; }
	.page_base		{ margin:0 10px; }
	.sec_wrapper	{ padding:30px 20px; }


	/* ------------------------------*
	メニュー2
 	* ------------------------------*/
	#menu2		{ margin:10px 0 0 0 ;}
	#menu2	div { padding:0px 0px 0px 0px; float:none;  width: 70%; text-align: center; margin: 0 auto;}
	#menu2	div + div { padding:20px 0px 0px 0px; }
/*
	#menu2  div a:hover { animation:none; }
*/

	#about ul.col2 li		{ float:none; width:100%;  }
	#about ul.col2 li + li	{ float:none; width:100%; margin-top:30px; }

	/* 開催概要 */
	#outline table					{ width:100%; }
	#outline table th				{ display:block; width:100%; padding:.2em 1em; background:#fff; color:#ff0000; border-radius:5px; }
	#outline table td				{ display:block; width:100%; padding:.5em 1em 1em 1em; }
	#outline table td span			{ display:block; text-indent:-1em; padding-left:1em; font-size:12px; }
	#info .box_inner{ height:245px; overflow:auto; }
	.mascot01			{ position:absolute; top:0px; left:140px; width:260px; }
	.mascot02			{ position:absolute; top:40px; left:380px; }

	p.catch	{ font-size:14px; text-align:left; padding:0em 0 2em 0;}

/*
	#entry_special .pic img		{ width:100%; }
*/
	ul.col2 li#entry_special img	{ width:100%;  }

	table.entry_menu				{ width:100%; margin:.5em 0 1em 1em; }
	table.entry_menu th				{ padding:.2em 0; border-bottom:none; /*display:block; width:100%;*/ }
	table.entry_menu th:before		{ content:''; }
	table.entry_menu td				{ padding:.2em 1em .2em 2em; border-bottom:none; /*display:block; width:100%;*/ }
	table.entry_menu td:before		{ content:' '; }

	#entry_outline table.entry_menu th				{ padding:.2em 0; /*border-bottom:none; display:block; width:100%;*/ }
	#entry_outline table.entry_menu th:before		{ content:''; }
	#entry_outline table.entry_menu td				{ padding:.2em 1em .2em 2em; /*border-bottom:none;  display:block; width:100%;*/ }
	#entry_outline table.entry_menu td:before		{ content:' '; }

	ul#blk_btn_entry li a span		{ display:block; text-align:center; }
	#entry_normal .pic2 p img   {width: 90%; float: none; margin: .5em auto .5em auto; display: block;}


	#info	{ background:#0000FF;}



	/* ------------------------------*
		contents
	 * ------------------------------*/
	#entry_contents h2	{ font-weight:bold; font-size:20px; }
	#entry_contents h3	{ line-height:1; font-size:18px; margin-bottom:.8em; }
	#entry_contents h4	{ line-height:1; font-size:16px; margin:1.8em 0 .8em 0; }
	#entry_contents h4 span	{ display:block; margin-right:0; margin-bottom:.5em; text-align:center; }
	#entry_contents h4 span:before	{ content:'＜'; }
	#entry_contents h4 span:after	{ content:'＞'; }
	#entry_contents p	{ line-height:1.4em; }


	#entry_wrapper li				{ float:none; width:100%; }
	#entry_wrapper li + li			{ float:none; width:100%;  }


}
@media screen and (max-width: 767px) {
	h1				{ font-size:20px; padding:1em 0 .4em 0; margin-bottom:1em; }

	h1 span			{ display:inline-block; position:relative; }
	h1 span:before	{ display:block; position:relative; margin:0 0 1em 0; background-position:center; width:100%; }
	h1 span:after	{ display:none; position:relative; }



	ul.col2			{ width:100%; }
	ul.col2 li		{ float:none; width:100%;  }
	ul.col2 li + li	{ float:none; width:100%; margin-top:20px; }
	.box			{ border:solid 3px #fff; }
	.box h2			{ width:50%; padding:.5em 1em; font-size:14px; text-align:left; }

	#header .main_visual		{ width:100%; margin:0; padding:0 0 0 0; vertical-align:bottom; }

	#gmenu						{ border-top:solid #ff0000 20px; border-bottom:solid #ffff00 20px; }
	#gmenu						{ /*height:100px;*/ }
	#gmenu ul					{ width:94%; margin:0 auto; }
	#gmenu li					{ padding:0 0 15px 0; }
	#gmenu li a:hover			{ animation:none; }

	#gmenu li:nth-child(1)		{ padding-top:20px; }
	#gmenu li:nth-child(2)		{ padding-top:40px; }
	#gmenu li:nth-child(3)		{ padding-top:10px; }
	#gmenu li:nth-child(4)		{ padding-top:30px; }



	#location p img	{ width:50%; float:right; margin:.5em 0 .5em 1em; }

	#blk_info ul.col2 li + li	{  margin-top:0px; padding-left:0px; padding-top:130px; position:relative; }
	#blk_info .inner	{ padding:60px 0 0 0; position:relative; }
	.mascot01			{ position:absolute; top:0px; left:40%; width:60%; }
	#ask				{ margin-top:0px; }
	.mascot02			{ position:absolute; top:54px; left:36%; width:60%; }
	#ask table th		{ display:block; width:100%; padding:0; font-weight:normal; }
	#ask table td		{ display:block; width:100%; padding:0; }

	ul.col2 li#entry_special	{ float:none; width:100%;  }
	ul.col2 li#entry_normal		{ float:none; width:100%;  }
	ul.col2 li#entry_contents	{ float:none; width:100%;  }

	ul#blk_btn_entry li			{ float:none; width:100%; padding:3px 6px; }
	ul#blk_btn_entry li + li	{ margin-top:0px; }
	a.go						{ max-width:100%; margin:0 auto;}
	a.profile					{ max-width:100%; margin:0 auto;}

	#profile					{ width:100%; margin:20px auto; }
	#profile .box				{ border:solid 6px #ff9900;  background:#fff; border-radius:10px; padding:30px 20px; }
	#profile .box .mascot03 	{ width:100%; }

}

@media screen and (min-width: 767px) {

	#gmenu li a:hover			{ display:inline-block; animation:hurueru .1s infinite; }
	@keyframes hurueru {
	    0% {transform: translate(0px, 0px) rotateZ(0deg)}
	    25% {transform: translate(2px, 2px) rotateZ(1deg)}
	    50% {transform: translate(0px, 2px) rotateZ(0deg)}
	    75% {transform: translate(2px, 0px) rotateZ(-1deg)}
	    100% {transform: translate(0px, 0px) rotateZ(0deg)}
	}
	#menu2  div a:hover { display: inline-block; animation:hurueru .1s infinite; }

	a.go:hover			{ background:#FFFF00; color: #FF0000; font-weight:bold; animation:hurueru .1s infinite; }
	a.profile:hover		{ background:#FFFF66; color: #FF3366; font-weight:bold; animation:hurueru .1s infinite; }

}

