@charset "utf-8";
/*
Theme Name: tatsubisou.jp
Theme URI: https://tatsubisou.jp/
Description: pcbrain
Version: 1.0
Author: pcbrain.co.jp
*/
@charset "utf-8";
/* YUI fonts.css - font size設定
----------------------------------------------------------- */
@import url("css/cssfonts-min.css");
/* default style - リセット及びbody基本設定
----------------------------------------------------------- */
@import url("css/default.css");
/* all style
----------------------------------------------------------- */
@import url("css/style.css");

:root {
        --body-font-family: 'Noto Sans JP', sans-serif;
        --en-font-family: 'Akshar', sans-serif;
        --en-font-family-weight: 700;
}

body {
    min-width: 1100px;
    /*コンテンツ横幅を指定する（スマホ閲覧時の背景欠けを防ぐ）*/
    font-size: 16px;
    box-sizing: border-box;
}

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

article {
    padding: 20px 0;
}

/*------------- tmp -------------*/

.bg01 {
    background: #fffce3;
}

.bg02 {
    border-top: #f8771a 4px solid;
}

.bg02--2px {
    border-top: #f8771a 2px solid;
}

.bg03 {
    background: #f5f5f5;
}

.bg04 {
    background: #ffc13b;
/* 同設定があったので欠番予定 */
}

.bg05 {
    position: relative;
    background: url(./img/bg_check.png) center center;     /* 最終削除 */
    z-index: 0;
    background: #f8771a; 
}
.bg06 {
    background-image: repeating-linear-gradient(to bottom, #009e37, #009e37 6px, #00a83a 0, #00a83a 15px);
    background-position: left -6px;
}

.bg07 {
    background: repeating-linear-gradient(-45deg, #f5f5f5, #f5f5f5 4px, #eee 0, #eee 11px);
}

.bg08 {
    background-color: #ffffff;
}

.bg09 {
    background-color: #f8771a;
}

.btn {
    display: inline-block;
}

.textCenter.btn {
    display: block;
}
.textCenter.btn a{
    width: fit-content;
    display: inline-block;
}
/*
.textCenter.btn a,
.textCenter a.btn {
    display: inline-block;
    text-align: center;
}
*/
.btnC {
    text-align: center;
    display: block;
}

.btnC a {
    display: inline-block !important;
    text-align: center;
}

.btnR {
    display: block;
    float: right;
}

.btn a {
    display: block;
    border-radius: 50px;
    color: #fff !important;
    font-size: 18px;
    position: relative;
    padding: 10px 70px 10px 50px;
    text-decoration: none;
    text-align: center;
    background: #d00000;
    text-decoration: none !important;
    font-weight: 500;
}

.btn a:hover {
    box-shadow: 0px 0px 0px 2px #d00000 inset, 0px 0px 0px 3px #fff inset;
    transition: 0.4s;
}

.main p.btn a {
    min-width: min(380px, calc(100vw - 40px));
    max-width: 100%;
    text-align: center;
    box-sizing: border-box;
}

.main p.btn a::after {
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    font-family: "Font Awesome 5 Free";
    content: '\f138';
    font-weight: 900;
    font-size: 14px;
    right: 20px;
    height: 1em;
    line-height: 1;
}

.btnDetail {
    position: relative;
    font-size: 16px !important;
    font-weight: bold;
    margin: 5px 0 0 !important;
    padding: 0;
    transition: 0.7s;
    text-align: center;
    color: #fff;
    display: block;
}

.btnDetail:hover {
    opacity: 0.7;
    transition: 0.7s;
}

.btnDetail a {
    display: inline-block !important;
    padding: 3px 15px !important;
    color: #fff !important;
    text-decoration: none !important;
    text-align: center;
    transition: 0.7s;
    background: #eb6100;
    box-shadow: 0 -3px 0 rgba(255,255,255, 0.3) inset;
    border-radius: 50px;
}

.notice-r {
    color: #d00000 !important;
}

.notice-o {
    color: #f8771a !important;
}

.notice-b {
    color: #002590 !important;
}

.notice-n {
    color: #015694 !important;
}

.notice-g {
    color: #12a73b !important;
}

.notice-y {
    color: #ffde00 !important;
}

.fontbold {
    font-weight: bold;
}

.tel {
    font-size: 13px;
}

.tel span {
    padding-left: 32px;
    background: url(./img/ico_fdl.svg) no-repeat 2px center;
    background-size: 44px auto;
/*    background: url(./img/ico_fdl02.png) no-repeat left bottom;*/
    font-size: 46px;
    line-height: 1;
    padding: 0 0 0 50px;
    margin: 0;
    display: block;
    font-family: var(--en-font-family);
    font-weight: var(--en-font-family-weight);
    letter-spacing: -0.04em;
}

/*--- モバイル非表示 ---*/
@media (max-width: 639px) {
    .u-displaynone-sm {
      display: none !important;
    }
}
/*--- デスクトップ非表示 ---*/
@media (min-width: 640px) {
    .u-displaynone-md-up {
        display: none !important;
    }
}

/* -----------------------------------------------------------
    header
----------------------------------------------------------- */
header {
    position: relative;
}

header .htxt {
    border-bottom: #ddd solid 1px;
    padding: 13px 0;
}

header .htxt h1,
header .htxt p {
    font-size: 14px;
    font-weight: 400;
    display: block;
    width: 1100px;
    margin: 0 auto;
    padding-right: 390px;
    box-sizing: border-box;
    line-height: 1.2;
}

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

header .inner {
    padding: 5px 0;
    box-sizing: border-box;
    width: 1100px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    overflow: visible;
}

header .hdrLogo {
    overflow: hidden;
    margin: 0px 5px 0 0;
}

header .hdrLogo>img {
    float: right;
    margin-left: 5px;
}

header .hdrLogo a {
    margin: 6px 0 0;
    text-decoration: none;
    color: #444;
    display: block;
    float: left;
}

header .hdrLogo a img {
    margin: 0 0 5px;
}

header .hdrContact {
    float: right;
    font-size: 14px;
}

header .hdrContactBtn {
    position: absolute;
    bottom: 100%;
    right: 0;
    display: flex;
}

header .hdrContactBtn a {
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    color: #fff;
    text-decoration: none;
    background: #002590;
    font-size: 15px;
}

header .hdrContactBtn a:nth-of-type(2) {
    background: #00a83a;
}

header .hdrContactBtn h3 {
    background: #d00000;
    font-size: 15px;
    font-weight: normal;
    padding: 10px 15px;
}

header .hdrContactBtn p {
    padding: 10px 15px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
}

header .hdrContactBtn p img {
    margin: -5px 10px -5px 0;
}

header .hdrContact .tel {
    font-size: 16px;
    line-height: 1.4;
}

header .hdrBnr {
    position: relative;
    overflow: hidden;
    float: right;
    margin: -10px 0 0 5px;
    padding-top: 10px;
}

header .hdrBnr li {
    box-sizing: border-box;
    float: left;
    margin-left: 5px;
}

header .hdrBnr li.dgBtn {
    margin-top: -10px;
}

header .hdrBnr li a {
    text-decoration: none;
}

header .hdrBnr li span {
    border-radius: 3px;
    background: #0b3e9b;
    display: block;
    color: #ffffff;
    font-size: 16px;
    text-align: center;
    padding: 5px 0;
}

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

/*-------------------#header .topGoogleReview-----------------*/

#header + .wp-gr {
    padding-bottom: 0 !important;
    height: 80px !important;
    background-color: #f0f0f0 !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
}

#header + .wp-gr .wp-google-place.wp-place-center {
    padding: 9px 0 !important;
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
}

#header + .wp-gr.wpac div {
    display: flex !important;
}

#header + .wp-gr .wp-google-place.wp-place-center .wp-google-left {
    display: flex !important;
    align-items: center;
    justify-content: center;
}

#header + .wp-gr .wp-google-left img {
    box-shadow: none !important;
    width: 50px !important;
    height: 50px !important;
}

#header + .wp-gr .wp-google-right {
    display: flex !important;
    align-items: center;
    justify-content: flex-start;
    width: auto !important;
    text-align: left !important;
}

#header + .wp-gr.wpac .wp-google-name a {
    color: #222 !important;
    font-size: 100% !important;
    text-decoration: none !important;
}

#header + .wp-gr.wpac .wp-google-name>a>span {
    font-size: 20px !important;
    font-weight: 700 !important;
    margin-right: 20px !important;
}

#header + .wp-gr .wp-google-rating {
    font-size: 20px !important;
    font-weight: 500 !important;
    margin-bottom: 0 !important;
    display: inline-block;
}

#header + .wp-gr .wp-google-stars .wp-star {
    padding: 0 4px 0 0 !important;
    line-height: 22px !important;
}

#header + .wp-gr .wp-google-powered {
    margin: 0 5px !important;
    font-size: 16px !important;
}

#header + .wp-gr .wp-google-powered img {
    /*margin: 0 200px 0 5px !important;
    width: 165px !important;
    max-width: 200px !important;*/
}

#header + .wpac div .wp-google-content-inner,
#header + .wpac div .wp-google-reviews,
#header + .wpac div .wp-google-review,
#header + .wpac div .wp-google-url,
#header + .wpac div .wp-google-wr {
    display: none !important;
}

/* -----------------------------------------------------------
    footer
----------------------------------------------------------- */
footer {
    padding: 0 0 80px 0;
    font-size: 13px;
}
footer:not(:has(.ftrScroll)) {
    padding-bottom: 0;
}

footer .ftrBnr {
    position: relative;
    overflow: hidden;
}

footer .ftrBnr .consultationBox,
footer .ftrBnr .estimatesBox {
    float: left;
    margin-right: 40px;
}

footer .ftrBnr .estimatesBox {
    margin-right: 0;
}

footer .ftrLBnr {
    clear: both;
    margin: 0 0 20px 0;
}

footer .ftrLBnr ul {
    display: flex;
    justify-content: flex-end;
    flex-wrap: wrap;
}

footer .ftrLBnr ul li {
    margin: 0 0 10px 10px;
}

footer .ftrLBnr ul li a {
    display: block;
}

footer .ftrLBnr ul.maker li a img {
    max-height: 48px;
    width: auto;
}

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

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

footer a,
footer a:link,
footer a:visited {
    color: #444;
    text-decoration: none;
}

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

footer h5 {
    font-size: 14px;
    line-height: 1.4;
    margin-bottom: 0;
}

footer h5+p {
    margin-bottom: 15px;
}

footer h6 {
    margin: 0;
    font-size: 14px;
}

footer .floatL {
    margin-bottom: 50px;
}

footer .footercontents {
    text-align: center;
}

footer table{
    margin-top: 30px;
}

footer table tr {
    border-bottom: 1px dotted #222222;
}

footer table th {
    font-size: 14px;
    font-weight: bold;
    width: auto;
}

footer table td {
    font-size: 14px;
}

footer table tr:nth-child(2n) th,
footer table tr:nth-child(2n) td {
    background: transparent;
}

footer .snsbnr {
    display: flex;
    gap: 40px;
    justify-content: center;
    margin-top: 40px;
}

footer .gaibulinkbnr {
    background-color: #ececec;
    padding: 20px 0;
    display: flex;
    gap: 40px;
    justify-content: center;
    margin-top: 20px;
}

footer nav {
    /* float: right; */
    height: auto;
    background: none;
    margin-top: 0;
    width: 100%;
}

footer nav .ftrNav {
    position: relative;
    overflow: hidden;
}

footer nav .ftrNav>li {
    float: left;
    margin-left: 180px;
}

footer nav .ftrNav>li:first-child {
    float: left;
    margin-left: 0;
}

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

footer nav .ftrNav li ul>li:before,
footer nav .ftrNav li ul>li:after {
    display: block;
    content: '';
    position: absolute;
    top: 10px;
}

footer nav .ftrNav li ul>li:before {
    z-index: 2;
    top: 11px;
    left: 1px;
    width: 3px;
    height: 3px;
    border-right: 1px solid #fff;
    border-bottom: 1px solid #fff;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

footer nav .ftrNav li ul>li:after {
    left: 0px;
    width: 7px;
    height: 7px;
    background-color: #eb6100;
}

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

footer .copyRight {
    clear: both;
    text-align: right;
}

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

footer .ftrScroll .inner {
    margin: 10px auto;
    padding: 0;
    width: 1100px;
    display: flex;
    gap: 10px;
    justify-content: space-between;
    align-items: stretch;
}

footer .ftrScroll .ftrCont {
    background: #fff;
    padding: 10px 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    width: 100%;
}

footer .ftrScroll .catchTtl {
    margin: 0 10px 0 0 !important;
    background: none !important;
}

footer .ftrScroll .catchTtl li {
    background: #d00000;
    color: #fff;
    padding: 2px 10px;
    width: auto;
    margin: 0 0 1px;
    border-radius: 3px;
    font-size: 15px;
    font-weight: normal;
    float: none;
}

footer .ftrScroll .tel {
/*    display: flex; */
    display: block;
    align-items: center;
    margin-right: 15px;
    font-size: 14px;
    line-height: 1;
    text-align: left;
    padding-left: 36px;
    flex: auto;
}

footer .ftrScroll .tel span {
    padding: 0 0 0 36px;
    font-size: 38px;
    line-height: 1;
    display: block;
    background-size: 34px;
    background-position: left center;
    margin-left: -36px;
    margin-right: 5px;
    margin-bottom: -2px;
}

footer .ftrScroll .ftrCont .btnList {
    position: relative;
    overflow: hidden;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: stretch;
    align-items: stretch;
}

footer .ftrScroll .ftrCont .btnList li {
    float: left;
    margin-left: 5px;
    width: 199px;
    font-size: 23px;
    font-weight: 700;
    border-radius: 5px;
    box-sizing: border-box;
    overflow: hidden;
}

footer .ftrScroll .ftrCont .btnList li a {
    padding: 10px 0;
    display: block;
    color: #fff;
    text-decoration: none;
    position: relative;
    text-align: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
}

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

/*footer .ftrScroll .ftrCont .btnList li.ftrDiagnosis a {*/
footer .ftrScroll .ftrCont .btnList li.ftrShowroom a {
    background-color: #d00000;
    border: #d00000 1px solid;
    box-shadow: 0 3px 0 rgb(255 255 255 / 50%) inset;
}

footer .ftrScroll .ftrCont .btnList li.ftrContact a {
    background-color: #002590;
    border: #002590 1px solid;
    box-shadow: 0 3px 0 rgb(255 255 255 / 50%) inset;
}

footer .ftrScroll .ftrCont .btnList li.ftrLine a {
    background-color: #00a83a;
    border: #00a83a 1px solid;
    box-shadow: 0 3px 0 rgb(255 255 255 / 50%) inset;
}

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

footer .ftrScroll .ftrCont .btnList li img {
    margin: -10px 15px -10px 0;
}

#topcontrol {
    z-index: 100;
}

span.pageTop {
    background:rgba(0,0,0, 0.7);
    box-shadow:0px 0px 0px 1px #fff inset;
    border:rgba(255, 255, 255, 0) solid 5px;
    width: 76px;
    height: 68px;
    text-align: center;
    display: table-cell;
    vertical-align: middle;
    box-sizing: border-box;
    padding:10px;
    z-index:10;
}

footer .ftrScroll .pageTop a {
    border: #fff solid 1px;
    width: 76px;
    height: 100%;
    text-align: center;
    display: flex;
    box-sizing: border-box;
    align-items: center;
    justify-content: center;
}

footer .ftrScroll .pageTop a:hover img {
    filter: alpha(opacity=80);
    opacity: 0.8;
}

#top footer .ftrBnr {
    padding-bottom: 0;
    border-bottom: none;
    margin-bottom: 0;
}

.main .corpAbout p {
    font-size: 16px;
    margin-bottom: 1em;
    line-height: 1.875;
}

.main .corpAbout p.btn {
    margin-top: 30px;
}

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

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

.main .corpAbout .btn :after {
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    font-family: "Font Awesome 5 Free";
    content: '\f138';
    font-weight: 900;
    font-size: 16px;
    right: 20px;
    height: 18px;
    line-height: 1;
}

.corpAbout img {
    width: 370px;
    height: auto;
    display: block;
}

/* -----------------------------------------------------------
    nav
----------------------------------------------------------- */
nav {
    position: relative;
    height: 80px;
    background: #f8771a;
}

nav ul#gNav {
    height: 64px;
    margin: auto;
    width: 1100px;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 8px 0;
}

nav ul#gNav>li {
    border-right: #ddd solid 1px;
    display: block;
    min-width: 137.5px;
    position: relative;
    height: 100%;
    box-sizing: border-box;
    height: 64px;
}

nav ul#gNav>li:first-child {
    border-left: #ddd solid 1px;
}

nav ul#gNav>li>a {
    padding: 0;
    height: 64px;
/*    display: block;*/
    position: relative;
    width: 100%;
    text-align: center;
    text-decoration: none;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.2;
    color: #fff;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

nav ul#gNav>li img {
    display: block;
    margin: 5px auto 5px;
}

nav #gNav>li>ul {
    position: absolute;
    top: 92px;
    left: 0;
    z-index: 1;
    min-width: 100%;
    height: 0;
    width: auto;
}

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);
    font-size: 13px;
    transition: 0.7s;
    float: none;
    font-weight: normal;
    text-shadow: none;
}

nav #gNav li ul li a {
    height: auto;
    border-bottom: none;
    height: 39px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-align-items: center;
    align-items: center;
    justify-content: center;
}

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 ul li:hover,
nav #gNav li ul>li a:hover {
    color: #f1d200 !important;
    transition: 0.7s;
}

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

#menu nav #gNav>li.gnav03 ul li a,
#menu nav #gNav>li.gnav04 ul li a {
    color: #fff !important;
}

#menu nav #gNav>li.gnav03 ul li a:hover,
#menu nav #gNav>li.gnav04 ul li a:hover {
    color: #f1d200 !important;
    transition: 0.7s;
}
/*-------------
#mainv
--------------*/
#mainv {
    margin-bottom: 0;
    z-index: 0;
    overflow: hidden;
}

#mainv img {
    width: 100%;
}

#mainv a:hover img {
    opacity: inherit;
}

header#header + .wp-gr {
    padding-bottom: 0 !important;
}

header#header + .wp-gr.wpac .wp-google-name > a >span,
.wp-gr.wpac .wp-google-name > a  > span {
    font-size: 16px !important;
    font-weight: 700 !important;
    font-family: var(--body-font-family);
}

header#header + .wp-gr .wp-google-rating {
    font-size: 24px !important;
    font-weight: 500 !important;
    font-family: var(--body-font-family) !important;
    margin-bottom: 4px !important;
    display: inline-block;
}
header#header + .wp-gr .wp-google-place.wp-place-center {
    background: #f5f5f5 !important;
}
header#header + .wp-gr .wp-google-place.wp-place-center .wp-google-left {
    display: flex !important;
    align-items: center;
    justify-content: center;
}

header#header + .wp-gr .wp-google-place.wp-place-center .wp-google-left img {
     box-shadow: none !important;
     width: 46px !important;
     height: 46px !important;
}



/*--基本の記事スタイル設定--*/
.main p {
    font-size: 16px;
    margin-bottom: 15px;
}

.main a {
    color: #002590;
    text-decoration: underline;
/*    display: block;*/
}

.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 .inner+p+h2,
.main .inner+p+h3,
.main .inner+p+h4,
.main .inner+p+h5,
.main .inner+p+h6 {
    margin-top: 0;
}

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

h2 a,
h4 a,
h6 a {
    color: #444;
    text-decoration: underline;
}

.headLine {
    font-size: 42px;
    font-weight: 700 !important;
    position: relative;
    padding: 0;
    box-sizing: border-box;
    background: none;
    border: none;
    border-image: none;
    box-shadow: none;
    line-height: 1.4;
    margin: 0 auto 25px;
    text-align: center;
    width: 1000px;
}

.main h2.headLine {
    line-height: 1.4;
}

#first .main .toptext {
    color: #FFF;
    font-size: 24px;
    padding: 10px 15px;
    margin: 0 auto;
    position: relative;
    background: #f8771a;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    border-top: #f8771a solid 7px;
    border-image: url(./img/top_bnr_bg.png) 7 7 round;
    border-width: 7px 0 0 0;
    box-shadow: 0px 1px 0px 0px #fff inset;
    text-align: center;
    width: 1000px;
}

.headLine span,
.headLine b {
    font-size: 24px;
    font-weight: 700;
    display: block;
}

.headLine.headLineSubcolor span,
.headLine.headLineSubcolor b {
    color: #f8771a;
    font-weight: 700;
}

.headLine.headLineSubbgcolor span,
.headLine.headLineSubbgcolor b {
    background: #f8771a;
    font-weight: 500;
    color: #fff;
    font-size: 20px;
    padding: 5px 15px;
    margin-bottom: 10px;
}

/*
.headLine::after {
    content: '';
    display: block;
    width: 60px;
    height: 4px;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    background: #eb6100;
}

.bg01 .headLine::after {
    background: #fff;
}*/

.headLine.headLineSinglemenu span {
    margin-top: 10px;
    padding: 10px 0;
    border-top: 1px solid #ccc;
}

.fullWidth {
    background: #f8771a;
    color: #fff;
    width: 100%;
    text-align: center;
    padding: 15px 0 !important;
    line-height: 1.4;
    font-size: 34px;
    border: none;
    border-image: none;
    box-shadow: none;
    margin: 0 auto 30px;
}

.fullWidth.fullWidthB {
}

.main h2.fullWidth {
    font-size: 42px;
    font-weight: 600;
    padding: 4px 0 6px !important;
}

.main h2.fullWidth .inner {
    padding: 0;
}

.main h2.fullWidth:has(strong) {
    font-size: 36px;
    font-weight: 400;
}

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

.main h2.fullWidth.font-s {
    font-size: 28px;
}

.fullWidth span.ltl {
    font-size: 80%;
}

.midTitle01 {
    background: #f8771a;
    border: none;
    color: #fff;
    font-size: 20px;
    margin: 20px 0 !important;
    padding: 5px 15px;
    text-align: center;
}

.semicircle_headline {
    --color01: #2e3fb0;
    --color02: #3c4cb5;
    display: block;
    background-color: var(--color01);
    background: repeating-linear-gradient(-45deg, var(--color01), var(--color01) 4px, var(--color02) 0, var(--color02) 11px);
    color: #fff;
    max-width: 1100px;
    margin: 0 auto 10px;
    padding: 10px 30px 13px;
    position: relative;
    border-radius: 10px;
    text-shadow: 2px 2px 0 var(--color01), -2px 2px 0 var(--color01), 2px -2px 0 var(--color01), -2px -2px 0 var(--color01) 0 0 2px var(--color01);
    letter-spacing: 0;
    margin-top: 50px;
    margin-bottom: 30px;
    transform-style: preserve-3d;
}

.semicircle_headline.bg-o{
    --color01: #f8771a;
    --color02: #f8771a;
}

.semicircle_headline.bg-g{
    --color01: #009e37;
    --color02: #00a83a;
}

.semicircle_headline::before {
    content: "";
    display: block;
    position: absolute;
    width: 0;
    height: 0;
    border-top: 30px solid var(--color01);
    border-left: 20px solid transparent;
    border-right: 20px solid transparent;
    margin: 0 auto;
    bottom: -22px;
    left: 0;
    right: 0;
    transform: skewX(-50deg) translateX(0px) translateZ(-1px);
    z-index: -1;
}
/*
.semicircle_headline:before {
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 17.3px 10px 0 10px;
    border-color: #ffc13b transparent transparent transparent;
    left: 0;
    right: 0;
    top: 100%;
    margin: auto;
    position: absolute;
    display: block;
}*/

