/*--------------------
top.css
--------------------*/
.l-mv{
  max-width:100%;
  width:100%;
  margin:0 auto;
  padding:0 0;
}
.l-mv-back{
  max-height:calc(100vh - 15.5rem);
  height:56.25vw;
  overflow: hidden;
  position: relative;
}
.l-mv-back video{
  width:100%;
  height:100%;
}
/*
.l-mv-back:after{
  content: "";
  display: inline-block;
  left: 0;
  top: 0;
  margin:auto;
  width:100%;
  height: 100%;
  position: absolute;
  z-index: 2;
  background: rgba(0,0,0,0.3);
}
*/
/*
.l-mv-back:after{
  content: "";
  display: inline-block;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin:auto;
  width:16.4rem;
  height: 100%;
  position: absolute;
  z-index: 2;
  background: url("../images/top/mv-icon01_pc.png") center center no-repeat transparent;
  background-size: 16.4rem auto;
  min-height:16.4rem;
  pointer-events: none;
}
*/
.l-mv-table{
  max-width:1920px;
  width:100%;
  height:100%;
  margin:0 auto;
  display:flex;
  justify-content: space-between;
  align-items: flex-start;
  position: relative;
  z-index:3;
}
.l-mv-table > div{
  
}
.l-mv-table-left{
  text-align: left;
  padding-top:30.0rem;
  padding-left:11.8rem;
}
.l-mv-table-left h2{
  
}
.l-mv-table-left h2 img{
  width:50.8rem;
}
.l-mv-table-right{
  width:47.6rem;
  text-align: right;
}
.l-mv-title{
  text-align: left;
  display:flex;
  align-items: flex-start;
  justify-content: center;
  flex-direction: column;
  height:83.1rem;
}
.l-mv-title h3{
  text-align: left;
  color:#FFFFFF;
  
  font-size:4.8rem;
  font-weight:900;
  line-height:2.2;
  letter-spacing: 0.05em;
}
.l-mv-title h3 img{
  width:15.2rem;
}
.l-mv-title p{
  padding:0 0 0 0;
  text-align: justify;
  color:#FFFFFF;
  
  font-size:1.6rem;
  font-weight:700;
  line-height:2.2;
  letter-spacing: 0.05em;
}


@media screen and (max-width: 767.5px) {
  .l-mv{
    max-width:100%;
    width:100%;
    margin:0 auto;
    padding:0 0;
  }
  .l-mv-back{
    max-height:100%;
    width:100%;
    height:75.0rem;
    overflow: hidden;
    position: relative;
  }
  .l-mv-back video{
    width:100%;
    height:75.0rem;
  }
  /*
  .l-mv-back:after{
    content: "";
    display: inline-block;
    left: 0;
    top: 0;
    margin:auto;
    width:100%;
    height: 100%;
    position: absolute;
    z-index: 2;
    background: rgba(0,0,0,0.3);
  }
  */
  /*
  .l-mv-back:after{
    content: "";
    display: inline-block;
    left: 0;
    right: 0;
    top: -13.0rem;
    bottom: 0;
    margin:0 auto;
    width:16.4rem;
    height: 100%;
    position: absolute;
    z-index: 2;
    background: url("../images/top/mv-icon01_pc.png") center center no-repeat transparent;
    background-size: 16.4rem auto;
    min-height:16.4rem;
    pointer-events: none;
  }
  */
  .l-mv-table{
    max-width:100%;
    width:100%;
    height:100%;
    margin:0 auto;
    display:block;
    justify-content: space-between;
    align-items: flex-start;
    position: relative;
    z-index:3;
  }
  .l-mv-table > div{
    width:100%;
    display:block;
  }
  .l-mv-table-left{
    text-align: center;
    padding-top:12.0rem;
    padding-left:0;
  }
  .l-mv-table-left h2{

  }
  .l-mv-table-left h2 img{
    width:50.8rem;
  }
  .l-mv-table-right{
    width:100%;
    display:block;
    text-align: center;
    padding-top:8.0rem;
    padding-left:6.0rem;
    padding-right:6.0rem;
  }
  .l-mv-title{
    text-align: left;
    display:block;
    align-items: flex-start;
    justify-content: center;
    flex-direction: column;
    height:auto;
    padding-top:0;
    padding-bottom:10.0rem;
  }
  .l-mv-title h3{
    text-align: left;
    color:#FFFFFF;

    font-size:6.0rem;
    font-weight:900;
    line-height:2.2;
    letter-spacing: 0.05em;
  }
  .l-mv-title h3 img{
    width:15.2rem;
  }
  .l-mv-title p{
    padding:0 0 0 0;
    text-align: justify;
    color:#FFFFFF;

    font-size:2.6rem;
    font-weight:700;
    line-height:2.2;
    letter-spacing: 0.05em;
  }
}


