﻿@charset "UTF-8";
@import url(http://fonts.googleapis.com/earlyaccess/notosansjp.css);
/* reset
================================================== */
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  vertical-align: baseline;
  background: transparent;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none;
}

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
  table-layout: fixed;
}

input, select {
  vertical-align: middle;
}

/* Setting */
html {
  height: auto;
  overflow-y: scroll;
  -webkit-text-size-adjust: 100%;
}

img {
  vertical-align: middle;
  max-width: 100%;
  height: auto;
  width: auto;
}

ul {
  list-style-position: outside;
  list-style-type: none;
}

ol {
  list-style-position: inside;
}

h1, h2, h3, h4, h5, h6 {
  font-size: 1rem;
  font-weight: normal;
}

*:active, *:focus {
  outline: none;
}

h1, h2, h3, h4, h5, h6 {
  font-size: 14px;
  font-weight: normal;
}

/************************************************
    Setting
************************************************ */
* {
  transition: opacity 0.3s ease-out, color 0.3s ease-out, background-color 0.3s ease-out, border-radius 0.3s ease-out, box-shadow 0.3s ease-out, text-shadow 0.3s ease-out, transform 0.3s ease-out;
  -webkit-transition: opacity 0.3s ease-out, color 0.3s ease-out, background-color 0.3s ease-out, border-radius 0.3s ease-out, box-shadow 0.3s ease-out, text-shadow 0.3s ease-out, -webkit-transform 0.3s ease-out;
}

*, *:before, *:after {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

html {
  font-size: 14px;
}

body {
  line-height: 1.8;
  -webkit-text-size-adjust: none;
  font-family: 'Noto Sans JP', sans-serif;
}

/* link */
a {
  text-decoration: none;
  color: #333;
}

a:hover {
  /*text-decoration: underline;*/
}

/* clear */
.cf {
  zoom: 1;
}

.cf, .cf:before {
  content: '';
  display: table;
}

.cf:after {
  clear: both;
}

.clear {
  clear: both;
}

.sp, .tb {
  display: none;
}

/*---------------------------------------
    body
----------------------------------------*/
body {
  color: #333;
  font-size: 16px;
  letter-spacing: 0.06em;
  line-height: 1.7;
}

.inner {
  width: 1000px;
  margin: 0 auto;
}

section {
  padding-bottom: 60px;
}
section h2 {
  background: #333;
  color: #fff;
  font-weight: 900;
  font-size: 26px;
  text-align: center;
  line-height: 60px;
  letter-spacing: 0.2em;
  box-shadow: 0px 2px 7px 0px rgba(0, 0, 0, 0.3);
  position: relative;
  z-index: 2;
  margin-bottom: 40px;
}
section h3 {
  background: #fff;
  border: solid #3b4f64;
  border-width: 1px 20px;
  height: 50px;
  line-height: 50px;
  font-size: 20px;
  font-weight: 900;
  color: #666;
  text-align: center;
  letter-spacing: 0.2em;
  margin-bottom: 20px;
}

.btn a {
  display: block;
  position: relative;
  background: #333;
  color: #fff;
  text-align: center;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: 0.1em;
  line-height: 50px;
  height: 50px;
  width: 360px;
  margin: 0 auto;
  border: 1px solid #333;
}
.btn a:after {
  content: "";
  position: absolute;
  width: 20px;
  height: 20px;
  background: url(../images/arrow_w.png) no-repeat;
  right: 10px;
  top: 0;
  bottom: 0;
  margin: auto;
}
.btn a:hover {
  border: 1px solid #333;
  background: #fff;
  color: #333;
  line-height: 50px;
  height: 50px;
}
.btn a:hover:after {
  background: url(../images/arrow_b.png) no-repeat;
}

.left {
  width: 50%;
  float: left;
  padding-right: 20px;
}

.right {
  width: 50%;
  float: right;
  padding-left: 20px;
}

/*---------------------------------------
    header
----------------------------------------*/
#header {
  padding: 10px 0 0;
}
#header .inner {
  display: table;
  table-layout: fixed;
  padding-bottom: 20px;
}
#header .hTxt {
  display: table-cell;
  vertical-align: top;
  width: 610px;
  font-size: 12px;
  line-height: 1.4;
}
#header .hLink {
  display: table-cell;
  vertical-align: top;
  overflow: hidden;
}
#header .hLink li {
  width: 120px;
  float: left;
  margin-left: 10px;
}
#header .hLink li a {
  display: block;
  position: relative;
  border: 1px solid #333;
  text-align: center;
  font-size: 14px;
  line-height: 30px;
}
#header .hLink li a:after {
  content: "";
  position: absolute;
  width: 5px;
  height: 10px;
  background: url(../images/arrow_s_b.png) no-repeat;
  right: 5px;
  top: 0;
  bottom: 0;
  margin: auto;
}
#header .hLink li a:hover {
  background: #333;
  color: #fff;
}
#header .hLink li a:hover:after {
  background: url(../images/arrow_s_w.png) no-repeat;
}
#header .logo, #header .tit, #header .tel, #header .btn02 {
  display: table-cell;
  vertical-align: middle;
}
#header .logo {
  width: 210px;
}
#header .tit {
  padding: 0 20px;
  font-weight: 700;
  color: #3b4f64;
  line-height: 1.4;
}
#header .tit span {
  font-size: 90%;
}
#header .tel {
  text-align: right;
  font-size: 14px;
  padding-right: 20px;
}
#header .btn02 {
  width: 180px;
}
#header .btn02 a {
  display: block;
  position: relative;
  text-align: center;
  font-size: 16px;
  font-weight: bold;
  color: #fff;
  line-height: 48px;
  border-bottom: 2px solid black;
}
#header .btn02 a:before {
  content: "";
  position: relative;
  display: inline-block;
  width: 30px;
  height: 30px;
  background: url(../images/ico_mail.png) no-repeat;
  top: 8px;
  left: -8px;
}
#header .btn02 a:after {
  content: "";
  position: absolute;
  width: 5px;
  height: 10px;
  background: url(../images/arrow_s_w.png) no-repeat;
  right: 5px;
  top: 0;
  bottom: 0;
  margin: auto;
}
#header .btn02 a:hover {
  opacity: 0.8;
}
#header .btn02 a {
  width: 180px;
  background: #3b4f64;
}
#header .btn03 {
  display: none;
}

#fixHeader {
  display: none;
}

/*---------------------------------------
    gnav
----------------------------------------*/
#gNav ul {
  width: 1000px;
  margin: 0 auto;
  display: table;
}
#gNav ul li {
  display: table-cell;
  vertical-align: middle;
}
#gNav ul li a {
  height: 50px;
  text-align: center;
  line-height: 50px;
  display: block;
  border-right: 1px solid #eee;
  border-top: 2px solid #fff;
  color: #999;
}
#gNav ul li a:hover {
  background: #eee;
  color: #3b4f64;
  font-weight: bold;
  line-height: 50px;
  border-top: 2px solid #3b4f64;
}
#gNav ul li:first-child {
  width: 120px;
}
#gNav ul li:nth-child(2) {
  width: 150px;
}
#gNav ul li:nth-child(3), #gNav ul li:nth-child(4) {
  width: 160px;
}
#gNav ul li:nth-child(5) {
  width: 180px;
}
#gNav ul li:last-child {
  width: 230px;
}
#gNav ul li:last-child a {
  border-right: none;
}

/*---------------------------------------
    mv
----------------------------------------*/
#mvTop01 {
  width: 100%;
  height: 540px;
  overflow: hidden;
  position: relative;
}
#mvTop01 img {
  position: absolute;
  left: 50%;
  margin-left: -960px;
  width: auto;
  max-width: initial;
}

#mvTop02 {
  height: 380px;
  background: url(../images/bgTop_maker.jpg) no-repeat center center;
  background-size: cover;
}
#mvTop02 h2 {
  font-size: 36px;
  font-weight: bold;
  text-align: center;
  line-height: 1;
  padding: 40px 0;
}
#mvTop02 ul {
  width: 1000px;
  margin: 0 auto;
}
#mvTop02 ul li {
  float: left;
  box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.3);
  margin-right: 20px;
}
#mvTop02 ul li:last-child {
  margin: 0;
}
#mvTop02 ul.maker01 {
  margin-bottom: 20px;
}

