/* Japanese typography (Polylang 'ja' pages only). Added 2026-10-07.
 * The Japanese font (Noto Sans JP, registered as 'Lucida') now lives in ja-font.css:
 * the full font in Google-style slices, so new content never needs a font rebuild. */
html[lang^='ja'] body{line-break:strict;word-break:normal;overflow-wrap:break-word;-webkit-font-smoothing:antialiased}
:where(html[lang^='ja']) body{letter-spacing:.05em}
/* Width-specific line breaks used to match English line counts */
html[lang^='ja'] br.br-sp,html[lang^='ja'] br.br-tb,html[lang^='ja'] br.br-pc{display:none}
@media (max-width:767px){html[lang^='ja'] br.br-sp{display:inline}}
@media (min-width:768px) and (max-width:980px){html[lang^='ja'] br.br-tb{display:inline}}
@media (min-width:981px){html[lang^='ja'] br.br-pc{display:inline}}
/* Services (JA): the banner button wraps to two lines on phones, like the English one */
@media (max-width:767px){html[lang^='ja'] body.page-id-5892 .et_pb_fullwidth_header_0 .et_pb_button_one{max-width:165px;white-space:normal}}
/* Latin-only strings (email addresses) keep normal letter-spacing */
html[lang^='ja'] a[href^='mailto:']{letter-spacing:normal}
/* Large hero titles: on desktop, break only at the phrase boundary (zero-width space) instead of mid-word */
@media (min-width:981px){html[lang^='ja'] .et_pb_fullwidth_header_0 h1.et_pb_module_header{word-break:keep-all;overflow-wrap:normal}}
/* Latin-only strings marked lang="en" inside Japanese pages (e.g. footer email addresses) keep normal letter-spacing */
html[lang^='ja'] [lang='en']{letter-spacing:normal}
/* Services (JA) intro section: on phones, match the English paragraph and list heights (added 2026-10-09) */
@media (max-width:767px){
html[lang^='ja'] body.page-id-5892 .et_pb_text_9 p{line-height:27.7667px}
html[lang^='ja'] body.page-id-5892 #page-container .et_pb_section .et_pb_button_3{padding-right:62px!important}
html[lang^='ja'] body.page-id-5892 #page-container .et_pb_section .et_pb_button_4{padding-right:42px!important}
html[lang^='ja'] body.page-id-5892 #page-container .et_pb_section .et_pb_button_5{padding-right:55px!important}
html[lang^='ja'] body.page-id-5892 #page-container .et_pb_section .et_pb_button_6{padding-right:85px!important}
html[lang^='ja'] body.page-id-5892 #page-container .et_pb_section .et_pb_button_7{padding-right:48px!important}
html[lang^='ja'] body.page-id-5892 #page-container .et_pb_section .et_pb_button_8{padding-right:55px!important}
}
/* 会社概要 table (company profile), added 2026-10-09 */
html[lang^='ja'] table.st-profile{width:100%;border:1px solid #e1e7ee;border-collapse:separate;border-spacing:0;border-radius:12px;overflow:hidden;background:#fff;margin:0;font-size:16px;line-height:1.8}
html[lang^='ja'] table.st-profile th,html[lang^='ja'] table.st-profile td{padding:16px 22px;border:0;border-bottom:1px solid #e1e7ee;text-align:left;vertical-align:top}
html[lang^='ja'] table.st-profile th{width:24%;background:#f5f8fb;color:#15314e;font-weight:700;white-space:nowrap}
html[lang^='ja'] table.st-profile td{color:#444}
html[lang^='ja'] table.st-profile tr:last-child th,html[lang^='ja'] table.st-profile tr:last-child td{border-bottom:0}
html[lang^='ja'] table.st-profile ul{margin:0;padding:0 0 0 1.2em;list-style:disc}
html[lang^='ja'] table.st-profile li{padding:0}
html[lang^='ja'] .st-profile__note{font-size:14px;color:#6b7785}
@media (max-width:767px){html[lang^='ja'] table.st-profile th,html[lang^='ja'] table.st-profile td{display:block;width:auto;padding:10px 16px}html[lang^='ja'] table.st-profile th{border-bottom:0;padding-bottom:2px}html[lang^='ja'] table.st-profile{font-size:15px}}
