@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-company01{
  padding:95px 0 0;
}
.l-company01-inner{
  max-width:1100px;
  width:100%;
  margin:0 auto;
}
.l-company01 .-message{
  text-align: left;
  padding-bottom:45px;

  font-size:1.6rem;
  font-weight:400;
  line-height:1.5;
  letter-spacing: 0.1em;
}
.l-company01-table{
  width:100%;
  font-size:0;
}
.l-company01-table > p{
  width:33.3%;
  display:inline-block;
  vertical-align: top;
  padding-bottom:21px;
}
.l-company01-table > p:nth-of-type(3n+1){
  padding-right:14px;
}
.l-company01-table > p:nth-of-type(3n+2){
  padding-left:7px;
  padding-right:7px;
}
.l-company01-table > p:nth-of-type(3n){
  padding-left:14px;
}
.l-company01-table a{
  display: block;
  text-align: center;
  color: #FFFFFF;
  -webkit-transition: 0.3s;
  /*background: -webkit-gradient(linear, left top, right top, from(#006AB8), to(#29aae1));
  background: -webkit-linear-gradient(left, #006AB8, #29aae1);
  background: linear-gradient(to right, #006AB8, #29aae1);*/
  background:#29AAE1;
}
.l-company01-table a span{
  display: block;
  background: url("../images/faq/icon-arrow_pc.png") right 20px center no-repeat transparent;
  background-size: 23px auto;
  text-align: left;
  color: #FFFFFF;
  padding:25px 20px;
  
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.1em;
}
@media all and (max-width: 767px) {
  .l-company01{
    padding:9.33vw 4vw 0;
  }
  .l-company01-inner{
    max-width:100%;
    width:100%;
    margin:0 auto;
  }
  .l-company01 .-message{
    text-align: left;
    padding-bottom:4.66vw;

    font-size:3.46vw;
    font-weight:400;
    line-height:1.53;
    letter-spacing: 0.1em;
  }
  .l-company01-table{
    width:100%;
    font-size:0;
  }
  .l-company01-table > p{
    width:100%;
    display:block;
    vertical-align: top;
    padding-top:1.33vw;
    padding-bottom:0;
  }
  .l-company01-table > p:nth-of-type(3n+1){
    padding-right:0;
  }
  .l-company01-table > p:nth-of-type(3n+2){
    padding-left:0;
    padding-right:0;
  }
  .l-company01-table > p:nth-of-type(3n){
    padding-left:0;
  }
  .l-company01-table a{
    display: block;
    text-align: center;
    color: #FFFFFF;
    -webkit-transition: 0.3s;
    /*background: -webkit-gradient(linear, left top, right top, from(#006AB8), to(#29aae1));
    background: -webkit-linear-gradient(left, #006AB8, #29aae1);
    background: linear-gradient(to right, #006AB8, #29aae1);*/
    background:#29AAE1;
  }
  .l-company01-table a span{
    display: block;
    background: url("../images/faq/icon-arrow_sp.png") right 4vw center no-repeat transparent;
    background-size: 2.13vw auto;
    text-align: left;
    color: #FFFFFF;
    padding:4vw 4vw;

    font-size: 4vw;
    font-weight: 400;
    line-height: 1;
    letter-spacing: 0.15em;
  }
}

.l-company02{
  padding:110px 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-top:100px;
  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;
  }
  .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-top:13.33vw;
    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;
  }
}

main .sec-tit {
  text-align: center;
  color: #006ab7;
  font-size: 4.0rem;
  
  position: static;
  padding-left: 0;
  padding-bottom: 0;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0em;
}
main .sec-tit .jp {
  display: block;
  font-size: 2.0rem;
  color: #222222;
}

main .container {
  width: 100%;
  max-width: 1100px;
  margin: auto;
}
@media screen and (max-width: 767px) {
  main .container {
    padding: 0 0;
  }
}

main .b-text-area {
  background: -webkit-gradient(linear, left top, right bottom, from(#29aae1), to(#006ab8));
  background: linear-gradient(to bottom right, #29aae1, #006ab8);
  border-radius: 20px;
}
main .b-text-area * {
  color: #FFF;
}

main section.message {
  background: url("../images/company/map.png") no-repeat;
  background-size: cover;
  padding-bottom: 160px;
  margin-top: 100px;
}
@media screen and (max-width: 767px) {
  main section.message {
    padding-bottom: 0;
    margin-top: 13.33vw;
  }
}
main section.message h2,
main section.message h3 {
  font-weight:bold;
}
main section.message .container {
  position: relative;
}
main section.message .container .b-text-area {
  position: absolute;
  right: 0;
  top: 100px;
  width: 580px;
  padding: 60px;
}
@media screen and (max-width: 767px) {
  main section.message .container .b-text-area {
    position: relative;
    top: -14vw;
    width: 92vw;
    padding: 4vw;
    margin: auto;
  }
}
main section.message .container .b-text-area h3 {
  font-size: 2.8rem;
  margin-top: 0;
  margin-bottom: 0;
  text-align: left;
  padding-bottom: 0;
  border-bottom: none;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0em;
}
@media screen and (max-width: 767px) {
  main section.message .container .b-text-area h3 {
    font-size: 2.2rem;
    margin-top: 0;
    margin-bottom: 0;
    text-align: left;
    padding-bottom: 0;
    border-bottom: none;
    font-weight: 700;
    line-height: 1.6;
    letter-spacing: 0em;
  }
}
main section.message .container .b-text-area p {
  padding-top: 22px;
  
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0em;
}
main section.message .container .b-text-area .name {
  padding-top: 22px;
  font-size: 2.0rem;
  text-align: right;
}
main section.message .container .b-text-area .name span {
  font-size: 3.0rem;
  padding-left: 10px;
}