.semicircle_headline span {
    color: #fff;
    display: inline-block;
    margin: 0 0.5em;
    vertical-align: 0.2em;
}

.semicircle_headline.subBlock span {
    display: block;
}

.single-content h2.headLine {
    text-align: left;
}

h2.headLine.single {
    text-align: left;
}

.single-content h1 {
    --c: #eb6100;
    background: linear-gradient(to bottom, var(--c) 5px, #fff 5px, #fff 6px, var(--c) 6px, var(--c) calc(100% - 6px), #fff calc(100% - 6px), #fff calc(100% - 5px), var(--c) calc(100% - 5px));
    color: #fff;
    font-size: 34px;
    font-weight: 700;
    margin-bottom: 10px;
    padding: 15px;
    text-align: center;
}

.single-content h2:not(.headLine) {
    margin: 0 0 20px;
    border: none;
    font-size: 30px;
    border-bottom: #ccc solid 2px;
    background: none;
    padding: 0 0 15px;
    text-align: left;
    color: #f8771a;
}

.single-content h3,
.headline03 {
    margin: 0 0 20px;
    border: none;
    font-size: 24px;
    border-bottom: #ddd solid 1px;
    background: none;
    padding: 0 0 15px;
    text-align: left;
    padding: 10px 20px;
    color: #fff;
    background: #e05e00;
    font-weight: bold;
}

.single-content h4:not(.headLine),
.headline04{
    font-size: 18px;
    padding: 0 0 0 50px;
    margin: 0 0 20px;
    position: relative;
    line-height: 1.8;
}

.single-content h4:not(.headLine)::before,
.single-content h4:not(.headLine)::after,
.headline04:before,
.headline04:after {
    border-radius: 50%;
    content: '';
    display: block;
    position: absolute;
    top: 5px;
    font-size: 30px;
    line-height: 1.0;
    background: #f8771a;
    width: 20px;
    height: 20px;
}
.single-content h4:not(.headLine)::before,
.headline04:before {
    left: 0;
    opacity: 0.5;
}

.single-content h4:not(.headLine)::after,
.headline04:after {
    left: 23px;
}

.single-content h5,
.headline05 {
    background: #f8771a;
    color: #fff;
    font-size: 18px;
    display: inline-block;
    padding: 3px 5vmin;
    border-radius: 50px;
    margin: 0 0 20px;
}

.headline05 a {
    color: #FFF;
    text-decoration: underline;
}

.single-content h6,
.headline06 {
    font-size: 18px;
    padding: 0 0 0 20px;
    margin: 0 0 20px;
    position: relative;
}

.single-content h6:before,
.headline06:before {
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    font-family: "Font Awesome 5 Free";
    content: '\f138';
    font-weight: 900;
    font-size: 16px;
    left: 0;
    height: 18px;
    line-height: 1;
    color: #f8771a;
    background: none;
}

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

.main blockquote p {
    margin: 0;
}

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

.main ul li {
    font-size: 16px;
    line-height: 1.5;
    margin: 7px 0 0 0;
    position: relative;
    padding-left: 13px;
    list-style-type: none;
}

.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: #f8771a;
}

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

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

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

table {
    width: 100%;
}

table th,
table td {
    padding: 15px 20px;
    font-size: 15px;
    text-align: left;
    vertical-align: top;
    position: relative;
}

table th {
    width: 20%;
    font-weight: normal;
}

table tr:nth-child(2n) th,
table tr:nth-child(2n) td {
    background: #f3f3f3;
}


/*--共通パーツ--*/
.main .photoUL {
    margin: 0 0 0 0;
    padding: 0;
    overflow: hidden;
    position: relative;
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 20px;
}

.main .photoUL li {
    font-size: 15px;
    margin: 0;
    padding: 0;
}

.main .photoUL.photoColumn3 li {
    width: calc((100% - 40px) / 3);
}

.main .photoUL .otherPhoto {
    width: 320px;
    height: 206px;
    position: relative;
    overflow: hidden;
    display: block;
}

.main .photoUL li span {
    width: 100%;
    position: relative;
    overflow: hidden;
    display: block;
}

/*.main .photoUL li span:before {
    content: '' !important;
    display: block;
    padding-top: 60%;
}*/

.main .photoUL li span img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

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

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

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

.warryBox .inner {
    display: flex;
    align-items: center;
}

.main .warryBox p,
.main .meritBox p {
    line-height: 1.4;
    font-size: 15px;
    margin-bottom: 0;
}

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

.warryList,
.meritList {
    border-top: #444 dotted 1px;
    padding-top: 10px;
    overflow: hidden;
    width: 100%;
}

.main .warryList li,
.main .meritList li {
    background: none;
    border-bottom: #444 dotted 1px;
    position: relative;
    font-size: 22px;
    padding: 0 0 7px 40px;
    margin: 0 0 8px;
}

.meritList li span {
    background: #e60012;
    border-radius: 5px;
    color: #fff;
    display: inline-block;
    padding: 0 10px;
    margin-right: 15px;
}

.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 {
    content: none;
}

.main .warryList>li:before {
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    font-family: "Font Awesome 5 Free";
    content: '\f14a';
    font-weight: 900;
    font-size: 30px;
    left: 0;
    height: 30px;
    width: auto;
    line-height: 1;
    color: #f8771a;
    background: none;
}

.warryList li strong {
    background: #ffde00;
    display: inline-block;
    line-height: 0.5;
}

.meritBox {
    box-shadow: 0px 0px 0px 5px #ccc inset;
    padding: 0 25px 25px;
    margin: 40px auto;
}

.meritBox_ttl {
    background: #f8771a;
    margin: 0 -25px 20px;
    z-index: 1;
    position: relative;
    font-size: 28px;
    font-weight: 500;
    color: #fff;
    padding: 15px;
    box-sizing: border-box;
    text-align: center;
}

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

.main .meritList {
    padding-top: 7px
}

.main .meritList li {
    padding: 0 0 7px 30px;
    margin-bottom: 7px;
}

.meritList li strong {
    color: #d00000;
}

.main .meritList>li:before {
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    font-family: "Font Awesome 5 Free";
    content: '\f138';
    font-weight: 900;
    font-size: 26px;
    left: 0;
    height: 26px;
    width: auto;
    line-height: 1;
    color: #d00000;
    background: none;
}

.main .meritBox .diagnosisList {
    clear: both;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    margin-bottom: 0;
}

.main .meritBox .diagnosisList li {
    border-radius: 4px;
    background: #f8771a;
    color: #fff;
    font-size: 26px;
    text-align: center;
    width: calc(33% - 10px);
    padding: 3px 0;
    margin: 0;
}

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

.main .meritBox .diagnosisP {
    color: #fff;
    border-radius: 4px;
    background: #00617D;
    font-size: 30px;
    font-weight: bold;
    text-align: center;
    padding: 10px 0;
}

/*---メダル付キャッチコピー---*/
.main .medalCatch {
    position: relative;
    z-index: 10;
    margin: 0 auto;
    font-weight: bold;
    font-size: 27px;
    display: block;
    line-height: 1.2;
}

.main .medalCatch img {
    float: left;
    margin: -10px 15px 0 0;
}

.main .medalCatch strong {
    color: #e60012;
}

.main .medalCatch span {
    display: block;
}

.main .medalCatch span.txtL {
    font-size: 42px;
    font-weight: normal;
}


/*---外壁塗装のプロに相談しよう！見積りを取られている方へ！--*/
.estimatesBox,
.consultationBox {
    width: 480px;
    position: relative;
    padding-top: 8px;
    margin-top: -8px;
    margin-bottom: 25px;
}

.estimatesBox h3,
.consultationBox h3,
.main .inqCount h3 {
    background: #f8771a !important;
    color: #fff !important;
    font-size: 21px !important;
    font-weight: 700;
    padding: 13px 0 13px 112px !important;
    border-top: 2px #e05e00 solid !important;
    margin: 0 !important;
    line-height: 1.3 !important;
    position: relative;
    text-align: left !important;
}

.main .inqCount h3 span,
.consultationBox h3 span,
.estimatesBox h3 span {
    font-size: 14px;
    display: block;
    margin-top: 5px;
}

.main .inqCount h3 span.ribbonS,
.consultationBox h3 span.ribbonS,
.estimatesBox h3 span.ribbonS {
    position: absolute;
    color: #fff;
    background: url(./img/bg_ribbon.png) no-repeat center center;
    top: -14px;
    left: 5px;
    width: 104px;
    height: 112px;
    font-size: 15px !important;
    font-weight: 400;
    z-index: 11;
    line-height: 1.3;
    text-align: center;
    padding: 28px 10px 0 0;
    box-sizing: border-box;
    letter-spacing: 0;
}

.consultationBox a {
    text-decoration: none !important;
}

.consultationBox h3 {
    background: #444 !important;
    color: #fff !important;
    font-size: 20px !important;
    padding: 0 15px !important;
    border-top: none !important;
    margin: 0 !important;
    line-height: 1.8 !important;
    text-align: center;
    font-weight: normal;
}

.consultationBox .catchTxt {
    position: absolute;
    left: 5px;
    top: -50px;
    background: #eb6100;
    border-radius: 50%;
    width: 80px;
    height: 80px;
    color: #fff;
    line-height: 1.2;
    z-index: 5;
    font-size: 14px !important;
    margin-bottom: 0 !important;
    transform: rotate(-20deg);
    padding-top: 25px;
    box-sizing: border-box;
    text-align: center;
    box-shadow: rgba(0, 0, 0, 0.4) 1px 1px 0px 1px;
}

.consultationBox .catchTxt:after {
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 20px 10px 0 10px;
    border-color: #eb6100 transparent transparent transparent;
    content: '';
    position: absolute;
    right: 15px;
    top: 85%;
    margin: auto;
    transform: rotate(-20deg);
}

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

.consultationBox .inBox .imgLayer {
    bottom: 10px;
}


.consultationBox .btn {
    margin-bottom: 0 !important;
    padding: 5px 40px 5px 60px;
    width: auto;
}

.consultationBox ul {
    position: relative;
    overflow: hidden;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-align-items: center;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 0 !important;
}

.consultationBox ul li {
    position: relative;
    font-size: 20px !important;
    font-weight: bold;
    background: #e60012 !important;
    box-shadow: 0 -3px 0 #930839 inset;
    padding: 0 !important;
    transition: 0.7s;
    text-align: center;
    color: #fff;
    margin: 0 !important;
}

.consultationBox ul li:hover {
    opacity: 0.7;
    transition: 0.7s;
}

.consultationBox ul li a {
    display: block;
    padding: 3px 10px !important;
    color: #fff !important;
    text-decoration: none !important;
    text-align: center;
    transition: 0.7s;
}

.consultationBox ul li:before,
.consultationBox ul li:after {
    content: none !important;
}

.estimatesBox a {
    text-decoration: none !important;
    color: #222 !important;
}

.estimatesBox .imgLayer {
    top: -80px;
    right: 0;
}

.estimatesBox .inBox {
    background: #fffcb1;
    box-sizing: border-box;
    padding: 20px 15px 15px 15px;
    position: relative;
    width: 100%;
}

.estimatesBox h4 {
    font-size: 18px !important;
    padding: 0 0 5px 50px !important;
    position: relative !important;
    border-bottom: #ddd solid 1px !important;
    margin: 0 0 5px !important;
}

.estimatesBox h4:before,
.estimatesBox h4:after {
    border-radius: 50%;
    content: '';
    display: block;
    position: absolute;
    top: 3px;
    font-size: 30px;
    line-height: 1.0;
    background: #ffc13b !important;
    width: 20px;
    height: 20px;
}

.estimatesBox h4:before {
    left: -5px;
    opacity: 0.5;
}

.estimatesBox h4:after {
    left: 18px;
}

.estimatesBox .inBox p {
    font-size: 26px !important;
    z-index: 10;
    position: relative;
    margin-bottom: 5px !important;
    margin-top: 0px !important;
    height: 55px;

    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
}

.estimatesBox .inBox p strong {
    color: #d00000;
    font-weight: bold;
}

.estimatesBox .inBox p span.dbiS {
    border-radius: 4px;
    background: #d00000;
    color: #fff;
    font-size: 20px;
    padding: 5px 5px;
    margin-right: 4px;
    font-weight: bold;
}

.estimatesBox .inBox .telBox {
    position: relative;
    display: block;
    float: none;
    border: #ffde00 solid 10px;
    background: #fff;
    padding: 0 20px 3px;
    text-align: center;
}

.estimatesBox .inBox .telBox h5 {
    font-size: 14px !important;
    font-weight: 600;
    padding: 0 0 5px !important;
    display: block !important;
    background: #ffde00 !important;
    border-radius: 0 !important;
    margin: -5px -20px 5px !important;
    text-align: center;
}


.estimatesBox .inBox .telBox .tel {
    font-size: 14px !important;
    font-weight: normal;
    display: block;
    line-height: 1;
    height: auto;
    margin: 0 auto 5px;
}

.estimatesBox .inBox .telBox .tel span {
    background: url(img/ico_fdl.svg) no-repeat left 25px center;
    font-size: 50px;
    padding: 0 0 0 60px;
    background-size: 55px;
    line-height: 0.9;
    margin: 10px 0 0;
    display: block;
}

.estimatesBox .telBox .imgLayer {
    top: -117px;
    bottom: 100%;
    right: -10px;
}

.main .inqCount {
    width: 480px;
    box-sizing: border-box;
}

.main .inqCount h3:after {
    content: none;
}

.main .inqCount dl {
    background: url(./img/inqCount_bg.png) no-repeat right bottom #fff;
    padding: 22px 10px 22px 155px;
    box-sizing: border-box;
    border: 1px solid #fff;
    box-sizing: border-box;
}

.main .inqCount dt {
    font-size: 18px;
    color: #fff;
    clear: both;
    display: block;
    width: 190px;
    float: left;
    background-color: rgba(0, 0, 0, 0.6);
    border-radius: 5px 0 0 5px;
    padding: 10px 5px;
    text-align: center;
    line-height: 1.5;
}

.main .inqCount dd {
    background: #ffde00;
    border-radius: 0 5px 5px 0;
    display: block;
    padding: 1px 20px 4px 10px;
    margin-left: 200px;
    font-size: 31px;
    font-weight: 500;
    line-height: 1.3;
    text-align: right;
    margin-bottom: 10px;
    width: 80px;
/*    font-family: var(--en-font-family);
    font-weight: var(--en-font-family-weight);*/
}

.main .inqCount dd span {
    font-size: 18px;
    font-weight: bold;
}

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

.main .bnrArea {
    padding: 20px 0;
    width: 1100px;
    background-size: contain;
    margin: 0 auto;
}

.main .bnrArea .callBox {
    float: right;
}

.main .bnrArea .consultationBox {
    margin: 0 !important;
    float: left;
}

.main .bnrArea .callBox h3:after,
.main .bnrArea .consultationBox h3:after {
    content: none;
}

/*--コンタクトエリア--*/
.main .fmt50 {
    margin-top: 50px;
}

#top .main .fmt50 {
    margin-top: 0;
}

.main .contactBox {
    clear: both;
    display: block;
    position: relative;
    margin: 0 auto;
    box-sizing: border-box;
    text-decoration: none;
}

.main .bg02 .contactBox {
    padding: 0 0 25px;
}

.main .contactBox .inner {
    background: #fff;
    padding: 15px 220px 15px 20px !important;
    box-sizing: border-box;
    overflow: inherit;
    width: 1100px;
}

.main .contactBox .imgLayer {
    right: 20px;
    bottom: 0;
}

.main .contactBox h2 {
    position: relative;
    overflow: visible;
    margin: -60px 0 10px -15px;
    padding: 0;
    background: none;
    border: none;
    box-shadow: none;
    border-image: none;
}

.main .contactBox h2::after {
    content: none;
}

.main .contactBox h2 .ribbon01 {
    --h: 47px;
    display: block;
    position: relative;
    z-index: 10;
    height: var(--h);
    text-align: center;
    box-sizing: border-box;
    max-width: min(100%, 770px);
    z-index: 10;
    margin: 0 50px;
}

.main .contactBox h2 .ribbon01::before,
.main .contactBox h2 .ribbon01::after {
    --c01: #a91606;
    --c02: #ffcc66;
    background: linear-gradient(to bottom,
            var(--c01) 2px,
            var(--c02) 2px, var(--c02) 3px,
            var(--c01) 3px, var(--c01) calc(100% - 3px),
            var(--c02) calc(100% - 3px), var(--c02) calc(100% - 2px),
            var(--c01) calc(100% - 2px));
    content: '';
    position: absolute;
    width: 80px;
    height: var(--h);
    top: 0;
    z-index: -2;
}

.main .contactBox h2 .ribbon01::before {
    /*左側のリボン端*/
    left: 28px;
    clip-path: polygon(28px 50%, 0 0, 100% 0, 100% 100%, 0 100%);
    transform: translate(-100%, 50%);
}

.main .contactBox h2 .ribbon01::after {
    /*右側のリボン端*/
    right: 28px;
    clip-path: polygon(0 0, 100% 0, calc(100% - 28px) 50%, 100% 100%, 0 100%);
    transform: translate(100%, 50%);
}

.main .contactBox h2 .ribbon01 .ribbon01Inner {
    font-size: 21px;
    font-weight: 500;
    display: block;
    position: relative;
    margin: 0;
    padding: 0 20px;
    line-height: var(--h);
    max-width: min(100%, 770px);
    box-sizing: border-box;
    color: #fff;
    --c01: #c81103;
    --c02: #ffcc66;
    background: linear-gradient(to bottom,
            var(--c01) 2px,
            var(--c02) 2px, var(--c02) 3px,
            var(--c01) 3px, var(--c01) calc(100% - 3px),
            var(--c02) calc(100% - 3px), var(--c02) calc(100% - 2px),
            var(--c01) calc(100% - 2px));
    /*真ん中の背景色*/
}

.main .contactBox h2 .ribbon01 .ribbon01Inner::before {
    position: absolute;
    content: '';
    top: 100%;
    left: 0;
    border: none;
    border-bottom: solid 24px transparent;
    border-right: solid 28px #8a0d02;
    /*左の折り返し部分*/
}

.main .contactBox h2 .ribbon01 .ribbon01Inner::after {
    position: absolute;
    content: '';
    top: 100%;
    right: 0;
    border: none;
    border-bottom: solid 24px transparent;
    border-left: solid 28px #8a0d02;
    /*右の折り返し部分*/
}

.main .contactBox h2 .ribbon01Bottom {
    max-width: min(100%, 770px);
    text-align: center;
    margin: 5px 50px 0;
    line-height: 1;
}

.main .contactBox h2 .ribbon01Bottom span {
    /* padding: 10px 0px 6px; */
    font-size: 35px;
    font-weight: 700;
    line-height: 1;
    display: inline-block;
    vertical-align: bottom;
    background: transparent;
    color: #222;
}

.main .contactBox h2 .ribbon01Bottom b {
    background: #d00000;
    color: #fff;
    border-radius: 5px;
    font-size: 24px;
    font-weight: bold;
    line-height: 1;
    margin-right: 5px;
    padding: 8px 10px 8px;
    display: inline-block;
    min-width: 100px;
    text-align: center;
}

.main .contactBox .tel {
    float: left;
    margin: 0 55px 0 0;
    font-size: 16px;
    line-height: 1.2;
}

.main .contactBox .tel span {
    display: block;
    font-size: 60px;
    margin-bottom: -5px;
/*    padding-left: 60px !important;
    background-size: 55px auto !important;
    background-position: left 80%;*/
}

.main .contactBox a {
    display: block;
}

.main .contactBox .catchTxt {
    background: #12a73b;
    color: #fff;
    font-size: 20px;
    margin: 10px -220px -15px -20px;
    clear: both;
    padding: 0 20px;
}

.main .bg03 .contactBox .catchTxt,
.main .bg05 .contactBox .catchTxt {
    background: #12a73b;
}

.main .contactBox strong {
    border-radius: 4px;
    color: #fff;
}

.main .contactBox ul {
    position: relative;
    overflow: hidden;
    float: none;
    margin-bottom: 10px;
    display: flex;
    align-items: flex-end;
}

.main .contactBox ul li {
    border-radius: 4px;
    box-sizing: border-box;
    float: left;
    position: relative;
    overflow: hidden;
    font-size: 13px;
    font-weight: bold;
    padding: 0;
    margin: 0 5px 0 0;
}

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

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

.main .contactBox ul li a {
    display: block;
    text-decoration: none;
    color: #444;
}


.main .contactBox.toForm {
    width: 1000px;
    margin: 0 auto;
    padding: 20px 0;
}

.main .contactmb .contactBox.toForm {
    padding: 30px 0 0 0;
}

.main .contactBox.toForm .inner {
    padding: 10px 220px 0px 10px !important;
    width: auto;
    border: #f8771a solid;
    border-width: 10px 10px 0 10px;
}

.main .contactBox.toForm h2 {
    margin: 0 0 5px;
    text-align: left;
    font-size: 29px;
    padding: 0;
    background: none;
    border: none;
    border-image: none;
    color: #444;
    box-shadow: none;
    width: auto;
}

.main .contactBox h2 span {
    margin-right: 5px;
    padding: 5px;
    border-radius: 3px;
    background: #d00000;
    color: #fff;
    display: inline-block;
    font-size: 20px;
}

.main .contactBox.toForm h2 strong {
    color: #e60012;
}

.main .contactBox .btn a {
    font-size: 24px;
    min-width: auto;
}

.main .contactBox.toForm .btn a:after {
    transform: rotate(90deg);
}

.main .contactBox.toForm .catchTxt {
    margin: 10px -230px 0 -20px;
}

.main .bg05:has(.contactBox) {
    /* margin-top: -30px; */
    margin-top: 0;
}


/*---店舗案内マップ付--*/
.shopAccess {
    width: 1000px !important;
    margin: 0 auto 20px !important;
}

.shopAccess>ul>li {
    background: none !important;
    margin: 0 0 50px !important;
    padding: 0 !important;
    position: relative;
    overflow: hidden;
    display: flex;
    gap: 40px;
}

.shopAccess ul li::before,
.shopAccess ul li::after {
    content: none !important;
}

.shopAccess ul li .shopMain {
    background: #e60012;
    width: 282px;
    margin-right: 30px;
}

.shopAccess ul li .shopMain .tel {
    font-size: 11px !important;
    color: #fff;
    padding: 10px;
    line-height: 1.5;
    margin: 0 !important;
}

.shopAccess ul li .shopMain .tel span {
    background: url(./img/common/ico_freedial03.png) no-repeat left center;
    font-size: 29px;
    font-family: "Arial Black", Gadget, sans-serif;
    padding-left: 40px;
    line-height: 1;
}

.shopAccess ul li iframe {
    width: 590px;
    height: 400px;
    order: 2;
}

.shopAccess ul li .shopSummery h5 {
    margin: 0 !important;
    border-radius: 0 !important;
    padding: 0 !important;
    font-size: 14px !important;
    background: none !important;
    color: #444 !important;
    order: 1;
}

.shopAccess ul li .shopSummery {
    width: 370px;
    overflow: hidden;
}

.shopAccess ul li .shopSummery .shopThum {
    width: 370px;
    position: relative;
    overflow: hidden;
    display: block;
    margin-bottom: 15px;
}

.shopAccess ul li .shopSummery .shopThum img {
    width: 100%;
    height: auto;
    display: block;
}

.shopAccess ul li .shopSummery p {
    line-height: 1.8;
    font-size: 14px !important;
}

/*---外壁診断 雨漏り診断Bnr--*/
.main .combnrList {
    position: relative;
    overflow: hidden;
    margin: 10px 0 30px;
}

