@charset "UTF-8";
/* CSS Document */

@import "reset.css";
@import "hack.css";
html {
    font-size: 14px;
    height:100%;
}

body {
    height:100%;
    text-align: left;

    font-family: "游ゴシック", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
    line-height: 1.6;
    margin:0;
    padding:0;

    -webkit-font-smoothing:antialiased;
    -webkit-text-size-adjust:100%;
}

strong {
    font-weight: bold;
}


.fl {
    float: left;
}

.fr {
    float: right;
}
/*h*/

h1 {
/*header記述部分でで指定*/

}


h2{
/*構造、よく使うパーツ記述部分でで指定*/
}

h3 {
/*構造、よく使うパーツ記述部分でで指定*/
}


h4 {
/*小見出し　写真送り先　ウィジェットタイトル*/

}
h5 {}
/*##############################################*/
/*汎用クラス*/
/*##############################################*/
hr.sikiri {
    border: solid #0b3966;
    border-width: 1px 0 0 0;
    margin: 0 0 5px;
    height: 1px;
    /* for IE6 */

    clear: both;
    /* for IE6 */
}

hr.sikiri_gray {
    border: solid #ddd;
    border-width: 1px 0 0 0;
    margin: 0 0 5px;
    height: 1px;
    /* for IE6 */

    clear: both;
    /* for IE6 */
}

hr.shikiri_dashed {
    border: dashed #0b3966;
    border-width: 1px 0 0 0;
    margin: 0 0 5px;
    height: 1px;
    /* for IE6 */

    clear: both;
    /* for IE6 */
}

hr.shikiri_dotted {
    border: dotted #0b3966;
    border-width: 1px 0 0 0;
    margin: 0 0 5px;
    height: 1px;
    /* for IE6 */

    clear: both;
    /* for IE6 */
}

.nodisp {
    position: absolute;
    left: -9999px;
}
/*文字強調用色変更*/

.red {
    color: #f00;
}
.blue{
    color: #99ccff;
}
.red_strong {
    color: #f00;
    font-weight: bold;
}

.btm_mgn {
    margin-bottom: 30px;
}

.r3 {
    border-radius: 3px;
    /* CSS3草案 */

    -webkit-border-radius: 3px;
    /* Safari,Google Chrome用 */

    -moz-border-radius: 3px;
    /* Firefox用 */

    zoom: 1;
    position: relative;
}

.r6 {
    border-radius: 6px;
    /* CSS3草案 */

    -webkit-border-radius: 6px;
    /* Safari,Google Chrome用 */

    -moz-border-radius: 6px;
    /* Firefox用 */

    zoom: 1;
    position: relative;
}

.r10 {
    border-radius: 10px;
    /* CSS3草案 */

    -webkit-border-radius: 10px;
    /* Safari,Google Chrome用 */

    -moz-border-radius: 10px;
    /* Firefox用 */

    zoom: 1;
    position: relative;
}

.r20 {
    border-radius: 20px;
    /* CSS3草案 */

    -webkit-border-radius: 20px;
    /* Safari,Google Chrome用 */

    -moz-border-radius: 20px;
    /* Firefox用 */

    zoom: 1;
    position: relative;
}

.btn {}

.btn:hover {
    opacity: 0.65;
    filter: alpha(opacity=65);
    -ms-filter: "alpha(opacity=65)";
}

