@charset "UTF-8";
.job-area {
  max-width: 1000px;
  margin: 40px auto 0;
  width: 90%;
  /*tabの形状*/
  /*エリアの表示非表示と形状*/
  /*areaにis-activeというクラスがついた時の形状*/ }
  @media (min-width: 1024px) {
    .job-area {
      margin: 80px auto 0; } }
  .job-area ul.tab {
    display: flex;
    flex-wrap: wrap; }
    .job-area ul.tab li {
      margin: 0 0 4px 0;
      width: 100%; }
      @media (min-width: 768px) {
        .job-area ul.tab li {
          width: auto;
          margin: 0 5px 0 0; } }
      .job-area ul.tab li a {
        font-feature-settings: "palt";
        letter-spacing: 0.04em;
        font-size: 0.8em;
        display: block;
        background-color: #B9B9B9;
        padding: 12px 15px;
        border-top-left-radius: 10px;
        border-top-right-radius: 10px;
        transition: .5s; }
        @media (min-width: 1024px) {
          .job-area ul.tab li a {
            padding: 12px 30px; } }
        @media (min-width: 1200px) {
          .job-area ul.tab li a {
            font-size: 1.0em; } }
        .job-area ul.tab li a:hover {
          background-color: #838383; }
  .job-area ul.tab li.active a {
    background-color: #1E58DE;
    color: #fff; }
  .job-area .area {
    display: none;
    opacity: 0;
    background-color: #fff;
    border-bottom-left-radius: 20px;
    border-bottom-right-radius: 20px;
    padding: 40px 0; }
    @media (min-width: 768px) {
      .job-area .area {
        border-top-right-radius: 20px;
        padding: 60px 0; } }
    @media (min-width: 1200px) {
      .job-area .area {
        padding: 80px 0; } }
    .job-area .area .figure {
      overflow: scroll;
      padding: 0 5%;
      text-align: center; }
      .job-area .area .figure img {
        width: auto;
        height: 300px;
        padding-bottom: 20px; }
        @media (min-width: 768px) {
          .job-area .area .figure img {
            height: 370px; } }
        @media (min-width: 1250px) {
          .job-area .area .figure img {
            height: 400px; } }
    .job-area .area .common-btn {
      display: flex;
      justify-content: center;
      margin-top: 40px; }
  .job-area .area.is-active {
    display: block;
    /*表示*/
    animation-name: displayAnime;
    /*ふわっと表示させるためのアニメーション*/
    animation-duration: 2s;
    animation-fill-mode: forwards; }
@keyframes displayAnime {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }
.job-title {
  border-bottom: 2px solid #000000;
  padding-bottom: 10px;
  margin-bottom: 40px; }
  .job-title h2 {
    font-size: 1.125em;
    line-height: 1.4em;
    font-feature-settings: "palt";
    letter-spacing: 0.04em;
    text-align: justify; }
    @media (min-width: 768px) {
      .job-title h2 {
        font-size: 1.35em; } }
    @media (min-width: 1200px) {
      .job-title h2 {
        font-size: 1.75em; } }

.job-description {
  margin-bottom: 100px; }
  @media (min-width: 1200px) {
    .job-description {
      margin-bottom: 160px; } }
  .job-description:last-child {
    margin-bottom: 0; }
  @media (min-width: 768px) {
    .job-description .job-description-in {
      display: flex; } }
  .job-description .job-description-in .job-description-L {
    margin-bottom: 20px; }
    @media (min-width: 768px) {
      .job-description .job-description-in .job-description-L {
        width: 45%;
        padding-right: 5%;
        margin-bottom: 0; } }
    .job-description .job-description-in .job-description-L .photo {
      position: sticky;
      top: 100px; }
  @media (min-width: 768px) {
    .job-description .job-description-in .job-description-R {
      width: 55%; } }
  .job-description .job-description-in .job-description-R .item {
    margin-bottom: 20px; }
    @media (min-width: 768px) {
      .job-description .job-description-in .job-description-R .item {
        margin-bottom: 40px; } }
    .job-description .job-description-in .job-description-R .item:last-child {
      margin-bottom: 0; }
    .job-description .job-description-in .job-description-R .item h3 {
      font-size: 1.125em;
      line-height: 1.4em; }
      @media (min-width: 768px) {
        .job-description .job-description-in .job-description-R .item h3 {
          font-size: 1.25em; } }
      @media (min-width: 1200px) {
        .job-description .job-description-in .job-description-R .item h3 {
          font-size: 1.45em; } }
    .job-description .job-description-in .job-description-R .item h4 {
      font-weight: 700;
      line-height: 1.2em; }
    .job-description .job-description-in .job-description-R .item h4, .job-description .job-description-in .job-description-R .item h6, .job-description .job-description-in .job-description-R .item p {
      font-size: 0.9em;
      font-feature-settings: "palt";
      letter-spacing: 0.04em;
      text-align: justify;
      margin: 0 0 5px 0; }
      @media (min-width: 768px) {
        .job-description .job-description-in .job-description-R .item h4, .job-description .job-description-in .job-description-R .item h6, .job-description .job-description-in .job-description-R .item p {
          font-size: 1.0em; } }
      @media (min-width: 1200px) {
        .job-description .job-description-in .job-description-R .item h4, .job-description .job-description-in .job-description-R .item h6, .job-description .job-description-in .job-description-R .item p {
          font-size: 1.125em; } }
    .job-description .job-description-in .job-description-R .item p {
      line-height: 1.8em; }
    .job-description .job-description-in .job-description-R .item h6 {
      font-weight: normal;
      line-height: 1.4em;
      margin: 10px 0 0 0; }
    .job-description .job-description-in .job-description-R .item ul {
      margin: 10px 0 0 0; }
      .job-description .job-description-in .job-description-R .item ul li {
        font-size: 0.9em;
        line-height: 1.4em;
        text-align: justify;
        margin: 0 0 5px 0; }
        @media (min-width: 768px) {
          .job-description .job-description-in .job-description-R .item ul li {
            font-size: 1.0em; } }
        @media (min-width: 1200px) {
          .job-description .job-description-in .job-description-R .item ul li {
            font-size: 1.125em; } }
        .job-description .job-description-in .job-description-R .item ul li:last-child {
          margin: 0; }
        .job-description .job-description-in .job-description-R .item ul li strong {
          font-size: 1.125em; }
    .job-description .job-description-in .job-description-R .item ol {
      margin: 10px 0 0 0; }
      .job-description .job-description-in .job-description-R .item ol li {
        font-size: 0.9em;
        line-height: 1.4em;
        text-align: justify;
        padding-left: 1em;
        text-indent: -1em;
        margin: 0 0 5px 0; }
        @media (min-width: 768px) {
          .job-description .job-description-in .job-description-R .item ol li {
            font-size: 1.0em; } }
        @media (min-width: 1200px) {
          .job-description .job-description-in .job-description-R .item ol li {
            font-size: 1.125em; } }
        .job-description .job-description-in .job-description-R .item ol li:last-child {
          margin: 0; }
    .job-description .job-description-in .job-description-R .item .flow {
      display: flex; }
      .job-description .job-description-in .job-description-R .item .flow ul:first-child {
        width: 130px; }
      .job-description .job-description-in .job-description-R .item .flow ul:last-child {
        width: calc(100% - 130px); }
  .job-description .requirements table {
    border-collapse: collapse;
    width: 100%; }
    .job-description .requirements table tr th, .job-description .requirements table tr td {
      display: block; }
      @media (min-width: 768px) {
        .job-description .requirements table tr th, .job-description .requirements table tr td {
          display: table-cell; } }
    .job-description .requirements table tr th {
      font-size: 1.0em;
      line-height: 1.4em;
      font-weight: 700;
      text-align: left;
      vertical-align: top;
      padding: 10px 0 0 0;
      margin: 0 0 5px 0; }
      @media (min-width: 768px) {
        .job-description .requirements table tr th {
          font-size: 1.125em;
          border-bottom: 1px solid #000;
          width: 160px;
          padding: 20px 0; } }
    .job-description .requirements table tr td {
      font-size: 0.85em;
      line-height: 1.8em;
      padding: 0 0 15px 0;
      border-bottom: 1px solid #B9B9B9;
      color: #000; }
      @media (min-width: 768px) {
        .job-description .requirements table tr td {
          font-size: 1.0em;
          padding: 20px 0; } }
  .job-description .requirements .entry-btn {
    margin: 40px auto 0;
    max-width: 580px;
    width: 90%; }
    @media (min-width: 1200px) {
      .job-description .requirements .entry-btn {
        margin: 60px auto 0; } }
    .job-description .requirements .entry-btn a:hover .entry-btn-in > svg {
      right: 20px; }
      @media (min-width: 768px) {
        .job-description .requirements .entry-btn a:hover .entry-btn-in > svg {
          right: 30px; } }
    .job-description .requirements .entry-btn a .entry-btn-in {
      position: relative;
      background-color: #1E58DE;
      display: flex;
      align-items: center;
      height: 80px;
      border-radius: 10px;
      padding: 20px;
      margin: auto; }
      @media (min-width: 1024px) {
        .job-description .requirements .entry-btn a .entry-btn-in {
          border-radius: 20px;
          height: 100px;
          padding: 0 40px; } }
      .job-description .requirements .entry-btn a .entry-btn-in h3 {
        font-size: 1.125em;
        line-height: 1.2em;
        color: #fff; }
        @media (min-width: 768px) {
          .job-description .requirements .entry-btn a .entry-btn-in h3 {
            font-size: 1.35em; } }
        @media (min-width: 1200px) {
          .job-description .requirements .entry-btn a .entry-btn-in h3 {
            font-size: 1.75em; } }
      .job-description .requirements .entry-btn a .entry-btn-in svg {
        position: absolute;
        top: 0;
        bottom: 0;
        right: 20px;
        margin: auto;
        transition: .5s; }
        @media (min-width: 768px) {
          .job-description .requirements .entry-btn a .entry-btn-in svg {
            right: 40px; } }
        .job-description .requirements .entry-btn a .entry-btn-in svg #en {
          stroke: #fff; }
        .job-description .requirements .entry-btn a .entry-btn-in svg #ya {
          fill: #fff; }
