@charset "UTF-8";

@font-face {
  font-family: "ff-hiraginogothic";
  src: local("HiraKakuPro-W3");
  }

@font-face {
  font-family: "ff-hiraginogothic";
  src: local("HiraKakuPro-W6");
  font-weight: bold;
  }

html, body,
h1, h2, h3, h4, h5, h6,
p, ul, ol, li, dl, dt, dd,
form, fieldset, legend, input, button, select, textarea {
  margin: 0;
  padding: 0;
  }

html {
  font-size: 100%;
  }

* html body { font-size: small !important; } /* ie 6 */
*+html body { font-size: small !important; } /* ie 7 */

ul, ol {
  list-style: none;
  }

hr {
  color: inherit;
  height: auto;
  }

pre {
  font-family: monospace, sans-serif;
  }

h1, h2, h3, h4, h5, h6,
strong, b {
  font-weight: bold;
  }

em, i {
  font-style: italic;
  }

* html br { letter-spacing: 0; } /* ie 6 */
*+html br { letter-spacing: 0; } /* ie 7 */

img {
  border: 0;
  vertical-align: bottom;
  -ms-interpolation-mode: bicubic;
  }

input, button, select, textarea {
  font-family: inherit;
  font-size: inherit;
  }

/* @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ */

html {
  background-color: transparent;
  background-image: none;
  }

body {
  position: relative;
  margin: 0 auto;
  color: #000;
  background: #fff;
  font: 13px/1 "Meiryo", "メイリオ", "ff-hiraginogothic", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN W3", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro W3", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  -webkit-text-size-adjust: 100%;
  }

a {
  color: #008131;
  text-decoration: underline;
  }

a:hover,
a:active,
a:focus {
  text-decoration: underline;
  }

hr {
  display: none;
  }

/* -------- */

.clearfix {
  content: "";
  clear: both;
  display: block;
  }

/* @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ */

.container {
  margin: 0 auto;
  width: 980px;
  }

/* ################################################################
   header */

#header-container {
  padding: 21px 0 12px;
  background: url("../images/header_bg.jpg") no-repeat;
  }

#heading,
#header-slogan-ja,
#header-slogan-en,
.header-nav-anchor {
  overflow: hidden;
  background-image: url("../images/sprite.png");
  background-repeat: no-repeat;
  text-indent: 100%;
  white-space: nowrap;
  }

#heading {
  width: 320px;
  height: 57px;
  }

#heading-anchor {
  display: block;
  position: relative;
  z-index: 2;
  overflow: hidden;
  margin-left: 40px;
  width: 276px;
  height: 48px;
  }

#header-slogan-ja {
  margin: -5px 0 0 320px;
  border-top: 5px solid #fff;
  padding: 22px 0 21px;
  width: 420px;
  height: 87px;
  background-position: -888px 22px;
  }

#header-slogan-en {
  margin-left: 337px;
  width: 281px;
  height: 44px;
  background-position: -607px -35px;
  }

#nav {
  border-bottom: 5px solid #008131;
  background: #333 url("../images/bg_black.png");
  text-align: center;
  }

.nav-item {
  display: inline-block;
  position: relative;
  margin-left: -1px;
  padding: 0.4em 0;
  width: 150px;
  font-size: 115.385%;
  }

.lteie7 .nav-item { display: inline; }

.company #nav-item-company:after,
.business #nav-item-business:after,
.workflow #nav-item-workflow:after,
.plants #nav-item-plants:after,
.products #nav-item-products:after,
.history #nav-item-history:after {
  content: "";
  position: absolute;
  bottom: -18px;
  left: 58px;
  border-width: 18px 17px 0;
  border-style: solid solid none;
  border-color: #008131 transparent;
  border-right-color: rgba(0, 129, 49, 0);
  border-left-color: rgba(0, 129, 49, 0);
  }

.nav-anchor {
  display: block;
  position: relative;
  padding: 0.933em 0;
  border-width: 0 1px;
  border-style: none solid;
  border-color: #999;
  width: 148px;
  color: #fff;
  font-weight: bold;
  text-decoration: none;
  }

