@charset "UTF-8";
.l-breadcrumb{
  background:#F1F1F1;
  padding:13px 0;
}
.l-breadcrumb-inner{
  max-width:1100px;
  width:100%;
  margin:0 auto;
  text-align: left;
}
.l-breadcrumb a{
  padding-right:30px;  
  background: url("../images/common/icon_breadcrumb_pc.png") right 10px center no-repeat transparent;
  background-size:9px auto;
  color:#006AB8;
  text-decoration: underline;
  
  font-size:1.4rem;
  font-weight:400;
  letter-spacing: 0.1em;  
}
.l-breadcrumb p{
  display:inline-block;
  text-align: left;
  
  font-size:1.4rem;
  font-weight:400;
  letter-spacing: 0.1em;  
}
@media all and (max-width: 767px) {
  .l-breadcrumb{
    background:#F1F1F1;
    padding:2.66vw 4vw;
  }
  .l-breadcrumb-inner{
    max-width:100%;
    width:100%;
    margin:0 auto;
    text-align: left;
  }
  .l-breadcrumb a{
    padding-right:6.66vw;  
    background: url("../images/common/icon_breadcrumb_sp.png") right 2.66vw center no-repeat transparent;
    background-size:1.86vw auto;
    color:#006AB8;
    text-decoration: underline;

    font-size:3.2vw;
    font-weight:400;
    letter-spacing: 0.1em;  
  }
  .l-breadcrumb p{
    display:inline-block;
    text-align: left;

    font-size:3.2vw;
    font-weight:400;
    letter-spacing: 0.1em;  
  }
}

.l-sdgs01{
  padding:120px 0 100px;
}
.l-sdgs01-inner{
  max-width:1100px;
  width:100%;
  margin:0 auto;
}
.l-sdgs01-ttl{
  padding-bottom:40px;
}
.l-sdgs01-ttl p{
  text-align: center;
  
  font-size:2.8rem;
  font-weight:700;
  line-height:1.92;
  letter-spacing: 0.15em;
}
.l-sdgs01-ttl p span{
  text-align: center;
  color:#006AB8;
  
  font-size:2.8rem;
  font-weight:700;
  line-height:1.92;
  letter-spacing: 0.15em;
}
.l-sdgs01-box{
  max-width:800px;
  width:100%;
  margin:0 auto;
  border:1px solid #CBCBCB;
  padding:20px 20px;
}
.l-sdgs01-box p{
  text-align: center;
}
.l-sdgs01-box p img{
  margin:0 15px;
}
.l-sdgs01-box p img.-image01{
  max-width:249px;
  width:100%;
}
.l-sdgs01-box p img.-image02{
  max-width:68px;
  width:100%;
}
.l-sdgs01-box p img.-image03{
  max-width:249px;
  width:100%;
}
.l-sdgs01-image01{
  padding-top:80px;
}
.l-sdgs01-image01 p{
  text-align: center;
  line-height:0;
}
.l-sdgs01-image01 p img{
  max-width:1100px;
  width:100%;
}
@media all and (max-width: 767px) {
  .l-sdgs01{
    padding:9.33vw 4vw 13.33vw;
  }
  .l-sdgs01-inner{
    max-width:100%;
    width:100%;
    margin:0 auto;
  }
  .l-sdgs01-ttl{
    padding-bottom:4vw;
  }
  .l-sdgs01-ttl p{
    text-align: center;

    font-size:4.26vw;
    font-weight:700;
    line-height:1.8125;
    letter-spacing: 0.15em;
  }
  .l-sdgs01-ttl p span{
    text-align: center;
    color:#006AB8;

    font-size:4.26vw;
    font-weight:700;
    line-height:1.8125;
    letter-spacing: 0.15em;
  }
  .l-sdgs01-box{
    width:100%;
    margin:0 auto;
    border:1px solid #CBCBCB;
    padding:2.66vw 4vw;
  }
  .l-sdgs01-box p{
    text-align: center;
  }
  .l-sdgs01-box p img{
    margin:0 2vw;
  }
  .l-sdgs01-box p img.-image01{
    max-width:33.2vw;
    width:100%;
    margin:0 2vw 0 0;
  }
  .l-sdgs01-box p img.-image02{
    max-width:9.06vw;
    width:100%;
  }
  .l-sdgs01-box p img.-image03{
    max-width:33.2vw;
    width:100%;
    margin:0 0;
  }
  .l-sdgs01-image01{
    padding-top:8vw;
  }
  .l-sdgs01-image01 p{
    text-align: center;
    line-height:0;
  }
  .l-sdgs01-image01 p img{
    max-width:100%;
    width:100%;
  }
}