.boxshadow {
    box-shadow: 1px 1px 2px #ccc;
    -moz-box-shadow: 1px 1px 2px #ccc;
    -o-box-shadow: 1px 1px 2px #ccc;
    -ms-box-shadow: 1px 1px 2px #ccc;
    -ms-filter: "progid:DXImageTransform.Microsoft.Shadow(color=#cccccc,direction=135,strength=3,enabled=true)";
    filter: progid: DXImageTransform.Microsoft.Shadow(color=#cccccc, direction=135, strength=3, enabled=true);
/* IE5.5+ */
}

ul.list_disc {
    list-style: disc;
    margin: 1em 0 1em 1.5em;
}

ul.list_disc li {
    margin: 0 0 0.5em 0;
}
/*日付見出しリスト汎用1　yyyy年m月d日想定*/

dl.list_date {}

dl.list_date dt {
    clear: left;
    float: left;
    color: #00479d;
    margin: 0 0 0.5em 0;
}

dl.list_date dd {
    margin: 0 0 0.5em 9em;
}
/*日付見出しリスト汎用2　yyyy/mm/dd想定*/

dl.list_date_narrow {}

dl.list_date_narrow dt {
    clear: left;
    float: left;
    color: #0068b5;
    margin: 0 0 0.5em 0;
    padding: 0.5em 0;
    font-weight: bold;
}

dl.list_date_narrow dd {
    margin: 0 0 0.5em 7em;
    padding: 0.5em 0;
}
/*※つきリスト*/
dl.list_asta {}

dl.list_asta dt {
    clear: left;
    float: left;
    width:1.5em;
    margin: 0 0 0.2em 0;
}

dl.list_asta dd {
    margin: 0 0 0.2em 1.5em;
}
/*汎用テーブル線なし*/

table.normal_table {
    border-collapse: collapse;
    /*    width: 100%;*/
    margin: 20px 0;
    border-top:solid 1px #CCCCCC;
    border-left:solid 1px #CCCCCC;
}

table.normal_table tr {}

table.normal_table th {
    padding:5px;
    border-right:solid 1px #CCCCCC;
    border-bottom:solid 1px #CCCCCC;
    vertical-align: top;
    white-space: nowrap;
    background-color:#f2f2f2;
}

table.normal_table td {
    padding:5px;
    border-right:solid 1px #CCCCCC;
    border-bottom:solid 1px #CCCCCC;
    vertical-align: top;
}


/*右下のページトップに戻るボタン*/
a#scroller {
    display: block;
    position: fixed;
    width: 30px;
    height: 30px;
    right: 10px;
    bottom: 20px;
    z-index: 9500;
    background: url(../images/btn_scrollup.png) center 50% no-repeat;
    background-size: contain;
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    zoom: 1;
}
/*トップページ用コンテンツ移動ボタン*/
ul#scroller_dot {
    display: block;
    position: fixed;
    right: 10px;
    bottom: 50%;
    text-align: center;
    padding: 10px;
    z-index: 9500;
    background-color: rgba(0,0,0,0.4);
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    zoom: 1;
    filter:progid:DXImageTransform.Microsoft.Gradient(GradientType=0,StartColorStr=#66000000,EndColorStr=#66000000);/*IE8以下用*/
}
ul#scroller_dot a{
    text-decoration: none;
    color: #fff;
}
scroller_dot
/*コンテンツ中のページトップに戻るテキストリンク*/
a.go_pagetop_textlink{
    float:right;
    margin:20px 0;
}
img.center_img {
    display: block;
    margin: 20px auto;
}
a.link_arrow_yellow{
    background: url(../images/arrow_link_yellow.png) left 50% no-repeat;
    padding: 0 0 0 15px;
    background-size: 15px 15px;
}
.nosp{
/*    sp時にdisplay:none*/
}
.bInt {
    margin:0 auto 30px;
    /*    width: 800px;*/
    max-width:800px;
    width: auto !important;
    width: 800px;
}
.bInt p {
    margin-bottom:1em;
}
.bInt ol {
    margin:0 0 0 20px;
}
.bInt li {
    list-style:decimal;
}
.w_max{
    width: 100%;
    margin: 0 20px;
}
/*####################*/
/*構造、よく使うパーツ*/
/*####################*/
h2{
    font-size: 1.6em;
    font-weight: bold;
    margin: 0px auto 20px;
    padding: 0 0 0 20px;
    text-shadow: 2px 4px 3px rgba(0,0,0,0.3);
}
h3.corner_title{
    font-size: 1.4em;
    margin: 40px 0 20px;
    padding: 10px 15px;
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    zoom: 1;
    position: relative;
}
h3.corner_title a.link_pos_right{
    float:right;
    text-decoration: none;
}
.bg_base {
    width: 100%;
    background:url(../images/bg_slit.png) top left repeat-x #fff;
}
.bg_base_op {
    width: 100%;
    background-color: rgba(255,255,255,0.7);
}
.fix_wide {
    /*    width: 100%;*/
    margin: 0 20px;
}
.cont_wrap {
    /*    width: 100%;*/
    /*    height: 500px;*/
    /*    background: url(../images/bg_slit_no_fade.png) repeat #f0f0f0;*/
    background-color: #fff;
}
.inner {
    /*    width: 100%;*/
    max-width:1024px;
    width: auto !important;
    width: 1024px;
    background-color: #fff;
    margin: 0 auto;
    padding: 20px 20px 40px;
}
.inner_subpage {
    /*    width: 100%;*/
    max-width:1024px;
    width: auto !important;
    width: 1024px;
    background-color: #fff;
    margin: 0 auto;
    padding: 0px 20px 0px;
}
section.cont{
    /*ヘッダ分マージンを設定*/
    /*    margin: 120px 0 0 0;*/
    width: auto;
    padding: 0 20px 40px;
}
/*####################*/
/*画像レイアウト*/
/*####################*/
.ph_box{
    width: auto;
    max-width: 800px; /* 実際は 760px */
    margin:20px auto;
    font-size: 0.1px;
    word-spacing: 15px;
    text-align: center;
}
.ph_box .fL     {
    display: inline;
}
.ph_box .fR     {
    display: inline;
}
.ph_box img {
    vertical-align: top;
    width: 370px;
    box-shadow:rgba(0, 0, 0, 0.4) 5px 5px 3px;
    -webkit-box-shadow:rgba(0, 0, 0, 0.4) 5px 5px 3px;
    -moz-box-shadow:rgba(0, 0, 0, 0.4) 5px 5px 3px;
}
.ph_box .pC     {
    display: inline;
}