#mvSub {
  background: url(../images/mvSub.jpg) center center;
  position: relative;
  height: 250px;
}
#mvSub .inner {
  position: absolute;
  top: 50%;
  left: 50%;
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  color: #fff;
}
#mvSub .inner h1 {
  text-align: center;
  font-size: 36px;
  font-weight: 900;
  letter-spacing: 0.1em;
}
#mvSub .inner p {
  margin-top: 30px;
  text-align: center;
}

/*---------------------------------------
    breadCrumb
----------------------------------------*/
#breadCrumb {
  background: #eee;
  font-size: 14px;
  margin-bottom: 60px;
}
#breadCrumb span {
  display: inline-block;
  position: relative;
  line-height: 40px;
  padding: 0 22px 0 18px;
}
#breadCrumb span:after {
  content: "";
  position: absolute;
  background: url(../images/arrow_pankuzu.png) no-repeat center center;
  width: 12px;
  height: 40px;
  right: 0;
}
#breadCrumb span:first-of-type {
  padding-left: 0;
}
#breadCrumb span:last-of-type:after {
  background: none;
}
#breadCrumb span a:hover {
  color: #48739f;
}

/*---------------------------------------
    事例スライダー
----------------------------------------*/
.bx-wrapper {
  max-width: 1000px !important;
}

.caseItem {
  overflow: hidden;
}
.caseItem li {
  padding: 0 10px 20px;
  width: 250px;
  float: left;
}
.caseItem li a {
  display: block;
  background: #eee;
}
.caseItem li a:hover {
  opacity: 0.7;
}
.caseItem li a .txtClm {
  font-size: 14px;
}
.caseItem li a .txtClm .cate {
  position: relative;
  height: 20px;
}
.caseItem li a .txtClm .cate li {
  width: 75px;
  vertical-align: middle;
  text-align: center;
  font-size: 12px;
  color: #fff;
  letter-spacing: 0;
  padding: 0;
  position: absolute;
  top: 0;
}
.caseItem li a .txtClm .cate li.seibi {
  background: #48739f;
  left: 0;
}
.caseItem li a .txtClm .cate li.bankin {
  background: #986932;
  left: 77px;
}
.caseItem li a .txtClm .cate li.coat {
  width: 76px;
  background: #907294;
  letter-spacing: -0.05em;
  left: 154px;
}
.caseItem li a .txtClm dl {
  padding: 10px 20px;
  border-bottom: 1px dotted #ccc;
  line-height: 1.4;
}
.caseItem li a .txtClm dl dt {
  font-weight: bold;
}
.caseItem li a .txtClm .title {
  padding: 10px 20px;
}

.caseItem li:nth-child(4n){
 padding-bottom: 21px;
}

/*---------------------------------------
    事例探す メーカー
----------------------------------------*/
#maker {
  width: 100%;
}
#maker .left {
  width: 50%;
  padding: 0 20px 60px;
  float: left;
}
#maker .right {
  width: 50%;
  padding: 0 20px 60px;
  float: right;
}
#maker .makerList {
  width: 100%;
}
#maker .makerList li h4 {
  background: #ddd;
  width: 100%;
  display: table;
  font-size: 16px;
  text-align: left;
  padding: 5px;
  position: relative;
  border-bottom: 1px solid #bbb;
}
#maker .makerList li h4 .makerLogo {
  display: table-cell;
  width: 70px;
  padding-right: 10px;
}
#maker .makerList li h4:after {
  position: absolute;
  content: "";
  background: url(../images/arrow_b.png);
  width: 20px;
  height: 20px;
  right: 10px;
  top: 0;
  bottom: 0;
  margin: auto;
  transform: rotate(90deg);
}
#maker .makerList li h4.open {
  -moz-transition-delay: 2s;
  -o-transition-delay: 2s;
  -webkit-transition-delay: 2s;
  transition-delay: 2s;
}
#maker .makerList li h4.open:after {
  transform: rotate(-90deg);
}
#maker .makerList li .childCate {
  display: none;
  background: #fff;
  padding: 10px 20px;
  border: 1px solid #ccc;
  border-bottom: none;
}
#maker .makerList li .childCate li {
  margin-bottom: 5px;
}
#maker .makerList li .childCate li a {
  font-size: 14px;
  position: relative;
  padding-left: 25px;
}
#maker .makerList li .childCate li a:before {
  content: "";
  position: absolute;
  background: url(../images/arrow_b_s.png);
  width: 15px;
  height: 15px;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}
#maker .makerList li .childCate li a:hover {
  text-decoration: underline;
}
#maker .makerList li:last-child .childCate {
  border-bottom: 1px solid #ccc;
}

#category ul {
  width: 100%;
  display: table;
  table-layout: fixed;
}
#category ul li {
  display: table-cell;
  width: 25%;
  padding: 0 10px;
}
#category ul li a {
  height: 60px;
  line-height: 60px;
  width: auto;
}
#category ul li:nth-child(1) a {
  background: #fff;
  color: #48739f;
  border-color: #48739f;
}
#category ul li:nth-child(1) a:after {
  background: url(../images/arrow_bl.png);
}
#category ul li:nth-child(1) a:hover {
  background: #48739f;
  border-color: #48739f;
  color: #fff;
}
#category ul li:nth-child(1) a:hover:after {
  background: url(../images/arrow_w.png);
}
#category ul li:nth-child(2) a {
  background: #fff;
  color: #986932;
  border-color: #986932;
}
#category ul li:nth-child(2) a:after {
  background: url(../images/arrow_y.png);
}
#category ul li:nth-child(2) a:hover {
  background: #986932;
  border-color: #986932;
  color: #fff;
}
#category ul li:nth-child(2) a:hover:after {
  background: url(../images/arrow_w.png);
}
#category ul li:nth-child(3) a {
  background: #fff;
  color: #907294;
  border-color: #907294;
}
#category ul li:nth-child(3) a:after {
  background: url(../images/arrow_p.png);
}
#category ul li:nth-child(3) a:hover {
  background: #907294;
  border-color: #907294;
  color: #fff;
}
#category ul li:nth-child(3) a:hover:after {
  background: url(../images/arrow_w.png);
}
#category ul li:nth-child(4) a {
  background: #fff;
  color: #333;
}
#category ul li:nth-child(4) a:after {
  background: url(../images/arrow_b.png);
}
#category ul li:nth-child(4) a:hover {
  background: #333;
  border-color: #333;
  color: #fff;
}
#category ul li:nth-child(4) a:hover:after {
  background: url(../images/arrow_w.png);
}

.case-inspection_cat {
  margin-top: 60px;
}
.case-inspection_cat ul li {
  width: 24%;
  margin-bottom: 10px;
}
.case-inspection_cat ul li a {
  background: #ddd;
  width: 100%;
  display: table;
  font-size: 14px;
  padding: 10px;
  position: relative;
  color: #333;
  border: none;
  line-height: 1.25;
  height: auto;
  padding: 20px;
  text-align: left;
}
.case-inspection_cat ul li a:hover {
  opacity: .5;
  border: none;
  background: #ddd;
  line-height: 1.25;
  height: auto;
}
.case-inspection_cat ul li a::after {
  position: absolute;
  content: "";
  background: url(../images/arrow_b.png);
  width: 20px;
  height: 20px;
  right: 10px;
  top: 0;
  bottom: 0;
  margin: auto;
}

/*---------------------------------------
    pager
----------------------------------------*/
.pager {
  display: table;
  table-layout: fixed;
  width: 100%;
  margin-bottom: 40px;
}
.pager .count, .pager .page, .pager .order {
  display: table-cell;
  vertical-align: middle;
}
.pager .order {
  text-align: right;
}
.pager .order a:hover {
  text-decoration: underline;
}