.nav-anchor:hover,
.nav-anchor:active,
.nav-anchor:focus,
.lteie7 .company #nav-anchor-company,
.lteie7 .business #nav-anchor-business,
.lteie7 .workflow #nav-anchor-workflow,
.lteie7 .plants #nav-anchor-plants,
.lteie7 .products #nav-anchor-products,
.lteie7 .history #nav-anchor-history {
  z-index: 2;
  margin: -0.4em 0;
  padding: 1.333em 0;
  border-color: #008131;
  background: #008131;
  text-decoration: none;
  }

#header-nav {
  position: absolute;
  top: 10px;
  left: 0;
  width: 100%;
  text-align: right;
  }

.header-nav-item {
  display: inline-block;
  margin-right: 20px;
  vertical-align: bottom;
  }

.lteie7 .header-nav-item { display: inline; height: 35px; }

.header-nav-anchor {
  display: block;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
  border-radius: 3px;
  }

.header-nav-anchor:hover,
.header-nav-anchor:active,
.header-nav-anchor:focus {
  margin: -1px;
  border: 1px solid #008131;
  }

#header-nav-anchor-document {
  width: 120px;
  height: 35px;
  background-position: -607px 0;
  }

#header-nav-anchor-contact {
  width: 150px;
  height: 35px;
  background-position: -727px 0;
  }


/* ################################################################
   contents */

.contents-section {
  clear: both;
  padding: 20px 0;
  }

.contents-section:after {
  content: "";
  clear: both;
  display: block;
  }

.contents-heading {
  clear: both;
  margin: 0 0 20px 10px;
  padding: 0 0 0 9px;
  border-left: 6px solid #000;
  font-weight: bold;
  font-size: 161.538%;
  line-height: 1.333;
  }

/* ================================
   section */

.contents-section:after {
  content: "";
  clear: both;
  display: block;
  }

.side {
  float: right;
  display: inline;
  padding-right: 10px;
  width: 220px;
  }

.localnav-wrapper {
  color: #fff;
  background: #333 url("../images/bg_black.png");
  }

.localnav-title {
  padding: 9px 11px 9px 26px;
  border-bottom: 3px solid #008131;
  color: #fff;
  background: url("../images/sprite_bullet.png") -889px 10px no-repeat;
  font-weight: bold;
  font-size: 115.385%;
  line-height: 1.133;
  }

.localnav-title-anchor {
  color: #fff;
  text-decoration: none;
  }

.localnav {
  padding: 10px;
  border-width: 0 1px 1px;
  border-style: solid;
  border-color: #ccc;
  color: #000;
  background: #f6f6f6;
  }

.localnav-item {
  padding: 0.462em 0;
  }

.localnav-item-heading {
  padding-left: 15px;
  background: url("../images/sprite_bullet.png") -180px 0 no-repeat;
  }

.localnav-anchor,
.localnav-child-anchor {
  color: #000;
  line-height: 1.154;
  text-decoration: none;
  }

.localnav-anchor:hover,
.localnav-anchor:active,
.localnav-anchor:focus,
.localnav-child-anchor:hover,
.localnav-child-anchor:active,
.localnav-child-anchor:focus {
  text-decoration: underline;
  }

.localnav-child {
  padding: 0.385em 0 0 15px;
  }

.localnav-child-item {
  padding: 0.269231em 0;
  padding-left: 1em;
  text-indent: -1em;
  line-height: 1.384616;
  }

.lteie7 .localnav-child-item { padding-left: 1em; }

.localnav-child-item:before {
  content: "\2043";
  /* margin-right: 0.5em; */
  display: inline-block;
  width: 1em;
  text-indent: 0;
  }

.main {
  float: left;
  display: inline;
  padding-left: 10px;
  width: 720px;
  }

.section,
.backtotop {
  clear: both;
  margin-bottom: 30px;
  }

.section-heading {
  margin-bottom: 10px;
  border-bottom: 3px solid #ccc;
  background: #f6f6f6;
  font-weight: bold;
  font-size: 138.462%;
  line-height: 1.333;
  }

.section-heading-text {
  display: inline-block;
  margin-bottom: -3px;
  padding: 5px 10px;
  border-bottom: 3px solid #008131;
  }

