@charset "utf-8";

/* init */
*{
	margin: 0;
	padding: 0;
}
/**/
.clearfix:after {
  content: ".";  /* 新しい要素を作る */
  display: block;  /* ブロックレベル要素に */
  clear: both;
  height: 0;
  visibility: hidden;
}

.clearfix {
  min-height: 1px;
}

* html .clearfix {
  height: 1px;
  /*\*//*/
  height: auto;
  overflow: hidden;
  /**/
}
/**/
body {
	color: #333333;
	font-size: 14px;
	line-height: 1.5em;
	background-color: #ffea94;
	font-family: "Open Sans",HiraGothicProN-W3,"Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3",メイリオ,Meiryo,Osaka,'ＭＳ Ｐゴシック','MS P Gothic',Verdana,Arial,Helvetica,sans-serif;
}
a img{
	border: none;
	}
a:link{
	color: #0ab210;
	}
a:visited{
	color: #0ab210;
	}
a:hover{
	}

/* レイアウト */

#wrapper_bg{
	background: url(../images/bg_main.jpg) repeat-x;
	}
#contents_bg{
	background: url(../images/mainImg.jpg) no-repeat 50% 0%;
	}
#contents_wrapper{
	width: 900px;
	margin: 0 auto;
	padding-top: 285px;
	position: relative;
}
#contents_left,#contents_right{
	width: 442px;
}
#contents_left{
	float: left;
}
#contents_right{
	float: right;
}
.contents_1col,.contents_2col{
	background-color: #FFF;
	border: 1px solid #0b5a0e;
	padding: 15px;
	}
.contents_1col{
	position: relative;
	width: 868px;
	margin-bottom: 15px;
}
.contents_2col{
	margin-bottom: 15px;
	width: 410px;
}
#footer{
	clear: both;
	background-color: #ab4800;
	border-top: 1px solid #6c2e02;
	margin-top: 40px;
}
#footer_in{
	width: 900px;
	height: 150px;
	margin: 0 auto;
	position: relative;
}


/* パーツ */
h2{
	font-size: 16px;
	margin-bottom: 10px;
	}
h3{
	margin-bottom: 15px;
}
h3.TTL_01 {
	width: 470px;
	height: 0;
	padding-top: 22px;
	background: url(../images/ttl_about.gif);	
	overflow: hidden;
}
h3.TTL_02 {
	width: 230px;
	height: 0;
	padding-top: 22px;
	background: url(../images/ttl_event.gif);	
	overflow: hidden;
}
h3.TTL_03 {
	width: 57px;
	height: 0;
	padding-top: 22px;
	background: url(../images/ttl_gaiyou.gif);	
	overflow: hidden;
}
h3.TTL_04 {
	width: 96px;
	height: 0;
	padding-top: 22px;
	background: url(../images/ttl_access.gif);	
	overflow: hidden;
}
.relative{
	position: relative;
	}
.icoFree{
	position: absolute;
	right: 13px;
	top: 10px;
	}
	
.table02{
	border-collapse: collapse;
	width: 100%;
}
.table02 td,.table02 th{
	border: 1px solid #419aaa;
	vertical-align: middle;
	padding: 10px;
	font-size: 12px;
}
.table02 th{
	font-weight: normal;
	background-color: #c8dfff;
	text-align: center;
	width: 20%;
}
.table02 td{
	font-size: 14px;
	background-color: #FFF;
	text-align: left;
}
.table02 td.big{
	font-size: 16px;
	}
.table02 td p.note{
	text-indent:-14px;
	padding-left:14px;
	}
.noteBox{
	padding: 10px;
	background-color: #f3dfe6;
	border: 1px solid #C36;
	}
	
.table01{
	border-collapse: collapse;
	width: 100%;
	font-size: 12px;
	}