.page {
  text-align: center;
}
.page .wp-pagenavi .current {
  display: inline-block;
  margin-left: 5px;
  width: 40px;
  height: 40px;
  border: 1px #3b4f64 solid;
  color: #3b4f64;
  background: #eee;
  text-align: center;
  line-height: 38px;
  vertical-align:middle;
  padding:0;
}
.page .wp-pagenavi a {
  display: inline-block;
  margin-left: 5px;
  width: 40px;
  height: 40px;
  border: 1px #3b4f64 solid;
  color: #3b4f64;
  background: #fff;
  font-weight: bold;
  text-decoration: none;
  text-align: center;
  line-height: 38px;
  vertical-align:middle;
  padding:0;
}
.page .wp-pagenavi a:hover {
  background: #eee;
}
.page .wp-pagenavi a.nextpostslink, .page .wp-pagenavi a.previouspostslink {
  background: #3b4f64;
  color: #fff;
}
.page .wp-pagenavi a.nextpostslink:hover, .page .wp-pagenavi a.previouspostslink:hover {
  opacity: 0.8;
}

/*---------------------------------------
    top
----------------------------------------*/
#topSec01 .btn {
  margin: 10px auto 0;
}

#topSec02 {
  background: url(../images/bg.png);
}
#topSec02 h3 + p {
  text-align: center;
  margin-bottom: 40px;
}

#topSec03 {
  width: 100%;
}
#topSec03 .foto {
  float: left;
  width: 50%;
}
#topSec03 .foto img {
  width: 100%;
}
#topSec03 .txtClm {
  float: left;
  width: 50%;
}
#topSec03 .txtClm .inner {
  width: 500px;
  margin: 0;
  padding: 20px 0 20px 20px;
  text-align: justify;
}
#topSec03 .txtClm .inner p {
  margin-bottom: 40px;
}

#topSec04 {
  background: url(../images/bg.png);
}
#topSec04 li {
  margin-bottom: 40px;
  height: 200px;
  padding-top: 30px;
}
#topSec04 li h3 {
  background: none;
  border: none;
  color: #fff;
  font-size: 36px;
  font-weight: 900;
  line-height: 1;
  position: relative;
  margin-bottom: 10px;
}
#topSec04 li h3:after {
  content: "";
  position: absolute;
  background: #fff;
  width: 530px;
  height: 1px;
  bottom: 0px;
  left: 0;
  right: 0;
  margin: auto;
}
#topSec04 li h3 + p {
  text-align: center;
  color: #fff;
  line-height: 1;
  margin-bottom: 20px;
}
#topSec04 li:nth-child(1) {
  background: url(../images/bgBnr_top01.jpg) no-repeat;
}
#topSec04 li:nth-child(2) {
  background: url(../images/bgBnr_top02.jpg) no-repeat;
}
#topSec04 li:nth-child(3) {
  background: url(../images/bgBnr_top03.jpg) no-repeat;
}

#topSec05, #commonSec {
  padding: 30px 0 60px;
}
#topSec05 .inner, #commonSec .inner {
  overflow: hidden;
}
#topSec05 h2, #commonSec h2 {
  background: #fff;
  border: solid #3b4f64;
  border-width: 1px 20px;
  height: 50px;
  line-height: 50px;
  font-size: 20px;
  font-weight: 900;
  color: #666;
  text-align: center;
  letter-spacing: 0.2em;
  margin-bottom: 20px;
  box-shadow: none;
}
#topSec05 #news .txtBox, #commonSec #news .txtBox {
  background: #f5f5f5;
  border: 1px solid #ccc;
  height: 240px;
  padding: 20px;
  text-align: justify;
  margin-bottom: 20px;
  overflow-y: scroll;
}
#topSec05 #news .txtBox li, #commonSec #news .txtBox li {
  border-bottom: 1px dashed #ccc;
  padding: 10px 0;
}
#topSec05 #news .txtBox li a, #commonSec #news .txtBox li a {
  text-decoration: underline;
}
#topSec05 #news .txtBox li a:hover, #commonSec #news .txtBox li a:hover {
  text-decoration: none;
}
#topSec05 #area p, #commonSec #area p {
  margin-bottom: 20px;
  text-align: center;
}

/*---------------------------------------
    inquirySection(170119追加)
----------------------------------------*/
#inquirySec .inner{
  background: url(../images/bg02.png);
  border: solid 1px #333;
  padding: 30px 40px 0px 40px;
}

#inquirySec .center{
  margin: 40px auto;
}
#inquirySec .mainText{
  font-size: 18px;
}

#inquirySec .block{
  display: block;
  text-align: center;
}

#inquirySec .btn02, #inquirySec .tel{
  float: left;
  padding: 0px 12px 12px 12px;
}

#inquirySec .btn02 a{
  width: 220px;
  background: #3b4f64;
  display: block;
  position: relative;
  text-align: center;
  font-size: 16px;
  font-weight: bold;
  color: #fff;
  line-height: 48px;
  border-bottom: 2px solid black;
}


#inquirySec .btn02 a:before {
    content: "";
    position: relative;
    display: inline-block;
    width: 30px;
    height: 30px;
    background: url(../images/ico_mail.png) no-repeat;
    top: 8px;
    left: -8px;
}

#inquirySec .btn02 a:after {
    content: "";
    position: absolute;
    width: 5px;
    height: 10px;
    background: url(../images/arrow_s_w.png) no-repeat;
    right: 5px;
    top: 0;
    bottom: 0;
    margin: auto;
}

#inquirySec .tel{
  text-align: right;
  font-size: 14px;
  padding-right: 20px;
}

#inquirySec .btn02, #inquirySec .tel {
  display: table-cell;
  vertical-align: middle;
}

#inquirySec .youtube {
  display: block;
  width: fit-content;
  margin: 0 auto 50px;
}



/*---------------------------------------
    commonSection
----------------------------------------*/
#commonSec {
  background: url(../images/bg02.png);
}
#commonSec #cta h2 {
  border-color: #e76132;
}
#commonSec #cta h2 + p {
  text-align: justify;
}
#commonSec #cta .telBox {
  margin: 30px 0;
  display: table;
}
#commonSec #cta .telBox .logo, #commonSec #cta .telBox .tel {
  display: table-cell;
  vertical-align: top;
}
#commonSec #cta .telBox .tel {
  padding-left: 10px;
  text-align: right;
}
#commonSec #cta .btn02 a {
  display: block;
  position: relative;
  text-align: center;
  font-size: 16px;
  font-weight: bold;
  color: #fff;
  line-height: 48px;
  border-bottom: 2px solid black;
}
#commonSec #cta .btn02 a:before {
  content: "";
  position: relative;
  display: inline-block;
  width: 30px;
  height: 30px;
  background: url(../images/ico_mail.png) no-repeat;
  top: 8px;
  left: -8px;
}
#commonSec #cta .btn02 a:after {
  content: "";
  position: absolute;
  width: 5px;
  height: 10px;
  background: url(../images/arrow_s_w.png) no-repeat;
  right: 5px;
  top: 0;
  bottom: 0;
  margin: auto;
}
#commonSec #cta .btn02 a:hover {
  opacity: 0.8;
}
#commonSec #cta .btn02 a {
  background: #e76132;
  border-bottom: 2px solid #a03713;
}

#commonSec #cta .btn03 a {
  display: block;
  position: relative;
  text-align: center;
  font-size: 16px;
  font-weight: bold;
  color: #fff;
  line-height: 48px;
  border-bottom: 2px solid black;
  margin-top: 5px;
}

#commonSec #cta .btn03 a:before {
  content: "";
  position: relative;
  display: inline-block;
  width: 30px;
  height: 30px;
  background: url(../images/ico_line.png) no-repeat;
  background-size: cover;
  top: 8px;
  left: -8px;
}

#commonSec #cta .btn03 a:after {
  content: "";
  position: absolute;
  width: 5px;
  height: 10px;
  background: url(../images/arrow_s_w.png) no-repeat;
  right: 5px;
  top: 0;
  bottom: 0;
  margin: auto;
}

#commonSec #cta .btn03 a:hover {
  opacity: 0.8;
}
#commonSec #cta .btn03 a {
  background: #00b900;
  border-bottom: 2px solid #0a770a;
}

