@charset "utf-8";

/* 【目次】
1.0 リセット
2.0 サイト基本設定
3.0 全体レイアウト
4.0 #header（ヘッダー）
5.0 #headerNav（ヘッダーナビ）
6.0 .visual（ビジュアル）
	6.1 ページタイトル
7.0 #contents（コンテンツ）
	7.1 コンテンツ共通
	7.2 homeページ
		7.21 各ページの紹介(.home_gridBoxs)
	7.3 会社概要ページ
	7.4 事業内容ページ
	7.5 お問い合わせページ
8.0 #sidebar（サイドバー）
9.0 #footer（フッター）
10.0 その他
*/


/* ------------------------------
1.0 リセット
------------------------------ */

/*-----normalize.css v3.0.1より-----*/
html {
	font-family: sans-serif;
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
}
body {
	margin: 0;
}
article,aside,details,figcaption,figure,footer,
header,hgroup,main,nav,section,summary {
	display: block;
}
audio,canvas,progress,video {
	display: inline-block;
	vertical-align: baseline;
}
audio:not([controls]) {
	display: none;
	height: 0;
}
[hidden],template {
	display: none;
}
a {
	background: transparent;
}
a:active,a:hover {
	outline: 0;
}
abbr[title] {
	border-bottom: 1px dotted;
}
b,strong {
	font-weight: bold;
}
dfn {
	font-style: italic;
}
/*h1 {
	font-size: 2em;
	margin: 0.67em 0;
}*/
mark {
	background: #ff0;
	color: #000;
}
/*small {
	font-size: 80%;
}*/
sub,sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}
sup {
	top: -0.5em;
}
sub {
	bottom: -0.25em;
}
img {
	border: 0;
}
svg:not(:root) {
	overflow: hidden;
}
figure {
	margin: 1em 40px;
}
hr {
	-moz-box-sizing: content-box;
	box-sizing: content-box;
	height: 0;
}
pre {
	overflow: auto;
}
code,kbd,pre,samp {
	font-family: monospace, monospace;
	font-size: 1em;
}
button,input,optgroup,select,textarea {
	color: inherit;
	font: inherit;
	margin: 0;
}
button {
	overflow: visible;
}
button,select {
	text-transform: none;
}
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
	-webkit-appearance: button;
	cursor: pointer;
}
button[disabled],
html input[disabled] {
	cursor: default;
}
button::-moz-focus-inner,
input::-moz-focus-inner {
	border: 0;
	padding: 0;
}
input {
	line-height: normal;
}
input[type="checkbox"],
input[type="radio"] {
	box-sizing: border-box;
	padding: 0;
}
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
	height: auto;
}
input[type="search"] {
	-webkit-appearance: textfield;
	-moz-box-sizing: content-box;
	-webkit-box-sizing: content-box;
	box-sizing: content-box;
}
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}
fieldset {
	border: 1px solid #c0c0c0;
	margin: 0 2px;
	padding: 0.35em 0.625em 0.75em;
}
legend {
	border: 0;
	padding: 0;
}
textarea {
	overflow: auto;
}
optgroup {
	font-weight: bold;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
td,th {
	padding: 0;
}

/*-----独自リセット-----*/
h1, h2, h3, h4, h5, h6, p,
dl, dt, dd, ol, ul, li, form {
	margin: 0;
	padding: 0;
}
html {
	overflow-y: scroll;/*スクロールバー表示*/
}
body {
	font-size: 100%;
	line-height: 1.5;
}
small {
	font-size: 0.75em;
	font-weight: normal;
}
table {
	empty-cells: show;
}
input, select {
	vertical-align: middle;
}


/* ------------------------------
2.0 サイト基本設定
------------------------------ */
body {
	font-family: "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic ProN",
		"Hiragino Kaku Gothic Pro", "メイリオ", Meiryo,
		"ＭＳ Ｐゴシック", sans-serif;
	color: #333333;
	background-color: #ffffff;
}
a:link {
	color: #666666;
}
a:visited {
	color: #666666;
}
a:hover {
	color: #333333;
}
a:active {
	color: #333333;
}
section:after,
.clearfix:after {/*フロートクリア用*/
	clear: both;
	content: '';
	display: block;
}
.clr {/*フロートクリア用*/
	clear: both;
	overflow: hidden;
	height: 0;
}
.hide {/*文字隠し用*/
	display: none;
}
a img {
	-webkit-transition: all 0.15s ease 0s;
	transition: all 0.15s ease 0s;
}
a img:hover {
	opacity: 0.8;
}
p {
	font-size: 0.875em;
	font-size: 0.875rem;
	line-height: 1.6;
	margin: 18px 6px;
}
p.right {
	text-align: right;
}
p.center {
	text-align: center;
}


/* ------------------------------
3.0 全体レイアウト
------------------------------ */
#header {
	border-top: solid 6px #008100;
}
#container {
	background-color: #ffffff;
	margin: 0 auto;
	padding-bottom: 12px;
	width: 800px;
	overflow: hidden;
	-webkit-box-shadow: 0 0 6px 1px rgba(0, 0, 0, 0.2);
	box-shadow: 0 0 6px 1px rgba(0, 0, 0, 0.2);
}
#contents {
	margin: 24px 15px;
	overflow: hidden;
}
#footer {
	color: #ffffff;
	background-color: #0bad22;
	background-image: url("../_img/footer_bg.png");
	background-repeat: repeat-x;
	padding: 3px 0 6px;
}


