body {
	margin: 0;
	padding: 0;
	font: 90% 'Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',Meiryo,メイリオ,Osaka,'MS PGothic',arial,helvetica,sans-serif;
	text-align: center;
	background: #f7fcfe;
}
a {
	color: #1a0dab;
	text-decoration: none;
}
a:link, a:visited {
	color: #1122cc;
	text-decoration: none;
}
a:hover {
	color: #dd0000;
	text-decoration: underline;
}
h1 {
	font-size: x-large;
}
h1 a {
	color: #fff;
}
h1 a:link, h1 a:visited {
	color: #fff;
}
#contain {
	width: 1000px;
	margin: 0 auto;
	background: #fff;
}
#block {
	display: table;
	margin: 0;
}
#main, #navi {
	display: table-cell;
	vertical-align: top;
	padding: 9px;
}
#main {
	width: 700px;
	text-align: left;
	background: #fff;
}
#navi {
	width: 300px;
	text-align: left;
	background: #eee;
}
#head {
	background-image: url(head.jpg);
	background-position: center;
	background-size: contain;
	background-repeat: no-repeat;
	width: 100%;
	padding: 0;
	border-top: 1px solid #aaa;
	color: #fff;
	height: 420px;
	margin: 0;
}
#foot {
	font-size: x-small;
	padding: .5em;
}
.article {
	text-align: left;
	background: #fff;
	margin: 0 0 1em 0;
	padding: .7em;
	border-bottom: 1px dotted #008b8b;
}
.art-ttl {
	color: #008b8b;
	font-weight: bold;
	font-size: large;
	margin-bottom: 1em;
}
.art-foot {
	font-size: smaller;
	margin-top: 1em;
	text-align: right;
}
#pager {
	width: 100%;
	text-align: center;
	padding: .5em 0;
}
#pager ul li {
	display: inline;
	padding: 6px 12px;
	border: 1px #ccc solid;
	color: #000053;
	border-radius: 5px / 5px;
}
.com-art {
	margin: .7em .5em;
	font-size: smaller;
}
.com-art p {
	margin: .7em 1em;
}
.com-form {
	margin: 1em 0;
	border-top: 1px dotted #008b8b;
	padding: .7em 0;
	font-size: smaller;
}
.com-form p {
	margin: 1em 0;
}
.com-navi {
	margin-bottom: 1.5em;
	color: #666;
}
.fm-m {
	width: 15em;
}
.fm-t {
	width: 30em;
	height: 7em;
}
.continue {
	padding: 6px 12px;
	border: 1px #ccc solid;
	color: #000053;
	width: 80px;
	text-align: center;
	margin: 1em auto;
	border-radius: 5px / 5px;
}
.message {
	margin: 1em 0;
}
.menu {
	text-align: left;
	background: #fff;
	margin: 0 0 1em 0;
	padding: .7em;
	border-radius: 6px;
}
.menu-ttl {
	color: #008b8b;
	border-bottom: 1px dotted #008b8b;
	font-weight: bold;
}
.menu ul {
	margin: 6px 0 6px 14px;
	padding: 5px;
}
#calen-tbl {
	width: 100%;
	margin: 0 auto;
	border-collapse: separate;
	table-layout: fixed;
}
#calen-tbl th, #calen-tbl td {
	width: 20px;
	font-size: 10px;
	padding: 3px 0;
	text-align: center;
}
#calen-tbl th {
	background: #fff;
	font-weight: normal;
}
#calen-tbl td {
	background: #eee;
}
#calen-tbl a {
	text-decoration: underline;
}
#calen-arrow {
	text-align: center;
	margin: 1em auto;
}
#calen-arrow span {
	margin: 0 1.2em;
}
.prof {
	width: 100%;
	text-align: center;
}
.red {
	color: #dd0000;
}
.blue {
	color: #0000dd;
}
#com-conf {
	width: 600px;
	margin: 2em auto;
	text-align: left;
	background: #fff;
	padding: 1.5em;
	border-radius: 6px;
}
.com-conf-ttl {
	font-size: large;
	color: navy;
	font-weight: bold;
}
#com-conf input[type="tel"] {
	padding: 6px;
	width: 20em;
}
#err-box {
	width: 600px;
	margin: 2em auto;
	text-align: center;
	background: #fff;
	padding: 1em;
	border-radius: 6px;
	color: #dd0000;
}
#msg-box {
	width: 600px;
	margin: 2em auto;
	text-align: center;
	background: #fff;
	padding: 1em;
	border-radius: 6px;
	color: #006400;
}
.small {
	font-size: smaller;
}
.ta-l {
	text-align: left;
}
.ta-c {
	text-align: center;
}
.ta-r {
	text-align: right;
}

/* for smart-phone */
@media only screen and (max-width: 480px) {
	body {
		font-size: 100%;
	}
	#err-box, #msg-box, #com-conf {
		width: 96%;
		margin: 1em auto;
	}
	#contain {
		width: 100%;
	}
	#head {
		height: 165px;
		font-size: small;
	}
	h1 {
		font-size: large;
	}
	#block, #main, #navi {
		width: 96%;
		display: block;
		margin: .5em auto;
	}
	.fm-t {
		width: 80%;
		height: 5em;
	}
}
