@charset "utf-8";
@import "reset.css";

html {

}

body {

}

/* @group clearfix */

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

* html .clearfix {
	height: 1%;
}

*+html .clearfix {
	height: 1%;
}

.clearfix {
	display: inline-block;
}

/* Hides from IE-mac \*/

.clearfix {
	display: block;
}

/* End hide from IE-mac */

/* @end */


/* テキスト関連
-------------------------------------------------*/

p { line-height: 140%; }

.section p { margin: 0 0 10px;}

.txt_center { text-align: center; }

.txt_right { text-align: right; }

p.normal { margin: 0 0 10px; }

p.m_0 { margin:0; }

p.headline { margin: 0 10px 20px 10px; }

.txt_red {
	color: #FF0000;
}

.txt_prest { color: #D1A590; }

.txt_important { color: #FF0000; font-weight: bold; }

.txt_small { font-size: 90%; }

.super { vertical-align: top; font-size: 80%; }

/* リンク関連
-------------------------------------------------*/

a { color: #0B3D90; text-decoration: underline; }
a:hover { text-decoration: none;}

/* 装飾関連
-------------------------------------------------*/

.dot_border_b { border-bottom: 1px dotted #CCCCCC; }

.bg_color_01 { background-color: #DAF5BC; }
.bg_color_02 { background-color: #FFDDC1; }
.bg_color_03 { background-color: #DDF2EB; }
.bg_color_04 { background-color: #EFF2F8; }
.bg_color_05 { background-color: #F5E0CB; }

/* 余白関連
-------------------------------------------------*/

.m_t_10 { margin-top: 10px; }
.m_r_05 { margin-right: 5px; }
.m_b_05 { margin-bottom: 5px; }
.m_b_20 { margin-bottom: 20px; }

.p_t_10 { padding-top: 10px; }
.p_l_10 { padding-left: 10px; }


/* レイアウト関連
-------------------------------------------------*/
.f_l { float: left; }

.w_330 { width: 330px; }
.w_218 { width: 218px; }

/* コンテンツ
-------------------------------------------------*/

#contents {
	background: url(../img/BG_contents.gif) repeat-y;
}

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


/* ヘッダー */

#gnavi_wrap {
	  margin: 0px auto;
	  width: 750px;
	  clear: both;
}


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

h1#index_h1 {
	width: 750px;
	height: 25px;
	text-indent: -9999px;
	background: url(../img/index_h1_title.jpg) no-repeat;
	text-indent: -9999px;
}

#gnavi_wrap div img {
	vertical-align: bottom;
}

ul#gnavi {
	width: 750px;
	margin: 2px 0 0;
}

ul#gnavi li {
	width: 150px;
	height: 30px;
	float: left;
	text-indent: -9999px;
}

ul#gnavi li a {
	width: 150px;
	height: 30px;
	overflow: hidden;
	display: block;
	background-repeat: no-repeat;
}

ul#gnavi li.menu01 a { background: url(../img/gnavi_01.jpg) 0 0; }
ul#gnavi li.menu02 a { background: url(../img/gnavi_02.jpg) 0 0; }
ul#gnavi li.menu03 a { background: url(../img/gnavi_03.jpg) 0 0; }
ul#gnavi li.menu04 a { background: url(../img/gnavi_04.jpg) 0 0; }
ul#gnavi li.menu05 a { background: url(../img/gnavi_05.jpg) 0 0; }

ul#gnavi li.menu01 a:hover { background: url(../img/gnavi_01.jpg) 0 -30px; }
ul#gnavi li.menu02 a:hover { background: url(../img/gnavi_02.jpg) 0 -30px; }
ul#gnavi li.menu03 a:hover { background: url(../img/gnavi_03.jpg) 0 -30px; }
ul#gnavi li.menu04 a:hover { background: url(../img/gnavi_04.jpg) 0 -30px; }
ul#gnavi li.menu05 a:hover { background: url(../img/gnavi_05.jpg) 0 -30px; }


ul#gnavi li.menu01_now { background: url(../img/gnavi_01.jpg) 0 -60px; }
ul#gnavi li.menu02_now { background: url(../img/gnavi_02.jpg) 0 -60px; }
ul#gnavi li.menu03_now { background: url(../img/gnavi_03.jpg) 0 -60px; }
ul#gnavi li.menu04_now { background: url(../img/gnavi_04.jpg) 0 -60px; }
ul#gnavi li.menu05_now { background: url(../img/gnavi_05.jpg) 0 -60px; }




/* メイン */

#main {
	width: 565px;
	float: right;
	margin: 0 0 40px;
}

.section {
	width: 565px;
	margin: 0 auto 20px;
	clear: both;
}

.inner {
	margin: 10px;
}

.half_inner {
	width: 292px;
	float: left;
}

.half_inner_img {
	margin: 0 4px 20px 0;
	float: left;
}

.section h2 {
	margin: 0 0 10px;
}

.section h3 {
	width: 553px;
	margin: 0 0 10px;
	padding: 5px 0 5px 10px;
	color: #FFFFFF;
	font-weight: bold;
	background: url(../img/h3_repeat.jpg) repeat-y;
	border: 1px solid #87A0C9;
	
}

.section h3.half {
	width: 280px;
	margin: 0 0 10px;
	padding: 5px 0 5px 10px;
	color: #FFFFFF;
	font-weight: bold;
	background: url(../img/h3_repeat_half.jpg) repeat-y;
	border: 1px solid #87A0C9;
	
}

.section h4 {
	margin: 0 0 10px;
}

h4.border {
	padding: 0 0 3px;
	border-bottom: 1px dotted #CCCCCC;
}

strong.product {
	margin: 0 0 15px;
	padding: 5px;
	color: #666666;
	font-weight: bold;
	display: block;
}

ul.list_normal li {
	margin: 0 0 0 1em;
	list-style-type: disc;
	line-height: 150%;	
}

dl.method {
	width: 539px;
	padding: 3px;
}

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

dl.method dt.photo {
	float: left;
}

dl.method dt.photo img {
	vertical-align: bottom;
}

dl.method dd.method_ex {
	float: left;
}

dl.method dd.method_ex dl {
	margin: 5px 0 0 0;
	padding: 0 10px 10px;
	line-height: 1.5;
}

dl.method dd.method_ex dd {
	margin: -1.5em 0 0 3em;
}

dl.method dd.method_ex dd.em3 {	margin: -1.5em 0 0 4em; }
dl.method dd.method_ex dd.em4 {	margin: -1.5em 0 0 5em; }
dl.method dd.method_ex dd.em4-5 {	margin: -1.5em 0 0 5.5em; }
dl.method dd.method_ex dd.em5 {	margin: -1.5em 0 0 6em; }
dl.method dd.method_ex dd.em6 {	margin: -1.5em 0 0 7em; }

html*dl.method dd.method_ex dd.em4-5 { margin: -1.5em 0 0 6em; }

* html dl.method dd.method_ex dd.em4-5 { margin: -1.5em 0 0 5.5em; }


dl.ex_normal {
}


dl.ex_normal dd {
	padding: 10px;
}

dl.ex_normal dd.p_side_0 {
	padding-left: 0px;
	padding-right: 0px;
}

dl.ex_2colum {
	height: 100%;
}

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

dl.ex_2colum dt {
	float: left;
	margin: 0 10px 0 0;
}

dl.ex_2colum dd {
	padding: 10px;
}

p.link_duskin {
	clear: both;
	text-align: right;
	font-size: 80%;
}


/* トップページ */

.index_section {
	width: 565px;
	margin: 0 0 20px;
	padding: 0 0 1px;
	background-color: #A9A9FA;
}

.index_section_parallel {
	width: 280px;
	margin-bottom: 30px;
	padding: 0 0 1px;
	float: left;
	background-color: #A9A9FA;
}

.index_section h2,
.index_section_parallel h2 {
	height: 20px;
	text-indent: -9999px;
	background-color: #E1E7F1;
	background-repeat: no-repeat;
}

#h2_01 { background-image: url(../img/index_01.jpg); }
#h2_02 { background-image: url(../img/index_02.jpg); }
#h2_03 { background-image: url(../img/index_03.jpg); }
#h2_04 { background-image: url(../img/index_04.jpg); }
#h2_05 { background-image: url(../img/index_05.jpg); }

.cont_wrap {
	width: 559px;
	margin: 0 auto;
	padding: 1px;
	border: 1px solid #F1F1F1;
	background-color: #A9A9FA;
}

.cont_wrap_parallel {
	width: 274px;
	margin: 0 auto;
	padding: 1px;
	border: 1px solid #F1F1F1;
	background-color: #A9A9FA;
}

.cont {
	width: 539px;
	padding: 10px;
	background-color: #FFFFFF;
}

.cont_parallel {
	width: 254px;
	padding: 10px;
	background-color: #FFFFFF;
}

.cont h3 {
	padding: 0 0 5px;
	border-bottom: 1px dotted #CCCCCC;
}

dl#partner {
	width: 528px;
	margin: 10px auto 0;
	padding: 0 0 5px;
	background-color: #F1F1F1;

}

