/*
Theme Name: nurikae-no1
Theme URI: https://nurikae-no1.jp/
Description: pcbrain
Version: 1.0
Author: pcbrain.co.jp
*/
/* default style - リセット及びbody基本設定
----------------------------------------------------------- */
/* @import url("css/default.css"); */
/* ===================================================================
CSS information
 file name  :  default.css
 style info :  リセット及びbody初期設定 (このスタイルシートは基本的に変更しない)
=================================================================== */
/*--- reset */
html {
  overflow-y: scroll;
}

body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
form,
fieldset,
input,
textarea,
p,
blockquote,
th,
td {
  margin: 0;
  padding: 0;
}

address,
caption,
cite,
code,
dfn,
em,
strong,
th,
var {
  font-style: normal;
}

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

caption,
th {
  text-align: left;
}

q:before,
q:after {
  content: "";
}

object,
embed {
  vertical-align: top;
}

hr,
legend {
  display: none;
}

img,
abbr,
acronym,
fieldset {
  border: 0;
}

img {
  vertical-align: bottom;
}

li {
  list-style-type: none;
}

/*--- default */
body {
  min-width: 1100px;
  /*コンテンツ横幅を指定する（スマホ閲覧時の背景欠けを防ぐ）*/
  font-size: 15px;
  color: #333;
  font-family: "メイリオ", "Meiryo", verdana, "ヒラギノ角ゴ Pro W3",
    "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic",
    Sans-Serif;
  line-height: 1.8;
}

