/* 部品（src/components/parts/）の見た目のルール。
   トップページ・サービスページの実物（お手本）から自動で取り出したもの（tools/make_parts_css.py）。数値はお手本と同じ。
   部品を増やすときも、ここに勝手な数値を足さず、お手本の実物から取り出す。 */

.pt_stats.et_pb_section { padding: 0px 0px 23px; background-color: rgb(12, 16, 33) !important; }
.pt_stat.et_pb_number_counter .percent p { font-family: Lora, Georgia, "Times New Roman", serif; line-height: 100px; color: rgb(175, 164, 110) !important; }
.pt_stat.et_pb_number_counter { margin-bottom: 15px !important; }
.pt_stat_divider { height: 0px; max-width: 80px; }
.pt_stat_divider::before { border-top-color: rgb(175, 164, 110); border-top-width: 2px; }
.pt_stat_long.et_pb_number_counter .percent p { font-family: Lora, Georgia, "Times New Roman", serif; font-size: 60px; line-height: 100px; color: rgb(175, 164, 110) !important; }
.pt_stat_long.et_pb_number_counter { margin-bottom: 15px !important;
  & .dh-static .percent-value { font-size: 0px !important; }
  & .dh-static .percent-value::before { font-size: 40px !important; content: "80"; } }
.pt_stat_divider.et_pb_module { margin-left: auto !important; margin-right: auto !important; }
@media only screen and (max-width: 980px) {
  .pt_stat_long.et_pb_number_counter .percent p { font-size: 60px; }
}
@media only screen and (max-width: 767px) {
  .pt_stat_long.et_pb_number_counter .percent p { font-size: 60px; }
}
.pt_kicker h4 { font-size: 16px; }
.pt_kicker { margin-top: 50px !important; margin-bottom: 0px !important; }
.pt_title h2, .pt_cta_text h2 { font-size: 53px; }
.pt_button, .pt_button::after, .pt_button_kakao, .pt_button_kakao::after, .pt_button_line, .pt_button_line::after { transition: 300ms; }
.pt_toggle_icon_card.et_pb_toggle_close .et_pb_toggle_title::before { font-family: ETmodules !important; font-weight: 400 !important; content: "" !important; }
.pt_toggle_icon_gavel.et_pb_toggle_close .et_pb_toggle_title::before { font-family: FontAwesome !important; font-weight: 900 !important; content: "" !important; }
.pt_feature.et_pb_blurb .et_pb_module_header, .pt_feature.et_pb_blurb .et_pb_module_header a { font-size: 28px; }
.pt_feature.et_pb_blurb { background-color: rgb(255, 255, 255); }
.pt_feature .et_pb_main_blurb_image .et_pb_image_wrap { width: 60px; }
.pt_cards_row_first.et_pb_row { padding: 40px 0px 20px !important; }
.pt_service.et_pb_blurb .et_pb_module_header, .pt_service.et_pb_blurb .et_pb_module_header a { line-height: 1.8em; }
.pt_service.et_pb_blurb .et_pb_main_blurb_image { margin-bottom: 15px; }
.pt_cards_row.et_pb_row { padding: 30px 0px 40px !important; }
.pt_testimonial.et_pb_testimonial .et_pb_testimonial_content { font-style: italic; font-size: 16px; line-height: 1.6em; text-align: center; color: rgba(27, 33, 58, 0.6) !important; }
.pt_testimonial.et_pb_testimonial { background-color: rgb(246, 246, 247); }
.pt_testimonial .et_pb_testimonial_portrait::before { box-shadow: rgba(0, 0, 0, 0.17) 0px 2px 18px 0px; }
.pt_testimonial.et_pb_testimonial::before { color: rgb(233, 229, 223); background-color: rgba(0, 0, 0, 0); }
.pt_testimonial.et_pb_testimonial .et_pb_testimonial_portrait { display: inline-block; float: inherit; margin-right: 0px; margin-bottom: 20px; margin-top: -70px; }
.pt_testimonial.et_pb_testimonial .et_pb_testimonial_description { margin-left: 0px !important; }
.pt_testimonial.et_pb_testimonial .et_pb_testimonial_author { border-top: 1px solid rgb(237, 237, 237); padding-top: 20px; margin-top: 30px; font-style: normal; font-size: 18px; color: rgb(175, 164, 110) !important; }
.pt_cta.et_pb_section { padding: 40px 0px 50px; background-color: rgb(27, 33, 58) !important; }
.pt_cta_text.et_pb_text { color: rgba(255, 255, 255, 0.49) !important; }
.pt_cta_text { font-size: 24px; line-height: 1.4em; }
.pt_chat_id.et_pb_text { color: rgb(0, 0, 0) !important; }
.pt_chat_logo { text-align: left; margin-left: 0px; }
.pt_chat_qr { text-align: center; margin-right: 6px !important; margin-left: 6px !important; }
.pt_chat_id { letter-spacing: 1px; }
.pt_button_kakao_wrapper, .pt_button_line_wrapper { margin-right: 8px !important; margin-left: 8px !important; }
body #page-container .et_pb_section .pt_button_kakao { font-size: 17px; background-color: rgb(76, 63, 66); color: rgb(253, 242, 87) !important; }
body #page-container .et_pb_section .pt_button_kakao::after, body #page-container .et_pb_section .pt_button_line::after { font-size: 1.6em; }
body.et_button_custom_icon #page-container .pt_button_kakao::after, body.et_button_custom_icon #page-container .pt_button_line::after { font-size: 17px; }
.pt_button_kakao, .pt_button_line { box-shadow: rgba(0, 0, 0, 0.3) 10px 10px 0px 0px; }
body #page-container .et_pb_section .pt_button_line { font-size: 17px; background-color: rgb(213, 243, 191); color: rgb(98, 195, 60) !important; }
.pt_chat_col_kakao { background-color: rgb(251, 234, 84); padding-bottom: 30px; }
.pt_chat_col_line { background-color: rgb(53, 188, 0); padding-bottom: 30px; }
@media only screen and (max-width: 980px) {
  .pt_chat_logo .et_pb_image_wrap img, .pt_chat_qr .et_pb_image_wrap img { width: auto; }
  .pt_kicker h4 { font-size: 14px; }
  .pt_title h2 { font-size: 42px; }
  .pt_feature .et_pb_main_blurb_image .et_pb_image_wrap { width: 60px; }
  .pt_cta_text h2 { font-size: 38px; }
  body #page-container .et_pb_section .pt_button_kakao::after, body #page-container .et_pb_section .pt_button_line::after { display: inline-block; opacity: 0; }
  body #page-container .et_pb_section .pt_button_kakao:hover::after, body #page-container .et_pb_section .pt_button_line:hover::after { opacity: 1; }
}
@media only screen and (max-width: 767px) {
  .pt_chat_logo .et_pb_image_wrap img, .pt_chat_qr .et_pb_image_wrap img { width: auto; }
  .pt_kicker h4 { font-size: 12px; }
  .pt_title h2 { font-size: 30px; }
  .pt_feature .et_pb_main_blurb_image .et_pb_image_wrap { width: 60px; }
  .pt_cta_text { font-size: 18px; }
  .pt_cta_text h2 { font-size: 26px; }
  .pt_chat_row, body #page-container .et-db #et-boc .et-l .pt_chat_row.et_pb_row, body.et_pb_pagebuilder_layout.single #page-container #et-boc .et-l .pt_chat_row.et_pb_row, body.et_pb_pagebuilder_layout.single.et_full_width_page #page-container #et-boc .et-l .pt_chat_row.et_pb_row { width: 90%; }
  body #page-container .et_pb_section .pt_button_kakao::after, body #page-container .et_pb_section .pt_button_line::after { display: inline-block; opacity: 0; }
  body #page-container .et_pb_section .pt_button_kakao:hover::after, body #page-container .et_pb_section .pt_button_line:hover::after { opacity: 1; }
}
div.et_pb_section.pt_banner { background-position: right 15% center; background-blend-mode: multiply; }
.pt_banner.et_pb_section { padding-top: 100px; padding-bottom: 50px; margin-bottom: 0px; background-color: rgba(12, 16, 33, 0.8) !important; }
.pt_banner_title h1 { font-size: 50px; }
.pt_intro_row, body #page-container .et-db #et-boc .et-l .pt_intro_row.et_pb_row, body.et_pb_pagebuilder_layout.single #page-container #et-boc .et-l .pt_intro_row.et_pb_row, body.et_pb_pagebuilder_layout.single.et_full_width_page #page-container #et-boc .et-l .pt_intro_row.et_pb_row, .pt_pen_row, body #page-container .et-db #et-boc .et-l .pt_pen_row.et_pb_row, body.et_pb_pagebuilder_layout.single #page-container #et-boc .et-l .pt_pen_row.et_pb_row, body.et_pb_pagebuilder_layout.single.et_full_width_page #page-container #et-boc .et-l .pt_pen_row.et_pb_row { max-width: 100%; }
.pt_kicker_plain h4 { font-size: 16px; }
.pt_kicker_plain { margin-bottom: 0px !important; }
.pt_intro_title h2, .pt_intro_text h2, .pt_pen_text h2 { font-size: 53px; }
.pt_intro_title { max-width: 500px; }
.pt_intro_text { max-width: 600px; }
.pt_pen.et_pb_section { padding: 110px 0px 0px; background-color: rgb(246, 246, 247) !important; }
.pt_pen_image { text-align: left; margin-left: -300px !important; }
.pt_pen_text { margin-bottom: 30px !important; }
.pt_button, .pt_button::after { transition: 300ms; }
.pt_intro_title.et_pb_module { margin-left: auto !important; margin-right: 0px !important; }
.pt_intro_text.et_pb_module { margin-left: 0px !important; margin-right: auto !important; }
.pt_pen_row.et_pb_row { padding: 0px 0px 110px !important; margin-left: auto !important; margin-right: auto !important; }
@media only screen and (max-width: 980px) {
  .pt_banner.et_pb_section { padding-top: 50px; padding-bottom: 50px; }
  .pt_banner_title h1 { font-size: 38px; }
  .pt_kicker_plain h4 { font-size: 14px; }
  .pt_intro_title h2, .pt_intro_text h2, .pt_pen_text h2 { font-size: 42px; }
  .pt_pen.et_pb_section { padding: 110px 0px 0px; }
  .pt_pen_image { margin-left: 0px !important; }
  .pt_pen_image .et_pb_image_wrap img { width: auto; }
}
@media only screen and (max-width: 767px) {
  .pt_banner.et_pb_section { padding-top: 50px; padding-bottom: 50px; }
  .pt_banner_title h1, .pt_intro_title h2, .pt_intro_text h2, .pt_pen_text h2 { font-size: 30px; }
  .pt_intro.et_pb_section { padding-top: 20px; padding-bottom: 20px; }
  .pt_intro_row, body #page-container .et-db #et-boc .et-l .pt_intro_row.et_pb_row, body.et_pb_pagebuilder_layout.single #page-container #et-boc .et-l .pt_intro_row.et_pb_row, body.et_pb_pagebuilder_layout.single.et_full_width_page #page-container #et-boc .et-l .pt_intro_row.et_pb_row, .pt_pen_row, body #page-container .et-db #et-boc .et-l .pt_pen_row.et_pb_row, body.et_pb_pagebuilder_layout.single #page-container #et-boc .et-l .pt_pen_row.et_pb_row, body.et_pb_pagebuilder_layout.single.et_full_width_page #page-container #et-boc .et-l .pt_pen_row.et_pb_row { width: 88%; }
  .pt_kicker_plain h4 { font-size: 12px; }
  .pt_pen.et_pb_section { padding: 20px 0px 0px; }
  .pt_pen_image { margin-left: 0px !important; display: none !important; }
  .pt_pen_image .et_pb_image_wrap img { width: auto; }
  .pt_pen_text h4 { font-size: 16px; }
}
.pt_pcards.et_pb_section { padding-right: 0px; padding-bottom: 40px; padding-left: 0px; background-color: rgb(0, 29, 53) !important; }
.pt_pcards_head.et_pb_text { color: rgba(255, 255, 255, 0.49) !important; }
.pt_pcards_head { font-size: 24px; line-height: 1.4em; padding-right: 0px !important; padding-left: 0px !important; margin-right: 0px !important; margin-left: 0px !important; }
.pt_pcards_head h2, .pt_strategy_title h2, .pt_dcards_title h2, .pt_attorney_text h2 { font-size: 53px; }
.pt_pcards_row.et_pb_row { padding-bottom: 0px !important; }
.pt_pcards_col_line { border-right: 1px solid rgba(255, 255, 255, 0.063); }
.pt_pcard.et_pb_blurb .et_pb_module_header, .pt_pcard.et_pb_blurb .et_pb_module_header a { color: rgb(255, 255, 255) !important; text-align: center; }
.pt_pcard.et_pb_blurb .et_pb_blurb_description { text-align: center; }
.pt_pcard.et_pb_blurb { padding-right: 40px !important; padding-bottom: 0px !important; padding-left: 40px !important; margin-bottom: 0px !important; }
.pt_pcard { transition: margin 400ms ease-in-out 50ms; }
.pt_pcard.et_pb_blurb .et_pb_main_blurb_image { margin-bottom: 5px; }
.pt_pcard .et_pb_main_blurb_image .et_pb_image_wrap { width: 60px; }
.pt_strategy.et_pb_section { padding: 80px 0px; }
.pt_strategy_row.et_pb_row { padding: 40px 0px 30px !important; }
.pt_strategy_row, body #page-container .et-db #et-boc .et-l .pt_strategy_row.et_pb_row, body.et_pb_pagebuilder_layout.single #page-container #et-boc .et-l .pt_strategy_row.et_pb_row, body.et_pb_pagebuilder_layout.single.et_full_width_page #page-container #et-boc .et-l .pt_strategy_row.et_pb_row { width: 88%; max-width: 100%; }
.pt_kicker_plain, .pt_call_title { margin-bottom: 0px !important; }
.pt_strategy_title, .pt_dcards_title { margin-bottom: 30px !important; }
.pt_strategy_image { text-align: right; margin-right: 0px; }
.pt_dcards_head_row, body #page-container .et-db #et-boc .et-l .pt_dcards_head_row.et_pb_row, body.et_pb_pagebuilder_layout.single #page-container #et-boc .et-l .pt_dcards_head_row.et_pb_row, body.et_pb_pagebuilder_layout.single.et_full_width_page #page-container #et-boc .et-l .pt_dcards_head_row.et_pb_row, .pt_dcards_row, body #page-container .et-db #et-boc .et-l .pt_dcards_row.et_pb_row, body.et_pb_pagebuilder_layout.single #page-container #et-boc .et-l .pt_dcards_row.et_pb_row, body.et_pb_pagebuilder_layout.single.et_full_width_page #page-container #et-boc .et-l .pt_dcards_row.et_pb_row, .pt_dcards_row_last, body #page-container .et-db #et-boc .et-l .pt_dcards_row_last.et_pb_row, body.et_pb_pagebuilder_layout.single #page-container #et-boc .et-l .pt_dcards_row_last.et_pb_row, body.et_pb_pagebuilder_layout.single.et_full_width_page #page-container #et-boc .et-l .pt_dcards_row_last.et_pb_row { max-width: 100%; }
.pt_dcard.et_pb_blurb .et_pb_main_blurb_image { width: 50px; }
div.et_pb_section.pt_call { background-image: url("../images/wp/2018/09/services-12.webp") !important; }
.pt_call.et_pb_section { padding: 40px 0px; }
.pt_call_row.et_pb_row { padding: 30px 0px 40px !important; }
.pt_call_title h1 { color: rgb(255, 255, 255) !important; }
.pt_call_sub { font-size: 20px; }
.pt_call_button_wrapper .pt_call_button, .pt_call_button_wrapper .pt_call_button:hover { padding-left: 50px !important; }
.pt_call_button_wrapper { transition: transform 300ms; margin-top: 15px !important; }
body #page-container .et_pb_section .pt_call_button { padding-right: 0.7em; }
body #page-container .et_pb_section .pt_call_button::after { display: none; }
body #page-container .et_pb_section .pt_call_button::before { content: attr(data-icon); line-height: inherit; opacity: 1; margin-left: -1.3em; right: auto; display: inline-block; font-size: inherit !important; font-family: FontAwesome !important; font-weight: 900 !important; }
body #page-container .et_pb_section .pt_call_button:hover::before { right: auto; margin-left: -1.3em; }
.pt_call_button_wrapper a:hover { transform: translateX(0px) translateY(-10px) !important; }
.pt_call_button, .pt_call_button::after, .pt_button, .pt_button::after { transition: 300ms; }
.pt_toggle_card.et_pb_toggle { background-color: rgb(255, 255, 255); }
.et_pb_module.pt_toggle_card.et_pb_toggle { border-width: 0px; }
.pt_toggle_card { box-shadow: rgba(21, 24, 52, 0.1) 0px 10px 60px 0px !important; }
.pt_attorney.et_pb_section { padding-right: 0px; background-color: rgb(246, 246, 247) !important; }
.pt_attorney_image { padding-right: 5%; text-align: left; margin-left: 0px; }
.pt_attorney_image .et_pb_image_wrap { box-shadow: rgba(21, 24, 52, 0.2) 0px 20px 60px 0px; }
.pt_attorney_inner.et_pb_row_inner { max-width: 100%; padding: 44.5625px 0px 20px !important; }
.et_pb_column .pt_attorney_inner { padding: 44.5625px 0px 20px; }
.pt_attorney_counter.et_pb_number_counter h3, .pt_attorney_counter.et_pb_number_counter h1.title, .pt_attorney_counter.et_pb_number_counter h2.title, .pt_attorney_counter.et_pb_number_counter h4.title, .pt_attorney_counter.et_pb_number_counter h5.title, .pt_attorney_counter.et_pb_number_counter h6.title { font-size: 14px; }
.pt_attorney_counter.et_pb_number_counter .percent p { color: rgb(175, 164, 110) !important; }
.pt_attorney_counter.et_pb_number_counter { background-color: rgb(255, 255, 255); padding-top: 20px; padding-bottom: 20px; }
.pt_badges_row.et_pb_row { padding-top: 0px !important; padding-bottom: 0px !important; margin-top: 0px !important; margin-bottom: 0px !important; }
.pt_badge { text-align: left; margin-right: 0px !important; margin-left: 0px !important; }
.pt_dcards_row.et_pb_row { padding-top: 0px !important; padding-right: 0px !important; padding-left: 0px !important; margin-left: auto !important; margin-right: auto !important; }
.pt_dcards_row_last.et_pb_row { padding: 0px 0px 110px !important; margin-left: auto !important; margin-right: auto !important; }
.pt_attorney_counters.et_pb_row_inner { margin-left: auto !important; margin-right: auto !important; }
@media only screen and (min-width: 981px) {
  .pt_strategy_image { width: 60%; }
}
@media only screen and (max-width: 980px) {
  .pt_pcards_head h2, .pt_strategy_title h2, .pt_dcards_title h2, .pt_attorney_text h2 { font-size: 42px; }
  .pt_pcard.et_pb_blurb { padding-right: 40px !important; padding-bottom: 0px !important; padding-left: 40px !important; }
  .pt_pcard.et_pb_blurb { padding-right: 40px !important; padding-bottom: 0px !important; padding-left: 40px !important; margin-bottom: 0px !important; }
  .pt_strategy.et_pb_section { padding-top: 0px; padding-bottom: 40px; }
  .pt_strategy_title { margin-bottom: 30px !important; }
  .pt_strategy_image { width: 60%; text-align: center; margin-left: auto; margin-right: auto; }
  .pt_strategy_image .et_pb_image_wrap img, .pt_attorney_image .et_pb_image_wrap img, .pt_badge .et_pb_image_wrap img { width: auto; }
  .pt_dcards_row_last.et_pb_row { padding: 0px 0px 110px !important; }
  .pt_call_title h1 { font-size: 38px; }
  .pt_call_sub { line-height: 1.4em; }
  .pt_call_button_wrapper .pt_call_button, .pt_call_button_wrapper .pt_call_button:hover { padding-left: 50px !important; }
  body #page-container .et_pb_section .pt_call_button::before { line-height: inherit; margin-left: -1.3em; right: auto; display: inline-block; opacity: 1; content: attr(data-icon); font-size: inherit !important; font-family: FontAwesome !important; font-weight: 900 !important; }
  body #page-container .et_pb_section .pt_call_button::after { display: none; }
  body #page-container .et_pb_section .pt_call_button:hover::before { right: auto; margin-left: -1.3em; }
  .pt_attorney_image { text-align: center; margin-left: auto; margin-right: auto; }
  .pt_badge { padding-right: 0px; padding-left: 0px; width: 130%; margin-left: -8px !important; }
  .pt_badge { padding-right: 0px; padding-left: 0px; width: 130%; margin-left: -10px !important; }
}
@media only screen and (max-width: 767px) {
  .pt_pcards_head { font-size: 21px; }
  .pt_pcards_head h2, .pt_strategy_title h2, .pt_dcards_title h2, .pt_attorney_text h2 { font-size: 30px; }
  .pt_pcards_row.et_pb_row { margin-bottom: 0px !important; }
  .pt_pcard.et_pb_blurb { padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; }
  .pt_pcard.et_pb_blurb { padding-right: 0px !important; padding-bottom: 0px !important; padding-left: 0px !important; margin-bottom: 0px !important; }
  .pt_strategy_title { padding-bottom: 0px !important; margin-bottom: 0px !important; }
  .pt_strategy_image { display: none !important; }
  .pt_strategy_image .et_pb_image_wrap img, .pt_attorney_image .et_pb_image_wrap img, .pt_badge .et_pb_image_wrap img { width: auto; }
  .pt_dcards_head_row, body #page-container .et-db #et-boc .et-l .pt_dcards_head_row.et_pb_row, body.et_pb_pagebuilder_layout.single #page-container #et-boc .et-l .pt_dcards_head_row.et_pb_row, body.et_pb_pagebuilder_layout.single.et_full_width_page #page-container #et-boc .et-l .pt_dcards_head_row.et_pb_row { width: 88%; }
  .pt_dcards_row, body #page-container .et-db #et-boc .et-l .pt_dcards_row.et_pb_row, body.et_pb_pagebuilder_layout.single #page-container #et-boc .et-l .pt_dcards_row.et_pb_row, body.et_pb_pagebuilder_layout.single.et_full_width_page #page-container #et-boc .et-l .pt_dcards_row.et_pb_row, .pt_dcards_row_last, body #page-container .et-db #et-boc .et-l .pt_dcards_row_last.et_pb_row, body.et_pb_pagebuilder_layout.single #page-container #et-boc .et-l .pt_dcards_row_last.et_pb_row, body.et_pb_pagebuilder_layout.single.et_full_width_page #page-container #et-boc .et-l .pt_dcards_row_last.et_pb_row, .pt_badges_row, body #page-container .et-db #et-boc .et-l .pt_badges_row.et_pb_row, body.et_pb_pagebuilder_layout.single #page-container #et-boc .et-l .pt_badges_row.et_pb_row, body.et_pb_pagebuilder_layout.single.et_full_width_page #page-container #et-boc .et-l .pt_badges_row.et_pb_row { width: 95%; }
  .pt_dcards_row_last.et_pb_row { padding: 0px !important; }
  .pt_call_row, body #page-container .et-db #et-boc .et-l .pt_call_row.et_pb_row, body.et_pb_pagebuilder_layout.single #page-container #et-boc .et-l .pt_call_row.et_pb_row, body.et_pb_pagebuilder_layout.single.et_full_width_page #page-container #et-boc .et-l .pt_call_row.et_pb_row, .pt_faq_row, body #page-container .et-db #et-boc .et-l .pt_faq_row.et_pb_row, body.et_pb_pagebuilder_layout.single #page-container #et-boc .et-l .pt_faq_row.et_pb_row, body.et_pb_pagebuilder_layout.single.et_full_width_page #page-container #et-boc .et-l .pt_faq_row.et_pb_row, .pt_attorney_counters.et_pb_row_inner { width: 90%; }
  .pt_call_title h1 { font-size: 32px; }
  .pt_call_sub { font-size: 18px; }
  .pt_call_button_wrapper .pt_call_button, .pt_call_button_wrapper .pt_call_button:hover { padding-left: 50px !important; }
  body #page-container .et_pb_section .pt_call_button::before { line-height: inherit; margin-left: -1.3em; right: auto; display: inline-block; opacity: 1; content: attr(data-icon); font-size: inherit !important; font-family: FontAwesome !important; font-weight: 900 !important; }
  body #page-container .et_pb_section .pt_call_button::after { display: none; }
  body #page-container .et_pb_section .pt_call_button:hover::before { right: auto; margin-left: -1.3em; }
  .pt_toggle_card.et_pb_toggle h5, .pt_toggle_card.et_pb_toggle h1.et_pb_toggle_title, .pt_toggle_card.et_pb_toggle h2.et_pb_toggle_title, .pt_toggle_card.et_pb_toggle h3.et_pb_toggle_title, .pt_toggle_card.et_pb_toggle h4.et_pb_toggle_title, .pt_toggle_card.et_pb_toggle h6.et_pb_toggle_title { font-size: 22px; }
  .pt_attorney_inner.et_pb_row_inner { width: 100%; }
  .pt_badges_row.et_pb_row { padding-top: 0px !important; padding-bottom: 0px !important; }
  .pt_badge, .pt_badge_col { padding-right: 0px; padding-left: 0px; }
}
.pt_about_title h2, .pt_about_text h2 { font-size: 53px; }
.pt_about_title { max-width: 500px; }
.pt_about_text { max-width: 600px; }
.pt_about_item { transition: margin 300ms; }
.pt_about_item.et_pb_blurb .et_pb_main_blurb_image { margin-bottom: 0px; }
.pt_about_item.et_pb_blurb .et_pb_blurb_content { text-align: left; }
.pt_about_item .et_pb_main_blurb_image .et_pb_image_wrap { width: 70px; }
.pt_about_title.et_pb_module { margin-left: auto !important; margin-right: 0px !important; }
.pt_about_text.et_pb_module { margin-left: 0px !important; margin-right: auto !important; }
.pt_about_item.et_pb_blurb:hover { margin-top: -10px !important; margin-bottom: 10px !important; }
@media only screen and (max-width: 980px) {
  .pt_about_title h2, .pt_about_text h2 { font-size: 42px; }
  .pt_about_item .et_pb_main_blurb_image .et_pb_image_wrap { width: 70px; }
}
@media only screen and (max-width: 767px) {
  .pt_about_title h2, .pt_about_text h2 { font-size: 30px; }
  .pt_about_item .et_pb_main_blurb_image .et_pb_image_wrap { width: 50px; }
}
.pt_kicker h4, .pt_kicker_plain h4 { font-size: 16px; }
.pt_area_row.et_pb_row { padding: 37px 0px 0px !important; }
.pt_area_card.et_pb_blurb .et_pb_module_header, .pt_area_card.et_pb_blurb .et_pb_module_header a { font-size: 26px; }
.pt_area_card.et_pb_blurb { background-color: rgb(255, 255, 255); }
.pt_area_card { box-shadow: rgba(21, 24, 52, 0.1) 0px 10px 60px 0px; }
.pt_area_card .et_pb_main_blurb_image .et_pb_image_wrap { width: 70px; }
.pt_area_card .et_pb_blurb_content { max-width: 640px; }
.pt_photo.et_pb_section { background-color: rgb(246, 246, 247) !important; }
.pt_photo_image, .pt_cov_image { padding-right: 5%; text-align: left; margin-left: 0px; }
.pt_photo_image .et_pb_image_wrap { box-shadow: rgba(21, 24, 52, 0.2) 0px 20px 60px 0px; }
.pt_photo_inner.et_pb_row_inner { padding: 44.5625px 0px 20px !important; }
.et_pb_column .pt_photo_inner { padding: 44.5625px 0px 20px; }
.pt_photo_text h2, .pt_cov_title h2, .pt_cov_heading h2 { font-size: 53px; }
.pt_photo_box.et_pb_blurb { background-color: rgb(255, 255, 255); border-width: 1px; border-color: rgba(189, 189, 192, 0.3); padding-top: 30px !important; padding-bottom: 30px !important; }
.pt_photo_box.et_pb_blurb .et_pb_main_blurb_image { margin-bottom: 0px; }
.pt_photo_box .et_pb_main_blurb_image .et_pb_image_wrap { width: 80px; }
.pt_cov_title { max-width: 500px; }
.pt_cov_heading { max-width: 500px; padding-bottom: 0px !important; margin-bottom: 0px !important; }
.pt_cov_cols.et_pb_row_inner { padding-top: 0px !important; margin-top: 0px !important; }
.et_pb_column .pt_cov_cols { padding-top: 0px; }
.pt_list_text { padding-top: 0px !important; padding-bottom: 0px !important; margin-top: 0px !important; margin-bottom: 0px !important; }
.pt_cov_title.et_pb_module, .pt_cov_heading.et_pb_module { margin-left: auto !important; margin-right: 0px !important; }
@media only screen and (max-width: 980px) {
  .pt_kicker h4, .pt_kicker_plain h4 { font-size: 14px; }
  .pt_area_card .et_pb_main_blurb_image .et_pb_image_wrap { width: 70px; }
  .pt_photo_image, .pt_cov_image { text-align: center; margin-left: auto; margin-right: auto; }
  .pt_photo_image .et_pb_image_wrap img, .pt_cov_image .et_pb_image_wrap img { width: auto; }
  .pt_photo_text h2, .pt_cov_title h2, .pt_cov_heading h2 { font-size: 42px; }
}
@media only screen and (max-width: 767px) {
  .pt_kicker h4, .pt_kicker_plain h4 { font-size: 12px; }
  .pt_area_card .et_pb_main_blurb_image .et_pb_only_image_mode_wrap, .pt_area_card .et_pb_main_blurb_image .et-pb-icon { margin-right: -5px !important; margin-left: -20px !important; }
  .pt_area_card .et_pb_main_blurb_image .et_pb_image_wrap { width: 50px; }
  .pt_photo_image .et_pb_image_wrap img, .pt_cov_image .et_pb_image_wrap img { width: auto; }
  .pt_photo_text h2, .pt_cov_title h2, .pt_cov_heading h2 { font-size: 30px; }
  .pt_cov_heading h4, .pt_city_heading h4 { font-size: 16px; }
}
div.et_pb_section.pt_hero { background-image: initial !important; }
.pt_hero.et_pb_section { padding: 0px 0px 50px; background-color: rgba(11, 16, 36, 0.8) !important; }
.pt_hero_row.et_pb_row { padding-top: 200px !important; }
.pt_hero_text.et_pb_text { color: rgba(255, 255, 255, 0.49) !important; }
.pt_hero_text { font-size: 24px; }
.pt_hero_text h2 { font-size: 53px; }
.pt_hero_line_row, body #page-container .et-db #et-boc .et-l .pt_hero_line_row.et_pb_row, body.et_pb_pagebuilder_layout.single #page-container #et-boc .et-l .pt_hero_line_row.et_pb_row, body.et_pb_pagebuilder_layout.single.et_full_width_page #page-container #et-boc .et-l .pt_hero_line_row.et_pb_row { width: 100%; max-width: 100%; }
.pt_hero_line::before { border-top-color: rgba(255, 255, 255, 0.1); }
@media only screen and (max-width: 980px) {
  .pt_hero_text h2 { font-size: 42px; }
}
@media only screen and (max-width: 767px) {
  .pt_hero_text h2 { font-size: 30px; }
}
.pt_pi.et_pb_section { padding-top: 0px; padding-bottom: 0px; }
.pt_pi_row.et_pb_row { padding-top: 0px !important; padding-bottom: 0px !important; }
.pt_pi_kicker h4, .pt_kicker_bare h4, .pt_kicker h4 { font-size: 16px; }
.pt_pi_kicker { margin-top: 100px !important; }
.pt_pi_title h2, .pt_award_title h2, .pt_multi_text h2, .pt_cta_deep_text h2, .pt_area_head h2, .pt_testi_title h2, .pt_article_text h2 { font-size: 53px; }
.pt_pi_image { text-align: left; margin-left: 0px; margin-top: -100px !important; }
.pt_award_image, .pt_badge { text-align: left; margin-right: 0px !important; margin-left: 0px !important; }
.pt_multi_text { margin-bottom: -10px !important; }
.pt_contact_item.et_pb_blurb .et_pb_module_header, .pt_contact_item.et_pb_blurb .et_pb_module_header a { color: rgb(173, 163, 116) !important; line-height: 0.5em; }
.pt_contact_item.et_pb_blurb { font-size: 20px; color: rgb(0, 0, 0) !important; }
.pt_cta_deep.et_pb_section { padding: 40px 0px 50px; background-color: rgb(11, 16, 36) !important; }
.pt_cta_deep_text.et_pb_text { color: rgba(255, 255, 255, 0.49) !important; }
.pt_cta_deep_text { font-size: 24px; line-height: 1.4em; }
.pt_area_row_wide.et_pb_row { padding: 37px 0px 0px !important; }
.pt_testi.et_pb_section { padding: 80px 0px; }
.pt_testi_title { max-width: 75%; }
.pt_testi_button_row.et_pb_row { padding: 0px !important; }
.pt_testi_button_wrapper { margin-top: -90px !important; }
.pt_testi_row.et_pb_row { margin-top: 20px !important; }
.pt_testi_card.et_pb_testimonial .et_pb_testimonial_content, .pt_testi_card_next.et_pb_testimonial .et_pb_testimonial_content { font-style: italic; font-size: 16px; line-height: 1.6em; text-align: center; color: rgba(27, 33, 58, 0.6) !important; }
.pt_testi_card.et_pb_testimonial, .pt_testi_card_next.et_pb_testimonial { background-color: rgb(246, 246, 247); }
.pt_testi_card .et_pb_testimonial_portrait::before, .pt_testi_card_next .et_pb_testimonial_portrait::before { box-shadow: rgba(0, 0, 0, 0.17) 0px 2px 18px 0px; }
.pt_testi_card.et_pb_testimonial::before, .pt_testi_card_next.et_pb_testimonial::before { color: rgb(233, 229, 223); background-color: rgba(0, 0, 0, 0); }
.pt_testi_card.et_pb_testimonial .et_pb_testimonial_portrait, .pt_testi_card_next.et_pb_testimonial .et_pb_testimonial_portrait { display: inline-block; float: inherit; margin-right: 0px; margin-bottom: 20px; margin-top: -70px; }
.pt_testi_card.et_pb_testimonial .et_pb_testimonial_description, .pt_testi_card_next.et_pb_testimonial .et_pb_testimonial_description { margin-left: 0px !important; }
.pt_testi_card.et_pb_testimonial .et_pb_testimonial_author, .pt_testi_card_next.et_pb_testimonial .et_pb_testimonial_author { border-top: 1px solid rgb(237, 237, 237); padding-top: 20px; margin-top: 30px; font-style: normal; font-size: 18px; color: rgb(175, 164, 110) !important; }
.pt_testi_title.et_pb_module { margin-left: 0px !important; margin-right: auto !important; }
@media only screen and (min-width: 981px) {
  .pt_pi_image { width: 140%; }
}
@media only screen and (max-width: 980px) {
  .pt_pi_kicker h4, .pt_kicker_bare h4, .pt_kicker h4 { font-size: 14px; }
  .pt_pi_title h2, .pt_award_title h2, .pt_multi_text h2, .pt_cta_deep_text h2, .pt_area_head h2, .pt_testi_title h2, .pt_article_text h2 { font-size: 42px; }
  .pt_pi_image { margin-top: 0px !important; width: 100%; }
  .pt_pi_image .et_pb_image_wrap img, .pt_award_image .et_pb_image_wrap img, .pt_badge .et_pb_image_wrap img { width: auto; }
  .pt_award_image, .pt_badge { padding-right: 0px; padding-left: 0px; width: 130%; margin-left: -10px !important; }
  .pt_testi_button_wrapper { margin-top: -10px !important; margin-bottom: 20px !important; }
  .pt_testi_card_next.et_pb_testimonial { margin-top: 50px !important; }
}
@media only screen and (max-width: 767px) {
  .pt_pi_kicker h4, .pt_kicker_bare h4, .pt_kicker h4 { font-size: 12px; }
  .pt_pi_title h2, .pt_award_title h2, .pt_multi_text h2, .pt_cta_deep_text h2, .pt_area_head h2, .pt_testi_title h2, .pt_article_text h2 { font-size: 30px; }
  .pt_pi_image { margin-top: 0px !important; }
  .pt_pi_image .et_pb_image_wrap img, .pt_award_image .et_pb_image_wrap img, .pt_badge .et_pb_image_wrap img { width: auto; }
  .pt_award_image, .pt_badge, .pt_badge_col { padding-right: 0px; padding-left: 0px; }
  .pt_cta_deep_text { font-size: 21px; }
  .pt_area_row_wide, body #page-container .et-db #et-boc .et-l .pt_area_row_wide.et_pb_row, body.et_pb_pagebuilder_layout.single #page-container #et-boc .et-l .pt_area_row_wide.et_pb_row, body.et_pb_pagebuilder_layout.single.et_full_width_page #page-container #et-boc .et-l .pt_area_row_wide.et_pb_row, .pt_area_row_wide_last, body #page-container .et-db #et-boc .et-l .pt_area_row_wide_last.et_pb_row, body.et_pb_pagebuilder_layout.single #page-container #et-boc .et-l .pt_area_row_wide_last.et_pb_row, body.et_pb_pagebuilder_layout.single.et_full_width_page #page-container #et-boc .et-l .pt_area_row_wide_last.et_pb_row { width: 90%; }
  .pt_testi_button_wrapper { margin-top: -20px !important; }
  .pt_badges_row, body #page-container .et-db #et-boc .et-l .pt_badges_row.et_pb_row, body.et_pb_pagebuilder_layout.single #page-container #et-boc .et-l .pt_badges_row.et_pb_row, body.et_pb_pagebuilder_layout.single.et_full_width_page #page-container #et-boc .et-l .pt_badges_row.et_pb_row { width: 95%; }
}
.pt_article_text h2 { font-size: 53px; color: rgb(175, 164, 109) !important; }
.pt_article_image { text-align: left; margin-left: 0px; }
.pt_article_block h2, .pt_article_aside h2 { font-size: 50px; color: rgb(175, 164, 109) !important; }
.pt_article_block h5 { line-height: 0em; }
.pt_article_image_half { width: 50%; text-align: left; margin-left: 0px; }
.pt_article_aside h5 { line-height: 0.5em; }
@media only screen and (max-width: 980px) {
  .pt_article_text h2 { font-size: 42px; }
  .pt_article_image .et_pb_image_wrap img, .pt_article_image_half .et_pb_image_wrap img { width: auto; }
  .pt_article_block h2, .pt_article_aside h2 { font-size: 40px; }
}
@media only screen and (max-width: 767px) {
  .pt_article_text h2 { font-size: 30px; }
  .pt_article_image .et_pb_image_wrap img, .pt_article_image_half .et_pb_image_wrap img { width: auto; }
  .pt_article_block h2, .pt_article_aside h2 { font-size: 25px; }
}
.pt_story_title h2 { font-size: 53px; color: rgb(175, 164, 109) !important; }
.pt_story_image { max-width: 85%; text-align: center; }
.pt_story_heading h2 { font-size: 50px; color: rgb(175, 164, 109) !important; }
.pt_story_photo { max-width: 79%; text-align: left; margin-left: 0px; }
.pt_story_photo.et_pb_module { margin-left: auto !important; margin-right: auto !important; }
@media only screen and (max-width: 980px) {
  .pt_story_title h2 { font-size: 42px; }
  .pt_story_image .et_pb_image_wrap img, .pt_story_photo .et_pb_image_wrap img { width: auto; }
  .pt_story_heading h2 { font-size: 40px; }
}
@media only screen and (max-width: 767px) {
  .pt_story_title h2 { font-size: 30px; }
  .pt_story_image .et_pb_image_wrap img, .pt_story_photo .et_pb_image_wrap img { width: auto; }
  .pt_story_heading h2 { font-size: 25px; }
}
.pt_cinfo.et_pb_section { padding-top: 0px; padding-bottom: 0px; }
.pt_cinfo_row.et_pb_row { padding: 40px 0px 24px !important; }
.pt_cinfo_blurb .et-pb-icon { color: rgb(175, 164, 110); font-family: ETmodules !important; font-weight: 400 !important; }
.pt_msg.et_pb_section { padding: 80px 0px; background-color: rgb(246, 246, 247) !important; }
.pt_msg_row.et_pb_row { padding: 0px 0px 40px !important; }
.pt_msg_row, body #page-container .et-db #et-boc .et-l .pt_msg_row.et_pb_row, body.et_pb_pagebuilder_layout.single #page-container #et-boc .et-l .pt_msg_row.et_pb_row, body.et_pb_pagebuilder_layout.single.et_full_width_page #page-container #et-boc .et-l .pt_msg_row.et_pb_row, .pt_msg_form_row, body #page-container .et-db #et-boc .et-l .pt_msg_form_row.et_pb_row, body.et_pb_pagebuilder_layout.single #page-container #et-boc .et-l .pt_msg_form_row.et_pb_row, body.et_pb_pagebuilder_layout.single.et_full_width_page #page-container #et-boc .et-l .pt_msg_form_row.et_pb_row { max-width: 800px; }
.pt_msg_photo .et_pb_image_wrap { border-radius: 200px; overflow: hidden; box-shadow: rgba(0, 0, 0, 0.08) 0px 2px 25px 0px; }
.pt_msg_photo { max-width: 160px; text-align: left; margin-left: 0px; margin-top: 30px !important; }
.pt_msg_text { font-size: 19px; line-height: 1.6em; padding-top: 50px !important; padding-right: 60px !important; }
.pt_msg_form.et_pb_contact_form_container h1, .pt_msg_form.et_pb_contact_form_container h2.et_pb_contact_main_title, .pt_msg_form.et_pb_contact_form_container h3.et_pb_contact_main_title, .pt_msg_form.et_pb_contact_form_container h4.et_pb_contact_main_title, .pt_msg_form.et_pb_contact_form_container h5.et_pb_contact_main_title, .pt_msg_form.et_pb_contact_form_container h6.et_pb_contact_main_title { text-align: center; }
.pt_msg_form .et_pb_contact_field input, .pt_msg_form .et_pb_contact_field select, .pt_msg_form .et_pb_contact_field textarea, .pt_msg_form .et_pb_contact_field .et_pb_contact_field_options_list label > i, .pt_msg_form input.et_pb_contact_captcha { box-shadow: rgba(0, 0, 0, 0.06) 0px 2px 13px 0px; }
.pt_msg_textcol { background-size: initial; background-position: right 0px top; background-image: url("../images/wp/2018/08/quote-mark-small.png"); }
.pt_msg_photo.et_pb_module { margin-left: auto !important; margin-right: auto !important; }
@media only screen and (max-width: 980px) {
  .pt_msg_photo { text-align: center; margin-left: auto; margin-right: auto; }
  .pt_msg_photo .et_pb_image_wrap img { width: auto; }
}
@media only screen and (max-width: 767px) {
  .pt_msg_photo .et_pb_image_wrap img { width: auto; }
}
.pt_map .gm-style > div > div > div > div > div > img { mix-blend-mode: multiply; backface-visibility: hidden; filter: hue-rotate(147deg) saturate(0%) brightness(106%) contrast(107%) invert(4%) sepia(17%); }
html:not(.et_fb_edit_enabled) #et-fb-app .pt_map:hover .gm-style > div > div > div > div > div > img { filter: hue-rotate(147deg) saturate(0%) brightness(106%) contrast(107%) invert(4%) sepia(17%); }
.pt_map .gm-style > div > div > div > div > div > img:hover { mix-blend-mode: multiply; backface-visibility: hidden; }
.pt_aintro_image { padding-left: 20%; text-align: left; margin-left: 0px; }
.pt_aintro_image .et_pb_image_wrap { box-shadow: rgba(21, 24, 52, 0.2) 0px 20px 60px 0px; }
.pt_aintro_inner.et_pb_row_inner { padding: 44.5625px 0px 20px !important; }
.et_pb_column .pt_aintro_inner { padding: 44.5625px 0px 20px; }
.pt_aintro_title h2, .pt_profile_title h2 { font-size: 53px; }
.pt_aintro_blurb.et_pb_blurb { border-width: 1px; border-color: rgb(189, 189, 192); padding-top: 30px !important; padding-bottom: 30px !important; }
.pt_aintro_blurb.et_pb_blurb .et_pb_main_blurb_image { margin-bottom: 0px; }
.pt_aintro_blurb .et_pb_main_blurb_image .et_pb_image_wrap { width: 80px; }
.pt_profile_textcol { padding-top: 250px; }
.pt_profile_name.et_pb_text { color: rgb(175, 164, 110) !important; }
.pt_profile_name { font-family: Montserrat, Helvetica, Arial, Lucida, sans-serif; font-size: 16px; line-height: 1em; border-right-width: 1px; padding-right: 20px !important; }
.pt_profile_sign { margin-left: 0px; }
.pt_profile_photo { text-align: left; margin-left: 0px; }
.pt_profile_namecol { padding-top: 50px; }
@media only screen and (max-width: 980px) {
  .pt_aintro_image, .pt_profile_sign, .pt_profile_photo { text-align: center; margin-left: auto; margin-right: auto; }
  .pt_aintro_image .et_pb_image_wrap img, .pt_profile_sign .et_pb_image_wrap img, .pt_profile_photo .et_pb_image_wrap img { width: auto; }
  .pt_aintro_title h2, .pt_profile_title h2 { font-size: 42px; }
  .et_pb_row > .et_pb_column.pt_profile_textcol { padding-top: 0px; }
  .pt_profile_name { border-right-width: 1px; }
}
@media only screen and (max-width: 767px) {
  .pt_aintro_image .et_pb_image_wrap img, .pt_profile_sign .et_pb_image_wrap img, .pt_profile_photo .et_pb_image_wrap img { width: auto; }
  .pt_aintro_title h2, .pt_profile_title h2 { font-size: 30px; }
  .pt_profile_name { border-right-width: 1px; }
}
.pt_quotes.et_pb_section { background-color: rgb(246, 246, 247) !important; }
.pt_quotes_title h2 { font-size: 53px; }
.pt_quotes_row { background-color: rgb(255, 255, 255); box-shadow: rgba(0, 54, 96, 0.07) 0px 2px 18px 0px; }
.pt_quotes_row.et_pb_row { padding: 0px !important; margin-top: 60px !important; }
.pt_quotes_logo_l { background-size: contain; }
.pt_quotes_text_r { background-size: initial; background-position: right 0px top; background-image: url("../images/wp/2018/08/quote-mark-small.png"); padding: 40px 80px 40px 20px; }
.pt_quotes_text_l { background-size: initial; background-position: left top; background-image: url("../images/wp/2018/08/quote-mark-small.png"); padding: 60px 30px 30px 60px; }
.pt_quotes_logo_r { background-size: contain; padding-right: 0px; padding-left: 0px; }
@media only screen and (max-width: 980px) {
  .pt_quotes_title h2 { font-size: 42px; }
  .pt_quotes_logo_l, .pt_quotes_logo_r { padding-top: 150px; padding-bottom: 150px; }
  .pt_quotes_text_r { padding: 40px 80px 40px 20px; }
}
@media only screen and (max-width: 767px) {
  .pt_quotes_title h2 { font-size: 30px; }
  .pt_quotes_logo_l { padding-top: 100px; padding-bottom: 100px; }
  .pt_quotes_text_r { padding: 40px 30px 30px; }
  .pt_quotes_logo_r { padding: 100px 30px; }
}
.pt_tgrid.et_pb_section { padding: 80px 0px; }
.pt_tgrid_title h2 { font-size: 53px; }
.pt_tgrid_title { max-width: 75%; }
.pt_tgrid_btnrow.et_pb_row { padding: 0px !important; }
.pt_tgrid_button_wrapper { margin-top: -90px !important; }
.pt_tgrid_row.et_pb_row { margin-top: 20px !important; }
.pt_tgrid_title.et_pb_module { margin-left: 0px !important; margin-right: auto !important; }
@media only screen and (max-width: 980px) {
  .pt_tgrid_title h2 { font-size: 42px; }
}
@media only screen and (max-width: 767px) {
  .pt_tgrid_title h2 { font-size: 30px; }
}
div.et_pb_section.pt_ncards { background-size: initial; background-position: left top; background-image: url("../images/wp/2019/01/light-bg-01.webp") !important; }
.pt_ncards_title h2 { font-size: 53px; }
.pt_ncards_num.et_pb_text { color: rgb(255, 255, 255) !important; }
.pt_ncards_num { font-weight: 600; font-size: 33px; background-color: rgb(0, 10, 30); border-radius: 200px; overflow: hidden; max-width: 60px; position: absolute; width: 60px; height: 60px; top: -30px; left: 48%; z-index: 1; max-height: 60px; padding: 20px !important; }
.pt_ncards_card.et_pb_blurb .et_pb_module_header, .pt_ncards_card.et_pb_blurb .et_pb_module_header a, .pt_ncards_card.et_pb_blurb .et_pb_blurb_description { text-align: center; }
.pt_ncards_card.et_pb_blurb { background-color: rgb(247, 247, 247); max-width: 900px; padding: 60px 40px 50px !important; margin-bottom: 5px !important; position: relative !important; }
.pt_ncards_card { transition: margin 300ms; }
.pt_ncards_card .et_pb_blurb_content { max-width: 700px; }
.pt_ncards_card .et-pb-icon { color: rgb(175, 164, 110); }
.pt_ncards_head.et_pb_row, .pt_ncards_row_first.et_pb_row { padding: 40px 0px 50px !important; margin-left: auto !important; margin-right: auto !important; }
.pt_ncards_num.et_pb_module, .pt_ncards_card.et_pb_blurb.et_pb_module { margin-left: auto !important; margin-right: auto !important; }
.pt_ncards_card.et_pb_blurb:hover { z-index: auto; margin-top: 5px !important; margin-bottom: 0px !important; }
.pt_ncards_row.et_pb_row { padding: 0px 0px 50px !important; margin-left: auto !important; margin-right: auto !important; }
@media only screen and (max-width: 980px) {
  .pt_ncards_title h2 { font-size: 42px; }
}
@media only screen and (max-width: 767px) {
  .pt_ncards_title h2 { font-size: 30px; }
}
.pt_qc.et_pb_section { background-color: rgb(246, 246, 247) !important; }
.pt_qc_text { max-width: 600px; padding-top: 40px !important; padding-left: 60px !important; }
.pt_qc_blurb.et_pb_blurb .et_pb_module_header, .pt_qc_blurb.et_pb_blurb .et_pb_module_header a { font-weight: 300; font-size: 20px; }
.pt_qc_blurb.et_pb_blurb p { line-height: 1.8em; }
.pt_qc_blurb.et_pb_blurb { font-size: 16px; line-height: 1.8em; padding-left: 60px !important; margin-bottom: 10px !important; }
.pt_qc_blurb .et_pb_main_blurb_image .et_pb_only_image_mode_wrap, .pt_qc_blurb .et_pb_main_blurb_image .et-pb-icon { border-radius: 100%; overflow: hidden; background-color: rgb(175, 164, 110); padding: 8px !important; }
.pt_qc_blurb .et-pb-icon { font-size: 13px; color: rgb(255, 255, 255); font-family: ETmodules !important; font-weight: 400 !important; }
.pt_qc_blurb .et_pb_blurb_content { max-width: 100%; }
.pt_tlist.et_pb_section { padding-right: 124px; }
.pt_qc_card { background-color: rgb(255, 255, 255); padding-bottom: 40px; box-shadow: rgba(21, 24, 52, 0.1) 0px 10px 60px 0px; }
.pt_qc_text.et_pb_module { margin-left: 0px !important; margin-right: auto !important; }
@media only screen and (max-width: 980px) {
  .pt_qc_text h1 { font-size: 40px; }
}
@media only screen and (max-width: 767px) {
  .pt_qc_text h1 { font-size: 40px; }
  .pt_qc_text { padding-right: 30px !important; padding-left: 30px !important; }
  .pt_qc_blurb.et_pb_blurb { padding-left: 30px !important; }
}

