@charset "UTF-8";

/* ---------------------------------------------------------------------------
  ★共通
--------------------------------------------------------------------------- */

html {
    font-size: 62.5%;
    margin-top: 0;
}
body{
    font-size: 1.8rem;
}

object {
    pointer-events: none;
}

.sp {
    display: none !important;
}

a {
    text-decoration: none;
    -webkit-transition: 0.3s;
    transition: 0.3s;
}

.img_r {
    overflow: hidden;
}

.img_r>img {
    float: right;
    width: 33%;
    margin-left: 15px;
    margin-bottom: 15px;
}

a:hover{opacity: 0.7;}
a.to_detail05:hover{opacity: 0.9;}

/* ---------------------------------------------------------------------------
  ★BASE
--------------------------------------------------------------------------- */
a.to_detail{
    width: 300px;
    height: 62px;
    line-height: 58px;
}
a.to_detail02{
    width: 425px;
    height: 50px;
    line-height: 50px
}

a.to_detail span:before,
a.to_detail02 span:before,
a.to_detail03 span:before {
    width: 16px;
    height: 16px;
    right: -1rem;
}
a.to_detail03 {
    width: 197px;
    height: 45px;
    line-height: 42px;
}
a.to_detail05{
    width: 380px;
    height: 85px;
    font-size: 2.2rem;
    line-height: 2.7rem;
    padding-top: 1rem;
}
a.to_detail05 span.wrap:before {
    width: 16px;
    height: 16px;
    right: 1.5rem;
    top: 65%;
}
a.to_detail05 span.wrap{
    padding-right: 3rem;
}
a.to_detail05 span.sm{
    font-size: 1.6rem;
}

a.anchor01 {
  padding-top: 190px;
  margin-top: -190px;
}
a.anchor02 {
  padding-top: 140px;
  margin-top: -140px;
}


/* ---------------------------------------------------------------------------
  ★header
--------------------------------------------------------------------------- */
#header {
  height: 122px;
}
#contents{
}
.header__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin: 0 auto;
    max-width: 1200px;
    padding: 0 1rem;
}

.header__logo {
    display: block;
    padding-top: 3.8rem;
    position: relative;
    width: 25.6rem;
}
.header__right{
    position: relative;
    flex: 1;
}
.header__logoWrap{
    gap: 1rem;
    margin-right: 1rem;
}
ul.header__logoWrap li{
    width: 70px;
}
ul.header__logoWrap li img{
    width: 100%;
}
.header__bnWrap{
    position: absolute;
    top: 3px;
    right: 0;
    gap: 1rem;
}
a.header__bn{
    font-size: 1.4rem;
    width: 190px;
    height: 40px;
    line-height: 38px;
    margin-top: 1.8rem;
}
a.header__bn span{
    padding-left: 2.5rem;
}
a.header__recruit span:before{
    width: 18px;
    height: 23px;
}
a.header__contact span:before{
    width: 20px;
    height: 14px;
}


/* =======================================
  nav
========================================== */
.navi__menu {
    gap: 2rem;
    margin-top: 7.3rem;
    justify-content: end;
}
ul.navi__menu li a,
ul.navi__menu li span.noLink{
    font-size: 1.6rem;
}
.navi__menu-item{
    position: relative;
}
ul.navi__child{
    position: absolute;
    top: 3rem;
    left: 50%;
    transform: translateX(-50%);
    width: max-content;
    z-index: 3;

    opacity: 0;
    visibility: hidden;
    transition: opacity 0.5s ease, visibility 0.5s ease;
}

ul.navi__menu li:hover ul.navi__child {
    opacity: 1;
    visibility: visible;
}
ul.navi__child{
    background: rgba(0, 0, 0, .8);
    padding: 0.5rem 0;
}
ul.navi__child li {
    position: relative;
}
ul.child01 li{
    width: 200px;
}
ul.child02 li{
    width: 220px;
}
ul.child03 li{
    width: 205px;
}
/*.navi__child a {
    gap: 5px;
    gap: 0.5rem;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    color: #222728;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 5px 15px;
    width: 100%;
}*/
ul.navi__child li a {
    gap: 0.5rem;
    padding: 2px 15px;
    color: #fff;
    width: 100%;
    font-size: 1.5rem;
    font-weight: 400;
    gap: 0.7rem;
    display: flex;
    align-items: center;
    letter-spacing: 0.05em;
    width: 100%;
    transition: 0.5s;
    transition-property: opacity;
}
ul.navi__child li a::before {
    background-color: var(--main-red);
    content: "";
    display: block;
    height: 2px;
    width: 0.6rem;
}

ul.navi__child li a.l02{
    line-height: 2.2rem;
}
ul.navi__child li a.l02::before{
    position: relative;
    top: -10px;

}

@media screen and (max-width: 1199px) {
    .header__logo{
        width: 22vw;
    }
    a.header__contact{
        /*width: 13vw;*/
        font-size: 1.3vw;
    }
    ul.navi__menu li a,
    ul.navi__menu li span.noLink{
        font-size: 1.3vw;
    }
    ul.navi__child li a{
        font-size: 1.3vw;
    }
    /*ul.child01 li{
        width: 10vw;
    }
    ul.child02 li{
        width: 17.5vw;
    }*/
}

.header__trigger {
    cursor: pointer;
    display: none;
}

/* ---------------------------------------------------------------------------
  ★TOTOP
--------------------------------------------------------------------------- */
#totop {
  position: fixed;
  bottom: 21rem;
  right: 0;
  width: 46px;
  height: 142px;
  display: none;
}




/* ---------------------------------------------------------------------------
  ★トップページ
--------------------------------------------------------------------------- */
.top_img{
    background:url(../img/topimg_pc.webp) no-repeat;
    background-size: 100%;
    background-position: center top;
    height: 56.3vw;
    width: 100%;
    margin-top: 122px;
    position: relative;
}
.top_img:before{
    height: 100%;
}
.top_img .imgBox{
  width: 210px;
  height: 210px;   
}
.top_txt{
    width: 465px;
  left: 50%;
  transform: translateX(-50%);
}
.top_txt_in{
  text-align: center;
 }
.top_txt_in h2{
    font-size: 3.8rem;
    line-height: 5.2rem;
    padding: 11.5vw 2rem 4rem 2rem;
}
.top_txt_in h2 span{
    display: inline-block;
    padding-left: 0.5rem;
}
.top_txt_in .txtBox{
    background: rgba(255,255,255,0.8);
    font-size: 1.8rem;
    line-height: 3.2rem;
    padding: 2rem 2rem 0 2rem;
}
@media screen and (max-width: 1330px) {
    .top_txt_in h2{
        padding: 9vw 2rem 4rem 2rem;
    }
}
@media screen and (max-width: 1200px) {
    .top_txt_in h2{
        padding: 7vw 2rem 4rem 2rem;
    }
    .top_txt_in .txtBox{
        padding: 1.5rem 2rem 0 2rem;
    }
}
@media screen and (max-width: 1130px) {
    .top_txt_in h2{
        padding: 5vw 2rem 2vw 2rem;
    }
    .top_txt_in .txtBox{
        padding: 1vw 2rem 0 2rem;
    }
}
@media screen and (max-width: 999px) {
    .top_txt_in h2{
        padding: 3vw 2rem 2vw 2rem;
    }
}

.topBox_out{
    padding-bottom: 8rem;
}
.topBox_txt{
    position: relative;
    top: -5rem;
    text-align: center;
    margin-bottom: 5rem;
}
#home .topBox h3{
    font-size: 3.6rem;
    margin-bottom: 3rem;
}
.topServiceList{
    gap: 8rem 0;
    margin-bottom: 5rem;
}
.topServiceList a{
    width: calc(25.5% - 5rem);
    padding: 2rem;
    position: relative;
    height: 255px;
}
.topServiceList a .imgBox{
    top: -4.5rem;
}
.topServiceList p{
    font-size: 1.6rem;
    padding-bottom: 1rem;
    bottom: -19.5rem;
}
@media screen and (max-width: 1250px) {
    .topServiceList a{
        width: calc(25.5% - 3.5rem);
        height: 20.5vw;
    }
    .topServiceList .imgBox{
        height: 20.5vw;
    }
    .topServiceList .imgBox img{
        height: 100%;
    }
}

.topBox_txt_02{
    text-align: center;
    margin-bottom: 1rem;
}

.to_detailBox_top{
    margin: 0 auto ;
    width: 650px;
}
#home .to_detailBox_top,
#HighPressure .to_detailBox_top{
    position: relative;
    bottom: 3rem;
}

/* -- topResponse ---------------*/
.topResponse_out{
    margin-top: 5rem;
    padding: 8rem 0 0 0;
}
.topResponse h3{
    font-size: 3.2rem;
    text-align: center;
    margin-bottom: 3rem;
}
.topResponse ul{
    margin-bottom: 4rem;
}
.topResponse ul li{
    width: calc(25.5% - 3rem);
}
.topResponse ul li .txtBox{
    font-size: 1.8rem;
    padding: 0.2rem;
}
.topResponse ul li .imgBox{
    height: 457px;
}
.topResponse ul li p{
    line-height: 2.7rem;
    margin-top: 1.5rem;
    text-align: center;
}
.topResponse .to_detailBox{
    bottom: -3rem;
    position: relative;
}
@media screen and (max-width: 1150px) {
    .topResponse ul li p{
        font-size: 1.5vw;
        line-height: 2.3vw;
        margin-top: 1rem;
    }
}

