@charset "utf-8";





/* ---------- reset ---------- */

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin:0;
	padding:0;
	border:0;
	font-size:100%;
	font:inherit;
	vertical-align:baseline;
}

article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display:block;
}

body {
	line-height:1;
}

ol, ul {
	list-style:none;
}

blockquote, q {
	quotes:none;
}

blockquote:before, blockquote:after,
q:before, q:after {
	content:'';
	content:none;
}

table {
	border-collapse:collapse;
	border-spacing:0;
}

img {
	vertical-align:top;
}





/* ---------- base ---------- */

body {
	background:url(../../images/top/bg_main.jpg) no-repeat center 0;
	color:#000;
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	text-align:center;
}

body#under {
	background:url(../../images/form/bg_main.png) no-repeat center 0;
}

p {
	font-size:75%;
	line-height:1.8em;
	padding:0 0 15px;
}

a {
	color:#333;	
}

a:hover {
	color:#333;
	text-decoration:none;
}





/* ---------- header ---------- */

header {
	margin:0 auto;
	overflow:hidden;
	padding:0 20px;
	max-width:1100px;
}

header h1 {
	padding:40px 0 10px;
}

header h1 img:nth-child(2) {
	padding:56px 0 0;
}

header .catch {
	padding:0;
}

header .date {
	padding:0 0 30px;
}

header .date img:nth-child(1) {
	padding:25px 15px 0 200px;
}

#under header h1 {
	padding:9px 0 0;
}

#under header h1 img:nth-child(2) {
	padding:26px 0 0 0;
}

#under header .date {
	margin:-20px 0 0;
}

@media screen and (max-width: 768px) {

	header img {
		height:auto;
	}

	header h1 img {
		width:60%;
	}

	header h1 img:nth-child(2) {
		width:30%;
		padding:60px 0 0;
	}

	header .catch img  {
		width:50%;
	}

	header .date img:nth-child(1) {
		width:60%;
		padding:30px 15px 0 0;
	}

	header .date img:nth-child(2) {
		width:30%;
	}

	#under header {
		padding:0 100px;
	}

	#under header h1 img:nth-child(2) {
		padding:50px 0 0;
	}

	#under header .date {
		margin:-15px 0 0;
	}

	#under header .date img:nth-child(2) {
		width:25%;
	}

}

@media screen and (max-width: 640px) {

	header h1 img {
		width:100%;
	}

	header h1 img:nth-child(2) {
		width:60%;
		padding:25px 0 0;
	}

	header .catch img  {
		width:70%;
	}

	header .date {
		padding:0;
	}

	header .date img:nth-child(1) {
		width:90%;
		padding:0 0 15px;
	}

	header .date img:nth-child(2) {
		width:30%;
		padding:0 0 20px;
	}

	#under header {
		padding:0;
	}

	#under header h1 {
		float:left;
		padding:5px 0 0;
	}

	#under header h1 img {
		width:60%;
	}
	
	#under header h1 img:nth-child(2) {
		width:35%;
		padding:30px 0 0;
	}

	#under header .date {
		padding:0 30px;
	}

	#under header .date img:nth-child(1) {
		padding:0;
	}

}





/* ---------- inquiry ---------- */

footer {
	background:#56AAF5;
	color:#fff;
	padding:15px 0 0;
}





/* ---------- section ---------- */

.section {
	margin:0 auto;
	overflow:hidden;
	text-align:left;
	padding:0 20px 30px;
	max-width:1100px;
}

.section h2 {
	padding:50px 0;
	text-align:center;
}

.section h3 {
	color:#003F7D;
	font-size:120%;
	padding:0 0 20px;
}

.attFnt {
	font-size:100%;
	font-weight:bold;
	color:#FF0000;
	text-align:center;
}

.lineFnt {
	text-decoration: line-through;
}

/* ---------- event ---------- */

#event {
	background:#fff;
}

#event .section {
	padding:0 20px;
}

#event section {
	float:left;
	width:48%;
}

#event section dl {
	border-top:#CED9E3 1px dotted;
	font-size:90%;
	line-height:1.7em;
}

#event section dt {
	float:left;
	padding:10px 0 0;
}

#event section dd {
	border-bottom:#CED9E3 1px dotted;
	padding:10px 0 10px 130px;
}

#event #schedule {
	float:right;
}

#event #schedule dt {
	padding:10px 0 0 10px;
}

#event #schedule dd {
	padding:10px 0 10px 80px;
}