.table01 th,.table01 td{
	border-top: 1px dotted #0467cf;
	border-bottom: 1px dotted #0467cf;
	background-color: #FFF;
	padding: 5px 0px;
	text-align: left;
	vertical-align: middle;
	}
.table01 th{
	font-weight: bold;
	color: #6c7f8c;
	width: 25%;
	padding-left: 15px;
	}
.table01 td{
	padding-right: 15px;
	}
	
.table02{
	color: #333333;
	font-size: 12px;
	border-collapse: collapse;
	width: 389px;
	margin-bottom: 7px;
}
.table02 td,.table02 th{
	border: 1px solid #aeaeae;
	text-align: center;
	vertical-align: middle;
	padding: 5px 0;
}
.table02 th{
	width: 20%;
	font-weight: normal;
	background-color: #dad9d9;
}
.table02 td{
	background-color: #ffffff;
	text-align: left;
	padding-left: 10px; 
}	
.font12{
	font-size: 12px;
	line-height: 1.4em;
	}
	
.table03{
	border-collapse: collapse;
	width: 100%;
	font-size: 12px;
	}
.table03 th,.table03 td{
	border-top: 1px dotted #148e39;
	border-bottom: 1px dotted #148e39;
	background-color: #eef5cd;
	padding: 5px 0px;
	text-align: left;
	vertical-align: middle;
	}
.table03 th{
	font-weight: normal;
	width: 25%;
	padding-left: 15px;
	}
.table03 td{
	padding-right: 15px;
	}
.now{
	border: 1px solid #867969;
	margin-bottom: 5px;
	}
.box01{
	width: 389px;
	border: 1px solid #d2d2d2;
	background-color: #ffffe4;
	padding: 20px 10px 10px 10px;
	margin-bottom: 15px;
}
.txt01{
	border-bottom: 1px dotted #999999;
	padding: 10px 0 8px 35px;
	margin-bottom: 13px;
	font-size: 90%;
	line-height: 1.3em;
}
.txt02{
	font-size: 12px;
	}
.evImg{
	float: right;
	margin-left: 7px;
	}
.name{
	color: #147a00;
	}
.map {
	margin: 15px 0 5px;
	}
.gmap{
	margin: 15px 0 5px;
	}
.gmap p{
	text-align: right;
	font-size: 85%;
	}
.gmap_in{
	border: solid 1px #729cc2;
	}
p.dlTxt{
	font-weight: bold;
	margin-bottom: 6px;
	}
.box_dl1 a,.box_dl2 a{
	display: block;
	width: 235px;
	height: 57px;
	padding: 50px 20px 0 150px;
	background-repeat: no-repeat;
	color: #333333;
	font-size: 12px;
	line-height: 1.2em;
	text-decoration: none;
}
.box_dl1 a:link,.box_dl2 a:link,.box_dl1 a:visited,.box_dl2 a:visited,.box_dl1 a:hover,.box_dl2 a:hover{
	color: #333333;
	text-decoration: none;
}
.box_dl1 a{
	background-image: url(../images/btn_dl01.gif);
	background-repeat: no-repeat;
}

.marginDL01{
	margin: 0 12px 12px 0;
	}
.marginDL02{
	margin: 0 0 12px 0;
	}
.marginDL03{
	margin: 0 12px 0 0;
	}


.logo1{
	width: 205px;
	height: 42px;
	position: absolute;
	top: 49px;
	left: 1px;
	}
.logo2{
	width: 163px;
	height: 35px;
	position: absolute;
	left: 183px;
	top: 52px;
	}
.support{
	width: 500px;
	color: #c9bdb1;
	font-size: 12px;
	text-align: left;
	position: absolute;
	left: 398px;
	top: 36px;
	}	
.cr{
	width: 500px;
	color: #fff;
	font-size: 10px;
	text-align: right;
	position: absolute;
	left: 398px;
	top: 118px;
	}
.totop{
	width: 93px;
	height: 34px;
	position: absolute;
	left: 807px;
	top: -29px;
	}
	
