
@font-face {
	font-family: 'icomoon';
	src: url('fonts/icomoon.eot?iiomsd');
	src: url('fonts/icomoon.eot?iiomsd#iefix') format('embedded-opentype'),
		 url('fonts/icomoon.ttf?iiomsd') format('truetype'),
		 url('fonts/icomoon.woff?iiomsd') format('woff'),
		 url('fonts/icomoon.svg?iiomsd#icomoon') format('svg');
	font-weight: normal;
	font-style: normal;
	font-display: block; }

[class^="icon-"], [class*=" icon-"] {
	font-family: 'icomoon' !important;
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	/* Better Font Rendering =========== */
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale; }

*, *::before, *::after { box-sizing: border-box; }

* { margin: 0; }

html { height: 100%; }

body{
	height: 100%;
	margin: 0;
	padding: 0;
	line-height : 1.6;
	color : #555; }

p {
	margin-bottom: 20px;
	padding: 0 20px; }

img { vertical-align: top; }

input, textarea, select { padding: 5px; }

table { margin-bottom: 40px; }

h1 { margin: 15px 0; }

h2 {
	margin-bottom: 40px;
	padding: 0 20px;
	border-left: 10px solid #095ea7;
	font-size: 26px; }

h3 {
	margin-bottom: 20px;
	padding: 5px 20px;
	background-color: #e9e9d1;
	font-size: 20px; }

#wrap {
	display: flex;
	flex-direction: column;
	min-height: 100%;
	margin: 0; }

header { margin-bottom: 0; }

header .inner {
	display: flex;
	justify-content: space-between;
	max-width: 1000px;
	margin: 0 auto; }

.info {
	display: none;
	padding-top: 10px; }
	@media screen and (min-width:600px) {
		.info { display: block; } }

.info a {
	font-size: 28px;
	color: #095ea7;
	text-decoration: none; }

.info a::before {
	content: "\e951";
	font-family: 'icomoon';
	position: relative;
	top: 5px;
	margin-right: 5px;
	font-size: 36px;
	color: #095ea7; }

#globalnavi { background-color: #095ea7; }

#globalnavi ul {
	display: flex;
	flex-wrap: wrap;
	max-width: 1000px;
	margin: 0 auto;
	padding: 0;
	border-right: 1px solid white;
	list-style: none; }

#globalnavi li {
	width: 50%; }
	@media screen and (max-width:639px) {
		#globalnavi li:nth-child(1) {
			border-right: 1px solid white;
			border-bottom: 1px solid white; }
		#globalnavi li:nth-child(2) { border-bottom: 1px solid white; }
		#globalnavi li:nth-child(3) {
			border-right: 1px solid white;
			border-bottom: 1px solid white; }
		#globalnavi li:nth-child(4) { border-bottom: 1px solid white; }
		#globalnavi li:nth-child(5) { border-right: 1px solid white; } }
	@media screen and (min-width:640px) {
		#globalnavi li {
			width: calc( 100% / 6 );
			min-width: 100px;
			border-left: 1px solid white; } }

#globalnavi a {
	display: block;
	padding: 20px 0;
	text-align: center;
	color: white;
	text-decoration: none; }

#globalnavi a:hover { background-color: #0d8bf2; }

.image-area {     background: url(images/bg.jpg) top left repeat; }

.image-area div {
	display: flex;
	justify-content: space-between;
	max-width: 1000px;
	margin: 0 auto; }

.image-area img { width: 100%; }

#pagebody {
	flex: 1;
	width: 100%;
	max-width: 1000px;
	margin: 40px auto; }

#main {
	margin-bottom: 40px;
	padding: 0 10px; }

.gallery {
	display: flex;
	justify-content: space-around;
	margin-bottom: 40px; }

.gallery img { width: 100%; }

footer {
	background-color: #095ea7;
	text-align: center;
	color: white; }

footer nav ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	max-width: 1000px;
	margin: 0 auto;
	padding: 0;
	list-style: none; }

footer nav li {
	padding: 0 15px; }

footer nav a { text-decoration: none; }

footer nav a:hover { text-decoration: underline; }

footer a { color: white; }

footer nav { padding: 40px 0; }

.copyright {
	padding: 40px 0;
	font-size: small; }

/*お問い合わせ*/
.submit { text-align: center; }

.submit input { padding: 10px 20px; }

/*テーブル*/
table{
	width: 90%;
	max-width: 1200px;
	margin: 20px auto 40px;
	padding: 0;
	border: 0;
	border-collapse: collapse; }

tr{
	margin: 0;
	padding: 0;
	border: 0; }

td, th{
	margin: 0;
	padding: 14px 15px;
	border: 1px #999 solid;
	text-align:left;
	font-size: 1em; }

th{
	width: 210px;
	background: #f2f2f2;
	font-weight: normal;
	vertical-align: top; }

td{ background: #fff; }

@media (max-width: 798px) {
	th{ width: 25%; } }
@media (max-width: 570px) {
table {
	width:90%;
	table-layout: fixed;
	word-break: break-word;
	padding: 0;
	border-collapse: collapse;
	border-bottom: none; }

table th,
table td{
	display: block;
	width: 100% !important;
	text-align: left;
	vertical-align: middle;
	margin-top:-1px; } }
