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

.l-block01{
  padding:11.5rem 0 14.0rem;
}
.l-block01-inner{
  max-width:calc(1200px + 6.0rem);
  width:100%;
  margin:0 auto;
  padding:0 3.0rem;
}
.l-block01-inner > h2{
  padding-bottom:4.5rem;
  text-align: center;  
  color: #8b9fcc;
  
  font-size: clamp(22px, 3.0rem, 30px);
  font-weight: 700;
  line-height: 1.75;
  letter-spacing: 0.1em;
}
.l-block01-block{
  display:block;
  padding-top:4.5rem;
  position: relative;
  z-index: 1;
}
.l-block01-block-back{
  background: url("../images/service/block01-bg01_pc.png") right top no-repeat transparent;
  background-size: 100% auto;
  min-height:45.0rem;
}
.l-block01-block.-type01 .l-block01-block-back{
  background: url("../images/service/block01-bg01_pc.png") right top no-repeat transparent;
  background-size: 100% auto;
  min-height:45.0rem;
}
.l-block01-block.-type02 .l-block01-block-back{
  background: url("../images/service/block01-bg02_pc.png") right top no-repeat transparent;
  background-size: 100% auto;
  min-height:45.0rem;
}
.l-block01-block-table{
  width:100%;
  display:table;
}
.l-block01-block-table > div{
  display:table-cell;
  vertical-align: top;
}
.l-block01-block-num{
  width:42.8%;
  padding-top:47.0rem;
  padding-right:3.5rem;
  text-align: right;
}
.l-block01-block-num p{
  display:inline-block;
  text-align: center;  
  color: #f87a96;
  
  font-size: clamp(35px, 5.2rem, 52px);
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.1em;
}
.l-block01-block-num p span{
  display:block;
  text-align: center;  
  color: #f87a96;
  
  font-size:clamp(13px, 1.5rem, 15px);
  font-weight: 700;
  line-height: 1.75;
  letter-spacing: 0.1em;
}
.l-block01-block.-type01 .l-block01-block-num p{  
  color: #f87a96;
}
.l-block01-block.-type01 .l-block01-block-num p span{  
  color: #f87a96;
}
.l-block01-block.-type02 .l-block01-block-num p{
  color: #8b9fcc;  
}
.l-block01-block.-type02 .l-block01-block-num p span{
  color: #8b9fcc;  
}
.l-block01-block-wrapper{
  width:57.2%;
  padding-top:13.5rem;
  padding-right:5.0rem;
}
.l-block01-block-box{
  width:auto;
  background:#FFFFFF;
  border-radius:0 3.0rem 3.0rem 0;
  padding:6.0rem 9.0rem 0 0;
}
.l-block01-block-box h3{
  text-align: left;  
  color: #f87a96;
  
  font-size: clamp(25px, 3.4rem, 34px);
  font-weight: 700;
  line-height: 1.75;
  letter-spacing: 0.1em;
}
.l-block01-block.-type01 .l-block01-block-box h3{
  color: #f87a96;
}
.l-block01-block.-type02 .l-block01-block-box h3{
  color: #8b9fcc;
}
.l-block01-block-box ul{
  padding-top:1.0rem;
  display:block;
  text-align: left;
  font-size:0;
}
.l-block01-block-box ul li{
  display:inline-block;
  background:#8b9fcc;
  border-radius:2.5rem;
  padding:1.0rem 2.5rem;
  text-align: center;  
  color: #FFFFFF;
  
  font-size:clamp(14px, 1.6rem, 16px);
  font-weight: 700;
  line-height: 1.75;
  letter-spacing: 0.1em;
}
.l-block01-block.-type01 .l-block01-block-box ul li{
  background:#f87a96;
}
.l-block01-block.-type02 .l-block01-block-box ul li{
  background:#8b9fcc;
}
.l-block01-block-box p{
  padding-top:2.0rem;
  text-align: justify;  
  color: #808080;
  
  font-size:clamp(14px, 1.6rem, 16px);
  font-weight: 700;
  line-height: 2.2;
  letter-spacing: 0.05em;
}
.l-block01-block-box p span{
  display:block;
  text-align: justify;  
  color: #808080;
  
  font-size:clamp(10px, 1.2rem, 12px);
  font-weight: 400;
  line-height: 2.2;
  letter-spacing: 0.05em;
}
.l-block01-block-box-btn{
  padding-top:2.0rem;
  text-align: right;
}
.l-block01-block-box-btn img{
  width:10.3rem;
}
.l-block01 > picture{
  display:block;
  padding-top:13.0rem;
  max-width:1920px;
  width:100%;
  margin:0 auto;
}
.l-block01 > picture img{
  width:100%;
}
.loop-area{
  margin-top:11.0rem;
  background: url('../images/service/block01-img01_pc.png') repeat-x;
  background-size: contain;
  width: 100%;
  height: 10.6rem;
  animation: loop-slide-service 40.0s infinite linear;
}
@keyframes loop-slide-service {
  from {
    background-position: -34.5rem 0;
  }
  to {
    background-position: -292.0rem 0;
  }
}