/* ------------------------------
4.0 #header（ヘッダー）
------------------------------ */
.header_inner {
	margin: 0 auto;
	width: 800px;
	overflow: hidden;
}
.header_inner:after {/*フロートクリア用*/
	clear: both;
	content: '';
	display: block;
}
.header_logo {
	padding: 30px 0 0 6px;
	width: 300px;
	float: left;
	-webkit-transition: all 0.15s ease 0s;
	transition: all 0.15s ease 0s;
}
.header_logo:hover {
	opacity: 0.8;
}
.header_utility {
	margin-right: 6px;
	width: 225px;
	float: right;
}
.header_utility_add {
	font-size: 14px;
	font-weight: bold;
	line-height: 1.4;
	margin-top: 15px;
}
.header_utility_tel {
	background-image: url("../_img/header_utility_tel.png");
	background-repeat: no-repeat;
	margin: 3px 0 9px;
	width: 225px;
	height: 23px;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
}


/* ------------------------------
5.0 #headerNav（ヘッダーナビ）
------------------------------ */
#headerNav {
	background-image: url("../_img/header_nav_bg.png");
	background-repeat: repeat-x;
	height: 40px;
	overflow: hidden;
}
.headerNav_inner {
	margin: 0 auto;
	width: 800px;
	overflow: hidden;
}
.headerNav_menu:after {/*フロートクリア用*/
	clear: both;
	content: '';
	display: block;
}
.headerNav_menu > li {
	background-image: url("");/*画像は個別に設定*/
	background-repeat: no-repeat;
	list-style: none;
	width: 200px;
	height: 40px;
	float: left;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
}
.headerNav_menu > li > a {
	background-image: url("");/*画像は個別に設定*/
	background-repeat: no-repeat;
	width: 200px;
	height: 40px;
	display: block;
	-webkit-transition: all 0.3s ease 0s;
	transition: all 0.3s ease 0s;
}
/*マウスオーバー用画像をプリロード ＆ マウスオーバー*/
#headerNav-home > a:hover,
#headerNav-home {
	background-image: url("../_img/header_nav_home_on.png");
}
#headerNav-business > a:hover,
#headerNav-business {
	background-image: url("../_img/header_nav_business_on.png");
}
#headerNav-about > a:hover,
#headerNav-about {
	background-image: url("../_img/header_nav_about_on.png");
}
#headerNav-contact > a:hover,
#headerNav-contact {
	background-image: url("../_img/header_nav_contact_on.png");
}
/*通常表示*/
#headerNav-home > a {
	background-image: url("../_img/header_nav_home.png");
}
#headerNav-business > a {
	background-image: url("../_img/header_nav_business.png");
}
#headerNav-about > a {
	background-image: url("../_img/header_nav_about.png");
}
#headerNav-contact > a {
	background-image: url("../_img/header_nav_contact.png");
}
/*カレントページを表示する（bodyのclassとメニュー位置を合わせる）*/
.body-home #headerNav-home > a {
	background-image: url("../_img/header_nav_home_on.png");
}
.body-business #headerNav-business > a {
	background-image: url("../_img/header_nav_business_on.png");
}
.body-about #headerNav-about > a {
	background-image: url("../_img/header_nav_about_on.png");
}
.body-contact #headerNav-contact > a {
	background-image: url("../_img/header_nav_contact_on.png");
}


