@charset "utf-8";
/* CSS Document */
/* Reset CSS */
html,body,h1,h2,h3,h4,ul,ol,dl,li,dt,dd,p,div,span,img,a,table,tr,th,td{margin:0;padding:0;border:0;font-weight:normal;font-size:100%;vertical-align:baseline;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;}
article,header,footer,aside,figure,figcaption,nav,section{display:block;}
body{line-height:1;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;}
ol,ul{list-style:none;list-style-type:none;}

/* Common Set */
.tx_c { text-align: center; }
.tx_l { text-align: left; }
.tx_r { text-align: right; }
table { border-collapse: collapse; }

header {
  position: sticky;
  top: 0;
  height: 60px;
  font-size: 0px;
  border-bottom: 3px solid #28598f;
  background-color: white;
  h1 {
    float: left;
    height: 100%;
    font-size: 20px;
    line-height: 60px;
    img {
      height: 50px;
      margin-top: 5px;
      margin-left: 5px;
    }
  }
  a {
    color: black; text-decoration: none;
    &:hover { color: red; text-decoration: underline; }
  }
}
#menu {
  float: right; height: 100%;
  li {
    display: inline-block;
    height: 100%;
    font-size: 16px;
    line-height: 60px;
    padding-left: 0.5em;
    padding-right: 0.5em;
  }
}

footer {
  background-color: #28598f;
  color: white;
  padding-top: 10px;
  position:relative;
}
#sitemap {
  font-size: 0;
  div {
    display: inline-block;
    font-size: 16px;
    vertical-align: top;
    line-height: 1.5em;
    ul { margin-bottom: 7px; }
    li { font-size: 13px; margin-left: 1em; }
    &.sitemap1 {
      width: 34%; padding-left: 10px;
      img {
        background-color: white;
        &.corporateLogo { width: 250px; }
        &.ecoActionLogo { height: 80px; }
      }
    }
    &.sitemap2 {
      width: 22%;
      a {
        color: white; text-decoration: none;
        &:hover { color: red; text-decoration: underline; }
      }
    }
  }
}
#viatype { position: absolute; right: 10px; }
#copyright {
  text-align: center;
  font-size: 14px;
  line-height: 2em;
}

#contents {
  max-width: 1000px;
  min-height: 500px;
  margin: 0 auto;
  padding: 1em;
  font-size: 17px;
}
#contents h2 {
  font-size: 22px;
  font-weight: bold;
  margin-bottom: 1em;
  padding: 0.5em 1em;
  border-top: 2px solid #28598f;
  border-bottom: 2px solid #28598f;
}
#contents h3 {
  font-size: 18px;
  font-weight: bold;
  margin: 0 1em 0.5em;
  padding: 0 1em;
  border-bottom: 1px solid #28598f;
}
#contents .indent1 { padding-left: 1em; }

.errDoc {
  line-height: 18em;
  font-size: 36px;
  text-align: center;
}

.topMessage {
  font-size: 24px;
  line-height: 1.5em;
}
.topMessage img { float: right; }

.topInfo {
  clear: both;
  margin-bottom: 1em;
}
.topInfo h4 {
  font-size: 18px;
  font-weight: bold;
  padding: 0.5em;
  border-bottom: 1px solid #28598f;
}
.topInfo li {
  line-height: 1.5em;
  margin-left: 1em;
}
.topInfo li span {
  font-family: monospace;
  margin-right: 1em;
}
.infoList {
  margin: 0 1em 1em;
}
.infoList h4 {
  font-size: 18px;
  padding: 0.5em;
  border-bottom: 1px solid #28598f;
}
.infoList h4.importantNotices { font-weight: bold; color: red; }
.infoList ul { margin-bottom: 0.5em; }
.infoList li {
  line-height: 1.5em;
  margin-left: 1em;
  font-size: 16px;
}
.infoList li span {
  font-family: monospace;
  margin-right: 1em;
}
.infoList ul.importantNotices li { margin-bottom: 1em; }
.infoList li {
	padding-left: 8em;
	text-indent: -8em;
}
.infoContent {
  margin: 0 1em;
  line-height: 1.5em;
}

#compIndex div {
  width: 50%;
  margin: 0 auto 20px;
  border: 1px solid #8eaed1;
  font-size: 24px;
  font-weight: bold;
}
#compIndex div:hover { background-color: #fff0f5; }
#compIndex a { text-decoration: none; color: black; }
#compIndex div > img {
  vertical-align: middle;
  margin-right: 1em;
  max-width: 80px;
  max-height: 80px;
}