/* -- topAbout ---------------*/
.topAbout{
    background-size: 590px;
    padding: 4rem 0 0 0;
    margin-top: 10rem;
}
.topAbout h3{
    font-size: 3.2rem;
    margin-bottom: 3rem;
}
.topAbout .txtBox p span{
    font-size: 2.6rem;
    margin-bottom: 1rem;
}
.topAbout .bnBox{
    gap: 1.5rem;
    margin-top: 4rem;
}
@media screen and (min-width: 1601px) {
    .topAbout .bnBox{
        max-width: 1600px;
        width: 96%;
        margin: 4rem auto 0 auto;
    }
}
.topAbout .bnBox a.bn:nth-child(-n+4){
    width: calc(50% - 0.8rem);
    height: 276px;
}
.topAbout .bnBox .bn:last-child{
    width: 100%;
    height: 340px;
}
.topAbout .bnBox .bn .tit{
    font-size: 2.4rem;
    width: 141px;
    height: 141px;
}
.topAbout .bnBox a.bn:first-child .tit,
.topAbout .bnBox a.bn:nth-child(3) .tit,
.topAbout .bnBox a.bn:nth-child(4) .tit,
.topAbout .bnBox .bn .tit{
    line-height: 141px;
}
.topAbout .bnBox a.bn:nth-child(2) .tit{
    line-height: 3.5rem;
    padding-top: 3.1rem;
}
.topAbout .bnBox a.bn:nth-child(-n+4) .tit{
    margin: 6.5rem 0 0 10rem;
}
.topAbout .bnBox .bn .tit{
    margin: 6.5rem 4rem 0 10rem;
}
.topAbout .bnBox .bn p{
    font-size: 2rem;
    padding-top: 10rem;
}

@media screen and (max-width: 1200px) {
    .topAbout .bnBox a.bn:first-child,
    .topAbout .bnBox a.bn:nth-child(2),
    .topAbout .bnBox a.bn:nth-child(3),
    .topAbout .bnBox a.bn:nth-child(4),
    .topAbout .bnBox .bn{
        background-position: center;
    }
    .topAbout .bnBox a.bn:nth-child(-n+4) .tit{
        margin: 6.5rem 0 0 6rem;
    }
    .topAbout .bnBox .bn .tit{
        margin: 6.5rem 4rem 0 6rem;
    }
}

.topAbout a.to_detail02{
    margin: 3rem 10rem 0 auto;
    line-height: 49px;
}
.topAbout a.to_detail02 span:before{
    top: 55%;
}

/* -- topInfo ---------------*/
.topInfo_out{
    padding: 10rem 0 0 0;
}
.topInfo{
  padding: 2rem 0;
  margin-bottom: 2rem;
}
.cateBox{
    margin-bottom: 2rem;
}
.cateBox a{
    width:calc(25% - 1rem);
    padding: 1rem 0;
    font-size: 1.6rem;
}
ul.infoList{
    width: 90%;
    margin: 3.5rem auto 2rem auto;
}

ul.infoList li a {
    padding: 2rem;
}
ul.infoList li span.day{
    display: inline-block;
    margin-right: 2rem;
}
ul.infoList li span.cate{
    display: inline-block;
    margin-right: 0.5rem;
  height: 2.4rem; /* font-sizeの2倍 */
    line-height: 2.2rem; /* heightと同じ */
    padding: 0 0.5rem;
}
ul.infoList li span.news-title{
    margin-left: 1.5rem;
}
.topInfo_out a.to_detail{
    bottom: -3rem;
}


/* -- topRecruit ---------------*/
a.topRecruit{
    background:url(../img/topRecruit.webp) no-repeat;
    background-size: 100%;
    background-position: center top;
    height: 450px;
    margin-top: 90px;
    position: relative;
}
@media screen and (max-width: 1199px) {
    a.topRecruit{
        height: 36vw;
    }
}


/* -- topBanner ---------------*/
.topBanner{
}
ul.slick01{
    margin: 7rem 4rem 0 4rem;
}
ul.slick01 li{
    margin: 0 2rem;
}

/* -- topBanner_bt ---------------*/
.topBanner_bt{
    margin-top: 8rem;
}
.topBanner_bt .Box{
    width: 50%;
    height: 310px;
    padding-top: 5rem;
}
.topBanner_bt .Box h3{
    font-size: 3rem;
    padding-left: 4.5rem;
    margin: 1.5rem 0 3.5rem 0;
}
.topBanner_bt .Box01::after {
  right: 0;
  top: 0;
  bottom: 0;
  width: 1px;   
}
.topBanner_bt .Box01 h3:before{
    width: 29px;
    height: 35px;
}
.topBanner_bt .Box02 h3:before{
    width: 36px;
    height: 36px;
}
.topBanner_bt p{
    line-height: 3rem;
}



/* -- footer  ---------------*/
footer{
  padding: 6rem 0 4rem 0;
}
.footer_inner{
  gap:4.7rem;
}
a.footer_logo{
  width: 280px;
  margin-bottom: 2.2rem;
}
.footer_left address{
  font-size: 1.6rem;
  line-height: 1.2rem;
}
.footer_left address span{
    margin-right: 1rem;
}
.footer_left a.footer_tel span{
    font-size: 2.6rem;
    margin-right: 1rem;
}
.footer_left a.footer_tel{
    font-size: 1.3rem;
}
.snsBox{
    gap: 2rem;
}
.snsBox a {
  width: 44px;
}
.footer_nav-wrap{
  gap:3.5rem;
}
.footer_li-item{
  margin-bottom: 2rem;
}
.footer__link{
  font-size: 1.5rem;
}
.footer__copy{
    text-align: right;
    margin-top: 4rem;
}



/* ---------------------------------------------------------------------------
  下層ページ
--------------------------------------------------------------------------- */
.subTop{
    height: 200px;
    width: 100%;
    margin-top: 122px;
}
.subTop h2{
    font-size: 3.6rem;
    padding-top: 7rem;
}
#sub h3{
    font-size: 3rem;
    line-height: 4.5rem;
}
ul.pankuzu{
    margin: 2rem auto 5rem auto;
}
.bor_bt{
  margin-bottom: 3rem;
  padding-bottom: 3rem;
}


/* ---------------------------------------------------------------------------
  会社案内
--------------------------------------------------------------------------- */
#company .topBox,
#considerationAll .topBox{
    height: 300px;
    padding: 10rem 0;
}
#company .topBox h3,
#considerationAll .topBox h3{
    margin-bottom: 0.5rem;
}

#companyAll .link_wrap,
#considerationAll .link_wrap{
    justify-content: center;
    padding: 0 0 7rem 0;
}
#companyAll .link_wrap a,
#considerationAll .link_wrap a{
    padding: 0 2rem;
}
#company .link_wrap,
#considerationAll .link_wrap{
    padding-top: 4rem;
}
.messageBox h3{
    margin-bottom: 3rem;
}
.messageBox .imgBox{
    width: 45%;
    margin-right: 4rem;
}
.messageBox .txtBox{
    flex: 1;
}
.messageBox h4{
    font-size: 3.6rem;
}
.message_sign{
    margin-top: 40px;
}
.message_sign img{
  width: 180px;
}
.messageBox .flex_wrap{
    align-items: center;
    margin-bottom: 4rem;
}
.messageBox p.txt{
    width: 70%;
    max-width: 800px;
    margin: 0 auto;
}

@media screen and (max-width: 1120px) {
    .messageBox .imgBox{
        width: 38vw;
    }
    .messageBox h4{
        font-size: 3.5vw;
    }
}

#company ul li{
}
.philosophy .inner_1100{
    padding: 3.5rem 0 4rem 0;
    margin: 8rem auto 4rem auto;
}
.philosophy h3{
    margin-bottom: 2.5rem;
}
.philosophy .imgBox{
    width: 600px;
    margin: 0 auto;
}

#company .Box_out{
    padding: 3rem 0 6rem 0;
    margin-top: 3rem;
}
#company .Box_w{
    padding: 2rem 4rem 3.5rem 4rem;
}
#company .Box_w h3{
    margin-bottom: 2.5rem;
}
#company .Box_w ul li:not(:last-child) {
    margin-bottom: 2rem;
    padding-bottom: 2rem;
}
#company .Box_out ul li{
  padding-left: 1.8rem;
}
#company .Box_out ul li::before{
    top: 11px;
}

/* ---------------------------------------------------------------------------
  会社概要
--------------------------------------------------------------------------- */
#overview{
    margin-bottom: 10rem;
}
#overview h3{
    margin-bottom: 2.5rem;
}
#overview .profile table.c-table th{
    width: 130px;
}
#overview .qualification table.c-table th{
    width: 170px;
}
table.c-table th,table.c-table td{
  font-size: 1.6rem;
}
table.c-table th{
  padding: 32px 40px 32px 2px;
}
table.c-table td{
  padding: 32px 10px 32px 2px;
}

.whiteBox_out{
    padding: 0 0 6rem 0;
}
.whiteBox{
    padding: 2rem 4rem 4rem 4rem;
}
#overview .Mgt{
    margin-top: 8rem;
}
.access{
    padding: 3rem 4rem 1rem 4rem;
}
.access .flex_wrap{
    justify-content: center;
    align-items: center;
}
.access .imgBox{
    width: 45%;
    margin-right: 4rem;
}
.access .tit{
    font-size: 2.2rem;
    margin-bottom: 1rem;
}
#overview iframe{
    width: 100%;
    height: 400px;
    margin: 3rem 0;
}

