

  #mvArea{
    max-width: 2000px;
    margin: 0 auto;
    height: 916px;
    
    position: relative;
  }
  
  #mvArea #mainVisual{
    background:url(/common/img/bg_mv.png?2022) top center no-repeat;
    position: absolute;
    z-index:-1;
    width: 100%;
    height: 100%;
    top:0;
  }

  #mvArea #topMsg{
    position: absolute;
    top:30%;
    left: 10%;
  }
  #mvArea #topMsg img{
    
  }

  #mvArea:before {
    content: "";
    width: 100%;
    height: 0;
    background: url(/common/img/bar_white.png) top left no-repeat;
    height: 80px;
    /*left: 0px;*/
    bottom:0px;
    z-index: 10;
    position: absolute;
}


#credoArea{
  padding: 20px 0 160px;
  position: relative;
  max-width:2000px;
  margin: 0 auto;
}
/*
#credoArea:after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 660px 1000px 0;
  border-color: transparent #70389e transparent transparent;
  opacity: 0.1;
  left: 1340px;
  top: 0px;
  position: absolute;
}
*/
#credoArea:before {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 330px 0 0 200px;
    border-color: transparent transparent transparent #70389e;
    opacity: 0.1;
    left: 0;
    bottom: 0;
    position: absolute;
}

#credoArea .ttl{
  color: #70389e;
  font-size: 3.2rem;
  font-weight: bold;
  position: relative;
  line-height: 1.6em;
}

#credoArea .ttl:before{
  content: "";
  display: block;
  background:url(/common/img/txt_ourcredo.png) no-repeat top left;
  width:400px;
  height: 60px;
  margin-left: -10px;
}

#credoArea .txt{
  line-height: 3em;
}

#serviceArea{
  max-width: 2000px;
  margin: 0 auto;
  background:rgba(112,56,158, 0.1);
  padding: 60px 0 180px;
}


#serviceArea{
  position: relative;
}

#serviceArea .ttl,
#maintenanceArea .ttl,
#caribrationArea .ttl,
#constructionArea .ttl{
  color: #70389e;
  font-size: 2.8rem;
  font-weight: bold;
  line-height: 3em;
  position: relative;
}

#serviceArea .txtArea{
  width: 540px;
  line-height: 2em;
}

#serviceArea .imgArea{
  position: absolute;
  left:51%;
  top:300px;
}

#serviceArea .txtImg{
  padding: 0 0 30px 0;
  margin-left: -20px;
}


#maintenanceArea{
  padding: 60px 0 60px;
}

#maintenanceArea .imgArea ul,
#constructionArea .imgArea ul{
  margin: 0 0 0 -80px;
  width: 700px;
}
#maintenanceArea .imgArea ul li,
#constructionArea .imgArea ul li{
  float: left;
}

#maintenanceArea .imgArea ul li:nth-child(2),
#constructionArea .imgArea ul li:nth-child(2){
  margin:60px 0 0 40px;
}

ul.point li{
  width: 40%;
  display: inline-block;
  background:url(/common/img/icon_check.png) no-repeat top left;
  font-size: 1.6rem;
  padding: 0 0 0 40px;
  font-weight: bold;
  color: #70389e;
  margin: 10px 20px 10px 0;
}

#caribrationArea{
  padding: 60px 0 60px;
  max-width: 2000px;
  margin: 0 auto;
  position: relative;
}

#caribrationArea .txtArea {
    padding: 0 30px 0 0;
    max-width: 610px;
}

#caribrationArea .imgArea ul{
  margin: 0 0 0 20px;
}

#caribrationArea .imgArea ul li{
  float: left;
}

#caribrationArea .imgArea ul li:nth-child(2){
  margin:20px 0 0 40px;
  float: right;
}

#caribrationArea:after {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 660px 1000px 0;
    border-color: transparent #70389e transparent transparent;
    opacity: 0.1;
    left: 1340px;
    top: 0px;
    position: absolute;
}


#constructionArea{
  padding: 60px 0 60px;
}




