@charset "utf-8";
/* --------------------------------------------------
	Base Layout
-------------------------------------------------- */
/* Grouping content */

* {
	margin: 0;
	padding: 0;
	vertical-align: baseline;
}
p, blockquote, dl, dd, figure {
    margin: 0;
}
hr {
    color: inherit;
    height: auto;
    -moz-box-sizing: content-box;
         box-sizing: content-box;
}

ol, ul { padding: 0; margin: 0; }

li { list-style: none; }

a:link, a:visited {
	color: #000;
	text-decoration: none;
}

img { border: none; }

body {
  font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,sans-serif;
  font-size: 14px;
  line-height: 1em;
  background-color: #F3F3F3;
}

h2 {
    margin-top: 5px;
    border-left:5px solid #00508a;
    font-size: 1.7em;
    color: #00508A;
    letter-spacing: 0.1em;
    padding: 1.0em 1.0em;
	font-weight: 500;
}

/*-- Header ----------------------------------------*/
header {
	width: 100%;
	padding: 40px 0 10px;
}
header.floating {
    left: 0;
    padding: 10px 0;
}
.hcase {
	width: 960px;
	margin: 0 auto;
}
header h1 a {
	background-image: url(../images/header/logo.png);
	width: 218px;
	height: 39px;
}

/*-- Gnavi -----------------------------------------*/
.gnaviBox {
	width: 960px;
	margin: 15px auto 0;
}
.gnaviBox ul{
  margin:0;
  padding:0;
}
.gnaviBox ul li {
  list-style: none;
  margin:0;
  padding:0;
  height: 33px;
  font-size:14px;
  float: left;
  position: relative;
  line-height: 33px;
  /* background:#FF818D; */ /*親メニューの背景色*/
  /* color: #4D4D4D; */ /*親メニューの文字色*/
  /* text-align:center; */
  /* font-weight:bold; */
}
.gnaviBox ul li.gnavi01 { width: 160px; }
.gnaviBox ul li.gnavi02 { width: 159px; }
.gnaviBox ul li.gnavi03 { width: 214px; }
.gnaviBox ul li.gnavi04 { width: 214px; }
.gnaviBox ul li.gnavi05 { width: 213px; }

.gnaviBox ul li a {
  color: #4D4D4D;
  display: block;
  text-decoration: none;
}
.gnaviBox ul li:hover, .gnaviBox ul li a:hover {
  /* background:#EA2839; */ /*ホバー時の親メニューの背景色*/
  /* color:#fff; */ /*ホバー時の親メニューの文字色*/
}
.gnaviBox ul li ul {
  position: absolute;
  top: 36px;/*親メニューの高さと同じにする*/
  /* width: 150px; */
  z-index: 100;
}
 .gnaviBox ul li ul.c01 { width: 160px; }
 .gnaviBox ul li ul.c02 { width: 159px; }
 .gnaviBox ul li ul.c03 { width: 214px; }
 .gnaviBox ul li ul.c04 { width: 214px; }
 .gnaviBox ul li ul.c05 { width: 213px; }

.gnaviBox ul li ul li {
  visibility: hidden;
  overflow: hidden;
  /* width: 150px; */ /*サブメニューの幅*/
  height: 0;
  background:#d7eeff;/*サブメニューの背景色*/
}
.gnaviBox ul li ul.c01 li { width: 160px; }
.gnaviBox ul li ul.c02 li { width: 159px; }
.gnaviBox ul li ul.c03 li { width: 214px; }
.gnaviBox ul li ul.c04 li { width: 214px; }
.gnaviBox ul li ul.c05 li { width: 213px; }

.gnaviBox ul li ul li i {
	margin-left: 10px;
}
.gnaviBox ul li ul li a {
  color: #00508a;
}
.gnaviBox ul li ul li:hover, .gnaviBox ul li ul li a:hover {
  background:#9bcef3;/*ホバー時のサブメニューの背景色*/
}
.gnaviBox ul li:hover ul li, .gnaviBox ul li a:hover ul li{
  visibility: visible;
  overflow: visible;
  height:36px;/*サブメニューの高さ*/
  z-index: 10;
}
.gnaviBox * {
  -webkit-transition: 0.5s;
  -moz-transition: 0.5s;
  -ms-transition: 0.5s;
  -o-transition: 0.5s;
  transition: 0.5s;
}