table.compOutline { margin-left: 1em; }
.compOutline th, .compOutline td {
  border-bottom: 1px solid #111;
  padding: 0.5em 1em;
  line-height: 1.5em;
}
.compOutline th { font-weight: bold; text-align: right; }
table.history { }
.history th, .history td {
  border: 0;
  padding: 0;
  line-height: 1.5em;
  font-weight: normal;
  font-size: 90%;
  text-align: left;
}
.history td { padding-left: 1em; }
table#manual, table#drawing {
  margin: 0 auto;
  border-collapse: collapse;
}
table#manual th, table#drawing th {
  padding: 0 0.5em;
  line-height: 1.5em;
  border: 1px solid silver;
  text-align: center;
}
table#manual th { background-color: #b0c4de; }
table#drawing th { background-color: #deb0b8; }
table#manual td, table#drawing td {
  padding: 0.2em 0.5em;
  line-height: 1.5em;
  border: 1px solid silver;
  text-align: center;
}
#dealer {
  font-size: 0;
  li {
    display: inline-block;
    font-size: 16px;
    line-height: 2em;
    width: 25%;
    a {
      color: #1a0dab;
      text-decoration: none;
      &:hover { color: red; text-decoration: underline; }
    }
  }
}
#productList {
  margin: 0 32px;
  font-size: 0;
  li {
    display: inline-block;
    font-size: 16px;
    font-weight: bold;
    line-height: 3em;
    width: 40%;
    margin: 0.5em 5%;
    border: 1px solid #8eaed1;
    text-align: center;
  }
}
#productList a { text-decoration: none; color: black; }
#productList a > li:hover { background-color: #fff0f5; }
.productOutline { margin: 0 1em; }
.productOutline img { display: inline-block; vertical-align: top; max-width: 350px; }
.productOutline ul { display: inline-block; vertical-align: top; max-width: 550px; }
.productOutline li {
  list-style-type: disc;
  margin-left: 2em;
  line-height: 2em;
}
.productLineup {
  margin: 1em auto;
}
.productLineup th, .productLineup td {
  padding: 0.5em;
  border: 1px solid black;
  text-align: center;
}
.productLineup th { background-color: #b0c4de; }
.productNews { margin: 0.5em 5em; }
.productNews li {
  line-height: 1.5em;
  margin-left: 1em;
  font-size: 16px;
}
.productNews li span {
  font-family: monospace;
  margin-right: 1em;
}
#whats {
  list-style-type: square;
  margin: 0 2em 2em;
  line-height: 2em;
}
#caseStudies h3 > span {
  margin-left: 2em;
  font-weight: bold;
}
#caseStudies p {
  margin: 0 2em 1em;
  line-height: 1.5em;
  vertical-align: bottom;
}
#caseStudies p img {
  float: left;
  margin-right: 1em;
}
#caseStudies div { clear: both; }
#example { text-align: center; }
.exampleCell {
  display: inline-block;
  vertical-align: top;
  width: 250px;
  height: 260px;
  margin: 0 10px 20px;
  border: 1px solid black;
  border-radius: 6px;
}
.exampleImage {
  text-align: center;
  margin: 5px 0;
}
.exampleText {
  font-size: 14px;
  line-height: 1.5em;
  padding: 0 0.5em 0.5em;
  text-align: left;
}

#choice { margin: 0 1em; }
#choice table { margin: 1em auto; }
#choice table td { vertical-align: top; }
#choice table td li {
  list-style-type: disc;
  margin-left: 2em;
  line-height: 1.5em;
}
#choice h4 { font-weight: bold; }
#choice p {
  margin: 0.5em 1em 1em;
  line-height: 1.5em; 
  font-size: 14px;
}
#choice p img { margin-left: 1.5em; }

#inertia { margin: 0 auto; }
#inertia th, #inertia td {
  border: solid 1px black;
  text-align: center;
  vertical-align: middle;
  padding: 0.5em;
}
#inertia th { background-color: #eeefff; }
#inertia td.inertiaType { width: 1.5em; background-color: #eeefff; }

#formula { margin: 1em auto; }
#formula th, #formula td {
  border: solid 1px black;
  text-align: center;
  vertical-align: middle;
  padding: 0.5em;
}
#formula th { background-color: #eeefff; }
#formula td.formulaType { text-align: left; background-color: #eeefff; }

#explanation { margin: 1em auto; }
#explanation th, #explanation td {
  border: solid 1px black;
  text-align: center;
  vertical-align: top;
  padding: 0.5em;
}
#explanation th { background-color: #feeeef; }
#explanationSymbol { margin: 0; }
#explanationSymbol td {
  border-width: 0;
  text-align: left;
  font-size: 16px;
  padding: 0.3em 0.5em 0.3em 0;
}

#faqContents h4 {
  font-size: 18px;
  margin: 0 2em 0.5em;
  padding: 0 1em;
  background-color: #DBE7F5;
  line-height: 1.5em;
}
#faqContents h4:before { content: "Ｑ　"; }
#faqContents p {
  font-size: 16px;
  margin: 0 2em 1em;
  padding: 0 1em;
  line-height: 1.5em;
}
#faqContents p:before { content: "Ａ　"; }
#faqContents p .notice {
  color: red;
  font-weight: bold;
  margin-right: 1em;
}

.contact {
  margin: 0 3em 1.5em;
  line-height: 1.5em;
}
#contactForm { margin: 0 auto; }
#contactForm th, #contactForm td {
  vertical-align: top;
  padding: 0.3em 0.5em;
}
#contactForm th {
  text-align: right;
}
.required {
  color: red;
  font-weight: bold;
}