.inner {
  width: 1000px;
  margin: 0 auto;
  position: relative;
  overflow: hidden;
  padding: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

@font-face {
  font-family: "Arial Black";
  font-style: normal;
  font-weight: 400;
  src: local("Arial Black"), url("ariblk_0.ttf") format("ttf");
}

/* all style
----------------------------------------------------------- */
/* @import url("css/style.css"); */
/* ===================================================================
CSS information

 file name  :style.css
 author     :PCBrain
 style info :コンテンツエリア関係 他

このスタイルシートの構成
 基本設定、レイアウト、横幅設定など
 汎用class
=================================================================== */

/*----------------------------------------------------
    基本設定、リンクカラーなど
----------------------------------------------------*/
:root {
  --color-red: #d00000;
  --color-blue: #0053b7;
  --color-green: #8dc220;
  --color-orange: #ff6600;
  --color-chrome-y: #f4cd0b;
  --color-spring-g: #8bb72e;
}

a:link,
a:visited {
  color: #004dff;
  text-decoration: underline;
  transition: 0.7s;
  -webkit-backface-visibility: hidden;
}

a:hover {
  color: #ff9933;
  transition: 0.7s;
  -webkit-backface-visibility: hidden;
}

a img {
  transition: 0.7s;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

a:hover img {
  opacity: 0.7;
  transition: 0.7s;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  display: inline-block;
}

a:active {}

/*----------------------------------------------------
    汎用class
----------------------------------------------------*/
.imgR {
  float: right;
  margin: 0 0 10px 10px;
}

.imgR20 {
  float: right;
  margin: 0 0 20px 20px;
}

.imgR30 {
  float: right;
  margin: 0 0 20px 30px;
}

.imgL {
  float: left;
  margin: 0 10px 10px 0;
}

.imgL20 {
  float: left;
  margin: 0 20px 20px 0;
}

.imgL30 {
  float: left;
  margin: 0 30px 20px 0;
}

.imgC {
  margin: 0 auto 10px auto;
  display: block;
}

.imgBox {
  border: #cccccc solid 1px;
  padding: 3px;
}

.imgLayer {
  position: absolute;
}

.mt-25 {
  margin-top: -25px !important;
}

.mt-20 {
  margin-top: -20px !important;
}

.mt-20 p {
  margin: 0 !important;
}

.mt0 {
  margin-top: 0 !important;
}

.mt10 {
  margin-top: 10px !important;
}

.mt30 {
  margin-top: 30px !important;
}

.mb0 {
  margin-bottom: 0 !important;
}

.mb10 {
  margin-bottom: 10px !important;
}

.mb20 {
  margin-bottom: 20px !important;
}

.mb30 {
  margin-bottom: 30px !important;
}

.mr20 {
  margin-right: 20px;
}

.mr30 {
  margin-right: 30px;
}

.ml30 {
  margin-left: 30px;
}

.pt0 {
  padding-top: 0 !important;
}

.btn {
  text-align: center;
  margin-top: 5px;
  margin-bottom: 10px;
}

.overflowH {
  overflow: hidden;
}

.overflowA {
  overflow: auto;
}

.clearBoth {
  clear: both;
}

.textRight {
  text-align: right !important;
}

.textCenter {
  text-align: center !important;
  display: block;
}

.textBold {
  font-weight: bold;
}

.remark_red {
  color: #c00;
}

.floatR {
  float: right;
}

.floatL {
  float: left;
}

.imgM {
  margin: 0 auto;
}

strong {
  font-weight: bold;
}

.must {
  font-size: 10px;
  color: #ff0000;
}

.noticeR {
  color: #d00000 !important;
}

.noticeO {
  color: #8dc220 !important;
}

.noticeB {
  color: #0053b7 !important;
}

.noticeG {
  color: #8dc220 !important;
}

/* 外部リンクは別窓用の指定 */
.externalIcon {
  padding-left: 5px;
  vertical-align: middle;
}

/* clearfix */
.clearfix:after {
  content: ".";
  /* 新しい要素を作る */
  display: block;
  /* ブロックレベル要素に */
  clear: both;
  height: 0;
  visibility: hidden;
}

.clearfix {
  min-height: 1px;
}

.bg02 {
  background: #ff6600;
  padding: 20px 0 !important;
}

.bg03 {
  background: url(./img/common/contact_bg.png) center center;
}

.main .comming {
  font-size: 18px;
  text-align: center;
  padding: 40px 0;
  color: #333;
}



/*----------------------------------------------------
    スマホ用
----------------------------------------------------*/
.spblock,
.spinline,
.sptr {
  display: none !important;
}

/* @import url("css/btn.css"); */
.btn {
  display: inline-block;
  border-radius: 30px;
  box-sizing: border-box;
  margin-top: 0;
  border-radius: 5px;
}

.btn a {
  display: block;
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  position: relative;
  padding: 5px 35px 5px 20px;
  text-decoration: none;
  border-radius: 5px;
  box-shadow: 0px 5px 0px 0px rgba(255, 255, 255, 0.3) inset;
  background: #8dc220;
  border: #8dc220 solid 3px;
}

.btn a:after {
  font-family: "Font Awesome 5 Free";
  content: "\f138";
  font-weight: 900;
  right: 10px;
  position: absolute;
  font-size: 16px;
  height: 19px;
  line-height: 1;
  top: 3px;
  bottom: 0;
  margin: auto;
  display: block;
}

.main .btnDetail {
  background: #0053b7;
  box-shadow: 0px 2px 0px 0px rgba(255, 255, 255, 0.3) inset;
  color: #fff;
  padding: 3px 10px;
  display: inline-block;
  margin-top: 5px;
  border-radius: 5px;
  box-sizing: border-box;
  font-size: 12px;
  font-weight: bold;
}

.main .btnDetail:hover,
.btn a:hover {
  opacity: 0.7;
  transition: 0.7s;
}

.main .btnDetail a {
  display: block;
  padding: 3px 10px;
  color: #fff;
  text-decoration: none;
  text-align: center;
  transition: 0.7s;
}

.bg01 .btn {
  margin: 10px 15px;
}

.corpAbout .btn a {
  padding: 5px 35px 5px 10px;
  background: #f5a100;
  background: -moz-linear-gradient(left,
      #f5a100 0%,
      #f5a100 78%,
      #d78d00 78%,
      #d78d00 100%);
  background: -webkit-linear-gradient(left,
      #f5a100 0%,
      #ffa73d 78%,
      #d78d00 78%,
      #d78d00 100%);
  background: linear-gradient(to right,
      #f5a100 0%,
      #f5a100 78%,
      #d78d00 78%,
      #d78d00 100%);
}

.corpAbout .btn a:after {
  font-size: 14px;
}

.consultationBox .btn {
  background: #f5a100;
  background: -moz-linear-gradient(left,
      #f5a100 0%,
      #f5a100 83%,
      #d78d00 83%,
      #d78d00 100%);
  background: -webkit-linear-gradient(left,
      #f5a100 0%,
      #ffa73d 83%,
      #d78d00 83%,
      #d78d00 100%);
  background: linear-gradient(to right,
      #f5a100 0%,
      #f5a100 83%,
      #d78d00 83%,
      #d78d00 100%);
  text-align: center;
  font-size: 18px;
  font-weight: bold;
  margin: 0;
  border-radius: 4px;
  box-shadow: inset 0 -4px 0px 0px rgba(105, 105, 105, 0.3);
  position: absolute;
  padding: 10px 40px 10px 20px;
  box-sizing: border-box;
  display: inline-block;
  right: 10px;
  bottom: 10px;
}

.consultationBox .btn:after {
  font-family: "Font Awesome 5 Free";
  content: "\f138";
  font-weight: 900;
  right: 10px;
  position: absolute;
  font-size: 16px;
  top: 10px;
  margin: auto;
  display: block;
}

.consultationBox a:hover .btn {
  opacity: 0.8;
  transition: 0.7s;
}

.contactFree .btn {
  margin: 10px;
  display: flex;
  justify-content: space-between;
  -ms-align-items: center;
  align-items: center;
  background: none;
  text-shadow: none;
  box-shadow: 0px 0px 0px 1px rgba(0, 0, 0, 0.2) inset;
}

.contactFree .btn img {
  display: block;
  margin: 0 auto;
}

.contactFree .btn :hover {
  opacity: 0.8;
  transition: 0.7s;
}

.worksList article .btn,
.voiceList article .btn,
.blogList article .btn,
.eventList article .btn,
.topicsBox ul li .btn {
  background: #0053b7;
  box-shadow: 0px 2px 0px 0px rgba(255, 255, 255, 0.3) inset;
  color: #fff;
  padding: 3px 10px;
  display: inline-block;
  margin-top: 8px;
  margin-bottom: 0;
  font-size: 12px;
}

/* @import url("css/header.css"); */
/* -----------------------------------------------------------
    .header
----------------------------------------------------------- */

.header .htxt {
  padding: 5px 0;
  background: #eeeeee;
}

.header .htxt .inner {
  padding: 0;
}

.header .htxt h1,
.header .htxt p {
  font-size: 11px;
  font-weight: normal;
  display: block;
}

.header .htxt p strong {
  font-weight: normal;
}

.header .inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  overflow: inherit;
  width: 1100px;

}

.header .corpNumber {
  font-size: 12px;
  position: absolute;
  bottom: 0;
  left: 0;
}

.header .logoTxt {
  font-size: 10px;
  position: absolute;
  top: 0;
  left: 0;
}

.header .hdrLogo {
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.header .hdrLogo a {
  margin: 0 5px 0 0;
  display: block;
  float: left;
}

.header .hdrMenu li {
  position: relative;
  padding-left: 20px;
  font-weight: bold;
}

.header .hdrMenu li a {
  color: #333;
  text-decoration: none;
}

.header .hdrMenu li:before,
.header .hdrMenu li:after {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
}

.header .hdrMenu li:before {
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: #f5a100;
}

.header .hdrMenu li:after {
  left: 4px;
  width: 4px;
  height: 4px;
  border-top: 2px solid #fffeee;
  border-right: 2px solid #fffeee;
  transform: rotate(45deg);
}

.header .hdrContact {
  float: left;
  position: relative;
  /*  margin: 10px 0 6px 2px;*/
  margin: 10px 5px 6px 0;
}

.header .hdrContact .contactCatch {
  position: relative;
  overflow: hidden;
  /*  border-radius: 30px;*/
  background-color: #fff;
  color: #333;
  font-weight: bold;
  font-size: 14px;
  text-align: left;
  padding: 0 0;
  margin: 3px 0 3px;
}

.header .hdrContact .telBox {
  background: #fff;
  box-sizing: border-box;
  position: relative;
  overflow: hidden;
  margin: 0 10px;
  float: left;
}

.header .hdrContact .tel {
  line-height: 1.2;
  white-space: nowrap;
}

.header .hdrContact .tel span {
  font-size: 53px;
  line-height: 1;

  display: inline-block;
  padding-left: 48px;
  background-size: 48px auto;
  background-position: left 80%;
  /*
  background-size: 25px 37px;
  padding-left: 37px;
  */
  font-family: "Oswald", sans-serif;
}

.flex {
  display: flex;
}

.hdrShowroomName {
  font-size: 16px;
  font-weight: 700;
  vertical-align: middle;
  width: 6em;
}

.hdrBnr {
  position: relative;
  overflow: hidden;
  float: right;
  margin: 5px 0;
}

.hdrBnr li {
  float: left;
  margin-left: 5px;
}

.hdrBnr li:last-child {
  margin-right: 0;
}

.hdrBnr li:hover,
.hdrBnr li a:hover {
  opacity: 0.8;
  transition: 0.7s;
}

.header .telBtn {
  display: none;
}

/* .showroom01, .showroom03{
  padding-right: 45px;
}

.showroom02{
  padding-right: 13px;
} */

/* -----------------------------------------------------------
    .nav
----------------------------------------------------------- */
.nav {
  position: relative;
  padding: 10px 0 10px 0;
  margin-bottom: 1px;
  background: #ff9900;
}

.gNav {
  position: relative;
  width: 1100px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.nav .gNav li {
  border-right: #fff dashed 1px;
  float: left;
  font-size: 17px;
  color: #000;
  font-weight: bold;
  text-align: center;
  position: relative;
  z-index: 5;
  line-height: 1;
  display: block;
  width: 158px;
}

.nav li:first-child {
  border-left: #fff dashed 1px;
}

.nav li a:link,
.nav li a:visited {
  color: #000;
  text-decoration: none;
  transition: 0.7s;
}

.nav li a:hover {
  transition: 0.7s;
  opacity: 0.8;
}

.nav .gNav li a {
  box-sizing: border-box;
  width: 100%;
  position: relative;
  color: rgb(26, 24, 24);
  text-decoration: none;
  padding: 30px 0 10px;
  font-weight: bold;
  display: inline-block;
  background-repeat: no-repeat;
  background-position: center 0;
  color: #fff;
}

.nav li li a:before,
.nav li li a:after {
  content: none;
}

.nav .gNav li a span {
  display: inline-block;
  width: 100%;
  color: #fff100;
  font-size: 10px;
}

.nav .gNav li ul {
  position: absolute;
  top: 66px;
  left: 0;
  z-index: 1;
  height: 0;
  width: 100%;
  display: block;
  margin: 0;
  padding: 0;
}

.nav .gNav>li>ul>li {
  visibility: hidden;
  overflow: hidden;
  width: auto;
  height: 0;
  background: rgba(45, 41, 32, 0.8);
  border-bottom: solid 1px;
  border-bottom-color: rgba(255, 255, 255, 0.8);
  border-right: none;
  border-left: none;
  font-size: 13px;
  transition: 0.7s;
  float: none;
  font-weight: normal;
  text-shadow: none;
  margin: 0;
}

.nav .gNav li ul li a {
  height: auto;
  border-bottom: none;
  height: 39px;
  margin-top: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  padding: 10px 0;
  font-weight: normal;
}

.nav .gNav li.gnav04 ul li a {
  background-image: none;
}

.nav .gNav li ul li a:before,
.nav .gNav li ul li a:after {
  display: none;
}

.nav .gNav li ul li a:link,
.nav .gNav li ul li a:visited {
  color: #ffffff;
  text-decoration: none;
}

.nav .gNav li:hover ul li,
.nav .gNav li a:hover ul li {
  visibility: visible;
  overflow: visible;
  height: 39px;
}

.nav .gNav li.gnav01 a {
  background-image: url(./img/common/ico_gnav01.png);
}

.nav .gNav li.gnav02 a {
  background-image: url(./img/common/ico_gnav02.png);
}

.nav .gNav li.gnav03 a {
  background-image: url(./img/common/ico_gnav03.png);
}

.nav .gNav li.gnav04 a {
  background-image: url(./img/common/ico_gnav04.png);
}

.nav .gNav li.gnav05 a {
  background-image: url(./img/common/ico_gnav05.png);
}

.nav .gNav li.gnav06 a {
  background-image: url(./img/common/ico_gnav06.png);
}

.nav .gNav li.gnav07 a {
  background-image: url(./img/common/ico_gnav07.png);
}

.nav .gNav li.gnav08>a {
  background-image: url(./img/common/ico_gnav08.png);
}

/* @import url("css/side.css"); */
/* -----------------------------------------------------------
    side
----------------------------------------------------------- */
.side {
  width: 220px;
  float: left;
}

.side article {
  margin-bottom: 30px;
  padding: 0;
  position: relative;
}

.side .inBox {
  background: #eee;
  padding: 10px;
  position: relative;
  overflow: hidden;
}

.side article p {
  font-size: 13px;
  margin-bottom: 10px;
}

.side article p:last-child {
  margin-bottom: 0;
}

.side article h3 {
  background: #0053b7;
  border-radius: 4px;
  color: #fff;
  font-size: 13px;
  line-height: 1.2;
  padding: 10px;
  position: relative;
  box-sizing: border-box;
  margin-bottom: 10px;
  padding: 5px 10px;
}

.side article h3 span {
  color: #fff100;
  font-size: 10px;
  display: block;
}

.side article h4 {
  position: relative;
  font-size: 13px;
  padding-left: 10px;
}

.side article h4:before,
.side article h4:after {
  position: absolute;
  top: 7px;
  left: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
}

.side article h4:before {
  width: 7px;
  height: 7px;
  background: #ff9900;
}

.side article h4:after {
  left: 1px;
  width: 2px;
  height: 2px;
  top: 9px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  transform: rotate(45deg);
}

.side .sideBnr:nth-of-type(2) {
  margin-bottom: 30px;
}

.side .sideBnr:nth-of-type(2) a:nth-child(3) {
  margin-bottom: 30px;
}

.side .sideBnr ul {
  background: #eee;
  padding: 10px;
  margin-bottom: 20px;
}

.side .sideBnr ul li {
  background: #ff9900;
}

.side .sideBnr ul li a {
  display: flex;
  justify-content: space-between;
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  padding: 0 0 0 10px;
  margin-bottom: 10px;
}

.side .sideBnr ul li:last-child a {
  margin-bottom: 0;
}

.side .sideBnr ul li a .bnrText {
  width: 133px;
  font-size: 13px;
  line-height: 1.5;
  display: flex;
  align-items: center;
}

.side .sideBnr ul li a img {
  width: auto;
  height: auto;
}

.side .sideBnr a {
  margin-bottom: 10px;
}

.side .sideBnr img {
  width: 100%;
  height: auto;
}

.side .sideBnrList {
  margin-bottom: 20px;
}

.side .sideBnrList li {
  border: #8d471f solid 1px;
  background: url(../img/common/bg_side_beige.png) center center;
  box-shadow: 0px 0px 0px 3px #ffffff inset;
  border-radius: 4px;
  box-sizing: border-box;
  position: relative;
  font-size: 14px;
  font-weight: bold;
  font-family: "source-han-sans-japanese", sans-serif;
  position: relative;
  line-height: 1.2;
  margin-bottom: 20px;
}

.side .sideBnrList li a {
  padding: 15px;
  display: block;
}

.side .sideBnrList li a:before,
.side .sideBnrList li a:after {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 10px;
  margin: auto;
  content: "";
  vertical-align: middle;
}

.side .sideBnrList li a:before {
  width: 13px;
  height: 13px;
  border-radius: 50%;
  background: #f5a100;
}

.side .sideBnrList li a:after {
  right: 14px;
  width: 4px;
  height: 4px;
  border-top: 2px solid #e8ddbd;
  border-right: 2px solid #e8ddbd;
  transform: rotate(45deg);
}

.side .sideBnrList li img {
  float: left;
  margin-right: 10px;
}

.side .sideBnrList li:first-child img {
  position: relative;
  margin-top: -25px;
}

.side .sideBnrList li:last-child {
  margin-bottom: 0;
}

.side .sideBnrList li strong {
  font-size: 22px;
}

.side .sideBnrL {
  box-sizing: border-box;
  position: relative;
  overflow: hidden;
  margin-bottom: 20px;
}

.side .sideBnrL a {
  text-decoration: none;
  display: block;
}

.side .sideBnrL.sidewall {
  background: #f5a100;
}

.side .sideBnrL.sideroof {
  background: #d00000;
}

.side .sideBnrL.siderecruit {
  background: #8d471f;
}

.side .sideBnrL h4 {
  background: none;
  font-size: 20px;
  color: #fff;
  line-height: 1.2;
  margin: 5px 10px;
  padding: 0;
}

.side .sideBnrL.sideapartment h4,
.side .sideBnrL.siderecruit h4 {
  text-align: center;
  font-size: 26px;
  margin: 0;
}

.side .sideBnrL.sideapartment h4 span,
.side .sideBnrL.siderecruit h4 span {
  color: rgba(255, 255, 255, 0.5);
  font-size: 20px;
  display: block;
}

.side .sideBnrL.siderecruit h4 span {
  font-size: 16px;
}

.side .sideBnrL.sideapartment .detail,
.side .sideBnrL.siderecruit .detail {
  background: #df4d00;
  text-align: center;
  display: block;
  font-weight: normal;
  font-size: 13px;
  color: #fff;
  margin: 5px;
  padding: 5px;
}

.side .sideBnrL.siderecruit .detail {
  background: #4d0c00;
}

.side .sideBnrL .packImg {
  width: 280px;
  height: 100px;
  position: relative;
  overflow: hidden;
}

.side .sideBnrL .packImg img {
  width: 280px;
  height: auto;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
}

.side .sideBnrL .imgIco {
  position: absolute;
  right: 0;
  top: 65px;
  width: 95px;
  height: auto;
}

.side .sideBnrL .packSummary {
  background: #fff;
  margin: 0 10px 10px;
  padding: 10px;
}

.side .sideBnrL p {
  font-size: 14px;
  font-weight: bold;
  line-height: 1.4;
  margin-bottom: 5px;
}

.side .sideBnrL .priceTxt {
  font-family: Impact, "Anton", Gadget, sans-serif, "メイリオ", "Meiryo",
    verdana, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka,
    "ＭＳ Ｐゴシック", "MS PGothic";
  font-size: 52px;
  font-weight: 500;
  color: #d00000;
  line-height: 1;
  margin-bottom: 5px;
}

.side .sideBnrL .priceTxt span.unitTxt {
  font-size: 28px;
}

.side .sideBnrL span.priceB {
  background: #f5a100;
  border-radius: 4px;
  color: #fff;
  font-size: 16px;
  line-height: 1.2;
  display: inline-block;
  padding: 5px 10px;
  letter-spacing: normal;
  margin-right: 10px;
}

.side .sideBnrL .txts {
  font-size: 10px;
  margin-bottom: 0;
  font-weight: normal;
}

.side .combnrList li {
  font-size: 14px;
  margin-bottom: 20px;
  border-radius: 5px;
}

.side .combnrList li img {
  width: 100%;
}

.side .bnrBox h3 {
  margin: 20px 0 10px;
  text-align: center;
}

.side .bnrBox img {
  margin-bottom: 0;
}

.side .bnrBox a {
  margin-bottom: 10px;
}

.side .sideBlog {
  overflow: hidden;
}

.side .sideBlog li a {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.side .sideBlog li .new {
  color: #fff;
  font-size: 10px;
  background: #d00000;
  padding: 0 4px;
  margin-right: 5px;
  display: inline-block;
}

.side .sideBlog li p {
  overflow: hidden;
  white-space: initial;
  text-overflow: initial;
  font-size: 14px;
  height: 4.5vmin;
}

.side .sideBlog .btn {
  float: right;
}

.side .sideBlog .btn a {
  font-size: 14px;
  padding: 0 30px 0 10px;
}

.side a {
  position: relative;
  color: #333;
  text-decoration: none;
  display: block;
  backface-visibility: hidden;
}

.side .sideContact {
  margin-bottom: 10px;
  padding-bottom: 10px;
  border-bottom: #333 dashed 1px;
}

.side .sideContact h3 {
  padding: 5px;
  text-align: center;
  margin: 0 0 5px;
}

.side .sideContact h3 .sideLogo {
  width: 224px;
  height: auto;
}

.side .sideContact h5 {
  font-size: 15px;
  line-height: 1.4;
}

.side .sideContact h5 span {
  font-size: 11px;
  display: block;
}

.side .sideContact ul {
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 10px;
}

.side .sideContact ul li {
  border-radius: 3px;
  box-sizing: border-box;
  background: #d00000;
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  width: 48%;
  width: calc(50% - 5px);
}

.side .sideContact h4 {
  background: #8dc220;
  color: #fff;
  text-align: center;
  border-radius: 3px;
  margin-bottom: 10px;
}

.side .ShowroomName {
  color: #fff;
  font-weight: 700;
  background: #ff9900;
  line-height: 1.6;
  margin: 0;
  padding: 0;
  text-align: center;
  border-radius: 3px;
}

.side .sideContact .tel {
  font-size: 11px;
  margin-bottom: 10px;
}

.side .sideContact .tel span {
  font-size: 26px;
  display: block;
  /*text-align: center;*/
  padding-left: 21px;
  /*background-size: 15px auto;*/
  background-size: 21px auto;
}

.side .sideContact .tel .telTime {
  margin-top: 5px;
  padding-left: 0;
  font-size: 10px;
  font-weight: normal;
  color: #333;
  background: none;
  text-align: left;
  font-family: "メイリオ", "Meiryo", verdana, "ヒラギノ角ゴ Pro W3",
    "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic",
    Sans-Serif;
}

.side .ContactTime {
  font-weight: 700;
  margin: 0 0 5px;
  text-align: center;
}

.side .sideContact .btn {
  width: 100%;
  text-align: center;
}

.side .sideContact .btn a {
  display: block;
  padding: 9px 5px 5px 5px;
  font-size: 18px;
  color: #fff;
}

.side .sideContact .btn a:before,
.side .sideContact .btn a:after {
  content: none;
}

.side .sideContact .normalBtn {
  float: none;
  width: 110px;
  display: block;
  margin: 0 auto 5px;
}

.side .sideContact .normalBtn a {
  padding: 0;
  display: block;
}

.side .sideInfo {
  background: #fff;
  padding: 10px;
  margin-bottom: 10px;
}

.side .sideInfo h5,
.side .sideInfo p {
  line-height: 1.6;
}

.side .sideInfo h5 span {
  display: block;
  font-weight: bold;
}

.side .sideInfo h5 img {
  width: 100%;
  display: block;
  margin: 0 auto 10px;
}

.side .sideInfo h6 {
  font-size: 13px;
}

.side .sideInfo .bAdd {
  display: block;
}

.side .sideMenu>li {
  border-bottom: #333 dashed 1px;
  margin-bottom: 10px;
  padding-bottom: 10px;
}

.side .sideMenu li ul {
  padding-left: 20px;
}

.side .sideMenu li ul li {
  font-size: 13px;
  font-weight: bold;
  position: relative;
  list-style: disc;
}

.side .sideMenu li ul li:last-child {
  border-bottom: none;
}

.side .sideMenu li a:hover {
  text-decoration: underline;
}

.side .sideWorks {
  margin-bottom: 20px;
  position: relative;
  overflow: hidden;
}

.side .sideWorks h3 {
  background: none;
  border-radius: 0;
  margin-bottom: 0;
  padding: 0;
}

.side .sideBlog,
.side .sideWorks,
.side .sideVoice ul {
  box-sizing: border-box;
}

.side .sideBlog li,
.side .sideWorks ul li,
.side .sideVoice ul li {
  font-size: 12px;
  margin-bottom: 10px;
  padding-bottom: 10px;
  position: relative;
  line-height: 1.4;
  border-bottom: #333 dashed 1px;
  font-weight: bold;
  overflow: hidden;
}

.side .sideBlog li:last-child,
.side .sideWorks ul li:last-child,
.side .sideVoice ul li:last-child {
  margin-bottom: 0;
  padding-bottom: 5px;
}

.side .sideBlog li h4,
.side .sideWorks ul li h4,
.side .sideVoice ul li h4 {
  font-size: 14px;
  height: 40px;
  line-height: 1.4;
  margin-bottom: 0;
  background: none;
  border-radius: 0;
  overflow: hidden;
  color: #333;
  padding: 0;
  text-align: left;
}

.side .sideBlog li .thumbPict,
.side .sideWorks ul li .thumbPict,
.side .sideVoice ul li .thumbPict {
  width: 52px;
  height: 52px;
  overflow: hidden;
  float: left;
  margin-right: 10px;
  position: relative;
}

.side .sideBlog li .thumbPict img,
.side .sideWorks ul li .thumbPict img,
.side .sideVoice ul li .thumbPict img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  height: 100%;
  width: auto;
}

.side .sideBlog li span.time,
.side .sideWorks ul li span.time,
.side .sideVoice ul li span.time {
  color: #0053b7;
  font-size: 10px;
  font-weight: bold;
  display: block;
}

.side .sideBlog ul li .sideThum {
  width: 69px;
  height: 69px;
  position: relative;
  overflow: hidden;
  box-sizing: border-box;
  backface-visibility: hidden;
  display: inline-block;
  float: left;
  margin-right: 11px;
}

.side .sideBlog ul li .sideThum img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: auto;
}

.side .sideWorks .btn {
  float: right;
}

.side .sideWorks .btn a {
  font-size: 14px;
  padding: 0 30px 0 10px;
}

.side .sideVoice ul li {
  font-size: 13px;
  font-weight: bold;
  position: relative;
  border-bottom: #333 dotted 1px;
  position: relative;
  overflow: hidden;
  padding-bottom: 10px;
  margin-bottom: 10px;
}

.side .sideVoice ul li:last-child {
  padding-bottom: 0;
  margin-bottom: 0;
  border-bottom: none;
}

.side .sideVoice ul li a {
  color: #333;
  text-decoration: none;
}

.side .sideVoice ul li .catchTxt {
  font-size: 13px;
  height: 40px;
  line-height: 1.4;
  margin-bottom: 0;
  display: block;
}

.side .sideVoice ul li .time {
  color: #f5a100;
  font-size: 10px;
}

.side .sideStaff h4 {
  background: url(../img/common/side_staffttl_bg.png) no-repeat center center;
  font-size: 18px;
  text-align: center;
  line-height: 1.4;
  margin-bottom: 10px;
  color: #333;
}

.side .sideStaff img {
  margin-bottom: 0;
}

.side .sideStaff .otherLink {
  position: relative;
  padding-left: 25px;
  font-weight: bold;
  font-size: 18px;
  margin: 10px 0 0;
}

.side .sideStaff .otherLink:before,
.side .sideStaff .otherLink:after {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
}

.side .sideStaff .otherLink:before {
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: #083090;
}

.side .sideStaff .otherLink:after {
  left: 4px;
  width: 4px;
  height: 4px;
  border-top: 2px solid #fffeee;
  border-right: 2px solid #fffeee;
  transform: rotate(45deg);
}

.side .sideArea {
  margin-top: 15px;
  padding-top: 15px;
  border-top: #333 dashed 1px;
}

.side .sideArea span {
  width: 200px;
  height: 180px;
  position: relative;
  overflow: hidden;
  display: block;
  margin-bottom: 10px;
}

.side .sideArea span img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: auto;
  height: 100%;
  margin: 0;
}

.side .sideArea strong {
  font-size: 15px;
  line-height: 1.4;
}

.side .sideArea h4 {
  position: relative;
  font-size: 18px;
  background: none;
  color: #333;
}

.side .sideArea h4:before,
.side .sideArea h4:after {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
}

.side .sideArea h4:before {
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: #083090;
}

.side .sideArea h4:after {
  left: 4px;
  width: 4px;
  height: 4px;
  border-top: 2px solid #fffeee;
  border-right: 2px solid #fffeee;
  transform: rotate(45deg);
}

.side .sidePack ul {
  margin-bottom: 10px;
  padding-bottom: 10px;
  border-bottom: #333 dotted 1px;
}

.side .sideArea ul li {
  position: relative;
  padding-left: 15px;
  font-size: 13px;
  font-weight: bold;
  margin-bottom: 5px;
  line-height: 1.6;
}

.side .sideArea ul li:last-child {
  border-bottom: none;
  margin-bottom: 0;
}

.side .sideArea ul li:before,
.side .sideArea ul li:after {
  position: absolute;
  top: 8px;
  left: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
}

.side .sideArea>ul>li:before {
  width: 7px;
  height: 8px;
  background: #ff6600;
}

.side .sideArea>ul>li:after {
  left: 1px;
  width: 2px;
  height: 2px;
  top: 10px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  transform: rotate(45deg);
}

.side .sideArea ul.children li {
  background: url(./img/common/side_list_line02.png) no-repeat left center;
}

.side .sideArea ul.children li:last-child {
  background: url(./img/common/side_list_line01.png) no-repeat left center;
}

.side .sideArea .txts {
  font-size: 11px;
}

.side .sideGuide ul li {
  position: relative;
  overflow: hidden;
  background: #ff9900;
  color: #fff;
  margin-bottom: 10px;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.4;
}

.side .sideGuide ul li a {
  padding-left: 7px;
  color: #fff;
  text-decoration: none;
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
  overflow: hidden;
  font-size: 1.125rem;
  font-weight: bold;
}

.side .sideGuide ul li:last-child {
  margin-bottom: 0;
}

.side .sideGuide .contentsList li {
  background: #f5a100;
}

.side .sideCategory {
  margin-bottom: 30px;
}

.side .sideCategory h3 {
  font-size: 16px;
  border-radius: 5px;
  text-align: center;
}

.side .sideCategory>ul>li {
  font-size: 15px;
  border-bottom: #333 dotted 1px;
  line-height: 1.4;
  margin-bottom: 10px;
  padding-bottom: 10px;
}

.side .sideCategory>ul>li:first-child {
  border-top: #333 dotted 1px;
  padding-top: 10px;
}

.side .sideCategory>ul li:last-child {
  margin-bottom: 0;
}

.side .sideCategory ul li a {
  position: relative;
  display: block;
  padding-left: 25px;
  color: #333;
  text-decoration: none;
}

.side .sideCategory>ul>li>a:before {
  font-family: "Font Awesome 5 Free";
  content: "\f138";
  font-weight: 900;
  left: 5px;
  position: absolute;
  font-size: 15px;
  top: 0;
  margin: auto;
  display: block;
  color: #8dc220;
}

.side .sideCategory ul.children {
  padding-top: 5px;
}

.side .sideCategory ul.children li {
  background: #f3f3f3;
}

.side .sideCategory ul.children li:nth-child(2n) {
  background: #fff;
}

.side .sideCategory ul.children li a {
  padding-left: 30px;
}

.side .sideCategory ul.children li a:after {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 5px;
  margin: auto;
  content: "";
  vertical-align: middle;
  left: 15px;
  width: 3px;
  height: 3px;
  border-top: 1px solid #f5a100;
  border-right: 1px solid #f5a100;
  transform: rotate(45deg);
}

/*--お問い合わせ件数--*/
.side .inqCount {
  background: #459fda;
  box-sizing: border-box;
  color: #fff;
  box-shadow: 0px 1px 0px 0px #fff inset;
}

.side .inqCount h3 {
  font-size: 15px;
  padding: 10px 10px 0;
  margin-bottom: 0;
  background: none;
  text-align: center;
  border-radius: 0;
}

.side .inqCount p {
  background: #0071bc;
  font-size: 13px;
  text-align: center;
  margin: 0 10px 10px;
  font-weight: bold;
}

.side .inqCount dl {
  background: url(../img/common/inqCount_bg.png) no-repeat right bottom #fff;
  padding: 5px 5px 60px;
  box-sizing: border-box;
  border-top: #fff solid 1px;
}

.side .inqCount dt {
  font-size: 15px;
  clear: both;
  display: block;
  width: 150px;
  float: left;
  background: #f5a100;
  border-radius: 5px 0 0 5px;
  padding: 5px 0;
  text-align: center;
  color: #fff;
  font-weight: bold;
}

.side .inqCount dd {
  background: #fff;
  border-radius: 5px;
  display: block;
  padding: 5px 5px 6px 160px;
  font-size: 20px;
  color: #d00000;
  line-height: 1.3;
  text-align: right;
  font-weight: bold;
  margin-bottom: 10px;
}

.side .inqCount dd span {
  font-size: 12px;
}

.side .inqCount dd:last-of-type {
  margin-bottom: 0;
}

/* @import url("css/footer.css"); */
/* -----------------------------------------------------------
    .footer
----------------------------------------------------------- */
#topcontrol {
  width: 76px;
  height: 55px;
  padding: 10px 0;
  text-align: center;
  background: #ff7e00;
  z-index: 100;
}

.footer {
  font-size: 13px;
}

.footer .inner {
  padding: 30px 0;
}

.footer .ftrConBox {
  padding: 20px 0;
  background: #ff9900;
}

.footer .ftrConBox .inner {
  background: #fff;
  padding: 15px 215px 15px 15px;
  box-sizing: border-box;
  overflow: inherit;
  width: 1100px;
}

.footer .ftrConBox .imgLayer {
  right: 0;
  bottom: 43px;
}

.footer .ftrConBox h2 {
  position: relative;
  overflow: hidden;
  margin: 0 0 3px 0;
}

.footer .ftrConBox h2 img {
  margin-right: 10px;
}

.footer .ftrConBox h2 span {
  float: left;
  margin-right: 10px;
}

.footer .ftrConBox h2 span img {
  width: 220px;
  height: auto;
}

.footer .ftrConBox h3 {
  background: url(../img/common/ico_bucket.png) no-repeat left center;
  padding-left: 30px;
  color: #8d471f;
  font-size: 14px;
  display: inline-block;
  line-height: 1.3;
}

.footer .ftrConBox .footerTel {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.footer .ftrConBox .tel {
  margin-bottom: 10px;
  font-size: 13px;
  line-height: 1.2;
}

.footer .ftrConBox .fconbtn {
  float: right;
}

.footer .ftrConBox .fconbtn a {
  float: left;
  display: block;
  margin-right: 5px;
}

.footer .ftrConBox .fconbtn a:last-child {
  margin-right: 0;
}

.footer .ftrConBox .tel span {
  font-size: 70px;
  padding-bottom: 5px;
  padding-left: 80px;
  /*  padding-left: 50px;*/
  background: url(./img/common/ico_freedial04.png) left 60%/78px auto no-repeat;
  /*  background: url(./img/common/ico_tel00.png) no-repeat left 60%;*/
}

.footer .ftrConBox .btn {
  margin-right: 35px;
}

.footer .ftrConBox .btn a {
  padding: 8px 58px 8px 27px;
  border-radius: 10px;
  font-size: 30px;
  box-sizing: border-box;
}

.footer .ftrConBox .btn a:after {
  right: 20px;
  font-size: 24px;
  height: 24px;
}

.footer .ftrConBox .catchTxt {
  background: #0053b7;
  color: #fff;
  font-size: 24px;
  margin: 10px -215px -15px -15px;
  margin-top: 0;
  clear: both;
  padding: 0 20px;
  font-weight: bold;
}

.footer .ftrConBox strong {
  border-radius: 4px;
  color: #fff;
}

.footer .ftrConBox ul {
  position: relative;
  overflow: hidden;
  float: none;
}

.footer .ftrConBox ul li {
  border-radius: 4px;
  box-sizing: border-box;
  float: left;
  position: relative;
  overflow: hidden;
  font-size: 13px;
  font-weight: bold;
}

.footer .ftrConBox ul li:last-child {
  margin-right: 0;
}

.footer .ftrConBox ul li a {
  display: block;
  text-decoration: none;
  color: #333;
}

.footer .ftrConBox ul li img {
  float: left;
  margin-right: 15px;
}

.footer .ftrConBox ul li h4 {
  color: #fed900;
  font-size: 22px;
  line-height: 1.2;
}

/*20220204 add*/

/*確認後削除*/
.footer .ftrConBox .flex-none {
  display: block;
}

.footer .ftrConArea .footerTel {
  padding: 10px 20px 0 0;
}

.footer .ftrConBox1 {
  justify-content: space-between;
  flex-flow: row wrap;
}

.contactBox .nocolTelWrap {
  padding-right: 180px;
  flex-flow: row wrap;
  justify-content: space-between;
  letter-spacing: -0.03rem;
}

.contactBox .nocolTelCont,
.footer .ftrCon {
  width: 49%;
}

.main .emergencyBox .tel span.ShowroomName,
.nocolumn .main .contactTel .tel span.ShowroomName,
.contactBox .nocolTelCont .ShowroomName,
.contactTelWrap .ShowroomName,
.footer .ftrConArea .ShowroomName {
  color: #fff;
  font-size: 20px;
  font-weight: 700;
  background: #ff9900;
  border-radius: 5px;
  text-align: center;
  margin-bottom: 0;
}

.main .emergencyBox .tel span.ShowroomName,
.nocolumn .main .contactTel .tel span.ShowroomName {
  display: inline-block;
  padding: 3px 20px;
  margin: 10px 0 0;
}

.nocolumn .main .contactBox .nocolTelCont .tel,
.footer .ftrConArea .tel {
  padding-left: 10px;
  margin: 0;
}

.nocolumn .main .contactBox .nocolTelCont .tel span,
.footer .ftrConArea .tel span {
  font-size: 60px;
  padding: 0 0 5px 50px;
  background-size: 45px auto;
}

.nocolumn .main .contactBox .nocolTelCont .tel span {
  font-size: 46px;
}

.footer .ftrConArea .contactTime {
  line-height: 1;
  padding-bottom: 10px;
}

.nocolumn .main .contactBox .nocolumnBtnWrap,
.footer .ftrConArea .btn {
  position: absolute;
  right: 200px;
  bottom: 40px;
}

#showroom.nocolumn .main .contactBox .nocolumnBtnWrap {
  position: static;
  right: initial;
  bottom: initial;
}

.footer .ftrInfo {
  background: #fed900;
}

.footer .ftrBnr {
  position: relative;
  overflow: hidden;
  /*    padding: 30px 0;*/
  margin-bottom: 0;
  background: #459fda;
}

.footer .shopInfo {
  margin-bottom: -30px;
}

.footer .corpNumber {
  font-size: 11px;
}

.footer .ftrLogo {
  margin-bottom: 17px;
  display: block;
}

.footer .ftrLogo span {
  margin-left: 20px;
}

.footer h5,
.footer h6 {
  font-size: 13px;
  margin-bottom: 10px;
}

.footer h6 {
  font-weight: normal;
}

.footer .footerAddress01 {
  margin-bottom: 10px;
  font-size: 13px;
}

.footer .footerAddress02 {
  font-size: 13px;
}

.footer .bShowroom {
  display: none;
}

.footer nav {
  background: #eeeeee;
  margin: 0 auto;
  padding: 20px 0;
  position: relative;
  overflow: hidden;
  box-sizing: border-box;
}

.footer nav .ftrNav {
  position: relative;
  overflow: hidden;
  width: 1100px;
  padding-left: 20px;
  border-left: solid 1px #ddd;
  display: flex;
  justify-content: space-between;
  margin: 0 auto;
  box-sizing: border-box;
}

.footer nav .ftrNav>li {
  padding: 5px 20px 5px 0;
  min-width: 255px;
  box-sizing: border-box;
  border-right: solid 1px #ddd;
}

.footer nav .ftrNav li ul>li {
  position: relative;
  padding-left: 13px;
}

.footer nav .ftrNav li ul>li:before,
.footer nav .ftrNav li ul>li:after {
  position: absolute;
  top: 7px;
  left: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
}

.footer nav .ftrNav li ul>li:before {
  width: 7px;
  height: 7px;
  background: #0053b7;
}

.footer nav .ftrNav li ul>li:after {
  left: 1px;
  width: 2px;
  height: 2px;
  top: 9px;
  border-top: #fff 1px solid;
  border-right: 1px solid #fff;
  transform: rotate(45deg);
}

.footer nav .ftrNav li ul>li a {
  color: #333;
  text-decoration: none;
}

.footer nav .ftrNav li ul li ul>li {
  background: url(./img/common/list_line02.png) no-repeat left center;
}

.footer nav .ftrNav li ul li ul>li:last-child {
  background: url(./img/common/list_line01.png) no-repeat left center;
}

.footer nav .ftrNav li ul li ul>li:before,
.footer nav .ftrNav li ul li ul>li:after {
  content: none;
}

.footer .footerCom {
  padding-bottom: 150px;
  position: relative;
  overflow: hidden;
  width: 1100px;
}

.footer .footerCom ul {
  margin-bottom: 10px;
}

.footer .footerCom .tel-link:first-of-type {
  margin-right: 1em;
}

.footer .copyRight {
  /* float: right; */
  text-align: right;
}

.footer .copyRight p {
  font-size: 13px;
}

.footer .ftrCorpBnr {
  width: 575px;
  margin-top: 20px;
}

.footer .ftrCorpBnrList {
  display: flex;
  flex-flow: row wrap;
  justify-content: flex-end;
  margin: 0;
}

.footer .ftrCorpBnrList li {
  margin: 0 0 10px 10px;
}

.footer .ftrCorpBnrList li a {
  padding: 10px;
  border: 1px solid #ccc;
  display: block;
  cursor: pointer;
}

.footer .ftrCorpBnrList li a img {
  max-height: 50px;
  width: auto;
}

.footer #logopcb {
  line-height: 1;
  text-align: right;
  margin-top: 20px;
}

.footer .ftrScroll {
  padding: 3px 0;
  background: rgba(0, 0, 0, 0.7);
  position: fixed;
  bottom: 0;
  width: 100%;
  display: none;
  z-index: 100;
  font-size: 12px;
  line-height: 1.2;
}

.footer .ftrScroll .inner {
  display: flex;
  justify-content: space-between;
  margin: 10px auto;
  padding: 0;
  width: 1100px;
  overflow: visible;
}

.footer .ftrScroll .ftrCont {
  width: 1014px;
  height: 100px;
  background: #fff;
  padding: 3px 3px 3px 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  box-sizing: border-box;
  position: relative;
  overflow: hidden;
}

.footer .ftrScroll .hvFtrBnr {
  margin-right: 5px;
}

.footer .hvFtrBnr .ftrContArea {
  padding-left: 15px;
}

.footer .ftrScroll .ftrCampaign {
  float: left;
  width: 250px;
  margin-right: 5px;
  overflow: hidden;
}

.footer .ftrScroll .ftrCampaign img {
  max-width: 100%;
  height: auto;
}

.is-reflection {
  overflow: hidden;
  position: relative;
}

.is-reflection a {
  overflow: hidden;
}

.is-reflection a:after {
  -moz-animation: is-reflection 4s ease-in-out infinite;
  -moz-transform: rotate(45deg);
  -ms-animation: is-reflection 4s ease-in-out infinite;
  -ms-transform: rotate(45deg);
  -o-animation: is-reflection 4s ease-in-out infinite;
  -o-transform: rotate(45deg);
  -webkit-animation: is-reflection 4s ease-in-out infinite;
  -webkit-transform: rotate(45deg);
  animation: is-reflection 4s ease-in-out infinite;
  background-color: #fff;
  content: " ";
  height: 100%;
  left: 0;
  opacity: 0;
  position: absolute;
  top: -180px;
  transform: rotate(45deg);
  width: 30px;
}

/* ã‚¢ãƒ‹ãƒ¡ãƒ¼ã‚·ãƒ§ãƒ³ã‚’é…å»¶ã•ã›ã‚‹ */
.is-reflection+.is-reflection a:after {
  -webkit-animation-delay: .3s;
  animation-delay: .3s;
}

@keyframes is-reflection {
  0% {
    -webkit-transform: scale(0) rotate(45deg);
    transform: scale(0) rotate(45deg);
    opacity: 0;
  }

  80% {
    -webkit-transform: scale(0) rotate(45deg);
    transform: scale(0) rotate(45deg);
    opacity: 0.5;
  }

  81% {
    -webkit-transform: scale(4) rotate(45deg);
    transform: scale(4) rotate(45deg);
    opacity: 1;
  }

  100% {
    -webkit-transform: scale(50) rotate(45deg);
    transform: scale(50) rotate(45deg);
    opacity: 0;
  }
}

@-webkit-keyframes is-reflection {
  0% {
    -webkit-transform: scale(0) rotate(45deg);
    opacity: 0;
  }

  80% {
    -webkit-transform: scale(0) rotate(45deg);
    opacity: 0.5;
  }

  81% {
    -webkit-transform: scale(4) rotate(45deg);
    opacity: 1;
  }

  100% {
    -webkit-transform: scale(50) rotate(45deg);
    opacity: 0;
  }
}

.footer .ftrScroll .ftrCont h3 {
  background: #0053b7;
  color: #fff;
  font-size: 20px;
  margin: -8px 20px -8px 0;
  padding: 26px 0 26px 20px;
  position: relative;
  z-index: 1;
}

.footer .ftrScroll .ftrCont h3:after {
  border: solid 50px #0053b7;
  content: "";
  position: absolute;
  left: 50%;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 0;
  height: 0;
  transform: rotate(-45deg);
  border-radius: 0 0 5px 0;
  z-index: -1;
}

.footer .ftrScroll .tel {
  margin-left: 10px;
  line-height: 1.6;
  font-size: 11px;
  position: relative;
}

.footer .ftrScroll .tel .imgLayer {
  position: absolute;
  top: -10px;
  right: 0;
}

/*20220204 add*/

.footer .ftrContArea {
  padding-left: 30px;
}

.footer .ftrContArea .ShowroomName {
  font-size: 18px;
  font-weight: 700;
  padding-top: 4px;
}

.footer .ftrScroll .tel span {
  font-size: 46px;
  background-size: 40px auto;
  padding-left: 40px;
}
.footer .ftrScroll .ftrCont ul {
  position: relative;
  overflow: hidden;
}

.footer .ftrScroll .ftrCont ul li {
  float: left;
  font-weight: bold;
  text-align: center;
  width: 245px;
  font-size: 20px;
  font-weight: bold;
  border-radius: 5px;
  overflow: hidden;
}

.footer .ftrScroll .ftrCont ul li:first-child {
  margin-left: 0;
}

.footer .ftrScroll .ftrCont ul li:hover {
  background: rgba(255, 255, 255, 0.3);
  transition: 0.7s;
}

.footer .ftrScroll .ftrCont ul li span.msg {
  font-size: 13px;
  display: block;
  text-shadow: 1px 1px 0 #fff, -1px 1px 0 #fff, 1px -1px 0 #fff,
    -1px -1px 0 #fff;
}

.footer .ftrScroll .ftrCont ul li:hover {
  opacity: 0.8;
  transition: 0.7s;
}

.footer .ftrScroll .ftrCont ul li.ftrTel {
  display: none;
}

.footer .ftrScroll .pageTop a {
  width: 76px;
  height: 100%;
  text-align: center;
  /* display: table-cell;
  vertical-align: middle; */
  background: #ff9900;
  display: flex;
  align-items: center;
  justify-content: center;
}

.footer .ftrScroll .pageTop a:hover img {
  opacity: 0.8;
}

/*クオカード*/

.footer .ftr_floating {
  overflow: hidden;
  display: none;
  position: fixed;
  width: auto;
  height: 75px;
  bottom: 5px;
  right: 86px;
  z-index: 20;
}

.footer .ftr_floating img {
  height: 100%;
}

/* @import url("css/heading.css"); */
.main p+h2,
.main p+h3,
.main p+h4,
.main p+h5,
.main p+h6,
.main ul+h2,
.main ul+h3,
.main ul+h4,
.main ul+h5,
.main ul+h6,
.main ol+h2,
.main ol+h3,
.main ol+h4,
.main ol+h5,
.main ol+h6 {
  margin-top: 30px;
}

.main h1,
.main h2,
.main h3,
.main h4,
.main h5,
.main h6 {
  line-height: 1.5;
  clear: both;
}

.main h2 {
  background: #ff9900;
  color: #fff;
  font-size: 23px;
  padding: 8px 15px;
  margin: 0 auto 30px;
  position: relative;
  text-align: left;
}

.main h2 span {
  font-size: 17px;
  margin-left: 20px;
}

.main h2 .imgLayer {
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
}

.main h2.arrowBottom {
  border-bottom: #ff9900 solid 10px;
  margin-bottom: 40px;
  font-size: 22px;
}

.main h2.arrowBottom::after {
  content: "";
  height: 0;
  position: absolute;
  width: 0;
  border: 100px solid transparent;
  border-top: #ff9900 solid 40px;
  border-bottom-width: 0;
  top: 100%;
  left: 0;
  right: 0;
  margin: auto;
}

.main .bg01 h2 {
  margin-bottom: 0;
}

.main h2.fullWidth {
  border-top: none;
  color: #fff;
  font-size: 36px;
  font-weight: normal;
  text-align: center;
  box-shadow: none;
  position: relative;
  width: 100%;
  padding: 15px 0;
  line-height: 1.2;
  margin-bottom: 35px;
}

.main h2.fullWidth strong {
  font-weight: bold;
}

.main h2.fullWidthR {
  background: #ffa73d;
}

.main h2.arrowTtl {
  margin-bottom: 0;
  background: #8dc220;
  position: relative;
  z-index: 10;
  border-top: none;
  text-align: center;
  font-size: 36px;
}

.main h2.arrowTtl:after {
  content: " ";
  height: 0;
  position: absolute;
  width: 0;
  border: 200px solid transparent;
  border-top: #8dc220 solid 40px;
  border-bottom-width: 0;
  top: 100%;
  left: 0;
  right: 0;
  margin: auto;
}

.main h3 {
  font-size: 20px;
  border-top: #8dc220 solid 5px;
  padding: 5px 7px;
  margin-bottom: 30px;
  color: #333;
  background: #eee;
}

.main h3 a {
  color: #333;
  text-decoration: underline;
}

.main h4,
.main h4.normal {
  font-size: 18px;
  padding: 0 0 0 50px;
  margin-bottom: 15px;
  position: relative;
  line-height: 1.4;
}

.main h4:before,
.main h4:after,
.main h4.normal:before,
.main h4.normal:after {
  border-radius: 50%;
  content: "";
  display: block;
  position: absolute;
  top: 2px;
  font-size: 30px;
  line-height: 1;
  background: #ff6600;
  width: 20px;
  height: 20px;
}

.main h4:before,
.main h4.normal:before {
  left: 0;
  opacity: 0.5;
}

.main h4:after,
.main h4.normal:after {
  left: 23px;
}

.main h4 a {
  color: #333;
  text-decoration: underline;
}

.main h5 {
  background: #0053b7;
  color: #ffffff;
  font-size: 18px;
  display: inline-block;
  padding: 3px 10px;
  border-radius: 4px;
  margin-bottom: 20px;
}

.main h5 a {
  color: #fff;
  text-decoration: underline;
}

.main h6 {
  position: relative;
  font-size: 18px;
  padding-left: 20px;
  margin-bottom: 20px;
}

.main h6:before,
.main h6:after {
  position: absolute;
  top: 5px;
  left: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
}

.main h6:before {
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: #0053b7;
}

.main h6:after {
  left: 4px;
  top: 10px;
  width: 4px;
  height: 4px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
}

.main h6 a {
  color: #333;
  text-decoration: underline;
}



.tel {
  font-size: 11px;
}

.tel .bHours {
  display: none;
}

.tel span {
  background: url(./img/common/ico_fd03.png) no-repeat left 60%;
  /*  background: url(./img/common/ico_tel00.png) no-repeat left 60%;*/
  font-family: "Oswald", sans-serif;
  color: #d00000;
  font-size: 47px;
  font-weight: 800;
  line-height: 1;
  padding-left: 35px;
  display: block;
}

.tel span.dNum {
  background-size: 53px auto;
  /*background-size: 25px 37px;*/
  padding-left: 53px;
}

.bAdd {
  display: none;
}

.none {
  display: none;
}

.corpAbout .inner {
  width: 1100px;
}

.corpAbout {
  background: #bce3fe url(./img/common/ftrAbout_bg.png) no-repeat center bottom;
  border: #ccc solid 1px;
  box-shadow: 0px 0px 0px 1px #fff inset;
  padding: 10px 10px 80px;
}

.main .corpAbout h2 {
  font-size: 30px;
  line-height: 1.4;
  margin: -9px -9px 20px;
  background: #0053b7;
  border: none;
}

.corpAbout h2 span {
  display: block;
  font-size: 18px;
}

.corpAbout h2 span.en {
  color: #ebce08;
  font-size: 20px;
  display: inline-block;
}

.corpAbout p {
  font-size: 16px;
  margin-bottom: 15px;
  line-height: 1.4;
}

.main .corpAbout ul {
  overflow: hidden;
}

.main .corpAbout li {
  padding-left: 0;
  width: 48%;
  width: calc(50% - 5px);
}

.main .corpAbout li:before,
.main .corpAbout li:after {
  content: none;
}

.corpAbout .btn {
  line-height: 1.8;
}

.iframeWrap {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}

.iframeWrap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* -----------------------------------------------------------
    .mainv
----------------------------------------------------------- */
.mainv {
  margin-bottom: 0;
  z-index: 0;
  overflow: hidden;
}

.mainv .stage {
  width: 100%;
  margin: 0 auto;
  z-index: 0;
}

.mainv .stage span {
  width: 1000px;
  z-index: 10;
}

.slick-slide {
  opacity: 0.5;
  transition: 0.5s;
}

.slick-current {
  opacity: 1;
}

.mainv .stage button {
  position: absolute;
  z-index: 2000;
}

.arrows {
  width: 1110px;
  margin: 0 auto;
  position: relative;
}

.arrows button {
  position: absolute;
  border: none;
}

.arrows button.slick-prev,
.arrows button.slick-next {
  background: none;
  outline: none;
  cursor: pointer;
  width: 2000px;
  height: 500px;
}

.arrows button.slick-prev {
  right: 1050px;
  top: -500px;
}

.arrows button.slick-next {
  left: 1050px;
  top: -500px;
}

.arrows button.slick-prev:before,
.arrows button.slick-next:before {
  content: "";
  width: 100%;
  height: 100%;
  display: block;
}

.arrows .slick-prev:hover {
  background: url(./img/common/leftNav.png) right center no-repeat;
  opacity: 1;
}

.arrows .slick-next:hover {
  background: url(./img/common/rightNav.png) left center no-repeat;
  opacity: 1;
}

.slick-dots {
  position: absolute;
  bottom: -50px;
  width: 100%;
  padding: 0;
  list-style: none;
  text-align: center;
}

.slick-dots li {
  position: relative;
  display: inline-block;
  width: 12px;
  height: 12px;
  margin: 0 10px;
  padding: 0;
  cursor: pointer;
}

.slick-dots li button {
  font-size: 0;
  line-height: 0;
  display: block;
  width: 12px;
  height: 12px;
  cursor: pointer;
  color: transparent;
  border: 0;
  outline: none;
  background: transparent;
  position: relative;
}

.slick-dots li button:hover,
.slick-dots li button:focus {
  outline: none;
}

.slick-dots li button:hover:before,
.slick-dots li button:focus:before {
  opacity: 1;
}

.slick-dots li button:before {
  font-size: 6px;
  line-height: 20px;
  position: absolute;
  top: 0;
  left: 0;
  width: 12px;
  height: 12px;
  content: "";
  text-align: center;
  display: block;
  background: #ccc;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.slick-dots li.slick-active button:before {
  background: #fed900;
}

/* -----------------------------------------------------------
    contents
----------------------------------------------------------- */
.contents {
  margin: 40px auto;
  position: relative;
  width: 1000px;
}

#top .contents {
  margin: 10px auto 40px;
}

.nocolumn .contents,
#staff.nocolumn .contents {
  margin-bottom: 0;
  width: auto;
}

.contents section {
  margin: 0 auto;
  border-bottom: none;
}

/*--メインカラム--*/
/* -----------------------------------------------------------
    main
----------------------------------------------------------- */
.main {
  width: 750px;
  float: right;
}

.nocolumn .main {
  width: auto;
  float: none;
}

/*--基本の記事スタイル設定--*/
.main section {
  margin-bottom: 30px;
  padding-bottom: 30px;
  position: relative;
}

.main section:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}

.main article {
  margin-bottom: 30px;
  position: relative;
  overflow: hidden;
}

.main article {
  margin-bottom: 45px;
}

.main .comInqCount {
  margin-bottom: 15px;
}

.main .topFormarea {
  position: relative;
  display: flex;
  margin-bottom: 0;
  padding-bottom: 30px;
}

.main .topFormTextbox {
  width: 376px;
}

.main .comMessage {
  margin-bottom: 40px;
}

.main .comVoiceL {
  margin-bottom: 50px;
}

.main .comBlogL {
  margin-bottom: 60px;
}

.main .comCheck {
  margin-bottom: 0px;
}

.comBnrL {
  margin-bottom: 0;
}

.main article.bg03 {
  margin-bottom: 0;
}

.main .dotLine {
  border-bottom: #333 dotted 1px;
  padding-bottom: 0;
}

.main section p:last-child {
  margin-bottom: 0;
}

.main p {
  margin-bottom: 15px;
  font-size: 16px;
}

.main blockquote {
  border: solid 1px #ccc;
  background: #fffeee;
  padding: 15px;
  margin-bottom: 15px;
}

.main blockquote p {
  margin: 0;
}

.main ul li {
  position: relative;
  padding-left: 13px;
}

.main ul li:before,
.main ul li:after {
  position: absolute;
  top: 8px;
  left: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
}

.main ul li:before {
  width: 7px;
  height: 7px;
  background: #ff6600;
}

.main ul li:after {
  left: 2px;
  width: 2px;
  height: 2px;
  top: 10px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  transform: rotate(45deg);
}

.main ol {
  margin-top: 15px;
  padding-left: 40px;
  margin-bottom: 15px;
}

.main ol li {
  list-style-type: decimal;
  font-size: 16px;
  line-height: 1.5;
  margin: 7px 0 0 0;
}

.main table {
  margin: 0 0 20px;
  width: 100%;
  border-spacing: 1px;
}

#corporate .main table {
  margin-top: 30px;
}

.main table th,
.main table td {
  padding: 15px;
  font-size: 15px;
  line-height: 1.5;
  text-align: left;
  vertical-align: top;
  border-bottom: #fff solid 1px;
}

.main table th {
  width: 25%;
  background: #0053b7;
  color: #fff;
  font-weight: normal;
}

.main table tr:first-child th,
.main table tr:first-child td {
  border-top: #fff solid 1px;
}

.main table td {
  position: relative;
  overflow: hidden;
  background: #f3f3f3;
}

.main table td h6 {
  margin-bottom: 5px;
  font-size: 15px;
  padding: 0;
}

.main table td h6:before,
.main table td h6:after {
  content: none;
}

.main table td .btnDetail {
  float: right;
  margin: 0;
}

.main table td a {
  margin-bottom: 0;
}

#corporate .main table td br.bShowroom {
  display: none;
}

