.sec_shin_cta {
  background: radial-gradient(ellipse at 25% 90%, #fcebf4, transparent 65%), #f5edfa;
  .wrap {
    margin: 0 auto;
    padding: 64px 24px 48px;
    max-width: 1440px;
    display: grid;
    grid-template-columns: minmax(0, 190px) minmax(0, 1fr) minmax(0, 190px);
    gap: 24px;
    @media (max-width: 1200px) { grid-template-columns: minmax(0, 150px) minmax(0, 1fr) minmax(0, 150px); }
    @media (max-width: 1000px) { grid-template-columns: minmax(0, 100px) minmax(0, 1fr) minmax(0, 100px); gap: 20px; }
    @media (max-width: 733px) { padding: 48px 24px 40px; grid-template-columns: minmax(0, 72px) minmax(0, 1fr) minmax(0, 72px); gap: 16px; }
    @media (max-width: 650px) { grid-template-columns: minmax(0, 1fr); }
  }
  .main { min-width: 0; text-align: center; }
  .txt_ptn_2 {
    .line { display: inline-block; }
    p + p { margin-top: 4px; }
  }
  .buttons {
    margin-top: 32px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 20px;
    @media (max-width: 733px) { margin-top: 24px; gap: 14px; }
    @media (max-width: 650px) { flex-direction: column; align-items: stretch; }
  }
  .deco {
    align-self: end;
    width: 100%;
    @media (max-width: 650px) { display: none; }
    &.right { margin-left: auto; max-width: 150px; }
  }
}
