@charset "utf-8";

#about h2 {
  margin-bottom: 1em;
}

.flx_box {
  margin: 1em 0;
}

.flx_item {
  margin: 0.8em 0.8em 0;
}

.bold {
  font-weight: 700;
}

small {
  font-weight: normal;
}

.asterisk_list {
  position: relative;

  .asterisk {
    position: relative;
    display: inline-block;
    padding: 0.2em 0 0.2em 1.2em;

    &::before {
      position: absolute;
      content: "※";
      left: 2px;
      top: 2px;
    }
  }
}

.price_detail {
  max-width: 1024px;
  margin: 0 auto;

  @media screen and (min-width: 1024px) {
    display: flex;
    padding: 0;
  }

  & .price_wrapper {
    max-width: 600px;
    margin: 0 auto;

    @media screen and (min-width: 1024px) {
      width: 46%;
      margin: 1em;
    }

    & .price_table {
      width: 100%;
      border-collapse: collapse;

      th,
      td {
        text-align: center;
        background: #fff;
        padding: 0.8em 0.4em;
      }

      & .table_main_ttl {
        background: #00a051;
        color: #fff;

        &:nth-of-type(2) {
          border-left: dotted 1px #ddd;
        }
      }

      & td {
        font-size: 16px;
        border: dotted 1px #ddd;

        .small {
          font-size: 12px;
        }
      }

      & .table_ttl {
        font-size: 14px;
        font-weight: 700;
      }

      & .content_route {
        font-size: 14px;

        & p {
          text-align: left;
        }

        & .price_distance {
          figure {
            img {
              display: block;
              margin: 0 auto;
            }
            figcaption {
              display: block;
              text-align: center;
              margin: 0 auto;
            }
          }
        }
      }

      & .bg {
        background-color: #fffee8;
      }
    }
  }

  & .caution {
    font-size: 12px;
    span {
      display: block;
    }
  }

  /* サービスページ用　記述 */
  &.sec_service {
    .price_wrapper {
      &:first-child {
        @media screen and (min-width: 1024px) {
          margin-top: 58px;
        }
      }

      & .price_table {
        h4 {
          font-size: 14px;
          margin: 1em;
        }

        & .detail_box {
          padding: 0;

          & p {
            margin: 1em 0;
          }
        }

        & .box01 {
          text-align: center;
        }

        & .table_main_ttl {
          font-size: 14px;
          background-color: #fff100;
          color: inherit;
          padding: 0.8em 0.4em;

          &.span {
            display: block;
            width: 100%;
          }
        }

        & .content_route.box02 .flx_box:nth-of-type(2) {
          margin: 0;
        }

        & .radius {
          border-radius: 20px 20px 0 0;
        }

        & .ttl_radius .table_main_ttl:first-child {
          border-radius: 20px 0 0 0;
        }

        & .ttl_radius .table_main_ttl:last-child {
          border-radius: 0 20px 0 0;
        }

        & .price-imgbox {
          img {
            margin: 0 auto;
          }
        }

        & .content_route {
          & p {
            margin: 0;
          }
          .bg {
            padding: 1em;
          }
        }
      }

      & .txt {
        text-align: center;
        margin: 0 auto 1em;
      }

      .frame {
        background-color: #fff100;
        height: 20px;
        border-radius: 0 0 20px 20px;
      }
    }
  }
}