#commonSec #cta .btn04 {
  margin-top: 5px;
}

#commonSec #cta .btn04 a {
  display: block;
}

/*カレンダーの・を消すため追記_20161219*/
#commonSec #calender li{
  list-style-type: none;
}


/*---------------------------------------
    footer
----------------------------------------*/
#footer {
  padding: 30px 0 60px;
  background: #333;
  color: #fff;
  font-size: 14px;
}
#footer a {
  color: #fff;
}
#footer .inner {
  margin-bottom: 60px;
  display: table;
  table-layout: fixed;
}
#footer .inner h2 {
  font-size: 18px;
  font-weight: bold;
  letter-spacing: 0.2em;
  border-bottom: 1px solid #48739f;
  border-left: 10px solid #48739f;
  padding-left: 10px;
  line-height: 30px;
  margin-bottom: 30px;
}
#footer .inner #companyInfo, #footer .inner #shopInfo, #footer .inner #group {
  display: table-cell;
  vertical-align: top;
}
#footer .inner #companyInfo, #footer .inner #group {
  width: 240px;
}
#footer .inner #shopInfo {
  padding: 0 40px;
}
#footer .inner #shopInfo li {
  display: table;
  table-layout: fixed;
  margin-bottom: 20px;
}
#footer .inner #shopInfo li .imgClm, #footer .inner #shopInfo li .txtClm {
  display: table-cell;
  vertical-align: middle;
}
#footer .inner #shopInfo li .imgClm {
  width: 110px;
}
#footer .inner #shopInfo li .txtClm {
  padding-left: 20px;
  line-height: 1.4;
}
#footer .inner #group {
  line-height: 1;
}
#footer .inner #group li {
  margin-bottom: 15px;
}
#footer .inner #group a:hover {
  text-decoration: underline;
}
#footer #siteMap {
  margin-bottom: 0;
}
#footer #siteMap ul {
  margin-bottom: 10px;
}
#footer #siteMap ul li {
  display: inline-block;
  margin-right: 20px;
}
#footer #siteMap ul li a:hover {
  text-decoration: underline;
}

#copy {
  text-align: center;
  font-size: 14px;
  line-height: 50px;
}

.goTop {
  position: fixed;
  z-index: 999;
  right: 50px;
  bottom: 50px;
}


/*---------------------------------------
    sub
----------------------------------------*/
.sub #topSec02 {
  background: none;
}

.box {
  display: table;
  table-layout: fixed;
  width: 100%;
}
.box .txtClm, .box .imgClm {
  display: table-cell;
  vertical-align: top;
}
.box .imgClm {
  text-align: right;
}

.trouble {
  display: table;
  table-layout: fixed;
  width: 100%;
  padding: 20px;
  margin-bottom: 20px;
}
.trouble h4 {
  display: table-cell;
  vertical-align: middle;
  width: 200px;
  font-size: 22px;
  font-weight: 900;
  text-align: center;
  color: #7499c0;
  position: relative;
  padding-top: 50px;
}
.trouble h4 span {
  display: inline-block;
  background: linear-gradient(rgba(0, 0, 0, 0) 70%, #dbe057 70%);
  line-height: 1.3;
}
.trouble h4:before {
  content: "";
  background: url(../images/icon_face.png) no-repeat center center;
  width: 48px;
  height: 49px;
  position: absolute;
  left: 0;
  right: 0;
  margin: -50px auto;
  display: block;
}
.trouble ul {
  overflow: hidden;
  display: table-cell;
  vertical-align: middle;
}
.trouble ul li {
  float: left;
  font-size: 14px;
  padding-left: 20px;
}
.trouble ul li:nth-child(odd) {
  width: 350px;
}
.trouble ul li:nth-child(even) {
  width: 410px;
}
.trouble:nth-of-type(odd) {
  background: url(../images/bg.png);
}
.trouble:nth-of-type(even) {
  background: url(../images/bg03.png);
}
.trouble:last-of-type {
  margin-bottom: 0;
}

/*---------------------------------------
    case-list
----------------------------------------*/
#caseListSec01 .caseItem {
  margin-bottom: 20px;
}
#caseListSec01 .btn {
  padding-top: 20px;
}

/*---------------------------------------
    case-single
----------------------------------------*/
#carData h2 {
  font-size: 18px;
  font-weight: 900;
  color: #fff;
  background: #3b4f64;
  letter-spacing: 0.2em;
  padding: 15px 20px;
}
#carData .box {
  background: url(../images/bg.png);
  padding: 20px;
  margin-bottom: 60px;
}
#carData .box .imgClm {
  width: 460px;
}
#carData .box .txtClm {
  padding-left: 40px;
}
#carData .box .txtClm .cate {
  overflow: hidden;
  height: 30px;
  margin-bottom: 20px;
}
#carData .box .txtClm .cate li {
  width: 100px;
  float: left;
  text-align: center;
  font-size: 14px;
  color: #fff;
  letter-spacing: 0;
  line-height: 30px;
  padding: 0;
  margin-right: 10px;
}
#carData .box .txtClm .cate li.seibi {
  background: #48739f;
}
#carData .box .txtClm .cate li.bankin {
  background: #986932;
}
#carData .box .txtClm .cate li.coat {
  background: #907294;
}
#carData .box .txtClm dl {
  display: table;
  table-layout: fixed;
  width: 100%;
  padding: 15px 0;
  border-bottom: 1px dotted #ccc;
}
#carData .box .txtClm dl:last-of-type {
  border-bottom: none;
  padding-bottom: 0;
}
#carData .box .txtClm dl dt, #carData .box .txtClm dl dd {
  display: table-cell;
  vertical-align: top;
}
#carData .box .txtClm dl dt {
  font-weight: bold;
  width: 110px;
}

#caseSingleSec01 ul li {
  display: table;
  table-layout: fixed;
  width: 100%;
  margin-bottom: 70px;
  position: relative;
}
#caseSingleSec01 ul li .imgClm {
  width: 480px;
  display: table-cell;
  vertical-align: top;
}
#caseSingleSec01 ul li .txtClm {
  width: 520px;
  padding-left: 20px;
  display: table-cell;
  vertical-align: top;
}
#caseSingleSec01 ul li .txtClm h3 {
  background: none;
  border: none;
  text-align: left;
  color: #333;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.06em;
  margin-bottom: 0;
  width: 100%;
  display: table;
  vertical-align: middle;
  background: #eee;
  font-weight: bold;
  padding: 0 20px;
  margin-bottom: 10px;
}
#caseSingleSec01 ul li .txtClm h3 .step {
  display: table-cell;
  vertical-align: middle;
  font-size: 24px;
  color: #48739f;
  width: 110px;
}
#caseSingleSec01 ul li .txtClm h3 b {
  font-size: 36px;
  color: #48739f;
}
#caseSingleSec01 ul li .txtClm h3 .tit {
  font-size: 20px;
  display: table-cell;
  vertical-align: middle;
}
#caseSingleSec01 ul li:after {
  content: "";
  background: url(../images/arrow_caseFlow.png);
  width: 60px;
  height: 30px;
  position: absolute;
  bottom: -50px;
  left: 210px;
}
#caseSingleSec01 ul li:last-child {
  margin-bottom: 0;
}
#caseSingleSec01 ul li:last-child:after {
  background: none;
}

#caseSingleSec02 {
  text-align: left;
}
#caseSingleSec02 p {
  margin-top: 20px;
}
#caseSingleSec02 p:first-of-type {
  margin-top: 0;
}
#caseSingleSec02 img {
  margin-top: 40px;
}

.btn.mb60 {
  margin-bottom: 60px;
}