.main .combnrList li {
    color: #fff;
    font-size: 18px;
    font-weight: bold;
    padding: 0;
    float: left;
    text-align: center;
    margin: 0;
}

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

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

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

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

.main .combnrList li a span {
    display: block;
    padding: 0.2rem;
}

.main .combnrList li a span:before,
.main .combnrList li a span:after {
    position: absolute;
    bottom: 7px;
    right: 20px;
    margin: auto;
    content: "";
    vertical-align: middle;
    margin-top: 8px;
}

.main .combnrList li a span:before {
    width: 18px;
    height: 18px;
    -webkit-border-radius: 50%;
    border-radius: 50%;
    background: #fff;
    z-index: 100;
}

.main .combnrList li a span:after {
    right: 26px;
    width: 5px;
    height: 5px;
    border-top: 3px solid #26539d;
    border-right: 3px solid #26539d;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    z-index: 200;
    bottom: 13px;
}

.main .combnrListOtr {
    position: relative;
    overflow: hidden;
}

.main .combnrListOtr li {
    border-radius: 8px;
    color: #fff;
    font-size: 18px;
    font-weight: bold;
    padding: 0;
    width: 480px;
    float: left;
    text-align: center;
    margin: 0;
    margin-top: 40px;
}

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

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

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

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

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

/*---外壁塗装工事パック商品--*/
.serviceContents {
    padding: 0 0 50px 0;
}

#top .main .serviceContents {
    padding: 50px 0 10px 0;
    background-repeat: no-repeat;
    background-position: top center;
}

.main .serviceContents .inner {
    padding: 0;
}

.main .serviceContents .whiteBox {
    border-radius: 5px;
    background-color: rgba(255, 255, 255, 0.9);
    padding: 25px;
    margin-top: 40px;
}

.main .serviceContents ul.otherMenuU {
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}

.main .serviceContents ul.otherMenuU li {
    font-size: 20px;
    font-weight: bold;
    text-align: center;
    padding: 0;
}

.main .serviceContents ul.otherMenuU li a {
    color: #444;
    text-decoration: none;
}

.main .serviceContents ul.otherMenuU li img {
    display: block;
    margin-bottom: 5px;
}

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

.main .serviceContents .whiteBox p {
    font-size: 15px;
    margin-top: 0;
}

.main .serviceContents .imgLayer {
    right: 0;
    top: 0;
    z-index: 22;
}

.main .serviceContents .catchTtl {
    width: 1000px;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-align-items: center;
    align-items: center;
}

.main .serviceContents .catchTtl p {
    font-size: 80px;
    font-weight: bold;
    position: relative;
    display: inline;
    margin: 0 100px 0 0;
}

.main .serviceContents .catchTtl span {
    background: #ff7a22;
    color: #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-align-items: center;
    align-items: center;
    justify-content: center;
    width: 110px;
    height: 110px;
    border-radius: 50%;
    float: left;
    margin-right: -10px;
    padding-top: 5px;
    box-sizing: border-box;
}

.main .serviceContents .catchTtl .imgLayer {
    left: 100%;
}

.main .packWall,
.main .packRoof,
.main .packWpack,
.main .packOther {
    position: relative;
    overflow: hidden;

}

#top .main .packWall,
#top .main .packRoof,
#top .main .packWpack {
    background: none;
}

.main .packWall a,
.main .packRoof a,
.main .packWpack a {
    text-decoration: none;
    color: #222;
    line-height: 1;
}

.main .packWall article:hover,
.main .packRoof article:hover,
.main .packWpack article:hover {
    border: 1px solid #ccc;
    opacity: 0.7;
    transition: 0.7s;
}
.main .packSmallWork article,
.main .packWall article,
.main .packRoof article,
.main .packWpack article {
    width: auto;
    float: none;
    background: #fff298;
    border: 1px solid transparent;
    padding: 10px;
    margin: 0 0 15px 0;
    box-sizing: border-box;
    position: relative;
    overflow: hidden;
}

.main .packOther .layout02 {
    width: auto;
    float: none;
    margin: 0 0 30px 0;
}

.main .packOther article {
    width: 490px;
    float: left;
    background: #fff;
    padding: 0;
    border: none;
    margin: 0 20px 30px 0;
    box-sizing: border-box;
}

.main .packOther article.layout03:nth-of-type(2n) {
    margin-right: 0;
    float: right;
}

.main .packTtl {
    position: relative;
    float: left;
}

.packTtl h3 {
    font-size: 90px;
    font-weight: 500;
    box-shadow: none;
    width: 216px;
    float: left;
    background: none;
    border-top: none;
    padding: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-align-items: center;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    position: relative;
    z-index: 100;
    margin: 0 5px 0 0;
    color: #fff;
    line-height: 1.1;
}

.packTtl h3 span {
    display: inline-block;
    border-radius: 4px;
    background: #f8771a;
    color: #fff;
    width: 48%;
    width: calc(50% - 2px);
    text-align: center;
    line-height: 0.9;
    padding: 0 0 10px;
    margin-top: 3px;
}

.packRoof .packTtl h3 span,
.packWall .wPack h3 span,
.packWpack .wPack h3 span {
    background: #002590;
}

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

.packTtl h3::after {
    content: none;
}

.packSmallWork .packTtl h3 span {
    background: #a91606;
}

.packImg {
    width: 262px;
    height: 185px;
    overflow: hidden;
    margin: 0 0 0;
    position: relative;
}

.packImg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.packsummary {
    position: relative;
    overflow: hidden;
    float: left;
    width: 483px;
    margin-left: 10px;
    margin-bottom: 0;
}

.main .packsummary p {
    font-weight: 500;
}

.packSmallWork .ttl,
.packWall .ttl,
.packRoof .ttl,
.packWpack .ttl {
    font-size: 24px;
    color: #222;
    position: relative;
    padding-left: 0;
    margin: 11px 10px 0 0;
    line-height: 1;
    font-weight: bold;
}

.packSmallWork .ttl span,
.packWall .ttl span,
.packRoof .ttl span,
.packWpack .ttl span {
    font-size: 20px;
    padding-right: 5px;
}

.packSmallWork .ttl + p:not(.priceTxt),
.packWall .ttl + p:not(.priceTxt),
.packRoof .ttl + p:not(.priceTxt),
.packWpack .ttl + p:not(.priceTxt) {
    font-size: 18px;
    line-height: 1 !important;
    margin: 5px 0 !important;
}

.main .packSmallWork .packCatch,
.main .packWall .packCatch,
.main .packRoof .packCatch,
.main .packWpack .packCatch {
    position: relative;
    overflow: hidden;
    margin: 5px 0 5px 0;
    text-align: center;
}

.main .packWall .packCatch li,
.main .packRoof .packCatch li,
.main .packWpack .packCatch li {
    width: 110px;
    min-height: 38px;
    float: left;
    margin: 0 5px 0 0;
    text-align: center;
    font-size: 16px;
    line-height: 1;
    border-radius: 4px;
    background: #00a83a;
    color: #fff;
    display: inline-block;
    padding: 3px 0 2px;
    font-weight: 500;
    border: none;
}

.main .packSmallWork .packCatch {
    background: #00a83a;
    border-radius: 4px;
    color: #fff;
    font-size: 14px;
    font-weight: bold;
    line-height: 1.2;
    display: inline-block;
    margin-bottom: 15px;
    padding: 2px 5px;
    letter-spacing: normal;
}

.main .packSmallWork .packMedal {
    display: inline-block;
    position: absolute;
    top: -5px;
    right: 10px;
    margin: 0;
    padding: 10px 0 5px 0;
    z-index: 2;
    width: 80px;
    text-align: center;
    font-size: 12px;
    line-height: 1.4;
    font-weight: bold;
    color: white;
    background: #e60012;
}

.main .packSmallWork .packMedal::after {
    content: '';
    position: absolute;
    left: 0;
    top: 100%;
    height: 0;
    width: 0;
    border-left: 40px solid #e60012;
    border-right: 40px solid #e60012;
    border-bottom: 20px solid transparent;
}

.main .packSmallWork .packMedal::before {
    content: '';
    position: absolute;
    height: calc(100% + 18px);
    width: calc(100% - 8px);
    margin: 0 auto;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    border: solid #f8b62b;
    border-width: 0 1px 0 1px;
    z-index: 10;
}

.main .packSmallWork .packCatch li span,
.main .packWall .packCatch li span,
.main .packRoof .packCatch li span,
.main .packWpack .packCatch li span {
    margin-bottom: 3px;
    display: block;
}

.main .packSmallWork ul li::before,
.main .packWall ul li::before,
.main .packRoof ul li::before,
.main .packWpack ul li::before,
.main .packSmallWork ul li::after,
.main .packWall ul li::after,
.main .packRoof ul li::after,
.main .packWpack ul li::after {
    display: none;
}

.main .packSmallWork ul li:last-child,
.main .packWall ul li:last-child,
.main .packRoof ul li:last-child,
.main .packWpack ul li:last-child {
    margin-right: 0;
}

.main .packWall .wPackCatch {
    background: #ff7a22;
}

.main .packSmallWork .txtPlanConditions {
    clear: both;
    text-align: right;
    font-size: 11px;
    margin-bottom: 10px;
}

.main .basicC {
    font-size: 24px;
    background: #4f4f4f;
    color: #fff;
    font-weight: 500;
    padding: 5px;
    text-align: left;
    clear: both;
    line-height: 1 !important;
}

.main .packSmallWork .basicC {
    font-size: 18px;
}

.main .basicC span {
    font-size: 20px;
    background: #fff;
    color: #222;
    font-weight: 700;
    margin-right: 22px;
    border-radius: 5px;
    display: inline-block;
    line-height: 1;
    position: relative;
    padding: 4px;
    display: inline-block;
    line-height: 1;
}

.main .basicC span::after {
    content: "+";
    color: #fff;
    background-color: #222;
    border-radius: 50%;
    width: 20px;
    height: 20px;
    top: 0;
    bottom: 0;
    left: 101%;
    text-align: center;
    margin: auto;
    position: absolute;
    font-weight: bold;
    line-height: 1;
    display: inline-table;
    vertical-align: middle;
    box-sizing: border-box;
}

.main .basicC span:last-of-type,
.main .serviceMenu .basicC span:last-of-type {
    margin-right: 5px;
}

.main .basicC span:last-of-type:after,
.main .serviceMenu .basicC span:last-of-type:after {
    content: none;
}

.main .basicC.sizeS {
    font-size: 13px;
}

.main .packCatch_ttl {
    clear: both;
    background: #d00000;
    color: #fff;
    font-size: 20px;
    font-weight: 500;
    text-align: center;
    border-radius: 5px;
    margin-top: 10px;
}

.main .btnPack {
    float: right;
    background: #f8771a;
    margin-top: 10px;
    color: #fff;
    font-size: 20px;
    font-weight: 500;
    text-align: center;
    border-radius: 5px;
    width: 100%;
}

.main .packRoof .btnPack {
    background: #002590;
}

.main .packSmallWork .imgIco,
.main .packWall .imgIco,
.main .packRoof .imgIco ,
.main .packWpack .imgIco {
    position: absolute;
    left: 210px;
    top: 0;
    z-index: 99;
}

.main .packSmallWork p,
.main .packWall p,
.main .packRoof p,
.main .packWpack p {
    margin-bottom: 0;
    line-height: 1.8;
}

.main .priceTxt {
    font-size: 80px;
    font-family: var(--en-font-family);
    font-weight: var(--en-font-family-weight);
    color: #e60012;
    letter-spacing: -0.02em;
    line-height: 0.9 !important;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-align-items: flex-end;
    align-items: flex-end;
    float: right;
    margin-top: 15px;
    margin-bottom: -10px !important;
}

.main .packSmallWork .priceTxt {
    margin-top: 10px;
    margin-bottom: -10px !important;
    margin-right: 5px;
}

.main .priceTxt small {
    font-size: 40px;
    font-weight: bold;
}

.main .priceTxt span {
    font-size: 65px;
}

.main .priceTxt span.unitTxt {
    font-family: var(--body-font-family);
    font-size: 23px;
    line-height: 0.9;
    font-weight: 900;
    width: 42px;
    padding-bottom: 12px;
    display: inline;
    line-height: 1;
}

.main .priceTxt small {
    font-family: var(--body-font-family);
    font-size: 30px;
    line-height: 0.9;
    font-weight: 900;
    padding-bottom: 12px;
    display: inline;
    line-height: 1;
}

.main .packSmallWork .txts,
.main .packWall .txts,
.main .packRoof .txts,
.main .packWpack .txts {
    font-size: 11px;
    margin-bottom: 5px;
    word-wrap: break-word;
    line-height: 1.36;
}

.main .packSmallWork .optionTxt,
.main .packWall .optionTxt,
.main .packRoof .optionTxt,
.main .packWpack .optionTxt {
    color: #e60012;
    font-size: 23px;
    font-weight: bold;
}


.main .packSmallWork h5,
.main .packWall h5,
.main .packRoof h5,
.main .packWpack h5 {
    font-size: 16px;
    position: relative;
    padding-left: 0;
    margin: 0 0 10px;
    background: #40668c;
    border-radius: 0;
    display: block;
}

.main .packSmallWork ul li p,
.main .packWall ul li p,
.main .packRoof ul li p,
.main .packWpack ul li p {
    letter-spacing: -0.1em;
    margin-bottom: 10px;
}

.main .packOther .semicircle_headline {
    --color01: #b18864;
    --color02: #aa815d;
}

.main .packWall .semicircle_headline {
    --color01: #f8771a;
    --color02: rgb(255, 124, 31);
}

.main .packRoof .semicircle_headline {
    --color01: #2e3fb0;
    --color02: #3e4eb6;
}

.main .packWpack .semicircle_headline {
    --color01: #ff8b3a;
    --color02: #ff8129;
}

.main .packOther article.layout03 {
    overflow: hidden;
}

/*----劣化度チェック-----*/
.main .deteriorationChk .checkLegend {
    width: 232px;
    float: left;
}

.main .deteriorationChk .checkLegend span {
    border-radius: 50%;
    background: #fff;
    border: #e4e4e4 solid 3px;
    color: #d00000;
    font-size: 29px;
    font-weight: 700;
    width: 226px;
    height: 226px;
    text-align: center;
    display: table-cell;
    vertical-align: middle;
    line-height: 1.5;
    position: relative;
}

.main .deteriorationChk .checkLegend span strong {
    font-size: 50px;
    line-height: 1.1;
    font-weight: 700;
}

.main .deteriorationChk .checkLegend p {
    margin-top: -20px;
}

.main .deteriorationChk .checkLegend img {
    margin-top: 20px;
}

.main .deteriorationChk {
    overflow: hidden;
    padding: 30px 0 0 0;
}

.main .deteriorationChk .checkPoint {
    width: 750px;
    float: right;
    background: #fff;
}

.main .deteriorationChk .checkPoint h3 {
    margin: 0 !important;
    background: #002590 !important;
    border: none !important;
    color: #fff !important;
    font-size: 20px !important;
    padding: 5px 15px !important;
}

.main .deteriorationChk .checkPoint ul {
    position: relative;
    overflow: hidden;
    padding: 18px;
    margin: 0;
    border: solid 1px #ccc;
}

.main .deteriorationChk .checkPoint ul li {
    width: 226px;
    margin: 20px 16px 0 0;
    float: left;
    background: none;
    padding: 0 !important;
}

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

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

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

.main .deteriorationChk .checkPoint ul li .checkpointThumb {
    position: relative;
    font-size: 13px;
    margin-bottom: 10px;
}

.main .deteriorationChk .checkPoint ul li .checkTtl {
    position: absolute;
    bottom: 10px;
    padding: 0 30px;
    text-align: center;
    width: 100%;
    box-sizing: border-box;
}

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

.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: 16px;
    margin-top: 5px;
    line-height: 1.2;
}

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

/*----comMessage-----*/
.main .msgBox {
    padding-top: 0;
    padding-bottom: 60px;
/*    background: #fffce3; */
}

.main .bg04 .msgBox {
}

#top .main .msgBox {
    margin-bottom: -20px;
}

#top .main .msgBox h2 {
    padding-bottom: 0;
    background: #eb6100;
    color: #fff;
}


.main .msgBox h2::after {
    content: none;
}

.main .msgTxt {
    width: 660px;
    float: right;
    position: relative;
    overflow: hidden;
    text-align: left;
}

.main .msgTxt h3 {
    margin: 0 0 20px;
    border: none;
    font-size: 24px;
    border-bottom: #e1dbac solid 2px;
    background: none;
    padding: 0 0 15px;
    text-align: left;
    color: #f8771a;
    font-weight: bold;
}

.main .msgTxt h3::after {
    content: none;
}

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

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

.main .msgTxt h5,
.main .msgPhoto h5 {
    font-size: 18px;
    font-weight: 600;
    margin-top: 0;
    line-height: 1.2;
    background: none;
/*    color: #444;*/
    padding: 0;
    margin: 0;
    clear: none;
    text-align: right;
    display: inline;
}

.main .msgTxt h5 span {
    font-size: 18px;
    margin-right: 10px;
}

.main .msgTxt span.en,
.main .msgPhoto span.en {
    display: block;
    background: none;
    font-size: 14px;
    color: #797979;
    display: block;
    padding: 0 0 0 5px;
    margin-right: 0;
}

.main .msgPhoto p {
    font-size: 28px;
    font-weight: 600;
    line-height: 1.2;
    display: inline;
}

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

.main .msgPhoto .ceoPict {
    width: 300px;
    height: 350px;
    position: relative;
    overflow: hidden;
    margin-bottom: 15px;
}

.main .msgPhoto .ceoPict img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}


/*-----------.areaMap--------*/
.main .areaMap .areaMapTxt {
    overflow: hidden;
    float: left;
    width: 480px;
}

.main .areaMap h2.headLine {
    text-align: left;
    padding-bottom: 0;
    margin-bottom: 15px;
    font-size: 40px;
}

.main .areaMap h2.headLine::after {
    content: none;
}

.main .areaMap h2.headLine span {
    font-size: 18px;
    margin-top: 10px;
    font-weight: 500 !important;
}

.main .areaMap .areaMapTxt h3 {
    font-size: 20px;
    color: #fff;
    background: #f8771a;
    margin-bottom: 10px;
    padding: 5px 15px;
}

/*--吹き出し大テキスト--*/
.balloonBox {
    color: #fff;
    position: relative;
    box-sizing: border-box;
    background: #002590;
    border-radius: 5px;
    padding: 10px;
}

.main .balloonBox p {
    margin: 0;
    font-size: 34px;
    line-height: 1.3;
    color: #fff;
}

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

/*------------solution------------*/
.solutionBox h3 {
    color: #fff;
    font-size: 36px;
    text-align: center;
    width: 1000px;
    margin: 0 auto 10px;
    padding: 5px 0 10px;
    background: #12a73b;
/*    border-top: #eb6100 solid 4px;*/
    box-sizing: border-box;
}

.solutionBox h3 span {
    margin-right: 20px;
}

.solutionBox h3 span::before {
    content: "\03c";
    margin-right: 0.25em;
}

.solutionBox h3 span::after {
    content: "\03e";
    margin-left: 0.25em;
}


.solutionBox h3 span br {
    display: none;
}

.solutionBox .comparePaint h3,
.solutionBox .lowpriceReason h3 {
    background: #f5f5f5;
    color: #444;
    padding: 15px 25px;
    border-left: #f8771a solid 4px;
    border-top: none;
    font-size: 25px;
    text-align: left;
}

/*----comLawpriceWhy-----*/
.lawpriceWhy .catchTtl {
    font-size: 30px !important;
    line-height: 1.2;
    text-align: center;
}

.lawpriceWhy .catchTtl span {
    color: #f8771a;
}

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

.main .lawpriceWhy .highCost {
    background: #f8771a;
    padding: 25px;
    margin-top: 25px;
}

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

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

.main .lawpriceWhy .highCost ul {
    position: relative;
    margin-bottom: 0;
}

.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:last-child {
    margin-right: 0;
}

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

.main .lawpriceWhy .highCost ul li h4 {
    border-radius: 50%;
    background: #d00000;
    width: 57px;
    height: 57px;
    color: #fff;
    font-size: 13px;
    position: absolute;
    top: -10px;
    left: 3px;
    padding: 0;
    margin: 0;
    text-align: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: 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-size: 22px;
    padding: 10px;
    line-height: 1.2;
    margin: 10px 0 0;
}

/*----comLawpriceReason-----*/
.lowpriceReason h3 {
    font-size: 25px;
}

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

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

.main .lowpriceReason .lowcost ul li:nth-child(2n) {
    margin-right: 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%;
}

.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;
}

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

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

.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;
    clear: both;
    display: block;
}

.lowpriceReason .lowcost ul li h4 span {
    display: inline-block;
    line-height: 1.3;
    padding-top: 5px;
    margin-top: 10px;
}

.lowpriceReason .lowcost ul li.fullW span {
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-align-items: center;
    align-items: center;
    padding: 0;
}

.lowpriceReason .lowcost ul li h4 span.reasonIco {
/*    background: url(./img/common/comLowprice_ico.png) no-repeat center center;*/
    color: #fff;
    width: 112px;
    height: 112px;
    font-size: 23px;
    padding: 0;
    margin: -20px 10px 5px 0;
    text-align: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    flex-direction: column;
    float: left;
    position: relative;
    z-index: 1;
}

.lowpriceReason .lowcost ul li h4 span.reasonIco::before{
    content: "";
    display: block;
    position: absolute;
    z-index: -1;
    inset: 0;
    width: 100%;
    height: 100%;
    background: #e60012;
    -webkit-mask-size: contain;
    mask-size: contain;
    -webkit-mask-image: url(./img/common/comLowprice_ico.png);
    mask-image: url(./img/common/comLowprice_ico.png);
}

.lowpriceReason .lowcost ul li.fullW span.reasonIco {
    margin: 0;
}

.lowpriceReason .lowcost ul li h4 span strong {
    font-size: 13px;
    line-height: 1.2;
    margin-top: 5px;
}

.main .lowpriceReason .lowcost ul li p {
    font-size: 28px;
    color: #fff;
    line-height: 1.2;
    margin-bottom: 0;
}

.main .lowpriceReason .lowcost ul li .compareBox {
    background: #fff;
    padding: 30px 25px;
}

.lowpriceReason .lowcost ul li .compareBox h6:before {
    color: #eb6100;
}

.lowpriceReason .lowcost ul li .compareBox h6:first-child {
    margin-top: 0;
}

.main .lowpriceReason .lowcost ul li .compareBox hr {
    border-top: #444 dotted 1px;
    display: block;
    margin-top: 25px;
}

/*----comQuality-----*/
.main .qualityBox .catchTtl {
    position: relative;
    font-size: 60px;
    font-weight: bold;
    text-align: left !important;
    line-height: 1.2;
    margin-top: 20px;
    margin-bottom: 30px;
}

.main .qualityBox .catchTtl img:first-child {
    float: left;
}

.main .qualityBox .catchTtl .txtL {
    font-size: 60px;
    line-height: 1.2;
}

.main .qualityBox .catchTtl .txtL strong {
    display: inline-block;
    line-height: 0.5;
    color: #e60012;
}

.main .qualityBox .catchTtl .imgLayer {
    right: 0;
    top: -60px;
}