/* ------------------------------
6.0 .visual（ビジュアル）
------------------------------ */
.visual {
	background-color: #ccdae0;
	background-image: url("../_img/index/visual_bg.gif");
	text-align: center;
	margin: 0 auto;
}
.visual img {
	vertical-align: bottom;
	-webkit-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.15);
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15);
}
/*-----6.1 ページタイトル-----*/
.pageTitle {}
.pageTitle img {
	vertical-align: bottom;
	-webkit-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.15);
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15);
}


/* ------------------------------
7.0 #contents（コンテンツ）
------------------------------ */

/*-----7.1 コンテンツ共通-----*/
.heading-large {/*h2想定*/
	font-size: 1.125em;
	font-size: 1.125rem;
	font-weight: normal;
	color: #ffffff;
	background-color: #555555;
	letter-spacing: 0.05em;
	margin-top: 48px;
	padding: 6px 12px 3px;
	-webkit-border-radius: 4px;
	border-radius: 4px;
	-webkit-box-shadow: 0 5px 4px -3px rgba(0, 0, 0, 0.2);
	box-shadow: 0 5px 4px -3px rgba(0, 0, 0, 0.2);
}
.firstHeading {/*先頭に来る見出しは上の空白を詰める*/
	margin-top: 0;
}

.goTop {/*ページの先頭に戻る*/
	font-size: 0.75em;
	font-size: 0.75rem;
	text-align: right;
	margin-top: 48px;
}

/*-----7.2 homeページ-----*/

