/* ============================
   Concept
   ============================ */
.concept {
  background: var(--c-bg);
}
.concept-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--space-m);
  align-items: center;
}
@media (min-width: 900px) {
  .concept-grid { grid-template-columns: 1fr 1fr; gap: var(--space-l); }
}
.concept-text {
  font-family: var(--f-display);
  font-weight: 700;
  font-size: clamp(1rem, 1.5vw, 1.15rem);
  line-height: 2.2;
  letter-spacing: 0.05em;
}
.concept-text p + p { margin-top: 1.5em; }
.concept-lead {
  font-family: var(--f-display);
  font-weight: 800;
  font-size: clamp(1.8rem, 4vw, 2.8rem);
  line-height: 1.5;
  letter-spacing: 0.05em;
  margin-bottom: 1.5em;
}
.concept-lead span {
  background: linear-gradient(180deg, transparent 65%, var(--c-accent) 65%, var(--c-accent) 85%, transparent 85%);
  padding: 0 0.1em;
}
.concept-image {
  position: relative;
  aspect-ratio: 4/5;
  overflow: hidden;
}
.concept-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: contrast(1.1) saturate(1.1);
}
.concept-image::after {
  content: "探究";
  position: absolute;
  bottom: 1.5rem;
  right: 1.5rem;
  font-family: var(--f-display);
  font-weight: 800;
  font-size: 3rem;
  color: var(--c-ink);
  writing-mode: vertical-rl;
  letter-spacing: 0.2em;
  text-shadow: 0 0 20px rgba(0,0,0,0.8);
}
