/* Japanese typography and line-breaking adjustments for the One-Stop System page */
.onestop_page_ja main {
    font-family: "Pretendard JP", "Yu Gothic", "Meiryo", sans-serif;
    line-break: strict;
    word-break: normal;
}

.onestop_page_ja .onestop_visual_text p,
.onestop_page_ja .onestop_overview_heading,
.onestop_page_ja .onestop_overview_metrics,
.onestop_page_ja .onestop_process_heading,
.onestop_page_ja .onestop_process_content,
.onestop_page_ja .onestop_strength_heading,
.onestop_page_ja .onestop_strength_list,
.onestop_page_ja .onestop_cta {
    overflow-wrap: break-word;
}

.onestop_page_ja .onestop_overview_heading h2,
.onestop_page_ja .onestop_process_heading h2,
.onestop_page_ja .onestop_strength_heading h2,
.onestop_page_ja .onestop_cta h2,
.onestop_page_ja .onestop_process_content h3,
.onestop_page_ja .onestop_strength_list h3 {
    text-wrap: balance;
}

.onestop_page_ja .onestop_visual_text p,
.onestop_page_ja .onestop_overview_desc,
.onestop_page_ja .onestop_overview_metrics span,
.onestop_page_ja .onestop_process_heading > p,
.onestop_page_ja .onestop_process_content > p:not(.onestop_process_kicker),
.onestop_page_ja .onestop_strength_heading > p:last-child,
.onestop_page_ja .onestop_strength_list p {
    word-break: auto-phrase;
    text-wrap: pretty;
}

.onestop_page_ja .onestop_process_content small {
    line-height: 1.65;
}

.onestop_page_ja .ja_mobile_break {
    display: none;
}

.onestop_page_ja .onestop_cta_inner > *,
.onestop_page_ja .onestop_cta_links,
.onestop_page_ja .onestop_overview_heading > *,
.onestop_page_ja .onestop_process_heading > *,
.onestop_page_ja .onestop_strength_heading > * {
    min-width: 0;
}

@media screen and (max-width: 599px) {
    .onestop_page_ja .ja_mobile_break {
        display: inline;
    }

    .onestop_page_ja .onestop_overview_heading h2,
    .onestop_page_ja .onestop_strength_heading h2 {
        font-size: clamp(34px, 9.2vw, 42px);
    }

    .onestop_page_ja .onestop_cta h2 {
        font-size: clamp(30px, 9.2vw, 42px);
    }
}

@media screen and (min-width: 600px) and (max-width: 600px) {
    .onestop_page_ja .ja_mobile_break {
        display: inline;
    }
}

@media screen and (min-width: 1025px) and (max-width: 1149px) {
    .onestop_page_ja .ja_mobile_break {
        display: inline;
    }
}