/*####################*/
/*ヘッダ　hedaer*/
/*####################*/
header{
    position: fixed;
    width: 100%;
    margin: 0 auto;
    padding: 20px 0 0px;
    top:0px;
    z-index: 10000;
    background:url(../images/bg_slit.png) top left repeat-x #fff;
}
header h1{
    font-size:32px;
    font-weight: bold;
    letter-spacing: 1px;
}
header h1 a{
    text-decoration: none;
    color: #000;
}
/*####################*/
/*フッタ　footer*/
/*####################*/
footer{
    border-top:solid 1px #ccc;
    padding: 20px;
    background-color: #fff;

}
footer #copyright{
    text-align: right;
    border-top: solid 1px #d2d2d2;
    margin: 10px 0 0 0;
    padding: 5px 0 0 0;
}
/*####################*/
/*ナビ　nav*/
/*####################*/
nav.main_nav{
    padding: 0 20px;
    border-top: solid 2px #ccc;
    border-bottom: solid 2px #999;
}
nav.main_nav > ul{
    margin: 0;
    border-left: solid 1px #999;
}
nav.main_nav > ul >li{
    /*    padding: 5px 10px;*/
    float:left;
    border-right: solid 1px #999;
}
nav.main_nav > ul >li.active{
}
nav.main_nav > ul >li.process{
    display: none;
}
nav.main_nav > ul >li > a{
    display: inline-block;
    text-decoration: none;
    color: #fff;
    margin: 0;
    padding: 5px 10px;
}
nav.main_nav > ul >li > a:hover{
    /*    color: #666;*/
    color: #000;
}

/*footer_nav*/



nav#footer_nav{

}
nav#footer_nav > ul{

}
nav#footer_nav > ul >li{
    margin: 0 15px 0 0;
    float:left;
}
nav#footer_nav > ul >li.calendar{
    display: none;
}
nav#footer_nav > ul >li.clist{
    display: none;
}
nav#footer_nav > ul >li.business{
    display: none;
}
nav#footer_nav > ul >li.process{
    display: none;
}
nav#footer_nav > ul >li.active{
}
nav#footer_nav > ul >li > a{
    text-decoration: none;
    color: #000;
    margin: 0 0 0 0;
    padding: 0 0 0 8px;
}
nav#footer_nav > ul >li > a:hover{
    background: url(../images/arrow_nav.png) left 50% no-repeat;
}

/*####################*/
/*事業案内*/
/*####################*/

section.business .video {
    margin: 20px 0;
    text-align: center;
}
section.business .video iframe {
    border: none;
    max-width: 100%;
    vertical-align: top;
    box-shadow:rgba(0, 0, 0, 0.4) 5px 5px 3px;
    -webkit-box-shadow:rgba(0, 0, 0, 0.4) 5px 5px 3px;
    -moz-box-shadow:rgba(0, 0, 0, 0.4) 5px 5px 3px;
}

/*####################*/
/*製品案内*/
/*####################*/

section .product_box{
    margin: 0 0 20px;
    padding: 20px 0 0;
    border-top: dotted 1px #ccc;
}
section .product_box:first-child
{
    border-top: none;
}
section .product_box img{
    float: left;
    width: 240px;
}
section .product_box table{
    float: left;
    margin: 0 0 0 20px;
    /*    width: 764px;*/
    width: calc(100% - 260px);
}
/*
  section .product_box:first-child{
  border-top:none;
  }
  */



/*####################*/
/*主要設備　mainequipment*/
/*####################*/

table.equipment_table {
    border-collapse: collapse;
    /*    width: 100%;*/
    margin: 20px 0;
    border-top:solid 1px #CCCCCC;
    border-left:solid 1px #CCCCCC;
}
table.equipment_table thead{
    white-space: nowrap;
    background-color:#f0f0f0;
}
table.equipment_table tr {}

table.equipment_table th {

    padding:5px;
    border-right:solid 1px #CCCCCC;
    border-bottom:solid 1px #CCCCCC;
    vertical-align: top;
    white-space: nowrap;
    background-color:#f2f2f2;
}

table.equipment_table td {
    padding:5px;
    border-right:solid 1px #CCCCCC;
    border-bottom:solid 1px #CCCCCC;
    vertical-align: top;
}


/*####################*/
/*工程紹介　Process*/
/*####################*/