/*-- Slideshow -----------------------------------*/
#slideshowBox {
	width: 960px;
  height: 330px;
	margin: 0 auto 0;
  z-index: 1;
  position: relative;
}
.case_l, .case_r {
	width: 480px;
	height: 330px;
}
ul.bxslider_l, ul.bxslider_l {
	width: 480px;
}
.slideshow {
  width: 960px;
  height: 330px;
  z-index: 2;
  position: absolute;
}
.logomark {
	width: 109px;
	height: 154px;
  position: absolute;
	left: 426px;
	top: 80px;
	z-index: 10;
}

/*-- Topcontents -----------------------------------*/
article#content {
    padding: 30px 0 0;
}
.box_top {
    width: 100%;
}
.case {
    margin: 0 auto;
    position: relative;
}
.box_top .case {
    width: 960px;
    overflow: hidden;
}
.box_top .case p {
    line-height: 1.4em;
    font-size: 13pt;
}
.box_top .case p i {
	font-size: 1.3em;
	color: #C2000B;
	font-weight: bold;
}

/*--ContentsPage--------------------------------------*/
article#content {
  padding: 30px 0 0;
}
.box {
  width: 100%;
}
.case {
  margin: 0 auto;
  position: relative;
}
.box .case {
  width: 960px;
  overflow: hidden;
}
.box .case p {
  line-height: 1.6em;
  text-align: justify;
}
.content_l {
  width: 158px;
  overflow: hidden;
}
.content_r {
  width: 730px;
  overflow: hidden;
  text-align: left;
}

/*-- Sidebar -----------------------------------------*/
ul.sidenavi {
  font-size: 14px;
  line-height: 33px;
  text-align: right;
}

ul.sidenavi li a i {
  margin-left: 5px;
  color: #00508a;
}
ul.sidenavi li.ac a {
  color: #00508A;
  font-weight: bold;
}

/*-- MainContents -------------------------------------*/
.mainBox {
  margin: 30px 0;
}
.mainBox p {
  text-align: justify;
}
.mainBox span {
  font-size: 1.2em;
  color: #00508A;
  margin: 10px 0;
  display: block;
}
/* 会社概要 */
dl {
    line-height: 1.8em;
    width: 730px;
}
dl.profile dt {
    clear: left;
    float: left;
    margin: 0;
    width: 15m;
    color: #00508A;
}
dl.profile dd {
    background: url("../images/common/dotted.gif") repeat-x scroll 0 100% transparent;
    margin: 0 0 5px 0;
    padding-bottom: 5px;
    padding-left: 15em;
}
/* 沿革 */
dl {
    line-height: 1.8em;
    width: 730px;
}
dl.enkaku dt {
    clear: left;
    float: left;
    margin: 0;
    width: 11em;
    color: #00508A;
}
dl.enkaku dd {
    background: url("../images/common/dotted.gif") repeat-x scroll 0 100% transparent;
    margin: 0 0 5px 0;
    padding-bottom: 5px;
    padding-left: 11em;
}

/* 工事・営業品目 */
ul.busnessList li {
  line-height: 1.4em;
}
ul.busnessList li i {
  color: #00508A;
  margin-right: 5px;
}

.photolist{
    width: 730px;
}
.photolist ul{
    margin: 0 -20px 0 0;
    overflow: hidden;
    zoom: 1;
}
.photolist ul li{
    float: left;
    margin: 0 20px 0 0;
    display: inline;
}

/* 施工事例 */
.jireiPhlist{
    width: 730px;
}
.jireiPhlist ul{
    margin: 0 -20px 0 0;
    overflow: hidden;
    zoom: 1;
}
.jireiPhlist ul li{
    float: left;
    margin: 0 20px 20px 0;
    width: 230px;
    height: 200px;
    display: inline;
}
.jireiPhlist p {
  font-size: 0.9em;
  text-align: center;
}

/* 施工実績 */
.acrobat img {
  position: relative;
  top: 10px;
}
.acrobat p {
  text-align: center;
}


/* 所有機会・船舶 */
table.ownerhyo {
  width: 480px; /* 表の幅 */
  border: 1px #000 solid; /* 大枠の境界線 */
  border-collapse: collapse;
  line-height: 1.4em;
  text-align: center;
}
table.ownerhyo th {
  padding: 6px 8px; /* セルのパディング（上下、左右） */
  border: 1px #000 solid; /* セルの境界線 */
  background-color: #D6D7D7;
}
table.ownerhyo td {
  padding: 6px 8px; /* セルのパディング（上下、左右） */
  border: 1px #000 solid; /* セルの境界線 */
}