/* ---------------------------------------------------------------------------
  沿革
--------------------------------------------------------------------------- */
#history{
    margin-bottom: 10rem;
}
#history .topBox h3{
    line-height: 3rem;
}
#history .topBox h3 span{
    font-size: 1.7rem;
    margin-top: 1rem;
}
#history .historyBox{
    margin-top: 4rem;
}
.o_08 dl dt{
    font-size: 2rem;
    width: 48%;
    padding-right: 30px;
    line-height: 3rem;
}
.o_08 dl dt.dtAjust{
    margin-bottom: 5rem;
}
.o_08 dl dt span.year{
    font-size: 1.8rem;
    width: 100px;
    margin-bottom: 1rem;
}
.o_08 dl dt span.year::after {
  width: 250px;
  top: calc(50% - 1px);
  left: calc(50% + 65px);
}
.o_08 dl dt span.txt{
    font-size: 1.6rem;
    margin-top: 0.5rem;
    line-height: 2.6rem;
}
.o_08 dl dt span.sm{
    font-size: 1.4rem;
}
.o_08 dl dt span.sm02{
    font-size: 1.5rem;
    line-height: 2.2rem;
    display: block;
}
.o_08 dl dt span.Mgb{
    margin-bottom: 1rem;
}
.o_08 dl dt span.txtAdjust{
    display: block;
    line-height: 3rem;
    margin: 1.2rem 0;
}
.o_08 dl dt span.txt02{
    display: block;
    margin-top: 1.5rem;
}
.o_08 dl dd{
  float: right;
  border-left: solid 1px var(--main-red);
  position: relative;
    width: 52%;
    padding: 0 0 60px 60px;
}
.o_08 dl dd.ddAjust{
    padding: 0 0 30px 60px
}
.o_08 dl dd .imgBox{
    padding-top: 1rem;
}
.o_08 dl dd .imgBox .imgMgt{
    padding-top: 1.5rem;
}


/* ---------------------------------------------------------------------------
  MVV
--------------------------------------------------------------------------- */
#mvv{
    margin-bottom: 10rem;
}
#mvv .topBox{
    padding-bottom: 4rem;
}
#mvv .topBox .imgBox{
    background: url(../img/figure_mvv.webp) no-repeat;
        background-size: 100%;
        background-position: center top;
        height: 550px;
    width: 100%;
    margin: 5rem auto 3rem auto;
}
#mvv .Mgb{
    margin-bottom: 10rem;
}
#mvv h3{
    margin-bottom: 2rem;
}
#mvv .mission,
#mvv .vision,
#mvv .value,
#mvv .wh{
    background-size: 590px;
        padding: 4rem 0 0 0;
        margin-top: 10rem;
}
#mvv ul.ul_01{
    margin: 1rem 0;
}
#mvv ul.ul_01 li{
    padding-left: 1.5rem;
}
#mvv .flex_wrap{
    align-items: center;
}
#mvv .imgBox{
    width: 500px;
    margin-right: 3rem;
}
#mvv .vision .fiveBox{
    border-top: 1px solid var(--main-red);
    border-bottom: 1px solid var(--main-red);
    padding: 2rem 0;
    margin: 4rem auto;
}
#mvv .vision h4,
#mvv .value h4{
    font-size: 2.4rem;
    margin-bottom: 1rem;
}
#mvv .vision .ul_wrap ul li:not(:last-child) {
    margin-bottom: 1rem;
}
#mvv .vision .ul_wrap ul li span{
    display: inline-block;
    margin-right: 1rem;
}

#mvv .wh h3{
    margin-bottom: 5rem;
}
#mvv .wh h4{
    font-size: 3.5rem;
    line-height: 3.5rem;
    margin-bottom: 1rem;
}
#mvv .wh h4 span{
    font-size: 1.7rem;
    display: block;
}
#mvv .wh p{
    text-align: center;
}
#mvv .wh .Mgb{
    margin-bottom: 4rem;
}



/* ---------------------------------------------------------------------------
  サスティナビリティへの取り組み
--------------------------------------------------------------------------- */
#esg{
    margin-bottom: 10rem;
}
#esg .topBox{
    margin-bottom: 6rem;
    padding-bottom: 5rem;
}
#esg .topBox .flex_wrap{
    align-items: center;
}
#esg .topBox h3{
    font-size: 3.2rem;
    margin-bottom: 3rem;
}
#esg .topBox h4{
    font-size: 2.6rem;
}
#esg .topBox .txtBox{
    flex: 1;
    margin-right: 4rem;
}
#esg .topBox .imgBox{
    width: 50%;
}
#esg .titBox{
    width: 560px;
    margin: 0 auto;
    text-align: center;
}
#esg .titBox .imgBox{
    height: 100px;
    margin: 0 auto 2rem auto;
}
#esg .Box01 .titBox .imgBox{
    width: 340px;
}
#esg .Box02 .titBox .imgBox{
    width: 200px;
}
#esg .Box03 .titBox .imgBox{
    width: 320px;
}
#esg .BoxAll ul {
    margin-top: 3rem;
    gap: 0 3rem;
}
#esg .BoxAll ul li .imgBox{
    width: 267px;
    height: 267px;
}
#esg .BoxAll ul li p{
    font-size: 2.2rem;
    margin-top: 0.8rem;
}
#esg .BoxAll .Box_in{
    margin-top: 4rem;
}
#esg .BoxAll .Box_in .imgBox{
    width: 40%;
    margin: 1rem 3rem 0 0;
}
#esg .BoxAll .Box_in .txtBox{
    flex: 1;
}
#esg .BoxAll .Box_in .txtBox p span{
    font-size: 2.5rem;
    margin-bottom: 0.5rem;
}
#esg .MgtBox{
    margin-top: 5rem;
}
#esg .Box01,#esg .Box02{
    margin-bottom: 5rem;
    padding-bottom: 5rem;
}


/* ---------------------------------------------------------------------------
  サービス案内
--------------------------------------------------------------------------- */
#services{
    margin-bottom: 10rem;
}
#services .topBox_out{
    margin-top: 8rem;
    padding-bottom: 2rem;
}
#services .topBox01 h3{
    margin-bottom: 2rem;
}
ul.topServiceList{
    gap: 8rem 0;
    margin-bottom: 5rem;
}
ul.topServiceList li{
    width: calc(25.5% - 5rem);
    padding: 2rem;
    position: relative;
    height: 255px;
}
ul.topServiceList li .imgBox{
    top: -4.5rem;
}
ul.topServiceList p{
    font-size: 1.6rem;
    padding-bottom: 1rem;
    bottom: -19.5rem;
}
@media screen and (max-width: 1250px) {
    ul.topServiceList li{
        width: calc(25.5% - 3.5rem);
        height: 20.5vw;
    }
    .topServiceList .imgBox{
        height: 20.5vw;
    }
    .topServiceList .imgBox img{
        height: 100%;
    }
}
@media screen and (max-width: 1099px) {
    .topServiceList p {
        font-size: 1.4vw;
    }
}
#sub .Box{
    padding: 4rem 0 5rem 0;
}
#services .Box .Boxin{
    margin-top: 1rem;
}
#services .Box .Boxin .imgBox{
    width: 50%;
    margin-right: 2.5rem;
}
#services .Box .Boxin .txtBox{
    flex: 1;
}
#services .Box .Boxin a.to_detail{
    margin: 3rem 0 0 auto;
}
#services .Box01 h3 span{
    font-size: 1.8rem;
    display: inline-block;
    margin-right: 1rem;
    padding-bottom: 0.7rem;
    vertical-align: middle;
}
#services .Box01 .Boxin{
    padding: 3rem;
}
#services .Box02 .imgBox_top{
    width: 50px;
    margin: 2rem auto 0 auto;
}
#services .Box02 h3{
    margin: 1rem 0 3rem 0;
}
/*#services .Box02 h3{
    width: 500px;
    margin: 4rem auto;
    height: 70px;
    line-height: 63px;
}*/
#services .Box02 h3::after {
  border-left: 20px solid transparent; /* 左側の辺 */
  border-right: 20px solid transparent; /* 右側の辺 */
  border-top: 20px solid #222; /* 上側の辺に色を付ける */
}
#services .Box02 h4{
    font-size: 2.5rem;
    margin-top: 1rem;
}
#services .Box02 ul {
    margin-top: 2rem;
    gap: 0 3rem;
}
#services .Box02 ul li .imgBox{
    width: 250px;
    height: 250px;
}

@media screen and (max-width: 1200px) {
    #services .Box02 ul li .imgBox{
        width: 20vw;
        height: 20vw;
    }
}
@media screen and (max-width: 950px) {
    #services .Box02 ul li .imgBox{
        width: 18vw;
        height: 18vw;
    }
}

#services .Box02 ul li p{
    line-height: 2.5rem;
    margin-top: 0.8rem;
}
#services .Box02 .breakerBox{
    padding: 1rem 3rem 3rem 3rem;
}

