.concept { padding: 170px 0 150px; background: var(--bg); position: relative; }
.concept .obj--n5 { width: 20vw; bottom: 0; right: 6vw; }
.concept__in { position: relative; max-width: 1300px; margin: auto; display: flex; flex-direction: row-reverse; align-items: center; gap: 7vw; padding: 0 40px; }
.concept .obj--n4 { width: 16vw; top: -90px; right: 30%; }
.concept__in .container { flex: 1; padding: 0; }
.concept__body { position: relative; z-index: 3; max-width: 460px; margin-left: auto; }
.concept__ttl { font-size: 13rem; margin-bottom: 44px; }
.concept__copy { font-size: 2.8rem; line-height: 1.6; margin-bottom: 30px; font-weight: 500; letter-spacing: 2px; word-break: keep-all; }
.concept__imgs { flex: 0 0 40%; position: relative; z-index: 2; }
.concept__img { border-radius: 999px 999px 0 0; overflow: hidden; }
.concept__img img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; object-position: 60% 50%; }
@media (max-width: 767px) {
  .concept { padding: 110px 0 90px; }
  .concept__in { display: block; padding: 0; }
  .concept .obj--n5 { width: 44vw; right: -8vw; bottom: -30px; }
  .concept .obj--n4 { width: 34vw; top: -70px; right: -8vw; }
  .concept__body { max-width: 100%; padding: 0 30px; margin-bottom: 50px; }
  .concept__ttl { font-size: 10rem; margin-bottom: 34px; }
  .concept__copy { font-size: 5.6vw; }
  .concept__imgs { width: 74%; margin-left: 30px; }
}