/* @import url("css/resetAll.css"); */
.resetAll *+h2,
.resetAll *+h3,
.resetAll *+h4,
.resetAll *+h5,
.resetAll *+h6 {
  margin-top: 0;
}

.resetAll h2,
.resetAll h3,
.resetAll h4,
.resetAll h5,
.resetAll h6 {
  background: none;
  color: initial;
  line-height: 1;
  margin: 0;
  padding: 0;
  position: static;
  border: none;
  display: block;
  border-radius: 0;
}

.resetAll h2 span {
  font-size: initial;
  margin-left: 0;
}

.resetAll h2::before,
.resetAll h2::after,
.resetAll h3::before,
.resetAll h3::after,
.resetAll h4::before,
.resetAll h4::after,
.resetAll h5::before,
.resetAll h5::after,
.resetAll h6::before,
.resetAll h6::after {
  border-radius: 0;
  position: static;
  font-size: initial;
  top: initial;
  left: initial;
  right: initial;
  bottom: initial;
  background: none;
  width: auto;
  height: auto;
  opacity: 1;
  margin: 0;
  border: none;
  transform: initial;
}

.resetAll ul,
.resetAll ol {
  margin: 0;
  padding: 0;
  position: static;
}

.resetAll ul li,
.resetAll ol li {
  position: static;
  padding: 0;
  margin: 0;
  line-height: 1;
  list-style-type: initial;
}

.resetAll ul li::before,
.resetAll ul li::after,
.resetAll ol li::before,
.resetAll ol li::after {
  position: static;
  top: initial;
  left: initial;
  right: initial;
  bottom: initial;
  content: "";
  vertical-align: initial;
  padding: 0;
  margin: 0;
  width: auto;
  height: auto;
  background: none;
  border: none;
  color: initial;
  transform: initial;
}

.resetAll table {
  margin: 0;
  width: auto;
  border-spacing: none;
}

.resetAll table th,
.resetAll table td {
  padding: 0;
  line-height: 1;
  text-align: initial;
  vertical-align: initial;
  border: none;
  width: auto;
  background: none;
  color: initial;
  font-weight: initial;
  position: static;
  overflow: initial;
}

.resetAll table tr:first-child th,
.resetAll table tr:first-child td {
  border: none;
}

/*--共通パーツ--*/
.main .photoUL {
  margin: 0 0 0 0;
  padding: 0;
  overflow: hidden;
}

.main .photoUL li {
  width: 236px;
  min-height: 166px;
  margin: 0 16px 20px 0;
  padding: 0;
  float: left;
  background: none;
  font-size: 13px;
  overflow: hidden;
  position: relative;
}

.main .photoUL li:before,
.main .photoUL li:after {
  content: none;
}

.main .photoUL li:nth-child(3n) {
  margin-right: 0;
}

.main .photoUL li:nth-child(3n + 1) {
  clear: both;
}

.main .photoUL li span {
  width: 236px;
  height: 166px;
  position: relative;
  overflow: hidden;
  display: block;
  margin-bottom: 5px;
}

.main .photoUL li img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: auto;
}

.main .photoUL li h5 {
  font-size: 15px;
  display: block;
  margin: 0;
  padding: 0;
  background: none;
  color: #333;
}

.main .photoUL.whiteBox {
  background: rgba(255, 255, 255, 0.7);
  padding: 15px;
}

.main .warryBox,
.main .meritBox {
  position: relative;
  overflow: hidden;
  margin-bottom: 20px;
}

.main .warryBox h2 {
  margin: 0 auto 15px;
  color: #fff;
  font-size: 36px;
  font-weight: normal;
  background: #f5a100;
  box-shadow: none;
  line-height: 1.2;
  position: relative;
  overflow: hidden;
  border-top: none;
  padding: 15px 0;
  text-align: center;
}

.main .warryBox h2 span {
  font-size: 34px;
  display: block;
  margin: 0;
}

.main .meritBox {
  position: relative;
  overflow: hidden;
  margin-bottom: 20px;
}

.main .meritBox h2 {
  background: #f5a100;
  margin: -25px -25px 20px;
  border-top: none;
  font-size: 25px;
  position: relative;
  z-index: 10;
}

.main .warryBox p,
.main .meritBox p {
  margin-top: 0;
}

.main .warryBox img {
  float: left;
  position: relative;
}

.main .meritBox img {
  float: left;
  margin-right: 30px;
}

.main .meritBox .meritTxt {
  overflow: hidden;
}

.main .warryList {
  position: relative;
  overflow: hidden;
  margin-bottom: 0;
}

.main .warryList,
.main .meritList {
  border-top: #333 dashed 1px;
  padding-top: 10px;
  overflow: hidden;
}

.main .meritList {
  padding-top: 5px;
  border-top: #ccc solid 1px;
  margin-bottom: 20px;
}

.main .warryList li,
.main .meritList li {
  background: none;
  border-bottom: #333 dashed 1px;
  position: relative;
  font-size: 19px;
  font-weight: bold;
  padding: 0 0 5px 30px;
  margin: 0 0 10px;
}

.main .meritList li {
  font-size: 24px;
  padding: 0 0 0 35px;
  border-bottom: #ccc solid 1px;
}

.main .warryList li:last-child,
.main .meritList li:last-child {
  margin-bottom: 0;
}

.main .warryList>li:before,
.main .warryList>li:after,
.main .meritList>li:before,
.main .meritList>li:after {
  position: absolute;
  top: 12px;
  left: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
}

.main .warryList>li:before {
  background: #0071bc;
  border-radius: 4px;
  width: 25px;
  height: 25px;
}

.main .warryList>li:after {
  left: 5px;
  top: 10px;
  width: 12px;
  height: 6px;
  border-left: 4px solid #fff;
  border-bottom: 4px solid #fff;
  border-right: none;
  border-top: none;
  transform: rotate(-45deg);
}

.main .meritList>li:before {
  background-color: #d00000;
  border-radius: 50%;
  width: 20px;
  height: 20px;
}

.main .meritList>li:after {
  left: 3px;
  width: 7px;
  height: 7px;
  top: 17px;
  border-top: 3px solid #fff;
  border-right: 3px solid #fff;
}

.main .onayamiImg {
  margin: 40px 0 0 10px;
  float: right;
}

.main .warryList img {
  display: none;
}

#apartment .main .warryList {
  margin: -10px 0 0;
}

#apartment .main .warryList li {
  font-size: 24px;
}

#apartment .main .warryList>li:before,
#apartment .main .warryList>li:after {
  position: absolute;
  top: 10px;
  left: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
}

#apartment .main .warryList>li:after {
  left: 4px;
  top: 13px;
}

.main .warryList li strong {
  background: -webkit-gradient(linear,
      left top,
      left bottom,
      color-stop(0.4, transparent),
      color-stop(0, #fcff00));
  background: linear-gradient(transparent 40%, #fcff00 0%);
  display: inline-block;
  line-height: 1;
}

.main .meritList li strong {
  color: #d00000;
}

.main .meritBox .diagnosisList {
  z-index: 10;
  display: flex;
  -ms-align-items: center;
  align-items: center;
  justify-content: space-between;
}

.main .meritBox .diagnosisList li {
  border-radius: 4px;
  background: #8dc220;
  color: #fff;
  font-size: 28px;
  font-weight: bold;
  text-align: center;
  width: 24%;
  width: calc(25% - 10px);
  padding: 3px 0;
}

.main .meritBox .diagnosisList li:before,
.main .meritBox .diagnosisList li:after {
  content: none;
}

/*---バナーエリア--*/
.main .bnrArea {
  position: relative;
  overflow: hidden;
}

.main .bnrArea li {
  float: left;
  margin-top: 30px;
  padding: 0;
}

.main .bnrArea li:nth-child(2n) {
  float: right;
}

.main .bnrArea li:nth-child(-n + 2) {
  margin-top: 0;
}

.main .bnrArea li:before,
.main .bnrArea li:after {
  content: none;
}

.consultationBox,
.estimatesBox {
  float: left;
  margin-right: 40px;
  width: 480px;
  position: relative;
}

.estimatesBox {
  margin-right: 0;
}

.consultationBox a,
.estimatesBox a {
  text-decoration: none;
  color: #fff;
  display: block;
}

.consultationBox h3,
.estimatesBox h3 {
  background: #0053b7;
  color: #fff;
  font-size: 20px;
  padding: 0 15px;
  border-top: none;
  margin: 0;
  line-height: 1.8;
}

.consultationBox .inBox,
.estimatesBox .inBox {
  background: #fff;
  box-sizing: border-box;
  padding: 10px;
  position: relative;
}

.consultationBox .inBox img {
  margin-top: -45px;
}

.estimatesBox a {
  color: #333;
}

.estimatesBox .imgLayer {
  bottom: 0;
  left: 0;
  z-index: 0;
}

.estimatesBox .inBox {
  text-align: right;
  position: relative;
  overflow: hidden;
}

.estimatesBox h4 {
  padding: 0 0 0 50px;
  position: relative;
  margin: 0 0 15px;
}

.estimatesBox .catchTtl {
  background: #0053b7;
  border-radius: 30px;
  text-align: center;
  color: #fff;
  font-size: 17px;
  font-weight: bold;
  padding: 2px 10px;
  margin-bottom: 5px;
}

.estimatesBox .telBox {
  float: right;
  text-align: left;
}

.estimatesBox .tel {
  font-size: 13px;
}

.estimatesBox .tel span {
  background-size: 42px auto;
  font-size: 38px;
  padding-left: 45px;
}

.main .shopAccess ul {
  margin-top: 0;
  margin-bottom: 10px;
  padding-bottom: 10px;
}

.main .shopAccess ul>li {
  padding: 0;
  margin-top: 0;
  margin-bottom: 30px;
  text-align: center;
}

.main .shopAccess ul li:last-child {
  border-bottom: none;
  margin-bottom: 0;
}

.main .shopAccess ul li:before,
.main .shopAccess ul li:after {
  display: none;
}

.main .shopAccess ul li .shopMain {
  position: relative;
  overflow: hidden;
  margin-bottom: 20px;
  padding: 0;
}

.main .shopAccess ul li .shopMain li {
  /* width: 350px;
  height: 207px; */
  overflow: hidden;
  position: relative;
  float: left;
  margin-bottom: 0;
}

.main .shopAccess ul li .shopMain li:nth-child(2n) {
  float: right;
}

.main .shopAccess ul li .shopMain li img {
  /* position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: auto; */
}

.main .shopAccess ul li iframe {
  width: 100%;
}

.main .shopAccess ul li .tel {
  font-size: 11px;
  padding: 10px;
  line-height: 1.5;
  margin: 0;
}

.main .shopAccess ul li .tel span {
  background: url(./img/common/ico_freedial03.png) no-repeat left center;
  font-size: 29px;
  padding-left: 40px;
  line-height: 1;
}

#corporate .main .shopAccess ul li .tel span {
  font-size: 46px;
}

.main .shopAccess ul li h3 {
  text-align: left;
}

.main .shopAccess .contactBox h3 {
  text-shadow: #fff 2px 0px 2px, #fff -2px 0px 2px, #fff 0px -2px 2px,
    #fff -2px 0px 2px, #fff 2px 2px 2px, #fff -2px 2px 2px, #fff 2px -2px 2px,
    #fff -2px -2px 2px, #fff 1px 2px 2px, #fff -1px 2px 2px, #fff 1px -2px 2px,
    #fff -1px -2px 2px, #fff 2px 1px 2px, #fff -2px 1px 2px, #fff 2px -1px 2px,
    #fff -2px -1px 2px, #fff 1px 1px 2px, #fff -1px 1px 2px, #fff 1px -1px 2px,
    #fff -1px -1px 2px;
  font-size: 26px;
  line-height: 1;
  text-align: left;
}

.main .shopAccess ul li h4 {
  border-radius: 4px;
  background-color: #f5a100;
  padding: 5px 15px;
  text-align: center;
  font-size: 20px;
  color: #fff;
  display: inline-block;
}

.main .shopAccess ul li h4:before,
.main .shopAccess ul li h4:after {
  content: none;
}

.main .shopAccess ul li .shopImg {
  float: right;
  width: 45%;
  height: 450px;
  overflow: hidden;
  position: relative;
}

.main .shopAccess ul li .shopImg img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: auto;
  height: 100%;
  margin: 0;
}

.main .shopAccess .shopSummery {
  overflow: hidden;
  text-align: left;
  margin-bottom: 30px;
  border-bottom: #333 dashed 1px;
  padding-bottom: 10px;
  clear: both;
}

.main .shopAccess .shopSummery h5 {
  color: #333;
  background: none;
  font-size: 15px;
  margin-bottom: 0;
  padding: 0 0;
  position: relative;
}

.main .shopAccess .contactBox {
  text-align: left;
  /* overflow: hidden; */
}

.main .shopAccess .contactBox .imgLayer {
  top: -27px;
  bottom: 0;
}

.main .shopAccess .contactBox .tel {
  padding: 0;
}

.nocolumn .main .shopAccess .contactBox .tel {
  font-size: 18px;
  margin-right: 18px;
}

.nocolumn .main .shopAccess .contactBox .btn a {
  font-size: 16px;
  line-height: 1.4;
}

#showroom .main .shopAccess ul li:last-child .shopSummery {
  border-bottom: none;
}

#showroom .main .shopAccess ul li .shopSummery .bShowroom {
  display: none;
}

.main .showroomRecommend {
  position: relative;
  overflow: hidden;
  border-bottom: none;
}

.main .showroomRecommend .catchTxt {
  background: #f5a100;
  color: #fff;
  font-size: 28px;
  font-weight: bold;
  padding: 5px 0;
  text-align: center;
  position: relative;
  margin-bottom: 20px;
}

.main .showroomRecommend .catchTxt:after {
  content: " ";
  height: 0;
  position: absolute;
  width: 0;
  border: 60px solid transparent;
  border-top: #f5a100 solid 25px;
  top: 100%;
  left: 0;
  right: 0;
  margin: auto;
}

.main .showroomRecommend h2.catchTtl {
  z-index: 10;
  padding: 10px 0 0;
  width: auto;
  margin: 0 auto 15px;
  color: #333;
  font-size: 43px;
  background: none;
  box-shadow: none;
  line-height: 1.2;
  position: relative;
  overflow: hidden;
  border-top: none;
}

.main .showroomRecommend h2.catchTtl img {
  float: left;
  margin: -10px 10px 0 0;
}

.main .showroomRecommend ul {
  margin-bottom: 20px;
  counter-reset: recommend;
}

.main .showroomRecommend li {
  border-bottom: #333 dotted 1px;
  font-size: 22px;
  font-weight: bold;
  position: relative;
  overflow: hidden;
  padding: 0;
  counter-increment: recommend;
}

.main .showroomRecommend li strong {
  background: -webkit-gradient(linear,
      left top,
      left bottom,
      color-stop(0.6, transparent),
      color-stop(0, #ffff66));
  background: linear-gradient(transparent 60%, #ffff66 0%);
  line-height: 1;
  display: inline-block;
}

.main .showroomRecommend li:first-child {
  border-top: #333 dotted 1px;
  margin-top: 5px;
}

.main .showroomRecommend li:after {
  content: none;
  width: auto;
  height: auto;
}

.main .showroomRecommend li:before {
  background: #0053b7;
  border-radius: 5px;
  color: #fff;
  content: "理由その" counter(recommend);
  padding: 5px 20px;
  line-height: 1.2;
  margin: 5px 10px 5px 0;
  display: inline-block;
  position: relative;
  width: auto;
  height: auto;
  top: inherit;
}

.main .showroomRecommend li span {
  border-radius: 5px;
  background: #d00000;
  color: #fff;
  padding: 5px 20px;
  line-height: 1.2;
  margin: 5px 10px 5px 0;
  display: inline-block;
}

/*--------.profileBox-----------*/
.main .profileBox {
  background: #f5a100;
  color: #fff;
  position: relative;
  overflow: hidden;
}

.main .profileBox a {
  color: #fff;
  text-decoration: none;
}

.main .profileBox h2 {
  background: none;
  box-shadow: none;
  border-top: none;
  display: inline-block;
  padding: 0;
  margin: 15px 20px;
  float: left;
}

.main .profileBox img {
  display: block;
  margin-bottom: 0;
}

.main .profileBox h3 {
  display: inline-block;
  background: none;
  border-top: none;
  padding: 0;
  color: #fff;
  margin-bottom: 0;
  font-size: 15px;
}

.main .profileBox .plofInfo {
  padding: 0 20px 15px;
  position: relative;
  overflow: hidden;
}

.main .profileBox .plofInfo p {
  font-size: 14px;
  line-height: 1.4;
  margin-bottom: 0;
}

.main .profileBox .overflowH p {
  font-size: 15px;
}

/*---外壁診断 雨漏り診断--*/
.combnrList {
  position: relative;
  overflow: hidden;
}

.combnrList li {
  padding: 0;
}

.combnrList li:before,
.combnrList li:after {
  content: none;
}

.combnrList li:hover {
  opacity: 0.8;
  transition: 0.7s;
}

.combnrList li a {
  color: #fff;
  text-decoration: none;
}

.main .combnrList {
  margin: 0 0 30px;
}

.main .combnrList li {
  float: left;
  padding-left: 0;
}

.main .combnrList li:nth-child(2n) {
  float: right;
}

.main .combnrList li::before,
.main .combnrList li::after {
  display: none;
}

.main .combnrList li img {
  width: 100%;
}

.main .combnrList li.sideEstimate {
  display: none;
}

.bnrCatch .catchTtl {
  text-align: center;
  font-size: 25px;
}

/*---外壁塗装工事パック商品--*/
.main .serviceContents {
  position: relative;
  overflow: hidden;
  padding-bottom: 0;
}

.main .packItem {
  position: relative;
  padding: 10px;
  margin: 10px auto 30px;
}

.main .packItem:last-child {
  margin-bottom: 10px;
}

.main .packWall {
  /*  background: #d00000 url(./img/common/bg_menubox.png) center center;*/
  background: #d00000;
  /*
	background-image: linear-gradient(
	-45deg,
	#109635 25%,
	#8dc220 25%,
	#8dc220 50%,
	#109635 50%,
	#109635 75%,
	#8dc220 75%,
	#8dc220
	);
	background-size: 13px 13px;
	background-attachment: fixed;
*/
}

.main .packRoof {
  /*  background: #0053b7 url(./img/common/bg_menubox.png) center center;*/
  background: #0053b7;
  /*
	background-image: linear-gradient(
	-45deg,
	#0050b2 25%,
	#0053b7 25%,
	#0053b7 50%,
	#0050b2 50%,
	#0050b2 75%,
	#0053b7 75%,
	#0053b7
	);
	background-size: 13px 13px;
	background-attachment: fixed;
*/
}

#menu .main .packWall {
  position: relative;
  z-index: 0;
}

#menu .main .packRoof {
  position: relative;
  z-index: 0;
}

#menu .main .packWall:after {
  content: "";
  display: block;
  position: absolute;
  z-index: 0;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: transparent url(./img/common/menu_wall_catchimg.png) no-repeat 95% 95%;
  visibility: visible;
}

#menu .main .packRoof:after {
  content: "";
  display: block;
  position: absolute;
  z-index: 0;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: transparent url(./img/common/menu_roof_catchimg.png) no-repeat 95% 95%;
  visibility: visible;
}

.main .packOther {
  background: #885421;
  position: relative;
  margin-bottom: 30px;
}

.main .packOther2.packItem {
  padding: 0;
}

.main .packItem a {
  display: block;
  padding: 10px;
  text-decoration: none;
  color: #333;
}

.main .packItem ul {
  position: relative;
  overflow: hidden;
  clear: both;
  padding-bottom: 10px;
  border-bottom: #fff 1px dashed;
}

.main .packItem ul li {
  margin: 10px 0 0;
  position: relative;
  overflow: hidden;
  border-bottom: none;
  background: #fff;
  width: 360px;
  box-sizing: border-box;
  float: left;
  padding: 0;
}

.main .packItem ul li:nth-child(-n + 2),
#menu .main .packItem ul li:nth-child(-n + 2) {
  margin-top: 0;
}

.main .packItem ul li:nth-child(2n) {
  float: right;
}

.main .packItem ul li:nth-child(2n + 1) {
  clear: both;
}

.main .packItem ul li:before,
.main .packItem ul li:after {
  content: none;
}

.main .packOther article {
  width: 360px;
  height: auto;
  float: left;
  margin: 10px 0 0;
  box-sizing: border-box;
}

.main .packOther article:nth-child(2n) {
  float: right;
}

.main .packOther article:nth-child(-n + 2) {
  margin-top: 0;
}

.main .packOther article.layout02 {
  width: auto;
  height: auto;
  float: none;
  color: #fff;
}

.main .packOther article img {
  width: 100%;
  height: auto;
}

.main .packOther article a {
  padding: 0;
  color: #fff;
}

.main .packItem h2 {
  background: url(./img/common/ico_servicepack_paint01.png) no-repeat right top;
  border-top: none;
  padding: 25px 0 10px 0;
  margin: -20px 0 0 0;
  font-size: 35px;
  line-height: 1.2;
  box-shadow: none;
}

.main .packItem h2 span {
  margin: 0;
  display: block;
  font-size: 20px;
}

.main .packItem h2 img {
  vertical-align: text-bottom;
}

.main .packTtl {
  position: relative;
  margin-bottom: 10px;
}

.main .packTtl .imgLayer {
  left: 118px;
  top: -10px;
  z-index: 22;
}

.main .packTtl h3 {
  font-size: 48px;
  width: 118px;
  float: left;
  background: none;
  margin-bottom: 0;
  border-top: none;
  padding: 0;
  display: flex;
  -ms-align-items: center;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  position: relative;
}

.main .packTtl h3 span,
#menu .main .packRoof .packTtl h3 span.wall {
  display: inline-block;
  background: #0053b7;
  color: #fff;
  width: calc(50% - 1px);
  text-align: center;
  line-height: 1;
  padding: 8px 0 2px;
  margin-top: 2px;
}

.main .packRoof .packTtl h3 span {
  background: #ff9900;
}

.main .packOther .packTtl h3 span.wallTtl {
  background: #8dc220;
}

.main .packTtl h3 span:nth-child(-n + 2) {
  margin-top: 0;
}

.main .packImg {
  width: 212px;
  height: 118px;
  overflow: hidden;
  position: relative;
  float: right;
}

.main .packImg img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: auto;
}

.main .packItem h4 {
  /*  font-size: 26px;*/
  font-size: 20px;
  padding: 0;
  margin-bottom: 0;
}

.main .packItem h4:before,
.main .packItem h4:after {
  content: none;
}

.main .packItem h4 span {
  font-size: 14px;
  display: block;
}

.main .packSummary {
  position: relative;
  overflow: hidden;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  margin-bottom: 5px;
}

.main .packSummary h3 {
  background: none;
  border-top: none;
  padding: 0;
  margin: 0;
  font-size: 26px;
  line-height: 1;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.main .packSummary .imgIco {
  position: absolute;
  top: 0;
  left: 0;
  width: 132px;
  height: auto;
}

.main .packSummary .priceTxt {
  font-size: 75px;
  font-weight: 900;
  color: #d00000;
  line-height: 0.9;
  margin-bottom: 2px;
  float: right;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  font-family: "Oswald", sans-serif;
}

.main .packSummary .priceTxt span.unitTxt {
  font-family: "メイリオ", "Meiryo", verdana, "ヒラギノ角ゴ Pro W3",
    "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic";
  font-size: 40px;
  font-weight: bold;
  width: 31px;
  display: inline;
  width: 100%;
}

.main .packOther .priceTxt span.unitTxt {
  font-size: 30px;
}

.main .packSummary .packCatch,
.main .packSummary .enduranceTxt {
  background: #ff9900;
  border-radius: 4px;
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.2;
  display: inline-block;
  padding: 5px 0;
  letter-spacing: normal;
  width: 118px;
  display: block;
  margin: 2px 0 0;
  text-align: center;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.main .packRoof .packCatch {
  background: #0053b7;
}

.main .packOther .packSummary .packCatch,
.main .packOther .packSummary .enduranceTxt {
  background: #d00000;
}

.main .packItem .txts {
  font-size: 10px;
  margin-bottom: 5px;
  clear: both;
}

.main .packItem .menuMi {
  background: #8dc220;
  color: #fff;
  font-size: 13px;
  margin: 0 0 5px;
  padding: 0 5px;
}

.main .packItem .btn {
  background: none;
}

.main .packItem .btn a {
  background: rgba(0, 0, 0, 0.5);
  border: none;
  border-radius: 2px;
  box-shadow: none;
  -moz-box-shadow: none;
  font-size: 18px;
  padding: 5px 30px 5px 15px;
  margin-top: 10px;
}

.main .packWall .btn a {
  background: #9e0000;
  color: #fff;
}

.main .packRoof .btn a {
  background: #003270;
  color: #fff;
}

.main .packItem .btn a:after {
  right: 10px;
  font-size: 14px;
  top: 5px;
}

.main .packItem .btnDetail {
  background: #f5a100;
  background: linear-gradient(to right,
      #f5a100 0%,
      #f5a100 87%,
      #d78d00 87%,
      #d78d00 100%);
  width: 100%;
  text-align: center;
  border-radius: 0;
  font-size: 18px;
  margin: 0;
  border-radius: 4px;
  box-shadow: inset 0 -4px 0px 0px rgba(105, 105, 105, 0.3);
  position: relative;
  padding: 5px 40px 5px 10px;
  box-sizing: border-box;
}

.main .packItem .btnDetail:after {
  font-family: "Font Awesome 5 Free";
  content: "\f138";
  font-weight: 900;
  right: 15px;
  position: absolute;
  font-size: 16px;
  height: 16px;
  line-height: 1;
  top: 0;
  bottom: 0;
  margin: auto;
  display: block;
}

#menu .main .packItem ul {
  margin-bottom: 0;
  padding: 0;
  border-bottom: none;
  position: relative;
  z-index: 2;
}

#menu .main .serviceContents h5 {
  font-size: 16px;
  position: relative;
  padding-left: 0;
  margin-top: 0;
  background: #0053b7;
  border-radius: 0;
  display: block;
}

/*------------------------------------------------------------
	comWorkBox
------------------------------------------------------------*/
.main .smallWorks {
  margin-bottom: 40px;
  border: 1px solid #ccc;
  background-color: #fff;
}

.main .smallWorks h2 {
  margin-bottom: 0;
}

.main .smallWorks .workList {
  padding: 20px 18px;
  box-sizing: border-box;
}

.main .smallWorks .workList li {
  margin: 0 0 10px 10px;
  width: 207px;
  float: left;
  position: relative;
  border: #00633d 5px solid;
  border-radius: 4px;
  position: relative;
  box-sizing: border-box;
  padding: 0;
  overflow: hidden;
}

.main .smallWorks .workList li:before,
.main .smallWorks .workList li:after {
  content: none;
}

.main .smallWorks .workList li .textImg {
  position: absolute;
}

.main .smallWorks .workList li .ttl {
  padding: 5px 8px;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.2;
  margin-bottom: 0;
}

.main .smallWorks .workList li .ttl span {
  display: block;
  font-size: 12px;
  font-weight: normal;
}

.main .smallWorks .workList .liSpec {
  width: 278px;
  margin-left: 0;
}

.main .smallWorks .workList .liSpec .ttl {
  padding: 10px;
  font-size: 25px;
}

.main .smallWorks .workList li .price {
  margin: 0 0 0 5px;
  color: #d00000;
  font-size: 40px;
  font-weight: bold;
  font-family: Impact, Gadget, "Anton", sans-serif;
  line-height: 1;
}

.main .smallWorks .workList li .price span {
  font-size: 30px;
}

.main .smallWorks .workList .liSpec .price {
  margin: 0 10px 5px;
  font-size: 50px;
}

.main .smallWorks table {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 0;
}

.main .smallWorks table th,
.main .smallWorks table td {
  background: none;
  padding: 10px;
  font-size: 20px;
  font-weight: bold;
  border-top: 1px solid #ccc;
  border-bottom: none;
  vertical-align: middle;
}

.main .smallWorks table th {
  width: auto;
  border-left: 1px solid #ccc;
}

.main .smallWorks table tr:first-child th,
.main .smallWorks table tr:first-child td {
  border-top: #ccc solid 1px;
}

.main .smallWorks table tr th:first-of-type {
  border-left: none;
}

.main .smallWorks table td {
  text-align: right;
  color: #d00000;
  font-size: 30px;
  font-family: Impact, Gadget, "Anton", sans-serif;
}

.main .smallWorks table td span {
  font-size: 14px;
}

/*----劣化度チェック-----*/
.main .deteriorationChk {
  box-sizing: border-box;
  text-align: center;
}

.main .deteriorationChk h2 {
  text-align: left;
}

.main .deteriorationChk .checkPoint {
  position: relative;
  overflow: hidden;
}

.main .deteriorationChk .checkPoint ul {
  position: relative;
  overflow: hidden;
  margin: 0 0 20px;
}

.main .deteriorationChk .checkPoint ul li {
  width: 236px;
  margin: 20px 20px 0 0;
  float: left;
  background: none;
  padding: 0;
  text-align: left;
}

.main .deteriorationChk .checkPoint ul li:nth-child(-n + 3) {
  margin-top: 0;
}

.main .deteriorationChk .checkPoint ul li:before,
.main .deteriorationChk .checkPoint ul li:after,
.main .deteriorationChk .checkLegend ul li:before,
.main .deteriorationChk .checkLegend ul li:after {
  display: none;
}

.main .deteriorationChk .checkPoint ul li:nth-child(3n),
.main .deteriorationChk .checkLegend ul li:nth-child(3n) {
  margin-right: 0;
}

.main .deteriorationChk .checkPoint ul li .checkpointThumb {
  position: relative;
  font-size: 13px;
  width: 236px;
  height: 146px;
  position: relative;
  overflow: hidden;
}

.main .deteriorationChk .checkPoint ul li .checkpointThumb img {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 100%;
  height: auto;
}

.main .deteriorationChk .checkPoint ul li .checkTtl {
  background: #0053b7;
  padding: 5px;
  text-align: center;
  width: 100%;
  box-sizing: border-box;
  margin-bottom: 10px;
  bottom: 0;
  position: relative;
  z-index: 1;
}

.main .deteriorationChk .checkPoint ul li .checkTtl h4 {
  color: #fff;
  display: block;
  padding: 0;
  font-size: 16px;
  margin: 0;
}

.main .deteriorationChk .checkPoint ul li .checkTtl h4:before,
.main .deteriorationChk .checkPoint ul li .checkTtl h4:after {
  display: none;
}

.main .deteriorationChk .checkPoint ul li .checkTtl p {
  background: #fff;
  border-radius: 5px;
  color: #d00000;

  display: block;
  font-size: 24px;
  margin: 5px 0 0;
  line-height: 1.2;
}

.main .deteriorationChk .checkPoint ul li p {
  display: inline-block;
  font-size: 13px;
  margin-bottom: 0;
}

.nocolumn .main .deteriorationChk .checkPoint {
  float: right;
  width: 750px;
  margin-bottom: 0;
}

.nocolumn .main .deteriorationChk .checkPoint h3 {
  background: #0053b7;
  color: #fff;
  border: none;
  margin-bottom: 20px;
}

.main .deteriorationChk .checkLegend {
  position: relative;
  overflow: hidden;
  padding: 0 0 20px;
  border-bottom: #ccc solid 1px;
  margin-bottom: 20px;
}

#first .main .deteriorationChk .checkLegend {
  border-bottom: none;
  padding: 0 0 20px;
}