.l-company02{
  padding:110px 0 0;
}
.l-company02.-type02{
  background:#F9F9F9;
}
.l-company02-inner{
  max-width:1100px;
  width:100%;
  margin:0 auto;
}
.l-company02 h2{
  text-align: left;
  position: relative;
  padding-left: 35px;
  padding-bottom: 60px;
  font-size: 4.0rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.15em;
}
.l-company02 h2::before {
  -webkit-transform: translateY(-50%);
  background: -webkit-gradient(linear, left top, left bottom, from(#006AB8), to(#29aae1));
  background: -webkit-linear-gradient(top, #006AB8, #29aae1);
  background: linear-gradient(to bottom, #006AB8, #29aae1);
  content: "";
  height: 70px;
  left: 0;
  position: absolute;
  top: 25px;
  transform: translateY(-50%);
  width: 4px;
}
.l-company02 h3{
  margin-bottom:25px;
  text-align: left;
  padding-bottom: 20px;
  border-bottom:4px solid #E5E5E5;
  
  font-size: 3.0rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.15em;
}
.l-company02 h3.-type02{
  margin-top:40px;
}
.l-company02 table{
  width:100%;
}
.l-company02 table tr th{
  width:330px;
  border-top:1px solid #006AB8;
  border-bottom:1px solid #006AB8;
  border-right:30px solid #FFFFFF;
  padding:30px 0;
  color:#006AB8;
  vertical-align: middle;
  
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.1em;
}
.l-company02.-type02 table tr th{
  width:330px;
  border-top:1px solid #006AB8;
  border-bottom:1px solid #006AB8;
  border-right:30px solid #F9F9F9;
  padding:30px 0;
  color:#006AB8;
  vertical-align: middle;
  
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.1em;
}
.l-company02 table tr td{
  width:auto;
  border-top:1px solid #CBCBCB;
  border-bottom:1px solid #CBCBCB;
  padding:30px 0;
  vertical-align: middle;
  
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.1em;
}
.l-company02 .-number{
  padding-left:1.6rem;
  text-indent:-1.6rem;
  
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.875;
  letter-spacing: 0.1em;
}
.l-company02 .-number span{
  color:#006AB8;
  
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.875;
  letter-spacing: 0.1em;
}
.l-company02-map{
  border:1px solid #cccccc;
}
.l-company02-map iframe{
  width:100%;
  height:500px;
}
.l-company02 .-message{
  padding-top:20px;
  
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.875;
  letter-spacing: 0.1em;
}
.l-company02 .-message a{
  color:#006AB8;
  text-decoration: underline;
}
.l-company02 .-message.-right{
  text-align: right;
}
.l-company02 h4{
  padding-top:20px;
  color:#006AB8;

  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.76;
  letter-spacing: 0.15em;
}
.l-company02-block{
  width:100%;
  font-size:0;
}
.l-company02-block > p{
  width:33.3%;
  display:inline-block;
  line-height:0;
  padding-top:30px;
  vertical-align: top;
}
.l-company02-block > p:nth-of-type(3n+1){
  padding-right:38px;
}
.l-company02-block > p:nth-of-type(3n+2){
  padding-left:19px;
  padding-right:19px;
}
.l-company02-block > p:nth-of-type(3n){
  padding-left:38px;
}
.l-company02-block > p img{
  max-width:328px;
  width:100%;
}

@media all and (max-width: 767px) {
  .l-company02{
    padding:14.66vw 4vw 0;
  }
  .l-company02.-type02{
    background:#F9F9F9;
  }
  .l-company02-inner{
    max-width:100%;
    width:100%;
    margin:0 auto;
  }
  .l-company02 h2{
    text-align: left;
    position: relative;
    padding-left: 4.66vw;
    padding-bottom: 8vw;
    font-size: 5.86vw;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.15em;
  }
  .l-company02 h2::before {
    -webkit-transform: translateY(-50%);
    background: -webkit-gradient(linear, left top, left bottom, from(#006AB8), to(#29aae1));
    background: -webkit-linear-gradient(top, #006AB8, #29aae1);
    background: linear-gradient(to bottom, #006AB8, #29aae1);
    content: "";
    height: 11vw;
    left: 0;
    position: absolute;
    top: 3.06vw;
    transform: translateY(-50%);
    width: 4px;
  }
  .l-company02 h3{
    margin-bottom:3.33vw;
    text-align: left;
    padding-bottom: 2vw;
    border-bottom:4px solid #E5E5E5;

    font-size: 4.53vw;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.15em;
  }
  .l-company02 h3.-type02{
    margin-top:5.33vw;
  }
  .l-company02 table{
    width:100%;
    display:block;
  }
  .l-company02 table tbody{
    width:100%;
    display:block;
  }
  .l-company02 table tbody tr{
    width:100%;
    display:block;
  }
  .l-company02 table tr th{
    width:100%;
    display:block;
    border-top:1px solid #006AB8;
    border-bottom:none;
    border-right:none;
    padding:4vw 2vw;
    color:#006AB8;
    vertical-align: middle;

    font-size: 3.46vw;
    font-weight: 400;
    line-height: 1.53;
    letter-spacing: 0.1em;
  }
  .l-company02.-type02 table tr th{
    width:100%;
    display:block;
    border-top:1px solid #006AB8;
    border-bottom:none;
    border-right:none;
    padding:4vw 2vw;
    color:#006AB8;
    vertical-align: middle;

    font-size: 3.46vw;
    font-weight: 400;
    line-height: 1.53;
    letter-spacing: 0.1em;
  }
  .l-company02 table tr td{
    width:100%;
    display:block;
    border-top:1px solid #CBCBCB;
    border-bottom:none;
    padding:4vw 2vw;
    vertical-align: middle;

    font-size: 3.46vw;
    font-weight: 400;
    line-height: 1.53;
    letter-spacing: 0.1em;
  }
  .l-company02 table tr:last-of-type td{
    border-bottom:1px solid #006AB8;
  }
  .l-company02 .-number{
    padding-left:5.46vw;
    text-indent:-3.46vw;

    font-size: 3.46vw;
    font-weight: 400;
    line-height: 1.76;
    letter-spacing: 0.1em;
  }
  .l-company02 .-number span{
    color:#006AB8;

    font-size: 3.46vw;
    font-weight: 400;
    line-height: 1.76;
    letter-spacing: 0.1em;
  }
  .l-company02-map{
    border:1px solid #cccccc;
  }
  .l-company02-map iframe{
    width:100%;
    height:95.73vw;
  }
  .l-company02 .-message{
    padding-top:2.66vw;

    font-size: 3.46vw;
    font-weight: 400;
    line-height: 1.76;
    letter-spacing: 0.1em;
  }
  .l-company02 .-message a{
    color:#006AB8;
    text-decoration: underline;
  }
  .l-company02 .-message.-right{
    text-align: left;
  }
  .l-company02 h4{
    padding-top:2.66vw;

    font-size: 4vw;
    font-weight: 700;
    line-height: 1.76;
    letter-spacing: 0.15em;
  }
  .l-company02-block{
    width:100%;
    font-size:0;
  }
  .l-company02-block > p{
    width:50%;
    display:inline-block;
    line-height:0;
    padding-top:4vw;
    vertical-align: top;
  }
  .l-company02-block > p:nth-of-type(3n+1){
    padding-right:0;
  }
  .l-company02-block > p:nth-of-type(3n+2){
    padding-left:0;
    padding-right:0;
  }
  .l-company02-block > p:nth-of-type(3n){
    padding-left:0;
  }
  .l-company02-block > p:nth-of-type(2n+1){
    padding-right:2vw;
  }
  .l-company02-block > p:nth-of-type(2n){
    padding-left:2vw;
  }
  .l-company02-block > p img{
    max-width:100vw;
    width:100%;
  }
}

.l-product01-table{
  width:100%;
  font-size:0;
  text-align: left;
}
.l-product01-block{
  width:33.3%;
  display:inline-block;
  vertical-align: top;
  padding-top:30px;
}
.l-product01-block:nth-of-type(3n+1){
  padding-right:16px;
}
.l-product01-block:nth-of-type(3n+2){
  padding-left:8px;
  padding-right:8px;
}
.l-product01-block:nth-of-type(3n){
  padding-left:16px;
}
.l-product01-block a{
  display:block;
}
.l-product01-block .-image{
  width:100%;
  line-height:0;
}
.l-product01-block .-image img{
  max-width:370px;
  width:100%;
  max-height:275px;
  border:1px solid #cccccc;
}
.l-product01-block .-ttl{
  margin-top:20px;
  padding-left: 20px;
  text-align: left;
  background: url("../images/common/icon-arrow04_pc.png") left top 4px no-repeat transparent;
  background-size:12px auto;
  
  font-size:1.6rem;
  font-weight:400;
  line-height:1.5;
  letter-spacing: 0.1em;  
}
.l-product01-message{
  padding-top:25px;
  text-align: left;
  
  font-size:1.6rem;
  font-weight:400;
  line-height:1.87;
  letter-spacing: 0.1em;
}

@media all and (max-width: 767px) {
  .l-product01-table{
    width:100%;
    font-size:0;
    text-align: left;
  }
  .l-product01-block{
    width:50%;
    display:inline-block;
    vertical-align: top;
    padding-top:4vw;
  }
  .l-product01-block:nth-of-type(3n+1){
    padding-right:0;
  }
  .l-product01-block:nth-of-type(3n+2){
    padding-left:0;
    padding-right:0;
  }
  .l-product01-block:nth-of-type(3n){
    padding-left:0;
  }
  .l-product01-block:nth-of-type(2n+1){
    padding-right:2vw;
  }
  .l-product01-block:nth-of-type(2n){
    padding-left:2vw;
  }
  .l-product01-block a{
    display:block;
  }
  .l-product01-block .-image{
    width:100%;
    line-height:0;
  }
  .l-product01-block .-image img{
    max-width:100vw;
    width:100%;
    max-height:33.06vw;
    border:1px solid #cccccc;
  }
  .l-product01-block .-ttl{
    margin-top:2.66vw;
    background: url(../images/common/icon-arrow04_pc.png) left top 1.06vw no-repeat;
    background-size: 2vw auto;
    padding-left: 4vw;

    font-size:3.73vw;
    font-weight:400;
    line-height:1.5;
    letter-spacing: 0.1em;  
  }
  .l-product01-message{
    padding-top:3.33vw;
    text-align: left;

    font-size:3.73vw;
    font-weight:400;
    line-height:1.87;
    letter-spacing: 0.1em;
  }
}

.l-company03{
  padding:140px 0 190px;  
}
.l-company03-inner{
  max-width:1100px;
  width:100%;
  margin:0 auto;
}
.l-company03 .-message{
  padding:0 0 70px;
  text-align: center;
  color:#222222;

  font-size:1.6rem;
  font-weight:400;
  line-height:1.5;
  letter-spacing: 0.1em;  
}
.l-company03 .-btn {
  text-align: center;
}
.l-company03 .-btn a {
  display: inline-block;
  background: #29aae1;
  padding: 25px 40px 25px 40px;
  text-align: center;
  width: auto;
}
.l-company03 .-btn a span {
  display: block;
  background: url(../images/common/icon-arrow02_pc.png) right center no-repeat transparent;
  background-size: 16px auto;
  text-align: center;
  color: #FFFFFF;
  padding-right:40px;
  
  font-size: 2.6rem;
  font-weight: 700;
  line-height: 1.75;
  letter-spacing: 0.15em;
}

@media all and (max-width: 767px) {
  .l-company03{
    padding:13.33vw 4vw 18.66vw;  
  }
  .l-company03-inner{
    max-width:100%;
    width:100%;
    margin:0 auto;
  }
  .l-company03 .-message{
    padding:0 0 9.33vw;
    text-align: center;
    color:#222222;

    font-size:3.46vw;
    font-weight:400;
    line-height:1.5;
    letter-spacing: 0.1em;  
  }
  .l-company03 .-btn {
    text-align: center;
  }
  .l-company03 .-btn a {
    display: inline-block;
    background: #29aae1;
    padding: 4vw 4vw;
    text-align: center;
    width: auto;
  }
  .l-company03 .-btn a span {
    display: block;
    background: url(../images/common/icon-arrow02_sp.png) right center no-repeat transparent;
    background-size: 2.13vw auto;
    text-align: center;
    color: #FFFFFF;
    padding-right:4vw;

    font-size: 4vw;
    font-weight: 700;
    line-height: 1.75;
    letter-spacing: 0.15em;
  }
}

.l-company02-table{
  padding:15px 0 65px;
  width:100%;
  display:table;
}
.l-company02-table > div{
  display:table-cell;
  vertical-align: top;
}
.l-company02-table-left{
  width:52.7%;
  padding-right:2.27%;
  text-align: left;
}
.l-company02-table-left p{
  text-align: left;
  padding-bottom:25px;
  
  font-size: 16px;
  font-weight: 400;
  line-height: 1.875;
  letter-spacing: 0.1em;
}
.l-company02-table-right{
  width:47.3%;
  text-align: right;  
}
.l-company02-table-right p{
  text-align: right;
  line-height: 0;
}
.l-company02-table-right p img{
  max-width:520px;
  width:100%;
}
@media all and (max-width: 767px) {
  .l-company02-table{
    padding:0 0 12.66vw;
    width:100%;
    display:-webkit-box;
    display: -webkit-flex;
    display:-ms-flexbox;
    display: flex;
    -webkit-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
    flex-flow: column-reverse;
  }
  .l-company02-table > div{
    display:block;
    vertical-align: top;
  }
  .l-company02-table-left{
    width:100%;
    padding-right:0;
    text-align: left;    
　　-webkit-box-ordinal-group:2;
　　-ms-flex-order:2;
　　-webkit-order:2;
　　order:2;
  }
  .l-company02-table-left p{
    text-align: left;
    padding-bottom:4vw;

    font-size: 3.46vw;
    font-weight: 400;
    line-height: 1.53;
    letter-spacing: 0.1em;
  }
  .l-company02-table-right{
    width:100%;
    text-align: center;
    -webkit-box-ordinal-group:1;
    -ms-flex-order:1;
    -webkit-order:1;
    order:1;
    padding-bottom:3.33vw;
  }
  .l-company02-table-right p{
    text-align: center;
    line-height: 0;
  }
  .l-company02-table-right p img{
    max-width:100vw;
    width:100%;
  }
}



