@charset "utf-8";

/*初期化セット*/
img{ border: 0px; }

ul li{ list-style: none; }

a:link { color: #1B394B; }

a:visited {	color: #367296; }

a:hover { color: #09F; }

body {
	background: #414141;
	margin: 0;
	padding: 0;
	text-align: center;
	color: #333;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS P Gothic", sans-serif;
	font-size: 80%;
}
#container {
	width: 100%; 
	min-width: 960px;
	margin: 0 auto;
	background: #FFF;
	text-align: left;
}
#header {
	width: 960px; 	
	height: 130px;
	margin: 0 auto;
	position: relative;
	z-index: 100; 
	background: #FFF; 
	padding: 0 20px;
}

#logo {
	display: inline;
	position: absolute;
	left: 20px;
	top: 80px;	
	}

h1 {
	margin: 0; /* div 間の原因不明のスペース回避 */
	padding: 10px 0 0 10px;
	font-size: 80%;	
	}
h2{
	width:960px;
	margin: 0 auto;
	padding: 0;
	text-indent: 20px;
	color: #FFF;
	font-size: 12pt;
	line-height: 1.2em;
	}

.h2category{
	text-indent: 20px;
	color: #FFF;
	font-size: 10pt;
	line-height: 1.2em;
	}
h2 a:link {
	color: #6C3;
}

h2 a:hover {
	color: #6F3;
}

h3 {
	margin: 20px 0;
	font-size: 18px;
	font-weight: bold;
	text-indent: 25px;
	background-image: url(img/allow3.gif);
	background-repeat: no-repeat;
	background-position: -1px;
	}
h4 {
	font-size: 120%;
	font-weight: bold;
	width: 940px;
	color: #666;
	border-bottom: 1px solid #666;
	}
h5 {
	font-size: 100%;
	font-weight: bold;
	color: #999;
	margin-bottom: 0;
	}


/* Contact
---------------------------------------------------------------------------*/
#head_contact { position: absolute; right: 0; top: 0; list-style: none; }
#head_contact li { float: left; font-size: 1.1em; margin: 0 20px 0 0; padding: 0; }
li#contact{
	float:left;
	width:120px;
	list-style-type: none;
	list-style-position:outside;
	margin: 0;
	padding: 0 20px 0 10px;/**lang復活時にはpadding設定を削除**/
}
li#contact a{
	width:120px;
	height:30px;
	display:block;
	text-indent:-9999px;
	background-image: url(img/contact.gif);
	background-repeat: no-repeat;
	background-position: 0px 0px;
}
li#contact a:hover{
	background: url(img/contact_f2.gif) no-repeat;
}
li#lang{
	float:left;
	width:120px;
	height:30px;
	list-style-type: none;
	list-style-position:outside;
	padding: 0 20px 0 10px;
	margin: 0;
}
li#lang a{
	width:120px;
	height:30px;
	display:block;
	text-indent:-9999px;
	background-image: url(img/english.gif);
	background-repeat: no-repeat;
}
li#lang a:hover{
	background: url(img/english_f2.gif) no-repeat;
}


#headbanner_home {
	width: 100%;
	height: 240px;
	margin: 0 auto;
	padding: 0 20px;
	position: relative;
	background: #09f url(img/headbanner_home.gif) no-repeat center;
}
#headbanner_services {
	width: 100%;
	height: 240px;
	margin: 0 auto;
	padding: 0 20px;
	position: relative;
	background: #000 url(img/headbanner_services.gif) no-repeat center;
}
#headbanner_works {
	width: 100%;
	height: 240px;
	margin: 0 auto;
	padding: 0 20px;
	position: relative;
	background: #9C0 url(img/headbanner_works.gif) no-repeat center;
}
#headbanner_about {
	width: 100%;
	height: 240px;
	margin: 0 auto;
	padding: 0 20px;
	position: relative;
	background: #F93 url(img/headbanner_aboutus.gif) no-repeat center;
}