/*---------------------------------------
    sheetmetal
----------------------------------------*/
#sheetmetalSec01 .red {
  background: none;
  border: none;
  text-align: left;
  color: #333;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.06em;
  margin-bottom: 0;
  color: #e76132;
  font-size: 24px;
  font-weight: 900;
  letter-spacing: 0.1em;
  text-align: center;
  margin-bottom: 40px;
}
#sheetmetalSec01 .kodawariBox {
  display: table;
  table-layout: fixed;
  width: 100%;
  margin-bottom: 60px;
}
#sheetmetalSec01 .kodawariBox li {
  display: table-cell;
  vertical-align: top;
  width: 320px;
}
#sheetmetalSec01 .kodawariBox li h4 {
  line-height: 1;
  margin: 20px 0;
  font-size: 18px;
  font-weight: bold;
  color: #3b4f64;
  text-align: center;
  letter-spacing: 0.1em;
}
#sheetmetalSec01 .kodawariBox li .txtClm {
  text-align: justify;
  padding: 0 10px;
}
#sheetmetalSec01 .kodawariBox li:nth-child(2) {
  width: 360px;
  padding: 0 20px;
}
#sheetmetalSec01 .box {
  margin-bottom: 60px;
}
#sheetmetalSec01 .box .txtClm {
  width: 520px;
  padding-right: 40px;
  text-align: justify;
}
#sheetmetalSec01 .box .txtClm p {
  margin-top: 40px;
}
#sheetmetalSec01 .box .txtClm p:first-of-type {
  margin-top: 0;
}


#sheetmetalSec01 .sheetmetal-price .txtClm h4 {
  font-size: 18px;
  font-weight: bold;
  letter-spacing: 0.2em;
  border-bottom: 1px solid #48739f;
  border-left: 10px solid #48739f;
  padding-left: 10px;
  line-height: 30px;
  margin-bottom: 30px;
  margin-bottom: 20px;
}
#sheetmetalSec01 .sheetmetal-price .txtClm .sheetmetal-price-detail {
  background-color: #e76132;
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  padding: 10px 20px;
  margin-top: 20px;
  letter-spacing: 0.15em;
}
#sheetmetalSec01 .sheetmetal-price .txtClm .sheetmetal-price-suggestion {
  font-size: 18px;
  text-align: left;
  margin-bottom: -20px;
  margin-top: 20px;
  letter-spacing: 0.2em;
}
#sheetmetalSec01 .sheetmetal-price:nth-child(even) .txtClm {
  padding-right: 0;
  padding-left: 40px;
}

#sheetmetalSec01 .sheetmetal-reason-img {
  margin-top: -30px;
  margin-bottom: 20px;
}
#sheetmetalSec01 .sheetmetal-reason {
  margin-top: 30px;
}
#sheetmetalSec01 .sheetmetal-reason .txtClm h4 {
  font-size: 18px;
  font-weight: bold;
  letter-spacing: 0.2em;
  border-bottom: 1px solid #48739f;
  border-left: 10px solid #48739f;
  padding-left: 10px;
  line-height: 30px;
  margin-bottom: 30px;
  margin-bottom: 20px;
}

#sheetmetalSec01 .sheetmetal-partner {
  font-size: 20px;
  margin-bottom: 30px;
  letter-spacing: 0.15em;
  font-weight: bold;
}
#sheetmetalSec01 .sheetmetal-partner-img {
  border: 1px solid #ccc;
  padding: 20px;
  margin-bottom: 40px;
  text-align: center;
}
#sheetmetalSec01 .sheetmetal-partner-img h3 {
  background: none;
    border: none;
    color: #333;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.06em;
    margin-bottom: 0;
    letter-spacing: 0.2em;
    color: #3b4f64;
    padding: 0px 20px 0px 60px;
    position: relative;
    margin-bottom: 30px;
}
#sheetmetalSec01 .sheetmetal-partner-img h3::before {
  content: "";
  background: url(../images/icon_tool.png) center center;
    height: 30px;
    width: 30px;
    position: absolute;
    left: 390px;
}

#sheetmetalSec01 .sheetmetal-quality:nth-child(even) .txtClm {
  padding-right: 0;
  padding-left: 40px;
}

#sheetmetalSec01 .sheetmetal-report .txtClm {
  padding-right: 0;
  padding-left: 40px;
}
#sheetmetalSec01 .sheetmetal-total {
  font-size: 20px;
  margin-bottom: 30px;
  font-weight: bold;
  text-align: center;
}
#sheetmetalSec01 ul.sheetmetal-total-detail {
  display: flex;
  margin-bottom: 30px;
}
#sheetmetalSec01 ul.sheetmetal-total-detail li {
  width: 33%;
  float: none;
  margin: 0 10px 0;
}
#sheetmetalSec01 ul.sheetmetal-total-detail li h3 {
  height: 90px;
  letter-spacing: 0;
}
#sheetmetalSec01 .sheetmetal-total-img {
  margin-bottom: 20px;
}
#sheetmetalSec01 .sheetmetal-total-message {
  width: 70%;
  margin: 0 auto;
}



/*---------------------------------------
    maintenance
----------------------------------------*/
#maintenanceSec01 .red {
  background: none;
  border: none;
  text-align: left;
  color: #333;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.06em;
  margin-bottom: 0;
  color: #e76132;
  font-size: 24px;
  font-weight: 900;
  letter-spacing: 0.1em;
  text-align: center;
  margin-bottom: 20px;
}
#maintenanceSec01 .red + p {
  margin-bottom: 40px;
}
#maintenanceSec01 .box {
  margin-bottom: 60px;
}
#maintenanceSec01 .trouble h4 {
  width: 220px;
}
#maintenanceSec01 .trouble ul li:nth-child(odd) {
  width: 330px;
}
#maintenanceSec01 .trouble ul li:nth-child(even) {
  width: 410px;
}

#maintenanceSec02 p {
  margin-bottom: 30px;
}
#maintenanceSec02 p b {
  color: #e76132;
}
#maintenanceSec02 .box {
  margin-bottom: 60px;
}
#maintenanceSec02 .box h4 {
  font-size: 18px;
  font-weight: bold;
  letter-spacing: 0.2em;
  border-bottom: 1px solid #48739f;
  border-left: 10px solid #48739f;
  padding-left: 10px;
  line-height: 30px;
  margin-bottom: 30px;
  margin-bottom: 20px;
}
#maintenanceSec02 .box h4 span {
  font-size: 14px;
}
#maintenanceSec02 .box:nth-of-type(3) {
  margin-bottom: 0;
}


