@charset "utf-8";
/*------------------------------------------------------------
	デフォルトスタイル
------------------------------------------------------------*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;

	font-size: 1em;
}

html {
	font-size: 62.5%;
}

body,
table,
input, textarea, select, option {
	font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	line-height: 1.1;
}

table,
input, textarea, select, option {
	line-height: 1.1;
}

ol, ul {
	list-style: none;
}

blockquote, q {
	quotes: none;
}

:focus {
	outline: 0;
}

ins {
	text-decoration: none;
}

del {
	text-decoration: line-through;
}

img {
	vertical-align: top;
}

a:link {
	color: #338201;
}

a:visited {
	color: #338201;
}

a:hover {
	color: #338201;
	text-decoration: none;
}

a:active {
	color: #338201;
}

/*------------------------------------------------------------
	書式設定
------------------------------------------------------------*/
/* テキストの位置 */
.taLeft { text-align: left !important; }
.taCenter { text-align: center !important; }
.taRight { text-align: right !important; }

/* フォントの大きさ（プラス） */
.fsP1 { font-size: 1.08em !important; }
.fsP2 { font-size: 1.16em !important; }
.fsP3 { font-size: 1.24em !important; }
.fsP4 { font-size: 1.32em !important; }
.fsP5 { font-size: 1.4em !important; }

/* フォントの大きさ（マイナス） */
.fsM1 { font-size: 0.92em !important; }
.fsM2 { font-size: 0.84em !important; }
.fsM3 { font-size: 0.76em !important; }
.fsM4 { font-size: 0.68em !important; }
.fsM5 { font-size: 0.6em !important; }

/* フォントの太さ */
.fwNormal { font-weight: normal !important; }
.fwBold { font-weight: bold !important; }

/*------------------------------------------------------------
	微調整用クラス（※多用しないこと）
------------------------------------------------------------*/
.mt0 { margin-top: 0 !important; }
.mb0 { margin-bottom: 0 !important; }

/*------------------------------------------------------------
	clearfix
------------------------------------------------------------*/
	* html .clearfix {
		zoom: 1;
	}

	*+html .clearfix {
		zoom: 1;
	}

.clearfix:after {
	height: 0;
	visibility: hidden;
	content: ".";
	display: block;
	clear: both;
}

/*------------------------------------------------------------
	レイアウト
------------------------------------------------------------*/
body {
	min-width: 800px;	/* 狭いウインドウ幅で横スクロール時に背景が切れるバグ対策でコンテンツと同じ幅を指定 */
	line-height: 1.5;
	text-align: center;
}

#container {
	margin: 0 auto;
	background-color: #fff;
	text-align: left;
}

#main {
	width: 960px;
	margin: 0 auto;
	padding-bottom: 45px;
	font-size: 1.2em;
	font-family: 'メイリオ';
}

	* html #main {
		zoom: 1;
	}

	*+html #main {
		zoom: 1;
	}

#main:after {
	height: 0;
	visibility: hidden;
	content: ".";
	display: block;
	clear: both;
}

/*------------------------------------------------------------
	ヘッダー
------------------------------------------------------------*/
#header {
	height: 75px;
}

#header .headInner {
	width: 960px;
	margin: 0 auto;
	position: relative;
}

#header h1 {
	margin-top: 10px;
	float: left;
}

#header .otherNavi {
	position: absolute;
	top: 8px;
	right: 0px;
}

#header .otherNavi li {
	display: inline;
}

#header .otherNavi li.contact {
	margin-right: 2px;
	padding-right: 5px;
	border-right: 1px solid #666;
}

/*------------------------------------------------------------
	グローバルナビ
------------------------------------------------------------*/
#gNavi {
	margin: 0 auto;
	background: #BCDDAC;
}

#gNavi ul {
	width: 960px;
	margin: 0 auto;
}

#gNavi li {
	float: left;
	z-index: 3;
	position: relative;
}
#gNavi li.menu07{
	width:210px;
}

#gNavi li a {
	display: block;
	text-decoration: none;
	text-align: center;
}

/*------------------------------------------------------------
	パンクズリスト
------------------------------------------------------------*/
#pagePath {
	width: 960px;
	margin: 0 auto 10px;
}

