/* ==============================================

タブ

================================================= */
.apass-radiotab{
  @media screen and (min-width: 768px){
    .pc_only {
      display: block;
    }
    .sp_only {
      display: none;
    }
  }
  @media screen and (max-width: 767px){
    .pc_only {
      display: none;
    }
    .sp_only {
      display: block;
    }
  }

  .apass-radiotab__list{
    display: flex;
    justify-content: center;
    flex-wrap: nowrap;
    width: 100%;
    max-width: calc((824/995)*100vw);
    margin-inline: auto;
    margin-block: min(calc((30/995)*100vw),30px);
    @media screen and (max-width: 767px){
      max-width: initial;
      padding-inline: 10px;
    }
  }
  .apass-radiotab__item{
    display: block;
    -ms-flex-item-align: end;
    align-self: flex-end;
    padding: 0 0 0 1px;
    &:nth-child(1){
      padding-inline-start: 0;
    }

    input[type="radio"] {
      border: 0 !important;
      clip: rect( 0, 0, 0, 0 ) !important;
      height: 1px !important;
      margin: -1px !important;
      clip: rect( 0, 0, 0, 0 ) !important;
      height: 1px !important;
      margin: -1px !important;
      overflow: hidden !important;
      padding: 0 !important;
      position: absolute !important;
      white-space: nowrap !important;
      width: 1px !important;

      &+span{
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        padding: 12px 10px;
        box-sizing: border-box;
        border-top: 1px solid #000;
        border-left: 1px solid #000;
        border-right: 1px solid #000;
        border-bottom: none;
        border-radius: 3px 3px 0 0;
        background: #000;
        color: #ccc;
        cursor: pointer;
        font-size: 1.5rem;
        text-decoration: none;
        text-align: center;
        position: relative;
        overflow: hidden;
        @media screen and (max-width: 767px){
          font-size: 1.3rem;
        }
      }

      &:checked{
        &+span{
          padding-block: 20px;
          background: #fff;
          color: #333;
          cursor: default;
        }
      }

      &:not(:checked){
        &+span{
          transition: 0.3s ease all;
          &:hover{
            opacity: 0.7;
          }
        }
      }
    }
    &:not(:has(input[type="radio"]:checked)){
      width: 45%;
    }
    &:has(input[type="radio"]:checked){
      width: 55%;
    }
  }
  .apass-radiotab__content{
    overflow: hidden;
    position: absolute;
    height: 0;
  }

  .apass-radiotab__list:has(#tab-apass_old > input:checked) ~ #content-apass_old,
  .apass-radiotab__list:has(#tab-apass_new > input:checked) ~ #content-apass_new{
    overflow: visible;
    position: static;
    height: auto;
  }
}

/* ==============================================



================================================= */
#reservation_apass{
  background: #000 url(../img/bg_reservation.jpg) 62% bottom;
  background-size: cover;
}
