/*
 * FEATURES / typography, watermark and marker impact tune-up, 2026-08-27.
 * Loaded after the approved desktop canvas so all four chapters stay uniform.
 */

@media (min-width: 769px) {
  section.features-organic .ofe-heading {
    margin-bottom: 26px;
    font-size: 40px;
    line-height: 1.38;
    letter-spacing: .018em;
  }

  section.features-organic .ofe-lead {
    max-width: 560px;
    margin-bottom: 16px;
    color: #103864;
    font-size: 19px;
    font-weight: 800;
    line-height: 1.76;
    letter-spacing: .012em;
  }

  /* Keep only the peripheral-device cost lead on one line at the fixed PC canvas. */
  section.features-organic .ofe-lead.ofe-lead--peripheral-cost {
    max-width: 580px;
    letter-spacing: -.012em;
    white-space: nowrap;
  }

  section.features-organic .ofe-body {
    max-width: 570px;
    color: #293f59;
    font-size: 17px;
    font-weight: 500;
    line-height: 1.9;
    letter-spacing: .008em;
  }

  /* 8/24電話合意: 文字を主役にするため写真だけを約5%縮小。 */
  section.features-organic .ofe-photo,
  section.features-organic .ofe-chapter:nth-child(odd) .ofe-photo,
  section.features-organic .ofe-chapter:nth-child(even) .ofe-photo {
    top: 50%;
    bottom: auto;
    width: 55%;
    height: 510px;
    transform: translateY(-50%);
  }

  section.features-organic .ofe-watermark-icon {
    top: 46px;
    right: 132px;
    width: 310px;
    opacity: .095;
    stroke-width: 2.4;
  }
}

section.features-organic .ofe-heading-line::after {
  right: -11px;
  bottom: 4px;
  height: 14px;
  background: linear-gradient(
    90deg,
    #ffe32f 0%,
    rgba(255, 237, 61, .98) 72%,
    rgba(255, 237, 61, .38) 100%
  );
  box-shadow: 0 0 14px rgba(255, 222, 30, .38);
}

@media (max-width: 768px) {
  section.features-organic .ofe-heading {
    margin-bottom: 22px;
    font-size: 28px;
    line-height: 1.44;
  }

  section.features-organic .ofe-lead {
    margin-bottom: 14px;
    color: #103864;
    font-size: 16.5px;
    font-weight: 800;
    line-height: 1.8;
  }

  section.features-organic .ofe-body {
    color: #293f59;
    font-size: 15.5px;
    font-weight: 500;
    line-height: 1.92;
  }

  section.features-organic .ofe-watermark-icon {
    top: 30px;
    right: 24px;
    width: 200px;
    opacity: .07;
    stroke-width: 2.35;
  }

  section.features-organic .ofe-heading-line::after {
    right: -8px;
    height: 12px;
  }
}

@media (max-width: 420px) {
  section.features-organic .ofe-heading {
    font-size: 26px;
  }

  section.features-organic .ofe-lead {
    font-size: 16px;
  }

  section.features-organic .ofe-body {
    font-size: 16px;
  }

  section.features-organic .ofe-watermark-icon {
    top: 26px;
    right: 12px;
    width: 168px;
    opacity: .06;
  }
}