#services .Box03{
    padding: 0 0 6rem 0;
}
#services .Box03 h3 span.case{
    font-size: 2.2rem;
}
#services .Box03 h3 span.number{
    font-size: 1.8rem;
    line-height: 1.35em;
    width: 27px;
  height: 27px;
  margin: 0 0.3rem 0 0.5rem;
  top: -0.25rem;
}
#services .Box03 .tit_02{
    font-size: 2rem;
}
#services .Box03 .tit_01,
#services .Box03 .tit_02{
            width: 400px;
        margin: 3rem auto 4rem auto;
        height: 50px;
        line-height: 47px;
}
#services .Box03 .tit_01::after{
    border-left: 15px solid transparent;
    border-right: 15px solid transparent;
    border-top: 15px solid #222;
}
#services .Box03 .Box_in01{
    margin-bottom: 4rem;
    padding-bottom: 5rem;
}
#services .Box03 .flex_wrap{
    margin-bottom: 3rem;
}
#services .Box03 .Box_in01 .imgBox{
    width: 400px;
    margin-right: 3rem;
}

#services .Box03 .Box_in01 ul li:not(:last-child) {
    margin-bottom: 2.5rem;
}
#services .Box03 ul li p{
    font-size: 1.6rem;
    line-height: 2.5rem;
}
#services .Box03 .Box_in01 ul li span{
    font-size: 1.8rem;
    padding: 0.3rem 1rem 0.5rem 1rem;
    margin-bottom: 1rem;
    width: 190px;
}

#services .Box03 .answerBox{
    padding: 1rem 2rem 1.5rem 2rem;
    font-size: 2.8rem;
    line-height: 3.8rem;
    margin-top: 4rem;
}

#services .Box03 .Box_in02 h3 span.sm{
    font-size: 1.6rem;
    line-height: 3rem;
}
#services .Box03 .Box_in02 .flex_wrap{
    width: 750px;
    margin: 0 auto;
    align-items: center;
}
#services .Box03 .Box_in02 .txtBox{
    width: 60%;
    font-size: 2rem;
    text-align: center;
}
#services .Box03 .Box_in02 ul{
    width: 35%;
}
#services .Box03 .Box_in02 ul li:not(:last-child) {
    margin-bottom: 1rem;
}
#services .Box03 .Box_in02 .answerBox {
    padding: 0.7rem 2rem 2.6rem 2rem;
    line-height: 3.2rem;
    font-size: 3.5rem;
}
#services .Box03 .Box_in02 .answerBox span{
    font-size: 1.8rem;
}
#services .Box03 .Box_in02 .answer_txt{
    margin-top: 1rem;
    text-align: center;
}
#services .Box03 .Box_in02 .txtBox span::before,
#services .Box03 .Box_in02 .txtBox span::after{
    width: 25px;
    height: 20px;
    top: -5px;
}
#services .Box03 .Box_in02 .txtBox span::before {
    left: -40px;
}
#services .Box03 .Box_in02 .txtBox span::after {
    right: -40px;
}


#services .Box04{
    padding: 4rem;
    margin: 6rem auto 8rem auto;
}
#services .Box04 h3{
    margin-bottom: 2rem;
}
#services .Box04 .flex_wrap{
    margin-top: 3rem;
}
#services .Box04 ul li{
    margin-bottom: 2rem;
}
#services .Box04 ul li:before{
  width: 30px;
  height: 30px;
  margin-top: 2px; 
}
#services .Box04 ul li:nth-child(2):before{
    margin-top: 15px; 
}
#services .Box04 ul li p{
    font-size: 2rem;
    line-height: 3rem;
    padding-left: 1rem;
}
#services .Box04 .imgBox{
    width: 40%;
    margin-left: 3rem;
}
#services .Box04 .txtBox{
    flex: 1;
}
#services .Box04 a.to_detail03{
    width: 300px;
    height: 62px;
    line-height: 60px;
    margin: 3rem auto 0 auto;
}


/* ---------------------------------------------------------------------------
  サービス下層　共通
--------------------------------------------------------------------------- */
#servicesAll{
}
#servicesAll h3{
    margin-bottom: 2rem;
}
#servicesAll h3 span.sm{
    font-size: 2.8rem;
}
#servicesAll .topBox{
    align-items: center;
}
#servicesAll .topBox .imgBox{
    width: 45%;
    margin-right: 4rem;
}
#servicesAll .MgtBox{
    margin-top: 5rem;
}
.numlistBox_out{
    padding-bottom: 5rem;
}
.numlistBox{
    padding: 0 4rem 4rem 4rem;
}
.numlistBox ul{
    margin-top: 4rem;
}
.numlistBox ul li:not(:last-child){
    margin-bottom: 4rem;
}
.numlistBox .num{
    width: 60px;
    margin-right: 2rem;
    font-size: 2.8rem;
    padding-top: 0.3rem;
}
.numlistBox .txtBox h4{
    font-size: 2.3rem;
    line-height: 3.3rem;
    margin-bottom: 0.8rem;
}
.recomBox ul li{
    margin-bottom: 1.5rem;
}
.recomBox ul li:before{
  width: 25px;
  height: 25px;
  margin-top: 7px; 
}
.recomBox ul li p{
    margin-left: 0.6rem;
}
.ManuBox h3{
    font-size: 2.5rem;
    margin-bottom: 5rem;
}
.ManuBox h3::before{
    width: 8rem;
    bottom: -6rem;
}
.ManuBox ul{
    gap: 3rem 0;
    margin-top: 5rem;
}
.ManuBox ul li{
    width: calc(25% - 3rem);
}
.movieBox{
    padding: 5rem 0 2rem 0;
}
.movie iframe{
    width: 800px;
    height: 450px;
    margin: 0 auto;
    border-top: 1px solid #666;
    border-bottom: 1px solid #666;
}
.baBox .flex_wrap{
    align-items: center;
}
#air .baBox .flex_wrap{
    width: 80%;
    margin: 0 auto;
}
.baBox .imgBox01{
    width: 40%;
    margin-right: 5rem;
}
.baBox .imgBox02{
    width: 53%;
}
.baBox .imgBox01 p{
    font-size: 2.3rem;
}
.baBox .imgBox02 p{
    font-size: 3.2rem;
}
.baBox .imgBox01::before{
  right: -49px;
  top: 30px;
  width: 30px;
  height: 40px;
  clip-path: polygon(0 0, 0 100%, 100% 50%); 
}
a.bn_cases{
    width: 800px;
    margin: 8rem auto;
    padding: 8rem 0 10rem 0;
}
a.bn_cases:before {
    width: 20px;
    height: 20px;
    bottom: 4rem;
}
a.bn_cases .tit{
    font-size: 2.8rem;
    line-height: 4rem;
    margin-bottom: 1rem;
}
a.bn_cases p{
    font-size: 1.6rem;
}
.bn_cases{
    width: 800px;
    height: 315px;
    margin: 8rem auto;
    padding: 12rem 2rem 0 2rem;
}
.bn_cases a{
    margin: 0 auto;
}
.bn_cases p{
    font-size: 1.6rem;
    margin-top: 1rem;
    padding-left: 1rem;
}


.flex_img{
    width: 40%;
    margin-right: 3rem;
}
.flex_1{
    flex: 1;
}



/* ---------------------------------------------------------------------------
  高圧設備工事
--------------------------------------------------------------------------- */

#HighPressure .Box01{
    padding: 0 0 4rem 0;
}
#HighPressure .Box01::after{
    bottom: -5rem;
}
#HighPressure .Box01 .Boxin{
    width: 900px;
    margin: 0 auto;
}
#HighPressure .Box01 h4{
    font-size: 2.5rem;
}
#HighPressure .Box01 h4 span.sm{
    font-size: 1.6rem;
}

#HighPressure .Box02 a.to_detail04{
  width: 800px;
  height: 180px;
  margin: 4rem auto;
  padding: 2rem 5rem;
}
#HighPressure .Box02 a .imgBox{
    width: 140px;
    margin-right: 3rem;
}

#HighPressure .Box02 a .txtBox{
    line-height: 4rem;
    padding-bottom: 1rem;
}
#HighPressure .Box02 a .txtBox span.tit{
    font-size: 3rem;
}
#HighPressure .Box02 a.to_detail04:before{
    width: 30px;
    height: 30px;
    right: 4rem;
    top: 55%;
}
#HighPressure .Box03{
    margin-top: 2rem;
}
#HighPressure .Box05 ul.Box_in01{
    gap: 2rem;
    margin: 3rem 0 4rem 0;
}
#HighPressure .Box05 ul.Box_in01 li{
    width: calc(25% - 2rem);
    padding: 0.7rem 0.8rem 0.8rem 0.8rem;
}
#HighPressure .Box05 ul.Box_in01 li:nth-child(2){
    padding: 0.5rem 0.8rem 0.8rem 0.8rem;
}
#HighPressure .Box05 ul.Box_in01 li:nth-child(5),
#HighPressure .Box05 ul.Box_in01 li:nth-child(6),
#HighPressure .Box05 ul.Box_in01 li:nth-child(8){
    padding: 1.9rem 0.8rem 0.8rem 0.8rem;
}
#HighPressure .Box05 ul.Box_in01 li p{
    font-size: 2rem;
    line-height: 2.5rem;
}
@media screen and (max-width: 1200px) {
    #HighPressure .Box05 ul.Box_in01 li p{
        font-size: 1.8vw;
    }
}
#HighPressure .Box05 ul.Box_in01 li p sup{
    font-size: 1.3rem;
}
#HighPressure .Box05 ul.Box_in02{
    margin-top: 3rem;
}
#HighPressure .Box05 ul.Box_in02 li{
    width: calc(33% - 2rem);
}
#HighPressure .Box05 ul.Box_in02 li p{
    margin-top: 0.5rem;
}
#HighPressure .Box05 .komeBox{
    text-align: center;
    margin-bottom: 3rem;
}
.kome{
    font-size: 1.6rem;
    line-height: 2.5rem;
    margin-top: 3rem;
    text-align: left;
    display: inline-block;
}
#HighPressure .to_detailBox_top{
    width: 800px;
}

