/*--------------------
service.css
--------------------*/


.l-block01{
  background: url("../images/service/block01-bg00_pc.png") center center no-repeat transparent;
  background-size: cover;
  position: relative;
  padding:32.0rem 0 16.0rem;
  z-index: 1;
  margin-top: -16.5rem;
  background-attachment: fixed;
}

.l-block01-01{
  background: linear-gradient(90deg, #FFFFFF 0%, #FFFFFF 50%, transparent 50%, transparent 100%);
  padding-right:10.0rem;
}
.l-block01-01-inner{
  width:100%;
  margin:0 auto;
  border-radius:0 5.0rem 5.0rem 0;
  background:#FFFFFF;
  padding-right:90.0rem;
  position: relative;
}
.l-block01-01-back{
  background: url("../images/service/block01-bg01_pc.png") left center no-repeat transparent;
  background-size: cover;
  height:53.1rem;
}
.l-block01-01-block{
  position: absolute;
  right:25.5rem;
  top:8.0rem;
  width:60.0rem;
}
.l-block01-01-table{
  width:100%;
  display:table;
}
.l-block01-01-table > div{
  display:table-cell;
  vertical-align: top;
}
.l-block01-01-table-left{
  width:22.3rem;
  text-align: left;
}
.l-block01-01-table-left span{
  display:inline-block;
  border-radius:2.0rem;
  background:#288742;
  text-align: center;
  padding:0.8rem 3.0rem;
  color:#FFFFFF;
  
  font-size:1.5rem;
  font-weight:700;
  line-height:1.75;
  letter-spacing: 0.05em;
}
.l-block01-01-table-right{
  width:27.7rem;
  text-align: right;
}
.l-block01-01-table-right picture{
  display:inline-block;
  opacity: 0;
  animation-fill-mode: forwards;
}
.l-block01-01-table-right picture img{
  width:27.7rem;
}
.l-block01-01 h2,
.l-block01-01 h3{
  text-align: left;
  color:#000000;
  
  font-size:2.0rem;
  font-weight:700;
  line-height:1.75;
  letter-spacing: 0.05em;
}
.l-block01-01 p{
  padding-top:3.0rem;
  padding-bottom:3.0rem;
  text-align: justify;
  color:#000000;
  
  font-size:1.6rem;
  font-weight:400;
  line-height:2.0;
  letter-spacing: 0.05em;
}
.l-block01-01 .l-common-btn a span{
  font-size:1.4rem;
}

.l-block01-02{
  margin-top:10.0rem;
  background: linear-gradient(90deg, transparent 0%, transparent 50%, #FFFFFF 50%, #FFFFFF 100%);
  padding-left:10.0rem;
}
.l-block01-02-inner{
  width:100%;
  margin:0 auto;
  border-radius:5.0rem 0 0 5.0rem;
  background:#FFFFFF;
  padding-left:90.0rem;
  position: relative;
}
.l-block01-02-back{
  background: url("../images/service/block01-bg02_pc.png") left center no-repeat transparent;
  background-size: cover;
  height:53.1rem;
}
.l-block01-02-block{
  position: absolute;
  left:25.5rem;
  top:8.0rem;
  width:60.0rem;
}
.l-block01-02-table{
  width:100%;
  display:table;
}
.l-block01-02-table > div{
  display:table-cell;
  vertical-align: top;
}
.l-block01-02-table-left{
  width:22.3rem;
  text-align: left;
}
.l-block01-02-table-left span{
  display:inline-block;
  border-radius:2.0rem;
  background:#585757;
  text-align: center;
  padding:0.8rem 3.0rem;
  color:#FFFFFF;
  
  font-size:1.5rem;
  font-weight:700;
  line-height:1.75;
  letter-spacing: 0.05em;
}
.l-block01-02-table-right{
  width:27.7rem;
  text-align: right;
}
.l-block01-02-table-right picture{
  display:inline-block;
  opacity: 0;
  animation-fill-mode: forwards;
}
.l-block01-02-table-right picture img{
  width:27.7rem;
}
.l-block01-02 h2,
.l-block01-02 h3{
  text-align: left;
  color:#000000;
  
  font-size:2.0rem;
  font-weight:700;
  line-height:1.75;
  letter-spacing: 0.05em;
}
.l-block01-02 p{
  padding-top:3.0rem;
  padding-bottom:3.0rem;
  text-align: justify;
  color:#000000;
  
  font-size:1.6rem;
  font-weight:400;
  line-height:2.0;
  letter-spacing: 0.05em;
}
.l-block01-02 .l-common-btn a span{
  font-size:1.4rem;
}

.l-block01-03{
  margin-top:10.0rem;
  background: linear-gradient(90deg, #FFFFFF 0%, #FFFFFF 50%, transparent 50%, transparent 100%);
  padding-right:10.0rem;
}
.l-block01-03-inner{
  width:100%;
  margin:0 auto;
  border-radius:0 5.0rem 5.0rem 0;
  background:#FFFFFF;
  padding-right:90.0rem;
  position: relative;
}
.l-block01-03-back{
  background: url("../images/service/block01-bg03_pc.png") left center no-repeat transparent;
  background-size: cover;
  height:53.1rem;
}
.l-block01-03-block{
  position: absolute;
  right:25.5rem;
  top:8.0rem;
  width:60.0rem;
}
.l-block01-03-table{
  width:100%;
  display:table;
}
.l-block01-03-table > div{
  display:table-cell;
  vertical-align: top;
}
.l-block01-03-table-left{
  width:22.3rem;
  text-align: left;
}
.l-block01-03-table-left span{
  display:inline-block;
  border-radius:2.0rem;
  background:#909ec4;
  text-align: center;
  padding:0.8rem 3.0rem;
  color:#FFFFFF;
  
  font-size:1.5rem;
  font-weight:700;
  line-height:1.75;
  letter-spacing: 0.05em;
}
.l-block01-03-table-right{
  width:27.7rem;
  text-align: right;
}
.l-block01-03-table-right picture{
  display:inline-block;
  opacity: 0;
  animation-fill-mode: forwards;
}
.l-block01-03-table-right picture img{
  width:27.7rem;
}
.l-block01-03 h2,
.l-block01-03 h3{
  text-align: left;
  color:#000000;
  
  font-size:2.0rem;
  font-weight:700;
  line-height:1.75;
  letter-spacing: 0.05em;
}
.l-block01-03 p{
  padding-top:3.0rem;
  padding-bottom:3.0rem;
  text-align: justify;
  color:#000000;
  
  font-size:1.6rem;
  font-weight:400;
  line-height:2.0;
  letter-spacing: 0.05em;
}
.l-block01-03 .l-common-btn a span{
  font-size:1.4rem;
}



@media screen and (max-width: 767.5px) {
  .l-block01{
    background: url("../images/service/block01-bg00_pc.png") center center no-repeat transparent;
    background-size: cover;
    position: relative;
    padding:32.0rem 0 16.0rem;
    z-index: 1;
    margin-top: -20.5rem;
  }

  .l-block01-01{
    background: linear-gradient(90deg, #FFFFFF 0%, #FFFFFF 50%, transparent 50%, transparent 100%);
    padding-right:5.0rem;
  }
  .l-block01-01-inner{
    width:100%;
    margin:0 auto;
    border-radius:0 5.0rem 5.0rem 0;
    background:#FFFFFF;
    padding-right:0;
    position: relative;
    overflow: hidden;
  }
  .l-block01-01-back{
    background: url("../images/service/block01-bg01_pc.png") bottom center no-repeat transparent;
    background-size: 110% auto;
    height:auto;
    padding:6.0rem 3.0rem 48.0rem;
  }
  .l-block01-01-block{
    position: static;
    right:25.5rem;
    top:8.0rem;
    width:100%;
  }
  .l-block01-01-table{
    width:100%;
    display:table;
  }
  .l-block01-01-table > div{
    display:table-cell;
    vertical-align: top;
  }
  .l-block01-01-table-left{
    width:22.3rem;
    text-align: left;
  }
  .l-block01-01-table-left span{
    display:inline-block;
    border-radius:2.0rem;
    background:#288742;
    text-align: center;
    padding:0.8rem 3.0rem;
    color:#FFFFFF;

    font-size:2.6rem;
    font-weight:700;
    line-height:1.75;
    letter-spacing: 0.05em;
  }
  .l-block01-01-table-right{
    width:27.7rem;
    text-align: right;
  }
  .l-block01-01-table-right picture{
    display:inline-block;
    opacity: 0;
    animation-fill-mode: forwards;
  }
  .l-block01-01-table-right picture img{
    width:27.7rem;
  }
  .l-block01-01 h2,
  .l-block01-01 h3{
    text-align: left;
    color:#000000;

    font-size:3.2rem;
    font-weight:700;
    line-height:1.75;
    letter-spacing: 0.05em;
  }
  .l-block01-01 p{
    padding-top:3.0rem;
    padding-bottom:3.0rem;
    text-align: justify;
    color:#000000;

    font-size:2.8rem;
    font-weight:400;
    line-height:2.0;
    letter-spacing: 0.05em;
  }
  .l-block01-01 .l-common-btn a span{
    font-size:2.6rem;
  }

  .l-block01-02{
    margin-top:10.0rem;
    background: linear-gradient(90deg, transparent 0%, transparent 50%, #FFFFFF 50%, #FFFFFF 100%);
    padding-left:5.0rem;
  }
  .l-block01-02-inner{
    width:100%;
    margin:0 auto;
    border-radius:5.0rem 0 0 5.0rem;
    background:#FFFFFF;
    padding-left:0;
    position: relative;
    overflow: hidden;
  }
  .l-block01-02-back{
    background: url("../images/service/block01-bg02_pc.png") bottom center no-repeat transparent;
    background-size: 110% auto;
    height:auto;
    padding:6.0rem 3.0rem 48.0rem;
  }
  .l-block01-02-block{
    position: static;
    left:25.5rem;
    top:8.0rem;
    width:100%;
  }
  .l-block01-02-table{
    width:100%;
    display:table;
  }
  .l-block01-02-table > div{
    display:table-cell;
    vertical-align: top;
  }
  .l-block01-02-table-left{
    width:22.3rem;
    text-align: left;
  }
  .l-block01-02-table-left span{
    display:inline-block;
    border-radius:2.0rem;
    background:#585757;
    text-align: center;
    padding:0.8rem 3.0rem;
    color:#FFFFFF;

    font-size:2.6rem;
    font-weight:700;
    line-height:1.75;
    letter-spacing: 0.05em;
  }
  .l-block01-02-table-right{
    width:27.7rem;
    text-align: right;
  }
  .l-block01-02-table-right picture{
    display:inline-block;
    opacity: 0;
    animation-fill-mode: forwards;
  }
  .l-block01-02-table-right picture img{
    width:27.7rem;
  }
  .l-block01-02 h2,
  .l-block01-02 h3{
    text-align: left;
    color:#000000;

    font-size:3.2rem;
    font-weight:700;
    line-height:1.75;
    letter-spacing: 0.05em;
  }
  .l-block01-02 p{
    padding-top:3.0rem;
    padding-bottom:3.0rem;
    text-align: justify;
    color:#000000;

    font-size:2.8rem;
    font-weight:400;
    line-height:2.0;
    letter-spacing: 0.05em;
  }
  .l-block01-02 .l-common-btn a span{
    font-size:2.6rem;
  }

  .l-block01-03{
    margin-top:10.0rem;
    background: linear-gradient(90deg, #FFFFFF 0%, #FFFFFF 50%, transparent 50%, transparent 100%);
    padding-right:5.0rem;
  }
  .l-block01-03-inner{
    width:100%;
    margin:0 auto;
    border-radius:0 5.0rem 5.0rem 0;
    background:#FFFFFF;
    padding-right:0;
    position: relative;
    overflow: hidden;
  }
  .l-block01-03-back{
    background: url("../images/service/block01-bg03_pc.png") bottom center no-repeat transparent;
    background-size: 110% auto;
    height:auto;
    padding:6.0rem 3.0rem 48.0rem;
  }
  .l-block01-03-block{
    position: static;
    right:25.5rem;
    top:8.0rem;
    width:100%;
  }
  .l-block01-03-table{
    width:100%;
    display:table;
  }
  .l-block01-03-table > div{
    display:table-cell;
    vertical-align: top;
  }
  .l-block01-03-table-left{
    width:22.3rem;
    text-align: left;
  }
  .l-block01-03-table-left span{
    display:inline-block;
    border-radius:2.0rem;
    background:#909ec4;
    text-align: center;
    padding:0.8rem 3.0rem;
    color:#FFFFFF;

    font-size:2.6rem;
    font-weight:700;
    line-height:1.75;
    letter-spacing: 0.05em;
  }
  .l-block01-03-table-right{
    width:27.7rem;
    text-align: right;
  }
  .l-block01-03-table-right picture{
    display:inline-block;
    opacity: 0;
    animation-fill-mode: forwards;
  }
  .l-block01-03-table-right picture img{
    width:27.7rem;
  }
  .l-block01-03 h2,
  .l-block01-03 h3{
    text-align: left;
    color:#000000;

    font-size:3.2rem;
    font-weight:700;
    line-height:1.75;
    letter-spacing: 0.05em;
  }
  .l-block01-03 p{
    padding-top:3.0rem;
    padding-bottom:3.0rem;
    text-align: justify;
    color:#000000;

    font-size:2.8rem;
    font-weight:400;
    line-height:2.0;
    letter-spacing: 0.05em;
  }
  .l-block01-03 .l-common-btn a span{
    font-size:2.6rem;
  }
}


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


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