/*7.21 各ページの紹介(.home_gridBoxs)*/
.home_gridBoxs {}
.home_gridBoxs:after {
	clear: both;
	content: '';
	display: block;
}
.home_gridBox {
	margin: 0 0 18px 15px;
	border: solid 1px #999999;
	width: 244px;
	height: 190px;
	float: left;
	position: relative;
}
.home_gridBox:first-child {
	margin-left: 0;
}
.home_gridBox:after {
	clear: both;
	content: '';
	display: block;
}
.home_gridBox_title {
	font-size: 14px;
	font-weight: normal;
	color: #ffffff;
	background-color: #009d00;
	letter-spacing: 0.05em;
	padding: 5px 6px;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(1.00, #2b9c35), color-stop(0.50, #009d00), color-stop(0.00, #15761f));
	background: -webkit-linear-gradient(top, #15761f 0%, #009d00 50%, #2b9c35 100%);
	background: -moz-linear-gradient(top, #15761f 0%, #009d00 50%, #2b9c35 100%);
	background: -ms-linear-gradient(top, #15761f 0%, #009d00 50%, #2b9c35 100%);
	background: linear-gradient(top, #15761f 0%, #009d00 50%, #2b9c35 100%);
}
.home_gridBox_txt {
	margin-top: 3px;
	padding-left: 6px;
	width: 135px;
	float: left;
}
.home_gridBox_txt p {
	font-size: 13px;
	line-height: 1.4;
	margin: 6px 0;
}
.home_gridBox_lead {
	font-size: 16px;
	font-weight: bold;
	letter-spacing: 0.05em;
}
.home_gridBox_img {
	margin-top: 9px;
	padding-right: 6px;
	width: 90px;
	float: right;
}
.home_gridBox_img img {
	border: solid 1px #999999;
}
.home_gridBox_btnDetail {
	position: absolute;
	left: 6px;
	bottom: 5px;
}
.home_gridBox_btnDetail {
	background-image: url("../_img/btn_detail_on.png");
	background-repeat: no-repeat;
	width: 79px;
	height: 21px;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
}
.home_gridBox_btnDetail a {
	background-image: url("../_img/btn_detail.png");
	background-repeat: no-repeat;
	width: 79px;
	height: 21px;
	display: block;
	-webkit-transition: all 0.15s ease 0s;
	transition: all 0.15s ease 0s;
}
.home_gridBox_btnDetail a:hover {
	background-image: url("../_img/btn_detail_on.png");
}

/*-----7.3 会社概要ページ-----*/
.about_table {
	margin: 18px auto;
	border: solid 1px #cccccc;
	width: 685px;
}
.about_table th {
	font-size: 0.875em;
	font-size: 0.875rem;
	font-weight: normal;
	text-align: left;
	padding: 9px;
	border: solid 1px #cccccc;
	line-height: 1.6;
	width: 5em;
}
.about_table td {
	font-size: 0.875em;
	font-size: 0.875rem;
	padding: 9px;
	border: solid 1px #cccccc;
	line-height: 1.6;
}
.about_heading {
	font-size: 1.125em;
	font-size: 1.125rem;
	font-weight: bold;
	background-image: url("../_img/about/heading_icon.png");
	background-repeat: no-repeat;
	background-position: 0 0;
	letter-spacing: 0.05em;
	margin-top: 48px;
	padding-left: 24px;
}

.googleMap {
	margin: 18px auto;
	width: 685px;
}
.googleMap iframe {
	border: none;
}
/*-----7.4 事業内容ページ-----*/
.business_gridBox {
	margin: 12px 0 12px 30px;
	width: 365px;
	float: left;
}
.business_gridBox:first-child {
	margin-left: 5px;
}
.business_heading {
	font-size: 14px;
	color: #ffffff;
	background-color: #555555;
	letter-spacing: 0.05em;
	margin-top: 12px;
	padding: 6px 12px;
	-webkit-border-radius: 6px;
	border-radius: 6px;
}
.business_heading h2 {
	font-size: 14px;
	font-weight: normal;
	padding-left: 10px;
	border-left: solid 7px #ffffff;
}
.business_gridBox_borderBox {
	background-image: url();
	background-repeat: no-repeat;
	background-position: 15px 22px;
	margin-top: -5px;
	padding: 18px 15px 0 180px;
	border-right: solid 1px #cccccc;
	border-bottom: solid 1px #cccccc;
	border-left: solid 1px #cccccc;
	min-height: 130px;
	height: auto !important;
	height: 130px;
}
.business_gridBox_borderBox p {
	font-size: 0.813em;
	font-size: 0.813rem;
	margin-top: 6px;
}
.business_gridBox_borderBox01 {
	background-image: url("../_img/business/business_img01.jpg");
}
.business_gridBox_borderBox02 {
	background-image: url("../_img/business/business_img02.jpg");
}
.business_gridBox_borderBox03 {
	background-image: url("../_img/business/business_img03.jpg");
}
.business_gridBox_borderBox04 {
	background-image: url("../_img/business/business_img04.jpg");
}

/*-----7.5 お問い合わせページ-----*/
/*これ以外にもフォーム関連の設定がcontact.cssにあり*/
.contact_textBox {
	margin: 0 auto 36px;
	width: 685px;
}
.contact_policy {
	font-weight: bold;
}

.contact_table {
	margin: 18px auto;
	border: solid 1px #cccccc;
	width: 685px;
}
.contact_table th {
	font-size: 0.875em;
	font-size: 0.875rem;
	font-weight: normal;
	text-align: left;
	background-color: #cacaca;
	padding: 9px;
	border-top: solid 1px #888888;
	line-height: 1.4;
}
.contact_table tr:first-child th {
	border-top: solid 1px #cccccc;
}
.contact_table td {
	font-size: 0.875em;
	font-size: 0.875rem;
	padding: 9px;
	border: solid 1px #cccccc;
	line-height: 1.4;
}

/* ------------------------------
8.0 #sidebar（サイドバー）
------------------------------ */


/* ------------------------------
9.0 #footer（フッター）
------------------------------ */
.footer_inner {
	margin: 0 auto;
	width: 800px;
	overflow: hidden;
}
.footer_nav {
	list-style: none;
}
.footer_nav li {
	font-size: 0.75em;
	font-size: 0.75rem;
	padding-left: 9px;
	padding-right: 3px;
	border-left: solid 1px #eeeeee;
	display: inline;
}
.footer_nav li:first-child {
	border: none;
}
.footer_nav li a {
	color: #ffffff;
	text-decoration: none;
}
.footer_nav li a:hover {
	text-decoration: underline;
}
.footer_nav li a:active {
	text-decoration: none;
}
.footer_address {
	font-size: 0.75em;
	font-size: 0.75rem;
	line-height: 1.4;
	margin: 18px 6px;
}
.copyright {
	font-size: 0.75em;
	font-size: 0.75rem;
	text-align: center;
	line-height: 1.4;
	padding-top: 12px;
}


/* ------------------------------
10.0 その他
------------------------------ */