dl#partner dd {
	width: 503px;
	margin: 5px auto;

}

span.link_detail {
	padding: 0 0 2px 20px;
	background: url(../img/arrow01.jpg) no-repeat left 1px;
}

dl#tech {
	
	
}

dl#tech dt {
	margin: 0 0 5px 0px;
	padding: 0 0 5px 10px;
	color: #0B3D90;
	font-weight: bold;
	border-bottom: 1px dotted #CCCCCC;
	background: url(../img/arrow02.jpg) no-repeat left 3px;
}

dl#tech dd {
	margin: 0 0 10px;
	padding: 0 0 10px;
}

dl#tech dd.explain {
	height: 80px;
	position: relative;
	margin: 0 0 0 180px;
	padding: 0;
}

dl#tech dd.bottom {
	margin: 0;
	padding: 0;
}

dl#tech dd img.side_img {
	margin: -25px 0 0 -180px;
	position: absolute;
}

dl#equip {
	
	
}

dl#equip dt {
	margin: 0 0 5px 180px;
	padding: 0 0 5px 10px;
	color: #0B3D90;
	font-weight: bold;
	border-bottom: 1px dotted #CCCCCC;
	background: url(../img/arrow02.jpg) no-repeat left 3px;
}

dl#equip dd {
	margin: 0 0 10px;
	padding: 0 0 10px;
}