.main .deteriorationChk .checkLegend h3 {
  float: left;
  border-radius: 50%;
  border-top: none;
  background: #8dc220;
  width: 124px;
  height: 124px;
  color: #fff;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 20px 0 0;
  font-size: 18px;
  padding: 0;
  overflow: visible;
}

.main .deteriorationChk .checkLegend h3 .imgLayer {
  right: 0;
  bottom: -30px;
}

.main .deteriorationChk .checkLegend ul {
  background: url(./img/common/checkLegend_arw.png) no-repeat right center;
  padding: 20px 100px 20px 0;
  position: relative;
  overflow: hidden;
}

.main .deteriorationChk .checkLegend ul li {
  width: 145px;
  background: #fffeee;
  border: #cccccc solid 1px;
  border-radius: 3px;
  box-shadow: 13px 13px 0px 0px rgba(0, 0, 0, 0.2);
  box-sizing: border-box;
  margin: 0 35px 0 0;
  padding: 5px;
  text-align: center;
  font-size: 13px;
  line-height: 1.4;
  float: left;
}

.main .deteriorationChk .checkLegend ul li h4 {
  background: #333333;
  color: #fff;
  text-align: center;
  font-size: 18px;
  border-radius: 4px;
  padding: 0;
  margin: 0 0 5px;
}

.main .deteriorationChk .checkLegend ul li h4:before,
.main .deteriorationChk .checkLegend ul li h4:after {
  content: none;
}

.main .deteriorationChk .checkLegend ul li span {
  color: #d00000;
  display: block;
  font-size: 18px;
}

.main .deteriorationChk .checkLegend ul li strong {
  font-size: 13px;
}

.main .deteriorationChk .checkLegend ul li strong span {
  display: inline-block;
  font-size: 13px;
}

.nocolumn .main .deteriorationChk .checkLegend {
  width: 230px;
  float: left;
  text-align: center;
  margin-top: 0px;
  display: block;
  padding: 0;
  border: none;
  margin-bottom: 0;
}

.nocolumn .main .deteriorationChk .checkLegend .imgLayer {
  position: inherit;
}

.nocolumn .main .deteriorationChk .checkLegend h3 {
  width: auto;
  height: auto;
  display: block;
  border-radius: 5px;
  float: none;
  font-size: 20px;
  z-index: 1;
  margin: 0;
}

.nocolumn .main .deteriorationChk .checkLegend ul {
  padding: 15px 10px 45px 0;
  background: url(./img/common/checkLegend_arw02.png) no-repeat center bottom;
  margin: -5px 0 0;
}

.nocolumn .main .deteriorationChk .checkLegend ul li {
  width: 100%;
  height: auto;
  margin: 0 0 15px;
  box-shadow: 10px 10px 0px 0px rgba(0, 0, 0, 0.2);
}

/*----comMessage-----*/
.main .msgBox {
  position: relative;
  overflow: hidden;
  text-align: center;
}

.main .msgTxt {
  position: relative;
  overflow: hidden;
  text-align: left;
}

.main .msgTxt p {
  margin-bottom: 15px;
  font-size: 16px;
}

.main .msgTxt h3 {
  background: none;
  border-top: none;
  color: #333;
  font-size: 24px;
  padding: 0;
  display: inline-block;
  margin-bottom: 20px;
}

.main .msgTxt h3 span {
  color: #fed900;
  font-weight: bold;
  display: block;
  margin: 0;
}

.main .msgTxt h4 {
  font-size: 17px;
  border-top: none;
  background: none;
  margin: 0 0 15px;
  padding: 0;
}

.main .msgPhoto {
  width: 227px;
  float: right;
  margin: 0 0 0 30px;
  text-align: right;
}

.main .msgPhoto .ceoPict {
  width: 227px;
  height: 268px;
  overflow: hidden;
  position: relative;
  margin-bottom: 10px;
}

#contact .main .msgPhoto {
  margin: 0;
}

.main .msgPhoto .ceoPict img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: auto;
  height: 100%;
}

.main .msgPhoto h5 {
  color: #333;
  font-size: 14px;
  background: none;
  margin: 0 0 5px;
  padding: 0;
}

.main .msgPhoto p {
  font-size: 23px;
  font-weight: bold;
  margin-top: 0;
  line-height: 1.2;
}

.main .msgPhoto p span {
  font-size: 16px;
}

.main .msgPhoto p span.en {
  font-size: 14px;
  color: #f4cd0b;
  margin-right: 0;
}

.main .msgPhoto p.btn a {
  padding: 10px 35px 10px 20px;
  background: #8dc220;
  border-color: #8dc220;
}

/*----comArea-----*/
.main .comAreaBox {
  position: relative;
  overflow: hidden;
}

.main .comAreaBox .bg01 {
  position: relative;
  overflow: hidden;
}

.main .comAreaBox img.imgLayer {
  right: 20px;
  top: 20px;
}

.main .comAreaBox p.areaTxt {
  background: rgba(255, 255, 255, 0.7);
  padding: 20px;
  margin-bottom: 0;
}

.main .comAreaBox ul {
  padding: 15px;
}

.main .comAreaBox ul li {
  padding: 0;
  width: 33%;
  width: calc(33% - 9px);
  margin: 10px 15px 0 0;
}

.main .comAreaBox ul li:before,
.main .comAreaBox ul li:after {
  content: none;
}

.main .comAreaBox ul li:nth-child(3n) {
  margin-right: 0;
}

.main .comAreaBox ul li:nth-child(-n + 3) {
  margin-top: 0;
}

.main .comAreaBox ul li.btn a {
  padding: 5px 15px 5px 5px;
  font-size: 14px;
}

/*-----------.targetArea--------*/
.main .targetArea {
  position: relative;
}

.main .targetArea h2 {
  margin-bottom: 1px;
  box-sizing: border-box;
}

.main .targetArea .area {
  position: absolute;
  top: 12px;
  right: 10px;
}

.main .targetArea .satisfied {
  position: absolute;
  bottom: 5px;
  right: 3px;
  display: block;
  text-align: center;
  margin-bottom: 0;
}

.main .targetArea .satisfied img {
  z-index: 1;
  position: relative;
}

.main .targetArea .satisfied span {
  background: #0053b7;
  border-radius: 3px;
  font-size: 16px;
  display: block;
  padding: 5px 10px;
  color: #fff;
  font-weight: bold;
  line-height: 1.3;
  width: 310px;
  box-sizing: border-box;
  margin: 0 auto;
  text-align: left;
  bottom: 40px;
  position: absolute;
  z-index: 0;
}

.main .targetArea .showroom {
  position: absolute;
  top: 70px;
  left: 20px;
  z-index: 0;
}


.main .targetArea .btn {
  line-height: 1;
  position: absolute;
  bottom: 25px;
  right: 25px;
  margin-bottom: 0;
}

.main .targetArea .btn a {
  padding: 13px 40px 13px 20px;
}

/*--吹き出し大テキスト--*/
.main .balloonBox {
  background: #0053b7;
  border-radius: 3px;
  color: #fff;
  position: relative;
  padding: 15px;
  margin-bottom: 20px;
  clear: both;
}

.main .balloonBox p {
  margin: 0;
  font-size: 32px;
  font-weight: bold;
  line-height: 1.5;
}

.main .balloonBox p strong {
  color: #fffc00;
}

#showroom .main .balloonBox {
  padding: 15px;
}

#showroom .main .balloonBox p {
  font-size: 18px;
}

#diagnosis .main .balloonBox,
#rainleaking .main .balloonBox {
  text-align: center;
}

#diagnosis .main .balloonBox p {
  font-size: 20px;
}

#rainleaking .main .balloonBox {
  margin: 57px auto 0;
  width: 1000px;
}

#rainleaking .main .balloonBox .imgLayer {
  right: 0;
  bottom: 0;
}

#colorsimulation .main .balloonBox {
  background: none;
  padding: 0;
  color: #333;
}

#colorsimulation .main .balloonBox p strong {
  color: #d00000;
}

/*--basicKnow--*/
.main .basicKnow {
  position: relative;
  overflow: hidden;
}

.main .basicKnow .catchTtl {
  color: #333;
  font-size: 55px;
  font-weight: bold;
  line-height: 1.2;
  background: rgba(255, 255, 255, 0.7);
  padding: 15px;
  margin-bottom: 0;
}

.main .basicKnow .pointList {
  margin-bottom: 20px;
  padding-bottom: 20px;
  border-bottom: #cccccc solid 1px;
}

.main .basicKnow .pointList li {
  position: relative;
  width: 236px;
  height: auto;
  margin: 0 20px 0 0;
  font-size: 14px;
  line-height: 1.4;
}

.main .basicKnow .pointList li:nth-child(3n) {
  margin-right: 0;
}

.main .basicKnow .pointList li .pointImg {
  position: relative;
  width: 236px;
  overflow: hidden;
  margin-bottom: 10px;
}

.main .basicKnow .pointList li img {
  display: block;
  position: relative;
  top: inherit;
  left: inherit;
  transform: none;
  width: 100%;
  height: auto;
}

.main .basicKnow .pointList li .imgLayer {
  right: 0;
  bottom: 0;
  position: absolute;
  width: auto;
  width: 25%;
}

.main .basicKnow .pointList li h6 {
  background: none;
  font-size: 15px;
  padding: 0;
  margin: 10px 0 5px;
  line-height: 1.4;
}

.main .basicKnow .pointList li h6:before,
.main .basicKnow .pointList li h6:after {
  content: none;
}

.main .basicKnow .pointList li h6 strong {
  color: #d00000;
  display: block;
}

.main .basicKnow .pointList li p {
  width: auto;
  padding: 0;
  margin: 0;
  font-size: 14px;
  line-height: 1.7;
}

.main .basicKnow .pointTxt .imgL20 {
  margin-top: 20px;
}

.nocolumn .main .basicKnow .pointList li {
  width: 316px;
  height: auto;
  text-align: left;
}

.nocolumn .main .basicKnow .pointList li .pointImg {
  width: 316px;
  margin-bottom: 10px;
}

.nocolumn .main .basicKnow .pointList li .imgLayer {
  bottom: inherit;
  top: 0;
  width: auto;
}

.nocolumn .main .basicKnow .pointList li h6 {
  font-size: 20px;
}

/*----comLawpriceWhy-----*/
.main .lawpriceWhy {
  margin-bottom: 30px;
}

.nocoloumn .main .lawpriceWhy {
  width: 1000px;
  margin: 0 auto;
}

.main .lawpriceWhy .catchTtl {
  font-size: 29px;
  line-height: 1.2;
  font-weight: bold;
  text-align: center;
}

.main .lawpriceWhy .catchTtl strong {
  color: #d00000;
}

.main .lawpriceWhy .highCost {
  background-color: #8dc220;
  padding: 25px;
  margin: 25px 0;
}

.main .lawpriceWhy .highCost h3 {
  color: #fff;
  font-size: 50px;
  font-weight: normal;
  padding: 0;
  margin: -5px 0 0;
  background: none;
  border-top: none;
  text-align: center;
  line-height: 1.3;
}

.main .lawpriceWhy .highCost h3 strong {
  font-weight: normal;
}

.main .lawpriceWhy .highCost ul {
  position: relative;
}

.main .lawpriceWhy .highCost ul li {
  background: rgba(0, 0, 0, 0.2);
  padding: 10px;
  width: 300px;
  box-sizing: border-box;
  float: left;
  margin: 0 25px 0 0;
  position: relative;
}

.main .lawpriceWhy .highCost ul li:before,
.main .lawpriceWhy .highCost ul li:after {
  content: none;
}

.main .lawpriceWhy .highCost ul li:last-child {
  margin-right: 0;
}

.main .lawpriceWhy .highCost ul li img {
  margin-bottom: 10px;
}

.main .lawpriceWhy .highCost ul li h4 {
  border-radius: 50%;
  background: #ff6600;
  width: 57px;
  height: 57px;
  color: #fff;
  font-size: 13px;
  position: absolute;
  top: -10px;
  left: 3px;
  padding: 0;
  margin: 0;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1.2;
}

.main .lawpriceWhy .highCost ul li h4:before,
.main .lawpriceWhy .highCost ul li h4:after {
  display: none;
}

.main .lawpriceWhy .highCost ul li p {
  display: block;
  background: #fff;
  font-weight: bold;
  font-size: 23px;
  padding: 10px;
  line-height: 1.2;
  margin-bottom: 0;
}

/*----comLawpriceReason-----*/
.main .lowpriceReason {
  margin-bottom: 30px;
}

.nocolumn .main .lowpriceReason {
  width: 1000px;
  margin: 0 auto;
}

.main .lowpriceReason .lowcost ul {
  position: relative;
  overflow: hidden;
}

.main .lowpriceReason .lowcost ul li {
  background-color: #8dc220;
  padding: 25px;
  width: 490px;
  box-sizing: border-box;
  float: left;
  margin: 20px 20px 0 0;
  position: relative;
}

.main .lowpriceReason .lowcost ul li:nth-child(2n) {
  margin-right: 0;
}

.main .lowpriceReason .lowcost ul li:nth-child(-n + 2) {
  margin-top: 0;
}

.main .lowpriceReason .lowcost ul li:before,
.main .lowpriceReason .lowcost ul li:after {
  content: none;
}

.main .lowpriceReason .lowcost ul li.fullW {
  margin-right: 0;
  width: 100%;
}

.main .lowpriceReason .lowcost ul li h4 {
  background: rgba(0, 0, 0, 0.2);
  color: #fff;
  padding: 10px;
  font-size: 30px;
  margin: 0 0 30px;
  position: relative;
}

.main .lowpriceReason .lowcost ul li.fullW h4 {
  padding: 0 25px;
}

.main .lowpriceReason .lowcost ul li h4:before {
  display: none;
}

.main .lowpriceReason .lowcost ul li h4:after {
  content: " ";
  height: 0;
  position: absolute;
  width: 0;
  border: 25px solid transparent;
  border-top: rgba(0, 0, 0, 0.2) solid 25px;
  top: 100%;
  left: 50%;
  margin-left: -25px;
  border-radius: 0;
  background: none;
}

.main .lowpriceReason .lowcost ul li h4 span {
  display: inline-block;
  line-height: 1.3;
  padding-top: 5px;
}

.main .lowpriceReason .lowcost ul li.fullW span {
  display: flex;
  -ms-align-items: center;
  align-items: center;
  padding: 0;
}

.main .lowpriceReason .lowcost ul li h4 span.reasonIco {
  background: url(./img/common/comLowprice_ico.png) no-repeat center center;
  color: #fff;
  width: 110px;
  height: 110px;
  font-size: 23px;
  padding: 0;
  margin: -10px 10px 0 0;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  float: left;
}

.main .lowpriceReason .lowcost ul li.fullW span.reasonIco {
  margin-top: 0;
}

.main .lowpriceReason .lowcost ul li h4 strong {
  font-size: 12px;
  line-height: 1.2;
  margin-top: 5px;
  word-break: break-word;
  white-space: pre;
}

.main .lowpriceReason .lowcost ul li p {
  font-size: 30px;
  color: #fff;
  line-height: 1.2;
  font-weight: bold;
  margin-bottom: 0;
}

.main .lowpriceReason .lowcost ul li .compareBox {
  background: #fff;
  padding: 30px 25px;
}

.main .lowpriceReason .lowcost ul li .compareBox h6:first-child {
  margin-top: 0;
}

.main .lowpriceReason .lowcost ul li .compareBox hr {
  border-top: #333 dotted 1px;
  display: block;
  margin-top: 25px;
}

/*----comQuality-----*/
.main .qualityBox .catchTtl {
  position: relative;
  font-size: 45px;
  font-weight: bold;
  margin: 10px 0 15px;
  text-align: left;
  line-height: 1.2;
}

.main .comparePaint .catchKpt,
.main .qualityBox .catchKpt {
  font-size: 37px;
  line-height: 1.2;
  color: #333;
  font-weight: bold;
}

.main .qualityBox .catchTtl .txtL {
  font-size: 78px;
  line-height: 1.2;
}


.main .qualityBox .catchTtl .imgLayer {
  right: 0;
  top: -90px;
}

.main .catchTtl strong {
  color: #d00000 !important;
}

.main .qualityBox .catchTtl .catchIco {
  float: left;
  margin-top: -10px;
}

.main .qualityBox h3 {
  margin: 30px 0 20px;
}

.main .qualityBox h3 span {
  border-radius: 4px;
  background: #ff9900;

  color: #fff;
  display: inline-block;
  padding: 0px 10px;
  margin: 10px;
  font-size: 20px;
}

.main .qualityBox h3 strong {
  color: #d00000;
}

.main .qualityBox h4,
.main .qualityBox h5 {
  font-size: 18px;
  margin-top: 0;
}

.main .qualityBox .catchTxt {
  font-size: 23px;
}

.main .qualityBox ul {
  margin-bottom: 20px;
}

.main .qualityBox .photoUL li {
  width: 240px;
  margin: 0 15px 0 0;
}

.main .qualityBox .photoUL li:nth-child(3n) {
  margin-right: 0;
}

.main .qualityBox .photoUL li img {
  position: relative;
  top: inherit;
  left: inherit;
  transform: none;
  margin-bottom: 5px;
}

.main .qualityBox .flowWall-notice {
  display: none;
}

.main .qualityBox p {
  font-size: 16px;
}

.main .qualityBox dl dt {
  background: #f5a100;
  color: #fff;
  padding: 5px 10px;
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 20px;
}

.main .qualityBox dl dd {
  margin-bottom: 30px;
}

.main .commitFlow {
  position: relative;
  overflow: hidden;
}

.main .commitFlow li {
  background: none;
  width: 369px;
  margin: 0;
  float: left;
  padding: 0;
}

.main .commitFlow li:before,
.main .commitFlow li:after {
  content: none;
}

.main .commitFlow li h4 {
  border-radius: 5px;
  background: #0053b7;
  text-align: center;
  color: #fff;
  padding: 0;
  margin-bottom: 10px;
  text-shadow: none;
}

.main .commitFlow li h4:before,
.main .commitFlow li h4:after {
  display: none;
}

.main .commitFlow li:nth-child(2) {
  width: 229px;
  margin: 0 84px 0 12px;
  position: relative;
}

.main .commitFlow li:nth-child(3) {
  width: 285px;
}

.main .commitFlow li:nth-child(2):before,
.main .commitFlow li:nth-child(2):after,
.main .commitFlow li:nth-child(3):before {
  position: absolute;
  z-index: 10;
}

.main .commitFlow li:nth-child(2):before,
.main .commitFlow li:nth-child(3):before {
  content: " ";
  height: 0;
  width: 0;
  border: 55px solid transparent;
  border-left: #f5a100 solid 48px;
  left: 125%;
  top: 50%;
  margin-top: -25px;
  background: none;
}

.main .commitFlow li:nth-child(3):before {
  border-left: #fff solid 48px;
  left: -8%;
  z-index: 8;
}

.main .commitFlow li:nth-child(2):after {
  background: #f5a100;
  content: "クリア";
  color: #fff;
  font-size: 20px;
  font-weight: bold;
  left: 95%;
  top: 50%;
  width: 80px;
  padding: 15px 0;
  text-align: right;
  transform: none;
  height: auto;
  border: none;
  border-left: #fff solid 2px;
}

.main .commitPoint {
  position: relative;
  margin-bottom: 30px;
}

.main .commitPoint .imgLayer {
  top: 68px;
  left: 56.5%;
}

/*--comFlowWall--*/
.main .flowList {
  border-radius: 5px;
  background: #8dc220;
  padding: 10px;
  position: relative;
  overflow: hidden;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: space-around;
  clear: both;
}

.main .flowList h3 {
  color: #fff;
  font-size: 23px;
  float: left;
  background: none;
  border: none;
  padding: 0 5px;
  line-height: 1.2;
  margin: 0;
}

.main .flowList ul {
  position: relative;
  overflow: hidden;
  margin: 0;
  padding: 0;
  display: flex;
  justify-content: space-between;
}

.main .flowList ul li {
  border-radius: 10px;
  background: #fff;
  font-size: 16px;
  color: #8dc220;
  font-weight: bold;
  padding: 0;
  text-align: center;
  margin: 0 5px 0 0;
  width: 58px;
  height: 58px;
  line-height: 1.2;
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
}

.main .flowList ul li:before,
.main .flowList ul li:after {
  content: none;
}

.main .flowList ul li.stxt {
  font-size: 14px;
}

.main .flowList ul li:last-child {
  margin-right: 0;
}

.main .flowList.flowRoof ul li {
  width: 74px;
}

.nocolumn .main .flowList h3 {
  font-size: 31px;
}

.nocolumn .main .flowList ul li {
  font-size: 20px;
  width: 78px;
  height: 78px;
}

.nocolumn .main .flowList.flowRoof ul li {
  width: 100px;
}

.nocolumn .main .flowList ul li.stxt {
  font-size: 16px;
}

#diagnosis .main .flowList {
  background: #004575;
}

#diagnosis .main .flowList ul li {
  width: 70px;
  color: #004575;
}

#diagnosis .main .flowList ul li:first-child {
  background: #d00000;
  color: #fff;
}

/*--comSelectPoint--*/
.main .selectPoint ol {
  counter-reset: selectP;
  padding: 0;
  margin: 0 0 20px;
}

.main .selectPoint li {
  padding: 0;
  position: relative;
  overflow: hidden;
  background: none;
  counter-increment: selectP;
  padding: 0;
  list-style: none;
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 15px;
}

.main .selectPoint li:last-child {
  margin-bottom: 0;
}

.main .selectPoint li span {
  position: relative;
  color: #fff;
  background: url(./img/common/ico_point.png) no-repeat center center;
  width: 113px;
  height: 113px;
  float: left;
  margin-right: 15px;
  font-size: 22px;
  text-align: center;
  line-height: 1.2;
  padding-top: 25px;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.main .selectPoint li span:after {
  content: "\A" counter(selectP, decimal-leading-zero);
  white-space: pre;
  line-height: 1;
  font-size: 36px;
}

.main .selectPoint li h3 {
  background: none;
  border-top: none;
  font-size: 36px;
  display: table-cell;
  padding: 0;
  margin-bottom: 5px;
}

.main .selectPoint li h3 strong {
  color: #d00000;
}

.main .comparePaint h2 {
  font-size: 30px;
}

.main .compareTable {
  width: 100%;
  table-layout: fixed;
}

.main .compareTable th,
.main .compareTable td {
  vertical-align: top;
  text-align: center;
  width: auto;
  border-right: #fff solid 1px;
  border-bottom: #fff solid 1px;
}

.main .compareTable th {
  padding: 10px 10px;
  font-weight: bold;
  background: #0053b7;
  color: #fff;
  box-sizing: border-box;
  vertical-align: middle;
}

.main .compareTable th:first-of-type {
  width: 12%;
}

.main .compareTable td {
  font-weight: normal;
  font-size: 13px;
  text-align: left;
  padding: 10px 5px 10px 50px;
  height: 62px;
  overflow: hidden;
  border-collapse: collapse;
  background: #efefef;
  box-sizing: border-box;
  line-height: 1.4;
}

.main .compareTable td:last-child {
  border-right: none;
}

.main .compareTable td span {
  font-size: 30px;
  font-weight: bold;
  float: left;
  display: block;
  border-right: #ccc solid 1px;
  margin-right: 15px;
  padding-right: 5px;
  box-shadow: 2px 0px 0px 0px #fff;
  width: 38px;
  text-align: center;
  left: 5px;
  box-sizing: border-box;
  position: absolute;
}

#menu .main .compareTable th.ourCompany,
#apartment .main .compareTable th.ourCompany {
  width: 36%;
}

.main .compareTable td.ourCompany span {
  color: #d00000;
}

