.lower-left {
  position: absolute;
  top: 0;
  left: 0;
  width: min(30%, 300px);
}

.lower-right {
  position: absolute;
  bottom: 0;
  right: 0;
  width: min(30%, 300px);
}

/* --------------- pan --------------- */
.pan {
  padding-top: 2em;
  padding-bottom: 0.5em;
  align-items: center;
}

.pan li {
  margin: 0;
}

/* page-company */
.company-nashitogeru {
  width: 90%;
  max-width: 500px;
  margin: 0 auto 20px;
}

.company-gmap-wrap {
  justify-content: space-between;
  flex-wrap: wrap;
}

.gmap iframe {
  width: 100%;
  aspect-ratio: 4/3;
}

@media (max-width: 767px) {
  .gmap iframe {
    display: block;
    width: 100%;
    height: 300px;
  }
}
/* --------------- page-facility --------------- */
.facility-overview {
  max-width: 1000px;
}

.facility-overview > div {
  overflow-x: scroll;
  width: 100%;
}

#facility table th {
  padding-inline: 0.5em;
  padding-block: 0.5em;
  background-color: #efefef;
  border: 1px solid #ccc;
  text-align: center;
  white-space: nowrap;
  font-size: 0.688rem;
  font-size: clamp(0.688rem, 0.581rem + 0.45vw, 1.125rem);
  font-weight: 500;
}

#facility table td {
  padding-block: 0.5em;
  padding-inline: 0.5em;
  border: 1px solid #ccc;
  text-align: center;
  white-space: nowrap;
  font-size: 0.767rem;
  font-size: clamp(0.813rem, 0.767rem + 0.19vw, 1rem);
}

.facility-attempt {
  flex-wrap: wrap;
  justify-content: center;
  align-items: stretch;
  gap: 4em 2em;
}
.facility-attempt .facility-attempt-item {
  position: relative;
  width: 30%;
  background: rgba(216, 241, 255, 0.4);
  padding: 4em 2em 2em;
}
.facility-attempt .facility-attempt-figure {
  position: absolute;
  top: 0;
  left: 50%;
  translate: -50% -50%;
  background-color: #fff;
  border-radius: 50px;
  display: flex;
  align-items: center;
  width: 80px;
  height: 80px;
  justify-content: center;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.08);
}
.facility-attempt figure {
  width: 50px;
}

@media (max-width: 1000px) {
  .facility-attempt {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    grid-gap: 5em;
  }
  .facility-attempt .facility-attempt-item {
    width: 100%;
  }
}
/* page-recruit */
.recruit-inner-link {
  position: relative;
  padding-top: 0.5em;
  padding-bottom: 2em;
}

.recruit-inner-link::after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border: 6px solid transparent;
  border-top: 7px solid #fff;
  position: absolute;
  bottom: 0;
  left: 50%;
  translate: -50% -10%;
  margin: auto;
}

/* contact form */
.contact-wrap {
  padding: 1.5em 1.5em clamp(2.5rem, 1.59rem + 3.88vw, 6.25rem);
  border: 1px solid #ccc;
}

.contact-tab h3 {
  width: 50%;
  font-weight: 500;
}

#contact {
  max-width: 800px;
  width: 100%;
  margin: 2em auto 0;
  border-collapse: collapse;
}

#contact .wpcf7-form-control-wrap {
  display: block;
  margin-top: 0.25em;
  margin-bottom: 1.5em;
}

#contact input,
select,
textarea {
  border: 1px solid #ccc;
}

#contact .wpcf7-text,
.wpcf7-textarea {
  width: 100%;
}

.privacy-wrap {
  border: 1px solid #ccc;
  padding: 1em;
}

.privacy {
  height: 180px;
  overflow-y: scroll;
}

.wpcf7-submit {
  display: block;
  text-align: center;
  margin: 3em auto 0;
  background-color: #0a59a8;
  color: #fff;
  padding: 0.5em 2em;
  width: 14em;
  transition: 0.3s ease-out;
  border-radius: 50px;
}

.wpcf7-list-item input {
  width: auto;
  margin-top: -5px;
  margin-right: 5px;
  background-color: #efefef;
}

.wpcf7-checkbox {
  display: block;
  margin-inline: auto;
  text-align: center;
}

@media (max-width: 767px) {
  .contact-tab h3 {
    display: flex;
    align-items: center;
    justify-content: center;
  }
}