#pagePath li {
	margin-right: 2px;
	display: inline;
}

#pagePath li a {
	margin-right: 5px;
}

/*------------------------------------------------------------
	コンテンツ
------------------------------------------------------------*/
#conts {
	width: 675px;
	float: left;
}

/*------------------------------------------------------------
	サイドバー
------------------------------------------------------------*/
#sideBar {
	width: 280px;
	min-height: 1300px;
	overflow: hidden;
	float: right;
}

#project #sideBar,
#facility #sideBar {
	width: 280px;
	min-height: 1500px;
	overflow: hidden;
	float: right;
}

#sideBar h3 {
	margin: 10px;
	font-size: 1.2em;
}

#sideBar .lNav {
	text-align: center;
}

#sideBar .lNav li {
	margin-bottom: 3px;	
}

#sideBar .company img.syamei {
	margin-bottom: 5px;
}

#sideBar .company img.tel {
	margin-bottom: 10px;
}

#sideBar .company p {
	margin-bottom: 10px;
}

.relative   {  
    position: relative;  
} 

.movie {
	background-color: #000;
	position: absolute;
	left: 0;
	top: 1350px;
}

/*------------------------------------------------------------
	フッター
------------------------------------------------------------*/
#footer {
	background-color: #BCDDAC;
	clear: both;
}

#footer .footInner {
	width: 960px;
	margin: 0 auto;
	position: relative;
}

#footer .subNavi {
	padding-top: 18px;
	height: 32px;
	font-size: 1.1em;
}

#footer .subNavi a {
	color: #666;
	text-decoration: none;
}

#footer .subNavi a:hover {
	color: #999;
}

#footer .subNavi li {
	display: inline;
}

#footer .subNavi li:after {
	margin: 0 8px 0 10px;
	content: "|";
	color: #666;
}

#footer .subNavi .lastChild {
	margin: 0;
	padding: 0;
	border-right: none;
}

#footer .subNavi li.lastChild:after {
	content: "";
}

#footer .pageTop {
	position: absolute;
	right: 0;
	top: 0;
}

#footer .copyright {
	padding-top: 13px;
	height: 32px;
	background: url(images/common/bg_footer.jpg) repeat-x left top;
	color: #FFF;
	font-size: 1.1em;
	text-align: center;
	font-style: normal;
}

/*------------------------------------------------------------
	各ページ共通
------------------------------------------------------------*/
a img.rollOver:hover {
	opacity:0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha( opacity=70 )";
}

/*------------------------------------------------------------
	各ページ共通
------------------------------------------------------------*/
#main {
	width: 100%;
	background: #F7F7F6;
	color: #444;
}

#company h2,
#project h2,
#facility h2,
#example h2,
#privacy h2,
#contact h2 {
	height: 81px;
	text-align: center;
	background: url(images/common/bn_h2_bg.jpg) no-repeat center;
}

#company .h2,
#project .h2,
#facility .h2,
#example .h2,
#privacy .h2,
#contact .h2 {
	padding-top: 25px;
	text-align: center;
	display: block;
}

.pager {
	width: 960px;
	margin: 0 auto;
	padding-top: 10px;
	font-size: 11px;
	color: #666666;
}

.pager ol {
	float: right;
}

.pager li {
	display: inline-block;
}

.pager li a {
	color: #33a200;
}

.pager .icon {
	margin-left: 1em;
	padding-left: 7px;
	background: url(images/common/icon_pager.png) no-repeat 0 50%;
}

.conts_box {
	width: 960px;
	margin: 24px auto 0;
	clear: both;
}

.conts_left {
	width: 630px;
	float: left;
}

.left_box {
	margin-bottom: 40px;
	background: #e5ece2;
}

.left_box h3 {
	padding: 30px 0 30px 25px;
	border-left: 5px solid #054900;
}

.right_box {
	width: 280px;
	float: right;
}

.address {
	border-top: 1px dotted #388901;
	margin-top: 10px;
	padding-top: 20px;
	padding-left: 25px;
}

.address p {
	margin: 5px 0 15px;
	font-size: 12px;
	color: #333333;
}