.main .enqueteBox ul {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.main .enqueteBox ul li {
  background: none;
  width: 48%;
  width: calc(50% - 8px);
  padding: 0;
  box-sizing: border-box;
}

.main .enqueteBox ul li a {
  text-decoration: none;
  color: #333;
}

.main .enqueteBox ul li img {
  border: #ccc solid 1px;
  box-sizing: border-box;
}

.main .enqueteBox ul li h3 {
  background: none;
  border: 0;
  margin: 5px 0 0;
  padding: 0;
  color: #f5a100;
}

.main .enqueteBox ul li .contTxt {
  font-size: 18px;
  font-weight: bold;
}

.main .iDeal .catchTtl {
  font-size: 43px;
  font-weight: bold;
  line-height: 1.4;
}

.main .iDeal .catchTtl strong {
  color: #d00000;
}

.main .iDeal .worksBox {
  margin-bottom: 30px;
}

.main .iDeal .worksList {
  padding-bottom: 0;
}

.main .iDeal .worksList article {
  float: left;
  margin: 0 21px 20px 0;
  padding: 0;
  position: relative;
}

.main .iDeal .worksList article:nth-child(4n) {
  margin-right: 0;
}

.main .iDeal .worksList article:nth-child(3n + 1) {
  clear: none;
}

.main .iDeal .worksList article:nth-child(4n + 1) {
  clear: both;
}

.nocolumn .main .iDeal .worksList article:nth-child(3n) {
  margin: 0 18px 20px 0;
}

/*---comIdea---*/
.main .comIdea {
  margin-bottom: 29px;
}

.nocolumn .main .comIdea {
  width: 1000px;
  margin: 0 auto;
}

.main .comIdea .ttl {
  margin-bottom: 3px;
}

.main .comIdea ul {
  display: flex;
  justify-content: space-between;
  justify-content: center;
}

.nocolumn .comIdea ul {
  justify-content: center;
}

.main .comIdea ul:after {
  content: none;
}

.main .comIdea li {
  padding-left: 0;
  float: none;
  width: 182px;
  margin: 7px;
  box-sizing: border-box;
}

.main .comIdea li:before,
.main .comIdea li:after {
  content: none;
}

.main .comIdea li img {
  display: block;
  margin: 0 auto;
}

.main .comIdea li span {
  font-size: 18px;
  padding: 10px 10px;
  position: relative;
  color: #fff;
  font-weight: bold;
  line-height: 1.4;
  text-align: left;
  border-radius: 6px;
  background-color: #0053b7;
  display: block;
  margin-bottom: 30px;
}

.main .comIdea li span:after {
  content: "";
  height: 0;
  position: absolute;
  width: 0;
  border: 10px solid transparent;
  border-top-color: #0053b7;
  top: 100%;
  left: 0;
  right: 0;
  margin: auto;
}

.main .comIdea li:first-child {
  padding-left: 0;
}

.main .contactBox {
  background: #ffc000 url(./img/common/bg_menubox.png) center center;
  clear: both;
  padding: 15px 15px 0;
  position: relative;
  margin: 25px auto;
  box-sizing: border-box;
}

.main .contactBox h3 {
  background: none;
  border: none;
  padding: 0;
  margin-bottom: 10px;
}

.main .contactBox h3 img {
  margin-right: 5px;
}

.main .contactBox .imgLayer {
  right: -20px;
  bottom: 0;
  z-index: 1;
}

.main .contactBox .contactCatch {
  background: #0053b7;
  z-index: 2;
  color: #fff;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.3;
  margin: 0 -15px 0;
  padding: 5px 15px;
  position: relative;
}

.main .contactBox .telBox {
  background: #fff;
  padding: 10px;
  overflow: hidden;
  margin: 0 160px 15px 0;
  position: relative;
  z-index: 1;
}

.main .contactBox .telBox .contactLogo {
  float: left;
  width: 220px;
  margin: 0 30px 0 5px;
}

.main .contactBox .telBox h6 {
  margin-bottom: 0;
}

.main .contactBox .telBox p {
  text-shadow: none;
}

.main .contactBox .telBox .tel {
  font-size: 11px;
  font-weight: normal;
  text-align: left;
  margin: 0 10px 0 0;
  color: #333;
  display: block;
  position: relative;
  overflow: hidden;
  float: left;
  line-height: 1;
}

.main .contactBox .telBox .tel span {
  color: #d00000;
  letter-spacing: -0.02em;
  font-size: 46px;
  /*font-size: 32px;*/
  font-weight: 900;
  line-height: 1;
  margin: 0;
  display: block;
  padding-bottom: 5px;
  background-size: 25px auto;
  /*padding-left: 35px;
*/
  background-size: 60px auto;
  padding-left: 65px;
}

/*20220203 add*/
.main .contactL_contNmbArea {
  margin: 0;
}

.main .contactL_contNmbArea .flex {
  justify-content: space-between;
  flex-flow: row wrap;
}

.contactL_contNmb {
  width: 49%;
}

.contactL_contNmbArea .ShowroomName {
  color: #fff;
  font-size: 16px;
  font-weight: 700;
  margin-bottom: 0;
  text-align: center;
  background: #ff9900;
  border-radius: 5px;
}

.contactL_contNmbArea .tel {
  padding-left: 10px;
}

.main .contactBox .telBox .contactL_contNmbArea .tel span {
  color: #d00000;
  letter-spacing: -0.02em;
  font-size: 44px;
  font-weight: 900;
  line-height: 1;
  margin: 0;
  display: block;
  padding: 0 0 5px 37px;
  background-size: 32px auto;
}

.main .contactBox .telBox .contactL_contNmbArea .btn {
  position: absolute;
  bottom: 0;
  right: 0;
  margin: 0;
}

.main .contactBox .telBox .btn {
  box-sizing: border-box;
  margin: 0 10px 0 0;
  float: right;
}

.main .contactBox .telBox .btn:hover {
  opacity: 0.8;
  transition: 0.7s;
}

.main .contactBox .telBox .btn a {
  box-shadow: 0px 3px 0px 0px rgba(255, 255, 255, 0.3) inset;
  padding: 10px 33px 10px 23px;
  font-size: 18px;
  background-size: 17px auto;
  box-sizing: border-box;
  margin: 3px 0;
}

.main .contactBox ul {
  position: relative;
  overflow: hidden;
  margin: 0 0 10px;
}

.main .contactBox ul li:last-child {
  margin-right: 0;
}

.nocolumn .main .contactBox {
  background: #fff;
  border: #ffc000 solid 10px;
  border-image: url(./img/common/bg_border_y.png) 9 9 round;
  /*  border-image: url(./img/common/bg_border_g.png) 9 9 round;*/
  /*  border-image: url(./img/common/bg_menubox.png) 9 9 round;*/
  padding: 10px;
  width: 1000px;
  margin: 30px auto 0;
}

.main .contactBox .floatL img {
  position: absolute;
  top: -34px;
  left: -5px;
}

.nocolumn .main .contactBox .inner {
  background: #fff;
  padding: 15px 220px 15px 15px;
  box-sizing: border-box;
  overflow: inherit;
  width: 1100px;
}

.nocolumn .main .contactBox .imgLayer {
  right: 0;
  bottom: -10px;
  top: inherit;
}

.nocolumn .main .contactBox h2 {
  position: relative;
  overflow: hidden;
  margin: 0 0 10px;
  background: none;
  padding: 0;
  border-top: none;
  box-shadow: none;
}

.nocolumn .main .contactBox h2 span {
  float: left;
  margin-right: 10px;
}

.nocolumn .main .contactBox h2 span img {
  width: 220px;
  height: auto;
}

.nocolumn .main .contactBox h2 img:first-child {
  margin: 0 10px 0 0;
}

.nocolumn .main .contactBox h3 {
  background: url(./img/common/ico_bucket.png) no-repeat left center;
  padding-left: 30px;
  color: #8d471f;
  font-size: 14px;
  display: inline-block;
  line-height: 1.3;
}

.nocolumn .main .contactBox .tel {
  float: left;
  margin-right: 15px;
  font-size: 14px;
  line-height: 1.2;
}

.nocolumn .main .contactBox .tel span {
  display: block;
  font-size: 70px;
  padding-left: 65px;
  background-size: 60px auto;
}

.nocolumn .main .contactBox a {
  display: block;
}

.nocolumn .main .contactBox .btn {
  margin-bottom: 0;
}

.nocolumn .main .contactBox .btn a {
  font-size: 24px;
  padding: 15px 45px 15px 25px;
}

.nocolumn .main .contactBox .btn a:before {
  width: 20px;
  height: 20px;
}

.nocolumn .main .contactBox .btn a:after,
.menuSingle .main .contactBox .btn a:after,
#diagnosis .main .contactBox .btn a:after,
#rainleaking .main .contactBox .btn a:after,
#apartment .main .contactBox .btn a:after {
  transform: rotate(90deg);
}

.nocolumn .main .contactBox .btn a:after {
  top: 0;
  bottom: 0;
  display: block;
  margin: auto;
}

.nocolumn .main .contactBox .catchTxt {
  background: #0053b7;
  color: #fff;
  font-size: 20px;
  margin: 0 -20px -20px -20px;
  clear: both;
  padding: 0 20px;
  font-weight: bold;
}

.nocolumn .main .contactBox strong {
  border-radius: 4px;
  color: #fff;
}

.nocolumn .main .contactBox ul {
  position: relative;
  overflow: hidden;
  float: none;
}

.nocolumn .main .contactBox ul li {
  border-radius: 4px;
  box-sizing: border-box;
  float: left;
  position: relative;
  overflow: hidden;
  font-size: 13px;
  font-weight: bold;
}

.nocolumn .main .contactBox ul li:last-child {
  margin-right: 0;
}

.nocolumn .main .contactBox ul li a {
  display: block;
  text-decoration: none;
  color: #333;
}

.nocolumn .main .contactBox ul li img {
  float: left;
  margin-right: 15px;
}

.nocolumn .main .contactBox ul li h4 {
  color: #fed900;
  font-size: 22px;
  line-height: 1.2;
}

/*20220208 add*/

.nocolumn .contactL_contNmbArea .flex {
  justify-content: initial;
}

.nocolumn .contactL_contNmb {
  width: 38.5%;
}

.nocolumn .main .contactL_contNmbArea .contactTime {
  margin-top: 0;
}

.nocolumn .main .contactL_contNmbArea .tel span {
  font-size: 45px;
  padding-left: 45px;
  background-size: 40px auto;
}

.nocolumn .contactL_contNmb .contactTime {
  font-size: 18px;
}

.nocolumn .main .contactL_contNmbArea .btn {
  position: absolute;
  right: 200px;
  bottom: 10px;
}

.main .contactTel h3 {
  border-top: none;
  color: #fff;
  margin: 0;
  background: #0053b7;
}

.main .contactTel {
  margin-bottom: 30px;
  position: relative;
}

#colorsimulation .main .contactTel h4,
#apartment .main .contactTel h4,
#contact .main .contactTel h4,
#wall .main .contactTel h4,
#roof .main .contactTel h4 {
  display: inline-block;
  margin-bottom: 10px;
}

.main .contactTel .tel span {
  font-size: 65px;
  padding-left: 90px;
  display: block;
  margin-right: 20px;
}

.main .contactTel .tel span.dNum {
  padding-left: 45px;
  background-size: 39px auto;
  padding-bottom: 10px;
}

.nocolumn .main .contactTel .tel span {
  font-size: 75px;
}

.main .contactTel .inBox {
  border: #ccc solid 1px;
  background: #fff;
  padding: 15px;
  overflow: hidden;
}

#corporate .main .contactTel {
  margin-top: -10px;
}

.main .contactTel .imgLayer {
  right: 0;
  bottom: 0;
}

.main .contactTel h4 {
  margin-bottom: 5px;
}

.main .contactTel p {
  font-size: 15px;
  line-height: 1.3;
  margin-bottom: 5px;
}

.main .contactTel p.catchTxt {
  font-size: 27px;
  font-weight: bold;
}

.main .contactTel p.catchTxt span {
  border-radius: 4px;
  background-color: #d00000;
  color: #fff;
  font-size: 20px;
  padding: 5px 7px;
  margin-right: 5px;
}

.main .contactTel p.catchTxt strong {
  color: #d00000;
}

.main .contactTel .telBox {
  background-color: #8dc220;
  padding: 10px;
  overflow: hidden;
  margin-right: 15px;
  float: left;
}

.main .contactTel .telBox .ShowroomContArea {
  background: #fff;
  padding: 5px 30px;
}

.main .contactTel .telBox .ShowroomContArea .tel {
  padding: 0;
}

.main .contactTel .telBox .ShowroomContArea .tel span {
  font-size: 40px;
  background-size: 40px;
  padding-left: 45px;
}

.telBox .ShowroomContArea .ShowroomName {
  font-size: 16px;
  font-weight: 700;
  margin: 5px 0 0;
  width: 6em;
}

.telBox .ShowroomContArea .contactTime {
  font-size: 13px;
  text-align: center;
  padding: 5px 0 0;
  margin: 0;
}

.main .contactTel .telBox h5 {
  background: none;
  color: #fff;
  font-size: 15px;
  line-height: 1;
  margin: 0 0 5px;
  padding: 0;
  display: block;
}

.main .contactTel .telBox .tel {
  background: #fff;
  font-size: 13px;
  font-weight: normal;
  text-align: center;
  margin-bottom: 0;
  color: #333;
  padding: 5px;
  display: block;
}

.main .contactTel .telBox .tel span {
  background: url(./img/common/ico_freedial03.png) no-repeat left center;
  font-size: 53px;
  line-height: 1;
  padding: 0 0 0 65px;
  margin: 0;
  display: inline-block;
}

.main .contactTel .telBox .btn {
  border-radius: 3px;
  font-size: 18px;
  margin: 10px 0 0;
  width: 100%;
}

.main .contactTel .telBox .btn a {
  padding: 5px 30px 5px 40px;
}

.main .contactTel .telBox .btn a:before {
  left: 28px;
}

.main .contactTel .telBox .btn a:after {
  left: 33px;
}

.main .contactTel ul {
  position: relative;
  overflow: hidden;
  margin: 0 0 10px;
}

.main .contactTel ul li {
  border-radius: 4px;
  background: #0eaa8e;
  color: #fff;
  font-size: 20px;
  font-weight: bold;
  margin: 0 10px 0 0;
  padding: 5px 15px;
  text-align: center;
  float: left;
}

.main .contactTel ul li:before,
.main .contactTel ul li:after {
  display: none;
}

.main .contactTel ul li:last-child {
  margin-right: 0;
}

.main .contactTel .overflowH {
  width: 380px;
}

.main .contactFree {
  clear: both;
  border: #d00000 solid 3px;
  position: relative;
  overflow: hidden;
  background: #fff;
  position: relative;
  width: auto;
  box-sizing: border-box;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0;
  border-radius: 0;
  margin-bottom: 10px;
}

.main .contactFree p {
  line-height: 1.3;
  margin: 0;
}

.main .contactFree .telBox {
  overflow: hidden;
  margin: 10px 0 10px 10px;
  padding: 0;
  background: none;
}

.main .contactFree .telBox .tel {
  font-size: 14px;
  font-weight: normal;
  text-align: left;
}

.main .contactFree .telBox .tel span {
  background: url(./img/common/ico_tel03.png) no-repeat left center;
  font-family: "Impact", "Anton", Gadget, sans-serif;
  color: #d00000;
  font-size: 68px;
  line-height: 1;
  padding: 0 0 0 40px;
  margin: 0;
  display: block;
}

.main .contactFree .telBox .catchTxt {
  background: #f5a100;
  border-radius: 3px;
  color: #fff;
  font-weight: bold;
  font-size: 18px;
  text-align: center;
  line-height: 1.4;
}

.main .contactFree h3,
.main .contactFree .btn a {
  display: flex;
  flex-direction: row-reverse;
  align-items: center;
}

.main .contactFree h3 {
  padding: 17px 30px;
  background: #d00000;
  border: none;
  margin: 0;
  box-sizing: border-box;
}

#rainleaking .main .contactFree h3 {
  padding: 20px 10px;
}

.main .contactFree .btn a {
  color: #fff;
  font-weight: bold;
  font-size: 34px;
  position: relative;
  overflow: hidden;
  padding: 20px;
}

.main .contactFree .btn a:before,
.main .contactFree .btn a:after {
  content: none;
}

.main .contactFree .btn span {
  float: right;
  text-align: left;
  line-height: 1;
  margin-left: 20px;
  display: block;
}

.main .msgContact {
  padding: 3px 3px 3px 240px;
  margin: 40px 0 20px 5px;
  width: 700px;
  clear: none;
}

.main .msgContact img {
  float: left;
  position: absolute;
  top: -10px;
  left: -5px;
}

.main .msgContact .telBox {
  background: #fff;
  border-radius: 3px;
  padding: 5px 10px;
  box-sizing: border-box;
  position: relative;
  overflow: hidden;
  margin-left: 10px;
}

.main .msgContact .telBox h4 {
  position: relative;
  font-size: 13px;
  padding-left: 15px;
  margin-bottom: 0;
}

.main .msgContact .telBox h4:before,
.main .msgContact .telBox h4:after {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
  background: none;
  border-radius: 0;
}

.main .msgContact .telBox h4:before {
  width: 11px;
  height: 11px;
  border-radius: 50%;
  background: #0053b7;
  opacity: inherit;
}

.main .msgContact .telBox h4:after {
  left: 3px;
  width: 3px;
  height: 3px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
}

.main .msgContact .telBox .tel {
  font-size: 11px;
  line-height: 1.2;
  float: left;
  white-space: nowrap;
  margin-bottom: 0;
}

.main .msgContact .tel .bHours {
  display: block;
}

.main .msgContact .tel span {
  background: url(./img/common/ico_tel.png) no-repeat left center;
  color: #d00000;
  font-size: 42px;
  font-weight: bold;
  line-height: 1;
  padding-left: 35px;
  display: block;
  float: left;
  margin-right: 5px;
}

/*--トップスライド--*/
a.leftNav,
a.rightNav {
  background: url(./img/top/bg2.png);
  outline: none;
  transition: none;
}

.leftNav:before,
.rightNav:before {
  content: "";
  width: 100%;
  height: 100%;
  display: block;
  transition: none;
}

.leftNav:hover {
  background: url(./img/top/leftNav.png) right center no-repeat;
  transition: none;
  opacity: 1;
}

.rightNav:hover {
  background: url(./img/top/rightNav.png) left center no-repeat;
  transition: none;
  opacity: 1;
}

.leftNav:hover:before,
.rightNav:hover:before {
  background: url(./img/top/bg2.png);
  transition: none;
}

/*--下層ページメインビジュアル--*/
.pageTitle {
  position: relative;
  overflow: hidden;
  height: 145px;
  background: linear-gradient(0deg, #3682c6 0%, #0053b7 100%);
}

.pageTitle .inner {
  width: 100%;
  height: 100%;
  padding: 0;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
}

.pageTitle h1 {
  width: 1000px;
  color: #fff;
  position: relative;
  margin: 0 auto;
  font-size: 35px;
  line-height: 1.2;
  text-align: center;
  text-shadow: 1px 1px 1px #0053b7, -1px 1px 1px #0053b7, 1px -1px 1px #0053b7,
    -1px -1px 1px #0053b7;
}

.pageTitle h1 span {
  display: block;
  font-size: 15px;
  font-weight: normal;
}

/*--ぱんくずエリア--*/
.pagePath {
  background: #0053b7;
  padding: 3px 0;
}

.pagePath p {
  width: 1000px;
  margin: 0 auto;
  color: #fff;
  font-size: 11px;
}

.pagePath p a {
  color: #fff;
}

/*--TOPバナー--*/

.topBnr {
  background: #fff;
  overflow: hidden;
  width: 230px;
  height: 246px;
  box-sizing: border-box;
  float: right;
}

.main .topBnr h4:before,
.main .topBnr h4:after {
  content: none;
}

.main .topBnr h4 {
  background: #0053b7;
  padding: 2px 5px;
  font-size: 16px;
  color: #fff;
  margin-bottom: 7px;
  text-align: center;
  border-radius: 15px;
}

.topBnr .spLady {
  padding: 0 0 4px 0;
  font-weight: bold;
  font-size: 20px;
  margin-bottom: 0;
  line-height: 1;
}

.topBnr .spLady span {
  border-radius: 4px;
  background: #d00000;
  color: #fff;
  font-size: 16px;
  padding: 2px 5px;
  margin-right: 4px;
  line-height: 1;
}

.topBnr .spLady span:last-child {
  margin-right: 0;
}

.topBnr .lead {
  font-weight: bold;
  padding: 5px 5px 0 5px;
  font-size: 15px;
  line-height: 1;
  margin-bottom: 0;
  text-align: center;
}

.topBnr .tel {
  padding: 0 5px;
  font-size: 11px;
  margin-bottom: 0;
}

.topBnr .tel span {
  font-size: 31px;
  padding-left: 30px;
  display: block;
  text-align: center;
  background-size: 32px auto;
}

.topBnr .tel span.dNum {
  padding-left: 16px;
  background-size: 14px auto;
}

.topBnr a img {
  padding: 0 0 15px;
  max-width: 230px;
}

.topBnr ul {
  position: relative;
  overflow: hidden;
  width: 220px;
}

.topBnr ul li {
  margin: 0 0 10px;
  box-sizing: border-box;
  padding: 0;
}

.topBnr ul li:last-child {
  margin-bottom: 0;
}

.topBnr ul li img {
  width: 100%;
  height: auto;
}

.topBnr ul li:before,
.topBnr ul li:after {
  content: none;
}

.topBnrB {
  width: 1000px;
  margin: 30px auto 0;
}

.main .bnr_quote {
  margin-bottom: 30px;
}

/*--お問い合わせ件数--*/

.main .topWorksBnr {
  width: 500px;
  float: left;
}

.main .inqCount {
  border: #ff9900 solid 7px;
  width: 500px;
  float: left;
  box-sizing: border-box;
  color: #fff;
  box-shadow: 0 0 0 6px #eeeeee inset;
  padding: 10px 6px 6px;
}

.main .inqCount h3 {
  font-size: 32px;
  color: #21a937;
  padding: 0;
  background: none;
  margin-bottom: 0;
  border: none;
  text-align: center;
  line-height: 1;
}

.main .inqCount p {
  background: #673a1c;
  font-size: 15px;
  text-align: center;
  margin: 6px 0 0;
}

.main .inqCount dl {
  background: url(./img/common/inqCount_bg.png) no-repeat right bottom #fff;
  padding: 10px 5px 5px;
  box-sizing: border-box;
}

.main .inqCount dt {
  font-size: 18px;
  clear: both;
  display: block;
  width: 205px;
  box-sizing: border-box;
  float: left;
  background: #8dc220;
  border-radius: 5px 0 0 5px;
  padding: 3px 0;
  text-align: center;
  color: #fff;
  font-weight: bold;
}

.main .inqCount dd {
  background: #f9f5ee;
  border-radius: 5px;
  display: block;
  padding: 1px 0 1px 205px;
  font-size: 28px;
  color: #d00000;
  background: #eee;
  line-height: 1.3;
  text-align: center;
  font-weight: bold;
  margin-bottom: 10px;
  width: 102px;
}

.main .inqCount dd span {
  font-size: 18px;
}

.main .inqCount dd:last-of-type {
  margin-bottom: 0;
}

.main .topFormImg {
  margin-bottom: 0.5em;
}

.main .topFormText {
  margin: 0 0 15px 0;
  font-size: 20px;
  font-weight: bold;
  color: #333;
  line-height: 1.6;
}

.main .topFormText span {
  background-color: #d00000;
  color: #fff;
  border-radius: 5px;
  display: inline-flex;
  align-items: center;
  padding: 0 0.4em;
  line-height: 1.4;
}

.main .topFormareaContact .contactCatch {
  overflow: hidden;
  border-radius: 30px;
  background-color: #0053b7;
  color: #fff;
  font-weight: bold;
  font-size: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 10px;
  margin: 0.5em 0 2px;
}

.main .topFormareaContact .tel span {
  /*background-size: 53px auto;*/
  background-size: 42px auto;
  font-size: 53px;
  /*padding: 0 0 5px 58px;*/
  padding: 5px 0 5px 47px;

}

.contNmbArea .ShowroomName {
  margin: 0;
  margin-top: 5px;
}

.contNmbArea .ShowroomName span {
  border-radius: 5px;
  color: #fff;
  font-size: 16px;
  font-weight: 700;
  padding: 2px 10px;
  line-height: 1.6;
  background: #ff9900;
  display: inline-block;
}

.contNmbArea .tel span {}

.main .contNmbArea .contactTime {
  font-size: 16px;
  margin: 0;
  text-align: center;
}

.main .contactTime {
  font-size: 0.8em;
  margin: 0;
  margin-top: -0.5em;
  font-size: 11px;
  color: #000;
}

.main .tel {
  margin: 0;
}

.wpcf7-checkbox {
  display: flex;
  flex-direction: column;
}

.wpcf7 td,
.wpcf7 th {
  width: 50%;
}

.main .formBox th .-gray {
  background: #ccc;
}


.main .border-or {
  width: 100%;
  position: absolute;
  bottom: 0;
  margin: 0 auto 20px;
  color: #333;
  font-size: 44px;
  background: none;
  line-height: 1.2;
  overflow: hidden;
  border-color: #d00000;
  border-style: solid;
  border-width: 9px 0 0 0;
  border-image: url(./img/common/bg_border.png) 9 9 round;
}

/*--フォーム--*/
.form {
  margin: 0 auto;
}

.form h3 {
  background: #0053b7;
  border-top: none;
  color: #fff;
}

.form ul {
  margin-bottom: 40px;
}

.form ul li {
  background: none;
  padding: 0;
}

.form ul li:before,
.form ul li:after {
  content: none;
}

.form ul.formStep {
  position: relative;
  overflow: hidden;
  margin-bottom: 30px;
}

.form ul.formStep li {
  background: #efefef;
  color: #333;
  font-size: 17px;
  font-weight: bold;
  margin: 5px 0;
  position: relative;
  width: 160px;
  float: left;
  height: 50px;
  padding: 0 10px 0 80px;
  display: flex;
  align-items: center;
}

.nocolumn .form ul.formStep li {
  width: 243px;
}

.form ul.formStep li:before,
.form ul.formStep li:after {
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 25px 0 25px 10px;
  border-color: transparent transparent transparent #efefef;
  content: "";
  display: block;
  position: absolute;
}

.form ul.formStep li:before {
  left: 100%;
  top: 0;
  z-index: 10;
  background: none;
}

.form ul.formStep li:after {
  border-color: transparent transparent transparent #fff;
  left: 100.8%;
  top: 0;
  z-index: 9;
  transform: none;
}

.form ul.formStep li:last-child:before,
.form ul.formStep li:last-child:after {
  display: none;
}

.form ul.formStep li.on {
  background: #8dc220;
  color: #fff;
}

.form ul.formStep li.on:before {
  border-color: rgb(0 0 0 / 0%) rgb(0 0 0 / 0%) rgb(0 0 0 / 0%) #8dc220;
}

.form ul.formStep li span {
  border-radius: 50%;
  background: #0053b7;
  width: 57px;
  height: 57px;
  color: #fff;
  font-size: 13px;
  line-height: 1.2;
  position: absolute;
  top: -3px;
  left: 15px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}

.form ul.formStep li:first-child span {
  left: 2px;
}

.main .formBox {
  margin-bottom: 40px;
}

.main .formBox table {
  margin-bottom: 20px;
  p {
    margin-bottom: 0;
  }
}

.main .formBox th {
  padding: 20px 15px;
  font-weight: bold;
  vertical-align: top;
  width: 30%;
  font-size: 16px;
  background: #efe5c5;
  border-bottom: #fff solid 1px;
  color: #333;
}

.main .formBox th span.any {
  background: #b0b0b0;
}

.main .formBox td {
  padding: 5px 10px;
  vertical-align: middle;
  font-size: 13px;
  background: #f3f3f3;
  border-bottom: #fff solid 1px;
}

.main .formBox td .wpcf7c-elm-step1 {
  font-size: 13px;
}

.main .formBox td>span {
  margin: 5px 0 0;
  display: inline-block;
  font-size: 16px;
}

.main .formBox td span.your-order span span {
  font-weight: bold;
  margin-right: 10px;
}

.main .formBox td a {
  color: #333;
  font-size: 16px;
  padding-left: 25px;
  display: inline-block;
}

.main .formBox td input[type="text"],
.main .formBox td input[type="tel"],
.main .formBox td input[type="email"] {
  padding: 5px;
  height: 35px;
  border: 1px solid #ccc;
  box-sizing: border-box;
  background: #ffffcf;
  width: 520px;
  font-size: 16px;
}

.nocolumn .main .formBox td input[type="text"],
.nocolumn .main .formBox td input[type="tel"],
.nocolumn .main .formBox td input[type="email"] {
  width: 690px;
}

.main .formBox td select,
.main .formBox td input[type="date"] {
  width: 200px;
  font-size: 14px;
  padding: 2px;
  height: 30px;
  line-height: 30px;
  border: 1px solid #ccc;
  box-sizing: border-box;
  margin-right: 10px;
  background: #ffffcf;
}

.main .formBox td input[type="date"] {
  width: 360px;
}

.main .formBox td input:placeholder-shown,
.main .formBox td textarea:placeholder-shown {
  color: #b0b0b0;
}

.main .formBox td input::-webkit-input-placeholder,
.main .formBox td textarea::-webkit-input-placeholder {
  color: #b0b0b0;
}

.main .formBox td input:-moz-placeholder,
.main .formBox td textarea:-moz-placeholder {
  color: #b0b0b0;
  opacity: 1;
}

.main .formBox td input::-moz-placeholder,
.main .formBox td textarea::-moz-placeholder {
  color: #b0b0b0;
  opacity: 1;
}

.main .formBox td input:-ms-input-placeholder,
.main .formBox td textarea:-ms-input-placeholder {
  color: #b0b0b0;
}

.main .formBox td input[type="checkbox"] {
  display: inline-block;
  margin-right: 5px;
}

.main .formBox .submit {
  text-align: center;
}

.main .formBox .submit li {
  margin: 0 5px;
  display: inline;
}

.formBox .submit .wpcf7c-btn-back {
  background: #bbb;
  border: solid 3px #777;
}

.contents .main .wpcf7c-btn-back textarea[readonly] {
  background: #efefef;
}

.main .formBox td input.wpcf7c-conf,
.main .formBox td select.wpcf7c-conf,
.main .formBox td textarea.wpcf7c-conf {
  border: none;
  background: #efefef;
}

.main .formBox td select.wpcf7c-conf {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  text-indent: 0.01px;
  text-overflow: "";
}

.main .formBox td select.wpcf7c-conf::-ms-expand {
  display: none;
}

.formBox th,
.formBox td {
  padding: 15px 20px;
  font-size: 15px;
  line-height: 1.5;
  text-align: left;
  vertical-align: top;
}

.formBox th {
  width: 20%;
  color: #333;
}

.formBox th {
  padding: 20px 15px;
  font-weight: bold;
  vertical-align: middle;
  width: 30%;
  font-size: 16px;
}

.formBox th span {
  background: #d00000;
  color: #fff;
  font-size: 14px;
  float: right;
  padding: 2px 15px;
}

.formBox th span.any {
  background: #b0b0b0;
}

.formBox td {
  padding: 5px;
  vertical-align: middle;
  font-size: 13px;
}

.formBox td .wpcf7c-elm-step1 {
  font-size: 13px;
}

.formBox td>span {
  margin: 5px 0 0;
  display: inline-block;
  font-size: 16px;
}

.formBox td a {
  color: #333;
  font-size: 16px;
  padding-left: 25px;
  position: relative;
}

.formBox td a:before,
.formBox td a:after {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
}

.formBox td a:before {
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: #8dc220;
}

.formBox td a:after {
  left: 4px;
  width: 4px;
  height: 4px;
  border-top: 2px solid #fffeee;
  border-right: 2px solid #fffeee;
  transform: rotate(45deg);
}

.formBox td input[type="text"],
.formBox td input[type="tel"],
.formBox td input[type="email"] {
  padding: 5px;
  height: 30px;
  border: 1px solid #ccc;
  box-sizing: border-box;
}

.formBox td select,
.formBox td input[type="date"] {
  width: 200px;
  font-size: 14px;
  padding: 2px;
  height: 30px;
  line-height: 30px;
  border: 1px solid #ccc;
  box-sizing: border-box;
  margin-right: 10px;
}

.formBox td input[type="date"] {
  width: 360px;
}

.formBox td textarea {
  padding: 5px;
  border: 1px solid #ccc;
  box-sizing: border-box;
  background: #ffffcf;
  width: 520px;
  line-height: 1.5;
  font: 400 13.3333px Arial;
  font-size: 16px;
}

.nocolumn .formBox td textarea {
  width: 690px;
}

.formBox .submit li {
  margin: 0 5px;
  display: inline;
}

.formBox .submit input {
  padding: 10px 50px;
  color: #fff;
  font-size: 24px;
  font-weight: bold;
  text-align: center;
  vertical-align: top;
  cursor: pointer;
  box-shadow: 0px 5px 0px 0px rgba(255, 255, 255, 0.3) inset;
  background: #ff9900;
  border: #ff9900 solid 3px;
  border-radius: 5px;
}

.formBox .submit input:hover {
  opacity: 0.8;
}

.formBox .submit input[type="button"] {
  margin-right: 10px;
}

.formBox td input.wpcf7c-conf,
.formBox td select.wpcf7c-conf {
  border: none;
  background: #fffeee;
}

.formBox td select.wpcf7c-conf {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  text-indent: 0.01px;
  text-overflow: "";
}

.formBox td select.wpcf7c-conf::-ms-expand {
  display: none;
}

.formBox td input.wpcf7c-conf:-webkit-autofill {
  box-shadow: 0 0 0px 1000px #efefef inset;
}

div.wpcf7-validation-errors {
  background: #fff;
  border: 3px solid #d00000;
}

.topFormBox {
  margin-left: 1.5em;
  position: relative;
  overflow: hidden;
  width: 352px;
}

.topFormBox h3 {
  background: #d00000;
  box-shadow: none;
  border: none;
  box-shadow: 0px 0px 0px 1px #fff inset;
  margin: 0;
  padding: 5px 10px 5px 15px;
  font-size: 25px;
  color: #fff;
}

.topFormBox h3 strong {
  color: #fbe130;
}

.topFormBox h3 span {
  font-size: 14px;
  margin-left: 20px;
}

.topFormBox .formBox {
  margin-bottom: 0;
  position: relative;
  border: #ccc solid 1px;
}

.topFormBox .formBox td input[type="text"],
.topFormBox .formBox td input[type="tel"],
.topFormBox .formBox td input[type="email"],
.topFormBox .formBox td textarea {
  width: 100%;
  background: #ffffcf;
  padding: 2px 5px;
  height: auto;
}

.topFormBox .formBox table {
  margin: 0;
}

.topFormBox .formBox td span {
  width: 100%;
  margin: 0;
}

.topFormBox .formBox .submit input {
  font-size: 16px;
  padding: 12px 60px 11px;
}

.topFormBox .formBox table tr th,
.topFormBox .formBox table tr td {
  border-top: none;
  border-right: none;
  border-left: none;
  background: #fff;
  border-bottom: #ccc solid 1px;
  padding: 9px 10px;
  color: #333;
}

.topFormBox .formBox table tr th {
  font-size: 13px;
  width: 25%;
}

.topFormBox .formBox table tr th span {
  float: left;
  font-size: 12px;
  margin-right: 5px;
  padding: 0 5px;
}

.main .formBox td .wpcf7c-elm-step1 {
  display: none;
}

.main .formBox .submit {
  background: #fff;
  padding: 5px 10px;
}

.main .formBox td>span.your-subject {
  font-size: 14px;
}

span.wpcf7-list-item {
  margin-left: 0;
}

div.wpcf7 .ajax-loader {
  display: none;
}

/*--フォーム--*/
#form {
  margin: 0 auto;
}