.section-section {
  clear: both;
  margin-bottom: 20px;
  }

.section-section-heading {
  clear: both;
  margin: 20px 0 10px;
  padding: 5px 10px;
  border-bottom: 3px solid #ccc;
  font-weight: bold;
  font-size: 123.077%;
  line-height: 1.25;
  }

.section-column-wrapper {
  clear: both;
  }

.section-column-wrapper:after {
  content: "";
  clear: both;
  display: block;
  }

.section-column-body {
  float: left;
  display: inline;
  width: 440px;
  }

.section-body p,
.section-body dl,
.section-body ul,
.section-body ol {
  margin-top: 0.385em;
  margin-bottom: 1.769em;
  margin: 0.385em 10px 1.769em 10px;
  line-height: 1.769;
  }

.section-body p {
  line-height: 1.769;
  text-indent: 1em;
  }

.section-body ul {
  padding-left: 1em;
  list-style: disc;
  }

/* .section-body :last-child { */
/*   margin-bottom: 0; */
/*   } */

.section-body .data {
  text-indent: 0;
  }

.section-body .motto {
  margin: 0.625em 20px 0;
  padding: 10px;
  border: 1px solid #ccc;
  color: #c00;
  background: #fff;
  font-weight: bold;
  font-size: 123.077%;
  line-height: 1.75;
  text-indent: 0;
  text-align: center;
  }

.section-body .image img {
  padding: 4px;
  border: 1px solid #ccc;
  }

.section-body .figure {
  margin: 20px 0;
  text-indent: 0;
  }

.section-body .figure-center {
  text-align: center;
  }

.section-body .signature {
  text-indent: 0;
  text-align: right;
  }

.section-body .note {
  margin-bottom: 1.917em;
  font-size: 92.308%;
  line-height: 1.5;
  }

.section-body .note dt:before {
  content: "\25a0";
  }

.section-body .note dd ul {
  padding-left: 2em;
  }

.section-body-description {
  margin: 0 10px 10px;
  }

.section-body-description p {
  margin-bottom: 1em;
  text-indent: 0;
  }

.section-body-more {
  margin: 20px 0 0 0;
  width: 720px;
  }

.section-column-body .section-body-more {
  width: 450px;
  }

.section-column-body p {
  margin-right: 0;
  }

.section-body-more-anchor {
  display: inline-block;
  position: relative;
  margin: 1px 1px 1px 11px;
  padding: 7px 10px 8px 26px;
  border: 2px solid #fff;
  outline: 1px solid #ccc;
  color: #fff;
  background: #008131 url("../images/sprite.png") -2198px center no-repeat;
  font-weight: bold;
  font-size: 107.692%;
  line-height: 1.286;
  text-decoration: none;
  vertical-align: top;
  }

.section-body-more-anchor:hover,
.section-body-more-anchor:active,
.section-body-more-anchor:focus {
  outline-color: #008131;
  }

.section-body-more-anchor_back {
  background-color: #666;
  }

.section-body-more-anchor_back:hover,
.section-body-more-anchor_back:active,
.section-body-more-anchor_back:focus {
  outline-color: #666;
  }

.lteie7 .section-body-more-anchor { margin: 0 0 0 10px; border: 0; }

.section-table {
  border: none;
  border-collapse: collapse;
  width: 100%;
  }

.section-table tr {
  border-bottom: 1px solid #fff;
  background: #f6f6f6;
  }

.section-table tr:nth-child(odd) {
  background: #ebebeb;
  }

.section-table tbody tr:last-child {
  border-bottom: none;
  }

.section-table th,
.section-table td {
  padding: 6px 15px;
  border-width: 0 0 0 1px;
  border-style: solid;
  border-color: #fff;
  line-height: 1.769;
  text-align: left;
  vertical-align: top;
  }

.section-table th:first-child,
.section-table td:first-child {
  border-left: none;
  }