/* 部品の枠（セクション）。数値はお手本のセクションと同じ */
.pt_sec_navy.et_pb_section { background-color: rgb(27, 33, 58) !important; } /* お手本 et_pb_section_11 の背景 */
.pt_sec_large.et_pb_section { padding: 80px 0px; } /* お手本 et_pb_section_10 の余白 */

/* 口コミを2列に並べたとき、タブレット以下で2つ目の上に余白（お手本 et_pb_testimonial_1） */
@media only screen and (max-width: 980px) {
  .et_pb_column + .et_pb_column > .pt_testimonial.et_pb_testimonial { margin-top: 50px !important; }
}

/* 動き（site.js が xa-wait → xa-run に切り替える）。数値はお手本と同じ */
@keyframes pt_zoom_divider{from{opacity:1;transform:scale3d(0,0,0)}to{opacity:1;transform:none}}
.pt_stat_divider.xa-wait{opacity:1;transform:scale3d(0,0,0)}
.pt_stat_divider.xa-run{animation:pt_zoom_divider 2000ms ease-in-out 200ms both}
@keyframes pt_zoom_card{from{opacity:0;transform:scale3d(0.95,0.95,0.95)}to{opacity:1;transform:none}}
.pt_service.xa-wait{opacity:0;transform:scale3d(0.95,0.95,0.95)}
.pt_service.xa-run{animation:pt_zoom_card 1200ms ease-in-out 400ms both}

