@charset "utf-8";
/* CSS Document */

/*--Base------------------------------------------------------------*/
html, body { width: 100%; height: 100%; }
html { height: 100%; overflow-y: scroll; }

/*--Reset-----------------------------------------------------------*/
* { margin: 0; padding: 0; }
img { border: none; vertical-align: middle; }
ul,ol { list-style: none; }

/*--clearfix-----------------------------------------------------------*/
.clearfix:before,
.clearfix:after {
	content: " ";
	display: table;
}
.clearfix:after { clear: both; }
.clearfix { *zoom: 1; }

/*--Text------------------------------------------------------------*/
body {
	font-size: 88%; font-weight: normal; line-height: 1.5;
	font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;
}
h1,h2,h3,h4,h5,h6 { font-size: 100%; }

/*--Link------------------------------------------------------------*/
a, a:link { color: #1d2087; text-decoration: none; }
a:visited { color: #1d2087; }
a:hover, a:active { text-decoration: none; }
a:focus { outline: none; }

/*--HTML5-----------------------------------------------------------*/
article,aside,details,footer,header,main,menu,nav,section,summary { display: block; }

/*--style----------------------------------------------------------*/

/*-- #contents----------------------------------------------------------*/
.contents_inner {
	max-width: 960px;
	width: 100%;
	margin: 0 auto;
}

/*--header----------------------------------------------------------*/
#header h1 {
	margin: 40px 0;
	text-align: center;
}

/* #main_img */
#header #main_img {
	width: 100%;
	height: 518px;
	background: url(../images/main_image.jpg) no-repeat center top #dcdcdc;
}

#header #main_img .contents_inner { position: relative; }

#header #main_img p {
	position: absolute;
	top: 75px;
	right: 70px;
}

/*--footer----------------------------------------------------------*/
#footer {
	width: 100%;
	padding: 10px 0;
	color: #fff;
	font-size: 1.4em;
	text-align: center;
	background-color: #19238a; 
}

/*--section----------------------------------------------------------*/
section h1 {
	text-align: center;
	font-size: 2em;
	font-weight: normal;
	line-height: 46px;
	letter-spacing: 0.1em;
	color: #16258b;
	position: relative;
	overflow: hidden;
}
	section h1:before,
	section h1:after {
		content: url(../images/ttl_back.png);
		position: absolute;
	}
	section h1:before { right: 57%; }
	section h1:after { left: 57%; transform: rotateY(180deg); }

/* #overview */
#overview { padding: 80px 0; }
#overview dl {
	width: 60%;
	margin: 20px auto 0;
	font-size: 1.2em;
	border-bottom: 1px dotted #9fa0a0;
}
#overview dt {
	display: block;
	width: 20%;
	padding: 10px 0;
	clear: left;
	float: left;
	border-top: 1px dotted #9fa0a0;
}
#overview dd {
	display: block;
	width: 80%;
	padding: 10px 0;
	float: left;
	border-top: 1px dotted #9fa0a0;
}
#overview dt:first-of-type,
#overview dd:first-of-type {
	border-top: none;
}

/* #history */
#history ul {
	width: 60%;
	margin: 20px auto 40px ;
}
#history ul li {
	padding: 2px 0 2px 1em;
	font-size: 1.3em;
	position: relative;
}
#history ul li:before {
	position: absolute;
	top: 2px;
	left: 0;
	content: '■';
}

/* #detail */
#detail ul {
	width: 50%;
	margin: 20px auto 0;
}
#detail ul li {
	padding: 2px 0 2px 1em;
	font-size: 1.3em;
	position: relative;
}
#detail ul li:before {
	position: absolute;
	top: 2px;
	left: 0;
	content: '・';
}

/* #access */
#access { margin: 80px 0; }
#access .gmap {
	width: 100%;
	margin: 20px 0 10px;
	padding-bottom: 23%;
	position: relative;
	height: 250px;
	overflow: hidden;
}
#access .gmap iframe,
#access .gmap object,
#access .gmap embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: none;
}

#access p {
	margin-top: 20px;
	text-align: center;
	font-size: 1.3em;
}

/* #contact */
#contact { margin-bottom: 80px; }
#contact dl {
	text-align: center;
	color: #19238a;
}
#contact dl dt {
	margin-top: 20px;
	font-size: 1.5em;
}
#contact dl dt span {
	padding-left: 40px;
	line-height: 1.4;
	display: inline-block;
	position: relative;
}
#contact dl dt span:before {
	position: absolute;
	top: 0;
	left: 0;
}
#contact dl dt.ttl_tel span:before { content: url(../images/icon_tel.png); }
#contact dl dt.ttl_mail span:before { content: url(../images/icon_mail.png); }

#contact dl dd .big {
	font-size: 3em;
	font-weight: bold;
	line-height: 1.4;
}
#contact dl dd p { font-size: 1.5em; }


/*--Retina------------------------------------------------------------*/
@media screen and (max-width: 960px) {
	#header #main_img p {	top: 35px; right: 10px; }
	section h1:before { right: 59%; }
	section h1:after { left: 59%; }
}

@media screen and (max-width: 640px) {
	img { zoom: 0.5; }

	#header h1 { margin: 20px 0; }	
	#header #main_img { height: 259px; background-size: auto 100%; }
	#header #main_img p {	top: 10px; right: 5px; }
	
	#footer { font-size: 1em; }

	section h1 { font-size: 1.6em; letter-spacing: 0; }
	section h1:before { right: 63%; }
	section h1:after { left: 63%; }

	#overview { padding: 40px 0; }
	#overview dl { width: 90%; }
	
	#history ul { width: 95%; }
	#detail ul { width: 95%; }

	#access { margin: 40px 0; }
	#access p { margin: 30px 10px 0; }

	#contact { margin-bottom: 40px; }	
	#contact dl dd .big { font-size: 1.8em; }
	
	#page_top { bottom: 30px; right: 10px; }

}