table.ownerhyo2 {
  width: 100%; /* 表の幅 */
  border: 1px #000 solid; /* 大枠の境界線 */
  border-collapse: collapse;
  line-height: 1.4em;
  text-align: center;
  font-size: 0.7em;
}
table.ownerhyo2 th {
  padding: 2px 2px; /* セルのパディング（上下、左右） */
  border: 1px #000 solid; /* セルの境界線 */
  background-color: #D6D7D7;
  vertical-align: middle;
  font-weight: normal;
}
table.ownerhyo2 td {
  padding: 2px 2px; /* セルのパディング（上下、左右） */
  border: 1px #000 solid; /* セルの境界線 */
  vertical-align: middle;
}

/* エポコラム */
table.epo {
  width: 730px; /* 表の幅 */
  border: 1px #000 solid; /* 大枠の境界線 */
  border-collapse: collapse;
  line-height: 1.4em;
  text-align: center;
}
table.epo th {
  padding: 6px 8px; /* セルのパディング（上下、左右） */
  border: 1px #000 solid; /* セルの境界線 */
  background-color: #D6D7D7;
}
table.epo td {
  padding: 6px 8px; /* セルのパディング（上下、左右） */
  border: 1px #000 solid; /* セルの境界線 */
}
table.epo th {
  background-color: #ddead4;
  font-weight: normal;
}

dl.epo01 {
    line-height: 1.4em;
    width: 730px;
}
dl.epo01 dt {
    clear: left;
    float: left;
    margin: 0;
    width: 1.2em;
}
dl.epo01 dd {
    margin: 0 0 3px 0;
    padding-bottom: 3px;
    padding-left: 1.2em;
    text-align: justify;
}

/* リクルート */
dl {
    line-height: 1.8em;
    width: 730px;
}
dl.recruit dt {
    clear: left;
    float: left;
    margin: 0;
    width: 15m;
    color: #00508A;
}
dl.recruit dd {
    background: url("../images/common/dotted.gif") repeat-x scroll 0 100% transparent;
    margin: 0 0 5px 0;
    padding-bottom: 5px;
    padding-left: 15em;
}
.content_l a:hover {
  color: #00508A;
}