@media screen and (max-width: 767.5px) {
  .l-block01{
    padding:8.0rem 0 15.0rem;
  }
  .l-block01-inner{
    max-width:100%;
    width:100%;
    margin:0 auto;
    padding:0 3.0rem;
  }
  .l-block01-inner > h2{
    padding-bottom:4.5rem;
    text-align: center;  
    color: #8b9fcc;

    font-size: 4.2rem;
    font-weight: 700;
    line-height: 1.75;
    letter-spacing: 0.1em;
  }
  .l-block01-block{
    display:block;
    padding-top:4.5rem;
    padding-right:0;
    position: relative;
    z-index: 1;
  }
  .l-block01-block-back{
    background: url("../images/service/block01-bg01_sp.png") right top no-repeat transparent;
    background-size: 100% auto;
    min-height:45.0rem;
  }
  .l-block01-block.-type01 .l-block01-block-back{
    background: url("../images/service/block01-bg01_sp.png") right top no-repeat transparent;
    background-size: 100% auto;
    min-height:45.0rem;
  }
  .l-block01-block.-type02 .l-block01-block-back{
    background: url("../images/service/block01-bg02_sp.png") right top no-repeat transparent;
    background-size: 100% auto;
    min-height:45.0rem;
  }
  .l-block01-block-table{
    width:100%;
    display:flex;
    flex-direction: column-reverse;
  }
  .l-block01-block-table > div{
    width:100%;
    display:block;
    vertical-align: top;
  }
  .l-block01-block-num{
    width:100%;
    display:block;
    padding-top:56.0rem;
    padding-right:0;
    padding-left:0;
    text-align: right;
  }
  .l-block01-block-num p{
    display:inline-block;
    text-align: center;  
    color: #f87a96;

    font-size: 6.4rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.1em;
  }
  .l-block01-block-num p span{
    display:block;
    text-align: center;  
    color: #f87a96;

    font-size:2.7rem;
    font-weight: 700;
    line-height: 1.75;
    letter-spacing: 0.1em;
  }
  .l-block01-block.-type01 .l-block01-block-num p{  
    color: #f87a96;
  }
  .l-block01-block.-type01 .l-block01-block-num p span{  
    color: #f87a96;
  }
  .l-block01-block.-type02 .l-block01-block-num p{
    color: #8b9fcc;  
  }
  .l-block01-block.-type02 .l-block01-block-num p span{
    color: #8b9fcc;  
  }
  .l-block01-block-wrapper{
    width:100%;
    display:block;
    padding-top:0;
    padding-right:0;
  }
  .l-block01-block-box{
    background:#FFFFFF;
    border-radius:0;
    padding:4.0rem 0 0 0;
  }
  .l-block01-block-box h3{
    text-align: left;  
    color: #f87a96;

    font-size: 4.6rem;
    font-weight: 700;
    line-height: 1.75;
    letter-spacing: 0.1em;
  }
  .l-block01-block.-type01 .l-block01-block-box h3{
    color: #f87a96;
  }
  .l-block01-block.-type02 .l-block01-block-box h3{
    color: #8b9fcc;
  }
  .l-block01-block-box ul{
    padding-top:1.0rem;
    display:block;
    text-align: left;
    font-size:0;
  }
  .l-block01-block-box ul li{
    display:inline-block;
    background:#8b9fcc;
    border-radius:2.5rem;
    padding:1.0rem 2.5rem;
    text-align: center;  
    color: #FFFFFF;

    font-size:2.6rem;
    font-weight: 700;
    line-height: 1.75;
    letter-spacing: 0.1em;
  }
  .l-block01-block.-type01 .l-block01-block-box ul li{
    background:#f87a96;
  }
  .l-block01-block.-type02 .l-block01-block-box ul li{
    background:#8b9fcc;
  }
  .l-block01-block-box p{
    padding-top:2.0rem;
    text-align: justify;  
    color: #808080;

    font-size:2.6rem;
    font-weight: 700;
    line-height: 2.2;
    letter-spacing: 0.05em;
  }
  .l-block01-block-box p span{
    display:block;
    text-align: justify;  
    color: #808080;

    font-size:2.2rem;
    font-weight: 400;
    line-height: 2.2;
    letter-spacing: 0.05em;
  }
  .l-block01-block-box-btn{
    padding-top:2.0rem;
    text-align: right;
  }
  .l-block01-block-box-btn img{
    width:10.3rem;
  }
  .l-block01 > picture{
    display:block;
    padding-top:6.0rem;
    max-width:100%;
    width:100%;
    margin:0 auto;
  }
  .l-block01 > picture img{
    width:100%;
  }
  .loop-area{
    margin-top:6.0rem;
    background: url('../images/service/block01-img01_pc.png') repeat-x;
    background-size: contain;
    width: 100%;
    height: 5.6rem;
    animation: loop-slide-servicesp 40.0s infinite linear;
  }
}
@keyframes loop-slide-servicesp {
  from {
    background-position: -34.5rem 0;
  }
  to {
    background-position: -292.0rem 0;
  }
}


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


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








