@charset "utf-8";
/* /////////////////////////////
      TOP
///////////////////////////// */
.mainvisual{
      position: relative;
}
.mv_txt{
      position: absolute;
      top: 70px;
      left: 120px;
}
.mv_txt p{
  font-family: "hot-reishorkk", sans-serif;
font-weight: 400;
      font-size: 40px;
}

.mv_txt span{
      margin-top: 20px;
      padding: 10px 20px;
      background-color: rgba(255,255,255,.7);
      display: inline-block;
}

/*company*/
section.sec_company{
      margin-top: 85px;
      position: relative;
}

section.sec_company h2{
      width: 294px;
      font-size: 48px;
      font-weight: bold;
      color: #0a0a8c;
      letter-spacing: 7px;
      position: relative;
}

section.sec_company h2:before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 294px;
    border-bottom: 4px solid #0a0a8c;
    opacity: 0.35;
}

section.sec_company h2:after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 72px;
    border-bottom: 4px solid #0a0a8c;
}

section.sec_company .company_txt{ 
      width: 40%;
      margin-right: 50px;    
      font-size:14px; 
      color:#141414;
}

section.sec_company .company_txt span{
      margin-top: 20px;
      font-size: 18px;
      font-weight: bold;
      display: block;
}

section.sec_company .company_txt p{
      margin-top: 40px;
      font-size: 16px;
}

section.sec_company .company_img{
      width: 50%;
}

/*service*/
section.sec_service{
      margin: 85px 0 280px;
      padding: 50px 0;
      position: relative;
      background-color: #e6e6f3;
}
section.sec_service h2{
      width: 294px;
      font-size: 48px;
      font-weight: bold;
      color: #0a0a8c;
      letter-spacing: 7px;
      position: relative;
      margin: auto;
}

section.sec_service h2:before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 294px;
    border-bottom: 4px solid #0a0a8c;
    opacity: 0.35;
}

section.sec_service h2:after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 72px;
    border-bottom: 4px solid #0a0a8c;
}

.sub_md{
      margin-top: 20px;
      display: block;
      text-align: center;
      font-size: 18px;
}

.service_txt{
      position: relative;
      color: #fff;
      text-align: center;
}

.service_txt h3{
      font-size: 24px;
      font-weight: bold;
      position: absolute;
      top: 60%;
      left: 50%;
      transform: translateY(-50%) translateX(-50%);
      -webkit- transform: translateY(-50%) translateX(-50%);
}

.service_txt span{
      width: 40%;
      padding-bottom: 10px;
      font-size: 48px;
      font-weight: bold;
      display: block;
      border-bottom: 2px solid #fff;
      position: absolute;
      top: 40%;
      left: 50%;
      transform: translateY(-50%) translateX(-50%);
      -webkit- transform: translateY(-50%) translateX(-50%);
}

.sec_company a.btn,.sec_service a.btn{
      width: 240px;
      height: 60px;
      line-height: 60px;
      margin: 50px auto 0;
      text-align: center;
      color: #fff;
      background-color: #0a0a8c;
      display: block;
}
.sec_company a.btn{
      margin-left: 0;
      margin-right: auto;
}
.sec_company a.btn img,.sec_service a.btn img{
      padding-left: 30px;
      vertical-align: middle;
}


@media screen and (max-width: 1100px) {
      section.sec_company .company_img{
            max-width: 50%;
      }    

}
@media screen and (max-width: 768px) {
      .mv_txt {
          top: 10vw;
          left: 3vw;
      }
      .mv_txt p{
            font-size: 32px;
      }

      section.sec_company{
            margin-top: 40px;
      }
      section.sec_company h2{
            width: 250px;
            font-size: 38px;
      }
      section.sec_company h2:before{
            width: 250px;
      }
      section.sec_company .flex{
            display: block;
      }
      section.sec_company .company_txt{
            width: 100%;
      }
      section.sec_company .company_img{
            width: 100%;
            max-width: 100%;
            margin-top: 20px;
      }
      section.sec_company .company_txt p{
            margin-top: 20px;
      }

      section.sec_service{
            margin: 45px 0 60px;
            padding: 30px 0;
      }
      section.sec_service h2{
            width: 250px;
            font-size: 38px;
            text-align: center;
      }
      section.sec_service h2:before{
            width: 250px;
      }
      section.sec_service .flex{
            flex-wrap: wrap;
      }
      .service_txt span{
            font-size: 28px;
      }
      .service_txt h3{
            width: 100%;
            top: 65%;
            font-size: 20px;
      }
      .contact_box{
            /*top: -130px;*/
            margin: 30px 0;
            padding: 20px 0;
      }
      .contact_box h2{
            width: 250px;
            font-size: 38px;
      }
      .contact_box h2:before{
            width: 250px;
      }
      .f_tel{
            margin: 30px auto;
            font-size: 30px;
      }
      .contact_box .flex{
            width: 90%;
            margin: auto;
            text-align: center;
            flex-wrap: wrap;
      }



















}