/*-- パンクくずし -------------------------------------*/
.pan { width: 200px; }
.pan a { color: #666; }
.pan a:hover { color: #355CA2; }
.pan img {
	position: relative;
	top: 1px;
}

/*-- ページトップ ------------------------------*/
.pagetop {
	width: 700px;
}

/*-- テーブル ------------------------------*/

/* --- 表全体 --- */
table.profile {
width: 650px; /* 表の幅 */
border: 1px #bbb solid; /* 大枠の境界線 */
border-collapse: collapse;
/*font-size: 0.9em;*/
color: #666;
line-height: 1.4em;
}

/* --- 表タイトル --- */
table.profile caption {
padding-bottom: 5px; /* 表タイトルの下パディング */
}
.yaku {
	margin: 0;
	padding: 0;
	position: relative;
	top: 6px;
}
.name {
	margin: 0;
	padding: 0;
}

/* --- セル --- */
table.profilee th,
table.profile td {
/* width: 20%; */ /* セルの幅（セルの幅を均等にする場合） */
padding: 6px 8px; /* セルのパディング（上下、左右） */
border: 1px #bbb solid; /* セルの境界線 */
}

/* --- 1列目 --- */
table.profile colgroup.item {
background-color: #f4f4f4; /* 1列目の背景色 */
width: 100px;
}

/* --- 2列目以降 --- */
table.profile colgroup.data {
background-color: #ffffff; /* 2列目以降の背景色 */
}

/* --- 見出しセル --- */
table.profile thead th {
background-color: #deefff; /* 見出しセルの背景色 */
text-align: center;
}

/* --- フッタセル --- */
table.profile tfoot td {
background-color: #f5f5f5; /* フッタセルの背景色 */
}

.accessbox {
	width: 650px;
	margin: 0;
	padding: 0;
	/*font-size: 0.7em;*/
	color: #666;
}
.accessbox_r {
	width: 250px;
	margin: 0;
	padding: 0;
}
.accessbox p {
	margin: 10px 0 0 0;
	padding: 0;
	line-height: 1.2em;
	text-align: right;
}
.profile_address {
	margin: 0;
	padding: 0;
	line-height: 1.4em;
}
dl.profile_address dt {
  clear: left;
  float: left;
  margin: 0;
  width: 7em;
}
dl.profile_address dd {
  margin-bottom: 0.2em;
  margin-left: 7em;
}

/*-- お問い合わせ -------------------------*/

/* --- フォームエリア --- */
form.contact {
width: 650px; /* フォームエリアの幅 */
/*font-size: 0.8em;*/
color: #666;
}
/* --- フォームエリア内の段落 --- */
form.contact p {
line-height: 130%;
}
/* --- 段落内の「必須」画像 --- */
form.contact p.attention img {
vertical-align: middle;
}

/* --- テーブル --- */
form.contact table {
width: 648px; /* テーブルの幅 */
background-color: #ccc; /* テーブルの背景色 */
border: 1px #c0c0c0 solid; /* テーブルの境界線 */
}
/* --- 見出しセル（th） --- */
form.contact th {
width: 140px; /* 見出しセルの幅 */
padding: 10px 8px; /* 見出しセルのパディング（上下、左右） */
background-color: #f5f5f5; /* 見出しセルの背景色 */
/*border-bottom: 1px #c0c0c0 dotted;*/ /* 見出しセルの下境界線 */
background: #F5F5F5 url("../images/common/dotted.gif") repeat-x scroll 0 100%;
text-align: left;
line-height: 130%;
}
/* --- 見出しセル（th 最終行） --- */
form.contact th.last {
width: 140px; /* 見出しセルの幅 */
padding: 10px 8px; /* 見出しセルのパディング（上下、左右） */
background-color: #f5f5f5; /* 見出しセルの背景色 */
border-bottom: none;
text-align: left;
line-height: 130%;
background-image: none;
}
/* --- 見出しセル内の補足テキスト --- */
form.contact th span.supplement {
font-weight: normal;
}
/* --- データセル（td） --- */
form.contact td {
padding: 10px 5px 7px; /* データセルのパディング（上、左右、下） */
background-color: #ffffff; /* データセルの背景色 */
/*border-bottom: 1px #c0c0c0 dotted;*/ /* データセルの下境界線 */
background: #FFF url("../images/common/dotted.gif") repeat-x scroll 0 100%;

}
/* --- データセル（td 最終行） --- */
form.contact td.last {
padding: 10px 5px 7px; /* データセルのパディング（上、左右、下） */
background-color: #ffffff; /* データセルの背景色 */
border-bottom: none; /* データセルの下境界線 */
background-image: none;
}

/* --- データセル内の補足テキスト --- */
form.contact td span.supplement {
color: #808080;
}
/* --- 必須項目セル --- */
form.contact td.required {
width: 26px; /* 必須項目セルの幅 */
padding: 10px 3px; /* 必須項目セルのパディング（上下、左右） */
background-color: #c4e6fa; /* 必須項目セルの背景色 */
text-align: center;
}
/* --- 任意項目セル --- */
form.contact td.arbitrary {
background-color: #e0e0e0; /* 任意項目セルの背景色 */
}

/* --- フォーム部品 --- */
form.contact input,
form.contact select,
form.contact textarea {
margin-bottom: 2px; /* フォーム部品の下マージン */
}
/* --- フォーム部品のサイズ --- */
/* --- （長めのテキスト入力欄） --- */
#company, #section,
#address {
width: 350px; /* フォーム部品の幅 */
}
/* --- （短めのテキスト入力欄） --- */
#tel1, #tel2, #tel3,
#fax1, #fax2, #fax3 {
width: 70px; /* フォーム部品の幅 */
}
#zip1, #zip2 {
width: 70px; /* フォーム部品の幅 */
}
/* --- （複数行のテキスト入力欄） --- */
#message {
width: 420px; /* フォーム部品の幅 */
height: 10em; /* フォーム部品の高さ */
}

/* --- ボタン --- */
form.contact p.button {
margin: 20px 0 0; /* ボタンのマージン（上、左右、下） */
text-align: center;
}
.error_coution {
	color: #F00;
}

/*-- Footer ----------------------------------------*/
footer {
	margin-top: 30px;
}
footer .case {
    width: 960px;
    margin: 0 auto;
    padding: 0 0 60px;
}
footer .case p {
	padding: 10px 0 0;
  font-size: 0.9em;
}
footer .case .pagetop {
	width: 130px;
	position: relative;
	top: 0;
	left: 830px;
}
footer .case .recruitLink {
  font-size: 1.0em;
}
footer .case .recruitLink a:hover { text-decoration: underline; }

footer .case .footer_logo {
	position: relative;
	top: 0px;
}
