.staff-box {
  position: relative; }
  .staff-box-inner a {
    display: block; }
  .staff-box-head {
    display: block;
    position: absolute;
    font-weight: 600;
    color: #fff;
    font-style: italic;
    text-align: left;
    letter-spacing: 0.02em;
    background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(0%, #0088c3));
    background: linear-gradient(transparent 0%, #0088c3 0%); }
  .staff-box h2.show--s span:nth-child(1) {
    top: 7vw; }
  .staff-box h2.show--s span:nth-child(2) {
    top: 16vw; }
  .staff-box h2.show--s span:nth-child(3) {
    top: 25vw; }
  .staff-box-namelink {
    position: absolute;
    background: #fff;
    text-align: left;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; }

.staff-box-small {
  position: relative; }
  .staff-box-small-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .staff-box-small-list::after {
      content: '';
      display: block; }
  .staff-box-small-item-text {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; }
    .staff-box-small-item-text-name {
      font-weight: 900; }
    .staff-box-small-item-text-position {
      font-weight: 600; }
    @media screen and (max-width: 768px) {
  .sub img {
    width: 34.13333vw;
    height: 2.26667vw;
    margin-left: -10px; }
    .staff-box {
      width: 100%;
      padding-top: 0px !important;
      padding-bottom: 13.5vw; }
    .staff-box-inner-wrap-img {
      text-align: right; }
      .staff-box-inner-wrap-img img {
        max-width: calc(100% - 8vw); }
      .staff-box-head {
        font-size: 6vw;
        line-height: 7vw;
        padding: 0 2px 3px; }
      .staff-box-head:nth-child(1) {
        top: 12vw; }
      .staff-box-head:nth-child(2) {
        top: 21vw; }
      .staff-box-namelink {
        left: 13.5vw;
        bottom: 9vw;
        width: 53vw;
        -webkit-box-align: end;
            -ms-flex-align: end;
                align-items: flex-end;
        padding-left: 5px;
        border-bottom: solid 3px #000; }
      .staff-box-namelink_button img {
        position: absolute;
        right: 10px;
        bottom: 10px;
        width: 25px; }
      .staff-box-namelink .staff-data {
        padding: 10px 0; }
      .staff-box-namelink .staff-name {
        font-size: 18px;
        font-weight: 600; }
      .staff-box-namelink .staff-name_sub {
        font-size: 11px;
        padding-left: 5px; }
      .staff-box-namelink .staff-position {
        font-size: 12px;
        padding: 3px 0 8px; }
    .staff-box-small {
      width: 100%;
      padding-top: 0px !important;
      padding-bottom: 13.5vw; }
        .staff-box-small-list::after {
          width: 40.8vw; }
    .staff-box-small-item {
      border-bottom: 3px solid #000;
      width: 40.8vw;
      margin-top: 5vw; }
    .staff-box-small-item-img img {
      max-width: 100%; }
      .staff-box-small-item-text {
        padding: 2.66667vw 1.33333vw; }
        .staff-box-small-item-text-name {
          font-size: 3.2vw; }
        .staff-box-small-item-text-position {
          font-size: 2.66667vw; } }
    @media screen and (min-width: 769px) {
  .sub img {
    width: 211px;
    height: 14px;
    margin-left: -13px; }
    .staff-box {
      max-width: 1166px;
      margin: 0 auto 20px;
      padding-left: 108px;
      padding-top: 0px !important; }
    .staff-box:last-of-type {
      padding-bottom: 0 !important; }
    .staff-box:last-of-type .staff-box-namelink {
      bottom: -19px; }
      .staff-box-inner a:hover .staff-box-inner-wrap-img {
        -webkit-transition: -webkit-transform .5s;
        transition: -webkit-transform .5s;
        transition: transform .5s;
        transition: transform .5s, -webkit-transform .5s;
        -webkit-transform: scale(1.06);
                transform: scale(1.06); }
      .staff-box-inner a:hover .staff-box-namelink_button {
        padding-right: 20px !important;
        -webkit-transition: .5s;
        transition: .5s; }
    .staff-box-inner-wrap {
      overflow: hidden;
      height: 360px; }
    .staff-box-inner-wrap-img {
      -o-object-fit: cover;
         object-fit: cover;
      width: 100%;
      height: 100%;
      font-family: "object-fit: cover";
      -webkit-transition: -webkit-transform 0.5s;
      transition: -webkit-transform 0.5s;
      transition: transform 0.5s;
      transition: transform 0.5s, -webkit-transform 0.5s; }
      .staff-box-inner-wrap-img img {
        width: 100%; }
      .staff-box-head {
        font-size: 48px;
        line-height: 60px;
        margin-left: -100px;
        padding: 0 15px 5px 10px; }
      .staff-box-head:nth-child(1) {
        top: 65px; }
      .staff-box-head:nth-child(2) {
        top: 138px;
        margin-left: .6em; }
      .staff-box-namelink {
        width: 400px;
        left: 108px;
        bottom: 60px;
        padding-left: 17px;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        border-bottom: solid 6px #000;
        -webkit-transition: .5s;
        transition: .5s; }
      .staff-box-namelink_button {
        padding-right: 25px;
        -webkit-transition: .5s;
        transition: .5s; }
      .staff-box-namelink .staff-data {
        padding: 20px 0; }
      .staff-box-namelink .staff-name {
        font-size: 32px;
        font-weight: 600;
        line-height: 42px; }
      .staff-box-namelink .staff-name_sub {
        font-size: 16px;
        padding-left: 8px; }
      .staff-box-namelink .staff-position {
        font-size: 16px; }
    .staff-box-small {
      max-width: 1166px;
      margin: 30px auto 20px;
      padding-left: 108px;
      padding-top: 0px !important; }
        .staff-box-small-list::after {
          width: 328px; }
    .staff-box-small-item {
      border-bottom: 6px solid #000;
      width: 328px; }
      .staff-box-small-item-text {
        padding: 20px 20px; }
        .staff-box-small-item-text-name {
          font-size: 26px; }
        .staff-box-small-item-text-position {
          font-size: 18px; } }
