/*====================================*/
/* yakkan/ common */
/*====================================*/
ul.area-banner {
  li[data-area="shikoku_actland"] {
    display: none;
  }
}
main {
  padding-bottom: clamp(50px, calc(11px + 6.5vw), 102px);
}
.kv-header_ttl {
  & h1 {
    &::before {
      content: "";
      position: absolute;
      left: 0;
      bottom: 0;
      display: block;
      width: 12px;
      height: 100%;
      border-left: 12px solid var(--colA1);
    }
  }
}
.info-group {
  margin-top: clamp(20px, calc(8.75px + 1.875vw), 35px) !important;
  .info-item {
    margin-bottom: clamp(25px, calc(10px + 2.5vw), 45px);
  }
}
.info-table {
  margin-top: 2em;
  th {
    width: 20%;
  }
  @media (max-width: 576px) {
    th {
      width: 30%;
    }
  }
  &.col-2-l {
    th:nth-child(1) {
      width: 80%;
    }
    th:nth-child(2) {
      width: 20%;
    }
    td:nth-child(2) {
      width: 20%;
    }
  }
  th.per15 {
    width: 5%;
  }
}
ol.article-sub-num {
  margin-left: 1.5rem;
  & > li {
    position: relative;
    padding-left: 3rem;
    counter-increment: kanji-counter;
    &::before {
      position: absolute;
      top: 0;
      left: 0;
      content: counter(kanji-counter, cjk-ideographic) ". ";
    }
  }
}
ol > li > ol {
  margin-bottom: 0.5em;
}
.border-block {
  padding: 0.5em;
  border: 1px solid #707070;
}
/*-- kv --*/
.kv {
  h1 {
    display: flex;
    justify-content: center;
    align-items: center;
    max-width: 532px;
    width: 100%;
    min-height: 75px;
    font-size: var(--font-size-28);
    font-weight: 600;
    padding-left: 3em;
    margin-inline: auto;
    margin-bottom: 20px;
    border-bottom: none !important;
    background: url(/drivepass/shikoku_setouchi/assets/img/kv_title.png) left center no-repeat;
  }
  p {
    text-align: center;
  }
  .kv-group {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 18px;
    max-width: 660px;
    margin-inline: auto;
  }
  img {
    width: auto;
  }
  @media (max-width: 576px) {
    h1 {
      font-size: var(--font-size-20);
      padding-left: 1em;
    }
  }
}
/*-- #overview --*/
#overview {
  .splide {
    width: 90%;
    margin-block: 43px 54px;
    margin-inline: auto;

    .splide__arrow {
      background-color: var(--colA1);
      opacity: 1;
    }
    .splide__arrow svg {
      fill: #fff;
    }
    .splide__arrow--prev {
      left: -3em;
    }
    .splide__arrow--next {
      right: -3em;
    }
  }
}
/*-- #guidance --*/
#guidance {
  h3 {
    display: flex;
    align-items: center;
    gap: 15px;
    font-size: var(--font-size-20);

    span {
      border-bottom: none;
    }
  }
  .course-link {
    margin-top: 2em;

    a {
      display: flex;
      justify-content: space-between;
      align-items: center;
      font-size: var(--font-size-18);
      font-weight: 600;
      padding: 1em;
      border: 1px solid var(--colA1);
      border-radius: 5px;
      transition: all 0.2s ease;

      &:hover {
        text-decoration: none;
        background-color: #dbf4ff;
      }
    }
    .course-link_title {
      color: var(--colA1);
      font-size: var(--font-size-20);

      span {
        display: block;
        color: var(--color-black);
        font-size: var(--font-size-18);
      }
    }
    .course-link_txt {
      position: relative;
      padding-right: 1.2em;

      &::after {
        position: absolute;
        right: 0;
        top: 50%;
        transform: translateY(-50%);
        font-family: "Font Awesome 7 Free" !important;
        color: var(--colA1);
        font-weight: 900;
        display: inline-block;
        content: "\f35a";
      }
    }
    @media (max-width: 576px) {
      a {
        flex-wrap: wrap;
        justify-content: center;
        gap: 10px;
      }
      .course-link_title {
        width: 100%;
      }
      img {
        width: 30%;
      }
    }
  }
}

/*-- #present --*/
#present {
  padding-block: clamp(48px, calc(39px + 1.5vw), 60px) clamp(58px, calc(41.5px + 2.75vw), 80px);
  margin-top: 5em;

  .l-flex {
    align-items: flex-start;
  }
  .present_cont {
    padding-right: 2em;

    .present_term {
      display: flex;
      justify-content: space-between;
      align-items: center;
      width: 210px;
      height: 40px;
      padding-left: 1em;
      margin-bottom: 1em;
      color: var(--color-white);
      font-size: var(--font-size-18);
      font-weight: 600;
      background-color: var(--colA1);
      border: 1px solid var(--colA1);

      span {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 75px;
        height: 38px;
        color: var(--colA1);
        background-color: var(--color-white);
      }
    }

    h2 {
      font-size: var(--font-size-22);
      font-weight: 600;
      line-height: 1.4;
      margin-bottom: 0.5em;
    }
  }
  .present_img {
    max-width: 528px;
    width: 77%;
    p {
      text-align: center;
      color: var(--colA1);
      padding: 1em;
      background-color: var(--color-white);
      border-radius: 5px;

      span.catch-s {
        display: block;

        span {
          color: #f13c6b;
        }
      }
    }
    img {
      margin-top: 1.5em;
    }
  }
  @media (max-width: 576px) {
    .l-flex {
      display: block;
      width: 90%;
      margin-inline: auto;
    }
    .present_cont {
      padding-right: 0;
      margin-bottom: 1.5em;
    }
    .present_img {
      width: 100%;
    }
  }
}

/*-- #setouchivelo --*/
#setouchivelo.drive-pass_etcarea {
  padding-top: 0;
}