.main .qualityBox .catchTtl b {
    display: block;
    font-size: 29px;
    font-weight: 700;
    background: #ffde00;
    color: #fff;
    text-shadow: rgb(51, 51, 51) 2px 0px 0px, rgb(51, 51, 51) 1.75517px 0.958851px 0px, rgb(51, 51, 51) 1.0806px 1.68294px 0px, rgb(51, 51, 51) 0.141474px 1.99499px 0px, rgb(51, 51, 51) -0.832294px 1.81859px 0px, rgb(51, 51, 51) -1.60229px 1.19694px 0px, rgb(51, 51, 51) -1.97999px 0.28224px 0px, rgb(51, 51, 51) -1.87291px -0.701566px 0px, rgb(51, 51, 51) -1.30729px -1.51361px 0px, rgb(51, 51, 51) -0.421592px -1.95506px 0px, rgb(51, 51, 51) 0.567324px -1.91785px 0px, rgb(51, 51, 51) 1.41734px -1.41108px 0px, rgb(51, 51, 51) 1.92034px -0.558831px 0px;
    padding: 6px 15px;
    text-align: center;
}

.main .qualityBox .imgR {
    margin-top: -80px;
}

.main .qualityBox h3 {
    margin: 0 0 20px;
    line-height: 1.3;
    clear: none;
    overflow: hidden;
}

.main .qualityBox p {
    line-height: 1.8;
}

.main .qualityBox .qualityCommitment li {
    margin: 0;
    position: relative;
    overflow: hidden;
    background: none;
    padding: 0;
}

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

.main .qualityBox h3 span.commitment {
    border-radius: 4px;
    background: #eb6100;
    color: #fff;
    padding: 15px 10px;
    margin: 15px 20px 15px 0;
}

.main .qualityBox h3 strong {
    color: #e60012;
}

.main .qualityBox .qualityCommitment li img {
    margin-bottom: 20px;
}

.main .qualityBox .catchTxt {
    font-size: 23px;
}

.main .commitFlow {
    position: relative;
    overflow: hidden;
}

.main .commitFlow li {
    background: none;
    width: 369px;
    margin: 0;
    float: left;
    padding: 0;
}

.main .commitFlow li h4 {
    border-radius: 5px;
    background: #002590;
    text-align: center;
    color: #fff;
    padding: 0;
    margin-bottom: 10px;
}

.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 {
    position: absolute;
}

.main .commitFlow li:nth-child(2):before {
    content: ' ';
    height: 0;
    width: 0;
    border: 55px solid transparent;
    border-left: #23ac38 solid 48px;
    left: 125%;
    top: 50%;
    margin-top: -25px;
}

.main .commitFlow li:nth-child(2):after {
    background: #23ac38;
    content: 'クリア';
    color: #fff;
    font-size: 20px;
    font-weight: bold;
    left: 95%;
    top: 50%;
    width: 80px;
    padding: 15px 0;
    text-align: right;
}

.main .qualityBox .quality_list {
    counter-reset: quality;
    padding: 10px;
    box-sizing: border-box;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    background: #fff;
}

.main .qualityBox ol li {
    list-style: none;
    margin-bottom: 30px;
}

.main .qualityBox .quality_list li {
    counter-increment: quality;
    width: calc( 50% - 10px );
    overflow: hidden;
}

.main .qualityBox .quality_list .quality_img {
    width: 180px;
    float: left;
    margin-right: 20px;
    position: relative;
    overflow: hidden;
}

.main .qualityBox .quality_list .quality_img:before {
    content: '' !important;
    display: block;
    padding-top: 80%;
    width: 100%;
}

.main .qualityBox .quality_list .quality_img img {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.qualityBox .quality_list .qualityTtl {
    background: #f5f5f5;
    padding: 15px 15px 15px 160px;
    font-size: 17px;
    line-height: 1.2;
    position: relative;
    border: none;
    text-align: left;
    color: #444;
    margin-bottom: 10px;
    width: auto;
}

.qualityBox .quality_list .qualityTtl::before {
    background: #e60012;
    color: #fff;
    padding: 15px 25px;
    position: absolute;
    left: 0;
    font-size: 18px;
    border-radius: 0;
    opacity: inherit;
    top: 0;
    content: '技術力 'counter(quality, decimal-leading-zero);
}

.qualityBox .quality_list .qualityTtl span {
    margin-right: 0;
}

.main .qualityBox h4,
.main .qualityBox h5 {
    margin-top: 0;
    font-size: 18px;
}

.main .qualityBox h4 {
    font-size: 18px;
    padding: 0 0 0 50px;
    margin: 0 0 10px;
    position: relative;
    line-height: 1.8;
}

.main .qualityBox h4::before,
.main .qualityBox h4::after {
    border-radius: 50%;
    content: '';
    display: block;
    position: absolute;
    top: 5px;
    font-size: 30px;
    line-height: 1.0;
    background: #f8771a;
    width: 20px;
    height: 20px;
}
.main .qualityBox h4::before {
    left: 0;
    opacity: 0.5;
}

.main .qualityBox h4::after {
    left: 23px;
}

.main .qualityBox h5 {
    display: inline-block;
    margin-bottom: 10px;
    padding: 3px 10px;
    border-radius: 4px;
    background: #ffde00;
    color: #444;
    font-size: 18px;
}

/*--comFlowWall--*/
.main .flowList {
    border-radius: 5px;
    background: #f8771a;
    padding: 10px;
    position: relative;
    overflow: hidden;
    box-sizing: border-box;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-align-items: center;
    align-items: center;
    justify-content: space-between;
    clear: both;
}

.main .flowList h3 {
    color: #fff;
    font-size: 30px;
    float: left;
    background: none;
    border: none;
    padding: 0 13px;
    line-height: 1.2;
    margin: 0 5px 0 0;
    width: auto;
}

.main .flowList ul {
    position: relative;
    overflow: hidden;
    margin: 0;
    padding: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    justify-content: space-between;
}

.main .flowList ul li {
    border-radius: 5px;
    background: #fff;
    font-size: 23px;
    font-weight: bold;
    color: #f8771a;
    padding: 0;
    text-align: center;
    margin: 0 5px 0 0;
    width: 78px;
    height: 74px;
    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: 16px;
}

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

.main .flowList.flowRoof ul li {
    width: 110px;
}

.main .textComS {
    font-size: 13px;
    text-align: right;
}

/*---comFamilyWall--*/
.main .comFamilyBox {
    border-radius: 6px;
    background: #6cd3ff;
    padding: 25px;
    position: relative;
}

.main .comFamilyBox p {
    font-size: 37px;
    color: #fff;
    text-shadow: -1px -4px #444, 1px -4px #444, -2px -3px #444, 2px -3px #444, -3px -2px #444, 3px -2px #444, -4px -1px #444, 4px -1px #444, -4px 1px #444, 4px 1px #444, -3px 2px #444, 3px 2px #444, -2px 3px #444, 2px 3px #444, -1px 4px #444, 1px 4px #444;
    line-height: 1.4;
    z-index: 1;
    position: relative;
}

.main .comFamilyBox .imgLayer {
    right: 0;
    top: -30px;
    z-index: 0;
}

.main .comFamilyBox strong {
    color: #ffd850;
}

.main .comFamilyBox .txtL {
    font-size: 57px;
}

.main .comFamilyBox .catchTtl {
    background: #eb6100;
    text-align: center;
    color: #fff;
    font-size: 30px;
    padding: 5px;
    margin-bottom: 0;
    text-shadow: none;
}

/*--comComparePaint--*/
.main .comparePaint {
    padding: 20px 0;
}

.main .comparePaint h2 {
    font-size: 30px;
    font-weight: 700;
    letter-spacing: -0.05em;
}

.main .comparePaint h2 img {
    background-color: #ffffff;
}

.main .comparePaint h2 strong {
    font-size: 1.25em;
    font-weight: 700;
    text-shadow: #eb6100 3px 0px 0px, #eb6100 2.83487px 0.981584px 0px, #eb6100 2.35766px 1.85511px 0px, #eb6100 1.62091px 2.52441px 0px, #eb6100 0.705713px 2.91581px 0px, #eb6100 -0.287171px 2.98622px 0px, #eb6100 -1.24844px 2.72789px 0px, #eb6100 -2.07227px 2.16926px 0px, #eb6100 -2.66798px 1.37182px 0px, #eb6100 -2.96998px 0.42336px 0px, #eb6100 -2.94502px -0.571704px 0px, #eb6100 -2.59586px -1.50383px 0px, #eb6100 -1.96093px -2.27041px 0px, #eb6100 -1.11013px -2.78704px 0px, #eb6100 -0.137119px -2.99686px 0px, #eb6100 0.850987px -2.87677px 0px, #eb6100 1.74541px -2.43999px 0px, #eb6100 2.44769px -1.73459px 0px, #eb6100 2.88051px -0.838247px 0px;
    color: #fff;
}

.main .comparePaint h2 img {
    width: 215px;
    height: auto;
    display: inline-block;
    margin: 0 10px;
    vertical-align: middle;
}

.main .compareTable {
    width: 100%;
    table-layout: fixed;
}

.main .compareTable th,
.main .compareTable td {
    vertical-align: top;
    text-align: center;
    width: auto;
    border-bottom: #f5f5f5 solid 1px;
    border-right: #f5f5f5 solid 1px;
}

.main .compareTable th {
    padding: 10px;
    background-color: #dddddd;
    vertical-align: middle;
    font-weight: bold;
    line-height: 1.4;
    font-size: 15px;
    color: #444;
    font-weight: normal;
}

.main .compareTable th:first-of-type {
    width: 12%;
}

.main .compareTable th:last-of-type {
    width: 38%;
}

.main .compareTable td {
    font-weight: normal;
    font-size: 13px;
    text-align: left;
    padding: 15px 10px 15px 65px;
    position: relative;
    height: 52px;
    overflow: hidden;
    background: #fff !important;
}

.main .compareTable td span {
    font-size: 30px;
    font-weight: bold;
    float: left;
    display: block;
    border-right: #ccc solid 1px;
    margin-right: 10px;
    padding-right: 10px;
    box-shadow: 2px 0px 0px 0px #fff;
    -moz-box-shadow: 2px 0px 0px 0px #fff;
    -webkit-box-shadow: 2px 0px 0px 0px #fff;
    width: 46px;
    text-align: center;
    left: 10px;
    position: absolute;
    box-sizing: border-box;
}

.main .compareTable td.ourCompany span {
    color: #d00000;
}

/*--comIdeal--*/
.main .iDeal .inner {
    padding-bottom: 0;
}

.main .iDeal article {
    padding-bottom: 0;
}

.iDeal .catchTtl {
    font-size: 50px;
    font-weight: bold;
    line-height: 1.2;
    margin-bottom: 30px;
}

.main .iDeal .catchTtl strong {
    color: #e60012;
}

/*---comIdea---*/
.comIdea {
    margin-bottom: 29px;
    width: 1000px;
    margin: 0 auto;
    position: relative;
    overflow: hidden;
}

.comIdea .ttl {
    margin-bottom: 3px;
}

.comIdea h3 {
    background: #d00000;
    text-align: center;
    transform: rotate(-45deg);
    position: absolute;
    left: -120px;
    top: 80px;
    padding: 5px 100px;
    color: #fff;
}

.main .comIdea ul {
    display: flex;
    justify-content: space-between;
    padding: 50px 50px 0 300px;
    margin-bottom: 0;
}

.main .comIdea ul:after {
    content: none;
}

.main .comIdea li {
    padding-left: 0;
    float: none;
    width: 182px;
    box-sizing: border-box;
}

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

.main .comIdea li img {
    display: block;
    margin: 0 auto;
    padding-bottom: 5px;
    filter: drop-shadow(1px 1px 0 #fff) 
drop-shadow(-1px 1px 0 #fff) 
drop-shadow(1px -1px 0 #fff) 
drop-shadow(-1px -1px 0 #fff) 
drop-shadow(1px 1px 0 #fff) 
drop-shadow(-1px 1px 0 #fff) 
drop-shadow(1px -1px 0 #fff) 
drop-shadow(-1px -1px 0 #fff) 
drop-shadow(1px 1px 0 #fff) 
drop-shadow(-1px 1px 0 #fff) 
drop-shadow(1px -1px 0 #fff) 
drop-shadow(-1px -1px 0 #fff);
}

.main .comIdea li span {
    font-size: 18px;
    padding: 10px 10px;
    position: relative;
    color: #FFF;
    line-height: 1.4;
    text-align: left;
    border-radius: 6px;
    background: #12a73b;
    display: block;
    margin-bottom: 20px;

}

.main .comIdea li span::after {
    content: '';
    height: 0;
    position: absolute;
    width: 0;
    border: 10px solid transparent;
    border-top-color: #12a73b;
    top: 100%;
    left: 0;
    right: 0;
    margin: auto;
}

.main .comIdea li:first-child {
    padding-left: 0;
}

/*--トップスライド--*/
a.leftNav,
a.rightNav {
    background: url(./img/common/bg2.png);
    outline: none;
    transition: none;
}

.leftNav:before,
.rightNav:before {
    content: "";
    width: 100%;
    height: 100%;
    display: block;
    transition: none;
}

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

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

.leftNav:hover:before,
.rightNav:hover:before {
    background: url(./img/common/bg2.png);
    transition: none;
}

/*--下層ページメインビジュアル--*/
#pageTitle {
    overflow: hidden;
    background-size: auto !important;
    position: relative;
    background-position: top center;
    background-repeat: no-repeat;
    --color: #ffc13b;
}

#pageTitle::before {
    position: absolute;
    display: block;
    content: "";
    width: 100%;
    height: 100%;
    bottom: 0;
    left: 0;
    /* opacity: 0.5; */
/*    background-image: repeating-linear-gradient(-45deg, #14a0df 0, #14a0df 2px, #0098dc 0, #0098dc 7px);*/
    background: linear-gradient(to right,transparent calc(50% - 500px),#fff calc(50% - 300px), #fff calc(50% + 300px), transparent calc(50% + 500px));
    /* clip-path: polygon(0 20%, 100% 0, 100% 100%, 0% 100%); */
    z-index: 1;
}
/*
#pageTitle::after {
    position: absolute;
    display: block;
    content: "";
    width: 100%;
    height: 100%;
    bottom: 0;
    left: 0;
    background-image: repeating-linear-gradient(-45deg, #14a0df 0, #14a0df 2px, #0098dc 0, #0098dc 7px);
    z-index: 2;
    clip-path: polygon(0 70%, 100% 60%, 100% 100%, 0% 100%);
    background: var(--color);
}
*/
/*
#pageTitle::after {
    position: absolute;
    display: block;
    content: "";
    width: 100%;
    height: 100%;
    bottom: 0;
    left: 0;
    background: linear-gradient(to right,transparent,#d5ebfd 25%,#d5ebfd 75%,transparent);
    opacity: 0.75;
    z-index: 2;
}
*/

#pageTitle .inner {
    width: 1100px;
    padding: 0 !important;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    min-height: 270px;
}

#pageTitle h1 {
/*    color: #fff;*/
    z-index: 0;
    width: 100%;
    font-size: 40px;
    font-weight: 700;
    border: none;
    box-shadow: none;
    box-sizing: border-box;
    line-height: 1.5;
    letter-spacing: -.02em;
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    z-index: 5;
    padding: 0 200px;
}

#menu #pageTitle h1 {
    font-size: 36px;
}

#pageTitle h1::after {
    content: '' !important;
/*    background: url(./img/ftr_contact_img.png) no-repeat center bottom;*/
    background: url(./img/img_character01.png) no-repeat center center;
    backgrond-size: contain;
    width: 179px;
    height: 100%;
    position: absolute;
    right: 20px;
    left: auto;
    bottom: 0;
    display: block;
    z-index: -1;
    filter: drop-shadow(0 3px 2px rgba(0,0,0,0.2));
}

#pageTitle h1 span {
    order: 2;
/*
    text-shadow: -1px -4px var(--color), 1px -4px var(--color), -2px -3px var(--color), 2px -3px var(--color), -3px -2px var(--color), 3px -2px var(--color), -4px -1px var(--color), 4px -1px var(--color), -4px 1px var(--color), 4px 1px var(--color), -3px 2px var(--color), 3px 2px var(--color), -2px 3px var(--color), 2px 3px var(--color), -1px 4px var(--color), 1px 4px var(--color);
*/
}

/*
#pageTitle h1 small {
    display: block;
    width: fit-content;
    margin: 0 auto 10px;
    padding: 10px 30px 13px;
    font-size: 16px;
    position: relative;
    border-radius: 25px;
    background: #fdd000;
    color: #222;
}

#pageTitle h1 small::before {
    content: "";
    display: block;
    position: absolute;
    border-top: 15px solid #fdd000;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    bottom: -14px;
    right: 35px;
    z-index: -1;
    transform: skewX(60deg);
}
*/
#pageTitle h1 small {
    --color01: #2e3fb0;
    --color02: #3c4cb5;
    display: block;
    background-color: var(--color01);
/*    background:
      linear-gradient(135deg, transparent calc(100% - 20px), #eb6100 calc(100% - 10px), #eb6100 calc(100% - 0px), transparent),
      repeating-linear-gradient(-45deg, #ff8b3a, #ff8b3a 4px, #ff8129 0, #ff8129 11px);*/
    background:
/*      linear-gradient(135deg, transparent calc(100% - 30px), rgba(0,0,0,0.25) calc(100% - 20px), rgba(0,0,0,0.25) calc(100% - 10px), transparent),*/
      repeating-linear-gradient(-45deg, var(--color01), var(--color01) 4px, var(--color02) 0, var(--color02) 11px);
/*      repeating-linear-gradient(to bottom, #009e37, #009e37 6px, #00a83a 0, #00a83a 15px)*/
/* repeating-linear-gradient(-45deg, #14a0df 0, #14a0df 2px, #0098dc 0, #0098dc 7px) */
    color: #fff;
    width: fit-content;
    margin: 0 auto 10px;
    padding: 10px 30px 13px;
    font-size: 16px;
    position: relative;
    border-radius: 25px;
    text-shadow: 2px 2px 0 var(--color01), -2px 2px 0 var(--color01), 2px -2px 0 var(--color01), -2px -2px 0 var(--color01)  0 0 2px var(--color01);
/*    text-decoration: underline;
    text-decoration-thickness: 2px;
    text-underline-offset: 6px;
    text-decoration-color: rgba(255,255,255,0.25);*/
/*    box-shadow: 0 3px 2px rgba(0,0,0,0.2);*/
/*    box-shadow: 3px 2px 2px rgba(0,152,220,0.25), -3px -2px 3px rgba(0,168,58,0.25);*/
    order: 1;
    letter-spacing: 0;
    transform-style: preserve-3d;
}

#pageTitle h1 small::before {
    content: "";
    display: block;
    position: absolute;
    width: 0;
    height: 0;
    border-top: 15px solid var(--color01);
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    margin: 0 auto;
    bottom: -11px;
    left: 0;
    right: 0;
    transform: skewX(-50deg) translateX(0px) translateZ(-1px);
/*    filter: drop-shadow(-5px 3px 2px rgba(0,0,0,0.2));*/
}

/*--ぱんくず--*/
#pagePath {
    background: #f5f5f5;
    padding: 10px 0;
}

#pagePath p {
    width: 1000px;
    margin: 0 auto;
    color: #444;
    font-size: 12px;
}

#pagePath p a {
    color: #444;
}


/*--フォーム--*/

.main #form {
    overflow: visible;
    position: relative;
    padding: 120px 0 30px;
/*    background: url(./img/bg_beige.png) center center;*/
    background: #f5f5f5;
    margin: 140px 0 0;
}

.main #form .inner {
    overflow: visible;
    position: relative;
    padding: 140px 0 0;
    margin-top: -260px;
}

.main #form .inner::before {
    content: '';
/*    background: url(./img/form_bg.png) no-repeat center top;*/
    background: #f5f5f5;
    width: 1400px;
    position: absolute;
    top: 0;
    left: 50%;
    right: 0;
    margin: 0 0 0 -700px;
    display: block;
    height: 140px;
    -webkit-mask-image: url(./img/form_bg.png);
    mask-image: url(./img/form_bg.png);
    -webkit-mask-position: center top;
    mask-position: center top;
}

.main #form::before,
.main #form::after {
    content: '';
/*    background: url(./img/dotLine.png) repeat-y center center;*/
    display: block;
    position: absolute;
    left: 50%;
    top: 60px;
    bottom: 0;
    margin: 30px 0 30px -700px;
    width: 10px;
    background: repeating-linear-gradient(to bottom, transparent 0, transparent 10px, #fff 10px, #fff 20px);
    opacity: 0.5;
}

.main #form:after {
    margin: 30px -700px 30px 0;
    right: 50%;
    left: inherit;
}


.main #form a {
    color: #444;
}

.main #form p.tel {
    font-size: 12px;
}

.main #form ul li a {
    display: inline;
}

.main #form h4 {
    font-size: 22px;
    line-height: 1.32;
    margin-bottom: 0;
}

.main #form ul li {
    background: none !important;
    padding: 0;
}

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

.main #form ul.formStep {
    position: relative;
    overflow: hidden;
    margin-bottom: 30px;
    display: block;
}

.main #form ul.formStep li {
    background: #f3f1eb !important;
    font-size: 17px;
    margin: 5px 0 !important;
    position: relative;
    width: 243px;
    float: left;
    height: 50px;
    padding: 0 10px 0 80px !important;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
}

.main #form ul.formStep li:before,
.main #form ul.formStep li:after {
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 25px 0 25px 10px;
    border-color: transparent transparent transparent #f3f1eb;
    content: '';
    display: block;
    position: absolute;
}

.main #form ul.formStep li:before {
    left: 100%;
    top: 0;
    z-index: 10;
    background: none;
}

.main #form ul.formStep li:after {
    border-width: 26px 0 26px 12px;
    border-color: transparent transparent transparent #e4e2d7;
    left: 100.5%;
    top: 0;
    z-index: 9;
    -webkit-transform: none;
    transform: none;
}

.main #form ul.formStep li:last-child:before,
.main #form ul.formStep li:last-child:after {
    display: none;
}

.main #form ul.formStep li.on {
    background: #23ac38 !important;
    color: #fff;
}

.main #form ul.formStep li.on:before {
    border-color: transparent transparent transparent #23ac38;
}

.main #form ul.formStep li span {
    border-radius: 50%;
    background: #eb6100;
    width: 57px;
    height: 57px;
    color: #fff;
    font-size: 13px;
    line-height: 1.2;
    position: absolute;
    top: -3px;
    left: 15px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    text-align: center;
}

.main #form ul.formStep li:first-child span {
    left: 2px;
}

.main .worksForm {
    padding: 20px 0 30px !important;
    margin: 0 0 0 !important;
}


.main .worksForm .inner {
    padding: 20px 0 0 !important;
    margin-top: 0 !important;
}

.main .formBox {
    text-align: center;
}

.main .formBox table {
    margin: 0 0 40px;
}

.main .formBox th {
    padding: 20px 15px;
    font-weight: bold;
    vertical-align: middle;
    width: 30%;
    font-size: 16px;
    background: #DDDDDD;
    border-bottom: #f5f5f5 solid 1px;
}

.main .formBox th span {
    background: #d00000;
    color: #fff;
    font-size: 14px;
    float: right;
    padding: 2px 15px;
}

.main .formBox th span.any {
    background: #b0b0b0;
}

.main .formBox td {
    padding: 20px 15px;
    font-weight: bold;
    vertical-align: middle;
    font-size: 13px;
    background: #fff !important;
    border-bottom: #e4e2d7 solid 1px;
}

.main .formBox td .wpcf7c-elm-step1 {
    font-size: 13px;
}

.main .wpcf7 ul li p {
    display: contents;
}

.main .formBox td span {
    display: inline-block;
    font-size: 16px;
}

.main .formBox td span label {
    padding-right: 25px;
}

.main .formBox td a {
    color: #444;
    font-size: 16px;
    padding-left: 25px;
    float: none;
    position: relative;
    top: auto;
    right: auto;
}

.main .formBox td a::before {
    font-family: "Font Awesome 5 Free";
    content: '\f138';
    font-weight: 900;
    font-size: 16px;
    right: 20px;
    height: 1em;
    line-height: 1;
    color: #f8771a;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto;
}