/*socialPlugIn*/
.social {
	height: 30px;
	position: absolute;
	right: 0;
	top: 255px;
	width: 350px;
}
.social div{
	float: right;
	}
.twitter{
	color: #000;
	margin: 0 0px 0 15px;
	}
.line{
	margin: 0 0 0 15px;
	}

/* padding margin */
.maT5B10{
	margin-top: 5px;
	margin-bottom: 10px;
	}
.maT20{
	margin-top:20px;
	}
.maT10{
	margin-top:10px;
	}
.maT5{
	margin-top: 5px;
	}
.maB30{
	margin-bottom: 30px;
	}
.maB20{
	margin-bottom: 20px;
}
.maB15{
	margin-bottom: 15px;
	}
.maB10{
	margin-bottom: 10px;
	}
.maB0{
	margin-bottom: 0px;
	}
.maL10{
	margin-left: 10px;
	}
.maL15{
	margin-left: 15px;
	}
.paB10{
	padding-bottom: 10px;
}


/* テキスト装飾 */
.small{
	font-size: 80%;
	line-height: 1.3em;
}
.big{
	font-size: 16px;
	}
.red{
	color: #C36;
}
.align_right{
	text-align:right;
	}
.align_center{
	text-align:center;
	}
a.link01{
	color: #C36;
	}
	
/*その他 */
.fR{
	float: right;
	}
.fL{
	float: left;
	}
.clear{
	clear: both;
	}
.nodisplay{
	display: none;
	}
.additional {
	display: block;
	border: 1px solid #c5dd54;
	background: #eef5cd;
	padding: 3px 0 3px 3px;
	position: absolute;
	top: 1em;
	right: 5px;
	width: 24.5em;
	font-size: .9em;
}

/* ******************* ～770px ******************* */
@media only screen and (max-width: 770px) {
	#wrapper_bg,
	#contents_bg{
		background: none;
	}
	#contents_wrapper {
		background-image: url(../images/mainImg2.jpg);
		background-repeat: no-repeat;
		background-size: contain;
		padding-top: 24.5%;
	}
	.social {
		position: relative;
		top: 0;
		right: 0;
		width: 100%;
		height: auto;
	}
	.additional {
		position: static;
		margin-bottom: .3em;
		width: 100%;
	}
	h3 {
		width: 100%;
	}
	h3.TTL_01,
	h3.TTL_02,
	h3.TTL_03,
	h3.TTL_04 {
		background-image: none;
		padding-top: 0;
		height: auto;
		line-height: 1.2;
		color: #783b0e;
		width: 100%;
		overflow: visible;
	}
	#contents_wrapper,
	.contents_1col {
		margin-bottom: 15px;
		width: calc(100% - 30px);
	}
	.contents_2col {
		width: 100%;
	}
	.box01 {
		width: calc(100% - 20px);
	}
	#contents_left,
	#contents_right{
		width:  calc(100% - 30px);
		float: none;
		clear: both;
	}
	.table01,
	.table02 {
		width: 100%;
	}
	/* footer */
	#footer ,
	#footer_in {
		width: 100%;
		padding: 0;
	}
	a#kahakutop_footer {
		margin-left: 10px;
		width: 103px;
		padding-top: 22px;
		background-size: contain;
	}
	.cr {
		font-size: 75%;
		margin: 0 0 0 10px;
		width: 60%;
		top: 30px;
		right: 10px;
		left: 35%;
	}
	.cr span {
		font-size: 1.5em;
		line-height: 1;
		vertical-align: bottom;
	}
	.totop {
		left: inherit;
		top: -29px;
		right: 10px;
	}
	#kahaku_map {
		display: none;
	}
	#mapField {
		width: 100%;
	   height: 450px;
	}
	.logo1{
	position: absolute;
	top: 30px;
	left: 10px;
	}
	.subTTL {
		width: 100%;
		height: auto;
	}
}