@media screen and (max-width: 768px){


  #mvArea{
    margin-top: 90px;
    height: auto;
    width: 100%;
    position: relative;
  }

  #mvArea:before{
    display: block !important;
    content: "" !important;
    width: 100% !important;
    height: 0 !important;
    background: url(/common/img/bar_white_sp.png) top right no-repeat !important;
    height: 58px !important;
    right:100px !important;
    bottom:-1px !important;
    z-index: 9 !important;
    position: absolute !important;
  }
  
  #mvArea #mainVisual{
    background:url(/common/img/bg_mv_sp.png?2022) top center no-repeat;
    position: absolute;
    z-index:-1;
    width: 100%;
    height: 100%;
    top:0;
  }
  
  #mvArea #topMsg{
    height: 500px;
    position: relative;
    top:0;
    left: 0;
    padding-top: 170px;
  }
  
  #mvArea #topMsg img{
        display: block;
        margin: 0 auto;
        width: 100%;
        height: auto;
        left: auto;
        padding: 0 0px;
        top:30%;
      }
  
      #mvArea:after {
        display: none;
    }
  
  

  



#credoArea {
  padding: 0px 0 60px;
  position: relative;
  max-width: 2000px;
  margin: 0 auto;
}

#credoArea .ttl {
  font-size: 2.2rem;
  line-height: 1.6em;
}

#credoArea .txt {
  line-height: 2em;
}

#credoArea:before {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 140px 0 0 110px;
  border-color: transparent transparent transparent #70389e;
  opacity: 0.1;
  left: 0;
  bottom: 0;
  position: absolute;
}


#serviceArea .txtImg {
  padding: 0 0 0px 0;
  margin-left: 0px;
}

#serviceArea .txtArea {
  width: 100%;
}

#serviceArea .imgArea {
  position: relative;
  left: 0;
  top: 0px;
}

#serviceArea .ttl,
#maintenanceArea .ttl,
#caribrationArea .ttl,
#constructionArea .ttl {
margin: 20px 0 20px;
  font-size: 2.2rem;
  line-height: 1.8em;
}

#maintenanceArea .imgArea{
width: 100%;
  display: block;
}

#maintenanceArea .imgArea ul,
#constructionArea .imgArea ul {
  margin: 0 0 0 0px;
  width: 100%;
  display: flex;    
}

#maintenanceArea .imgArea ul li,
#constructionArea .imgArea ul li{
  margin: 0 0 0 0px;
  flex-basis: 50%;
  display: inline-flex;
  align-items: flex-start;
}

#serviceArea {
  padding: 40px 0 40px;
}

#maintenanceArea .flex,
#maintenanceArea .flexBox,
#caribrationArea .flex,
#caribrationArea .flexBox,
#constructionArea .flex,
#constructionArea .flexBox{
display: block;
}

#maintenanceArea .imgArea ul li:nth-child(2),
#constructionArea .imgArea ul li:nth-child(2) {
  margin: 20px 0 0 20px;
}

#maintenanceArea .txtImg,
#caribrationArea .txtImg,
#constructionArea .txtImg{
  position: absolute;
  top: 20px;
  left: 0;
  text-align: center;
}

#maintenanceArea .txtImg img,
#caribrationArea .txtImg img,
#constructionArea .txtImg img{
width: 100%;
}

#maintenanceArea {
  padding: 60px 0 20px;
  position: relative;
}

ul.point li {
  width: 100%;
  display: inline-block;
  background: url(/common/img/icon_check.png) no-repeat top left;
  background-size:20px auto;
  font-size: 1.6rem;
  padding: 0 0 0 40px;
  margin: 10px 20px 10px 0;
}

#caribrationArea .imgArea ul li:nth-child(1) {
width: 90%;
height: auto;
margin-bottom: 20px;

}

#caribrationArea .imgArea ul li:nth-child(2) {
  margin: 20px 0 40px 20px;
  width: 90%;
height: auto;
  float: none;
}

#caribrationArea .txtArea {
  padding: 0 0px 0 0;
}


#caribrationArea .imgArea ul {
  margin: 0 0 0 0px;
}

#constructionArea {
position: relative;
  padding: 20px 0 20px;
}

}