@charset "utf-8";
/* reset css
---------------------- */
html {
	height: 100%;
	overflow-y: scroll;
}
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, form, fieldset, input, textarea, p, th, td {
	padding: 0;
	margin: 0;
}
address, caption, em, strong, th {
	font-style: normal;
}
caption, th {
	text-align: left;
}
hr, legend {
	display: none;
}
h1, h2, h3, h4, h5, h6 {
	font-size: 100%;
}
li {
	list-style-type: none;
}
#contents table, #contents ol, #contents ul, #contents dl, #contents blockquote, #contents pre, #contents p {
	margin-bottom: 1em;
}
a img, fieldset {
	border: none;
}
body {
	height: 100%;
	font-family: "メイリオ", "Meiryo", verdana, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif;
	font-size: 80%;
	color: #333;
	line-height: 1.5;
}
* html body {	/* for IF6 */
	font-family: "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif;
}
a:link {
}
a:visited {
	text-decoration: none;
}
a:hover {
}
a:active {
}
/* LAYOUT
---------------------- */

#page {
	width: auto;
	margin: 0 auto;
	min-height: 100%;
	background: url(img/header.gif) repeat-x left top;
}
/* header */
#header h1 {
	font-size:90%;
	font-weight:normal;
	letter-spacing:1px;
}
#header {
	padding:10px 10px 0;
	zoom: 1;
	width: 940px;
	margin: 0 auto;
}
#header .head-logo {
	float: left;
}
#header .head-inquiry {
	float: right;
	text-align: right;
}
/* navigation */


#footernavi {
	padding: 2px 0;
	background: url(img/border.gif) repeat-x left top;
}
#gnavi {
	background: url(img/gnavi-back.gif) repeat-x left top;
	zoom: 1;
}
#gnavi ul {
	width: 940px;
	margin: 0 auto;
}
#gnavi ul li {
	float:left;
}
#contents {
	clear: both;
	zoom: 1;
	background:#fff;
	width: 940px;
	margin: 0 auto;
}
/* contents */

#visual h2 {
	text-align: center;
	margin:10px 0 0;
}
#contents:after, #header:after, #gnavi:after {
	clear: both;
	height: 0.1px;
	visibility: hidden;
	font-size: 0.1em;
	line-height: 0;
	display: block;
	content: ".";
}
#main {
	float: right;
	width: 700px;
	margin: 10px 0;
}
.section h3 {
	background: url(img/title-bg.gif) no-repeat;
	font-weight:bold;
	font-size: 110%;
	color:#2e5328;
	padding:11px 10px 11px 30px;
	margin: 0 0 .5em;
}
.section h4 {
		font-size:120%;
		margin-bottom:1em;
		color: #008d11;
}
.article {
	padding: 10px;
	border-bottom: 1px dotted #dcc;
	margin-bottom: 10px;
}
#sub {
	float: left;
	width: 200px;
	margin: 10px 0;
}
#sub span {
	font-weight:normal;
	display:block;
	font-size:60%;
}
#sub dt {
	font-size:130%;
	font-weight:bold;
	padding:20px 15px 0;
	background:url(img/sub-dt.gif) no-repeat top;
}
#sub dd {
	padding:0 15px 15px;
	background:url(img/sub-dd.gif) no-repeat bottom;
}
#sub dd dl {
	overflow:hidden;
	zoom:1;
}
#sub dd dt {
	padding:10px 0 5px;
	margin:0;
	font-weight:normal;
	background:none;
}
#sub dd dd {
	background:none;
	padding:0;
	margin:0 0 8px;
}
/* footer */
#footer {
	clear: both;
	background:url(img/footer.gif) repeat-x left top;
	padding:0 0 10px;
}
#footer a {
	color: #666;
	text-decoration: none;
}
#footernavi {
	padding: 10px;
	text-align: center;
}
#footernavi li {
	padding: 10px;
	display: inline;
}
div#copy {
	text-align:center;
	padding:0 0 10px;
}
div#copy img {
	vertical-align:bottom;
}
#copy a {
	text-decoration: none;
}
/* 戻る */
.return {
	clear: both;
	padding: 0px;
	margin: 0px;
	text-align: right;
}
.return a:link {
	background: #7c7c7c;
}
.return a:visited {
	background: #7c7c7c;
}
.return a:hover {
	background: #d1d1d1;
}
.return a:active {
	background: #d1d1d1;
}
/* 汎用スタイル */
.clear {
	clear: both;
}
.p_c, .img_r, .img_l {
	text-align:center;
}
.img_list1 {
	overflow:hidden;
	zoom:1;
	clear:both;
}
.img_list1 li {
	float:left;
}
.p_r {
	text-align:right;
}
.img_r {
	float: right;
	margin:0 0 10px 10px;
}
.img_l {
	float: left;
	margin:0 10px 10px 0;
}
.img_r img, .img_l img, .before img, .after img, .img_bo img, .img_gallery img {
	padding:3px;
	border:solid 1px #ccc;
}
.float_l {
	float: left;
}
.float_r {
	float: right;
}
/* 各固定ページ用
---------------------- */

