.wp-block-okaeri-chita-concerns.okaeri-concerns-block {
  --oc-ink: #263a38;
  --oc-muted: #657773;
  --oc-brand-dark: #257368;
  --oc-shadow: 0 18px 45px rgba(38, 76, 71, .1);
  position: relative;
  isolation: isolate;
  width: 100%;
  margin: 0;
  padding: 110px 6vw;
  overflow: hidden;
  color: var(--oc-ink);
  background: var(--oc-concerns-bg, #fbfdfc);
  box-sizing: border-box;
  font-family: "Noto Sans JP", "Hiragino Sans", "Yu Gothic", sans-serif;
}

.wp-block-okaeri-chita-concerns.okaeri-concerns-block *,
.wp-block-okaeri-chita-concerns.okaeri-concerns-block *::before,
.wp-block-okaeri-chita-concerns.okaeri-concerns-block *::after { box-sizing: border-box; }

.okaeri-concerns-heading,
.okaeri-concerns-grid { position: relative; z-index: 2; }

.okaeri-concerns-heading {
  max-width: 1160px;
  margin: 0 auto;
  padding: var(--oc-heading-padding, 0);
  border-radius: var(--oc-heading-radius, 0);
  color: var(--oc-heading-color, var(--oc-ink));
  background: var(--oc-heading-bg, transparent);
  text-align: center;
}
.okaeri-concerns-kicker { margin: 0; color: var(--oc-heading-accent, var(--oc-brand-dark)); font-size: 11px; font-weight: 800; letter-spacing: .2em; }
.wp-block-okaeri-chita-concerns.okaeri-concerns-block h2 { margin: 12px 0; color: var(--oc-heading-color, var(--oc-ink)); font-size: 36px; line-height: 1.5; }
.okaeri-concerns-description { margin: 0; color: var(--oc-heading-description, var(--oc-muted)); }

.okaeri-concerns-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
  max-width: 1160px;
  margin: 52px auto 0;
}

.okaeri-concern-card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 270px;
  padding: 30px;
  border: 1px solid rgba(37, 115, 104, .06);
  border-radius: 28px;
  color: var(--oc-ink);
  background: var(--oc-card-bg);
  text-decoration: none;
  transition: transform .2s ease, box-shadow .2s ease;
}
.okaeri-concern-card:hover { transform: translateY(-5px); box-shadow: var(--oc-shadow); }
.okaeri-concern-icon { display: grid; place-items: center; width: 54px; height: 54px; border-radius: 50%; color: var(--oc-brand-dark); background: #fff; font-weight: 700; }
.wp-block-okaeri-chita-concerns.okaeri-concerns-block h3 { margin: 28px 0 8px; font-size: 22px; }
.wp-block-okaeri-chita-concerns.okaeri-concerns-block .okaeri-concern-card p { margin: 0; padding-right: 25px; color: #546964; font-size: 14px; line-height: 1.8; }
.okaeri-concern-arrow { position: absolute; right: 25px; bottom: 25px; display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; background: #fff; }

.okaeri-concerns-blob { position: absolute; z-index: 0; display: block; border-radius: 50%; pointer-events: none; opacity: .55; }
.okaeri-concerns-blob--left { left: -90px; top: 52px; width: 230px; height: 230px; background: #eaf8f5; }
.okaeri-concerns-blob--right { right: -70px; bottom: -85px; width: 250px; height: 250px; background: #fff4cc; }

@media (max-width: 980px) { .okaeri-concerns-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) {
  .wp-block-okaeri-chita-concerns.okaeri-concerns-block { padding: 80px 20px; }
  .wp-block-okaeri-chita-concerns.okaeri-concerns-block h2 { font-size: 29px; }
  .okaeri-concerns-heading { text-align: left; }
  .okaeri-concerns-grid { grid-template-columns: 1fr; gap: 16px; margin-top: 36px; }
  .okaeri-concern-card { min-height: 230px; }
}
