.l-philosophy_top {
  padding-top: 12rem;
}

.l-philosophy_top_wrapper {
  display: grid;
  gap: 21.6rem 0;
}

.l-philosophy_top_item_wrapper {
  display: grid;
  grid-template-columns: 48.4rem auto;
  gap: 0 5.6rem;
}

.l-philosophy_top_item_ttl {
  margin-bottom: 1.2rem;
}

.l-philosophy_top_item_ttl.is-vision {
  margin-bottom: 5.6rem;
}

.l-philosophy_top_item_ttl_sub {
  margin-bottom: 5.6rem;
}

.l-philosophy_top_item_txt_wrapper {
  display: grid;
  gap: 2em;
}

.l-philosophy_top_ttl {
  position: relative;
  margin-bottom: 10.8rem;
  padding-bottom: 4rem;
  color: var(--color-gray-40);
}

.l-philosophy_top_ttl::after {
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 6.4rem;
  height: var(--border-2px);
  background: var(--color-gray-40);
  content: "";
}

.l-philosophy_guideline {
  padding-bottom: 21.6rem;
}

.l-philosophy_guideline_ttl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 8rem;
  gap: 0 2rem;
  text-align: center;
}

.l-philosophy_guideline_ttl::before,.l-philosophy_guideline_ttl::after {
  display: block;
  width: calc(50% - 9rem);
  height: var(--border-1px);
  background: var(--color-black);
  content: "";
}

.l-philosophy_guideline_list {
  display: grid;
  width: calc(20% - 3.2rem);
  gap: 1.6rem;
  text-align: center;
}

.l-philosophy_guideline_list_wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 4rem;
}

.l-philosophy_guideline_list img {
  display: block;
  width: 6rem;
  margin: 0 auto;
}

.l-philosophy_bottom_img_wrapper {
  display: grid;
  grid-template-columns: 73.6rem auto;
  width: 100%;
  padding: 0 4.5rem 4.5rem;
  gap: 0 2rem;
}

.l-philosophy_bottom_img_wrapper img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

@media screen and (max-width: 48em) {
  .l-philosophy_top {
    padding-top: 8rem;
  }
  .l-philosophy_top_wrapper {
    gap: 12rem 0;
  }
  .l-philosophy_top_item_wrapper {
    grid-template-columns: 1fr;
    gap: 3.2rem;
  }
  .l-philosophy_top_item_ttl.is-vision {
    margin-bottom: 2.4rem;
  }
  .l-philosophy_top_item_ttl_sub {
    margin-bottom: 3.2rem;
  }
  .l-philosophy_top_ttl {
    margin-bottom: 5.6rem;
    padding-bottom: 3.2rem;
  }
  .l-philosophy_guideline {
    padding-bottom: 8rem;
  }
  .l-philosophy_guideline_ttl {
    margin-bottom: 4rem;
  }
  .l-philosophy_guideline_ttl::before,.l-philosophy_guideline_ttl::after {
    width: calc(50% - 8rem);
  }
  .l-philosophy_guideline_list {
    width: calc(50% - 1rem);
  }
  .l-philosophy_guideline_list_wrapper {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 4rem 1.6rem;
  }
  .l-philosophy_bottom_img_wrapper {
    grid-template-columns: 21.8rem auto;
    padding: 0 0 2rem;
    gap: 0 .4rem;
  }
}