#form h3 {
  background: #0053b7;
  border-top: none;
  color: #fff;
}

#form ul {
  margin-bottom: 40px;
}

#form ul li {
  background: none;
  padding: 0;
}

#form ul li:before,
#form ul li:after {
  content: none;
}

#form ul.formStep {
  position: relative;
  overflow: hidden;
  margin-bottom: 30px;
}

#form ul.formStep li {
  background: #efefef;
  color: #333;
  font-size: 17px;
  font-weight: bold;
  margin: 5px 0;
  position: relative;
  width: 160px;
  float: left;
  height: 50px;
  padding: 0 10px 0 80px;
  display: flex;
  align-items: center;
}

.nocolumn #form ul.formStep li {
  width: 243px;
}

#form ul.formStep li:before,
#form ul.formStep li:after {
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 25px 0 25px 10px;
  border-color: transparent transparent transparent #efefef;
  content: "";
  display: block;
  position: absolute;
}

#form ul.formStep li:before {
  left: 100%;
  top: 0;
  z-index: 10;
  background: none;
}

#form ul.formStep li:after {
  border-color: transparent transparent transparent #fff;
  left: 100.8%;
  top: 0;
  z-index: 9;
  transform: none;
}

#form ul.formStep li:last-child:before,
#form ul.formStep li:last-child:after {
  display: none;
}

#form ul.formStep li.on {
  background: #8dc220;
  color: #fff;
}

#form ul.formStep li.on:before {
  border-color: rgb(0 0 0 / 0%) rgb(0 0 0 / 0%) rgb(0 0 0 / 0%) #8dc220;
}

#form ul.formStep li span {
  border-radius: 50%;
  background: #0053b7;
  width: 57px;
  height: 57px;
  color: #fff;
  font-size: 13px;
  line-height: 1.2;
  position: absolute;
  top: -3px;
  left: 15px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}

#form ul.formStep li:first-child span {
  left: 2px;
}

/*--ブログ形式ページ--*/

.main .warksTaxList .toggleBtn:before {
  content: none;
}

.main .warksTaxList .toggleBtn::after {
  font-family: "Font Awesome 5 Free";
  content: "\f138";
  font-weight: 900;
  right: 10px;
  position: absolute;
  font-size: 16px;
  height: 19px;
  line-height: 1;
  top: 3px;
  bottom: 0;
  margin: auto;
  display: block;
  background: none;
}

.main .warksTaxList .dNone {
  display: none;
}

.main .taxList,
.main .areaList {
  padding: 10px 0;
}

.main .taxList li,
.main .areaList li,
.main .colorList li {
  display: inline-block;
  padding: 0;
  background: none;
}

#top .main .warksTaxList .areaList,
#top .main .warksTaxList .colorList {
  text-align: left;
}

#top .main .warksTaxList .areaList li {}

.main .cat a,
.main .warksTaxList li a {
  display: inline-block;
  background: #0053b7;
  color: #fff;
  font-weight: bold;
  margin: 0 4px 4px 0;
  text-decoration: none;
  padding: 0 5px;
  border-radius: 3px;
}

.main .warksTaxList li.cat-item-308 a {
  background: #fff1e1;
  color: #cf9c7a;
}

.main .warksTaxList li.cat-item-306 a {
  background: #ab3e11;
}

.main .warksTaxList li.cat-item-324 a {
  background: #009944;
}

.main .warksTaxList li.cat-item-317 a {
  background: #e8340c;
}

.main .warksTaxList li.cat-item-310 a {
  background: #004ea2;
}

.main .warksTaxList li.cat-item-305 a {
  background: #fdd000;
}

.main .warksTaxList li.cat-item-307 a {
  background: #616161;
}

.main .warksTaxList li.cat-item-328 a {
  background: #00a0e9;
}

.main .warksTaxList li.cat-item-318 a {
  background: linear-gradient(180deg, #795548 0%, #795548 50%, #A1887F 50%, #A1887F 100%);
}

.main .areaList>li>a {
  background: #0053b7;
  position: relative;
}

.main .areaList .children>li>a {
  background: #ff6600;
}

.main .warksTaxList ul li:before,
.main .warksTaxList ul li:after,
.main .warksTaxList ul li a:before,
.main .warksTaxList ul li a:after {
  content: none;
}

.main .taxList li.current-cat a {
  background-color: #fff;
  color: #8dc220;
  border: solid 1px #8dc220;
}

.main .areaList li.current-cat a {
  background-color: #fff;
  color: #0053b7;
  border: solid 1px #0053b7;
}

.main .warksTaxList .toggleBtn {
  display: inline-block;
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  position: relative;
  padding: 5px 34px 5px 20px;
  text-decoration: none;
  border-radius: 5px;
  box-shadow: 0px 5px 0px 0px rgb(255 255 255 / 30%) inset;
  background: #8dc220;
  border: #8dc220 solid 3px;
  margin-bottom: 5px;
}

.main .infoBox {
  padding: 5px 0;
  border-bottom: dotted 1px #333;
  overflow: hidden;
  margin-bottom: 25px;
}

.main .infoBox p {
  display: inline-block;
  margin-bottom: 0;
  font-size: 13px;
}

.main .infoBox .time {
  float: right;
  font-weight: bold;
}

.main .archiveBox {
  overflow: hidden;
  padding-bottom: 0;
}

.main .archiveBox {
  position: relative;
  overflow: hidden;
}

.main .archiveBox article {
  width: 236px;
  float: left;
  margin: 0 21px 40px 0;
  position: relative;
  padding-bottom: 0;
  border-bottom: none;
  box-sizing: border-box;
  text-align: center;
}

.main .archiveBox article:nth-child(3n) {
  margin-right: 0;
}

.main .archiveBox article:nth-child(3n + 1) {
  clear: both;
}

.main .archiveBox a {
  display: block;
  position: relative;
  overflow: hidden;
  color: #333;
}

.main .archiveBox .archiveSummary {
  /* text-align:left; */
  font-weight: bold;
}

.main .archiveBox h3,
.main .archiveBox .contTxt,
.main .archiveBox .price {
  display: block;
  border: none;
  background: none;
  line-height: 1.4;
  font-size: 12px;
  padding: 0;
  margin: 0;
  color: #333;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.main .archiveBox h3,
#voice .main .archiveBox h3 {
  margin: 0;
  font-size: 15px;
  text-align: center;
}

.main .archiveBox .mainPict {
  width: 236px;
  height: 183px;
  overflow: hidden;
  position: relative;
  box-sizing: border-box;
  border: #ccc solid 1px;
  background: #fff;
  margin-bottom: 25px;
}

.main .archiveBox .mainPict img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: inline-block;
}

.main .archiveBox #readmore img {
  width: auto;
  height: auto;
}

.main .archiveBox .price {
  font-weight: bold;
  color: #d00000;
}

.main .archiveBox .price span {
  display: inline-block;
  background: #d00000;
  color: #fff;
  font-size: 12px;
  border-radius: 3px;
  padding: 1px 5px 0 5px;
  margin-right: 8px;
}

.main .archiveBox .time {
  margin-bottom: 0;
  font-size: 10px;
  line-height: 1.4;
  font-weight: bold;
}

.main .archiveBox .cat {
  position: absolute;
  top: 190px;
  font-size: 11px;
  line-height: 1.4;
  height: 19px;
  overflow: hidden;
  text-align: left;
}

.main .archiveBox .cat a {
  color: #fff;
  display: inline-block;
}

/*--施工事例・お客様の声--*/
.main .archiveBox ul {
  position: relative;
  overflow: hidden;
}

.main .archiveBox .archiveWorks li {
  width: 350px;
  float: left;
  margin-bottom: 30px;
  padding: 0;
  background: #ccc;
}

.main .archiveBox .archiveWorks li:nth-child(2n) {
  float: right;
}

.main .archiveBox li:before,
.main .archiveBox li:after {
  content: none;
}

.main .archiveBox .archiveWorks li a {
  color: #333;
  text-decoration: none;
}

.main .archiveBox .archiveWorks li .worksMain {
  width: 350px;
  height: 235px;
  position: relative;
  overflow: hidden;
  display: block;
}

.main .archiveBox .archiveWorks li .worksMain img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: auto;
}

.main .archiveBox .archiveWorks h4 {
  background: #009ce9;
  color: #fff;
  font-size: 23px;
  text-align: center;
  width: 100%;
  padding: 0;
  margin: 0;
}

.main .archiveBox .archiveWorks h4:before,
.main .archiveBox .archiveWorks h4:after {
  content: none;
}

.main .archiveBox .archiveWorks .summary {
  border: #ccc solid 1px;
  padding: 10px;
  background: #fffeee;
}

.main .archiveBox .archiveWorks .summary p {
  font-size: 14px;
}

.main .archiveBox .taxonomyWorks h3,
.main .archiveBox .archiveVoice h3 {
  margin: 10px 0 0;
}

.main .archiveBox .archiveBlog h3 {
  margin: 0;
}

.main .archiveBox .archiveBlog .time {
  margin: 0 0 0;
}

.main .archiveBox .archiveBlog .btn {
  background: #f5a100;
  color: #fff;
  padding: 3px 10px;
  display: inline-block;
  margin-top: 5px;
  font-size: 12px;
  line-height: 1.4;
}

.main .archiveVoice .mainPict {
  margin-bottom: 10px;
}

.main .singleVoice,
.main .singleBlog,
.main .singleWorks {
  border-bottom: none;
}

.main .singleWorks p,
.main .singleVoice p {
  font-size: 15px;
}

.main .singleBlog .singleDetail img {
  float: none;
  max-width: 100%;
  height: auto;
}

.main .singleBlog .staffBox {
  margin-top: 30px;
}

.main .singleBlog .staffBox .staffName {
  color: #333;
  font-size: 23px;
  line-height: 1.3;
  font-weight: bold;
  margin-bottom: 0;
}

.main .singleBlog .staffBox .staffName span {
  color: #0053b7;
  font-size: 15px;
  display: inline-block;
}

.main .singleBlog .area-box .box {
  width: 25%;
  width: calc(25% - 10px);
  margin-right: 5px;
  display: inline-block;
}

.main .singleBlog .area-box .box img {
  width: 100%;
  height: auto;
}

.main .singleWorks .singleDetail table.jirei-data th,
.main .singleWorks .singleDetail table.jirei-data td {
  padding: 0;
  border-top: none;
}

.main .singleWorks .singleDetail table.jirei-data td {
  margin-bottom: 0;
  width: 100%;
  display: block;
  box-sizing: border-box;
  background: none;
}

.main .singleWorks .singleDetail .table-style01 table,
.main .singleWorks .singleDetail .table-style01 table td {
  margin-bottom: 0;
}

.main .singleWorks .singleDetail .table-style01 table th,
.main .singleWorks .singleDetail .table-style01 table td {
  padding: 15px;
  border-bottom: none;
}

.main .singleWorks .singleDetail .table-style01 table td {
  background: #efefef;
}

.main .singleWorks .singleDetail .uc {
  table-layout: fixed;
}

.main .singleWorks .singleDetail .uc th,
.main .singleWorks .singleDetail .uc td {
  box-sizing: border-box;
  padding: 10px;
}

.main .singleWorks .singleDetail .uc td img {
  width: 100%;
}

.main .cstColorphoto li {
  position: relative;
}

.main .cstColorphoto .medal {
  position: absolute;
  right: 0;
  top: 95px;
}

.main .cstColorphoto .medal {
  position: absolute;
  right: 0;
  top: 95px;
}

.main .picBox {
  overflow: hidden;
  position: relative;
  margin: 30px 0 50px;
}

.main .picBox .photo {
  float: right;
  width: 434px;
  height: 289px;
  position: relative;
  overflow: hidden;
}

.main .picBox .photo img,
.main .picBox .btmPhoto img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: auto;
}

.main .picBox .btmPhoto {
  position: relative;
  height: 175px;
  width: 263px;
  padding-bottom: 10px;
}

.main .picBox .btmPhoto .noImg,
.main .picBox .btmPhoto .bImg {
  float: left;
  width: 263px;
  height: 175px;
  position: relative;
  overflow: hidden;
  display: block;
}

.main .picBox .btmPhoto:before,
.main .picBox .btmPhoto:after {
  position: absolute;
  bottom: -65px;
  right: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
  z-index: 10;
}

.main .picBox .btmPhoto:before {
  right: -50px;
  bottom: -80px;
  box-sizing: border-box;
  width: 5px;
  height: 5px;
  border: 32px solid transparent;
  border-left: 45px solid #d00000;
}

.main .picBox .btmPhoto:after {
  right: 15px;
  width: 80px;
  height: 80px;
  border: 0px solid transparent;
  border-bottom: 30px solid #d00000;
  border-radius: 0 0 0px 75px;
  z-index: -1;
}

.main .picBox02 {
  margin-top: 40px;
}

.main .picBox02 .photo {
  float: right;
  width: 370px;
  height: 210px;
  position: relative;
  overflow: hidden;
}

.main .picBox02 .btmPhoto {
  float: left;
  width: 370px;
  height: 210px;
  position: relative;
  overflow: visible;
  padding: 0;
}

.main .picBox02 .btmPhoto:before,
.main .picBox02 .btmPhoto:after {
  position: absolute;
  top: 0;
  bottom: 0;
  right: inherit;
  left: 358px;
  margin: auto;
  content: "";
  vertical-align: middle;
  z-index: 10;
}

.main .picBox02 .btmPhoto:before {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: #8dc220;
  border: none;
}

.main .picBox02 .btmPhoto:after {
  left: 373px;
  box-sizing: border-box;
  width: 3px;
  height: 3px;
  border: 10px solid transparent;
  border-left: 12px solid #fff;
  border-radius: 0;
}

.main .picBox03 .btmPhoto {
  display: none;
}

.main .picBox03 .photo {
  margin: 0 auto;
  float: none;
  position: relative;
  overflow: hidden;
}

.main .picBox span.after,
.main .picBox span.before {
  position: absolute;
  top: 5px;
  left: 5px;
  background: #0053b7;
  display: inline-block;
  z-index: 10;
  font-size: 15px;
  font-weight: bold;
  color: #fff;
  padding: 2px 5px;
  line-height: 1.4;
}

.main .picBox span.before {
  background: #d00000;
}

.main .picBox span span {
  opacity: 0.5;
  margin-left: 5px;
}

.main .staffBox {
  border: #8dc220 solid 5px;
  border-radius: 5px;
  padding: 20px;
  margin-bottom: 20px;
}

.main .staffBox .staffProf {
  width: 235px;
  float: left;
  margin-right: 40px;
}

.main .staffBox .staffProf img {
  width: 100%;
}

.main .staffBox h3 {
  clear: none;
  margin-top: 0;
  overflow: hidden;
}

.main .staffBox h4,
.main .staffBox h5,
.main .staffBox h6 {
  clear: none;
  overflow: hidden;
}

.main .staffcom {
  overflow: hidden;
}

#voice .main .voiceSummary {
  position: relative;
  overflow: hidden;
  margin-bottom: 20px;
}

.main .voicephotList {
  float: left;
}

.main .voicephotList li {
  width: 316px;
  height: 206px;
  position: relative;
  overflow: hidden;
  margin-bottom: 15px;
  box-sizing: border-box;
  padding: 0;
}

.main .singleVoice .enqImg {
  height: auto;
  margin: 0 auto 20px;
  box-sizing: border-box;
  text-align: center;
}

.main .voicephotList .enqImg a {
  display: block;
}

.main .voicephotList li img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: auto;
}

.main .singleVoice .enqImg img {
  width: auto;
  height: 100%;
  border: solid 1px #ccc;
}

.main .voicephotList li:before,
.main .voicephotList li:after {
  content: none;
}

#voice .main .singleDetail {
  width: 400px;
  float: right;
}

#voice .main .singleDetail table th {
  width: 25%;
  padding: 15px 10px;
}

#voice .main .enq h5 {
  border-radius: 4px;
  font-size: 16px;
  padding: 0;
  margin: 0 0 5px;
  background: none;
  color: #333;
}

#voice .main .enq ul {
  overflow: hidden;
  margin: 0 0 20px;
}

#voice .main .enq li {
  text-align: center;
  float: left;
  background: #e8ddbd;
  width: 25%;
  border-right: solid 1px #fff;
  box-sizing: border-box;
  padding: 3px 5px;
}

#voice .main .enq li:before,
#voice .main .enq li:after {
  content: none;
}

#voice .main .enq li.on {
  background: #0053b7;
  color: #fff;
}

#voice .main h3 {
  margin-bottom: 15px;
}

#voice .main .enq p.score {
  color: #d00000;
  font-weight: bold;
  font-size: 40px;
}

#voice .main .enq p.score span {
  font-size: 20px;
}

.main .otherPhoto {
  position: relative;
  overflow: hidden;
  padding: 0;
}

.main .otherPhoto li {
  width: 350px;
  float: left;
  padding: 0;
  font-size: 14px;
  margin-bottom: 20px;
}

.main .otherPhoto li:before,
.main .otherPhoto li:after {
  content: none;
}

.main .otherPhoto li:nth-child(2n) {
  float: right;
}

.main .otherPhoto li:nth-child(2n + 1) {
  clear: both;
}

.main .otherPhoto li a {
  width: 350px;
  height: 237px;
  overflow: hidden;
  position: relative;
  float: left;
  margin-bottom: 10px;
}

.main .otherPhoto li a img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: auto;
}

.main .otherPhoto li h5 {
  color: #8dc220;
  background: none;
  padding: 0;
  display: block;
  margin-bottom: 0;
}

/*------------- tmp -------------*/
/*投稿画像の回り込み処理*/
img.centered {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

img.alignright {
  padding: 0;
  margin: 0 0 2px 7px;
  display: inline;
}

img.alignleft {
  padding: 0;
  margin: 0 30px 10px 0;
  display: inline;
}

img.aligncenter {
  display: block;
  margin: 0 auto;
}

.alignright {
  float: right;
  margin-left: 10px;
  margin-bottom: 2px;
}

.alignleft {
  float: left;
  margin-right: 10px;
  margin-bottom: 2px;
}

img {
  border-style: none;
}

.main .nobr br {
  display: none;
}

.main p.wp-caption {
  margin: 0 0 10px 0;
  font-size: 0.8em;
  line-height: 1.2em;
}

.main p.wp-caption img {
  margin-bottom: 5px;
}

.main p.wp-caption .caption-text {
  text-align: left;
}

/*pagenavi*/
.pagenavi {
  border-bottom: dotted 1px #333;
  padding: 20px 0;
  margin: 0 auto 40px;
  text-align: center;
  position: relative;
}

.pagenavi ul {
  position: relative;
  overflow: hidden;
  height: 40px;
  margin: 0;
}

.pagenavi ul li::before,
.pagenavi ul li::after {
  display: none;
}

.pagenavi a {
  display: inline-block;
  border-radius: 5px;
  background: #0053b7;
  padding: 5px 5px;
  width: 130px;
  text-align: center;
  transition: 0.7s;
  position: relative;
  padding: 5px 25px 5px 5px;
  text-decoration: none;
  box-sizing: border-box;
}

.pagenavi a:before,
.pagenavi a:after {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 10px;
  margin: auto;
  content: "";
  vertical-align: middle;
}

.pagenavi a:before {
  width: 17px;
  height: 17px;
  border-radius: 50%;
  background: #fff;
}

.pagenavi a:after {
  right: 16px;
  width: 5px;
  height: 5px;
  border-top: 3px solid #0053b7;
  border-right: 3px solid #0053b7;
  transform: rotate(45deg);
}

.pagenavi .next a {
  padding: 5px 5px 5px 25px;
}

.pagenavi .next a:before,
.pagenavi .next a:after {
  left: 10px;
  right: inherit;
}

.pagenavi .next a:after {
  left: 14px;
  right: inherit;
  transform: rotate(-135deg);
}

.pagenavi a:link,
.pagenavi a:hover,
.pagenavi a:visited {
  color: #fff;
  text-decoration: none;
}

.pagenavi a:hover {
  opacity: 0.75;
  transition: 0.7s;
}

.pagenavi li,
.main .pagenavi li {
  padding: 0;
  margin: 0;
  background: none;
  display: block;
  font-weight: bold;
  position: absolute;
}

.pagenavi li:before,
.pagenavi li:after,
.main .pagenavi li:before,
.main .pagenavi li:after {
  content: none;
}

.pagenavi .prev {
  position: absolute;
  right: 0;
}

.pagenavi li.list {
  position: absolute;
  left: 50%;
  margin-left: -70px;
}

.pagenavi .list a {
  padding: 5px;
}

.pagenavi .list a:before,
.pagenavi li.list a:after {
  content: none;
}

.pagenavi .next {
  position: absolute;
  left: 0;
}

.main .wp-pagenavi {
  text-align: center;
}

.main .wp-pagenavi a {
  border-radius: 5px;
  background: #0053b7;
  padding: 0 5px;
  text-align: center;
  transition: 0.7s;
  border: none;
  display: inline-block;
  overflow: inherit;
}

.main .wp-pagenavi span {
  border-radius: 5px;
  padding: 0 5px;
  text-align: center;
  transition: 0.7s;
}

.main .wp-pagenavi span.pages,
.main .wp-pagenavi span.last {
  display: inline-block;
}

.main .wp-pagenavi a:link,
.main .wp-pagenavi a:visited {
  color: #ffffff;
  text-decoration: none;
}

.main .wp-pagenavi a:hover,
.main .wp-pagenavi span.current {
  border-color: #bfbfbf;
  display: inline-block;
}

.main .wp-pagenavi a:hover {
  color: #fff;
  opacity: 0.7;
}

/*-------------------#top-----------------*/
.main .newsBox {
    z-index: 2;
    position: relative;
}

.main .newsBox .imgLayer {
    top: 0;
    right: 5px;
    z-index: 10;
}

.main .newsBox .ttl {
    font-size: 12px !important;
    padding: 0 !important;
    position: relative !important;
    margin: 0 0 5px !important;
    font-weight: normal !important;
    color: #fff;
}

.main .newsBox .btn {
  display: table;
  margin: 0 auto 15px;
}

.main .newsBox .btn a {
    color: #fff !important;
    font-size: 16px;
}

.main .newsBox .inBox {
    background: #fff;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    position: relative;
    margin-bottom: 10px;
    border:#ccc solid;
    padding: 0 0 5px 5px;
    border-width: 0 1px 1px 1px;
}


.main .newsBox .newsList {
    height: 310px;
    overflow: auto;
    margin-bottom: 0;
}


.main .newsBox .inBox li {
    position: relative;
    overflow: hidden;
    border-bottom: #333 dotted 1px;
    padding: 0 0 15px;
    margin: 0 5px 15px 0;
}

.main .newsBox .inBox li:first-of-type {}

.main .newsBox .inBox li:last-of-type {
    margin-bottom: 0;
}

.main .newsBox .inBox li:before,
.main .newsBox .inBox li:after {
    content: none;
}

.main .newsBox .inBox li a {
    color: #333;
    text-decoration: none !important;
    display: block;
    position: relative;
    overflow: hidden;
}

.main .newsBox .inBox li h5 {
    background: none !important;
    color: #333 !important;
    font-size: 15px !important;
    padding: 0 !important;
    margin: 0 0 20px 0 !important;
    text-align: left;
    overflow: hidden;
    white-space: nowrap !important;
    text-overflow: ellipsis;
    display: block;
}

.main .newsBox .inBox li h5:after {
    content: none;
}

.main .newsBox .inBox li .price {
    color: #d73d33 !important;
}

.main .newsBox .inBox p {
    font-size: 12px !important;
    margin-bottom: 0 !important;
}

.main .newsBox .inBox p {
    font-size: 12px !important;
    margin-bottom: 0 !important;
}

.main .newsBox .inBox p span.time {
    background: url(./img/common/ico_date.png) no-repeat left center;
    padding-left: 12px;
}

.main .newsBox .inBox p.time {
    margin-bottom: 7px !important;
}

.main .newsBox .inBox .contTxt {
    max-height: 3em;
    display: block;
    line-height: 1.4;
}

.main .newsBox .inBox p strong {
    color: #e50012;
}

.main .newsBox .inBox .cat {
    color: #fff;
    position: absolute;
    top: 38px;
    left: 120px;
    height: 25px;
    overflow: hidden;
}

.main .newsBox .inBox li .cat a {
    background: #0053b7;
    color: #fff;
    position: relative !important;
    overflow: visible;
}

.main .newsBox .inBox li .newsTumb {
    width: 100px;
    height: 100px;
    position: relative;
    overflow: hidden;
    display: block;
    background: #efefef;
    float: left;
    margin-right: 20px;
}

.main .newsBox .inBox li img {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 100%;
    height: auto;
}

.main .newsBox .inBox li .overflowH {}


.main ul.informationTab {
    overflow: hidden;
    border-bottom: #ff9900 solid 5px;
    margin-bottom: 0 !important;
    color: #fff;
    font-weight: bold;
    display: flex;
    justify-content: space-between;
}

.main ul.informationTab li {
    font-family: "fot-tsukuardgothic-std", sans-serif;
    line-height: 1;
    margin: 0 !important;
    padding: 10px 5px 8px !important;
    text-align: center;
    width: 50%;
    width: calc(50% - 5px);
    cursor: pointer;
    font-size: 15px !important;
    border-radius: 5px 5px 0 0;
    background-color: #ccc;
    box-sizing: border-box;
    -webkit-border-radius: 5px 5px 0 0;
    -moz-border-radius: 5px 5px 0 0;
    -ms-border-radius: 5px 5px 0 0;
    -o-border-radius: 5px 5px 0 0;
}


.main ul.informationTab li:before,
.main ul.informationTab li:after {
    content: none !important;
}

.main ul.informationTab li.active,
.main ul.informationTab li:hover {
    background-color: #ff9900;
}


div.tabContent {
    clear: both;
    display: none;
}

div.active {
    display: block;
}

#top .main .worksBox h3.p-pickup__txts-ti {
  margin-bottom: 0;
}
.main .worksList .worksImg.p-pickup__imgs{
    border: 5px solid #d00000;
}
.main .p-pickup .p-pickup__imgs-txt {
    position: absolute;
    content: "";
    color: #fff;
    font-weight: 900;
    text-align: center;
    transform: rotate(-45deg);
    line-height: 1.6;
    bottom: 15px;
    right: -30px;
    background: #d00000;
    width: 120px;
}
.main .worksBox h2.pickupWorksH {
  text-align: center;
  font-size: 30px;
  display: flex;
    justify-content: center;
    align-items: center;
}
.main .worksBox  h2:before {
    content: "";
    display: block;
    width: 40px;
    height: 40px;
    background-image: linear-gradient(45deg, transparent 49%, #ff9900 49%, #ff9900 53%, transparent 53%, transparent);
    background-size: 44px 44px;
    margin-right: 5px;
    flex-grow: 0;
    flex-shrink: 0;
}
.main .worksBox  h2:after {
    content: "";
    display: block;
    width: 40px;
    height: 40px;
    background-image: linear-gradient(-45deg, transparent 49%, #ff9900 49%, #ff9900 53%, transparent 53%, transparent);
    background-size: 44px 44px;
    margin-left: 5px;
    flex-grow: 0;
    flex-shrink: 0;
}
.main .topicsBox {
  position: relative;
  overflow: hidden;
}

.main .topicsBox ul {
  position: relative;
  overflow: hidden;
}

.main .topicsBox ul li {
  width: 236px;
  float: left;
  margin: 0 21px 20px 0;
  padding: 0;
  position: relative;
  border-bottom: none;
}

.main .topicsBox ul li:before,
.main .topicsBox ul li:after {
  content: none;
}

.main .topicsBox ul li h5 {
  background: none;
  color: #0053b7;
  display: block;
  font-size: 14px;
  padding: 0;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  margin-bottom: 0;
}

.main .topicsBox ul li .type {
  position: absolute;
  top: 5px;
  right: 5px;
  background: #d00000;
  color: #fff;
  padding: 2px 5px;
  display: inline-block;
  border-radius: 5px;
}

.main .worksBox,
.main .diagnosisBox,
.main .reasonBox,
.main .voiceBox,
.main .blogBox {
  position: relative;
  overflow: hidden;
  text-align: center;
}

.main .worksBox>p {
  text-align: left;
}

.main .worksBox .lead,
.main .voiceBox .lead {
  text-align: left;
}

.main ul.works-menu01 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 0 auto 15px;
  position: relative;
  overflow: hidden;
}

.main ul.works-menu01 li {
  background: #ff9600;
  box-shadow: 0px 0px 0 2px #fff inset;
  border: 1px solid #ff9600;
  font-weight: bold;
  font-size: 20px;
  text-align: center;
  border-radius: 5px;
  padding: 0;
  margin-right: 10px;
  width: 100%;
}

.main ul.areaUl li {
  background: #0053b7;
  border: 1px solid #0053b7;
}

.main ul.works-menu01 li:hover {
  opacity: 0.7;
  transition: 0.7s;
}

.main ul.works-menu01 li:before,
.main ul.works-menu01 li:after {
  content: none;
}

.main ul.works-menu01 li:last-child {
  margin-right: 0;
}

.main ul.works-menu01 li a {
  color: #fff;
  text-decoration: none;
  display: block;

  padding: 5px 0;
  text-align: center;
  font-weight: bold;
}

.main ul.works-menu01 li a span {
  font-size: 15px;
}

.main .diagnosisBox .floatR {
  width: 316px;
  margin-left: 15px;
}

.main .diagnosisBox h2 {
  background: none;
  padding: 0;
  margin: 0 0 10px;
  border-top: none;
}

.main .basicKnow h2,
.main .recommendBox h2,
#diagnosis .main h2.catchTtl,
.main .worksBox h2 {
  z-index: 10;
  padding: 20px 0 0;
  margin: 0 auto 15px;
  color: #333;
  font-size: 44px;
  background: none;
  line-height: 1.2;
  overflow: hidden;
  border-color: #d00000;
  border-style: solid;
  border-width: 9px 0 0 0;
  border-image: url(./img/common/bg_border.png) 9 9 round;
}

#top .main .worksBox h2 {
  border: none;
  padding: 0;
}

