@charset "utf-8";
/* CSS Document */

#greeting,
#outline {
  margin-bottom: 1rem;
}
/* Greeting
----------------------------------------------------------------------------------------------------*/
.greeting-item {
  display: flex;
  gap: 0.2rem;
  font-size: 0.16rem;
  line-height: 0.3rem
}
.greeting-item__right {
  width: calc(320 / 1000 * 100%);
}
.greeting-item__left {
  width: calc(660 / 1000 * 100%);
}
.greeting-item p {
  margin-bottom: 0.16rem;
}
@media screen and (max-width: 767px) {
  .greeting-item {
    flex-direction: column-reverse;
    font-size: calc((0.16rem * 100 / 50) * 0.9);
    line-height: calc((0.3rem * 100 / 50) * 0.9);
  }
  .greeting-item__right,
  .greeting-item__left {
    display: block;
    width: 100%;
  }
}

/* Outline
----------------------------------------------------------------------------------------------------*/
.outline-item {
  display: flex;
  gap: 0.2rem;
  font-size: 0.16rem;
  line-height: 0.3rem
}
.outline-item__left {
  width: calc(500 / 1000 * 100%);
}
.outline-item__left p {
  margin-bottom: 0.5rem;
}
.outline-item__right {
  width: calc(490 / 1000 * 100%);
}
.outline-image {
  display: flex;
  gap: 0.2rem;
}
.outline-image__col {
  width: calc(100% / 2);
}
@media screen and (max-width: 1500px) {
  .outline-item {
    flex-direction: column;
  }

    .outline-item__left p {
      margin-bottom: 0;
    }

  .outline-item__left {
    display: flex;
    gap: 0.2rem;
    width: 100%;
  }
  .outline-item__right {
    display: block;
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
    .outline-item {
      font-size: calc((0.16rem * 100 / 50) * 0.9);
    }
  .outline-item__left p {
    width: calc(100% / 2);
    margin-bottom: 0;
  }
}

/* Table 
----------------------------------------------------------------------------------------------------*/
table {
  width: 100%;
  margin-bottom: 0.2rem;
  border-collapse: collapse;
}
tbody th, tbody td {
  padding: 0.1rem;
  border-bottom: 1px solid #CCCCCC;
  font-feature-settings: "palt"1;
}
tbody th a, tbody td a {
  text-decoration: none;
}
tbody th {
  width: 1.36rem;
  background-color: #FFF;
  font-weight: bold;
  text-align: right;
  vertical-align: top;
}
tbody tr:nth-child(1) {
  border-top: 1px solid #CCCCCC;
}
@media screen and (max-width: 767px) {
  table tr {
    display: block;
  }
  table th {
    display: block;
    width: 100%;
    padding: 0.3rem 0.1rem 0.1rem;
    text-align: left;
    border-bottom: none;
  }
  table td {
    display: block;
    padding: 0.1rem 0.1rem 0.3rem;
    border-top: 0;
  }
}

/* Googleマップ
----------------------------------------------------------------------------------------------------*/
.google-maps {
  position: relative;
  overflow: hidden;
  height: 0;
  margin-bottom: 0.3rem;
  padding-bottom: 60%;
  border-radius: 0.2rem
}
.google-maps iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}
@media screen and (max-width: 1254px) {
  .google-maps {
    padding-bottom: 70%;
  }
}
@media screen and (max-width: 767px) {
  .google-maps {
    padding-bottom: 120%;
  }
}