/* 2022/1/16追加 */
.flex {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.maintenance-index h3.red {
  background: none;
  border: none;
  line-height: 1.5;
  color: #e76132;
  font-size: 24px;
  font-weight: 900;
  letter-spacing: 0.1em;
  text-align: center;
  margin-bottom: 40px;
}
.maintenance-index ul {
  justify-content: space-evenly;
}
.maintenance-index ul li {
  width: 25%;
}
.maintenance-index ul li a {
  background: #ddd;
  display: block;
  width: 100%;
  display: table;
  font-size: 16px;
  text-align: center;
  padding: 10px;
  position: relative;
}
.maintenance-index ul li a:after {
  position: absolute;
  content: "";
  background: url(../images/arrow_b.png);
  width: 20px;
  height: 20px;
  right: 10px;
  top: 0;
  bottom: 0;
  margin: auto;
  transform: rotate(90deg);
}
.maintenance-index ul li a:hover {
  opacity: .5;
}
.maintenance-inspection h3 {
  font-size: 20px;
  margin-bottom: 30px;
  letter-spacing: 0.15em;
  font-weight: bold;
  background: none;
  border: none;
  height: auto;
  line-height: 1.7;
  color: #333;
}
.maintenance-inspection .flex p,
.maintenance-inspection .flex ul {
  width: 49%;
}
.maintenance-inspection .flex ul li {
  width: 48%;
  font-size: 20px;
  text-align: center;
  font-weight: bold;
  background-color: #f3f2ea;
  margin-bottom: 10px;
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 1.25;
  position: relative;
  z-index: 999;
}
.maintenance-inspection .flex ul li::after {
  content: '○';
  font-size: 70px;
  position: absolute;
  top: -5px;
  left: 35%;
  color: rgba(204,204,204.5);
  font-weight: bold;
  z-index: -1;
}
.maintenance-inspection-motto {
  background-color: #ebeef3;
  padding-top: 40px;
  margin-bottom: 60px;
}
.maintenance-inspection-motto h3.red {
  background: none;
  border: none;
  line-height: 1.5;
  color: #e76132;
  font-size: 24px;
  font-weight: 900;
  letter-spacing: 0.1em;
  text-align: center;
  margin-bottom: 40px;
}
.maintenance-inspection-motto .flex div,
.maintenance-inspection-motto .flex p {
  width: 49%;
}
.maintenance-inspection-worry {
  background-color: #f3f2ea;
  width: 63%;
  padding: 30px 40px;
  margin: 0 auto 30px;
}
.maintenance-inspection-worry .imgClm {
  display: flex;
  justify-content: center;
  align-items: center;
}
.maintenance-inspection-free {
  margin-bottom: 60px;
}
.maintenance-inspection-free p {
  font-size: 20px;
  color: #333;
  font-weight: bold;
  line-height: 1.5;
  width: 85%;
  margin: 0 auto;
}
.maintenance-inspection-free p span {
  color: #e76132;
  font-size: 24px;
}
.maintenance-inspection-case {
  margin-bottom: 60px;
}
.maintenance-inspection-case .box:not(:last-of-type) {
  margin-bottom: 40px;
}
.maintenance-inspection-case h4 {
  font-size: 18px;
  font-weight: bold;
  letter-spacing: 0.2em;
  border-bottom: 1px solid #48739f;
  border-left: 10px solid #48739f;
  padding-left: 10px;
  line-height: 30px;
  margin-bottom: 20px;
}
.maintenance-inspection-case .txtClm,
.maintenance-inspection-case .imgClm {
  width: 49%;
}
.maintenance-inspection-case .txtClm p:first-of-type {
  margin-bottom: 40px;
}
.maintenance-inspection-list {
  margin-bottom: 60px;
}
.maintenance-inspection-list p {
  margin-bottom: 40px;
}
.maintenance-inspection-list p b {
  font-weight: bold;
  color: #e76132;
}
.maintenance-inspection-list .imgClm img {
  width: 49%;
}
.maintenance-inspection-fee {
  margin-bottom: 60px;
}
.maintenance-inspection-fee h4 {
  font-size: 20px;
  margin-bottom: 20px;
  letter-spacing: 0.15em;
  font-weight: bold;
  background: none;
  border: none;
  height: auto;
  line-height: 1.7;
  color: #333;
}
.maintenance-inspection-fee p {
  margin-bottom: 40px;
}
.maintenance-inspection-fee table {
  width: 100%;
  margin-bottom: 40px;
}
.maintenance-inspection-fee table tr th,
.maintenance-inspection-fee table tr td {
  border-right: 1px solid #fff;
}
.maintenance-inspection-fee table tr:not(:last-of-type) {
  border-bottom: 1px solid #fff;
}
.maintenance-inspection-fee table tr:first-of-type th {
  background-color: #3c4f64 !important;
  color: #fff !important;
  font-weight: bold !important;
  font-size: 18px !important;
  line-height: 1.25  !important;
  vertical-align: middle !important;
}
.maintenance-inspection-fee table tr:nth-of-type(even) {
  background-color: #f3f2ea;
}
.maintenance-inspection-fee table tr:nth-of-type(odd) {
  background-color: #ebeef3;
}
.maintenance-inspection-fee table tr:first-of-type th {
  padding: 10px !important;
}
.maintenance-inspection-fee table tr:nth-of-type(2) {
  background-color: #fff !important;
}
.maintenance-inspection-fee table tr:nth-of-type(2) td {
  padding: 10px !important;
}
.maintenance-inspection-fee table tr:nth-of-type(even) th,
.maintenance-inspection-fee table tr:nth-of-type(odd) th {
  font-size: 18px;
  font-weight: bold;
  padding: 20px;
}
.maintenance-inspection-fee table tr:nth-of-type(even) td,
.maintenance-inspection-fee table tr:nth-of-type(odd) td {
  text-align: right;
  padding: 20px;
}
.maintenance-inspection-fee table tr:last-of-type {
  background-color: #e76132;
}
.maintenance-inspection-fee table tr:last-of-type th,
.maintenance-inspection-fee table tr:last-of-type td {
  color: #fff;
  font-weight: bold;
}
.maintenance-inspection-fee table tr th.scale {
  width: 24%;
}
.maintenance-inspection-report .txtClm,
.maintenance-inspection-report .imgClm {
  width: 49%;
}
.maintenance-maintenance h3 {
  font-size: 24px;
  margin-bottom: 30px;
  letter-spacing: 0.15em;
  font-weight: bold;
  background: none;
  border: none;
  height: auto;
  line-height: 1.25;
  color: #333;
}
.maintenance-maintenance h3 span {
  font-size: 18px;
}
.maintenance-maintenance .flex p,
.maintenance-maintenance .flex ul {
  width: 49%;
}
.maintenance-maintenance .flex ul li {
  width: 48%;
  font-size: 20px;
  text-align: center;
  font-weight: bold;
  background-color: #f3f2ea;
  margin-bottom: 10px;
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 1.25;
  position: relative;
  z-index: 999;
}
.maintenance-maintenance .flex ul li::after {
  content: '○';
  font-size: 70px;
  position: absolute;
  top: 0;
  left: 35%;
  color: rgba(204,204,204.5);
  font-weight: bold;
  z-index: -1;
}
.maintenance-certification {
  background-color: #ebeef3;
  padding-top: 40px;
  margin-bottom: 60px;
}
.maintenance-certification h3.red {
  background: none;
  border: none;
  line-height: 1.5;
  color: #e76132;
  font-size: 24px;
  font-weight: 900;
  letter-spacing: 0.1em;
  text-align: center;
  margin-bottom: 40px;
  height: auto;
}
.maintenance-certification .flex {
  margin-bottom: 40px;
}
.maintenance-certification .flex .imgClm,
.maintenance-certification .flex p {
  width: 49%;
}
.maintenance-certification .inner > p {
  font-weight: bold;
  text-align: center;
  font-size: 20px;
  padding: 30px;
  background-color: #fff;
  border: 1px solid #ccc;
}
.maintenance-menu .flex > .imgClm,
.maintenance-menu .flex > p {
  width: 49%;
}
.maintenance-menu .flex {
  margin-bottom: 40px;
}
.maintenance-menu h4 {
  font-size: 20px;
  text-align: center;
  margin-bottom: 30px;
  font-weight: bold;
}
.maintenance-menu ul.flex li {
  width: 33%;
  border: 1px solid #ccc;
  padding-bottom: 20px;
}
.maintenance-menu ul.flex li h3 {
  background: none;
  border: none;
  text-align: left;
  color: #333;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.06em;
  margin-bottom: 0;
  font-size: 18px;
  letter-spacing: 0.2em;
  color: #3b4f64;
  padding: 20px 20px 20px 60px;
  position: relative;
  height: 70px;
}
.maintenance-menu ul.flex li h3:before {
  content: "";
  background: url(../images/icon_tool.png) center center;
  height: 30px;
  width: 30px;
  position: absolute;
  left: 20px;
}
.maintenance-menu ul.flex li p {
  width: 80%;
  margin: 0 auto;
}
.maintenance-partner {
  padding-top: 40px;
  background-color: #ebeef3;
  margin-bottom: 60px;
}
.maintenance-partner .flex > .imgClm {
  width: 34%;
}
.maintenance-partner .flex > p {
  width: 63%;
}
.maintenance-other h4 {
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 30px;
  text-align: center;
}
.maintenance-other .inner ul.flex:first-of-type {
  margin-bottom: 40px;
}
.maintenance-other ul li {
  width: 33%;
  border: 1px solid #ccc;
}
.maintenance-other ul li h3 {
  background: none;
  border: none;
  text-align: left;
  color: #333;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.5;
  margin-bottom: 0;
  font-size: 18px;
  color: #3b4f64;
  padding: 20px 20px 20px 60px;
  position: relative;
  height: 90px;
  letter-spacing: 0;
}
.maintenance-other ul li h3:before {
  content: "";
  background: url(../images/icon_heart.png) center center;
  height: 30px;
  width: 30px;
  position: absolute;
  left: 20px;
}
.maintenance-other ul li .txtClm {
  padding: 20px;
}









/*---------------------------------------
    coating
----------------------------------------*/
#coatingSec01 p {
  margin-bottom: 30px;
}
#coatingSec01 p.last {
  margin-bottom: 60px;
}
#coatingSec01 #coatingFlow {
  margin-bottom: 20px 0 60px;
  overflow: hidden;
}
#coatingSec01 #coatingFlow li {
  float: left;
  margin-bottom: 20px;
}
#coatingSec01 #coatingFlow li h4 {
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  padding: 10px 20px;
}
#coatingSec01 #coatingFlow li .flowContent {
  background: #fafafa;
}
#coatingSec01 #coatingFlow li .flowContent .flowBox .imgClm, #coatingSec01 #coatingFlow li .flowContent .flowBox .txtClm {
  margin-bottom: 0;
}
#coatingSec01 #coatingFlow li .flowContent .flowBox .txtClm {
  padding: 10px;
  text-align: justify;
}
#coatingSec01 #coatingFlow li.step1 {
  width: 650px;
  margin-right: 30px;
}
#coatingSec01 #coatingFlow li.step1 h4 {
  background: #dbc4de;
}
#coatingSec01 #coatingFlow li.step1 .flowContent {
  padding: 10px 20px;
  overflow: hidden;
}
#coatingSec01 #coatingFlow li.step1 .flowContent .flowBox {
  float: left;
  width: 300px;
}
#coatingSec01 #coatingFlow li.step1 .flowContent .flowBox:first-of-type {
  margin-right: 10px;
}
#coatingSec01 #coatingFlow li.step2 {
  width: 320px;
}
#coatingSec01 #coatingFlow li.step2 h4 {
  background: #c5a6c9;
}
#coatingSec01 #coatingFlow li.step2 .flowContent {
  padding: 10px;
}
#coatingSec01 #coatingFlow li.step3 {
  width: 100%;
}
#coatingSec01 #coatingFlow li.step3 h4 {
  background: #a076a5;
}
#coatingSec01 #coatingFlow li.step3 .flowContent {
  padding: 10px;
  overflow: hidden;
}
#coatingSec01 #coatingFlow li.step3 .flowContent .flowBox {
  float: left;
  width: 300px;
}
#coatingSec01 #coatingFlow li.step3 .flowContent .flowBox:first-of-type {
  margin-right: 10px;
}
#coatingSec01 #coatingFlow li.step3 .flowContent .flowBox:nth-of-type(n+2) {
  width: 220px;
  margin-right: 5px;
}
#coatingSec01 #coatingFlow li.step3 .flowContent .flowBox:nth-of-type(n+2) .ctr {
  text-align: center;
}
#coatingSec01 #coatingFlow li.step3 .flowContent .flowBox:last-of-type {
  margin: 0;
}
#coatingSec01 #coatingFlow li.step4 {
  width: 320px;
  margin-right: 20px;
}
#coatingSec01 #coatingFlow li.step4 h4 {
  background: #733f79;
}
#coatingSec01 #coatingFlow li.step4 .flowContent {
  padding: 10px;
}
#coatingSec01 #coatingFlow li.step5 {
  width: 320px;
  margin-right: 20px;
}
#coatingSec01 #coatingFlow li.step5 h4 {
  background: #5f1d67;
}
#coatingSec01 #coatingFlow li.step5 .flowContent {
  padding: 10px;
}
#coatingSec01 #coatingFlow li.step6 {
  width: 320px;
}
#coatingSec01 #coatingFlow li.step6 h4 {
  background: #3b0841;
}
#coatingSec01 #coatingFlow li.step6 .flowContent {
  padding: 10px;
}
#coatingSec01 #coatingFlow li.step7 {
  width: 650px;
  margin-right: 30px;
}
#coatingSec01 #coatingFlow li.step7 h4 {
  background: #250029;
}
#coatingSec01 #coatingFlow li.step7 .flowContent {
  padding: 10px 20px;
}
#coatingSec01 #coatingFlow li.step7 .flowContent .imgClm img:first-of-type {
  margin-right: 10px;
}
#coatingSec01 #coatingFlow li.step8 {
  width: 320px;
}
#coatingSec01 #coatingFlow li.step8 h4 {
  background: #e76132;
}
#coatingSec01 #coatingFlow li.step8 .flowContent {
  padding: 10px;
}
#coatingSec01 .trouble {
  background: url(../images/bg03.png);
}
#coatingSec01 .trouble ul {
  float: left;
  width: 50%;
}
#coatingSec01 .trouble ul li {
  float: none;
  width: 100%;
  padding: 0;
  margin-bottom: 5px;
}

