@media screen and (min-width: 769px), print {
  .home {
    background: #5F7FB0;
  }
  .home .mv {
    padding: 0 20px;
    position: relative;
  }
  .home .mv::after {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    width: 1px;
    height: 100%;
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0.0001)), to(rgba(255, 255, 255, 0.5)));
    background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0.0001) 0%, rgba(255, 255, 255, 0.5) 100%);
    background: -moz- oldlinear-gradient(top, rgba(255, 255, 255, 0.0001) 0%, rgba(255, 255, 255, 0.5) 100%);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.0001) 0%, rgba(255, 255, 255, 0.5) 100%);
    display: block;
  }
  .home .mv .mv_inner {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    background: #81A9E5;
  }
  .home .mv .mv_txt {
    width: 50%;
    position: relative;
  }
  .home .mv .mv_txt::after {
    content: "";
    position: absolute;
    top: 0;
    right: 259px;
    width: 1px;
    height: 100%;
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0.0001)), to(rgba(255, 255, 255, 0.5)));
    background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0.0001) 0%, rgba(255, 255, 255, 0.5) 100%);
    background: -moz- oldlinear-gradient(top, rgba(255, 255, 255, 0.0001) 0%, rgba(255, 255, 255, 0.5) 100%);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.0001) 0%, rgba(255, 255, 255, 0.5) 100%);
    display: block;
  }
  .home .mv .mv_txt::before {
    content: "";
    position: absolute;
    top: 0;
    right: 519px;
    width: 1px;
    height: 100%;
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0.0001)), to(rgba(255, 255, 255, 0.5)));
    background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0.0001) 0%, rgba(255, 255, 255, 0.5) 100%);
    background: -moz- oldlinear-gradient(top, rgba(255, 255, 255, 0.0001) 0%, rgba(255, 255, 255, 0.5) 100%);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.0001) 0%, rgba(255, 255, 255, 0.5) 100%);
    display: block;
  }
  .home .mv .mv_txt .mv_txt_inner {
    width: 519px;
    margin-left: auto;
    padding: 66px 60px 66px 0;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .home .mv .mv_txt h2 {
    -webkit-box-ordinal-group: 2;
       -moz-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    font-family: "Lato", sans-serif;
    font-weight: 300;
    font-size: 36px;
    line-height: 1.44444;
    color: #FFFFFF;
    margin-bottom: 17px;
  }
  .home .mv .mv_txt p {
    -webkit-box-ordinal-group: 3;
       -moz-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    font-size: 18px;
    color: #FFF;
  }
  .home .mv .mv_txt .scroll {
    -webkit-box-ordinal-group: 4;
       -moz-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
    font-family: "Lato", sans-serif;
    font-size: 12px;
    letter-spacing: 1px;
    color: #FFFFFF;
    margin-top: 98px;
    padding: 10px 0;
    display: inline-block;
    background-color: #81A9E5;
    z-index: 1;
    position: relative;
    margin-left: -1px;
    position: relative;
    width: 100px;
  }
  .home .mv .mv_txt .scroll::after {
    content: "";
    position: absolute;
    left: -7px;
    bottom: -80px;
    width: 15px;
    height: 12px;
    background: url(../img/arb.svg) center/contain no-repeat;
    display: block;
  }
  .home .mv .mv_txt .mask {
    background-color: #81A9E5;
    height: 20px;
    width: 20px;
    position: relative;
    z-index: 1;
    margin-left: -1px;
    margin-top: 79px;
    -webkit-box-ordinal-group: 5;
       -moz-box-ordinal-group: 5;
        -ms-flex-order: 4;
            order: 4;
  }
  .home .mv figure {
    width: 50%;
    position: relative;
  }
  .home .mv figure::after {
    content: "";
    position: absolute;
    top: 0;
    left: 259px;
    width: 1px;
    height: 100%;
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0.0001)), to(rgba(255, 255, 255, 0.5)));
    background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0.0001) 0%, rgba(255, 255, 255, 0.5) 100%);
    background: -moz- oldlinear-gradient(top, rgba(255, 255, 255, 0.0001) 0%, rgba(255, 255, 255, 0.5) 100%);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.0001) 0%, rgba(255, 255, 255, 0.5) 100%);
    display: block;
  }
  .home .mv figure::before {
    content: "";
    position: absolute;
    top: 0;
    left: 519px;
    width: 1px;
    height: 100%;
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0.0001)), to(rgba(255, 255, 255, 0.5)));
    background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0.0001) 0%, rgba(255, 255, 255, 0.5) 100%);
    background: -moz- oldlinear-gradient(top, rgba(255, 255, 255, 0.0001) 0%, rgba(255, 255, 255, 0.5) 100%);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.0001) 0%, rgba(255, 255, 255, 0.5) 100%);
    display: block;
  }
  .home .mv .mv_bot {
    position: absolute;
    left: 0;
    bottom: 20px;
    width: 100%;
    z-index: 2;
  }
  .home .mv .mv_bot .row {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .home .mv .mv_bot .row .link {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 920px;
    margin-right: 40px;
    background: #D4E2F6;
    height: 40px;
    pointer-events: none;
  }
  .home .mv .mv_bot .row .link span {
    width: 58px;
    background: #5F7FB0;
    font-family: "Lato", sans-serif;
    font-size: 12px;
    letter-spacing: 1px;
    color: #FFFFFF;
    height: 100%;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .home .mv .mv_bot .row .link p {
    font-weight: 300;
    font-size: 14px;
    color: #363C46;
    padding-left: 20px;
  }
  .home .mv .mv_bot .row .link time {
    font-family: "Lato", sans-serif;
    font-style: normal;
    font-weight: 300;
    font-size: 10px;
    color: #363C46;
    line-height: 1;
    border-left: 1px solid #5F7FB0;
    padding-left: 20px;
    margin-left: auto;
    padding-right: 16px;
  }
  .home .mv .mv_bot .row .social {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
  }
  .home .mv .mv_bot .row .social > a:nth-of-type(1) {
    margin-right: 20px;
  }
  .home .mv .mv_bot .row .social > a:nth-of-type(2) {
    margin-right: -20px;
  }
  .home .service {
    padding: 228px 0 260px;
  }
  .home .service_main {
    padding: 0 20px;
  }
  .home .service_main ul {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
       -moz-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .home .service_main ul li {
    width: 479px;
    background: #363C46;
    padding: 0 20px;
    position: relative;
    z-index: 1;
  }
  .home .service_main ul li a {
    position: absolute;
    left: 50%;
    bottom: -20px;
    -webkit-transform: translateX(-50%);
       -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 120px;
    height: 40px;
    background: #FFFFFF;
    -moz-border-radius: 4px;
         border-radius: 4px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-family: "Lato", sans-serif;
    font-size: 12px;
    letter-spacing: 1px;
    color: #363C46;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
  }
  .home .service_main ul li a:hover {
    color: #fff;
    background: #363C46;
    border: 1px solid #fff;
    opacity: 1;
  }
  .home .service_main ul li h3 {
    font-family: "Lato", sans-serif;
    font-size: 20px;
    padding: 84px 0 72px;
    border-bottom: 1px solid #81A9E5;
    color: #FFFFFF;
    text-align: center;
  }
  .home .service_main ul li p {
    font-size: 14px;
    line-height: 1.85714;
    text-align: center;
    color: #D4E2F6;
    padding: 50px 0 77px;
    min-height: 202px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .home .recruit {
    padding: 0 20px;
  }
  .home .recruit .t_ttl {
    border-left-color: #363C46;
    margin-bottom: 118px;
  }
  .home .recruit .t_ttl span {
    color: #363C46;
  }
  .home .recruit .t_ttl small {
    color: #363C46;
  }
  .home .recruit .recruit_inner {
    background: #D3E2F6;
    padding-top: 108px;
    margin-bottom: 443px;
  }
  .home .recruit .recruit_inner > picture {
    position: relative;
    z-index: 1;
    text-align: center;
  }
  .home .recruit .recruit_inner > picture img {
    width: 1000px;
    margin-bottom: -163px;
  }
  .home .recruit_main {
    padding: 0 20px;
  }
  .home .recruit_main ul {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
       -moz-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-bottom: 261px;
  }
  .home .recruit_main ul li {
    width: 479px;
    background: #fff;
    padding: 33px 20px 0;
    position: relative;
    text-align: center;
    z-index: 1;
  }
  .home .recruit_main ul li a {
    position: absolute;
    left: 50%;
    bottom: -20px;
    -webkit-transform: translateX(-50%);
       -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 120px;
    height: 40px;
    background: #363C46;
    -moz-border-radius: 4px;
         border-radius: 4px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-family: "Lato", sans-serif;
    font-size: 12px;
    letter-spacing: 1px;
    color: #fff;
    border: 1px solid transparent;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
  }
  .home .recruit_main ul li a:hover {
    color: #363C46;
    background-color: #fff;
    border: 1px solid #363C46;
    opacity: 1;
  }
  .home .recruit_main ul li h3 {
    text-align: center;
    font-weight: 300;
    font-size: 12px;
    color: #363C46;
  }
  .home .recruit_main ul li h3.cus_ja {
    font-size: 20px;
  }
  .home .recruit_main ul li figure {
    padding: 107px 0 159px;
  }
  .home .client {
    padding: 0 20px;
  }
  .home .client .t_ttl {
    margin-bottom: 80px;
  }
  .home .client .client_inner {
    background: #363C46;
    padding-top: 100px;
    padding-bottom: 120px;
  }
  .home .client .client_inner > figure {
    position: relative;
    z-index: 1;
  }
  .home .client_main {
    background: url(../img/grid.png) 0 0 no-repeat;
    padding-bottom: 30px;
  }
  .home .client_main ul {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
       -moz-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .home .client_main ul li {
    width: 260px;
    padding: 47px 0 51px;
    font-family: "Lato", sans-serif;
    font-size: 16px;
    letter-spacing: 1.2px;
    color: #81A9E5;
    text-align: center;
    position: relative;
    z-index: 1;
  }
  .home .client_main ul li a {
    color: #81A9E5;
    pointer-events: none;
  }
  .home .btn_wr {
    text-align: center;
    position: relative;
    z-index: 1;
    margin-top: 30px;
  }
  .home .btn_wr a {
    background: #D4E2F6;
    width: 60px;
    height: 60px;
    -moz-border-radius: 50%;
         border-radius: 50%;
    display: -webkit-inline-box;
    display: -moz-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-family: "Lato", sans-serif;
    font-size: 12px;
    letter-spacing: 1px;
    color: #363C46;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
  }
  .home .btn_wr a:hover {
    color: #fff;
    background: #363C46;
    border: 1px solid #fff;
    opacity: 1;
  }
  .home .news {
    padding: 226px 0 360px;
  }
  .home .news .t_ttl {
    margin-bottom: 89px;
  }
  .home .news .btn_wr {
    margin-top: 49px;
  }
  .home .news .btn_wr a {
    background: #363C46;
    color: #fff;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
  }
  .home .news .btn_wr a:hover {
    color: #363C46;
    background: #fff;
    border: 1px solid #fff;
    opacity: 1;
  }
  .home .news ul li {
    margin-bottom: 20px;
    position: relative;
    z-index: 1;
  }
  .home .news ul li a {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
       -moz-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 0 38px 0 60px;
    background: #D4E2F6;
    position: relative;
    pointer-events: none;
  }
  .home .news ul li a::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 40px;
    height: 100%;
    background: #81A9E5;
    display: block;
  }
  .home .news ul li a p {
    font-weight: 300;
    font-size: 14px;
    color: #363C46;
    padding: 10px 0;
  }
  .home .news ul li a time {
    font-family: "Lato", sans-serif;
    font-style: normal;
    font-weight: 300;
    font-size: 10px;
    color: #363C46;
    line-height: 1;
    border-left: 1px solid #5F7FB0;
    padding-left: 39px;
  }
}

@media screen and (max-width: 768px) {
  .home {
    background: #5F7FB0;
  }
  .home .mv {
    padding: 0 5.33333vw;
    position: relative;
  }
  .home .mv::after {
    content: "";
    position: absolute;
    top: -16.53333vw;
    left: 50%;
    width: 1px;
    height: 100%;
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0.0001)), to(rgba(255, 255, 255, 0.5)));
    background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0.0001) 0%, rgba(255, 255, 255, 0.5) 100%);
    background: -moz- oldlinear-gradient(top, rgba(255, 255, 255, 0.0001) 0%, rgba(255, 255, 255, 0.5) 100%);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.0001) 0%, rgba(255, 255, 255, 0.5) 100%);
    display: block;
    z-index: 3;
  }
  .home .mv .mask_mv {
    position: absolute;
    top: -16.53333vw;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .home .mv .mask_mv::after {
    content: "";
    position: absolute;
    top: 0;
    right: 10.66667vw;
    width: 1px;
    height: 100%;
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0.0001)), to(rgba(255, 255, 255, 0.5)));
    background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0.0001) 0%, rgba(255, 255, 255, 0.5) 100%);
    background: -moz- oldlinear-gradient(top, rgba(255, 255, 255, 0.0001) 0%, rgba(255, 255, 255, 0.5) 100%);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.0001) 0%, rgba(255, 255, 255, 0.5) 100%);
    display: block;
    z-index: 1;
  }
  .home .mv .mask_mv::before {
    content: "";
    position: absolute;
    top: 0;
    left: 10.66667vw;
    width: 1px;
    height: 100%;
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0.0001)), to(rgba(255, 255, 255, 0.5)));
    background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0.0001) 0%, rgba(255, 255, 255, 0.5) 100%);
    background: -moz- oldlinear-gradient(top, rgba(255, 255, 255, 0.0001) 0%, rgba(255, 255, 255, 0.5) 100%);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.0001) 0%, rgba(255, 255, 255, 0.5) 100%);
    display: block;
    z-index: 1;
  }
  .home .mv .mv_inner {
    background: #81A9E5;
  }
  .home .mv .mv_txt {
    position: relative;
  }
  .home .mv .mv_txt .mv_txt_inner {
    padding: 4vw 4vw 5.33333vw;
    text-align: center;
  }
  .home .mv .mv_txt h2 {
    font-family: "Lato", sans-serif;
    font-weight: 300;
    font-size: 5.86667vw;
    line-height: 1.45455;
    color: #FFFFFF;
    margin-bottom: 4.53333vw;
    margin: 20.26667vw 0 25.06667vw;
  }
  .home .mv .mv_txt p {
    font-size: 3.2vw;
    color: #FFF;
  }
  .home .mv .mv_txt .scroll {
    font-family: "Lato", sans-serif;
    font-size: 3.2vw;
    letter-spacing: 1px;
    color: #FFFFFF;
    display: inline-block;
    z-index: 1;
    position: relative;
  }
  .home .mv .mv_txt .mask {
    background-color: #81A9E5;
    height: 5.33333vw;
    width: 5.33333vw;
    position: relative;
    z-index: 1;
    margin-left: -1px;
    margin-top: 21.06667vw;
  }
  .home .mv figure {
    position: relative;
  }
  .home .mv .mv_bot {
    z-index: 4;
    margin-top: 42.66667vw;
    position: relative;
  }
  .home .mv .mv_bot .row {
    padding: 0;
  }
  .home .mv .mv_bot .row .link {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: 100%;
    background: #D4E2F6;
    pointer-events: none;
  }
  .home .mv .mv_bot .row .link span {
    width: 15.46667vw;
    background: #5F7FB0;
    font-family: "Lato", sans-serif;
    font-size: 3.2vw;
    letter-spacing: 1px;
    color: #FFFFFF;
    height: 100%;
    padding: 3.46667vw 5.33333vw;
    width: 50%;
    background-color: #81A9E5;
    -webkit-box-ordinal-group: 2;
       -moz-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
  .home .mv .mv_bot .row .link p {
    font-weight: 300;
    font-size: 3.73333vw;
    color: #363C46;
    width: 100%;
    -webkit-box-ordinal-group: 4;
       -moz-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
    background-color: #D4E2F6;
    padding: 40px 5.33333vw;
  }
  .home .mv .mv_bot .row .link time {
    padding: 3.46667vw 5.33333vw;
    font-family: "Lato", sans-serif;
    font-style: normal;
    font-weight: 300;
    font-size: 3.2vw;
    color: #363C46;
    line-height: 1;
    width: 50%;
    -webkit-box-ordinal-group: 3;
       -moz-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    color: #fff;
    text-align: right;
    background-color: #81A9E5;
  }
  .home .mv .mv_bot .row > a:nth-of-type(1) {
    margin-right: 5.33333vw;
  }
  .home .mv .mv_bot .row > a:nth-of-type(2) {
    margin-right: -5.33333vw;
  }
  .home .service {
    padding: 41.06667vw 0 32vw;
  }
  .home .service_main ul li {
    background: #363C46;
    padding: 0 5.33333vw;
    position: relative;
    z-index: 1;
    margin-bottom: 16vw;
  }
  .home .service_main ul li a {
    position: absolute;
    left: 50%;
    bottom: -5.33333vw;
    -webkit-transform: translateX(-50%);
       -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 32vw;
    height: 10.66667vw;
    background: #FFFFFF;
    -moz-border-radius: 1.06667vw;
         border-radius: 1.06667vw;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-family: "Lato", sans-serif;
    font-size: 2.66667vw;
    letter-spacing: 1px;
    color: #363C46;
  }
  .home .service_main ul li h3 {
    font-family: "Lato", sans-serif;
    font-size: 4.26667vw;
    padding: 21.86667vw 0 21.06667vw;
    border-bottom: 1px solid #81A9E5;
    color: #FFFFFF;
    text-align: center;
  }
  .home .service_main ul li p {
    font-size: 3.73333vw;
    line-height: 1.85714;
    text-align: center;
    color: #D4E2F6;
    padding: 10.93333vw 0 16vw;
  }
  .home .recruit {
    padding: 0 5.33333vw;
  }
  .home .recruit .t_ttl {
    border-left-color: #363C46;
    margin-bottom: 26.66667vw;
  }
  .home .recruit .t_ttl span {
    color: #363C46;
  }
  .home .recruit .t_ttl small {
    color: #363C46;
  }
  .home .recruit .recruit_inner {
    background: #D3E2F6;
    position: relative;
    z-index: 1;
    margin-bottom: 32vw;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
       -moz-box-orient: vertical;
       -moz-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
  .home .recruit .recruit_inner > picture {
    position: relative;
    z-index: 1;
    width: 100%;
  }
  .home .recruit .recruit_inner .row {
    padding-top: 28.8vw;
  }
  .home .recruit_main ul {
    margin-bottom: 35.46667vw;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
       -moz-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .home .recruit_main ul li {
    width: 100%;
    background: #fff;
    padding: 4vw 5.33333vw 0;
    position: relative;
    text-align: center;
    z-index: 1;
  }
  .home .recruit_main ul li a {
    position: absolute;
    left: 50%;
    bottom: -20px;
    -webkit-transform: translateX(-50%);
       -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 32vw;
    height: 10.66667vw;
    background: #363C46;
    -moz-border-radius: 4px;
         border-radius: 4px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-family: "Lato", sans-serif;
    font-size: 2.66667vw;
    letter-spacing: 1px;
    color: #fff;
    border: 1px solid transparent;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
  }
  .home .recruit_main ul li a:hover {
    color: #363C46;
    background-color: #fff;
    border: 1px solid #363C46;
    opacity: 1;
  }
  .home .recruit_main ul li h3 {
    text-align: center;
    font-weight: 300;
    font-size: 4.26667vw;
    color: #363C46;
  }
  .home .recruit_main ul li figure {
    padding: 26.13333vw 0 35.2vw;
  }
  .home .recruit_main ul li:nth-of-type(1) figure img {
    width: 45.86667vw;
  }
  .home .recruit_main ul li:nth-of-type(2) {
    margin-top: 16vw;
  }
  .home .recruit_main ul li:nth-of-type(2) figure img {
    width: 39.46667vw;
  }
  .home .client {
    padding: 0 5.33333vw;
  }
  .home .client .t_ttl {
    margin-bottom: 26.66667vw;
  }
  .home .client .client_inner {
    background: #363C46;
    padding-top: 29.33333vw;
    padding-bottom: 32vw;
  }
  .home .client .client_inner > figure {
    position: relative;
    z-index: 1;
  }
  .home .client_main {
    background: url(../img/grid_sp.png) 0 0 repeat-y;
    -moz-background-size: 100% auto;
         background-size: 100% auto;
    padding-bottom: 8vw;
  }
  .home .client_main ul {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
       -moz-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .home .client_main ul li {
    width: 50%;
    height: 32.53333vw;
    font-family: "Lato", sans-serif;
    font-size: 3.2vw;
    line-height: 1;
    color: #81A9E5;
    text-align: center;
    position: relative;
    z-index: 1;
    display: -webkit-inline-box;
    display: -moz-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .home .client_main ul li a {
    color: #81A9E5;
    pointer-events: none;
  }
  .home .btn_wr {
    text-align: center;
    position: relative;
    z-index: 1;
    margin-top: 8vw;
  }
  .home .btn_wr a {
    background: #D4E2F6;
    width: 16vw;
    height: 16vw;
    -moz-border-radius: 50%;
         border-radius: 50%;
    display: -webkit-inline-box;
    display: -moz-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-family: "Lato", sans-serif;
    font-size: 3.2vw;
    letter-spacing: 1px;
    color: #363C46;
  }
  .home .news {
    padding: 40vw 0 58.13333vw;
  }
  .home .news .t_ttl {
    margin-bottom: 21.33333vw;
  }
  .home .news .btn_wr {
    margin-top: 10.66667vw;
  }
  .home .news .btn_wr a {
    background: #363C46;
    color: #fff;
  }
  .home .news ul li {
    margin-bottom: 5.33333vw;
    position: relative;
    z-index: 1;
  }
  .home .news ul li a {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
       -moz-box-orient: vertical;
       -moz-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    background: #D4E2F6;
    position: relative;
    padding: 5.33333vw;
    pointer-events: none;
  }
  .home .news ul li a p {
    font-weight: 300;
    font-size: 3.73333vw;
    line-height: 1.71429;
    color: #363C46;
    -webkit-box-ordinal-group: 3;
       -moz-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
  .home .news ul li a time {
    font-family: "Lato", sans-serif;
    font-style: normal;
    font-weight: 300;
    font-size: 2.66667vw;
    color: #363C46;
    border-left: 1px solid #5F7FB0;
    padding-left: 2.66667vw;
    -webkit-box-ordinal-group: 2;
       -moz-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    margin-bottom: 3.46667vw;
  }
}

.UpandDown {
  -webkit-animation: UpandDown 2s linear infinite alternate;
     -moz-animation: UpandDown 2s linear infinite alternate;
          animation: UpandDown 2s linear infinite alternate;
}

.UpandDownRev {
  -webkit-animation: UpandDown 2s linear infinite alternate-reverse;
     -moz-animation: UpandDown 2s linear infinite alternate-reverse;
          animation: UpandDown 2s linear infinite alternate-reverse;
}

@-webkit-keyframes SlideRight {
  0% {
    left: -100%;
  }
  10% {
    left: -90%;
  }
  25% {
    left: -90%;
  }
  50% {
    left: 0%;
  }
  75% {
    left: 0%;
  }
  100% {
    left: -90%;
  }
}

@-moz-keyframes SlideRight {
  0% {
    left: -100%;
  }
  10% {
    left: -90%;
  }
  25% {
    left: -90%;
  }
  50% {
    left: 0%;
  }
  75% {
    left: 0%;
  }
  100% {
    left: -90%;
  }
}

@keyframes SlideRight {
  0% {
    left: -100%;
  }
  10% {
    left: -90%;
  }
  25% {
    left: -90%;
  }
  50% {
    left: 0%;
  }
  75% {
    left: 0%;
  }
  100% {
    left: -90%;
  }
}

@-webkit-keyframes scroll-bar {
  0% {
    height: 0;
    bottom: inherit;
    top: 168px;
  }
  40% {
    height: 102px;
    bottom: inherit;
    top: 66px;
  }
  41% {
    height: 102px;
    bottom: 0;
    top: 66px;
  }
  80% {
    height: 0;
    bottom: 0;
    top: 66px;
  }
  100% {
    height: 0;
    bottom: 0;
    top: inherit;
  }
}

@-moz-keyframes scroll-bar {
  0% {
    height: 0;
    bottom: inherit;
    top: 168px;
  }
  40% {
    height: 102px;
    bottom: inherit;
    top: 66px;
  }
  41% {
    height: 102px;
    bottom: 0;
    top: 66px;
  }
  80% {
    height: 0;
    bottom: 0;
    top: 66px;
  }
  100% {
    height: 0;
    bottom: 0;
    top: inherit;
  }
}

@keyframes scroll-bar {
  0% {
    height: 0;
    bottom: inherit;
    top: 168px;
  }
  40% {
    height: 102px;
    bottom: inherit;
    top: 66px;
  }
  41% {
    height: 102px;
    bottom: 0;
    top: 66px;
  }
  80% {
    height: 0;
    bottom: 0;
    top: 66px;
  }
  100% {
    height: 0;
    bottom: 0;
    top: inherit;
  }
}

@-webkit-keyframes scroll-bar-sp {
  0% {
    height: 0;
    bottom: inherit;
    top: 67.2vw;
  }
  40% {
    height: 40.8vw;
    bottom: inherit;
    top: 26.4vw;
  }
  41% {
    height: 40.8vw;
    bottom: 0;
    top: 26.4vw;
  }
  80% {
    height: 0;
    bottom: 0;
    top: 26.4vw;
  }
  100% {
    height: 0;
    bottom: 0;
    top: inherit;
  }
}

@-moz-keyframes scroll-bar-sp {
  0% {
    height: 0;
    bottom: inherit;
    top: 67.2vw;
  }
  40% {
    height: 40.8vw;
    bottom: inherit;
    top: 26.4vw;
  }
  41% {
    height: 40.8vw;
    bottom: 0;
    top: 26.4vw;
  }
  80% {
    height: 0;
    bottom: 0;
    top: 26.4vw;
  }
  100% {
    height: 0;
    bottom: 0;
    top: inherit;
  }
}

@keyframes scroll-bar-sp {
  0% {
    height: 0;
    bottom: inherit;
    top: 67.2vw;
  }
  40% {
    height: 40.8vw;
    bottom: inherit;
    top: 26.4vw;
  }
  41% {
    height: 40.8vw;
    bottom: 0;
    top: 26.4vw;
  }
  80% {
    height: 0;
    bottom: 0;
    top: 26.4vw;
  }
  100% {
    height: 0;
    bottom: 0;
    top: inherit;
  }
}

@-webkit-keyframes showText {
  0% {
    -webkit-transform: translateY(110%);
            transform: translateY(110%);
    opacity: 0;
  }
  to {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
  }
}

@-moz-keyframes showText {
  0% {
    -moz-transform: translateY(110%);
         transform: translateY(110%);
    opacity: 0;
  }
  to {
    -moz-transform: translateY(0);
         transform: translateY(0);
    opacity: 1;
  }
}

@keyframes showText {
  0% {
    -webkit-transform: translateY(110%);
       -moz-transform: translateY(110%);
            transform: translateY(110%);
    opacity: 0;
  }
  to {
    -webkit-transform: translateY(0);
       -moz-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
  }
}

@-webkit-keyframes UpandDown {
  0% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  to {
    -webkit-transform: translateY(-10px);
            transform: translateY(-10px);
  }
}

@-moz-keyframes UpandDown {
  0% {
    -moz-transform: translateY(0);
         transform: translateY(0);
  }
  to {
    -moz-transform: translateY(-10px);
         transform: translateY(-10px);
  }
}

@keyframes UpandDown {
  0% {
    -webkit-transform: translateY(0);
       -moz-transform: translateY(0);
            transform: translateY(0);
  }
  to {
    -webkit-transform: translateY(-10px);
       -moz-transform: translateY(-10px);
            transform: translateY(-10px);
  }
}

@-webkit-keyframes rotate360 {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}

@-moz-keyframes rotate360 {
  0% {
    -moz-transform: rotate(0deg);
         transform: rotate(0deg);
  }
  to {
    -moz-transform: rotate(360deg);
         transform: rotate(360deg);
  }
}

@keyframes rotate360 {
  0% {
    -webkit-transform: rotate(0deg);
       -moz-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(360deg);
       -moz-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}

.effect {
  -webkit-transition-duration: 1s;
     -moz-transition-duration: 1s;
          transition-duration: 1s;
  -webkit-transition-timing-function: ease;
     -moz-transition-timing-function: ease;
          transition-timing-function: ease;
  -webkit-transition-property: all;
  -moz-transition-property: all;
  transition-property: all;
}

.fadeIn {
  opacity: 0;
}

.fadeIn.active {
  opacity: 1;
}

.fadeInUp {
  opacity: 0;
  -webkit-transform: translateY(50px);
     -moz-transform: translateY(50px);
      -ms-transform: translateY(50px);
          transform: translateY(50px);
}

.fadeInUp.active {
  opacity: 1;
  -webkit-transform: translateY(0);
     -moz-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0);
}

.slideFromLeft {
  opacity: 0;
  -webkit-transform: translateX(-100%);
     -moz-transform: translateX(-100%);
      -ms-transform: translateX(-100%);
          transform: translateX(-100%);
}

.slideFromLeft.active {
  opacity: 1;
  -webkit-transform: translateX(0);
     -moz-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0);
}

.slideFromRight {
  opacity: 0;
  -webkit-transform: translateX(50%);
     -moz-transform: translateX(50%);
      -ms-transform: translateX(50%);
          transform: translateX(50%);
}

.slideFromRight.active {
  opacity: 1;
  -webkit-transform: translateX(0);
     -moz-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0);
}

.delay_03 {
  -webkit-transition-delay: 0.3s;
     -moz-transition-delay: 0.3s;
          transition-delay: 0.3s;
}

.delay_06 {
  -webkit-transition-delay: 0.6s;
     -moz-transition-delay: 0.6s;
          transition-delay: 0.6s;
}

.delay_09 {
  -webkit-transition-delay: 0.9s;
     -moz-transition-delay: 0.9s;
          transition-delay: 0.9s;
}

.delay_12 {
  -webkit-transition-delay: 1.2s;
     -moz-transition-delay: 1.2s;
          transition-delay: 1.2s;
}

.delay_15 {
  -webkit-transition-delay: 1.5s;
     -moz-transition-delay: 1.5s;
          transition-delay: 1.5s;
}

.delay_18 {
  -webkit-transition-delay: 1.8s;
     -moz-transition-delay: 1.8s;
          transition-delay: 1.8s;
}

.delay_21 {
  -webkit-transition-delay: 2.1s;
     -moz-transition-delay: 2.1s;
          transition-delay: 2.1s;
}

.effectChar {
  white-space: nowrap;
}

.effectChar .waveText {
  -webkit-animation-duration: 1s;
     -moz-animation-duration: 1s;
          animation-duration: 1s;
  -webkit-animation-timing-function: cubic-bezier(0.19, 1, 0.22, 1.1);
     -moz-animation-timing-function: cubic-bezier(0.19, 1, 0.22, 1.1);
          animation-timing-function: cubic-bezier(0.19, 1, 0.22, 1.1);
  -webkit-animation-fill-mode: forwards;
     -moz-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  display: inline-block;
  -webkit-transform: translateY(110%);
     -moz-transform: translateY(110%);
      -ms-transform: translateY(110%);
          transform: translateY(110%);
  opacity: 0;
  overflow: hidden;
}

.effectChar.active .waveText {
  -webkit-animation-name: showText;
     -moz-animation-name: showText;
          animation-name: showText;
}

.boxoverlay {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1900;
  width: 100%;
  height: 100%;
  opacity: 0;
  visibility: hidden;
  background: rgba(0, 0, 0, 0.49);
  -webkit-transition: all 0.5s;
  -moz-transition: all 0.5s;
  transition: all 0.5s;
}
