@charset "UTF-8";
/* pages.css - 下層ページ共通（ページタイトル・パンくず等） */
/* Page title */
.c-pageTitle {
  background-color: var(--color-bg);
  border-block-end: 1px solid var(--color-border);
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 350px), 1fr));
  overflow-x: hidden;
  position: relative;
}
.c-pageTitle > .wrap {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}
.c-pageTitle__txt {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-inline-start: min(8.333vw, 120px);
  margin-block-end: 40px;
}
.c-pageTitle__txt .en {
  animation: tracking-in-expand 1s cubic-bezier(0.215, 0.61, 0.355, 1) 0.8s both;
  font-family: var(--font-family-en);
  font-size: clamp(3.75rem, 3.4722vw, 5rem);
  font-weight: 500;
  line-height: 1.1;
  text-transform: uppercase;
}
.c-pageTitle__txt .txt {
  animation: fade-in 1.6s cubic-bezier(0.39, 0.575, 0.565, 1) 1.6s both;
}
.c-pageTitle__img img {
  animation: fade-in 1.2s cubic-bezier(0.39, 0.575, 0.565, 1) both;
}
.c-pageTitle__slide {
  animation: fade-in 2s cubic-bezier(0.33, 1, 0.68, 1) 2.6s forwards;
  color: rgba(136, 136, 136, 0.1);
  display: flex;
  font-family: var(--font-family-en);
  font-size: clamp(var(--fs-80), 15.278vw, 13.75rem);
  font-weight: 300;
  gap: 0.5em;
  line-height: 1;
  letter-spacing: 11px;
  opacity: 0;
  overflow: hidden;
  position: absolute;
  top: -34px;
  left: 0;
  text-transform: uppercase;
  white-space: nowrap;
}
.c-pageTitle__slide span {
  animation: infinity-scroll-left 60s infinite linear 0.5s both;
}
@media (max-width: 767.98px) {
  .c-pageTitle {
    grid-template-columns: 1fr;
  }
  .c-pageTitle > .wrap {
    order: 2;
  }
  .c-pageTitle__txt {
    padding-block-start: 40px;
    margin-inline: 20px;
  }
  .c-pageTitle__txt .en {
    font-size: var(--fs-50);
  }
}

/* breadcrumbs */
.c-breadcrumbs {
  background-color: var(--color-bg);
  border-block: 1px solid #C8C8C8;
  padding-block: 30px;
}
.c-breadcrumbs__list {
  display: flex;
  flex-wrap: wrap;
  font-size: var(--fs-13);
  gap: 20px;
  letter-spacing: 0.65px;
  line-height: 1.6;
}
.c-breadcrumbs__item {
  padding-inline-end: 30px;
  position: relative;
}
.c-breadcrumbs__item::after {
  background: url("../images/common/ico_arw_right.svg") no-repeat center/contain;
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  height: 10px;
  width: 10px;
}
.c-breadcrumbs__item:last-child::after {
  display: none;
}
.c-breadcrumbs__current {
  color: #888;
}
@media (max-width: 767.98px) {
  .c-breadcrumbs {
    padding-block: 16px;
  }
}

/* Contents */
.p-section {
  padding-block: 150px;
}
@media (max-width: 767.98px) {
  .p-section {
    padding-block: 80px;
  }
}

.c-map {
  aspect-ratio: 1/0.524;
  overflow: hidden;
}
.c-map iframe {
  width: 100%;
  height: 100%;
}
