@charset "UTF-8";

/***************
  common
****************/

main {
  padding: 20px;
}

main h1 {
  color: #677;
  font-size: 32px;
  margin-bottom: 30px;
  text-align: center;
}

/* localNavigation */

.localNavigation {
  margin-bottom: 30px;
  text-align: center;
}

.localNavigation li {
  display: inline-block;
  margin: 0 14px;
}

.localNavigation li a {
  text-decoration: none;
}

/***************
  news page
****************/

.news .year {
  font-size: 23px;
  margin-bottom: 20px;
  color: #aaa;
  text-align: center;
}

.news .newsList article {
  margin-bottom: 80px;
}

.news .newsList article h2 {
  font-size: 18px;
  margin-bottom: 10px;
  text-align: center;
}

.news .newsList article .summary p {
  font-size: 13px;
  margin-bottom: 1em;
}

.news .newsList article .summary img {
  width: 100%;
}

.news .newsList article .date {
  color: #aaa;
  font-size: 11px;
  margin-bottom: 10px;
  text-align: center;
}


/***************
  product page
****************/

/* product */

.product .productList > li {
  margin-bottom: 80px;
}

.product .productList li img {
  margin-bottom: 10px;
  width: 100%;
}

.product .productList li .info {
  overflow: hidden; /* 文字がはみ出ないように指定 */
}

.product .productList li h2 {
  font-size: 24px;
  margin-bottom: 6px;
}

.product .productList li h3 {
  font-size: 11px;
  font-weight: bold;
  margin-bottom: 10px;
}

.product .productList li .category,
.product .productList li .summary,
.product .productList li .features,
.product .productList li .spec {
  margin-bottom: 10px;
}

.product .productList li .category span {
  background: #f8f8f8;
  color:#999;
  font-size: 10px;
  padding: 3px 10px;
}

.product .productList li .features li:before {
  content: "・";
  font-size: 16px;
  vertical-align: middle;
}

.product .productList li .spec table {
  width: 100%;
}

.product .productList li .spec table tr:nth-child(2n-1) {
  background: #f8f8f8;
}

.product .productList li .spec table th,
.product .productList li .spec table td {
  font-size: 12px;
  padding: 4px 20px;
}

/***************
  company page
****************/

.company img {
  display: block;
  width: 100%;
}

.company section h2 {
  font-size: 27px;
  margin-bottom: 12px;
  padding: 40px 0 20px;
  text-align: center;
}

/* vision */

.company section.vision .visionText {
  color: #666;
  font-size: 20px;
  margin-bottom: 30px;
  text-align: center;
}

.company section.vision .visionText:before,
.company section.vision .visionText:after {
  font-size: 44px;
  line-height: 40px;
  vertical-align: text-top;
}

.company section.vision .visionText:before {
  content: "“";
  margin-right: 10px;
}

.company section.vision .visionText:after {
  content: "”";
  margin-left: 10px;
}

/* access */

.company section.access .map {
  margin-bottom: 20px;
}

/* detail */

.company section.detail dl {
  border-top: 1px solid #e2e2e2;
  display: table;
  font-size: 13px;
  width: 100%;
}

.company section.detail dl:last-child {
  border-bottom: 1px solid #e2e2e2;
}

.company section.detail dl dt,
.company section.detail dl dd {
  display: table-cell;
  padding: 13px 14px;
  vertical-align: top;
}

.company section.detail dl dt {
  background: #f8f8f8;
  box-sizing: border-box;
  font-size: 12px;
  width: 100px;
}