.l-block0102{
  /*background: url("../images/top/block0102_bg01_pc.png") bottom center no-repeat transparent;
  background-size: 100% auto;*/
  min-height:133.0rem;
  position: relative;
  z-index:1;
}
.l-block01{
  padding-top:10.0rem;
  position: relative;
  z-index:1;
}
.l-block01-inner{
  max-width:calc(1230px + 6.0rem);
  width:100%;
  margin:0 auto;
  padding:0 3.0rem 13.0rem;
  background:#FFFFFF;
}
.l-block01-box{
  
}
.l-block01-table{
  max-width:1230px;
  width:100%;
  margin:0 auto;
  display:table;
}
.l-block01-table > div{
  width:50%;
  display:table-cell;
  vertical-align: bottom;
}
.l-block01-table-left{
  text-align: left;
}
.l-block01-table-left span{
  display:block;
  text-align: left;
  color:#1a1a1a;
  
  font-size: clamp(24px, 3.2rem, 32px);
  font-weight:700;
  line-height:1.75;
  letter-spacing: 0.05em;
}
.l-block01-table-left h2{
  display:block;
  text-align: left;
  color:#1a1a1a;
  
  font-size:clamp(14px, 1.6rem, 16px);
  font-weight:700;
  line-height:1.5;
  letter-spacing: 0.05em;
}
.l-block01-table-right{
  text-align: right;
}
.l-block01-block{
  display:block;
  text-align: left;
  font-size:0;
  padding-top:4.5rem;
}
.l-block01-block-list{
  display: inline-block;
  width:calc((100% - 6.0rem) / 3);
  vertical-align: top;
  margin-right:3.0rem;
}
.l-block01-block-list:nth-of-type(3n){
  margin-right:0;
}
.l-block01-block-list-box{
  display:block;
}
.l-block01-block-list-box picture{
  display:block;
  overflow: hidden;
  border-radius:1.5rem;
}
.l-block01-block-list-box picture img{
  width:100%;
  transition: 0.3s;
}
.l-block01-block-list-box picture img:hover{
  transform: scale(1.1);
}
.l-block01-block-list-box-table{
  margin:2.0rem auto 0;
  width:calc(100% - 4.0rem);
  display:table;
}
.l-block01-block-list-box-table > p{
  display:table-cell;
  vertical-align: middle;
}
.l-block01-block-list-box-table-left{
  width:60%;
  text-align: left;
}
.l-block01-block-list-box-table-left span{
  margin-right:0.5rem;
  display:inline-block;
  background:#666666;
  border-radius:2.5rem;
  padding:0.5rem 2.0rem;
  text-align: center;
  color:#FFFFFF;
  
  font-size:clamp(12px, 1.4rem, 14px);
  font-weight:700;
  line-height:1.5;
  letter-spacing: 0.05em;
}
.l-block01-block-list-box-table-right{
  width:40%;
  text-align: right;
  color:#1a1a1a;
  
  font-size:clamp(12px, 1.4rem, 14px);
  font-weight:400;
  line-height:1.5;
  letter-spacing: 0.05em;
}
.l-block01-block-list-box > p{
  padding:1.5rem 2.0rem 0;
  text-align: left;
  color:#1a1a1a;
  
  font-size:clamp(14px, 1.6rem, 16px);
  font-weight:700;
  line-height:1.5;
  letter-spacing: 0em;
  
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

.l-block01-inner02{
  max-width:calc(1300px + 6.0rem);
  width:100%;
  margin:0 auto;
  padding:9.0rem 3.0rem 0;
  /*padding-bottom:65.5rem;*/
}
.l-block01-box02{
  display:block;
  background:#FFFFFF;
  border-radius:1.0rem;
  box-shadow: 0px 4px 14px -2px rgba(0, 0, 0, 0.40);
  padding:3.0rem 3.0rem 3.0rem 11.0rem;
}
.l-block01-table02{
  width:100%;
  display:table;
}
.l-block01-table02 > div{
  display:table-cell;
  vertical-align: middle;
}
.l-block01-table02-left{
  width:40.0rem;
}
.l-block01-table02-left > span{
  display:block;
  text-align: left;
  color:#1a1a1a;
  
  font-size: clamp(24px, 3.2rem, 32px);
  font-weight:700;
  line-height:1.75;
  letter-spacing: 0.05em;
}
.l-block01-table02-left > h2{
  display:block;
  text-align: left;
  color:#1a1a1a;
  
  font-size:clamp(14px, 1.6rem, 16px);
  font-weight:700;
  line-height:1.5;
  letter-spacing: 0.05em;
}
.l-block01-table02-left > p{
  padding-top:2.0rem;
  padding-bottom:5.0rem;
  display:block;
  text-align: left;
  color:#1a1a1a;
  
  font-size:clamp(13px, 1.5rem, 15px);
  font-weight:400;
  line-height:1.75;
  letter-spacing: 0.05em;
}
.l-block01-table02-right{
  width:79.0rem;
}
.l-block01-table02-right picture{
  
}
.l-block01-table02-right picture img{
  width:100%;
}


@media screen and (max-width: 767.5px) {
  .l-block0102{
    background: none;
    position: relative;
    z-index:1;
  }
  .l-block01{
    padding-top:10.0rem;
  }
  .l-block01-inner{
    max-width:100%;
    width:100%;
    margin:0 auto;
    padding:0 3.0rem;
    background:#FFFFFF;
  }
  .l-block01-box{

  }
  .l-block01-table{
    max-width:100%;
    width:100%;
    margin:0 auto;
    display:block;
  }
  .l-block01-table > div{
    width:100%;
    display:block;
    vertical-align: bottom;
  }
  .l-block01-table-left{
    width:100%;
    display:block;
  }
  .l-block01-table-left span{
    display:block;
    text-align: left;
    color:#1a1a1a;

    font-size: 4.2rem;
    font-weight:700;
    line-height:1.75;
    letter-spacing: 0.05em;
  }
  .l-block01-table-left h2{
    display:block;
    text-align: left;
    color:#1a1a1a;

    font-size:2.6rem;
    font-weight:700;
    line-height:1.5;
    letter-spacing: 0.05em;
  }
  .l-block01-table-right{
    display:none !important;
    text-align: right;
  }
  .l-block01-block{
    display:block;
    text-align: left;
    font-size:0;
    padding-top:0;
    padding-bottom:6.0rem;
  }
  .l-block01-block-list{
    display: block;
    width:100%;
    vertical-align: top;
    margin-right:0;
    padding-top:6.0rem;
  }
  .l-block01-block-list:nth-of-type(3n){
    margin-right:0;
  }
  .l-block01-block-list-box{
    display:block;
  }
  .l-block01-block-list-box picture{
    display:block;
    overflow: hidden;
    border-radius:1.5rem;
  }
  .l-block01-block-list-box picture img{
    width:100%;
    transition: 0.3s;
  }
  .l-block01-block-list-box picture img:hover{
    transform: scale(1.1);
  }
  .l-block01-block-list-box-table{
    margin:2.0rem auto 0;
    width:100%;
    display:table;
  }
  .l-block01-block-list-box-table > p{
    display:table-cell;
    vertical-align: middle;
  }
  .l-block01-block-list-box-table-left{
    width:60%;
    text-align: left;
  }
  .l-block01-block-list-box-table-left span{
    margin-right:0.5rem;
    display:inline-block;
    background:#666666;
    border-radius:2.5rem;
    padding:0.5rem 3.0rem;
    text-align: center;
    color:#FFFFFF;

    font-size:2.4rem;
    font-weight:700;
    line-height:1.5;
    letter-spacing: 0.05em;
  }
  .l-block01-block-list-box-table-right{
    width:40%;
    text-align: right;
    color:#1a1a1a;

    font-size:2.4rem;
    font-weight:400;
    line-height:1.5;
    letter-spacing: 0.05em;
  }
  .l-block01-block-list-box > p{
    padding:1.5rem 2.0rem 0;
    text-align: left;
    color:#1a1a1a;

    font-size:2.6rem;
    font-weight:700;
    line-height:1.5;
    letter-spacing: 0em;

    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
  }

  .l-block01-inner02{
    max-width:100%;
    width:100%;
    margin:0 auto;
    padding:13.0rem 3.0rem 13.0rem;
    /*padding-bottom:65.5rem;*/
  }
  .l-block01-box02{
    display:block;
    background:#FFFFFF;
    border-radius:1.0rem;
    box-shadow: 0px 4px 14px -2px rgba(0, 0, 0, 0.40);
    padding:5.0rem 5.0rem;
  }
  .l-block01-table02{
    width:100%;
    display:block;
    display:-webkit-box;
    display: -webkit-flex;
    display:-ms-flexbox;
    display: flex;
    -webkit-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
  }
  .l-block01-table02 > div{
    width:100%;
    display:block;
    vertical-align: middle;
  }
  .l-block01-table02-left{
    width:100%;
    display:block;
    padding-top:4.0rem;
    -webkit-box-ordinal-group:2;
    -ms-flex-order:2;
    -webkit-order:2;
    order:2;
  }
  .l-block01-table02-left > span{
    display:block;
    text-align: left;
    color:#1a1a1a;

    font-size: 4.2rem;
    font-weight:700;
    line-height:1.75;
    letter-spacing: 0.05em;
  }
  .l-block01-table02-left > h2{
    display:block;
    text-align: left;
    color:#1a1a1a;

    font-size:2.6rem;
    font-weight:700;
    line-height:1.5;
    letter-spacing: 0.05em;
  }
  .l-block01-table02-left > p{
    padding-top:2.0rem;
    padding-bottom:5.0rem;
    display:block;
    text-align: left;
    color:#1a1a1a;

    font-size:2.6rem;
    font-weight:400;
    line-height:1.75;
    letter-spacing: 0.05em;
  }
  .l-block01-table02-right{
    width:100%;
    display:block;
    -webkit-box-ordinal-group:1;
    -ms-flex-order:1;
    -webkit-order:1;
    order:1;
  }
  .l-block01-table02-right picture{

  }
  .l-block01-table02-right picture img{
    width:100%;
  }
}


.l-block02{
  padding:23.8rem 0 0;
  overflow: hidden;
  position: relative;
  z-index:2;
}
.l-block02 .l-block02-sample{
  position: absolute;
  top:36.0rem;
  left:44.0rem;
  animation: plane01 1.5s ease-out 0s forwards;
}
.l-block02 .l-block02-sample img{
  width:16.4rem;
}


.l-block02 .l-block02-sample01{
  opacity: 1;
  z-index:1;
  position: absolute;
  bottom:0;
  left:0;
}
.l-block02 .l-block02-sample01.active{
  /*animation: plane01 1.0s ease-out 0.5s forwards;*/
}
.l-block02 .l-block02-sample01 img{
  width:100%;
}
.l-block02 .l-block02-sample02{
  opacity: 0;
  z-index:2;
  position: absolute;
  bottom:0;
  left:0;
}
.l-block02 .l-block02-sample02.active{
  animation: plane02 0.5s ease-out 0s forwards;
}
.l-block02 .l-block02-sample02 img{
  width:100%;
}
.l-block02 .l-block02-sample03{
  opacity: 0;
  z-index:3;
  position: absolute;
  bottom:0;
  left:0;
}
.l-block02 .l-block02-sample03.active{
  animation: plane03 1.0s ease-out 0.5s forwards;
}
.l-block02 .l-block02-sample03 img{
  width:100%;
}
.l-block02 .l-block02-sample04{
  opacity: 0;
  z-index:4;
  position: absolute;
  bottom:0;
  left:0;
}
.l-block02 .l-block02-sample04.active{
  animation: plane04 1.5s ease-out 1.0s forwards;
}
.l-block02 .l-block02-sample04 img{
  width:100%;
}
@keyframes plane01 { /*animation-nameで設定した値を書く*/

  0% {
    opacity:0;
	}

  100% {
    opacity:1.0;
  }

}
@keyframes plane02 { /*animation-nameで設定した値を書く*/

  0% {
    opacity:0;
    transform: scale(1.3, 1.3);
	}

  100% {
    opacity:1.0;
    transform: scale(1.0, 1.0);
  }

}
@keyframes plane03 { /*animation-nameで設定した値を書く*/

  0% {
    opacity:0;
	}

  100% {
    opacity:1.0;
  }

}
@keyframes plane04 { /*animation-nameで設定した値を書く*/

  0% {
    opacity:0;
    bottom:-7.0rem;
    left:5.0rem;
    transform: scale(1.0, 1.0) rotateY(90deg);
	}
  
  30% {
    opacity:0;
    transform: scale(1.0, 1.0) rotateY(90deg);
	}

	50% {
    opacity:0;
	}
  

	98% {
    opacity:1.0;
    bottom:0;
    left:0;
    transform: scale(1.0, 1.0) rotateY(0deg);
	}

  100% {
    opacity:1.0;
    transform: scale(1.0, 1.0) rotateY(0deg);
  }

}

/*
@keyframes plane01 {

  0% {
    opacity:0;
    bottom:26.0;
    left:34.0rem;
    transform: skew(-20deg) scale(1.3, 1.3) rotateY(90deg);
	}
  
  30% {
    transform: skew(-20deg) scale(1.3, 1.3) rotateY(90deg);
	}

	90% {
    opacity:1.0;
	}
  

	98% {
    opacity:1.0;
    transform: skew(0deg) scale(1.0, 1.0) rotateY(0deg);
	}

  100% {
    opacity:1.0;
    bottom:0;
    left:0;
    transform: skew(0deg) scale(1.0, 1.0) rotateY(0deg);
  }

}
@keyframes plane02 {

  0% {
    opacity:0;
    bottom:26.0;
    left:34.0rem;
    transform: skew(-20deg) scale(1.3, 1.3) rotateY(90deg);
	}
  
  30% {
    transform: skew(-20deg) scale(1.3, 1.3) rotateY(90deg);
	}

	90% {
    opacity:1.0;
	}
  

	98% {
    opacity:1.0;
    transform: skew(0deg) scale(1.0, 1.0) rotateY(0deg);
	}

  100% {
    opacity:1.0;
    bottom:0;
    left:0;
    transform: skew(0deg) scale(1.0, 1.0) rotateY(0deg);
  }

}
@keyframes plane03 {

  0% {
    opacity:0;
    bottom:26.0;
    left:34.0rem;
    transform: skew(-20deg) scale(1.3, 1.3) rotateY(90deg);
	}
  
  30% {
    transform: skew(-20deg) scale(1.3, 1.3) rotateY(90deg);
	}

	90% {
    opacity:1.0;
	}
  

	98% {
    opacity:1.0;
    transform: skew(0deg) scale(1.0, 1.0) rotateY(0deg);
	}

  100% {
    opacity:1.0;
    bottom:0;
    left:0;
    transform: skew(0deg) scale(1.0, 1.0) rotateY(0deg);
  }

}
*/

@keyframes plane01sp { /*animation-nameで設定した値を書く*/

  0% {
    opacity:0;
		top:117.0rem;
    left:14.0rem;
    transform: skew(-20deg) scale(1.3, 1.3);
	}
  
  30% {
    transform: skew(-20deg) scale(1.3, 1.3);
	}

	90% {
    opacity:1.0;
	}
  

	98% {
    opacity:1.0;
	}

  100% {
    top:127.0rem;
    left:24.0rem;
    transform: skew(0deg) scale(1.0, 1.0);
  }

}
.l-block02-inner{
  max-width:calc(1680px + 6.0rem);
  width:100%;
  margin:0 auto;
  padding:0 5.0rem 28.0rem 88.0rem;
  position: relative;
  z-index:5;
}
.l-block02-inner h2{
  text-align: left;
  position: relative;
  top: -7.5rem;
}
.l-block02-inner h2 img{
  width:795px;
}
.l-block02-inner h3{
  margin-top:-3.0rem;
  padding-left:35.5rem;
  padding-bottom:1.0rem;
  text-align: left;
  color:#1a1a1a;
  
  font-size: clamp(36px, 4.8rem, 48px);
  font-weight:900;
  line-height:1.2;
  letter-spacing: 0em;
}
.l-block02-inner > p{
  padding-top:3.0rem;
  padding-left:35.5rem;
  text-align: justify;
  color:#1a1a1a;
  
  font-size:clamp(14px, 1.6rem, 16px);
  font-weight:700;
  line-height:2.2;
  letter-spacing: 0em;
}


@media screen and (max-width: 767.5px) {
  .l-block02{
    padding:5.8rem 0 0;
    position: relative;
  }
  .l-block02 .l-block02-sample{
    position: absolute;
    top:127.0rem;
    left:24.0rem;
    animation: plane01sp 1.5s ease-out 0s forwards;
  }
  .l-block02 .l-block02-sample img{
    width:16.4rem;
  }  
  
  .l-block02-inner{
    max-width:100%;
    width:100%;
    margin:0 auto;
    padding:0 3.0rem 80.0rem;
  }
  .l-block02-inner h2{
    text-align: left;
    position: relative;
    top: -7.5rem;
  }
  .l-block02-inner h2 img{
    width:100%;
  }
  .l-block02-inner h3{
    margin-top:0;
    padding-left:0;
    padding-bottom:1.0rem;
    text-align: left;
    color:#1a1a1a;

    font-size: 6.0rem;
    font-weight:900;
    line-height:1.5;
    letter-spacing: 0em;
  }
  .l-block02-inner > p{
    padding-top:3.0rem;
    padding-left:0;
    text-align: justify;
    color:#1a1a1a;

    font-size:2.6rem;
    font-weight:700;
    line-height:2.2;
    letter-spacing: 0em;
  }
  
}

.l-block03-container{
  
}
.l-block03-container-inner{
  
}

.l-block03{
  background: url("../images/top/block03-bg01_pc.png") center center no-repeat transparent;
  background-size: cover;
  min-height:104.5rem;
  padding:12.0rem 3.0rem 12.0rem;
  background-attachment: fixed;
}
.l-block03-inner{
  max-width:120.0rem;
  width:100%;
  margin:0 auto;
}
.l-block03-table{
  width:100%;
  display:block;
  margin:0 0 0 auto;
}
.l-block03-table > div{
  width:100%;
  display:block;
  vertical-align: middle;
  text-align: left;
}
.l-block03-table-left{
  width:100%;
  display:block;
  padding-right:0;
  white-space: wrap;
}
.l-block03-table-left > span{
  display: block;
  text-align: left;
  color: #FFFFFF;

  font-size: 4.2rem;
  font-weight: 700;
  line-height: 1.75;
  letter-spacing: 0.05em;
}
.l-block03-table-left > h2{
  display: block;
  text-align: left;
  color: #FFFFFF;

  font-size: 2.6rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
.l-block03-table-left > ul{
  display:block;
  padding-top:2.5rem;
  padding-bottom:3.5rem;
  
  display:none !important;
}
.l-block03-table-left > ul li{
  display:block;
  border-bottom:1px dotted #FFFFFF;
}
.l-block03-table-left > ul li:last-of-type{
  border-bottom:none;
}
.l-block03-table-left > ul li p{
  background: url("../images/top/block03-icon01-1_pc.png") left center no-repeat transparent;
  background-size: 2.4rem auto;
  min-height:2.4rem;
  padding:2.5rem 0 2.5rem 4.2rem;
  text-align: left;
  color: #FFFFFF;

  font-size:2.6rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
.l-block03-table-left > ul li p.current{
  background: url("../images/top/block03-icon01-2_pc.png") left center no-repeat transparent;
  background-size: 2.4rem auto;
  min-height:2.4rem;
}
.l-block03-table-left > ul li p:hover{
  cursor:pointer;
}
.l-block03-table-right{
  width:126.0rem;
}
.l-block03-slider{
  padding-bottom:6.0rem;
}
.l-block03-slider-list{
  display:block;
  width:100%;
  min-height:80.4rem;
  margin:0 4.0rem;
}
.l-block03-slider-list.active{
  display:block;
}
.l-block03-slider-list-box{
  background: #288743;
  border-radius:7.5rem;
  box-shadow: 0px 4px 14px -2px rgba(0, 0, 0, 0.40);
  padding: 5.0rem 5.0rem;
  min-height: 77.0rem;
}
.l-block03-slider-list-box.service01{
  background: #288743;
}
.l-block03-slider-list-box.service02{
  background: #FFFFFF;
}
.l-block03-slider-list-box.service03{
  background: #909ec4;
}
.l-block03-slider-list-box-table{
  max-width:1000px;
  width:100%;
  display:table;
}
.l-block03-slider-list-box-table > div{
  width:50%;
  display:table-cell;
  vertical-align: top;
}
.l-block03-slider-list-box-table-left{
  text-align: left;
}
.l-block03-slider-list-box-table-left picture{

}
.l-block03-slider-list-box-table-left picture img{
  width:27.9rem;
}
.l-block03-slider-list-box-table-right{
  text-align: right;
}
.l-block03-slider-list-box-table-right span{
  font-family: "lemon", 'Noto Sans JP', sans-serif;
  font-style: normal;

  display:inline-block;
  border-radius:2.0rem;
  padding:0.8rem 2.8rem;
  background:#FFFFFF;
  text-align: center;
  color: #288743;

  font-size:clamp(13px, 1.5rem, 15px);
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
.l-block03-slider-list-box-table-right span.service01{
  background:#FFFFFF;
  color: #288743;
}
.l-block03-slider-list-box-table-right span.service02{
  background:#585757;
  color: #FFFFFF;
}
.l-block03-slider-list-box-table-right span.service03{
  background:#FFFFFF;
  color: #909ec4;
}
.l-block03-slider-list-box .l-block03-block{
  margin-top: 0;
}
.l-block03-slider-list-box .l-block03-block a{
  display:block;
}
.l-block03-slider-list-box .l-block03-block a:hover{
  opacity:1.0;
}
.l-block03-slider-list-box.service01 .l-block03-block{
  margin-top: 0;
}
.l-block03-slider-list-box.service02 .l-block03-block{
  margin-top: 0;
}
.l-block03-slider-list-box.service03 .l-block03-block{
  margin-top: 0;
}
.l-block03-block picture{

}
.l-block03-block picture img{
  width:100%;
}
.l-block03-block p{
  max-width:800px;
  width:100%;
  padding-top:1.0rem;
  text-align: left;
  color: #FFFFFF;

  font-size:clamp(14px, 1.6rem, 16px);
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0.05em;
}
.l-block03-block p span{
  padding-bottom: 2.0rem;
  display:block;
  text-align: left;
  color: #FFFFFF;

  font-size: clamp(22px, 3.0rem, 30px);
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0.05em;
}
.l-block03-block p.service01{
  color: #FFFFFF;
}
.l-block03-block p.service01 span{
  color: #FFFFFF;
}
.l-block03-block p.service02{
  color: #1a1a1a;
}
.l-block03-block p.service02 span{
  color: #1a1a1a;
}
.l-block03-block p.service03{
  color: #FFFFFF;
}
.l-block03-block p.service03 span{
  color: #FFFFFF;
}

/*.l-block03{
  background: url("../images/top/block03-bg01_pc.png") center center no-repeat transparent;
  background-size: cover;
  min-height:104.5rem;
  padding:20.0rem 0 10.0rem;
  background-attachment: fixed;
}
.l-block03-inner{
  max-width:1920px;
  width:100%;
  margin:0 auto;
}
.l-block03-table{
  width:166.0rem;
  display:block;
  margin:0 0 0 auto;
  text-align: center;
  font-size:0;
}
.l-block03-table > div{
  display:inline-block;
  vertical-align: middle;
  text-align: left;
}
.l-block03-table-left{
  width:40.0rem;
  padding-right:10.0rem;
  white-space: nowrap;
}
.l-block03-table-left > span{
  display: block;
  text-align: left;
  color: #FFFFFF;
  
  font-size: clamp(24px, 3.2rem, 32px);
  font-weight: 700;
  line-height: 1.75;
  letter-spacing: 0.05em;
}
.l-block03-table-left > h2{
  display: block;
  text-align: left;
  color: #FFFFFF;
  
  font-size: clamp(14px, 1.6rem, 16px);
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
.l-block03-table-left > ul{
  display:block;
  padding-top:2.5rem;
  padding-bottom:3.5rem;
}
.l-block03-table-left > ul li{
  display:block;
  border-bottom:1px dotted #FFFFFF;
}
.l-block03-table-left > ul li:last-of-type{
  border-bottom:none;
}
.l-block03-table-left > ul li p{
  background: url("../images/top/block03-icon01-1_pc.png") left center no-repeat transparent;
  background-size: 1.6rem auto;
  min-height:1.6rem;
  padding:2.5rem 0 2.5rem 2.8rem;
  text-align: left;
  color: #FFFFFF;
  
  font-size:clamp(13px, 1.5rem, 15px);
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
.l-block03-table-left > ul li p.current{
  background: url("../images/top/block03-icon01-2_pc.png") left center no-repeat transparent;
  background-size: 1.6rem auto;
  min-height:1.6rem;
}
.l-block03-table-left > ul li p:hover{
  cursor:pointer;
}
.l-block03-table-right{
  width:126.0rem;
}
.l-block03-slider{
  
}
.l-block03-slider-list{
  display:none;
  min-height:80.4rem;
}
.l-block03-slider-list.active{
  display:block;
}
.l-block03-slider-list-box{
  background: #288743;
  border-radius:7.5rem 0 0 7.5rem;
  box-shadow: 0px 4px 14px -2px rgba(0, 0, 0, 0.40);
  padding: 8.5rem 10.0rem 6.5rem 10.0rem;
}
.l-block03-slider-list-box.service01{
  background: #288743;
}
.l-block03-slider-list-box.service02{
  background: #FFFFFF;
}
.l-block03-slider-list-box.service03{
  background: #909ec4;
}
.l-block03-slider-list-box-table{
  max-width:1000px;
  width:100%;
  display:table;
}
.l-block03-slider-list-box-table > div{
  width:50%;
  display:table-cell;
  vertical-align: top;
}
.l-block03-slider-list-box-table-left{
  text-align: left;
}
.l-block03-slider-list-box-table-left picture{
  
}
.l-block03-slider-list-box-table-left picture img{
  width:27.9rem;
}
.l-block03-slider-list-box-table-right{
  text-align: right;
}
.l-block03-slider-list-box-table-right span{
  font-family: "lemon", 'Noto Sans JP', sans-serif;
  font-style: normal;
  
  display:inline-block;
  border-radius:2.0rem;
  padding:0.8rem 2.8rem;
  background:#FFFFFF;
  text-align: center;
  color: #288743;
  
  font-size:clamp(13px, 1.5rem, 15px);
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
.l-block03-slider-list-box-table-right span.service01{
  background:#FFFFFF;
  color: #288743;
}
.l-block03-slider-list-box-table-right span.service02{
  background:#585757;
  color: #FFFFFF;
}
.l-block03-slider-list-box-table-right span.service03{
  background:#FFFFFF;
  color: #909ec4;
}
.l-block03-slider-list-box .l-block03-block{
  margin-top: 0;
}
.l-block03-slider-list-box .l-block03-block a{
  display:block;
}
.l-block03-slider-list-box .l-block03-block a:hover{
  opacity:1.0;
}
.l-block03-slider-list-box.service01 .l-block03-block{
  margin-top: 0;
}
.l-block03-slider-list-box.service02 .l-block03-block{
  margin-top: -3.0rem;
}
.l-block03-slider-list-box.service03 .l-block03-block{
  margin-top: -2.0rem;
}
.l-block03-block picture{
  
}
.l-block03-block picture img{
  width:100%;
}
.l-block03-block p{
  max-width:800px;
  width:100%;
  padding-top:1.0rem;
  text-align: left;
  color: #FFFFFF;
  
  font-size:clamp(13px, 1.5rem, 15px);
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0.05em;
}
.l-block03-block p span{
  padding-bottom: 2.0rem;
  display:block;
  text-align: left;
  color: #FFFFFF;
  
  font-size:clamp(14px, 2.0rem, 20px);
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: 0.05em;
}
.l-block03-block p.service01{
  color: #FFFFFF;
}
.l-block03-block p.service01 span{
  color: #FFFFFF;
}
.l-block03-block p.service02{
  color: #1a1a1a;
}
.l-block03-block p.service02 span{
  color: #1a1a1a;
}
.l-block03-block p.service03{
  color: #FFFFFF;
}
.l-block03-block p.service03 span{
  color: #FFFFFF;
}*/


@media screen and (max-width: 767.5px) {
  .l-block03{
    background: url("../images/top/block03-bg01_pc.png") center center no-repeat transparent;
    background-size: cover;
    min-height:104.5rem;
    padding:12.0rem 3.0rem 12.0rem;
    background-attachment: fixed;
  }
  .l-block03-inner{
    max-width:100%;
    width:100%;
    margin:0 auto;
  }
  .l-block03-table{
    width:100%;
    display:block;
    margin:0 0 0 auto;
  }
  .l-block03-table > div{
    width:100%;
    display:block;
    vertical-align: middle;
    text-align: left;
  }
  .l-block03-table-left{
    width:100%;
    display:block;
    padding-right:0;
    white-space: wrap;
  }
  .l-block03-table-left > span{
    display: block;
    text-align: left;
    color: #FFFFFF;

    font-size: 4.2rem;
    font-weight: 700;
    line-height: 1.75;
    letter-spacing: 0.05em;
  }
  .l-block03-table-left > h2{
    display: block;
    text-align: left;
    color: #FFFFFF;

    font-size: 2.6rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.05em;
  }
  .l-block03-table-left > ul{
    display:block;
    padding-top:2.5rem;
    padding-bottom:3.5rem;
    
    display:none !important;
  }
  .l-block03-table-left > ul li{
    display:block;
    border-bottom:1px dotted #FFFFFF;
  }
  .l-block03-table-left > ul li:last-of-type{
    border-bottom:none;
  }
  .l-block03-table-left > ul li p{
    background: url("../images/top/block03-icon01-1_pc.png") left center no-repeat transparent;
    background-size: 2.4rem auto;
    min-height:2.4rem;
    padding:2.5rem 0 2.5rem 4.2rem;
    text-align: left;
    color: #FFFFFF;

    font-size:2.6rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.05em;
  }
  .l-block03-table-left > ul li p.current{
    background: url("../images/top/block03-icon01-2_pc.png") left center no-repeat transparent;
    background-size: 2.4rem auto;
    min-height:2.4rem;
  }
  .l-block03-table-left > ul li p:hover{
    cursor:pointer;
  }
  .l-block03-table-right{
    width:126.0rem;
  }
  .l-block03-slider{
    padding-bottom:6.0rem;
  }
  .l-block03-slider-list{
    display:block;
    width:100%;
    min-height:80.4rem;
    margin:0 3.0rem;
  }
  .l-block03-slider-list.active{
    display:block;
  }
  .l-block03-slider-list-box{
    background: #288743;
    border-radius:7.5rem;
    box-shadow: 0px 4px 14px -2px rgba(0, 0, 0, 0.40);
    padding: 5.0rem 5.0rem;
    min-height: 90.0rem;
  }
  .l-block03-slider-list-box.service01{
    background: #288743;
  }
  .l-block03-slider-list-box.service02{
    background: #FFFFFF;
  }
  .l-block03-slider-list-box.service03{
    background: #909ec4;
  }
  .l-block03-slider-list-box-table{
    max-width:1000px;
    width:100%;
    display:table;
  }
  .l-block03-slider-list-box-table > div{
    width:50%;
    display:table-cell;
    vertical-align: top;
  }
  .l-block03-slider-list-box-table-left{
    text-align: left;
  }
  .l-block03-slider-list-box-table-left picture{

  }
  .l-block03-slider-list-box-table-left picture img{
    width:27.9rem;
  }
  .l-block03-slider-list-box-table-right{
    text-align: right;
  }
  .l-block03-slider-list-box-table-right span{
    font-family: "lemon", 'Noto Sans JP', sans-serif;
    font-style: normal;

    display:inline-block;
    border-radius:2.0rem;
    padding:0.8rem 2.8rem;
    background:#FFFFFF;
    text-align: center;
    color: #288743;

    font-size:2.4rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.05em;
  }
  .l-block03-slider-list-box-table-right span.service01{
    background:#FFFFFF;
    color: #288743;
  }
  .l-block03-slider-list-box-table-right span.service02{
    background:#585757;
    color: #FFFFFF;
  }
  .l-block03-slider-list-box-table-right span.service03{
    background:#FFFFFF;
    color: #909ec4;
  }
  .l-block03-slider-list-box .l-block03-block{
    margin-top: 0;
  }
  .l-block03-slider-list-box .l-block03-block a{
    display:block;
  }
  .l-block03-slider-list-box .l-block03-block a:hover{
    opacity:1.0;
  }
  .l-block03-slider-list-box.service01 .l-block03-block{
    margin-top: 0;
  }
  .l-block03-slider-list-box.service02 .l-block03-block{
    margin-top: 0;
  }
  .l-block03-slider-list-box.service03 .l-block03-block{
    margin-top: 0;
  }
  .l-block03-block picture{

  }
  .l-block03-block picture img{
    width:100%;
  }
  .l-block03-block p{
    max-width:800px;
    width:100%;
    padding-top:1.0rem;
    text-align: left;
    color: #FFFFFF;

    font-size:2.6rem;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0.05em;
  }
  .l-block03-block p span{
    padding-bottom: 2.0rem;
    display:block;
    text-align: left;
    color: #FFFFFF;

    font-size:4.2rem;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0.05em;
  }
  .l-block03-block p.service01{
    color: #FFFFFF;
  }
  .l-block03-block p.service01 span{
    color: #FFFFFF;
  }
  .l-block03-block p.service02{
    color: #1a1a1a;
  }
  .l-block03-block p.service02 span{
    color: #1a1a1a;
  }
  .l-block03-block p.service03{
    color: #FFFFFF;
  }
  .l-block03-block p.service03 span{
    color: #FFFFFF;
  }
}


.l-block04{
  padding:0 3.0rem 0;
  margin-top: -15.0rem;
}
.l-block04-inner{
  max-width:1820px;
  width:100%;
  margin:0 auto;
}
.l-block04-block{
  display:block;
  text-align: center;
  font-size:0;
}
.l-block04-block-list{
  width: calc((100% - 2.4rem * 3) / 4);
  display:inline-block;
  vertical-align: top;
  margin-right:2.4rem;
  overflow: hidden;
}
.l-block04-block-list:nth-of-type(4n){
  margin-right:0;
}
.l-block04-block-list a{
  display:block;
  min-height:40.0rem;
  text-align: center;
  position: relative;
}
.l-block04-block-list a:after{
  position: absolute;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  top: 0;
  background: url("../images/top/block04-img01_pc.png") center center no-repeat transparent;
  background-size: cover;
  -webkit-transition: all .3s ease-out;
  -moz-transition: all .3s ease-out;
  -ms-transition: all .3s ease-out;
  transition: all .3s ease-out;
}
.l-block04-block-list a:hover{
  opacity:1.0;
}
.l-block04-block-list a.about:after{
  position: absolute;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  top: 0;
  background: url("../images/top/block04-img01_pc.png") center center no-repeat transparent;
  background-size: cover;
  -webkit-transition: all .3s ease-out;
  -moz-transition: all .3s ease-out;
  -ms-transition: all .3s ease-out;
  transition: all .3s ease-out;
}
.l-block04-block-list a:hover:after {
  transform: scale(1.1);
}
.l-block04-block-list a.oem:after{
  position: absolute;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  top: 0;
  background: url("../images/top/block04-img02_pc.png") center center no-repeat transparent;
  background-size: cover;
  -webkit-transition: all .3s ease-out;
  -moz-transition: all .3s ease-out;
  -ms-transition: all .3s ease-out;
  transition: all .3s ease-out;
}
.l-block04-block-list a.business:after{
  position: absolute;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  top: 0;
  background: url("../images/top/block04-img03_pc.png") center center no-repeat transparent;
  background-size: cover;
  -webkit-transition: all .3s ease-out;
  -moz-transition: all .3s ease-out;
  -ms-transition: all .3s ease-out;
  transition: all .3s ease-out;
}
.l-block04-block-list a.facility:after{
  position: absolute;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  top: 0;
  background: url("../images/top/block04-img04_pc.png") center center no-repeat transparent;
  background-size: cover;
  -webkit-transition: all .3s ease-out;
  -moz-transition: all .3s ease-out;
  -ms-transition: all .3s ease-out;
  transition: all .3s ease-out;
}
.l-block04-block-list a p{
  position: absolute;
  left:0;
  right:0;
  bottom:3.0rem;
  margin:0 auto;
  display:inline-block;
  border-radius:4.5rem;
  padding:2.0rem 5.5rem;
  background: url("../images/top/block04-icon01_pc.png") right 3.0rem center no-repeat #FFFFFF;
  background-size: 1.3rem auto;
  min-height:1.7rem;
  text-align: center;
  width:40.0rem;
  z-index: 2;
}
.l-block04-block-list a p span{
  text-align: center;
  color: #1a1a1a;
  
  font-size:clamp(14px, 1.6rem, 16px);
  font-weight: 700;
  line-height: 1.75;
  letter-spacing: 0.05em;
}


@media screen and (max-width: 767.5px) {
  .l-block04{
    padding:0 0 0;
    margin-top: 0;
  }
  .l-block04-inner{
    max-width:100%;
    width:100%;
    margin:0 auto;
  }
  .l-block04-block{
    display:block;
    text-align: left;
    font-size:0;
    padding:0 0;
  }
  .l-block04-block-list{
    width:calc(50% - 1.0rem);
    display:inline-block;
    vertical-align: top;
    margin-top:3.0rem;
    margin-right:0;
    overflow: hidden;
  }
  .l-block04-block-list:nth-of-type(odd){
    margin-right:1.0rem;
  }
  .l-block04-block-list:nth-of-type(even){
    margin-left:1.0rem;
  }
  .l-block04-block-list a{
    display:block;
    min-height:30.0rem;
    text-align: center;
    position: relative;
  }
  .l-block04-block-list a:hover{
    opacity:1.0;
  }
  .l-block04-block-list a:after{
    position: absolute;
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    top: 0;
    background: url("../images/top/block04-img01_pc.png") center center no-repeat transparent;
    background-size: cover;
    -webkit-transition: all .3s ease-out;
    -moz-transition: all .3s ease-out;
    -ms-transition: all .3s ease-out;
    transition: all .3s ease-out;
  }
  .l-block04-block-list a.about:after{
    position: absolute;
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    top: 0;
    background: url("../images/top/block04-img01_pc.png") center center no-repeat transparent;
    background-size: cover;
    -webkit-transition: all .3s ease-out;
    -moz-transition: all .3s ease-out;
    -ms-transition: all .3s ease-out;
    transition: all .3s ease-out;
  }
  .l-block04-block-list a:hover:after {
    transform: scale(1.1);
  }
  .l-block04-block-list a.oem:after{
    position: absolute;
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    top: 0;
    background: url("../images/top/block04-img02_pc.png") center center no-repeat transparent;
    background-size: cover;
    -webkit-transition: all .3s ease-out;
    -moz-transition: all .3s ease-out;
    -ms-transition: all .3s ease-out;
    transition: all .3s ease-out;
  }
  .l-block04-block-list a.business:after{
    position: absolute;
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    top: 0;
    background: url("../images/top/block04-img03_pc.png") center center no-repeat transparent;
    background-size: cover;
    -webkit-transition: all .3s ease-out;
    -moz-transition: all .3s ease-out;
    -ms-transition: all .3s ease-out;
    transition: all .3s ease-out;
  }
  .l-block04-block-list a.facility:after{
    position: absolute;
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    top: 0;
    background: url("../images/top/block04-img04_pc.png") center center no-repeat transparent;
    background-size: cover;
    -webkit-transition: all .3s ease-out;
    -moz-transition: all .3s ease-out;
    -ms-transition: all .3s ease-out;
    transition: all .3s ease-out;
  }
  .l-block04-block-list a p{
    position: absolute;
    left:0;
    right:0;
    bottom:3.0rem;
    margin:0 auto;
    display:inline-block;
    border-radius:4.5rem;
    padding:1.5rem 5.5rem 1.5rem 4.0rem;
    background: url("../images/top/block04-icon01_pc.png") right 3.0rem center no-repeat #FFFFFF;
    background-size: 2.0rem auto;
    min-height:2.6rem;
    text-align: center;
    width:30.0rem;
    
    z-index: 2;
  }
  .l-block04-block-list a p span{
    text-align: center;
    color: #1a1a1a;

    font-size:2.4rem;
    font-weight: 700;
    line-height: 1.75;
    letter-spacing: 0.05em;
  }
}


.l-block05{
  margin-top:10.0rem;
  padding:10.0rem 0 8.2rem;
  background: url("../images/top/block05-bg01_pc.png") top center no-repeat #f2f2f2;
  background-size: 100% auto;
  min-height:90.0rem;
}
.l-block05-inner{
  max-width:1920px;
  width:100%;
  height:65.1rem;
  margin:0 auto;
  padding:9.0rem 0;
  background: none;
  text-align: left;
  position:relative;
}
.l-block05-block{
  position:absolute;
  bottom:0;
  left:0;
  display:inline-block;
  width:auto;
  padding:10.0rem 16.0rem;
  text-align: left;
  background:#f2f2f2;
}
.l-block05-block > h3{
  display:inline-block;
  text-align: center;
  color: #1a1a1a;
  
  font-size: clamp(27px, 3.6rem, 36px);
  font-weight: 900;
  line-height: 1.5;
  letter-spacing: 0em;
  
  padding-bottom:5.0rem;
  border-bottom:2px solid #1a1a1a;
}
.l-block05-block > span{
  display: block;
  text-align: left;
  color: #1a1a1a;
  
  font-size: clamp(24px, 3.2rem, 32px);
  font-weight: 700;
  line-height: 1.75;
  letter-spacing: 0.05em;
}
.l-block05-block > h2{
  padding-bottom:4.0rem;
  display: block;
  text-align: left;
  color: #1a1a1a;
  
  font-size: clamp(14px, 1.6rem, 16px);
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.05em;
}


@media screen and (max-width: 767.5px) {
  .l-block05{
    margin-top:4.0rem;
    padding:10.0rem 0 8.2rem;
    background: url("../images/top/block05-bg01_sp.png") top center no-repeat #f2f2f2;
    background-size: cover;
    min-height:auto;
  }
  .l-block05-inner{
    max-width:100%;
    width:100%;
    height:37.0rem;
    margin:0 auto;
    padding:0 0;
  }
  .l-block05-block{
    position:absolute;
    bottom:0;
    left:3.0rem;
    display:inline-block;
    width:auto;
    padding:6.0rem 5.0rem;
    text-align: left;
    background:#f2f2f2;
  }
  .l-block05-block > h3{
    display:inline-block;
    text-align: center;
    color: #1a1a1a;

    font-size: 4.4rem;
    font-weight: 900;
    line-height: 1.5;
    letter-spacing: 0em;

    padding-bottom:5.0rem;
    border-bottom:2px solid #1a1a1a;
  }
  .l-block05-block > span{
    display: block;
    text-align: left;
    color: #1a1a1a;

    font-size: 4.2rem;
    font-weight: 700;
    line-height: 1.75;
    letter-spacing: 0.05em;
  }
  .l-block05-block > h2{
    padding-bottom:4.0rem;
    display: block;
    text-align: left;
    color: #1a1a1a;

    font-size: 2.6rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.05em;
  }
}



.l-block04{
  transition: 0.3s;
}
.sticky_wrap {
  overflow: hidden;
  position: sticky;
  top: 15.0rem;
  height: 110.0rem;
}
.l-block03-table-right {
  position: relative;
  padding-top:10.0rem;
  height: 350.0rem;
}
.horizontal_scroll {
  position: absolute;
  top: 0;
  height: auto;
  width: 350.0rem;
  will-change: transform;
  display: flex;
  justify-content: space-between;
  padding: 0 0;
  transition: 0.1s;
}
@media screen and (max-width: 767.5px) {
  .l-block04{
    transition: 0.3s;
  }
  .sticky_wrap {
    overflow: hidden;
    position: sticky;
    top: 30.0rem;
    height: 110.0rem;
  }
  .l-block03-table-right {
    position: relative;
    padding-top:10.0rem;
    height: 290.0rem;
  }
  .horizontal_scroll {
    position: absolute;
    top: 0;
    height: auto;
    width: 207.0rem;
    will-change: transform;
    display: flex;
    justify-content: space-between;
    padding: 0 0;
    transition: 0.1s;
  }
}

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


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