#HighPressure .Box07{
    padding: 3rem;
    margin-top: 7rem;
}
#HighPressure .Box07 .flex_wrap{
  align-items: center;
}
#HighPressure .Box07 .imgBox{
    width: 320px;
    margin-right: 3rem;
}
#HighPressure .Box07 .imgBox img{
    width: 320px;
    height: 320px;
}
#HighPressure .Box07 .txtBox .tit{
    font-size: 2.8rem;
    line-height: 4rem;
    margin-bottom: 1rem;
}
#HighPressure .Box07 .txtBox p{
    font-size: 1.6rem;
}
#HighPressure .Box07 p.kome{
    text-align: center;
    display: block;
}

.serviceNewsBox_out{
    padding: 4rem 0 1rem 0;
    margin-bottom: 10rem;
}
.serviceNewsBox_out a.to_detail{
    margin: 0 auto;
    bottom: -4rem;
}
.serviceNewsBox ul{
    margin-top: 3rem;
}
.serviceNewsBox ul li{
   width: calc(33% - 3rem); 
}
.serviceNewsBox ul li .imgBox{
    height: 200px;
}
.serviceNewsBox ul li .txtBox{
    padding: 2rem;
}
.serviceNewsBox ul li .txtBox .flex_wrap{
    gap: 0.5rem;
}
.serviceNewsBox ul li .dayBox{
    margin-bottom: 0.5rem;
    align-items: center;
}
.serviceNewsBox ul li .dayBox span.day{
    font-size: 1.4rem;
}
.serviceNewsBox ul li .dayBox span.cate{
    font-size: 1.3rem;
    line-height: 2rem;
    padding: 0 0.6rem;
    height: 21px;
}
.serviceNewsBox ul li p.justify{
    font-size: 1.6rem;
}



/* ---------------------------------------------------------------------------
  弱電工事
--------------------------------------------------------------------------- */
#servicesAll .topBox{
  margin-bottom: 10rem;
}
#servicesAll .topBox::after{
    background-color: var(--main-red);
    content: "";
    display: block;
    height: 1px;
    left: 50%;
    transform: translateX(-50%);
    position: relative;
    width: 100%;
    bottom: -5rem;   
}
/*#light .topBox,
#light_interior .topBox{
  margin-bottom: 10rem;
}
#HighPressure .topBox::after,
#light .topBox::after,
#light_interior .topBox::after {
    background-color: var(--main-red);
    content: "";
    display: block;
    height: 2px;
    left: 50%;
    transform: translateX(-50%);
    position: relative;
    width: 100%;
    bottom: -5rem;
}*/
#light .MgtBox{
    margin-top: 5rem;
}
.oneStopBox{
    padding: 4rem 0 5rem 0;
}
.oneStopBox ul li .tit{
    line-height: 2.3rem;
    padding: 0.5rem 0 0.7rem 0;
}
.oneStopBox ul li .tit
.oneStopBox ul.Box_in02{
    margin-top: 3rem;
}
.oneStopBox ul li{
    width: calc(33% - 2rem);
}
.oneStopBox ul li p{
    margin-top: 0.5rem;
}
.oneStopBox ul li p{
    line-height: 2.7rem;
    margin-top: 1.5rem;
}
@media screen and (max-width: 1200px) {
    .oneStopBox ul li p{
        font-size: 1.7vw;
    }
}


/* ---------------------------------------------------------------------------
  照明・内装工事
--------------------------------------------------------------------------- */
#light_interior .Box02{
    padding: 4rem 0;
}
#light_interior .oneStopBox ul li{
    width: calc(50% - 2rem);
}
#light_interior .oneStopBox ul li .tit{
    padding: 0.7rem 0.5rem;
}


#light_interior .Box03::after {
    background-color: #ccc;
    content: "";
    display: block;
    height: 2px;
    left: 50%;
    transform: translateX(-50%);
    position: relative;
    width: 100%;
    bottom: -5rem;
}

#light_interior .Box04 .c_table_02 table::before{
  right: -50px;
  top: 0;
  width: 25px;
  height: 40px;
  clip-path: polygon(0 0, 0 100%, 100% 50%); 
}
#light_interior .Box04 .Boxin{
    padding: 2rem 4rem;
    margin-top: 4rem;
}
#light_interior .Box04 h4{
    font-size: 2.2rem;
    margin-bottom: 2rem;
}
.c_table_02 table thead tr th{
    padding: 5px 10px;
    font-size: 1.7rem;
}
.c_table_02 table tbody tr th,
.c_table_02 table tbody tr td {
  padding: 10px;
  font-size: 1.6rem;
}
.c_table_02 table tbody tr td[data-th]:before{
    width: 40%;
}
#light_interior .Box04 .txtBox{
    width: 30%;
    height: 250px;
    font-size: 2.6rem;
    line-height: 3.8rem;;
    margin-left: 7rem;
    padding-top: 9rem;
}
#light_interior .Box04 .flex_wrap{
    align-items: center;
}
#light_interior .kome{
    display: block;
    text-align: center;
}

#light_interior .Box06 ul li{
   width: calc(33.333% - 14px);
  box-sizing: border-box;   
}

#light_interior .to_detailBox_top{
    width: 800px;
    bottom: -5rem;
}
#light_interior .to_detailBox_top a.to_detail{
    width: 380px;
    margin-bottom: 3rem;
}




/* ---------------------------------------------------------------------------
  機械電源工事
--------------------------------------------------------------------------- */
#Mechanical .Box02{
    padding: 3rem 3rem 7rem 3rem;
    margin-top: 5rem;
}
#Mechanical .Box02 .Boxin{
    padding-bottom: 3rem;
    margin-bottom: 3rem;
}
#Mechanical .Box02 .flex_wrap{
    margin: 1rem 0 5.5rem 0;
}
#Mechanical .Box02 .flex_wrap::before {
        bottom: -4rem;
        width: 35px;
        height: 25px;
}
#Mechanical .Box02 .imgBox{
    width: 100px;
    margin-right: 2rem;
}
#Mechanical .Box02 .txtBox{
    font-size: 2rem;
    padding: 1.5rem 2rem;
    height: 90px;
    line-height: 2.8rem;
    margin: 1rem 0 0 0;
}
#Mechanical .Box02 .txtBox::before {
        left: -2rem;
        top: 32%;
        transform: translateY(-50%);
        width: 35px;
        height: 25px;
}
#Mechanical .Box02 h4{
    font-size: 2.5rem;
    margin: 1rem 0;
    padding: 0.5rem;
}

#Mechanical a.to_detail05,
#air a.to_detail05{
    bottom:-4rem;
}


/* ---------------------------------------------------------------------------
  空調設備工事
--------------------------------------------------------------------------- */
#air .Box02 p.tit{
    width: 700px;
    margin: 0 auto 2rem auto;
}
#air .Box03{
    padding: 2rem 4rem 7rem 4rem;
    margin-bottom: 8rem;
}

/* ---------------------------------------------------------------------------
  消防設備工事
--------------------------------------------------------------------------- */
#fire .topBox .Boxin{
  padding: 1rem 1.5rem;
  margin-top: 1.5rem;
}
#fire .topBox .Boxin p{
    font-size: 1.7rem;
    line-height: 2.8rem;
}
#fire .topBox .Boxin p span{
    font-size: 1.8rem;
}
@media screen and (max-width: 1015px) {
    #fire .topBox h3 br{
        display: none;
    }
}

#fire .borBox,
#maintenance .borBox{
    padding: 3rem;
    margin-top: 5rem;
}
#fire .Box02 .flex_wrap{
    margin: 1rem 0 5.5rem 0;
}
#fire .Box02 .flex_wrap::before {
        bottom: -4rem;
        width: 35px;
        height: 25px;
}
#fire .Box02 .imgBox{
    width: 100px;
    margin-right: 2rem;
}
#fire .Box02 .txtBox{
    font-size: 2rem;
    padding: 1.5rem 2rem;
    height: 60px;
    line-height: 2.8rem;
    margin: 1rem 0 0 0;
}
#fire .Box02 .txtBox::before {
        left: -2rem;
        top: 40%;
        transform: translateY(-50%);
        width: 35px;
        height: 25px;
}
#fire .Box02 h4{
    font-size: 2.5rem;
    margin: 1rem 0;
    padding: 0.5rem;
}

/* ---------------------------------------------------------------------------
  保守メンテナンス
--------------------------------------------------------------------------- */
#maintenance .Box02 .Boxin01{
    padding: 1.5rem 2rem;
    margin: 2rem 0 5rem 0;
}
#maintenance .Box02 .Boxin01::before{
    bottom: -4rem;
    width: 35px;
    height: 25px;
}
#maintenance .Box02 .Boxin01 h4{
    padding: 0.3rem 1rem;
    margin-bottom: 0.5rem;
}
#maintenance .Box02 .Boxin h4{
    font-size: 2.2rem;
}
#maintenance .Box02 .Boxin p{
    margin-top: 0.8rem;
    line-height: 3rem;
}
#maintenance .Box02 .Boxin01 p{
    margin-top: 0.8rem;
}