/*---------------------------------------
    company
----------------------------------------*/
#aboutSec01 #motto {
  margin-bottom: 40px;
}
#aboutSec01 #motto .mottoBox {
  background: url(../images/bg03.png);
  width: 100%;
  display: table;
  table-layout: fixed;
}
#aboutSec01 #motto .mottoBox .imgClm {
  display: table-cell;
  vertical-align: middle;
  width: 320px;
  padding: 20px 50px;
}
#aboutSec01 #motto .mottoBox ul {
  display: table-cell;
  vertical-align: middle;
  width: auto;
}
#aboutSec01 #motto .mottoBox ul li {
  color: #3b4f64;
  line-height: 2.5;
}
#aboutSec01 #motto .mottoBox ul li span {
  background: linear-gradient(rgba(0, 0, 0, 0) 70%, #a5bcd3 70%);
  width: auto;
}
#aboutSec01 .red {
  background: none;
  border: none;
  text-align: left;
  color: #333;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.06em;
  margin-bottom: 0;
  color: #e76132;
  font-size: 24px;
  font-weight: 900;
  letter-spacing: 0.1em;
}
#aboutSec01 .red + p {
  margin-bottom: 40px;
}
#aboutSec01 table {
  width: 900px;
  margin: 0 auto;
}
#aboutSec01 table td {
  border: 1px solid #ccc;
  width: 300px;
  vertical-align: top;
}
#aboutSec01 table td .logo {
  margin-top: 30px;
  height: 80px;
  text-align: center;
}
#aboutSec01 table td .address {
  text-align: center;
}
#aboutSec01 table td p:last-of-type {
  font-size: 14px;
  padding: 20px;
  text-align: justify;
}
#aboutSec01 table td.grey {
  background: #fafafa;
}

.speciality {
  overflow: hidden;
}
.speciality li {
  float: left;
  width: 480px;
  border: 1px solid #ccc;
  margin: 0 10px 20px;
}
.speciality li h3 {
  background: none;
  border: none;
  text-align: left;
  color: #333;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.06em;
  margin-bottom: 0;
  font-size: 18px;
  letter-spacing: 0.2em;
  color: #3b4f64;
  padding: 20px 20px 20px 60px;
  position: relative;
  height: 70px;
}
.speciality li h3:before {
  content: "";
  background: url(../images/icon_heart.png) center center;
  height: 30px;
  width: 30px;
  position: absolute;
  left: 20px;
}
.speciality li .txtClm {
  padding: 20px;
}
.speciality li:nth-last-child(-n+2) {
  margin-bottom: 0;
}

#aboutSec03 .speciality li h3:before {
  background: url(../images/icon_tool.png) center center;
}
#aboutSec03 .speciality li:nth-child(8) h3 {
  line-height: 1.4;
  padding: 10px 20px 10px 60px;
}
#aboutSec03 .speciality li:nth-child(8) h3:before {
  top: 20px;
}

#aboutSec04 .workflow li {
  width: 100%;
  display: table;
  table-layout: fixed;
  background: #fafafa;
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.3);
  padding: 20px;
  margin-bottom: 40px;
  position: relative;
}
#aboutSec04 .workflow li:after {
  content: "";
  width: 2px;
  height: 40px;
  background: #ccc;
  position: absolute;
  bottom: -40px;
  left: 50px;
}
#aboutSec04 .workflow li:last-child {
  margin-bottom: 0;
}
#aboutSec04 .workflow li:last-child:after {
  background: none;
}
#aboutSec04 .workflow li .imgClm {
  display: table-cell;
  vertical-align: middle;
  width: 60px;
}
#aboutSec04 .workflow li .txtClm {
  display: table-cell;
  vertical-align: middle;
  padding-left: 20px;
}
#aboutSec04 .workflow li .txtClm h3 {
  background: none;
  border: none;
  text-align: left;
  color: #333;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.06em;
  margin-bottom: 0;
  height: auto;
  font-size: 24px;
  color: #3b4f64;
  margin-bottom: 10px;
}