.contact {
	margin-top: 10px;
	margin-bottom: 40px;
}

/*------------------------------------------------------------
	見出しタイトル
------------------------------------------------------------*/
.titleType01 {
	margin-bottom: 1em;
	padding: 10px;
	background: #eee;
	font-size: 1.5em;
}

.titleType02 {
	margin-bottom: 1em;
	padding: 10px 5px;
	border-bottom: 1px dotted #000;
}

.titleType02 span {
	padding: 0 10px;
	display: block;
	border-left: 4px solid #000;
	font-size: 1.2em;
}

/*------------------------------------------------------------
	見出しタイトル
------------------------------------------------------------*/
.imgBoxL, .imgBoxR {
	margin-bottom: 1em;
}

.imgBoxL .fltImg {
	float: left;
	margin-right: 10px;
	background: #ddd;
}

.imgBoxR .fltImg {
	float: right;
	margin-left: 10px;
	background: #ddd;
}

.imgBoxL .detail,
.imgBoxR .detail {
	width: 570px;
	float: right;
}

/*------------------------------------------------------------
	◆読み込みHTML
	/index.html
------------------------------------------------------------*/

#index #main {
	width: 100%;
	background: #F7F7F6;
}

#index .mainInner {
	width: 960px;
	margin: 20px auto 0 auto;
}

#index #mainImage {
	margin: 1px auto 0;
	width: 100%;
	max-width: 1500px;
	min-width: 100px;
}

#index #mainImage img.bg {
	width: 100%
}

#index #mainImage img.leaves01 {
	position: absolute;
	left: -73px;
	top: -16px;
	z-index: 2;
}

#index #mainImage img.leaves02 {
	position: absolute;
	right: -67px;
	top: -36px;
	z-index: 2;
}

#index #mainImage img.leaves03 {
	position: absolute;
	left: -237px;
	bottom: -27px;
	z-index: 2;
}

#index #mainImage img.leaves04 {
	position: absolute;
	right: -45px;
	bottom: -15px;
	z-index: 2;
}

#index #info {
	background: #FFF url(images/index/img_bg_info_t.jpg) repeat-x left top;
	border-bottom: 1px solid #FFF;
	overflow: hidden;
	position: relative;
}

#index #info .infoRight {
	background: url(images/index/img_bg_info_r.jpg) repeat-y right top;
}

#index #info .infoBottom {
	background: url(images/index/img_bg_info_b.jpg) repeat-x right bottom;
}

#index #info .infoLeft {
	background: url(images/index/img_bg_info_l.jpg) repeat-y left top;
}

#index #info .infoRight:before {
	width: 10px;
	height: 10px;
	background: url(images/index/img_bg_info_rt.jpg);
	display: block;
	position: absolute;
	right: 0;
	top: 0;
	content: "";
}

#index #info .infoRight:after {
	width: 10px;
	height: 10px;
	background: url(images/index/img_bg_info_rb.jpg);
	display: block;
	position: absolute;
	right: 0;
	bottom: 0;
	content: "";
}

#index #info .infoLeft:before {
	width: 10px;
	height: 10px;
	background: url(images/index/img_bg_info_lt.jpg);
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	content: "";
}

#index #info .infoLeft:after {
	width: 10px;
	height: 10px;
	background: url(images/index/img_bg_info_lb.jpg);
	display: block;
	position: absolute;
	left: 0;
	bottom: 0;
	content: "";
}

#index #info .infoInner {
	width: 960px;
	height: 80px;
	margin: 0 auto;
}

#index #info h2 {
	margin-right: 50px;
	padding-top: 25px;
	float: left;
}

#index #info dl {
	padding-top: 30px;
}

#index #info dl dt {
	margin-right: 20px;
	width: 80px;
	float: left;
	color: #0D5200;
	font-weight: bold;
}

#index #info dl dd {
	padding-left: 100px;
}

#index #sideBar {
	margin-top: 20px;
}

/*------------------------------------------------------------
	◆読み込みHTML
	/company.html
------------------------------------------------------------*/
#company .outline {
	margin: 40px 0 50px 30px;
	font-size: 14px;
}