.main .formBox td input[type="text"],
.main .formBox td input[type="tel"],
.main .formBox td input[type="email"] {
    padding: 5px;
    height: 30px;
    width: 690px;
    border: 1px solid #CCC;
    box-sizing: border-box;
    background-color: #fff;
}

.main .formBox td.kibo input[type="text"] {
    width: 100%;
}

.main .formBox td.kibo select {
    width: 100%;
}

.main .formBox td.kibo span {
    margin-right: 1rem;
}

.main .formBox td textarea {
    padding: 5px;
    width: 690px;
    border: 1px solid #CCC;
    box-sizing: border-box;
    overflow: auto;
    background-color: #fff;
}

.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-color: #fff;
}

.main .formBox td input[type="date"] {
    width: 360px;
}

.main .formBox th > p,
.main .formBox td > p {
    margin-bottom: 0;
    display: contents;

}

.main .formBox .submit {
    text-align: center;
    margin-bottom: 10px;
    position: relative;
    display: inline-block;
}

.main .formBox .submit li {
    margin: 0 5px;
    display: inline;
}

.main .formBox .submit input {
    padding: 10px 50px;
    color: #fff;
    font-size: 25px;
    font-weight: 700;
    text-align: center;
    vertical-align: top;
    cursor: pointer;
    border-radius: 50px;
    border: none;
    background: #d00000;
    font-family: var(--body-font-family);
}

.main .formBox .submit input:hover {
    opacity: 0.8;
    filter: alpha(opacity=80);
}

.main .formBox .submit input[type="button"] {
    margin-right: 10px;
    background: #f3f3f3;
    color: #444;
}

.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: .01px;
    text-overflow: "";
}

.main .formBox td select.wpcf7c-conf::-ms-expand {
    display: none;
}

.main .formBox td input.wpcf7c-conf:-webkit-autofill {
    -webkit-box-shadow: 0 0 0px 1100px #efefef inset;
}

.formBox .submit .wpcf7-spinner {
    margin-left: 0;
    margin-right: -24px;
}

/*--メインカラム--*/
#contents {
    margin: 0 auto;
}

#contents section {
    margin: 0 auto;
    position: relative;
    padding: 30px 0;
    overflow: hidden;
}

#contents .main {
    padding: 0;
}

#top #contents .main {
    padding: 30px 0;
}

#top #contents .main {
    padding: 0;
}

/*--ブログ形式ページ--*/
.main .colorList li,
.main .taxList li,
.main .areaList li {
    display: inline-block !important;
    padding: 0;
    background: none;
    margin: 0;
}

.main .colorList li:before,
.main .taxList li:before,
.main .areaList li:before,
.main .colorList li:after,
.main .taxList li:after,
.main .areaList li:after {
    content: none;
}

/*
.main .cat {
    position: absolute;
    top: 5px;
    left: 5px;
    width: 100%;
    z-index: 10;
}*/

.main table th .cat,
.main table td .cat{
   position: static;
}

.main .cat a{
    display: inline-block !important;
    background: #f8771a;
    color: #fff !important;
    margin: 0 4px 4px 0;
    text-decoration: none;
    padding: 2px 10px;
    position: static;
    z-index: 2;
}

#works .main .cat a,
#voice .main .cat a {
    background: #f8771a;
}

.mainThumb .cat a {
    font-size: 13px;
}

.main .colorList li a,
.main .taxList li a,
.main .areaList li a {
    background: #d00000;
    border: #d00000 solid 1px;
    border-radius: 50px;
    padding: .5em 2em;
    color: #fff;
    display: inline-block;
    margin: 0 4px 4px 0;
    text-decoration: none;
}
.main .areaList li a {
    background-color: #002590;
    border: solid 1px #002590;
}
.main .colorList li a {
    background-color: #f5f5f5;
    border: solid 1px #f5f5f5;
    color: #444;
}

.main .typeList li a {
    background-color: #12a73b;
    border: solid 1px #12a73b;
}
.main .materialList li a {
    background-color: #ffc13b;
    border: solid 1px #ffc13b;
}
.main li.current-cat a {
    background-color: #FFF;
    color: #e60012 ;
    border: solid 1px #e60012;
}

.main .taxList.areaList li.current-cat a {
    background-color: #FFF;
    color: #eb6100 ;
    border: solid 1px #eb6100;
}
.main .taxList.typeList li.current-cat a {
    background-color: #FFF;
    color: #eb6100 ;
    border: solid 1px #eb6100;
}
.main .taxList.materialList li.current-cat a {
    background-color: #FFF;
    color: #ffc13b ;
    border: solid 1px #ffc13b;
}
.main .taxList.colorList li.current-cat a {
    background-color: #FFF;
    border: solid 1px #444;
    color: #444;
}

.main .infoBox {
    padding: 8px 0;
    border-bottom: 1px solid #ccc;
    overflow: hidden;
    margin-bottom: 30px;
}

.main .infoBox .time {
    float: right;
    font-weight: bold;
}

.main #archiveList {
    overflow: hidden;
    padding-bottom: 20px;
    position: relative;
}

.main .worksArchiveBox {
    position: relative;
    overflow: hidden;
}

.main .worksArchiveBox .cat a {
    position: relative;
}

.main #archiveList article {
    width: 320px;
    float: left;
    margin: 0 20px 40px 0;
    position: relative;
    padding: 0;
    text-align: left;
}

.main #archiveList article:nth-child(3n) {
    margin-right: 0;
}

.main #archiveList article:nth-child(3n+1) {
    clear: both;
}

.main #archiveList a {
    display: block;
    text-decoration: none !important;
    color: #444;
}

.main #archiveList a:hover {
    opacity: 0.8;
    transition: 0.7s;
}

.main #archiveList h3,
.main #archiveList .contTxt,
.main #archiveList .price {
    display: block;
    border: none;
    background: none;
    line-height: 1.4;
    font-size: 16px;
    padding: 0;
    margin: 0;
    color: #444;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.main #archiveList .contTxt {
    color: #444;
}

.main #archiveList .price {
    color: #e60012;
}

.main .priceDetails {
    display: flex;
    flex-flow: row wrap;
    align-items: center;
    justify-content: space-between;
    margin: 0;
}

.main .priceDetails li {
    width: 49% !important;
    display: flex;
    flex-flow: row wrap;
    font-size: 15px;
    line-height: 1;
    font-weight: 700;
    padding: 0 !important;
    margin: 0 0 3px !important;
}

.main .priceDetails li.caulking {
    width: 100% !important;
    margin-top: 6px;
}

.main .priceDetails li:nth-of-type(n + 3) {
    margin-top: 5px;
}

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

.main .priceDetails li .ti,
.main .priceDetails li .detailP,
.main #archiveList .priceDetails li .detailP {
    display: block;
    padding: 4px 6px;
    box-sizing: border-box;
    margin: 0;
}

.main .priceDetails li .ti {
    background: #e60012;
    color: #fff;
    text-align: center;
    width: 35%;
    border-radius: 3px 0 0 3px;
}

.main .priceDetails li .detailP,
.main #archiveList .priceDetails li .detailP {
    background: #fff;
    border-radius: 0 3px 3px 0;
    color: #e60012;
    text-align: right;
    width: 65%;
    background: #efefef;
}

#blog .main #archiveList h3 {
    height: 40px;
    color: #f8771a;
}

.main #archiveList .archiveTumb {
    width: 320px;
    height: 230px;
    border: #ccc solid 1px;
    background: #fff;
    box-sizing: border-box;
    position: relative;
    overflow: hidden;
}

.main #archiveList img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

#blog .main #archiveList img {
    height: 100%;
	width: 100%;
}

#blog .main #archiveList .emoji {
    display: none !important;
}

.main #archiveList .period {
    font-size: 12px;
    line-height: 1.4;
}

.main #archiveList .time {
    font-size: 14px;
/*    line-height: 1.4;*/
}

.main #archiveList .cat {
    position: absolute;
    top: 10px;
    right: 10px;
/*    font-size: 13px;*/
    line-height: 1.4;
}

.main #archiveList .cat span {
    background: #d00000;
    color: #fff;
/*    font-weight: bold;*/
    margin: 0 4px 4px 0;
    text-decoration: none;
    padding: 2px 7px;
}

/*--施工事例・お客様の声--*/
.main .picBox {
    overflow: hidden;
    margin-bottom: 30px;
    position: relative;
}

.main .picBox .photo {
    float: right;
    width: 686px;
    height: 456px;
    position: relative;
    overflow: hidden;
}

.main .picBox .btmPhoto {
    float: left;
    width: 287px;
    height: 207px;
    position: relative;
    overflow: hidden;
}

.main .picBox .photo img,
.main .picBox .btmPhoto 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 .picBox .arrowImg {
    margin: 10px 0 0;
    float: right;
}

.main .picBox02 {
    margin-top: 40px;
}

.main .picBox02 .photo {
    float: right;
    width: 686px;
    position: relative;
}

.main .picBox02 .btmPhoto {
    float: left;
    width: 287px;
    position: relative;
}

.main .picBox02 .arrowImg {
    margin: 15px 0 0 100px;
}

.main .picBox03 .btmPhoto {
    display: none;
}

.main .picBox03 {
    background: #efefef;
    padding: 15px;
}

.main .picBox03 .photo {
    margin: 0 auto;
    float: none;
}

.main .picBox span.after,
.main .picBox span.before {
    position: absolute;
    top: 10px;
    left: 10px;
    background: #f8771a;
    display: inline-block;
    z-index: 10;
    font-size: 15px;
    font-weight: bold;
    color: #FFF;
    border-radius: 4px;
    padding: 3px 10px 2px 10px;
}

.main .picBox span.before {
    background: #002590;
}

.main .picBox span span {
    opacity: 0.5;
    margin-left: 5px;
}

.main .voiceCatch{
    font-size: 28px;
    margin-bottom: 30px;
}

.main .voiceEnq {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    gap: 10px;
	clear:both;
}
.main .voiceEnq > span,
.main .voiceEnq > a {
    position: relative;
    outline: 1px solid #ccc;
}

.main .voiceEnq > span > img,
.main .voiceEnq > a > img {
    width: 100%;
    max-width: 700px;
    height: auto;
}

.main .voiceEnq a img.imgLayer {
    width: auto;
    top: 0;
    right: 0;
    padding: 10px;
}

.main .voice_headLine .imgLayer {
    left: 250px;
    bottom: -10px;
}

.main .voiceSummary {
    position: relative;
    overflow: hidden;
    margin-bottom: 40px;
}

.main .voiceSummary h3 {
    margin-top: 0;
}

.main .voicephotList {
    float: left;
    width: 316px;
    margin-right: 30px;
}

.main .voicephotList li {
    background: none;
    padding: 0;
    position: relative;
    margin: 0 0 20px;
    border: #ccc solid 1px;
    box-sizing: border-box;
    width: 316px;
    height: 206px;
    overflow: hidden;
}

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

.main .voicephotList 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 .voicephotList li .imgLayer {
    position: absolute;
    bottom: 5px;
    right: 5px;
    transform: none;
    top: inherit;
    left: inherit;
    width: auto;
    height: auto;
}

.main .voiceData table {
    margin-bottom: 30px;
}


.wp-pagenavi {
    clear: both;
    text-align: center;
    padding-top: 35px;
    margin-bottom: 35px;
}

#main .wp-pagenavi span,
#main .wp-pagenavi a {
    border: 1px solid #ccc;
}

.wp-pagenavi span,
.wp-pagenavi a {
    background: #fff;
    display: inline-block !important;
    border-radius: 3px;
    line-height: 1.2;
}

.wp-pagenavi a {
    background: #222222;
    color: #fff !important;
    border: none !important;
}

/*投稿画像の回り込み処理*/
img.centered {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

img.alignright {
    padding: 0;
    margin: 0 0 10px 30px;
    display: inline;
}

.alignright img {
    padding: 0;
    margin: 0 0 10px 30px;
}

img.alignleft {
    padding: 0;
    margin: 0 30px 10px 0;
    display: inline;
}

.alignleft img {
    padding: 0;
    margin: 0 30px 10px 0;
}

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;
}

/*pagenavi*/
.main .naviUl {
    margin: 0 0 20px !important;
    height: 34px;
    position: relative;
}

.main .pagenavi {
    padding: 20px 0 0 0 !important;
    margin: 0 auto !important;
    text-align: center;
    position: relative;
}

.main .pagenavi a {
    display: inline-block;
    border-radius: 5px;
    background: #4f4f4f;
    padding: 5px 5px;
    width: 130px;
    text-align: center;
    transition: 0.7s;
    font-size: 18px;
    font-weight: bold;
    box-sizing: border-box;
}

.main .pagenavi a:link,
.main .pagenavi a:hover,
.main .pagenavi a:visited {
    color: #fff !important;
    text-decoration: none !important;
}

.main .pagenavi a:hover {
    opacity: 0.75;
    transition: 0.7s;
}

.main .pagenavi li {
    padding: 0 !important;
    margin: 0 !important;
    background: none !important;
    display: block;
    width: 140px;
}

.main .pagenavi li a:before,
.main .pagenavi li a:after {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 20px;
    left: inherit;
    margin: auto;
    content: "";
    vertical-align: middle;
}

.main .pagenavi li a:before {
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: #fff;
}

.main .pagenavi li a:after {
    right: 26px;
    width: 4px;
    height: 4px;
    border-top: 2px solid #4f4f4f;
    border-right: 2px solid #4f4f4f;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

.main .pagenavi .prev {
    position: absolute;
    right: 0;
}

.main .pagenavi .prev a {
    padding: 5px 20px 5px 5px;
}

.main .pagenavi li.list {
    position: absolute !important;
    left: 50%;
    margin-left: -70px !important;
}

.main .pagenavi li:before,
.main .pagenavi li:after,
.main .pagenavi li.list a:before,
.main .pagenavi li.list a:after {
    content: none;
}

.main .pagenavi .next {
    position: absolute !important;
    left: 0;
}

.main .pagenavi li.next a:before,
.main .pagenavi li.next a:after {
    left: 20px;
    right: inherit;
}

.main .pagenavi li.next a:after {
    left: 26px;
    -webkit-transform: rotate(-135deg);
    transform: rotate(-135deg);
}

.main .pagenavi .next a {
    padding: 5px 5px 5px 20px;
}

/*-------------------#top-----------------*/
#top .topbtnflexbox {
    display: flex;
    gap: 20px;
    margin-top: 20px;
}

#top .topbtn {
    position: relative;
    background-color: #12a73b;
    width: 100%;
    font-size: 17px;
    padding: 20px 0 20px 20px;
    border-radius: 10px;
}

#top .topbtnflexbox a {
    color: white;
    text-decoration: none;
    width: 100%;
}

#top .topbtn::after {
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    font-family: "Font Awesome 5 Free";
    content: '\f138';
    font-weight: 900;
    font-size: 25px;
    right: 20px;
    height: 26px;
    line-height: 1;
    color: white;
}

#top .topbtn .bigtext {
    font-size: 20px;
    font-weight: bold;
}

#top .topbtn .text-shadow {
text-shadow: -1px -4px #f7ac00, 1px -4px #f7ac00, -2px -3px #f7ac00, 2px -3px #f7ac00, -3px -2px #f7ac00, 3px -2px #f7ac00, -4px -1px #f7ac00, 4px -1px #f7ac00, -4px 1px #f7ac00, 4px 1px #f7ac00, -3px 2px #f7ac00, 3px 2px #f7ac00, -2px 3px #f7ac00, 2px 3px #f7ac00, -1px 4px #f7ac00, 1px 4px #f7ac00;
}

#top .topbtn--orange {
    background-color: #ff8632;
}

#top .topbtn--blue {
    background-color: #4582e8;
}

#top .topbtn--yellow {
    background-color: #ffc501;
}

#top .mainCatch h2 {
    background: none;
    padding: 0;
    margin: 0 0 20px 0;
    border: none;
    box-shadow: none;
}

#top .mainCatch .medals{
    display: flex;
    justify-content: space-between;
}

#top .mainCatch .medals span img {
   
}

#top .main h2:after {
    content: none;
}

.newsBox {
    width: 480px;
    position: relative;
    float: left;
}

.main ul.informationTab {
    overflow: hidden;
    border-bottom: #eb6100 solid 2px;
    margin-bottom: 0 !important;
    color: #fff;
}

.main ul.informationTab li {
    line-height: 1;
    float: left;
    margin-right: 3px !important;
    padding: 25px 10px 25px !important;
    text-align: center;
    width: 138px;
    cursor: pointer;
    font-size: 18px !important;
    border-radius: 5px 5px 0 0;
    background-color: #bfb1a7;
}

.main ul.informationTab li:last-child {
    margin-right: 0 !important;
}

.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: #eb6100;
}


div.tabContent {
    clear: both;
    display: none;
    background: #fff;
    position: relative;
    overflow: hidden;
}

div.active {
    display: block;
}

.main .newsBox h4 {
    font-size: 12px !important;
    padding: 0 !important;
    position: relative !important;
    margin: 0 0 5px !important;
    font-weight: normal !important;
}

.main .newsBox h4:before,
.main .newsBox h4:after {
    content: none !important;
}

.main .newsBox .btn a,
.main .reasonBox .btn a {
    float: right;
    margin-bottom: 5px;
}

.main .newsBox .inBox {
    box-sizing: border-box;
    padding: 20px 15px;
    position: relative;
    margin-bottom: 0;
}

.main .newsBox .inBox li {
    position: relative;
    overflow: hidden;
    border-bottom: #cccccc solid 1px;
    padding: 0 0 20px;
    margin: 0 0 20px;
}

.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: #444;
    text-decoration: none !important;
}

.main .newsBox .inBox li h5 {
    background: none !important;
    color: #f89100 !important;
    font-size: 15px !important;
    margin: 0 !important;
    padding: 25px 0 0 !important;
    height: 70px;
    box-sizing: border-box;
}

.main .newsBox .inBox li .price {
    color: #d00000 !important;
}

.main .newsBox .inBox p {
    font-size: 14px !important;
    margin-bottom: 0;
}

.main .newsBox .inBox .time {
    margin-bottom: 10px;
}

.main .newsBox .inBox .contTxt {
    display: block;
    height: 3em;
}

.main .newsBox .inBox p strong {
    color: #e60012;
}

.main .newsBox .inBox .cat {
    position: absolute;
    top: 0;
    left: 165px;
    color: #fff;
    max-height: 25px;
    overflow: hidden;
    line-height: 1.1;
    font-size: 14px;
}

.main .newsBox .inBox li .cat a {
    color: #fff;
    background-color: #d00000;
    position: relative !important;
}

.main .newsBox .inBox li .newsTumb {
    width: 146px;
    height: 120px;
    position: relative;
    overflow: hidden;
    display: block;
    background: #fff;
    float: left;
    margin-right: 20px;
    border: #ccc solid 1px;
    box-sizing: border-box;
}

.main .newsBox .inBox li img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.main .newsBox .inBox li .newsAtcl {
    overflow: hidden;
    padding-top: 25px;
}

.main .newsBox .inBox li .newsAtcl h3 {
    background: none;
    color: #f8771a;
    font-size: 16px;
    font-weight: normal;
    padding: 0;
    border-top: none;
    margin: 0 0 10px;
    line-height: 1;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
}

.main .newsBox .btnNews {
    text-align: right;
}

.main .newsBox .btnNews a {
    display: block;
    position: relative;
    padding: 0 43px 0 0;
    color: #444;
    text-decoration: none;
}

.main .newsBox .btnNews a:after {
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    font-family: "Font Awesome 5 Free";
    content: '\f138';
    font-weight: 900;
    font-size: 16px;
    right: 20px;
    height: 18px;
    line-height: 1;
    color: #f8771a;
}

.main .commitPoint {
    padding: 0 0 30px;
}

.main .commitPoint h2 {
    background: url(/cms/wp-content/uploads/2019/07/commit_ttl.jpg) no-repeat center center;
    background-size: cover;
    border-image: none;
    border: none;
    box-shadow: none;
    margin-bottom: 0;
    font-size: 34px;
    color: #fff;
    width: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    text-align: left;
    height: 450px;
    line-height: 1.2;
    padding: 0;
}

.main .commitPoint h2 span {
    width: 1000px;
    margin: 0 auto;
    font-size: 34px;
}

.main .commitPoint h2 strong {
    color: #e60012;
    font-size: 44px;
    display: block;
}

.main .commitPoint .inner {
    overflow: visible;
}

.main .commitPoint ol {
    padding: 0;
    margin-top: 50px;
    counter-reset: commitpoint;
}

.main .commitPoint ol li {
    list-style: none;
    position: relative;
    clear: both;
    margin-bottom: 50px;
    counter-increment: commitpoint;
}

.main .commitPoint ol li .imgLayer {
    top: -30px;
    left: -40px;
    opacity: 0;
    transform: translate(0, 50px);
    transition: all 1500ms;
}

.main .commitPoint ol li:nth-child(2n) .imgLayer {
    top: -30px;
    left: 480px;
}

.main .commitPoint ol li .imgLayer.scrollin {
    opacity: 1;
    transform: translate(0, 0);
}

.main .commitPoint ol li h3 {
    border-bottom: #ddd dashed 1px;
    margin: 0 0 20px;
    padding: 0;
    font-weight: normal;
    color: #23ac38;
    font-size: 24px;
    background: none;
    border-top: none;
    text-align: left;
}

.main .commitPoint ol li h3:after {
    content: none;
}

.main .commitPoint ol li h3 strong {
    display: block;
    font-weight: normal;
}

.main .commitPoint ol li h3 span {
    display: inline-block;
    background: #23ac38;
    color: #fff;
    font-size: 18px;
    padding: 0 35px 0 10px;
    position: relative;
}

.main .commitPoint ol li h3 span:after {
    content: counter(commitpoint, decimal);
    border: #fff solid 2px;
    border-radius: 50%;
    width: 16px;
    height: 16px;
    font-size: 16px;
    text-align: center;
    display: inline-block;
    position: absolute;
    right: 10px;
    top: 0;
    bottom: 0;
    margin: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
}

.main .voiceList,
.main .worksList {
    text-align: center;
/*    margin-bottom: 50px;*/
}

#top .main .worksList {
    margin-bottom: 0;
}

#top .main .worksList p.btn {
    margin-top: 20px;
    margin-bottom: 0;
}

.main .voiceList ul,
.main .worksList ul {
    position: relative;
    overflow: hidden;
}

.main .voiceList li,
.main .worksList li {
    width: 320px;
    float: left;
    margin: 30px 18px 0 0;
    position: relative;
    padding: 0;
    text-align: left;
}

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

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

.main .worksList li:nth-child(-n + 3),
.main .voiceList li:nth-child(-n + 3) {
    margin-top: 0;
}

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

.main .voiceList li .cat,
.main #archiveList .voiceList article .cat,
.main .worksList li .cat {
    position: absolute;
    top: 10px;
    left: 5px;
    width: 100%;
    z-index: 10;
}

.main .voiceList li .overflowH,
.main .worksList li .overflowH {
    padding: 5px;
    box-sizing: border-box;
}

.main .voiceList a,
.main .worksList a {
    display: block;
    color: #444;
    text-decoration: none !important;
}

.main .voiceList h3,
.main .worksList h3 {
    font-size: 16px;
}

.main .voiceList .contTxt,
.main .worksList .contTxt {
    display: block;
    border: none;
    background: none;
    line-height: 1.4;
    font-size: 13px;
    padding: 0;
    margin: 0;
    color: #444;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    text-align: left;
    width: auto;
}

.main .voiceList h3:after,
.main .worksList h3:after {
    content: none;
}

