@-webkit-keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@-webkit-keyframes secondaryImageOverlayIn {
  0% {
    width: 0; }
  100% {
    width: 100%; } }

@keyframes secondaryImageOverlayIn {
  0% {
    width: 0; }
  100% {
    width: 100%; } }

@-webkit-keyframes secondaryImageOverlayOut {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0); }
  100% {
    -webkit-transform: translateX(102%);
    transform: translateX(102%); } }

@keyframes secondaryImageOverlayOut {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0); }
  100% {
    -webkit-transform: translateX(102%);
    transform: translateX(102%); } }

.recruit_sec {
  background: #F7F7F7; }
  @media screen and (max-width: 750px) {
    .recruit_sec {
      margin-top: 50px; } }

.ie .recruit_sec {
  display: block;
  zoom: 1;
  position: relative; }

.recruit__interview {
  background: #fff; }

@media screen and (min-width: 751px) and (max-width: 1200px) {
  .recruit__aboutus .inner-l,
  .recruit__interview .inner-l,
  .recruit__culture .inner-l,
  .recruit__faq .inner-l {
    margin: 0; } }

@media screen and (max-width: 750px) {
  .recruit__aboutus .inner-l,
  .recruit__interview .inner-l,
  .recruit__culture .inner-l,
  .recruit__faq .inner-l {
    margin: 0; } }

@media screen and (min-width: 751px) {
  .recruit__mv {
    height: 760px; } }

@media screen and (max-width: 750px) {
  .recruit__mv {
    height: 45vh;
    overflow: hidden; } }

@media screen and (max-width: 750px) {
  .bgb_ttl {
    position: absolute;
    bottom: -25px;
    left: 0; } }

.bgb_ttl span {
  display: inline-block;
  padding: 10px 20px;
  background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(0%, #000));
  background: -webkit-linear-gradient(transparent 0%, #000 0%);
  background: -o-linear-gradient(transparent 0%, #000 0%);
  background: linear-gradient(transparent 0%, #000 0%);
  font-size: 50px;
  font-weight: bold;
  color: #fff;
  line-height: 2.3;
  letter-spacing: 10px; }
  @media screen and (max-width: 750px) {
    .bgb_ttl span {
      font-size: 18px;
      letter-spacing: 3px; } }
  .bgb_ttl span:first-child {
    margin-bottom: 10px; }

.to_recruit_top {
  padding-bottom: 100px; }
  @media screen and (max-width: 750px) {
    .to_recruit_top {
      padding-bottom: 40px; } }
  .to_recruit_top p {
    position: relative;
    margin: 100px 0 0; }
    @media screen and (max-width: 750px) {
      .to_recruit_top p {
        margin: 0; } }
    .to_recruit_top p a {
      display: block;
      padding: 25px 0 25px 25px;
      border-top: 1px solid #D3D3D3;
      border-bottom: 1px solid #D3D3D3;
      font-size: 14px;
      font-weight: bold;
      color: #000;
      text-decoration: none; }
      @media screen and (max-width: 750px) {
        .to_recruit_top p a {
          font-size: 12px; } }
    .to_recruit_top p:after {
      content: "";
      position: absolute;
      top: 50%;
      left: 0;
      width: 10px;
      height: 10px;
      border-top: 1px solid #000;
      border-right: 1px solid #000;
      margin-top: -3px;
      -webkit-transform: rotate(-135deg);
      -ms-transform: rotate(-135deg);
      transform: rotate(-135deg); }

.blog {
  margin: 150px 0 40px; }
  .blog h2.inter_rrl {
    font-size: 120px;
    color: #E6E6E6;
    font-family: din-1451-lt-pro-engschrift, sans-serif;
    font-weight: normal;
    letter-spacing: 3px; }
  .blog .inner-l.sticktoright {
    margin: 0 0 0 auto; }
    @media screen and (min-width: 751px) and (max-width: 1200px) {
      .blog .inner-l.sticktoright {
        margin: 0 20px; } }
    @media screen and (max-width: 750px) {
      .blog .inner-l.sticktoright {
        margin: 0 20px; } }
  .blog h2 {
    max-width: 230px; }
  .blog .swiper-parent {
    position: relative;
    max-width: 1366px;
    margin: -70px auto 0; }
    @media screen and (max-width: 750px) {
      .blog .swiper-parent {
        margin: -50px auto 0; } }
  .blog .blog__slides {
    position: relative; }
    .blog .blog__slides a {
      text-decoration: none; }
      .blog .blog__slides a:hover img {
        -webkit-transform: scale(1.1);
        -ms-transform: scale(1.1);
        transform: scale(1.1);
        -webkit-transition: all .3s;
        -o-transition: all .3s;
        transition: all .3s; }
        @media screen and (min-width: 751px) {
          .blog .blog__slides a:hover img {
            -webkit-filter: grayscale(100%);
            filter: grayscale(100%); } }
    .blog .blog__slides .blog__slide__img {
      position: relative;
      overflow: hidden; }
      .blog .blog__slides .blog__slide__img:before {
        content: "";
        display: block;
        padding-top: 60%; }
    .blog .blog__slides img {
      position: absolute;
      top: 0;
      left: 0;
      max-width: 100%;
      height: 100%;
      -o-object-fit: cover;
      object-fit: cover;
      font-family: 'object-fit: cover;';
      -webkit-box-shadow: 3px 3px 18px rgba(0, 0, 0, 0.1);
      box-shadow: 3px 3px 18px rgba(0, 0, 0, 0.1);
      -webkit-transform: scale(1);
      -ms-transform: scale(1);
      transform: scale(1);
      -webkit-transition: all .3s;
      -o-transition: all .3s;
      transition: all .3s; }
      @media screen and (min-width: 751px) {
        .blog .blog__slides img {
          -webkit-filter: grayscale(0);
          filter: grayscale(0); } }
    .blog .blog__slides h3 {
      padding: 30px 0 15px;
      font-size: 16px;
      font-weight: bold;
      line-height: 2;
      color: #000;
      overflow: hidden;
      white-space: nowrap;
      -o-text-overflow: ellipsis;
      text-overflow: ellipsis; }
      @media screen and (max-width: 750px) {
        .blog .blog__slides h3 {
          padding: 15px 0;
          font-size: 14px; } }
    .blog .blog__slides p {
      font-size: 12px;
      color: #919191;
      font-family: din-1451-lt-pro-engschrift, sans-serif;
      font-weight: normal;
      letter-spacing: 1px; }
  .blog .blog__cate a {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    padding: 7px 15px 5px;
    background-color: #000;
    color: #fff;
    font-size: 12px;
    font-family: din-1451-lt-pro-engschrift, sans-serif;
    font-weight: normal;
    letter-spacing: 1px;
    text-transform: uppercase; }
    @media screen and (max-width: 750px) {
      .blog .blog__cate a {
        font-size: 10px; } }
  @media screen and (min-width: 751px) {
    .blog .swiper-container {
      max-width: 1200px;
      margin: 0 0 0 auto; } }
  .blog .swiper-button-prev, .blog .swiper-button-next {
    top: calc((100% - 50px) * 0.5);
    margin-top: -22px;
    position: initial !important;
    width: 12px;
    height: 18px;
    background-size: 12px 18px; }
  .blog .swiper-button-prev {
    margin-right: 20px;
    background-image: url("../../images/top/arrow_prev.svg"); }
  .blog .swiper-button-next {
    background-image: url("../../images/top/arrow_prev.svg");
    -webkit-transform: scale(-1, 1);
    -ms-transform: scale(-1, 1);
    transform: scale(-1, 1); }
  .blog .blog__btnanv {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    margin: 0 30px 20px 0; }
    @media screen and (max-width: 750px) {
      .blog .blog__btnanv {
        margin: 0 0 10px 0; } }

span.underline_btn {
  position: relative;
  display: block;
  width: 200px;
  margin: 70px 0 0 auto;
  text-align: right; }
  @media screen and (min-width: 751px) {
    span.underline_btn:after {
      content: "";
      display: block;
      width: 100%;
      height: 3px;
      background: #000;
      position: absolute;
      bottom: 0;
      left: 0;
      -webkit-transition: all .5s;
      -o-transition: all .5s;
      transition: all .5s; }
    span.underline_btn:before {
      content: "";
      display: block;
      width: 0;
      height: 3px;
      background: #82d2f2;
      position: absolute;
      bottom: 0;
      right: 0;
      -webkit-transition: all .5s;
      -o-transition: all .5s;
      transition: all .5s; }
    span.underline_btn:hover:after {
      width: 0;
      -webkit-transition: all .5s;
      -o-transition: all .5s;
      transition: all .5s; }
    span.underline_btn:hover:before {
      width: 100%;
      -webkit-transition: all .5s;
      -o-transition: all .5s;
      transition: all .5s; } }
  @media screen and (max-width: 750px) {
    span.underline_btn {
      width: 120px; } }
  span.underline_btn a {
    position: relative;
    display: block;
    padding-bottom: 20px;
    font-size: 24px;
    font-weight: bold;
    color: #000;
    letter-spacing: 2.8px;
    text-decoration: none; }
    @media screen and (max-width: 750px) {
      span.underline_btn a {
        padding-bottom: 12px;
        font-size: 14px; } }
    span.underline_btn a:before {
      content: "";
      position: absolute;
      top: 50%;
      left: -5px;
      width: 15px;
      height: 15px;
      border-top: 3px solid #000;
      border-right: 3px solid #000;
      -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
      transform: rotate(45deg);
      margin-top: -15px; }
      @media screen and (max-width: 750px) {
        span.underline_btn a:before {
          top: 50%;
          left: 0px;
          width: 8px;
          height: 8px;
          border-top: 2px solid #000;
          border-right: 2px solid #000;
          margin-top: -10px; } }
    span.underline_btn a img {
      position: absolute;
      bottom: 15px;
      left: 0;
      margin: auto; }
      @media screen and (max-width: 750px) {
        span.underline_btn a img {
          bottom: 10px; } }
@-webkit-keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@-webkit-keyframes secondaryImageOverlayIn {
  0% {
    width: 0; }
  100% {
    width: 100%; } }

@keyframes secondaryImageOverlayIn {
  0% {
    width: 0; }
  100% {
    width: 100%; } }

@-webkit-keyframes secondaryImageOverlayOut {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0); }
  100% {
    -webkit-transform: translateX(102%);
    transform: translateX(102%); } }

@keyframes secondaryImageOverlayOut {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0); }
  100% {
    -webkit-transform: translateX(102%);
    transform: translateX(102%); } }

.recruit_sec {
  background: #fff; }

.recruit__aboutus .recruit__aboutus__mv {
  position: relative;
  background-image: url("../../images/recruit/bg_recruitaboutus.jpg");
  background-position: right top;
  background-repeat: no-repeat;
  background-size: cover; }
  @media screen and (max-width: 750px) {
    .recruit__aboutus .recruit__aboutus__mv {
      background-image: url("../../images/recruit/bg_recruitaboutus_sp.png"); } }
  .recruit__aboutus .recruit__aboutus__mv .bgb_ttl {
    padding: 320px 0 90px; }
    @media screen and (max-width: 750px) {
      .recruit__aboutus .recruit__aboutus__mv .bgb_ttl {
        padding: 0; } }

@media screen and (min-width: 1201px) {
  .recruit__aboutus .inter_sec {
    padding: 100px 0 0; } }

.recruit__aboutus .inter_sec .recruit__aboutus__intro__bg {
  display: block;
  margin-top: 360px;
  height: 400px;
  background-position: center bottom;
  background-repeat: no-repeat;
  background-size: 100%; }
  @media screen and (min-width: 751px) and (max-width: 1200px) {
    .recruit__aboutus .inter_sec .recruit__aboutus__intro__bg {
      height: auto;
      padding-top: 30%;
      margin-top: -6%; } }
  @media screen and (max-width: 750px) {
    .recruit__aboutus .inter_sec .recruit__aboutus__intro__bg {
      height: auto;
      padding-top: 90.66667%;
      margin-top: 40px;
      background-size: cover; } }

.recruit__aboutus .inter_sec.inter_sec01 .recruit__aboutus__intro__bg {
  background-image: url("../../images/recruit/bg_recruitaboutus_sec.jpg"); }
  @media screen and (max-width: 750px) {
    .recruit__aboutus .inter_sec.inter_sec01 .recruit__aboutus__intro__bg {
      background-image: url("../../images/recruit/bg_recruitaboutus_sec_sp.png"); } }

.recruit__aboutus .inter_sec.inter_sec02 .recruit__aboutus__intro__bg {
  background-image: url("../../images/recruit/bg_recruitaboutus_sec02.jpg"); }
  @media screen and (max-width: 750px) {
    .recruit__aboutus .inter_sec.inter_sec02 .recruit__aboutus__intro__bg {
      background-image: url("../../images/recruit/bg_recruitaboutus_sec02_sp.png");
      background-position: right top; } }

@media screen and (max-width: 750px) {
  .recruit__aboutus .inter_sec.inter_sec02 h3 {
    padding-top: 0; } }

.recruit__aboutus .inter_sec .inner {
  position: relative; }

.recruit__aboutus .inter_sec h3 {
  position: relative;
  z-index: 500; }
  @media screen and (min-width: 751px) {
    .recruit__aboutus .inter_sec h3 {
      padding-top: 75px; } }
  @media screen and (min-width: 751px) and (max-width: 1200px) {
    .recruit__aboutus .inter_sec h3 {
      padding: 75px 0 25px; } }
  @media screen and (max-width: 750px) {
    .recruit__aboutus .inter_sec h3 {
      padding-top: 60px; } }
  .recruit__aboutus .inter_sec h3 span {
    padding: 0 0 20px 35px;
    border-left: 5px solid #5BCBD8;
    display: block;
    font-size: 40px;
    color: #5BCBD8;
    font-weight: bold;
    letter-spacing: 6px; }
    .recruit__aboutus .inter_sec h3 span:last-child {
      padding-bottom: 0; }
    @media screen and (max-width: 750px) {
      .recruit__aboutus .inter_sec h3 span {
        padding: 0 0 10px 15px;
        font-size: 20px; } }
    @media screen and (max-width: 374px) {
      .recruit__aboutus .inter_sec h3 span {
        font-size: 18px; } }

.recruit__aboutus .inter_sec .recruit__aboutus__intro__txt {
  padding: 80px 65px 73px 154px;
  background: #fff; }
  @media screen and (min-width: 751px) {
    .recruit__aboutus .inter_sec .recruit__aboutus__intro__txt {
      width: 800px;
      -webkit-box-shadow: 0px 3px 16px rgba(0, 0, 0, 0.1);
      box-shadow: 0px 3px 16px rgba(0, 0, 0, 0.1); } }
  @media screen and (min-width: 1201px) {
    .recruit__aboutus .inter_sec .recruit__aboutus__intro__txt {
      position: absolute;
      top: 0;
      right: 0; } }
  @media screen and (min-width: 751px) and (max-width: 1200px) {
    .recruit__aboutus .inter_sec .recruit__aboutus__intro__txt {
      width: auto; } }
  @media screen and (max-width: 750px) {
    .recruit__aboutus .inter_sec .recruit__aboutus__intro__txt {
      width: auto;
      margin-top: 25px;
      padding: 0; } }
  .recruit__aboutus .inter_sec .recruit__aboutus__intro__txt p {
    margin-bottom: 40px;
    font-size: 15px;
    line-height: 2; }
    @media screen and (min-width: 751px) {
      .recruit__aboutus .inter_sec .recruit__aboutus__intro__txt p {
        width: 500px; } }
    @media screen and (min-width: 751px) and (max-width: 1200px) {
      .recruit__aboutus .inter_sec .recruit__aboutus__intro__txt p {
        width: auto; } }
    @media screen and (max-width: 750px) {
      .recruit__aboutus .inter_sec .recruit__aboutus__intro__txt p {
        width: auto;
        font-size: 12px; } }
    .recruit__aboutus .inter_sec .recruit__aboutus__intro__txt p:last-child {
      margin-bottom: 0; }
    .recruit__aboutus .inter_sec .recruit__aboutus__intro__txt p a {
      text-decoration: none;
      color: #5BCBD8; }

@media screen and (max-width: 750px) {
  .recruit__aboutus .inter_sec.inter_sec01 {
    margin-bottom: 60px; } }

@media screen and (min-width: 1201px) {
  .recruit__aboutus .inter_sec.inter_sec02 {
    padding: 150px 0 0; }
    .recruit__aboutus .inter_sec.inter_sec02 h3 {
      width: 500px;
      margin: 0 0 0 auto;
      padding-top: 0; }
    .recruit__aboutus .inter_sec.inter_sec02 .recruit__aboutus__intro__txt {
      padding: 70px 160px 68px 60px;
      top: 50px;
      left: 0; } }

.recruit__aboutus .inter_sec.inter_sec02 .recruit__aboutus__intro__bg {
  margin-top: 200px; }
  @media screen and (max-width: 750px) {
    .recruit__aboutus .inter_sec.inter_sec02 .recruit__aboutus__intro__bg {
      margin-top: 40px; } }