.lteie7 .section-table th,
.lteie7 .section-table td { border-bottom: 1px solid #fff; }

.section-table th {
  font-weight: normal;
  }

.section-table thead th,
.table-history th {
  color: #fff;
  background: #666;
  }

.section-table-children {
  width: auto;
  }

.section-table-children tr {
  border: none;
  background: transparent !important;
  }

.section-table-children th,
.section-table-children td {
  padding: 0 1.538em 0 0;
  border: none;
  }

.lteie7 .section-table-children th,
.lteie7 .section-table-children td { border-bottom: none; }

.section-column-image {
  float: right;
  display: inline;
  width: 260px;
  }

.section-image-img {
  display: block;
  margin-top: 0.769em;
  padding: 4px;
  border: 1px solid #ccc;
  width: 250px;
  }

.section-image-caption {
  padding: 0.385em 5px 0;
  line-height: 1.308;
  text-align: center;
  }

/* section-gallery */

.section-body .section-gallery {
  margin-top: -0.769em;
  margin-left: -15px;
  padding: 0;
  width: 735px;
  list-style: none;
  }

.section-gallery-item {
  display: inline-block;
  margin: 0.769em 0 0 0;
  vertical-align: top;
  }

.lteie7 .section-gallery-item { display: inline; height: 100%; }

.section-gallery .section-gallery-image {
  margin: 0;
  text-indent: 0;
  }

.section-gallery .section-gallery-caption {
  margin: 0 5px 0 20px;
  text-indent: 0;
  }

.section-gallery-img {
/*   margin: -0.385em -5px 0 -5px; */
  margin-left: 15px;
  padding: 3px;
  border: 1px solid #ccc;
  }

/* sectin-gallery -- end */

.backtotop {
  padding: 10px 10px 0;
  border-top: 1px solid #ccc;
  color: #666;
  line-height: 1.154;
  text-align: right;
  }

.lteie7 .backtotop { height: 100%; }

.backtotop-anchor {
  color: #666;
  }

/* section -- end
   ================================ */

/* ################################################################
   footer */

#footer {
  }

#footer-company,
#footer-footer{
  padding: 20px 0;
  }

#footer-company-name,
.footer-nav-heading {
  background-image: url("../images/sprite.png");
  background-repeat: no-repeat;
  }

#footer-company {
  color: #fff;
  background: #008131 url("../images/bg_green.png");
  }

#footer-company:after,
#footer-company-contact:after{
  content: "";
  clear: both;
  display: block;
  }

#footer-company-name {
  float: left;
  overflow: hidden;
  width: 287px;
  height: 48px;
  background-position: -320px 0;
  text-indent: 100%;
  white-space: nowrap;
  }

#footer-company-tel,
#footer-company-hours {
  }

#footer-company-contact {
  float: left;
  display: inline;
  margin: 0 0 0 -20px;
  padding: 0 10px 0 20px;
  width: 663px;
  line-height: 1.308;
  }

#footer-company-address,
#footer-company-tel,
#footer-company-hours {
  margin-left: 20px;
  }

#footer-company-tel,
#footer-company-hours {
  float: left;
  display: inline;
  margin-top: 10px;
  }


#footer-footer {
  clear: both;
  color: #fff;
  background: #333 url("../images/bg_black.png");
  }

.footer-nav {
  float: left;
  padding: 0 10px;
  width: 176px;
  }

.footer-nav-item {
  margin: 0 0 20px 0;
  }

.footer-nav-heading {
  margin: 0 0 5px 0;
  padding: 0 0 0 25px;
  background-position: -1308px -34px;
  font-weight: bold;
  font-size: 115.385%;
  line-height: 1.4;
  }

.footer-nav-children {
  margin: 5px 0 0;
  padding: 0 0 0 25px;
  line-height: 1.154;
  }

.footer-nav-children-item {
  padding: 0.308em 0;
  }

.footer-nav-anchor {
  color: #fff;
  text-decoration: none;
  }

.footer-nav-anchor:hover,
.footer-nav-anchor:active,
.footer-nav-anchor:focus {
  text-decoration: underline;
  }

.footer-nav-anchor[href$=".pdf"]:after {
  content: '（PDF）';
  display: inline-block;
  width: 12px;
  height: 12px;
  margin-left: 4px;
  overflow: hidden;
  background: url("../images/icon_pdf_white.png") no-repeat;
  background-size: 100%;
  text-indent: 100%;
  white-space: nowrap;
  }