.main .basicKnow h2 span,
.main .worksBox h2 span,
.main .recommendBox h2 span,
.main .msgBox h2 span,
#diagnosis .main h2.catchTtl span {
  display: table;
  margin: 0 0 10px;
  font-size: 24px;
  background: #8dc220;
  color: #fff;
  border-radius: 5px;
  padding: 5px 10px;
}

.main .basicKnow h2 span.txtL,
.main .worksBox h2 span.txtL,
.main .recommendBox h2 span.txtL,
.main .msgBox h2 span.txtL,
#diagnosis .main h2.catchTtl span.txtL {
  font-size: 61px;
  background: none;
  display: block;
  color: #333;
  padding: 0;
  margin-bottom: 0;
}

.main .worksBox h2 span.txtL {
  font-size: 53px;
}

.main .worksBox h3 {
  background: #ff9900;
  color: #fff;
  font-size: 21px;
  padding: 5px 15px;
  position: relative;
  border-top: none;
  text-align: left;
}

#top .main .worksBox h3 {
  margin-bottom: 20px;
}

#top .main .main .diagnosisBox .catchTtl {
  border-bottom: #333 solid 1px;
  padding-bottom: 15px;
}

.main .reasonList p {
  font-size: 18px;
}

.main .reasonList p strong {
  font-weight: normal;
  text-decoration: underline;
}

.main .reasonList {
  position: relative;
  overflow: hidden;
}

.main .reasonList li {
  border-radius: 4px;
  background: #8dc220;
  width: 140px;
  color: #fff;
  font-size: 14px;
  font-weight: bold;
  padding: 10px 5px 5px;
  float: left;
  margin: 0 12px 0 0;
  box-sizing: border-box;
  position: relative;
  overflow: hidden;
  text-align: center;
}

.main .reasonList li:before,
.main .reasonList li:after {
  content: none;
}

.main .reasonList li:last-child {
  margin: 0;
}

.main .reasonList li h4 {
  line-height: 1.2;
  margin: 0 0 5px;
  font-size: 14px;
  font-weight: normal;
  position: relative;
  text-align: center;
  padding: 0;
}

.main .reasonList li h4:before,
.main .reasonList li h4:after {
  content: none;
}

.main .reasonList li h4 strong {
  font-size: 20px;
  letter-spacing: -0.07em;
  display: block;
  text-decoration: none;
}

.main .reasonList li p {
  background: #fff;
  border-radius: 4px;
  font-weight: bold;
  font-size: 14px;
  padding: 5px;
  line-height: 1.3;
  margin: 10px 0 0;
  text-align: left;
  color: #333;
}

.main .reasonList li p strong {
  color: #d00000;
}

.main .reasonList li a {
  color: #fff;
  text-decoration: none;
  display: block;
}

.main .worksList,
.main .blogList,
.main .eventList,
.main .voiceList {
  box-sizing: border-box;
  position: relative;
  overflow: hidden;
  border-bottom: #ccc solid 1px;
  padding-bottom: 30px;
  margin-bottom: 20px;
}

#top .main .worksList {}

.main .worksList article,
.main .voiceList article,
.main .blogList article,
.main .eventList article,
.main .topicsBox ul li {
  width: 236px;
  float: left;
  margin: 20px 21px 0px 0;
  padding: 0;
  position: relative;
  border-bottom: none;
  font-weight: bold;
  text-align: center;
}

.main .worksList article:nth-child(3n),
.main .voiceList article:nth-child(3n),
.main .blogList article:nth-child(3n),
.main .eventList article:nth-child(3n),
.main .topicsBox ul li:nth-child(3n) {
  margin-right: 0;
}

.main .worksList article:nth-child(3n + 1),
.main .voiceList article:nth-child(3n + 1),
.main .blogList article:nth-child(3n + 1),
.main .eventList article:nth-child(3n + 1) {
  clear: both;
}

.main .worksList article:nth-child(-n + 3),
.main .voiceList article:nth-child(-n + 3),
.main .blogList article:nth-child(-n + 3),
.main .eventList article:nth-child(-n + 3),
.main .topicsBox ul li:nth-child(-n + 3) {
  margin-top: 0;
}

.main .worksList a,
.main .voiceList a,
.main .blogList a,
.main .eventList a,
.main .topicsBox ul li a {
  display: block;
  color: #0053b7;
}

.main .worksList .worksImg,
.main .voiceList .voiceImg,
.main .blogList .blogImg,
.main .eventList .blogImg,
.main .topicsBox ul li .mainThum {
  width: 236px;
  height: 183px;
  position: relative;
  overflow: hidden;
  border: #ccc solid 1px;
  box-sizing: border-box;
  backface-visibility: hidden;
  display: inline-block;
  zoom: 1;
}

.main .worksList .worksImg,
.main .topicsBox ul li .mainThum {
  margin-bottom: 0;
}

.main .worksList .worksImg img,
.main .voiceList .voiceImg img,
.main .blogList .blogImg img,
.main .eventList .blogImg img,
.main .topicsBox ul li .mainThum img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  max-width: none;
  height: 100%;
  width: auto;
}

.main .worksList h3,
.worksList p,
.main .voiceList h3,
.voiceList p,
.main .blogList h3,
.blogList p,
.main .eventList h3,
.main .eventList .contTxt,
.topicsBox ul li p {
  display: block;
  border: none;
  background: none;
  line-height: 1.4;
  padding: 0;
  margin: 0;
  color: #0053b7;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 12px;
  text-align: center;
}

.main .topicsBox ul li h3,
.main .worksList h3,
.main .voiceList h3,
.main .blogList h3,
.main .eventList h3 {
  font-size: 14px;
}

.main .worksList a h3 {
  color: #0053b7;
  background: transparent;
}

.main .worksList h3,
.main .voiceList h3 {
  margin: 0 0 5px 0;
}

.main .voiceBox {
  position: relative;
  overflow: hidden;
}

.main .voiceList h3 {
  font-size: 14px;
  overflow: visible;
  text-overflow: inherit;
  white-space: inherit;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.main .worksList .catchTxt {
  text-align: left;
  font-size: 15px;
  clear: both;
  overflow: inherit;
  white-space: inherit;
  text-overflow: inherit;
}

.nocolumn .main .worksList article {
  margin: 20px 18px 0px 0;
}

.nocolumn .main .worksList article:nth-child(3n + 1) {
  clear: none;
}

.nocolumn .main .worksList article:nth-child(4n) {
  margin-right: 0;
}

.nocolumn .main .worksList article:nth-child(-n + 4) {
  margin-top: 0;
}

.nocolumn .main .worksList article:nth-child(4n + 1) {
  clear: both;
}

/* トップページ スタッフ写真 */

.main .img_staff01 {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 120px;
}

.main .comWorksL_inner {
  position: relative;
  padding-bottom: 60px;
}

.main .img_staff04 {
  width: 150px;
  position: absolute;
  bottom: -30px;
  right: 0;
}

.main .img_staff02 {
  width: 150px;
  position: absolute;
  top: 0;
  right: 110px;
}

.main .comCorpSelect_inner {
  position: relative;
  margin-bottom: 0;
  padding-bottom: 60px;
}

.main .img_staff03 {
  width: 150px;
  position: absolute;
  bottom: -50px;
  right: 0;
}

.main .comVoiceL {
  position: relative;
  margin-bottom: 0;
  padding-bottom: 60px;
}

.main .img_staff06 {
  width: 150px;
  position: absolute;
  bottom: -50px;
  right: 0;
}

.main .comBlogL {
  position: relative;
  margin-bottom: 0;
  padding-bottom: 60px;
}

.main .img_staff05 {
  width: 150px;
  position: absolute;
  bottom: -50px;
  right: 0;
}

/*-------------------#first-----------------*/
#first .main .catchTtl {
  font-size: 37px;
  line-height: 1.2;
  color: #333;
  font-weight: bold;
}

#first .main .catchTtl span {
  border-radius: 4px;
  background: #0053b7;
  color: #fff;
  display: table;
  font-size: 18px;
  padding: 5px 10px;
  line-height: 1.2;
}

#first .main .firstPoint h3 {
  font-size: 24px;
  padding: 0 7px;
  margin: 0 0 20px;
  display: flex;
  align-items: center;
}

#first .main .firstPoint h3 span {
  border-radius: 4px;
  background: #ff6600;
  color: #fff;
  display: inline-block;
  font-size: 18px;
  padding: 3px 10px;
  margin: 7px 10px 7px 0;
  line-height: 1.3;
}

#first .main .firstPoint h3 strong {
  color: #d00000;
}

.main .firstContents {
  position: relative;
  overflow: hidden;
}

.main .firstContents h4 {
  clear: both;
}

.main .firstContents section {
  margin-bottom: 0;
}

.main .firstContents h5 {
  margin: 0 0 15px;
}

.main .firstContents img.alignleft {
  margin-right: 10px;
}

.main .firstContents table {
  float: right;
  width: 385px;
}

.main .firstContents table th,
.main .firstContents table td {
  border-bottom: #fff solid 1px;
  border-left: #fff solid 1px;
}

.main .firstContents table td {
  padding: 11px 10px;
  text-align: right;
  background: #efefef;
}

.main .firstContents table th {
  vertical-align: middle;
  text-align: center;
  font-weight: normal;
  padding: 11px 10px;
  background: #0053b7;
  color: #fff;
}

.main .firstContents .btn {
  float: right;
}

#first .main table strong {
  color: #d00000;
}

#first .main .choicePoint {
  padding: 0;
  margin: 0 0 40px;
}

#first .main .choicePoint li {
  list-style: none;
  position: relative;
  overflow: hidden;
  margin-bottom: 30px;
}

#first .main .choicePoint li img {
  border: #ccc solid 1px;
  box-sizing: border-box;
  float: right;
  margin-left: 30px;
}

#first .main .choicePoint h4 {
  background: #efefef;
  position: relative;
  padding: 8px 10px 8px 40px;
  margin-bottom: 15px;
}

#first .main .choicePoint h4:before,
#first .main .choicePoint h4:after {
  position: absolute;
  top: 10px;
  left: 10px;
  margin: auto;
  content: "";
  vertical-align: middle;
  background: none;
  border-radius: 0;
}

#first .main .choicePoint h4:before {
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: #0053b7;
  opacity: inherit;
}

#first .main .choicePoint h4:after {
  left: 15px;
  width: 6px;
  height: 6px;
  top: 16px;
  border-top: 3px solid #fff;
  border-right: 3px solid #fff;
  transform: rotate(45deg);
}

#first .main .flowWorks {
  position: relative;
  padding-bottom: 70px;
  overflow: hidden;
}

#first .main .flowWorks img {
  float: right;
  margin: 0 0 20px 30px;
}

#first .main .flowWorks:after {
  content: "";
  height: 0;
  position: absolute;
  width: 0;
  border: 100px solid transparent;
  border-top: 45px solid #0053b7;
  bottom: -100px;
  left: 0;
  right: 0;
  margin: auto;
}

#first .main .flowComplete {
  padding-bottom: 0;
}

#first .main .flowComplete:after {
  content: none;
}

/*-------------------#showroom-----------------*/
#showroom article {
  border-bottom: none;
}

.main .featureBox {
  position: relative;
  overflow: hidden;
  background: #0053b7;
  margin-bottom: 30px;
}

.main .featureBox p {
  margin-bottom: 0;
  display: inline-block;
}

.main .featureBox ul {
  padding: 10px;
  float: right;
  width: 300px;
  box-sizing: border-box;
  margin-top: 0;
}

.main .featureBox ul li {
  border-radius: 5px;
  background: #fff;
  font-size: 14px;
  padding: 10px;
  position: relative;
  overflow: hidden;
  margin-top: 10px;
}

.main .featureBox ul li:first-child {
  margin-top: 0;
}

.main .featureBox ul li:before,
.main .featureBox ul li:after {
  content: none;
}

.main .featureBox ul li p {
  font-size: 14px;
  line-height: 1.8;
  display: inline;
}

.main .featureBox ul li h4 {
  background: #8dc220;
  color: #fff;
  font-size: 25px;
  padding: 0;
  height: 77px;
  width: 80px;
  float: left;
  margin: 0 10px 0 0;
  line-height: 1;
  box-sizing: border-box;
  display: flex;
  justify-content: center;
  align-items: center;
}

.main .featureBox ul li h4:before,
.main .featureBox ul li h4:after {
  display: none;
}

.main ul.showroomDetail {
  position: relative;
  overflow: hidden;
}

.main ul.showroomDetail li {
  width: 480px;
  float: left;
  padding: 0;
  margin: 0;
  font-size: 15px;
}

.main ul.showroomDetail li:nth-child(2n) {
  float: right;
}

.main ul.showroomDetail li:before,
.main ul.showroomDetail li:after {
  display: none;
}

.main ul.showroomDetail li img {
  margin-bottom: 10px;
}

.main .showroomMerit ol {
  position: relative;
  overflow: hidden;
  padding: 0;
  margin-top: 0;
}

.main .showroomMerit li {
  width: 310px;
  box-sizing: border-box;
  margin: 0 35px 0 0;
  position: relative;
  display: block;
  float: left;
  list-style-type: none;
  font-size: 18px;
}

.main .showroomMerit li br {
  display: none;
}

.main .showroomMerit li:nth-child(3n) {
  margin-right: 0;
}

.main .showroomMerit li:before,
.main .showroomMerit li:after {
  display: none;
}

.main .showroomMerit li h5 {
  background: none;
  color: #e82c2c;
  font-family: "Impact", Gadget, "Anton", sans-serif;
  font-size: 18px;
  margin: 0;
  line-height: 1;
  padding: 0;
}

.main .showroomMerit li img {
  float: right;
  margin-left: 10px;
}

.main .showroomMerit li p:first-of-type {
  margin-top: 0;
}

.main .showroomMerit li p {
  font-size: 15px;
}

.main .featureContents ol {
  counter-reset: feature;
  padding: 0;
  margin: 0;
}

.main .featureContents ol>li {
  counter-increment: feature;
}

.main .featureContents li {
  list-style: none;
  padding: 0;
}

.main .featureContents h3 {
  color: #333;
  font-size: 52px;
  display: block;
  line-height: 1.2;
  background: none;
  position: relative;
  overflow: hidden;
  padding: 0;
  padding: 15px 0;
  border: none;
  overflow: hidden;
  margin-bottom: 0;
}

.main .featureContents h3:before {
  background: #0053b7;
  border: #4d90c3 solid 7px;
  border-radius: 50%;
  color: #fff;
  content: "ここが違う\A" counter(feature, decimal-leading-zero);
  white-space: pre;
  width: 125px;
  height: 125px;
  float: left;
  font-size: 20px;
  margin-right: 20px;
  text-align: center;
  line-height: 1.2;
  display: flex;
  align-items: center;
  justify-content: center;
}

.main .featureContents h3 img {
  position: absolute;
  top: 0;
  right: 0;
}

.main .featureContents .photoUL li {
  width: 320px;
  height: 230px;
  margin-right: 20px;
}

.main .featureContents .photoUL li:nth-child(3n) {
  margin-right: 0;
}

.main ol.showroomStep {
  position: relative;
  overflow: hidden;
  padding: 0;
  margin: 0 0 30px;
}

.main ol.showroomStep li {
  list-style-type: none;
  float: left;
  width: 250px;
  margin: 15px 0 0 -50px;
  font-weight: bold;
}

.main ol.showroomStep li:first-child {
  width: 200px;
  margin-left: 0;
}

.main ol.showroomStep li span {
  background: #0053b7;
  border-radius: 50%;
  width: 67px;
  height: 67px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: 10px;
}

.main ol.showroomStep li h4 {
  background: linear-gradient(90deg, #8dc220 0%, #ffcc00 100%);
  margin: 0 50px 10px 0;
  color: #fff;
  padding: 3px 10px 3px 50px;
  font-size: 15px;
}

.main ol.showroomStep li:first-child h4 {
  padding-left: 10px;
}

.main ol.showroomStep li:last-child h4 {
  background: #d00000;
}

.main ol.showroomStep li h4:before {
  display: none;
}

.main ol.showroomStep li h4:after {
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 40px 0 0 40px;
  border-color: transparent transparent transparent #ffcc00;
  content: "";
  z-index: 10;
  position: absolute;
  left: 100%;
  bottom: 0;
  top: inherit;
  border-radius: 0;
  background: none;
}

.main ol.showroomStep li:last-child h4:after {
  border-color: transparent transparent transparent #d00000;
}

.main ol.showroomStep li p {
  padding-left: 40px;
  height: 68px;
  display: flex;
  align-items: center;
  margin-bottom: 0;
}

.main ol.showroomStep li:first-child p {
  padding-left: 0;
}

/*-------------------#reason-----------------*/

#reason .main .catchTtl {
  z-index: 10;
  padding: 10px 0 0;
  width: auto;
  margin: 0 auto 15px;
  color: #333;
  font-size: 57px;
  background: none;
  box-shadow: none;
  line-height: 1.2;
  position: relative;
  overflow: hidden;
  border-top: none;
}

#reason .main .catchTtl img {
  float: left;
  margin: -10px 10px 0 0;
}

.main .reasonDetail {
  position: relative;
  overflow: hidden;
  padding: 0;
}

.main .reasonDetail li {
  padding: 0;
  margin-bottom: 40px;
  position: relative;
  overflow: hidden;
  list-style: none;
}

.main .reasonDetail li:before,
.main .reasonDetail li:after {
  content: none;
}

.main .reasonDetail li:last-child {
  margin-bottom: 0;
}

.main .reasonDetail li .photoUL {
  margin-top: 20px;
}

.main .reasonDetail li .photoUL li {
  margin: 0 20px 0 0;
  height: auto;
}

.main .reasonDetail li .photoUL li:nth-child(3n) {
  margin-right: 0;
}

.main .reasonDetail li .photoUL li img {
  position: relative;
  top: inherit;
  left: inherit;
  transform: none;
}

.main .reasonDetail h3 {
  margin-bottom: 20px;
  font-size: 37px;
  position: relative;
  background: none;
  border: none;
  padding: 0 0 0 85px;
  line-height: 1.1;
  min-height: 75px;
}

.main .reasonDetail h3 img {
  position: absolute;
  left: 0;
}

.main .reasonDetail h3 span {
  border-radius: 4px;
  background: #0053b7;
  color: #fff;
  display: table;
  font-size: 18px;
  padding: 5px 10px;
  line-height: 1;
}

.main .reasonDetail h3 strong {
  color: #d00000;
}

.main .reasonDetail .alignleft {
  margin: 0 30px 15px 0;
}

.main .reasonDetail .alignright {
  margin: 0 0 15px 30px;
}

.main .reasonDetail p {
  margin-bottom: 15px;
  font-size: 15px;
  line-height: 1.8;
}

.main .reasonDetail img {
  margin-bottom: 20px;
}

.main .reasonDetail li p:last-child {
  margin-bottom: 0;
}

.main .reasonDetail .btn {
  float: right;
}

/*-------------------#staff-----------------*/
body#staff {
  min-width: 0;
}

#staff .main .staffList li {
  padding: 0;
  margin: 0 20px 30px 0;
  position: relative;
  overflow: hidden;
  width: 236px;
  float: left;
  text-align: center;
}

#staff .main .staffList li a {
  text-decoration: none;
  color: #333;
}

#staff .main .staffList li:nth-child(3n) {
  margin-right: 0;
}

#staff .main .staffList li:before,
#staff .main .staffList li:after {
  content: none;
}

#staff .main .staffPhoto {
  width: 236px;
  height: 257px;
  overflow: hidden;
  position: relative;
  display: block;
}

#staff .main .staffPhoto img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: auto;
  height: 100%;
}

#staff .main .staffList li .positionTxt {
  display: block;
  margin: 5px 0;
  line-height: 1;
}

#staff .main .staffList li .positionTxt span,
#staff .main .staffProf .profileDetail .positionTxt span {
  font-size: 12px;
  font-weight: bold;
  display: inline-block;
  margin-right: 5px;
}

#staff .main .staffList li .staffName,
#staff .main .staffProf .profileDetail .staffName,
#works .main .staffBox .staffName {
  color: #333;
  font-size: 23px;
  line-height: 1.3;
  font-weight: bold;
  margin: 10px 0 0;
}

#staff .main .staffList li .staffName span,
#staff .main .staffProf .profileDetail .staffName span,
#works .main .staffBox .staffName span {
  color: #ffc000;
  font-size: 15px;
  display: block;
}

#staff .main .staffList li .btnDetail {
  padding: 0 10px;
}

body#staff {
  min-width: 0;
}

#staff .main .staffProf {
  padding: 20px;
  position: relative;
  overflow: hidden;
}

#staff .main .staffProf .floatL {
  margin-right: 40px;
}

#staff .main .staffProf .staffPhoto {
  width: 240px;
  height: 290px;
  margin-bottom: 20px;
}

#staff .main .staffProf .staffPhoto img {
  width: 100%;
  height: auto;
}

#staff .main .staffProf .profileDetail {
  overflow: hidden;
}

#staff .main .staffProf .profileDetail .positionTxt {
  margin-bottom: 5px;
  font-size: 12px;
}

#staff .main .staffProf .profileDetail .positionTxt span {
  color: #fff;
  background: #8dc220;
  border-radius: 4px;
  padding: 0 5px;
}

#staff .main .staffProf .profileDetail .staffName span {
  display: inline-block;
  margin-left: 10px;
}

#staff .main .staffProf .profileDetail dl dt {
  background: #ff6600;
  color: #fff;
  font-size: 15px;
  font-weight: bold;
  display: block;
  padding: 3px 10px;
  margin: 15px 0 10px;
}

#staff .main .staffProf .profileDetail dl dd {
  font-size: 15px;
}

.main .staffBtn {
  text-align: center;
  clear: both;
  margin: 20px 0;
}

.main .staffBtn li {
  padding: 0;
  text-align: center;
  display: inline-block;
}

.main .staffBtn li:before,
.main .staffBtn li:after {
  content: none;
}

/*-------------------#colorsimulation-----------------*/

.main ol.colorStep {
  padding: 0;
  position: relative;
  overflow: hidden;
  margin: 0;
}

.main ol.colorStep li {
  background: none;
  border: #8dc220 solid 3px;

  border-radius: 5px;
  width: 182px;
  text-align: center;
  float: left;
  list-style: none;
  margin: 0 15px 0 0;
}

.main ol.colorStep li:last-child {
  margin-right: 0;
}

.main ol.colorStep li span {
  background: #8dc220;
  color: #fff;
  display: block;
  font-weight: bold;
  margin-bottom: 1px;
}

.main ol.colorStep li h4 {
  font-size: 14px;
  padding: 0 5px;
  margin: 10px 0 5px;
  text-align: left;
}

.main ol.colorStep li h4:before,
.main ol.colorStep li h4:after {
  display: none;
}

.main ol.colorStep li p {
  font-size: 12px;
  padding: 0 5px;
  text-align: left;
  margin: 5px 0;
}

#colorsimulation .main .campaignArw {
  background: #d00000;
  color: #fff;
  font-size: 20px;
  font-weight: bold;
  padding: 0 20px;
  margin: 20px 165px 20px 0;
  position: relative;
}

#colorsimulation .main .campaignArw:after {
  content: " ";
  height: 0;
  position: absolute;
  width: 0;
  border: 30px solid transparent;
  border-left: #d00000 solid 48px;
  left: 100%;
  top: 50%;
  margin-top: -30px;
}

.main .colorSample {
  position: relative;
  overflow: hidden;
}

.main .colorSample li {
  padding: 0;
  margin-bottom: 30px;
  position: relative;
  overflow: hidden;
}

.main .colorSample li:before,
.main .colorSample li:after {
  content: none;
}

.main .colorSample li span {
  position: relative;
  display: inline-block;
  margin: 0 32px 0 0;
  float: left;
}

.main .colorSample li span:after {
  content: " ";
  height: 0;
  position: absolute;
  width: 0;
  border: 20px solid transparent;
  border-left: #8dc220 solid 20px;

  left: 102%;
  top: 0;
  bottom: 0;
  margin: auto;
}

/*-------------------#rainleaking#diagnosis-----------------*/
#rainleaking .main .ranking {
  padding: 0;
  margin: 20px 0 30px;
}

#rainleaking .main .ranking li {
  list-style: none;
  font-size: 25px;
  font-weight: bold;
  color: #d00000;
  margin: 0;
}

#rainleaking .main .catchTtl {
  font-size: 52px;
  font-weight: bold;
  line-height: 1.3;
  margin-bottom: 30px;
}

.main .rainrepairChoose h2 {
  color: #333;
  font-size: 52px;
  display: block;
  line-height: 1.2;
  background: none;
  position: relative;
  overflow: hidden;
  padding: 0;
  border-color: #f5a100;
  border-style: solid;
  border-width: 9px 0 0 0;
  border-image: url(./img/common/bg_border.png) 9 9 round;
  padding-top: 15px;
}

.main .rainrepairChoose h2 span {
  font-size: 24px;
  margin: 0 0 10px;
  display: table;
  background: #0053b7;
  color: #fff;
  border-radius: 5px;
  padding: 5px 10px;
}

.main .rainrepairChoose h2 strong {
  color: #d00000;
}

.main .rainrepairService h2 {
  display: block;
  font-size: 60px;
  background: #175abf;
  padding: 5px;
  color: #fff;
  text-align: center;
  line-height: 1.4;
  margin-bottom: 20px;
}

.main .rainrepairService>ul {
  overflow: hidden;
  margin-bottom: 10px;
  position: relative;
}

.main .rainrepairService>ul>li {
  display: block;
  position: relative;
  overflow: hidden;
  background: rgba(241, 124, 45, 0.2);
  padding: 15px;
  margin-bottom: 20px;
  box-sizing: border-box;
}

.main .rainrepairService>ul>li:before,
.main .rainrepairService>ul>li:after {
  content: none;
}

.main .rainrepairService>ul>li.shortList {
  width: 495px;
  float: left;
}

.main .rainrepairService>ul>li.shortList:nth-child(2n + 1) {
  float: right;
}

.main .rainrepairService li h3 {
  margin-bottom: 10px;
  padding: 2px 10px;
  position: relative;
  color: #fff;
  font-size: 24px;
  background-color: #f5a100;
}

.main .rainrepairService li>p {
  margin-bottom: 10px;
}

.main .rainrepairService li .serviceType {
  background: #fff;
  position: relative;
  overflow: hidden;
}

.main .rainrepairService li .serviceType.floatL,
.main .rainrepairService li .serviceType.floatR {
  width: 475px;
}

.main .rainrepairService li .serviceType img {
  float: left;
}

.main .rainrepairService li .serviceType h4 {
  background: #333;
  color: #fff;
  font-size: 35px;
  text-align: center;
  overflow: hidden;
  border-left: 1px solid #fff;
  padding: 5px;
  display: flex;
  justify-content: center;
  align-items: center;
  clear: none;
  margin: 0 0 10px;
}

.main .rainrepairService li.shortList .serviceType h4 {
  margin-bottom: 10px;
  font-size: 26px;
}

.main .rainrepairService li .serviceType h4 span {
  font-size: 28px;
  margin-left: 5px;
}

.main .rainrepairService li .serviceType h4:before,
.main .rainrepairService li .serviceType h4:after {
  content: none;
}

.main .rainrepairService li .serviceType p {
  margin-bottom: 0;
}

.main .rainrepairService li .serviceType .price {
  color: #d00000;
  font-size: 76px;
  font-weight: bold;
  padding: 0 10px;
  overflow: hidden;
  font-family: "Impact", Gadget, sans-serif;
  text-align: right;
  line-height: 1.1;
}

.main .rainrepairService li .serviceType.floatL .price,
.main .rainrepairService li .serviceType.floatR .price,
.main .rainrepairService li.shortList .serviceType .price {
  font-size: 45px;
}

.main .rainrepairService li .serviceType .price span {
  font-size: 40px;
  font-family: "Impact", Gadget, Meiryo, "メイリオ", "Hiragino Kaku Gothic Pro",
    "ヒラギノ角ゴ Pro W3", sans-serif;
}

.main .rainrepairService li .serviceType.floatL .price span,
.main .rainrepairService li .serviceType.floatR .price span,
.main .rainrepairService li.shortList .serviceType .price span {
  font-size: 25px;
}

.main .rainrepairService li .serviceType .price .tax {
  color: #333;
  display: inline-block;
  text-align: right;
  font-size: 30px;
  font-family: Meiryo, "メイリオ", "Hiragino Kaku Gothic Pro",
    "ヒラギノ角ゴ Pro W3", sans-serif;
}

.main .rainrepairService li .serviceType.floatL .price .tax,
.main .rainrepairService li .serviceType.floatR .price .tax,
.main .rainrepairService li.shortList .serviceType .price .tax {
  font-size: 20px;
  display: block;
}

.main .ttlCaution {
  background: #8dc220;
  box-shadow: none;
  border-top: none;
  margin: 0 auto 0;
  font-size: 30px;
  text-align: center;
  color: #fff;
}