dl#equip dd.explain {
	height: 80px;
	position: relative;
	margin: 0 0 0 180px;
	padding: 0;
}

dl#equip dd.bottom {
	margin: 0;
	padding: 0;
}

dl#equip dd img.side_img {
	margin: -25px 0 0 -180px;
	position: absolute;
}

dl.introduce {
	padding: 75px 0 0;
}

dl.introduce dt {
	margin: 0 0 5px;
	padding: 0 0 5px 10px;
	color: #0B3D90;
	font-weight: bold;
	border-bottom: 1px dotted #CCCCCC;
	background: url(../img/arrow02.jpg) no-repeat left 3px;
}

dl.introduce dd.explain {
	height: 95px;
	position: relative;
	padding: 0;
}

dl.introduce dd img.top_img {
	margin: -115px 0 0 0;
	position: absolute;
}

html*dl.introduce dd.explain {
	height: 115px;
}

* html dl.introduce dd.explain{
	height: 95px;
}

html*dl.introduce dd img.top_img {
	margin: -125px 0 0 0;
}

* html dl.introduce dd img.top_img {
	margin: -115px 0 0 0;
}


/* 製品について */

dl#example {
	border-top: none;
}

dl#example dd {
	margin: 2px 0 10px 5px;
}

dl#example dd ul li {
	margin: 0 0 5px;
	padding: 0 0 0 10px;
	line-height: 130%;
}


/* 製品開発の流れ */

dl#flow {
	width: 500px;
	margin: 0 auto;
}

dl#flow dt {
	width: 480px;
	height: 19px;
	padding: 3px 0 0 20px;
	_padding-top: 4px;
	color:#FFFFFF;
	font-weight: bold;
	background: url(../img/flow_BG_title.jpg) no-repeat;
}


dl#flow dd {
	height: 110px;
	margin: 0 150px 0 0;
	_margin-top: -1px;
	padding: 10px 0 0 30px;
	position: relative;
	background: url(../img/flow_BG_cont.jpg) left top no-repeat ;
}

dl#flow dd.flow_list_bottom {
	background: url(../img/flow_BG_cont_02.jpg) left top no-repeat ;
}

dl#flow dd img {
	margin: 0 0 0 330px;
	position: absolute;
}

#flow_bottom {
}


dl#flow_bottom  {
	height: 100%;
	padding: 10px 10px 10px 5px;
	border: 1px solid #999999;
	background-color: #F6F6F6;
}

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


dl#flow_bottom dt {
	float: left;
	padding: 0 0 0 3px;
	display: block;
	border-left: 2px solid #FF0000;
}

dl#flow_bottom dd {
	float: right;
	margin: 1em 0 0 0;
}

dl#flow_bottom dd img {
	vertical-align: top;
	margin: 0 0 0 3px;
}


/* 製品開発事例 */

caption {
	margin: 10px 0 0 10px;
}

table.type {
	width: 210px;
	margin: 0 0 20px 10px;
	_margin-top:  10px;
	border-top: 1px solid #999999;
	border-left: 1px solid #999999;

}

table.type th {
	padding: 3px 0;
	background-color: #E4F5EF;
	text-align: center;
	border-right: 1px solid #999999;
	border-bottom: 1px solid #999999;
}

table.type td {
	padding: 3px 0;
	background-color: #FFFFFF;
	text-align: center;
	border-right: 1px solid #999999;
	border-bottom: 1px solid #999999;
}