/* 下層ページの一番上の帯：透明のヘッダーが帯に重なるので、ヘッダーの高さの分だけ上の余白を足す。
   本番のDiviのJSと同じ計算（帯の余白 100px／50px ＋ ヘッダーの内側の高さ − 1px）。--pt-header-h は site.js がヘッダーを測って入れる。
   入る前に使う値は、このサイトのヘッダーの高さ（パソコン 75px・タブレットとスマホ 80px） */
.pt_banner.et_pb_section { padding-top: calc(100px + var(--pt-header-h, 75px) - 1px); }
/* 地域ページの一番上の帯（HeroBanner）も同じ。帯の余白は 0 なので、ヘッダーの高さ − 1px だけ（本番のDiviのJSと同じ） */
.pt_hero.et_pb_section { padding-top: calc(var(--pt-header-h, 75px) - 1px); }
/* 帯なしで始まるページ（Disclaimer・FAQ など。Section first）の最初のセクションも同じ。セクションの標準の余白（4%／50px）＋ ヘッダーの高さ − 1px */
.pt_sec_first.et_pb_section { padding-top: calc(4% + var(--pt-header-h, 75px) - 1px); }
@media only screen and (max-width: 980px) {
  .pt_banner.et_pb_section { padding-top: calc(50px + var(--pt-header-h, 80px) - 1px); }
  .pt_hero.et_pb_section { padding-top: calc(var(--pt-header-h, 80px) - 1px); }
  .pt_sec_first.et_pb_section { padding-top: calc(50px + var(--pt-header-h, 80px) - 1px); }
}