.main .voiceList .time,
.main .worksList .time {
    font-size: 14px;
    color: #d00000;
    font-weight: bold;
}

.main .worksBox .inner {
    padding: 0 0 30px 0;
}

.main .worksBox h2 {
    background: none;
    color: #444;
    font-size: 30px;
    text-align: center;
    padding: 5px 10px;
    margin: 0 auto 30px;
    text-shadow: 0 0 25px #fff,
        0 0 20px #fff,
        0 0 0.40px #fff;
}

.main .mainThumb {
    width: 320px;
    height: 230px;
    position: relative;
    overflow: hidden;
    display: block;
    background: #ededed;
}

.main .mainThumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.main .worksList .price {
    font-weight: bold;
    color: #e60012;
    font-size: 13px;
    margin-bottom: 5px;
}

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

.main .worksList .price span {
    display: inline-block;
    background: #e60012;
    color: #fff;
    border-radius: 3px;
    padding: 1px 4px 0 4px;
    margin-right: 8px;
}

.main ul.works-menu01 {
    margin: 0 auto 5px;
    position: relative;
    overflow: hidden;
}

.main ul.works-menu01 li {
    width: calc( 25% - 10px);
    padding: 1px;
    margin: 0 10px 0 0 !important;
    float: left;
}

.main ul.works-menu01 li a {
    display: block;
    color: #fff;
    background-color: #002590;
    border-radius: 30px;
    font-size: 18px;
    font-weight: 600;
    text-decoration: none;
    padding: 5px;
    text-align: center;
}

.main ul.works-menu01 li a:hover {
    opacity: 0.8;
}

.main ul.works-menu01 li:nth-child(4n) {
    margin-right: 0 !important;
}

.main ul.works-menu02 {
    margin-bottom: 5px;
}

.main ul.works-menu02 li a {
    background-color: #f8771a;
}
.main ul.works_type {
    margin-bottom: 30px;
}
.main ul.works_type li a {
    background-color: #12a73b;
}

.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:nth-child(3n+1) {
    clear: none;
}

#top .main ul.works-menu01 .cat-item:nth-child(n+5){
	display: none;
}

/*---------works-single-------------*/
.staffProf {
    padding: 20px;
    position: relative;
    overflow: hidden;
}

#works .staffProf {
    border: solid 10px #eee;
    margin: 20px 0;
    background: #f5f5f5;
}

.staffProf .floatL {
    margin-right: 40px;
}

.main .staffProf .staffPhoto {
    width: 240px;
    height: 290px;
    margin-bottom: 20px;
}

.staffProf .staffPhoto img {
    width: 100%;
    height: auto;
}

.staffProf .profileDetail {
    overflow: hidden;
}

.staffProf .profileDetail .positionTxt {
    margin-bottom: 5px;
    font-size: 12px;
}

#works .main .staffProf .profileDetail .staffName span {
    display: inline-block;
    margin-left: 10px;
}

#works .main .staffProf .profileDetail .staffMsg {
    font-size: 14px;
}

.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;
}

#works .main .staffProf .profileDetail .mainpic {
    width: 227px;
    height: 268px;
    position: relative;
    overflow: hidden;
    float: left;
    margin-right: 30px;
}

#works .main .staffProf .profileDetail .mainpic 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;
}

#works .main .staffProf .fbtn {
    text-align: center;
    margin-bottom: 0;
}

/*------------色選びポイント-----------*/
.main .colorPoint li {
    border: #e3e3e3 solid 5px;
    padding: 10px;
    box-sizing: border-box;
}

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

.main .colorPoint li h4 {
    padding: 0;
    line-height: 1.3;
    color: #23ac38;
    margin-bottom: 5px;
    text-align: center;
}

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

/*-----------選ばれる理由リスト-----------*/
.main .reasonList {
    background: #fff url(./img/reasonList_img.jpg) no-repeat right -1px bottom -50px;
    position: relative;
    overflow: visible;
    margin: 25px auto;
    border: #d00000 solid 10px;
    padding: 0;
    box-sizing: border-box;
    counter-reset: reason;
}

.main .reasonList a,
.main .reasonList div.disp {
    text-decoration: none;
    color: #222;
    border: #fff 5px solid;
    padding: 15px;
}

.main .reasonList .reason_headline {
    background: #d00000;
    border: none;
    padding: 5px 0 10px;
    margin: 0 0 10px;
    font-size: 40px;
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    box-shadow: none;
    box-sizing: border-box;
    width: auto;
    position: relative;
}

.main .reasonList .reason_headline .staffImg {
    display: block;
    position: absolute;
    left: 10px;
    bottom: 0;
}

.main .reasonList .reason_headline > span {
    color: #222;
    background: #ffde00;
    font-size: 16px;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 70px;
    padding: 0 20px;
    position: absolute;
    left: 210px;
    top: -100px;
    border-radius: 35px
}

.main .reasonList .reason_headline > span::before {
    content: "";
    display: block;
    position: absolute;
    border-top: 20px solid #ffde00;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    bottom: -16px;
    left: 35px;
    transform: skewX(-60deg);
}

.main .reasonList .reason_headline span i {
    font-style: normal;
}

.main .reasonList .reason_headline span b {
    font-size: 30px;
    margin-left: 10px;
}

.main .reasonList .reason_headline span mark {
    background: transparent;
    color: #d00000;
    font-size: 46px;
    margin: -10px 0 -10px 10px;
    transform: translateY(-2px);
    text-shadow: #fff 3px 0px 0px, #fff 2.83487px 0.981584px 0px, #fff 2.35766px 1.85511px 0px, #fff 1.62091px 2.52441px 0px, #fff 0.705713px 2.91581px 0px, #fff -0.287171px 2.98622px 0px, #fff -1.24844px 2.72789px 0px, #fff -2.07227px 2.16926px 0px, #fff -2.66798px 1.37182px 0px, #fff -2.96998px 0.42336px 0px, #fff -2.94502px -0.571704px 0px, #fff -2.59586px -1.50383px 0px, #fff -1.96093px -2.27041px 0px, #fff -1.11013px -2.78704px 0px, #fff -0.137119px -2.99686px 0px, #fff 0.850987px -2.87677px 0px, #fff 1.74541px -2.43999px 0px, #fff 2.44769px -1.73459px 0px, #fff 2.88051px -0.838247px 0px;
}

.main .reasonList .reason_headline img {
    margin-right: 10px;
}

.main .reasonList ol {
    padding-left: 0;
    margin-bottom: 0;
    z-index: 2;
    position: relative;
    width: 560px;
    margin: 30px 30px 60px;
    box-sizing: border-box;
}

.main .reasonList li {
    list-style: none;
    position: relative;
    padding-left: 2.2em;
    font-size: 22px;
    font-weight: 500;
    position: relative;
    margin: 0 0 10px 0;
    padding-bottom: 10px;
    text-shadow: -1px -4px #fff, 1px -4px #fff, -2px -3px #fff, 2px -3px #fff, -3px -2px #fff, 3px -2px #fff, -4px -1px #fff, 4px -1px #fff, -4px 1px #fff, 4px 1px #fff, -3px 2px #fff, 3px 2px #fff, -2px 3px #fff, 2px 3px #fff, -1px 4px #fff, 1px 4px #fff;
}

.main .reasonList li::before {
  counter-increment: reason;
  content: counter(reason, decimal-leading-zero) ".";
  position: absolute;
  left: 0;
  top: 0;
  text-shadow: inherit;
}

.main .reasonList li::after {
    content: "";
    display: block;
    width: calc(100% + 30px);
    height: 1px;
    border-bottom: 1px #000 dotted;
    position: absolute;
    left: -30px;
    bottom: 0;
}

.main .reasonList li br {
/*    display: none;*/
}
.main .reasonList li strong {
    color: #e60012;
}

.main .reasonList li a {
    border: none;
    padding: 0;
}

.main .reasonList li a:hover {
    opacity: 0.7;
    transition: 0.7s;
}

.main .reasonList__btn {
    text-align: center;
    margin: 0 auto;
    padding: 0;
}


.main .contentBnrList {
    position: relative;
    overflow: hidden;
}

.main .contentBnrList li {
    float: left;
    margin: 40px 40px 0 0;
    background: none;
    padding: 0;
}

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

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

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

/*basicKnow*/
.main .basicKnow {
    margin-top: 30px;
}

.basicKnow h2 {
    color: #fff;
    font-size: 52px !important;
    float: left;
    margin-right: 15px;
    width: 239px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    background: none;
    padding: 0;
    box-shadow: none;
    margin: 0 15px 20px 0;
    border: none;
}

.basicKnow h2::after {
    display: none;
}

.basicKnow h2 span {
    font-size: 52px !important;
    background: #002590;
    display: inline-block;
    border-radius: 5px;
    line-height: 1;
    padding: 1px 3px 5px;
    margin-top: 5px;
}

.basicKnow h2 span:nth-child(-n + 4) {
    margin-top: 0;
}

.basicKnow h2 span img {
    vertical-align: bottom;
    border-image: none;
}

.basicKnow h3 {
    background: #f8771a;
    border: none;
    color: #fff;
    font-size: 20px;
    margin: 20px 0 !important;
    padding: 5px 15px;
    text-align: center;
}

.main .basicKnow .catchTtl {
    font-size: 40px;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: -0.02em;
    margin-top: 0;
}

.main .basicKnow .catchTtl strong {
    background: none;
    color: #d00000;
    font-weight: 700;
    line-height: 1.1;
}

.main .basicKnow .catchTtl strong.txtL {
    font-size: 70px;
}

.main .basicKnow .pointList {
    counter-reset: point;
}

.main .basicKnow .pointList li {
    position: relative;
    overflow: hidden;
    counter-increment: point;
    flex: 1;
}

.main .basicKnow .pointList li h4 {
    font-size: 18px !important;
    font-weight: bold;
    padding: 0;
    margin: 0 0 15px 0;
    color: #f8771a;
    line-height: 1.2;
}

.main .basicKnow .pointList li p {
    font-size: 15px !important;
}

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

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

.main .basicKnow .pointList li img:not(.imgLayer) {
    display: block;
    width: 100%;
    height: auto;
}

.main .basicKnow .pointList li .imgLayer {
    display: block;
    left: 0;
    bottom: 0;
}

.main .basicKnow .pointList li h6 {
    background: none;
    font-size: 18px;
    padding: 0;
    margin-top: 10px;
}

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

.main .basicKnow .pointList li ul li {
    width: auto;
    padding: 0;
    margin: 0;
    font-size: 14px;
}

.main .basicKnow .pointList li ul li strong {
    font-weight: normal;
    background: #fcff00;
    line-height: 0.6;
    display: inline-block;
}

.main .basicKnow .pointList + .btnC {
    margin-top: 20px;
}

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

.main .profileBox h2 {
    padding: 20px 0 0;
}

.main .profileBox .groupPhoto {
    background: url(./img/common/group_photo01.png) no-repeat center bottom;
    width: 550px;
    float: left;
    margin-right: 10px;
    text-align: center;
}

.main .profileBox .groupPhoto p {
    font-size: 35px;
    color: #7FB825;
    font-weight: bold;
    line-height: 1.5;
    margin-top: 65px;
}

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

.main .profileBox ul {
    position: relative;
    overflow: hidden;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-align-items: center;
    align-items: center;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    -o-flex-wrap: wrap;
    flex-wrap: wrap;
}

.main .profileBox ul li {
    display: inline-block;
    border-radius: 3px;
    background: #0eaa8e;
    position: relative;
    width: 48%;
    width: calc(50% - 5px);
    padding: 0;
    margin: 10px 0 0 0;
}

.main .profileBox ul li:hover {
    opacity: 0.8;
    transition: 0.7s;
}

.main .profileBox ul li a {
    display: block;
    color: #fff !important;
    font-size: 17px;
    font-weight: bold;
    position: relative;
    padding: 20px 40px 20px 50px;
    text-decoration: none !important;
}

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

.main .profileBox ul li:before {
    width: 18px;
    height: 18px;
    -webkit-border-radius: 50%;
    border-radius: 50%;
    background: #fff;
}

.main .profileBox ul li:after {
    left: 35px;
    width: 5px;
    height: 5px;
    border-top: 2px solid #0eaa8e;
    border-right: 2px solid #0eaa8e;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

/*-------------------#first-----------------*/
.firstPoint {
    padding: 0 0 30px;
    counter-reset: firstpoint;
}

.firstPoint.inner {
    overflow: visible;
}

.firstPoint .articleContents {
    padding: 0;
    margin-top: 50px;
    list-style: none;
    position: relative;
    clear: both;
    margin-bottom: 50px;
    counter-increment: firstpoint;
    display: flow-root;
    overflow: visible;
}

.main .firstPoint .articleContents p {
    font-size: 15px;
}

.firstPoint .articleContents .imgLayer {
    top: -50px;
    left: -40px;
    opacity: 0;
    transform: translate(0, 50px);
    transition: all 1500ms;
}

.firstPoint .articleContents .alignright .imgLayer {
    top: -50px;
    right: auto;
    left: -40px;
}

.firstPoint .articleContents .imgLayer.scrollin {
    opacity: 1;
    transform: translate(0, 0);
}

.position-relative {
    position: relative;
}

.firstPoint .articleContents h3 {
    border-bottom: #ddd dashed 1px;
    margin: 0 0 20px;
    padding: 0 0 5px;
    font-weight: 700;
    color: #f8771a;
    font-size: 24px;
    background: none;
    border-top: none;
    text-align: left;
    clear: none;
}

.firstPoint .articleContents h3::after {
    content: none;
}

.firstPoint .articleContents h3 strong {
    display: block;
    font-weight: 500;
}

.firstPoint .articleContents h3 span {
    display: inline-block;
    background: #f8771a;
    color: #fff;
    font-size: 18px;
    padding: 0 35px 0 10px;
    position: relative;
}

.firstPoint .articleContents h3 span::after {
    content: counter(firstpoint, decimal);
    border: #fff solid 2px;
    border-radius: 50%;
    width: 16px;
    height: 16px;
    font-size: 16px;
    text-align: center;
    display: inline-block;
    position: absolute;
    right: 10px;
    top: 0;
    bottom: 0;
    margin: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
}

.main .firstPoint table {
    width: 480px;
    height: 250px;
    float: right;
    clear: none;
}

.main .firstPoint table th,
.main .firstPoint table td {
    padding: 10px 10px;
    background: #efefef;
    position: relative;
    padding-left: 1.2rem;
    padding-right: 1.2rem;
    vertical-align: middle;
    text-align: center;
}

.main .firstPoint table th {
    width: auto;
    background-color: #23ac38;
    color: #fff;
    vertical-align: middle;
}

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

.main .firstPoint h5 {
    font-size: 36px;
    background: none;
    padding: 0;
    color: #444;
    margin-top: 0;
}

.main .firstPoint table strong {
    font-weight: bold;
    color: #e60012;
}

.main .firstPoint table caption {
    caption-side: bottom;
    text-align: right;
}

.main .firstPoint .btn {
    margin-bottom: 40px;
    float: right;
}

#first .main .catchTtl {
    font-size: 50px;
    line-height: 1.3;
}

/*-------------------#showroom-----------------*/

/*--ショールーム特徴--*/
.main .showroomFeature p {
    margin-bottom: 0;
}

.main .featureBox {
    position: relative;
    overflow: hidden;
    background: #f3f1eb;
    margin: 30px 0;
}

.main .featureBox p {
    margin-top: 0;
}

.main .featureBox ul {
    padding: 10px;
    float: right;
    width: 300px;
    box-sizing: border-box;
    margin-bottom: 0;
}

.main .featureBox ul li {
    border-radius: 5px;
    background: #fff;
    font-size: 14px;
    padding: 10px;
    position: relative;
    overflow: hidden;
    margin-top: 10px;
    line-height: 1.8;
}

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

.main .featureBox ul li:first-child {
    margin-top: 0;
}

.main .featureBox ul li p {
    font-size: 14px;
    line-height: 1.8;
}

.main .featureBox ul li h4 {
    background: #002590 !important;
    color: #fff;
    font-size: 25px;
    display: table-cell;
    padding: 26px 5px !important;
    height: 100%;
    width: 3em;
    text-align: center;
    vertical-align: middle;
    float: left;
    margin: 0 10px 0 0 !important;
    line-height: 1;
}

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

.main ul.featureImg li {
    float: left;
    margin: 0 17px 30px 0;
    padding: 0;
}

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

.main .featureContents {
    padding: 0;
}

.main .featureContents ol {
    counter-reset: feature;
    padding: 0;
    margin: 0;
}

.main .featureContents ol>li {
    counter-increment: feature;
    position: relative;
    margin: 0 0 30px;
}

.main .featureContents ol>li .imgLayer {
    bottom: 0;
    right: 0;
}

.main .featureContents ol>li p {
    margin-bottom: 0 !important;
}

.main .featureContents li {
    list-style: none;
    padding: 0;
}

.main .featureContents h3 {
    color: #444;
    font-size: 52px;
    display: block;
    line-height: 1.2;
    background: none;
    position: relative;
    overflow: hidden;
    padding: 0;
    padding: 15px 0;
    border: none;
    overflow: hidden;
}

.main .featureContents h3:before {
    background: #23ac38;
    border: #59c66a solid 7px;
    border-radius: 50%;
    color: #fff;
    content: '来店\Aすると';
    white-space: pre;
    width: 125px;
    height: 125px;
    float: left;
    font-size: 20px;
    margin-right: 20px;
    text-align: center;
    line-height: 1.2;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    box-sizing: border-box;
}

.main .featureContents h3 img {
    position: absolute;
    top: 0;
    right: 0;
}

.main .featureContents .photoUL li {
    width: 320px !important;
    height: 230px !important;
    margin: 0 20px 0 0 !important;
    float: left;
}

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

.main .showroomPict {
    position: relative;
    overflow: hidden;
    padding-top: 0;
}

.main .showroomPict .mainimglist {
    width: 707px;
    height: 564px;
    position: relative;
    overflow: hidden;
    float: left;
}

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

.main .showroomPict .thumbnaillist {
    width: 278px;
    float: right;
    margin-top: 0;
}

.main .showroomPict .thumbnaillist li {
    background: none;
    padding: 0;
    margin: 0 0 15px;
}

.main .showroomPict .thumbnaillist li:last-child {
    margin-bottom: 0;
}

.main .showroomPict .thumbnaillist li a {
    width: 278px;
    height: 178px;
    overflow: hidden;
    display: block;
    position: relative;
}

.main .showroomPict .thumbnaillist 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 .showroomPict .thumbnaillist li:before,
.main .showroomPict .thumbnaillist li:after {
    content: none;
}

.main .showroomDetail {
    padding-top: 0;
}

.main ul.showroomDetail {
    position: relative;
    overflow: hidden;
}

.main ul.showroomDetail li {
    width: 490px;
    float: left;
    padding: 0;
    margin: 0;
    background: none;
}

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

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

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

.main ul.showroomDetail li p {
    font-size: 15px;
}

.main .showroomDetail .leadTxt p {
    font-size: 25px;
}

.main .showroomDetail table {
    margin-bottom: 30px;
}

.main .showroomDetail .tel {
    margin-top: 0;
}

.main .showroomDetail .tel span {
    background: url(./img/common/ico_freedial.png) no-repeat left center;
    font-family: "Arial Black", Gadget, sans-serif;
    color: #e60012;
    font-size: 35px;
    font-weight: bold;
    line-height: 1;
    padding-left: 40px;
    display: block;
}

.main .showroomMerit h5 {
    background: #23ac38;
}

.main .showroomMerit ol {
    position: relative;
    overflow: hidden;
    padding: 0;
}

.main .showroomMerit ol li {
    width: 310px;
    box-sizing: border-box;
    margin: 0 35px 0 0;
    position: relative;
    display: block;
    float: left;
    list-style-type: none;
}

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

.main .showroomMerit ol li h5 {
    background: none;
    color: #e60012;
    font-size: 22px;
    margin: 0;
    padding: 0;
    font-family: var(--en-font-family);
    font-weight: var(--en-font-family-weight);}

.main .showroomMerit ol li h5 span {
    font-size: 36px;
}

.main .showroomMerit ol li img {
    float: right;
    margin: 0 0 0 10px;
}

.main .showroomMerit ol li p {
    margin: 0;
    font-size: 15px;
    line-height: 1.5;
}

.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;
}

.main ol.showroomStep li span {
    background: #12a73b;
    border-radius: 50%;
    width: 67px;
    height: 67px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    margin-right: 10px;
}

.main ol.showroomStep li:first-child {
    width: 200px;
    margin-left: 0;
}

.main ol.showroomStep li h4 {
    background: linear-gradient(90deg, #12a73b 0%, #f8771a 100%);
    margin: 0 50px 10px 0 !important;
    color: #fff !important;
    padding: 0 10px 0 50px;
    position: relative;
}

.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 #f8771a;
    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: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
}

.main ol.showroomStep li:first-child p {
    padding-left: 0;
}

/*-------------------#reason-----------------*/
#reason .catchTtl {
    line-height: 1.3;
    margin-bottom: 20px;
    margin-top: 10px;
    text-align: left;
    color: #444;
}

#reason .catchTtl:after {
    content: none;
}

#reason .catchTtl .ttlIco {
    background: url(./img/catchIco.png) no-repeat center center;
    float: left;
    width: 155px;
    height: 155px;
    color: #fff;
    font-size: 18px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-align-items: center;
    align-items: center;
    justify-content: center;
    text-align: center;
    margin: 0 20px 0 0;
    padding-top: 10px;
}

.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 h3 {
    margin-bottom: 20px;
    font-size: 35px;
    font-weight: 700;
    position: relative;
    overflow: hidden;
    background: none;
    border: none;
    padding: 0;
    line-height: 1.3;
    min-height: 75px;
    text-align: left;
    color: #444;
}

.main .reasonDetail h3 br {
    display: none;
}

.main .reasonDetail h3 img {
    position: absolute;
    left: 0;
}

.main .reasonDetail h3 span {
    border-radius: 4px;
    border: #f8771a solid 2px;
    background: #f8771a;
    color: #fff;
    display: table;
    font-size: 18px;
    padding: 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: 10px;
}

.main .reasonDetail .imgL30 {
    margin-bottom: 0;
}

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

.main .reasonDetail .btn {
    float: right;
}

.main .reasonDetail .overflowH {
    margin-bottom: 20px;
}

.main .showroomRecommended {
    margin-top: 20px;
    border-top: #444 dotted 1px;
    padding-top: 10px;
    overflow: hidden;
}

.main .showroomRecommended li {
    background: none;
    border-bottom: #444 dotted 1px;
    position: relative;
    font-size: 26px;
    font-weight: bold;
    padding: 0 0 8px 35px;
    margin: 0 0 8px;
}

.main .showroomRecommended li:last-child {
    margin-bottom: 0;
}

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

.main .showroomRecommended>li:before {
    background: #4dbe53;
    border-radius: 50%;
    width: 25px;
    height: 25px;
}

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

.main .showroomRecommended li strong {
    background: #eb6100;
    display: inline-block;
    line-height: 0.5;
}

.main .reasonDetail .flexbox {
    display: flex;
    gap: 40px;
}

/*-------------------#staff-----------------*/
#staff .main .staffShop {
    position: relative;
    overflow: hidden;
    margin-bottom: 45px;
}

#staff .main .staffShop li {
    position: relative;
    font-size: 25px;
    background: none;
    display: inline-block;
    padding: 0 0 0 20px;
    margin: 0 35px 0 0;
}

#staff .main .staffShop li:before,
#staff .main .staffShop li:after {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    content: "";
    vertical-align: middle;
}

#staff .main .staffShop li:before {
    background: #23ac38;
    border-radius: 50%;
    width: 16px;
    height: 16px;
}

