* {
	padding: 0;
	margin: 0;
	font-family:'Lucida Grande','Hiragino Kaku Gothic ProN', Meiryo, sans-serif;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary {
	display:block;
}

html, body {
	height: 100%;
}

body {
	background: #ddd;
	overflow-y: scroll;
}

address {
	font: normal bold 14px arial, helvetica, sans-serif;
}

div#wrap {
	width: 100%;
	overflow-y: hidden !important;
	overflow-x: hidden;
	background: url(../img/bg.png) center repeat-y;
	background-size: 1000px auto;
	margin:auto;
	position: relative;
	height: auto !important; /*IE6対策*/
	height: 100%; /*IE6対策*/
	min-height: 100%;
}

div#wrap > header, div#wrap > div.main, div#wrap > footer > div {
	width: 1000px;
	margin: 0 auto;
}

div#wrap > header {
	padding-top: 40px;
}

div#wrap > div.main {
	padding-bottom: 120px;
}

div.main > article {
	background: #fff;
	margin: 10px;
	padding: 10px 40px 40px 40px;
}

div.main > article h2 {
	display: block;
	border-top: 3px double #ffffff;
	border-bottom: 3px double #ffffff;
	margin-bottom: 5px;
	padding: 5px 0px 5px 10px;
	background: #dddddd;
	font: bold 22px/1.2 Arial, Helvetica, sans-serif;
	color: #666666;
	text-shadow: -1px -1px 0 rgba(255,255,255,1);
}

div.main > article h3 {
	display: block;
    background: #fff;
    border-top:1px dashed #dddddd;
    border-bottom:1px dashed #dddddd;
	margin: 10px 0px;
    padding: 5px 0px 5px 10px;
}

div.main > article p {
	padding-top: 5px;
	padding-bottom: 5px;
}

div#wrap > footer {
	border-top: 4px groove #ddd;
	width: 100%;
	height: 120px;
	position: absolute;
	bottom: 0;
}

div#wrap > footer > div {
	margin-top: -4px;
	border-top: 4px groove #ffffff;
	height: 100%;
}

div#wrap > footer > div > section {
	width: 350px;
	height: 100px;
	padding: 5px;
	margin: 5px auto;
}

div#wrap > footer > div > section > img {
	float: left;
	margin-right: 10px;
}

div#wrap > footer > div > a {
	display: table-cell;
	width: 150px;
	height: 40px;
	margin-top: -40px;
	float: right;
	font: bold 14px arial, helvetica, sans-serif;
	text-align: center;
	vertical-align: middle;
	text-decoration: none;
	color: white;
	background: black;
	border-top: 2px solid;
	border-left: 2px solid;
	border-right: 2px solid;
	border-bottom: 0px;
	border-color: #bbbbbb #444444 #444444 #444444;
	border-radius: 10px 10px 0px 0px;		/* CSS3草案 */
	-webkit-border-radius: 10px 10px 0px 0px;	/* Safari,Google Chrome用 */
	-moz-border-radius: 10px 10px 0px 0px;	/* Firefox用 */
}

nav {
	background: black;
	width: 100%;
	height: 38px;
	position: fixed;
	top:0px;
	left: 0px;
	z-index: 100;
	float: left;
}

nav, nav > ul > li > ul > li {
	box-shadow: 0px 6px 3px -3px rgba(0,0,0,0.6);
	-webkit-box-shadow: 0px 6px 3px -3px rgba(0,0,0,0.6);
	-moz-box-shadow: 0px 6px 3px -3px rgba(0,0,0,0.6);
}

nav ul {
	list-style: none;
	position: relative;
	width: 450px;
	left: 50%;
	margin-left: -205px;
}

nav > ul > li {
	float: left;
	border-left: 1px solid #bbb;
	position: relative;
}

nav > ul li:first-child {
	border-left: none;
}

nav li a, nav li[class="fframe_a"] {
	display: block;
	width: 100px;
	padding: 10px;
	margin: 0px -1px 0px 0px;
	overflow: visible;
	font: bold 14px arial, helvetica, sans-serif;
	text-decoration: none;
	color: white;
	background-color: black;
	text-shadow: 0px -1px 1px rgba(0,0,0,0.7);
}

nav li[class="fframe_a"], nav li[class="fframe_a"] a {
	width: 150px;
}

nav > ul > li[class="fframe_a"] {
	border-bottom: 3px double #dddddd;
}

nav > ul > li[class="fframe_a"] > ul > li:last-child {
	border-bottom: 1px solid #dddddd;
}

nav > ul > li[class="fframe_a"]:HOVER {
	border-bottom: 3px transparent solid;
}

nav li a:HOVER {
	color:white;
    background-color:#aaa;
}

nav li ul {
	margin: 0px;
	padding: 0px;
	list-style-type: none;
	position: absolute;
	top:0px;
	width:100%;
	left:0px;
	overflow: hidden;
	height: 0px;
	transition: all 0.5s;
}

nav li:hover ul {
	height: 300px;
}

nav li:hover ul li {
	margin: -1px 0px;
	border-top: 1px solid #aaa;
}

/* common */

div#wrap > header > img#header_img {
	display: block;
	margin: 0 auto;
	padding: 10px;
}

img.img_left {
	display: block;
	float: left;
	margin: 10px;
}

p.center {
	text-align: center;
}

div#wrap > header > h1 {
	display: block;
	margin: 0 auto;
	text-align: center;
	padding: 10px;
}

.clearfix:after {
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
	content: ".";
	zoom: 1;
}

img.at_sign {
	height: 1em;
}

/* index.php */

.index_main a.index_contact {
	margin-left: 10px;
	display: inline-block;
}

/* wellpoint.php */

/* plantpomp */

/* about.php */

.about_main table.about_table th {
	width: 200px;
	background: #eaeaea;
}

.about_main table.about_table th, .about_main table.about_table td {
	padding: 5px;
}