#company .outline dt {
	width: 76px;
	height: 24px;
	margin-right: 35px;
	float: left;
	clear: left;
}

#company .outline dd {
	height: 19px;
	margin-bottom: 12px;
	padding-top: 5px;
}

#company .philosophy {
	font-size: 14px;
}

#company .text {
	margin: 40px 3.5em 0 30px;
	padding-bottom: 50px
}

#company .text p {
	margin-bottom: 2em;
	line-height: 1.8em;
}

#company .text .no_bottom {
	margin-bottom: -2em;
}

#company .accessmap {
	padding-bottom: 60px;
}

#company .gMap {
	margin: 35px 30px 0;
	border: 1px solid #aaaaaa;
}

#company .w_border {
	border: 2px solid #ffffff;
}

#company #sideBar {
	background: url(images/common/bg-side01.jpg) no-repeat;
	background-position: 0 480px;}

/*------------------------------------------------------------
	◆読み込みHTML
	/project.html
------------------------------------------------------------*/

#project .left_box h3 {
	margin: 0 0 30px 30px;
	padding: 20px 0 15px 15px;
	border: none;
	background: url(images/project/img_underber.png) no-repeat bottom left;
}

#project .left_box .h3 {
	padding-left: 65px;
	font-weight: bold;
	font-size: 18px;
	background: url(images/project/icon_case.jpg) no-repeat 0 50%;
}

#project .ba_img {
	width: 570px;
	margin-left: 30px;
}

#project .before_img img, 
#project .after_img img {
	border: 1px solid #999999;
}

#project .before_img {
	padding-bottom: 20px;
	float: left;
	background: url(images/project/icon_before.png) no-repeat bottom left;
}

#project .after_img {
	padding-bottom: 20px;
	background: url(images/project/icon_after.png) no-repeat bottom left;
}

#project .icon_y {
	padding: 0 0 35px 52px;
	float: right;
	background: url(images/project/icon_yajirusi.png) no-repeat 0 65px;
}

#project #sideBar {
	background: url(images/common/bg-side02.jpg) no-repeat;
	background-position: 0 480px;}


/*------------------------------------------------------------
	◆読み込みHTML
	/facility.html
------------------------------------------------------------*/

#facility .left_box h3 {
	margin: 0 0 30px 30px;
	padding: 20px 0 15px 15px;
	border: none;
	background: url(images/project/img_underber.png) no-repeat bottom left;
}

#facility .left_box .h3 {
	padding-left: 65px;
	font-weight: bold;
	font-size: 18px;
	background: url(images/project/icon_case.jpg) no-repeat 0 50%;
}

#facility .ba_img {
	width: 570px;
	margin-left: 30px;
}

#facility .before_img img, 
#facility .after_img img {
	border: 1px solid #999999;
}

#facility .before_img {
	padding-bottom: 20px;
	float: left;
	background: url(images/project/icon_before.png) no-repeat bottom left;
}

#facility .after_img {
	padding-bottom: 20px;
	background: url(images/project/icon_after.png) no-repeat bottom left;
}

#facility .icon_y {
	padding: 0 0 35px 52px;
	float: right;
	background: url(images/project/icon_yajirusi.png) no-repeat 0 65px;
}

#facility #sideBar {
	background: url(images/common/bg-side03.jpg) no-repeat;
	background-position: 0 480px;}


/*------------------------------------------------------------
	◆読み込みHTML
	/example.html
------------------------------------------------------------*/

#example .reliance {
	font-size: 14px;
}

#example .reliance .text {
	padding: 30px 0 60px 0;
	margin-left: 2em;
	line-height: 24px;
}

#example .reliance .text_p {
	margin-bottom: 2em;
}

#example .example_box {
	margin: 40px 0 -5px 30px;
	padding: 20px 0 45px;
	font-size: 12px;
	background: url(images/example/img_bg_example.jpg) no-repeat top left;
}

#example .example_list {
	width: 550px;
	height: 100px;
	margin: 0 0 20px 20px;
	background: #ffffff;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
}

#example .example_list .bg {
	background: #eded95;
	-webkit-border-top-left-radius: 3px;
	-moz-border-top-left-radius: 3px;
	-webkit-border-top-right-radius: 3px;
	-moz-border-top-right-radius: 3px;
}