#copyright {
  clear: both;
  padding: 10px 0 40px;
  font-size: 92.308%;
  line-height: 1.667;
  text-align: center;
  }

/* ################################################################
   CONTACT
   ################################################################ */

.section-body .tel {
  display: inline-block;
  margin: 0 10px;
  padding: 5px 10px;
  border: 1px solid #ccc;
  background: #fff;
  font-weight: bold;
  font-size: 123.077%;
  line-height: 1.75;
  text-indent: 0;
  }

.lteie7 .section-body .tel { display: inline; height: 100%; }

.privatepolicy .signature {
  margin: 50px 0 0;
  line-height: 1.769;
  text-align: right;
  }

#contact-form {
  margin: 0 10px;
  }

.form-table {
  border: none;
  border-collapse: collapse;
  }

.form-table-inquiry {
  width: 100%;
  }

.form-table th,
.form-table td {
  padding: 0 0 15px;
  border: none;
  }

.form-table th {
  padding-top: 0.692em;
  padding-right: 20px;
  font-weight: normal;
  text-align: left;
  vertical-align: top;
  }

.form-table-inquiry th {
  padding-right: 0;
  }

.form-label-invalid {
  padding-top: 0.692em;
  padding-left: 10px;
  color: #f00;
  font-weight: bold;
  }

.form-label-required-mark {
  color: #f00;
  font-weight: bold;
  }

.input-text,
.input-textarea {
  border-width: 1px;
  border-style: solid;
  border-top-color: #ccc;
  border-right-color: #eee;
  border-bottom-color: #eee;
  border-left-color: #ccc;
  border-radius: 2px;
  }

.input-text {
  padding: 0 4px;
  width: 200px;
  height: 2.231em;
  line-height: 2.231;
  }

.input-textarea {
  padding: 5px 4px;
  width: 690px;
  height: 12.423em;
  line-height: 1.462;
  }

.input-text:hover,
.input-text:focus,
.input-textarea:hover,
.input-textarea:focus {
  border-top-color: #9bc;
  border-right-color: #def;
  border-bottom-color: #def;
  border-left-color: #9bc;
  }

.input-postalcode {
  width: 100px;
  }

.input-address {
  width: 500px;
  }

.input-checkbox-group {
  margin-top: 0.692em;
  }

.input-checkbox-group p {
  margin: 0.692em 0 0 0;
  line-height: 1;
  text-indent: 0;
  }

.input-checkbox {
  position: relative;
  top: -1px;
  vertical-align: middle;
  }

.input-checkbox-group label {
  margin-left: 5px;
  }

#contact-form .form-message {
  margin: 0;
  padding: 5px 10px;
  border: 2px solid #f00;
  font-weight: bold;
  font-size: 123.077%;
  line-height: 1.75;
  text-indent: 0;
  }

.form-message-invalid {
  color: #f00;
  }

.form-submit {
  margin: 20px 0 0 -10px;
  width: 710px;
  }

.input-button {
  margin-left: 10px;
  }

.form-submit .section-body-more-anchor {
  cursor: pointer;
  }

.form-table_confirm td {
  padding-top: 0.692em;
  color: #008131;
  font-weight: bold;
  }

.form-table-inquiry_confirm td {
  padding-top: 0;
  padding-left: 20px;
  }

.form-submit_confirm form {
  display: inline;
  }


/* ################################################################
   INDEX
   ################################################################ */

#index #header-container {
  padding: 166px 0 48px;
  background: url("../images/index_header_bg.jpg") no-repeat;
  }

#index #heading {
  border-bottom: 5px solid #008131;
  }

#business-list {
  counter-reset: business-list-number;
  display: block;
  display: -moz-box;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin: 0 0 0 -15px;
  }

.business-item {
  display: inline-block;
  display: -moz-box;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -moz-box-orient: vertical;
  -webkit-box-orient: vertical;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  position: relative;
  margin: 0 0 0 20px;
  padding: 154px 4px 4px 4px;
  border: 1px solid #ccc;
  width: 300px;
  vertical-align: top;
  }

.lteie9 .business-item { display: inline-block; }
.lteie7 .business-item { display: inline; }