#event #shamijima {
	clear:both;
	background:url(../../images/top/bg_syamizima.png) no-repeat 0 center;
	min-height:160px;
	text-align:left;
}

#event #shamijima dt {
	color:#333333;
	font-family:"ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
	font-size:105%;
	font-weight:bold;
	line-height:1.5em;
	padding:25px 0 5px 50px;
}

#event #shamijima p {
	font-size:75%;
	line-height:1.6em;
	padding:0 0 5px 65px;
}

@media screen and (max-width: 640px) {

	#event section {
		float:none;
		padding:0 0 30px;
		width:100%;
	}

	#event #shamijima dt {
		padding:10px 0 5px 50px;
	}

	#event #shamijima p {
		padding:0 0 30px 65px;
	}

}





/* ---------- entry ---------- */

#entry {
	background:#F6FBFE;
}

#entry #flow {
	float:left;
	width:48%;
}

#entry #flow dl {
	font-size:85%;
	line-height:1.6em;
	padding:0 0 5px;
}

#entry #flow dt {
	color:#2B72AD;
	font-size:120%;
	line-height:1.6em;
	padding:0 0 5px;
}

#entry #flow dd {
	padding:0 0 25px 0;
}

#entry #flow dd span {
	font-size:80%;
	line-height:1.6em;
}

#entry .map {
	float:right;
	width:49%;
}

#entry .map img {
	height:auto;
	width:100%;
}

#entry #attention {
	clear:both;
	padding:15px 0 40px;
}

#entry ul li {
	font-size:75%;
	line-height:1.6em;
	list-style:disc;
	margin:5px 0 0 20px;
}
	
#entry .join {
	text-align:center;
}

@media screen and (max-width: 640px) {

	#entry #flow {
		float:none;
		width:100%;
	}

	#entry .map {
		float:none;
		width:100%;
	}

	#entry section img,
	#entry .join img {
		height:auto;
		width:100%;
	}

}





/* ---------- inquiry ---------- */

#under #inquiry {
	background:#F6FBFE;
}

#inquiry dl {
	text-align:center;
}

#inquiry dt {
	padding:0 0 10px;
}

#inquiry dd {
	font-size:120%;
}

#inquiry .number {
	font-size:180%;
	line-height:1.6em;
}

#inquiry .number p {
	display:inline;
	padding:0 10px;
}

@media screen and (max-width: 640px) {

	#inquiry .number p {
		display:block;
		padding:0 0 10px;
	}

}






/* ---------- terms ---------- */

#terms ul {
	padding:0 0 50px;
}

#terms ul li {
	font-size:90%;
	line-height:1.8em;
	list-style:disc;
	margin:0 0 0 20px;
}

#terms .button {
	text-align:center;
	padding:30px 0 20px;
}





/* ---------- entry ---------- */

#form table {
	border-top:#eee 1px solid;
	border-left:#eee 1px solid;
	color:#333;
	margin:0 auto 60px;
	width:100%;
}

#form table th {
	background:#fafafa;
	border-bottom:#eee 1px solid;
	border-right:#eee 1px solid;
	text-align:left;
	padding:15px 15px 0;
	vertical-align:middle;
	white-space:nowrap;
	width:20%;
}

#form table td {
	border-bottom:#eee 1px solid;
	border-right:#eee 1px solid;
	padding:15px 15px 0;
	vertical-align:middle;
	text-align:left;
}

#form table td:nth-child(2) {
	text-align:center;
	width:20%;
}

#form table .error{
	background:#FC0;
}

#form table input[type="text"],
#form table textarea {
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
	border:#ddd 1px solid;
	padding:5px;
	width:100%;
}

#form table select {
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
	border:#ddd 1px solid;
	padding:5px;
}

#form table .small {
	width:20%!important;
}

#form table .middle {
	width:60%!important;
}

#form .button {
	text-align:center;
	padding:0 0 20px;
}

@media screen and (max-width: 640px) {
	
	#form table,
	#form table tbody,
	#form table tr,
	#form table th,
	#form table td {
		display:block;
	}

	#form table th {
		border-bottom:none;
		box-sizing:border-box;
		-webkit-box-sizing:border-box;
		font-weight:bold;
		font-size:120%;
		text-align:center;
		padding:15px 20px 0;
		width:100%;
	}
	
	#form table td {
		box-sizing:border-box;
		-webkit-box-sizing:border-box;
		padding:15px 20px 0 20px;
		width:100%!important;
	}
	
}