#aboutSec05 table {
  width: 100%;
}
#aboutSec05 table th, #aboutSec05 table td {
  border: 1px solid #ccc;
  vertical-align: middle;
  padding: 25px;
}
#aboutSec05 table th {
  background: #fafafa;
  font-size: 20px;
  width: 320px;
}
#aboutSec05 h3 {
  margin-top: 40px;
}
#aboutSec05 .box {
  margin: 20px 0 30px;
  overflow: hidden;
}
#aboutSec05 .box .case01, #aboutSec05 .box .case02 {
  width: 480px;
}
#aboutSec05 .box .case01 h4, #aboutSec05 .box .case02 h4 {
  font-size: 18px;
  font-weight: bold;
  letter-spacing: 0.2em;
  border-bottom: 1px solid #48739f;
  border-left: 10px solid #48739f;
  padding-left: 10px;
  line-height: 30px;
  margin-bottom: 30px;
  margin-bottom: 20px;
}
#aboutSec05 .box .case01 {
  float: left;
}
#aboutSec05 .box .case02 {
  float: right;
}
#aboutSec05 .nosha {
  margin: 30px 0;
}

/*---------------------------------------
    company
----------------------------------------*/
#companySec01 table {
  width: 100%;
  font-size: 18px;
}
#companySec01 table th, #companySec01 table td {
  border: 1px solid #ccc;
  vertical-align: middle;
  padding: 25px;
}
#companySec01 table th {
  background: #fafafa;
  width: 440px;
}
#companySec01 h3 {
  margin-top: 40px;
}
#companySec01 p.mb20 {
  margin-bottom: 20px;
}

#companySec02 h2 {
  margin-bottom: 0;
}
#companySec02 #gMap {
  width: 100%;
  height: 500px;
}
#companySec02 .shopList {
  overflow: hidden;
}
#companySec02 .shopList li {
  width: 50%;
  height: 220px;
  float: left;
  margin-bottom: 40px;
}
#companySec02 .shopList li h3 {
  background: none;
  border: none;
  text-align: left;
  color: #333;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.06em;
  margin-bottom: 0;
  height: auto;
  font-size: 18px;
  font-weight: bold;
  letter-spacing: 0.2em;
  border-bottom: 1px solid #48739f;
  border-left: 10px solid #48739f;
  padding-left: 10px;
  line-height: 30px;
  margin-bottom: 30px;
  margin-bottom: 20px;
}
#companySec02 .shopList li .logo {
  text-align: center;
  margin-bottom: 20px;
}
#companySec02 .shopList li:nth-child(odd) {
  padding-right: 20px;
}
#companySec02 .shopList li:nth-child(even) {
  padding-left: 20px;
}

/*---------------------------------------
    contact
----------------------------------------*/
#contactSec01 p {
  text-align: center;
}
#contactSec01 p:first-of-type {
  font-weight: bold;
}
#contactSec01 .telBox {
  width: 540px;
  margin: 30px auto;
  padding: 30px 30px 20px;
  border: 3px solid #e76132;
  display: table;
}
#contactSec01 .telBox .logo, #contactSec01 .telBox .tel {
  display: table-cell;
  vertical-align: middle;
}
#contactSec01 .telBox .tel {
  padding-left: 10px;
  text-align: right;
}

#contactSec01 .linebanner {
  width: 540px;
  margin: 30px auto;
}
#contactSec02 ul {
  list-style-position: inside;
  list-style-type: disc;
  text-indent: -1.5em;
  padding-left: 2em;
  padding-top: 1em;
  word-break: break-all;
}
#contactSec02 ul li.red {
  color: #e76132;
}
#contactSec02 .imgClm {
  margin: 40px 0;
  text-align: center;
}
#contactSec02 #formTable {
  width: 100%;
}
#contactSec02 #formTable th, #contactSec02 #formTable td {
  vertical-align: middle;
}
#contactSec02 #formTable th {
  width: 280px;
  padding: 15px 10px;
  font-size: 18px;
  font-weight: bold;
  text-align: left;
  position: relative;
}
#contactSec02 #formTable th b {
  display: inline-block;
  width: 60px;
  line-height: 30px;
  position: absolute;
  right: 10px;
  top: 25px;
  font-size: 14px;
  font-weight: normal;
  color: #fff;
  background: #e76132;
  text-align: center;
}
#contactSec02 #formTable td {
  padding: 15px 10px;
}
#contactSec02 #formTable td input[type=text], #contactSec02 #formTable td input[type=email], #contactSec02 #formTable td textarea {
  padding: 15px;
  font-size: 16px;
  width: 100%;
}
#contactSec02 #formTable td select {
  padding: 15px;
  font-size: 16px;
  width: 360px;
}
#contactSec02 #formTable tr:last-of-type th, #contactSec02 #formTable tr:last-of-type td {
  vertical-align: top;
}
#contactSec02 #formTable tr:last-of-type th {
  padding-top: 25px;
}
#contactSec02 .privacy {
  margin: 40px 100px;
  height: 200px;
  padding: 20px;
  border: 1px solid #ccc;
  background: #eee;
  overflow-y: scroll;
}
#contactSec02 .privacy h4 {
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 20px;
}
#contactSec02 .agree {
  font-weight: bold;
  text-align: center;
}
#contactSec02 .btn {
  margin: 60px auto;
  width: 360px;
  position: relative;
}
#contactSec02 .btn input[type=submit] {
  display: block;
  background: #333;
  color: #fff;
  text-align: center;
  font-size: 18px;
  font-weight: 700;
  font-family: 'Noto Sans JP', sans-serif;
  letter-spacing: 0.1em;
  line-height: 50px;
  height: 50px;
  width: 360px;
  margin: 0 auto;
  border: 1px solid #333;
}
#contactSec02 .btn input[type=submit]:hover {
  border: 1px solid #333;
  background: #fff;
  color: #333;
  line-height: 50px;
  height: 50px;
}
#contactSec02 .btn:after {
  content: "";
  position: absolute;
  width: 20px;
  height: 20px;
  background: url(../images/arrow_w.png) no-repeat;
  right: 10px;
  top: 0;
  bottom: 0;
  margin: auto;
}
#contactSec02 .btn:hover:after {
  background: url(../images/arrow_b.png) no-repeat;
}

/*---------------------------------------
    news
----------------------------------------*/
#newsSec01 .inner {
  overflow: hidden;
}
#newsSec01 #main {
  width: 700px;
  float: left;
}
#newsSec01 #main .newsList li {
  border-bottom: 1px solid #ccc;
  width: 100%;
  display: table;
  table-layout: fixed;
}
#newsSec01 #main .newsList li a {
  display: block;
  padding: 10px 20px;
}
#newsSec01 #main .newsList li a:hover {
  background: #eee;
}
#newsSec01 #main .newsList li a time, #newsSec01 #main .newsList li a p {
  display: table-cell;
  vertical-align: top;
}
#newsSec01 #main .newsList li a time {
  width: 120px;
}
#newsSec01 #main .titleArea {
  background: #eee;
  font-size: 18px;
  font-weight: bold;
  padding: 20px;
}
#newsSec01 #main .titleArea h3 {
  background: none;
  border: none;
  text-align: left;
  color: #333;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.06em;
  margin-bottom: 0;
}
#newsSec01 #main .contentsArea p {
  margin-top: 40px;
}
#newsSec01 #side {
  width: 240px;
  float: right;
}
#newsSec01 #side .archive li {
  margin-bottom: 10px;
}
#newsSec01 #side .archive li a:hover {
  text-decoration: underline;
}
#newsSec01 .btn {
  margin-top: 60px;
}
