@charset "utf-8";

/*-----------------
info
------------------*/
.l-auto-local-header .link_index,
.l-auto-local-header .link_PF20 {
  display: none;
}

.info {
  margin: 35px 0 0 20px;
  letter-spacing: 0.05rem;
  font-size: 16px;
  line-height: 1.8;
}

@media screen and (max-width: 736px) {
  .info {
    margin: 20px 0 0;
    font-size: 15px;
    line-height: 1.6;
  }
}

.info .info_data {
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.info .info_data::after {
  content: "";
  color: #fff;
  font-size: 0.84em;
  font-weight: 400;
  height: 1.5lh;
  line-height: 1;
  display: grid;
  place-content: center;
  margin-left: 1rem;
  width: fit-content;
  padding-inline: 1em;
}

.info .info_data.sw_ud::after {
  content: "\30BD\30D5\30C8\30A6\30A7\30A2\30A2\30C3\30D7\30C7\30FC\30C8";
  background: #79b9cf;
}

.info .info_data.os_ud::after {
  content: "OS\30A2\30C3\30D7\30C7\30FC\30C8";
  background: #8992e8;
}

@media screen and (max-width: 736px) {
  .info .info_data::after {
    content: "";
    color: #fff;
    font-size: 12px;
    min-width: 70px;
  }
}

.info .info_tt {
  font-size: 21px;
  font-weight: 700;
  margin: 1rem 0 0 0;
}

@media screen and (max-width: 736px) {
  .info .info_tt {
    font-size: 18px;
    margin: 1rem 0 0 0;
  }
}

.info .info_copy {
  font-size: 18px;
  margin: 1rem 0 0 0;
}

@media screen and (max-width: 736px) {
  .info .info_copy {
    font-size: 16px;
  }
}

.info .info_contents {
  margin: 3rem 0 0 0;
}

@media screen and (max-width: 736px) {
  .info .info_contents {
    margin: 2.2rem 0 0 0;
  }
}

.info .info_contents dl dt {
  margin-top: 2rem;
  font-size: 1.1rem;
  font-weight: 700;
}

@media screen and (max-width: 736px) {
  .info .info_contents dl dt {
    margin-top: 1.6rem;
  }
}

.info .info_contents dl dt:first-child {
  margin-top: 0;
}

.info .info_contents dl dd {
  margin: 0.2rem 0 0 1em;
}

@media screen and (max-width: 736px) {
  .info .info_contents dl dd {
    margin: 0.2rem 0 0 0;
  }
}

.info .info_contents .info_caution {
  font-size: 0.9em;
  line-height: 1.5;
  opacity: 0.8;
  margin-top: 0.5rem;
  display: block;
  position: relative;
  margin-left: 0.7rem;
  &::before {
    content: "*";
    position: absolute;
    display: inline-block;
    width: 0.7rem;
    top: 0;
    left: -0.5rem;
  }
  &.kome {
    margin-left: 1rem;
    &::before {
      content: "\203B";
      left: -1rem;
    }
  }
}

.info .info_contents .info_contents__car {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  margin: 1rem 0;
  align-items: end;
  gap: 10px;
}

@media screen and (max-width: 736px) {
  .info .info_contents .info_contents__car {
    grid-template-columns: repeat(3, 1fr);
    margin: 1em auto;
    width: 100%;
    gap: 6px 0;
  }

  .info .info_contents .info_contents__car img {
    transform: scale(1.05);
  }
}

.info .info_contents .info_contents__car p {
  text-align: center;
  font-size: clamp(9px, 3.4vw, 15px);
  margin-top: 0.1em;
}

.info .info_contents .info_contents__car___name {
  margin: -0.9em auto 1em;
  font-size: clamp(9px, 3.4vw, 15px);
}

.info_contents .car_name_cont {
  display: grid;
  grid-template-columns: max-content;
  gap: 0.4em 0.8em;
}

.info_contents .car_name_cont .carname {
  display: grid;
  grid-template-columns: subgrid;
  grid-column: span 2;
}

/* 2025.03 graf */
.scroll_area {
  margin: 2em 0 0 1em;
  font-size: 15px;

  & .otf_graf {
    padding: 2px;
    display: grid;
    grid-template-columns: repeat(6, auto);
    width: max(100%, 1420px);

    & div {
      border: #ccc 1px solid;
      border-bottom: none;
      border-right: none;
      padding: 0.6em 1em;
      display: grid;
      align-items: center;
      background-color: var(--color-white);
      z-index: -1;

      &.th:nth-child(6),
      &.comt {
        border-right: #ccc 1px solid;
      }

      &:nth-last-child(-n + 5),
      &:nth-last-child(8) {
        border-bottom: #ccc 1px solid;
      }

      &.rowspan1 {
        grid-area: 4 / 5 / 6 / 6;
      }

      &.rowspan2 {
        grid-area: 4 / 6 / 6 / 7;
      }

      &.rowspan3 {
        grid-area: 6 / 1 / 8 / 2;
      }

      &.rowspan4 {
        grid-area: 6 / 4 / 8 / 5;
      }

      &.rowspan5 {
        grid-area: 6 / 5 / 8 / 6;
      }

      &.rowspan6 {
        grid-area: 6 / 6 / 8 / 7;
      }

      &.th {
        background-color: var(--color-light-gray);
        text-align: center;
        line-height: 1.4;
      }

      &.numb,
      &.th,
      &.time,
      &.rec {
        justify-content: center;
      }

      &.rec {
        grid-template-rows: repeat(2, min-content);
        align-content: center;
      }

      &.rec .bar {
        display: grid;
        place-content: center;
        margin-bottom: 0.86em;
      }

      &.rec .bar::before {
        content: "";
        width: 20px;
        height: 1px;
        background: #000;
        display: block;
      }

      &.comt li,
      &.comt p,
      &.rec p {
        display: grid;
        grid-template-columns: auto 1fr;
        gap: 0.2em;
      }

      &.comt p {
        gap: 0.372em;
      }

      &.rec p {
        gap: 0;
      }

      &.comt li::before,
      &.comt p::before,
      &.rec p::before {
        content: attr(post-date);
        width: 1em;
        display: grid;
        justify-content: center;
        align-items: start;
      }

      &.comt {
        align-content: center;
      }
    }
  }
}
@media screen and (max-width: 1080px) {
  .scroll_area {
    font-size: 14px;
    margin: 2em -0.5px -0.5px;
  }
}

@media screen and (max-width: 736px) {
  .scroll_area {
    & .otf_graf {
      width: max(100%, 1240px);
    }
  }
}

@media screen and (max-width: 430px) {
  .scroll_area {
    font-size: 13px;
    & .otf_graf {
      width: max(100%, 940px);
    }
  }
}
@media screen and (max-width: 350px) {
  .scroll_area {
    & .otf_graf {
      width: max(100%, 890px);
    }
  }
}

.info .info_contents .info_contents__car.c1 {
  grid-template-columns: 1fr;
  & .info_contents__car___item img {
    width: 20%;

    @media screen and (max-width: 736px) {
      width: calc(100% / 3);
    }
  }
  & p {
    text-align: left;
  }
}

.info .info_contents .info_contents__car.c2 {
  display: flex;
  flex-direction: column;
  gap: 0;
  align-items: flex-start;

  & .info_contents__car___item img {
    width: 189px;
    @media (736px >= width) {
      display: block;
      width: calc(100% / 2.9);
    }
  }
  & .info_contents__car___item {
    text-align: center;
  }
  & p {
    text-align: center;
    margin-top: 0.6em;
    font-size: 15px;
    @media (736px >= width) {
      text-align: left;
    }
  }
}

.mt1em {
  margin-top: 1em;
}
.mt2em {
  margin-top: 2em !important;
}