#maintenance .Box02 .maru{
    width: 100px;
    height: 100px;
    top: -2rem;
    left: 3rem;
    font-size: 2.2rem;
    padding-top: 2.8rem;
}
#maintenance .Box02 .ul_wrap{
    text-align: center;
    padding: 1rem 0;
    margin: 1rem 0;
}
#maintenance .Box02 .Boxin ul{
    text-align: left;
    display: inline-block;
}
#maintenance .Box02 .Boxin ul li{
    font-size: 2.2rem;
    padding-left: 2rem;
}
#maintenance .Box02 .flex_wrap{
    margin-top: 2rem;
}
#maintenance .Box02 .flex_wrap .imgBox{
    width: calc(34% - 1.5rem);
}

/* ---------------------------------------------------------------------------
  助成金・補助金活用支援
--------------------------------------------------------------------------- */
#grant .Box01 h4 span.sm{
    font-size: 1.8rem;
    display: inline-block;
    height: 38px;
    vertical-align: middle;
}
#grant .Box02 h4{
    font-size: 2.4rem;
}
#grant .Box02 .imgBox{
    width: 350px;
    margin: 1rem 3rem 0 0;
}
#grant .Box02 .txtBoxin01{
    text-align: center;
}
#grant .Box02 .txtBoxin01 p{
    text-align: left;
    display: inline-block;
    margin: 0.5rem 0 1rem 0;
    line-height: 3rem;
}
#grant .Box02 .txtBoxin02{
    width: 70%;
    height: 60px;
    font-size: 1.8rem;
    line-height: 3rem;
    margin: 1rem auto 3rem auto;
    padding: 0.5rem 1rem 0 1rem;
}
#grant .Box02 .txtBoxin02::before{
    bottom: -24.8px;
    height: 25px;
    z-index: -1;
}
#grant .Box02 .txtBoxin02 span{
    font-size: 2.5rem;
}
#grant .Box02 .txtBox p.price span.big{
    font-size: 2.5rem;
    padding-bottom: 0.2rem;
}

#grant .Box03{
    padding: 3rem;
    margin-top: 3rem;
}
#grant .Box03 h3{
    line-height: 3.5rem;
    margin-bottom: 3rem;
}
#grant .Box03 h3 span.sm{
    font-size: 1.8rem;
    display: block;

}
#grant .Box03 .Boxin_out{
    margin: 3rem 0;
}
#grant .Box03 .Boxin .Mgb{
    margin-bottom: 1rem;
}
#grant .Box03 .Boxin .tit{
    font-size: 1.6rem;
    line-height: 2.2rem;
    height: 30px;
    padding: 0.3rem 1rem;
    margin: 0.2rem 1rem 0 0;
}
#grant .Box03 .Boxin .bold{
    font-size: 1.9rem;
}

#grant .Box03 .Boxin02{
    padding: 1.5rem 3rem 2rem 3rem;
}
#grant .Box03 .Boxin02 h4{
    font-size: 2.2rem;
    margin-bottom: 1rem;
}
#grant .Box03 .Mgb02{
    margin-bottom: 2rem;
}

#grant .Box03 .Boxin03{
    margin-top: 3rem;
}
#grant .Box03 .Boxin03 .imgBox{
    width: 120px;
    margin-right: 3rem;
    text-align: center;
}
#grant .Box03 .Boxin03 .imgBox img{
    width: 90%;
    margin: 0 auto;
}
#grant .Box03 .Boxin03 .imgBox p{
    font-size: 1.7rem;
}

/* ---------------------------------------------------------------------------
  施工事例
--------------------------------------------------------------------------- */
#cases{
    margin-bottom: 8rem;
}
#cases h3.toptxt{
    margin-bottom: 2.5rem;
}
#cases .tabs {
    margin: 5rem auto 0 auto;
    padding-bottom: 40px;
    width: 80%;
}
.tab_item{
    width: calc(20% - 1.5rem);
    height: 55px;
    line-height: 50px;
    text-align: center;
    display: inline-block;
}
.tab_labels {
  gap: 2rem 1.5rem;
  margin-bottom: 2rem;
  justify-content: center;
}
.tab_content{
    width: 800px;
    margin: 0 auto;
    padding-top: 5rem;
}

#cases .c_box_01 .sToggle dl dt{
    font-size: 2.3rem;
    padding: 5px 35px 15px 5px;
}
#cases .c_box_01 .sToggle dl dd{
    padding: 5px;
}

.category-title-wrapper {
  margin: 80px 0 15px 0;
}
.category-title-wrapper h4{
    font-size: 2.3rem;
}
/* 最初のタイトルの上マージンを調整 */
#all_content .category-title-wrapper:first-child {
  margin-top: 0;
}


/* ---------------------------------------------------------------------------
  喜ばれるこんな対応 20選
--------------------------------------------------------------------------- */
#pleasant{
    margin-bottom: 10rem;
}
#pleasant .subTop h2{
    line-height: 4.2rem;
    padding-top: 5rem;
}
#pleasant .subTop h2 span{
    font-size: 2.8rem;
}
#pleasant .topBox{
    width: 700px;
    margin: 0 auto;
}
#pleasant .topBox h3{
    margin-bottom: 1.5rem;
}
#pleasant .borBox {
    padding: 2rem;
    margin-top: 5rem;
}
#pleasant .Box01 ul li{
    width: calc(50% - 2rem);
}
#pleasant .Box01 ul li .maru {
        width: 80px;
        height: 80px;
        top: -2rem;
        left: -1.5rem;
        font-size: 3rem;
        padding-top: 1rem;
}
#pleasant .Box01 ul li h4{
    font-size: 2.4rem;
    line-height: 3.2rem;
    margin: 1.5rem 0 1rem 0;
}
#pleasant .Box01 ul li h4 span.sm{
    font-size: 1.8rem;
}
#pleasant .Box01 ul li p{
    font-size: 1.6rem;
}

/* ---------------------------------------------------------------------------
  工事依頼の方へ：工事の前に
--------------------------------------------------------------------------- */
#considerationAll{
    margin-bottom: 10rem;
}
#considerationAll .Box01{
    width: 730px;
    margin: 0 auto;
}
#considerationAll .Box01 h3{
    margin-bottom: 2.5rem;
}
 #before .Box01 p{
    text-align: center;
}
 #before .Box02{
    margin-top: 9rem;
}
 #before .Box02 .num{
    font-size: 8rem;
    top: -5.5rem;
}
 #before .Box02 h4{
    font-size: 2.6rem;
    padding-left: 10.5rem;
    margin-bottom: 2rem;
}
 #before .Box02 .Mgb{
    margin-bottom: 4rem;
    padding-bottom: 4rem;
}
 #before .Box02 .txtBox{
    width: 57%;
}
 #before .Box02 .imgBox{
    width: 40%;
    max-width: 500px;
    margin-left: 2rem;
}
 #before .Box03{
    margin: 5rem auto;
    padding: 3rem;
}
 #before .Box03 h3{
    margin-bottom: 2rem;
 }
#before .Box03 ul li{
    padding: 2rem 3rem;
}
#before .Box03 ul li h4{
    font-size: 2.3rem;
    margin-bottom: 1rem;
    padding-left: 6rem;
}
#before .Box03 ul li h4 span.maru {
    width: 45px;
    height: 45px;
    top: -0.2rem;
    left: 0;
    font-size: 2.3rem;
    padding-top: 0.1rem;
}
#before .Box03 ul li p{
    font-size: 1.6rem;
}
#before .Box03 ul li:not(:last-child) {
    margin-bottom: 4rem;
}
#before .Box03 ul li:not(:last-child)::before {
        bottom: -3rem;
        width: 25px;
        height: 18px;
}

/* ---------------------------------------------------------------------------
  電建の見積書について
--------------------------------------------------------------------------- */
.threeBox{
    margin: 8rem auto;
}
.threeBox::before{
  top: -2.5rem;
}
.threeBox::after{
  bottom: -2.5rem;
}
.threeBox h4{
    font-size: 2.5rem;
}
.threeBox ul{
    margin-top: 1.5rem;
}
.threeBox ul li{
    padding-left: 1.8rem;
    font-size: 2.2rem;
}
.threeBox ul li::before{
    top: 50%;
    transform: translateY(-50%); 
}
.threeBox ul li:not(:last-child) {
    margin-bottom: 1rem;
}

/*#estimate .Box01 p{
    text-align: justify;
}*/
#estimate .Box03 h3{
    margin-bottom: 1.5rem;
}
#estimate .Box03 ul li:nth-child(odd){
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-flow: row-reverse;
  -ms-flex-flow: row-reverse;
  flex-flow: row-reverse;
}
#estimate .Box03 ul li{
    gap: 0 3rem;
    align-items: center;
}
#estimate .Box03 ul li .imgBox{
    width: 45%;
}
#estimate .Box03 ul li .imgBox02 a{
    width: calc(50% - 1rem);
}
#estimate .Box03 ul li .txtBox{
    width: 52%;
}
@media screen and (max-width: 1050px) {
    #estimate .Box03 ul li .txtBox{
        width: 50%;
    }
}
#estimate .borBox{
    width: 900px;
    padding: 4rem;;
    margin: 5rem auto 0 auto;
}
#estimate .borBox .flex_wrap{
    align-items: center;
}
#estimate .borBox h3{
    margin-bottom: 2rem;
}
#estimate .borBox h4{
    font-size: 2.2rem;
    line-height: 3.5rem;
    margin-bottom: 1rem;
}