#headbanner_flow {
	width: 100%;
	height: 240px;
	margin: 0 auto;
	padding: 0 20px;
	position: relative;
	background: #46300B url(img/headbanner_flow.gif) no-repeat center;
}
p.introduction {
	width: 960px;
	margin: 0 auto;
	padding-top: 50px;
 	color: #FFF;
}

/*メインメニュー
---------------------------------------------------------------------------*/
#mainmenu {
	list-style: none; 
	position: absolute; 
	right: 20px; 
	top: 75px; 
}

#mainmenu li{
	float: left; 
	margin: 0;
}

li#navi1{
	float:left;
	width:100px;
	height:40px;
	list-style-type: none;
	list-style-position:outside;
}
li#navi1 a{
	width:100px;
	height:40px;
	display:block;
	text-indent:-9999px;
	background-image: url(img/navi1.gif);
	background-repeat: no-repeat;
}
li#navi1 a:hover{
	background: url(img/navi1_f2.gif) no-repeat;
}
li#navi2{
	float:left;
	width:100px;
	height:40px;
	list-style-type: none;
	list-style-position:outside;
}
li#navi2 a{
	width:100px;
	height:40px;
	display:block;
	text-indent:-9999px;
	background-image: url(img/navi2.gif);
	background-repeat: no-repeat;
}
li#navi2 a:hover{
	background: url(img/navi2_f2.gif) no-repeat;
}
li#navi3{
	float:left;
	width:100px;
	height:40px;
	list-style-type: none;
	list-style-position:outside;
}
li#navi3 a{
	width:100px;
	height:40px;
	display:block;
	text-indent:-9999px;
	background-image: url(img/navi3.gif);
	background-repeat: no-repeat;
}
li#navi3 a:hover{
	background: url(img/navi3_f2.gif) no-repeat;
}
li#navi4{
	float:left;
	width:100px;
	height:40px;
	list-style-type: none;
	list-style-position:outside;
}
li#navi4 a{
	width:100px;
	height:40px;
	display:block;
	text-indent:-9999px;
	background-image: url(img/navi4.gif);
	background-repeat: no-repeat;
}
li#navi4 a:hover{
	background: url(img/navi4_f2.gif) no-repeat;
}
li#navi5{
	float:left;
	width:100px;
	height:40px;
	list-style-type: none;
	list-style-position:outside;
}
li#navi5 a{
	width:100px;
	height:40px;
	display:block;
	text-indent:-9999px;
	background-image: url(img/navi5.gif);
	background-repeat: no-repeat;
}
li#navi5 a:hover{
	background: url(img/navi5_f2.gif) no-repeat;
}
li#navi6{
	float:left;
	width:100px;
	height:40px;
	list-style-type: none;
	list-style-position:outside;
}
li#navi6 a{
	width:100px;
	height:40px;
	display:block;
	text-indent:-9999px;
	background-image: url(img/navi6.gif);
	background-repeat: no-repeat;
}
li#navi6 a:hover{
	background: url(img/navi6_f2.gif) no-repeat;
}
/**メニューここまで**/



/**サブメニュー**/
#submenu {
	list-style: none;
	width: 100%;
	height: 20px;
	margin: 0 auto;
	padding: 10px 0;
	background-color: #000;
}