#example .example_list li {
	height: 35px;
	padding: 10px 0 0 30px;
}

#example .example_list .txt {
	width: 490px;
	height: 55px;
	padding-left: 30px;
	position: relative;
}

#example .example_list .txt p, 
#example .example_list .txt_p {
	position: absolute;
	top: 50%;
}

#example .example_list p {
	margin-top: -1.5em;
}

#example .example_list .txt_p {
	margin-top: -1em;
}

#example #sideBar {
	background: url(images/common/bg-side04.jpg) no-repeat;
	background-position: 0 480px;}


/*------------------------------------------------------------
	◆読み込みHTML
	/privacy.html
------------------------------------------------------------*/

#privacy .text {
	margin: 30px;
	padding-bottom: 20px;
	line-height: 2em;
}

#privacy .text p {
	margin-bottom: 2em;
}

#privacy h4 {
	margin-bottom: 2em;		
	font-weight: normal;
}

#privacy .text ul {
	margin-bottom: 2em;
	width: 370px;
}

#privacy .text ul li {	
	padding-left: 50px;
	text-indent: -1em;
}

#privacy #sideBar {
	background: url(images/common/bg-side05.jpg) no-repeat;
	background-position: 0 480px;}


/*------------------------------------------------------------
	◆読み込みHTML
	/contact.html
------------------------------------------------------------*/

#contact .left_box {
	padding-bottom: 50px;
}

#contact .text {
	width: 570px;
	margin: 40px 0 0 30px;
	font-size: 1.2em;
}

#contact .text p {
	margin-bottom: 2em;
	line-height: 2em;
	font-size: 0.8em;
}

#contact .mailForm table {
	width: 570px;
	margin-left: 30px;
	padding-bottom: 40px;
}

#contact label {
	font-size: 1.2em;
	color: #333333;
}

#contact th img {
	margin-top: -3px;
	padding-left: 15px;
	vertical-align: top;
}

#contact .name label {
	padding-right: 2em;
}

#contact .kana label,
#contact .tel label  {
	padding-right: 1em;
}

#contact .email label {
	padding-right: 2px; 
}
 
#contact .comment label {
	padding-right: 3em;
}

#contact .perf th, 
#contact .comment th {
	vertical-align: top;
	padding-top: 1em;
}

#contact .emailcon th .img {
	margin-top: -8px;
	display: inline-block;
}

#contact th, 
#contact td {
	background: url(images/contact/img_bg_form_line.png) no-repeat bottom;
}

#contact .add td, 
#contact .perf td {
	background-image: none;
}

#contact th {
	width: 200px;
	height:50px;
	text-align: left;
}

#contact .perf th {
	height: 158px;
}

#contact .comment th {
	height: 188px;
}

#contact td {
	padding-bottom: 10px;
	font-size: 1.2em;
}

#contact .perf td, 
#contact .add td, 
#contact .subaddress td {
	margin-bottom: -10px;
}

#contact .subaddress td p, 
#contact .add td p {
	padding-top: 5px;
	font-size: 0.8em;
}

#contact .tel td p {
	display: inline-block;
	font-size: 0.8em;
}

#contact input {
	height: 25px;
	border: 1px solid #ccc;
}

#fName,
#fKana {
	width: 310px;
}

#fZipcode {
	width: 200px;
}

#fPerf {
	width: 145px;
}

#fAddress,
#fSubaddress {
	width: 373px;
}

#fTel {
	width: 240px;
}

#fEmail,
#fEmailConfirm {
	width: 340px;
}

#contact textarea {
	width: 375px;
	height: 170px;
	border: 1px solid #ccc;
}

#contact .submit {
	width: 140px;
	height: 40px;
	margin: auto;
	display: block;
	border: none;
	cursor: pointer;
}

#contact .submitBtn li {
	text-align:center;
}
#contact .submit:hover {
	opacity:0;
	filter: alpha(opacity=0);
	-ms-filter: "alpha( opacity=0 )";
}

#contact #sideBar {
	background: url(images/common/bg-side06.jpg) no-repeat;
	background-position: 0 480px;}
