/*-------------------------------
---Common
-------------------------------*/

section:not(:last-child) {
  margin-bottom: 6rem;
}

section:last-child {
  margin-bottom: 9rem;
}


/*-------------------------------
---.intro
-------------------------------*/

.intro .caption {
  text-align: unset;
  margin-bottom: 3rem;
}

.intro .image {
  grid-template-columns: repeat(2, 1fr);
  grid-gap: 0.5rem;
}


/*-------------------------------
---.belief-to-create
-------------------------------*/

.belief-to-create .image {
  padding-top: 8rem;
  margin-bottom: 6rem;
}

.belief-to-create .image img {
  width: 100%;
}


/*-------------------------------
---.common_layout
-------------------------------*/

.common_layout .section_head {
  margin-bottom: 9rem;
}

.common_layout .section_head h3 .subject {
  font-size: 3.8rem;
  line-height: revert;
  font-size: var(--font-size-xxxl);
}

.common_layout .section_head h3 .subtitle {
}

.common_layout .section_head .catch_copy {
  bottom: -5.5rem;
}

.common_layout .section_head .catch_copy span {
  padding: 0.3rem 1.5rem;
}

.common_layout .section_head .catch_copy span + span {
  margin-top: 1rem;
}

.common_layout .contents {
  grid-template-columns: 1fr;
  grid-gap: 3rem;
}

.common_layout .contents dt {
  font-size: var(--font-size-xxl);
}


/*-------------------------------
---.location
-------------------------------*/

.location .contents {
  grid-template-columns: 1fr;
}

.location .contents .image {
  order: 2;
}

.location .contents dl {
  order: 1;
}