﻿@charset "UTF-8";
@import url(https://fonts.googleapis.com/css?family=Open+Sans:700);
/*----------------------------------------
 * Initialize */
/*---------------------------------------- */
html {
  font-size: 14px;
}
@media only screen and (max-width: 768px) {
  html {
    font-size: 12px !important;
  }
}
@media only screen and (min-width: 1920px) {
  html {
    background: url("../images/common/extra-bg.png") #222;
  }
}

body {
  display: block;
  padding: 0;
  margin: 0;
  font-size: 14px;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif !important;
  color: #222222;
}
@media only screen and (min-width: 769px) {
  body {
    min-width: 1200px;
  }
}
@media only screen and (max-width: 768px) {
  body {
    font-size: 12px !important;
  }
}
@media only screen and (min-width: 1920px) {
  body {
    background-color: #FFF;
    max-width: 1920px;
    width: 1920px;
    margin-right: auto !important;
    margin-left: auto !important;
  }
}

p {
  margin: 0;
}

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

h1, h2, h3, h4, h5 {
  margin: 0;
  padding: 0;
}

strong {
  font-weight: bold;
}

a {
  color: #222222;
  -moz-transition: all 0.3s;
  -o-transition: all 0.3s;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
@media only screen and (max-width: 768px) {
  a {
    -moz-transition: none;
    -o-transition: none;
    -webkit-transition: none;
    transition: none;
  }
}
a:hover {
  color: #929497;
  text-decoration: none;
}
a:focus {
  color: #929497;
}

/*----------------------------------------
 *        Common
 *---------------------------------------- */
.company__common--text {
  margin-bottom: 60px;
}
@media only screen and (max-width: 768px) {
  .company__common--text {
    margin-bottom: 15px;
  }
}

.layout__main > section {
  margin-bottom: 100px;
}
.layout__main > section .table1 th[colspan="3"],
.layout__main > section .table2 th[colspan="3"],
.layout__main > section .table3 th[colspan="3"],
.layout__main > section .table4 th[colspan="3"] {
  background: #e1e1e1;
}
@media only screen and (max-width: 768px) {
  .layout__main > section {
    margin-bottom: 50px;
  }
  .layout__main > section .table1,
  .layout__main > section .table2,
  .layout__main > section .table3,
  .layout__main > section .table4 {
    overflow: visible;
  }
  .layout__main > section .table1 table,
  .layout__main > section .table2 table,
  .layout__main > section .table3 table,
  .layout__main > section .table4 table {
    min-width: 0;
  }
  .layout__main > section .table1 h2 {
    min-width: 0;
  }
}

/*----------------------------------------
 *        Greeting
 *---------------------------------------- */
.greeting__body h1 {
  margin: 0 0 50px 0;
  font-size: 1.85rem;
  font-weight: bold;
}
@media only screen and (max-width: 768px) {
  .greeting__body h1 {
    margin: 0 0 13px 0;
    font-size: 1.5rem;
    line-height: 1.6;
  }
}
.greeting__body p {
  margin-bottom: 1.8rem;
  font-size: 1.14rem;
  line-height: 2;
}
@media only screen and (max-width: 768px) {
  .greeting__body p {
    font-size: 1.08rem;
  }
}

.greeting__image {
  margin-bottom: 80px;
}
@media only screen and (max-width: 768px) {
  .greeting__image {
    margin-bottom: 20px;
  }
}
.greeting__image figure {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
}
@media only screen and (max-width: 768px) {
  .greeting__image figure {
    display: -webkit-block;
    display: block;
    text-align: center;
  }
}
.greeting__image img {
  width: 320px;
}
@media only screen and (max-width: 768px) {
  .greeting__image img {
    width: 210px;
  }
}
.greeting__image figcaption {
  margin-left: 60px;
  margin-top : 350px;
  font-size: 1.14rem;
  line-height: 26px;
}
@media only screen and (max-width: 768px) {
  .greeting__image figcaption {
    margin: 26px 0 0 0;
  }
}

.lang-en .greeting--wrap {
  margin-bottom: 50px;
}
@media only screen and (max-width: 768px) {
  .lang-en .greeting--wrap {
    margin-bottom: 50px;
  }
}

.greeting__image2 img {
  width: 150px;
}
/*----------------------------------------
 *        information
 *---------------------------------------- */
.information .table2 tr th {
  text-align: center;
}
.information .table2 tr th:not([colspan="3"]) {
  width: 25%;
}

/*----------------------------------------
 *        jigyo
 *---------------------------------------- */
@media only screen and (max-width: 768px) {
  .jigyo .list3 {
    margin-bottom: 30px;
  }
}

/*----------------------------------------
 *        jigyo
 *---------------------------------------- */
@media only screen and (max-width: 768px) {
  .aplan .list9 {
    margin-bottom: 30px;
  }
}

/*----------------------------------------
 *        enkaku
 *---------------------------------------- */
.enkaku .table3 table {
  table-layout: fixed;
}
@media only screen and (max-width: 768px) {
  .enkaku .table3 table {
    margin-bottom: 30px;
  }
}
.enkaku .table3 tr th:nth-of-type(1) {
  width: 15%;
  background-color: #e1e1e1;
}
.enkaku .table3 tr th:nth-of-type(2) {
  width: 10%;
}
.enkaku .table3 tr th:last-of-type {
  background-color: #f5f5f5;
}
@media only screen and (max-width: 768px) {
  .enkaku .table3 tr th:nth-of-type(1) {
    width: 20%;
  }
  .enkaku .table3 tr th:nth-of-type(2) {
    width: 15%;
  }
}

.lang-en .table3 th:nth-of-type(1) {
  width: 25% !important;
}

/*----------------------------------------
 *        group
 *---------------------------------------- */
.group .table2 table {
  table-layout: fixed;
}
@media only screen and (max-width: 768px) {
  .group .table2 table {
    margin-bottom: 30px;
  }
}
.group .table2 tr th {
  width: 20%;
  text-align: center;
}

/*----------------------------------------
 *        ISO
 *---------------------------------------- */
section.iso .contents-wrap > section {
  margin-bottom: 60px;
}
section.iso .contents-wrap > section:first-of-type {
  margin-bottom: 30px;
}
@media only screen and (max-width: 768px) {
  section.iso .contents-wrap > section {
    margin-bottom: 30px;
  }
}

.iso__list {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  margin: 0 0 40px;
}
@media only screen and (max-width: 768px) {
  .iso__list {
    display: block;
    margin: 0 0 30px;
  }
}
.iso__list .iso__list__item {
  width: 410px;
  margin: 0;
  border-width: 1px;
}
@media only screen and (max-width: 768px) {
  .iso__list .iso__list__item {
    width: 100%;
    margin: 0 0 10px;
  }
}
.iso__list .iso__list__item.iso__list__item--wide {
  width: 100%;
}
.iso__list .iso__list__item p {
  line-height: 48px;
}
@media only screen and (max-width: 768px) {
  .iso__list .iso__list__item p {
    line-height: 33px;
  }
}
@media only screen and (max-width: 768px) {
  .iso__list .pdf-image a {
    margin-bottom: 0;
  }
}

.lang-en .iso figure {
  margin-bottom: 30px;
  font-size: 1rem;
  line-height: 1.3;
  text-align: center;
}

/*----------------------------------------
 *        Giho
 *---------------------------------------- */
.giho .giho__intro {
  font-size: 1.14rem;
}
@media only screen and (max-width: 768px) {
  .giho .giho__intro {
    font-size: 1rem;
  }
}
.giho .pdf-image a {
  min-height: 80px;
}
@media only screen and (max-width: 768px) {
  .giho .pdf-image a {
    min-height: 50px;
    padding-right: 40px;
    margin-bottom: 10px;
  }
}
.giho .pdf-image a h3 {
  margin-bottom: 0;
}
.giho .pdf-image a h3 + p {
  margin-top: 10px;
}
@media only screen and (max-width: 768px) {
  .giho .pdf-image a h3 + p {
    margin-top: 4px;
  }
}
.giho .install-adobe {
  margin-top: 26px;
}

.layout__main .giho-all {
  margin-bottom: 40px;
}
@media only screen and (max-width: 768px) {
  .layout__main .giho-all {
    margin-bottom: 20px;
  }
}
@media only screen and (max-width: 768px) {
  .layout__main .giho-all a {
    padding: 15px 45px 15px 20px;
  }
}

.giho-partial__list {
  margin: 25px 0 60px;
}
@media only screen and (max-width: 768px) {
  .giho-partial__list {
    margin: 0 0 30px;
  }
}
.giho-partial__list .giho-partial__list__item a {
  padding: 20px;
}
@media only screen and (max-width: 768px) {
  .giho-partial__list .giho-partial__list__item a {
    padding: 10px 45px 10px 12px;
  }
}
.giho-partial__list .giho-partial__list__item a .text {
  margin-left: 0;
}

.giho-old__list {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 100px;
}
@media only screen and (max-width: 768px) {
  .giho-old__list {
    display: block;
    margin-bottom: 30px;
  }
}
.giho-old__list .giho-old__list__item a {
  width: 410px;
  padding: 30px;
  margin-bottom: 30px;
}

@media only screen and (max-width: 768px) {
  .giho-old__list .giho-old__list__item a {
    width: 100%;
    padding: 6px 18px;
    margin: 0 0 10px;
  }
}
.giho-old__list .giho-old__list__item a .text {
  margin-left: 20px;
}

/*----------------------------------------
 *        aplan
 *---------------------------------------- */
.aplan .midashi2 {
  margin-bottom: 40px;
}
@media only screen and (max-width: 768px) {
  .aplan .midashi2 {
    margin-bottom: 10px;
  }
}
.aplan .midashi2 h3 {
  line-height: 1.4;
}
.aplan .midashi2 h4 {
  margin-bottom: 10px;
  margin-top: 5px;
}
.aplan .list3 {
  margin-bottom: 50px;
}
.aplan .list4 {
  margin-top: 20px;
  margin-bottom: 50px;
}
@media only screen and (max-width: 768px) {
  .aplan .list3 {
    margin-bottom: 20px;
  }
}
@media only screen and (max-width: 768px) {
  .aplan .company__common--text {
    margin-bottom: 30px;
  }
}

/*----------------------------------------
 *        kaitai
 *---------------------------------------- */
@media only screen and (max-width: 768px) {
  .kaitai .company__common--text {
    margin-bottom: 30px;
  }
}
.kaitai .table4 tr td:nth-of-type(1) {
  width: 70%;
}
@media only screen and (max-width: 768px) {
  .kaitai .table4 tr td:nth-of-type(1) {
    width: 65%;
  }
}
.kaitai .table4 tr td:nth-of-type(2) {
  width: 30%;
  text-align: center;
}
@media only screen and (max-width: 768px) {
  .kaitai .table4 tr td:nth-of-type(2) {
    width: 35%;
  }
}

/*----------------------------------------
 *        map
 *---------------------------------------- */
.map .table2 tr th {
  width: 20%;
  text-align: center;
}

/*----------------------------------------
 *        Address 事業別拠点
 *---------------------------------------- */
.layout__main > section.address .table1 th {
  width: 28%;
}
.layout__main > section.address .table1 td.map {
  width: 13%;
}

/*----------------------------------------
 *        MAP 主要拠点
 *---------------------------------------- */
.layout__main > section.map .contents-wrap > section {
  margin-bottom: 60px;
}

/*----------------------------------------
 *        Power パワーゲート販売店
 *---------------------------------------- */
.layout__main > section.power .table1 th {
  width: 32%;
}
.layout__main > section.power .table1 td.map {
  width: 13%;
}

/*----------------------------------------
 *        Mente
 *---------------------------------------- */
.area-pagenav {
  display: -webkit-flex;
  display: flex;
  justify-content: space-around;
  margin: 0 0 30px;
  text-align: center;
}
.area-pagenav li {
  width: calc(100% / 6);
  border-left: 1px solid #ccc;
}
.area-pagenav li:first-child {
  border-left: none;
}
@media only screen and (max-width: 768px) {
  .area-pagenav {
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .area-pagenav li {
    width: calc(100% / 3);
  }
  .area-pagenav li:nth-child(3n + 1) {
    border-left: none;
  }
}
.area-pagenav a {
  display: block;
  padding: 10px 20px;
  font-size: 1.1rem;
}

.area-pagenav p {
  display: block;
  padding: 10px 20px;
  font-size: 1.1rem;
}

@media only screen and (max-width: 768px) {
  .area-pagenav a {
    font-size: 1rem;
  }
}

.layout__main > section.mente .table1 th {
  width: 36%;
}
.layout__main > section.mente .table1 td.map {
  width: 13%;
}
/*----------------------------------------
 *        policy
 *---------------------------------------- */
.policy .midashi2 {
  margin-bottom: 40px;
}
@media only screen and (max-width: 768px) {
  .aplan .midashi2 {
    margin-bottom: 10px;
  }
}
.policy .midashi2 h3 {
  line-height: 1.4;
}
.policy .list3 {
  margin-bottom: 50px;
}
@media only screen and (max-width: 768px) {
  .policy .list3 {
    margin-bottom: 20px;
  }
}
@media only screen and (max-width: 768px) {
  .policy .company__common--text {
    margin-bottom: 30px;
  }
}
.policy .img {
  width: 320px;
  margin: 0 auto;
}


/*----------------------------------------
*  印刷時にURLが表示されるのを防ぐ      
*---------------------------------------- */
@media print {
a[href]:after {
  content: "" !important;
}
abbr[title]:after {
  content: "" !important;
}
}