.business-item:before {
  content: counter(business-list-number);
  counter-increment: business-list-number;
  display: block;
  position: absolute;
  top: 4px;
  left: 4px;
  z-index: 3;
  width: 1.75em;
  color: #fff;
  background: #b00;
  font-weight: bold;
  font-size: 153.846%;
  line-height: 1.75;
  text-align: center;
  }

.business-heading {
  padding: 15px 5px 10px;
  border-bottom: 1px dashed #ccc;
  font-size: 138.462%;
  line-height: 1.333;
  }

.business-heading-decorated {
  color: #b00;
  font-size: 133.333%;
  line-height: 1.25;
  }

.business-image {
  position: absolute;
  top: 4px;
  left: 4px;
  z-index: 2;
  width: 300px;
  height: 150px;
  background: rgba(0, 0, 255, 0.3);
  }

.business-image-img {
  width: 300px;
  height: 150px;
  }

.business-description {
  margin: 10px 10px 20px;
  color: #666;
  line-height: 1.615;
  }

.business-more {
  margin-top: auto;
  }

.business-more-anchor {
  display: block;
  padding: 0.583em 0.5em;
  -moz-border-radius: 4px;
  -webkit-border-radius: 4px;
  border-radius: 4px;
  color: #fff;
  background: #999;
  font-size: 92.308%;
  line-height: 1.333;
  text-decoration: none;
  text-align: center;
  }

.lteie7 .business-more-anchor { height: 100%; }

.business-more-anchor:hover,
.business-more-anchor:active,
.business-more-anchor:focus {
  background: #666;
  }

#contents-update {
  color: #333;
  background: #e4e4e4 url("../images/bg_grey.png");
  }

#update-table {
  margin: 20px 25px 0;
  border: none;
  border-collapse: collapse;
  line-height: 1.308;
  }

.update-table-date,
.update-table-desc {
  padding: 4px 0;
  border: 0;
  }

.update-table-date {
  padding-right: 2em;
  }

/* ################################################################
   COMPANY
   ################################################################ */

.company #location .section-column-body {
  width: 300px;
  }

.section-location-body p {
  text-indent: 0;
  }

.section-column-location {
  width: 400px;
  }

.section-image-location-img {
  width: 310px;
  height: 190px;
  }

.department,
.department-title,
.department-name {
  display: inline-block;
  }

.lteie7 .department,
.lteie7 .department-title,
.lteie7 .department-name { display: inline; height: 100%; }

.department {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -moz-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  margin-top: 0;
  border: 2px solid #008131;
  color: #fff;
  background: #008131;
  }

.section-body .department {
  margin-top: 0;
  }

.department-title,
.department-name {
  vertical-align: top;
  }

.department-title {
  padding: 2px 10px 2px 8px;
  font-weight: bold;
  }

.department-name {
  padding: 2px 10px;
  color: #008131;
  background: #fff;
  }

.department-name .department-name-list {
  margin: 0;
  padding: 0;
  list-style: none;
  line-height: 1.308;
  }

.department-name .department-name-item {
  padding: 0.231em 0;
  }

/* ################################################################
   BUSINESS
   ################################################################ */

.section-related {
  border: 1px solid #ccc;
  }

.section-related-heading {
  padding: 7px 15px 8px;
  border-bottom: 1px solid #ccc;
  color: #fff;
  background: #008131;
  font-weight: bold;
  font-size: 107.692%;
  line-height: 1.286;
  }

.section-related-list {
  padding: 14px 20px 9px;
  background: #f6f6f6;
  }

.section-related-item {
  margin-bottom: 5px;
  padding-left: 15px;
  background: url("../images/sprite.png") -1488px center no-repeat;
  }

.section-related-item-sep {
  display: none;
  }

.section-related-item-cat {
  display: inline-block;
  margin: 0 5px 0 0;
  padding: 6px 5px 7px;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
  color: #fff;
  background: #666;
  font-weight: bold;
  font-size: 92.308%;
  }

.lteie7 .section-related-item-cat { padding: 0 5px; line-height: 2.083; }

.section-related-anchor {
  color: #000;
  line-height: 1.923;
  }

.lteie7 .section-related-anchor { vertical-align: middle; }