.process-index {
    margin: 0;
    padding: 0;
}
.process-index table {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
}
.process-index td.box {
    background-color: white;
    border: 1px solid #444;
    padding: 8px;
    min-width: 5em;
    text-align:center;
    vertical-align: middle;
}
.process-index td.box a {
    display: block;
    max-height: 300px;
    overflow: hidden;
}
.process-index td.arrow1-head {
    height:30px;
    width:30px;
    background-image: url(../images/process-arrow1-head.png);
    background-position: left center;
}
.process-index td.arrow1-next {
    height:30px;
    width:20px;
    background-image: url(../images/process-arrow1-next.png);
    background-position: left center;
}
.process-index td.arrow1-last {
    height:30px;
    width:15px;
    background-image: url(../images/process-arrow1-last.png);
    background-position: left center;
}
.process-index td.arrow2-head {
    height:30px;
    width:30px;
    background-image: url(../images/process-arrow2-head.png);
    background-position: left center;
}
.process-index td.arrow2-next {
    height:30px;
    background-image: url(../images/process-arrow2-next.png);
    background-position: left center;
}
.process-index td.arrow2-last {
    height:30px;
    width:15px;
    background-image: url(../images/process-arrow2-last.png);
    background-position: left center;
}
.process {
    margin-top: 2em;
    clear: both;
}


.process h3 {
    overflow: hidden;
}
.process .uplink {
    float: right;
}
.process .uplink a {
    text-decoration: none;
    color: inherit;
}


/*####################*/
/*ブログ blog*/
/*####################*/
.blog .blog-index {
}
.blog .blog-index td {
    padding: 4px;
}
.blog .blog-index td.date {
    width: 5em;
}

.blog ul.page-navi {
    margin: 1em;
    overflow: hidden;
    text-align: center;
}
.blog ul.page-navi li {
    display: inline-block;
    min-width: 2em;
    border: solid silver;
    border-width: 1px 0 1px 1px;
    padding: 4px;
    background-color: #eee;
}
.blog ul.page-navi li a {
    text-decoration: none;
}
.blog ul.page-navi li.prev,
.blog ul.page-navi li.next {
    padding: 4px 16px;
}
.blog ul.page-navi li.prev {
    border-radius: 4px 0 0 4px;
}
.blog ul.page-navi li.next {
    border-right-width: 1px;
    border-radius: 0 4px 4px 0;
}
.blog ul.page-navi li.active {
    background-color: white;
}
.blog ul.page-navi li.prev-grp, .blog ul.page-navi li.next-grp {
    padding: 4px 16px;
    border-width: 1px;
    border-radius: 4px;
}
.blog ul.page-navi li.prev-grp {
    margin-right: 1em;
}
.blog ul.page-navi li.next-grp {
    margin-left: 1em;
}
.blog ul.page-navi li.hidden {
    visibility: hidden !important;
}

.blog .blog-page {
    margin-bottom: 2em;
}
.blog .blog-page .status {
    text-align: right;
}
.blog .blog-link {
    margin: 2em 0;
    text-align: center;
}


/*####################*/
/*お問い合わせ　contact*/
/*####################*/
.contact_table{
    border-collapse:collapse;
    border-top:solid 1px #CCCCCC;
    border-left:solid 1px #CCCCCC;
    margin:20px 0;
    width:100%;
}
.contact_table tr {

}

.contact_table th {
    padding:15px;
    border-right:solid 1px #CCCCCC;
    border-bottom:solid 1px #CCCCCC;
    background-color:#f2f2f2;
}
.contact_table td {
    padding:15px;
    border-right:solid 1px #CCCCCC;
    border-bottom:solid 1px #CCCCCC;
}
input.submit_btns{
    -webkit-appearance: none;
    width: 100px;
    height: 30px;
    line-height: 1;
    font-weight: bold;
    color: #666;
    margin: 10px;
    font-size:14px !important;
}
/*####################*/
/*リクルート　Recruit*/
/*####################*/

.recContent {
    margin-bottom:2em;
}
.recContent-item {
    clear:both;
    margin:0 0 30px 10px;
}
.recContent-item img {
    float:right;
    width:370px;
    margin:0 0 10px 10px;
}
#recruit .recContent-item p.image-in {
}

.requirement {
    margin-bottom:2em;
}
.requirement table {
    width:750px;
    margin-bottom:30px;
}
.requirement th { padding:3px 5px;
                  background-color:#ebe9e9;
                  width:120px;
                  border:1px solid #d3d3d3;
                }
.requirement td{
    padding:3px 5px;
    border:1px solid #d3d3d3;
}
.requirement thead td{
    background-color:#ebe9e9;
    white-space: nowrap;
    font-weight:bold;
}
/*##############################################*/
/*##############################################*/
/*##############################################*/
/*スマートフォン想定*/
/*##############################################*/
/*##############################################*/
/*##############################################*/


@media screen and (max-width: 768px) {

}
/*スマホ想定ここまで*/