/* ご相談窓口 */

dl.window {
	line-height: 130%;
}

dl.window dt {
	margin: 0 0 10px;
}

dl.window dd {
	border-left: 2px solid #154594;
	margin: 0 0 10px;
	padding: 0 0 0 5px;
}




/* サイドナビ */

#side_nav {
	width: 180px;
	float: left;
	display: inline;
	letter-spacing: -0.1em;
	_letter-spacing: -0.15em;
	background-color: #F6F6F6;
}

#side_nav  h5#h5_01 {
	width: 180px;
	height: 20px;
	background: url(../img/navi_h5_01.jpg) no-repeat;
	text-indent: -9999px;
}

dl#navi01 {
	width: 173px;
	margin: 0 0 20px;
	padding: 10px 0 0 5px;
	border: 1px solid #A9A9FA;
	border-top: none;
	background-color: #FFFFFF;
}

dl#navi01 dd {
	margin: 2px 0 10px 5px;
}

dl#navi01 dd ul li {
	margin: 0 0 5px;
	padding: 0 0 0 10px;
	line-height: 130%;
}

ul.list01 li { background: url(../img/navi_list01_arrow.jpg) no-repeat 0 4px; }
ul.list02 li { background: url(../img/navi_list02_arrow.jpg) no-repeat 0 4px; }
ul.list03 li { background: url(../img/navi_list03_arrow.jpg) no-repeat 0 4px; }
ul.list04 li { background: url(../img/navi_list04_arrow.jpg) no-repeat 0 4px; }
ul.list05 li { background: url(../img/navi_list05_arrow.jpg) no-repeat 0 4px; }



#side_nav  h5#h5_02 {
	width: 180px;
	height: 24px;
	background: url(../img/navi_h5_02.jpg) no-repeat;
	text-indent: -9999px;
}

#side_nav  h5#h5_02 a {
	width: 180px;
	height: 24px;
	display: block;
	overflow: hidden;
}


ul#navi02 {
	width: 173px;
	margin: 0 0 20px;
	padding: 10px 0 10px 5px;
	border: 1px solid #A9A9FA;
	border-top: none;
	background-color: #FFFFFF;
}

ul#navi02 li {
	line-height: 150%;
}

p#title_img {
	margin: 0 0 20px;
}
#about_lnavi {
	border: 1px solid #CCCCCC;
	line-height: 140%;
	background-color: #ffffff;
	padding: 5px;
}
#about_lnavi ul {
	padding-left: 10px;
}

#about_lnavi li {
	list-style-position: outside;
	list-style-image: url(../img/arrow02.jpg);
	border-bottom: 1px solid #cccccc;
	margin-left: 5px;
	padding-top: 5px;
	padding-bottom: 5px;
}
#about_lnavi .last {
	border-top-width: 0px;
	border-right-width: 0px;
	border-bottom-width: 0px;
	border-left-width: 0px;
}
#main .section .section .inner h4 {
	font-size: 120%;
	font-weight: bold;
	color: #0E3E9F;
	margin-top: 15px;
}
#main .section .section .inner h5 {
	font-size: 100%;
	font-weight: bold;
	margin-top: 15px;
	margin-bottom: 5px;
	color: #0E3E9F;
}
#main .section .section .inner strong {
	font-weight: bold;
	padding-bottom: 3px;
	padding-top: 3px;
	display: block;
}

/*SW追記*/

.xl_red {
	font-size: 112%;
	color: #FF0000;
	margin-top: 20px;
	margin-bottom: 20px;
	text-decoration: underline;
}

.form_table {
	border: 1px solid #999999;
	margin-top: 16px;
	margin-bottom: 16px;
}

.formarea .form_text {
	font-size: 100%;
	padding: 8px;
	border-right-width: 1px;
	border-bottom-width: 1px;
	border-right-style: solid;
	border-bottom-style: solid;
	border-right-color: #999999;
	border-bottom-color: #999999;
	background-color: #E1EDFD;
	vertical-align: top;
}
.formarea .form_text2 {
	font-size: 100%;
	padding: 8px;
	border-right-width: 1px;
	border-right-style: solid;
	border-right-color: #999999;
	background-color: #E1EDFD;
}
.formarea .form_text3 {
	font-size: 100%;
	padding: 8px;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #999999;
}
.form_s_text {
	font-size: 80%;
}
.form_btnspace {
	text-align: center;
	padding-top: 10px;
	padding-bottom: 10px;
}

#main_form {
	width: 750px;
	margin-right: auto;
	margin-bottom: 20px;
	margin-left: auto;
	padding-top: 16px;
}

.formtxt_red {
	color: #FF0000;
	font-size: 80%;
}
