html {
  min-width: 1280px; }

@media only screen and (max-width: 640px) {
  html {
    min-width: inherit; } }
.recruit-header {
  position: relative; }
  .recruit-header-logo {
    position: absolute;
    top: 30px;
    left: 30px;
    z-index: 100; }
  .recruit-header-hero {
    min-height: 680px;
    background-image: url("../../images/recruit/hero_visual@2x.jpg");
    background-size: cover;
    background-position: top center; }
    .recruit-header-hero-message {
      position: absolute;
      top: 50%;
      left: 100px;
      transform: translateY(-34%);
      z-index: 101; }

@media only screen and (max-width: 640px) {
  .recruit-header-logo {
    position: absolute;
    top: 20px;
    left: 0;
    right: 0; }
    .recruit-header-logo img {
      width: 260px; }
  .recruit-header-hero {
    height: 420px;
    min-height: inherit;
    background-position: top left; }
    .recruit-header-hero-message {
      top: 50%;
      left: 50%;
      transform: translate(-50%, -40%);
      width: 100vw; } }
.recruit-person {
  padding: 60px 0; }
  .recruit-person-lead {
    margin-bottom: 30px;
    font-size: 1.6rem;
    font-weight: 600; }
  .recruit-person-list {
    margin-bottom: 45px; }
  .recruit-person-item {
    min-width: 340px;
    margin: 0 10px; }
    .recruit-person-item-subject {
      margin-bottom: 10px;
      color: #384772;
      font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
      font-size: 1.4rem;
      font-weight: 600; }
    .recruit-person-item-desc {
      min-height: 140px;
      padding: 20px 15px;
      font-size: 1.0rem;
      font-weight: 600;
      line-height: 1.8;
      background-color: #ebedf1; }

@media only screen and (max-width: 640px) {
  .recruit-person {
    padding: 45px 0; }
    .recruit-person-ttl {
      margin-bottom: 30px; }
      .recruit-person-ttl img {
        height: 50px; }
    .recruit-person-lead {
      margin-bottom: 30px;
      font-size: 1.4rem; }
    .recruit-person-list {
      margin-bottom: 30px; }
    .recruit-person-item + .recruit-person-item {
      margin-top: 15px; }
    .recruit-person-item-subject {
      font-size: 1.6rem; }
    .recruit-person-item-desc {
      font-size: 1.2rem; } }
.recruit-bnr-list {
  margin-bottom: 45px; }
.recruit-bnr-item {
  margin: 15px 20px; }

@media only screen and (max-width: 640px) {
  .recruit-bnr-list {
    margin-bottom: 30px; } }
.recruit-indeed-box {
  max-width: 800px;
  padding: 30px 30px;
  margin: 0 auto;
  border: 3px solid #384772;
  border-radius: 10px; }
.recruit-indeed-ttl {
  margin-bottom: 10px;
  color: #384772;
  font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
  font-size: 2.0rem;
  font-weight: 600; }

@media only screen and (max-width: 640px) {
  .recruit-indeed-box {
    margin: 0 15px; }
  .recruit-indeed-ttl {
    font-size: 1.8rem; } }
.recruit-interview {
  padding: 60px 0;
  background-color: #384772; }
  .recruit-interview-box {
    position: relative; }
    .recruit-interview-box + .recruit-interview-box {
      margin-top: 60px; }
  .recruit-interview-bg {
    position: relative;
    width: 100%;
    height: 480px;
    overflow: hidden; }
    .recruit-interview-bg img {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translateY(-50%) translateX(-50%);
      min-width: 100%;
      height: auto; }
  .recruit-interview-over {
    position: absolute;
    top: 50%;
    right: 4%;
    transform: translateY(-50%);
    width: auto;
    text-align: left; }
  .recruit-interview-subject {
    margin-bottom: 30px; }
  .recruit-interview-name {
    margin-left: 30px; }
  .recruit-interview-body {
    position: absolute;
    left: 4%;
    top: 50%;
    transform: translateY(-50%);
    width: 470px;
    padding: 30px;
    text-align: left;
    background-color: rgba(255, 255, 255, 0.8); }
  .recruit-interview-lead {
    margin-bottom: 10px;
    color: #384772;
    font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
    font-size: 1.6rem;
    font-weight: 600; }
  .recruit-interview-txt {
    font-size: 1.0rem; }

@media only screen and (max-width: 640px) {
  .recruit-interview {
    padding: 45px 0; }
    .recruit-interview-ttl img {
      height: 60px; }
    .recruit-interview-box {
      max-width: 360px;
      margin: 0 auto; }
      .recruit-interview-box + .recruit-interview-box {
        margin-top: 45px; }
    .recruit-interview-head {
      position: relative; }
    .recruit-interview-bg {
      height: 240px; }
      .recruit-interview-bg img {
        left: 72%;
        width: auto;
        max-width: inherit;
        height: 100%; }
    .recruit-interview-over {
      left: 10px;
      right: 0;
      width: 240px; }
    .recruit-interview-subject {
      margin-bottom: 5px; }
    .recruit-interview-name {
      margin-left: 15px; }
    .recruit-interview-body {
      position: relative;
      left: auto;
      top: auto;
      transform: none;
      width: inherit;
      margin: 0 auto; }
    .recruit-interview-lead {
      font-size: 1.3rem; } }