#staff .main .staffShop li:after {
    left: 4px;
    width: 5px;
    height: 5px;
    border-left: 2px solid #fff;
    border-bottom: 2px solid #fff;
    border-right: none;
    border-top: none;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

#staff .main .staffShop li a {
    color: #444;
    text-decoration: none;
}

.main .staffList {
    position: relative;
    overflow: hidden;
    margin-bottom: 50px;
}

.main .staffList li {
    list-style: none;
    background: none;
    float: left;
    margin: 35px 20px 0 0;
    width: 235px;
    padding: 0;
    font-weight: bold;
}

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

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

.main .staffList li a {
    text-decoration: none;
}

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

.staffList li .staffPict {
    width: 235px;
    height: 280px;
    position: relative;
    overflow: hidden;
    margin-bottom: 10px;
}

.staffList li .staffPict img {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: auto;
    height: 100%;
}

.staffList li .positionTxt {
    display: flex;
    flex-wrap: wrap;
    margin: 0 0 5px;
    text-align: center;
    line-height: 1;
    justify-content: center;
}
.positionTxt span {
    color: #fff;
    background: #002590;
    padding: 0 5px;
    font-size: 12px;
    font-weight: bold;
    padding: 0 5px;
    margin-bottom: 3px;
    line-height: 1.2;
    margin-right: 5px;
    text-align: center;
}

#staff .main .staffProf .profileDetail .positionTxt span {
    color: #fff;
    font-size: 12px;
    font-weight: bold;
    display: inline-block;
    padding: 6px 8px 3px;
    line-height: 1.2;
    margin-right: 5px;
    margin-bottom: 7px;
    text-align: center;
}

.main .staffList li .staffName {
    color: #444;
    font-size: 23px;
    line-height: 1.3;
    font-weight: bold;
    text-align: center;
    margin: 0;
}

#staff .main .staffProf .profileDetail .staffName {
    color: #444;
    font-size: 23px;
    line-height: 1.3;
    font-weight: bold;
}

.main .staffList li .staffName span,
#staff .main .staffProf .profileDetail .staffName span {
    color: #797979;
    font-size: 12px;
    display: block;
}

#staff .main .staffProf .profileDetail dd a {
    text-decoration: none;
    /* color: #00a83a; */
    transition: 0.7s;
}

#staff .main .staffProf .profileDetail dd a:hover {
    opacity: 0.7;
}

#staff .main #staffSection .inner {
    padding-top: 0 !important;
}

#staff .main #staffSection .inner .combnrListOtr li {
    margin-bottom: 0 !important;
    margin-top: 30px;
}

.staffList li .btnDetail,
.staffProf a#btnClose {
    font-size: 14px !important;
    margin: 10px auto 0 !important;
    width: 8em !important;
    border-radius: 50px;
    padding: 5px 10px;
    background: #d00000;
    box-shadow: 0px -2px 0px 0px rgba(255, 255, 255, 0.3);
}

.staffProf a#btnClose {
    font-size: 15px !important;
    color: #fff;
    text-decoration: none;
    font-weight: bold;
    text-align: center;
    display: block;
    width: 6em;
    margin: 50px auto 0 auto !important;
    padding: 2px 40px;
}

body#staff.nocolumn {
    min-width: 0;
    overflow: hidden;
}

#staff .main .staffProf {
    padding: 20px;
}

#staff .main .staffProf .staffPict {
    width: 235px;
    height: 280px;
    position: relative;
    overflow: hidden;
    float: left;
    margin-right: 25px;
}

#staff .main .staffProf .staffPict img {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: auto;
    height: 100%;
}

#staff .main .staffProf .profileDetail {
    overflow: hidden;
}

#staff .main .staffProf .profileDetail .positionTxt {
    margin-top: 0;
    font-size: 12px;
}

#staff .main .staffProf .profileDetail .staffName span {
    display: inline-block;
    margin-left: 10px;
}

#staff .main .staffProf .profileDetail dl dt {
    background: #f8771a;
    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;
}

#staff .main .movie-wrap {
    width: 100%;
    display: block;
    margin: 20px auto;
    clear: both;
}

#staff .main .iframe-wrap {
    width: 100%;
    padding-top: 56.25%;
    position: relative;
}

#staff .main .iframe-wrap iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

#staff .main .staff_related_imagesflexbox {
    display: flex;
    margin-top: 50px;
    flex-wrap: wrap;
    gap: 30px;
}

#staff .main .staff_related_imagesbox {
    width: calc((100% - 60px) / 3);
}

#staff .main .staff_related_images_pic {
    position: relative;
    width: 100%;
    aspect-ratio: 1 / 1; /* 正方形 */
    overflow: hidden;
    background: #eee;
}

#staff .main .staff_related_images_pic img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}


/*-------------------#colorsimulation-----------------*/
#colorsimulation #main .comIdea ul {
    -webkit-justify-content: space-around;
    justify-content: space-around;
    padding: 0 90px;
}

.main ul.colorsimulationBa li {
    padding: 0;
    margin: 0;
}

.main ul.colorsimulationBa li ul {
    position: relative;
    overflow: hidden;
    margin-bottom: 10px;
}

.main ul.colorsimulationBa li ul li {
    list-style: none;
    background: none;
    padding: 0;
    position: relative;
    margin-bottom: 20px;
}

.main ul.colorsimulationBa li ul li.before {
    margin-right: 20px;
    float: left;
    overflow: visible;
}

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

.main ul.colorsimulationBa li ul li.before::after {
    content: ' ' !important;
    height: 0 !important;
    position: absolute !important;
    width: 0 !important;
    border: 20px solid transparent !important;
    border-left: #f8771a solid 20px !important;
    left: 102% !important;
    top: 0 !important;
    bottom: 0 !important;
    margin: auto !important;
}

.main ul.colorsimulationBa li ul li.after {
    float: right;
}

.main ul.colorsimulationBa li ul li.after img {
    margin-left: 10px;
}

.main ul.colorsimulationBa li ul li.after img:first-child {
    margin-left: 0;
}

.main .colorStep {
    padding: 0;
    position: relative;
    overflow: hidden;
    margin: 0;
    display: flex;
    justify-content: space-between;
}

.main ol.colorStep li {
    background: none;
    border: #002590 solid 3px;
    border-radius: 5px;
    width: calc( 20% - 20px );
    text-align: center;
    list-style: none;
}

.colorStep span {
    background: #002590;
    color: #fff;
    display: block;
    font-weight: bold;
    margin-bottom: 1px;
}

.colorStep h4 {
    font-size: 14px;
    padding: 0 5px;
    margin: 10px 0 5px;
    text-align: left;
}

.main ol.colorStep li p {
    font-size: 12px;
    padding: 0 5px;
    text-align: left;
    margin: 5px 0;
}

.main .campaignArw {
    background: #d00000;
    color: #fff;
    font-size: 20px;
    font-weight: bold;
    padding: 0 20px;
    margin: 20px 165px 10px 0;
    position: relative;
}

.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;
}

#colorsimulation .balloonBox {
    background: none;
}

#colorsimulation .main .balloonBox p {
    color: #000;
    font-weight: 700;
}

.main .trialBox .catchTtl {
    font-size: 30px;
    font-weight: 700;
    line-height: 1.4;
    margin-bottom: 30px;
    clear: both;
}

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

.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 img {
    float: right;
}

.main .tryPhoto {
    position: relative;
    padding-top: 10px;
    margin-bottom: 30px;
    overflow: hidden;
}

.main .tryPhoto p {
    margin-bottom: 0;
}

.main .tryPhoto .imgLayer {
    right: 0;
    bottom: 0;
    z-index: 10;
}

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

.main .tryPhoto ul li {
    float: left;
    margin: 0 20px 0 0;
    padding: 0;
}

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

/*-------------------warningChk-----------------*/
.main .warningChk {
    margin: 30px 0;
    box-sizing: border-box;
}

.main .warningChk h3 {
    color: #23ac38;
    font-size: 30px;
    margin: 0 0 30px;
    padding: 0;
    border: none;
    background: none;
}

.main .warningChk h5 {
    margin: 0 0 10px;
    background: #e60012 !important;
    font-size: 18px !important;
}

.main .warningChk img {
    margin-right: 30px;
}

.main .warningChk ul {
    margin-bottom: 0;
}

.main .warningChk ul li {
    font-size: 16px;
    padding: 0 0 0;
    margin: 0 0 0;
    position: relative;
    color: #23ac38;
}

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

/*-------------------#rainleaking#diagnosis-----------------*/

.main .ranking {
    padding: 0;
    margin: 0 0 20px;
}

.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.2;
    margin-bottom: 30px;
}

.troubleBox h2 {
    position: relative;
    z-index: 10;
    padding: 15px 0 0;
    margin: 0 auto 20px;
    color: #444;
    font-size: 32px;
    font-weight: 700;
    background: none;
    box-shadow: none;
    line-height: 1.2;
    position: relative;
    overflow: hidden;
    border: none;
    text-align: left;
}

.troubleBox h2:after {
    display: none;
}

.troubleBox h2 img {
    float: left;
    margin: 0 10px 0 0;
}

.troubleBox h2 > span{
    display: block;
}

.troubleBox h2 span.txtL,
.troubleBox h2 span.txtL span {
    font-size: 48px;
    display: inline-block;
}

.troubleBox h2 span.txtEn {
    color: #eb6100;
    font-size: 15px;
}

#diagnosis .main .troubleBox {
    background: #444;
    padding: 10px 20px;
}

#diagnosis .main .troubleBox h3 {
    border-top: none;
    background: none;
    padding: 0;
    color: #fff;
    margin-bottom: 15px;
    font-size: 30px;
    text-align: center;
}

.troubleBox ul.photoColumn3 {
    margin-bottom: 20px;
}

#diagnosis .troubleBox .catchTxt {
    font-size: 23px;
    line-height: 1.5;
    color: #fff;
    padding-top: 20px;
}

#diagnosis .troubleBox p img {
    float: left;
    margin: -20px 20px 0 0;
}

#diagnosis .troubleBox strong {
    text-decoration: underline;
}

#diagnosis .balloonBox {
    margin: 30px auto;
    text-align: center;
}

#diagnosis .main .balloonBox p {
    font-size: 24px;
    line-height: 1.8;
}

.troubleBox_ttl {
    font-size: 30px;
}

.diagnosisPoint {
    margin-bottom: 0;
    padding: 0;
    counter-reset: diagnosispoint;
}

.diagnosisPoint .articleContents {
    list-style: none;
    margin-bottom: 40px;
    overflow: hidden;
    position: relative;
    counter-increment: diagnosispoint;
}

.diagnosisPoint .articleContents img {
    float: left;
    margin-right: 20px;
}

.diagnosisPoint h3 {
    background: none;
    font-size: 33px;
    line-height: 1.1;
    border-top: none;
    margin: 0 0 40px 0;
    display: flex;
    align-items: center;
    justify-content: flex-start;
}

.diagnosisPoint h3.headline03 {
/*    margin: 0 0 20px;
    border: none;
    font-size: 24px;
*/
    border-bottom: #ddd solid 1px;
    background: none;
    padding: 0 0 15px;
    text-align: left;
    color: #f8771a;
    font-weight: bold;
}

.diagnosisPoint h4 {
    clear: none;
}

.diagnosisPoint h3::before {
    color: rgb(255, 255, 255);
    width: 80px;
    height: 80px;
    font-size: 15px;
    margin-right: 10px;
    margin-top: -3px;
    text-align: center;
    line-height: 1.2;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    -webkit-box-pack: center;
    justify-content: center;
    box-sizing: border-box;
    content: "POINT\a "counter(diagnosispoint, decimal-leading-zero);
    white-space: pre;
    background: #002590;
    border-width: 3px;
    border-style: solid;
    border-color: rgba(255, 255, 255, 0.3);
    border-image: initial;
    border-radius: 50%;
}

#diagnosis .main .diagnosisPoint h3:before {
    content: 'ここが違う\A'counter(diagnosispoint, decimal-leading-zero);
    white-space: pre;
}

.recommendBox h2 {
    z-index: 10;
    padding: 0;
    width: auto;
    margin: 0 auto 15px;
    color: #444;
    font-size: 44px;
    background: none;
    box-shadow: none;
    line-height: 1.2;
    position: relative;
    overflow: hidden;
    text-align: left;
}

.recommendBox h2 span {
    display: table;
    margin: 0 0 10px;
    font-size: 24px;
    background: #eb6100;
    color: #fff;
    border-radius: 5px;
    padding: 5px 10px;
}

.recommendBox h2 span.txtL {
    font-size: 60px;
    background: none;
    display: block;
    color: #444;
    padding: 0;
    margin-bottom: 0;
}

.rainreaking-measureslist {
    position: relative;
    width: 40%;
    margin-left: 30px;
}

.main .rainreaking-measureslist li {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    padding: 0;
    width: 100%;
}

.rainreaking-measureslist li span {
    width: 60%;
    position: relative;
    overflow: hidden;
    display: block;
}

.rainreaking-measureslist li span:before {
    content: '' !important;
    display: block;
    padding-top: 60%;
}

.rainreaking-measureslist li span img {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.rainreaking-measureslist p{
    background: #d00000;
    color: #fff;
    font-size: 48px;
    font-weight: 700;
    width: 40%;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 0;
    padding: 20px;
    text-align: center;
    box-sizing: border-box;
    line-height: 1.2;
}

.main .rainreaking-measureslist li:before,
.main .rainreaking-measureslist li:after {
    content: none;
}

/*-------------------#apartment-----------------*/
#apartment .catchLtl {
    font-size: 30px;
    font-weight: bold;
    line-height: 1.5;
    margin-bottom: 20px;
}

#apartment .catchLtl strong {
    color: #e60012;
}

/*-------------------#menu-----------------*/
#menu h2.subMain {
    background-size: cover !important;
    border-image: none;
    border: none;
    box-shadow: none;
    margin-bottom: 50px;
    font-size: 40px;
    color: #fff;
    width: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    height: 650px;
    line-height: 1.2;
    padding: 0;
}

#menu h2.subMain span {
    width: 1000px;
    margin: 0 auto;
    font-size: 34px;    text-shadow: -1px -4px #444, 1px -4px #444, -2px -3px #444, 2px -3px #444, -3px -2px #444, 3px -2px #444, -4px -1px #444, 4px -1px #444, -4px 1px #444, 4px 1px #444, -3px 2px #444, 3px 2px #444, -2px 3px #444, 2px 3px #444, -1px 4px #444, 1px 4px #444;
}

.main .textNote {
    font-size: 12px;
    font-family: "メイリオ", "Meiryo", verdana, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif !important;
    text-align: right;
    margin-bottom: 0;
}

.main .leadTxt {
    font-size: 24px;
}

.main .catchMenu {
    background: #002590;
    font-weight: bold;
    font-size: 30px;
    color: #fff;
    padding: 5px 15px;
}

.main .wallPartsBox {
    position: relative;
    overflow: hidden;
}

.main .wallPartsBox .floatL {
    width: 330px;
}

.main .wallPartsBox .floatR {
    width: 640px;
    text-align: center;
}

.main .wallPartsBox .catchTtl {
    font-size: 48px;
    font-weight: 700;
    line-height: 1.2;
    margin: 0 0 10px;
}


.main .wallPartsBox .floatL .catchTtl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}

.main .wallPartsBox .catchTtl span {
    border-radius: 50%;
    background: #d00000;
    color: #fff;
    width: 165px;
    height: 165px;
    font-size: 120px;
    line-height: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    box-sizing: border-box;
    padding-bottom: 0.1em;
}

.main .wallPartsBox p.txts {
    font-size: 14px;
    font-weight: bold;
}

.main .wallPartsBox h4 {
    background: #f8771a;
    color: #fff;
    padding: 0;
    margin: 0 0 40px;
    margin: 0 0 10px;
    padding: 5px 10px;
}

.main h2.menuCatch {
    background: none;
    font-size: 45px;
    box-shadow: none;
    color: #444;
    text-align: center;
    line-height: 1.3;
    padding: 0 0 30px;
    margin-bottom: 30px;
}

.main h2.menuCatch:after {
    background: #eb6100;
    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;
}

.itemBox h3 {
    border: none;
    float: left;
    width: 740px;
    margin: 0 0 20px;
    font-size: 30px;
    background: #f5f5f5;
    color: #444;
    padding: 15px 25px;
    border-left: #002590 solid 4px;
    border-top: none;
    font-size: 18px;
    text-align: left;
    box-sizing: border-box;
}

.itemBox h3 img {
    display: block;
    margin-bottom: 5px;
}

.main .packBox {
    position: relative;
}

.main .packBox .imgIco {
    right: 120px;
    top: 0;
    position: absolute;
    width: auto;
    height: auto;
    z-index: 10;
}

.main .itemImg {
    width: 217px;
    position: relative;
    overflow: hidden;
    float: right;
    color: #999;
}

.main .itemImg img {
    /* width: 100%; */
    height: auto;
    max-width: 100%;
    margin: 0 0 0 auto;
    display: block;
}

.main .itemImg img + img {
    margin-top: 10px;
}

.main .itemPhoto p {
    color: #fff;
    font-size: 40px;
    font-weight: bold;
}

.itemSummery {
    width: 740px;
    float: left;
}

.main .itemSummery p {
    font-size: 22px;
}

.main .itemSummery .leadTxt {
    position: relative;
}

.main .itemSummery .leadTxt p {
    font-size: 16px;
    line-height: 1.8;
}

.itemSummery .age_list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-align-items: center;
    align-items: center;
}

.main .itemSummery .age_list li {
    background: none;
    padding: 0;
    text-align: center;
    font-weight: bold;
    margin: 0 20px 0 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-align-items: center;
    align-items: center;
}

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

.main .itemSummery .age_list li h5 {
    border-radius: 0;
    font-size: 20px;
    line-height: 2;
    margin: 0;
    background: #ffde00;
    border: #ffde00 solid 1px;
    height: 42px;
/*    width: 90px;*/
    padding: 15px;
}

.main .itemSummery ul li.itemFeature {
    -webkit-flex-basis: 370px;
    flex-basis: 370px;
    margin-right: 0;
}

.main .itemSummery ul li p {
    height: 40px;
    width: 175px;
    font-size: 30px;
    margin: 0;
    padding: 15px;
    background: #f5f5f5;
    border: #ccc solid 1px;
}

.main .itemSummery ul li.itemFeature p {
    text-align: left;
    font-size: 18px;
}

.itemData {
    clear: both;
    margin-top: 20px;
    background: #d00000;
    padding: 15px 30px;
}

.itemData h4 {
    color: #fff;
    font-size: 35px;
    text-align: center;
    margin: 10px 0 20px;
    padding: 0;
    line-height: 1
}

.singleWpack .itemData h4 {
    font-size: 32px;
}

.singleWpack .itemData h4 span {
    display: block;
}
.main .itemData ul {
    position: relative;
    overflow: hidden;
    margin: 0;
}

.main .itemData ul li {
    border-radius: 5px;
    background: #fff;
    padding: 25px 20px 70px;
    margin: 0 15px 15px 0;
    position: relative;
    width: 303px;
    float: left;
    box-sizing: border-box;
}

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

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

.itemData ul li h5 {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    color: #fff;
    background: #f8771a;
    display: block;
    width: 200px;
    text-align: center;
    padding: 3px;
    box-sizing: border-box;
    margin: 0 auto 20px;
    border-radius: 4px;
    font-size: 18px;
}

/*-------------------#contact-----------------*/
.main .telInbox {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    border: #f8771a 4px solid;
    border-radius: 10px;
    padding-top: 10px;
    position: relative;
    overflow: hidden;
    background: #fffce3;
}

.main .telInbox .imgLayer {
    position: relative;
    margin-right: 20px;
}

.main .telInbox .tel {
    font-size: 16px;
}

.main .telInbox .tel span {
    font-size: 75px;
    padding-left: 70px;
    background-size: 65px auto;
    margin-bottom: -10px;
}

.main .telInbox .catchTxt {
    font-size: 35px;
    font-weight: 700;
    margin-bottom: 5px;
}

.main .telInbox .catchTxt span {
    background: #d00000;
    color: #fff;
    padding: 5px 20px;
    margin-right: 5px;
    border-radius: 5px;
    font-size: 30px;
}

.main .telInbox .catchTxt strong {
    color: #d00000;
}

/*------------- work-single -------------*/
.main .circleBnr {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-align-items: flex-end;
    align-items: flex-end;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    /*width: 490px;*/
    width: 800px;
    /*background: url(./img/showroom/bcg_show01.png) no-repeat center center;*/
    /*padding: 0 255px;*/
    padding: 0 100px;
}

.main .circleBnr li {
    width: 50%;
    text-align: center;
}

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

.main .circleBnr li a {
    text-decoration: none;
    color: #000;
    font-weight: bold;
}

.main .emergencyBox {
    background: #eee;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    margin-bottom: 20px;
}

.main .emergencyBox img {
    margin-right: 20px;
}

.main .emergencyBox .tel {
    display: block;
    margin: auto;
}

.main .emergencyBox .tel span {
    font-size: 48px;
    padding-left: 60px;
    background-size: 57px auto;
}

/* ===== 20200406追記 ===== */
.attBox {
    border: solid 5px #e60012;
    padding: 10px;
    background: #FFF;
    margin-bottom: 20px;
}

.main .attBox h2 {
    color: #e60012;
    text-align: center;
    font-size: 150%;
    font-weight: bold;
    background: none;
    padding: 0;
    margin: 0 0 15px;
    border: none;
    box-shadow: none;
}

.attBox .imgL {
    width: 40%;
    height: auto;
    margin: 0 20px 0 0;
}

.attBox img {
    width: 100%;
    height: auto;
}

.attBox ul {
    margin-bottom: 0;
}

.attBox ul li a {
    color: #e60012 !important;
    font-size: 110%;
    font-weight: bold;
}

#mainv .reviewBox {
    padding: 0;
    margin-bottom: 60px;
}

#mainv .reviewBox ul,
.main .reviewBox ul {
    position: relative;
    overflow: hidden;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    padding: 5px;
    box-sizing: border-box;
}

#mainv .reviewBox ul li,
.main .reviewBox ul li {
    padding: 0;
    background: rgba(255, 255, 255, 1.0);
    border-radius: 5px;
    padding: 10px;
    box-sizing: border-box;
    width: 100%;
}

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

.main .reviewBox ul li .wp-google-place,
#mainv .reviewBox ul li .wp-google-place {
    background: #f5f5f5 !important;
    margin: -10px -10px 0 !important;
    padding: 5px 5px 30px !important;
    box-sizing: border-box !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
}

.main .reviewBox ul li .wp-google-content-inner {
    height: 300px;
    overflow: auto !important;
}

.main .reviewBox ul li .wp-google-place .wp-google-right {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: auto !important;
}

.main .reviewBox ul li .wp-gr.wpac .wp-google-name a {
    font-size: 20px !important;
}

#mainv .reviewBox ul {
    width: 1000px;
    margin: 0 auto;
    text-align: center;
}

#mainv .reviewBox ul li {
    background: none !important;
    padding: 0 20px;
    width: 100%;
    display: block
}

#mainv .reviewBox ul li .wp-google-content-inner {
    display: none;
}

#mainv .reviewBox ul li .wp-google-place {
    margin: 0 !important;
    padding: 5px !important;
}

#mainv .reviewBox ul li .wp-gr .wp-google-left {
    float: left !important;
}

#mainv .reviewBox ul li .wp-gr .wp-google-right {
    width: auto !important;
    display: flex !important;
    flex-wrap: wrap;
}

#mainv .reviewBox ul li .wp-gr .wp-google-right div {
    margin-right: 10px !important;
    float: left;
}