#estimate .Box04 .imgBox{
    width: 300px;
    margin-right: 3rem;
}

/* ---------------------------------------------------------------------------
  10年間工事保証とは
--------------------------------------------------------------------------- */
#guarantee .Box03{
    padding-bottom: 8rem;
}
#guarantee .Box03 h3{
    margin-bottom: 1rem;
}
#guarantee .Box03 ul{
    margin-top: 2rem;
}
#guarantee .Box03 ul li{
    width: calc(50% - 2rem);
}
#guarantee .Box03 ul li h4{
    font-size: 2.2rem;
    padding: 0 0.2rem 0.4rem 0.2rem;
}
#guarantee .Box03 ul li p{
    margin-top: 1rem;
}
#guarantee .Box04{
    margin-top: 8rem;
}
#guarantee .Box04 .Boxin{
    margin-bottom: 5rem;
}
#guarantee .Box04 .flex_wrap{
    align-items: center;
}
#guarantee .Box04 .imgBox{
    width: 300px;
    margin-right: 4rem;
}
#guarantee .Box04 h4{
    font-size: 2.4rem;
    margin-bottom: 1rem;
}
#guarantee .Box04 ul li{
  padding-left: 1.7em;
  text-indent: -0.7em;
}
#guarantee .Box04 span.num{
    display: inline-block;
    margin-right: 1rem;
}
#guarantee .Box04 .Boxin02{
    margin-bottom: 5rem;
}




/* ---------------------------------------------------------------------------
  お知らせ
--------------------------------------------------------------------------- */
#news,
#news-post{
    padding-bottom: 8rem;
}
#news .newsBox{
  gap: 0 7rem;
  flex-direction: row-reverse;
}
.newsBox .newsBox_in_out {
  flex: 1;
}
.newsBox ul.newsBox_in{
    margin-bottom: 5rem;
}
.newsBox ul.newsBox_in li a{
    padding: 2rem 2rem;
}
.newsBox ul.newsBox_in li .txtBox {
  flex: 1;
}

#news h3 {
  font-size: 2rem;
  line-height: 3.4rem;
}
.category-group-title{
    font-size: 1.7rem;
  padding: 0.2rem 0.5rem 0.4rem 1.5rem;
}
.daycateBox{
    width: 270px;
    margin-right: 2rem;
}
.daywrap{
  width: 90px;
  margin-right: 1rem;
}
.catewrap{
    margin-top: 0.6rem;
}
span.day{
    font-size: 1.5rem;
}
span.cate {
  font-size: 1.3rem;
  line-height: 1.3;
  padding: 0.2rem 0.5rem 0.4rem 0.5rem;
}
#news span.cate:not(:last-child) {
  margin-bottom: 0.5rem;
}

.pager {
  margin: 4rem auto 0 auto;
}
.sidebar {
  width: 270px;
}

#news-post h3 {
  font-size: 2.8rem;
  margin: 1rem 0 2rem 0;
}
#news-post .imgBox {
  width: 80%;
  height: 450px;
  margin: 0 auto 2rem auto;
}
#news-post .imgBox img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
#news-post span.day{
    margin-right: 1rem;
}
#news-post span.cate:not(:last-child) {
  margin-right: 0.5rem;
}
#news-post a.to_detail03 {
    width: 250px;
    height: 50px;
    line-height: 45px;
}
#news-post img{
    margin: 2rem 0;
}
#news-post .imgBox img{
    margin: 0;
}

/* 月別アーカイブリスト */
.monthly-archives {
  margin-top: 5rem;
  padding: 25px 30px;
}
.archive-months{
    gap: 0;
}
.archive-months a,
.archive-months span{
    font-size: 1.5rem;
}




/* ---------------------------------------------------------------------------
  お問い合わせ
--------------------------------------------------------------------------- */
#contact,#thanks,#privacy{
  margin-bottom: 8rem;
}
#contact .topBox{
    margin-bottom: 5rem;
    text-align: center;
}
#contact .telWrap{
    margin: 7rem auto 5rem auto;
}
#contact .telWrap a{
    line-height: 4.5rem;
    margin-top: 1rem;
}
#contact .telWrap a img{
    width: 40px;
    object-fit: contain;
    margin-top: 0.8rem;
}
#contact .telWrap a span.number{
    font-size: 4rem;
}
#contact .telWrap span.txt_b{
    padding-left: 4rem;
}
#contact .borBox{
    padding: 3rem 3rem 4rem 3rem;
    margin: 6rem auto 8rem auto;
}
#contact .hearing h3{
    margin-bottom: 1.5rem;
}
#contact .hearing p{
    text-align: center;
}
#contact .hearing a{
        width: 250px;
        height: 70px;
        margin: 3rem auto 0 auto;
}
#contact .hearing a span{
    font-size: 1.8rem;
    line-height: 2.2rem;
    padding: 1rem 0 0 5rem;
}
#contact .hearing a span:before{
    width: 30px;
    height: 30px;
    top: 60%;
    left: 1rem;
}

#contact .mailWrap h3{
    margin-bottom: 1rem;
    padding-bottom: 1.5rem;
}
#contact p.kome{
    font-size: 1.4rem;
    margin-top: 0.5rem;
}
.hissu {
  margin-top: 0.2rem;
}

.c_table_01 table {
    border-collapse: collapse;
    border-spacing: 0;
    font-size: inherit;
    width: 100%;
    border-radius: 0.5em;
}

#contact .c_table_01 table tbody tr th {
    border-bottom: 3px solid #f8e6e9;
    vertical-align: top;
    padding: 16px 15px;
    font-weight: 500;
    width: 24.5%;
    word-break: break-all;
}
#contact .c_table_01 table tbody tr th span.flex_wrap{
    align-items: center;
}

.c_table_01 table tbody tr:nth-of-type(1) th {
    border-radius: 0.5em 0 0 0;
}

.c_table_01 table tbody tr:last-child th {
    border-radius: 0 0 0 0.5em;
}

.c_table_01 table tbody tr td {
    border-bottom: 1px solid #f6eded;
    vertical-align: top;
    padding: 16px 21px;
    word-break: break-all;
}

.submit_wrap {
  width: 288px;
}
.submit_wrap:before {
    right: 2rem;
    width: 10px;
    height: 12px;
}


#contact .privacy_wrap{
    margin: 3rem auto 3rem auto;
}
#contact .privacy_wrap p{
    font-size: 1.5rem;
}

#thanks{
  margin-bottom: 8rem;
}
#thanks .miniTextBox{
    padding: 12rem 0 14rem 0;
}
#thanks .miniTextBox p{
    text-align: center;
}

#error{
  margin-top: 20rem;
}



/* ---------------------------------------------------------------------------
  ★タイトル
--------------------------------------------------------------------------- */

.tit02 {
    text-align: center;
    font-family: "Noto Serif JP", serif;
    margin: 0 auto 35px;
}

.tit02 b {
    font-size: 5rem;
    line-height: 1.5;
    letter-spacing: 2px;
    display: inline-block;
    position: relative;
}

.tit02 span {
    color: #8c8c8c;
    font-size: 1.6rem;
    display: block;
    line-height: 1;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", cursive, sans-serif, serif;
}

.txt_shinfo {
    position: relative;
}

.txt_shinfo>small {
    position: absolute;
    top: -22px;
    left: 0;
    font-size: 41%;
    word-break: keep-all;
}




/* ---------------------------------------------------------------------------
  ★インスタグラム
--------------------------------------------------------------------------- */

.instagramcont li {
    width: calc(100% / 4);
}

.instagramcont li a {
    display: block;
    overflow: hidden;
    position: relative;
    width: 100%;
    padding: 0 0 100%;
    background: #949494;
}

.instagramcont li a img {
    position: absolute;
    width: 100%;
    top: 50%;
    left: 50%;
    -webkit-transform: translateY(-50%) translateX(-50%);
    transform: translateY(-50%) translateX(-50%);
}







/* ---------------------------------------------------------------------------
  ★パーツ集:NEWS
--------------------------------------------------------------------------- */

.c_newslist_01>a {
    display: block;
    color: #000;
    margin: 10px 0;
    border-bottom: solid 1px #c1c1c1;
}

.c_newslist_01>a dl dt {
    float: left;
    width: 18%;
    margin-right: 2%;
}

.c_newslist_01>a dl dd {
    float: left;
    width: 80%;
    word-break: break-all;
}

.c_newslist_02 dl {
    margin: 10px 0;
    border-bottom: solid 1px #c1c1c1;
}

.c_newslist_02 dl dt {
    float: left;
    width: 18%;
    margin-right: 2%;
}

.c_newslist_02 dl dd {
    float: left;
    width: 80%;
    word-break: break-all;
}

.c_newslist_02 dl dd>a {
    display: block;
    color: #000;
}

.c_newslist_03 a {
    display: block;
    margin: 10px 0;
    border-bottom: solid 1px #c1c1c1;
    color: #000;
}

