/* Figma 2035:138 — four reasons, isolated from the legacy reason section. */
.corporate-reasons {
    position: relative;
    isolation: isolate;
    padding: 0;
    background: #fff;
    color: #19354a;
    text-align: left;
    font-family: "Noto Sans JP", sans-serif;
    scroll-margin-top: 116px;
}
.corporate-reasons::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 400px;
    height: 400px;
    background: #126da0;
    z-index: -2;
}
.corporate-reasons::after {
    content: "";
    position: absolute;
    inset: 116px 120px 0 0;
    background: #f1f8fb;
    z-index: -1;
}
.corporate-reasons__inner {
    position: relative;
    max-width: 1440px;
    margin: auto;
    padding: 355px 220px 160px;
}
.corporate-reasons__illustration { position: absolute; top: -26px; left: 120px; width: 350px; height: 350px; object-fit: contain; }
.corporate-reasons__heading { position: absolute; right: 120px; top: 200px; isolation: isolate; }
.corporate-reasons__heading > span { position: absolute; right: 0; top: -84px; z-index: -1; color: #fff; font: 700 1.2 "Inter", sans-serif; font-size: 128px; }
.corporate-reasons__heading h2 { font-size: 40px; font-weight: 700; line-height: 1.5; text-align: right; margin: 0; }
.corporate-reasons__grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 79px 100px; }
.corporate-reasons__card { position: relative; display: flex; flex-direction: column; justify-content: center; gap: 30px; min-height: 300px; padding: 30px 40px; background: #fff; }
.corporate-reasons__card:nth-child(even) { transform: translateY(79px); }
.corporate-reasons__number { position: absolute; right: 36px; top: -40px; display: flex; flex-direction: column; align-items: center; color: #126da0; font-family: "Inter", sans-serif; font-size: 48px; font-weight: 500; line-height: 48px; }
.corporate-reasons__number span { font-size: 14px; font-weight: 700; line-height: 20px; }
.corporate-reasons__card-heading { display: flex; align-items: center; gap: 25px; }
.corporate-reasons__card-heading img { flex: 0 0 90px; width: 90px; height: 90px; object-fit: contain; }
.corporate-reasons__card-heading h3 { font-size: 24px; font-weight: 700; line-height: 36px; }
.corporate-reasons__description { font-size: 16px; line-height: 24px; }
@media (min-width:769px) and (max-width:1399px) {
    .corporate-reasons__inner { padding-inline: 8%; }
    .corporate-reasons__grid { gap: 79px 50px; }
    .corporate-reasons__illustration { left: 6%; }
    .corporate-reasons__heading { right: 6%; }
    .corporate-reasons__card { padding-inline: 28px; }
    .corporate-reasons__card-heading { gap: 18px; }
    .corporate-reasons__card-heading img { flex-basis: 70px; width: 70px; height: 70px; }
    .corporate-reasons__card-heading h3 { font-size: 20px; line-height: 30px; }
    .corporate-reasons::after { right: 6%; }
}
@media (max-width:768px) {
    .corporate-reasons { scroll-margin-top: 96px; }
    .corporate-reasons::before { width: 160px; height: 200px; }
    .corporate-reasons::after { top: 64px; right: 8px; }
    .corporate-reasons__inner { padding: 16px 20px 56px; }
    .corporate-reasons__illustration { position: relative; top: 0; left: 0; display: block; width: 180px; height: 180px; }
    .corporate-reasons__heading { position: relative; top: auto; right: auto; margin: 12px 0 64px; }
    .corporate-reasons__heading > span { top: -32px; font-size: clamp(56px,14vw,90px); }
    .corporate-reasons__heading h2 { font-size: clamp(22px,5.5vw,30px); }
    .corporate-reasons__grid { grid-template-columns: minmax(0,1fr); gap: 56px; }
    .corporate-reasons__card { min-height: 260px; padding: 32px 24px; gap: 24px; }
    .corporate-reasons__card:nth-child(even) { transform: none; }
    .corporate-reasons__number { right: 24px; top: -34px; font-size: 42px; line-height: 42px; }
    .corporate-reasons__card-heading { gap: 16px; }
    .corporate-reasons__card-heading img { flex-basis: 64px; width: 64px; height: 64px; }
    .corporate-reasons__card-heading h3 { font-size: 20px; line-height: 30px; }
    .corporate-reasons__description { font-size: 14px; line-height: 24px; }
}
@media (max-width:360px) {
    .corporate-reasons__card { padding-inline: 18px; }
    .corporate-reasons__card-heading { gap: 12px; }
    .corporate-reasons__card-heading img { flex-basis: 48px; width: 48px; height: 48px; }
    .corporate-reasons__card-heading h3 { font-size: 17px; line-height: 27px; }
}