#mainv .reviewBox ul li .wp-gr .wp-google-name {
    margin-bottom: 0 !important;
    font-size: 20px !important;
}

#mainv .reviewBox ul li .wp-gr .wp-google-left img {
    width: 40px !important;
    height: 40px !important;
}

#mainv .reviewBox ul li .wp-gr .wp-google-right span.wp-google-rating,
#mainv .reviewBox ul li .wp-gr .wp-google-right span.wp-google-stars {
    font-size: 18px !important;
    line-height: 1.2 !important;
}

#mainv .wp-gr .wp-google-place .wp-star svg {
    width: 15px !important;
    height: auto !important;
}

#mainv .reviewBox ul li .wp-gr .wp-google-powered {
    margin-top: 0 !important;
}

.main .warksTaxList .taxList {
    display: none;
}

.main .warksTaxList .toggleBtn {
    border-radius: 50px;
    color: #fff !important;
    font-size: 16px;
    position: relative;
    padding: 10px 70px 10px 50px;
    text-decoration: none;
    text-align: center;
    background: #f8771a;
    text-decoration: none !important;
    display: inline-block;
    margin: 0 0 20px;
    transition: ease 0.4s;
    cursor: pointer;
}

.main .warksTaxList .toggleBtn:hover {
    box-shadow: 0px 0px 0px 2px #f8771a inset, 0px 0px 0px 3px #fff inset;
    transition: 0.4s;
}

.main .warksTaxList .toggleBtn:after {
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    font-family: "Font Awesome 5 Free";
    content: '\f138';
    font-weight: 900;
    font-size: 16px;
    right: 20px;
    height: 18px;
    line-height: 1;
}

.main .topAwards p {
    font-size: 120%;
}

.main .topAwards p strong {
    font-weight: bold;
}

.main .topAwardsList {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
}

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

.main .topAwardsList li {
    padding: 0;
}

.main .topAwardsList li img {
    max-width: 100%;
    height: auto;
}

.main .topAwardsList li.yoko {
    width: 32%;
    margin-right: 2%;
}

.main .topAwardsList li.yoko:nth-of-type(3n) {
    margin-right: 0;
}

.main .topAwardsList li.yoko:nth-of-type(n + 4) {
    margin-top: 20px;
}

.main .topAwardsList li.tate {
    width: 23.5%;
    margin-right: 2%;
}

.main .topAwardsList li.tate:nth-of-type(4n) {
    margin-right: 0;
}

.main .topAwardsList li.tate:nth-of-type(n + 5) {
    margin-top: 10px;
}

/*--------------special_contents -----------*/
.special_contents {
    background: #fff298;
    margin: -50px 0;
    padding: 100px 0 40px;
}

.main .special_contents h2 {
    background: none;
    border: none;
    box-shadow: none;
    padding: 0;
    margin-bottom: 0;
}

.special_inBox {
    background: #fff;
    padding: 50px 40px 30px;
    box-sizing: border-box;
}

.special_contents02 .special_inBox {
    background: #fff;
    padding: 50px 40px 30px;
    box-sizing: border-box;
    display: flex;
    gap: 20px;
}

.special_contents02 .special_inBox .special_txt {
    width: 100%;
}

.special_inBox h2 {
    background-color: #f8771a !important;
    color: #fff;
    font-weight: bold;
    width: 100%;
    padding: 15px 0 !important;
    text-align: center;
    font-size: 1.5rem;
    margin-bottom: 15px !important;
}

.special_contents .special_txt{
    width: calc(100% - 20px - 502px);
}

.special_inBox .table-container {
    margin: 40px 0;
}

.main .special_inBox h3 {
    font-size: 16px;
    font-weight: 600;
    color: #ffffff;
    background-color: #002590;
    text-align: center;
    padding: 10px 0;
}

.special_contents02 .special_inBox h3 {
    font-size: 22px;
    font-weight: 600;
    color: #f8771a;
    background-color: transparent;
    text-align: left;
    padding: 10px 0;
}

.special_inBox td {
    border: 1px solid #cccccc;
    width: 50%;
}

.special_inBox .img01 {
    text-align: center;
    margin: 40px 0;
}

.special_inBox .flexbox {
    display: flex;
    justify-content: space-between;
}

.main .special_contents .special_list {
    display: block;
    width: 502px;
    overflow: hidden;
    margin: 0 -2px;
}

.main .special_contents .special_list li {
    margin: 2px;
    padding: 0;
    display: block;
    width: 247px;
    float: left;
}

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

.main .special_contents .special_list li img {
    display: block;
    width: 100%;
    height: auto;
}

.special_thumb {
}

.main .special_contents02 {
    margin-top: 90px;
    padding-bottom: 80px;
    background: center bottom 100px url(img/bg_special_contents02.png) no-repeat;
    background-size: contain;
    position: relative;
    z-index: 10;
}

.main .special_contents02 h2 {
    background: linear-gradient(to bottom, #e60012 5px, #fff 5px, #fff 6px, #e60012 6px, #e60012 calc(100% - 6px), #fff calc(100% - 6px), #fff calc(100% - 5px), #e60012 calc(100% - 5px));
    color: #fff;
    font-size: 34px;
    font-weight: 700;
    margin-bottom: 10px;
    padding: 15px;
    text-align: center;
}

.main .special_contents02 .special_inBox {
    padding: 20px 0;
}

.main .special_contents02 p b {
    font-weight: 500;
}

.special_contents02_box {
    font-weight: 500;
    border: 1px dotted #222;
    background: #f5f5f5;
    margin-top: 30px;
    padding: 10px 15px;
    text-align: center;
}

.main .special_contents02 + article {
    margin-top: -100px;
    padding-top: 50px;
    z-index: 9;
}

.main .special_list02 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin-top: 25px;
}

.special_contents02 .special_list02 {
    margin-bottom: 50px;
}

.main .special_list02 li {
    margin: 0;
    padding: 0;
}

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

.line_contact {
    padding: 40px 0;
    background: repeating-linear-gradient(-45deg, #ff8b3a, #ff8b3a 4px, #ff8129 0, #ff8129 11px);
}

.line_contact .inner {
    padding: 0;
}

.main .line_contact a {
    display: block;
    border-radius: 10px;
/*    background: #fff;*/
}

.main .line_contact a:hover img {
    opacity: 1 !important;
}

.main .line_contact a {
    border: #222 solid 6px;
    background: #00a83a left center url(img/bg_line_contact.png) no-repeat;
    text-decoration: none;
    color: #fff;
    padding: 20px 40px;
    text-align: center;
}

.main .line_contact a h2 {
    font-size: 40px;
    font-weight: 900;
    position: relative;
    width: fit-content;
    margin: 0 auto;
    padding-left: 25px;
}

.main .line_contact a h2 b {
    font-size: 60px;
}

.main .line_contact a h2 i {
    font-style: normal;
    display: inline-block;
    transform: translateX(-50%) rotate(20deg);
    font-size: 50px;
}

.main .line_contact a h2::before,
.main .line_contact a h2::after {
    content: "" !important;
    display: block;
    background: #fdd000;
    position: absolute;
    width: 8px;
    height: 61px;
    top: 0;
    bottom: 0;
    margin: auto 0;
    clip-path: polygon(0 0, 100% 100%, 100% 0);
}

.main .line_contact a h2::before {
    left: -25px;
    transform: rotate(-15deg)  translateY(10%);
}

.main .line_contact a h2::after {
    right: -25px;
    transform: rotate(15deg) scale(-1, 1) translateY(10%);
}

.main .line_contact a ol {
    list-style: none;
    display: flex;
    gap: 40px;
    justify-content: center;
    margin: 0 auto;
    padding: 0;
    width: fit-content;
}

.main .line_contact a ol li {
    flex: 1;
    list-style-type: none;
    border: 6px solid #fdd000;
    background: #fff;
    border-radius: 45px;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.1;
    color: #222;
    padding: 20px 20px;
    display: flex;
    align-items: center;
    flex-direction: column;
    position: relative;
    white-space: nowrap;
}

.main .line_contact a ol li::before {
    position: absolute;
    content: "";
    background: #fdd000;
    width: 8px;
    height: 17px;
    clip-path: polygon(0 0, 0% 100%, 100% 50%);
    top: 0;
    right: -30px;
    bottom: 0;
    margin: auto 0;
}

.main .line_contact a ol li:nth-of-type(2) {
    flex-direction: row;
    justify-content: center;
}

.main .line_contact a ol li:last-of-type::before {
    display: none;
}

.main .line_contact a ol li span {
    font-size: 16px;
    display: block;
}

.main .line_contact_bottom {
    display: flex;
    justify-content: flex-end;
    margin: 20px 0 0;
    gap: 20px;
}

.main .line_contact a .line_contact_btn {
    order: 1;

    flex-basis: auto;
    margin: 10px 10px 0;
}

.main .line_contact a .line_contact_btn p {
    font-size: 34px;
    font-weight: 900;
    margin: 0 10px 0 auto;
    background: #fdd000;
    color: #222;
    padding: 5px 30px 10px 30px;
    box-shadow: 0 5px 0 rgba(0,0,0,0.1);
    position: relative;
    border-radius: 50px;
    line-height: 1;
    transition: 0.3s ease;
    max-width: 532px;
    letter-spacing: -0.05em;
}

.main .line_contact a:hover .line_contact_btn p {
    transform: scale(1.02) rotate(-0.5deg);
}

.main .line_contact a .line_contact_btn p::after {
    content: "";
    display: block;
    width: 42px;
    height: 50px;
    position: absolute;
    right: -10px;
    bottom: -25px;
    background: url(./img/ico_hand.png) no-repeat;
}

.main .line_contact a .line_contact_btn p b {
    font-weight: 900;
    font-size: 36px;
    position: relative;
    display: inline-block;
    transform: translate(-0%,-20%) scale(1) rotate(-5deg);
    transform-origin: right bottom;
    letter-spacing: -0.1em;
    margin-right: 0.5em;
}

.main .line_contact a .line_contact_btn b::before,
.main .line_contact a .line_contact_btn b::after {
    content: "" !important;
    display: block;
    background: #e60012;
    position: absolute;
    width: 4px;
    height: 16px;
    bottom: 100%;
    margin: auto 0;
    mask-repeat: no-repeat;
    mask-position: center center;
    mask-size: contain;
    -webkit-mask-repeat: no-repeat;
    -webkit-mask-position: center center;
    -webkit-mask-size: contain;
}

.main .line_contact a .line_contact_btn b::before {
    mask-image: url(./img/ico_slash01.png);
    width: 28px;
    height: 30px;
    left: 0;
    transform: translate(-100%, 60%);
}

.main .line_contact a .line_contact_btn b::after {
    mask-image: url(./img/ico_slash02.png);
    width: 26px;
    height: 26px;
    right: 0;
    transform: translate(100%, 50%);
}


.main .line_contact a .line_contact_btn img {
    transition: 0.3s ease;
}
.main .line_contact a:hover .line_contact_btn img {
    transform: scale(1.02) rotate(-0.5deg);
/*    transform: translate(0px, 2px);*/
/*    opacity: 0.7 !important;*/
}
/*
.main .line_contact a .line_contact_btn.reflection {
  -webkit-mask-image: url(img/btn_line_contact.png);
  mask-image: url(img/btn_line_contact.png);
}
*/
.main .line_contact_qr {
    order: 2;
    width: 90px;
    height: 90px;
    border: 5px  solid #fff;
    border-radius: 10px;
    
}

.main .line_contact_qr img {
    display: block;
    width: 100%;
    height: auto;
}

.main .line_contact .popupTxt {
    order: 3;
    color: #fff;
    background: #e60012;
    font-size: 16px;
    font-weight: 900;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 70px;
    padding: 0 20px;
    border-radius: 35px;
    position: relative;
    white-space: nowrap;
}

.main .line_contact .popupTxt::before {
    content: "";
    display: block;
    position: absolute;
    border-top: 20px solid #e60012;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    bottom: -16px;
    left: 35px;
    transform: skewX(-60deg);
}

.staff_contents {
    padding: 20px 0 0;
    text-align: center;
    background: #ebf5ff url(./img/bg_sky.jpg) center top no-repeat;
    position: relative;
/*    clip-path: polygon(0 0, 100% 0, 100% calc(100% - 100px), 0% 100%);*/
}

.staff_contents .inner {
    padding: 20px 0 0;
}

.staff_contents::before {
    position: absolute;
    display: block;
    content: "";
    width: 100%;
    height: 188px;
    top: 283px;
    left: 0;
    background-image: repeating-linear-gradient(-45deg, #3c4cb5 0, #3c4cb5 2px, #2e3fb0 0, #2e3fb0 7px);
}

.staff_contents h2 {
    font-size: 46px;
    font-weight: 700;
    letter-spacing: -0.05em;
    color: #fff;
    margin-bottom: 20px;
    line-height: 1;
    text-align: center;
    text-shadow: rgb(17, 17, 17) 3px 0px 0px, rgb(17, 17, 17) 2.83487px 0.981584px 0px, rgb(17, 17, 17) 2.35766px 1.85511px 0px, rgb(17, 17, 17) 1.62091px 2.52441px 0px, rgb(17, 17, 17) 0.705713px 2.91581px 0px, rgb(17, 17, 17) -0.287171px 2.98622px 0px, rgb(17, 17, 17) -1.24844px 2.72789px 0px, rgb(17, 17, 17) -2.07227px 2.16926px 0px, rgb(17, 17, 17) -2.66798px 1.37182px 0px, rgb(17, 17, 17) -2.96998px 0.42336px 0px, rgb(17, 17, 17) -2.94502px -0.571704px 0px, rgb(17, 17, 17) -2.59586px -1.50383px 0px, rgb(17, 17, 17) -1.96093px -2.27041px 0px, rgb(17, 17, 17) -1.11013px -2.78704px 0px, rgb(17, 17, 17) -0.137119px -2.99686px 0px, rgb(17, 17, 17) 0.850987px -2.87677px 0px, rgb(17, 17, 17) 1.74541px -2.43999px 0px, rgb(17, 17, 17) 2.44769px -1.73459px 0px, rgb(17, 17, 17) 2.88051px -0.838247px 0px;
}

.staff_contents h2 b {
    font-size: 72px;
}

.staff_contents .main_img {
/*    margin-top: -69px;*/
    display: block;
    margin: 0 auto -130px;
    width: 100%;
    padding: 93px 0 35px;
    z-index: 2;
    position: inherit;
}

.ballon01 {
    --color: #002590;
    width: 176px;
    height: 176px;
    background: var(--color);
    border-radius: 100%;
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
}

.ballon01::after {
    content: "";
    display: block;
    border-left: transparent 10px solid;
    border-top: 18px solid var(--color);
    border-right: transparent 10px solid;
    position: absolute;
    bottom: 0;
    right: 0;
    transform: translate(-55%, -55%) rotate(-45deg);
}

.ballon01 span {
    line-height: 1.625;
    font-size: 16px;
    font-weight: 600;
    display: block;
    letter-spacing: -0.075em;
}

.ballon01:nth-of-type(1) {
    top: 118px;
    left: 0;
}

.ballon01:nth-of-type(1)::after {
}

.ballon01:nth-of-type(2) {
    --color: #12a73b;
    top: 115px;
    right: 15px;
    width: 180px;
    height: 180px;
}

.ballon01:nth-of-type(2)::after {
    right: auto;
    left: 0;
    transform: translate(58%, -58%) rotate(45deg);
}

.reviewContents {
  position: relative;
  background: right top #f5f5f5 url(img/bg_review.jpg) no-repeat;
  margin: 0;
  padding: 0 20px 60px;
}

.reviewContents .wp-google-place {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 10px auto 30px !important;
}

.reviewContents .wp-google-place .wp-google-left {
    display: inline-table !important;
}

.reviewContents .wp-google-place .wp-google-right {
    display: flex !important;
    width: fit-content !important;
}

.reviewContents .wp-google-place .wp-google-wr a {
    display: none;
}

.reviewContents .wp-gr .wp-google-place.wp-place-center {
  background: transparent !important;
}

.reviewContents .wp-gr .wp-google-place.wp-place-center {
  padding: 5px 0 25px !important;
}

.wp-gr.wpac .wp-google-rating { color: #f8771a !important; }
.wp-gr .wp-star svg path,
.wp-gr .wp-google-place .wp-star svg path { fill: #f8771a !important; }

.wp-gr .wp-google-place.wp-place-center {
  padding: 5px 0 !important;
  display: flex;
  justify-content: center;
  align-items: center;
}
.wp-gr .wp-google-place.wp-place-center .wp-google-left{
  display:inline-block !important;
  vertical-align: middle !important;
  text-align: right !important;
}
.wp-gr .wp-google-left img{
  margin-right:0 !important;
}
.wp-gr .wp-google-place.wp-place-center .wp-google-right{
  display:inline-block !important;
  vertical-align: middle !important;
  text-align: left !important;
  font-size:0;
  width: auto !important;
  position: relative !important;
}
.wp-gr .wp-google-place.wp-place-center .wp-google-right > div{
  display:table-cell !important;
  vertical-align: middle !important;
  line-height: 1.75 !important;
}
.wp-gr.wpac .wp-google-name > a >span{
  margin-left:5px !important;
  margin-right:8px !important;
}
.wp-gr .wp-google-rating {
  color: #eb6100 !important;
  font-size: 25px !important;
  font-weight: 400 !important;
  margin: 0 6px 0 0 !important;
  vertical-align: middle !important;
}
.wp-gr .wp-google-place.wp-place-center .wp-google-right > .wp-google-name + div{
  padding-right:12px !important;
}
.wp-gr .wp-google-right .wp-google-name{
  font-size:14px !important;
}
.wp-gr.wpac a.wp-google-name{
  color: #003fcd !important;  
}
.wp-gr .wp-google-place.wp-place-center .wp-google-right > div.wp-google-powered{
  color: #222 !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  padding-right: 0 !important;
  padding-bottom: 15px !important;
}
.wp-gr .wp-google-place.wp-place-center .wp-google-right > div.wp-google-powered + div.wp-google-powered{
  padding-right:0 !important;
  padding-top: 3px !important;
  display: block !important;
  width: fit-content !important;
  position: absolute !important;
  right: 0 !important;
  bottom: 3px !important;
  margin: auto !important;
  padding: 0 !important;
  transform: scale(0.75) translateY(30%);
}
.wp-gr .wp-google-powered img{
  max-width:96px !important;
}

.wp-gr .wp-google-content-inner{
  padding:7px 7px !important;
  background:#FFFFFF !important;
}
.wp-gr .wp-google-reviews{
  margin-top:0 !important;
  padding:15px 30px 15px 8px !important;
  background:#FFFFFF !important;
  max-height:300px !important;
  min-height:auto !important;
  overflow: auto;
  scrollbar-width: thin;
  scrollbar-color: #000000 #eaeaea;
}
/*スクロールバー全体にCSSを指定できる。*/
.wp-gr .wp-google-reviews::-webkit-scrollbar{
  width: 12px;
}
/*スクロールバーの動かない部分にCSSを指定できる。*/
.wp-gr .wp-google-reviews::-webkit-scrollbar-track{
  background-color: #eaeaea;
  border-radius:5px;
}
/*スクロールバーの動く部分にCSSを指定できる。*/
.wp-gr .wp-google-reviews::-webkit-scrollbar-thumb{
  background-color: #000000;
  border-radius:5px;
}
.wp-gr .wp-google-right{
  padding-top:0px !important;
  padding-left:10px !important;
}
.wp-gr .wp-google-time{
  padding-left:130px !important;
  margin-top:5px !important;
  color:#808080 !important;
  font-size:14px !important;
}
.wp-gr .wp-google-time + div{
  margin-top:5px !important;
}
.wp-gr.wpac .wp-google-review .wp-google-stars {
  position: relative !important;
  top: -28px !important;
}
.wp-gr .wp-google-text {
  margin-left: -120px !important;
  font-size: 14px !important;
  line-height: 1.42 !important;
}

.wp-google-content-inner > a.wp-google-url{
  display:none;
}

.reviewContents .wp-gr .wp-google-text {
  font-size: 14px !important;
}

.voiceContents {
    background: #ff9e58;
    text-align: center;
}

.voiceContents h2.fullWidth .inner {
    position: relative;
    overflow: visible;
}

.voiceContents h2.fullWidth img {
    position: absolute;
    left: 0;
    bottom: -5px;
    display: block;
}

.voiceContents .slider {
    padding: 40px 0 20px;
}

.voiceContents .slider li {
    opacity: 0.5;
    padding: 0 15px;
}

.voiceContents .slider li::before,
.voiceContents .slider li::after {
    display: none;
}

.voiceContents .slider li.slick-active {
    opacity: 1;
}

.voiceContents .slider li > a {
    text-decoration: none;
    display: block;
    width: 240px;
    padding: 20px;
    box-sizing: border-box;
    border-top: 5px solid #e60012;
    text-align: left;
    color: #222222;
    font-weight: 500;
    background: #fff;
    transition: all 0.3s ease;
    box-shadow: rgba(0, 0, 0, 0.2) 0 4px 4px 0;
}

.voiceContents .slider li > a:hover {
    transform: scale(1.02);
    box-shadow: rgba(0, 0, 0, 0.2) 6px 2px 16px 0px, rgba(0, 0, 0, 0.2) -6px -2px 16px 0px;
}

.voiceContents .slider li figure {
    display: block;
    margin: 0;
    padding: 0;
    width: 100%;
}

.slider li figure img {
    width: 100%;
    height: auto;
    object-fit: contain;
}

.voiceContents .slider li h3 {
    font-size: 16px;
    font-weight: 700;
    margin: 15px 0;
}

.voiceContents .slider li h3 b {
    display: block;
    color: #f8771a;
}

.voiceContents .slider li p {
    font-weight: normal;
}

.voiceContents .slider li small {
    font-size: 13px;
    color: #e60012;
    font-weight: bold;
}

.slick-prev,
.slick-next {
  inset: 0 !important;
  margin: auto !important;
  background: rgba(0, 0, 0, 0.5) !important;
  width: 50px !important;
  height: 50px !important;
  z-index: 100;
  text-indent: -1000%;
  overflow: hidden;
  border-radius: 50%;
  transition: all 0.3s ease;
}

.slick-prev:hover,
.slick-next:hover {
  background: var(--sub-color03) !important;
}

.slider {
  --button-set: min(50vw, 630px);
}

.slider .slick-prev {
  transform: translateX(calc((var(--button-set) - 60px) * -1)) !important;
}

.slider .slick-next {
  transform: translateX(calc(var(--button-set) - 60px)) !important;
}

.slider .slick-arrow::before,
.slider .slick-arrow::after {
  position: absolute;
  inset: 0;
  margin: auto;
  display: block;
  content: "";
  width: 20px;
  height: 4px;
  border-radius: 5px;
  background: #fff;
  box-sizing: border-box;
  margin-left: 5px;
}

.slider .slick-prev::before,
.slider .slick-prev::after {
  margin-left: 13px;
}

.slider .slick-next::before,
.slider .slick-next::after {
  margin-left: 16px;
}

.slider .slick-prev::before {
  transform: translateY(6px) rotate(45deg);
}

.slider .slick-prev::after {
  transform: translateY(-6px) rotate(-45deg);
}

.slider .slick-next::before {
  transform: translateY(6px) rotate(135deg);
}

.slider .slick-next::after {
  transform: translateY(-6px) rotate(-135deg);
}

.slider .slick-list {
  margin-top: -20px !important;
  margin-bottom: -20px !important;
  padding-top: 20px !important;
  padding-bottom: 20px !important;
}

.d-none {
  display: none !important;
}
.zsiq_theme1.zsiq_floatmain.siq_bR {
    bottom: 100px;
}