/* 全幅の地図（MapBand）。本番はGoogleマップのプログラム（APIキーが必要）で、地図の画像に色の調整をかけている。
   Astroは埋め込みの地図（iframe）なので、同じ色の調整を地図全体にかける。本番と同じく、押すとGoogleのページを開く（地図は動かさない） */
.pt_map iframe { display: block; width: 100%; height: 100%; border: 0; pointer-events: none; filter: hue-rotate(147deg) saturate(0%) brightness(106%) contrast(107%) invert(4%) sepia(17%); }
.pt_map > a { display: block; height: 100%; }

/* 年表（Timeline・CaseTimeline）。オーナー判断（2026-09-26）で、本番の別デザイン（別の字体・金色）ではなく、サイト共通の見た目にそろえた。
   お手本の部品はないので、色・線の太さは今ある値を使う：線は金（DESIGN.md の「金」）・2px（数字の帯の線と同じ）。字は小見出し pt_kicker_plain と見出し h3・本文のまま */
.pt_tl_list { border-left: 2px solid rgb(175, 164, 110); padding-left: 40px; }
.pt_tl_list > .et_pb_module:last-child { margin-bottom: 0 !important; }
/* 年表の日付・事例の名前は、小見出し（secondary-heading）と同じ字・色。横の点線だけ付けない（site.css の .secondary-heading h4 と同じ値） */
.pt_tl_list .pt_kicker_plain h4 { font-family: Montserrat, Helvetica, Arial, Lucida, sans-serif; font-weight: 700; color: rgb(175, 164, 110) !important; }
@media only screen and (max-width: 767px) {
  .pt_tl_list { padding-left: 20px; }
}

