/* ======================================================================
 setting
====================================================================== */
/* ======================================================================
 p_top
====================================================================== */
.p_top .l_loader {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0px;
  left: 0px;
  background: #fff;
  z-index: 999;
}
.p_top .l_loader .loader {
  display: none;
  width: 400px;
  height: 400px;
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  position: absolute;
  top: 50%;
  left: 50%;
}
@media screen and (min-width: 1025px) {
  .p_top .l_loader .loader {
    width: 800px;
    height: 800px;
  }
}
.p_top .l_loader .loader .loading_gif {
  max-width: 100%;
}
.p_top .l_main .sec_1 {
  margin: 35px 0 40px;
}
@media screen and (min-width: 1025px) {
  .p_top .l_main .sec_1 {
    margin: 50px 0 100px;
  }
}
.p_top .l_main .sec_1 .sec_ttl {
  margin: 0 0 30px;
}
@media screen and (min-width: 1025px) {
  .p_top .l_main .sec_1 .sec_ttl {
    margin: 0 0 50px;
  }
}
.p_top .l_main .sec_1 .tab_wrap {
  margin: 0 0 25px;
}
@media screen and (min-width: 1025px) {
  .p_top .l_main .sec_1 .tab_wrap {
    margin: 0 0 50px;
  }
}
.p_top .l_main .sec_1 .tab_content > .item {
  display: none;
}
.p_top .l_main .sec_1 .tab_content > .item._active {
  display: block;
}
.p_top .l_main .sec_1 .btn_wrap {
  margin: 30px 0 0;
  text-align: center;
}
@media screen and (min-width: 1025px) {
  .p_top .l_main .sec_1 .btn_wrap {
    margin: 50px 0 0;
    text-align: left;
  }
}
.p_top .l_main .sec_2 {
  margin: 0 0 30px;
}
@media screen and (min-width: 1025px) {
  .p_top .l_main .sec_2 {
    margin: 0 0 90px;
    overflow: hidden;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
  }
}
@media screen and (min-width: 1025px) {
  .p_top .l_main .sec_2 .img_wrap {
    max-width: 585px;
    width: 50%;
    -webkit-flex-shrink: 0;
    -moz-flex-shrink: 0;
    -ms-flex-shrink: 0;
    flex-shrink: 0;
  }
}
.p_top .l_main .sec_2 .img_wrap .img {
  width: 100%;
  max-width: 100%;
  display: block;
}
@media screen and (min-width: 1025px) {
  .p_top .l_main .sec_2 .img_wrap .img {
    width: auto;
    max-width: none;
  }
}
.p_top .l_main .sec_2 .txt_wrap {
  background: #009fe8;
  color: #fff;
}
@media screen and (min-width: 1025px) {
  .p_top .l_main .sec_2 .txt_wrap {
    width: 100%;
    position: relative;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -moz-align-items: center;
    -ms-align-items: center;
    align-items: center;
  }
}
.p_top .l_main .sec_2 .txt_wrap > .inner {
  padding: 30px 4%;
}
@media screen and (min-width: 1025px) {
  .p_top .l_main .sec_2 .txt_wrap > .inner {
    padding: 0 60px;
  }
}
.p_top .l_main .sec_2 .txt_wrap > .inner .sec_ttl {
  margin: 0 0 20px;
  position: relative;
}
@media screen and (min-width: 1025px) {
  .p_top .l_main .sec_2 .txt_wrap > .inner .sec_ttl {
    margin: 0 0 35px;
  }
}
.p_top .l_main .sec_2 .txt_wrap > .inner .sec_ttl:before {
  content: '';
  background: url(../img/top/mission_shape.svg) no-repeat;
  background-size: cover;
  width: 102px;
  height: 74px;
  position: absolute;
  right: 0;
  bottom: 0;
}
@media screen and (min-width: 1025px) {
  .p_top .l_main .sec_2 .txt_wrap > .inner .sec_ttl:before {
    width: 204px;
    height: 148px;
    left: 550px;
  }
}
.p_top .l_main .sec_2 .txt_wrap > .inner .sec_ttl .ja,
.p_top .l_main .sec_2 .txt_wrap > .inner .sec_ttl .en {
  text-align: left;
}
.p_top .l_main .sec_3 {
  margin: 0 0 40px;
}
@media screen and (min-width: 1025px) {
  .p_top .l_main .sec_3 {
    margin: 0 0 90px;
  }
}
.p_top .l_main .sec_3 .sec_ttl {
  margin: 0 0 20px;
}
@media screen and (min-width: 1025px) {
  .p_top .l_main .sec_3 .sec_ttl {
    margin: 0 0 40px;
  }
}
.p_top .l_main .sec_3 .detail_btn_wrap {
  margin: 25px 0 0;
  text-align: center;
}
@media screen and (min-width: 1025px) {
  .p_top .l_main .sec_3 .detail_btn_wrap {
    margin: 40px 0 0;
    text-align: left;
  }
}
@media screen and (min-width: 1025px) {
  .p_top .l_main .sec_3 .item_wrap {
    margin: 100px 0 0;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
  }
}
.p_top .l_main .sec_3 .item_wrap .item._01:before {
  content: url(../img/top/sp/feature_bg.jpg);
}
@media screen and (min-width: 1025px) {
  .p_top .l_main .sec_3 .item_wrap .item._01:before {
    content: url(../img/top/feature_bg.jpg);
  }
}
@media screen and (min-width: 1025px) {
  .p_top .l_main .sec_3 .item_wrap .item._02 {
    margin: 50px 0 0;
  }
}
.p_top .l_main .sec_3 .item_wrap .item._02:before {
  content: url(../img/top/sp/initiatives_bg.jpg);
}
@media screen and (min-width: 1025px) {
  .p_top .l_main .sec_3 .item_wrap .item._02:before {
    content: url(../img/top/initiatives_bg.jpg);
  }
}
.p_top .l_main .sec_4 {
  margin: 0 0 35px;
  padding: 30px 4% 0;
  background: linear-gradient(to top, #ffffff 50px, #009fe8 50px);
}
@media screen and (min-width: 1025px) {
  .p_top .l_main .sec_4 {
    margin: 0 0 90px;
    padding: 50px 0 0;
  }
}
@media screen and (min-width: 1025px) {
  .p_top .l_main .sec_4 > .inner {
    height: 600px;
    width: 100%;
    background: url(../img/top/service_img.jpg) no-repeat;
    background-size: -moz-calc(100% - 360px - (50% - 700px));
    background-size: -o-calc(100% - 360px - (50% - 700px));
    background-size: -webkit-calc(100% - 360px - (50% - 700px));
    background-size: calc(100% - 360px - (50% - 700px));
    max-width: -moz-calc(1400px + (50% - 700px));
    max-width: -o-calc(1400px + (50% - 700px));
    max-width: -webkit-calc(1400px + (50% - 700px));
    max-width: calc(1400px + (50% - 700px));
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-end;
    -moz-justify-content: flex-end;
    -ms-justify-content: flex-end;
    justify-content: flex-end;
    -ms-flex-pack: flex-end;
  }
}
.p_top .l_main .sec_4 > .inner .txt_wrap {
  color: #fff;
}
@media screen and (min-width: 1025px) {
  .p_top .l_main .sec_4 > .inner .txt_wrap {
    background: linear-gradient(to top, #ffffff 50px, #009fe8 50px);
    max-width: 420px;
    padding: 40px 60px 0;
    height: 100%;
    -webkit-flex-basis: 420px;
    -moz-flex-basis: 420px;
    -ms-flex-basis: 420px;
    flex-basis: 420px;
    -webkit-flex-shrink: 0;
    -moz-flex-shrink: 0;
    -ms-flex-shrink: 0;
    flex-shrink: 0;
    -webkit-box-ordinal-group: 0;
    -moz-box-ordinal-group: 0;
    -ms-flex-order: 0;
    -webkit-order: 0;
    order: 0;
  }
}
.p_top .l_main .sec_4 > .inner .txt_wrap .sec_ttl {
  margin: 0 0 20px;
}
@media screen and (min-width: 1025px) {
  .p_top .l_main .sec_4 > .inner .txt_wrap .sec_ttl {
    margin: 0 0 40px;
  }
}
.p_top .l_main .sec_4 > .inner .txt_wrap .btn_wrap {
  margin: 30px 0 0;
  text-align: center;
}
@media screen and (min-width: 1025px) {
  .p_top .l_main .sec_4 > .inner .txt_wrap .btn_wrap {
    margin: 45px 0 0;
    text-align: left;
  }
}
.p_top .l_main .sec_4 > .inner .img_wrap {
  margin: 30px 0 0;
  text-align: center;
}
.p_top .l_main .sec_4 > .inner .img_wrap .img {
  max-width: 100%;
}
.p_top .l_main .sec_5 {
  margin: 0 0 35px;
}
@media screen and (min-width: 1025px) {
  .p_top .l_main .sec_5 {
    margin: 0 0 90px;
  }
}
.p_top .l_main .sec_5 .sec_ttl {
  margin: 0 0 25px;
}
@media screen and (min-width: 1025px) {
  .p_top .l_main .sec_5 .sec_ttl {
    margin: 0 0 40px;
  }
}
.p_top .l_main .sec_5 .btn_wrap {
  text-align: center;
  margin: 25px 0 0;
}
@media screen and (min-width: 1025px) {
  .p_top .l_main .sec_5 .btn_wrap {
    text-align: left;
    margin: 40px 0 0;
  }
}
.p_top .l_main .sec_5 .img_wrap {
  margin: 40px 0 0;
}
@media screen and (min-width: 1025px) {
  .p_top .l_main .sec_5 .img_wrap {
    margin: 50px 0 0;
    text-align: center;
  }
}
.p_top .l_main .sec_5 .img_wrap .img {
  max-width: 100%;
}
.p_top .l_main .sec_6 {
  margin: 0 0 40px;
}
@media screen and (min-width: 1025px) {
  .p_top .l_main .sec_6 {
    margin: 0 0 100px;
  }
}
@media screen and (min-width: 1025px) {
  .p_top .l_main .sec_6 .content_wrap {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
  }
}
@media screen and (min-width: 1025px) {
  .p_top .l_main .sec_6 .content_wrap .txt_wrap {
    width: 220px;
    max-width: 220px;
    margin: 0 40px 0 0;
  }
}
.p_top .l_main .sec_6 .content_wrap .txt_wrap .sec_ttl {
  margin: 0 0 25px;
}
@media screen and (min-width: 1025px) {
  .p_top .l_main .sec_6 .content_wrap .txt_wrap .sec_ttl {
    margin: 0 0 40px;
  }
}
.p_top .l_main .sec_6 .content_wrap .txt_wrap .btn_wrap {
  text-align: center;
  margin: 30px 0 0;
}
@media screen and (min-width: 1025px) {
  .p_top .l_main .sec_6 .content_wrap .txt_wrap .btn_wrap {
    text-align: left;
    margin: 25px 0 0;
  }
}
.p_top .l_main .sec_6 .content_wrap .item_wrap {
  margin: 40px 0 0;
}
@media screen and (min-width: 1025px) {
  .p_top .l_main .sec_6 .content_wrap .item_wrap {
    margin: 50px 0 0;
    width: -moz-calc(100% - 260px);
    width: -o-calc(100% - 260px);
    width: -webkit-calc(100% - 260px);
    width: calc(100% - 260px);
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
  }
}
.p_top .l_main .sec_6 .content_wrap .item_wrap .item {
  width: 100%;
  height: 140px;
  display: block;
  position: relative;
  overflow: hidden;
  margin: 0 0 15px;
}
@media screen and (min-width: 1025px) {
  .p_top .l_main .sec_6 .content_wrap .item_wrap .item {
    width: 50%;
    margin: 0;
  }
}
.p_top .l_main .sec_6 .content_wrap .item_wrap .item:last-child {
  margin: 0;
}
.p_top .l_main .sec_6 .content_wrap .item_wrap .item:before {
  height: 100%;
  position: absolute;
  right: 0;
}
@media screen and (min-width: 769px) {
  .p_top .l_main .sec_6 .content_wrap .item_wrap .item:before {
    -moz-transition: ease 0.4s;
    -webkit-transition: ease 0.4s;
    transition: ease 0.4s;
  }
}
.p_top .l_main .sec_6 .content_wrap .item_wrap .item._01 {
  background: url(../img/top/sp/new_graduate.jpg) right center no-repeat;
  background-size: cover;
}
@media screen and (min-width: 1025px) {
  .p_top .l_main .sec_6 .content_wrap .item_wrap .item._01:before {
    content: url(../img/top/new_graduate.jpg);
  }
}
.p_top .l_main .sec_6 .content_wrap .item_wrap .item._02 {
  background: url(../img/top/sp/career.jpg) right center no-repeat;
  background-size: cover;
}
@media screen and (min-width: 1025px) {
  .p_top .l_main .sec_6 .content_wrap .item_wrap .item._02 {
    margin: 50px 0 0;
  }
}
@media screen and (min-width: 1025px) {
  .p_top .l_main .sec_6 .content_wrap .item_wrap .item._02:before {
    content: url(../img/top/career.jpg);
  }
}
@media screen and (min-width: 1025px) {
  .p_top .l_main .sec_6 .content_wrap .item_wrap .item:hover:before {
    -moz-transform: scale(1.05, 1.05);
    -ms-transform: scale(1.05, 1.05);
    -webkit-transform: scale(1.05, 1.05);
    transform: scale(1.05, 1.05);
  }
}
@media screen and (min-width: 1025px) {
  .p_top .l_main .sec_6 .content_wrap .item_wrap .item:hover .txt_wrap {
    background: rgba(1, 133, 193, 0.85);
  }
}
.p_top .l_main .sec_6 .content_wrap .item_wrap .item .txt_wrap {
  width: 50%;
  height: 100%;
  color: #fff;
  position: relative;
  background: rgba(0, 159, 232, 0.85);
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
  -ms-flex-pack: center;
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  align-items: center;
  -moz-transition: ease 0.4s;
  -webkit-transition: ease 0.4s;
  transition: ease 0.4s;
}
.p_top .l_main .l_culture_office {
  display: none;
}
@media screen and (min-width: 1025px) {
  .p_top .l_main .l_culture_office {
    display: block;
  }
}

/*# sourceMappingURL=top.css.map */