/* greeting.html */
#CompanyInfo {
	width: 99%;
	border-collapse: separate;
}
#CompanyInfo th, #CompanyInfo td {
	padding: 5px 10px;
	border-bottom: 1px solid #cccccc;
	line-height: 1.5;
}
#CompanyInfo th {
	border-left: 3px solid #008d11;
	font-weight: normal;
	text-align: left;
	white-space: nowrap;
}
#CompanyInfo ul {
	margin:0;
}
/* access.html */
#access #main dt {
	font-weight: bold;
	color: #4dbe4b;
}
#access #main dd {
	margin: 0 0 1em 1em;
}
#map {
	height: 300px;
	width:670px;
	margin: 20px auto 30px;
	border: 1px solid #CCCCCC;
}
.googlemap {
	text-align: center;
}
/* privacy.html */

#privacy #main ul li {
	margin-left: 1.5em;
	list-style: none;
}
#privacy #main dl {
	margin-left: 1.5em;
}
#privacy #main dl dd {
	margin-bottom: 1em;
}
#privacy #main h4 {
	margin: 20px 0 5px 0;
}
/* inquiry.html */
#inquiry fieldset span {
	color: #FF0000;
}
#MailForm {
	width: 500px;
	margin: 5px 0 15px;
	border-collapse: collapse;
}
#MailForm th, #MailForm td {
	padding: 10px;
	border: 1px solid #CCCCCC;
	font-weight: normal;
	color: #444;
}
#MailForm th {
	width: 130px;
	background-color: #EBEBEB;
}
#MailForm input, #MailForm textarea {
	width: 310px;
	border: 1px solid #B2B2B2;
}
.inputarea li {
	float: left;
	margin: 0 15px 0 0;
}
#thanks p {
	line-height: 300px;
	text-align: center;
}
.inquiry-bg {
	padding:15px 15px 5px;
	margin:5px 0 30px;
	border:solid 5px #CCCCCC;
}
/* 各ページ用スタイル
（制作時のスタイルはこれより下に記載する事）
---------------------- */
.break1, .break2 {
	font-size:90%;
}
.break1 {
	margin:0 0 1em 20px;
}
.break2 {
	margin-left:20px;
}
.txt1 {
	font-size:120%;
}
.txt2 {
	font-weight:bold;
}
.txt3 {
	color:#49783a;
	padding:0 8px 5px;
	border-bottom:solid 1px #49783a;
}
.before-after2, .reason {
	overflow:hidden;
	zoom:1;
	clear:both;
}
.work, .bg1, .example, .consultation {
	overflow:hidden;
	zoom:1;
	margin-bottom:40px;
}
.bg1 {
	border:solid 1px #ccc;
	padding:10px 10px 5px;
}
.bg2 {
	background-color:#eaeaea;
	border:solid 1px #cccccc;
	padding:20px 20px 5px;
	font-size:110%;
	margin-bottom:20px;
}
.point1 {
	background:url(img/icon1.gif) no-repeat 0 4px;
	padding-left:13px;
}
.img_bo {
	margin-left:20px;
}
.before-after, .img_gallery {
	width:640px;
	padding-bottom:1em;
	text-align:center;
	margin:auto;
	overflow:hidden;
	zoom:1;
}
.img_gallery p {
	overflow:hidden;
	zoom:1;
}
.before {
	float:left;
	background:url(img/icon2.gif) no-repeat right 40%;
	padding-right:90px;
}
.after {
	float:right;
}
.before-after2 {
	background:url(img/icon3.gif) no-repeat bottom;
	padding-bottom:20px;
	margin-bottom:10px;
}
.construction-example .before-after img {
	margin-bottom:10px;
}
.table1 {
	border:1px solid #ccc;
	border-collapse:collapse;
	width:99%;
}
.table1 td, .table1 th {
	border:1px solid #ccc;
	padding:5px 10px;
}
.table1 th {
	background:#e2e2e2;
	font-weight:normal;
	white-space:nowrap;
}
.table2 {
	width:99%;
}
.table2 td {
	vertical-align:top;
	padding:0 10px 20px;
	width:50%;
}
.table2 td .float_l {
	padding:0 10px 10px 0;
}
.reason .float_l {
	padding:0 10px 10px 0;
}


dl.dl1 {
		clear:both;
}

.dl1 dt {
		font-size:120%;
		font-weight:bold;
}

.dl1 dd {
		margin: 0 0 10px;
}


.dl1 dl dt {
		font-size:100%;
		border-bottom:1px dotted #ccc;
}

.dl1 dl {
		padding:15px 15px 5px;
		background:#f9f9f9;
		border:1px solid #f1f1f1;
}

ul.list01 {
		margin:0 -10px 0 0;
}

.list01 li {
		float:left;
		margin:0 10px 0 0;
}

ul.list01 img {
		padding:3px;
		border:1px solid #ccc;
}