a:link { color: #1B394B; }

a:visited {	color: #367296; }

a:hover { color: #09F; }

#submenu ul{
	width:960px;
	height:30px;
	margin: 0 auto;
	padding: 0 30px;
	color: #FFF;
	font-size: 12pt;
	text-decoration: none;
}

#submenu li{
	float:left;
	padding-left:30px;

	height:30px;
	list-style-type: none;
	list-style-position:outside;	
	color: #FFF;
	text-decoration: none;
}
li.home a:link{
	color: #FFF;
	text-decoration: none;
	background-image: url(img/allow2.gif);
	background-repeat: no-repeat;
	background-position: 2px 0;
	padding-left: 27px;
}
li.home a:visited {	color: #999; text-decoration: none; }
li.home a:hover{ color: #09F; text-decoration: none; }

#mainContent {
	width: 960px; 	
	margin: 0 auto 50px;
	padding: 0 20px;
	background: #FFFFFF;
}
.contents_box {
	padding-left: 20px;
	margin-top: 10px;
	margin-bottom: 20px;
}

/**WORKS**/
.workbox {
	width: 300px;
height: 140px;
	position:relative;
	float:left;
	display:inline;
	margin: 10px 5px 0 0;
	padding: 5px 3px 5px 5px;
/**	background-color: #E8E8E8;**/
}
.workbox p {
	margin-top: 0;
	margin-bottom: 0;

}
.exp {
	font-size:85%;
	margin-left:107px;
	margin-top:5px;
}
.exp_category {
	font-size:90%;
	width: 183px;
	margin-top: 3px;
	margin-left:107px;
	margin-bottom:2px;
	background-color: #CCC;	
}
.workImg {
	float:left;
	margin-right: 7px;
	border: 1px solid #CCC;
}
.work_category {
	font-size:90%;
	width: 285px;
	margin: 5px;
	background-color: #CCC;	
}
.workImg_gr {
	float:left;
	margin: 7px 7px 0px 5px;
	border: 1px solid #CCC;
}
.workbox_2set {
	position:relative;
	float:left;
	display:inline;
	margin: 5px 5px 10px 0;
	border-bottom-width: 1px solid #333;	
}
.workbox_detail_title {
	width: 440px;
	position:relative;
	display:inline;
	margin: 5px 5px 0 5px;
	border-bottom-width: 1px solid #333;
}
.workbox_detail {
	width: 220px;
	position:relative;
	float:left;
	display:inline;
	margin: 5px 5px 10px 0;
}
/**PROFILE**/
dl.profile  {
	width: 800px;
	margin-top: 0;
}
.profile dt {
	float:left;
	width:100px;
	padding:0 5px; 
	clear: both;
	}
.profile dd {
	width:500px;
	margin-left:100px;
	padding:0 5px; 
	}
p.right {
	text-align: right;
	margin-right: 20px;
}

.block {
	width: 280px;
	height: 300px;	
	position:relative; 
	float:left;
	display:inline;
	padding: 5px 20px;
}
.block p {
	margin-right: 15px;
}
.linkB {
	position:absolute;
	bottom: 30px;
}
.blockR {
	width: 280px;
	height: 300px;
	float:right;
	display:inline;
	padding: 5px;
	position:relative; 
}
.blockR p {
	margin-right: 0;
}
.marginL30 {
	margin-left:30px;
}
.clearfix:after {
  content: ".";  /* 新しい要素を作る */
  display: block;  /* ブロックレベル要素に */
  clear: both;
  height: 0;
  visibility: hidden;
}

.clearfix {
  min-height: 1px;
}

* html .clearfix {
  height: 1px;
  /*¥*//*/
  height: auto;
  overflow: hidden;
  /**/
}


#footer {
	background: #414141;
	padding: 0 20px;
	padding-top: 20px;
	color: #FFF;
}
.name {
	width: 960px;
	margin: 0 auto;
	padding: 5px 20px;
	color: #09F;
	font-size: 12pt;
}
.footer_link {
	width: 960px;
	margin: 0 auto;
	padding: 5px 20px;
}

.copy {
	width: 960px;
	margin: 0 auto;
	padding: 5px 0; /* このエレメントの余白により、マージンの相殺を発生させることなく、マージンの効果とまったく同じように、スペースが設定されます */
	text-align:center;
	color: #FFF;
}
.red {
	color: #900;
}
.leftimg {
	float: left;
	margin-right: 10px;
	margin-top: 10px;
	margin-bottom: 10px;
}