.section-contact {
  position: relative;
  padding: 12px 0 10px 0;
  -moz-border-radius: 8px;
  -webkit-border-radius: 8px;
  border-radius: 8px;
  width: 720px;
  color: #fff;
  background: #333 url("../images/bg_black.png");
  }

.section-contact-heading,
.section-contact-tel,
.section-contact-email {
  overflow: hidden;
  background-image: url("../images/section_contact_sprite.png");
  background-repeat: no-repeat;
  text-indent: 100%;
  white-space: nowrap;
  }

.section-contact-heading {
  margin-bottom: 21px;
  width: 720px;
  height: 16px;
  }

.section-contact-tel {
  float: left;
  display: inline;
  margin: 0 65px 0 29px;
  width: 298px;
  height: 57px;
  background-position: 0 -16px;
  }

.section-contact-email {
  float: left;
  width: 296px;
  height: 43px;
  background-position: -298px -16px;
  }

.section-contact-email-anchor {
  display: block;
  width: 100%;
  height: 100%;
  }

.lteie7 .section-contact-email-anchor:hover,
.lteie7 .section-contact-email-anchor:active,
.lteie7 .section-contact-email-anchor:focus { border-bottom: 1px solid #fff; height: 42px; }

.section-contact-email-anchor:after {
  content: "";
  display: none;
  position: absolute;
  top: 80px;
  left: 471px;
  width: 217px;
  height: 0;
  border-bottom: 1px solid #fff;
  }

.section-contact-email-anchor:hover:after,
.section-contact-email-anchor:active:after,
.section-contact-email-anchor:focus:after {
  display: block;
  }

.section-contact-text {
  clear: both;
  padding-top: 10px;
  width: 720px;
  font-weight: bold;
  font-size: 107.692%;
  line-height: 1.286;
  text-align: center;
  }

/* ################################################################
   WORKFLOW
   ################################################################ */

.workflow-section {
  clear: both;
  margin-top: 10px;
  }

.workflow-section:after {
  content: "";
  clear: both;
  display: block;
  margin-left: 35px;
  border-width: 25px 18px 0 18px;
  border-style: solid;
  border-color: #008131 transparent;
  border-color: #008131 rgba(255, 255, 255, 0);
  width: 0;
  height: 0;
  }

.workflow-section-last:before {
  content: "";
  display: block;
  margin: 0 0 -46px 30px;
  border-radius: 23px;
  width: 46px;
  height: 46px;
  background: #008131;
  }

.workflow-section-finish:after {
  border: none;
  }

.workflow-section-heading {
  float: left;
  display: inline;
  position: relative;
  padding: 43px 0;
  -moz-border-radius: 53px;
  -webkit-border-radius: 53px;
  border-radius: 53px;
  width: 106px;
  color: #fff;
  background: #008131;
  font-size: 153.846%;
  text-align: center;
  }

.workflow-section-body-container {
  float: left;
  width: 600px;
  margin: 10px 0 0 -61px;
  padding: 0 0 0 59px;
  border-left: 16px solid #008131;
  }

.workflow-section-finish .workflow-section-body-container {
  margin-left: 14px;
  padding: 0;
  border: none;
  }

.workflow-section-last .workflow-section-body-container {
  margin-top: 0;
  margin-left: 0;
  padding-left: 120px;
  }

.lteie7 .workflow-section-body-container { padding-bottom: 30px; }

.workflow-section-section {
  margin-top: 30px;
  }

.ie6 .workflow-section-section { margin-top: 0; margin-bottom: 30px; }

.workflow-section-section:first-child {
  margin-top: 0;
  }

.workflow-section-column-wrapper {
  padding-left: 0;
  width: 600px;
  }

.workflow-section-column-body {
  width: 330px;
  }

.workflow-section-image-img {
  margin-top: 0;
  }

.workflow-section-body-heading {
  margin-bottom: 10px;
  color: #c00;
  font-weight: bold;
  font-size: 123.077%;
  line-height: 1.5;
  }

.workflow-section-body p {
  line-height: 1.769;
  }

.workflow-section-body .figure {
  margin-top: 10px;
  }

.workflow-section-figure-wrapper {
  margin: -30px 0 0 -20px;
  width: 620px;
  }

.ie6 .workflow-section-figure-wrapper { margin-bottom: 30px; }

.workflow-section-figure {
  display: inline-block;
  margin: 20px 0 0 20px;
  width: 260px;
  vertical-align: top;
  }

.lteie7 .workflow-section-figure { display: inline; }

.workflow-section-figure-double {
  width: 540px;
  }

.workflow-section-figure-image {
  margin-top: 10px;
  }

.workflow-section-figure-double .workflow-section-figure-image {
  margin-left: -20px;
  }

.workflow-section-figure-image-img {
  display: inline-block;
  margin: 0;
  }

.workflow-section-figure-double .workflow-section-figure-image-img {
  margin-left: 20px;
  }

p.workflow-section-figure-caption {
  padding-top: 10px;
  line-height: 1.308;
  }

.workflow-section-figure-wrapper+.workflow-section-branch {
  margin-top: 30px;
  }

.workflow-section-branch:after {
  content: "";
  clear: both;
  display: block;
  }

.workflow-section-branch-item {
  float: left;
  display: inline;
  padding-top: 10px;
  padding-bottom: 10px;
  width: 260px;
  }

.ie6 .workflow-section-branch-item { margin-bottom: -30px; }

.workflow-section-branch-item-right {
  margin-left: 35px;
  padding-left: 35px;
  border-left: 1px dashed #000;
  }

.workflow-section-branch-heading {
  display: inline-block;
  margin-bottom: 10px;
  padding: 8px 10px;
  color: #fff;
  background: #999;
  font-size: 123.077%;
  line-height: 1.25;
  }

.lteie7 .workflow-section-branch-heading { display: inline; height: 100%; }

.workflow-section-branch-hidden-heading {
  display: none;
  }

.lteie7 .workflow-section-branch-hidden-heading { display: none; }

.workflow-section-branch-item .workflow-section-figure-wrapper {
  margin: -30px 0 0 0;
  width: 260px;
  }

.workflow-section-branch-item .workflow-section-figure {
  margin-left: 0;
  }

.workflow-section-note {
  margin-top: 10px;
  line-height: 1.769;
  }

.workflow-section-body-section {
  margin: 20px 0 0 10px;
  }

.workflow-section-body-section h4 {
  margin-bottom: 10px;
  padding: 0 10px 4px;
  border-bottom: 3px solid #ccc;
  color: #c00;
  font-size: 123.077%;
  line-height: 1.25;
  }

.workflow-section-body-section p {
  margin: 0 0 0 10px;
  }

.workflow-section-body-section .figure {
  float: right;
  display: inline;
  margin: 0 0 0 10px;
  }


/* ################################################################
   PLANTS
   ################################################################ */

.plants-max {
  margin: 10px 0 0;
  border: 2px solid #c00;
  color: #c00;
  background: #ffe;
  font-weight: bold;
  font-size: 123.077%;
  line-height: 1.25;
  }

.plants-max-title {
  display: inline-block;
  padding: 7px 12px 9px 10px;
  color: #fff;
  background: #c00;
  }

.lteie7 .plants-max-title { display: inline; height: 100%; }

.plants-max-desc {
  padding: 10px;
  }

.plants-table tbody tr {
  background: #ebebeb !important;
  }

.plants-table tbody:nth-child(odd) tr {
  background: #f6f6f6 !important;
  }

.plants-table tbody tr:last-child {
  border-bottom: 1px solid #fff;
  }

.plants-table tbody:last-child tr:last-child {
  border-bottom: none;
  }

.plants-table tbody tr+tr td:first-child {
  border-left: 1px solid #fff;
  }

/* ################################################################
   PRODUCTS
   ################################################################ */



/* ################################################################
   HISTORY
   ################################################################ */

.history-table {
  }

.history-table th,
.history-table td {
  padding-top: 8px;
  padding-bottom: 8px;
  font-size: 92.308%;
  line-height: 1.5;
  }

.table-history-location,
.table-history-contractee {
  white-space: nowrap;
  }

.table-history-location {
  color: #fff;
  background: #999;
  }

.table-history-desc-work {
  font-size: 91.667%;
  line-height: 1.364;
  }
