@charset "UTF-8";
.blue {
  color: #1ba1e6; }

.navy {
  color: #1a5e9f; }

.bg_blue {
  background-color: #f4f8fb; }

.container2 {
  width: 100%;
  max-width: 1200px;
  margin: 20px auto;
  border: 1px solid #ccc;
  border-radius: 10px;
  background: #fff;
  padding: 50px;
  letter-spacing: 0.05em; }
  .container2 h2 {
    text-align: center;
    color: #1ba1e6;
    font-size: 35px;
    margin: 0 0 30px; }
  .container2 h3 {
    font-size: 22px;
    line-height: 1.6;
    font-weight: bold;
    color: #1a5e9f; }
  .container2 .box .inner {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin: 0 0 30px; }
    .container2 .box .inner .img {
      width: 600px; }
    .container2 .box .inner .txt {
      width: 460px; }
      .container2 .box .inner .txt .copy {
        color: #1ba1e6;
        font-size: 25px;
        margin: 0 0 10px;
        font-weight: 500; }
      .container2 .box .inner .txt p {
        display: block;
        font-size: 15px;
        line-height: 1.6; }
        .container2 .box .inner .txt p strong {
          font-size: 1.2em;
          font-weight: bold;
          display: block;
          margin: 0 0 10px; }
  .container2 .recruit-btn-wrap.rbw2 {
    margin: 0;
    position: relative;
    text-align: left;
    width: 400px;
    height: 60px;
    display: block; }
    .container2 .recruit-btn-wrap.rbw2 a {
      width: 100%;
      margin: 0;
      padding: 10px 50px;
      border-radius: 8px;
      vertical-align: middle; }
      .container2 .recruit-btn-wrap.rbw2 a span {
        display: inline-block;
        background: #fff;
        color: #E64A26;
        border-radius: 8px;
        text-align: center;
        padding: 5px 10px;
        font-size: 13px;
        letter-spacing: 0;
        font-weight: bold;
        line-height: 1.2; }
      .container2 .recruit-btn-wrap.rbw2 a p {
        display: inline-block !important;
        vertical-align: middle;
        margin: 0 0 10px 5px;
        line-height: 1;
        font-weight: 500px; }
  .container2 .txt_area p {
    line-height: 1.4;
    font-size: 16px; }
  .container2 .txt_area strong {
    font-size: 1.2em;
    font-weight: bold;
    display: block;
    margin: 0 0 5px; }
  .container2 .table2 th {
    vertical-align: middle;
    font-size: 18px;
    font-weight: 500;
    background-color: #ebf4fb !important;
    width: 250px; }
  .container2 .table2 td span {
    color: #1ba1e6;
    border: 1px solid #1ba1e6;
    display: inline-block;
    background: #fff;
    border-radius: 5px;
    padding: 4px 6px;
    margin: 0 5px 5px 0;
    font-size: 0.9em; }
  .container2 .recruit-btn-wrap.rbw2.rbw2_450 {
    width: 450px;
    margin: 20px auto 0; }

.sp {
  display: none; }

@media screen and (max-width: 768px) {
  .sp {
    display: block; }

  .container2 {
    width: calc(100% - 20px);
    margin: 20px auto;
    border: 1px solid #ccc;
    border-radius: 10px;
    background: #fff;
    padding: 20px 10px;
    letter-spacing: 0.05em; }
    .container2 h2 {
      font-size: 25px;
      margin: 0 0 20px; }
    .container2 h3 {
      font-size: 16px; }
    .container2 .box .inner {
      display: block;
      justify-content: space-between;
      align-items: flex-start;
      margin: 0 0 30px; }
      .container2 .box .inner .img {
        width: 100%; }
      .container2 .box .inner .txt {
        width: 100%; }
        .container2 .box .inner .txt .copy {
          color: #1ba1e6;
          font-size: 19px;
          text-align: center;
          margin: 20px 0 10px;
          font-weight: 500; }
        .container2 .box .inner .txt p {
          display: block;
          font-size: 14px;
          line-height: 1.6; }
          .container2 .box .inner .txt p strong {
            font-size: 1.2em;
            font-weight: bold;
            display: block;
            margin: 0 0 10px;
            text-align: center; }
    .container2 .recruit-btn-wrap.rbw2 {
      margin: 0;
      position: relative;
      text-align: left;
      width: 100%;
      height: 60px;
      display: block; }
      .container2 .recruit-btn-wrap.rbw2 a {
        width: 100%;
        margin: 0;
        padding: 10px 20px;
        border-radius: 8px;
        vertical-align: middle; }
        .container2 .recruit-btn-wrap.rbw2 a span {
          display: inline-block;
          background: #fff;
          color: #E64A26;
          border-radius: 8px;
          text-align: center;
          padding: 5px;
          font-size: 12px;
          letter-spacing: 0;
          font-weight: bold;
          line-height: 1.2; }
        .container2 .recruit-btn-wrap.rbw2 a p {
          display: inline-block !important;
          vertical-align: middle;
          margin: 0 0 10px 5px;
          line-height: 1;
          font-weight: 500px; }
    .container2 .txt_area p {
      line-height: 1.4;
      font-size: 14px; }
    .container2 .txt_area strong {
      font-size: 1.1em;
      font-weight: bold;
      display: block;
      margin: 0 0 5px; }
    .container2 h3.navy {
      text-align: center; }
    .container2 .table2 th {
      display: block;
      vertical-align: middle;
      font-size: 15px;
      font-weight: 600;
      background-color: #ebf4fb !important;
      width: 100%; }
    .container2 .table2 td {
      display: block;
      width: 100%;
      font-size: 14px;
      font-weight: 300;
      padding: 15px 10px; }
      .container2 .table2 td span {
        color: #1ba1e6;
        border: 1px solid #1ba1e6;
        display: inline-block;
        background: #fff;
        border-radius: 5px;
        padding: 4px 6px;
        margin: 0 5px 5px 0;
        font-size: 0.8em; }
    .container2 .recruit-btn-wrap.rbw2.rbw2_450 {
      width: 100%;
      margin: 20px auto 0; }
      .container2 .recruit-btn-wrap.rbw2.rbw2_450 p {
        font-size: 15px; } }
.container_full {
  background: #fff;
  padding: 10px 0;
  margin: 0 0 10px; }
  .container_full .recruit-btn-wrap.rbw2 {
    margin: 0 auto !important;
    position: relative;
    text-align: center;
    height: 60px;
    display: block; }
    .container_full .recruit-btn-wrap.rbw2 a {
      width: 100%;
      margin: 0;
      padding: 10px 50px;
      border-radius: 8px;
      vertical-align: middle; }
      .container_full .recruit-btn-wrap.rbw2 a span {
        display: inline-block;
        background: #fff;
        color: #E64A26;
        border-radius: 8px;
        text-align: center;
        padding: 5px 10px;
        font-size: 13px;
        letter-spacing: 0;
        font-weight: bold;
        line-height: 1.2; }
      .container_full .recruit-btn-wrap.rbw2 a p {
        display: inline-block !important;
        vertical-align: middle;
        margin: 0 0 10px 5px;
        line-height: 1;
        font-weight: 500px; }
  .container_full .recruit-btn-wrap.rbw2.rbw2_700 {
    width: 700px;
    margin: 20px auto 0; }

@media screen and (max-width: 768px) {
  .container_full {
    background: #fff;
    padding: 10px 20px;
    margin: 0 0 10px; }
    .container_full .recruit-btn-wrap.rbw2 {
      margin: 0 auto !important;
      position: relative;
      text-align: center;
      height: 60px;
      display: block; }
      .container_full .recruit-btn-wrap.rbw2 a {
        width: 100%;
        margin: 0;
        padding: 10px 20px;
        border-radius: 8px;
        vertical-align: middle; }
        .container_full .recruit-btn-wrap.rbw2 a span {
          display: inline-block;
          background: #fff;
          color: #E64A26;
          border-radius: 8px;
          text-align: center;
          padding: 5px 10px;
          font-size: 13px;
          letter-spacing: 0;
          font-weight: bold;
          line-height: 1.2; }
        .container_full .recruit-btn-wrap.rbw2 a p {
          display: inline-block !important;
          vertical-align: middle;
          margin: 0 0 10px 5px;
          line-height: 1;
          font-weight: 500px; }
    .container_full .recruit-btn-wrap.rbw2.rbw2_700 {
      width: 100%;
      margin: 20px auto 0; }
      .container_full .recruit-btn-wrap.rbw2.rbw2_700 p {
        font-size: 15px; } }
/* 画像はみ出し防止 */
.p-slider__viewport {
  overflow: hidden; }

/* 画像 */
.p-slider__item img {
  width: 100%;
  height: auto;
  display: block; }

/* Slickのデフォルト矢印/ドットは使わない */
/* デフォルト矢印だけ消す（appendArrowsを使ってない場合） */
.p-slider > .slick-prev,
.p-slider > .slick-next {
  display: none !important; }

/* dotsは「Slickが吐くやつ」じゃなく、あなたの置き場(.js-slick-dots)をデザインするので消さない */
/* カスタムUIは自由に */
.p-slider__arrows {
  display: flex;
  justify-content: space-between;
  width: 100%;
  position: absolute;
  top: 45%;
  z-index: 9;
  padding: 0 5px; }

/* 共通 */
.p-slider__arrow {
  width: 22px;
  /* 画像サイズに合わせて調整 */
  height: 22px;
  padding: 0;
  border: none;
  background-color: transparent;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  cursor: pointer;
  text-indent: -9999px;
  /* Prev / Next の文字を隠す */ }

/* prev（左矢印） */
.p-slider__arrow--prev {
  background-image: url("../../images/arrow-left.png"); }

/* next（右矢印） */
.p-slider__arrow--next {
  background-image: url("../../images/arrow-right.png"); }

/* hover（任意） */
.p-slider__arrow:hover {
  opacity: 0.7; }

/* 無効状態（infinite:false のとき用） */
.p-slider__arrow.slick-disabled {
  opacity: 0.3;
  pointer-events: none; }

/* dots全体 */
.js-slick-dots ul {
  display: flex;
  gap: 12px;
  justify-content: center;
  padding: 0;
  margin: 0;
  list-style: none; }

/* button共通 */
.js-slick-dots button {
  width: 10px;
  /* 画像サイズに合わせて調整 */
  height: 10px;
  padding: 0;
  border: none;
  background-color: transparent;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  cursor: pointer;
  font-size: 0;
  /* 数字を消す */ }

/* 非アクティブ */
.js-slick-dots li button {
  background-image: url("../../images/dot_nonactive.png"); }

/* アクティブ */
.js-slick-dots li.slick-active button {
  background-image: url("../../images/dot_active.png"); }

.container_full {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 9999;
  padding: 12px 12px calc(12px + env(safe-area-inset-bottom));
  display: flex;
  justify-content: center;
  /* ふわっと用 */
  opacity: 0;
  transform: translateY(24px);
  visibility: hidden;
  transition: opacity .35s ease, transform .35s ease, visibility .35s ease; }

/* 表示時 */
.container_full.is-show {
  opacity: 1;
  transform: translateY(0);
  visibility: visible;
  background-color: #ffffffcc; }