.main .warningChk {
  padding: 20px;
  background: #fffeee;
}

.main .warningChk h3 {
  color: #0053b7;
  background: none;
  padding: 0;
  border-top: 0;
  font-size: 29px;
  margin-bottom: 0;
  line-height: 1.4;
}

.main .warningChk h5 {
  margin: 0 0 10px;
  background: #d00000;
}

.main .warningChk img {
  margin: 0 15px 0 0;
}

.main .warningChk ul li {
  font-size: 22px;
  font-weight: bold;
  padding: 0 0 0 20px;
  margin: 0 0 0;
  position: relative;
}

.main .warningChk ul li:before,
.main .warningChk ul li:after {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
}

.main .warningChk ul li:before {
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: #8dc220;
}

.main .warningChk ul li:after {
  left: 4px;
  width: 4px;
  height: 4px;
  border-top: 2px solid #fffeee;
  border-right: 2px solid #fffeee;
  transform: rotate(45deg);
}

.main .troubleBox h2,
.main .diagnosisPoint h2 {
  color: #333;
  font-size: 31px;
  display: block;
  line-height: 1.2;
  background: none;
  position: relative;
  overflow: hidden;
  padding: 0;
  border-color: #0053b7;
  border-style: solid;
  border-width: 9px 0 0 0;
  border-image: url(./img/common/bg_border.png) 9 9 round;
  padding-top: 15px;
}

.main .troubleBox h2 span,
.main .diagnosisPoint h2 span {
  font-size: 24px;
  display: block;
}

.main .troubleBox h2 span.txtL,
.main .diagnosisPoint h2 span.txtL {
  font-size: 38px;
  display: block;
}

.main .troubleBox h2 strong,
.main .diagnosisPoint h2 strong {
  color: #8dc220;
}

.main .troubleBox h2 img,
.main .diagnosisPoint h2 img {
  float: left;
  margin: 0 10px 0 0;
}

.main .troubleBox h3 {
  border-top: none;
  background: none;
  padding: 0;
  color: #fff;
  margin-bottom: 15px;
  font-size: 30px;
  text-align: center;
}

.main .troubleBox h3 strong {
  color: #fff100;
}

.main .troubleBox .floatL {
  margin-right: 50px;
}

.main .troubleBox .floatL img {
  margin-bottom: 10px;
}

.main .troubleBox .catchTxt {
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  display: block;
  position: relative;
  overflow: hidden;
  padding: 15px 0 0;
  margin-bottom: 0;
}

.main .troubleBox .catchTxt strong {
  text-decoration: underline;
}

.main .troubleBox .catchTxt img {
  float: left;
  margin: 0 10px 0 0;
}

#rainleaking .main .troubleBox {
  background: none;
  padding: 0;
}

#rainleaking .main .troubleBox .catchTxt {
  font-size: 18px;
  line-height: 1.5;
  color: #333;
}

#rainleaking .main .troubleBox .catchTxt strong {
  text-decoration: none;
}

.main .troubleBox h5 {
  margin: 0 0 10px;
}

#rainleaking .main .troubleBox h5 {
  margin: 0 0 20px;
  font-size: 30px;
  background: #8dc220;
}

.main .troubleBox .catchTxt {
  font-size: 24px;
  clear: both;
}

.main .troubleBox h6:before {
  background: #ff6600;
}

.main .troubleBox ul li {
  background: none;
  padding: 0;
}

.main .troubleBox ul li:nth-child(3n) {
  margin-right: 0;
}

.main .troubleBox ul li:before,
.main .troubleBox ul li:after {
  content: none;
}

.main .troubleBox ul li p {
  font-size: 14px;
  padding-left: 20px;
  margin-top: 0;
}

.main .troubleBox ul li h6 {
  margin: 10px 0 0 0;
}

.main .troubleBox ul li h6:before {
  background-color: #8dc220;
}

#rainleaking .main .troubleBox ul li {
  margin: 0 15px 5px 0;
}

#rainleaking .main .troubleBox ul li:nth-child(3n) {
  margin-right: 0;
}

.main .diagnosisPoint ol {
  margin: 0;
  padding: 0;
  counter-reset: diagnosisPoint;
}

.main .diagnosisPoint li {
  position: relative;
  overflow: hidden;
  line-height: inherit;
  margin-bottom: 30px;
  counter-increment: diagnosisPoint;
}

.main .diagnosisPoint li h3 {
  position: relative;
  color: #333;
  font-size: 32px;
  overflow: hidden;
  margin-bottom: 10px;
  background: none;
  border-top: none;
  padding: 0;
  display: flex;
  align-items: center;
}

.main .diagnosisPoint li h3 strong {
  color: #d00000;
}

.main .diagnosisPoint li h3 span {
  border-radius: 4px;
  background: #f5a100;
  color: #fff;
  display: inline-block;
  font-size: 18px;
  padding: 0 10px;
  margin: 5px 10px 5px 0;
  line-height: 1.3;
  float: left;
}

.main .diagnosisPoint li h3:before {
  background: #8dc220;
  box-shadow: inset rgba(255, 255, 255, 0.33) 0px 0 0px 4px;
  border-radius: 50%;
  color: #fff;
  content: "ここが違う\A" counter(diagnosisPoint, decimal-leading-zero);
  width: 80px;
  height: 80px;
  float: left;
  font-size: 14px;
  margin-right: 20px;
  text-align: center;
  line-height: 1.2;
  display: flex;
  align-items: center;
  justify-content: center;
  white-space: pre;
}

.main .diagnosisPoint li h4 {
  display: inline-block;
  margin-top: 0;
}

.main .diagnosisPoint li img {
  float: left;
  margin-right: 30px;
}

.nocolumn .main .photoUL li {
  text-align: center;
  width: 316px;
  height: 206px;
  margin-right: 25px;
}

.nocolumn .main .photoUL li:nth-child(3n) {
  margin-right: 0;
}

.nocolumn .main .photoUL li:nth-child(3n + 1) {
  clear: none;
}

.nocolumn .main .photoUL li:nth-child(4n) {
  margin-right: 0;
}

.nocolumn .main .photoUL li:nth-child(4n + 1) {
  clear: both;
}

.nocolumn .main .photoUL li img {
  margin: 0;
  float: none;
}

.main .exMenu {
  position: relative;
  overflow: hidden;
  clear: both;
}

.main .exMenu li {
  background: #fffddd;
  width: 490px;
  float: left;
  color: #e82c2c;
  text-align: center;
  font-size: 28px;
  font-weight: bold;
  position: relative;
  overflow: hidden;
  padding: 0;
  box-sizing: border-box;
}

.main .exMenu li:nth-child(2n) {
  float: right;
}

.main .exMenu li h5 {
  background: #0053b7;
  color: #fff;
  text-align: left;
  padding: 0 15px;
  float: left;
  margin: 0;
  border-radius: 0;
  width: 340px;
  box-sizing: border-box;
  font-size: 28px;
  line-height: 1.8;
}

.main .exMenu li p {
  font-size: 28px;
  margin-bottom: 0;
}

.main .exMenu li:before,
.main .exMenu li:after {
  content: none;
}

.main .sealingBox .exMenu li {
  width: 700px;
}

/*-------------------#menu-----------------*/
.main .wallPartsBox {
  position: relative;
  overflow: hidden;
  margin: 30px 0;
}

.main .wallPartsBox .floatL {
  width: 330px;
}

.main .wallPartsBox .floatR {
  width: 640px;
  text-align: center;
}

.main .wallPartsBox h2.catchTtl {
  font-size: 39px;
  line-height: 1.2;
  margin: 0 0 10px;
  font-weight: bold;
  background: none;
  color: #333;
  padding: 0;
}

.main .wallPartsBox h2.catchTtl span {
  font-size: 39px;
  margin: 0;
}

.main .wallPartsBox h2.catchTtl strong {
  color: #0053b7;
}

.main .wallPartsBox h2.catchTtl .txtL {
  font-size: 92px;
  color: #d00000;
  display: flex;
  align-items: center;
  position: relative;
  overflow: hidden;
}

.main .wallPartsBox h2.catchTtl .txtL span {
  border-radius: 50%;
  background: #d00000;
  color: #fff;
  font-size: 92px;
  width: 120px;
  height: 120px;
  font-weight: bold;
  line-height: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  padding-top: 10px;
  float: left;
}

.main .wallPartsBox p.txts {
  font-size: 14px;
  font-weight: bold;
}

.main .wallPartsBox h4 {
  background: #0053b7;
  color: #fff;
  padding: 0;
  margin: 0 0 0;
  padding: 5px 0;
  text-align: center;
}

.main .wallPartsBox h4:before,
.main .wallPartsBox h4:after {
  display: none;
}

.main h2.menuCatch {
  background: none;
  font-size: 45px;
  box-shadow: none;
  color: #333;
  text-align: center;
  line-height: 1.3;
  padding: 0 0 30px;
  margin: 30px 0;
}

.main h2.menuCatch:after {
  background: #fed900;
  content: "";
  display: block;
  height: 15px;
  position: absolute;
  width: 490px;
  margin: 0 auto;
  bottom: 0;
  top: inherit;
  left: 50%;
  margin-left: -245px;
  border-radius: 0;
  border: none;
}

.main .itemBox h2 {
  font-size: 30px;
  background: none;
  color: #333;
  line-height: 1.4;
  text-align: center;
  padding: 0;
}

.main .itemBox h2 strong {
  color: #0053b7;
}

.main .itemBox h4 {
  font-size: 20px;
  display: inline-block;
  margin: 0 0 15px;
  box-sizing: border-box;
}

.main .itemImg {
  width: 245px;
  height: auto;
  position: relative;
  overflow: hidden;
  display: block;
  float: right;
  margin-left: 20px;
}

.main .itemImg img {
  width: 100%;
  height: auto;
}

.main .itemSummery {
  width: 700px;
  float: left;
  position: relative;
}

.main .itemSummery .leadTxt {
  margin-bottom: 20px;
}

.main .itemSummery .leadTxt * {
  font-size: 25px;
  line-height: 1.5;
}

.main .itemSummery .leadTxt p {
  margin-bottom: 20px;
}

.main .itemSummery .leadTxt .imgIco {
  left: 100%;
  top: -20px;
  position: absolute;
  width: 136px;
  height: auto;
}

.main .itemSummery ul.iYears {
  position: relative;
  overflow: hidden;
}

.main .itemSummery ul.iYears li {
  background: none;
  padding: 0;
  width: 49.5%;
  text-align: center;
  font-weight: bold;
  margin: 0 1% 0 0;
  float: left;
}

.main .itemSummery ul.iYears li:last-child {
  margin: 0;
}

.main .itemSummery ul.iYears li:before,
.main .itemSummery ul.iYears li:after {
  content: none;
}

.main .itemSummery ul.iYears li h5 {
  display: block;
  border-radius: 0;
  font-size: 18px;
  margin: 0;
  background: #ff6600;
  float: left;
  padding: 14px 10px;
}

.main .itemSummery ul.iYears li.itemFeature {
  -webkit-flex-grow: 2;
  flex-grow: 2;
  margin-right: 0;
}

.main .itemSummery ul.iYears li p {
  font-size: 17px;
  margin: 0;
  padding: 14px 0;
  background: #fffeee;
  border: #ccc solid 1px;
  line-height: 1.5;
}

.main .itemSummery ul.iYears li.itemFeature p {
  text-align: left;
  font-size: 18px;
}

.main .itemData {
  clear: both;
  margin-top: 20px;
  background-color: #8dc220;
  padding: 15px;
}

.main .itemData h4 {
  color: #fff;
  font-size: 35px;
  text-align: center;
  margin: 0 0 20px;
  padding: 0;
  width: 100%;
  display: block;
  float: none;
}

.main .itemData h4:before,
.main .itemData h4:after {
  display: none;
}

.main .itemData>h5 {
  text-align: center;
  display: block;
  background: rgba(0, 0, 0, 0.3);
  margin: 5px 0;
}

.main .itemData ul {
  position: relative;
  overflow: hidden;
  margin: 0;
}

.main .itemData ul li {
  border-radius: 5px;
  background: #fff;
  padding: 15px 10px 50px;
  margin: 0 15px 0 0;
  position: relative;
  width: 313px;
  float: left;
  box-sizing: border-box;
  text-align: center;
}

.main .itemData ul li:before,
.main .itemData ul li:after {
  content: none;
}

.main .itemData ul li:nth-child(3n) {
  margin-right: 0;
}

.main .itemData ul li h5 {
  position: absolute;
  bottom: 10px;
  left: 0;
  right: 0;
  background: #0053b7;
  display: block;
  width: 180px;
  text-align: center;
  margin: auto;
  padding: 3px;
  box-sizing: border-box;
}

/*-------------------#faq-----------------*/
.main .faqList {
  margin-bottom: 30px;
}

.main .faqList li a {
  color: #333;
  text-decoration: none;
  font-weight: bold;
}

.main .faqList li a:hover {
  color: #0053b7;
  text-decoration: underline;
}

.main .archiveFaq ul li {
  background: #f5a100;
  border-radius: 4px;
  box-sizing: border-box;
  position: relative;
  position: relative;
  margin: 5px 0 30px;
  padding: 4px;
}

.main .archiveFaq ul li:before,
.main .archiveFaq ul li:after {
  content: none;
}

.main .archiveFaq h3 {
  padding: 5px 0 7px 75px;
  margin-bottom: 0px;
  border-top: none;
  background: none;
  font-size: 24px;
  color: #fff;
}

.main .archiveFaq h3:before {
  background: #0053b7;
  border: #fff solid 3px;
  border-radius: 50%;
  content: "Q";
  color: #fff;
  font-size: 30px;
  position: absolute;
  top: -5px;
  left: 5px;
  width: 56px;
  height: 56px;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 10;
}

.main .archiveFaq p {
  background: #fff;
  padding: 20px 20px 20px 100px;
  position: relative;
  font-size: 16px;
  margin-bottom: 0;
}

.main .archiveFaq p:before {
  background: #d00000;
  border-radius: 5px;
  content: "A";
  color: #f49998;
  font-size: 35px;
  font-weight: bold;
  padding: 10px 15px;
  text-align: center;
  position: absolute;
  left: 20px;
  top: 20px;
  line-height: 1;
}

.main article.answer {
  border: solid 1px #89bf14;
  padding: 10px;
  background-color: #fffeee;
}

.main article.answer p {
  margin-bottom: 0;
}

/*-------------------#contact-----------------*/
.nocolumn .main .msgTxt,
#apartment .main .msgTxt,
#diagnosis .main .msgTxt,
#rainleaking .main .msgTxt {
  width: auto;
  overflow: hidden;
  float: none;
  position: relative;
  display: block;
  border-bottom: none;
}

#contact .main .msgTxt p,
#diagnosis .main .msgTxt p,
#rainleaking .main .msgTxt p,
#apartment .main .msgTxt p {
  font-size: 16px;
}

#contact .main .msgTxt h3 br,
#diagnosis .main .msgTxt h3 br,
#rainleaking .main .msgTxt h3 br {
  display: none;
}

#contact .main .msgTxt .catchTtl,
#diagnosis .main .msgTxt .catchTtl,
#rainleaking .main .msgTxt .catchTtl,
#apartment .main .msgTxt .catchTtl {
  font-size: 33px;
  font-weight: bold;
}

#contact .main .msgTxt .catchTtl span,
#diagnosis .main .msgTxt .catchTtl span,
#rainleaking .main .msgTxt .catchTtl span,
#apartment .main .msgTxt .catchTtl span {
  background: #0053b7;
  border-radius: 5px;
  color: #fff;
  font-size: 25px;
  margin-right: 5px;
  display: inline-block;
  padding: 0 10px;
}

#contact .main .msgTxt .catchTtl strong,
#diagnosis .main .msgTxt.catchTtl strong,
#rainleaking .main .msgTxt .catchTtl strong,
#apartment .main .msgTxt .catchTtl strong {
  color: #d00000;
}

#contact .main .msgTxt .catchTxt,
#diagnosis .main .msgTxt .catchTxt,
#rainleaking .main .msgTxt .catchTxt,
#apartment .main .msgTxt .catchTxt {
  border-radius: 5px;
  background-color: #f5a100;
  width: 500px;
  text-align: center;
  color: #fff;
  font-size: 20px;
  font-weight: bold;
}

#contact .main .msgTxt .tel,
#diagnosis .main .msgTxt .tel,
#rainleaking .main .msgTxt .tel,
#apartment .main .msgTxt .tel {
  font-size: 16px;
}

#contact .main .floatL {
  position: relative;
  overflow: hidden;
  width: 380px;
  margin-right: 20px;
}

#contact .main .floatL .catchTtl {
  border-radius: 50%;
  background-color: #d00000;
  width: 210px;
  height: 210px;
  z-index: 10;
  display: table-cell;
  vertical-align: middle;
  text-align: center;
  color: #fff;
  font-size: 19px;
  font-weight: bold;
  line-height: 1.4;
  position: relative;
}

#contact .main .floatL .catchTtl strong {
  color: #fff000;
  font-size: 28px;
  display: block;
}

#contact .main .floatL .imgLayer {
  right: 0;
  bottom: 0;
  z-index: 0;
}

.main .campaignBox h4 {
  font-size: 25px;
  padding: 0;
}

.main .campaignBox h4:before,
.main .campaignBox h4:after {
  content: none;
}

.main .estimateFlow ol {
  position: relative;
  overflow: hidden;
  counter-reset: flow;
  padding: 0;
  margin: 0;
}

.main .estimateFlow ol li {
  list-style: none;
  counter-increment: flow;
  position: relative;
  width: 152px;
  float: left;
  margin: 15px 17px 52px 0;
}

.main .estimateFlow ol li:last-child {
  margin-right: 0;
}

.main .estimateFlow ol li:before,
.main .estimateFlow ol li:after {
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
}

.main .estimateFlow ol li:before {
  left: -8px;
  box-sizing: border-box;
  width: 6px;
  height: 6px;
  border: 17px solid transparent;
  border-left: 20px solid #8dc220;
}

.main .estimateFlow ol li:after {
  right: -10px;
  height: 16px;
  border-left: 20px solid #8dc220;
}

.main .estimateFlow ol li:first-child:before,
.main .estimateFlow ol li:last-child:after {
  content: none;
}

.main .estimateFlow ol li h4 {
  background: #0053b7;
  padding: 5px;
  text-align: center;
  color: #fff;
  margin-bottom: 0;
  position: absolute;
  top: 100%;
  width: 100%;
  box-sizing: border-box;
  font-size: 15px;
}

.main .estimateFlow ol li h4:before {
  background-color: #ff6600;
  content: counter(flow);
  font-size: 18px;
  text-align: center;
  width: 30px;
  height: 30px;
  opacity: inherit;
  position: absolute;
  top: -178px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}

.main .estimateFlow ol li h4:after {
  content: none;
}

.main .estimateFlow ol li p {
  margin-bottom: 0;
}

.main .areaInfo p {
  font-size: 16px;
}

.main .areaInfo p.catchTxt {
  font-size: 20px;
  font-weight: bold;
  line-height: 1.4;
}

/*------------.planList-----*/
.main .planList {
  position: relative;
  overflow: hidden;
}

.main .planList h3 {
  background: none;
  border-top: none;
  font-size: 60px;
  padding: 0;
  line-height: 1;
}

.main .planList h3 span {
  background: #f5a100;
  border-radius: 5px;
  color: #fff;
  font-size: 30px;
  padding: 5px 20px;
  display: inline-block;
  margin-left: 20px;
}

.main .planList ul {
  background: url(./img/common/planlist_bg.png) center center;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  padding: 10px 0;
  box-sizing: border-box;
}

.main .planList ul li {
  text-align: center;
  font-size: 18px;
  font-weight: bold;
  width: 152px;
  margin: 10px 15px;
  padding: 0;
  line-height: 1.2;
}

.main .planList ul li img {
  margin-bottom: 10px;
}

.main .planList ul li span {
  font-size: 15px;
  display: block;
}

.main .planList ul li:before,
.main .planList ul li:after {
  content: none;
}

.main .emergencyBox {
  background: #eee;
  display: flex;
  align-items: center;
  /* flex-flow: row wrap; */
}

.main .emergencyBox img {
  margin-right: 20px;
}

.main .emergencyBox .tel span {
  font-size: 60px;
  padding-left: 60px;
  background-size: 57px auto;
}

.main .emergencyBox .tel span.dNum {
  padding-left: 26px;
  background-size: 26px auto;
  font-size: 40px;
}

.main .emergencyBox .emergencyCont {
  flex-flow: row wrap;
  justify-content: space-between;
  margin-top: 20px;
}

.main .emergencyBox .tel {
  width: 49%;
}

.main .emergencyBox .contactTime {
  width: 100%;
  margin: 0;
}

.main .recommendBox .photoUL li {
  height: 186px;
  margin-right: 21px;
}

.main .recommendBox .photoUL li:nth-child(3n) {
  margin-right: 0;
}

.main .trialBox .catchTtl {
  font-size: 36px;
  font-weight: bold;
  line-height: 1.4;
  margin-bottom: 30px;
}

.main .trialBox>ul li {
  padding: 0;
  position: relative;
  overflow: hidden;
  margin-bottom: 20px;
}

.main .trialBox>ul li:before,
.main .trialBox>ul li:after {
  content: none;
}

.main .trialBox>ul li iframe {
  width: 615px;
  height: 248px;
  float: left;
}

.main .trialBox>ul li img {
  float: right;
}

.main .tryPhoto {
  position: relative;
  padding-top: 10px;
  margin-bottom: 30px;
  overflow: hidden;
}

.main .tryPhoto .imgLayer {
  left: 0;
  bottom: 0;
  z-index: 10;
}

.main .tryPhoto ul {
  position: relative;
  overflow: hidden;
  float: right;
}

.main .tryPhoto ul li {
  float: left;
  margin-left: 20px;
  padding: 0;
}

.main .tryPhoto ul li:before,
.main .tryPhoto ul li:after {
  content: none;
}

/*---------recruit--------*/
.main .recruitBnr {
  position: relative;
  overflow: hidden;
}

.main .recruitBnr li {
  width: 480px;
  float: left;
  padding: 0;
  text-align: center;
  font-size: 24px;
  line-height: 1.2;
}

.main .recruitBnr li:nth-child(2n) {
  float: right;
}

.main .recruitBnr li:before,
.main .recruitBnr li:after,
.main .recruitAbout li:before,
.main .recruitAbout li:after,
.main .cooperationList li:before,
.main .cooperationList li:after {
  content: none;
}

.main .recruitBnr li a {
  display: block;
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  position: relative;
  padding: 15px 10px 40px 10px;
  text-decoration: none;
  border-radius: 4px;
  box-shadow: inset 0 -4px 0px 0px rgba(105, 105, 105, 0.3);
  background: #f5a100;
}

.main .recruitBnr li a:hover {
  opacity: 0.8;
  transition: 0.7s;
}

.main .recruitBnr li a:after {
  font-family: "Font Awesome 5 Free";
  content: "\f078";
  font-weight: 900;
  right: 0;
  left: 0;
  position: absolute;
  font-size: 16px;
  margin: auto 10px;
  display: block;
  background: #fff;
  color: #f5a100;
  bottom: 10px;
  text-align: center;
}

.main .recruitBnr li span {
  font-size: 14px;
  display: block;
}

.main .recruitMsg {
  position: relative;
  overflow: hidden;
  background: #eff5ff;
}

.main .recruitMsg h3 {
  margin-bottom: 10px;
  color: #003078;
  font-size: 28px;
  font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho",
    "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E",
    "ＭＳ Ｐ明朝", "MS PMincho", serif;
  line-height: 1.4;
  background: none;
  border: none;
  padding: 0;
}

.main .recruitMsg .overflowH {
  margin-right: 20px;
}

.main .recruitMsg img {
  margin-bottom: 0;
}

.main .recruitAbout {
  position: relative;
  overflow: hidden;
  display: flex;
  justify-content: space-between;
  margin: 0 30px;
}

.main .recruitAbout li {
  width: 245px;
  padding: 0;
}

.main .recruitAbout li img {
  margin-bottom: 10px;
}

.main .recruitAbout li h3 {
  background: #21886f;
  border-radius: 30px;
  color: #fff;
  text-align: center;
  font-size: 18px;
  margin-bottom: 5px;
  border: none;
}

.main .recruitcatchBox {
  position: relative;
  margin: 0 0 30px;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: #0071bc;
}

.main .recruitcatchBox .catchInfo {
  padding: 20px;
  box-sizing: border-box;
  color: #fff;
  overflow: hidden;
  width: 499px;
}

.main .recruitcatchBox .catchInfo h3 {
  margin-bottom: 40px;
  background: none;
  border-top: none;
  padding: 0;
}

.main .recruitcatchBox p {
  font-size: 20px;
  line-height: 1.4;
  margin-bottom: 0;
}

.main .cooperationList {
  margin-bottom: 20px;
}

.main .cooperationList li {
  display: inline-block;
  width: 15%;
  font-size: 16px;
  position: relative;
  padding: 0;
}

.main .cooperationList li:before {
  content: "・";
  background: none;
  width: auto;
  height: auto;
  position: inherit;
  top: inherit;
}

.main .staffInterview .subBox {
  background: rgba(238, 238, 238, 0.9);
  padding: 10px;
  margin: 0;
  text-align: center;
}

.main .staffInterview .subBox .inBox {
  padding: 20px;
  background: rgba(255, 255, 255, 0.9);
  position: relative;
  overflow: hidden;
  margin-bottom: 10px;
  text-align: left;
}

.main .staffInterview .subBox h3 {
  margin-bottom: 15px;
  font-size: 30px;
  line-height: 1.45;
  background: none;
  border: none;
  padding: 0;
}

.main .staffInterview .subBox h3 span {
  margin-right: 10px;
}

.main .staffInterview .subBox h4 {
  padding: 5px 15px;
  display: inline-block;
  color: #fff;
  font-size: 21px;
  font-weight: bold;
  line-height: 1.35;
  background-color: #21886f;
}

.main .staffInterview .subBox h4:before,
.main .staffInterview .subBox h4:after {
  content: none;
}

.main .staffInterview .subBox .inBox .textBox {
  width: 630px;
  float: left;
}

.main .staffInterview .subBox .inBox .photoBox {
  width: 260px;
  float: right;
}

.main .staffInterview .photo {
  width: 260px;
  height: 290px;
  position: relative;
  overflow: hidden;
}

.main .staffInterview .photo img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: auto;
}

.main .staffInterview .subBox .inBox .photoBox .name {
  font-size: 23px;
  font-weight: bold;
  line-height: 1.4;
  text-align: right;
}

.main .staffInterview .subBox .inBox .photoBox .name span {
  margin-left: 5px;
  color: #f2c700;
  font-size: 15px;
  display: block;
}

.main .staffInterview .subBox .inBox .photoBox .text {
  font-size: 15px;
  line-height: 1.7;
}

.main .staffInterview .subBox .inBox .photoBox .text span {
  display: inline-block;
  margin-right: 5px;
  background: #0071bc;
  color: #fff;
  border-radius: 3px;
  padding: 0 5px;
}

.main .comTableBox table {
  width: 100%;
  border-collapse: collapse;
  border-top: 1px solid #ccc;
}

.main .comTableBox th,
.main .comTableBox td {
  padding: 10px 5px;
  width: 79%;
  font-size: 15px;
  vertical-align: top;
  text-align: left;
  line-height: 2;
  border-bottom: 1px solid #ccc;
}

.main .comTableBox th {
  padding: 10px 25px;
  width: 21%;
  font-size: 15px;
}

.main .comTableBox ul {
  position: relative;
  overflow: hidden;
}

.main .comTableBox>ul>li {
  padding: 30px;
  box-sizing: border-box;
  background: #eff5ff;
}

.main .comTableBox>ul>li:before,
.main .comTableBox>ul>li:after,
.main .requirementList .comTableBox>ul>li:before,
.main .requirementList .comTableBox>ul>li:after {
  content: none;
}

.main .requirementList .comTableBox {
  margin-bottom: 0;
}

.main .requirementList .comTableBox>ul>li {
  width: 480px;
  float: left;
  margin-bottom: 50px;
  text-align: center;
}

.main .requirementList .comTableBox>ul>li:nth-child(2n) {
  float: right;
}

.main .requirementList .comTableBox>ul>li:nth-child(2n + 1) {
  clear: both;
}

.main .requirementList .comTableBox>ul>li .btn {
  margin-bottom: 0;
}

.main .comTableBox ul li dl {
  border-top: 1px solid #ccc;
  margin-bottom: 20px;
}

.main .comTableBox ul li dt {
  float: left;
  clear: both;
  padding: 10px 5%;
  width: 20%;
  font-weight: bold;
  font-size: 15px;
  text-align: left;
}

.main .comTableBox ul li dd {
  border-bottom: 1px solid #ccc;
  margin-bottom: 5px;
  padding: 10px 5px;
  font-size: 15px;
  padding-left: 30%;
  text-align: left;
}

.main .post-type-archive-works,
.main .tax-works_tax {
  display: none;
}


.tel .tel-link ruby {}

.tel .tel-link ruby rt {
  font-size: 0.25em;
  text-justify: none;
  text-align: right;
  letter-spacing: 0.3em;
}

.main ol.showroomMerit {
  position: relative;
  overflow: hidden;
  padding: 20px;
  background: #8dc220;
  margin-bottom: 40px;
}

.main ol.showroomMerit li {
  width: 470px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
  display: block;
  float: left;
  list-style-type: none;
  margin: 20px 0 0;
  padding: 0;
}

.main ol.showroomMerit li:nth-child(2n) {
  float: right;
}

.main ol.showroomMerit li:nth-child(-n+2) {
  margin-top: 0;
}

.main ol.showroomMerit li h4 {
  /* padding: 0 0 0 160px; */
  padding: 0;
  text-align: center;
  font-size: 28px;
  color: #fff;
  position: relative;
  margin-bottom: 5px;
}

.main ol.showroomMerit li h4::before,
.main ol.showroomMerit li h4::after {
  content: none;
}

.main ol.showroomMerit li h4 img {
  position: absolute;
  left: -15px;
  display: none;
}

.main ol.showroomMerit li p {
  margin-bottom: 0;
}



/*---------.topMedal--------*/

ul.topMedal {
  display: flex;
  margin-top: 5px;
}

ul.topMedal li {
  padding-left: 0;
}

ul.topMedal li img {
  width: 100%;
}

ul.topMedal li:before,
ul.topMedal li:after {
  content: none;
}