.c_newslist_03 dl {
    margin: 10px 0;
}

.c_newslist_03 dl dt {
    float: left;
    width: 18%;
    margin-right: 2%;
}

.c_newslist_03 dl dt .imgBox {
    position: relative;
    overflow: hidden;
    padding-bottom: 66.6%;
}

.c_newslist_03 dl dd {
    float: left;
    width: 80%;
    word-break: break-all;
}

.c_newslist_03 dl dd .days_tx,
.c_newslist_03 dl dd .news_txt {
    display: block;
}

.icon_new {
    margin-left: 15px;
    display: inline-block;
    color: #e60012;
    z-index: 3;
}

.days_txt {
    color: #000;
}

.lr_xBox .main_xBox {
    float: left;
    width: 70%;
}

.lr_xBox .aside_xBox {
    float: right;
    width: 25%;
}

.archive_xBox>dl a {
    position: relative;
    display: block;
    margin-bottom: 5px;
}

.archive_xBox>dl dd {
    display: none;
}

.c_postlink li:first-child {
    float: left;
    width: 40%;
}

.c_postlink li:last-child {
    float: right;
    width: 40%;
    text-align: right;
}

.c_dBox h1,
.c_dBox h2,
.c_dBox h3,
.c_dBox h4,
.c_dBox h5,
.c_dBox h6 {
    font-weight: bold;
}

.c_dBox img {
    max-width: 100%;
    width: auto !important;
    height: auto !important;
}


/* ---------------------------------------------------------------------------
  ★パーツ集:カテゴリ
--------------------------------------------------------------------------- */

.c_cateBox_01 {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.c_cateBox_01>a {
    width: calc(100% / 4);
    display: block;
    color: #000;
    margin: 10px 0;
    border-bottom: solid 1px #c1c1c1;
    position: relative;
}

.c_cateBox_01>a .txtBox {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translateY(-50%) translateX(-50%);
    transform: translateY(-50%) translateX(-50%);
}

.c_cateBox_02 dl {
    margin: 10px 0;
    border-bottom: solid 1px #c1c1c1;
}

.c_cateBox_02 dl dt {
    float: left;
    width: 18%;
    margin-right: 2%;
}

.c_cateBox_02 dl dd {
    float: left;
    width: 80%;
    word-break: break-all;
}

.c_cateBox_02 dl dd>a {
    display: block;
    color: #000;
}

.cate_xBox a {
    display: block;
    padding: 10px;
    background: #eee;
    margin-bottom: 5px;
}


/* =======================================
	★ページャー
========================================== */

.pager {
    width: auto;
    margin: 0 auto;
    padding-bottom: 50px;
}

.wp-pagenavi {
    clear: both;
    font-size: 14px;
    text-align: center;
}

.wp-pagenavi a,
.wp-pagenavi span {
    display: inline-block;
    width: 35px;
    height: 35px;
    line-height: 2.6;
    border: 1px solid #000000;
    -webkit-transition: ease-out 0.5s;
    transition: ease-out 0.5s;
    color: #000000;
    font-size: 14px;
    margin: 5px;
    vertical-align: top;
    padding: 0px;
    background-color: #fff;
    border-radius: 4px;
}

.wp-pagenavi span.extend {
    border: 1px solid rgba(245, 245, 245, 0);
}

.wp-pagenavi span.current {
    color: #fff;
    background-color: #000000;
    font-size: 14px;
    vertical-align: top;
    text-decoration: none;
}


/* ---------------------------------------------------------------------------
  ★パーツ集:フォーム
--------------------------------------------------------------------------- */

.c_form01 {
    margin-bottom: 50px;
}

.c_form01 table {
    margin-bottom: 30px;
    border-top: 1px solid #ccc;
    width: 100%;
    /* IE */
    /* Edge */
}

.c_form01 table tbody tr {
    border-bottom: 1px solid #afafaf;
}

.c_form01 table tbody tr th {
    vertical-align: top;
    padding: 24px;
    font-size: 16px;
    color: #000000;
    font-weight: bold;
    width: 24.5%;
}

.c_form01 table tbody tr th span {
    margin-left: 10px;
}

.c_form01 table tbody tr td {
    vertical-align: top;
    padding: 24px;
}

.c_form01 table tbody tr td select {
    padding: 0;
    font-size: 14px;
    width: 400px;
    padding: 11px;
}

.c_form01 table tbody tr td label {
    margin-right: 10px;
}

.c_form01 table .inp01,
.c_form01 table .inp02 {
    padding: 5px 10px;
    font-size: 1.4rem;
    border: 1px solid #afafaf;
}

.c_form01 table .inp01 input[type=text],
.c_form01 table .inp02 input[type=text] {
    font-size: 1.4rem;
}

.c_form01 table .inp_txtarea {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-size: 1.4rem;
    padding: 10px;
    width: 90%;
    height: 200px !important;
    border: 1px solid #afafaf;
}

.c_form01 table input:-ms-input-placeholder {
    color: #a9a9a9;
}

.c_form01 table input::-ms-input-placeholder {
    color: #a9a9a9;
}

.c_form01 .kojin_wrap {
    background: #fff;
    padding: 5%;
    margin-bottom: 20px;
}

.c_form01 .submit_wrap {
    margin-bottom: 5%;
    text-align: center;
}

.c_form01 .submit_wrap .submit {
    max-width: 340px;
    width: 90%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 10px 0;
    text-align: center;
    margin: auto;
    font-size: 1.6rem;
    cursor: pointer;
}

input::-webkit-input-placeholder {
    color: #a9a9a9;
}

input:-ms-input-placeholder {
    color: #a9a9a9;
}

input::-ms-input-placeholder {
    color: #a9a9a9;
}

input::placeholder {
    color: #a9a9a9;
}

input.short {
    width: 25%;
}

input.middle {
    width: 50%;
}


/* ---------------------------------------------------------------------------
  ★パーツ集:jsPage
--------------------------------------------------------------------------- */

.close {
    width: 48px;
    height: 48px;
    background-color: rgba(0, 0, 0, 0.5);
    position: absolute;
    top: 0;
    right: 0;
    cursor: pointer;
}

.close::before {
    content: "";
    display: block;
    width: 26px;
    height: 2px;
    background-color: #fff;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translateY(-50%) translateX(-50%) rotate(45deg);
    transform: translateY(-50%) translateX(-50%) rotate(45deg);
    z-index: 10;
}

.close::after {
    content: "";
    display: block;
    width: 26px;
    height: 2px;
    background-color: #fff;
    position: absolute;
    z-index: 10;
    top: 50%;
    left: 50%;
    -webkit-transform: translateY(-50%) translateX(-50%) rotate(135deg);
    transform: translateY(-50%) translateX(-50%) rotate(135deg);
}

.popup_Box {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    background: rgba(0, 0, 0, 0.6);
    z-index: -9;
    opacity: 0;
    top: 0;
    left: 0;
    -webkit-transition: 0.5s;
    transition: 0.5s;
}

.popup_Box.on {
    z-index: 1;
    opacity: 1;
}

.popup_Box.on .close {
    z-index: 1 !important;
}

.popup_Box .popup_Box_inner {
    position: relative;
    padding: 30px 60px;
    width: 100%;
}

.popup_Box .popup_Box_inner .close {
    position: absolute;
    right: 0;
    top: 0;
    z-index: -9;
}

.popup_Box .popup_Box_inner .popup_Box_cont {
    color: #fff;
}

#js_listItem .is_hidden {
    display: none;
}

#input_plural {
    margin: 10px 0;
}

#input_plural input.form-control {
    display: inline-block;
    color: #555;
}

#input_plural .btn_wrap {
    float: right;
}

#input_plural .pluralBtn {
    width: 30px;
    height: 30px;
    border: 1px solid #ccc;
    background: #fff;
    border-radius: 5px;
    padding: 0;
    margin: 0;
    display: inline-block;
    text-align: center;
}


/* ---------------------------------------------------------------------------
  ★パーツ集:slickPage
--------------------------------------------------------------------------- */

.csl_slider_01 .imgBox img {
    display: block;
    width: 96%;
    margin: 0 auto;
}

.csl_slider_01 .sclick_previmg {
    max-width: 68px;
    width: 5%;
    margin: auto;
    position: absolute;
    z-index: 10;
    left: 17%;
    top: 50%;
    cursor: pointer;
}

.csl_slider_01 .sclick_nextimg {
    max-width: 68px;
    width: 5%;
    margin: auto;
    position: absolute;
    z-index: 10;
    right: 17%;
    top: 50%;
    cursor: pointer;
}

.csl_slider_02 .imgBox img {
    display: block;
    width: 96%;
    margin: 0 auto;
}

.csl_slider_02 .sclick_previmg {
    max-width: 68px;
    width: 5%;
    margin: auto;
    position: absolute;
    z-index: 10;
    left: 0;
    right: 60%;
    top: 50%;
    cursor: pointer;
}

.csl_slider_02 .sclick_nextimg {
    max-width: 68px;
    width: 5%;
    margin: auto;
    position: absolute;
    z-index: 10;
    right: 0;
    left: 60%;
    top: 50%;
    cursor: pointer;
}

.csl_slider_03_wp {
    margin-bottom: 20px;
    background: #00a0b4;
}

.csl_slider_03_wp .img_wrap {
    display: block;
}

.csl_slider_03_wp .img_wrap *:not(img) {
    display: none;
}