/* 電話の帯のボタン（お手本：サービスページ et_pb_button_1。50%の大きさ・透明から1秒） */
@keyframes pt_zoom_call{from{opacity:0;transform:scale3d(0.5,0.5,0.5)}to{opacity:1;transform:none}}
.pt_call_button.xa-wait{opacity:0;transform:scale3d(0.5,0.5,0.5)}
.pt_call_button.xa-run{animation:pt_zoom_call 1000ms ease-in-out 0ms both}

/* 地域ページの一番上の見出しは金色（本番：ハリウッドは文字に金色の指定、LA空港などはCSSで金色 rgb(175, 164, 109)。どのページも金色なので部品で金色にする。本番と同じく !important：暗い帯の見出しを白にする共通のルールより強くする） */
.pt_hero_text h2 { color: rgb(175, 164, 109) !important; }

/* サイドバーの問い合わせフォーム（ContactForm dark）。本番のWPFormsのブロックの設定（#wpforms-29323.wpforms-block-…）をそのまま写したもの */
.pt_form_dark { --wpforms-button-background-color: #000000; --wpforms-field-size-input-height: 43px; --wpforms-field-size-input-spacing: 15px; --wpforms-field-size-font-size: 16px; --wpforms-field-size-line-height: 19px; --wpforms-field-size-padding-h: 14px; --wpforms-field-size-checkbox-size: 16px; --wpforms-field-size-sublabel-spacing: 5px; --wpforms-field-size-icon-size: 1; --wpforms-label-size-font-size: 16px; --wpforms-label-size-line-height: 19px; --wpforms-label-size-sublabel-font-size: 14px; --wpforms-label-size-sublabel-line-height: 17px; --wpforms-button-size-font-size: 17px; --wpforms-button-size-height: 41px; --wpforms-button-size-padding-h: 15px; --wpforms-button-size-margin-top: 10px; }
/* マウスがない端末（スマホ・タブレット）では、罰則カード（PenaltyCards）の説明をいつも出す（Codexレビュー CR10・2026-09-27 オーナー決定）。
   マウスがある端末は、今までどおり「マウスを乗せると説明が出る」。説明の場所はもともと空けてあるので、高さは変わらない */
@media (hover: none) {
  .pt_pcards .liberty_blurb_eight .et_pb_blurb .et_pb_blurb_description,
  .pt_pcards .liberty_blurb_eight .et_pb_blurb:hover .et_pb_blurb_description { opacity: 1; transform: none; }
  .pt_pcards .liberty_blurb_eight .et_pb_blurb:hover .et_pb_main_blurb_image { opacity: 1; transform: none; }
  .pt_pcards .liberty_blurb_eight .et_pb_blurb:hover .et_pb_blurb_container { transform: none; }
}
/* ===== 1ページに h1 を1つにする（Codexレビュー CR08・2026-09-27 オーナー決定）。見出しの種類だけ変えて、大きさ・色は前と同じ ===== */
/* 前は h1 だった見出し → h2：電話の帯（CallBar）・メッセージ欄（MessageForm）・本文の中（pt_h1_size） */
.pt_call_title h2 { font-size: 40px; color: rgb(255, 255, 255) !important; }
.pt_msg_form.et_pb_contact_form_container h2.et_pb_contact_main_title { font-size: 40px; }
h2.pt_h1_size { font-size: 40px; }
/* 前は h2 だったページの題名 → h1：地域・California の一番上（HeroBanner）、FAQ（NumberedCards first）、Testimonials（QuoteRows first） */
.pt_hero_text h1 { font-size: 53px; color: rgb(175, 164, 109) !important; }
.pt_ncards_title h1, .pt_quotes_title h1 { font-size: 53px; }
@media only screen and (max-width: 980px) {
  .pt_call_title h2 { font-size: 38px; }
  h2.pt_h1_size { font-size: 50px; }
  .pt_hero_text h1, .pt_ncards_title h1, .pt_quotes_title h1 { font-size: 42px; }
}
@media only screen and (max-width: 767px) {
  .pt_call_title h2 { font-size: 32px; }
  .pt_hero_text h1, .pt_ncards_title h1, .pt_quotes_title h1 { font-size: 30px; }
}
/* 題名が画面に出ていないページ（Disclaimer・Privacy Policy）の h1：画面には出さず、読み上げソフトと検索エンジンにだけ伝える */
.pt_sr_only { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
/* 本文に直接書いていた色・文字の大きさを、クラスに置き換えた（Codexレビュー CR09・2026-09-27 オーナー決定）。見た目は前と同じ。金色の強調は <mark> にした */
.pt_hero_text .pt_white { color: rgb(255, 255, 255); }
.pt_small { font-size: 14px; }
.pt_toggle_note { font-size: 14px; font-weight: 400; color: rgb(163, 164, 168); font-family: Lora, Georgia, "Times New Roman", serif; }
/* 事例の年表（CaseTimeline）の丸い印（オーナーの依頼 2026-09-29）。本番の Success Stories の「縦線の上の印が、画面に入ると上からふわっと出る」を、サイト共通の金色で作った。
   印は縦線（.pt_tl_list の左の線）の真ん中にのせる（左の余白 40px＋線の半分 1px＋印の半分 9px）。
   画面に入ると上からふわっと出る（et-waypoint・1秒。本番と同じ動き）。画面の上から60%より上に来ると金色に点灯する（site.js の 7-3） */
.pt_tl_head { position: relative; }
.pt_tl_dot { position: absolute; left: -50px; top: 5px; width: 18px; height: 18px; box-sizing: border-box; border-radius: 50%; border: 2px solid rgb(175, 164, 110); background-color: rgb(246, 246, 247); transition: background-color 0.5s ease, box-shadow 0.5s ease; }
.pt_tl_dot.is-on { background-color: rgb(175, 164, 110); box-shadow: 0 0 0 5px rgba(175, 164, 110, 0.2); }
@media only screen and (max-width: 767px) {
  .pt_tl_dot { left: -30px; }
}
@media (prefers-reduced-motion: reduce) {
  .pt_tl_dot { transition: none; }
}
/* ===== 地域ページ20件（2026-09-29 追加。/locations/…）。色・字・線は今ある値だけ（金 #afa46e・線 2px・カードの影・カードの見出し 26px・内側の余白 40px） ===== */
/* パンくず（HeroBanner の crumbs）：見出しの上に小さく。リンクは金、今のページは白 */
.pt_crumbs { margin: 0 0 20px; }
.pt_crumbs ol { list-style: none !important; margin: 0; padding: 0 !important; display: flex; flex-wrap: wrap; justify-content: center; font-size: 14px; line-height: 1.5; letter-spacing: 1px; }
.pt_crumbs li { padding: 0 !important; }
.pt_crumbs li + li::before { content: "›"; margin: 0 8px; color: rgba(255, 255, 255, 0.49); }
.pt_crumbs a { color: rgb(175, 164, 110); }
.pt_crumbs span { color: rgb(255, 255, 255); }
/* 情報のカード（InfoCards）：業務のカード（pt_area_card）と同じ白・影・見出し。上に金の線、動く飾りなし */
.pt_info_card.et_pb_blurb { border-top: 2px solid rgb(175, 164, 110); height: 100%; margin-bottom: 0 !important; }
.pt_info_card .et_pb_blurb_content { padding: 40px; max-width: none; }
.pt_info_card .et_pb_module_header { padding-bottom: 10px; }
.pt_info_label { font-family: Montserrat, Helvetica, Arial, Lucida, sans-serif; font-weight: 700; font-size: 12px; letter-spacing: 1px; text-transform: uppercase; color: rgb(175, 164, 110); padding-bottom: 10px; }
.pt_info_card .et_pb_blurb_description ul { padding-left: 1.2em; }
.pt_info_card .et_pb_blurb_description p:last-child { padding-bottom: 0; }
@media only screen and (max-width: 980px) {
  .pt_info_row .et_pb_column { margin-bottom: 30px !important; }
  .pt_info_row .et_pb_column:last-child { margin-bottom: 0 !important; }
}
@media only screen and (max-width: 767px) {
  .pt_info_card .et_pb_blurb_content { padding: 30px; }
}
/* 年表の大見出し（Timeline・CaseTimeline の title） */
.pt_tl_title.et_pb_module { margin-bottom: 30px !important; }
/* 出典の一覧（SourcesNote） */
.pt_sources_list { padding-left: 1.2em !important; }
.pt_sources_list li { padding-bottom: 6px; }
/* 地域ページの一覧の検索（LocationSearch。オーナー依頼 2026-09-29）：欄は問い合わせフォームと同じ見た目（site.css の wpforms）。ここでは隠す・並べる設定だけ */
.pt_loc_hidden { display: none !important; }
.pt_loc_match { padding-top: 10px; }
/* ===== Codexデザインレビューの「必須」の直し（2026-09-29 オーナー「必須の指摘を直して」。../16_Codexデザインレビュー（全ページ）.md） =====
   色・文字の大きさは今ある値だけ（紺 #0b1024・フッターのグレー #8e8f98・白・50px） */
/* D02 金のボタンの文字：白（明暗差 2.5）→ 紺（7.5。読みやすさの基準 WCAG AA の 4.5 以上）。マウスを乗せたときも紺。カカオ・LINE のボタンは下で別に */
body #page-container .et_pb_button:not(.pt_button_kakao):not(.pt_button_line):not(.et_pb_button_5):not(.et_pb_button_6),
body #page-container .et_pb_button:not(.pt_button_kakao):not(.pt_button_line):not(.et_pb_button_5):not(.et_pb_button_6):hover { color: rgb(11, 16, 36) !important; }
/* D02 ヘッダーの電話のボタン（金の地）も紺の文字 */
#main-header #top-menu li.menu-item-1041 > a, #main-header #top-menu li.menu-item-1041 > a:hover { color: rgb(11, 16, 36) !important; }
/* D02 LINE のボタン：薄い緑の地に緑の文字（1.9）→ 紺の文字（地の色はそのまま） */
body #page-container .et_pb_section a.pt_button_line.et_pb_button, body #page-container .et_pb_section a.et_pb_button_6.et_pb_button { color: rgb(11, 16, 36) !important; } /* トップページ専用の home.css があとから読まれるので、指定を1段強く */
/* D02 フッターのSNSのアイコン：白の上の薄いグレー（1.4）→ フッターのリンクのグレー（3.2。アイコンの基準 3 以上）。マウスを乗せると金のまま */
.liberty_social_follow li a.icon::before { color: rgb(142, 143, 152) !important; }
.liberty_social_follow li a.icon:hover::before { color: rgb(175, 164, 111) !important; }
/* D02 「Read More」：透明度 0.3 をやめる（いつも見える） */
.more-link { opacity: 1; }
/* D02 電話の帯（CallBar）の補足（Available 24/7 など）：暗い写真の上の濃いグレー → 白 */
.pt_call_sub.et_pb_text { color: rgb(255, 255, 255) !important; }

/* D04 キーボードで選んでいる場所の枠（site.css の :focus { outline: 0 } で消えていた）。マウスで押したときは出ない（:focus-visible）。
   白の上でも紺の上でも見えるように、内側に紺・外側に金の二重の線 */
:focus-visible { outline: 3px solid rgb(175, 164, 110); outline-offset: 2px; box-shadow: 0 0 0 2px rgb(11, 16, 36); }

/* D03 開閉ボックスの題名（site.js が文字をボタンで包む）：ボタンの見た目を消して、前と同じ見た目にする */
.pt_toggle_btn { display: block; width: 100%; margin: 0; padding: 0; border: 0; background: none; font: inherit; color: inherit; letter-spacing: inherit; text-transform: inherit; text-align: inherit; line-height: inherit; cursor: pointer; }
/* D03 パソコンのメニュー：キーボードでメニューの中に入ったら、子メニューも開く（マウスを乗せたときと同じ） */
.nav li:focus-within > ul { opacity: 1; visibility: visible; }

@media only screen and (max-width: 980px) {
  /* D05 よくある質問の長い一覧（ToggleList）：右の余白 124px はパソコンだけ（タブレット・スマホでは文字が細い列に押し込まれていた） */
  .pt_tlist.et_pb_section { padding-right: 0; }
  /* D06 お客様の声の一覧（TestimonialGrid）：ボタンを見出しの横に上げる（-90px）のはパソコンだけ。タブレット・スマホでは見出しの下に置く */
  .pt_tgrid_title.et_pb_text { max-width: 100%; }
  .pt_tgrid_button_wrapper.et_pb_button_module_wrapper { margin-top: 20px !important; }
}

/* D07 弁護士の紹介（AttorneyCall）の数字：パソコンでは白い箱（幅 約180px）に 72px の「2,000+」が入らず、「+」が次の行に落ちて下の文字に重なっていた。
   パソコンだけ 50px（今ある大きさ）にして、改行させない。タブレット・スマホは箱が広いので 72px のまま */
.pt_attorney_counter.et_pb_number_counter .percent p { white-space: nowrap; }
/* D07 のつづき（2026-10-03。仮決め＝決めることボード）：スマホでも、白い箱が数字（72px の「2,000+」は幅 244px）より狭い幅があり、改行させないので「+」が箱の右に出ていた。
   箱が1つずつ縦に並ぶ幅（479px 以下。箱は画面の 72%）では 338px 以下、2つ横に並ぶ幅（480〜767px。箱は画面の約 34%）では 717px 以下（480px では「+」が画面の外まで）。
   その幅だけ、箱に入る今ある大きさ（60・50・40px）にする。区切りは、箱と数字のすき間が左右あわせて約 8px 残る所。
   350〜479px（ふつうのスマホ）・740px 以上は前のまま（72px）。行の高さ（72px）と箱の高さは変えていないので、下の説明の位置は前と同じ */
@media only screen and (max-width: 349px) {
  .pt_attorney_counter.et_pb_number_counter .percent p { font-size: 60px; }
}
@media only screen and (min-width: 480px) and (max-width: 519px) {
  .pt_attorney_counter.et_pb_number_counter .percent p { font-size: 40px; }
}
@media only screen and (min-width: 520px) and (max-width: 619px) {
  .pt_attorney_counter.et_pb_number_counter .percent p { font-size: 50px; }
}
@media only screen and (min-width: 620px) and (max-width: 739px) {
  .pt_attorney_counter.et_pb_number_counter .percent p { font-size: 60px; }
}
@media only screen and (min-width: 981px) {
  .pt_attorney_counter.et_pb_number_counter .percent p { font-size: 50px; }
}
/* 数字の帯（StatsBar）の数字も同じ直し方（2026-10-03。仮決め＝決めることボード）：パソコンの並び（4つ横並び）のうち狭い幅（981〜1279px。iPad の横向き・小さいノートPC）では、
   列の幅が約180〜230pxで、72px の「2,000+」（幅 229px）・60px の「1st tier」（191px）が入らず、2行に折り返して下の説明に重なっていた（本番も同じ：「1,500+」「1st tier」）。
   改行させず、列に入る大きさ（今ある大きさ）にする：981〜1100px＝50px（文字の値 pt_stat_long は 40px）、1101〜1279px＝60px（同 50px）。
   1280px 以上・タブレット・スマホは前のまま（72px・60px）。行の高さ（100px）と箱の高さは変えていないので、帯の高さ・説明の位置は前と同じ */
.pt_stat.et_pb_number_counter .percent p { white-space: nowrap; }
@media only screen and (min-width: 981px) and (max-width: 1100px) {
  .pt_stat.et_pb_number_counter .percent p { font-size: 50px; }
  .pt_stat_long.et_pb_number_counter .percent p { font-size: 40px; }
}
@media only screen and (min-width: 1101px) and (max-width: 1279px) {
  .pt_stat.et_pb_number_counter .percent p { font-size: 60px; }
  .pt_stat_long.et_pb_number_counter .percent p { font-size: 50px; }
}
/* 2つずつ2段の並び（480〜980px）のうち狭い幅（480〜619px。小さいタブレット・折りたたみのスマホ・横向きの小さいスマホ）も、列の幅が約181〜234pxで同じことが起きる
   （元は 480〜605px で「2,000+」が2行に折れて下の説明に重なる。上の「改行させない」だけだと、横にはみ出して隣の数字に近づく。2026-10-03 文字の重なりの点検 check:overlap で見つけた）。
   区切りは上と同じ考え方＝列の幅が約200px 未満（480〜529px）は 50px・約233px 未満（530〜619px）は 60px。620px 以上・479px 以下（1列）は前のまま */
@media only screen and (min-width: 480px) and (max-width: 529px) {
  .pt_stat.et_pb_number_counter .percent p { font-size: 50px; }
  .pt_stat_long.et_pb_number_counter .percent p { font-size: 40px; }
}
@media only screen and (min-width: 530px) and (max-width: 619px) {
  .pt_stat.et_pb_number_counter .percent p { font-size: 60px; }
  .pt_stat_long.et_pb_number_counter .percent p { font-size: 50px; }
}

/* D08 地域ページの一番上の説明文（HeroBanner）：24px の文字に行の高さ 21px（14px の本文の値のまま）で、2行以上だと行が重なっていた → 文字の 1.5 倍 */
.pt_hero_text .et_pb_text_inner p { line-height: 1.5; }

/* ===== Codexデザインレビューの「推奨・任意」の直し（2026-09-30 オーナー「推奨も直して」。../16_Codexデザインレビュー（全ページ）.md）
   色・文字の大きさ・余白は今ある値だけ（紺 #0b1024・本文のグレー #59595b・金・34/30/29/24/12px・44px） ===== */
/* D10 長い記事・規約の本文（Text long）：1行が約1000px（90〜100文字）で読みにくかった → 約800px（英語で70〜80文字）までにして真ん中に置く。
   New DUI Laws の年表（Timeline）の本文も同じ幅まで */
.pt_longform.et_pb_text { max-width: 800px; margin-left: auto !important; margin-right: auto !important; }
.pt_tl_list .et_pb_text_inner { max-width: 800px; }
/* D09 同じ所の見出し：タブレット・スマホでパソコンより大きくなっていた（パソコン 34px・29px → 43px・36px）。
   タブレットはパソコンと同じ、スマホはセクションの大見出しと同じ 30px（小見出しは 24px） */
@media only screen and (max-width: 980px) {
  .pt_longform h2, .pt_tl_list h2 { font-size: 34px; }
  .pt_longform h3, .pt_tl_list h3 { font-size: 29px; }
}
@media only screen and (max-width: 767px) {
  .pt_longform h2, .pt_tl_list h2 { font-size: 30px; }
  .pt_longform h3, .pt_tl_list h3 { font-size: 24px; }
}

/* D11 問い合わせフォーム（ContactForm）：項目名をいつも欄の上に見せる（部品で wpforms-label-hide を外した）。字は本文と同じ 14px・紺（サイドバーの dark も白い地の上なので同じ） */
.wpforms-container .wpforms-form .wpforms-field-label { font-size: 14px; color: rgb(11, 16, 36); }
.wpforms-container .wpforms-form .wpforms-field-label .wpforms-required-label { color: inherit; } /* 必須の * も同じ紺（WPForms の赤はサイトの色にないので使わない。MessageForm とそろえる） */
/* D11 メッセージのフォーム（MessageForm）：入力を始めても項目名を消さず、欄の上のほうに小さく残す（前は横に消えた）。
   項目名の色は薄いグレー（明るさの差 2.2）→ 本文のグレー（6.9）。必須の欄は項目名の後ろに *（読み上げでは読まない） */
.liberty_contact_form .et_pb_contact_form p:not([data-type="checkbox"]) label { color: rgb(89, 89, 91); }
.liberty_contact_form .et_pb_contact_form p.filled label, .liberty_contact_form .et_pb_contact_form p.focus label { opacity: 1; transform: translate3d(0px, -21px, 0px); font-size: 12px; }
.pt_msg_form .et_pb_contact_field:has(> [required]) label::after { content: " *" / ""; }

/* D12 押す所の大きさ：スマホで指で押しやすい高さ（44px 以上）。DMV 計算ツールの日付の簡単ボタン（約35px）と、問い合わせの送信ボタン（41px） */
.dc-chips button { min-height: 44px; }
.et_pb_contact_submit.et_pb_button, .wpforms-container .wpforms-submit { min-height: 44px; }

/* D13 事例の年表（CaseTimeline yearNav）の年の目次：押すとその年へ移動。字は小見出しと同じ（Montserrat・太字）・紺、下に金の線 */
.pt_year_nav ul { list-style: none !important; margin: 0; padding: 0 !important; display: flex; flex-wrap: wrap; gap: 8px 12px; }
.pt_year_nav li { padding: 0 !important; }
.pt_year_nav a { display: inline-block; min-height: 44px; line-height: 44px; padding: 0 12px; font-family: Montserrat, Helvetica, Arial, Lucida, sans-serif; font-weight: 700; font-size: 16px; letter-spacing: 1px; color: rgb(11, 16, 36); border-bottom: 2px solid rgb(175, 164, 110); }
.pt_year_nav a:hover { color: rgb(175, 164, 110); }
/* 年へ移動したとき、上の固定ヘッダーに隠れないように（ヘッダーの高さ＋20px 下に止まる） */
.pt_year_row { scroll-margin-top: calc(var(--pt-header-h, 80px) + 20px); }

/* D14 サービスページの縦長の飾り画像（ServiceStrategy）：タブレットでも出さない（スマホと同じ。細長い画像のまわりに大きな空きができていた） */
@media only screen and (max-width: 980px) {
  .pt_strategy_image { display: none !important; }
}
/* ===== Media ページ・フッター・QR（2026-09-30 オーナー依頼。色・字・影は今ある値だけ） ===== */
/* 動画（VideoCards）：前のトップページの紹介動画（home.css の home_video）と同じ見た目を部品にした。
   表紙の地＝濃紺 #0c1021・影＝DMV RULE の写真と同じ・再生ボタン＝金の四角に白い三角（マウスで少し上に動く -5px）。表紙は枠に収める（縦長のショートは左右が濃紺） */
.pt_video { position: relative; aspect-ratio: 16 / 9; background: #0c1021; box-shadow: rgba(21, 24, 52, 0.2) 0px 20px 60px 0px; }
.pt_video img, .pt_video iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: 0; display: block; object-fit: contain; }
.pt_video_play { position: absolute; top: 0; right: 0; bottom: 0; left: 0; display: block; }
.pt_video_btn { position: absolute; left: 50%; top: 50%; width: clamp(40px, 9%, 88px); aspect-ratio: 1 / 1; margin-left: calc(clamp(40px, 9%, 88px) / -2); margin-top: calc(clamp(40px, 9%, 88px) / -2); background: #afa46e; transition: transform 0.3s ease; }
.pt_video_btn::after { content: ""; position: absolute; top: 30%; right: 26%; bottom: 30%; left: 36%; background: #ffffff; clip-path: polygon(0 0, 100% 50%, 0 100%); }
.pt_video_play:hover .pt_video_btn, .pt_video_play:focus-visible .pt_video_btn { transform: translateY(-5px); }
/* pt_video_low：表紙の真ん中に文字があるもの（紹介動画の「THE DUI SPECIALIST」・ショートの「10」）は、ボタンを下に置く */
.pt_video_low .pt_video_btn { top: auto; bottom: 9%; margin-top: 0; }
/* 大きく1本（feature）：前のトップページと同じ幅（最大960px・中央） */
.pt_video_feature { max-width: 960px; margin: 40px auto 0; }
/* 動画のカード：情報のカードと同じ白・影。表紙はカードの上いっぱい、下に小さな金色の文字・題名（26px）・説明 */
.pt_video_card { height: 100%; margin-bottom: 0 !important; background-color: rgb(255, 255, 255); border-top: 2px solid rgb(175, 164, 110); }
.pt_video_card .pt_video { box-shadow: none; }
.pt_video_body { padding: 30px 40px 40px; }
.pt_video_title { font-family: "Playfair Display", Georgia, "Times New Roman", serif; font-weight: 600; font-size: 26px; line-height: 1.3em; color: rgb(11, 16, 36); padding-bottom: 10px; }
.pt_video_text p:last-child { padding-bottom: 0; }
@media only screen and (max-width: 980px) {
  .pt_video_low .pt_video_btn { bottom: 4%; }
}
@media only screen and (max-width: 767px) {
  .pt_video_body { padding: 25px 30px 30px; }
  /* 縦長のショートのカード：スマホでは1列なので、枠を縦長にして表紙・再生画面を大きく */
  .pt_video_tall { aspect-ratio: 4 / 5; }
}
/* フッターのリンクの矢印（本番は ft_blurb_0〜10 の番号ごとの指定）：番号に左右されない名前 ft_link にした。見た目は前と同じ（20px・金の30%） */
.ft_link.et_pb_blurb { margin-bottom: 0 !important; }
.ft_link .et-pb-icon { font-size: 20px; color: rgba(175, 164, 110, 0.3); font-family: ETmodules !important; font-weight: 400 !important; }
.ft_heading { padding-bottom: 0 !important; margin-bottom: 0 !important; }
/* 言語ごとのフッターのリンク（2026-09-30 ボード m-footer-community B）：びびなび＝日本語のページだけ、CCYP＝中国語（繁體・簡体）のページだけ。ほかの言語では隠す（読み上げにも出ない） */
.ft_only_ja, .ft_only_zh { display: none !important; }
html[lang="ja"] .ft_only_ja, html[lang="zh-TW"] .ft_only_zh, html[lang="zh-CN"] .ft_only_zh { display: block !important; }
/* カカオトークのQR（部品 ChatContacts）：LINE のQRと同じ大きさに見えるように（くわしくは home.css の最後。画像 244px → 288px ＋白の余白 6px） */
.pt_chat_col_kakao .pt_chat_qr .et_pb_image_wrap img { box-sizing: border-box; width: 300px; max-width: 100%; padding: 6px; background-color: #ffffff; }
/* ===== テストサイトの直し（2026-09-30 オーナー依頼「地域ページ・専門分野のページの直し」。色・字・影・余白は今ある値だけ） ===== */
/* 小見出しの横の点線（site.css の .secondary-heading の ::after。画面の右端まで伸びる）：2列・3列の帯では、その列の中で切る。
   地域ページの一番下（SourcesNote）で、左の「このページについて」の点線が、右の列の「公式の情報源」の文字に重なっていた。
   隣の列に向かって伸びる点線だけを切る（左ぞろえの見出しが最後の列でないとき・右ぞろえの見出しが最初の列でないとき）。
   外（画面の端）に向かって伸びる点線と、1列（4_4）の帯は今までどおり。タブレット・スマホは列が縦に並ぶので今までどおり */
@media only screen and (min-width: 981px) {
  .et_pb_column:not(.et_pb_column_4_4):not(.et-last-child) > .secondary-heading:not(.et_pb_text_align_right),
  .et_pb_column:not(.et_pb_column_4_4) + .et_pb_column > .secondary-heading.et_pb_text_align_right { overflow: hidden; }
}
/* 裁判所のカード（InfoCards の map）の小さな地図と「Google マップで開く」のリンク。地図は画面に近づいてから読み込む（site.js の 13） */
.pt_info_map { margin-top: 20px; height: 200px; background-color: rgb(246, 246, 247); }
.pt_info_map iframe { display: block; width: 100%; height: 100%; border: 0; }
.pt_info_maplink { padding-top: 12px !important; padding-bottom: 0 !important; }
@media only screen and (max-width: 767px) {
  .pt_info_map { height: 180px; }
}
/* 業務のカードの「詳しく見る」（AreaCards の more。専門分野のページ）：カードの高さを行ごとにそろえ、リンクをカードの一番下に置く */
.pt_area_more_row .et_pb_column { display: flex; flex-direction: column; }
.pt_area_more_row .pt_area_card { flex: 1 1 auto; display: flex; flex-direction: column; margin-bottom: 0 !important; }
.pt_area_more_row .pt_area_card .et_pb_blurb_content, .pt_area_more_row .pt_area_card .et_pb_blurb_container { flex: 1 1 auto; display: flex; flex-direction: column; width: 100%; }
.pt_area_more_row .pt_area_card .et_pb_blurb_description { flex: 1 1 auto; display: flex; flex-direction: column; }
.pt_area_more_row .pt_area_card .et_pb_blurb_description p:last-of-type { padding-bottom: 0; }
.pt_area_more { margin-top: auto; padding-top: 20px !important; padding-bottom: 0 !important; font-family: Montserrat, Helvetica, Arial, Lucida, sans-serif; font-weight: 700; font-size: 12px; letter-spacing: 1px; text-transform: uppercase; }
@media only screen and (max-width: 980px) {
  .pt_area_more_row .et_pb_column { margin-bottom: 30px !important; }
  .pt_area_more_row .et_pb_column:last-child { margin-bottom: 0 !important; }
}
/* 見出しの最後の行に1〜2文字だけが落ちないようにする（日本語・中国語で目立つ。対応しないブラウザは今までどおり） */
:where(.et_pb_section) :is(h1, h2, h3) { text-wrap: pretty; }
/* 日本語の見出しは、文節（「直接」「相談する」など）の途中で行を分けない（Chrome・Edge。対応しないブラウザは今までどおり） */
html:lang(ja) :where(.et_pb_section) :is(h1, h2, h3) { word-break: auto-phrase; }
/* 韓国語の見出しは、単語（スペースの切れ目）の途中で行を分けない（「음주운／전」のように分かれていた。韓国語のサイトでふつうの設定） */
html:lang(ko) :where(.et_pb_section) :is(h1, h2, h3) { word-break: keep-all; }
/* 地域ページの一番上の大見出し（HeroBanner の h1）：日本語などで英語の地名を足して長くなったので、最後の1〜2文字だけが次の行に落ちないように行の長さをそろえる */
.pt_hero_text h1, .pt_cta_text h2 { text-wrap: balance; }

/* ===== アクセシビリティの直し（2026-10-01 決めることボード A02。調査：09_リサーチ/reports/ADA アクセシビリティ対応の要否.md）===== */
/* 「本文へ飛ぶ」リンク（LegacyLayout の pt_skip）：ふだんは画面の外。キーボードで選んだときだけ左上に出る。色は今ある紺と白、字は本文の Montserrat
   重なりの順番はヘッダー（#main-header の 100000）より上（2026-10-01 社内の点検：同じ値だとロゴが文字の上に重なっていた） */
.pt_skip { position: fixed; top: -200px; left: 8px; z-index: 100001; padding: 12px 18px; background: #1b213a; color: #ffffff !important; font-family: Montserrat, Helvetica, Arial, sans-serif; font-size: 16px; font-weight: 700; line-height: 1.4; text-decoration: none; }
.pt_skip:focus { top: 8px; }
/* 「本文へ飛ぶ」で本文（main）が選ばれたときは、本文全体に枠を出さない（枠は次に Tab で選んだ所に出る） */
#main-content:focus { outline: 0; box-shadow: none; }
/* キーボードで選んだ所が、上に固定したヘッダー・スマホの下の電話の帯に隠れないように（WCAG 2.2 の 2.4.11）。--pt-header-h は site.js がヘッダーを測って入れる */
html { scroll-padding-top: calc(var(--pt-header-h, 80px) + 12px); }
@media (max-width: 980px) { html { scroll-padding-bottom: 76px; } }
/* 罰則カード（PenaltyCards）：マウスのある端末で、キーボードで選んだときもマウスを乗せたときと同じに説明を出す（部品で tabindex="0"。WCAG 2.1.1・1.4.13） */
@media (hover: hover) {
  .pt_pcards .liberty_blurb_eight .et_pb_blurb:focus-within .et_pb_main_blurb_image { transition: opacity 0.2s ease-out, transform 0.2s ease-out; transform: scale(0.4); opacity: 0; }
  .pt_pcards .liberty_blurb_eight .et_pb_blurb:focus-within .et_pb_blurb_container { transition: 0.3s ease-in-out; transform: translateY(-80px); }
  .pt_pcards .liberty_blurb_eight .et_pb_blurb:focus-within .et_pb_blurb_description { transition: opacity 0.2s ease-out 0.2s, transform 0.2s ease-out; transform: scale(1); opacity: 1; }
}
/* アイコンの文字を読み上げの名前に入れない（2026-10-01 社内の点検。WCAG 2.5.3・4.1.2）。
   Divi のアイコン（ETmodules・FontAwesome の字体の矢印「3」・ボタンの「$」・SNS の記号）が、リンク・ボタン・見出しの名前に混ざって
   「ABOUT 3」「… $」と読まれていた（SNS のリンクは記号だけで、名前が聞き取れなかった）。
   site.css の元のルールと同じセレクタで、content を「見せる文字 / 読み上げる文字（空）」に置きかえる。見た目は同じ（対応していないブラウザは前のまま）。
   ページ専用のアイコン（トップの開閉ボックス・電話のボタン）は pages/home.css の最後。元のルールを足したら、ここにも同じ形で足す（npm run check:a11y の「名前に混ざるアイコンの文字」で見つかる） */
#top-menu .menu-item-has-children > a:first-child::after, #et-secondary-nav .menu-item-has-children > a:first-child::after { content: "3" / ""; }
.et_pb_button::before { content: "5" / ""; }
body .et_pb_button::after { content: "$" / ""; }
.et_pb_custom_button_icon.et_pb_button::after { content: attr(data-icon) / ""; }
.et_pb_button[data-icon]:not([data-icon=""])::after { content: attr(data-icon) / ""; }
.more-link::after { content: "$" / ""; }
.et_pb_toggle_title::before { content: "3" / "" !important; }
.pt_toggle_icon_card.et_pb_toggle_close .et_pb_toggle_title::before { content: "\e0e0" / "" !important; }
.pt_toggle_icon_gavel.et_pb_toggle_close .et_pb_toggle_title::before { content: "\f0e3" / "" !important; }
body #page-container .et_pb_section .pt_call_button::before { content: attr(data-icon) / ""; }
.et-social-facebook a.icon::before { content: "\e093" / ""; }
.et-social-twitter a.icon::before { content: "\e094" / ""; }
.et-social-google-plus a.icon::before { content: "\e096" / ""; }
.et-social-instagram a.icon::before { content: "\e09a" / ""; }
.et-social-linkedin a.icon::before { content: "\e09d" / ""; }
.et-social-youtube a.icon::before { content: "\e0a3" / ""; }
.et-social-google a.icon::before { content: "\f1a0" / ""; }
.et-social-line a.icon::before { content: "\f3c0" / ""; }
.et-social-yelp a.icon::before { content: "\f1e9" / ""; }
/* ===== 社内の点検の見た目の直し（2026-10-01。決めることボード A10・A13。2026-10-02 オーナー回答で確定） ===== */
/* A10 薄い灰色の文字を、本文と同じくらいの濃さに（WCAG 1.4.3。4.5:1 以上）。フッターのリンク #8e8f98（背景の写真の上で約2.6:1）→ 本文の #59595b（約6:1） */
.liberty_footer_menu .et_pb_blurb_content a { color: #59595b; }
/* A10 口コミの文 rgba(27,33,58,0.6)（#f6f6f7 の上で 4.17:1）→ 0.72（6.1:1）。紺っぽい灰色はそのまま。トップの口コミは pages/home.css の最後 */
.pt_testimonial.et_pb_testimonial .et_pb_testimonial_content, .pt_testi_card.et_pb_testimonial .et_pb_testimonial_content, .pt_testi_card_next.et_pb_testimonial .et_pb_testimonial_content { color: rgba(27, 33, 58, 0.72) !important; }
/* A10 地域ページの弁護士の名前の下の肩書き（"THE DUI SPECIALIST"）#aaaaaa（白の上で 2.3:1）→ 本文の #59595b */
.et_pb_team_member .et_pb_member_position { color: #59595b; }
/* A13 よくある質問などの番号の丸（NumberedCards）：文字の間隔を広げる設定（WCAG 1.4.12）にしても数字が切れないよう、はみ出しを隠さない（ふだんの見た目は同じ） */
.pt_ncards_num { overflow: visible; }
/* A13 フッターの一番下のリンク（Site Map｜Privacy Policy…）：スマホで押す所の高さを 24px 以上に（WCAG 2.5.8。今は 18px で、折り返した行と近い） */
@media (max-width: 767px) { .ft_text_3 p strong a { display: inline-block; padding: 4px 3px; } } /* 左右の 3px は、リンクの中の最後の空白（「Site Map 」）が消える分 */
/* 一番上の夜景（dtla-dark）は、スマホでは同じ写真の幅1080px版（33KB。幅1920px版は77KB）。地域ページ7つ（HeroBanner）と記事（PageBanner）。トップは pages/home.css（2026-10-02 内部SEO）。
   先読みは LegacyLayout が「public/images/hero/名前-1080.webp があれば幅で分ける」で自動。スマホ用の版を足すときは、ここにも同じ形で足す */
@media (max-width: 767px) { .pt_hero > .et_parallax_bg_wrap > .et_parallax_bg[style*="hero/dtla-dark.webp"], .pt_banner[style*="hero/dtla-dark.webp"] { background-image: url("../images/hero/dtla-dark-1080.webp") !important; } }
/* Long Beach の一番上の写真も同じ（幅1080px版 62KB。幅1740px版は 154KB。元は今の WordPress の 196KB。2026-10-02 画像をサイトの中へ） */
@media (max-width: 767px) { .pt_hero > .et_parallax_bg_wrap > .et_parallax_bg[style*="hero/longbeach-duilawyer.webp"] { background-image: url("../images/hero/longbeach-duilawyer-1080.webp") !important; } }
/* ===== 元のサイトから引き継いだ不具合の直し：地域ページの勝訴事例・裁判所の情報の見出しが、2行に折り返すと重なる（2026-10-03） ===== */
/* LocalArticle の blocks・aside の中の h5（LAX「TOTAL VICTORY: COURT & DMV!」・Westminster「DUI DISMISSED」・裁判所の情報の見出し）。
   本番の指定は行の高さ 0（裁判所の情報は 0.5em。上のほうの .pt_article_block h5・.pt_article_aside h5）で、スマホなどで2行になると行どうしが重なっていた（本番も同じ）。
   行の高さをサイトの見出しの標準（文字の約1.2倍）に戻し、増えた分をちょうど上下のマイナスの余白で打ち消す＝1行のときの位置と前後の間は前と1ドットも変わらない。
   2行になったときだけ、2行目の分だけ下に伸びる。色・字の大きさは変えていない。
   余白は必ず px の整数にする（Chrome は行の上の余白を整数に切り捨てるので、em の端数だと1行の見出しが 0.4〜0.6px ずれる）。行の高さ＝前の行の高さ＋余白の2倍 */
.pt_article_block h5 { line-height: 26px; margin-top: -13px; margin-bottom: -13px; } /* 字 21px（パソコン） */
@media only screen and (max-width: 980px) { .pt_article_block h5 { line-height: 32px; margin-top: -16px; margin-bottom: -16px; } } /* 字 26px（タブレット・スマホ） */
.pt_article_aside h5 { line-height: calc(0.5em + 12px); margin-top: -6px; margin-bottom: -6px; } /* 字 16px → 行の高さ 20px */
/* 同じ原因・同じ直し方：連絡先（AwardContact）の見出し h6（「Los Angeles Office」など）。本番の指定は行の高さ 0.5em（上のほうの .pt_contact_item の行）で、
   狭いスマホ（320px）やスペイン語（375px の「Oficina de Los Ángeles」）で2行になると重なっていた。字 23px → 行の高さ 27.5px。1行のときの位置は前と同じ */
.pt_contact_item.et_pb_blurb .et_pb_module_header { line-height: calc(0.5em + 16px); margin-top: -8px; margin-bottom: -8px; }
/* ===== 元のサイトから引き継いだ不具合の直し：スマホの横向きなど（幅 541〜767px）で、ページが横に 1〜6px スクロールする（2026-10-03） ===== */
/* 原因：バッジの箱（.pt_badge）は 980px 以下で「列の 130% の幅・左に 10px ずらす」（上のほうの @media (max-width: 980px)。本番と同じ値）。
   スマホの並び（行の幅 95%）では、各行の最後のバッジの右端が「画面の幅 × 約2% − 10px」だけ画面の外に出る（幅 767px で 4.8px）。
   本番は Divi の JS が body に overflow-x: hidden を付けて、はみ出しを切って隠している。新しいサイトにはその指定がなく、ページ全体が横に広がっていた
   （固定のヘッダー・スマホの電話の帯も同じ幅まで伸びる）。
   直し：バッジの帯（Badges の一番外の箱。画面いっぱいの幅）で、横のはみ出しを切る。切る位置は画面の端と同じなので、画面に見えるものは前と1ドットも変わらない（本番とも同じ）。
   clip は hidden と違ってスクロールの箱にならない（縦は切らない）。ページ全体（body・#page-container）には付けない＝ほかの場所で本当のはみ出しが起きたとき、切れて読めなくなるより横に動かせるほうがよいため。
   :has()・clip が使えない古いブラウザ（Safari 15 以前など）では、この行が効かないだけで、前と同じ（少し横に動く）。
   トップページのバッジの帯は pages/home.css の最後 */
.et_pb_section:has(> .pt_badges_row) { overflow-x: clip; }

/* ===== お客様の声の一覧（TestimonialGrid）：見出しの右の金のボタンが、見出しの文字にかぶる言語だけの直し（2026-10-05。仮決め＝決めることボード） ===== */
/* 作りはトップの「お客様の声」の帯と同じ（上のほうの .pt_tgrid_title＝見出しは行の 75% まで・.pt_tgrid_button_wrapper＝ボタンは下の行から 90px 引き上げる）。
   ボタンが行の 25% より広く、見出しが1行で長い言語では、ボタンの箱が見出しの最後の言葉にかぶる。
   直し方はトップ（pages/home.css の最後）と同じ形：その言語だけ html:lang(…) で、パソコンの並び（981px 以上）の見出しの幅を
   「行の 75%」と「行 −（ボタンの幅 ＋ すき間 20px）」の小さいほうまでにする（見出しが早めに折れて、ボタンは最後の行の右のまま）。ほかの言語の見た目は変えない。
   ベトナム語：ボタン「XEM DỊCH VỤ CỦA CHÚNG TÔI」＝幅 320.7px → 341px。直す前は幅 1180〜1283px（よくある 1280px を含む）でかぶっていた（最大 85px）。
   行の 25% が 341px 以上になる幅（1705px 以上）と、タブレット・スマホ（ボタンは見出しの下。上の D06）は前のまま。
   新しい言語を足したら node tools/button-heading-check.mjs --lang <言語> で測り、かぶる言語はここに1行足す（ボタンの幅は道具の結果に出る）。
   地域ページの TestimonialCards（.pt_testi_title）も同じ作りなので、かぶる言語が出たら同じ形で。
   この節は手で書いている（tools/make_parts_css.py は parts.css を丸ごと作り直す道具で、動かすと手で足した節が消える。動かしたら git で差分を見て戻す） */
@media only screen and (min-width: 981px) {
  html:lang(vi) .pt_tgrid_title { max-width: min(75%, calc(100% - 341px)); }
  /* 地域ページの TestimonialCards（前からある地域ページ5つ。2026-10-06）。ベトナム語：ボタン「ĐỌC TẤT CẢ NHẬN XÉT CỦA THÂN CHỦ」＝幅 393.4px → 414px。直す前は幅 981〜1179px でかぶっていた（最大 164px） */
  html:lang(vi) .pt_testi_title { max-width: min(75%, calc(100% - 414px)); }
}
