@charset "utf-8"; 

#sub #contents { width:calc(100% - 40px); max-width:1440px; margin:0 auto; padding:80px 0 120px; } 
#sub #contents:has(> .lawyer_sub_page) { width:100%; max-width:none; margin:0; padding:0; } 

/* shared sub visual */
.sub_topInfo_box { position:relative; display:flex; padding:120px 20px; overflow:hidden; align-items:center; justify-content:center; background:#f5f5f5; } 
.sub_visual_watermark { position:absolute; top:50%; left:50%; color:#ededed; font-family:"Cormorant", serif; font-size:120px; font-weight:700; line-height:1.4; white-space:nowrap; transform:translate(-50%,-50%); pointer-events:none; } 
.sub_visual_content { position:relative; z-index:1; display:flex; flex-direction:column; align-items:center; gap:24px; } 
.sub_visual_content h1 { color:#222; font-family:"MapoGoldenPier", serif; font-size:50px; font-weight:400; line-height:1.4; } 
.sub_breadcrumb { display:flex; align-items:center; justify-content:center; gap:12px; color:rgba(34,34,34,.7); font-size:16px; line-height:26px; } 
.sub_breadcrumb a { display:flex; align-items:center; color:inherit; } 
.sub_breadcrumb span { color:inherit; } 

/* lawyer introduction */
.profile_intro_section { position:relative; padding:120px 0; overflow:hidden; } 
.profile_intro_layout { position:relative; z-index:1; display:flex; align-items:flex-start; gap:80px; } 
.profile_portrait { width:33.333%; aspect-ratio:480/624; flex-shrink:0; overflow:hidden; } 
.profile_portrait img { display:block; width:100%; height:100%; object-fit:cover; } 
.profile_copy { min-width:0; padding-top:20px; flex:1; } 
.profile_greeting { margin-top:30px; color:#222; font-size:20px; font-weight:600; line-height:1.6; } 
.profile_description { display:flex; margin-top:20px; flex-direction:column; gap:12px; color:rgba(34,34,34,.7); font-size:16px; line-height:1.6; } 
.profile_description p { word-break:normal; overflow-wrap:break-word; } 
.profile_intro_section .section_watermark { bottom:120px; } 

/* scrollable career history */
.profile_history_section { padding-bottom:120px; overflow:hidden; } 
.profile_history_layout { position:relative; display:flex; align-items:stretch; } 
.profile_history_layout::after { position:absolute; top:0; bottom:0; left:calc(50% - 10px); width:calc(50vw + 10px); border-top:1px solid #222; border-bottom:1px solid #222; content:""; pointer-events:none; } 
.profile_history_image { width:calc(50% - 10px); aspect-ratio:1; flex-shrink:0; overflow:hidden; } 
.profile_history_image img { display:block; width:100%; height:100%; object-fit:cover; object-position:11.27% center; } 
.profile_history_copy { position:relative; min-width:0; flex:1; border-top:1px solid #222; border-right:1px solid #222; border-bottom:1px solid #222; } 
.profile_history_copy::after { position:absolute; right:5px; bottom:0; left:0; opacity:0; height:185px; background:linear-gradient(transparent,#fff); content:""; pointer-events:none; transition:opacity 0.3s ease-in-out; } 
.profile_history_copy.is_scroll_ready:not(.is_at_end)::after { opacity:1; } 
.profile_history_scroll { position:absolute; inset:20px 0 20px 50px; padding:30px 40px 30px 0; overflow-y:auto; overscroll-behavior:contain; scrollbar-color:#a98440 #e9e9e9; } 
.profile_history_scroll::-webkit-scrollbar { width:4px; } 
.profile_history_scroll::-webkit-scrollbar-track { background:#e9e9e9; } 
.profile_history_scroll::-webkit-scrollbar-thumb { background:#a98440; } 
.profile_history_scroll ul { display:flex; padding-left:24px; flex-direction:column; gap:4px; } 
.profile_history_scroll li { list-style:disc; color:#222; font-size:16px; line-height:1.6; overflow-wrap:break-word; } 

/* appointment certificates */
.profile_certificate_section { padding:120px 0; overflow:hidden; background:#f5f5f5; } 
.certificate_rail { position:relative; margin-top:50px; } 
.certificate_slide { width:calc((100% - 80px)/5); } 
.certificate_slide img { display:block; width:100%; height:auto; } 
.certificate_slider:not(.swiper-initialized) { overflow-x:auto; } 
.certificate_slider:not(.swiper-initialized) .swiper-wrapper { gap:20px; } 
.certificate_slider:not(.swiper-initialized) .certificate_slide { flex-shrink:0; } 
.certificate_slider:not(.swiper-initialized) ~ .certificate_controls { display:none; } 
.certificate_controls { position:absolute; z-index:2; top:-100px; right:0; display:flex; } 
.certificate_controls button, .certificate_controls .swiper-button-lock { display:flex; width:50px; height:50px; } 
.icon_certificate_prev, .icon_certificate_next { width:50px; height:50px; background-position:center; background-size:contain; background-repeat:no-repeat; } 
.icon_certificate_prev { background-image:url(/minjeonglaw/img/svg/icon_certificate_next.svg); transform:scaleX(-1); } 
.icon_certificate_next { background-image:url(/minjeonglaw/img/svg/icon_certificate_next.svg); } 
.certificate_controls button:nth-of-type(1) { margin-right:-1px; } 
.certificate_controls button.swiper-button-disabled { cursor:default; } 
.certificate_controls button.swiper-button-disabled .icon { background-image:url(/minjeonglaw/img/svg/icon_certificate_prev.svg); } 
.certificate_pagination { display:none; } 

/* directions */
.place_section { padding:120px 0; } 
.place_layout { display:flex; width:100%; max-width:1920px; margin:0 auto; align-items:stretch; gap:40px; } 
.place_map_column { width:50%; flex-shrink:0; } 
.place_map_column .location_map { height: 100%; aspect-ratio: initial; } 
.place_information { min-width:0; width:100%; max-width:700px; padding-top:40px; padding-right:20px; padding-bottom: 40px; } 
.place_heading h2 { display:flex; align-items:center; gap:8px; color:#222; font-size:24px; font-weight:400; line-height:1.4; } 
.place_heading p { margin-top:12px; color:#222; font-size:16px; line-height:1.6; } 
.place_map_links { display:flex; margin-top:30px; gap:8px; flex-wrap:wrap; } 
.place_map_links a { display:inline-flex; padding:9px 20px; align-items:center; justify-content:center; gap:12px; border-radius:24px; font-size:16px; font-weight:600; line-height:26px; } 
.place_naver_link { color:#fff; background:#01d53b; } 
.place_map_links .place_kakao_link { gap:4px; color:#222; background:#fbe100; } 
.place_transport_list { margin-top:50px; border-top:1px solid #222; } 
.place_transport_list > li { display:flex; padding:30px 0; align-items:center; gap:30px; border-bottom:1px solid #222; } 
.place_transport_icon { display:flex; width:80px; height:80px; flex-shrink:0; align-items:center; justify-content:center; border-radius:50%; background:#f5f5f5; } 
.place_transport_list > li > div { min-width:0; flex:1; } 
.place_transport_list h3 { color:#222; font-size:24px; font-weight:400; line-height:1.4; } 
.place_transport_list p { margin-top:8px; color:#222; font-size:16px; line-height:1.6; } 
.place_transport_list strong { font-weight:600; } 
.place_parking_mobile { display:none; } 

/* practice areas */
.practice_detail_section { padding:120px 0; } 
.practice_detail_section .section_title { text-align:center; } 
.practice_detail_list { display:flex; margin-top:50px; flex-wrap:wrap; align-items:stretch; gap:24px; } 
.practice_detail_list > li { display:flex; width:calc((100% - 48px)/3); padding:60px 20px; align-items:center; flex-direction:column; gap:12px; border:1px solid #222; background:#fff; text-align:center; } 
.practice_detail_list h3 { width:100%; color:#222; font-family:"MapoGoldenPier", serif; font-size:28px; font-weight:400; line-height:1.4; word-break:normal; overflow-wrap:anywhere; } 
.practice_detail_list > li > p { width:100%; max-width:344px; color:rgba(34,34,34,.7); font-size:16px; line-height:1.6; word-break:normal; overflow-wrap:break-word; } 
.practice_divorce_section .practice_detail_list > li > p, .practice_support_section .practice_detail_list > li:nth-child(-n+3) > p { max-width:360px; } 
.practice_half_list > li, .practice_mixed_list > li:nth-child(n+4) { width:calc((100% - 24px)/2); } 
.practice_desktop_copy, .practice_mobile_copy { color:inherit; font:inherit; word-break:inherit; overflow-wrap:inherit; } 
.practice_mobile_copy { display:none; } 
.practice_detail_image { width:100%; margin-top:24px; aspect-ratio:4/1; overflow:hidden; } 
.practice_detail_image img { display:block; width:100%; height:100%; object-fit:cover; } 
.practice_divorce_section .practice_detail_image img { object-position:center 69.65%; } 
.practice_compensation_section .practice_detail_image img { object-position:center 41.87%; } 
.practice_affair_section .practice_detail_image img { object-position:center 73.67%; } 
.practice_custody_section .practice_detail_image img { object-position:center 35.09%; } 
.practice_support_section .practice_detail_image img { object-position:center 56.78%; } 
.practice_annulment_section .practice_detail_image img { object-position:center 62.88%; } 

/* news and resources */
.news_sub_visual { background:#e8e8e8; } 
.news_gallery_section, .news_read_section { padding:120px 0; } 
.news_search { display:flex; width:100%; max-width:630px; margin:0 auto; align-items:stretch; gap:10px; } 
.news_search select, .news_search input { min-width:0; padding:10px 15px; border:1px solid #ddd; color:#222; background:#fff; font-size:14px; font-weight:500; line-height:22px; } 
.news_search select { width:115px; flex-shrink:0; padding-right:35px; appearance:none; background:#fff url(/minjeonglaw/img/svg/icon_news_select.svg) right 15px center/11px 5px no-repeat; } 
.news_search input { width:100%; flex:1; } 
.news_search input::placeholder { color:rgba(34,34,34,.3); opacity:1; } 
.news_search_actions { display:flex; flex-shrink:0; align-items:stretch; gap:10px; } 
.news_search button, .news_write_button { display:flex; width:80px; padding:10px 15px; flex-shrink:0; align-items:center; justify-content:center; color:#fff; background:#986e13; font-size:14px; font-weight:500; line-height:24px; white-space:nowrap; } 
.news_card_list { display:flex; margin-top:80px; flex-wrap:wrap; align-items:stretch; gap:60px 24px; } 
.news_card { width:calc((100% - 48px)/3); min-width:0; } 
.news_card > a { display:flex; width:100%; height:100%; flex-direction:column; } 
.news_card_image { width:100%; aspect-ratio:464/260; overflow:hidden; } 
.news_card_image img { display:block; width:100%; height:100%; object-fit:cover; } 
.news_card_title { display:-webkit-box; margin-top:20px; overflow:hidden; color:#222; font-size:20px; font-weight:600; line-height:1.6; word-break:normal; overflow-wrap:break-word; -webkit-box-orient:vertical; -webkit-line-clamp:2; } 
.news_card_date { display:block; margin-top:8px; color:rgba(34,34,34,.7); font-size:14px; line-height:1.6; } 
.news_card_excerpt { display:-webkit-box; margin-top:8px; overflow:hidden; color:rgba(34,34,34,.7); font-size:14px; line-height:1.6; word-break:normal; overflow-wrap:break-word; -webkit-box-orient:vertical; -webkit-line-clamp:2; } 
.news_card_more { display:flex; margin-top:40px; align-items:center; gap:8px; color:#222; font-size:16px; font-weight:600; line-height:1.6; } 
.news_cases_list .news_card_excerpt, .news_cases_list .news_card_more, .news_press_list .news_card_date { display:none; } 
.news_press_list { column-gap:20px; } 
.news_press_list .news_card { width:calc((100% - 60px)/4); border:1px solid #222; } 
.news_press_list .news_card > a { padding:20px 20px 30px; } 
.news_press_list .news_card_image { aspect-ratio:305/170; } 
.news_press_list .news_card_title { margin-top:24px; } 
.news_empty { padding:80px 0; color:rgba(34,34,34,.7); font-size:16px; text-align:center; } 
.news_pagination { display:flex; margin-top:50px; align-items:center; justify-content:center; gap:10px; } 
.news_pagination ol { display:flex; align-items:center; gap:20px; } 
.news_pagination a, .news_pagination button { display:flex; height:26px; min-width:8px; align-items:center; justify-content:center; color:rgba(34,34,34,.6); font-size:16px; font-weight:500; line-height:26px; } 
.news_pagination a span { color:inherit; font:inherit; } 
.news_pagination .active { color:#b08d57; font-weight:700; } 
.news_pagination .pagination_arrow, .news_pagination button { width:12px; } 
.news_pagination .pagination_arrow span { font-size:0; } 
.news_pagination a .icon { display:none; } 
.news_pagination .pagination_arrow .icon { display:inline-block; } 
.news_pagination .is_disabled { pointer-events:none; } 
.icon_news_first, .icon_news_last, .icon_news_page_arrow { width:12px; height:12px; background-position:center; background-size:contain; background-repeat:no-repeat; } 
.icon_news_first { background-image:url(/minjeonglaw/img/svg/icon_news_first.svg); } 
.icon_news_last { background-image:url(/minjeonglaw/img/svg/icon_news_last.svg); } 
.pagination_prev .icon_news_page_arrow { background-image:url(/minjeonglaw/img/svg/icon_news_prev.svg); } 
.pagination_next .icon_news_page_arrow { background-image:url(/minjeonglaw/img/svg/icon_news_next.svg); } 

/* frequently asked questions */
.faq_section { padding:120px 0; } 
.faq_category_list { display:flex; flex-wrap:wrap; gap:8px; } 
.faq_categories button { display:flex; padding:10px 30px; align-items:center; justify-content:center; border:1px solid #986e13; color:#b3ab99; font-size:14px; font-weight:500; line-height:24px; white-space:nowrap; } 
.faq_categories button.active { color:#fff; background:#986e13; } 
.faq_list { margin-top:50px; border-top:1px solid #222; } 
.faq_item { border-bottom:1px solid #d5d5d5; } 
.faq_item.is_animating { overflow:hidden; overflow-anchor:none; } 
.faq_question { display:flex; width:100%; padding:20px 0; flex-direction:column; align-items:flex-start; gap:8px; cursor:pointer; list-style:none; } 
.faq_question::-webkit-details-marker { display:none; } 
.faq_question::marker { content:""; } 
.faq_category { display:inline-flex; padding:2px 12px; align-items:center; color:#986e13; background:#e9e0cd; font-size:14px; font-weight:500; line-height:21px; } 
.faq_question_row { display:flex; width:100%; align-items:flex-start; justify-content:space-between; gap:24px; } 
.faq_question_title { min-width:0; color:#222; font-size:20px; font-weight:600; line-height:1.6; word-break:normal; overflow-wrap:break-word; } 
.faq_toggle_icon { width:16px; height:16px; margin-top:8px; color:#222; background-size:16px 2px,2px 16px; } 
.faq_item[data_faq_expanded="true"] .faq_toggle_icon, .faq_item:not([data_faq_expanded])[open] .faq_toggle_icon { background-size:16px 2px,2px 0; } 
.faq_answer { display:flex; margin-bottom:20px; padding:30px 20px; gap:4px; background:#f5f5f5; font-size:20px; line-height:1.6; } 
.faq_answer_mark { flex-shrink:0; color:#222; font-weight:600; } 
.faq_answer_content { min-width:0; flex:1; color:rgba(34,34,34,.6); font-weight:500; word-break:normal; overflow-wrap:break-word; } 
.faq_answer_content :is(p,span,strong,b,em,i,li,a) { color:inherit; word-break:inherit; } 
.faq_answer_content img { max-width:100%; height:auto; } 
.faq_answer_content ul, .faq_answer_content ol { padding-left:24px; } 
.faq_answer_content ul > li { list-style:disc; } 
.faq_answer_content ol > li { list-style:decimal; } 
.faq_answer_content pre { overflow-x:auto; white-space:pre-wrap; } 

/* consultation reservation */
.reservation_section { padding:120px 0; background:#f5f5f5; } 
.reservation_form_inner { width:calc(100% - 40px); max-width:760px; margin:0 auto; } 
.reservation_section .consult_field > span { line-height:26px; } 
.reservation_section .consult_field textarea { height:205px; } 

/* hover */
@media (hover: hover) and (pointer:fine) { } 

@media (max-width:1024px) { 
 #sub #contents { padding:40px 0 60px; } 
 .sub_topInfo_box { padding:78px 20px; } 
 .sub_visual_watermark { font-size:60px; } 
 .sub_visual_content { gap:15px; } 
 .sub_visual_content h1 { font-size:32px; } 
 .sub_breadcrumb { font-size:15px; line-height:24px; } 
 .profile_intro_section { padding:60px 0; } 
 .profile_intro_layout { flex-direction:column; gap:30px; } 
 .profile_copy { width:100%; padding:0; order:-1; flex:none; } 
 .profile_greeting { margin-top:21px; font-size:18px; } 
 .profile_portrait { width:100%; } 
 .profile_description { margin-top:21px; font-size:15px; } 
 .profile_intro_section .section_watermark { display:none; } 
 .profile_history_section { padding-bottom:60px; } 
 .profile_history_layout { width:100%; max-width:none; flex-direction:column-reverse; } 
 .profile_history_layout::after { display:none; } 
 .profile_history_image { width:100%; } 
 .profile_history_copy { width:100%; height:450px; border-right:0; border-bottom:0; flex:none; } 
 .profile_history_scroll { inset:0 20px; padding:30px 40px 30px 0; } 
 .profile_history_scroll::-webkit-scrollbar { width:2px; } 
 .profile_history_scroll li { font-size:15px; } 
 .profile_history_scroll ul { padding-left:24px; } 
 .profile_history_copy::after { right:25px; } 
 .profile_certificate_section { padding:60px 0; } 
 .profile_certificate_section > article { width:100%; max-width:none; } 
 .profile_certificate_section h2 { padding:0 20px; text-align:center; } 
 .certificate_rail { margin-top:30px; } 
 .certificate_slide { width:200px; } 
 .certificate_controls { top:calc((200px * 792 / 560 - 36px)/2); right:20px; left:20px; justify-content:space-between; pointer-events:none; } 
 .certificate_controls button, .certificate_controls .swiper-button-lock { width:36px; height:36px; pointer-events:auto; } 
 .icon_certificate_prev, .icon_certificate_next { width:36px; height:36px; } 
 .certificate_pagination { display:flex; margin-top:30px; align-items:center; justify-content:center; } 
 .certificate_pagination.swiper-pagination-bullets-dynamic { display:block; margin:30px auto 0; white-space:nowrap; transform:initial !important; } 
 .certificate_pagination .swiper-pagination-bullet { width:8px; height:8px; margin:0 4px; border-radius:50%; background:#ccc; opacity:1; } 
 .certificate_pagination .swiper-pagination-bullet-active { background:#986e13; } 
 .place_section { padding:60px 0; } 
 .place_layout { flex-direction:column-reverse; gap:30px; } 
 .place_information { max-width:none; padding:0 20px; } 
 .place_heading h2 { font-size:20px; } 
 .place_heading p { margin-top:8px; font-size:15px; } 
 .place_map_links { margin-top:20px; flex-direction:column; align-items:flex-start; } 
 .place_transport_list { margin-top:30px; } 
 .place_transport_list > li { padding:16px 0; align-items:flex-start; gap:8px; } 
 .place_transport_icon { width:60px; height:60px; } 
 .place_transport_list h3 { font-size:20px; } 
 .place_transport_list p { font-size:15px; } 
 .place_transport_list .place_parking_desktop { display:none; } 
 .place_transport_list .place_parking_mobile { display:block; } 
 .place_map_column { width:100%; } 
 .place_map_column .location_map { aspect-ratio:360/280; } 
 .place_transport_icon .icon_parking { width:21px; height:24px; } 
 .place_transport_icon .icon_subway, .place_transport_icon .icon_bus { width:28px; height:28px; } 
 .practice_detail_section { padding:60px 0; } 
 .practice_detail_list { margin-top:30px; flex-direction:column; gap:20px; } 
 .practice_detail_list > li { width:100%; padding:30px; gap:8px; } 
 .practice_mixed_list > li:nth-child(n+4) { width:100%; } 
 .practice_detail_list h3 { width:calc(100% + 20px); font-size:20px; word-break:keep-all; } 
 .practice_detail_list > li > p { max-width:none; font-size:15px; } 
 .practice_divorce_section .practice_detail_list > li > p, .practice_support_section .practice_detail_list > li:nth-child(-n+3) > p { max-width:none; } 
 .practice_desktop_copy { display:none; } 
 .practice_mobile_copy { display:inline; } 
 .practice_detail_image { margin-top:20px; aspect-ratio:8/7; } 
 .practice_detail_section .practice_detail_image img { object-position:center; } 
 .news_sub_visual { background:#efefef; } 
 .news_gallery_section, .news_read_section { padding:60px 0; } 
 .news_search { max-width:none; flex-wrap:wrap; } 
 .news_search select { width:90px; padding:8px 30px 8px 10px; background-position:right 10px center; } 
 .news_search input { padding:8px 10px; } 
 .news_search_actions { width:100%; } 
 .news_search button, .news_write_button { width:100%; flex:1; padding:8px 10px; line-height:24px; } 
 .news_card_list { margin-top:40px; gap:40px 12px; } 
 .news_card { width:calc((100% - 12px)/2); } 
 .news_card_image { aspect-ratio:155/120; } 
 .news_card_title { margin-top:16px; font-size:18px; } 
 .news_press_list { flex-direction:column; gap:40px; } 
 .news_press_list .news_card { width:100%; } 
 .news_press_list .news_card > a { padding:20px; } 
 .news_press_list .news_card_image { aspect-ratio:280/170; } 
 .news_press_list .news_card_more { margin-top:30px; font-size:15px; } 
 .news_pagination { margin-top:30px; } 
 .faq_section { padding:60px 0; } 
 .faq_categories button { padding:6px 12px; line-height:21px; } 
 .faq_list { margin-top:30px; } 
 .faq_question { padding:16px 0; } 
 .faq_question_title { font-size:18px; } 
 .faq_toggle_icon { margin-top:6px; } 
 .faq_answer { margin-bottom:16px; padding:20px 10px; font-size:18px; } 
 .reservation_section { padding:60px 0; } 
 .reservation_section .consult_field > span { line-height:24px; } 
 .reservation_section .consult_field textarea { height:120px; } 
 } 
