뉴로이어 법률사무소

빠른상담예약(유료상담)

070-8098-0421

  • 대표자김수열
  • 주소서울시 서초구 강남대로 525, 세영제이타워 11층(06536)
  • 사업자등록번호588-14-01388
  • 대표번호070-8098-0421
  • 이메일[email protected]

팝업레이어 알림

4d134af72943f918cf6ef8b6bc078f52_1785229462_8377.png
 

6bbc337ada08612cf184cb03fec38e27_1785287384_1135.png

 

사이버범죄 사건을
해결하는 가장 간단한 방법

사이버범죄는 사이버범죄 전문 변호사에게 맡기세요.

증거 확보부터 법적 대응까지, 뉴로이어만의 노하우를 기반으로 해결해드립니다.

신산업·신기술 비즈니스를 위한
맞춤형 법률 솔루션

복잡한 신산업 비즈니스 문제 더 이상 고민하지 마세요.

대형로펌, 대기업 출신 변호사들이 정교한 안전망을 설계해드립니다.

새로운 시대를 위한
새로운 로펌의 시작

시대를 읽는 젊은 감각과 틀을 깨는 유연한 사고로

의뢰인을 위한 가장 현실적인 해결책을 제시합니다.

WHO WE ARE

뉴로이어 법률사무소는 "새로운 시대를 위한 새로운 로펌"이라는 모토 아래,
각 분야 전문가들이 모인 로펌으로, 특히 사이버범죄신산업·신기술 분야를 깊이 있게 연구하고 수행하고 있으며,
그 외 특수 분야에서도 탄탄한 전문성을 갖추고 있습니다.
잘할 수 있는 사건만을 책임감 있게 맡으며,
의뢰인과 사건을 향한 진정성과 열정으로 한 걸음씩 성장하고 있습니다.
저희의 목표는 간단합니다.
Rewind your time before accident.
사건사고가 일어나기 전, 평온했던 일상으로 의뢰인의 시간을 되돌려 드리는 것입니다.

관련 사건으로 어려움을 겪고 계신다면, 언제든 뉴로이어를 찾아주셔도 좋습니다.

8167

상담건수

2171

수행건수

0

걸어온 날

WINNING CASE

뉴로이어가 실제로 이뤄낸 성공사례를 직접 확인하세요.

불송치

스타크래프트 욕설 모욕죄, 통매음 피의자 변호 성공사례
























성공사례
명예훼손 · 모욕
게임 채팅 모욕 불송치




모욕 · 특정성 다툼 · 혐의없음
닉네임 뒤의 사람을 알아볼 수 있었을까,특정성을 파고들어 모욕 혐의를 벗은 사례
상대가 게임 도중 자기 정보를 밝혀 두었다는 이유로 모욕이 걸려 왔습니다. 적어 두었다는 사실과 함께 있던 사람들이 현실의 누구인지 알아볼 수 있었는지는 다른 문제라고 보고, 그 간격을 파고들어 혐의를 벗겨낸 기록입니다.

카테고리 명예훼손 · 모욕
결과 모욕 혐의 불송치 · 합의 없이 종결
쟁점 온라인에서의 특정성
작성일 2026. 8.





의뢰인
게임 중 처음 만난 상대와 언쟁을 벌이다 모욕 혐의로 고소당한 분
사건 발단
승부가 달아오르는 사이 험한 말이 오갔고, 상대는 그 표현들을 모아 고소를 제기
상대의 근거
게임 도중 자신의 정보를 밝혀 두었으니 누구를 향한 말인지 드러났다는 주장
대응 전략
정보를 적었다는 사실과 참여자들이 현실의 특정인을 인식할 수 있었는지를 갈라, 공개 방식과 참여자 관계를 하나씩 검토
결과
모욕 혐의 불송치 — 상대와 합의하지 않고 종결




온라인에서 오간 말로 모욕 고소를 받으신 분들이 가장 먼저 걱정하시는 것은 내가 한 말이 얼마나 심했는가입니다. 그런데 이 죄명에서 먼저 넘어야 할 관문은 따로 있습니다. 그 말이 누구를 향한 것인지 알아볼 수 있었느냐입니다.
닉네임 뒤에 가려진 상대를 두고 벌어진 다툼이라면 이 지점이 더 중요해집니다. 화면 속 이름과 현실의 사람이 이어지는지가 분명하지 않기 때문입니다.
오늘 전할 사건도 그랬습니다. 상대는 게임 도중 자기 정보를 밝혀 두었다는 점을 들고 나왔지만, 뉴로이어 법률사무소는 그 사실만으로 관문이 넘어지지는 않는다고 보고 그 간격을 파고들었습니다. 결과는 합의 없이 받아 낸 불송치였습니다.


01사건 개요 — 화면 속 이름과 현실의 사람 사이

의뢰인은 게임을 하던 중 처음 마주친 상대와 다투게 되셨습니다. 승부가 달아오르는 사이 감정이 앞섰고, 상대와 그 가족을 겨냥한 험한 말이 오갔습니다. 상대는 그 표현들을 모아 고소했습니다.

고소장에서 상대가 기댄 근거는 분명했습니다. 게임이 진행되는 동안 자신의 정보를 밝혀 두었으니 그 말이 누구를 향한 것인지 드러났다는 것이었습니다. 문제된 표현이 한 번에 그치지 않고 여러 차례였다는 점도 함께 지적됐습니다.

기록을 처음 받아 보고 저희도 만만한 사건은 아니라고 봤습니다. 다만 저쪽이 내세운 논리를 그대로 받아들이지는 않았습니다. 화면에 무언가를 적어 두었다는 사정과, 한자리에 있던 이들이 그것으로 화면 밖의 사람을 짚어 낼 수 있었느냐는 서로 다른 층위라고 봤기 때문입니다.

그래서 문제된 단어만 떼어 보는 대신, 그 표현들이 언제 어떤 대화 끝에 나왔고 두 사람이 왜 부딪히기 시작했는지 전체 흐름부터 다시 맞췄습니다.


적어 두었다는 것과 알아볼 수 있었다는 것
온라인 공간에서는 이름이나 소속이 오가더라도 그것이 현실의 사람과 이어지는지가 늘 분명하지는 않습니다. 화면에 적힌 정보가 사실인지 확인할 길이 없고, 함께 있던 사람들이 그 정보에 주의를 기울였는지도 별개입니다. 모욕 사건에서 이 간격을 짚어 보는 작업이 필요한 이유입니다.




정보 공개의 방식
상대가 자기 정보를 어떤 형태로 어느 시점에 드러냈는가.


참여자들의 인식
그 자리에 있던 사람들이 현실의 특정인을 알아볼 수 있었는가.


참여자들의 관계
서로 아는 사이였는지 처음 만난 사이였는지가 판단에 어떤 무게를 갖는가.


표현의 맥락
그 말이 어떤 흐름 끝에 나왔는지를 어떻게 보일 것인가.


반복된 표현
여러 차례였다는 점이 판단에 어떻게 반영되는가.


합의 여부
인정하고 정리할 사안인지 다퉈 볼 사안인지 어디서 가를 것인가.



02문제 해결 — 관문을 하나씩 되짚었습니다

이 죄명이 서려면 그 말이 누구를 겨냥한 것인지 가려져야 합니다. 상대는 자기 정보를 밝혔다는 점을 근거로 그 관문이 이미 넘어졌다고 주장했지만, 저희는 그 지점부터 다시 들여다봤습니다.




공개 방식의 확인
상대가 자신의 정보를 어떤 형태로 드러냈는지부터 짚었습니다. 어느 대목에서 어떤 식으로 나왔는지에 따라 그 정보가 다른 이들의 눈에 닿았는지가 달라지기 때문입니다.




참여자 관계의 정리
그 자리에 있던 사람들이 서로 어떤 사이였는지를 정리했습니다. 처음 만나 한 판을 함께한 사이라면 화면 밖의 사람을 떠올리기 어렵기 때문입니다.




인식 가능성의 검토
다른 이용자들이 그 정보를 통해 현실의 상대를 실제로 알아볼 수 있었는지를 하나씩 따졌습니다. 적혀 있었다는 사실과 알아봤다는 것은 다른 층위라고 봤습니다.




대화 흐름의 복원
표현들이 어떤 대화 끝에 나왔고 다툼이 어디서 시작됐는지를 채팅 전체와 유사 사건의 판단을 토대로 정리했습니다. 문장 하나만 떼어 두면 보이지 않는 것들이 있기 때문입니다.




조사 동행과 진술 관리
조사실에서는 수사관이 문제 삼은 말을 한 줄씩 짚어 가며 무슨 뜻으로 뱉었는지를 여러 번 물었습니다. 저희는 낱말 하나에만 매달려 답하다가 앞뒤 사정과 동떨어진 대답이 조서에 굳는 일이 없도록, 묻는 뜻이 무엇인지 그때마다 되짚으며 곁을 지켰습니다.





이 사건 변호의 무게중심
말이 거칠었다는 점을 감추려 들지 않았습니다. 대신 그 사실과 죄명이 갖춰야 할 요소를 갈라 두었습니다. 무엇을 말했는가와 그 말이 누구에게 닿았는가는 다른 물음이고, 앞의 것을 인정한다고 뒤의 것까지 넘겨줄 이유는 없습니다.



주의해야 할 점
고소를 받으셨다면 대화를 지우거나 문제된 부분만 갈무리하지 마시기 바랍니다. 다툼이 어디서 시작됐는지 보여 주려면 앞뒤가 함께 남아 있어야 합니다. 또 상대가 자기 정보를 어떤 방식으로 드러냈는지도 화면에 남아 있는지 확인해 두시는 편이 좋습니다. 나중에 그 부분이 관건이 됩니다.


03최종 결과 — 불송치, 합의도 없이

저희는 조사에 앞서 채팅 전체와 관련 판례를 검토해 변호인의견서를 냈고 조사에도 동행했으며, 조사에서 드러난 쟁점을 다시 정리해 추가 의견서를 제출했습니다. 그 결과 경찰은 불송치 결정을 내렸고, 의뢰인은 상대와 따로 합의하지 않은 채 사건을 정리하실 수 있었습니다.

처음 찾아오셨을 무렵 의뢰인은 다른 데서 돈으로 마무리하는 편이 낫겠다는 조언을 들으신 뒤라 마음을 정하지 못하고 계셨습니다. 저희 역시 첫 자리에서 좋은 끝을 장담하지는 않았습니다. 다만 이 죄가 서기 위해 넘어야 할 문턱을 하나씩 되짚자 붙들 만한 대목이 보였고, 그 판단을 끝까지 놓지 않은 것이 지금의 결말로 이어졌습니다.


"거친 말을 했다는 사실은 인정할 수 있습니다. 그러나 그 말이 누구에게 닿았는지는 따로 물어야 할 문제입니다."
— 뉴로이어 법률사무소


온라인에서 험한 말이 오갔다고 해서 모든 사안이 같은 결말에 닿지는 않습니다. 무슨 말을 했는지는 물론이고 그 말이 어떤 흐름에서 나왔는지, 상대가 누구인지 가려질 수 있었는지까지 남은 자료를 두루 살펴야 합니다.

게임이나 커뮤니티 채팅으로 고소를 받으셨다면 오간 말을 되도록 통째로 지켜 두시기 바랍니다. 관련 자료와 받으신 서류를 들고 오시면 어느 대목을 붙들어 볼 수 있을지 기록부터 훑어 드리겠습니다.


온라인 모욕 고소, 확인해 두실 것

문제된 부분만이 아니라 대화 전체를 남겨 두었는가
다툼이 시작된 앞부분까지 보존돼 있는가
상대가 자기 정보를 드러낸 대목과 그 방식을 확인했는가
그 자리에 있던 참여자들의 수와 관계를 정리했는가
서로 아는 사이였는지 처음 만난 사이였는지 파악했는가
조사 전에 질문의 의도를 이해하고 진술 방향을 정했는가




관련 법리 정리

모욕죄의 특정성
그 말이 누구를 향한 것인지 가려져야 성립합니다. 온라인에서는 화면의 이름과 현실의 사람이 이어지는지가 분명하지 않은 경우가 많아 이 관문이 먼저 검토됩니다.
정보 공개와 인식 가능성
정보를 적어 두었다는 사정과, 그 자리에 있던 이들이 화면 밖의 누구인지 짚어 낼 수 있었는지는 층위가 다릅니다. 어떤 형태로 드러났는지와 함께 있던 사람들이 서로 어떤 사이였는지가 함께 저울에 오릅니다.
표현의 맥락
표현은 문장 하나로 떼어 보는 것이 아니라 글 전체의 흐름과 앞뒤 상황 속에서 평가됩니다. 다툼이 어디서 시작됐는지가 함께 검토되는 이유입니다.
사실 인정과 요건 충족
어떤 말을 했다는 사실을 인정하는 것과 그 말이 죄명의 요건까지 채운다고 받아들이는 것은 다릅니다. 조사에서 이 둘이 섞이면 불리한 진술로 남을 수 있습니다.




이 사건을 담당한 변호인
요건을 되짚는 검토와 조사 현장 대응이 함께 필요했습니다. 이 사건은 두 변호사가 나눠 수행했습니다.







CEO Lawyer
김수열 대표변호사

#명예훼손·모욕#사이버범죄#디지털성범죄

서울대학교 심리학과를 거쳐 서울대학교 법학전문대학원을 졸업했고, 법무법인 율촌을 거쳐 뉴로이어 법률사무소를 이끌고 있는 대한변호사협회 인증 형사전문변호사입니다. 특정성과 표현의 평가가 쟁점이 되는 모욕 사건을 고소대리와 피의자 방어 양쪽에서 수행해 왔습니다.

서울대 총학생회장 명예훼손 사건 대법원 파기환송 승소
방송 출연자·인플루언서 악성댓글 집단 고소 성공 수행
언론사 가짜뉴스 명예훼손·업무방해 고소대리

프로필 자세히 보기 →








Partner Lawyer
이도연 파트너변호사

#명예훼손·모욕#(디지털)성범죄#외국인 사건

대한변호사협회 인증 형사전문변호사로, 충북대학교 법학전문대학원을 졸업하고 연세대학교 국제학부를 거쳤습니다. 형사 전문 로펌에서 다양한 사건을 수행해 왔으며, 온라인에서 오간 말이 문제되는 사건을 폭넓게 다루고 있습니다.

공무원 통신매체이용음란죄 징계 행정처분취소청구 승소
온라인 그루밍 사건 고소 대리 및 피의자 변호
SBS 시사교양 프로그램 법률 자문 수행

프로필 자세히 보기 →







FAQ게임 채팅 모욕, 자주 묻는 질문

게임 닉네임에 대고 욕했는데도 모욕죄가 되나요?
닉네임만으로는 그 말이 누구를 향한 것인지 가려지지 않는 경우가 많습니다. 화면의 이름과 현실의 사람이 이어지는지, 그 자리에 있던 이들이 실제로 알아볼 수 있었는지가 먼저 검토됩니다.


상대가 게임에서 자기 정보를 밝혔으면 어떻게 되나요?
적어 두었다는 사실만으로 곧바로 요건이 채워지지는 않습니다. 어떤 방식으로 드러냈는지, 함께 있던 사람들이 그 정보로 현실의 특정인을 알아볼 수 있었는지를 나눠서 봐야 합니다. 이 사건에서도 그 간격을 파고들었습니다.


말이 심했던 것은 사실인데 다툴 수 있나요?
가능합니다. 어떤 말을 했다는 사실을 인정하는 것과 그 말이 죄명의 요건까지 채운다고 받아들이는 것은 다릅니다. 인정할 부분은 인정하되 요건은 따로 다투는 방식이 오히려 신빙성을 지킵니다.


합의하지 않고 끝낼 수도 있나요?
사안에 따라 가능합니다. 이 사건에서도 다른 곳에서 합의를 권유받은 상태였지만 기록을 다시 검토해 다툴 지점을 찾았고, 합의 없이 불송치로 마무리했습니다. 다만 기록에 따라 결론이 달라지므로 검토가 먼저입니다.


대화는 문제된 부분만 남겨 두면 되나요?
권하지 않습니다. 그 말이 어떤 흐름에서 나왔는지 보이려면 앞뒤가 함께 있어야 합니다. 문제된 대목만 남으면 맥락을 설명할 길이 좁아져 불리해질 수 있습니다.


경찰조사에 변호사가 함께 가는 편이 나은가요?
진술이 조서에 어떻게 남느냐가 결과를 가르는 사건이라면 도움이 됩니다. 표현을 하나씩 확인받는 자리에서는 맥락과 어긋나는 진술이 남기 쉬운데, 질문의 취지를 그때그때 짚으며 대응할 수 있기 때문입니다.




함께 보면 좋은 글

게임 통매음·모욕 고소, 합의 없이 전부 불송치로 끝낸 사례
트위터 사이버불링 집단고소, 특정성을 세워 5명을 찾아낸 사례
직장 내 뒷담화 명예훼손, 형사 무죄에 민사 전부기각까지 받은 사례




요건을 되짚어 보면 다툴 자리가 보입니다
게임이나 커뮤니티 채팅으로 모욕 고소를 받으셨다면 대화 전체와 받으신 서류를 준비해 문의해 주세요.어느 대목을 붙들어 볼 수 있을지 기록부터 살펴 드립니다.

카카오톡 상담
070-8098-0421
홈페이지 상담 신청

모든 상담 내용은 비밀이 보장됩니다



관련 법령: 형법상 모욕 규정 (국가법령정보센터, 작성일 기준)
뉴로이어 법률사무소 · 서울 서초구 강남대로 525 세영제이타워 11층(06536) · 사업자등록번호 588-14-01388 · [email protected]


본 성공사례는 뉴로이어 법률사무소가 실제 수행한 사건을 바탕으로 작성됐으며, 의뢰인 보호를 위해 일부 사실관계를 조정했습니다. 개별 사건의 결과는 구체적 사정에 따라 달라질 수 있어, 본 글이 유사 사건에서 동일한 결과를 약속하는 것은 아닙니다.




{
"@context": "https://schema.org",
"@type": "Article",
"headline": "닉네임 뒤의 사람을 알아볼 수 있었을까, 특정성을 파고들어 모욕 혐의를 벗은 성공사례",
"description": "게임 중 오간 험한 말로 모욕 고소를 받은 사건. 상대가 자기 정보를 밝혔다는 사실과 참여자들이 현실의 특정인을 알아볼 수 있었는지를 갈라 특정성 요건을 되짚고, 조사에 동행해 합의 없이 불송치 결정을 받아낸 뉴로이어 모욕 피의자변호 성공사례입니다.",
"inLanguage": "ko",
"datePublished": "2026-08-12",
"dateModified": "2026-08-12",
"author": [
{
"@type": "Person",
"name": "김수열",
"jobTitle": "대표변호사",
"url": "https://newlawyer.co.kr/page/21_view?wr_id=1",
"image": "https://newlawyer.co.kr/data/file/member/thumb-238321632_UzWE7X3O_a622b2fa6778b002d58c2ddc7bdddb15cb53f084_460x460.jpg",
"knowsAbout": [
"디지털성범죄",
"통신매체이용음란죄",
"명예훼손·모욕",
"사이버범죄"
],
"alumniOf": {
"@type": "CollegeOrUniversity",
"name": "서울대학교 법학전문대학원"
},
"worksFor": {
"@type": "LegalService",
"name": "뉴로이어 법률사무소",
"url": "https://www.newlawyer.co.kr"
}
},
{
"@type": "Person",
"name": "이도연",
"jobTitle": "파트너변호사",
"url": "https://www.newlawyer.co.kr/page/21_view?wr_id=22",
"image": "https://www.newlawyer.co.kr/data/file/member/thumb-3698724248_pZntIOW8_6b0dbe4891b0e9b00606a8443eab997e72367689_460x460.png",
"knowsAbout": [
"(디지털)성범죄",
"통신매체이용음란죄",
"명예훼손·모욕",
"외국인 형사사건"
],
"alumniOf": {
"@type": "CollegeOrUniversity",
"name": "충북대학교 법학전문대학원"
},
"worksFor": {
"@type": "LegalService",
"name": "뉴로이어 법률사무소",
"url": "https://www.newlawyer.co.kr"
}
}
],
"publisher": {
"@type": "LegalService",
"name": "뉴로이어 법률사무소",
"url": "https://www.newlawyer.co.kr",
"address": {
"@type": "PostalAddress",
"streetAddress": "강남대로 525 세영제이타워 11층",
"addressLocality": "서초구",
"addressRegion": "서울",
"postalCode": "06536",
"addressCountry": "KR"
},
"telephone": "+82-70-8098-0421"
},
"mainEntityOfPage": {
"@type": "WebPage",
"@id": "https://www.newlawyer.co.kr/31/429"
},
"about": [
"게임 욕설 모욕 고소",
"게임 패드립",
"모욕죄 특정성",
"게임 닉네임 모욕",
"게임 채팅 고소",
"모욕 불송치"
]
}


{
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
{
"@type": "ListItem",
"position": 1,
"name": "홈",
"item": "https://www.newlawyer.co.kr"
},
{
"@type": "ListItem",
"position": 2,
"name": "성공사례",
"item": "https://www.newlawyer.co.kr/31"
},
{
"@type": "ListItem",
"position": 3,
"name": "명예훼손 · 모욕",
"item": "https://www.newlawyer.co.kr/31?sca=%EB%AA%85%EC%98%88%ED%9B%BC%EC%86%90+%C2%B7+%EB%AA%A8%EC%9A%95"
},
{
"@type": "ListItem",
"position": 4,
"name": "게임 채팅 모욕 불송치",
"item": "https://www.newlawyer.co.kr/31/429"
}
]
}


{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "게임 닉네임에 대고 욕했는데도 모욕죄가 되나요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "닉네임만으로는 그 말이 누구를 향한 것인지 가려지지 않는 경우가 많습니다. 화면의 이름과 현실의 사람이 이어지는지, 그 자리에 있던 이들이 실제로 알아볼 수 있었는지가 먼저 검토됩니다."
}
},
{
"@type": "Question",
"name": "상대가 게임에서 자기 정보를 밝혔으면 어떻게 되나요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "적어 두었다는 사실만으로 곧바로 요건이 채워지지는 않습니다. 어떤 방식으로 드러냈는지, 함께 있던 사람들이 그 정보로 현실의 특정인을 알아볼 수 있었는지를 나눠서 봐야 합니다. 이 사건에서도 그 간격을 파고들었습니다."
}
},
{
"@type": "Question",
"name": "말이 심했던 것은 사실인데 다툴 수 있나요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "가능합니다. 어떤 말을 했다는 사실을 인정하는 것과 그 말이 죄명의 요건까지 채운다고 받아들이는 것은 다릅니다. 인정할 부분은 인정하되 요건은 따로 다투는 방식이 오히려 신빙성을 지킵니다."
}
},
{
"@type": "Question",
"name": "합의하지 않고 끝낼 수도 있나요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "사안에 따라 가능합니다. 이 사건에서도 다른 곳에서 합의를 권유받은 상태였지만 기록을 다시 검토해 다툴 지점을 찾았고, 합의 없이 불송치로 마무리했습니다. 다만 기록에 따라 결론이 달라지므로 검토가 먼저입니다."
}
},
{
"@type": "Question",
"name": "대화는 문제된 부분만 남겨 두면 되나요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "권하지 않습니다. 그 말이 어떤 흐름에서 나왔는지 보이려면 앞뒤가 함께 있어야 합니다. 문제된 대목만 남으면 맥락을 설명할 길이 좁아져 불리해질 수 있습니다."
}
},
{
"@type": "Question",
"name": "경찰조사에 변호사가 함께 가는 편이 나은가요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "진술이 조서에 어떻게 남느냐가 결과를 가르는 사건이라면 도움이 됩니다. 표현을 하나씩 확인받는 자리에서는 맥락과 어긋나는 진술이 남기 쉬운데, 질문의 취지를 그때그때 짚으며 대응할 수 있기 때문입니다."
}
}
]
}


{
"@context": "https://schema.org",
"@type": "HowTo",
"name": "온라인 모욕 특정성 방어 절차",
"description": "닉네임 뒤의 상대를 알아볼 수 있었는지를 다퉈 모욕 혐의를 방어하는 순서입니다.",
"step": [
{
"@type": "HowToStep",
"name": "공개 방식의 확인",
"text": "상대가 자기 정보를 어떤 형태로 어느 대목에서 드러냈는지 짚습니다."
},
{
"@type": "HowToStep",
"name": "참여자 관계의 정리",
"text": "그 자리에 있던 사람들이 서로 어떤 사이였는지 정리합니다."
},
{
"@type": "HowToStep",
"name": "인식 가능성의 검토",
"text": "다른 이용자들이 그 정보로 현실의 특정인을 알아볼 수 있었는지 따집니다."
},
{
"@type": "HowToStep",
"name": "대화 흐름의 복원",
"text": "표현이 어떤 대화 끝에 나왔고 다툼이 어디서 시작됐는지 정리합니다."
},
{
"@type": "HowToStep",
"name": "조사 동행과 진술 관리",
"text": "질문의 취지를 확인하며 맥락과 어긋나는 진술이 남지 않게 대응합니다."
}
]
}



:root {
--nl-navy: #1f4e79;
--nl-navy-2: #2e5a8a;
--nl-navy-3: #0f2e4d;
--nl-navy-soft: #5b7ea1;
--nl-ink: #222222;
--nl-soft: #444444;
--nl-mute: #767676;
--nl-line: #e5e7eb;
--nl-line-soft: #eef0f3;
--nl-bg-soft: #f5f7fa;
--nl-bg-card: #fafbfc;
--nl-accent: #c0392b;
--nl-bg: #ffffff;
}

.nl-wrap {
font-family: "Pretendard", "Pretendard Variable", -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", sans-serif;
color: var(--nl-ink);
line-height: 1.85;
font-size: clamp(15px, 1.05vw + 12px, 17px);
background: var(--nl-bg);
-webkit-text-size-adjust: 100%;
text-size-adjust: 100%;
word-break: keep-all;
overflow-wrap: anywhere;
max-width: 880px;
margin: 0 auto;
padding: clamp(20px, 4vw, 48px) clamp(16px, 3vw, 32px);
position: relative;
font-feature-settings: "ss01", "ss02";
letter-spacing: -0.005em;
}

.nl-wrap * { box-sizing: border-box; }

.nl-wrap a { color: var(--nl-navy); text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; }
.nl-wrap a:hover { color: var(--nl-navy-3); }

.nl-crumb {
font-size: 13px;
color: var(--nl-mute);
letter-spacing: 0.01em;
margin-bottom: 24px;
padding-bottom: 14px;
border-bottom: 1px solid var(--nl-line);
}
.nl-crumb ol { list-style: none; padding: 0; margin: 0; display: flex; flex-wrap: wrap; gap: 6px 10px; }
.nl-crumb li + li::before { content: "›"; margin-right: 10px; color: var(--nl-navy-soft); }
.nl-crumb a { color: var(--nl-mute); text-decoration: none; }
.nl-crumb a:hover { color: var(--nl-navy); }

.nl-tag {
display: inline-flex;
align-items: center;
gap: 8px;
font-size: 12px;
font-weight: 600;
letter-spacing: 0.12em;
color: #ffffff;
background: var(--nl-navy);
padding: 7px 16px;
border-radius: 2px;
}
.nl-tag::before {
content: "";
width: 6px; height: 6px;
border-radius: 50%;
background: #ffffff;
}

.nl-h1 {
font-weight: 800;
font-size: clamp(24px, 3.2vw + 12px, 38px);
line-height: 1.35;
color: var(--nl-navy-3);
margin: 16px 0 14px;
letter-spacing: -0.025em;
}
.nl-h1 .nl-h1-accent { color: var(--nl-navy); }

.nl-sub {
font-size: clamp(14px, 0.6vw + 12px, 16px);
color: var(--nl-soft);
margin: 0 0 28px;
line-height: 1.75;
font-weight: 400;
}

.nl-meta {
display: flex;
flex-wrap: wrap;
gap: 14px;
font-size: 13px;
color: var(--nl-mute);
padding: 12px 0;
border-top: 1px solid var(--nl-line);
border-bottom: 1px solid var(--nl-line);
margin-bottom: 36px;
}
.nl-meta span { display: inline-flex; align-items: center; gap: 6px; }
.nl-meta strong { color: var(--nl-navy); font-weight: 600; }

.nl-author {
display: grid;
grid-template-columns: auto 1fr;
gap: 18px;
align-items: center;
background: var(--nl-bg-soft);
border-left: 4px solid var(--nl-navy);
padding: 22px 24px;
margin: 0 0 36px;
border-radius: 2px;
}
.nl-author-badge {
width: 60px; height: 60px;
border-radius: 50%;
background: var(--nl-navy);
color: #fff;
display: flex; align-items: center; justify-content: center;
font-weight: 800;
font-size: 20px;
letter-spacing: 0.02em;
}
.nl-author-name { font-weight: 700; font-size: 16px; color: var(--nl-navy-3); margin: 0 0 4px; letter-spacing: -0.01em; }
.nl-author-role { font-size: 13px; color: var(--nl-soft); line-height: 1.65; margin: 0; }
.nl-author-role b { color: var(--nl-navy); font-weight: 600; }

.nl-summary {
background: var(--nl-bg-card);
border: 1px solid var(--nl-line);
border-radius: 4px;
padding: 28px 28px 24px;
margin: 0 0 40px;
position: relative;
}
.nl-summary::before {
content: "한눈에 보기";
position: absolute;
top: -12px; left: 24px;
background: var(--nl-navy);
color: #fff;
font-size: 11px;
letter-spacing: 0.16em;
font-weight: 600;
padding: 5px 14px;
border-radius: 2px;
}
.nl-summary dl {
display: grid;
grid-template-columns: 100px 1fr;
gap: 12px 20px;
margin: 4px 0 0;
font-size: 14.5px;
}
.nl-summary dt {
color: var(--nl-mute);
font-weight: 500;
border-right: 1px solid var(--nl-line);
padding-right: 20px;
line-height: 1.7;
}
.nl-summary dd { margin: 0; color: var(--nl-ink); line-height: 1.7; }
.nl-summary dd b { color: var(--nl-navy); font-weight: 700; }
.nl-summary dd .nl-win { color: var(--nl-navy); font-weight: 700; border-bottom: 2px solid var(--nl-navy); padding-bottom: 1px; }

.nl-lead {
background: var(--nl-bg-soft);
border-left: 4px solid var(--nl-navy);
padding: 22px 26px;
margin: 36px 0;
border-radius: 2px;
}
.nl-lead p { margin: 0; font-size: 16px; line-height: 1.85; color: var(--nl-ink); }
.nl-lead p + p { margin-top: 12px; }
.nl-lead strong { color: var(--nl-navy); font-weight: 700; }

.nl-h2 {
font-weight: 800;
font-size: clamp(20px, 1.5vw + 14px, 26px);
color: var(--nl-navy-3);
margin: 64px 0 22px;
padding-bottom: 14px;
border-bottom: 2px solid var(--nl-navy);
display: flex;
align-items: baseline;
gap: 14px;
letter-spacing: -0.025em;
}
.nl-h2 .nl-h2-no {
font-size: 13px;
color: var(--nl-navy-soft);
letter-spacing: 0.2em;
font-weight: 700;
}

.nl-h3 {
font-weight: 700;
font-size: clamp(17px, 0.7vw + 14px, 19px);
color: var(--nl-navy);
margin: 36px 0 14px;
padding-left: 14px;
border-left: 3px solid var(--nl-navy);
letter-spacing: -0.015em;
}

.nl-wrap p { margin: 14px 0; }

.nl-defn {
background: var(--nl-bg-card);
border: 1px solid var(--nl-line);
border-top: 3px solid var(--nl-navy);
padding: 18px 22px;
margin: 24px 0;
border-radius: 2px;
font-size: 15px;
}
.nl-defn dt {
font-size: 12px;
letter-spacing: 0.14em;
color: var(--nl-navy);
font-weight: 700;
margin-bottom: 8px;
}
.nl-defn dd { margin: 0; color: var(--nl-ink); line-height: 1.8; }
.nl-defn dd b { color: var(--nl-navy); font-weight: 700; }

.nl-statute {
background: var(--nl-bg-soft);
border: 1px solid var(--nl-line);
border-left: 4px solid var(--nl-navy);
padding: 22px 26px;
margin: 28px 0;
border-radius: 2px;
position: relative;
}
.nl-statute::before {
content: "법령";
position: absolute;
top: 16px; right: 20px;
font-size: 10px;
letter-spacing: 0.18em;
font-weight: 700;
color: #fff;
background: var(--nl-navy);
padding: 3px 9px;
border-radius: 2px;
}
.nl-statute .nl-statute-h {
font-weight: 800;
font-size: 16px;
color: var(--nl-navy-3);
margin: 0 0 12px;
padding-right: 60px;
letter-spacing: -0.015em;
}
.nl-statute ol { padding-left: 18px; margin: 8px 0 0; }
.nl-statute li { margin-bottom: 6px; line-height: 1.85; }
.nl-statute .nl-cite { display: block; margin-top: 14px; font-size: 12px; color: var(--nl-mute); }
.nl-statute .nl-cite a { color: var(--nl-navy); }

.nl-issues {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 14px;
margin: 28px 0;
}
.nl-issue {
background: #ffffff;
border: 1px solid var(--nl-line);
border-radius: 2px;
padding: 18px 20px;
position: relative;
overflow: hidden;
transition: border-color 0.2s;
}
.nl-issue:hover { border-color: var(--nl-navy); }
.nl-issue::before {
content: "";
position: absolute;
top: 0; left: 0;
width: 4px; height: 100%;
background: var(--nl-navy);
}
.nl-issue h4 {
font-size: 15px;
color: var(--nl-navy-3);
margin: 0 0 8px;
font-weight: 700;
letter-spacing: -0.015em;
}
.nl-issue p {
font-size: 13.5px;
color: var(--nl-soft);
margin: 0;
line-height: 1.7;
}

.nl-steps {
counter-reset: nlstep;
display: grid;
gap: 12px;
margin: 28px 0;
}
.nl-step {
display: grid;
grid-template-columns: 64px 1fr;
gap: 18px;
background: #ffffff;
border: 1px solid var(--nl-line);
border-left: 4px solid var(--nl-navy);
border-radius: 2px;
padding: 18px 22px;
align-items: start;
}
.nl-step::before {
counter-increment: nlstep;
content: "STEP " counter(nlstep);
font-size: 11px;
font-weight: 700;
color: var(--nl-navy);
background: var(--nl-bg-soft);
padding: 6px 10px;
border-radius: 2px;
letter-spacing: 0.08em;
text-align: center;
line-height: 1.4;
align-self: start;
white-space: nowrap;
}
.nl-step h4 {
font-size: 16px;
color: var(--nl-navy-3);
margin: 2px 0 6px;
font-weight: 700;
letter-spacing: -0.015em;
}
.nl-step p {
font-size: 14.5px;
color: var(--nl-soft);
margin: 0;
line-height: 1.75;
}

.nl-table {
width: 100%;
border-collapse: collapse;
margin: 28px 0;
font-size: 14px;
background: #fff;
border: 1px solid var(--nl-line);
border-radius: 2px;
overflow: hidden;
}
.nl-table th, .nl-table td {
padding: 14px 16px;
border-bottom: 1px solid var(--nl-line);
border-right: 1px solid var(--nl-line);
vertical-align: top;
line-height: 1.7;
}
.nl-table th:last-child, .nl-table td:last-child { border-right: none; }
.nl-table tr:last-child td { border-bottom: none; }
.nl-table thead th {
background: var(--nl-navy);
color: #fff;
font-weight: 600;
letter-spacing: 0.02em;
text-align: left;
font-size: 13.5px;
}
.nl-table tbody th {
background: var(--nl-bg-soft);
color: var(--nl-navy-3);
font-weight: 600;
text-align: left;
width: 28%;
}
.nl-table .nl-td-good { color: var(--nl-navy); font-weight: 700; }
.nl-table .nl-td-bad { color: var(--nl-accent); font-weight: 700; }

.nl-checklist {
background: var(--nl-bg-card);
border: 1px solid var(--nl-line);
border-radius: 2px;
padding: 24px 26px;
margin: 28px 0;
}
.nl-checklist h4 {
font-size: 16px;
color: var(--nl-navy-3);
margin: 0 0 14px;
padding-bottom: 12px;
border-bottom: 1px solid var(--nl-line);
font-weight: 700;
letter-spacing: -0.015em;
}
.nl-checklist ul { list-style: none; padding: 0; margin: 0; }
.nl-checklist li {
position: relative;
padding-left: 30px;
margin-bottom: 10px;
font-size: 14.5px;
color: var(--nl-ink);
line-height: 1.75;
}
.nl-checklist li::before {
content: "";
position: absolute;
left: 0; top: 5px;
width: 18px; height: 18px;
border: 2px solid var(--nl-navy);
border-radius: 2px;
background: #fff;
}
.nl-checklist li::after {
content: "";
position: absolute;
left: 4px; top: 8px;
width: 10px; height: 5px;
border-left: 2px solid var(--nl-navy);
border-bottom: 2px solid var(--nl-navy);
transform: rotate(-45deg);
}

.nl-caution {
background: var(--nl-bg-soft);
border-left: 4px solid var(--nl-navy);
padding: 18px 22px;
margin: 28px 0;
border-radius: 2px;
}
.nl-caution h4 {
font-size: 15px;
color: var(--nl-navy-3);
margin: 0 0 8px;
font-weight: 700;
letter-spacing: -0.015em;
}
.nl-caution h4::before { content: "⚠ "; color: var(--nl-navy); }
.nl-caution p { margin: 0; font-size: 14.5px; color: var(--nl-soft); line-height: 1.75; }

.nl-law {
background: var(--nl-bg-card);
border: 1px solid var(--nl-line);
border-radius: 2px;
padding: 24px 26px;
margin: 28px 0;
}
.nl-law h4 {
font-size: 15px;
color: var(--nl-navy-3);
margin: 0 0 12px;
padding-bottom: 12px;
border-bottom: 1px solid var(--nl-line);
font-weight: 700;
letter-spacing: -0.015em;
}
.nl-law dl { margin: 0; font-size: 14px; }
.nl-law dt { color: var(--nl-navy); font-weight: 700; margin-top: 12px; }
.nl-law dt:first-child { margin-top: 0; }
.nl-law dd { margin: 4px 0 0; color: var(--nl-soft); line-height: 1.75; }

.nl-quote {
border-left: 3px solid var(--nl-navy);
padding: 8px 22px;
margin: 28px 0;
color: var(--nl-soft);
font-size: 16px;
line-height: 1.85;
}
.nl-quote p { font-style: normal; }
.nl-quote cite { display: block; font-style: normal; font-size: 13px; color: var(--nl-mute); margin-top: 8px; }

.nl-faq {
margin: 40px 0;
border-top: 2px solid var(--nl-navy);
}
.nl-faq h2 { margin-top: 24px; }
.nl-faq details {
border-bottom: 1px solid var(--nl-line);
padding: 20px 4px;
}
.nl-faq summary {
font-size: 16px;
font-weight: 700;
color: var(--nl-navy-3);
cursor: pointer;
list-style: none;
display: flex;
align-items: flex-start;
gap: 12px;
line-height: 1.55;
padding-right: 30px;
position: relative;
letter-spacing: -0.015em;
}
.nl-faq summary::-webkit-details-marker { display: none; }
.nl-faq summary::before {
content: "Q";
flex-shrink: 0;
width: 26px; height: 26px;
background: var(--nl-navy);
color: #fff;
border-radius: 50%;
display: flex; align-items: center; justify-content: center;
font-size: 13px;
font-weight: 700;
}
.nl-faq summary::after {
content: "+";
position: absolute;
right: 0; top: 0;
font-size: 22px;
color: var(--nl-navy);
font-weight: 300;
transition: transform 0.25s;
line-height: 1;
}
.nl-faq details[open] summary::after { content: "−"; }
.nl-faq .nl-a {
margin-top: 14px;
padding-left: 38px;
font-size: 14.5px;
color: var(--nl-soft);
line-height: 1.85;
}
.nl-faq .nl-a::before {
content: "A. ";
font-weight: 800;
color: var(--nl-navy);
}

.nl-related {
background: var(--nl-bg-soft);
border: 1px solid var(--nl-line);
border-radius: 2px;
padding: 24px 26px;
margin: 32px 0;
}
.nl-related h4 {
font-size: 14px;
color: var(--nl-navy-3);
letter-spacing: 0.04em;
margin: 0 0 14px;
padding-bottom: 12px;
border-bottom: 1px solid var(--nl-line);
font-weight: 700;
}
.nl-related ul { list-style: none; padding: 0; margin: 0; }
.nl-related li {
font-size: 14px;
margin: 8px 0;
padding-left: 14px;
position: relative;
}
.nl-related li::before { content: "›"; position: absolute; left: 0; color: var(--nl-navy); font-weight: 700; }
.nl-related a { color: var(--nl-navy); text-decoration: none; }
.nl-related a:hover { text-decoration: underline; }

.nl-cta {
margin: 48px 0 24px;
background: var(--nl-navy);
color: #fff;
border-radius: 2px;
padding: 38px 32px;
text-align: center;
position: relative;
overflow: hidden;
}
.nl-cta::before {
content: "";
position: absolute;
top: 0; left: 0; right: 0;
height: 3px;
background: linear-gradient(90deg, var(--nl-navy-soft) 0%, #ffffff 100%);
}
.nl-cta-h {
font-size: clamp(20px, 1.5vw + 12px, 26px);
font-weight: 800;
margin: 0 0 8px;
position: relative;
letter-spacing: -0.025em;
}
.nl-cta-sub {
font-size: 14.5px;
color: #c5d1e0;
margin: 0 0 24px;
line-height: 1.7;
position: relative;
}
.nl-cta-buttons {
display: flex;
flex-wrap: wrap;
gap: 10px;
justify-content: center;
position: relative;
}
.nl-cta-buttons a {
display: inline-flex;
align-items: center;
gap: 8px;
font-size: 14.5px;
font-weight: 600;
padding: 14px 26px;
border-radius: 2px;
text-decoration: none;
transition: transform 0.2s, box-shadow 0.2s;
letter-spacing: 0.01em;
}
.nl-cta-buttons a:hover { transform: translateY(-2px); box-shadow: 0 6px 16px rgba(0,0,0,0.25); }
.nl-cta-kakao { background: #fee500; color: #181600; }
.nl-cta-tel { background: #ffffff; color: var(--nl-navy-3); }
.nl-cta-web { background: #ffffff; color: var(--nl-navy); border: 1.5px solid var(--nl-navy); font-weight: 700; }
.nl-cta-secret {
display: inline-flex;
align-items: center;
margin-top: 18px;
font-size: 12px;
color: #c5d1e0;
letter-spacing: 0.08em;
position: relative;
}

.nl-footer-cite {
margin-top: 40px;
padding-top: 24px;
border-top: 1px solid var(--nl-line);
font-size: 12px;
color: var(--nl-mute);
line-height: 1.8;
}
.nl-footer-cite h4 {
font-size: 12px;
letter-spacing: 0.08em;
color: var(--nl-navy);
margin: 0 0 10px;
font-weight: 700;
}
.nl-footer-cite ul { padding-left: 18px; margin: 0; }
.nl-footer-cite li { margin: 4px 0; }
.nl-footer-cite a { color: var(--nl-navy); }

.nl-disclaimer {
margin-top: 28px;
font-size: 12px;
color: var(--nl-mute);
line-height: 1.75;
padding: 14px 16px;
background: var(--nl-bg-soft);
border: 1px solid var(--nl-line);
border-radius: 2px;
}

@media (max-width: 640px) {
.nl-wrap { padding: 16px 14px; }
.nl-issues { grid-template-columns: 1fr; }
.nl-summary dl { grid-template-columns: 1fr; gap: 4px 0; }
.nl-summary dt { border-right: none; border-bottom: 1px solid var(--nl-line); padding: 0 0 4px; margin-bottom: 4px; }
.nl-author { grid-template-columns: 1fr; text-align: center; }
.nl-author-badge { margin: 0 auto; }
.nl-table thead { display: none; }
.nl-table tr { display: block; border-bottom: 2px solid var(--nl-navy); padding: 8px 0; }
.nl-table th, .nl-table td { display: block; border-right: none; padding: 8px 14px; }
.nl-table tbody th { width: 100%; }
.nl-step { grid-template-columns: 1fr; gap: 8px; }
.nl-step::before { justify-self: start; }
.nl-cta { padding: 28px 20px; }
.nl-cta-buttons a { width: 100%; justify-content: center; }
}

@media (max-width: 380px) {
.nl-wrap { padding: 14px 12px; font-size: 14.5px; }
.nl-h2 { flex-direction: column; gap: 4px; align-items: flex-start; }
.nl-h2 .nl-h2-no { font-size: 12px; }
.nl-statute, .nl-defn, .nl-checklist, .nl-related, .nl-law { padding: 16px 18px; }
}

/* ==========================================================================
[ADD-ON] 담당 변호인 카드 (nl-team) — 기존 스타일 수정 없이 추가된 블록
사용처: 성공사례 하단, CTA 상단. 1~2인 카드 배치.
========================================================================== */

.nl-team {
margin: 40px 0 36px;
}

.nl-team-h {
font-size: 15px;
font-weight: 700;
color: var(--nl-navy);
letter-spacing: -0.01em;
margin: 0 0 4px;
padding-left: 12px;
border-left: 3px solid var(--nl-navy);
line-height: 1.4;
}

.nl-team-sub {
font-size: 13.5px;
color: var(--nl-mute);
margin: 0 0 18px;
padding-left: 15px;
line-height: 1.7;
}

.nl-team-grid {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 16px;
}

.nl-card {
display: grid;
grid-template-columns: 84px minmax(0, 1fr);
gap: 16px;
background: var(--nl-bg-card);
border: 1px solid var(--nl-line);
border-top: 3px solid var(--nl-navy);
border-radius: 2px;
padding: 20px 18px;
align-items: start;
}

.nl-card-photo {
width: 84px;
height: 84px;
border-radius: 2px;
overflow: hidden;
background: var(--nl-bg-soft);
border: 1px solid var(--nl-line);
}

.nl-card-photo img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
}

.nl-card-role {
display: inline-block;
font-size: 10.5px;
font-weight: 700;
letter-spacing: 0.08em;
text-transform: uppercase;
color: var(--nl-navy-soft);
margin: 0 0 4px;
line-height: 1.3;
}

.nl-card-name {
font-size: 16.5px;
font-weight: 800;
color: var(--nl-ink);
letter-spacing: -0.02em;
margin: 0 0 8px;
line-height: 1.35;
}

.nl-card-name a {
color: var(--nl-ink);
text-decoration: none;
}
.nl-card-name a:hover {
color: var(--nl-navy);
text-decoration: underline;
text-underline-offset: 3px;
}

.nl-card-tags {
display: flex;
flex-wrap: wrap;
gap: 5px;
margin: 0 0 10px;
padding: 0;
list-style: none;
}

.nl-card-tags li {
font-size: 11.5px;
color: var(--nl-navy);
background: rgba(31, 78, 121, 0.07);
border-radius: 2px;
padding: 2px 7px;
line-height: 1.6;
letter-spacing: -0.01em;
}

.nl-card-desc {
font-size: 13.5px;
color: var(--nl-soft);
line-height: 1.75;
margin: 0 0 10px;
letter-spacing: -0.01em;
}

.nl-card-list {
margin: 0;
padding: 0;
list-style: none;
border-top: 1px solid var(--nl-line-soft);
padding-top: 9px;
}

.nl-card-list li {
font-size: 12.5px;
color: var(--nl-mute);
line-height: 1.7;
padding-left: 10px;
position: relative;
letter-spacing: -0.01em;
}

.nl-card-list li::before {
content: "";
position: absolute;
left: 0;
top: 9px;
width: 3px;
height: 3px;
border-radius: 50%;
background: var(--nl-navy-soft);
}

.nl-card-list li b {
color: var(--nl-soft);
font-weight: 700;
}

.nl-card-link {
display: inline-block;
font-size: 12.5px;
color: var(--nl-navy);
margin-top: 10px;
text-decoration: none;
border-bottom: 1px solid var(--nl-line);
padding-bottom: 1px;
}
.nl-card-link:hover {
border-bottom-color: var(--nl-navy);
}

@media (max-width: 760px) {
.nl-team-grid { grid-template-columns: 1fr; gap: 14px; }
}

@media (max-width: 480px) {
.nl-card {
grid-template-columns: 64px minmax(0, 1fr);
gap: 13px;
padding: 17px 15px;
}
.nl-card-photo { width: 64px; height: 64px; }
.nl-card-name { font-size: 15.5px; }
.nl-card-desc { font-size: 13px; }
}

/* [ADD-ON] 1인 카드일 때 전체 폭 사용 */
.nl-team-grid:has(> .nl-card:only-child) {
grid-template-columns: minmax(0, 1fr);
}
.nl-team-grid > .nl-card:only-child {
grid-template-columns: 110px minmax(0, 1fr);
gap: 20px;
padding: 22px 20px;
}
.nl-team-grid > .nl-card:only-child .nl-card-photo {
width: 110px;
height: 110px;
}
@media (max-width: 480px) {
.nl-team-grid > .nl-card:only-child {
grid-template-columns: 64px minmax(0, 1fr);
gap: 13px;
padding: 17px 15px;
}
.nl-team-grid > .nl-card:only-child .nl-card-photo {
width: 64px;
height: 64px;
}
}




2026.09.10

불송치

스타크래프트 게임 욕설 통매음 모욕죄 피의자 변호
























성공사례
디지털성범죄 · 사이버
게임 통매음·모욕 불송치




통매음 · 모욕 · 전부 불송치
스타크래프트 게임 욕설 통매음 모욕죄합의 없이 두 혐의 모두 불송치로 끝낸 사례
게임 중 오간 말 한마디가 두 죄명으로 돌아왔습니다. 한쪽은 표현의 목적을, 다른 쪽은 상대를 알아볼 수 있었는지를 따져야 하는 사안이라 각각 다른 지점에서 다퉜고, 조사 현장까지 동행해 마무리한 기록입니다.

카테고리 디지털성범죄 · 사이버
결과 통매음·모욕 전부 불송치
특이점 합의 없이 종결
작성일 2026. 8.





의뢰인
게임 중 처음 만난 상대와 말다툼을 벌이다 두 죄명으로 고소당한 분
사건 발단
감정이 격해지는 과정에서 상대와 그 가족을 향한 수위 높은 욕설이 오갔고 일부 표현에 성적인 내용이 포함됨
불리한 사정
상대가 게임 도중 자신의 신상을 밝힌 정황이 있었고 문제된 표현도 한 차례가 아니라 반복된 상태
대응 전략
표현의 목적과 상대를 알아볼 수 있었는지를 각각 나눠 검토하고, 경찰조사에 동행해 진술이 맥락과 어긋나지 않도록 관리
결과
두 혐의 모두 불송치 — 상대와 합의하지 않고 종결




게임을 하다 보면 경쟁이 달아오르며 감정이 앞서고, 순간적으로 거친 말이 오가는 일이 있습니다. 문제는 그 말이 게임 안에서 끝나지 않고 고소로 이어지는 경우입니다.
오늘 전할 사건도 그랬습니다. 게임 중 벌어진 말다툼에서 성적인 표현이 섞인 욕설이 나왔고, 통신매체이용음란과 모욕 두 죄명으로 함께 고소된 사안이었습니다.
의뢰인은 다른 곳에서 합의를 생각해 보라는 이야기를 들으신 상태였습니다. 그러나 뉴로이어 법률사무소가 전체 채팅과 당시 상황을 다시 살펴본 결과 두 혐의 모두 다퉈볼 여지가 있다고 판단했고, 합의하지 않고 대응해 전부 불송치 결정을 받아냈습니다.


01사건 개요 — 한 판의 말다툼이 두 죄명으로

의뢰인은 게임을 하던 중 처음 만난 상대와 언쟁을 벌이게 됐습니다. 감정이 치솟는 과정에서 상대와 그 가족을 겨냥한 거친 말이 나왔고, 일부 표현에는 성적인 내용도 섞여 있었습니다. 결국 두 죄명으로 경찰조사를 받게 되셨습니다.

기록을 처음 받아 보고 저희도 가볍게 볼 사건은 아니라고 생각했습니다. 상대가 게임 도중 자신의 신상을 밝힌 정황이 있었고, 문제된 표현도 한 번에 그치지 않고 반복돼 있었습니다. 욕설이었을 뿐이라는 말만 되풀이해서는 두 혐의를 함께 막아 내기 어려운 상황이었습니다.

그래서 가장 먼저 한 일은 문제된 단어만 떼어 보는 것이 아니었습니다. 그 표현들이 언제 어떤 대화 끝에 나왔는지, 두 사람이 왜 다투기 시작했는지 전체 흐름을 다시 맞춰 봤습니다. 거기까지 살피고 나니 방향이 잡혔습니다. 두 죄명은 서로 전혀 다른 자리에서 다퉈야 한다는 것이었습니다.


한 문장, 두 개의 다툼
같은 말이 두 죄명으로 걸려 오면 하나의 논리로 함께 막으려 하기 쉽습니다. 그런데 각 죄명이 요구하는 것은 다릅니다. 한쪽은 그 말을 왜 했는지를 보고, 다른 쪽은 그 말이 누구를 향한 것인지 알아볼 수 있었는지를 봅니다. 방어도 그만큼 갈라서 세워야 합니다.




표현의 목적
성적인 단어가 있었다는 사정만으로 죄명이 성립하는가.


대화의 맥락
그 말이 어떤 흐름 끝에 나왔는지를 어떻게 보일 것인가.


신상 공개와 특정성
상대가 자신의 정보를 밝혔다는 사실만으로 알아볼 수 있었다고 볼 것인가.


참여자들의 인식
함께 있던 사람들이 현실의 누구인지 알 수 있었는지 어떻게 따질 것인가.


조사에서의 진술
표현 하나씩 확인받는 자리에서 맥락이 흐트러지지 않게 하려면 무엇을 준비할 것인가.


합의 여부의 판단
인정하고 합의할 사안인지 다퉈 볼 사안인지 어디서 가를 것인가.



02문제 해결 — 두 죄명을 갈라 각각 세웠습니다

먼저 성범죄 쪽에서 눈여겨본 것은 야한 낱말이 섞였느냐가 아니었습니다. 그 말을 왜 꺼내게 됐는지, 오간 대화가 어떤 결이었는지였습니다. 이 죄명은 말이 거칠거나 야하다는 이유만으로 세워지지 않고, 조문이 요구하는 속내까지 함께 따지기 때문입니다.




말다툼의 경위 복원
게임이 진행되는 동안 언쟁이 어떻게 시작됐고 문제된 표현들이 어떤 감정과 흐름에서 나왔는지를 채팅 전체와 유사 사건의 판단을 토대로 구체적으로 정리했습니다.




특정성의 재검토
모욕 쪽에서는 상대가 게임 중 신상을 공개했다는 사실만으로 곧바로 특정성이 인정되는지부터 다시 봤습니다.




인식 가능성의 분해
온라인에서 이름이나 개인 정보를 적었다는 사실과, 당시 함께 게임하던 사람들이 그 정보로 현실의 특정인을 실제로 알아볼 수 있었는지는 별개라고 봤습니다. 참여자들의 관계와 신상이 공개된 방식, 다른 이용자들이 상대를 알아볼 수 있었는지를 하나씩 짚었습니다.




조사 동행과 진술 관리
가장 긴장한 순간은 서면을 낼 때보다 조사에 들어갔을 때였습니다. 수사관은 문제된 표현을 하나씩 제시하며 어떤 뜻으로 말한 것인지 거듭 확인했습니다. 저희는 표현 하나만 떼어 설명하다 전체 맥락과 어긋나는 진술이 남지 않도록 질문의 취지를 그때그때 확인하며, 게임 중 말다툼에서 나온 표현이라는 사실관계와 실제 의도가 조서에 정확히 반영되도록 함께 대응했습니다.




사실과 요건의 분리
조사가 끝나 갈 무렵에도 야한 말을 뱉었다는 사실과 이 죄명이 갖춰야 할 요소가 한데 뒤엉키지 않도록 다시 갈라 두었습니다. 말이 거칠었다는 대목은 감추지 않았습니다. 다만 그렇다고 조문이 요구하는 속내까지 바로 채워지는 것은 아니라는 점을, 주고받은 대화를 함께 펼쳐 놓고 풀어냈습니다.





이 사건 변호의 무게중심
조사에서는 했던 말을 억지로 부인하는 것보다, 인정할 사실은 인정하되 그 사실이 곧바로 어떤 범죄의 요건까지 채우는지는 정확히 갈라 진술하는 편이 낫습니다. 부인만 하면 신빙성이 흔들리고, 뭉뚱그려 인정하면 요건까지 넘겨주게 됩니다. 그 사이를 지키는 것이 이 사건의 관건이었습니다.



주의해야 할 점
고소를 당하셨다면 대화를 지우거나 일부만 갈무리하지 마시기 바랍니다. 맥락을 보이려면 앞뒤가 함께 남아 있어야 하는데, 문제된 부분만 남으면 오히려 불리해집니다. 또 조사 전에 어떤 말을 인정하고 부인할지만 정해 두는 것으로는 부족합니다. 수사기관이 무엇을 확인하려고 묻는지부터 알고 들어가야 합니다.


03최종 결과 — 전부 불송치, 합의도 없이

저희는 조사 전에 전체 채팅과 관련 판례를 검토해 변호인의견서를 내고 조사에도 직접 동행했으며, 이후 실제 조사에서 드러난 쟁점까지 다시 정리해 추가 의견서를 제출했습니다. 그 결과 경찰은 두 혐의 모두에 대해 불송치 결정을 내렸고, 의뢰인은 상대와 별도의 합의를 하지 않은 채 사건을 마무리하실 수 있었습니다.

처음 마주 앉았을 때 의뢰인은 다른 데서 한쪽은 걸릴 수 있다는 말을 들으신 뒤라 돈을 건네고 끝내야 하나 망설이고 계셨습니다. 저희 역시 첫걸음부터 좋은 그림을 그린 것은 아니었습니다. 다만 오간 말을 처음부터 다시 읽고 두 죄명을 따로 떼어 살피니 붙들 만한 자리가 눈에 들어왔고, 그 판단을 조사실에서도 흔들지 않은 것이 결말을 만들었습니다.


"한 문장이 두 죄명으로 걸려 왔다면 방어도 둘이어야 합니다. 각각이 묻는 것이 다르기 때문입니다."
— 뉴로이어 법률사무소


게임 안에서 야한 욕을 뱉었다고 해서 모든 사안이 같은 자리에 닿지는 않습니다. 무슨 말을 했는가는 물론이고 그 말이 어떤 결에서 튀어나왔는지, 어떤 속내였는지, 상대가 누구인지 가려질 수 있었는지까지 남은 자료를 두루 봐야 합니다. 그러니 이런 일로 고소를 받으셨다면 오간 말을 되도록 통째로 지켜 두시는 편이 좋습니다.

조사 날짜가 잡히셨다면 무엇을 받아들이고 무엇을 물리칠지 정해 두는 데서 그치지 마시기 바랍니다. 저쪽이 어떤 요소를 확인하려고 그 질문을 던지는지, 그리고 그때 품었던 마음을 어떻게 어긋남 없이 풀어낼지를 먼저 다듬어야 합니다. 오간 말과 받으신 서류를 들고 오시면 어느 대목을 붙들어 볼 수 있을지 자료부터 훑어 드리겠습니다.


게임 채팅으로 고소당했을 때 점검 포인트

문제된 부분만이 아니라 대화 전체를 보존했는가
말다툼이 어떻게 시작됐는지 앞부분까지 남아 있는가
상대가 신상을 밝힌 정황과 그 방식을 확인했는가
당시 함께 있던 참여자들의 관계를 정리했는가
같은 표현이 여러 차례였다면 각각의 시점을 구분했는가
조사 전에 질문의 의도를 이해하고 진술 방향을 정했는가




관련 법리 정리

통신매체이용음란의 요건
표현이 저속하거나 성적이라는 사정만으로 성립하지 않습니다. 법이 요구하는 목적까지 함께 판단되므로, 그 말을 왜 하게 됐는지와 전체 대화의 흐름이 검토 대상이 됩니다.
모욕죄의 특정성
그 말이 누구를 향한 것인지 알아볼 수 있어야 합니다. 온라인에서 정보를 적었다는 사실과 함께 있던 사람들이 현실의 특정인을 실제로 인식할 수 있었는지는 나눠서 봐야 합니다.
사실 인정과 요건 충족의 구분
어떤 말을 했다는 사실을 인정하는 것과 그 말이 범죄의 요건까지 채운다고 받아들이는 것은 다릅니다. 조사에서 이 둘이 뒤섞이면 불리한 진술로 남을 수 있습니다.
불송치
수사기관이 사건을 검찰로 넘기지 않기로 하는 결정입니다. 재판으로 이어지기 전 단계에서 정리된다는 점에서 부담의 차이가 큽니다.




이 사건을 담당한 변호인
서면 준비와 조사 현장 대응이 함께 필요했습니다. 이 사건은 두 변호사가 나눠 수행했습니다.







CEO Lawyer
김수열 대표변호사

#디지털성범죄#명예훼손·모욕#사이버범죄

서울대학교 심리학과를 거쳐 서울대학교 법학전문대학원을 졸업했고, 법무법인 율촌을 거쳐 뉴로이어 법률사무소를 이끌고 있는 대한변호사협회 인증 형사전문변호사입니다. 온라인에서 오간 말이 문제되는 사건을 피의자 방어와 고소대리 양쪽에서 수행해 왔습니다.

서울대 총학생회장 명예훼손 사건 대법원 파기환송 승소
방송 출연자·인플루언서 악성댓글 집단 고소 성공 수행
언론사 가짜뉴스 명예훼손·업무방해 고소대리

프로필 자세히 보기 →








Partner Lawyer
이도연 파트너변호사

#(디지털)성범죄#명예훼손·모욕#외국인 사건

대한변호사협회 인증 형사전문변호사로, 충북대학교 법학전문대학원을 졸업하고 연세대학교 국제학부를 거쳤습니다. 형사 전문 로펌에서 다양한 사건을 수행해 왔으며, 통신매체이용음란 사건을 피의자 변호와 고소 대리 양쪽에서 다루고 있습니다.

공무원 통신매체이용음란죄 징계 행정처분취소청구 승소
온라인 그루밍 사건 고소 대리 및 피의자 변호
SBS 시사교양 프로그램 법률 자문 수행

프로필 자세히 보기 →







FAQ게임 통매음·모욕, 자주 묻는 질문

게임하다 성적인 욕을 하면 곧바로 통매음이 되나요?
그렇지는 않습니다. 표현이 저속하거나 성적이라는 사정만으로 성립하는 죄명이 아니고, 법이 요구하는 목적까지 함께 판단됩니다. 그래서 그 말이 어떤 흐름 끝에 왜 나왔는지가 검토 대상이 됩니다.


상대가 게임에서 신상을 밝혔으면 모욕죄가 성립하나요?
밝혔다는 사실만으로 곧바로 인정되지는 않습니다. 온라인에 정보를 적은 것과 함께 있던 사람들이 현실의 특정인을 실제로 알아볼 수 있었는지는 나눠서 봐야 합니다. 이 사건에서도 그 지점을 하나씩 짚었습니다.


합의를 하지 않고도 끝낼 수 있나요?
사안에 따라 가능합니다. 이 사건에서도 다른 곳에서 합의를 권유받은 상태였지만, 기록을 다시 검토해 다툴 지점을 찾아 합의 없이 불송치로 마무리했습니다. 다만 기록에 따라 결론이 달라지므로 먼저 검토가 필요합니다.


채팅은 문제된 부분만 캡처하면 되나요?
권하지 않습니다. 맥락을 보이려면 앞뒤가 함께 남아 있어야 합니다. 문제된 대목만 남으면 그 표현이 어떤 흐름에서 나왔는지 설명하기 어려워져 오히려 불리해질 수 있습니다.


경찰조사에 변호사가 함께 가야 하나요?
진술이 조서에 어떻게 남느냐가 결과를 가르는 사건이라면 도움이 됩니다. 표현을 하나씩 확인받는 자리에서는 맥락과 어긋나는 진술이 남기 쉬운데, 질문의 취지를 그때그때 짚어 가며 대응할 수 있기 때문입니다.


했던 말은 부인하는 편이 유리한가요?
억지로 부인하면 신빙성이 흔들립니다. 인정할 사실은 인정하되, 그 사실이 곧바로 범죄의 요건까지 채우는지는 정확히 갈라 진술하는 편이 낫습니다. 이 사건에서도 그 구분을 조사 말미까지 유지했습니다.




함께 보면 좋은 글

통매음 합의금 요구, 내용증명 한 통으로 철회시킨 방어 사례
강제추행 누명, 억울함을 자료로 바꿔 혐의없음으로 종결한 사례
네이버TV 악플 고소, 가해자 6명을 특정해 처분까지 받아낸 사례




합의부터 고민하시기 전에 기록을 보셔야 합니다
게임 채팅으로 고소를 당하셨다면 대화 전체와 고소 내용을 준비해 문의해 주세요.어떤 부분을 다퉈볼 수 있는지 기록부터 살펴 드립니다.

카카오톡 상담
070-8098-0421
홈페이지 상담 신청

모든 상담 내용은 비밀이 보장됩니다



관련 법령: 성폭력범죄의 처벌 등에 관한 특례법상 통신매체를 이용한 음란행위, 형법상 모욕 규정 (국가법령정보센터, 작성일 기준)
뉴로이어 법률사무소 · 서울 서초구 강남대로 525 세영제이타워 11층(06536) · 사업자등록번호 588-14-01388 · [email protected]


본 성공사례는 뉴로이어 법률사무소가 실제 수행한 사건을 바탕으로 작성됐으며, 의뢰인 보호를 위해 일부 사실관계를 조정했습니다. 개별 사건의 결과는 구체적 사정에 따라 달라질 수 있어, 본 글이 유사 사건에서 동일한 결과를 약속하는 것은 아닙니다.




{
"@context": "https://schema.org",
"@type": "Article",
"headline": "같은 욕설이었지만 다툴 자리는 달랐습니다, 합의 없이 두 혐의 모두 불송치로 끝낸 성공사례",
"description": "게임 중 말다툼에서 나온 욕설로 통신매체이용음란과 모욕 두 혐의로 고소당한 사건. 표현의 목적과 상대를 알아볼 수 있었는지를 각각 나눠 다투고 경찰조사에 동행해 진술을 관리한 끝에, 합의 없이 두 혐의 모두 불송치 결정을 받아낸 뉴로이어 피의자변호 성공사례입니다.",
"inLanguage": "ko",
"datePublished": "2026-08-12",
"dateModified": "2026-08-12",
"author": [
{
"@type": "Person",
"name": "김수열",
"jobTitle": "대표변호사",
"url": "https://newlawyer.co.kr/page/21_view?wr_id=1",
"image": "https://newlawyer.co.kr/data/file/member/thumb-238321632_UzWE7X3O_a622b2fa6778b002d58c2ddc7bdddb15cb53f084_460x460.jpg",
"knowsAbout": [
"디지털성범죄",
"통신매체이용음란죄",
"명예훼손·모욕",
"사이버범죄"
],
"alumniOf": {
"@type": "CollegeOrUniversity",
"name": "서울대학교 법학전문대학원"
},
"worksFor": {
"@type": "LegalService",
"name": "뉴로이어 법률사무소",
"url": "https://www.newlawyer.co.kr"
}
},
{
"@type": "Person",
"name": "이도연",
"jobTitle": "파트너변호사",
"url": "https://www.newlawyer.co.kr/page/21_view?wr_id=22",
"image": "https://www.newlawyer.co.kr/data/file/member/thumb-3698724248_pZntIOW8_6b0dbe4891b0e9b00606a8443eab997e72367689_460x460.png",
"knowsAbout": [
"(디지털)성범죄",
"통신매체이용음란죄",
"명예훼손·모욕",
"외국인 형사사건"
],
"alumniOf": {
"@type": "CollegeOrUniversity",
"name": "충북대학교 법학전문대학원"
},
"worksFor": {
"@type": "LegalService",
"name": "뉴로이어 법률사무소",
"url": "https://www.newlawyer.co.kr"
}
}
],
"publisher": {
"@type": "LegalService",
"name": "뉴로이어 법률사무소",
"url": "https://www.newlawyer.co.kr",
"address": {
"@type": "PostalAddress",
"streetAddress": "강남대로 525 세영제이타워 11층",
"addressLocality": "서초구",
"addressRegion": "서울",
"postalCode": "06536",
"addressCountry": "KR"
},
"telephone": "+82-70-8098-0421"
},
"mainEntityOfPage": {
"@type": "WebPage",
"@id": "https://www.newlawyer.co.kr/31/428"
},
"about": [
"게임 통매음",
"스타크래프트 통매음",
"게임 욕설 모욕 고소",
"게임 패드립",
"통신매체이용음란 불송치",
"모욕죄 특정성"
]
}


{
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
{
"@type": "ListItem",
"position": 1,
"name": "홈",
"item": "https://www.newlawyer.co.kr"
},
{
"@type": "ListItem",
"position": 2,
"name": "성공사례",
"item": "https://www.newlawyer.co.kr/31"
},
{
"@type": "ListItem",
"position": 3,
"name": "디지털성범죄 · 사이버",
"item": "https://www.newlawyer.co.kr/31"
},
{
"@type": "ListItem",
"position": 4,
"name": "게임 통매음·모욕 불송치",
"item": "https://www.newlawyer.co.kr/31/428"
}
]
}


{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "게임하다 성적인 욕을 하면 곧바로 통매음이 되나요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "그렇지는 않습니다. 표현이 저속하거나 성적이라는 사정만으로 성립하는 죄명이 아니고, 법이 요구하는 목적까지 함께 판단됩니다. 그래서 그 말이 어떤 흐름 끝에 왜 나왔는지가 검토 대상이 됩니다."
}
},
{
"@type": "Question",
"name": "상대가 게임에서 신상을 밝혔으면 모욕죄가 성립하나요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "밝혔다는 사실만으로 곧바로 인정되지는 않습니다. 온라인에 정보를 적은 것과 함께 있던 사람들이 현실의 특정인을 실제로 알아볼 수 있었는지는 나눠서 봐야 합니다. 이 사건에서도 그 지점을 하나씩 짚었습니다."
}
},
{
"@type": "Question",
"name": "합의를 하지 않고도 끝낼 수 있나요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "사안에 따라 가능합니다. 이 사건에서도 다른 곳에서 합의를 권유받은 상태였지만, 기록을 다시 검토해 다툴 지점을 찾아 합의 없이 불송치로 마무리했습니다. 다만 기록에 따라 결론이 달라지므로 먼저 검토가 필요합니다."
}
},
{
"@type": "Question",
"name": "채팅은 문제된 부분만 캡처하면 되나요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "권하지 않습니다. 맥락을 보이려면 앞뒤가 함께 남아 있어야 합니다. 문제된 대목만 남으면 그 표현이 어떤 흐름에서 나왔는지 설명하기 어려워져 오히려 불리해질 수 있습니다."
}
},
{
"@type": "Question",
"name": "경찰조사에 변호사가 함께 가야 하나요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "진술이 조서에 어떻게 남느냐가 결과를 가르는 사건이라면 도움이 됩니다. 표현을 하나씩 확인받는 자리에서는 맥락과 어긋나는 진술이 남기 쉬운데, 질문의 취지를 그때그때 짚어 가며 대응할 수 있기 때문입니다."
}
},
{
"@type": "Question",
"name": "했던 말은 부인하는 편이 유리한가요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "억지로 부인하면 신빙성이 흔들립니다. 인정할 사실은 인정하되, 그 사실이 곧바로 범죄의 요건까지 채우는지는 정확히 갈라 진술하는 편이 낫습니다. 이 사건에서도 그 구분을 조사 말미까지 유지했습니다."
}
}
]
}


{
"@context": "https://schema.org",
"@type": "HowTo",
"name": "게임 채팅 통매음·모욕 방어 절차",
"description": "게임 중 오간 말로 두 죄명으로 고소됐을 때 각각을 나눠 다투는 순서입니다.",
"step": [
{
"@type": "HowToStep",
"name": "말다툼 경위 복원",
"text": "언쟁이 어떻게 시작됐고 표현이 어떤 흐름에서 나왔는지 채팅 전체로 정리합니다."
},
{
"@type": "HowToStep",
"name": "특정성의 재검토",
"text": "신상 공개 사실만으로 특정성이 인정되는지부터 다시 살핍니다."
},
{
"@type": "HowToStep",
"name": "인식 가능성 분해",
"text": "참여자들이 현실의 특정인을 실제로 알아볼 수 있었는지를 짚습니다."
},
{
"@type": "HowToStep",
"name": "조사 동행과 진술 관리",
"text": "질문의 취지를 확인하며 맥락과 어긋나는 진술이 남지 않게 대응합니다."
},
{
"@type": "HowToStep",
"name": "사실과 요건의 분리",
"text": "표현을 썼다는 사실과 죄명의 요건이 뒤섞이지 않도록 갈라 설명합니다."
}
]
}



:root {
--nl-navy: #1f4e79;
--nl-navy-2: #2e5a8a;
--nl-navy-3: #0f2e4d;
--nl-navy-soft: #5b7ea1;
--nl-ink: #222222;
--nl-soft: #444444;
--nl-mute: #767676;
--nl-line: #e5e7eb;
--nl-line-soft: #eef0f3;
--nl-bg-soft: #f5f7fa;
--nl-bg-card: #fafbfc;
--nl-accent: #c0392b;
--nl-bg: #ffffff;
}

.nl-wrap {
font-family: "Pretendard", "Pretendard Variable", -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", sans-serif;
color: var(--nl-ink);
line-height: 1.85;
font-size: clamp(15px, 1.05vw + 12px, 17px);
background: var(--nl-bg);
-webkit-text-size-adjust: 100%;
text-size-adjust: 100%;
word-break: keep-all;
overflow-wrap: anywhere;
max-width: 880px;
margin: 0 auto;
padding: clamp(20px, 4vw, 48px) clamp(16px, 3vw, 32px);
position: relative;
font-feature-settings: "ss01", "ss02";
letter-spacing: -0.005em;
}

.nl-wrap * { box-sizing: border-box; }

.nl-wrap a { color: var(--nl-navy); text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; }
.nl-wrap a:hover { color: var(--nl-navy-3); }

.nl-crumb {
font-size: 13px;
color: var(--nl-mute);
letter-spacing: 0.01em;
margin-bottom: 24px;
padding-bottom: 14px;
border-bottom: 1px solid var(--nl-line);
}
.nl-crumb ol { list-style: none; padding: 0; margin: 0; display: flex; flex-wrap: wrap; gap: 6px 10px; }
.nl-crumb li + li::before { content: "›"; margin-right: 10px; color: var(--nl-navy-soft); }
.nl-crumb a { color: var(--nl-mute); text-decoration: none; }
.nl-crumb a:hover { color: var(--nl-navy); }

.nl-tag {
display: inline-flex;
align-items: center;
gap: 8px;
font-size: 12px;
font-weight: 600;
letter-spacing: 0.12em;
color: #ffffff;
background: var(--nl-navy);
padding: 7px 16px;
border-radius: 2px;
}
.nl-tag::before {
content: "";
width: 6px; height: 6px;
border-radius: 50%;
background: #ffffff;
}

.nl-h1 {
font-weight: 800;
font-size: clamp(24px, 3.2vw + 12px, 38px);
line-height: 1.35;
color: var(--nl-navy-3);
margin: 16px 0 14px;
letter-spacing: -0.025em;
}
.nl-h1 .nl-h1-accent { color: var(--nl-navy); }

.nl-sub {
font-size: clamp(14px, 0.6vw + 12px, 16px);
color: var(--nl-soft);
margin: 0 0 28px;
line-height: 1.75;
font-weight: 400;
}

.nl-meta {
display: flex;
flex-wrap: wrap;
gap: 14px;
font-size: 13px;
color: var(--nl-mute);
padding: 12px 0;
border-top: 1px solid var(--nl-line);
border-bottom: 1px solid var(--nl-line);
margin-bottom: 36px;
}
.nl-meta span { display: inline-flex; align-items: center; gap: 6px; }
.nl-meta strong { color: var(--nl-navy); font-weight: 600; }

.nl-author {
display: grid;
grid-template-columns: auto 1fr;
gap: 18px;
align-items: center;
background: var(--nl-bg-soft);
border-left: 4px solid var(--nl-navy);
padding: 22px 24px;
margin: 0 0 36px;
border-radius: 2px;
}
.nl-author-badge {
width: 60px; height: 60px;
border-radius: 50%;
background: var(--nl-navy);
color: #fff;
display: flex; align-items: center; justify-content: center;
font-weight: 800;
font-size: 20px;
letter-spacing: 0.02em;
}
.nl-author-name { font-weight: 700; font-size: 16px; color: var(--nl-navy-3); margin: 0 0 4px; letter-spacing: -0.01em; }
.nl-author-role { font-size: 13px; color: var(--nl-soft); line-height: 1.65; margin: 0; }
.nl-author-role b { color: var(--nl-navy); font-weight: 600; }

.nl-summary {
background: var(--nl-bg-card);
border: 1px solid var(--nl-line);
border-radius: 4px;
padding: 28px 28px 24px;
margin: 0 0 40px;
position: relative;
}
.nl-summary::before {
content: "한눈에 보기";
position: absolute;
top: -12px; left: 24px;
background: var(--nl-navy);
color: #fff;
font-size: 11px;
letter-spacing: 0.16em;
font-weight: 600;
padding: 5px 14px;
border-radius: 2px;
}
.nl-summary dl {
display: grid;
grid-template-columns: 100px 1fr;
gap: 12px 20px;
margin: 4px 0 0;
font-size: 14.5px;
}
.nl-summary dt {
color: var(--nl-mute);
font-weight: 500;
border-right: 1px solid var(--nl-line);
padding-right: 20px;
line-height: 1.7;
}
.nl-summary dd { margin: 0; color: var(--nl-ink); line-height: 1.7; }
.nl-summary dd b { color: var(--nl-navy); font-weight: 700; }
.nl-summary dd .nl-win { color: var(--nl-navy); font-weight: 700; border-bottom: 2px solid var(--nl-navy); padding-bottom: 1px; }

.nl-lead {
background: var(--nl-bg-soft);
border-left: 4px solid var(--nl-navy);
padding: 22px 26px;
margin: 36px 0;
border-radius: 2px;
}
.nl-lead p { margin: 0; font-size: 16px; line-height: 1.85; color: var(--nl-ink); }
.nl-lead p + p { margin-top: 12px; }
.nl-lead strong { color: var(--nl-navy); font-weight: 700; }

.nl-h2 {
font-weight: 800;
font-size: clamp(20px, 1.5vw + 14px, 26px);
color: var(--nl-navy-3);
margin: 64px 0 22px;
padding-bottom: 14px;
border-bottom: 2px solid var(--nl-navy);
display: flex;
align-items: baseline;
gap: 14px;
letter-spacing: -0.025em;
}
.nl-h2 .nl-h2-no {
font-size: 13px;
color: var(--nl-navy-soft);
letter-spacing: 0.2em;
font-weight: 700;
}

.nl-h3 {
font-weight: 700;
font-size: clamp(17px, 0.7vw + 14px, 19px);
color: var(--nl-navy);
margin: 36px 0 14px;
padding-left: 14px;
border-left: 3px solid var(--nl-navy);
letter-spacing: -0.015em;
}

.nl-wrap p { margin: 14px 0; }

.nl-defn {
background: var(--nl-bg-card);
border: 1px solid var(--nl-line);
border-top: 3px solid var(--nl-navy);
padding: 18px 22px;
margin: 24px 0;
border-radius: 2px;
font-size: 15px;
}
.nl-defn dt {
font-size: 12px;
letter-spacing: 0.14em;
color: var(--nl-navy);
font-weight: 700;
margin-bottom: 8px;
}
.nl-defn dd { margin: 0; color: var(--nl-ink); line-height: 1.8; }
.nl-defn dd b { color: var(--nl-navy); font-weight: 700; }

.nl-statute {
background: var(--nl-bg-soft);
border: 1px solid var(--nl-line);
border-left: 4px solid var(--nl-navy);
padding: 22px 26px;
margin: 28px 0;
border-radius: 2px;
position: relative;
}
.nl-statute::before {
content: "법령";
position: absolute;
top: 16px; right: 20px;
font-size: 10px;
letter-spacing: 0.18em;
font-weight: 700;
color: #fff;
background: var(--nl-navy);
padding: 3px 9px;
border-radius: 2px;
}
.nl-statute .nl-statute-h {
font-weight: 800;
font-size: 16px;
color: var(--nl-navy-3);
margin: 0 0 12px;
padding-right: 60px;
letter-spacing: -0.015em;
}
.nl-statute ol { padding-left: 18px; margin: 8px 0 0; }
.nl-statute li { margin-bottom: 6px; line-height: 1.85; }
.nl-statute .nl-cite { display: block; margin-top: 14px; font-size: 12px; color: var(--nl-mute); }
.nl-statute .nl-cite a { color: var(--nl-navy); }

.nl-issues {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 14px;
margin: 28px 0;
}
.nl-issue {
background: #ffffff;
border: 1px solid var(--nl-line);
border-radius: 2px;
padding: 18px 20px;
position: relative;
overflow: hidden;
transition: border-color 0.2s;
}
.nl-issue:hover { border-color: var(--nl-navy); }
.nl-issue::before {
content: "";
position: absolute;
top: 0; left: 0;
width: 4px; height: 100%;
background: var(--nl-navy);
}
.nl-issue h4 {
font-size: 15px;
color: var(--nl-navy-3);
margin: 0 0 8px;
font-weight: 700;
letter-spacing: -0.015em;
}
.nl-issue p {
font-size: 13.5px;
color: var(--nl-soft);
margin: 0;
line-height: 1.7;
}

.nl-steps {
counter-reset: nlstep;
display: grid;
gap: 12px;
margin: 28px 0;
}
.nl-step {
display: grid;
grid-template-columns: 64px 1fr;
gap: 18px;
background: #ffffff;
border: 1px solid var(--nl-line);
border-left: 4px solid var(--nl-navy);
border-radius: 2px;
padding: 18px 22px;
align-items: start;
}
.nl-step::before {
counter-increment: nlstep;
content: "STEP " counter(nlstep);
font-size: 11px;
font-weight: 700;
color: var(--nl-navy);
background: var(--nl-bg-soft);
padding: 6px 10px;
border-radius: 2px;
letter-spacing: 0.08em;
text-align: center;
line-height: 1.4;
align-self: start;
white-space: nowrap;
}
.nl-step h4 {
font-size: 16px;
color: var(--nl-navy-3);
margin: 2px 0 6px;
font-weight: 700;
letter-spacing: -0.015em;
}
.nl-step p {
font-size: 14.5px;
color: var(--nl-soft);
margin: 0;
line-height: 1.75;
}

.nl-table {
width: 100%;
border-collapse: collapse;
margin: 28px 0;
font-size: 14px;
background: #fff;
border: 1px solid var(--nl-line);
border-radius: 2px;
overflow: hidden;
}
.nl-table th, .nl-table td {
padding: 14px 16px;
border-bottom: 1px solid var(--nl-line);
border-right: 1px solid var(--nl-line);
vertical-align: top;
line-height: 1.7;
}
.nl-table th:last-child, .nl-table td:last-child { border-right: none; }
.nl-table tr:last-child td { border-bottom: none; }
.nl-table thead th {
background: var(--nl-navy);
color: #fff;
font-weight: 600;
letter-spacing: 0.02em;
text-align: left;
font-size: 13.5px;
}
.nl-table tbody th {
background: var(--nl-bg-soft);
color: var(--nl-navy-3);
font-weight: 600;
text-align: left;
width: 28%;
}
.nl-table .nl-td-good { color: var(--nl-navy); font-weight: 700; }
.nl-table .nl-td-bad { color: var(--nl-accent); font-weight: 700; }

.nl-checklist {
background: var(--nl-bg-card);
border: 1px solid var(--nl-line);
border-radius: 2px;
padding: 24px 26px;
margin: 28px 0;
}
.nl-checklist h4 {
font-size: 16px;
color: var(--nl-navy-3);
margin: 0 0 14px;
padding-bottom: 12px;
border-bottom: 1px solid var(--nl-line);
font-weight: 700;
letter-spacing: -0.015em;
}
.nl-checklist ul { list-style: none; padding: 0; margin: 0; }
.nl-checklist li {
position: relative;
padding-left: 30px;
margin-bottom: 10px;
font-size: 14.5px;
color: var(--nl-ink);
line-height: 1.75;
}
.nl-checklist li::before {
content: "";
position: absolute;
left: 0; top: 5px;
width: 18px; height: 18px;
border: 2px solid var(--nl-navy);
border-radius: 2px;
background: #fff;
}
.nl-checklist li::after {
content: "";
position: absolute;
left: 4px; top: 8px;
width: 10px; height: 5px;
border-left: 2px solid var(--nl-navy);
border-bottom: 2px solid var(--nl-navy);
transform: rotate(-45deg);
}

.nl-caution {
background: var(--nl-bg-soft);
border-left: 4px solid var(--nl-navy);
padding: 18px 22px;
margin: 28px 0;
border-radius: 2px;
}
.nl-caution h4 {
font-size: 15px;
color: var(--nl-navy-3);
margin: 0 0 8px;
font-weight: 700;
letter-spacing: -0.015em;
}
.nl-caution h4::before { content: "⚠ "; color: var(--nl-navy); }
.nl-caution p { margin: 0; font-size: 14.5px; color: var(--nl-soft); line-height: 1.75; }

.nl-law {
background: var(--nl-bg-card);
border: 1px solid var(--nl-line);
border-radius: 2px;
padding: 24px 26px;
margin: 28px 0;
}
.nl-law h4 {
font-size: 15px;
color: var(--nl-navy-3);
margin: 0 0 12px;
padding-bottom: 12px;
border-bottom: 1px solid var(--nl-line);
font-weight: 700;
letter-spacing: -0.015em;
}
.nl-law dl { margin: 0; font-size: 14px; }
.nl-law dt { color: var(--nl-navy); font-weight: 700; margin-top: 12px; }
.nl-law dt:first-child { margin-top: 0; }
.nl-law dd { margin: 4px 0 0; color: var(--nl-soft); line-height: 1.75; }

.nl-quote {
border-left: 3px solid var(--nl-navy);
padding: 8px 22px;
margin: 28px 0;
color: var(--nl-soft);
font-size: 16px;
line-height: 1.85;
}
.nl-quote p { font-style: normal; }
.nl-quote cite { display: block; font-style: normal; font-size: 13px; color: var(--nl-mute); margin-top: 8px; }

.nl-faq {
margin: 40px 0;
border-top: 2px solid var(--nl-navy);
}
.nl-faq h2 { margin-top: 24px; }
.nl-faq details {
border-bottom: 1px solid var(--nl-line);
padding: 20px 4px;
}
.nl-faq summary {
font-size: 16px;
font-weight: 700;
color: var(--nl-navy-3);
cursor: pointer;
list-style: none;
display: flex;
align-items: flex-start;
gap: 12px;
line-height: 1.55;
padding-right: 30px;
position: relative;
letter-spacing: -0.015em;
}
.nl-faq summary::-webkit-details-marker { display: none; }
.nl-faq summary::before {
content: "Q";
flex-shrink: 0;
width: 26px; height: 26px;
background: var(--nl-navy);
color: #fff;
border-radius: 50%;
display: flex; align-items: center; justify-content: center;
font-size: 13px;
font-weight: 700;
}
.nl-faq summary::after {
content: "+";
position: absolute;
right: 0; top: 0;
font-size: 22px;
color: var(--nl-navy);
font-weight: 300;
transition: transform 0.25s;
line-height: 1;
}
.nl-faq details[open] summary::after { content: "−"; }
.nl-faq .nl-a {
margin-top: 14px;
padding-left: 38px;
font-size: 14.5px;
color: var(--nl-soft);
line-height: 1.85;
}
.nl-faq .nl-a::before {
content: "A. ";
font-weight: 800;
color: var(--nl-navy);
}

.nl-related {
background: var(--nl-bg-soft);
border: 1px solid var(--nl-line);
border-radius: 2px;
padding: 24px 26px;
margin: 32px 0;
}
.nl-related h4 {
font-size: 14px;
color: var(--nl-navy-3);
letter-spacing: 0.04em;
margin: 0 0 14px;
padding-bottom: 12px;
border-bottom: 1px solid var(--nl-line);
font-weight: 700;
}
.nl-related ul { list-style: none; padding: 0; margin: 0; }
.nl-related li {
font-size: 14px;
margin: 8px 0;
padding-left: 14px;
position: relative;
}
.nl-related li::before { content: "›"; position: absolute; left: 0; color: var(--nl-navy); font-weight: 700; }
.nl-related a { color: var(--nl-navy); text-decoration: none; }
.nl-related a:hover { text-decoration: underline; }

.nl-cta {
margin: 48px 0 24px;
background: var(--nl-navy);
color: #fff;
border-radius: 2px;
padding: 38px 32px;
text-align: center;
position: relative;
overflow: hidden;
}
.nl-cta::before {
content: "";
position: absolute;
top: 0; left: 0; right: 0;
height: 3px;
background: linear-gradient(90deg, var(--nl-navy-soft) 0%, #ffffff 100%);
}
.nl-cta-h {
font-size: clamp(20px, 1.5vw + 12px, 26px);
font-weight: 800;
margin: 0 0 8px;
position: relative;
letter-spacing: -0.025em;
}
.nl-cta-sub {
font-size: 14.5px;
color: #c5d1e0;
margin: 0 0 24px;
line-height: 1.7;
position: relative;
}
.nl-cta-buttons {
display: flex;
flex-wrap: wrap;
gap: 10px;
justify-content: center;
position: relative;
}
.nl-cta-buttons a {
display: inline-flex;
align-items: center;
gap: 8px;
font-size: 14.5px;
font-weight: 600;
padding: 14px 26px;
border-radius: 2px;
text-decoration: none;
transition: transform 0.2s, box-shadow 0.2s;
letter-spacing: 0.01em;
}
.nl-cta-buttons a:hover { transform: translateY(-2px); box-shadow: 0 6px 16px rgba(0,0,0,0.25); }
.nl-cta-kakao { background: #fee500; color: #181600; }
.nl-cta-tel { background: #ffffff; color: var(--nl-navy-3); }
.nl-cta-web { background: #ffffff; color: var(--nl-navy); border: 1.5px solid var(--nl-navy); font-weight: 700; }
.nl-cta-secret {
display: inline-flex;
align-items: center;
margin-top: 18px;
font-size: 12px;
color: #c5d1e0;
letter-spacing: 0.08em;
position: relative;
}

.nl-footer-cite {
margin-top: 40px;
padding-top: 24px;
border-top: 1px solid var(--nl-line);
font-size: 12px;
color: var(--nl-mute);
line-height: 1.8;
}
.nl-footer-cite h4 {
font-size: 12px;
letter-spacing: 0.08em;
color: var(--nl-navy);
margin: 0 0 10px;
font-weight: 700;
}
.nl-footer-cite ul { padding-left: 18px; margin: 0; }
.nl-footer-cite li { margin: 4px 0; }
.nl-footer-cite a { color: var(--nl-navy); }

.nl-disclaimer {
margin-top: 28px;
font-size: 12px;
color: var(--nl-mute);
line-height: 1.75;
padding: 14px 16px;
background: var(--nl-bg-soft);
border: 1px solid var(--nl-line);
border-radius: 2px;
}

@media (max-width: 640px) {
.nl-wrap { padding: 16px 14px; }
.nl-issues { grid-template-columns: 1fr; }
.nl-summary dl { grid-template-columns: 1fr; gap: 4px 0; }
.nl-summary dt { border-right: none; border-bottom: 1px solid var(--nl-line); padding: 0 0 4px; margin-bottom: 4px; }
.nl-author { grid-template-columns: 1fr; text-align: center; }
.nl-author-badge { margin: 0 auto; }
.nl-table thead { display: none; }
.nl-table tr { display: block; border-bottom: 2px solid var(--nl-navy); padding: 8px 0; }
.nl-table th, .nl-table td { display: block; border-right: none; padding: 8px 14px; }
.nl-table tbody th { width: 100%; }
.nl-step { grid-template-columns: 1fr; gap: 8px; }
.nl-step::before { justify-self: start; }
.nl-cta { padding: 28px 20px; }
.nl-cta-buttons a { width: 100%; justify-content: center; }
}

@media (max-width: 380px) {
.nl-wrap { padding: 14px 12px; font-size: 14.5px; }
.nl-h2 { flex-direction: column; gap: 4px; align-items: flex-start; }
.nl-h2 .nl-h2-no { font-size: 12px; }
.nl-statute, .nl-defn, .nl-checklist, .nl-related, .nl-law { padding: 16px 18px; }
}

/* ==========================================================================
[ADD-ON] 담당 변호인 카드 (nl-team) — 기존 스타일 수정 없이 추가된 블록
사용처: 성공사례 하단, CTA 상단. 1~2인 카드 배치.
========================================================================== */

.nl-team {
margin: 40px 0 36px;
}

.nl-team-h {
font-size: 15px;
font-weight: 700;
color: var(--nl-navy);
letter-spacing: -0.01em;
margin: 0 0 4px;
padding-left: 12px;
border-left: 3px solid var(--nl-navy);
line-height: 1.4;
}

.nl-team-sub {
font-size: 13.5px;
color: var(--nl-mute);
margin: 0 0 18px;
padding-left: 15px;
line-height: 1.7;
}

.nl-team-grid {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 16px;
}

.nl-card {
display: grid;
grid-template-columns: 84px minmax(0, 1fr);
gap: 16px;
background: var(--nl-bg-card);
border: 1px solid var(--nl-line);
border-top: 3px solid var(--nl-navy);
border-radius: 2px;
padding: 20px 18px;
align-items: start;
}

.nl-card-photo {
width: 84px;
height: 84px;
border-radius: 2px;
overflow: hidden;
background: var(--nl-bg-soft);
border: 1px solid var(--nl-line);
}

.nl-card-photo img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
}

.nl-card-role {
display: inline-block;
font-size: 10.5px;
font-weight: 700;
letter-spacing: 0.08em;
text-transform: uppercase;
color: var(--nl-navy-soft);
margin: 0 0 4px;
line-height: 1.3;
}

.nl-card-name {
font-size: 16.5px;
font-weight: 800;
color: var(--nl-ink);
letter-spacing: -0.02em;
margin: 0 0 8px;
line-height: 1.35;
}

.nl-card-name a {
color: var(--nl-ink);
text-decoration: none;
}
.nl-card-name a:hover {
color: var(--nl-navy);
text-decoration: underline;
text-underline-offset: 3px;
}

.nl-card-tags {
display: flex;
flex-wrap: wrap;
gap: 5px;
margin: 0 0 10px;
padding: 0;
list-style: none;
}

.nl-card-tags li {
font-size: 11.5px;
color: var(--nl-navy);
background: rgba(31, 78, 121, 0.07);
border-radius: 2px;
padding: 2px 7px;
line-height: 1.6;
letter-spacing: -0.01em;
}

.nl-card-desc {
font-size: 13.5px;
color: var(--nl-soft);
line-height: 1.75;
margin: 0 0 10px;
letter-spacing: -0.01em;
}

.nl-card-list {
margin: 0;
padding: 0;
list-style: none;
border-top: 1px solid var(--nl-line-soft);
padding-top: 9px;
}

.nl-card-list li {
font-size: 12.5px;
color: var(--nl-mute);
line-height: 1.7;
padding-left: 10px;
position: relative;
letter-spacing: -0.01em;
}

.nl-card-list li::before {
content: "";
position: absolute;
left: 0;
top: 9px;
width: 3px;
height: 3px;
border-radius: 50%;
background: var(--nl-navy-soft);
}

.nl-card-list li b {
color: var(--nl-soft);
font-weight: 700;
}

.nl-card-link {
display: inline-block;
font-size: 12.5px;
color: var(--nl-navy);
margin-top: 10px;
text-decoration: none;
border-bottom: 1px solid var(--nl-line);
padding-bottom: 1px;
}
.nl-card-link:hover {
border-bottom-color: var(--nl-navy);
}

@media (max-width: 760px) {
.nl-team-grid { grid-template-columns: 1fr; gap: 14px; }
}

@media (max-width: 480px) {
.nl-card {
grid-template-columns: 64px minmax(0, 1fr);
gap: 13px;
padding: 17px 15px;
}
.nl-card-photo { width: 64px; height: 64px; }
.nl-card-name { font-size: 15.5px; }
.nl-card-desc { font-size: 13px; }
}

/* [ADD-ON] 1인 카드일 때 전체 폭 사용 */
.nl-team-grid:has(> .nl-card:only-child) {
grid-template-columns: minmax(0, 1fr);
}
.nl-team-grid > .nl-card:only-child {
grid-template-columns: 110px minmax(0, 1fr);
gap: 20px;
padding: 22px 20px;
}
.nl-team-grid > .nl-card:only-child .nl-card-photo {
width: 110px;
height: 110px;
}
@media (max-width: 480px) {
.nl-team-grid > .nl-card:only-child {
grid-template-columns: 64px minmax(0, 1fr);
gap: 13px;
padding: 17px 15px;
}
.nl-team-grid > .nl-card:only-child .nl-card-photo {
width: 64px;
height: 64px;
}
}




2026.09.10

벌금형500만원+스토킹 치료프로그램

전남친 데이트폭행, 카카오톡 부재중 전화 스토킹 고소대리 성공사례
























성공사례
협박 · 스토킹
데이트폭력·스토킹 구약식




스토킹 · 폭행 · 벌금 500만원 구약식
전남친 데이트폭력(폭행), 카카오톡, 부재중전화 스토킹 그 답장을 거부의사로 증명하여 형사처벌 이끈 성공사례
짐을 돌려받으려 몇 번 응답한 것이 서로 연락을 주고받은 사이라는 주장으로 돌아왔습니다. 어떤 연락에 왜 답했는지를 갈라내고 그 밖의 접근에는 반응하지 않은 흐름을 세워, 폭행과 스토킹 모두 인정받은 기록입니다.

카테고리 스토킹 · 데이트폭력
결과 폭행·스토킹 모두 인정, 벌금 500만원 구약식
쟁점 답장 기록과 거부 의사의 관계
작성일 2026. 8.





의뢰인
교제 중 폭행 피해를 입고 헤어진 뒤에도 연락에 시달리던 분
사건 발단
관계를 정리한 뒤에도 메신저와 전화, SNS를 통한 연락이 이어졌고 거부 의사를 밝힌 뒤에도 멎지 않음
불리한 기록
정리해야 할 일이 남아 일부 연락에 응답한 탓에, 기록만 보면 서로 연락을 주고받은 것처럼 읽힐 여지
대응 전략
답장의 이유와 대상을 갈라 용건에 한정된 응답임을 보이고, 부재중 전화의 성격과 폭행 경위를 함께 정리
결과
폭행과 스토킹 혐의 모두 인정 — 벌금 500만원 구약식 처분




스토킹 사건을 맡다 보면 피해자가 일부 연락에 응답했다는 이유로 상대 쪽에서 서로 연락을 주고받은 사이였다고 주장하는 경우를 자주 봅니다.
그런데 헤어진 사이에도 정리해야 할 일은 남습니다. 짐을 돌려받아야 하고 나눠야 할 것이 있으면 연락을 아예 끊기 어렵습니다. 그 몇 번의 답장이 나중에 발목을 잡는 셈입니다.
오늘 전할 사건도 그랬습니다. 뉴로이어 법률사무소는 어떤 연락에 왜 답했는지를 갈라내 그 기록을 오히려 거부 의사를 보여 주는 자료로 바꿨고, 폭행과 스토킹 혐의가 모두 인정되는 결과에 닿았습니다.


01사건 개요 — 끊어야 하는데 끊을 수 없었습니다

의뢰인은 사귀는 동안 갈등을 겪는 과정에서 폭행을 당하셨고, 그 일을 계기로 관계를 정리하셨습니다. 그런데 헤어진 뒤에도 메신저와 전화, SNS를 통한 연락이 이어졌습니다.

의뢰인은 더 이상 연락을 원하지 않는다는 뜻을 분명히 전했습니다. 다만 아직 정리하지 못한 일이 남아 있어 일부 연락에는 응답할 수밖에 없는 처지였습니다. 이 때문에 기록만 놓고 보면 두 사람이 계속 연락을 주고받은 것처럼 읽힐 여지가 생겼습니다.

저희가 전체 대화를 다시 훑어보니 의뢰인이 답한 것은 필요한 용건에 한정돼 있었고, 그 밖의 연락에는 반응하지 않은 흐름이 분명했습니다. 그래서 이 사건은 답장을 했다는 사실보다 어떤 이유로 어떤 연락에만 응답했는지를 갈라 보여 주는 것이 관건이라고 판단했고, 그 지점을 중심에 두고 조사 대응에 들어갔습니다.


답장했다고 관계가 이어진 것은 아닙니다
헤어진 뒤에도 짐이나 정산처럼 마무리해야 할 일이 남는 것은 흔합니다. 그 때문에 응답한 몇 번의 연락이 서로 대화를 이어 간 근거로 쓰이곤 합니다. 그러나 답장이 있었느냐가 아니라 그 답장이 무엇을 위한 것이었느냐가 판단의 갈림길입니다. 용건에만 답하고 나머지에는 반응하지 않았다면 그 자체가 거부의 표시가 됩니다.




답장 기록의 해석
일부 응답한 사실이 관계 지속으로 읽히지 않게 하려면 무엇을 보여야 하는가.


응답의 범위
어떤 연락에 답하고 어떤 연락은 그냥 두었는지를 어떻게 갈라낼 것인가.


거부 의사의 시점
그만두라는 뜻을 밝힌 때를 기준선으로 어떻게 세울 것인가.


부재중 전화의 성격
통화가 이뤄지지 않은 발신을 어떤 근거로 평가받게 할 것인가.


쌍방 주장 대비
폭행 부분에서 서로 다툰 일이라는 반론에 어떻게 맞설 것인가.


두 혐의의 연결
폭행과 스토킹을 따로 볼 것인가, 하나의 흐름으로 볼 것인가.



02문제 해결 — 답장의 이유를 하나씩 갈랐습니다

서류를 처음 넘겨받았을 때 마음에 걸린 대목은 의뢰인 쪽에서도 몇 차례 말을 받았다는 사실이었습니다. 저편에서는 둘이 말을 주고받던 사이라고 얼마든지 내세울 수 있는 상황이었고, 이대로 두면 혐의의 뼈대 자체가 흐릿해질 수 있다고 봤습니다.

그래서 전체 대화를 다시 펼쳐 의뢰인이 언제 어떤 이유로 답장했는지부터 하나씩 분리해 나갔습니다.




응답 이유별 분리
의뢰인이 답한 연락을 이유별로 갈라 놓았습니다. 따라가 보니 대부분 마무리해야 할 용건에 한정돼 있었고, 상대가 일방적으로 보낸 연락에는 거의 반응하지 않은 흐름이 드러났습니다.




답장의 성격 설명
조사 과정에서는 답장을 했다는 사실 자체보다, 그것이 관계를 이어 가기 위한 대화였는지 아니면 어쩔 수 없는 용건 때문이었는지를 집중적으로 설명했습니다.




부재중 전화의 법리 보강
받지 않은 전화도 숫자만 헤아려 내지 않았습니다. 말이 오가지 않았더라도 거듭 걸어 벨이 울리게 하거나 화면에 자국을 남기는 행위가 사정에 따라서는 문제되는 행위로 볼 수 있다는 대법원의 판단을 근거로 세웠습니다.




거부 이후 흐름의 정리
그 위에 그만두라는 뜻을 전한 뒤로 대화창과 전화가 어떤 차례로 이어졌는지를 얹었습니다. 몇 차례였는지를 헤아려 보이는 데서 멈추지 않고, 피하려 애썼는데도 이 길 저 길로 다가옴이 그치지 않았다는 그림 자체가 드러나게 짰습니다.




폭행 경위의 시간순 소명
몸에 손을 댄 부분에서는 저쪽이 서로 얽힌 일이라거나 자신을 지키려 했다고 말할 여지를 미리 헤아렸습니다. 일이 어디서 비롯됐는지부터 손찌검이 이어진 대목까지 차례대로 늘어놓아, 양쪽이 맞붙은 일로 뭉뚱그릴 수 없는 까닭을 조목조목 밝혔습니다.





이 사건 대응의 무게중심
두 혐의를 따로 떼어 설명하기보다 사건 전체의 흐름 안에서 맞춰 보니 승부처가 분명해졌습니다. 답장을 했느냐거나 통화가 실제로 됐느냐는 한 장면이 아니라, 그 앞뒤 사정을 얼마나 정확하게 이어 보여 주느냐에 있었습니다. 그 흐름 위에 판례와 법리를 하나씩 붙여 나갔습니다.



주의해야 할 점
용건 때문에 답해야 할 상황이라면 그 대화를 따로 남겨 두시기 바랍니다. 나중에 어떤 이유로 응답했는지를 보여 줄 자료가 됩니다. 또 거부 의사를 밝힌 대화는 사건의 기준선이 되니 지우지 마시고, 통화 기록은 부재중 표시까지 포함해 그대로 보존해 두시는 편이 좋습니다.


03최종 결과 — 폭행·스토킹 모두 인정, 벌금 500만원

처음에는 몇 차례 말을 받았다는 대목 탓에 혐의가 설 수 있는지가 걸렸습니다. 그러나 무엇을 위해 답했는지와 그만두라는 뜻을 전한 뒤로 이어진 접근을 갈라 조사 자리에서 거듭 밝힌 끝에, 두 혐의가 모두 받아들여져 상대는 500만원을 물게 됐습니다.

서류를 처음 마주했을 때 저희 눈에도 그 대목이 가장 걸렸습니다. 그런데 오간 말을 처음부터 끝까지 다시 펼쳐 보니, 인연을 붙들려는 말과 남은 일을 마치려 어쩔 수 없이 낸 대답은 또렷이 갈렸습니다. 불리해 보이던 자국이 되레 밀어냈다는 것을 보여 주는 자료로 뒤바뀐 셈입니다.


"불리해 보이는 기록일수록 다시 펼쳐 봐야 합니다. 답장의 이유가 드러나면 그 기록은 편을 바꿉니다."
— 뉴로이어 법률사무소


최종 결과를 확인하며 든 생각도 같았습니다. 초기 단계에서 접지 않고 기록을 끝까지 다시 들여다본 것이 결국 결말을 바꿨다는 점입니다.

옛 연인의 연락과 걸려 오는 전화가 멎지 않는데, 짐을 돌려받거나 셈을 마치느라 몇 마디 받으셨더라도 그것만으로 손을 놓으실 일은 아닙니다. 어느 연락에 무슨 까닭으로 답했는지, 그만두라고 전한 뒤 저쪽의 다가옴이 어떻게 이어졌는지가 관건입니다. 오간 말과 통화 자국을 그대로 두신 채 가져오시면 어느 지점에서 혐의를 세울 수 있을지 서류부터 훑어 드리겠습니다.


이별 후 연락에 시달릴 때 보존할 것

그만두라는 뜻을 밝힌 대화를 시점과 함께 갈무리했는가
용건 때문에 답해야 했던 대화를 따로 표시해 두었는가
응답하지 않고 넘긴 연락도 화면으로 남겨 두었는가
통화 기록을 부재중 표시까지 포함해 확보했는가
메신저 외에 SNS 등 다른 통로의 접근도 정리했는가
폭행 피해가 있었다면 그 경위와 진료기록을 함께 모았는가




관련 개념 정리

거부 의사와 그 이후
그만두라는 뜻을 밝힌 시점이 판단의 기준선이 됩니다. 그 뒤에도 접근이 이어졌는지, 어떤 방식이었는지가 함께 검토됩니다.
응답한 사실의 평가
일부 답장이 있었다는 사정만으로 관계가 이어졌다고 보기는 어렵습니다. 그 답장이 무엇을 위한 것이었는지, 나머지 연락에는 어떻게 대했는지가 함께 살펴집니다.
부재중 전화
실제 통화가 이뤄지지 않았더라도 반복적인 발신으로 벨소리나 부재중 표시가 남는 행위는 구체적인 사정에 따라 스토킹행위로 인정될 수 있다는 것이 대법원의 판단입니다.
폭행의 경위 소명
상대가 서로 다툰 일이라고 주장할 수 있어, 사건이 시작된 경위부터 시간순으로 정리해 단순한 다툼과 구분되는 이유를 밝히게 됩니다.




이 사건을 담당한 변호인
불리해 보이는 기록을 다시 읽는 판단이 결과를 갈랐습니다. 이 사건은 형사전문 대표변호사가 직접 수행했습니다.






CEO Lawyer
김수열 대표변호사

#협박·스토킹#명예훼손·모욕#사이버범죄

서울대학교 심리학과를 거쳐 서울대학교 법학전문대학원을 졸업했고, 법무법인 율촌을 거쳐 뉴로이어 법률사무소를 이끌고 있는 대한변호사협회 인증 형사전문변호사입니다. 데이트폭력과 스토킹이 얽힌 사건의 피해자 대리를 다수 수행해 왔습니다.

서울대 총학생회장 명예훼손 사건 대법원 파기환송 승소
방송 출연자·인플루언서 악성댓글 집단 고소 성공 수행
언론사 가짜뉴스 명예훼손·업무방해 고소대리

프로필 자세히 보기 →






FAQ데이트폭력·스토킹, 자주 묻는 질문

짐을 찾으려고 연락했는데 스토킹 고소가 가능한가요?
가능합니다. 마무리해야 할 일이 남아 응답한 것과 관계를 이어 가려는 대화는 성격이 다릅니다. 어떤 연락에 왜 답했고 나머지에는 어떻게 대했는지를 갈라 보여 주면 그 기록이 오히려 거부 의사를 뒷받침하는 자료가 될 수 있습니다.


답장을 했으면 스토킹이 성립하지 않나요?
그렇지 않습니다. 응답이 있었다는 사정만으로 관계가 이어졌다고 보기는 어렵습니다. 그 답장이 무엇을 위한 것이었는지, 그 밖의 연락에는 반응하지 않았는지가 함께 살펴집니다. 이 사건에서도 그 구분이 결과를 갈랐습니다.


부재중 전화도 스토킹으로 볼 수 있나요?
통화가 이뤄지지 않았더라도 반복적인 발신으로 벨소리나 부재중 표시가 남는 행위는 구체적인 사정에 따라 스토킹행위로 인정될 수 있다는 것이 대법원의 판단입니다. 통화 기록을 부재중 표시까지 포함해 확보해 두시기 바랍니다.


상대가 서로 다툰 일이라고 주장하면요?
폭행 사건에서 자주 나오는 반론입니다. 사건이 어떤 경위로 시작됐고 실제로 어떻게 이어졌는지를 시간순으로 정리해 단순한 다툼과 구분되는 이유를 밝히게 됩니다. 진료기록이 있다면 함께 확보해 두시는 편이 좋습니다.


거부 의사는 어떻게 밝혀 두어야 하나요?
말로만 전하기보다 대화로 남겨 두시는 편이 안전합니다. 그만두라는 뜻을 밝힌 시점이 사건의 기준선이 되기 때문입니다. 그 대화는 지우지 마시고 따로 갈무리해 두시기 바랍니다.


기록이 불리해 보이면 포기해야 하나요?
그렇지 않습니다. 이 사건도 답장 내역 때문에 처음에는 성립 여부가 문제됐지만, 대화 전체를 다시 펼쳐 보니 구분이 가능했고 그 기록이 오히려 유리한 자료로 바뀌었습니다. 판단은 기록을 전부 살펴본 뒤에 하셔도 늦지 않습니다.




함께 보면 좋은 글

전 연인 반복 연락 스토킹 고소, 검찰 송치 후 합의금 1,000만원 사례
전 연인 사생활 폭로 명예훼손, 전파 가능성을 짚어 책임을 물은 사례
전여자친구 허위사실유포 명예훼손·스토킹·통매음, 손해배상 700만원 성공사례




답장한 기록이 있어도 포기하실 일이 아닙니다
이별 후 연락이 계속되어 힘드시다면 대화 내용과 통화 기록을 그대로 보존해 문의해 주세요.어디에서 혐의를 소명할 수 있는지 기록부터 살펴 드립니다.

카카오톡 상담
070-8098-0421
홈페이지 상담 신청

모든 상담 내용은 비밀이 보장됩니다



관련 법령: 스토킹범죄의 처벌 등에 관한 법률, 형법상 폭행 규정 (국가법령정보센터, 작성일 기준)
뉴로이어 법률사무소 · 서울 서초구 강남대로 525 세영제이타워 11층(06536) · 사업자등록번호 588-14-01388 · [email protected]


본 성공사례는 뉴로이어 법률사무소가 실제 수행한 사건을 바탕으로 작성됐으며, 의뢰인 보호를 위해 일부 사실관계를 조정했습니다. 개별 사건의 결과는 구체적 사정에 따라 달라질 수 있어, 본 글이 유사 사건에서 동일한 결과를 약속하는 것은 아닙니다.




{
"@context": "https://schema.org",
"@type": "Article",
"headline": "답장한 기록이 발목을 잡을 뻔했습니다, 그 답장을 거부 의사의 증거로 바꿔낸 성공사례",
"description": "데이트폭력 이후 이별했으나 연락이 계속된 사건. 짐 반환 때문에 일부 답장한 기록이 불리하게 읽힐 국면에서 응답의 이유와 대상을 갈라내고 부재중 전화의 성격까지 법리로 보강해, 폭행과 스토킹 혐의 모두 인정받아 벌금 500만원 구약식 처분을 이끌어낸 뉴로이어 피해자 대리 성공사례입니다.",
"inLanguage": "ko",
"datePublished": "2026-08-12",
"dateModified": "2026-08-12",
"author": {
"@type": "Person",
"name": "김수열",
"jobTitle": "대표변호사",
"url": "https://newlawyer.co.kr/page/21_view?wr_id=1",
"image": "https://newlawyer.co.kr/data/file/member/thumb-238321632_UzWE7X3O_a622b2fa6778b002d58c2ddc7bdddb15cb53f084_460x460.jpg",
"knowsAbout": [
"협박·스토킹",
"데이트폭력",
"스토킹처벌법",
"명예훼손·모욕",
"사이버범죄"
],
"alumniOf": {
"@type": "CollegeOrUniversity",
"name": "서울대학교 법학전문대학원"
},
"worksFor": {
"@type": "LegalService",
"name": "뉴로이어 법률사무소",
"url": "https://www.newlawyer.co.kr"
}
},
"publisher": {
"@type": "LegalService",
"name": "뉴로이어 법률사무소",
"url": "https://www.newlawyer.co.kr",
"address": {
"@type": "PostalAddress",
"streetAddress": "강남대로 525 세영제이타워 11층",
"addressLocality": "서초구",
"addressRegion": "서울",
"postalCode": "06536",
"addressCountry": "KR"
},
"telephone": "+82-70-8098-0421"
},
"mainEntityOfPage": {
"@type": "WebPage",
"@id": "https://www.newlawyer.co.kr/31/427"
},
"about": [
"전남친 스토킹",
"데이트폭력",
"데이트폭행",
"부재중 전화 스토킹",
"거부 의사",
"스토킹 구약식"
]
}


{
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
{
"@type": "ListItem",
"position": 1,
"name": "홈",
"item": "https://www.newlawyer.co.kr"
},
{
"@type": "ListItem",
"position": 2,
"name": "성공사례",
"item": "https://www.newlawyer.co.kr/31"
},
{
"@type": "ListItem",
"position": 3,
"name": "협박 · 스토킹",
"item": "https://www.newlawyer.co.kr/31"
},
{
"@type": "ListItem",
"position": 4,
"name": "데이트폭력·스토킹 구약식",
"item": "https://www.newlawyer.co.kr/31/427"
}
]
}


{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "짐을 찾으려고 연락했는데 스토킹 고소가 가능한가요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "가능합니다. 마무리해야 할 일이 남아 응답한 것과 관계를 이어 가려는 대화는 성격이 다릅니다. 어떤 연락에 왜 답했고 나머지에는 어떻게 대했는지를 갈라 보여 주면 그 기록이 오히려 거부 의사를 뒷받침하는 자료가 될 수 있습니다."
}
},
{
"@type": "Question",
"name": "답장을 했으면 스토킹이 성립하지 않나요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "그렇지 않습니다. 응답이 있었다는 사정만으로 관계가 이어졌다고 보기는 어렵습니다. 그 답장이 무엇을 위한 것이었는지, 그 밖의 연락에는 반응하지 않았는지가 함께 살펴집니다. 이 사건에서도 그 구분이 결과를 갈랐습니다."
}
},
{
"@type": "Question",
"name": "부재중 전화도 스토킹으로 볼 수 있나요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "통화가 이뤄지지 않았더라도 반복적인 발신으로 벨소리나 부재중 표시가 남는 행위는 구체적인 사정에 따라 스토킹행위로 인정될 수 있다는 것이 대법원의 판단입니다. 통화 기록을 부재중 표시까지 포함해 확보해 두시기 바랍니다."
}
},
{
"@type": "Question",
"name": "상대가 서로 다툰 일이라고 주장하면요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "폭행 사건에서 자주 나오는 반론입니다. 사건이 어떤 경위로 시작됐고 실제로 어떻게 이어졌는지를 시간순으로 정리해 단순한 다툼과 구분되는 이유를 밝히게 됩니다. 진료기록이 있다면 함께 확보해 두시는 편이 좋습니다."
}
},
{
"@type": "Question",
"name": "거부 의사는 어떻게 밝혀 두어야 하나요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "말로만 전하기보다 대화로 남겨 두시는 편이 안전합니다. 그만두라는 뜻을 밝힌 시점이 사건의 기준선이 되기 때문입니다. 그 대화는 지우지 마시고 따로 갈무리해 두시기 바랍니다."
}
},
{
"@type": "Question",
"name": "기록이 불리해 보이면 포기해야 하나요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "그렇지 않습니다. 이 사건도 답장 내역 때문에 처음에는 성립 여부가 문제됐지만, 대화 전체를 다시 펼쳐 보니 구분이 가능했고 그 기록이 오히려 유리한 자료로 바뀌었습니다. 판단은 기록을 전부 살펴본 뒤에 하셔도 늦지 않습니다."
}
}
]
}


{
"@context": "https://schema.org",
"@type": "HowTo",
"name": "이별 후 스토킹 피해 대응 절차",
"description": "일부 답장 기록이 있는 상황에서 스토킹과 폭행 혐의를 소명하는 순서입니다.",
"step": [
{
"@type": "HowToStep",
"name": "응답 이유별 분리",
"text": "답한 연락을 이유별로 갈라 용건에 한정된 응답임을 확인합니다."
},
{
"@type": "HowToStep",
"name": "답장의 성격 설명",
"text": "관계를 이어 가려는 대화인지 불가피한 용건이었는지를 조사에서 밝힙니다."
},
{
"@type": "HowToStep",
"name": "부재중 전화의 법리 보강",
"text": "반복 발신으로 부재중 표시가 남는 행위의 평가에 관한 판단을 근거로 삼습니다."
},
{
"@type": "HowToStep",
"name": "거부 이후 흐름 정리",
"text": "거부 의사 이후 메신저와 전화가 이어진 순서를 함께 정리합니다."
},
{
"@type": "HowToStep",
"name": "폭행 경위의 시간순 소명",
"text": "사건 시작부터 폭행이 이어진 과정을 정리해 단순한 다툼과 구분합니다."
}
]
}



:root {
--nl-navy: #1f4e79;
--nl-navy-2: #2e5a8a;
--nl-navy-3: #0f2e4d;
--nl-navy-soft: #5b7ea1;
--nl-ink: #222222;
--nl-soft: #444444;
--nl-mute: #767676;
--nl-line: #e5e7eb;
--nl-line-soft: #eef0f3;
--nl-bg-soft: #f5f7fa;
--nl-bg-card: #fafbfc;
--nl-accent: #c0392b;
--nl-bg: #ffffff;
}

.nl-wrap {
font-family: "Pretendard", "Pretendard Variable", -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", sans-serif;
color: var(--nl-ink);
line-height: 1.85;
font-size: clamp(15px, 1.05vw + 12px, 17px);
background: var(--nl-bg);
-webkit-text-size-adjust: 100%;
text-size-adjust: 100%;
word-break: keep-all;
overflow-wrap: anywhere;
max-width: 880px;
margin: 0 auto;
padding: clamp(20px, 4vw, 48px) clamp(16px, 3vw, 32px);
position: relative;
font-feature-settings: "ss01", "ss02";
letter-spacing: -0.005em;
}

.nl-wrap * { box-sizing: border-box; }

.nl-wrap a { color: var(--nl-navy); text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; }
.nl-wrap a:hover { color: var(--nl-navy-3); }

.nl-crumb {
font-size: 13px;
color: var(--nl-mute);
letter-spacing: 0.01em;
margin-bottom: 24px;
padding-bottom: 14px;
border-bottom: 1px solid var(--nl-line);
}
.nl-crumb ol { list-style: none; padding: 0; margin: 0; display: flex; flex-wrap: wrap; gap: 6px 10px; }
.nl-crumb li + li::before { content: "›"; margin-right: 10px; color: var(--nl-navy-soft); }
.nl-crumb a { color: var(--nl-mute); text-decoration: none; }
.nl-crumb a:hover { color: var(--nl-navy); }

.nl-tag {
display: inline-flex;
align-items: center;
gap: 8px;
font-size: 12px;
font-weight: 600;
letter-spacing: 0.12em;
color: #ffffff;
background: var(--nl-navy);
padding: 7px 16px;
border-radius: 2px;
}
.nl-tag::before {
content: "";
width: 6px; height: 6px;
border-radius: 50%;
background: #ffffff;
}

.nl-h1 {
font-weight: 800;
font-size: clamp(24px, 3.2vw + 12px, 38px);
line-height: 1.35;
color: var(--nl-navy-3);
margin: 16px 0 14px;
letter-spacing: -0.025em;
}
.nl-h1 .nl-h1-accent { color: var(--nl-navy); }

.nl-sub {
font-size: clamp(14px, 0.6vw + 12px, 16px);
color: var(--nl-soft);
margin: 0 0 28px;
line-height: 1.75;
font-weight: 400;
}

.nl-meta {
display: flex;
flex-wrap: wrap;
gap: 14px;
font-size: 13px;
color: var(--nl-mute);
padding: 12px 0;
border-top: 1px solid var(--nl-line);
border-bottom: 1px solid var(--nl-line);
margin-bottom: 36px;
}
.nl-meta span { display: inline-flex; align-items: center; gap: 6px; }
.nl-meta strong { color: var(--nl-navy); font-weight: 600; }

.nl-author {
display: grid;
grid-template-columns: auto 1fr;
gap: 18px;
align-items: center;
background: var(--nl-bg-soft);
border-left: 4px solid var(--nl-navy);
padding: 22px 24px;
margin: 0 0 36px;
border-radius: 2px;
}
.nl-author-badge {
width: 60px; height: 60px;
border-radius: 50%;
background: var(--nl-navy);
color: #fff;
display: flex; align-items: center; justify-content: center;
font-weight: 800;
font-size: 20px;
letter-spacing: 0.02em;
}
.nl-author-name { font-weight: 700; font-size: 16px; color: var(--nl-navy-3); margin: 0 0 4px; letter-spacing: -0.01em; }
.nl-author-role { font-size: 13px; color: var(--nl-soft); line-height: 1.65; margin: 0; }
.nl-author-role b { color: var(--nl-navy); font-weight: 600; }

.nl-summary {
background: var(--nl-bg-card);
border: 1px solid var(--nl-line);
border-radius: 4px;
padding: 28px 28px 24px;
margin: 0 0 40px;
position: relative;
}
.nl-summary::before {
content: "한눈에 보기";
position: absolute;
top: -12px; left: 24px;
background: var(--nl-navy);
color: #fff;
font-size: 11px;
letter-spacing: 0.16em;
font-weight: 600;
padding: 5px 14px;
border-radius: 2px;
}
.nl-summary dl {
display: grid;
grid-template-columns: 100px 1fr;
gap: 12px 20px;
margin: 4px 0 0;
font-size: 14.5px;
}
.nl-summary dt {
color: var(--nl-mute);
font-weight: 500;
border-right: 1px solid var(--nl-line);
padding-right: 20px;
line-height: 1.7;
}
.nl-summary dd { margin: 0; color: var(--nl-ink); line-height: 1.7; }
.nl-summary dd b { color: var(--nl-navy); font-weight: 700; }
.nl-summary dd .nl-win { color: var(--nl-navy); font-weight: 700; border-bottom: 2px solid var(--nl-navy); padding-bottom: 1px; }

.nl-lead {
background: var(--nl-bg-soft);
border-left: 4px solid var(--nl-navy);
padding: 22px 26px;
margin: 36px 0;
border-radius: 2px;
}
.nl-lead p { margin: 0; font-size: 16px; line-height: 1.85; color: var(--nl-ink); }
.nl-lead p + p { margin-top: 12px; }
.nl-lead strong { color: var(--nl-navy); font-weight: 700; }

.nl-h2 {
font-weight: 800;
font-size: clamp(20px, 1.5vw + 14px, 26px);
color: var(--nl-navy-3);
margin: 64px 0 22px;
padding-bottom: 14px;
border-bottom: 2px solid var(--nl-navy);
display: flex;
align-items: baseline;
gap: 14px;
letter-spacing: -0.025em;
}
.nl-h2 .nl-h2-no {
font-size: 13px;
color: var(--nl-navy-soft);
letter-spacing: 0.2em;
font-weight: 700;
}

.nl-h3 {
font-weight: 700;
font-size: clamp(17px, 0.7vw + 14px, 19px);
color: var(--nl-navy);
margin: 36px 0 14px;
padding-left: 14px;
border-left: 3px solid var(--nl-navy);
letter-spacing: -0.015em;
}

.nl-wrap p { margin: 14px 0; }

.nl-defn {
background: var(--nl-bg-card);
border: 1px solid var(--nl-line);
border-top: 3px solid var(--nl-navy);
padding: 18px 22px;
margin: 24px 0;
border-radius: 2px;
font-size: 15px;
}
.nl-defn dt {
font-size: 12px;
letter-spacing: 0.14em;
color: var(--nl-navy);
font-weight: 700;
margin-bottom: 8px;
}
.nl-defn dd { margin: 0; color: var(--nl-ink); line-height: 1.8; }
.nl-defn dd b { color: var(--nl-navy); font-weight: 700; }

.nl-statute {
background: var(--nl-bg-soft);
border: 1px solid var(--nl-line);
border-left: 4px solid var(--nl-navy);
padding: 22px 26px;
margin: 28px 0;
border-radius: 2px;
position: relative;
}
.nl-statute::before {
content: "법령";
position: absolute;
top: 16px; right: 20px;
font-size: 10px;
letter-spacing: 0.18em;
font-weight: 700;
color: #fff;
background: var(--nl-navy);
padding: 3px 9px;
border-radius: 2px;
}
.nl-statute .nl-statute-h {
font-weight: 800;
font-size: 16px;
color: var(--nl-navy-3);
margin: 0 0 12px;
padding-right: 60px;
letter-spacing: -0.015em;
}
.nl-statute ol { padding-left: 18px; margin: 8px 0 0; }
.nl-statute li { margin-bottom: 6px; line-height: 1.85; }
.nl-statute .nl-cite { display: block; margin-top: 14px; font-size: 12px; color: var(--nl-mute); }
.nl-statute .nl-cite a { color: var(--nl-navy); }

.nl-issues {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 14px;
margin: 28px 0;
}
.nl-issue {
background: #ffffff;
border: 1px solid var(--nl-line);
border-radius: 2px;
padding: 18px 20px;
position: relative;
overflow: hidden;
transition: border-color 0.2s;
}
.nl-issue:hover { border-color: var(--nl-navy); }
.nl-issue::before {
content: "";
position: absolute;
top: 0; left: 0;
width: 4px; height: 100%;
background: var(--nl-navy);
}
.nl-issue h4 {
font-size: 15px;
color: var(--nl-navy-3);
margin: 0 0 8px;
font-weight: 700;
letter-spacing: -0.015em;
}
.nl-issue p {
font-size: 13.5px;
color: var(--nl-soft);
margin: 0;
line-height: 1.7;
}

.nl-steps {
counter-reset: nlstep;
display: grid;
gap: 12px;
margin: 28px 0;
}
.nl-step {
display: grid;
grid-template-columns: 64px 1fr;
gap: 18px;
background: #ffffff;
border: 1px solid var(--nl-line);
border-left: 4px solid var(--nl-navy);
border-radius: 2px;
padding: 18px 22px;
align-items: start;
}
.nl-step::before {
counter-increment: nlstep;
content: "STEP " counter(nlstep);
font-size: 11px;
font-weight: 700;
color: var(--nl-navy);
background: var(--nl-bg-soft);
padding: 6px 10px;
border-radius: 2px;
letter-spacing: 0.08em;
text-align: center;
line-height: 1.4;
align-self: start;
white-space: nowrap;
}
.nl-step h4 {
font-size: 16px;
color: var(--nl-navy-3);
margin: 2px 0 6px;
font-weight: 700;
letter-spacing: -0.015em;
}
.nl-step p {
font-size: 14.5px;
color: var(--nl-soft);
margin: 0;
line-height: 1.75;
}

.nl-table {
width: 100%;
border-collapse: collapse;
margin: 28px 0;
font-size: 14px;
background: #fff;
border: 1px solid var(--nl-line);
border-radius: 2px;
overflow: hidden;
}
.nl-table th, .nl-table td {
padding: 14px 16px;
border-bottom: 1px solid var(--nl-line);
border-right: 1px solid var(--nl-line);
vertical-align: top;
line-height: 1.7;
}
.nl-table th:last-child, .nl-table td:last-child { border-right: none; }
.nl-table tr:last-child td { border-bottom: none; }
.nl-table thead th {
background: var(--nl-navy);
color: #fff;
font-weight: 600;
letter-spacing: 0.02em;
text-align: left;
font-size: 13.5px;
}
.nl-table tbody th {
background: var(--nl-bg-soft);
color: var(--nl-navy-3);
font-weight: 600;
text-align: left;
width: 28%;
}
.nl-table .nl-td-good { color: var(--nl-navy); font-weight: 700; }
.nl-table .nl-td-bad { color: var(--nl-accent); font-weight: 700; }

.nl-checklist {
background: var(--nl-bg-card);
border: 1px solid var(--nl-line);
border-radius: 2px;
padding: 24px 26px;
margin: 28px 0;
}
.nl-checklist h4 {
font-size: 16px;
color: var(--nl-navy-3);
margin: 0 0 14px;
padding-bottom: 12px;
border-bottom: 1px solid var(--nl-line);
font-weight: 700;
letter-spacing: -0.015em;
}
.nl-checklist ul { list-style: none; padding: 0; margin: 0; }
.nl-checklist li {
position: relative;
padding-left: 30px;
margin-bottom: 10px;
font-size: 14.5px;
color: var(--nl-ink);
line-height: 1.75;
}
.nl-checklist li::before {
content: "";
position: absolute;
left: 0; top: 5px;
width: 18px; height: 18px;
border: 2px solid var(--nl-navy);
border-radius: 2px;
background: #fff;
}
.nl-checklist li::after {
content: "";
position: absolute;
left: 4px; top: 8px;
width: 10px; height: 5px;
border-left: 2px solid var(--nl-navy);
border-bottom: 2px solid var(--nl-navy);
transform: rotate(-45deg);
}

.nl-caution {
background: var(--nl-bg-soft);
border-left: 4px solid var(--nl-navy);
padding: 18px 22px;
margin: 28px 0;
border-radius: 2px;
}
.nl-caution h4 {
font-size: 15px;
color: var(--nl-navy-3);
margin: 0 0 8px;
font-weight: 700;
letter-spacing: -0.015em;
}
.nl-caution h4::before { content: "⚠ "; color: var(--nl-navy); }
.nl-caution p { margin: 0; font-size: 14.5px; color: var(--nl-soft); line-height: 1.75; }

.nl-law {
background: var(--nl-bg-card);
border: 1px solid var(--nl-line);
border-radius: 2px;
padding: 24px 26px;
margin: 28px 0;
}
.nl-law h4 {
font-size: 15px;
color: var(--nl-navy-3);
margin: 0 0 12px;
padding-bottom: 12px;
border-bottom: 1px solid var(--nl-line);
font-weight: 700;
letter-spacing: -0.015em;
}
.nl-law dl { margin: 0; font-size: 14px; }
.nl-law dt { color: var(--nl-navy); font-weight: 700; margin-top: 12px; }
.nl-law dt:first-child { margin-top: 0; }
.nl-law dd { margin: 4px 0 0; color: var(--nl-soft); line-height: 1.75; }

.nl-quote {
border-left: 3px solid var(--nl-navy);
padding: 8px 22px;
margin: 28px 0;
color: var(--nl-soft);
font-size: 16px;
line-height: 1.85;
}
.nl-quote p { font-style: normal; }
.nl-quote cite { display: block; font-style: normal; font-size: 13px; color: var(--nl-mute); margin-top: 8px; }

.nl-faq {
margin: 40px 0;
border-top: 2px solid var(--nl-navy);
}
.nl-faq h2 { margin-top: 24px; }
.nl-faq details {
border-bottom: 1px solid var(--nl-line);
padding: 20px 4px;
}
.nl-faq summary {
font-size: 16px;
font-weight: 700;
color: var(--nl-navy-3);
cursor: pointer;
list-style: none;
display: flex;
align-items: flex-start;
gap: 12px;
line-height: 1.55;
padding-right: 30px;
position: relative;
letter-spacing: -0.015em;
}
.nl-faq summary::-webkit-details-marker { display: none; }
.nl-faq summary::before {
content: "Q";
flex-shrink: 0;
width: 26px; height: 26px;
background: var(--nl-navy);
color: #fff;
border-radius: 50%;
display: flex; align-items: center; justify-content: center;
font-size: 13px;
font-weight: 700;
}
.nl-faq summary::after {
content: "+";
position: absolute;
right: 0; top: 0;
font-size: 22px;
color: var(--nl-navy);
font-weight: 300;
transition: transform 0.25s;
line-height: 1;
}
.nl-faq details[open] summary::after { content: "−"; }
.nl-faq .nl-a {
margin-top: 14px;
padding-left: 38px;
font-size: 14.5px;
color: var(--nl-soft);
line-height: 1.85;
}
.nl-faq .nl-a::before {
content: "A. ";
font-weight: 800;
color: var(--nl-navy);
}

.nl-related {
background: var(--nl-bg-soft);
border: 1px solid var(--nl-line);
border-radius: 2px;
padding: 24px 26px;
margin: 32px 0;
}
.nl-related h4 {
font-size: 14px;
color: var(--nl-navy-3);
letter-spacing: 0.04em;
margin: 0 0 14px;
padding-bottom: 12px;
border-bottom: 1px solid var(--nl-line);
font-weight: 700;
}
.nl-related ul { list-style: none; padding: 0; margin: 0; }
.nl-related li {
font-size: 14px;
margin: 8px 0;
padding-left: 14px;
position: relative;
}
.nl-related li::before { content: "›"; position: absolute; left: 0; color: var(--nl-navy); font-weight: 700; }
.nl-related a { color: var(--nl-navy); text-decoration: none; }
.nl-related a:hover { text-decoration: underline; }

.nl-cta {
margin: 48px 0 24px;
background: var(--nl-navy);
color: #fff;
border-radius: 2px;
padding: 38px 32px;
text-align: center;
position: relative;
overflow: hidden;
}
.nl-cta::before {
content: "";
position: absolute;
top: 0; left: 0; right: 0;
height: 3px;
background: linear-gradient(90deg, var(--nl-navy-soft) 0%, #ffffff 100%);
}
.nl-cta-h {
font-size: clamp(20px, 1.5vw + 12px, 26px);
font-weight: 800;
margin: 0 0 8px;
position: relative;
letter-spacing: -0.025em;
}
.nl-cta-sub {
font-size: 14.5px;
color: #c5d1e0;
margin: 0 0 24px;
line-height: 1.7;
position: relative;
}
.nl-cta-buttons {
display: flex;
flex-wrap: wrap;
gap: 10px;
justify-content: center;
position: relative;
}
.nl-cta-buttons a {
display: inline-flex;
align-items: center;
gap: 8px;
font-size: 14.5px;
font-weight: 600;
padding: 14px 26px;
border-radius: 2px;
text-decoration: none;
transition: transform 0.2s, box-shadow 0.2s;
letter-spacing: 0.01em;
}
.nl-cta-buttons a:hover { transform: translateY(-2px); box-shadow: 0 6px 16px rgba(0,0,0,0.25); }
.nl-cta-kakao { background: #fee500; color: #181600; }
.nl-cta-tel { background: #ffffff; color: var(--nl-navy-3); }
.nl-cta-web { background: #ffffff; color: var(--nl-navy); border: 1.5px solid var(--nl-navy); font-weight: 700; }
.nl-cta-secret {
display: inline-flex;
align-items: center;
margin-top: 18px;
font-size: 12px;
color: #c5d1e0;
letter-spacing: 0.08em;
position: relative;
}

.nl-footer-cite {
margin-top: 40px;
padding-top: 24px;
border-top: 1px solid var(--nl-line);
font-size: 12px;
color: var(--nl-mute);
line-height: 1.8;
}
.nl-footer-cite h4 {
font-size: 12px;
letter-spacing: 0.08em;
color: var(--nl-navy);
margin: 0 0 10px;
font-weight: 700;
}
.nl-footer-cite ul { padding-left: 18px; margin: 0; }
.nl-footer-cite li { margin: 4px 0; }
.nl-footer-cite a { color: var(--nl-navy); }

.nl-disclaimer {
margin-top: 28px;
font-size: 12px;
color: var(--nl-mute);
line-height: 1.75;
padding: 14px 16px;
background: var(--nl-bg-soft);
border: 1px solid var(--nl-line);
border-radius: 2px;
}

@media (max-width: 640px) {
.nl-wrap { padding: 16px 14px; }
.nl-issues { grid-template-columns: 1fr; }
.nl-summary dl { grid-template-columns: 1fr; gap: 4px 0; }
.nl-summary dt { border-right: none; border-bottom: 1px solid var(--nl-line); padding: 0 0 4px; margin-bottom: 4px; }
.nl-author { grid-template-columns: 1fr; text-align: center; }
.nl-author-badge { margin: 0 auto; }
.nl-table thead { display: none; }
.nl-table tr { display: block; border-bottom: 2px solid var(--nl-navy); padding: 8px 0; }
.nl-table th, .nl-table td { display: block; border-right: none; padding: 8px 14px; }
.nl-table tbody th { width: 100%; }
.nl-step { grid-template-columns: 1fr; gap: 8px; }
.nl-step::before { justify-self: start; }
.nl-cta { padding: 28px 20px; }
.nl-cta-buttons a { width: 100%; justify-content: center; }
}

@media (max-width: 380px) {
.nl-wrap { padding: 14px 12px; font-size: 14.5px; }
.nl-h2 { flex-direction: column; gap: 4px; align-items: flex-start; }
.nl-h2 .nl-h2-no { font-size: 12px; }
.nl-statute, .nl-defn, .nl-checklist, .nl-related, .nl-law { padding: 16px 18px; }
}

/* ==========================================================================
[ADD-ON] 담당 변호인 카드 (nl-team) — 기존 스타일 수정 없이 추가된 블록
사용처: 성공사례 하단, CTA 상단. 1~2인 카드 배치.
========================================================================== */

.nl-team {
margin: 40px 0 36px;
}

.nl-team-h {
font-size: 15px;
font-weight: 700;
color: var(--nl-navy);
letter-spacing: -0.01em;
margin: 0 0 4px;
padding-left: 12px;
border-left: 3px solid var(--nl-navy);
line-height: 1.4;
}

.nl-team-sub {
font-size: 13.5px;
color: var(--nl-mute);
margin: 0 0 18px;
padding-left: 15px;
line-height: 1.7;
}

.nl-team-grid {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 16px;
}

.nl-card {
display: grid;
grid-template-columns: 84px minmax(0, 1fr);
gap: 16px;
background: var(--nl-bg-card);
border: 1px solid var(--nl-line);
border-top: 3px solid var(--nl-navy);
border-radius: 2px;
padding: 20px 18px;
align-items: start;
}

.nl-card-photo {
width: 84px;
height: 84px;
border-radius: 2px;
overflow: hidden;
background: var(--nl-bg-soft);
border: 1px solid var(--nl-line);
}

.nl-card-photo img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
}

.nl-card-role {
display: inline-block;
font-size: 10.5px;
font-weight: 700;
letter-spacing: 0.08em;
text-transform: uppercase;
color: var(--nl-navy-soft);
margin: 0 0 4px;
line-height: 1.3;
}

.nl-card-name {
font-size: 16.5px;
font-weight: 800;
color: var(--nl-ink);
letter-spacing: -0.02em;
margin: 0 0 8px;
line-height: 1.35;
}

.nl-card-name a {
color: var(--nl-ink);
text-decoration: none;
}
.nl-card-name a:hover {
color: var(--nl-navy);
text-decoration: underline;
text-underline-offset: 3px;
}

.nl-card-tags {
display: flex;
flex-wrap: wrap;
gap: 5px;
margin: 0 0 10px;
padding: 0;
list-style: none;
}

.nl-card-tags li {
font-size: 11.5px;
color: var(--nl-navy);
background: rgba(31, 78, 121, 0.07);
border-radius: 2px;
padding: 2px 7px;
line-height: 1.6;
letter-spacing: -0.01em;
}

.nl-card-desc {
font-size: 13.5px;
color: var(--nl-soft);
line-height: 1.75;
margin: 0 0 10px;
letter-spacing: -0.01em;
}

.nl-card-list {
margin: 0;
padding: 0;
list-style: none;
border-top: 1px solid var(--nl-line-soft);
padding-top: 9px;
}

.nl-card-list li {
font-size: 12.5px;
color: var(--nl-mute);
line-height: 1.7;
padding-left: 10px;
position: relative;
letter-spacing: -0.01em;
}

.nl-card-list li::before {
content: "";
position: absolute;
left: 0;
top: 9px;
width: 3px;
height: 3px;
border-radius: 50%;
background: var(--nl-navy-soft);
}

.nl-card-list li b {
color: var(--nl-soft);
font-weight: 700;
}

.nl-card-link {
display: inline-block;
font-size: 12.5px;
color: var(--nl-navy);
margin-top: 10px;
text-decoration: none;
border-bottom: 1px solid var(--nl-line);
padding-bottom: 1px;
}
.nl-card-link:hover {
border-bottom-color: var(--nl-navy);
}

@media (max-width: 760px) {
.nl-team-grid { grid-template-columns: 1fr; gap: 14px; }
}

@media (max-width: 480px) {
.nl-card {
grid-template-columns: 64px minmax(0, 1fr);
gap: 13px;
padding: 17px 15px;
}
.nl-card-photo { width: 64px; height: 64px; }
.nl-card-name { font-size: 15.5px; }
.nl-card-desc { font-size: 13px; }
}

/* [ADD-ON] 1인 카드일 때 전체 폭 사용 */
.nl-team-grid:has(> .nl-card:only-child) {
grid-template-columns: minmax(0, 1fr);
}
.nl-team-grid > .nl-card:only-child {
grid-template-columns: 110px minmax(0, 1fr);
gap: 20px;
padding: 22px 20px;
}
.nl-team-grid > .nl-card:only-child .nl-card-photo {
width: 110px;
height: 110px;
}
@media (max-width: 480px) {
.nl-team-grid > .nl-card:only-child {
grid-template-columns: 64px minmax(0, 1fr);
gap: 13px;
padding: 17px 15px;
}
.nl-team-grid > .nl-card:only-child .nl-card-photo {
width: 64px;
height: 64px;
}
}




2026.09.10

합의금 1,000만원

전남친 사생활 인스타그램DM 폭로, 계좌이체,카카오톡 스토킹 고소대리 성공사례

전남자친구 폭로 명예훼손 성공사례 | 카카오톡·인스타그램 DM 개별 전달, 합의금 1,000만원





성공사례
명예훼손 · 모욕
전 연인 사생활 폭로 명예훼손




명예훼손 · 처벌불원 반영 · 합의금 1천만원
한 사람씩 따로 보낸 메시지였습니다,전파 가능성을 하나씩 짚어 책임을 물은 사례
단체방에 올린 글이 아니라 가족과 지인에게 각각 보낸 문자와 DM이었습니다. 개별 전달이라 공연성이 다퉈질 수 있는 국면에서, 받은 사람과 내용, 번져 나갈 여지를 하나씩 나눠 정리해 책임을 물은 고소대리 기록입니다.

카테고리 명예훼손 · 사생활 폭로
결과 합의금 1,000만원 · 처벌불원 반영
쟁점 개별 전달의 공연성과 전파 가능성
작성일 2026. 8.





의뢰인
헤어진 뒤 전 연인이 사적인 지난 일을 주변에 퍼뜨려 피해를 입은 분
폭로의 방식
공개된 게시물이 아니라 문자와 카카오톡, 인스타그램 DM으로 가족과 친인척, 지인에게 각각 전달
쟁점
한 사람씩 따로 보낸 메시지도 공연성이 인정되는지, 그 내용이 다시 번져 나갈 여지가 있었는지
대응 전략
받은 사람과 전달된 내용을 짝지어 나누고, 각 수신자와 의뢰인의 관계에 비추어 전파 가능성을 개별로 논증
결과
합의금 1,000만원의 피해회복 합의 · 합의 과정에서 처벌불원 의사 반영




사적인 이야기가 퍼졌다며 찾아오시는 분들 중에는 게시판에 글이 올라간 경우보다 한 사람씩 따로 전해진 경우가 오히려 많습니다. 가족에게 하나, 친구에게 하나, 그렇게 나눠 보낸 메시지가 결국 온 주변에 닿습니다.
그런데 이런 방식은 다투기가 까다롭습니다. 여러 사람이 동시에 보는 곳에 올린 것이 아니라며 빠져나가려는 주장이 나오기 때문입니다. 그래서 이 유형에서는 받은 사람이 누구였고 그 내용이 거기서 멈출 것이었는지를 따져 보는 작업이 먼저입니다.
오늘 전할 사건도 그랬습니다. 뉴로이어 법률사무소는 전달된 메시지를 받은 사람별로 갈라 정리하고 각각 번져 나갈 여지를 짚어 책임을 물었고, 1,000만원의 피해회복 합의로 사건을 매듭지었습니다.


01사건 개요 — 게시판이 아니라 받은 편지함이었습니다

의뢰인은 만나던 사람과 헤어진 뒤 자신의 지난 일이 주변에 알려지는 일을 겪으셨습니다. 사귀는 동안 털어놓았던 지극히 사적인 이야기였습니다.

퍼진 방식이 특히 곤란했습니다. 어딘가에 글로 올라간 것이 아니라 문자와 카카오톡, 인스타그램 DM을 통해 한 사람씩 따로 전해졌기 때문입니다. 가족과 친인척은 물론 가까운 지인들에게까지 닿았습니다.

이런 방식은 겉보기에 조용하지만 피해자 쪽에서는 더 아픕니다. 낯선 사람이 아니라 앞으로도 계속 마주쳐야 할 사람들이 그 이야기를 알게 되기 때문입니다. 게다가 상대는 연락도 그치지 않아, 의뢰인은 두 갈래의 부담을 한꺼번에 지고 계셨습니다.

자료를 받아 보며 저희가 먼저 정한 것은 이 사건을 개인적인 하소연을 몇 번 한 정도로 보이게 해서는 안 된다는 점이었습니다. 누구에게 무엇이 전해졌고 그 이야기가 거기서 멈출 성질의 것이었는지를 보여야 한다고 봤습니다.


한 명에게만 말했다는 항변
이 유형에서 가장 자주 나오는 주장이 여러 사람 앞에서 한 것이 아니라는 말입니다. 그러나 판단의 기준은 몇 명 앞에서 말했느냐가 아니라, 그 이야기가 그 사람 선에서 멎을 것이었느냐입니다. 듣는 사람이 다시 옮길 만한 관계였다면 개별 전달이라도 사정이 달라집니다.




개별 전달의 성격
한 사람씩 따로 보낸 메시지를 어떻게 평가받게 할 것인가.


수신자와의 관계
받은 사람이 의뢰인과 어떤 사이였는지가 판단에 어떤 무게를 갖는가.


번져 나갈 여지
그 이야기가 받은 사람 선에서 멎을 것이었는지 어떻게 보일 것인가.


내용의 특정
사람마다 조금씩 다르게 전해진 내용을 어떤 기준으로 정리할 것인가.


사실과 평가의 구분
지난 일에 관한 서술과 상대의 감정 표현을 어디서 가를 것인가.


피해 회복의 경로
처벌과 배상 가운데 의뢰인에게 실질적인 것은 무엇인가.



02문제 해결 — 받은 사람별로 갈라 놓았습니다

폭로가 얽힌 사건에서 흔한 실수는 전해진 메시지를 한 덩어리로 묶어 내는 것입니다. 그러면 상대 쪽에서 개인적인 대화였다고 뭉뚱그리기 쉬워집니다. 그래서 저희는 반대로 갔습니다. 하나로 묶는 대신 받은 사람 수만큼 나눴습니다.




수신자별 분리
전해진 메시지를 받은 사람 기준으로 갈라 놓았습니다. 누구에게 어떤 이야기가 닿았는지를 짝지어 두는 작업이 출발점이었습니다.




전달 경로의 구분
문자와 메신저, 사진 앱의 쪽지 가운데 어느 통로가 쓰였는지도 함께 표시했습니다. 통로마다 남는 흔적과 확인 방법이 다르기 때문입니다.




수신자와의 관계 정리
받은 사람이 의뢰인과 어떤 사이인지를 정리했습니다. 가족인지 친척인지 아니면 함께 어울리던 지인인지에 따라 그 이야기가 머무를 자리가 달라지기 때문입니다.




전파 가능성의 개별 논증
각 전달마다 그 내용이 받은 사람 선에서 멎을 것이었는지를 따로 짚었습니다. 하나로 뭉뚱그리지 않고 사람 수만큼 논거를 세운 셈입니다.




증거와 법리의 결합
정리한 각 항목에 해당하는 자료를 붙이고, 왜 문제되는 행위인지를 법리로 받쳐 두었습니다. 행동 하나하나에 근거를 달아 놓은 형태였습니다.





이 사건 고소대리의 무게중심
폭로 사건에서 상대가 기대는 것은 개인적인 대화였다는 인상입니다. 그 인상을 걷어내려면 뭉쳐 있는 것을 풀어야 합니다. 받은 사람마다 관계가 다르고 그 이야기가 머무를 자리도 다르니, 나눠 놓으면 하나였을 때 보이지 않던 것이 드러납니다.



주의해야 할 점
주변에서 이런 이야기를 들었다고 알려 오면 그 화면을 받아 두시기 바랍니다. 나중에 부탁하면 이미 지워진 뒤인 경우가 많습니다. 누구에게 언제 무엇이 전해졌는지가 이 유형에서는 핵심 자료가 되니, 알려 준 분에게 원본을 그대로 보내 달라고 요청해 두시는 편이 좋습니다.


03최종 결과 — 1,000만원 피해회복 합의

진행 끝에 상대와 1,000만원을 받는 피해회복 합의에 닿았습니다. 명예를 훼손한 부분은 그 협의를 거치며 처벌을 원하지 않는다는 뜻이 담겼습니다.

결과를 두고 저희가 의미를 둔 것은 액수보다 다른 데 있었습니다. 의뢰인은 자신의 사적인 이야기가 가까운 사람들에게 알려지는 상황을 오래 견뎌야 했습니다. 그 부담을 정리하고 다시 원래의 하루로 돌아가실 수 있게 됐다는 점이 가장 컸습니다.


"개인적인 대화였다는 말은 뭉쳐 있을 때만 통합니다. 받은 사람마다 갈라 놓으면 그 말이 설 자리가 사라집니다."
— 뉴로이어 법률사무소


사적인 이야기가 퍼졌을 때 게시판에 올라간 것이 아니라며 포기하시는 분들이 계십니다. 그러나 한 사람씩 따로 전한 방식이라도 다툴 여지는 남아 있습니다. 관건은 받은 사람이 누구였고 그 이야기가 거기서 멎을 것이었는지를 보이는 일입니다.

비슷한 일을 겪고 계시다면 주변에서 전달받은 화면과 그 사람과의 관계, 언제 어떤 내용이 닿았는지를 정리해 말씀해 주시기 바랍니다. 어느 전달부터 문제 삼을 수 있고 어떤 방식으로 대응할 수 있을지 기록부터 살펴 드리겠습니다.


사생활 폭로 피해, 정리해 두실 것

주변에서 전달받은 메시지 화면을 원본 그대로 확보했는가
누가 받았는지, 그 사람과 어떤 사이인지 적어 두었는가
언제 어떤 통로로 전해졌는지 시점과 수단을 구분했는가
사람마다 내용이 달랐다면 그 차이를 정리했는가
받은 분에게 원본 보관을 부탁해 두었는가
연락 문제까지 겹쳐 있다면 그 기록도 함께 모아 두었는가




관련 개념 정리

공연성
불특정 또는 다수인이 알 수 있는 상태를 말합니다. 여러 사람 앞에서 말했는지가 아니라 그 내용이 그 자리에서 멎을 것이었는지를 함께 봅니다.
전파 가능성
한 사람에게 전한 이야기라도 그 사람이 다시 옮길 여지가 있다면 공연성을 인정할 수 있다는 법리입니다. 받은 사람과의 관계와 전달된 상황이 함께 검토됩니다.
개별 전달의 정리
여러 사람에게 각각 보낸 경우에는 누구에게 어떤 내용이 갔는지를 나눠 살피게 됩니다. 하나로 묶어 두면 개인적인 대화였다는 주장이 힘을 얻기 쉽습니다.
처벌불원과 피해 회복
합의 과정에서 처벌을 원하지 않는다는 뜻이 반영되기도 합니다. 처벌과 배상 중 무엇을 목표로 삼을지 초기에 정해 두면 협상의 방향이 분명해집니다.




이 사건을 담당한 변호인
고소 구성과 합의 협상을 이어서 끌고 가야 했습니다. 이 사건은 두 변호사가 나눠 수행했습니다.







CEO Lawyer
김수열 대표변호사

#명예훼손·모욕#협박·스토킹#사이버범죄

서울대학교 심리학과를 거쳐 서울대학교 법학전문대학원을 졸업했고, 법무법인 율촌을 거쳐 뉴로이어 법률사무소를 이끌고 있는 대한변호사협회 인증 형사전문변호사입니다. 공연성과 전파가능성이 쟁점이 되는 명예훼손 사건을 다수 수행해 왔습니다.

서울대 총학생회장 명예훼손 사건 대법원 파기환송 승소
언론사 가짜뉴스 명예훼손·업무방해 고소대리
방송 출연자·인플루언서 악성댓글 집단 고소 성공 수행

프로필 자세히 보기 →








Partner Lawyer
오동현 파트너변호사

#명예훼손·모욕#기업자문#사기·보이스피싱

고려대학교 법학전문대학원을 수석입학·최우등졸업하고 고려대학교 미디어학부를 거쳤으며, 법무법인 율촌을 비롯한 국내 5대 대형로펌 출신입니다. 자료 분석과 합의 협상이 함께 필요한 사건을 폭넓게 수행합니다.

60억 투자사기 집단소송 전부승소
이커머스 기업 상대 21억 청구 전부승소
40억 전세사기 사건 집행유예

프로필 자세히 보기 →







FAQ사생활 폭로 명예훼손, 자주 묻는 질문

전남친이 과거를 퍼뜨렸는데 고소할 수 있나요?
가능합니다. 다만 사적인 이야기가 알려졌다는 사실만으로 곧바로 성립하지는 않습니다. 어떤 내용이 누구에게 전해졌는지, 그 내용이 사회적 평가를 떨어뜨릴 만한 것인지, 그리고 그 이야기가 받은 사람 선에서 멎을 것이었는지가 함께 검토됩니다.


단체방이 아니라 한 명씩 보냈으면 빠져나가나요?
그렇지 않습니다. 판단의 기준은 몇 명 앞에서 말했느냐가 아니라 그 이야기가 다시 옮겨질 여지가 있었느냐입니다. 받은 사람과 어떤 사이였는지에 따라 개별 전달이라도 평가가 달라질 수 있습니다.


인스타그램 DM으로 전해진 것도 문제가 되나요?
통로가 무엇이냐로 결론이 갈리지는 않습니다. 문자든 메신저든 DM이든 누구에게 어떤 내용이 닿았는지가 중요합니다. 다만 통로마다 남는 흔적과 확인 방법이 달라 자료를 어떻게 확보하느냐에 차이가 생깁니다.


주변에서 들었다고만 하고 화면이 없으면 어렵나요?
전해 들었다는 말만으로는 다투기 어렵습니다. 알려 준 분에게 받은 화면을 그대로 보내 달라고 요청해 두시기 바랍니다. 시간이 지나면 지워지는 경우가 많아 확보 시점이 결과를 가르기도 합니다.


사실인 내용을 퍼뜨려도 문제가 되나요?
사실을 드러낸 경우에도 명예훼손이 문제될 수 있습니다. 다만 허위인 경우와는 검토되는 지점이 달라, 어떤 내용이 어떤 방식으로 전해졌는지에 따라 접근이 갈립니다. 기록을 놓고 판단해야 하는 영역입니다.


처벌과 합의금 중 무엇을 목표로 하나요?
무엇을 바라시는지에 따라 방향이 정해집니다. 이 사건에서는 협상을 거쳐 1,000만원의 피해회복 합의에 닿았고, 그 과정에서 처벌을 원하지 않는다는 뜻이 반영됐습니다. 초기에 목표를 정해 두면 대응이 분명해집니다.




함께 보면 좋은 글

전 연인 반복 연락 스토킹 고소, 검찰 송치 후 합의금 1,000만원 사례
전여자친구 허위사실유포 명예훼손·스토킹·통매음, 손해배상 700만원 성공사례
직장 내 뒷담화 명예훼손, 형사 무죄에 민사 전부기각까지 받은 사례




화면이 지워지기 전에 받아 두셔야 합니다
사적인 이야기가 주변에 퍼져 힘드시다면 전달받은 화면과 그 사람과의 관계, 전해진 시점을 정리해 문의해 주세요.어느 전달부터 문제 삼을 수 있을지 기록부터 살펴 드립니다.

카카오톡 상담
070-8098-0421
홈페이지 상담 신청

모든 상담 내용은 비밀이 보장됩니다



뉴로이어 법률사무소 · 서울 서초구 강남대로 525 세영제이타워 11층(06536) · 사업자등록번호 588-14-01388 · [email protected]


본 성공사례는 뉴로이어 법률사무소가 실제 수행한 사건을 바탕으로 작성됐으며, 의뢰인 보호를 위해 일부 사실관계를 조정했습니다. 개별 사건의 결과는 구체적 사정에 따라 달라질 수 있어, 본 글이 유사 사건에서 동일한 결과를 약속하는 것은 아닙니다.




{
"@context": "https://schema.org",
"@type": "Article",
"headline": "한 사람씩 따로 보낸 메시지였습니다, 전파 가능성을 하나씩 짚어 책임을 물은 성공사례",
"description": "헤어진 뒤 사적인 지난 일이 문자와 카카오톡, 인스타그램 DM으로 가족과 지인에게 각각 전해진 사건. 개별 전달이라 공연성이 다퉈질 수 있는 국면에서 받은 사람과 내용, 전파 가능성을 하나씩 나눠 논증해 1,000만원 피해회복 합의를 이끌어낸 뉴로이어 명예훼손 고소대리 성공사례입니다.",
"inLanguage": "ko",
"datePublished": "2026-08-12",
"dateModified": "2026-08-12",
"author": [
{
"@type": "Person",
"name": "김수열",
"jobTitle": "대표변호사",
"url": "https://newlawyer.co.kr/page/21_view?wr_id=1",
"image": "https://newlawyer.co.kr/data/file/member/thumb-238321632_UzWE7X3O_a622b2fa6778b002d58c2ddc7bdddb15cb53f084_460x460.jpg",
"knowsAbout": [
"협박·스토킹",
"명예훼손·모욕",
"사이버범죄",
"스토킹처벌법"
],
"alumniOf": {
"@type": "CollegeOrUniversity",
"name": "서울대학교 법학전문대학원"
},
"worksFor": {
"@type": "LegalService",
"name": "뉴로이어 법률사무소",
"url": "https://www.newlawyer.co.kr"
}
},
{
"@type": "Person",
"name": "오동현",
"jobTitle": "파트너변호사",
"url": "https://www.newlawyer.co.kr/page/21_view?wr_id=10",
"image": "https://www.newlawyer.co.kr/data/file/member/thumb-238321632_WqtGJiPz_afef4e1fb4bb9821d2e66a7897139c20dca081de_460x460.jpg",
"knowsAbout": [
"명예훼손·모욕",
"합의 협상",
"기업자문",
"사기·보이스피싱"
],
"alumniOf": {
"@type": "CollegeOrUniversity",
"name": "고려대학교 법학전문대학원"
},
"worksFor": {
"@type": "LegalService",
"name": "뉴로이어 법률사무소",
"url": "https://www.newlawyer.co.kr"
}
}
],
"publisher": {
"@type": "LegalService",
"name": "뉴로이어 법률사무소",
"url": "https://www.newlawyer.co.kr",
"address": {
"@type": "PostalAddress",
"streetAddress": "강남대로 525 세영제이타워 11층",
"addressLocality": "서초구",
"addressRegion": "서울",
"postalCode": "06536",
"addressCountry": "KR"
},
"telephone": "+82-70-8098-0421"
},
"mainEntityOfPage": {
"@type": "WebPage",
"@id": "https://www.newlawyer.co.kr/31/426"
},
"about": [
"전남자친구 폭로 명예훼손",
"인스타그램 DM 명예훼손",
"카카오톡 명예훼손",
"사생활 폭로",
"공연성 전파가능성",
"명예훼손 합의금"
]
}


{
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
{
"@type": "ListItem",
"position": 1,
"name": "홈",
"item": "https://www.newlawyer.co.kr"
},
{
"@type": "ListItem",
"position": 2,
"name": "성공사례",
"item": "https://www.newlawyer.co.kr/31"
},
{
"@type": "ListItem",
"position": 3,
"name": "명예훼손 · 모욕",
"item": "https://www.newlawyer.co.kr/31?sca=%EB%AA%85%EC%98%88%ED%9B%BC%EC%86%90+%C2%B7+%EB%AA%A8%EC%9A%95"
},
{
"@type": "ListItem",
"position": 4,
"name": "전 연인 사생활 폭로 명예훼손",
"item": "https://www.newlawyer.co.kr/31/426"
}
]
}


{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "전남친이 과거를 퍼뜨렸는데 고소할 수 있나요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "가능합니다. 다만 사적인 이야기가 알려졌다는 사실만으로 곧바로 성립하지는 않습니다. 어떤 내용이 누구에게 전해졌는지, 그 내용이 사회적 평가를 떨어뜨릴 만한 것인지, 그리고 그 이야기가 받은 사람 선에서 멎을 것이었는지가 함께 검토됩니다."
}
},
{
"@type": "Question",
"name": "단체방이 아니라 한 명씩 보냈으면 빠져나가나요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "그렇지 않습니다. 판단의 기준은 몇 명 앞에서 말했느냐가 아니라 그 이야기가 다시 옮겨질 여지가 있었느냐입니다. 받은 사람과 어떤 사이였는지에 따라 개별 전달이라도 평가가 달라질 수 있습니다."
}
},
{
"@type": "Question",
"name": "인스타그램 DM으로 전해진 것도 문제가 되나요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "통로가 무엇이냐로 결론이 갈리지는 않습니다. 문자든 메신저든 DM이든 누구에게 어떤 내용이 닿았는지가 중요합니다. 다만 통로마다 남는 흔적과 확인 방법이 달라 자료를 어떻게 확보하느냐에 차이가 생깁니다."
}
},
{
"@type": "Question",
"name": "주변에서 들었다고만 하고 화면이 없으면 어렵나요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "전해 들었다는 말만으로는 다투기 어렵습니다. 알려 준 분에게 받은 화면을 그대로 보내 달라고 요청해 두시기 바랍니다. 시간이 지나면 지워지는 경우가 많아 확보 시점이 결과를 가르기도 합니다."
}
},
{
"@type": "Question",
"name": "사실인 내용을 퍼뜨려도 문제가 되나요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "사실을 드러낸 경우에도 명예훼손이 문제될 수 있습니다. 다만 허위인 경우와는 검토되는 지점이 달라, 어떤 내용이 어떤 방식으로 전해졌는지에 따라 접근이 갈립니다. 기록을 놓고 판단해야 하는 영역입니다."
}
},
{
"@type": "Question",
"name": "처벌과 합의금 중 무엇을 목표로 하나요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "무엇을 바라시는지에 따라 방향이 정해집니다. 이 사건에서는 협상을 거쳐 1,000만원의 피해회복 합의에 닿았고, 그 과정에서 처벌을 원하지 않는다는 뜻이 반영됐습니다. 초기에 목표를 정해 두면 대응이 분명해집니다."
}
}
]
}


{
"@context": "https://schema.org",
"@type": "HowTo",
"name": "개별 전달 사생활 폭로 명예훼손 대응 절차",
"description": "한 사람씩 따로 전해진 폭로 메시지에 대해 공연성과 전파 가능성을 세우는 순서입니다.",
"step": [
{
"@type": "HowToStep",
"name": "수신자별 분리",
"text": "전해진 메시지를 받은 사람 기준으로 갈라 내용과 짝지어 둡니다."
},
{
"@type": "HowToStep",
"name": "전달 경로의 구분",
"text": "문자와 메신저, DM 가운데 어느 통로가 쓰였는지 함께 표시합니다."
},
{
"@type": "HowToStep",
"name": "수신자와의 관계 정리",
"text": "받은 사람이 피해자와 어떤 사이인지 정리해 판단의 재료로 삼습니다."
},
{
"@type": "HowToStep",
"name": "전파 가능성의 개별 논증",
"text": "각 전달마다 그 내용이 거기서 멎을 것이었는지를 따로 짚습니다."
},
{
"@type": "HowToStep",
"name": "증거와 법리의 결합",
"text": "각 항목에 자료를 붙이고 문제되는 이유를 법리로 받쳐 둡니다."
}
]
}



:root {
--nl-navy: #1f4e79;
--nl-navy-2: #2e5a8a;
--nl-navy-3: #0f2e4d;
--nl-navy-soft: #5b7ea1;
--nl-ink: #222222;
--nl-soft: #444444;
--nl-mute: #767676;
--nl-line: #e5e7eb;
--nl-line-soft: #eef0f3;
--nl-bg-soft: #f5f7fa;
--nl-bg-card: #fafbfc;
--nl-accent: #c0392b;
--nl-bg: #ffffff;
}

.nl-wrap {
font-family: "Pretendard", "Pretendard Variable", -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", sans-serif;
color: var(--nl-ink);
line-height: 1.85;
font-size: clamp(15px, 1.05vw + 12px, 17px);
background: var(--nl-bg);
-webkit-text-size-adjust: 100%;
text-size-adjust: 100%;
word-break: keep-all;
overflow-wrap: anywhere;
max-width: 880px;
margin: 0 auto;
padding: clamp(20px, 4vw, 48px) clamp(16px, 3vw, 32px);
position: relative;
font-feature-settings: "ss01", "ss02";
letter-spacing: -0.005em;
}

.nl-wrap * { box-sizing: border-box; }

.nl-wrap a { color: var(--nl-navy); text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; }
.nl-wrap a:hover { color: var(--nl-navy-3); }

.nl-crumb {
font-size: 13px;
color: var(--nl-mute);
letter-spacing: 0.01em;
margin-bottom: 24px;
padding-bottom: 14px;
border-bottom: 1px solid var(--nl-line);
}
.nl-crumb ol { list-style: none; padding: 0; margin: 0; display: flex; flex-wrap: wrap; gap: 6px 10px; }
.nl-crumb li + li::before { content: "›"; margin-right: 10px; color: var(--nl-navy-soft); }
.nl-crumb a { color: var(--nl-mute); text-decoration: none; }
.nl-crumb a:hover { color: var(--nl-navy); }

.nl-tag {
display: inline-flex;
align-items: center;
gap: 8px;
font-size: 12px;
font-weight: 600;
letter-spacing: 0.12em;
color: #ffffff;
background: var(--nl-navy);
padding: 7px 16px;
border-radius: 2px;
}
.nl-tag::before {
content: "";
width: 6px; height: 6px;
border-radius: 50%;
background: #ffffff;
}

.nl-h1 {
font-weight: 800;
font-size: clamp(24px, 3.2vw + 12px, 38px);
line-height: 1.35;
color: var(--nl-navy-3);
margin: 16px 0 14px;
letter-spacing: -0.025em;
}
.nl-h1 .nl-h1-accent { color: var(--nl-navy); }

.nl-sub {
font-size: clamp(14px, 0.6vw + 12px, 16px);
color: var(--nl-soft);
margin: 0 0 28px;
line-height: 1.75;
font-weight: 400;
}

.nl-meta {
display: flex;
flex-wrap: wrap;
gap: 14px;
font-size: 13px;
color: var(--nl-mute);
padding: 12px 0;
border-top: 1px solid var(--nl-line);
border-bottom: 1px solid var(--nl-line);
margin-bottom: 36px;
}
.nl-meta span { display: inline-flex; align-items: center; gap: 6px; }
.nl-meta strong { color: var(--nl-navy); font-weight: 600; }

.nl-author {
display: grid;
grid-template-columns: auto 1fr;
gap: 18px;
align-items: center;
background: var(--nl-bg-soft);
border-left: 4px solid var(--nl-navy);
padding: 22px 24px;
margin: 0 0 36px;
border-radius: 2px;
}
.nl-author-badge {
width: 60px; height: 60px;
border-radius: 50%;
background: var(--nl-navy);
color: #fff;
display: flex; align-items: center; justify-content: center;
font-weight: 800;
font-size: 20px;
letter-spacing: 0.02em;
}
.nl-author-name { font-weight: 700; font-size: 16px; color: var(--nl-navy-3); margin: 0 0 4px; letter-spacing: -0.01em; }
.nl-author-role { font-size: 13px; color: var(--nl-soft); line-height: 1.65; margin: 0; }
.nl-author-role b { color: var(--nl-navy); font-weight: 600; }

.nl-summary {
background: var(--nl-bg-card);
border: 1px solid var(--nl-line);
border-radius: 4px;
padding: 28px 28px 24px;
margin: 0 0 40px;
position: relative;
}
.nl-summary::before {
content: "한눈에 보기";
position: absolute;
top: -12px; left: 24px;
background: var(--nl-navy);
color: #fff;
font-size: 11px;
letter-spacing: 0.16em;
font-weight: 600;
padding: 5px 14px;
border-radius: 2px;
}
.nl-summary dl {
display: grid;
grid-template-columns: 100px 1fr;
gap: 12px 20px;
margin: 4px 0 0;
font-size: 14.5px;
}
.nl-summary dt {
color: var(--nl-mute);
font-weight: 500;
border-right: 1px solid var(--nl-line);
padding-right: 20px;
line-height: 1.7;
}
.nl-summary dd { margin: 0; color: var(--nl-ink); line-height: 1.7; }
.nl-summary dd b { color: var(--nl-navy); font-weight: 700; }
.nl-summary dd .nl-win { color: var(--nl-navy); font-weight: 700; border-bottom: 2px solid var(--nl-navy); padding-bottom: 1px; }

.nl-lead {
background: var(--nl-bg-soft);
border-left: 4px solid var(--nl-navy);
padding: 22px 26px;
margin: 36px 0;
border-radius: 2px;
}
.nl-lead p { margin: 0; font-size: 16px; line-height: 1.85; color: var(--nl-ink); }
.nl-lead p + p { margin-top: 12px; }
.nl-lead strong { color: var(--nl-navy); font-weight: 700; }

.nl-h2 {
font-weight: 800;
font-size: clamp(20px, 1.5vw + 14px, 26px);
color: var(--nl-navy-3);
margin: 64px 0 22px;
padding-bottom: 14px;
border-bottom: 2px solid var(--nl-navy);
display: flex;
align-items: baseline;
gap: 14px;
letter-spacing: -0.025em;
}
.nl-h2 .nl-h2-no {
font-size: 13px;
color: var(--nl-navy-soft);
letter-spacing: 0.2em;
font-weight: 700;
}

.nl-h3 {
font-weight: 700;
font-size: clamp(17px, 0.7vw + 14px, 19px);
color: var(--nl-navy);
margin: 36px 0 14px;
padding-left: 14px;
border-left: 3px solid var(--nl-navy);
letter-spacing: -0.015em;
}

.nl-wrap p { margin: 14px 0; }

.nl-defn {
background: var(--nl-bg-card);
border: 1px solid var(--nl-line);
border-top: 3px solid var(--nl-navy);
padding: 18px 22px;
margin: 24px 0;
border-radius: 2px;
font-size: 15px;
}
.nl-defn dt {
font-size: 12px;
letter-spacing: 0.14em;
color: var(--nl-navy);
font-weight: 700;
margin-bottom: 8px;
}
.nl-defn dd { margin: 0; color: var(--nl-ink); line-height: 1.8; }
.nl-defn dd b { color: var(--nl-navy); font-weight: 700; }

.nl-statute {
background: var(--nl-bg-soft);
border: 1px solid var(--nl-line);
border-left: 4px solid var(--nl-navy);
padding: 22px 26px;
margin: 28px 0;
border-radius: 2px;
position: relative;
}
.nl-statute::before {
content: "법령";
position: absolute;
top: 16px; right: 20px;
font-size: 10px;
letter-spacing: 0.18em;
font-weight: 700;
color: #fff;
background: var(--nl-navy);
padding: 3px 9px;
border-radius: 2px;
}
.nl-statute .nl-statute-h {
font-weight: 800;
font-size: 16px;
color: var(--nl-navy-3);
margin: 0 0 12px;
padding-right: 60px;
letter-spacing: -0.015em;
}
.nl-statute ol { padding-left: 18px; margin: 8px 0 0; }
.nl-statute li { margin-bottom: 6px; line-height: 1.85; }
.nl-statute .nl-cite { display: block; margin-top: 14px; font-size: 12px; color: var(--nl-mute); }
.nl-statute .nl-cite a { color: var(--nl-navy); }

.nl-issues {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 14px;
margin: 28px 0;
}
.nl-issue {
background: #ffffff;
border: 1px solid var(--nl-line);
border-radius: 2px;
padding: 18px 20px;
position: relative;
overflow: hidden;
transition: border-color 0.2s;
}
.nl-issue:hover { border-color: var(--nl-navy); }
.nl-issue::before {
content: "";
position: absolute;
top: 0; left: 0;
width: 4px; height: 100%;
background: var(--nl-navy);
}
.nl-issue h4 {
font-size: 15px;
color: var(--nl-navy-3);
margin: 0 0 8px;
font-weight: 700;
letter-spacing: -0.015em;
}
.nl-issue p {
font-size: 13.5px;
color: var(--nl-soft);
margin: 0;
line-height: 1.7;
}

.nl-steps {
counter-reset: nlstep;
display: grid;
gap: 12px;
margin: 28px 0;
}
.nl-step {
display: grid;
grid-template-columns: 64px 1fr;
gap: 18px;
background: #ffffff;
border: 1px solid var(--nl-line);
border-left: 4px solid var(--nl-navy);
border-radius: 2px;
padding: 18px 22px;
align-items: start;
}
.nl-step::before {
counter-increment: nlstep;
content: "STEP " counter(nlstep);
font-size: 11px;
font-weight: 700;
color: var(--nl-navy);
background: var(--nl-bg-soft);
padding: 6px 10px;
border-radius: 2px;
letter-spacing: 0.08em;
text-align: center;
line-height: 1.4;
align-self: start;
white-space: nowrap;
}
.nl-step h4 {
font-size: 16px;
color: var(--nl-navy-3);
margin: 2px 0 6px;
font-weight: 700;
letter-spacing: -0.015em;
}
.nl-step p {
font-size: 14.5px;
color: var(--nl-soft);
margin: 0;
line-height: 1.75;
}

.nl-table {
width: 100%;
border-collapse: collapse;
margin: 28px 0;
font-size: 14px;
background: #fff;
border: 1px solid var(--nl-line);
border-radius: 2px;
overflow: hidden;
}
.nl-table th, .nl-table td {
padding: 14px 16px;
border-bottom: 1px solid var(--nl-line);
border-right: 1px solid var(--nl-line);
vertical-align: top;
line-height: 1.7;
}
.nl-table th:last-child, .nl-table td:last-child { border-right: none; }
.nl-table tr:last-child td { border-bottom: none; }
.nl-table thead th {
background: var(--nl-navy);
color: #fff;
font-weight: 600;
letter-spacing: 0.02em;
text-align: left;
font-size: 13.5px;
}
.nl-table tbody th {
background: var(--nl-bg-soft);
color: var(--nl-navy-3);
font-weight: 600;
text-align: left;
width: 28%;
}
.nl-table .nl-td-good { color: var(--nl-navy); font-weight: 700; }
.nl-table .nl-td-bad { color: var(--nl-accent); font-weight: 700; }

.nl-checklist {
background: var(--nl-bg-card);
border: 1px solid var(--nl-line);
border-radius: 2px;
padding: 24px 26px;
margin: 28px 0;
}
.nl-checklist h4 {
font-size: 16px;
color: var(--nl-navy-3);
margin: 0 0 14px;
padding-bottom: 12px;
border-bottom: 1px solid var(--nl-line);
font-weight: 700;
letter-spacing: -0.015em;
}
.nl-checklist ul { list-style: none; padding: 0; margin: 0; }
.nl-checklist li {
position: relative;
padding-left: 30px;
margin-bottom: 10px;
font-size: 14.5px;
color: var(--nl-ink);
line-height: 1.75;
}
.nl-checklist li::before {
content: "";
position: absolute;
left: 0; top: 5px;
width: 18px; height: 18px;
border: 2px solid var(--nl-navy);
border-radius: 2px;
background: #fff;
}
.nl-checklist li::after {
content: "";
position: absolute;
left: 4px; top: 8px;
width: 10px; height: 5px;
border-left: 2px solid var(--nl-navy);
border-bottom: 2px solid var(--nl-navy);
transform: rotate(-45deg);
}

.nl-caution {
background: var(--nl-bg-soft);
border-left: 4px solid var(--nl-navy);
padding: 18px 22px;
margin: 28px 0;
border-radius: 2px;
}
.nl-caution h4 {
font-size: 15px;
color: var(--nl-navy-3);
margin: 0 0 8px;
font-weight: 700;
letter-spacing: -0.015em;
}
.nl-caution h4::before { content: "⚠ "; color: var(--nl-navy); }
.nl-caution p { margin: 0; font-size: 14.5px; color: var(--nl-soft); line-height: 1.75; }

.nl-law {
background: var(--nl-bg-card);
border: 1px solid var(--nl-line);
border-radius: 2px;
padding: 24px 26px;
margin: 28px 0;
}
.nl-law h4 {
font-size: 15px;
color: var(--nl-navy-3);
margin: 0 0 12px;
padding-bottom: 12px;
border-bottom: 1px solid var(--nl-line);
font-weight: 700;
letter-spacing: -0.015em;
}
.nl-law dl { margin: 0; font-size: 14px; }
.nl-law dt { color: var(--nl-navy); font-weight: 700; margin-top: 12px; }
.nl-law dt:first-child { margin-top: 0; }
.nl-law dd { margin: 4px 0 0; color: var(--nl-soft); line-height: 1.75; }

.nl-quote {
border-left: 3px solid var(--nl-navy);
padding: 8px 22px;
margin: 28px 0;
color: var(--nl-soft);
font-size: 16px;
line-height: 1.85;
}
.nl-quote p { font-style: normal; }
.nl-quote cite { display: block; font-style: normal; font-size: 13px; color: var(--nl-mute); margin-top: 8px; }

.nl-faq {
margin: 40px 0;
border-top: 2px solid var(--nl-navy);
}
.nl-faq h2 { margin-top: 24px; }
.nl-faq details {
border-bottom: 1px solid var(--nl-line);
padding: 20px 4px;
}
.nl-faq summary {
font-size: 16px;
font-weight: 700;
color: var(--nl-navy-3);
cursor: pointer;
list-style: none;
display: flex;
align-items: flex-start;
gap: 12px;
line-height: 1.55;
padding-right: 30px;
position: relative;
letter-spacing: -0.015em;
}
.nl-faq summary::-webkit-details-marker { display: none; }
.nl-faq summary::before {
content: "Q";
flex-shrink: 0;
width: 26px; height: 26px;
background: var(--nl-navy);
color: #fff;
border-radius: 50%;
display: flex; align-items: center; justify-content: center;
font-size: 13px;
font-weight: 700;
}
.nl-faq summary::after {
content: "+";
position: absolute;
right: 0; top: 0;
font-size: 22px;
color: var(--nl-navy);
font-weight: 300;
transition: transform 0.25s;
line-height: 1;
}
.nl-faq details[open] summary::after { content: "−"; }
.nl-faq .nl-a {
margin-top: 14px;
padding-left: 38px;
font-size: 14.5px;
color: var(--nl-soft);
line-height: 1.85;
}
.nl-faq .nl-a::before {
content: "A. ";
font-weight: 800;
color: var(--nl-navy);
}

.nl-related {
background: var(--nl-bg-soft);
border: 1px solid var(--nl-line);
border-radius: 2px;
padding: 24px 26px;
margin: 32px 0;
}
.nl-related h4 {
font-size: 14px;
color: var(--nl-navy-3);
letter-spacing: 0.04em;
margin: 0 0 14px;
padding-bottom: 12px;
border-bottom: 1px solid var(--nl-line);
font-weight: 700;
}
.nl-related ul { list-style: none; padding: 0; margin: 0; }
.nl-related li {
font-size: 14px;
margin: 8px 0;
padding-left: 14px;
position: relative;
}
.nl-related li::before { content: "›"; position: absolute; left: 0; color: var(--nl-navy); font-weight: 700; }
.nl-related a { color: var(--nl-navy); text-decoration: none; }
.nl-related a:hover { text-decoration: underline; }

.nl-cta {
margin: 48px 0 24px;
background: var(--nl-navy);
color: #fff;
border-radius: 2px;
padding: 38px 32px;
text-align: center;
position: relative;
overflow: hidden;
}
.nl-cta::before {
content: "";
position: absolute;
top: 0; left: 0; right: 0;
height: 3px;
background: linear-gradient(90deg, var(--nl-navy-soft) 0%, #ffffff 100%);
}
.nl-cta-h {
font-size: clamp(20px, 1.5vw + 12px, 26px);
font-weight: 800;
margin: 0 0 8px;
position: relative;
letter-spacing: -0.025em;
}
.nl-cta-sub {
font-size: 14.5px;
color: #c5d1e0;
margin: 0 0 24px;
line-height: 1.7;
position: relative;
}
.nl-cta-buttons {
display: flex;
flex-wrap: wrap;
gap: 10px;
justify-content: center;
position: relative;
}
.nl-cta-buttons a {
display: inline-flex;
align-items: center;
gap: 8px;
font-size: 14.5px;
font-weight: 600;
padding: 14px 26px;
border-radius: 2px;
text-decoration: none;
transition: transform 0.2s, box-shadow 0.2s;
letter-spacing: 0.01em;
}
.nl-cta-buttons a:hover { transform: translateY(-2px); box-shadow: 0 6px 16px rgba(0,0,0,0.25); }
.nl-cta-kakao { background: #fee500; color: #181600; }
.nl-cta-tel { background: #ffffff; color: var(--nl-navy-3); }
.nl-cta-web { background: #ffffff; color: var(--nl-navy); border: 1.5px solid var(--nl-navy); font-weight: 700; }
.nl-cta-secret {
display: inline-flex;
align-items: center;
margin-top: 18px;
font-size: 12px;
color: #c5d1e0;
letter-spacing: 0.08em;
position: relative;
}

.nl-footer-cite {
margin-top: 40px;
padding-top: 24px;
border-top: 1px solid var(--nl-line);
font-size: 12px;
color: var(--nl-mute);
line-height: 1.8;
}
.nl-footer-cite h4 {
font-size: 12px;
letter-spacing: 0.08em;
color: var(--nl-navy);
margin: 0 0 10px;
font-weight: 700;
}
.nl-footer-cite ul { padding-left: 18px; margin: 0; }
.nl-footer-cite li { margin: 4px 0; }
.nl-footer-cite a { color: var(--nl-navy); }

.nl-disclaimer {
margin-top: 28px;
font-size: 12px;
color: var(--nl-mute);
line-height: 1.75;
padding: 14px 16px;
background: var(--nl-bg-soft);
border: 1px solid var(--nl-line);
border-radius: 2px;
}

@media (max-width: 640px) {
.nl-wrap { padding: 16px 14px; }
.nl-issues { grid-template-columns: 1fr; }
.nl-summary dl { grid-template-columns: 1fr; gap: 4px 0; }
.nl-summary dt { border-right: none; border-bottom: 1px solid var(--nl-line); padding: 0 0 4px; margin-bottom: 4px; }
.nl-author { grid-template-columns: 1fr; text-align: center; }
.nl-author-badge { margin: 0 auto; }
.nl-table thead { display: none; }
.nl-table tr { display: block; border-bottom: 2px solid var(--nl-navy); padding: 8px 0; }
.nl-table th, .nl-table td { display: block; border-right: none; padding: 8px 14px; }
.nl-table tbody th { width: 100%; }
.nl-step { grid-template-columns: 1fr; gap: 8px; }
.nl-step::before { justify-self: start; }
.nl-cta { padding: 28px 20px; }
.nl-cta-buttons a { width: 100%; justify-content: center; }
}

@media (max-width: 380px) {
.nl-wrap { padding: 14px 12px; font-size: 14.5px; }
.nl-h2 { flex-direction: column; gap: 4px; align-items: flex-start; }
.nl-h2 .nl-h2-no { font-size: 12px; }
.nl-statute, .nl-defn, .nl-checklist, .nl-related, .nl-law { padding: 16px 18px; }
}

/* ==========================================================================
[ADD-ON] 담당 변호인 카드 (nl-team) — 기존 스타일 수정 없이 추가된 블록
사용처: 성공사례 하단, CTA 상단. 1~2인 카드 배치.
========================================================================== */

.nl-team {
margin: 40px 0 36px;
}

.nl-team-h {
font-size: 15px;
font-weight: 700;
color: var(--nl-navy);
letter-spacing: -0.01em;
margin: 0 0 4px;
padding-left: 12px;
border-left: 3px solid var(--nl-navy);
line-height: 1.4;
}

.nl-team-sub {
font-size: 13.5px;
color: var(--nl-mute);
margin: 0 0 18px;
padding-left: 15px;
line-height: 1.7;
}

.nl-team-grid {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 16px;
}

.nl-card {
display: grid;
grid-template-columns: 84px minmax(0, 1fr);
gap: 16px;
background: var(--nl-bg-card);
border: 1px solid var(--nl-line);
border-top: 3px solid var(--nl-navy);
border-radius: 2px;
padding: 20px 18px;
align-items: start;
}

.nl-card-photo {
width: 84px;
height: 84px;
border-radius: 2px;
overflow: hidden;
background: var(--nl-bg-soft);
border: 1px solid var(--nl-line);
}

.nl-card-photo img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
}

.nl-card-role {
display: inline-block;
font-size: 10.5px;
font-weight: 700;
letter-spacing: 0.08em;
text-transform: uppercase;
color: var(--nl-navy-soft);
margin: 0 0 4px;
line-height: 1.3;
}

.nl-card-name {
font-size: 16.5px;
font-weight: 800;
color: var(--nl-ink);
letter-spacing: -0.02em;
margin: 0 0 8px;
line-height: 1.35;
}

.nl-card-name a {
color: var(--nl-ink);
text-decoration: none;
}
.nl-card-name a:hover {
color: var(--nl-navy);
text-decoration: underline;
text-underline-offset: 3px;
}

.nl-card-tags {
display: flex;
flex-wrap: wrap;
gap: 5px;
margin: 0 0 10px;
padding: 0;
list-style: none;
}

.nl-card-tags li {
font-size: 11.5px;
color: var(--nl-navy);
background: rgba(31, 78, 121, 0.07);
border-radius: 2px;
padding: 2px 7px;
line-height: 1.6;
letter-spacing: -0.01em;
}

.nl-card-desc {
font-size: 13.5px;
color: var(--nl-soft);
line-height: 1.75;
margin: 0 0 10px;
letter-spacing: -0.01em;
}

.nl-card-list {
margin: 0;
padding: 0;
list-style: none;
border-top: 1px solid var(--nl-line-soft);
padding-top: 9px;
}

.nl-card-list li {
font-size: 12.5px;
color: var(--nl-mute);
line-height: 1.7;
padding-left: 10px;
position: relative;
letter-spacing: -0.01em;
}

.nl-card-list li::before {
content: "";
position: absolute;
left: 0;
top: 9px;
width: 3px;
height: 3px;
border-radius: 50%;
background: var(--nl-navy-soft);
}

.nl-card-list li b {
color: var(--nl-soft);
font-weight: 700;
}

.nl-card-link {
display: inline-block;
font-size: 12.5px;
color: var(--nl-navy);
margin-top: 10px;
text-decoration: none;
border-bottom: 1px solid var(--nl-line);
padding-bottom: 1px;
}
.nl-card-link:hover {
border-bottom-color: var(--nl-navy);
}

@media (max-width: 760px) {
.nl-team-grid { grid-template-columns: 1fr; gap: 14px; }
}

@media (max-width: 480px) {
.nl-card {
grid-template-columns: 64px minmax(0, 1fr);
gap: 13px;
padding: 17px 15px;
}
.nl-card-photo { width: 64px; height: 64px; }
.nl-card-name { font-size: 15.5px; }
.nl-card-desc { font-size: 13px; }
}

/* [ADD-ON] 1인 카드일 때 전체 폭 사용 */
.nl-team-grid:has(> .nl-card:only-child) {
grid-template-columns: minmax(0, 1fr);
}
.nl-team-grid > .nl-card:only-child {
grid-template-columns: 110px minmax(0, 1fr);
gap: 20px;
padding: 22px 20px;
}
.nl-team-grid > .nl-card:only-child .nl-card-photo {
width: 110px;
height: 110px;
}
@media (max-width: 480px) {
.nl-team-grid > .nl-card:only-child {
grid-template-columns: 64px minmax(0, 1fr);
gap: 13px;
padding: 17px 15px;
}
.nl-team-grid > .nl-card:only-child .nl-card-photo {
width: 64px;
height: 64px;
}
}

2026.09.09

송치 및 합의금 1,000만원 성립

부재중전화, 계좌이체 스토킹, 인스타그램 DM 사생활 폭로 전남친 고소대리 성공사례

전남자친구 폭로 명예훼손 스토킹 고소 성공사례 | 검찰 송치 후 합의금 1,000만원





성공사례
명예훼손 · 모욕
전 연인 폭로·스토킹 고소




스토킹 · 명예훼손 · 합의금 1천만원
계좌이체 스토킹, 인스타그램 DM으로 사생활 폭로한 전남친수단이 바뀐 흐름 자체를 증거로 만든 사례
메신저를 차단하자 DM으로, 다시 전화로, 끝내 계좌 입금자명으로 말을 보내왔습니다. 수백 건의 자료를 그대로 내지 않고 시간순 표로 엮어 방법만 바꿔 가며 접근한 흐름을 드러낸 고소대리 기록입니다.

카테고리 스토킹 · 명예훼손
결과 스토킹 검찰 송치 · 합의금 1,000만원
쟁점 차단 이후의 접근과 반복성
작성일 2026. 8.





의뢰인
헤어진 뒤 전 연인의 폭로와 반복적인 연락에 시달리던 분
사건 발단
연인 관계에서 알게 된 지극히 사적인 과거사가 가족과 친인척, 지인에게까지 퍼졌고 거부 의사를 밝힌 뒤에도 연락이 이어짐
특이한 수단
메신저와 전화를 차단하자 계좌에 소액을 송금하며 입금자명에 하고 싶은 말을 적어 보내는 방식까지 등장
대응 전략
수백 건의 자료를 그대로 내지 않고 날짜·시간·수단·횟수·내용으로 나눠 표로 정리해 반복성과 집요함이 한눈에 보이도록 구성
결과
스토킹 혐의 검찰 송치 · 합의금 1,000만원의 피해회복 합의




헤어진 뒤에도 연락이나 폭로가 이어져 힘들다며 찾아오시는 분들이 많습니다. 관계는 끝났는데 사적인 이야기가 주변에 퍼지거나, 차단을 해도 다른 수단으로 연락이 계속되는 경우입니다.
이런 일을 거듭 맡으며 몸에 익은 것이 있습니다. 무슨 일을 당했는가 못지않게 그것을 어떤 모양으로 펼쳐 보이는가가 판을 가른다는 점입니다. 손에 쥔 것이 아무리 많아도 줄기가 잡히지 않으면 그 무게는 상대에게 닿지 않습니다.
오늘 전할 사건도 그랬습니다. 뉴로이어 법률사무소는 수백 건에 이르는 연락과 폭로를 표로 엮어 그 반복성과 집요함이 드러나도록 고소를 진행했고, 스토킹 혐의가 검찰에 송치된 뒤 합의 협상을 이끌어 1,000만원의 피해회복 합의에 닿았습니다.


01사건 개요 — 통장에까지 말이 남았습니다

의뢰인은 전 연인과 헤어진 뒤 두 갈래의 피해를 한꺼번에 겪고 계셨습니다. 하나는 폭로였고 다른 하나는 그치지 않는 연락이었습니다.

상대는 만나는 동안 알게 된 의뢰인의 깊이 사적인 지난 일을 문자와 대화창을 통해 가족과 친척, 아는 이들에게까지 흘렸습니다. 그와 동시에 접근도 멎지 않았습니다. 그만두라는 뜻을 거듭 또렷이 전했는데도 상대는 이 길 저 길로 수십 차례 다가왔습니다.

기록을 받아 보며 특히 눈에 걸린 것은 계좌이체였습니다. 상대는 돈을 보내면서 입금자명 자리에 하고 싶은 말을 적어 보내고 있었습니다. 메신저와 전화는 막을 수 있지만 이쪽은 사정이 달랐습니다. 통장 거래내역에 그 문구가 계속 남기 때문에, 연락을 피하려 해도 온전히 벗어나기 어려운 상황이었습니다.

자료를 처음 펼쳐 보고 든 생각은 분명했습니다. 헤어진 뒤 연락을 몇 차례 더 한 정도로 보이게 해서는 안 된다는 것이었습니다. 폭로가 누구에게 어떤 방식으로 이뤄졌는지, 거부 의사를 밝힌 뒤에도 어떤 수단으로 접근이 이어졌는지를 하나의 흐름으로 보여야 상대의 집요함이 드러날 수 있다고 봤습니다.


막힐 때마다 수단을 바꾼다는 것
한 가지 방법으로만 연락했다면 감정을 추스르지 못한 것으로 읽힐 수도 있습니다. 그런데 막힐 때마다 다른 길을 찾아 들어온다면 이야기가 달라집니다. 그 전환 자체가 상대의 의사를 알고도 계속하겠다는 뜻을 보여 주기 때문입니다. 그래서 이런 사건에서는 각각의 연락보다 수단이 바뀌어 온 순서가 더 많은 것을 말합니다.




자료의 과잉
수백 건에 이르는 기록을 그대로 내면 오히려 묻히는 문제를 어떻게 풀 것인가.


수단 전환의 입증
막힐 때마다 다른 방법으로 옮겨 간 흐름을 어떻게 드러낼 것인가.


계좌이체의 평가
직접 대화가 오간 것이 아닌 방식도 스토킹으로 볼 수 있는가.


부재중 전화의 성격
통화가 이뤄지지 않은 연락 시도를 어떻게 자리매김할 것인가.


개별 전달의 구성
여러 사람에게 각각 보낸 메시지를 어떤 기준으로 정리할 것인가.


합의로 가는 길
피해 회복까지 이어지려면 상대가 무엇을 느껴야 하는가.



02문제 해결 — 자료 더미를 흐름으로 바꿨습니다

이런 사건을 맡다 보면 피해가 심할수록 오히려 까다로워지는 대목이 있습니다. 자료가 너무 많다는 점입니다. 이번에도 메신저와 DM, 부재중 전화, 계좌이체 내역까지 기록이 상당했습니다.

피해자 입장에서는 하나하나가 모두 소중한 증거지만, 그대로 제출하면 수사기관은 수백 장을 처음부터 다시 읽어야 합니다. 그렇게 내서는 상대가 얼마나 집요하게 이어 왔는지가 오히려 묻힐 수 있다고 봤습니다.




범죄일람표 작성
언제 몇 시에 어떤 통로로 몇 번, 무슨 말을 보냈는지를 낱낱이 끌어내 시간의 순서대로 늘어놓았습니다. 종이 한 장으로 사건의 뼈대를 세우는 일이었습니다.




수단 전환의 시각화
대화창을 닫자 사진 앱의 쪽지로 옮겨 가고, 그마저 막히자 전화를 걸었으며, 끝내는 송금 화면까지 손을 뻗은 자취가 한 줄로 읽히게 다듬었습니다. 그렇게 늘어놓고 나니 이 일의 성격이 훨씬 또렷해졌습니다.




계좌이체와 부재중 전화의 법리
겉으로 보면 직접 대화가 오간 것도 아니고 계좌이체는 다소 특이한 연락 방법처럼 보일 수 있습니다. 그래서 이런 방식까지 스토킹행위로 평가받을 수 있는지가 중요하다고 보고, 관련 판단을 찾아 고소 내용에 함께 붙였습니다.




폭로 부분의 개별 정리
여러 사람에게 각각 메시지를 보낸 대목에 대해서는 누구에게 어떤 내용이 전달됐는지, 이후 퍼져 나갈 여지가 있었는지를 따로 정리했습니다. 행동 하나하나에 증거와 법리를 붙여 나갔습니다.




다툼의 여지 차단
연인 사이의 다툼으로 넘길 수 없도록, 반복성과 집요함은 표로 보이고 각 행위가 왜 문제되는지는 판례와 법리로 받쳐 두었습니다.





이 사건 고소대리의 무게중심
증거가 많다고 사건이 강해지지는 않습니다. 오히려 읽는 사람이 지치면 무게가 흩어집니다. 저희가 한 일은 흩어진 조각을 한 줄로 꿰어 상대가 걸어온 길을 보이게 만든 것이었습니다. 그 길이 드러나자 상대 쪽에서도 처벌 가능성을 가볍게 볼 수 없게 됐고, 그 압박이 합의로 이어졌습니다.



주의해야 할 점
메신저 화면만 모아 두시는 분들이 많은데 그것으로는 부족합니다. 전화 기록과 계좌 거래내역, 주변 사람에게 전달된 메시지까지 남아 있는 자료를 그대로 보존해 두시기 바랍니다. 특히 거부 의사를 밝힌 시점이 언제였는지가 사건의 기준선이 되니, 그 대화는 지우지 마시고 따로 갈무리해 두시는 편이 좋습니다.


03최종 결과 — 검찰 송치 후 1,000만원 합의

고소장을 낸 뒤 스토킹 쪽 혐의는 검찰로 넘어갔습니다. 명예를 훼손한 부분은 협의를 거치며 처벌을 원하지 않는다는 뜻이 담겼고, 이어 상대로부터 1,000만원을 받는 피해 회복 합의까지 매듭지었습니다.

결과를 받아 들고 다행스럽게 여긴 것은 금액만이 아니었습니다. 의뢰인은 이미 연락을 막아 두었는데도 다른 방법으로 접근을 당했고, 자신의 사적인 이야기가 주변에 퍼지는 상황을 오래 견뎌야 했습니다. 이제 더는 상대의 연락을 걱정하지 않고 원래의 하루로 돌아가실 수 있게 됐다는 점이 가장 큰 의미였습니다.


"증거가 많다고 사건이 강해지지는 않습니다. 흩어진 조각을 한 줄로 꿰어야 상대가 걸어온 길이 보입니다."
— 뉴로이어 법률사무소


이번 일로 되새긴 대목도 있습니다. 이런 사안은 화면을 잔뜩 저장해 두는 것으로 마무리되지 않습니다. 어느 시점에 그만두라는 뜻을 전했는지, 그 뒤로 어떤 통로를 통해 몇 번이나 접근이 있었는지, 길을 막고 나서는 무엇이 새로 동원됐는지를 한 줄기로 엮어야 비로소 모양이 잡힙니다.

옛 연인 때문에 사생활이 새어 나가거나 연락에 시달리고 계시다면 대화창만 붙들지 마시기 바랍니다. 통화가 남긴 흔적, 통장에 찍힌 자국, 주변에 뿌려진 문자까지 손에 닿는 것은 그대로 두시는 편이 좋습니다. 그 자료를 들고 말씀 주시면 어느 행위부터 손봐야 하고 어떤 길로 갈 수 있을지 서류부터 훑어 드리겠습니다.


반복 연락·폭로 피해, 보존할 자료

거부 의사를 밝힌 대화를 시점과 함께 갈무리했는가
메신저와 DM 화면을 날짜가 보이도록 저장했는가
부재중 전화를 포함한 통화 기록을 확보했는가
계좌 거래내역에 남은 입금자명을 출력해 두었는가
주변 사람에게 전달된 메시지를 받아 정리했는가
차단한 시점과 그 이후 쓰인 수단을 순서대로 적어 두었는가




관련 개념 정리

거부 의사와 반복성
상대가 그만두라는 뜻을 밝힌 뒤에도 접근이 이어졌는지가 판단의 기준선이 됩니다. 그 시점을 기록으로 남겨 두는 일이 중요한 이유입니다.
연락 수단의 범위
직접 대화가 오간 방식만 문제되는 것은 아닙니다. 통화가 이뤄지지 않은 연락 시도나 입금자명을 이용한 방식까지 평가 대상이 될 수 있는지는 관련 판단을 찾아 함께 제시하게 됩니다.
개별 전달과 전파 가능성
여러 사람에게 각각 메시지를 보낸 경우에는 누구에게 어떤 내용이 전해졌는지, 그것이 다시 퍼져 나갈 여지가 있었는지가 함께 검토됩니다.
범죄일람표의 쓸모
날짜와 시간, 수단, 횟수, 내용을 표로 정돈해 사건의 흐름을 한눈에 보이게 하는 자료입니다. 자료가 많은 사건일수록 그 필요가 커집니다.




이 사건을 담당한 변호인
고소 구성과 합의 협상을 이어서 끌고 가야 했습니다. 이 사건은 두 변호사가 나눠 수행했습니다.







CEO Lawyer
김수열 대표변호사

#협박·스토킹#명예훼손·모욕#사이버범죄

서울대학교 심리학과를 거쳐 서울대학교 법학전문대학원을 졸업했고, 법무법인 율촌을 거쳐 뉴로이어 법률사무소를 이끌고 있는 대한변호사협회 인증 형사전문변호사입니다. 스토킹과 사생활 폭로가 얽힌 사건의 고소대리를 다수 수행해 왔습니다.

서울대 총학생회장 명예훼손 사건 대법원 파기환송 승소
방송 출연자·인플루언서 악성댓글 집단 고소 성공 수행
언론사 가짜뉴스 명예훼손·업무방해 고소대리

프로필 자세히 보기 →








Partner Lawyer
오동현 파트너변호사

#명예훼손·모욕#기업자문#사기·보이스피싱

고려대학교 법학전문대학원을 수석입학·최우등졸업하고 고려대학교 미디어학부를 거쳤으며, 법무법인 율촌을 비롯한 국내 5대 대형로펌 출신입니다. 자료 분석과 합의 협상이 함께 필요한 사건을 폭넓게 수행합니다.

60억 투자사기 집단소송 전부승소
이커머스 기업 상대 21억 청구 전부승소
40억 전세사기 사건 집행유예

프로필 자세히 보기 →







FAQ전 연인 폭로·스토킹, 자주 묻는 질문

차단했는데 계좌로 연락해 오면 스토킹이 되나요?
직접 대화가 오간 방식만 문제되는 것은 아닙니다. 입금자명을 이용해 말을 전하는 방식도 평가 대상이 될 수 있는지 관련 판단을 찾아 함께 제시하게 됩니다. 이 사건에서도 그 부분을 고소 내용에 붙였습니다.


부재중 전화도 연락으로 볼 수 있나요?
통화가 이뤄지지 않았다는 사정만으로 의미가 없어지지는 않습니다. 거부 의사를 밝힌 뒤에도 시도가 반복됐다면 그 자체가 흐름의 일부가 되므로, 통화 기록을 함께 확보해 두시기 바랍니다.


전 연인이 과거 이야기를 주변에 퍼뜨렸다면요?
누구에게 어떤 내용이 전달됐는지, 그것이 다시 퍼져 나갈 여지가 있었는지를 나눠 정리하게 됩니다. 여러 사람에게 각각 보낸 메시지라면 각 전달마다 따로 살펴야 하므로 받은 분들의 자료를 모아 두시는 편이 좋습니다.


캡처를 많이 모아 두면 되는 것 아닌가요?
자료가 많다고 사건이 강해지지는 않습니다. 그대로 내면 읽는 쪽에서 수백 장을 처음부터 살펴야 해서 오히려 집요함이 묻힐 수 있습니다. 언제부터 거부했고 그 뒤 어떤 수단으로 이어졌는지를 흐름으로 만드는 작업이 필요합니다.


합의금은 어느 정도로 정해지나요?
사안마다 달라 일률적으로 말하기 어렵습니다. 반복된 기간과 횟수, 폭로가 미친 범위, 상대의 태도 등이 함께 고려됩니다. 이 사건에서는 검찰 송치 이후의 협상을 거쳐 1,000만원으로 정리됐습니다.


처벌과 합의 중 어느 쪽으로 진행하나요?
무엇을 바라시는지에 따라 달라집니다. 이 사건에서는 스토킹 혐의가 송치된 상태에서 협상이 이뤄졌고, 명예훼손 부분은 합의 과정에서 처벌불원 의사가 반영되며 피해 회복으로 마무리됐습니다.




함께 보면 좋은 글

전여자친구 허위사실유포 명예훼손·스토킹·통매음, 손해배상 700만원 성공사례
계정 무단로그인 정보통신망 침입, 접속자를 특정해 벌금형까지 이끈 사례
트위터 사이버불링 집단고소, 악플러 5명을 특정해 처분까지 받아낸 사례




흩어진 기록을 흐름으로 만들어 드립니다
전 연인의 폭로나 반복적인 연락으로 힘드시다면 메신저 화면과 통화 기록, 계좌 거래내역을 정리해 문의해 주세요.어떤 행위부터 정리하고 어떻게 대응할지 기록부터 살펴 드립니다.

카카오톡 상담
070-8098-0421
홈페이지 상담 신청

모든 상담 내용은 비밀이 보장됩니다



관련 법령: 스토킹범죄의 처벌 등에 관한 법률 (국가법령정보센터, 작성일 기준)
뉴로이어 법률사무소 · 서울 서초구 강남대로 525 세영제이타워 11층(06536) · 사업자등록번호 588-14-01388 · [email protected]


본 성공사례는 뉴로이어 법률사무소가 실제 수행한 사건을 바탕으로 작성됐으며, 의뢰인 보호를 위해 일부 사실관계를 조정했습니다. 개별 사건의 결과는 구체적 사정에 따라 달라질 수 있어, 본 글이 유사 사건에서 동일한 결과를 약속하는 것은 아닙니다.




{
"@context": "https://schema.org",
"@type": "Article",
"headline": "막으면 다른 길로 들어오던 연락, 수단이 바뀐 흐름 자체를 증거로 만든 성공사례",
"description": "헤어진 뒤 사적인 과거사가 주변에 퍼지고 차단 이후에도 DM·전화·계좌이체로 연락이 이어진 사건. 수백 건의 자료를 범죄일람표로 엮어 수단이 바뀌어 온 흐름을 드러내고, 스토킹 검찰 송치와 1,000만원 피해회복 합의를 이끌어낸 뉴로이어 고소대리 성공사례입니다.",
"inLanguage": "ko",
"datePublished": "2026-08-12",
"dateModified": "2026-08-12",
"author": [
{
"@type": "Person",
"name": "김수열",
"jobTitle": "대표변호사",
"url": "https://newlawyer.co.kr/page/21_view?wr_id=1",
"image": "https://newlawyer.co.kr/data/file/member/thumb-238321632_UzWE7X3O_a622b2fa6778b002d58c2ddc7bdddb15cb53f084_460x460.jpg",
"knowsAbout": [
"협박·스토킹",
"명예훼손·모욕",
"사이버범죄",
"스토킹처벌법"
],
"alumniOf": {
"@type": "CollegeOrUniversity",
"name": "서울대학교 법학전문대학원"
},
"worksFor": {
"@type": "LegalService",
"name": "뉴로이어 법률사무소",
"url": "https://www.newlawyer.co.kr"
}
},
{
"@type": "Person",
"name": "오동현",
"jobTitle": "파트너변호사",
"url": "https://www.newlawyer.co.kr/page/21_view?wr_id=10",
"image": "https://www.newlawyer.co.kr/data/file/member/thumb-238321632_WqtGJiPz_afef4e1fb4bb9821d2e66a7897139c20dca081de_460x460.jpg",
"knowsAbout": [
"명예훼손·모욕",
"합의 협상",
"기업자문",
"사기·보이스피싱"
],
"alumniOf": {
"@type": "CollegeOrUniversity",
"name": "고려대학교 법학전문대학원"
},
"worksFor": {
"@type": "LegalService",
"name": "뉴로이어 법률사무소",
"url": "https://www.newlawyer.co.kr"
}
}
],
"publisher": {
"@type": "LegalService",
"name": "뉴로이어 법률사무소",
"url": "https://www.newlawyer.co.kr",
"address": {
"@type": "PostalAddress",
"streetAddress": "강남대로 525 세영제이타워 11층",
"addressLocality": "서초구",
"addressRegion": "서울",
"postalCode": "06536",
"addressCountry": "KR"
},
"telephone": "+82-70-8098-0421"
},
"mainEntityOfPage": {
"@type": "WebPage",
"@id": "https://www.newlawyer.co.kr/31/425"
},
"about": [
"전남자친구 폭로 명예훼손",
"전남자친구 스토킹 고소",
"계좌이체 스토킹",
"스토킹처벌법",
"사생활 폭로",
"스토킹 합의금"
]
}


{
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
{
"@type": "ListItem",
"position": 1,
"name": "홈",
"item": "https://www.newlawyer.co.kr"
},
{
"@type": "ListItem",
"position": 2,
"name": "성공사례",
"item": "https://www.newlawyer.co.kr/31"
},
{
"@type": "ListItem",
"position": 3,
"name": "명예훼손 · 모욕",
"item": "https://www.newlawyer.co.kr/31?sca=%EB%AA%85%EC%98%88%ED%9B%BC%EC%86%90+%C2%B7+%EB%AA%A8%EC%9A%95"
},
{
"@type": "ListItem",
"position": 4,
"name": "전 연인 폭로·스토킹 고소",
"item": "https://www.newlawyer.co.kr/31/425"
}
]
}


{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "차단했는데 계좌로 연락해 오면 스토킹이 되나요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "직접 대화가 오간 방식만 문제되는 것은 아닙니다. 입금자명을 이용해 말을 전하는 방식도 평가 대상이 될 수 있는지 관련 판단을 찾아 함께 제시하게 됩니다. 이 사건에서도 그 부분을 고소 내용에 붙였습니다."
}
},
{
"@type": "Question",
"name": "부재중 전화도 연락으로 볼 수 있나요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "통화가 이뤄지지 않았다는 사정만으로 의미가 없어지지는 않습니다. 거부 의사를 밝힌 뒤에도 시도가 반복됐다면 그 자체가 흐름의 일부가 되므로, 통화 기록을 함께 확보해 두시기 바랍니다."
}
},
{
"@type": "Question",
"name": "전 연인이 과거 이야기를 주변에 퍼뜨렸다면요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "누구에게 어떤 내용이 전달됐는지, 그것이 다시 퍼져 나갈 여지가 있었는지를 나눠 정리하게 됩니다. 여러 사람에게 각각 보낸 메시지라면 각 전달마다 따로 살펴야 하므로 받은 분들의 자료를 모아 두시는 편이 좋습니다."
}
},
{
"@type": "Question",
"name": "캡처를 많이 모아 두면 되는 것 아닌가요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "자료가 많다고 사건이 강해지지는 않습니다. 그대로 내면 읽는 쪽에서 수백 장을 처음부터 살펴야 해서 오히려 집요함이 묻힐 수 있습니다. 언제부터 거부했고 그 뒤 어떤 수단으로 이어졌는지를 흐름으로 만드는 작업이 필요합니다."
}
},
{
"@type": "Question",
"name": "합의금은 어느 정도로 정해지나요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "사안마다 달라 일률적으로 말하기 어렵습니다. 반복된 기간과 횟수, 폭로가 미친 범위, 상대의 태도 등이 함께 고려됩니다. 이 사건에서는 검찰 송치 이후의 협상을 거쳐 1,000만원으로 정리됐습니다."
}
},
{
"@type": "Question",
"name": "처벌과 합의 중 어느 쪽으로 진행하나요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "무엇을 바라시는지에 따라 달라집니다. 이 사건에서는 스토킹 혐의가 송치된 상태에서 협상이 이뤄졌고, 명예훼손 부분은 합의 과정에서 처벌불원 의사가 반영되며 피해 회복으로 마무리됐습니다."
}
}
]
}


{
"@context": "https://schema.org",
"@type": "HowTo",
"name": "반복 연락·폭로 스토킹 고소 절차",
"description": "차단 이후에도 수단을 바꿔 이어진 연락과 사생활 폭로에 대응하는 순서입니다.",
"step": [
{
"@type": "HowToStep",
"name": "범죄일람표 작성",
"text": "날짜와 시간, 수단, 횟수, 내용을 뽑아 시간순으로 정돈합니다."
},
{
"@type": "HowToStep",
"name": "수단 전환의 시각화",
"text": "메신저에서 DM, 전화, 계좌이체로 옮겨 간 흐름이 한눈에 보이게 만듭니다."
},
{
"@type": "HowToStep",
"name": "특이 수단의 법리 보강",
"text": "계좌이체나 부재중 전화도 평가 대상이 될 수 있는지 관련 판단을 붙입니다."
},
{
"@type": "HowToStep",
"name": "폭로 부분의 개별 정리",
"text": "누구에게 어떤 내용이 전달됐고 전파 여지가 있었는지 나눠 정리합니다."
},
{
"@type": "HowToStep",
"name": "다툼의 여지 차단",
"text": "반복성은 표로, 각 행위의 문제성은 판례와 법리로 받쳐 둡니다."
}
]
}



:root {
--nl-navy: #1f4e79;
--nl-navy-2: #2e5a8a;
--nl-navy-3: #0f2e4d;
--nl-navy-soft: #5b7ea1;
--nl-ink: #222222;
--nl-soft: #444444;
--nl-mute: #767676;
--nl-line: #e5e7eb;
--nl-line-soft: #eef0f3;
--nl-bg-soft: #f5f7fa;
--nl-bg-card: #fafbfc;
--nl-accent: #c0392b;
--nl-bg: #ffffff;
}

.nl-wrap {
font-family: "Pretendard", "Pretendard Variable", -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", sans-serif;
color: var(--nl-ink);
line-height: 1.85;
font-size: clamp(15px, 1.05vw + 12px, 17px);
background: var(--nl-bg);
-webkit-text-size-adjust: 100%;
text-size-adjust: 100%;
word-break: keep-all;
overflow-wrap: anywhere;
max-width: 880px;
margin: 0 auto;
padding: clamp(20px, 4vw, 48px) clamp(16px, 3vw, 32px);
position: relative;
font-feature-settings: "ss01", "ss02";
letter-spacing: -0.005em;
}

.nl-wrap * { box-sizing: border-box; }

.nl-wrap a { color: var(--nl-navy); text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; }
.nl-wrap a:hover { color: var(--nl-navy-3); }

.nl-crumb {
font-size: 13px;
color: var(--nl-mute);
letter-spacing: 0.01em;
margin-bottom: 24px;
padding-bottom: 14px;
border-bottom: 1px solid var(--nl-line);
}
.nl-crumb ol { list-style: none; padding: 0; margin: 0; display: flex; flex-wrap: wrap; gap: 6px 10px; }
.nl-crumb li + li::before { content: "›"; margin-right: 10px; color: var(--nl-navy-soft); }
.nl-crumb a { color: var(--nl-mute); text-decoration: none; }
.nl-crumb a:hover { color: var(--nl-navy); }

.nl-tag {
display: inline-flex;
align-items: center;
gap: 8px;
font-size: 12px;
font-weight: 600;
letter-spacing: 0.12em;
color: #ffffff;
background: var(--nl-navy);
padding: 7px 16px;
border-radius: 2px;
}
.nl-tag::before {
content: "";
width: 6px; height: 6px;
border-radius: 50%;
background: #ffffff;
}

.nl-h1 {
font-weight: 800;
font-size: clamp(24px, 3.2vw + 12px, 38px);
line-height: 1.35;
color: var(--nl-navy-3);
margin: 16px 0 14px;
letter-spacing: -0.025em;
}
.nl-h1 .nl-h1-accent { color: var(--nl-navy); }

.nl-sub {
font-size: clamp(14px, 0.6vw + 12px, 16px);
color: var(--nl-soft);
margin: 0 0 28px;
line-height: 1.75;
font-weight: 400;
}

.nl-meta {
display: flex;
flex-wrap: wrap;
gap: 14px;
font-size: 13px;
color: var(--nl-mute);
padding: 12px 0;
border-top: 1px solid var(--nl-line);
border-bottom: 1px solid var(--nl-line);
margin-bottom: 36px;
}
.nl-meta span { display: inline-flex; align-items: center; gap: 6px; }
.nl-meta strong { color: var(--nl-navy); font-weight: 600; }

.nl-author {
display: grid;
grid-template-columns: auto 1fr;
gap: 18px;
align-items: center;
background: var(--nl-bg-soft);
border-left: 4px solid var(--nl-navy);
padding: 22px 24px;
margin: 0 0 36px;
border-radius: 2px;
}
.nl-author-badge {
width: 60px; height: 60px;
border-radius: 50%;
background: var(--nl-navy);
color: #fff;
display: flex; align-items: center; justify-content: center;
font-weight: 800;
font-size: 20px;
letter-spacing: 0.02em;
}
.nl-author-name { font-weight: 700; font-size: 16px; color: var(--nl-navy-3); margin: 0 0 4px; letter-spacing: -0.01em; }
.nl-author-role { font-size: 13px; color: var(--nl-soft); line-height: 1.65; margin: 0; }
.nl-author-role b { color: var(--nl-navy); font-weight: 600; }

.nl-summary {
background: var(--nl-bg-card);
border: 1px solid var(--nl-line);
border-radius: 4px;
padding: 28px 28px 24px;
margin: 0 0 40px;
position: relative;
}
.nl-summary::before {
content: "한눈에 보기";
position: absolute;
top: -12px; left: 24px;
background: var(--nl-navy);
color: #fff;
font-size: 11px;
letter-spacing: 0.16em;
font-weight: 600;
padding: 5px 14px;
border-radius: 2px;
}
.nl-summary dl {
display: grid;
grid-template-columns: 100px 1fr;
gap: 12px 20px;
margin: 4px 0 0;
font-size: 14.5px;
}
.nl-summary dt {
color: var(--nl-mute);
font-weight: 500;
border-right: 1px solid var(--nl-line);
padding-right: 20px;
line-height: 1.7;
}
.nl-summary dd { margin: 0; color: var(--nl-ink); line-height: 1.7; }
.nl-summary dd b { color: var(--nl-navy); font-weight: 700; }
.nl-summary dd .nl-win { color: var(--nl-navy); font-weight: 700; border-bottom: 2px solid var(--nl-navy); padding-bottom: 1px; }

.nl-lead {
background: var(--nl-bg-soft);
border-left: 4px solid var(--nl-navy);
padding: 22px 26px;
margin: 36px 0;
border-radius: 2px;
}
.nl-lead p { margin: 0; font-size: 16px; line-height: 1.85; color: var(--nl-ink); }
.nl-lead p + p { margin-top: 12px; }
.nl-lead strong { color: var(--nl-navy); font-weight: 700; }

.nl-h2 {
font-weight: 800;
font-size: clamp(20px, 1.5vw + 14px, 26px);
color: var(--nl-navy-3);
margin: 64px 0 22px;
padding-bottom: 14px;
border-bottom: 2px solid var(--nl-navy);
display: flex;
align-items: baseline;
gap: 14px;
letter-spacing: -0.025em;
}
.nl-h2 .nl-h2-no {
font-size: 13px;
color: var(--nl-navy-soft);
letter-spacing: 0.2em;
font-weight: 700;
}

.nl-h3 {
font-weight: 700;
font-size: clamp(17px, 0.7vw + 14px, 19px);
color: var(--nl-navy);
margin: 36px 0 14px;
padding-left: 14px;
border-left: 3px solid var(--nl-navy);
letter-spacing: -0.015em;
}

.nl-wrap p { margin: 14px 0; }

.nl-defn {
background: var(--nl-bg-card);
border: 1px solid var(--nl-line);
border-top: 3px solid var(--nl-navy);
padding: 18px 22px;
margin: 24px 0;
border-radius: 2px;
font-size: 15px;
}
.nl-defn dt {
font-size: 12px;
letter-spacing: 0.14em;
color: var(--nl-navy);
font-weight: 700;
margin-bottom: 8px;
}
.nl-defn dd { margin: 0; color: var(--nl-ink); line-height: 1.8; }
.nl-defn dd b { color: var(--nl-navy); font-weight: 700; }

.nl-statute {
background: var(--nl-bg-soft);
border: 1px solid var(--nl-line);
border-left: 4px solid var(--nl-navy);
padding: 22px 26px;
margin: 28px 0;
border-radius: 2px;
position: relative;
}
.nl-statute::before {
content: "법령";
position: absolute;
top: 16px; right: 20px;
font-size: 10px;
letter-spacing: 0.18em;
font-weight: 700;
color: #fff;
background: var(--nl-navy);
padding: 3px 9px;
border-radius: 2px;
}
.nl-statute .nl-statute-h {
font-weight: 800;
font-size: 16px;
color: var(--nl-navy-3);
margin: 0 0 12px;
padding-right: 60px;
letter-spacing: -0.015em;
}
.nl-statute ol { padding-left: 18px; margin: 8px 0 0; }
.nl-statute li { margin-bottom: 6px; line-height: 1.85; }
.nl-statute .nl-cite { display: block; margin-top: 14px; font-size: 12px; color: var(--nl-mute); }
.nl-statute .nl-cite a { color: var(--nl-navy); }

.nl-issues {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 14px;
margin: 28px 0;
}
.nl-issue {
background: #ffffff;
border: 1px solid var(--nl-line);
border-radius: 2px;
padding: 18px 20px;
position: relative;
overflow: hidden;
transition: border-color 0.2s;
}
.nl-issue:hover { border-color: var(--nl-navy); }
.nl-issue::before {
content: "";
position: absolute;
top: 0; left: 0;
width: 4px; height: 100%;
background: var(--nl-navy);
}
.nl-issue h4 {
font-size: 15px;
color: var(--nl-navy-3);
margin: 0 0 8px;
font-weight: 700;
letter-spacing: -0.015em;
}
.nl-issue p {
font-size: 13.5px;
color: var(--nl-soft);
margin: 0;
line-height: 1.7;
}

.nl-steps {
counter-reset: nlstep;
display: grid;
gap: 12px;
margin: 28px 0;
}
.nl-step {
display: grid;
grid-template-columns: 64px 1fr;
gap: 18px;
background: #ffffff;
border: 1px solid var(--nl-line);
border-left: 4px solid var(--nl-navy);
border-radius: 2px;
padding: 18px 22px;
align-items: start;
}
.nl-step::before {
counter-increment: nlstep;
content: "STEP " counter(nlstep);
font-size: 11px;
font-weight: 700;
color: var(--nl-navy);
background: var(--nl-bg-soft);
padding: 6px 10px;
border-radius: 2px;
letter-spacing: 0.08em;
text-align: center;
line-height: 1.4;
align-self: start;
white-space: nowrap;
}
.nl-step h4 {
font-size: 16px;
color: var(--nl-navy-3);
margin: 2px 0 6px;
font-weight: 700;
letter-spacing: -0.015em;
}
.nl-step p {
font-size: 14.5px;
color: var(--nl-soft);
margin: 0;
line-height: 1.75;
}

.nl-table {
width: 100%;
border-collapse: collapse;
margin: 28px 0;
font-size: 14px;
background: #fff;
border: 1px solid var(--nl-line);
border-radius: 2px;
overflow: hidden;
}
.nl-table th, .nl-table td {
padding: 14px 16px;
border-bottom: 1px solid var(--nl-line);
border-right: 1px solid var(--nl-line);
vertical-align: top;
line-height: 1.7;
}
.nl-table th:last-child, .nl-table td:last-child { border-right: none; }
.nl-table tr:last-child td { border-bottom: none; }
.nl-table thead th {
background: var(--nl-navy);
color: #fff;
font-weight: 600;
letter-spacing: 0.02em;
text-align: left;
font-size: 13.5px;
}
.nl-table tbody th {
background: var(--nl-bg-soft);
color: var(--nl-navy-3);
font-weight: 600;
text-align: left;
width: 28%;
}
.nl-table .nl-td-good { color: var(--nl-navy); font-weight: 700; }
.nl-table .nl-td-bad { color: var(--nl-accent); font-weight: 700; }

.nl-checklist {
background: var(--nl-bg-card);
border: 1px solid var(--nl-line);
border-radius: 2px;
padding: 24px 26px;
margin: 28px 0;
}
.nl-checklist h4 {
font-size: 16px;
color: var(--nl-navy-3);
margin: 0 0 14px;
padding-bottom: 12px;
border-bottom: 1px solid var(--nl-line);
font-weight: 700;
letter-spacing: -0.015em;
}
.nl-checklist ul { list-style: none; padding: 0; margin: 0; }
.nl-checklist li {
position: relative;
padding-left: 30px;
margin-bottom: 10px;
font-size: 14.5px;
color: var(--nl-ink);
line-height: 1.75;
}
.nl-checklist li::before {
content: "";
position: absolute;
left: 0; top: 5px;
width: 18px; height: 18px;
border: 2px solid var(--nl-navy);
border-radius: 2px;
background: #fff;
}
.nl-checklist li::after {
content: "";
position: absolute;
left: 4px; top: 8px;
width: 10px; height: 5px;
border-left: 2px solid var(--nl-navy);
border-bottom: 2px solid var(--nl-navy);
transform: rotate(-45deg);
}

.nl-caution {
background: var(--nl-bg-soft);
border-left: 4px solid var(--nl-navy);
padding: 18px 22px;
margin: 28px 0;
border-radius: 2px;
}
.nl-caution h4 {
font-size: 15px;
color: var(--nl-navy-3);
margin: 0 0 8px;
font-weight: 700;
letter-spacing: -0.015em;
}
.nl-caution h4::before { content: "⚠ "; color: var(--nl-navy); }
.nl-caution p { margin: 0; font-size: 14.5px; color: var(--nl-soft); line-height: 1.75; }

.nl-law {
background: var(--nl-bg-card);
border: 1px solid var(--nl-line);
border-radius: 2px;
padding: 24px 26px;
margin: 28px 0;
}
.nl-law h4 {
font-size: 15px;
color: var(--nl-navy-3);
margin: 0 0 12px;
padding-bottom: 12px;
border-bottom: 1px solid var(--nl-line);
font-weight: 700;
letter-spacing: -0.015em;
}
.nl-law dl { margin: 0; font-size: 14px; }
.nl-law dt { color: var(--nl-navy); font-weight: 700; margin-top: 12px; }
.nl-law dt:first-child { margin-top: 0; }
.nl-law dd { margin: 4px 0 0; color: var(--nl-soft); line-height: 1.75; }

.nl-quote {
border-left: 3px solid var(--nl-navy);
padding: 8px 22px;
margin: 28px 0;
color: var(--nl-soft);
font-size: 16px;
line-height: 1.85;
}
.nl-quote p { font-style: normal; }
.nl-quote cite { display: block; font-style: normal; font-size: 13px; color: var(--nl-mute); margin-top: 8px; }

.nl-faq {
margin: 40px 0;
border-top: 2px solid var(--nl-navy);
}
.nl-faq h2 { margin-top: 24px; }
.nl-faq details {
border-bottom: 1px solid var(--nl-line);
padding: 20px 4px;
}
.nl-faq summary {
font-size: 16px;
font-weight: 700;
color: var(--nl-navy-3);
cursor: pointer;
list-style: none;
display: flex;
align-items: flex-start;
gap: 12px;
line-height: 1.55;
padding-right: 30px;
position: relative;
letter-spacing: -0.015em;
}
.nl-faq summary::-webkit-details-marker { display: none; }
.nl-faq summary::before {
content: "Q";
flex-shrink: 0;
width: 26px; height: 26px;
background: var(--nl-navy);
color: #fff;
border-radius: 50%;
display: flex; align-items: center; justify-content: center;
font-size: 13px;
font-weight: 700;
}
.nl-faq summary::after {
content: "+";
position: absolute;
right: 0; top: 0;
font-size: 22px;
color: var(--nl-navy);
font-weight: 300;
transition: transform 0.25s;
line-height: 1;
}
.nl-faq details[open] summary::after { content: "−"; }
.nl-faq .nl-a {
margin-top: 14px;
padding-left: 38px;
font-size: 14.5px;
color: var(--nl-soft);
line-height: 1.85;
}
.nl-faq .nl-a::before {
content: "A. ";
font-weight: 800;
color: var(--nl-navy);
}

.nl-related {
background: var(--nl-bg-soft);
border: 1px solid var(--nl-line);
border-radius: 2px;
padding: 24px 26px;
margin: 32px 0;
}
.nl-related h4 {
font-size: 14px;
color: var(--nl-navy-3);
letter-spacing: 0.04em;
margin: 0 0 14px;
padding-bottom: 12px;
border-bottom: 1px solid var(--nl-line);
font-weight: 700;
}
.nl-related ul { list-style: none; padding: 0; margin: 0; }
.nl-related li {
font-size: 14px;
margin: 8px 0;
padding-left: 14px;
position: relative;
}
.nl-related li::before { content: "›"; position: absolute; left: 0; color: var(--nl-navy); font-weight: 700; }
.nl-related a { color: var(--nl-navy); text-decoration: none; }
.nl-related a:hover { text-decoration: underline; }

.nl-cta {
margin: 48px 0 24px;
background: var(--nl-navy);
color: #fff;
border-radius: 2px;
padding: 38px 32px;
text-align: center;
position: relative;
overflow: hidden;
}
.nl-cta::before {
content: "";
position: absolute;
top: 0; left: 0; right: 0;
height: 3px;
background: linear-gradient(90deg, var(--nl-navy-soft) 0%, #ffffff 100%);
}
.nl-cta-h {
font-size: clamp(20px, 1.5vw + 12px, 26px);
font-weight: 800;
margin: 0 0 8px;
position: relative;
letter-spacing: -0.025em;
}
.nl-cta-sub {
font-size: 14.5px;
color: #c5d1e0;
margin: 0 0 24px;
line-height: 1.7;
position: relative;
}
.nl-cta-buttons {
display: flex;
flex-wrap: wrap;
gap: 10px;
justify-content: center;
position: relative;
}
.nl-cta-buttons a {
display: inline-flex;
align-items: center;
gap: 8px;
font-size: 14.5px;
font-weight: 600;
padding: 14px 26px;
border-radius: 2px;
text-decoration: none;
transition: transform 0.2s, box-shadow 0.2s;
letter-spacing: 0.01em;
}
.nl-cta-buttons a:hover { transform: translateY(-2px); box-shadow: 0 6px 16px rgba(0,0,0,0.25); }
.nl-cta-kakao { background: #fee500; color: #181600; }
.nl-cta-tel { background: #ffffff; color: var(--nl-navy-3); }
.nl-cta-web { background: #ffffff; color: var(--nl-navy); border: 1.5px solid var(--nl-navy); font-weight: 700; }
.nl-cta-secret {
display: inline-flex;
align-items: center;
margin-top: 18px;
font-size: 12px;
color: #c5d1e0;
letter-spacing: 0.08em;
position: relative;
}

.nl-footer-cite {
margin-top: 40px;
padding-top: 24px;
border-top: 1px solid var(--nl-line);
font-size: 12px;
color: var(--nl-mute);
line-height: 1.8;
}
.nl-footer-cite h4 {
font-size: 12px;
letter-spacing: 0.08em;
color: var(--nl-navy);
margin: 0 0 10px;
font-weight: 700;
}
.nl-footer-cite ul { padding-left: 18px; margin: 0; }
.nl-footer-cite li { margin: 4px 0; }
.nl-footer-cite a { color: var(--nl-navy); }

.nl-disclaimer {
margin-top: 28px;
font-size: 12px;
color: var(--nl-mute);
line-height: 1.75;
padding: 14px 16px;
background: var(--nl-bg-soft);
border: 1px solid var(--nl-line);
border-radius: 2px;
}

@media (max-width: 640px) {
.nl-wrap { padding: 16px 14px; }
.nl-issues { grid-template-columns: 1fr; }
.nl-summary dl { grid-template-columns: 1fr; gap: 4px 0; }
.nl-summary dt { border-right: none; border-bottom: 1px solid var(--nl-line); padding: 0 0 4px; margin-bottom: 4px; }
.nl-author { grid-template-columns: 1fr; text-align: center; }
.nl-author-badge { margin: 0 auto; }
.nl-table thead { display: none; }
.nl-table tr { display: block; border-bottom: 2px solid var(--nl-navy); padding: 8px 0; }
.nl-table th, .nl-table td { display: block; border-right: none; padding: 8px 14px; }
.nl-table tbody th { width: 100%; }
.nl-step { grid-template-columns: 1fr; gap: 8px; }
.nl-step::before { justify-self: start; }
.nl-cta { padding: 28px 20px; }
.nl-cta-buttons a { width: 100%; justify-content: center; }
}

@media (max-width: 380px) {
.nl-wrap { padding: 14px 12px; font-size: 14.5px; }
.nl-h2 { flex-direction: column; gap: 4px; align-items: flex-start; }
.nl-h2 .nl-h2-no { font-size: 12px; }
.nl-statute, .nl-defn, .nl-checklist, .nl-related, .nl-law { padding: 16px 18px; }
}

/* ==========================================================================
[ADD-ON] 담당 변호인 카드 (nl-team) — 기존 스타일 수정 없이 추가된 블록
사용처: 성공사례 하단, CTA 상단. 1~2인 카드 배치.
========================================================================== */

.nl-team {
margin: 40px 0 36px;
}

.nl-team-h {
font-size: 15px;
font-weight: 700;
color: var(--nl-navy);
letter-spacing: -0.01em;
margin: 0 0 4px;
padding-left: 12px;
border-left: 3px solid var(--nl-navy);
line-height: 1.4;
}

.nl-team-sub {
font-size: 13.5px;
color: var(--nl-mute);
margin: 0 0 18px;
padding-left: 15px;
line-height: 1.7;
}

.nl-team-grid {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 16px;
}

.nl-card {
display: grid;
grid-template-columns: 84px minmax(0, 1fr);
gap: 16px;
background: var(--nl-bg-card);
border: 1px solid var(--nl-line);
border-top: 3px solid var(--nl-navy);
border-radius: 2px;
padding: 20px 18px;
align-items: start;
}

.nl-card-photo {
width: 84px;
height: 84px;
border-radius: 2px;
overflow: hidden;
background: var(--nl-bg-soft);
border: 1px solid var(--nl-line);
}

.nl-card-photo img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
}

.nl-card-role {
display: inline-block;
font-size: 10.5px;
font-weight: 700;
letter-spacing: 0.08em;
text-transform: uppercase;
color: var(--nl-navy-soft);
margin: 0 0 4px;
line-height: 1.3;
}

.nl-card-name {
font-size: 16.5px;
font-weight: 800;
color: var(--nl-ink);
letter-spacing: -0.02em;
margin: 0 0 8px;
line-height: 1.35;
}

.nl-card-name a {
color: var(--nl-ink);
text-decoration: none;
}
.nl-card-name a:hover {
color: var(--nl-navy);
text-decoration: underline;
text-underline-offset: 3px;
}

.nl-card-tags {
display: flex;
flex-wrap: wrap;
gap: 5px;
margin: 0 0 10px;
padding: 0;
list-style: none;
}

.nl-card-tags li {
font-size: 11.5px;
color: var(--nl-navy);
background: rgba(31, 78, 121, 0.07);
border-radius: 2px;
padding: 2px 7px;
line-height: 1.6;
letter-spacing: -0.01em;
}

.nl-card-desc {
font-size: 13.5px;
color: var(--nl-soft);
line-height: 1.75;
margin: 0 0 10px;
letter-spacing: -0.01em;
}

.nl-card-list {
margin: 0;
padding: 0;
list-style: none;
border-top: 1px solid var(--nl-line-soft);
padding-top: 9px;
}

.nl-card-list li {
font-size: 12.5px;
color: var(--nl-mute);
line-height: 1.7;
padding-left: 10px;
position: relative;
letter-spacing: -0.01em;
}

.nl-card-list li::before {
content: "";
position: absolute;
left: 0;
top: 9px;
width: 3px;
height: 3px;
border-radius: 50%;
background: var(--nl-navy-soft);
}

.nl-card-list li b {
color: var(--nl-soft);
font-weight: 700;
}

.nl-card-link {
display: inline-block;
font-size: 12.5px;
color: var(--nl-navy);
margin-top: 10px;
text-decoration: none;
border-bottom: 1px solid var(--nl-line);
padding-bottom: 1px;
}
.nl-card-link:hover {
border-bottom-color: var(--nl-navy);
}

@media (max-width: 760px) {
.nl-team-grid { grid-template-columns: 1fr; gap: 14px; }
}

@media (max-width: 480px) {
.nl-card {
grid-template-columns: 64px minmax(0, 1fr);
gap: 13px;
padding: 17px 15px;
}
.nl-card-photo { width: 64px; height: 64px; }
.nl-card-name { font-size: 15.5px; }
.nl-card-desc { font-size: 13px; }
}

/* [ADD-ON] 1인 카드일 때 전체 폭 사용 */
.nl-team-grid:has(> .nl-card:only-child) {
grid-template-columns: minmax(0, 1fr);
}
.nl-team-grid > .nl-card:only-child {
grid-template-columns: 110px minmax(0, 1fr);
gap: 20px;
padding: 22px 20px;
}
.nl-team-grid > .nl-card:only-child .nl-card-photo {
width: 110px;
height: 110px;
}
@media (max-width: 480px) {
.nl-team-grid > .nl-card:only-child {
grid-template-columns: 64px minmax(0, 1fr);
gap: 13px;
padding: 17px 15px;
}
.nl-team-grid > .nl-card:only-child .nl-card-photo {
width: 64px;
height: 64px;
}
}

2026.09.09

다수 처벌

숲 스트리머 악플러 집단고소 성공사례
























성공사례
명예훼손 · 모욕
스트리머 악플러 2차 대량고소




모욕 · 2차 대량고소 · 구약식과 고소취하
한 번 처벌해도 멈추지 않던 악플,2차 고소로 뿌리까지 뽑아낸 스트리머 사례
대량고소는 수사기관도 부담을 느껴 신원 확보조차 더딘 영역입니다. 진술서를 미리 갈무리해 조사 시간을 줄이고 범죄일람표로 사건 구조를 한눈에 보이게 만들어, 수개월에 걸친 추적 끝에 처분을 이끌어낸 과정입니다.

카테고리 명예훼손 · 사이버범죄
결과 일부 구약식 · 일부 합의 후 고소취하
경과 1차 처벌 뒤 2차 집단고소
작성일 2026. 8.





의뢰인
스트리밍 플랫폼과 영상 채널에서 멤버들과 함께 콘텐츠를 만들어 온 스트리머
사건 발단
채널이 커지면서 커뮤니티에 의뢰인을 겨냥한 모욕적인 글이 이어졌고 성희롱성 표현까지 등장
1차 이후의 상황
앞선 대량고소로 구약식과 기소유예 처분이 나왔음에도 괴롭힘이 멎지 않아 2차 대응을 결정
대응 전략
진술서를 미리 정리해 조사 시간을 줄이고, 사건화가 가능한 글만 선별해 범죄일람표로 구조를 보이며 수사 진행을 관리
결과
일부 구약식 처분 · 나머지는 합의로 고소취하 — 방송 환경 개선




지난번에 저희는 스트리밍 플랫폼과 영상 채널에서 활동하는 의뢰인과 멤버를 겨냥한 악플러들을 집단으로 고소해, 구약식과 기소유예를 비롯한 결과를 받아낸 이야기를 전해 드린 적이 있습니다.
그런데 한 차례 처벌이 이뤄져도 피해가 이어지는 경우가 있습니다. 채널이 클수록 피하기 어려운 일이라, 사안에 따라서는 두 번 세 번 대응이 필요해집니다.
오늘 전할 이야기는 그 뒤에 이어진 두 번째 대응입니다. 뉴로이어 법률사무소가 어떤 방식으로 사건을 굴러가게 만들었는지 순서대로 보여 드리겠습니다.


01사건 개요 — 처벌이 나왔는데도 멎지 않았습니다

의뢰인은 스트리밍 플랫폼과 영상 채널에서 활동하며 멤버들과 함께 방송 콘텐츠를 만들어 오셨습니다. 그런데 채널이 자라나면서 커뮤니티에 의뢰인과 멤버들을 향한 도를 넘은 글과 댓글이 올라오기 시작했습니다.

옮기기 어려운 모욕적인 말들은 물론이고 멤버들을 겨냥한 성희롱까지 이어졌습니다. 이에 의뢰인은 고소를 결심하고 저희에게 사건을 맡기셨고, 첫 번째 대량고소에서 악플러들에 대한 구약식과 기소유예 처분을 이끌어냈습니다.

그럼에도 의뢰인들을 향한 비하와 집단적인 괴롭힘은 멈추지 않았습니다. 의뢰인은 악플러들에게 분명한 경고를 남기고자 하셨고, 앞선 결과를 믿고 두 번째 고소를 다시 맡겨 주셨습니다. 저희도 뿌리까지 정리하겠다는 마음으로 사건에 임했던 기억이 남습니다.


한 번의 처벌로 끝나지 않는 이유
채널이 커질수록 지켜보는 사람도 늘고, 그중 일부는 앞선 처분과 무관하게 새로 글을 올립니다. 그래서 이런 대응은 한 번의 사건이 아니라 이어지는 관리에 가깝습니다. 회차를 나눠 대응하는 것이 번거로워 보여도, 처벌 사실이 알려지며 남는 경고의 무게는 회차가 쌓일수록 커집니다.




수사기관의 부담
건수가 많은 사건에서 수사가 더디게 흘러가는 상황을 어떻게 풀 것인가.


신원 특정의 벽
익명 게시판의 작성자를 찾기 위한 절차를 어떻게 이어 갈 것인가.


조사 시간의 단축
여러 명이 고소인인 사건에서 절차가 늘어지지 않게 하려면 무엇을 준비할 것인가.


사건 구조의 전달
많은 게시글을 수사관이 한눈에 파악하도록 어떻게 정돈할 것인가.


대상의 선별
무더기로 내밀지 않고 다툴 수 있는 글만 어떻게 골라낼 것인가.


진행 상황의 공유
수개월이 걸리는 절차 동안 의뢰인에게 무엇을 어떻게 알릴 것인가.



02문제 해결 — 수사가 굴러가게 만드는 일부터 했습니다

익명 게시판의 가해자를 찾으려면 수사관이 영장을 집행해 사이트 운영자로부터 접속 기록을 회신받아야 합니다. 그런데 건수가 많은 고소에서는 수사기관도 업무 부담 탓에 소극적인 태도를 취하는 경우가 많아, 신원을 특정하는 일 자체가 쉽지 않습니다.

이런 상황에서 수사기관만 믿고 연락을 기다리다 보면 절차가 시작되기까지 시간이 한없이 늘어납니다. 그래서 저희는 기다리는 대신 움직였습니다.




진술서 선제 정리와 제출
고소인 조사에 걸리는 시간을 줄이기 위해 의뢰인들의 진술서를 각각 받아 정리한 뒤 미리 제출했습니다. 여러 명이 고소인인 사건에서 절차가 늘어지지 않게 하는 조치였습니다.




수사 상황의 반복 확인
수사기관에 여러 차례 연락해 진행 상황을 확인했고, 그 과정을 의뢰인께도 꼼꼼히 공유하며 사건을 끌고 갔습니다.




대상 게시글의 선별
무더기로 고소하면 수사관이 사건을 파악하는 데 시간이 걸릴 수밖에 없습니다. 그래서 사건화가 가능한 악성 게시글만 골라 고소장을 작성했습니다.




범죄일람표 작성
선별한 글을 범죄일람표로 정돈했습니다. 저희가 이 표를 만드는 이유는 수사관이 사건의 전체 구조를 한눈에 파악하도록 해 수사가 매끄럽게 흘러가게 하기 위해서입니다.




수개월에 걸친 추적
그 결과 수사기관도 익명의 작성자를 찾기 위한 추적에 힘을 실을 수 있었고, 수개월에 걸쳐 피고소인들에 대한 확인이 이뤄졌습니다. 모두가 어렵다고 말하는 대량고소에서 가해자의 신원을 특정한 순간이었습니다.





이 사건 고소대리의 무게중심
대량고소에서 어려운 것은 혐의를 세우는 일이 아니라 절차가 굴러가게 만드는 일입니다. 수사관 앞에 놓인 서류가 많을수록 사건은 뒤로 밀립니다. 그래서 저희가 한 일은 그 부담을 덜어 주는 것이었습니다. 진술서를 먼저 갖춰 두고 표 한 장으로 구조를 보이면, 사건이 움직이기 시작합니다.



주의해야 할 점
눈에 띄는 글을 모두 모아 한꺼번에 내는 방식은 오히려 사건을 더디게 만듭니다. 다툴 수 있는 것을 가려내는 작업이 먼저입니다. 또 게시글은 지워질 수 있으니 발견하는 대로 화면과 작성 시각을 갈무리해 두시고, 크루나 팀 단위로 피해를 겪고 있다면 각자의 자료를 따로 정리해 두시는 편이 좋습니다.


03최종 결과 — 구약식과 고소취하로 마무리

그 결과 일부 악플러들에게는 구약식 처분이 내려졌고, 다른 이들과는 합의를 통해 고소취하로 마무리했습니다. 이런 사건은 관할 문제나 신원 확보의 어려움 탓에 수사가 매끄럽게 흘러가지 않는 경우가 많은데, 초기 고소 단계부터 체계를 갖춰 대응한 끝에 실질적인 결과에 닿을 수 있었습니다.

이 결과가 뜻깊었던 것은 처벌에 성공했다는 사실만이 아닙니다. 의뢰인의 방송 환경이 나아졌고, 악플러들에게 분명한 경고가 전해졌다는 점에서 의미가 컸습니다.


"대량고소에서 막히는 곳은 법리가 아니라 절차입니다. 수사관의 짐을 덜어 주는 일이 곧 변론이 됩니다."
— 뉴로이어 법률사무소


이렇듯 악플러에 대한 처벌이 이뤄지기까지는 여러 관문이 있고, 그것을 넘으려면 이 유형에 대한 깊은 이해가 필요합니다. 저희는 여러 플랫폼에서 활동하시는 분들의 사건을 맡아 명예훼손과 모욕 고소대리를 이어 오며 결과를 쌓아 왔습니다.

혼자서 감당하기 쉽지 않은 사안이니 말씀해 주셔서 함께 대응하셨으면 합니다. 사건 초기부터 진심을 다해 돕겠습니다.


악플 대량고소를 준비할 때 점검 포인트

게시글 화면과 작성 시각, 작성자 표기를 원본 그대로 갈무리했는가
다툴 수 있는 글과 애매한 글을 나눠 두었는가
크루나 팀 단위라면 각자의 피해 자료를 따로 정리했는가
같은 작성자가 여러 글을 올렸는지 묶어 확인했는가
앞선 대응이 있었다면 그 처분 내역을 정리해 두었는가
수사 진행 상황을 확인할 창구를 정해 두었는가




관련 개념 정리

모욕죄의 검토 요소
사실을 드러내지 않고 사회적 평가를 떨어뜨릴 만한 표현인지, 그 대상이 누구인지 알아볼 수 있는지가 함께 검토됩니다. 표현은 문장 하나가 아니라 글 전체의 맥락 속에서 평가됩니다.
익명 작성자의 특정
신원을 확인하려면 영장이 발부되고 집행되어야 합니다. 건수가 많은 사건일수록 절차가 더디게 흘러갈 수 있어, 고소 단계의 준비가 진행 속도에 영향을 미칩니다.
범죄일람표의 쓸모
다수의 게시글을 표로 정돈해 사건 구조를 한눈에 보이게 하는 자료입니다. 수사기관이 전체를 파악하는 데 드는 시간을 줄여 줍니다.
구약식과 고소취하
구약식은 공판 없이 벌금형을 구하는 처분이고, 고소취하는 합의 등을 거쳐 고소를 거두는 것입니다. 사안과 상대의 태도에 따라 결말이 달라질 수 있습니다.




이 사건을 담당한 변호인
절차를 굴러가게 만드는 준비가 결과를 갈랐습니다. 이 사건은 형사전문 대표변호사가 1차와 2차를 이어 수행했습니다.






CEO Lawyer
김수열 대표변호사

#인플루언서·MCN#명예훼손·모욕#사이버범죄

서울대학교 심리학과를 거쳐 서울대학교 법학전문대학원을 졸업했고, 법무법인 율촌을 거쳐 뉴로이어 법률사무소를 이끌고 있는 대한변호사협회 인증 형사전문변호사입니다. 스트리머와 인플루언서를 겨냥한 악성 게시물의 집단 고소대리를 다수 수행해 왔습니다.

방송 출연자·인플루언서 악성댓글 집단 고소 성공 수행
유명 웹툰·드라마·웹소설 작가, 100만 유튜버 고소대리
언론사 가짜뉴스 명예훼손·업무방해 고소대리

프로필 자세히 보기 →






FAQ악플 집단고소, 자주 묻는 질문

악플이 모욕죄가 되려면 어떤 요건이 필요한가요?
사실을 드러내지 않으면서 사회적 평가를 떨어뜨릴 만한 판단이나 경멸의 감정을 나타내는 표현이어야 합니다. 여기에 그 글이 누구를 가리키는지 알아볼 수 있어야 한다는 점도 함께 검토됩니다. 표현은 문장 하나만 떼어 보는 것이 아니라 글 전체의 취지와 앞뒤 흐름 속에서 평가되므로, 같은 단어라도 맥락에 따라 결론이 달라질 수 있습니다.


익명으로 쓴 글은 작성자를 찾기 어렵지 않나요?
신원을 확인하려면 수사기관이 영장을 받아 플랫폼으로부터 자료를 회신받는 과정을 거쳐야 합니다. 절차가 여러 단계를 거치는 만큼 시간이 걸리고, 건수가 많을수록 더 그렇습니다. 다만 고소 단계에서 무엇을 어떻게 갖춰 두느냐에 따라 그 과정이 달라질 수 있습니다.


글을 최대한 많이 모아서 고소하는 편이 유리한가요?
그렇게 보기 어렵습니다. 판단이 애매한 글까지 함께 묶으면 전체를 살피는 데 시간이 더 들고, 정작 다툴 수 있는 글에 대한 검토도 늦어질 수 있습니다. 성립 가능성을 기준으로 추려 내는 작업이 먼저입니다.


한 번 처벌이 이뤄지면 악플이 멈추나요?
사안에 따라 다릅니다. 지켜보는 사람이 많은 채널이라면 앞선 처분과 무관하게 새로운 글이 올라오기도 합니다. 그래서 이런 대응은 한 번으로 끝나기보다 회차를 나눠 이어 가는 형태가 되는 경우가 있습니다.


여러 사람이 함께 피해를 입었다면 어떻게 진행하나요?
각자의 피해 내용과 자료를 따로 정리해 두는 편이 좋습니다. 대상이 여러 명인 사건은 절차에 시간이 더 걸릴 수 있어, 조사에 필요한 자료를 미리 갖춰 두면 진행이 수월해집니다.


처벌과 합의 중 어느 쪽으로 끝나나요?
사안의 내용과 상대의 태도에 따라 갈립니다. 벌금형으로 이어지는 경우도 있고, 합의를 거쳐 고소를 거두며 마무리되는 경우도 있습니다. 무엇을 목표로 삼을지 초기에 정해 두면 대응의 방향이 분명해집니다.




함께 보면 좋은 글

트위터 사이버불링 집단고소, 악플러 5명을 특정해 처분까지 받아낸 사례
네이버TV 악플 고소, 가해자 6명을 특정해 처분까지 받아낸 사례
버튜버 성희롱·악성 게시글 30건 이상 삭제한 악플 대응 사례




혼자 감당하기 어려운 사안입니다
방송이나 채널 활동 중 악성 게시물로 피해를 겪고 계시다면 게시글 화면과 작성 시각을 정리해 문의해 주세요.사건 초기부터 함께 대응 방향을 잡아 드립니다.

카카오톡 상담
070-8098-0421
홈페이지 상담 신청

모든 상담 내용은 비밀이 보장됩니다



뉴로이어 법률사무소 · 서울 서초구 강남대로 525 세영제이타워 11층(06536) · 사업자등록번호 588-14-01388 · [email protected]


본 성공사례는 뉴로이어 법률사무소가 실제 수행한 사건을 바탕으로 작성됐으며, 의뢰인 보호를 위해 일부 사실관계를 조정했습니다. 개별 사건의 결과는 구체적 사정에 따라 달라질 수 있어, 본 글이 유사 사건에서 동일한 결과를 약속하는 것은 아닙니다.




{
"@context": "https://schema.org",
"@type": "Article",
"headline": "한 번 처벌해도 멈추지 않던 악플, 2차 고소로 뿌리까지 뽑아낸 스트리머 성공사례",
"description": "스트리머와 크루 멤버를 겨냥한 악성 게시물이 1차 처벌 이후에도 이어져 2차 대량고소로 대응한 사건. 진술서를 미리 정리해 조사 시간을 줄이고 범죄일람표로 사건 구조를 보여 수개월에 걸친 추적 끝에 구약식과 고소취하를 이끌어낸 뉴로이어 악플 집단고소 성공사례입니다.",
"inLanguage": "ko",
"datePublished": "2026-08-12",
"dateModified": "2026-08-12",
"author": {
"@type": "Person",
"name": "김수열",
"jobTitle": "대표변호사",
"url": "https://newlawyer.co.kr/page/21_view?wr_id=1",
"image": "https://newlawyer.co.kr/data/file/member/thumb-238321632_UzWE7X3O_a622b2fa6778b002d58c2ddc7bdddb15cb53f084_460x460.jpg",
"knowsAbout": [
"명예훼손·모욕",
"악성 게시물 집단고소",
"인플루언서·MCN",
"사이버범죄",
"스트리머 분쟁"
],
"alumniOf": {
"@type": "CollegeOrUniversity",
"name": "서울대학교 법학전문대학원"
},
"worksFor": {
"@type": "LegalService",
"name": "뉴로이어 법률사무소",
"url": "https://www.newlawyer.co.kr"
}
},
"publisher": {
"@type": "LegalService",
"name": "뉴로이어 법률사무소",
"url": "https://www.newlawyer.co.kr",
"address": {
"@type": "PostalAddress",
"streetAddress": "강남대로 525 세영제이타워 11층",
"addressLocality": "서초구",
"addressRegion": "서울",
"postalCode": "06536",
"addressCountry": "KR"
},
"telephone": "+82-70-8098-0421"
},
"mainEntityOfPage": {
"@type": "WebPage",
"@id": "https://www.newlawyer.co.kr/31/424"
},
"about": [
"숲 스트리머 악플러 고소",
"악플러 집단고소",
"모욕죄 대량고소",
"범죄일람표",
"익명 악플러 특정",
"구약식 고소취하"
]
}


{
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
{
"@type": "ListItem",
"position": 1,
"name": "홈",
"item": "https://www.newlawyer.co.kr"
},
{
"@type": "ListItem",
"position": 2,
"name": "성공사례",
"item": "https://www.newlawyer.co.kr/31"
},
{
"@type": "ListItem",
"position": 3,
"name": "명예훼손 · 모욕",
"item": "https://www.newlawyer.co.kr/31?sca=%EB%AA%85%EC%98%88%ED%9B%BC%EC%86%90+%C2%B7+%EB%AA%A8%EC%9A%95"
},
{
"@type": "ListItem",
"position": 4,
"name": "스트리머 악플러 2차 대량고소",
"item": "https://www.newlawyer.co.kr/31/424"
}
]
}


{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "악플이 모욕죄가 되려면 어떤 요건이 필요한가요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "사실을 드러내지 않으면서 사회적 평가를 떨어뜨릴 만한 판단이나 경멸의 감정을 나타내는 표현이어야 합니다. 여기에 그 글이 누구를 가리키는지 알아볼 수 있어야 한다는 점도 함께 검토됩니다. 표현은 문장 하나만 떼어 보는 것이 아니라 글 전체의 취지와 앞뒤 흐름 속에서 평가되므로, 같은 단어라도 맥락에 따라 결론이 달라질 수 있습니다."
}
},
{
"@type": "Question",
"name": "익명으로 쓴 글은 작성자를 찾기 어렵지 않나요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "신원을 확인하려면 수사기관이 영장을 받아 플랫폼으로부터 자료를 회신받는 과정을 거쳐야 합니다. 절차가 여러 단계를 거치는 만큼 시간이 걸리고, 건수가 많을수록 더 그렇습니다. 다만 고소 단계에서 무엇을 어떻게 갖춰 두느냐에 따라 그 과정이 달라질 수 있습니다."
}
},
{
"@type": "Question",
"name": "글을 최대한 많이 모아서 고소하는 편이 유리한가요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "그렇게 보기 어렵습니다. 판단이 애매한 글까지 함께 묶으면 전체를 살피는 데 시간이 더 들고, 정작 다툴 수 있는 글에 대한 검토도 늦어질 수 있습니다. 성립 가능성을 기준으로 추려 내는 작업이 먼저입니다."
}
},
{
"@type": "Question",
"name": "한 번 처벌이 이뤄지면 악플이 멈추나요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "사안에 따라 다릅니다. 지켜보는 사람이 많은 채널이라면 앞선 처분과 무관하게 새로운 글이 올라오기도 합니다. 그래서 이런 대응은 한 번으로 끝나기보다 회차를 나눠 이어 가는 형태가 되는 경우가 있습니다."
}
},
{
"@type": "Question",
"name": "여러 사람이 함께 피해를 입었다면 어떻게 진행하나요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "각자의 피해 내용과 자료를 따로 정리해 두는 편이 좋습니다. 대상이 여러 명인 사건은 절차에 시간이 더 걸릴 수 있어, 조사에 필요한 자료를 미리 갖춰 두면 진행이 수월해집니다."
}
},
{
"@type": "Question",
"name": "처벌과 합의 중 어느 쪽으로 끝나나요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "사안의 내용과 상대의 태도에 따라 갈립니다. 벌금형으로 이어지는 경우도 있고, 합의를 거쳐 고소를 거두며 마무리되는 경우도 있습니다. 무엇을 목표로 삼을지 초기에 정해 두면 대응의 방향이 분명해집니다."
}
}
]
}


{
"@context": "https://schema.org",
"@type": "HowTo",
"name": "악플 대량고소 진행 절차",
"description": "다수의 악성 게시물에 대해 수사가 원활히 진행되도록 준비하고 처분까지 이끄는 순서입니다.",
"step": [
{
"@type": "HowToStep",
"name": "진술서 선제 정리와 제출",
"text": "고소인들의 진술서를 미리 받아 정리해 조사에 걸리는 시간을 줄입니다."
},
{
"@type": "HowToStep",
"name": "수사 상황의 반복 확인",
"text": "진행 상황을 여러 차례 확인하고 그 내용을 의뢰인과 공유합니다."
},
{
"@type": "HowToStep",
"name": "대상 게시글의 선별",
"text": "사건화가 가능한 글만 골라 고소장을 작성해 검토 부담을 줄입니다."
},
{
"@type": "HowToStep",
"name": "범죄일람표 작성",
"text": "선별한 글을 표로 정돈해 수사관이 사건 구조를 한눈에 파악하게 합니다."
},
{
"@type": "HowToStep",
"name": "추적 진행 관리",
"text": "신원 확인 절차가 이어지도록 진행 상황을 살피며 사건을 끌고 갑니다."
}
]
}



:root {
--nl-navy: #1f4e79;
--nl-navy-2: #2e5a8a;
--nl-navy-3: #0f2e4d;
--nl-navy-soft: #5b7ea1;
--nl-ink: #222222;
--nl-soft: #444444;
--nl-mute: #767676;
--nl-line: #e5e7eb;
--nl-line-soft: #eef0f3;
--nl-bg-soft: #f5f7fa;
--nl-bg-card: #fafbfc;
--nl-accent: #c0392b;
--nl-bg: #ffffff;
}

.nl-wrap {
font-family: "Pretendard", "Pretendard Variable", -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", sans-serif;
color: var(--nl-ink);
line-height: 1.85;
font-size: clamp(15px, 1.05vw + 12px, 17px);
background: var(--nl-bg);
-webkit-text-size-adjust: 100%;
text-size-adjust: 100%;
word-break: keep-all;
overflow-wrap: anywhere;
max-width: 880px;
margin: 0 auto;
padding: clamp(20px, 4vw, 48px) clamp(16px, 3vw, 32px);
position: relative;
font-feature-settings: "ss01", "ss02";
letter-spacing: -0.005em;
}

.nl-wrap * { box-sizing: border-box; }

.nl-wrap a { color: var(--nl-navy); text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; }
.nl-wrap a:hover { color: var(--nl-navy-3); }

.nl-crumb {
font-size: 13px;
color: var(--nl-mute);
letter-spacing: 0.01em;
margin-bottom: 24px;
padding-bottom: 14px;
border-bottom: 1px solid var(--nl-line);
}
.nl-crumb ol { list-style: none; padding: 0; margin: 0; display: flex; flex-wrap: wrap; gap: 6px 10px; }
.nl-crumb li + li::before { content: "›"; margin-right: 10px; color: var(--nl-navy-soft); }
.nl-crumb a { color: var(--nl-mute); text-decoration: none; }
.nl-crumb a:hover { color: var(--nl-navy); }

.nl-tag {
display: inline-flex;
align-items: center;
gap: 8px;
font-size: 12px;
font-weight: 600;
letter-spacing: 0.12em;
color: #ffffff;
background: var(--nl-navy);
padding: 7px 16px;
border-radius: 2px;
}
.nl-tag::before {
content: "";
width: 6px; height: 6px;
border-radius: 50%;
background: #ffffff;
}

.nl-h1 {
font-weight: 800;
font-size: clamp(24px, 3.2vw + 12px, 38px);
line-height: 1.35;
color: var(--nl-navy-3);
margin: 16px 0 14px;
letter-spacing: -0.025em;
}
.nl-h1 .nl-h1-accent { color: var(--nl-navy); }

.nl-sub {
font-size: clamp(14px, 0.6vw + 12px, 16px);
color: var(--nl-soft);
margin: 0 0 28px;
line-height: 1.75;
font-weight: 400;
}

.nl-meta {
display: flex;
flex-wrap: wrap;
gap: 14px;
font-size: 13px;
color: var(--nl-mute);
padding: 12px 0;
border-top: 1px solid var(--nl-line);
border-bottom: 1px solid var(--nl-line);
margin-bottom: 36px;
}
.nl-meta span { display: inline-flex; align-items: center; gap: 6px; }
.nl-meta strong { color: var(--nl-navy); font-weight: 600; }

.nl-author {
display: grid;
grid-template-columns: auto 1fr;
gap: 18px;
align-items: center;
background: var(--nl-bg-soft);
border-left: 4px solid var(--nl-navy);
padding: 22px 24px;
margin: 0 0 36px;
border-radius: 2px;
}
.nl-author-badge {
width: 60px; height: 60px;
border-radius: 50%;
background: var(--nl-navy);
color: #fff;
display: flex; align-items: center; justify-content: center;
font-weight: 800;
font-size: 20px;
letter-spacing: 0.02em;
}
.nl-author-name { font-weight: 700; font-size: 16px; color: var(--nl-navy-3); margin: 0 0 4px; letter-spacing: -0.01em; }
.nl-author-role { font-size: 13px; color: var(--nl-soft); line-height: 1.65; margin: 0; }
.nl-author-role b { color: var(--nl-navy); font-weight: 600; }

.nl-summary {
background: var(--nl-bg-card);
border: 1px solid var(--nl-line);
border-radius: 4px;
padding: 28px 28px 24px;
margin: 0 0 40px;
position: relative;
}
.nl-summary::before {
content: "한눈에 보기";
position: absolute;
top: -12px; left: 24px;
background: var(--nl-navy);
color: #fff;
font-size: 11px;
letter-spacing: 0.16em;
font-weight: 600;
padding: 5px 14px;
border-radius: 2px;
}
.nl-summary dl {
display: grid;
grid-template-columns: 100px 1fr;
gap: 12px 20px;
margin: 4px 0 0;
font-size: 14.5px;
}
.nl-summary dt {
color: var(--nl-mute);
font-weight: 500;
border-right: 1px solid var(--nl-line);
padding-right: 20px;
line-height: 1.7;
}
.nl-summary dd { margin: 0; color: var(--nl-ink); line-height: 1.7; }
.nl-summary dd b { color: var(--nl-navy); font-weight: 700; }
.nl-summary dd .nl-win { color: var(--nl-navy); font-weight: 700; border-bottom: 2px solid var(--nl-navy); padding-bottom: 1px; }

.nl-lead {
background: var(--nl-bg-soft);
border-left: 4px solid var(--nl-navy);
padding: 22px 26px;
margin: 36px 0;
border-radius: 2px;
}
.nl-lead p { margin: 0; font-size: 16px; line-height: 1.85; color: var(--nl-ink); }
.nl-lead p + p { margin-top: 12px; }
.nl-lead strong { color: var(--nl-navy); font-weight: 700; }

.nl-h2 {
font-weight: 800;
font-size: clamp(20px, 1.5vw + 14px, 26px);
color: var(--nl-navy-3);
margin: 64px 0 22px;
padding-bottom: 14px;
border-bottom: 2px solid var(--nl-navy);
display: flex;
align-items: baseline;
gap: 14px;
letter-spacing: -0.025em;
}
.nl-h2 .nl-h2-no {
font-size: 13px;
color: var(--nl-navy-soft);
letter-spacing: 0.2em;
font-weight: 700;
}

.nl-h3 {
font-weight: 700;
font-size: clamp(17px, 0.7vw + 14px, 19px);
color: var(--nl-navy);
margin: 36px 0 14px;
padding-left: 14px;
border-left: 3px solid var(--nl-navy);
letter-spacing: -0.015em;
}

.nl-wrap p { margin: 14px 0; }

.nl-defn {
background: var(--nl-bg-card);
border: 1px solid var(--nl-line);
border-top: 3px solid var(--nl-navy);
padding: 18px 22px;
margin: 24px 0;
border-radius: 2px;
font-size: 15px;
}
.nl-defn dt {
font-size: 12px;
letter-spacing: 0.14em;
color: var(--nl-navy);
font-weight: 700;
margin-bottom: 8px;
}
.nl-defn dd { margin: 0; color: var(--nl-ink); line-height: 1.8; }
.nl-defn dd b { color: var(--nl-navy); font-weight: 700; }

.nl-statute {
background: var(--nl-bg-soft);
border: 1px solid var(--nl-line);
border-left: 4px solid var(--nl-navy);
padding: 22px 26px;
margin: 28px 0;
border-radius: 2px;
position: relative;
}
.nl-statute::before {
content: "법령";
position: absolute;
top: 16px; right: 20px;
font-size: 10px;
letter-spacing: 0.18em;
font-weight: 700;
color: #fff;
background: var(--nl-navy);
padding: 3px 9px;
border-radius: 2px;
}
.nl-statute .nl-statute-h {
font-weight: 800;
font-size: 16px;
color: var(--nl-navy-3);
margin: 0 0 12px;
padding-right: 60px;
letter-spacing: -0.015em;
}
.nl-statute ol { padding-left: 18px; margin: 8px 0 0; }
.nl-statute li { margin-bottom: 6px; line-height: 1.85; }
.nl-statute .nl-cite { display: block; margin-top: 14px; font-size: 12px; color: var(--nl-mute); }
.nl-statute .nl-cite a { color: var(--nl-navy); }

.nl-issues {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 14px;
margin: 28px 0;
}
.nl-issue {
background: #ffffff;
border: 1px solid var(--nl-line);
border-radius: 2px;
padding: 18px 20px;
position: relative;
overflow: hidden;
transition: border-color 0.2s;
}
.nl-issue:hover { border-color: var(--nl-navy); }
.nl-issue::before {
content: "";
position: absolute;
top: 0; left: 0;
width: 4px; height: 100%;
background: var(--nl-navy);
}
.nl-issue h4 {
font-size: 15px;
color: var(--nl-navy-3);
margin: 0 0 8px;
font-weight: 700;
letter-spacing: -0.015em;
}
.nl-issue p {
font-size: 13.5px;
color: var(--nl-soft);
margin: 0;
line-height: 1.7;
}

.nl-steps {
counter-reset: nlstep;
display: grid;
gap: 12px;
margin: 28px 0;
}
.nl-step {
display: grid;
grid-template-columns: 64px 1fr;
gap: 18px;
background: #ffffff;
border: 1px solid var(--nl-line);
border-left: 4px solid var(--nl-navy);
border-radius: 2px;
padding: 18px 22px;
align-items: start;
}
.nl-step::before {
counter-increment: nlstep;
content: "STEP " counter(nlstep);
font-size: 11px;
font-weight: 700;
color: var(--nl-navy);
background: var(--nl-bg-soft);
padding: 6px 10px;
border-radius: 2px;
letter-spacing: 0.08em;
text-align: center;
line-height: 1.4;
align-self: start;
white-space: nowrap;
}
.nl-step h4 {
font-size: 16px;
color: var(--nl-navy-3);
margin: 2px 0 6px;
font-weight: 700;
letter-spacing: -0.015em;
}
.nl-step p {
font-size: 14.5px;
color: var(--nl-soft);
margin: 0;
line-height: 1.75;
}

.nl-table {
width: 100%;
border-collapse: collapse;
margin: 28px 0;
font-size: 14px;
background: #fff;
border: 1px solid var(--nl-line);
border-radius: 2px;
overflow: hidden;
}
.nl-table th, .nl-table td {
padding: 14px 16px;
border-bottom: 1px solid var(--nl-line);
border-right: 1px solid var(--nl-line);
vertical-align: top;
line-height: 1.7;
}
.nl-table th:last-child, .nl-table td:last-child { border-right: none; }
.nl-table tr:last-child td { border-bottom: none; }
.nl-table thead th {
background: var(--nl-navy);
color: #fff;
font-weight: 600;
letter-spacing: 0.02em;
text-align: left;
font-size: 13.5px;
}
.nl-table tbody th {
background: var(--nl-bg-soft);
color: var(--nl-navy-3);
font-weight: 600;
text-align: left;
width: 28%;
}
.nl-table .nl-td-good { color: var(--nl-navy); font-weight: 700; }
.nl-table .nl-td-bad { color: var(--nl-accent); font-weight: 700; }

.nl-checklist {
background: var(--nl-bg-card);
border: 1px solid var(--nl-line);
border-radius: 2px;
padding: 24px 26px;
margin: 28px 0;
}
.nl-checklist h4 {
font-size: 16px;
color: var(--nl-navy-3);
margin: 0 0 14px;
padding-bottom: 12px;
border-bottom: 1px solid var(--nl-line);
font-weight: 700;
letter-spacing: -0.015em;
}
.nl-checklist ul { list-style: none; padding: 0; margin: 0; }
.nl-checklist li {
position: relative;
padding-left: 30px;
margin-bottom: 10px;
font-size: 14.5px;
color: var(--nl-ink);
line-height: 1.75;
}
.nl-checklist li::before {
content: "";
position: absolute;
left: 0; top: 5px;
width: 18px; height: 18px;
border: 2px solid var(--nl-navy);
border-radius: 2px;
background: #fff;
}
.nl-checklist li::after {
content: "";
position: absolute;
left: 4px; top: 8px;
width: 10px; height: 5px;
border-left: 2px solid var(--nl-navy);
border-bottom: 2px solid var(--nl-navy);
transform: rotate(-45deg);
}

.nl-caution {
background: var(--nl-bg-soft);
border-left: 4px solid var(--nl-navy);
padding: 18px 22px;
margin: 28px 0;
border-radius: 2px;
}
.nl-caution h4 {
font-size: 15px;
color: var(--nl-navy-3);
margin: 0 0 8px;
font-weight: 700;
letter-spacing: -0.015em;
}
.nl-caution h4::before { content: "⚠ "; color: var(--nl-navy); }
.nl-caution p { margin: 0; font-size: 14.5px; color: var(--nl-soft); line-height: 1.75; }

.nl-law {
background: var(--nl-bg-card);
border: 1px solid var(--nl-line);
border-radius: 2px;
padding: 24px 26px;
margin: 28px 0;
}
.nl-law h4 {
font-size: 15px;
color: var(--nl-navy-3);
margin: 0 0 12px;
padding-bottom: 12px;
border-bottom: 1px solid var(--nl-line);
font-weight: 700;
letter-spacing: -0.015em;
}
.nl-law dl { margin: 0; font-size: 14px; }
.nl-law dt { color: var(--nl-navy); font-weight: 700; margin-top: 12px; }
.nl-law dt:first-child { margin-top: 0; }
.nl-law dd { margin: 4px 0 0; color: var(--nl-soft); line-height: 1.75; }

.nl-quote {
border-left: 3px solid var(--nl-navy);
padding: 8px 22px;
margin: 28px 0;
color: var(--nl-soft);
font-size: 16px;
line-height: 1.85;
}
.nl-quote p { font-style: normal; }
.nl-quote cite { display: block; font-style: normal; font-size: 13px; color: var(--nl-mute); margin-top: 8px; }

.nl-faq {
margin: 40px 0;
border-top: 2px solid var(--nl-navy);
}
.nl-faq h2 { margin-top: 24px; }
.nl-faq details {
border-bottom: 1px solid var(--nl-line);
padding: 20px 4px;
}
.nl-faq summary {
font-size: 16px;
font-weight: 700;
color: var(--nl-navy-3);
cursor: pointer;
list-style: none;
display: flex;
align-items: flex-start;
gap: 12px;
line-height: 1.55;
padding-right: 30px;
position: relative;
letter-spacing: -0.015em;
}
.nl-faq summary::-webkit-details-marker { display: none; }
.nl-faq summary::before {
content: "Q";
flex-shrink: 0;
width: 26px; height: 26px;
background: var(--nl-navy);
color: #fff;
border-radius: 50%;
display: flex; align-items: center; justify-content: center;
font-size: 13px;
font-weight: 700;
}
.nl-faq summary::after {
content: "+";
position: absolute;
right: 0; top: 0;
font-size: 22px;
color: var(--nl-navy);
font-weight: 300;
transition: transform 0.25s;
line-height: 1;
}
.nl-faq details[open] summary::after { content: "−"; }
.nl-faq .nl-a {
margin-top: 14px;
padding-left: 38px;
font-size: 14.5px;
color: var(--nl-soft);
line-height: 1.85;
}
.nl-faq .nl-a::before {
content: "A. ";
font-weight: 800;
color: var(--nl-navy);
}

.nl-related {
background: var(--nl-bg-soft);
border: 1px solid var(--nl-line);
border-radius: 2px;
padding: 24px 26px;
margin: 32px 0;
}
.nl-related h4 {
font-size: 14px;
color: var(--nl-navy-3);
letter-spacing: 0.04em;
margin: 0 0 14px;
padding-bottom: 12px;
border-bottom: 1px solid var(--nl-line);
font-weight: 700;
}
.nl-related ul { list-style: none; padding: 0; margin: 0; }
.nl-related li {
font-size: 14px;
margin: 8px 0;
padding-left: 14px;
position: relative;
}
.nl-related li::before { content: "›"; position: absolute; left: 0; color: var(--nl-navy); font-weight: 700; }
.nl-related a { color: var(--nl-navy); text-decoration: none; }
.nl-related a:hover { text-decoration: underline; }

.nl-cta {
margin: 48px 0 24px;
background: var(--nl-navy);
color: #fff;
border-radius: 2px;
padding: 38px 32px;
text-align: center;
position: relative;
overflow: hidden;
}
.nl-cta::before {
content: "";
position: absolute;
top: 0; left: 0; right: 0;
height: 3px;
background: linear-gradient(90deg, var(--nl-navy-soft) 0%, #ffffff 100%);
}
.nl-cta-h {
font-size: clamp(20px, 1.5vw + 12px, 26px);
font-weight: 800;
margin: 0 0 8px;
position: relative;
letter-spacing: -0.025em;
}
.nl-cta-sub {
font-size: 14.5px;
color: #c5d1e0;
margin: 0 0 24px;
line-height: 1.7;
position: relative;
}
.nl-cta-buttons {
display: flex;
flex-wrap: wrap;
gap: 10px;
justify-content: center;
position: relative;
}
.nl-cta-buttons a {
display: inline-flex;
align-items: center;
gap: 8px;
font-size: 14.5px;
font-weight: 600;
padding: 14px 26px;
border-radius: 2px;
text-decoration: none;
transition: transform 0.2s, box-shadow 0.2s;
letter-spacing: 0.01em;
}
.nl-cta-buttons a:hover { transform: translateY(-2px); box-shadow: 0 6px 16px rgba(0,0,0,0.25); }
.nl-cta-kakao { background: #fee500; color: #181600; }
.nl-cta-tel { background: #ffffff; color: var(--nl-navy-3); }
.nl-cta-web { background: #ffffff; color: var(--nl-navy); border: 1.5px solid var(--nl-navy); font-weight: 700; }
.nl-cta-secret {
display: inline-flex;
align-items: center;
margin-top: 18px;
font-size: 12px;
color: #c5d1e0;
letter-spacing: 0.08em;
position: relative;
}

.nl-footer-cite {
margin-top: 40px;
padding-top: 24px;
border-top: 1px solid var(--nl-line);
font-size: 12px;
color: var(--nl-mute);
line-height: 1.8;
}
.nl-footer-cite h4 {
font-size: 12px;
letter-spacing: 0.08em;
color: var(--nl-navy);
margin: 0 0 10px;
font-weight: 700;
}
.nl-footer-cite ul { padding-left: 18px; margin: 0; }
.nl-footer-cite li { margin: 4px 0; }
.nl-footer-cite a { color: var(--nl-navy); }

.nl-disclaimer {
margin-top: 28px;
font-size: 12px;
color: var(--nl-mute);
line-height: 1.75;
padding: 14px 16px;
background: var(--nl-bg-soft);
border: 1px solid var(--nl-line);
border-radius: 2px;
}

@media (max-width: 640px) {
.nl-wrap { padding: 16px 14px; }
.nl-issues { grid-template-columns: 1fr; }
.nl-summary dl { grid-template-columns: 1fr; gap: 4px 0; }
.nl-summary dt { border-right: none; border-bottom: 1px solid var(--nl-line); padding: 0 0 4px; margin-bottom: 4px; }
.nl-author { grid-template-columns: 1fr; text-align: center; }
.nl-author-badge { margin: 0 auto; }
.nl-table thead { display: none; }
.nl-table tr { display: block; border-bottom: 2px solid var(--nl-navy); padding: 8px 0; }
.nl-table th, .nl-table td { display: block; border-right: none; padding: 8px 14px; }
.nl-table tbody th { width: 100%; }
.nl-step { grid-template-columns: 1fr; gap: 8px; }
.nl-step::before { justify-self: start; }
.nl-cta { padding: 28px 20px; }
.nl-cta-buttons a { width: 100%; justify-content: center; }
}

@media (max-width: 380px) {
.nl-wrap { padding: 14px 12px; font-size: 14.5px; }
.nl-h2 { flex-direction: column; gap: 4px; align-items: flex-start; }
.nl-h2 .nl-h2-no { font-size: 12px; }
.nl-statute, .nl-defn, .nl-checklist, .nl-related, .nl-law { padding: 16px 18px; }
}

/* ==========================================================================
[ADD-ON] 담당 변호인 카드 (nl-team) — 기존 스타일 수정 없이 추가된 블록
사용처: 성공사례 하단, CTA 상단. 1~2인 카드 배치.
========================================================================== */

.nl-team {
margin: 40px 0 36px;
}

.nl-team-h {
font-size: 15px;
font-weight: 700;
color: var(--nl-navy);
letter-spacing: -0.01em;
margin: 0 0 4px;
padding-left: 12px;
border-left: 3px solid var(--nl-navy);
line-height: 1.4;
}

.nl-team-sub {
font-size: 13.5px;
color: var(--nl-mute);
margin: 0 0 18px;
padding-left: 15px;
line-height: 1.7;
}

.nl-team-grid {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 16px;
}

.nl-card {
display: grid;
grid-template-columns: 84px minmax(0, 1fr);
gap: 16px;
background: var(--nl-bg-card);
border: 1px solid var(--nl-line);
border-top: 3px solid var(--nl-navy);
border-radius: 2px;
padding: 20px 18px;
align-items: start;
}

.nl-card-photo {
width: 84px;
height: 84px;
border-radius: 2px;
overflow: hidden;
background: var(--nl-bg-soft);
border: 1px solid var(--nl-line);
}

.nl-card-photo img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
}

.nl-card-role {
display: inline-block;
font-size: 10.5px;
font-weight: 700;
letter-spacing: 0.08em;
text-transform: uppercase;
color: var(--nl-navy-soft);
margin: 0 0 4px;
line-height: 1.3;
}

.nl-card-name {
font-size: 16.5px;
font-weight: 800;
color: var(--nl-ink);
letter-spacing: -0.02em;
margin: 0 0 8px;
line-height: 1.35;
}

.nl-card-name a {
color: var(--nl-ink);
text-decoration: none;
}
.nl-card-name a:hover {
color: var(--nl-navy);
text-decoration: underline;
text-underline-offset: 3px;
}

.nl-card-tags {
display: flex;
flex-wrap: wrap;
gap: 5px;
margin: 0 0 10px;
padding: 0;
list-style: none;
}

.nl-card-tags li {
font-size: 11.5px;
color: var(--nl-navy);
background: rgba(31, 78, 121, 0.07);
border-radius: 2px;
padding: 2px 7px;
line-height: 1.6;
letter-spacing: -0.01em;
}

.nl-card-desc {
font-size: 13.5px;
color: var(--nl-soft);
line-height: 1.75;
margin: 0 0 10px;
letter-spacing: -0.01em;
}

.nl-card-list {
margin: 0;
padding: 0;
list-style: none;
border-top: 1px solid var(--nl-line-soft);
padding-top: 9px;
}

.nl-card-list li {
font-size: 12.5px;
color: var(--nl-mute);
line-height: 1.7;
padding-left: 10px;
position: relative;
letter-spacing: -0.01em;
}

.nl-card-list li::before {
content: "";
position: absolute;
left: 0;
top: 9px;
width: 3px;
height: 3px;
border-radius: 50%;
background: var(--nl-navy-soft);
}

.nl-card-list li b {
color: var(--nl-soft);
font-weight: 700;
}

.nl-card-link {
display: inline-block;
font-size: 12.5px;
color: var(--nl-navy);
margin-top: 10px;
text-decoration: none;
border-bottom: 1px solid var(--nl-line);
padding-bottom: 1px;
}
.nl-card-link:hover {
border-bottom-color: var(--nl-navy);
}

@media (max-width: 760px) {
.nl-team-grid { grid-template-columns: 1fr; gap: 14px; }
}

@media (max-width: 480px) {
.nl-card {
grid-template-columns: 64px minmax(0, 1fr);
gap: 13px;
padding: 17px 15px;
}
.nl-card-photo { width: 64px; height: 64px; }
.nl-card-name { font-size: 15.5px; }
.nl-card-desc { font-size: 13px; }
}

/* [ADD-ON] 1인 카드일 때 전체 폭 사용 */
.nl-team-grid:has(> .nl-card:only-child) {
grid-template-columns: minmax(0, 1fr);
}
.nl-team-grid > .nl-card:only-child {
grid-template-columns: 110px minmax(0, 1fr);
gap: 20px;
padding: 22px 20px;
}
.nl-team-grid > .nl-card:only-child .nl-card-photo {
width: 110px;
height: 110px;
}
@media (max-width: 480px) {
.nl-team-grid > .nl-card:only-child {
grid-template-columns: 64px minmax(0, 1fr);
gap: 13px;
padding: 17px 15px;
}
.nl-team-grid > .nl-card:only-child .nl-card-photo {
width: 64px;
height: 64px;
}
}




2026.09.07

합의 종결

인스타그램 사진 무단 사용 개인정보보호법 위반 합의대행 성공사례
























성공사례
개인정보 · 사이버
고소 전 합의로 사건 종결




개인정보보호법 · 고소 전 합의 종결
인스타그램 사진 무단 사용 개인정보보호법 위반 사건 공개 사과문 없이 합의로 끝낸 협상 사례
이용자 사진이 동의 없이 전달되면서 형사고소가 예고됐습니다. 인정할 부분은 받아들이되 회사 명의 사과문 게시만은 막아야 한다고 보고, 대화의 문을 닫지 않으면서 조건을 좁혀 나간 고소 전 협상 기록입니다.

카테고리 개인정보 · 기업 대응
결과 합의 성립 · 고소 미접수
지켜낸 것 공개 사과문 요구 철회
작성일 2026. 8.





의뢰인
온라인 매칭 플랫폼을 운영하던 사업자
사건 발단
서비스 운영 과정에서 한 이용자의 인스타그램 사진이 동의 없이 취득돼 매칭된 다른 이용자에게 전달됨
상대 요구
개인정보보호법 위반으로 형사고소하겠다는 뜻과 함께 금전 보상, 그리고 회사 명의의 공식 사과문 게시까지 요구
대응 전략
부담할 부분은 인정해 대화를 열어 두되, 장기 부담으로 남을 공개 사과 요구는 상대의 진짜 목적을 확인하며 방향을 돌림
결과
사과문 요구 철회 · 합의 성립 — 형사고소 접수 없이 종결




사업을 하다 보면 이용자로부터 개인정보보호법 위반으로 고소하겠다는 연락을 받게 되는 일이 있습니다. 이럴 때 저희가 가장 먼저 확인하는 것은 아직 고소장이 들어가기 전인지입니다.
이미 벌어진 일을 없던 것으로 되돌릴 수는 없습니다. 그러나 수사절차로 넘어가기 전이라면 당사자 사이에서 정리할 여지가 남아 있기 때문입니다.
오늘 전할 사건은 인스타그램 프로필 사진 문제로 형사고소까지 예고됐지만, 뉴로이어 법률사무소가 고소 전 협상에 나서 공식 사과문 게시 없이 합의를 이끌어내며 분쟁을 닫은 이야기입니다. 어디까지 받아들이고 무엇을 막아야 했는지, 그 선을 어떻게 잡았는지 말씀드리겠습니다.


01사건 개요 — 사진 한 장이 고소 예고로 번졌습니다

의뢰인은 사람과 사람을 이어 주는 온라인 서비스를 꾸리고 계셨는데, 그 운영 과정에서 일이 벌어졌습니다. 한 이용자가 SNS에 올려 둔 사진이 본인 허락 없이 확보돼 짝지어진 다른 이용자에게 건네졌고, 한참 뒤 그 사실을 알아차린 사진 주인이 문제를 삼으며 다툼이 불거졌습니다.

사진의 주인은 지체 없이 법적 절차를 밟겠다는 뜻을 전해 왔습니다. 돈으로 메우는 데서 그치지 않고, 회사 이름을 걸고 사과문을 올리라는 조건까지 함께 내밀었습니다.

저희가 사건을 받아 사진이 어떤 경위로 취득되고 전달됐는지부터 살펴보니, 의뢰인 쪽에서도 짊어져야 할 부분이 분명히 보였습니다. 그렇다고 상대의 요구를 통째로 받아들이는 것 또한 적절하지 않았습니다. 특히 회사 명의의 공개 사과문은 한 사람과의 다툼을 플랫폼 이용자 전체에게 알리는 결과로 이어질 수 있었고, 나아가 서비스에 대한 믿음 문제로까지 번질 여지가 있었습니다.

그래서 이 사건에서 저희가 먼저 정한 것은 누가 더 잘못했는지를 끝까지 겨루는 일이 아니었습니다. 고소가 들어가기 전에 어느 선까지 책임을 인정하고 어떤 요구는 막으면서 분쟁을 끝낼지, 그 경계를 잡는 것이 더 중요하다고 봤습니다.


합의 조건에는 값이 다른 항목이 섞여 있습니다
합의에서 오가는 조건은 무게가 저마다 다릅니다. 금액은 한 번 지급하면 그것으로 끝나지만, 공개적으로 남는 문서는 성격이 다릅니다. 사업을 하는 쪽에서는 어느 항목이 그 순간의 부담이고 어느 항목이 뒤에 남을 부담인지 갈라 보는 일이 협상의 출발점이 됩니다.




인정의 범위
기록상 부담해야 할 부분을 어디까지 받아들일 것인가.


대화의 유지
초기 몇 번의 연락에서 감정이 틀어지지 않게 하려면 어떤 태도를 취할 것인가.


공개 사과의 파장
회사 명의 게시물이 남았을 때 이후에 미칠 영향을 어떻게 볼 것인가.


상대의 진짜 목적
공개를 원하는 것인지 제대로 된 사과와 보상을 원하는 것인지 어떻게 확인할 것인가.


거절의 방식
받아들일 수 없는 조건을 어떤 방법으로 다뤄야 협상이 깨지지 않는가.


절차 진입의 차단
고소장이 접수되기 전에 사건을 닫으려면 어느 속도로 움직일 것인가.



02문제 해결 — 인정할 것과 막을 것을 갈랐습니다

사건을 맡고 처음 한 일은 법리 검토를 마친 뒤 상대와의 대화를 먼저 열어 두는 것이었습니다. 기록상 의뢰인 쪽에서도 부담할 부분이 분명했기에, 여기서 책임을 통째로 부인하며 맞선다면 상대로서는 더 이야기할 이유가 없어지기 때문입니다.

실제로 이런 다툼은 처음 몇 차례의 연락에서 감정이 틀어지면 그대로 고소로 넘어가는 경우가 많습니다. 그래서 처음부터 방어적으로 나서지 않고, 사진이 전달된 문제와 상대가 느꼈을 불쾌함은 인정하면서 고소장을 접수하지 않고 대화를 이어 갈 분위기부터 만드는 데 힘을 쏟았습니다.




법리 검토 후 대화 개시
먼저 기록을 살펴 부담해야 할 부분을 확인한 뒤, 그 지점은 인정하면서 상대와 이야기할 자리를 열었습니다.




막아야 할 조건의 판단
내밀어진 조건 중 마음에 걸린 것은 회사 이름을 달고 올리라는 사과문이었습니다. 돈은 건네고 나면 그 자리에서 정리되지만, 게시물은 성격이 다릅니다. 쓰는 사람들의 눈에 들어오고 화면째 저장돼 떠돌 수 있으며, 한 사람과 얽힌 일이 어느새 서비스 전반을 향한 의심으로 옮겨붙을 수 있습니다. 지켜야 할 것은 액수가 아니라 이쪽이겠다는 판단이 섰습니다.




물리치기 전에 목적부터 확인
그렇다고 그 요구를 대뜸 물리치지는 않았습니다. 어째서 공개적인 사과까지 바라는지 계속 귀를 기울이며, 정작 손에 쥐고 싶은 것이 글 한 편인지 아니면 진심 어린 사과와 책임 있는 보상인지를 가늠해 나갔습니다.




협상 의지의 포착
이야기를 주고받으며 읽힌 것은 상대에게도 끝낼 뜻이 있다는 사실이었습니다. 처음에는 공개 사과를 강하게 밀었지만, 말을 섞을수록 벌을 주는 데 목적이 있다기보다 제대로 사과받고 보상을 받아 이 일을 정리하려는 마음에 가까웠습니다.




방향 전환과 조건 좁히기
그 틈을 붙들었습니다. 겪으신 일에 대한 사과와 보상은 넉넉히 다루되, 그것을 서비스 전체에 알리는 형태까지 갈 이유는 없다는 쪽으로 이야기의 물길을 조금씩 틀었습니다. 절차로 넘어갔을 때 양쪽이 치러야 할 시간과 수고도 함께 짚으며 조건을 한 칸씩 좁혔습니다.





이 협상의 무게중심
잘못된 부분을 억지로 부인하지 않으면서도, 회사에 오래 남을 요구까지 전부 받아들이지는 않는 것. 그 선을 놓치지 않는 일이 전부였습니다. 거절해야 할 조건일수록 정면으로 밀어내기보다 상대가 진짜 원하는 바를 먼저 확인하는 편이 협상을 살립니다.



주의해야 할 점
고소 예고를 받으면 통째로 받아들이거나 강하게 맞서는 쪽으로 기울기 쉽습니다. 그러나 어느 쪽도 안전하지 않습니다. 전부 수용하면 뒤에 남을 조건까지 떠안게 되고, 전면 부인하면 대화가 끊겨 그대로 절차로 넘어갑니다. 상대와 주고받은 연락을 정리해 두고, 어디까지 인정하고 무엇을 조정할지부터 가려 보시기 바랍니다.


03최종 결과 — 사과문 없이 합의, 고소 전 종결

끝내 상대 쪽에서 회사 이름으로 사과문을 올리라는 조건을 스스로 내려놓았고, 양쪽이 수긍할 만한 선에서 합의가 맺어졌습니다. 오겠다던 고소장도 끝내 들어오지 않아, 사건은 수사기관의 손에 닿기 전에 닫혔습니다.

안도한 지점은 절차를 막았다는 것만이 아니었습니다. 한 사람과의 다툼이 서비스 전체로 옮겨붙을 뻔한 통로를 함께 닫았고, 의뢰인이 하던 일로 온전히 돌아가실 수 있게 됐다는 데 더 큰 뜻이 있었습니다.


"합의금은 한 번 내면 끝나지만, 공개된 문서는 계속 남습니다. 협상에서 지켜야 할 것은 대개 금액이 아닙니다."
— 뉴로이어 법률사무소


SNS나 메신저에 올라와 있던 사진을 함부로 쓴 일로 곤란해지셨다면, 요구를 그대로 삼키거나 정면으로 부딪치기에 앞서 짚어 볼 것이 있습니다. 어느 대목까지 짊어져야 하는지, 그리고 어떤 항목은 손볼 여지가 있는지를 먼저 가려 보시는 편이 낫습니다.

비슷한 일에 놓이셨다면 오간 연락과 지금 형편을 간추려 들려주시기 바랍니다. 절차가 시작되기 전 이 단계에서 무엇을 어떻게 움직여야 하는지, 그리고 어느 지점에서 매듭지을 수 있을지를 함께 짚어 보겠습니다.


고소 예고를 받았을 때 점검 포인트

아직 고소장이 접수되기 전인지 확인했는가
상대와 주고받은 연락을 시간순으로 정리했는가
문제된 정보가 어떤 경위로 취득되고 전달됐는지 파악했는가
기록상 인정할 수밖에 없는 부분을 가려 두었는가
상대의 요구 조건을 일회성과 지속성으로 나눠 봤는가
감정이 틀어지는 방식의 대응은 피하고 있는가




고소 전 협상에서 살펴야 할 것

절차 진입 여부
고소장이 접수되기 전이라면 당사자 사이에서 정리할 여지가 남아 있습니다. 수사절차로 넘어간 뒤에는 선택지가 좁아지므로 시점 확인이 먼저입니다.
인정과 부인의 배분
기록상 부담할 부분을 통째로 부인하면 상대가 대화를 이어 갈 이유가 사라집니다. 인정할 지점을 먼저 밝히는 것이 협상을 여는 방법이 됩니다.
조건의 성격 구분
금전 보상은 지급으로 끝나지만 공개적으로 남는 문서는 이후까지 영향을 미칩니다. 사업자라면 어느 조건이 오래 남을 부담인지 가려내야 합니다.
거절의 방법
받아들일 수 없는 조건도 정면으로 밀어내면 협상이 깨지기 쉽습니다. 상대가 그 조건을 통해 실제로 얻으려는 바를 확인한 뒤 다른 방식으로 채워 주는 접근이 유효합니다.




이 사건을 담당한 변호인
협상의 선을 잡는 판단이 결과를 갈랐습니다. 이 사건은 형사전문 대표변호사가 직접 수행했습니다.






CEO Lawyer
김수열 대표변호사

#개인정보·정통망법#사이버범죄#명예훼손·모욕

서울대학교 심리학과를 거쳐 서울대학교 법학전문대학원을 졸업했고, 법무법인 율촌을 거쳐 뉴로이어 법률사무소를 이끌고 있는 대한변호사협회 인증 형사전문변호사입니다. 개인정보 분쟁을 고소 전 협상부터 수사 대응까지 함께 수행합니다.

언론사 가짜뉴스 명예훼손·업무방해 고소대리
방송 출연자·인플루언서 악성댓글 집단 고소 성공 수행
서울대 총학생회장 명예훼손 사건 대법원 파기환송 승소

프로필 자세히 보기 →






FAQ사진 무단사용·고소 전 합의, 자주 묻는 질문

고소하겠다는 연락을 받았습니다. 무엇부터 확인해야 하나요?
아직 고소장이 접수되기 전인지부터 확인하시기 바랍니다. 수사절차로 넘어가기 전이라면 당사자 사이에서 정리할 여지가 남아 있습니다. 이 사건도 그 단계에서 마무리됐습니다.


상대 요구를 전부 받아들이면 빨리 끝나지 않나요?
조건에 따라 다릅니다. 금전 보상은 지급으로 끝나지만 공개적으로 남는 문서는 이후까지 영향을 미칩니다. 어느 항목이 그 순간의 부담이고 어느 항목이 오래 남을 부담인지 갈라 보셔야 합니다.


공개 사과문을 요구받았는데 꼭 응해야 하나요?
사안에 따라 조정할 여지가 있습니다. 이 사건에서는 회사 명의 게시물이 다른 이용자들에게 노출되고 화면이 저장돼 남을 수 있다는 점을 고려해, 상대가 실제로 원하는 바를 확인하며 다른 방식으로 채워 나갔습니다.


책임을 인정하면 불리해지지 않나요?
기록상 분명한 부분까지 부인하면 상대가 대화를 이어 갈 이유가 사라집니다. 인정할 지점을 밝히면서도 받아들일 수 없는 조건은 따로 다루는 것이 협상을 살리는 방법입니다.


이용자 사진이 전달된 것도 문제가 되나요?
본인의 동의 없이 취득해 다른 사람에게 제공했다면 문제될 수 있습니다. 이 사건에서도 취득과 전달의 경위를 먼저 확인해 부담할 부분을 가려낸 뒤 협상 방향을 정했습니다.


상대가 강하게 나오면 협상이 될까요?
처음의 요구가 강하다고 해서 끝까지 그 조건을 고수하는 것은 아닙니다. 이 사건에서도 대화를 이어 가며 확인해 보니 처벌만을 바라기보다 제대로 된 사과와 보상을 원하는 쪽에 가까웠고, 그 지점에서 조건이 좁혀졌습니다.




함께 보면 좋은 글

영상 무단사용 저작권 침해, 고소 전 합의로 종결한 대행 사례
허위 근로소득 신고 개인정보보호법 위반, 벌금 300만원 구약식 고소대리 사례
사이버불링 입장문 검토, 여론과 형사 리스크를 함께 잡은 사례




고소장이 접수되기 전이라면 아직 여지가 있습니다
개인정보 문제로 고소 예고를 받으셨다면 상대와 주고받은 내용과 지금 상황을 정리해 문의해 주세요.어디까지 인정하고 어떤 요구를 조정할 수 있을지 함께 살펴 드립니다.

카카오톡 상담
070-8098-0421
홈페이지 상담 신청

모든 상담 내용은 비밀이 보장됩니다



뉴로이어 법률사무소 · 서울 서초구 강남대로 525 세영제이타워 11층(06536) · 사업자등록번호 588-14-01388 · [email protected]


본 성공사례는 뉴로이어 법률사무소가 실제 수행한 사건을 바탕으로 작성됐으며, 의뢰인 보호를 위해 일부 사실관계를 조정했습니다. 개별 사건의 결과는 구체적 사정에 따라 달라질 수 있어, 본 글이 유사 사건에서 동일한 결과를 약속하는 것은 아닙니다.




{
"@context": "https://schema.org",
"@type": "Article",
"headline": "돈보다 위험한 조건이 있었습니다, 공개 사과문 없이 합의로 끝낸 협상 성공사례",
"description": "이용자의 인스타그램 사진이 동의 없이 전달돼 개인정보보호법 위반으로 형사고소가 예고된 사건. 인정할 부분은 받아들이되 회사 명의 공개 사과문 요구는 상대의 목적을 확인하며 조정해, 고소 접수 전에 합의로 마무리한 뉴로이어 기업 대응 성공사례입니다.",
"inLanguage": "ko",
"datePublished": "2026-08-12",
"dateModified": "2026-08-12",
"author": {
"@type": "Person",
"name": "김수열",
"jobTitle": "대표변호사",
"url": "https://newlawyer.co.kr/page/21_view?wr_id=1",
"image": "https://newlawyer.co.kr/data/file/member/thumb-238321632_UzWE7X3O_a622b2fa6778b002d58c2ddc7bdddb15cb53f084_460x460.jpg",
"knowsAbout": [
"개인정보보호법",
"고소 전 협상",
"개인정보·정통망법",
"사이버범죄",
"기업 분쟁 대응"
],
"alumniOf": {
"@type": "CollegeOrUniversity",
"name": "서울대학교 법학전문대학원"
},
"worksFor": {
"@type": "LegalService",
"name": "뉴로이어 법률사무소",
"url": "https://www.newlawyer.co.kr"
}
},
"publisher": {
"@type": "LegalService",
"name": "뉴로이어 법률사무소",
"url": "https://www.newlawyer.co.kr",
"address": {
"@type": "PostalAddress",
"streetAddress": "강남대로 525 세영제이타워 11층",
"addressLocality": "서초구",
"addressRegion": "서울",
"postalCode": "06536",
"addressCountry": "KR"
},
"telephone": "+82-70-8098-0421"
},
"mainEntityOfPage": {
"@type": "WebPage",
"@id": "https://www.newlawyer.co.kr/31/423"
},
"about": [
"인스타그램 사진 무단사용",
"사진 개인정보보호법 위반",
"고소 전 합의",
"공개 사과문 요구",
"플랫폼 개인정보 분쟁"
]
}


{
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
{
"@type": "ListItem",
"position": 1,
"name": "홈",
"item": "https://www.newlawyer.co.kr"
},
{
"@type": "ListItem",
"position": 2,
"name": "성공사례",
"item": "https://www.newlawyer.co.kr/31"
},
{
"@type": "ListItem",
"position": 3,
"name": "개인정보 · 사이버",
"item": "https://www.newlawyer.co.kr/31"
},
{
"@type": "ListItem",
"position": 4,
"name": "고소 전 합의로 사건 종결",
"item": "https://www.newlawyer.co.kr/31/423"
}
]
}


{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "고소하겠다는 연락을 받았습니다. 무엇부터 확인해야 하나요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "아직 고소장이 접수되기 전인지부터 확인하시기 바랍니다. 수사절차로 넘어가기 전이라면 당사자 사이에서 정리할 여지가 남아 있습니다. 이 사건도 그 단계에서 마무리됐습니다."
}
},
{
"@type": "Question",
"name": "상대 요구를 전부 받아들이면 빨리 끝나지 않나요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "조건에 따라 다릅니다. 금전 보상은 지급으로 끝나지만 공개적으로 남는 문서는 이후까지 영향을 미칩니다. 어느 항목이 그 순간의 부담이고 어느 항목이 오래 남을 부담인지 갈라 보셔야 합니다."
}
},
{
"@type": "Question",
"name": "공개 사과문을 요구받았는데 꼭 응해야 하나요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "사안에 따라 조정할 여지가 있습니다. 이 사건에서는 회사 명의 게시물이 다른 이용자들에게 노출되고 화면이 저장돼 남을 수 있다는 점을 고려해, 상대가 실제로 원하는 바를 확인하며 다른 방식으로 채워 나갔습니다."
}
},
{
"@type": "Question",
"name": "책임을 인정하면 불리해지지 않나요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "기록상 분명한 부분까지 부인하면 상대가 대화를 이어 갈 이유가 사라집니다. 인정할 지점을 밝히면서도 받아들일 수 없는 조건은 따로 다루는 것이 협상을 살리는 방법입니다."
}
},
{
"@type": "Question",
"name": "이용자 사진이 전달된 것도 문제가 되나요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "본인의 동의 없이 취득해 다른 사람에게 제공했다면 문제될 수 있습니다. 이 사건에서도 취득과 전달의 경위를 먼저 확인해 부담할 부분을 가려낸 뒤 협상 방향을 정했습니다."
}
},
{
"@type": "Question",
"name": "상대가 강하게 나오면 협상이 될까요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "처음의 요구가 강하다고 해서 끝까지 그 조건을 고수하는 것은 아닙니다. 이 사건에서도 대화를 이어 가며 확인해 보니 처벌만을 바라기보다 제대로 된 사과와 보상을 원하는 쪽에 가까웠고, 그 지점에서 조건이 좁혀졌습니다."
}
}
]
}


{
"@context": "https://schema.org",
"@type": "HowTo",
"name": "개인정보 분쟁 고소 전 협상 절차",
"description": "형사고소가 예고된 상황에서 절차 진입 전에 조건을 조정해 분쟁을 정리하는 순서입니다.",
"step": [
{
"@type": "HowToStep",
"name": "법리 검토 후 대화 개시",
"text": "부담할 부분을 확인한 뒤 그 지점은 인정하며 상대와 이야기할 자리를 엽니다."
},
{
"@type": "HowToStep",
"name": "막아야 할 조건 판단",
"text": "일회성 부담과 이후까지 남을 부담을 갈라 지켜야 할 조건을 정합니다."
},
{
"@type": "HowToStep",
"name": "물리치기 전에 목적부터 확인",
"text": "받아들이기 어려운 요구는 상대가 그것으로 얻으려는 바를 먼저 확인합니다."
},
{
"@type": "HowToStep",
"name": "협상 의지의 포착",
"text": "대화를 이어 가며 처벌 목적인지 사과와 보상 목적인지를 살핍니다."
},
{
"@type": "HowToStep",
"name": "방향 전환과 조건 좁히기",
"text": "사과와 보상은 논의하되 공개 방식은 피하는 쪽으로 조건을 조정합니다."
}
]
}



:root {
--nl-navy: #1f4e79;
--nl-navy-2: #2e5a8a;
--nl-navy-3: #0f2e4d;
--nl-navy-soft: #5b7ea1;
--nl-ink: #222222;
--nl-soft: #444444;
--nl-mute: #767676;
--nl-line: #e5e7eb;
--nl-line-soft: #eef0f3;
--nl-bg-soft: #f5f7fa;
--nl-bg-card: #fafbfc;
--nl-accent: #c0392b;
--nl-bg: #ffffff;
}

.nl-wrap {
font-family: "Pretendard", "Pretendard Variable", -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", sans-serif;
color: var(--nl-ink);
line-height: 1.85;
font-size: clamp(15px, 1.05vw + 12px, 17px);
background: var(--nl-bg);
-webkit-text-size-adjust: 100%;
text-size-adjust: 100%;
word-break: keep-all;
overflow-wrap: anywhere;
max-width: 880px;
margin: 0 auto;
padding: clamp(20px, 4vw, 48px) clamp(16px, 3vw, 32px);
position: relative;
font-feature-settings: "ss01", "ss02";
letter-spacing: -0.005em;
}

.nl-wrap * { box-sizing: border-box; }

.nl-wrap a { color: var(--nl-navy); text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; }
.nl-wrap a:hover { color: var(--nl-navy-3); }

.nl-crumb {
font-size: 13px;
color: var(--nl-mute);
letter-spacing: 0.01em;
margin-bottom: 24px;
padding-bottom: 14px;
border-bottom: 1px solid var(--nl-line);
}
.nl-crumb ol { list-style: none; padding: 0; margin: 0; display: flex; flex-wrap: wrap; gap: 6px 10px; }
.nl-crumb li + li::before { content: "›"; margin-right: 10px; color: var(--nl-navy-soft); }
.nl-crumb a { color: var(--nl-mute); text-decoration: none; }
.nl-crumb a:hover { color: var(--nl-navy); }

.nl-tag {
display: inline-flex;
align-items: center;
gap: 8px;
font-size: 12px;
font-weight: 600;
letter-spacing: 0.12em;
color: #ffffff;
background: var(--nl-navy);
padding: 7px 16px;
border-radius: 2px;
}
.nl-tag::before {
content: "";
width: 6px; height: 6px;
border-radius: 50%;
background: #ffffff;
}

.nl-h1 {
font-weight: 800;
font-size: clamp(24px, 3.2vw + 12px, 38px);
line-height: 1.35;
color: var(--nl-navy-3);
margin: 16px 0 14px;
letter-spacing: -0.025em;
}
.nl-h1 .nl-h1-accent { color: var(--nl-navy); }

.nl-sub {
font-size: clamp(14px, 0.6vw + 12px, 16px);
color: var(--nl-soft);
margin: 0 0 28px;
line-height: 1.75;
font-weight: 400;
}

.nl-meta {
display: flex;
flex-wrap: wrap;
gap: 14px;
font-size: 13px;
color: var(--nl-mute);
padding: 12px 0;
border-top: 1px solid var(--nl-line);
border-bottom: 1px solid var(--nl-line);
margin-bottom: 36px;
}
.nl-meta span { display: inline-flex; align-items: center; gap: 6px; }
.nl-meta strong { color: var(--nl-navy); font-weight: 600; }

.nl-author {
display: grid;
grid-template-columns: auto 1fr;
gap: 18px;
align-items: center;
background: var(--nl-bg-soft);
border-left: 4px solid var(--nl-navy);
padding: 22px 24px;
margin: 0 0 36px;
border-radius: 2px;
}
.nl-author-badge {
width: 60px; height: 60px;
border-radius: 50%;
background: var(--nl-navy);
color: #fff;
display: flex; align-items: center; justify-content: center;
font-weight: 800;
font-size: 20px;
letter-spacing: 0.02em;
}
.nl-author-name { font-weight: 700; font-size: 16px; color: var(--nl-navy-3); margin: 0 0 4px; letter-spacing: -0.01em; }
.nl-author-role { font-size: 13px; color: var(--nl-soft); line-height: 1.65; margin: 0; }
.nl-author-role b { color: var(--nl-navy); font-weight: 600; }

.nl-summary {
background: var(--nl-bg-card);
border: 1px solid var(--nl-line);
border-radius: 4px;
padding: 28px 28px 24px;
margin: 0 0 40px;
position: relative;
}
.nl-summary::before {
content: "한눈에 보기";
position: absolute;
top: -12px; left: 24px;
background: var(--nl-navy);
color: #fff;
font-size: 11px;
letter-spacing: 0.16em;
font-weight: 600;
padding: 5px 14px;
border-radius: 2px;
}
.nl-summary dl {
display: grid;
grid-template-columns: 100px 1fr;
gap: 12px 20px;
margin: 4px 0 0;
font-size: 14.5px;
}
.nl-summary dt {
color: var(--nl-mute);
font-weight: 500;
border-right: 1px solid var(--nl-line);
padding-right: 20px;
line-height: 1.7;
}
.nl-summary dd { margin: 0; color: var(--nl-ink); line-height: 1.7; }
.nl-summary dd b { color: var(--nl-navy); font-weight: 700; }
.nl-summary dd .nl-win { color: var(--nl-navy); font-weight: 700; border-bottom: 2px solid var(--nl-navy); padding-bottom: 1px; }

.nl-lead {
background: var(--nl-bg-soft);
border-left: 4px solid var(--nl-navy);
padding: 22px 26px;
margin: 36px 0;
border-radius: 2px;
}
.nl-lead p { margin: 0; font-size: 16px; line-height: 1.85; color: var(--nl-ink); }
.nl-lead p + p { margin-top: 12px; }
.nl-lead strong { color: var(--nl-navy); font-weight: 700; }

.nl-h2 {
font-weight: 800;
font-size: clamp(20px, 1.5vw + 14px, 26px);
color: var(--nl-navy-3);
margin: 64px 0 22px;
padding-bottom: 14px;
border-bottom: 2px solid var(--nl-navy);
display: flex;
align-items: baseline;
gap: 14px;
letter-spacing: -0.025em;
}
.nl-h2 .nl-h2-no {
font-size: 13px;
color: var(--nl-navy-soft);
letter-spacing: 0.2em;
font-weight: 700;
}

.nl-h3 {
font-weight: 700;
font-size: clamp(17px, 0.7vw + 14px, 19px);
color: var(--nl-navy);
margin: 36px 0 14px;
padding-left: 14px;
border-left: 3px solid var(--nl-navy);
letter-spacing: -0.015em;
}

.nl-wrap p { margin: 14px 0; }

.nl-defn {
background: var(--nl-bg-card);
border: 1px solid var(--nl-line);
border-top: 3px solid var(--nl-navy);
padding: 18px 22px;
margin: 24px 0;
border-radius: 2px;
font-size: 15px;
}
.nl-defn dt {
font-size: 12px;
letter-spacing: 0.14em;
color: var(--nl-navy);
font-weight: 700;
margin-bottom: 8px;
}
.nl-defn dd { margin: 0; color: var(--nl-ink); line-height: 1.8; }
.nl-defn dd b { color: var(--nl-navy); font-weight: 700; }

.nl-statute {
background: var(--nl-bg-soft);
border: 1px solid var(--nl-line);
border-left: 4px solid var(--nl-navy);
padding: 22px 26px;
margin: 28px 0;
border-radius: 2px;
position: relative;
}
.nl-statute::before {
content: "법령";
position: absolute;
top: 16px; right: 20px;
font-size: 10px;
letter-spacing: 0.18em;
font-weight: 700;
color: #fff;
background: var(--nl-navy);
padding: 3px 9px;
border-radius: 2px;
}
.nl-statute .nl-statute-h {
font-weight: 800;
font-size: 16px;
color: var(--nl-navy-3);
margin: 0 0 12px;
padding-right: 60px;
letter-spacing: -0.015em;
}
.nl-statute ol { padding-left: 18px; margin: 8px 0 0; }
.nl-statute li { margin-bottom: 6px; line-height: 1.85; }
.nl-statute .nl-cite { display: block; margin-top: 14px; font-size: 12px; color: var(--nl-mute); }
.nl-statute .nl-cite a { color: var(--nl-navy); }

.nl-issues {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 14px;
margin: 28px 0;
}
.nl-issue {
background: #ffffff;
border: 1px solid var(--nl-line);
border-radius: 2px;
padding: 18px 20px;
position: relative;
overflow: hidden;
transition: border-color 0.2s;
}
.nl-issue:hover { border-color: var(--nl-navy); }
.nl-issue::before {
content: "";
position: absolute;
top: 0; left: 0;
width: 4px; height: 100%;
background: var(--nl-navy);
}
.nl-issue h4 {
font-size: 15px;
color: var(--nl-navy-3);
margin: 0 0 8px;
font-weight: 700;
letter-spacing: -0.015em;
}
.nl-issue p {
font-size: 13.5px;
color: var(--nl-soft);
margin: 0;
line-height: 1.7;
}

.nl-steps {
counter-reset: nlstep;
display: grid;
gap: 12px;
margin: 28px 0;
}
.nl-step {
display: grid;
grid-template-columns: 64px 1fr;
gap: 18px;
background: #ffffff;
border: 1px solid var(--nl-line);
border-left: 4px solid var(--nl-navy);
border-radius: 2px;
padding: 18px 22px;
align-items: start;
}
.nl-step::before {
counter-increment: nlstep;
content: "STEP " counter(nlstep);
font-size: 11px;
font-weight: 700;
color: var(--nl-navy);
background: var(--nl-bg-soft);
padding: 6px 10px;
border-radius: 2px;
letter-spacing: 0.08em;
text-align: center;
line-height: 1.4;
align-self: start;
white-space: nowrap;
}
.nl-step h4 {
font-size: 16px;
color: var(--nl-navy-3);
margin: 2px 0 6px;
font-weight: 700;
letter-spacing: -0.015em;
}
.nl-step p {
font-size: 14.5px;
color: var(--nl-soft);
margin: 0;
line-height: 1.75;
}

.nl-table {
width: 100%;
border-collapse: collapse;
margin: 28px 0;
font-size: 14px;
background: #fff;
border: 1px solid var(--nl-line);
border-radius: 2px;
overflow: hidden;
}
.nl-table th, .nl-table td {
padding: 14px 16px;
border-bottom: 1px solid var(--nl-line);
border-right: 1px solid var(--nl-line);
vertical-align: top;
line-height: 1.7;
}
.nl-table th:last-child, .nl-table td:last-child { border-right: none; }
.nl-table tr:last-child td { border-bottom: none; }
.nl-table thead th {
background: var(--nl-navy);
color: #fff;
font-weight: 600;
letter-spacing: 0.02em;
text-align: left;
font-size: 13.5px;
}
.nl-table tbody th {
background: var(--nl-bg-soft);
color: var(--nl-navy-3);
font-weight: 600;
text-align: left;
width: 28%;
}
.nl-table .nl-td-good { color: var(--nl-navy); font-weight: 700; }
.nl-table .nl-td-bad { color: var(--nl-accent); font-weight: 700; }

.nl-checklist {
background: var(--nl-bg-card);
border: 1px solid var(--nl-line);
border-radius: 2px;
padding: 24px 26px;
margin: 28px 0;
}
.nl-checklist h4 {
font-size: 16px;
color: var(--nl-navy-3);
margin: 0 0 14px;
padding-bottom: 12px;
border-bottom: 1px solid var(--nl-line);
font-weight: 700;
letter-spacing: -0.015em;
}
.nl-checklist ul { list-style: none; padding: 0; margin: 0; }
.nl-checklist li {
position: relative;
padding-left: 30px;
margin-bottom: 10px;
font-size: 14.5px;
color: var(--nl-ink);
line-height: 1.75;
}
.nl-checklist li::before {
content: "";
position: absolute;
left: 0; top: 5px;
width: 18px; height: 18px;
border: 2px solid var(--nl-navy);
border-radius: 2px;
background: #fff;
}
.nl-checklist li::after {
content: "";
position: absolute;
left: 4px; top: 8px;
width: 10px; height: 5px;
border-left: 2px solid var(--nl-navy);
border-bottom: 2px solid var(--nl-navy);
transform: rotate(-45deg);
}

.nl-caution {
background: var(--nl-bg-soft);
border-left: 4px solid var(--nl-navy);
padding: 18px 22px;
margin: 28px 0;
border-radius: 2px;
}
.nl-caution h4 {
font-size: 15px;
color: var(--nl-navy-3);
margin: 0 0 8px;
font-weight: 700;
letter-spacing: -0.015em;
}
.nl-caution h4::before { content: "⚠ "; color: var(--nl-navy); }
.nl-caution p { margin: 0; font-size: 14.5px; color: var(--nl-soft); line-height: 1.75; }

.nl-law {
background: var(--nl-bg-card);
border: 1px solid var(--nl-line);
border-radius: 2px;
padding: 24px 26px;
margin: 28px 0;
}
.nl-law h4 {
font-size: 15px;
color: var(--nl-navy-3);
margin: 0 0 12px;
padding-bottom: 12px;
border-bottom: 1px solid var(--nl-line);
font-weight: 700;
letter-spacing: -0.015em;
}
.nl-law dl { margin: 0; font-size: 14px; }
.nl-law dt { color: var(--nl-navy); font-weight: 700; margin-top: 12px; }
.nl-law dt:first-child { margin-top: 0; }
.nl-law dd { margin: 4px 0 0; color: var(--nl-soft); line-height: 1.75; }

.nl-quote {
border-left: 3px solid var(--nl-navy);
padding: 8px 22px;
margin: 28px 0;
color: var(--nl-soft);
font-size: 16px;
line-height: 1.85;
}
.nl-quote p { font-style: normal; }
.nl-quote cite { display: block; font-style: normal; font-size: 13px; color: var(--nl-mute); margin-top: 8px; }

.nl-faq {
margin: 40px 0;
border-top: 2px solid var(--nl-navy);
}
.nl-faq h2 { margin-top: 24px; }
.nl-faq details {
border-bottom: 1px solid var(--nl-line);
padding: 20px 4px;
}
.nl-faq summary {
font-size: 16px;
font-weight: 700;
color: var(--nl-navy-3);
cursor: pointer;
list-style: none;
display: flex;
align-items: flex-start;
gap: 12px;
line-height: 1.55;
padding-right: 30px;
position: relative;
letter-spacing: -0.015em;
}
.nl-faq summary::-webkit-details-marker { display: none; }
.nl-faq summary::before {
content: "Q";
flex-shrink: 0;
width: 26px; height: 26px;
background: var(--nl-navy);
color: #fff;
border-radius: 50%;
display: flex; align-items: center; justify-content: center;
font-size: 13px;
font-weight: 700;
}
.nl-faq summary::after {
content: "+";
position: absolute;
right: 0; top: 0;
font-size: 22px;
color: var(--nl-navy);
font-weight: 300;
transition: transform 0.25s;
line-height: 1;
}
.nl-faq details[open] summary::after { content: "−"; }
.nl-faq .nl-a {
margin-top: 14px;
padding-left: 38px;
font-size: 14.5px;
color: var(--nl-soft);
line-height: 1.85;
}
.nl-faq .nl-a::before {
content: "A. ";
font-weight: 800;
color: var(--nl-navy);
}

.nl-related {
background: var(--nl-bg-soft);
border: 1px solid var(--nl-line);
border-radius: 2px;
padding: 24px 26px;
margin: 32px 0;
}
.nl-related h4 {
font-size: 14px;
color: var(--nl-navy-3);
letter-spacing: 0.04em;
margin: 0 0 14px;
padding-bottom: 12px;
border-bottom: 1px solid var(--nl-line);
font-weight: 700;
}
.nl-related ul { list-style: none; padding: 0; margin: 0; }
.nl-related li {
font-size: 14px;
margin: 8px 0;
padding-left: 14px;
position: relative;
}
.nl-related li::before { content: "›"; position: absolute; left: 0; color: var(--nl-navy); font-weight: 700; }
.nl-related a { color: var(--nl-navy); text-decoration: none; }
.nl-related a:hover { text-decoration: underline; }

.nl-cta {
margin: 48px 0 24px;
background: var(--nl-navy);
color: #fff;
border-radius: 2px;
padding: 38px 32px;
text-align: center;
position: relative;
overflow: hidden;
}
.nl-cta::before {
content: "";
position: absolute;
top: 0; left: 0; right: 0;
height: 3px;
background: linear-gradient(90deg, var(--nl-navy-soft) 0%, #ffffff 100%);
}
.nl-cta-h {
font-size: clamp(20px, 1.5vw + 12px, 26px);
font-weight: 800;
margin: 0 0 8px;
position: relative;
letter-spacing: -0.025em;
}
.nl-cta-sub {
font-size: 14.5px;
color: #c5d1e0;
margin: 0 0 24px;
line-height: 1.7;
position: relative;
}
.nl-cta-buttons {
display: flex;
flex-wrap: wrap;
gap: 10px;
justify-content: center;
position: relative;
}
.nl-cta-buttons a {
display: inline-flex;
align-items: center;
gap: 8px;
font-size: 14.5px;
font-weight: 600;
padding: 14px 26px;
border-radius: 2px;
text-decoration: none;
transition: transform 0.2s, box-shadow 0.2s;
letter-spacing: 0.01em;
}
.nl-cta-buttons a:hover { transform: translateY(-2px); box-shadow: 0 6px 16px rgba(0,0,0,0.25); }
.nl-cta-kakao { background: #fee500; color: #181600; }
.nl-cta-tel { background: #ffffff; color: var(--nl-navy-3); }
.nl-cta-web { background: #ffffff; color: var(--nl-navy); border: 1.5px solid var(--nl-navy); font-weight: 700; }
.nl-cta-secret {
display: inline-flex;
align-items: center;
margin-top: 18px;
font-size: 12px;
color: #c5d1e0;
letter-spacing: 0.08em;
position: relative;
}

.nl-footer-cite {
margin-top: 40px;
padding-top: 24px;
border-top: 1px solid var(--nl-line);
font-size: 12px;
color: var(--nl-mute);
line-height: 1.8;
}
.nl-footer-cite h4 {
font-size: 12px;
letter-spacing: 0.08em;
color: var(--nl-navy);
margin: 0 0 10px;
font-weight: 700;
}
.nl-footer-cite ul { padding-left: 18px; margin: 0; }
.nl-footer-cite li { margin: 4px 0; }
.nl-footer-cite a { color: var(--nl-navy); }

.nl-disclaimer {
margin-top: 28px;
font-size: 12px;
color: var(--nl-mute);
line-height: 1.75;
padding: 14px 16px;
background: var(--nl-bg-soft);
border: 1px solid var(--nl-line);
border-radius: 2px;
}

@media (max-width: 640px) {
.nl-wrap { padding: 16px 14px; }
.nl-issues { grid-template-columns: 1fr; }
.nl-summary dl { grid-template-columns: 1fr; gap: 4px 0; }
.nl-summary dt { border-right: none; border-bottom: 1px solid var(--nl-line); padding: 0 0 4px; margin-bottom: 4px; }
.nl-author { grid-template-columns: 1fr; text-align: center; }
.nl-author-badge { margin: 0 auto; }
.nl-table thead { display: none; }
.nl-table tr { display: block; border-bottom: 2px solid var(--nl-navy); padding: 8px 0; }
.nl-table th, .nl-table td { display: block; border-right: none; padding: 8px 14px; }
.nl-table tbody th { width: 100%; }
.nl-step { grid-template-columns: 1fr; gap: 8px; }
.nl-step::before { justify-self: start; }
.nl-cta { padding: 28px 20px; }
.nl-cta-buttons a { width: 100%; justify-content: center; }
}

@media (max-width: 380px) {
.nl-wrap { padding: 14px 12px; font-size: 14.5px; }
.nl-h2 { flex-direction: column; gap: 4px; align-items: flex-start; }
.nl-h2 .nl-h2-no { font-size: 12px; }
.nl-statute, .nl-defn, .nl-checklist, .nl-related, .nl-law { padding: 16px 18px; }
}

/* ==========================================================================
[ADD-ON] 담당 변호인 카드 (nl-team) — 기존 스타일 수정 없이 추가된 블록
사용처: 성공사례 하단, CTA 상단. 1~2인 카드 배치.
========================================================================== */

.nl-team {
margin: 40px 0 36px;
}

.nl-team-h {
font-size: 15px;
font-weight: 700;
color: var(--nl-navy);
letter-spacing: -0.01em;
margin: 0 0 4px;
padding-left: 12px;
border-left: 3px solid var(--nl-navy);
line-height: 1.4;
}

.nl-team-sub {
font-size: 13.5px;
color: var(--nl-mute);
margin: 0 0 18px;
padding-left: 15px;
line-height: 1.7;
}

.nl-team-grid {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 16px;
}

.nl-card {
display: grid;
grid-template-columns: 84px minmax(0, 1fr);
gap: 16px;
background: var(--nl-bg-card);
border: 1px solid var(--nl-line);
border-top: 3px solid var(--nl-navy);
border-radius: 2px;
padding: 20px 18px;
align-items: start;
}

.nl-card-photo {
width: 84px;
height: 84px;
border-radius: 2px;
overflow: hidden;
background: var(--nl-bg-soft);
border: 1px solid var(--nl-line);
}

.nl-card-photo img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
}

.nl-card-role {
display: inline-block;
font-size: 10.5px;
font-weight: 700;
letter-spacing: 0.08em;
text-transform: uppercase;
color: var(--nl-navy-soft);
margin: 0 0 4px;
line-height: 1.3;
}

.nl-card-name {
font-size: 16.5px;
font-weight: 800;
color: var(--nl-ink);
letter-spacing: -0.02em;
margin: 0 0 8px;
line-height: 1.35;
}

.nl-card-name a {
color: var(--nl-ink);
text-decoration: none;
}
.nl-card-name a:hover {
color: var(--nl-navy);
text-decoration: underline;
text-underline-offset: 3px;
}

.nl-card-tags {
display: flex;
flex-wrap: wrap;
gap: 5px;
margin: 0 0 10px;
padding: 0;
list-style: none;
}

.nl-card-tags li {
font-size: 11.5px;
color: var(--nl-navy);
background: rgba(31, 78, 121, 0.07);
border-radius: 2px;
padding: 2px 7px;
line-height: 1.6;
letter-spacing: -0.01em;
}

.nl-card-desc {
font-size: 13.5px;
color: var(--nl-soft);
line-height: 1.75;
margin: 0 0 10px;
letter-spacing: -0.01em;
}

.nl-card-list {
margin: 0;
padding: 0;
list-style: none;
border-top: 1px solid var(--nl-line-soft);
padding-top: 9px;
}

.nl-card-list li {
font-size: 12.5px;
color: var(--nl-mute);
line-height: 1.7;
padding-left: 10px;
position: relative;
letter-spacing: -0.01em;
}

.nl-card-list li::before {
content: "";
position: absolute;
left: 0;
top: 9px;
width: 3px;
height: 3px;
border-radius: 50%;
background: var(--nl-navy-soft);
}

.nl-card-list li b {
color: var(--nl-soft);
font-weight: 700;
}

.nl-card-link {
display: inline-block;
font-size: 12.5px;
color: var(--nl-navy);
margin-top: 10px;
text-decoration: none;
border-bottom: 1px solid var(--nl-line);
padding-bottom: 1px;
}
.nl-card-link:hover {
border-bottom-color: var(--nl-navy);
}

@media (max-width: 760px) {
.nl-team-grid { grid-template-columns: 1fr; gap: 14px; }
}

@media (max-width: 480px) {
.nl-card {
grid-template-columns: 64px minmax(0, 1fr);
gap: 13px;
padding: 17px 15px;
}
.nl-card-photo { width: 64px; height: 64px; }
.nl-card-name { font-size: 15.5px; }
.nl-card-desc { font-size: 13px; }
}

/* [ADD-ON] 1인 카드일 때 전체 폭 사용 */
.nl-team-grid:has(> .nl-card:only-child) {
grid-template-columns: minmax(0, 1fr);
}
.nl-team-grid > .nl-card:only-child {
grid-template-columns: 110px minmax(0, 1fr);
gap: 20px;
padding: 22px 20px;
}
.nl-team-grid > .nl-card:only-child .nl-card-photo {
width: 110px;
height: 110px;
}
@media (max-width: 480px) {
.nl-team-grid > .nl-card:only-child {
grid-template-columns: 64px minmax(0, 1fr);
gap: 13px;
padding: 17px 15px;
}
.nl-team-grid > .nl-card:only-child .nl-card-photo {
width: 64px;
height: 64px;
}
}




2026.09.07

다수 처벌

트위터(X) 사이버불링 피해자 집단고소 성공사례

트위터 X 사이버불링 집단고소 성공사례 | 악플러 5명 특정, 구약식·기소유예 처분





성공사례
명예훼손 · 모욕
트위터 사이버불링 집단고소




모욕 · 영장 기각 없이 집행 · 5명 특정
이름을 흐려 적으며 피해 가던 악플들,특정성을 빈틈없이 세워 5명을 찾아낸 사례
감상 한 줄에 직장과 얼굴까지 공개되며 저격글이 퍼졌습니다. 상대가 지칭을 흐려 놓은 상황에서 신상 유출 시점과 게시 시점을 맞춰 특정성을 세웠고, 영장이 한 번도 막히지 않고 집행된 과정입니다.

카테고리 명예훼손 · 사이버범죄
결과 피고소인 5명 특정 · 구약식과 기소유예
쟁점 모욕죄의 특정성
작성일 2026. 8.





의뢰인
SNS에 한 아티스트의 곡에 대한 감상을 남겼다가 사이버불링 피해를 입은 일반인
사건 발단
해당 아티스트의 팬이 의뢰인을 저격하는 글을 올렸고, 그 글에 직장과 얼굴이 담긴 영상까지 공개된 채 여러 매체로 퍼짐
어려운 사정
얼굴이 알려지지 않은 일반인이라 특정성 입증이 까다로웠고, 악플러들이 고소를 의식해 지칭을 흐려 놓은 상태
대응 전략
확산이 시작된 지점을 거슬러 추적해 신상 유출 정황을 확보하고, 유출 시점과 각 게시글의 작성 시점을 맞춰 특정성을 세움
결과
영장 기각 없이 집행 — 피고소인 5명 특정, 일부 구약식과 기소유예




SNS에서 여럿이 한 사람을 겨냥해 신상을 흘리고 저격글을 남기는 일이 이어지고 있습니다. 오늘 전할 이야기는 그런 피해를 입은 의뢰인을 도와 악플러들을 집단으로 고소한 사건입니다.
익명 게시판에 올라온 글은 고소가 어렵지 않느냐고 물으시는 분들이 계십니다. 숨은 작성자를 찾으려면 수사관이 플랫폼에 영장을 내밀고 자료를 받아야 하니, 손이 많이 가는 일인 것은 맞습니다.
그러나 고소를 어떻게 준비하느냐에 따라 길이 열립니다. 뉴로이어 법률사무소는 가능성이 낮아 보이는 사건이라도 의뢰인이 원하신다면 한 사람씩 끝까지 찾아낸다는 마음으로 임합니다. 그렇게 매달리다 보니 어려워 보이던 사건에서도 결과가 나오곤 합니다.


01사건 개요 — 감상 한 줄에 직장과 얼굴이 털렸습니다

의뢰인은 자신의 계정에 한 아티스트의 곡을 듣고 느낀 바를 짧게 남기셨습니다. 그런데 그 아티스트를 좋아하는 사람이 이 글을 보고 의뢰인을 겨냥한 저격글을 올렸습니다.

문제는 그 글에 담긴 것이었습니다. 의뢰인이 일하는 곳은 물론이고 얼굴이 나온 영상까지 함께 공개돼 있었고, 글은 상당한 조회수를 기록하며 여러 매체로 번져 나갔습니다.

다른 팬 계정에서도 의뢰인을 향해 옮기기 어려운 욕설과 모욕적인 말들이 쏟아졌습니다. 무엇보다 이름과 얼굴 같은 신상이 드러난 상태라 시간을 다투는 상황이었습니다. 더는 미룰 수 없다고 판단하신 의뢰인은 이런 사건을 집중적으로 맡아 온 곳을 수소문한 끝에 저희 사무소로 연락을 주셨습니다.

사건을 들여다보니 사람으로서도 그냥 지나칠 수 없는 형태의 집단적 괴롭힘이었습니다. 저희는 그중에서도 정도가 심한 이들을 골라 집단고소를 진행하기로 했습니다. 의뢰인이 일상조차 버거워하고 계셨기에, 온전한 하루를 되돌려 드리겠다는 마음으로 사건에 임했던 기억이 남습니다.


이름을 안 썼다고 빠져나가지는 못합니다
고소를 의식한 악플러들은 대상을 흐릿하게 지칭하는 방식을 씁니다. 그러나 그 글이 누구를 가리키는지는 문장 하나만 놓고 보는 것이 아니라, 그 무렵 무엇이 얼마나 알려져 있었는지까지 함께 봅니다. 신상이 이미 퍼진 뒤에 올라온 글이라면 읽는 사람들이 누구인지 알아볼 수 있었다는 점을 세울 수 있습니다.




특정성의 입증
얼굴이 알려지지 않은 일반인이 대상일 때 누구를 가리키는지 어떻게 세울 것인가.


흐린 지칭의 회피
악플러들이 의도적으로 애매하게 적어 둔 표현을 어떻게 다룰 것인가.


확산 경로의 추적
이야기가 어디서 시작돼 어디로 번졌는지를 무엇으로 되짚을 것인가.


표현 수위의 선별
수많은 글 가운데 실제로 다툴 수 있는 것을 어떻게 가려낼 것인가.


영장이라는 관문
신원 확인 절차가 막히지 않게 하려면 무엇을 갖춰 두어야 하는가.


시간과의 싸움
신상이 이미 퍼진 상태에서 어느 속도로 움직일 것인가.



02문제 해결 — 흐려 놓은 지칭을 시점으로 메웠습니다

고소인이 널리 알려진 사람이 아니라면 문제된 글이 누구를 가리키는지 세우는 일이 까다롭습니다. 이 사건에서는 악플러들이 고소당할 것을 걱정해 의뢰인을 두루뭉술하게 지칭하며 그 요건을 교묘히 피해 가고 있었습니다. 그래서 저희는 대상이 누구인지를 보여 줄 자료부터 샅샅이 찾아 나섰습니다.




확산 시점의 역추적
이야기가 퍼지기 시작한 무렵을 짚어 특정 갤러리와 카테고리를 거슬러 따라갔습니다. 그 과정에서 의뢰인의 신상이 흘러나온 정황들을 찾아내 고소장에 담았습니다.




언급량과 게시글 목록화
그 시점부터 의뢰인에 관한 이야기가 얼마나 오갔는지를 헤아리고, 각각의 게시글을 목록으로 정돈했습니다. 이것이 첫 단계였습니다.




모욕 성립 글의 선별
대법원 판단을 기준 삼아 다툴 수 있는 글을 골라냈습니다. 욕설에 이르지 않더라도 사회적 평가를 떨어뜨릴 만한 비속어로 상대를 헐뜯는 표현이라면 모욕에 해당한다는 판시가 근거가 됐습니다.




시점 대조로 특정성 완성
신상이 퍼진 글이 올라온 때와 문제된 글들이 쓰인 때를 나란히 놓고 분석해, 그 무렵이면 읽는 사람들이 대상을 알아볼 수 있었다는 점을 세웠습니다.




맥락 분석으로 표현 논증
각 표현을 문장 하나로 떼어 보지 않고 글 전체의 취지와 앞뒤 흐름 속에서 살펴, 모욕적인 표현으로 볼 수 있다는 점을 조리 있게 밝혔습니다.





고소장에 인용한 판례 요지

모욕이란 사실을 적시하지 아니하고 사람의 사회적 평가를 저하시킬 만한 추상적 판단이나 경멸적 감정을 표현하는 것을 말한다. 욕설의 정도까지 미치지는 못한다 하더라도 사람의 사회적 평가를 저하시키는 경멸적인 의미를 가지는 비속어 등을 사용하여 상대방을 비난하는 표현 역시 모욕에 해당한다.

출처: 국가법령정보센터 · 대법원 판결 인용 요지



이 사건 고소대리의 무게중심
악플러들이 비워 둔 것은 이름이었습니다. 그렇다면 그 빈자리를 시간으로 메우면 됩니다. 신상이 언제 퍼졌고 그 글들이 언제 올라왔는지를 나란히 놓으면, 이름을 적지 않았어도 누구를 향한 말인지가 드러납니다. 이 사건에서 저희가 한 일은 그 순서를 촘촘히 세운 것이었습니다.



주의해야 할 점
신상이 드러난 상황이라면 시간을 끌수록 확산 경로를 되짚기 어려워집니다. 저격글의 원문과 조회수, 퍼져 나간 경로를 발견하는 대로 갈무리해 두시기 바랍니다. 또 직접 해명하거나 맞대응하면 관심이 몰려 오히려 번지는 속도가 빨라질 수 있으니 대응 방향을 먼저 정하시는 편이 안전합니다.


03최종 결과 — 5명 특정, 구약식과 기소유예

준비한 자료를 토대로 영장이 기각 없이 곧장 집행됐고, 악플러들의 신원을 확인할 수 있었습니다. 그 결과 피고소인 5명이 특정됐으며 그중 일부에게 구약식과 기소유예 처분이 내려졌습니다.

이후 처벌 사실이 알려지면서 의뢰인을 향하던 괴롭힘도 잦아들었습니다. 다시 온전한 하루로 돌아가실 수 있게 됐다는 점이 기뻤고, 숨은 가해자를 쫓는 일이 결코 수월하지 않은 사안이라 저희로서도 보람이 컸습니다.

법리상 모욕이 성립하더라도 영장이 막혀 수사조차 시작되지 못하는 사건이 많습니다. 담당 수사관에 따라 갈리는 면이 있는 영역이라, 당시에는 저희도 수사관을 잘 만나 절차가 열린 것이라고 여겼습니다. 그런데 뒤에 자료를 다시 들춰 보니 다르게 읽혔습니다. 대상이 누구인지를 보여 주는 입증이 빈틈없이 갖춰져 있었기에, 그 수사관도 영장을 기각할 수 없었던 것으로 보였습니다.


"운이 좋아 절차가 열린 줄 알았습니다. 자료를 다시 보니, 기각할 틈을 남기지 않은 것이었습니다."
— 뉴로이어 법률사무소


이는 사건의 쟁점을 정확히 짚고 철저히 준비해 입증했기에 얻을 수 있었던 결과라고 생각합니다. SNS나 커뮤니티에서 집단적인 괴롭힘을 겪고 계신 분이라면 혼자 감당하기 쉽지 않은 사안이니 연락 주셔서 도움을 받아 보시기 바랍니다.

가능성이 없다면 그 점을 솔직히 말씀드리고, 길이 보인다면 끝까지 함께 가겠습니다.


신상이 퍼진 저격글에 대응할 때 점검 포인트

저격글의 원문과 게시 시각, 조회수를 화면 그대로 갈무리했는가
신상이 처음 드러난 글과 그 시점을 확인했는가
이야기가 퍼져 나간 경로와 옮겨 간 곳들을 정리했는가
이름을 적지 않은 글이라도 대상을 알아볼 만한 정황이 있는지 살폈는가
표현의 수위를 기준으로 다툴 글을 추려 냈는가
직접 해명하거나 맞대응하는 방식은 피하고 있는가




관련 법리 정리

모욕죄의 특정성
글이 누구를 가리키는지 알아볼 수 있어야 합니다. 이름을 적지 않았더라도 그 무렵 알려진 사정에 비추어 읽는 사람들이 대상을 알아볼 수 있었다면 인정될 여지가 있습니다.
모욕적 표현의 범위
사실을 드러내지 않고 사회적 평가를 떨어뜨릴 만한 판단이나 경멸의 감정을 나타내는 것이 모욕입니다. 욕설에 이르지 않아도 경멸적 의미를 담은 비속어로 비난했다면 해당할 수 있습니다.
익명 작성자의 특정
신원을 확인하려면 영장이 발부되고 집행되어야 합니다. 법리상 성립하더라도 이 관문에서 막히는 경우가 있어, 고소 단계에서 요건을 빈틈없이 갖추는 작업이 중요합니다.
구약식과 기소유예
구약식은 공판 없이 벌금형을 구하는 처분이고, 기소유예는 혐의는 인정되나 재판에 넘기지 않는 처분입니다. 둘 다 혐의가 없다고 본 것과는 구분됩니다.




이 사건을 담당한 변호인
절차가 열리느냐는 준비의 밀도에서 갈립니다. 이 사건은 형사전문 대표변호사가 직접 수행했습니다.






CEO Lawyer
김수열 대표변호사

#명예훼손·모욕#사이버범죄#인플루언서·MCN

서울대학교 심리학과를 거쳐 서울대학교 법학전문대학원을 졸업했고, 법무법인 율촌을 거쳐 뉴로이어 법률사무소를 이끌고 있는 대한변호사협회 인증 형사전문변호사입니다. 익명 계정을 상대로 한 악성 게시물 집단 고소를 다수 수행해 왔습니다.

방송 출연자·인플루언서 악성댓글 집단 고소 성공 수행
언론사 가짜뉴스 명예훼손·업무방해 고소대리
서울대 총학생회장 명예훼손 사건 대법원 파기환송 승소

프로필 자세히 보기 →






FAQ사이버불링 집단고소, 자주 묻는 질문

익명 계정이 쓴 글도 고소할 수 있나요?
가능합니다. 다만 신원을 확인하려면 수사관이 플랫폼에 영장을 내밀고 자료를 받아야 해서 손이 많이 가는 편입니다. 고소 단계에서 요건을 얼마나 갖춰 두느냐에 따라 그 관문을 넘을 수 있는지가 갈립니다.


제 이름을 안 쓰고 애매하게 지칭했는데도 모욕죄가 되나요?
됩니다. 이름을 적지 않았더라도 그 무렵 알려진 사정에 비추어 읽는 사람들이 누구를 가리키는지 알아볼 수 있었다면 인정될 여지가 있습니다. 이 사건에서도 신상이 퍼진 시점과 각 글의 작성 시점을 맞춰 그 점을 세웠습니다.


신상이 털렸을 때 가장 먼저 무엇을 해야 하나요?
저격글의 원문과 게시 시각, 조회수, 퍼져 나간 경로를 서둘러 갈무리해 두시기 바랍니다. 시간이 지나면 확산 경로를 되짚기 어려워집니다. 직접 해명하거나 맞대응하는 것은 관심을 키울 수 있어 권하지 않습니다.


욕설이 아니라 비꼬는 표현이면 처벌이 어렵나요?
그렇지 않습니다. 욕설에 이르지 않아도 사회적 평가를 떨어뜨릴 만한 경멸적 의미의 비속어로 비난했다면 모욕에 해당할 수 있다는 것이 법원의 판단입니다. 표현을 문장 하나로 떼어 보지 않고 글 전체의 취지 속에서 살피게 됩니다.


영장이 기각되면 사건이 끝나나요?
법리상 성립하더라도 이 관문에서 막혀 수사가 시작되지 못하는 경우가 실제로 있습니다. 그래서 고소 단계에서 대상이 누구인지를 보여 주는 입증을 빈틈없이 갖춰 두는 작업이 중요합니다. 이 사건에서는 그 준비 덕에 기각 없이 집행됐습니다.


여러 명이 달려들 때는 어떻게 대응하나요?
전부를 대상으로 삼기보다 정도가 심한 이들을 골라 진행하는 편이 낫습니다. 이 사건에서도 그렇게 추려 집단고소를 진행했고, 처벌 사실이 알려지면서 나머지 괴롭힘도 함께 잦아들었습니다.




함께 보면 좋은 글

네이버TV 악플 고소, 가해자 6명을 특정해 처분까지 받아낸 사례
버튜버 성희롱·악성 게시글 30건 이상 삭제한 악플 대응 사례
커뮤니티 가짜뉴스 집단고소, 구약식 처분까지 받아낸 고소대리 사례




가능성이 없다면 그 점부터 솔직히 말씀드립니다
SNS나 커뮤니티에서 집단적인 괴롭힘을 겪고 계시다면 게시글 원문과 게시 시각, 확산 경로를 정리해 문의해 주세요.다툴 수 있는 사안인지부터 함께 확인해 드립니다.

카카오톡 상담
070-8098-0421
홈페이지 상담 신청

모든 상담 내용은 비밀이 보장됩니다



인용 법리: 모욕죄의 모욕적 표현에 관한 대법원 판결 요지 (국가법령정보센터, 작성일 기준)
뉴로이어 법률사무소 · 서울 서초구 강남대로 525 세영제이타워 11층(06536) · 사업자등록번호 588-14-01388 · [email protected]


본 성공사례는 뉴로이어 법률사무소가 실제 수행한 사건을 바탕으로 작성됐으며, 의뢰인 보호를 위해 일부 사실관계를 조정했습니다. 개별 사건의 결과는 구체적 사정에 따라 달라질 수 있어, 본 글이 유사 사건에서 동일한 결과를 약속하는 것은 아닙니다.




{
"@context": "https://schema.org",
"@type": "Article",
"headline": "이름을 흐려 적으며 피해 가던 악플들, 특정성을 빈틈없이 세워 5명을 찾아낸 성공사례",
"description": "SNS에 남긴 감상 한 줄로 직장과 얼굴까지 공개되며 저격글이 확산된 사이버불링 사건. 악플러들이 지칭을 흐려 놓은 상황에서 신상 유출 시점과 게시 시점을 맞춰 특정성을 세우고, 영장 기각 없이 5명을 특정해 처분을 받아낸 뉴로이어 집단고소 성공사례입니다.",
"inLanguage": "ko",
"datePublished": "2026-08-12",
"dateModified": "2026-08-12",
"author": {
"@type": "Person",
"name": "김수열",
"jobTitle": "대표변호사",
"url": "https://newlawyer.co.kr/page/21_view?wr_id=1",
"image": "https://newlawyer.co.kr/data/file/member/thumb-238321632_UzWE7X3O_a622b2fa6778b002d58c2ddc7bdddb15cb53f084_460x460.jpg",
"knowsAbout": [
"명예훼손·모욕",
"사이버불링 대응",
"악성 게시물 집단고소",
"사이버범죄",
"인플루언서·MCN"
],
"alumniOf": {
"@type": "CollegeOrUniversity",
"name": "서울대학교 법학전문대학원"
},
"worksFor": {
"@type": "LegalService",
"name": "뉴로이어 법률사무소",
"url": "https://www.newlawyer.co.kr"
}
},
"publisher": {
"@type": "LegalService",
"name": "뉴로이어 법률사무소",
"url": "https://www.newlawyer.co.kr",
"address": {
"@type": "PostalAddress",
"streetAddress": "강남대로 525 세영제이타워 11층",
"addressLocality": "서초구",
"addressRegion": "서울",
"postalCode": "06536",
"addressCountry": "KR"
},
"telephone": "+82-70-8098-0421"
},
"mainEntityOfPage": {
"@type": "WebPage",
"@id": "https://www.newlawyer.co.kr/31/422"
},
"about": [
"트위터 사이버불링 집단고소",
"X 사이버불링 악플",
"모욕죄 특정성",
"신상유출 저격글",
"익명 악플러 추적",
"구약식 기소유예"
]
}


{
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
{
"@type": "ListItem",
"position": 1,
"name": "홈",
"item": "https://www.newlawyer.co.kr"
},
{
"@type": "ListItem",
"position": 2,
"name": "성공사례",
"item": "https://www.newlawyer.co.kr/31"
},
{
"@type": "ListItem",
"position": 3,
"name": "명예훼손 · 모욕",
"item": "https://www.newlawyer.co.kr/31?sca=%EB%AA%85%EC%98%88%ED%9B%BC%EC%86%90+%C2%B7+%EB%AA%A8%EC%9A%95"
},
{
"@type": "ListItem",
"position": 4,
"name": "트위터 사이버불링 집단고소",
"item": "https://www.newlawyer.co.kr/31/422"
}
]
}


{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "익명 계정이 쓴 글도 고소할 수 있나요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "가능합니다. 다만 신원을 확인하려면 수사관이 플랫폼에 영장을 내밀고 자료를 받아야 해서 손이 많이 가는 편입니다. 고소 단계에서 요건을 얼마나 갖춰 두느냐에 따라 그 관문을 넘을 수 있는지가 갈립니다."
}
},
{
"@type": "Question",
"name": "제 이름을 안 쓰고 애매하게 지칭했는데도 모욕죄가 되나요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "됩니다. 이름을 적지 않았더라도 그 무렵 알려진 사정에 비추어 읽는 사람들이 누구를 가리키는지 알아볼 수 있었다면 인정될 여지가 있습니다. 이 사건에서도 신상이 퍼진 시점과 각 글의 작성 시점을 맞춰 그 점을 세웠습니다."
}
},
{
"@type": "Question",
"name": "신상이 털렸을 때 가장 먼저 무엇을 해야 하나요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "저격글의 원문과 게시 시각, 조회수, 퍼져 나간 경로를 서둘러 갈무리해 두시기 바랍니다. 시간이 지나면 확산 경로를 되짚기 어려워집니다. 직접 해명하거나 맞대응하는 것은 관심을 키울 수 있어 권하지 않습니다."
}
},
{
"@type": "Question",
"name": "욕설이 아니라 비꼬는 표현이면 처벌이 어렵나요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "그렇지 않습니다. 욕설에 이르지 않아도 사회적 평가를 떨어뜨릴 만한 경멸적 의미의 비속어로 비난했다면 모욕에 해당할 수 있다는 것이 법원의 판단입니다. 표현을 문장 하나로 떼어 보지 않고 글 전체의 취지 속에서 살피게 됩니다."
}
},
{
"@type": "Question",
"name": "영장이 기각되면 사건이 끝나나요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "법리상 성립하더라도 이 관문에서 막혀 수사가 시작되지 못하는 경우가 실제로 있습니다. 그래서 고소 단계에서 대상이 누구인지를 보여 주는 입증을 빈틈없이 갖춰 두는 작업이 중요합니다. 이 사건에서는 그 준비 덕에 기각 없이 집행됐습니다."
}
},
{
"@type": "Question",
"name": "여러 명이 달려들 때는 어떻게 대응하나요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "전부를 대상으로 삼기보다 정도가 심한 이들을 골라 진행하는 편이 낫습니다. 이 사건에서도 그렇게 추려 집단고소를 진행했고, 처벌 사실이 알려지면서 나머지 괴롭힘도 함께 잦아들었습니다."
}
}
]
}


{
"@context": "https://schema.org",
"@type": "HowTo",
"name": "사이버불링 집단고소 절차",
"description": "익명 계정의 저격글과 악플에 대해 작성자를 특정하고 처분까지 이끄는 순서입니다.",
"step": [
{
"@type": "HowToStep",
"name": "확산 시점의 역추적",
"text": "이야기가 퍼지기 시작한 무렵을 짚어 신상이 흘러나온 정황을 찾아냅니다."
},
{
"@type": "HowToStep",
"name": "언급량과 게시글 목록화",
"text": "그 시점 이후의 언급 규모를 헤아리고 각 게시글을 목록으로 정돈합니다."
},
{
"@type": "HowToStep",
"name": "모욕 성립 글의 선별",
"text": "판례 기준에 비추어 다툴 수 있는 글을 골라냅니다."
},
{
"@type": "HowToStep",
"name": "시점 대조로 특정성 완성",
"text": "신상 유출 시점과 각 글의 작성 시점을 맞춰 대상을 알아볼 수 있었음을 세웁니다."
},
{
"@type": "HowToStep",
"name": "맥락 분석으로 표현 논증",
"text": "표현을 글 전체의 취지와 앞뒤 흐름 속에서 살펴 모욕성을 밝힙니다."
}
]
}



:root {
--nl-navy: #1f4e79;
--nl-navy-2: #2e5a8a;
--nl-navy-3: #0f2e4d;
--nl-navy-soft: #5b7ea1;
--nl-ink: #222222;
--nl-soft: #444444;
--nl-mute: #767676;
--nl-line: #e5e7eb;
--nl-line-soft: #eef0f3;
--nl-bg-soft: #f5f7fa;
--nl-bg-card: #fafbfc;
--nl-accent: #c0392b;
--nl-bg: #ffffff;
}

.nl-wrap {
font-family: "Pretendard", "Pretendard Variable", -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", sans-serif;
color: var(--nl-ink);
line-height: 1.85;
font-size: clamp(15px, 1.05vw + 12px, 17px);
background: var(--nl-bg);
-webkit-text-size-adjust: 100%;
text-size-adjust: 100%;
word-break: keep-all;
overflow-wrap: anywhere;
max-width: 880px;
margin: 0 auto;
padding: clamp(20px, 4vw, 48px) clamp(16px, 3vw, 32px);
position: relative;
font-feature-settings: "ss01", "ss02";
letter-spacing: -0.005em;
}

.nl-wrap * { box-sizing: border-box; }

.nl-wrap a { color: var(--nl-navy); text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; }
.nl-wrap a:hover { color: var(--nl-navy-3); }

.nl-crumb {
font-size: 13px;
color: var(--nl-mute);
letter-spacing: 0.01em;
margin-bottom: 24px;
padding-bottom: 14px;
border-bottom: 1px solid var(--nl-line);
}
.nl-crumb ol { list-style: none; padding: 0; margin: 0; display: flex; flex-wrap: wrap; gap: 6px 10px; }
.nl-crumb li + li::before { content: "›"; margin-right: 10px; color: var(--nl-navy-soft); }
.nl-crumb a { color: var(--nl-mute); text-decoration: none; }
.nl-crumb a:hover { color: var(--nl-navy); }

.nl-tag {
display: inline-flex;
align-items: center;
gap: 8px;
font-size: 12px;
font-weight: 600;
letter-spacing: 0.12em;
color: #ffffff;
background: var(--nl-navy);
padding: 7px 16px;
border-radius: 2px;
}
.nl-tag::before {
content: "";
width: 6px; height: 6px;
border-radius: 50%;
background: #ffffff;
}

.nl-h1 {
font-weight: 800;
font-size: clamp(24px, 3.2vw + 12px, 38px);
line-height: 1.35;
color: var(--nl-navy-3);
margin: 16px 0 14px;
letter-spacing: -0.025em;
}
.nl-h1 .nl-h1-accent { color: var(--nl-navy); }

.nl-sub {
font-size: clamp(14px, 0.6vw + 12px, 16px);
color: var(--nl-soft);
margin: 0 0 28px;
line-height: 1.75;
font-weight: 400;
}

.nl-meta {
display: flex;
flex-wrap: wrap;
gap: 14px;
font-size: 13px;
color: var(--nl-mute);
padding: 12px 0;
border-top: 1px solid var(--nl-line);
border-bottom: 1px solid var(--nl-line);
margin-bottom: 36px;
}
.nl-meta span { display: inline-flex; align-items: center; gap: 6px; }
.nl-meta strong { color: var(--nl-navy); font-weight: 600; }

.nl-author {
display: grid;
grid-template-columns: auto 1fr;
gap: 18px;
align-items: center;
background: var(--nl-bg-soft);
border-left: 4px solid var(--nl-navy);
padding: 22px 24px;
margin: 0 0 36px;
border-radius: 2px;
}
.nl-author-badge {
width: 60px; height: 60px;
border-radius: 50%;
background: var(--nl-navy);
color: #fff;
display: flex; align-items: center; justify-content: center;
font-weight: 800;
font-size: 20px;
letter-spacing: 0.02em;
}
.nl-author-name { font-weight: 700; font-size: 16px; color: var(--nl-navy-3); margin: 0 0 4px; letter-spacing: -0.01em; }
.nl-author-role { font-size: 13px; color: var(--nl-soft); line-height: 1.65; margin: 0; }
.nl-author-role b { color: var(--nl-navy); font-weight: 600; }

.nl-summary {
background: var(--nl-bg-card);
border: 1px solid var(--nl-line);
border-radius: 4px;
padding: 28px 28px 24px;
margin: 0 0 40px;
position: relative;
}
.nl-summary::before {
content: "한눈에 보기";
position: absolute;
top: -12px; left: 24px;
background: var(--nl-navy);
color: #fff;
font-size: 11px;
letter-spacing: 0.16em;
font-weight: 600;
padding: 5px 14px;
border-radius: 2px;
}
.nl-summary dl {
display: grid;
grid-template-columns: 100px 1fr;
gap: 12px 20px;
margin: 4px 0 0;
font-size: 14.5px;
}
.nl-summary dt {
color: var(--nl-mute);
font-weight: 500;
border-right: 1px solid var(--nl-line);
padding-right: 20px;
line-height: 1.7;
}
.nl-summary dd { margin: 0; color: var(--nl-ink); line-height: 1.7; }
.nl-summary dd b { color: var(--nl-navy); font-weight: 700; }
.nl-summary dd .nl-win { color: var(--nl-navy); font-weight: 700; border-bottom: 2px solid var(--nl-navy); padding-bottom: 1px; }

.nl-lead {
background: var(--nl-bg-soft);
border-left: 4px solid var(--nl-navy);
padding: 22px 26px;
margin: 36px 0;
border-radius: 2px;
}
.nl-lead p { margin: 0; font-size: 16px; line-height: 1.85; color: var(--nl-ink); }
.nl-lead p + p { margin-top: 12px; }
.nl-lead strong { color: var(--nl-navy); font-weight: 700; }

.nl-h2 {
font-weight: 800;
font-size: clamp(20px, 1.5vw + 14px, 26px);
color: var(--nl-navy-3);
margin: 64px 0 22px;
padding-bottom: 14px;
border-bottom: 2px solid var(--nl-navy);
display: flex;
align-items: baseline;
gap: 14px;
letter-spacing: -0.025em;
}
.nl-h2 .nl-h2-no {
font-size: 13px;
color: var(--nl-navy-soft);
letter-spacing: 0.2em;
font-weight: 700;
}

.nl-h3 {
font-weight: 700;
font-size: clamp(17px, 0.7vw + 14px, 19px);
color: var(--nl-navy);
margin: 36px 0 14px;
padding-left: 14px;
border-left: 3px solid var(--nl-navy);
letter-spacing: -0.015em;
}

.nl-wrap p { margin: 14px 0; }

.nl-defn {
background: var(--nl-bg-card);
border: 1px solid var(--nl-line);
border-top: 3px solid var(--nl-navy);
padding: 18px 22px;
margin: 24px 0;
border-radius: 2px;
font-size: 15px;
}
.nl-defn dt {
font-size: 12px;
letter-spacing: 0.14em;
color: var(--nl-navy);
font-weight: 700;
margin-bottom: 8px;
}
.nl-defn dd { margin: 0; color: var(--nl-ink); line-height: 1.8; }
.nl-defn dd b { color: var(--nl-navy); font-weight: 700; }

.nl-statute {
background: var(--nl-bg-soft);
border: 1px solid var(--nl-line);
border-left: 4px solid var(--nl-navy);
padding: 22px 26px;
margin: 28px 0;
border-radius: 2px;
position: relative;
}
.nl-statute::before {
content: "법령";
position: absolute;
top: 16px; right: 20px;
font-size: 10px;
letter-spacing: 0.18em;
font-weight: 700;
color: #fff;
background: var(--nl-navy);
padding: 3px 9px;
border-radius: 2px;
}
.nl-statute .nl-statute-h {
font-weight: 800;
font-size: 16px;
color: var(--nl-navy-3);
margin: 0 0 12px;
padding-right: 60px;
letter-spacing: -0.015em;
}
.nl-statute ol { padding-left: 18px; margin: 8px 0 0; }
.nl-statute li { margin-bottom: 6px; line-height: 1.85; }
.nl-statute .nl-cite { display: block; margin-top: 14px; font-size: 12px; color: var(--nl-mute); }
.nl-statute .nl-cite a { color: var(--nl-navy); }

.nl-issues {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 14px;
margin: 28px 0;
}
.nl-issue {
background: #ffffff;
border: 1px solid var(--nl-line);
border-radius: 2px;
padding: 18px 20px;
position: relative;
overflow: hidden;
transition: border-color 0.2s;
}
.nl-issue:hover { border-color: var(--nl-navy); }
.nl-issue::before {
content: "";
position: absolute;
top: 0; left: 0;
width: 4px; height: 100%;
background: var(--nl-navy);
}
.nl-issue h4 {
font-size: 15px;
color: var(--nl-navy-3);
margin: 0 0 8px;
font-weight: 700;
letter-spacing: -0.015em;
}
.nl-issue p {
font-size: 13.5px;
color: var(--nl-soft);
margin: 0;
line-height: 1.7;
}

.nl-steps {
counter-reset: nlstep;
display: grid;
gap: 12px;
margin: 28px 0;
}
.nl-step {
display: grid;
grid-template-columns: 64px 1fr;
gap: 18px;
background: #ffffff;
border: 1px solid var(--nl-line);
border-left: 4px solid var(--nl-navy);
border-radius: 2px;
padding: 18px 22px;
align-items: start;
}
.nl-step::before {
counter-increment: nlstep;
content: "STEP " counter(nlstep);
font-size: 11px;
font-weight: 700;
color: var(--nl-navy);
background: var(--nl-bg-soft);
padding: 6px 10px;
border-radius: 2px;
letter-spacing: 0.08em;
text-align: center;
line-height: 1.4;
align-self: start;
white-space: nowrap;
}
.nl-step h4 {
font-size: 16px;
color: var(--nl-navy-3);
margin: 2px 0 6px;
font-weight: 700;
letter-spacing: -0.015em;
}
.nl-step p {
font-size: 14.5px;
color: var(--nl-soft);
margin: 0;
line-height: 1.75;
}

.nl-table {
width: 100%;
border-collapse: collapse;
margin: 28px 0;
font-size: 14px;
background: #fff;
border: 1px solid var(--nl-line);
border-radius: 2px;
overflow: hidden;
}
.nl-table th, .nl-table td {
padding: 14px 16px;
border-bottom: 1px solid var(--nl-line);
border-right: 1px solid var(--nl-line);
vertical-align: top;
line-height: 1.7;
}
.nl-table th:last-child, .nl-table td:last-child { border-right: none; }
.nl-table tr:last-child td { border-bottom: none; }
.nl-table thead th {
background: var(--nl-navy);
color: #fff;
font-weight: 600;
letter-spacing: 0.02em;
text-align: left;
font-size: 13.5px;
}
.nl-table tbody th {
background: var(--nl-bg-soft);
color: var(--nl-navy-3);
font-weight: 600;
text-align: left;
width: 28%;
}
.nl-table .nl-td-good { color: var(--nl-navy); font-weight: 700; }
.nl-table .nl-td-bad { color: var(--nl-accent); font-weight: 700; }

.nl-checklist {
background: var(--nl-bg-card);
border: 1px solid var(--nl-line);
border-radius: 2px;
padding: 24px 26px;
margin: 28px 0;
}
.nl-checklist h4 {
font-size: 16px;
color: var(--nl-navy-3);
margin: 0 0 14px;
padding-bottom: 12px;
border-bottom: 1px solid var(--nl-line);
font-weight: 700;
letter-spacing: -0.015em;
}
.nl-checklist ul { list-style: none; padding: 0; margin: 0; }
.nl-checklist li {
position: relative;
padding-left: 30px;
margin-bottom: 10px;
font-size: 14.5px;
color: var(--nl-ink);
line-height: 1.75;
}
.nl-checklist li::before {
content: "";
position: absolute;
left: 0; top: 5px;
width: 18px; height: 18px;
border: 2px solid var(--nl-navy);
border-radius: 2px;
background: #fff;
}
.nl-checklist li::after {
content: "";
position: absolute;
left: 4px; top: 8px;
width: 10px; height: 5px;
border-left: 2px solid var(--nl-navy);
border-bottom: 2px solid var(--nl-navy);
transform: rotate(-45deg);
}

.nl-caution {
background: var(--nl-bg-soft);
border-left: 4px solid var(--nl-navy);
padding: 18px 22px;
margin: 28px 0;
border-radius: 2px;
}
.nl-caution h4 {
font-size: 15px;
color: var(--nl-navy-3);
margin: 0 0 8px;
font-weight: 700;
letter-spacing: -0.015em;
}
.nl-caution h4::before { content: "⚠ "; color: var(--nl-navy); }
.nl-caution p { margin: 0; font-size: 14.5px; color: var(--nl-soft); line-height: 1.75; }

.nl-law {
background: var(--nl-bg-card);
border: 1px solid var(--nl-line);
border-radius: 2px;
padding: 24px 26px;
margin: 28px 0;
}
.nl-law h4 {
font-size: 15px;
color: var(--nl-navy-3);
margin: 0 0 12px;
padding-bottom: 12px;
border-bottom: 1px solid var(--nl-line);
font-weight: 700;
letter-spacing: -0.015em;
}
.nl-law dl { margin: 0; font-size: 14px; }
.nl-law dt { color: var(--nl-navy); font-weight: 700; margin-top: 12px; }
.nl-law dt:first-child { margin-top: 0; }
.nl-law dd { margin: 4px 0 0; color: var(--nl-soft); line-height: 1.75; }

.nl-quote {
border-left: 3px solid var(--nl-navy);
padding: 8px 22px;
margin: 28px 0;
color: var(--nl-soft);
font-size: 16px;
line-height: 1.85;
}
.nl-quote p { font-style: normal; }
.nl-quote cite { display: block; font-style: normal; font-size: 13px; color: var(--nl-mute); margin-top: 8px; }

.nl-faq {
margin: 40px 0;
border-top: 2px solid var(--nl-navy);
}
.nl-faq h2 { margin-top: 24px; }
.nl-faq details {
border-bottom: 1px solid var(--nl-line);
padding: 20px 4px;
}
.nl-faq summary {
font-size: 16px;
font-weight: 700;
color: var(--nl-navy-3);
cursor: pointer;
list-style: none;
display: flex;
align-items: flex-start;
gap: 12px;
line-height: 1.55;
padding-right: 30px;
position: relative;
letter-spacing: -0.015em;
}
.nl-faq summary::-webkit-details-marker { display: none; }
.nl-faq summary::before {
content: "Q";
flex-shrink: 0;
width: 26px; height: 26px;
background: var(--nl-navy);
color: #fff;
border-radius: 50%;
display: flex; align-items: center; justify-content: center;
font-size: 13px;
font-weight: 700;
}
.nl-faq summary::after {
content: "+";
position: absolute;
right: 0; top: 0;
font-size: 22px;
color: var(--nl-navy);
font-weight: 300;
transition: transform 0.25s;
line-height: 1;
}
.nl-faq details[open] summary::after { content: "−"; }
.nl-faq .nl-a {
margin-top: 14px;
padding-left: 38px;
font-size: 14.5px;
color: var(--nl-soft);
line-height: 1.85;
}
.nl-faq .nl-a::before {
content: "A. ";
font-weight: 800;
color: var(--nl-navy);
}

.nl-related {
background: var(--nl-bg-soft);
border: 1px solid var(--nl-line);
border-radius: 2px;
padding: 24px 26px;
margin: 32px 0;
}
.nl-related h4 {
font-size: 14px;
color: var(--nl-navy-3);
letter-spacing: 0.04em;
margin: 0 0 14px;
padding-bottom: 12px;
border-bottom: 1px solid var(--nl-line);
font-weight: 700;
}
.nl-related ul { list-style: none; padding: 0; margin: 0; }
.nl-related li {
font-size: 14px;
margin: 8px 0;
padding-left: 14px;
position: relative;
}
.nl-related li::before { content: "›"; position: absolute; left: 0; color: var(--nl-navy); font-weight: 700; }
.nl-related a { color: var(--nl-navy); text-decoration: none; }
.nl-related a:hover { text-decoration: underline; }

.nl-cta {
margin: 48px 0 24px;
background: var(--nl-navy);
color: #fff;
border-radius: 2px;
padding: 38px 32px;
text-align: center;
position: relative;
overflow: hidden;
}
.nl-cta::before {
content: "";
position: absolute;
top: 0; left: 0; right: 0;
height: 3px;
background: linear-gradient(90deg, var(--nl-navy-soft) 0%, #ffffff 100%);
}
.nl-cta-h {
font-size: clamp(20px, 1.5vw + 12px, 26px);
font-weight: 800;
margin: 0 0 8px;
position: relative;
letter-spacing: -0.025em;
}
.nl-cta-sub {
font-size: 14.5px;
color: #c5d1e0;
margin: 0 0 24px;
line-height: 1.7;
position: relative;
}
.nl-cta-buttons {
display: flex;
flex-wrap: wrap;
gap: 10px;
justify-content: center;
position: relative;
}
.nl-cta-buttons a {
display: inline-flex;
align-items: center;
gap: 8px;
font-size: 14.5px;
font-weight: 600;
padding: 14px 26px;
border-radius: 2px;
text-decoration: none;
transition: transform 0.2s, box-shadow 0.2s;
letter-spacing: 0.01em;
}
.nl-cta-buttons a:hover { transform: translateY(-2px); box-shadow: 0 6px 16px rgba(0,0,0,0.25); }
.nl-cta-kakao { background: #fee500; color: #181600; }
.nl-cta-tel { background: #ffffff; color: var(--nl-navy-3); }
.nl-cta-web { background: #ffffff; color: var(--nl-navy); border: 1.5px solid var(--nl-navy); font-weight: 700; }
.nl-cta-secret {
display: inline-flex;
align-items: center;
margin-top: 18px;
font-size: 12px;
color: #c5d1e0;
letter-spacing: 0.08em;
position: relative;
}

.nl-footer-cite {
margin-top: 40px;
padding-top: 24px;
border-top: 1px solid var(--nl-line);
font-size: 12px;
color: var(--nl-mute);
line-height: 1.8;
}
.nl-footer-cite h4 {
font-size: 12px;
letter-spacing: 0.08em;
color: var(--nl-navy);
margin: 0 0 10px;
font-weight: 700;
}
.nl-footer-cite ul { padding-left: 18px; margin: 0; }
.nl-footer-cite li { margin: 4px 0; }
.nl-footer-cite a { color: var(--nl-navy); }

.nl-disclaimer {
margin-top: 28px;
font-size: 12px;
color: var(--nl-mute);
line-height: 1.75;
padding: 14px 16px;
background: var(--nl-bg-soft);
border: 1px solid var(--nl-line);
border-radius: 2px;
}

@media (max-width: 640px) {
.nl-wrap { padding: 16px 14px; }
.nl-issues { grid-template-columns: 1fr; }
.nl-summary dl { grid-template-columns: 1fr; gap: 4px 0; }
.nl-summary dt { border-right: none; border-bottom: 1px solid var(--nl-line); padding: 0 0 4px; margin-bottom: 4px; }
.nl-author { grid-template-columns: 1fr; text-align: center; }
.nl-author-badge { margin: 0 auto; }
.nl-table thead { display: none; }
.nl-table tr { display: block; border-bottom: 2px solid var(--nl-navy); padding: 8px 0; }
.nl-table th, .nl-table td { display: block; border-right: none; padding: 8px 14px; }
.nl-table tbody th { width: 100%; }
.nl-step { grid-template-columns: 1fr; gap: 8px; }
.nl-step::before { justify-self: start; }
.nl-cta { padding: 28px 20px; }
.nl-cta-buttons a { width: 100%; justify-content: center; }
}

@media (max-width: 380px) {
.nl-wrap { padding: 14px 12px; font-size: 14.5px; }
.nl-h2 { flex-direction: column; gap: 4px; align-items: flex-start; }
.nl-h2 .nl-h2-no { font-size: 12px; }
.nl-statute, .nl-defn, .nl-checklist, .nl-related, .nl-law { padding: 16px 18px; }
}

/* ==========================================================================
[ADD-ON] 담당 변호인 카드 (nl-team) — 기존 스타일 수정 없이 추가된 블록
사용처: 성공사례 하단, CTA 상단. 1~2인 카드 배치.
========================================================================== */

.nl-team {
margin: 40px 0 36px;
}

.nl-team-h {
font-size: 15px;
font-weight: 700;
color: var(--nl-navy);
letter-spacing: -0.01em;
margin: 0 0 4px;
padding-left: 12px;
border-left: 3px solid var(--nl-navy);
line-height: 1.4;
}

.nl-team-sub {
font-size: 13.5px;
color: var(--nl-mute);
margin: 0 0 18px;
padding-left: 15px;
line-height: 1.7;
}

.nl-team-grid {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 16px;
}

.nl-card {
display: grid;
grid-template-columns: 84px minmax(0, 1fr);
gap: 16px;
background: var(--nl-bg-card);
border: 1px solid var(--nl-line);
border-top: 3px solid var(--nl-navy);
border-radius: 2px;
padding: 20px 18px;
align-items: start;
}

.nl-card-photo {
width: 84px;
height: 84px;
border-radius: 2px;
overflow: hidden;
background: var(--nl-bg-soft);
border: 1px solid var(--nl-line);
}

.nl-card-photo img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
}

.nl-card-role {
display: inline-block;
font-size: 10.5px;
font-weight: 700;
letter-spacing: 0.08em;
text-transform: uppercase;
color: var(--nl-navy-soft);
margin: 0 0 4px;
line-height: 1.3;
}

.nl-card-name {
font-size: 16.5px;
font-weight: 800;
color: var(--nl-ink);
letter-spacing: -0.02em;
margin: 0 0 8px;
line-height: 1.35;
}

.nl-card-name a {
color: var(--nl-ink);
text-decoration: none;
}
.nl-card-name a:hover {
color: var(--nl-navy);
text-decoration: underline;
text-underline-offset: 3px;
}

.nl-card-tags {
display: flex;
flex-wrap: wrap;
gap: 5px;
margin: 0 0 10px;
padding: 0;
list-style: none;
}

.nl-card-tags li {
font-size: 11.5px;
color: var(--nl-navy);
background: rgba(31, 78, 121, 0.07);
border-radius: 2px;
padding: 2px 7px;
line-height: 1.6;
letter-spacing: -0.01em;
}

.nl-card-desc {
font-size: 13.5px;
color: var(--nl-soft);
line-height: 1.75;
margin: 0 0 10px;
letter-spacing: -0.01em;
}

.nl-card-list {
margin: 0;
padding: 0;
list-style: none;
border-top: 1px solid var(--nl-line-soft);
padding-top: 9px;
}

.nl-card-list li {
font-size: 12.5px;
color: var(--nl-mute);
line-height: 1.7;
padding-left: 10px;
position: relative;
letter-spacing: -0.01em;
}

.nl-card-list li::before {
content: "";
position: absolute;
left: 0;
top: 9px;
width: 3px;
height: 3px;
border-radius: 50%;
background: var(--nl-navy-soft);
}

.nl-card-list li b {
color: var(--nl-soft);
font-weight: 700;
}

.nl-card-link {
display: inline-block;
font-size: 12.5px;
color: var(--nl-navy);
margin-top: 10px;
text-decoration: none;
border-bottom: 1px solid var(--nl-line);
padding-bottom: 1px;
}
.nl-card-link:hover {
border-bottom-color: var(--nl-navy);
}

@media (max-width: 760px) {
.nl-team-grid { grid-template-columns: 1fr; gap: 14px; }
}

@media (max-width: 480px) {
.nl-card {
grid-template-columns: 64px minmax(0, 1fr);
gap: 13px;
padding: 17px 15px;
}
.nl-card-photo { width: 64px; height: 64px; }
.nl-card-name { font-size: 15.5px; }
.nl-card-desc { font-size: 13px; }
}

/* [ADD-ON] 1인 카드일 때 전체 폭 사용 */
.nl-team-grid:has(> .nl-card:only-child) {
grid-template-columns: minmax(0, 1fr);
}
.nl-team-grid > .nl-card:only-child {
grid-template-columns: 110px minmax(0, 1fr);
gap: 20px;
padding: 22px 20px;
}
.nl-team-grid > .nl-card:only-child .nl-card-photo {
width: 110px;
height: 110px;
}
@media (max-width: 480px) {
.nl-team-grid > .nl-card:only-child {
grid-template-columns: 64px minmax(0, 1fr);
gap: 13px;
padding: 17px 15px;
}
.nl-team-grid > .nl-card:only-child .nl-card-photo {
width: 64px;
height: 64px;
}
}

2026.09.03

합의 및 게시글 삭제

당근마켓 리뷰 테러 명예훼손 업무방해 모욕 피해자 고소대리

당근마켓 리뷰 테러 악플 성공사례 | 명예훼손·업무방해 고소, 합의로 게시글 정리





성공사례
명예훼손 · 모욕
당근마켓 악성 리뷰 고소




명예훼손 · 업무방해 · 합의 종결
서비스를 쓴 적도 없는 사람들의 후기,악플이 아니라 영업 공격으로 다뤄 끝낸 사례
같은 업계 사람들의 정황이 보이는 리뷰가 이어지자 매출이 눈에 띄게 흔들렸습니다. 글만 보지 않고 게시 시점과 매출 변동을 함께 놓아 업무방해까지 구성했고, 합의를 이끌어 문제된 게시글까지 정리한 과정입니다.

카테고리 명예훼손 · 온라인 평판
결과 가해자들과 합의 · 게시글 정리
죄명 명예훼손 · 업무방해 · 모욕
작성일 2026. 8.





의뢰인
당근마켓을 통해 온라인 상담 서비스를 제공하던 사업자
사건 발단
다른 곳의 내용을 베꼈다거나 협업 결과물을 가져다 쓴다는 취지의 리뷰가 이어졌고 사기라는 표현까지 등장
의심스러운 정황
실제 이용 고객의 후기로 보기 어려웠고 같은 업계에서 활동하는 사람들의 작성 정황이 확인됨. 게시 이후 매출이 눈에 띄게 하락
대응 전략
문장별로 사실 주장과 평가를 갈라내고, 게시 시점과 영업 상황을 함께 놓아 명예훼손에 더해 업무방해와 모욕까지 검토해 고소
결과
가해자들과  합의 성립 — 문제된 게시글까지 정리




온라인에서 서비스를 파는 분들에게 후기 하나의 무게는 생각보다 큽니다. 처음 찾아온 손님이 몇 줄의 평가를 보고 구매를 정하는 구조라면, 악의를 담은 리뷰 한 편이 곧장 매출로 이어지기 때문입니다.
이런 사건을 맡다 보면 글을 내려 달라는 요구만으로는 끝나지 않는 경우가 많습니다. 작성자가 버티거나 비슷한 글을 다시 올리기 시작하면, 누가 썼는지를 확인하고 어떤 책임을 물을 수 있는지까지 함께 봐야 사건이 닫힙니다.
오늘 전할 사건도 그랬습니다. 뉴로이어 법률사무소는 게시글을 살펴 명예훼손뿐 아니라 업무방해와 모욕까지 함께 구성해 고소했고, 피고소인들과 합의하면서 문제된 글까지 정리했습니다. 왜 단순한 악플 사건으로 보지 않았는지부터 말씀드리겠습니다.


01사건 개요 — 이용한 적 없는 사람들이 남긴 평가

의뢰인은 당근마켓을 통해 온라인 상담 서비스를 제공하고 계셨습니다. 그런데 어느 시점부터 낯선 리뷰들이 달리기 시작했습니다.

서비스가 기대에 못 미쳤다는 수준이 아니었습니다. 남의 것을 그대로 옮겨 왔다는 식의 지적이 나오는가 하면, 함께 만든 결과물을 혼자 챙긴다는 말이 붙었고 끝내는 사기라는 단어까지 나왔습니다.

의뢰인이 보시기에 실제로 서비스를 받아 본 손님의 평범한 후기라고 보기는 어려웠습니다. 같은 업계에서 활동하는 사람들이 쓴 것으로 짐작되는 정황이 있었고, 그 글들이 올라온 뒤로 매출이 눈에 띄게 꺾이기 시작했습니다.

저희를 찾아오셨을 때 원하시는 바는 분명했습니다. 문제된 글을 정리하고 같은 일이 되풀이되지 않게 하는 것이었습니다. 저희도 그 목적에 맞춰 고소의 방향부터 다시 잡았습니다.


악플과 영업 공격은 다르게 다뤄야 합니다
기분을 상하게 하는 글과 장사를 흔들려는 글은 성격이 다릅니다. 앞의 것은 표현의 수위가 쟁점이지만, 뒤의 것은 그 글이 언제 올라와 어떤 결과로 이어졌는지가 함께 검토됩니다. 같은 리뷰라도 어느 쪽으로 구성하느냐에 따라 물을 수 있는 책임의 범위가 달라집니다.




사실과 평가의 구분
글 안에서 어디까지가 사실 주장이고 어디부터가 감상인지 가르는 일.


작성자의 정체
실제 이용자가 아니라 같은 업계 사람이라는 정황을 어떻게 다룰 것인가.


영업 피해의 연결
글이 올라온 시점과 매출 변동을 어떻게 맞물려 보일 것인가.


죄명의 구성
명예훼손 외에 어떤 책임을 함께 물을 수 있는가.


표현 수위의 검토
모욕으로 평가될 여지가 있는 대목을 따로 가려낼 것인가.


게시글의 정리
처벌과 별개로 이미 올라온 글을 어떻게 내리게 할 것인가.



02문제 해결 — 글만 보지 않고 장사까지 함께 봤습니다

게시글을 처음 받아 들고 가장 먼저 한 일은 문장을 하나씩 갈라 어디가 사실을 주장하는 대목이고 어디가 단순한 평가인지 나누는 것이었습니다. 악성 리뷰라고 해서 글 전체가 곧바로 문제되는 것은 아니기에, 실제 사실관계와 어긋나는 부분부터 짚어 나갔습니다.




문장별 성격의 분류
사실을 드러낸 대목과 평가에 머무는 대목을 나누고, 실제와 맞지 않는 서술을 하나씩 가려냈습니다.




게시 시점과 영업 상황의 대조
글 자체만 보지 않았습니다. 리뷰가 올라온 날짜와 그 무렵의 영업 상황을 나란히 놓고 봤더니, 게시 직후에 매출 변동이 나타나고 있었습니다.




업무방해 구성의 판단
글이 향하는 곳도 서비스를 나무라는 데 그치지 않고, 그 자체를 믿을 수 없는 것처럼 비치게 만드는 쪽이었습니다. 이 지점에서 명예를 훼손한 문제만이 아니라 장사를 가로막으려 한 행위까지 함께 짚어야 한다고 봤습니다.




구성요건에 맞춘 고소장 작성
억울하다는 식으로 쓰지 않았습니다. 어느 문장이 실제와 어긋나는지, 그 대상이 누구로 읽히는지, 열린 공간에서 얼마나 눈에 띄었는지, 장사에 어떤 파장을 남길 수 있었는지를 게시물과 자료를 견주며 짚어 나갔습니다.




모욕 성립 여부의 별도 검토
문제된 표현 가운데 모욕으로 평가될 여지가 있는 부분은 따로 떼어 살폈습니다. 죄명마다 다투는 지점이 다르기 때문입니다.





이 사건 고소대리의 무게중심
저희가 겨냥한 것은 상대가 후기 하나 썼을 뿐이라고 여기지 못하게 만드는 일이었습니다. 게시글의 내용과 영업에 미친 영향을 법적 요건에 맞춰 정리해 내밀자, 상대도 이 사건의 무게를 다르게 받아들이기 시작했고 그때부터 합의 쪽으로 움직였습니다.



주의해야 할 점
플랫폼에 삭제를 요청하는 것만으로 끝나지 않는 경우가 많습니다. 작성자가 버티거나 비슷한 글을 다시 올리면 같은 일이 되풀이되기 때문입니다. 또 매출 자료는 시간이 지나면 앞뒤를 견주기 어려워지니, 글이 올라온 무렵의 기록을 미리 갈무리해 두시기 바랍니다.


03최종 결과 — 가해자들과 합의, 게시글까지 정리

고소가 진행된 뒤 피고소인들과 합의가 이뤄졌습니다. 의뢰인이 받아들일 수 있는 선에서 조건을 맞췄고, 문제됐던 게시글도 함께 정리하면서 사건을 마무리할 수 있었습니다.

이런 사건을 하며 거듭 확인하는 것은, 처벌을 받아 내는 일이 늘 피해자가 바라는 마지막 그림은 아니라는 점입니다. 이미 퍼져 나가는 글을 내리고 같은 일이 되풀이되지 않게 정리해야 비로소 원래의 장사와 일상으로 돌아갈 수 있기 때문입니다.


"후기 하나 썼을 뿐이라는 생각을 깨는 것이 이 사건의 출발점이었습니다. 글과 매출을 나란히 놓자 무게가 달라졌습니다."
— 뉴로이어 법률사무소


당근마켓을 비롯한 온라인 플랫폼에서 허위 리뷰나 악성 게시글로 피해를 겪고 계시다면, 먼저 게시글 원문과 작성자 정보, 게시 시점, 그 전후의 매출 자료처럼 지금 남아 있는 기록부터 확보해 두시기 바랍니다.

저희는 온라인에서 벌어지는 명예훼손과 모욕 사건을 다루며, 이번처럼 영업 피해가 얽힌 경우에는 업무방해까지 함께 검토합니다. 관련 자료를 가지고 연락 주시면 어떤 책임을 물을 수 있는지 기록부터 살펴 드리겠습니다.


악성 리뷰 대응, 준비해 두실 것

게시글 원문과 작성자 표기, 게시 시점을 화면 그대로 갈무리했는가
같은 취지의 글이 몇 건이나 올라왔는지 목록으로 정리했는가
글이 올라온 전후의 매출 자료를 확보해 두었는가
실제 이용 내역과 대조해 이용자가 아님을 보일 수 있는가
같은 업계 관계자의 작성 정황을 뒷받침할 자료가 있는가
플랫폼에 삭제를 요청한 내역과 그 결과를 기록했는가




관련 법리 정리

사실 적시와 의견 표명
같은 글 안에서도 사실을 드러낸 대목과 평가에 머무는 대목이 나뉩니다. 명예훼손을 다툴 때는 실제와 어긋나는 사실 주장이 무엇인지부터 가려내야 합니다.
업무방해
거짓을 퍼뜨리거나 속임수 또는 힘을 앞세워 남의 일을 가로막는 행위가 처벌 대상입니다. 장사가 실제로 멈추지 않았더라도 그럴 위험이 뚜렷하게 생겼다면 책임을 물을 여지가 열립니다.
모욕의 별도 검토
사실을 드러내지 않더라도 사회적 평가를 떨어뜨릴 만한 표현이라면 모욕으로 다툴 여지가 있습니다. 죄명마다 쟁점이 달라 따로 살펴야 합니다.
합의와 게시글 정리
처벌만으로는 이미 올라온 글이 사라지지 않습니다. 합의 과정에서 게시글 삭제와 재발 방지까지 함께 조건으로 담으면 실질적인 마무리가 됩니다.




이 사건을 담당한 변호인
표현의 문제와 영업 피해를 함께 읽어야 하는 사건이었습니다. 이 사건은 두 변호사가 나눠 수행했습니다.







CEO Lawyer
김수열 대표변호사

#명예훼손·모욕#사이버범죄#인플루언서·MCN

서울대학교 심리학과를 거쳐 서울대학교 법학전문대학원을 졸업했고, 법무법인 율촌을 거쳐 뉴로이어 법률사무소를 이끌고 있는 대한변호사협회 인증 형사전문변호사입니다. 온라인 게시물을 둘러싼 고소대리를 다수 수행해 왔습니다.

언론사 가짜뉴스 명예훼손·업무방해 고소대리
방송 출연자·인플루언서 악성댓글 집단 고소 성공 수행
서울대 총학생회장 명예훼손 사건 대법원 파기환송 승소

프로필 자세히 보기 →








Partner Lawyer
오동현 파트너변호사

#이커머스·공정거래#기업자문#명예훼손·모욕

고려대학교 법학전문대학원을 수석입학·최우등졸업하고 고려대학교 미디어학부를 거쳤으며, 법무법인 율촌을 비롯한 국내 5대 대형로펌 출신입니다. 온라인 판매와 영업을 둘러싼 분쟁을 폭넓게 수행합니다.

이커머스 기업 상대 21억 청구 전부승소
리셀 부정경쟁방지법·표시광고법 위반 사건 다수 무혐의
60억 투자사기 집단소송 전부승소

프로필 자세히 보기 →







FAQ악성 리뷰 대응, 자주 묻는 질문

경쟁업체가 악성 리뷰를 달았다면 어떻게 대응하나요?
실제 이용자가 아니라는 정황과 같은 업계 관계자라는 사정을 함께 정리해 두시기 바랍니다. 이 사건에서도 그런 정황이 있었고, 글의 내용과 영업 피해를 맞물려 명예훼손에 더해 업무방해까지 검토했습니다.


후기를 이유로 고소가 가능한가요?
글 전체가 곧바로 문제되지는 않습니다. 어디가 사실을 드러낸 대목이고 그것이 실제와 어긋나는지부터 가려야 합니다. 평가에 머무는 표현이라도 수위에 따라 모욕으로 따로 다툴 여지가 있습니다.


허위 리뷰로 업무방해까지 물을 수 있나요?
거짓을 퍼뜨리거나 속임수를 써서 남의 일을 가로막았다면 책임을 물을 수 있습니다. 장사가 실제로 멈추지 않았더라도 그럴 위험이 뚜렷했다면 다툴 여지가 생기므로, 글이 올라온 때와 그 무렵의 영업 사정을 나란히 봅니다.


리뷰 때문에 매출이 떨어졌다면 무엇을 준비해야 하나요?
글이 올라온 시점을 기준으로 앞뒤의 매출 자료를 확보해 두시기 바랍니다. 시간이 지나면 견주기 어려워집니다. 이 사건에서도 게시 직후의 매출 변동이 사건을 구성하는 중요한 자료가 됐습니다.


플랫폼에 삭제를 요청했는데 안 지워집니다.
요청만으로 정리되지 않는 경우가 많습니다. 작성자가 버티거나 비슷한 글을 다시 올리면 같은 일이 반복되기 때문입니다. 누가 썼는지 확인하고 어떤 책임을 물을 수 있는지까지 함께 봐야 사건이 닫힙니다.


처벌보다 글을 내리는 것이 급한데 방법이 있나요?
합의 과정에서 게시글 삭제와 재발 방지를 조건으로 담을 수 있습니다. 이 사건에서도 합의를 통해 문제된 글까지 함께 정리하며 마무리했습니다.




함께 보면 좋은 글

네이버TV 악플 고소, 가해자 6명을 특정해 처분까지 받아낸 사례
디시인사이드 허위사실 악플, 브랜드 게시글 22건 삭제한 대응 사례
브랜드 악플 확산 차단, 주간 모니터링 체계로 관리한 기업 대응 사례




글과 매출 자료를 함께 살펴 드립니다
허위 리뷰나 악성 게시글로 영업에 지장을 받고 계시다면 게시글 원문과 게시 시점, 전후 매출 자료를 준비해 문의해 주세요.명예훼손 외에 함께 물을 수 있는 책임이 있는지 기록부터 검토해 드립니다.

카카오톡 상담
070-8098-0421
홈페이지 상담 신청

모든 상담 내용은 비밀이 보장됩니다



관련 법령: 형법상 업무방해 규정 (국가법령정보센터, 작성일 기준)
뉴로이어 법률사무소 · 서울 서초구 강남대로 525 세영제이타워 11층(06536) · 사업자등록번호 588-14-01388 · [email protected]


본 성공사례는 뉴로이어 법률사무소가 실제 수행한 사건을 바탕으로 작성됐으며, 의뢰인 보호를 위해 일부 사실관계를 조정했습니다. 개별 사건의 결과는 구체적 사정에 따라 달라질 수 있어, 본 글이 유사 사건에서 동일한 결과를 약속하는 것은 아닙니다.




{
"@context": "https://schema.org",
"@type": "Article",
"headline": "서비스를 쓴 적도 없는 사람들의 후기, 악플이 아니라 영업 공격으로 다뤄 끝낸 성공사례",
"description": "당근마켓에서 서비스를 제공하던 의뢰인에게 같은 업계 관계자로 보이는 허위 리뷰가 이어져 매출까지 흔들린 사건. 게시 시점과 영업 상황을 함께 놓아 명예훼손에 더해 업무방해와 모욕까지 구성해 고소하고, 합의로 게시글까지 정리한 뉴로이어 악성 리뷰 대응 성공사례입니다.",
"inLanguage": "ko",
"datePublished": "2026-08-12",
"dateModified": "2026-08-12",
"author": [
{
"@type": "Person",
"name": "김수열",
"jobTitle": "대표변호사",
"url": "https://newlawyer.co.kr/page/21_view?wr_id=1",
"image": "https://newlawyer.co.kr/data/file/member/thumb-238321632_UzWE7X3O_a622b2fa6778b002d58c2ddc7bdddb15cb53f084_460x460.jpg",
"knowsAbout": [
"명예훼손·모욕",
"온라인 리뷰 분쟁",
"업무방해",
"사이버범죄"
],
"alumniOf": {
"@type": "CollegeOrUniversity",
"name": "서울대학교 법학전문대학원"
},
"worksFor": {
"@type": "LegalService",
"name": "뉴로이어 법률사무소",
"url": "https://www.newlawyer.co.kr"
}
},
{
"@type": "Person",
"name": "오동현",
"jobTitle": "파트너변호사",
"url": "https://www.newlawyer.co.kr/page/21_view?wr_id=10",
"image": "https://www.newlawyer.co.kr/data/file/member/thumb-238321632_WqtGJiPz_afef4e1fb4bb9821d2e66a7897139c20dca081de_460x460.jpg",
"knowsAbout": [
"이커머스·공정거래",
"기업자문",
"명예훼손·모욕",
"온라인 영업 분쟁"
],
"alumniOf": {
"@type": "CollegeOrUniversity",
"name": "고려대학교 법학전문대학원"
},
"worksFor": {
"@type": "LegalService",
"name": "뉴로이어 법률사무소",
"url": "https://www.newlawyer.co.kr"
}
}
],
"publisher": {
"@type": "LegalService",
"name": "뉴로이어 법률사무소",
"url": "https://www.newlawyer.co.kr",
"address": {
"@type": "PostalAddress",
"streetAddress": "강남대로 525 세영제이타워 11층",
"addressLocality": "서초구",
"addressRegion": "서울",
"postalCode": "06536",
"addressCountry": "KR"
},
"telephone": "+82-70-8098-0421"
},
"mainEntityOfPage": {
"@type": "WebPage",
"@id": "https://www.newlawyer.co.kr/31/421"
},
"about": [
"당근마켓 리뷰 테러",
"당근마켓 악플",
"당근마켓 후기 명예훼손",
"허위사실 업무방해",
"경쟁업체 리뷰 조작",
"악성리뷰 고소"
]
}


{
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
{
"@type": "ListItem",
"position": 1,
"name": "홈",
"item": "https://www.newlawyer.co.kr"
},
{
"@type": "ListItem",
"position": 2,
"name": "성공사례",
"item": "https://www.newlawyer.co.kr/31"
},
{
"@type": "ListItem",
"position": 3,
"name": "명예훼손 · 모욕",
"item": "https://www.newlawyer.co.kr/31?sca=%EB%AA%85%EC%98%88%ED%9B%BC%EC%86%90+%C2%B7+%EB%AA%A8%EC%9A%95"
},
{
"@type": "ListItem",
"position": 4,
"name": "당근마켓 악성 리뷰 고소",
"item": "https://www.newlawyer.co.kr/31/421"
}
]
}


{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "경쟁업체가 악성 리뷰를 달았다면 어떻게 대응하나요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "실제 이용자가 아니라는 정황과 같은 업계 관계자라는 사정을 함께 정리해 두시기 바랍니다. 이 사건에서도 그런 정황이 있었고, 글의 내용과 영업 피해를 맞물려 명예훼손에 더해 업무방해까지 검토했습니다."
}
},
{
"@type": "Question",
"name": "후기를 이유로 고소가 가능한가요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "글 전체가 곧바로 문제되지는 않습니다. 어디가 사실을 드러낸 대목이고 그것이 실제와 어긋나는지부터 가려야 합니다. 평가에 머무는 표현이라도 수위에 따라 모욕으로 따로 다툴 여지가 있습니다."
}
},
{
"@type": "Question",
"name": "허위 리뷰로 업무방해까지 물을 수 있나요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "거짓을 퍼뜨리거나 속임수를 써서 남의 일을 가로막았다면 책임을 물을 수 있습니다. 장사가 실제로 멈추지 않았더라도 그럴 위험이 뚜렷했다면 다툴 여지가 생기므로, 글이 올라온 때와 그 무렵의 영업 사정을 나란히 봅니다."
}
},
{
"@type": "Question",
"name": "리뷰 때문에 매출이 떨어졌다면 무엇을 준비해야 하나요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "글이 올라온 시점을 기준으로 앞뒤의 매출 자료를 확보해 두시기 바랍니다. 시간이 지나면 견주기 어려워집니다. 이 사건에서도 게시 직후의 매출 변동이 사건을 구성하는 중요한 자료가 됐습니다."
}
},
{
"@type": "Question",
"name": "플랫폼에 삭제를 요청했는데 안 지워집니다.",
"acceptedAnswer": {
"@type": "Answer",
"text": "요청만으로 정리되지 않는 경우가 많습니다. 작성자가 버티거나 비슷한 글을 다시 올리면 같은 일이 반복되기 때문입니다. 누가 썼는지 확인하고 어떤 책임을 물을 수 있는지까지 함께 봐야 사건이 닫힙니다."
}
},
{
"@type": "Question",
"name": "처벌보다 글을 내리는 것이 급한데 방법이 있나요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "합의 과정에서 게시글 삭제와 재발 방지를 조건으로 담을 수 있습니다. 이 사건에서도 합의를 통해 문제된 글까지 함께 정리하며 마무리했습니다."
}
}
]
}


{
"@context": "https://schema.org",
"@type": "HowTo",
"name": "악성 리뷰 고소 대응 절차",
"description": "허위 리뷰로 영업 피해를 입었을 때 명예훼손과 업무방해까지 함께 구성하는 순서입니다.",
"step": [
{
"@type": "HowToStep",
"name": "문장별 성격의 분류",
"text": "사실을 드러낸 대목과 평가에 머무는 대목을 나눠 실제와 어긋나는 서술을 가려냅니다."
},
{
"@type": "HowToStep",
"name": "게시 시점과 영업 상황 대조",
"text": "리뷰가 올라온 날짜와 그 무렵의 매출 변동을 나란히 놓고 확인합니다."
},
{
"@type": "HowToStep",
"name": "업무방해 구성 판단",
"text": "글의 방향이 서비스 신뢰를 흔드는 쪽인지 살펴 업무방해 검토 여부를 정합니다."
},
{
"@type": "HowToStep",
"name": "구성요건에 맞춘 고소장 작성",
"text": "표현의 허위성, 지칭 대상, 노출 정도, 영업에 미친 영향을 자료와 맞춰 정리합니다."
},
{
"@type": "HowToStep",
"name": "모욕 성립 여부 별도 검토",
"text": "모욕으로 평가될 여지가 있는 표현을 따로 떼어 살핍니다."
}
]
}



:root {
--nl-navy: #1f4e79;
--nl-navy-2: #2e5a8a;
--nl-navy-3: #0f2e4d;
--nl-navy-soft: #5b7ea1;
--nl-ink: #222222;
--nl-soft: #444444;
--nl-mute: #767676;
--nl-line: #e5e7eb;
--nl-line-soft: #eef0f3;
--nl-bg-soft: #f5f7fa;
--nl-bg-card: #fafbfc;
--nl-accent: #c0392b;
--nl-bg: #ffffff;
}

.nl-wrap {
font-family: "Pretendard", "Pretendard Variable", -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", sans-serif;
color: var(--nl-ink);
line-height: 1.85;
font-size: clamp(15px, 1.05vw + 12px, 17px);
background: var(--nl-bg);
-webkit-text-size-adjust: 100%;
text-size-adjust: 100%;
word-break: keep-all;
overflow-wrap: anywhere;
max-width: 880px;
margin: 0 auto;
padding: clamp(20px, 4vw, 48px) clamp(16px, 3vw, 32px);
position: relative;
font-feature-settings: "ss01", "ss02";
letter-spacing: -0.005em;
}

.nl-wrap * { box-sizing: border-box; }

.nl-wrap a { color: var(--nl-navy); text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; }
.nl-wrap a:hover { color: var(--nl-navy-3); }

.nl-crumb {
font-size: 13px;
color: var(--nl-mute);
letter-spacing: 0.01em;
margin-bottom: 24px;
padding-bottom: 14px;
border-bottom: 1px solid var(--nl-line);
}
.nl-crumb ol { list-style: none; padding: 0; margin: 0; display: flex; flex-wrap: wrap; gap: 6px 10px; }
.nl-crumb li + li::before { content: "›"; margin-right: 10px; color: var(--nl-navy-soft); }
.nl-crumb a { color: var(--nl-mute); text-decoration: none; }
.nl-crumb a:hover { color: var(--nl-navy); }

.nl-tag {
display: inline-flex;
align-items: center;
gap: 8px;
font-size: 12px;
font-weight: 600;
letter-spacing: 0.12em;
color: #ffffff;
background: var(--nl-navy);
padding: 7px 16px;
border-radius: 2px;
}
.nl-tag::before {
content: "";
width: 6px; height: 6px;
border-radius: 50%;
background: #ffffff;
}

.nl-h1 {
font-weight: 800;
font-size: clamp(24px, 3.2vw + 12px, 38px);
line-height: 1.35;
color: var(--nl-navy-3);
margin: 16px 0 14px;
letter-spacing: -0.025em;
}
.nl-h1 .nl-h1-accent { color: var(--nl-navy); }

.nl-sub {
font-size: clamp(14px, 0.6vw + 12px, 16px);
color: var(--nl-soft);
margin: 0 0 28px;
line-height: 1.75;
font-weight: 400;
}

.nl-meta {
display: flex;
flex-wrap: wrap;
gap: 14px;
font-size: 13px;
color: var(--nl-mute);
padding: 12px 0;
border-top: 1px solid var(--nl-line);
border-bottom: 1px solid var(--nl-line);
margin-bottom: 36px;
}
.nl-meta span { display: inline-flex; align-items: center; gap: 6px; }
.nl-meta strong { color: var(--nl-navy); font-weight: 600; }

.nl-author {
display: grid;
grid-template-columns: auto 1fr;
gap: 18px;
align-items: center;
background: var(--nl-bg-soft);
border-left: 4px solid var(--nl-navy);
padding: 22px 24px;
margin: 0 0 36px;
border-radius: 2px;
}
.nl-author-badge {
width: 60px; height: 60px;
border-radius: 50%;
background: var(--nl-navy);
color: #fff;
display: flex; align-items: center; justify-content: center;
font-weight: 800;
font-size: 20px;
letter-spacing: 0.02em;
}
.nl-author-name { font-weight: 700; font-size: 16px; color: var(--nl-navy-3); margin: 0 0 4px; letter-spacing: -0.01em; }
.nl-author-role { font-size: 13px; color: var(--nl-soft); line-height: 1.65; margin: 0; }
.nl-author-role b { color: var(--nl-navy); font-weight: 600; }

.nl-summary {
background: var(--nl-bg-card);
border: 1px solid var(--nl-line);
border-radius: 4px;
padding: 28px 28px 24px;
margin: 0 0 40px;
position: relative;
}
.nl-summary::before {
content: "한눈에 보기";
position: absolute;
top: -12px; left: 24px;
background: var(--nl-navy);
color: #fff;
font-size: 11px;
letter-spacing: 0.16em;
font-weight: 600;
padding: 5px 14px;
border-radius: 2px;
}
.nl-summary dl {
display: grid;
grid-template-columns: 100px 1fr;
gap: 12px 20px;
margin: 4px 0 0;
font-size: 14.5px;
}
.nl-summary dt {
color: var(--nl-mute);
font-weight: 500;
border-right: 1px solid var(--nl-line);
padding-right: 20px;
line-height: 1.7;
}
.nl-summary dd { margin: 0; color: var(--nl-ink); line-height: 1.7; }
.nl-summary dd b { color: var(--nl-navy); font-weight: 700; }
.nl-summary dd .nl-win { color: var(--nl-navy); font-weight: 700; border-bottom: 2px solid var(--nl-navy); padding-bottom: 1px; }

.nl-lead {
background: var(--nl-bg-soft);
border-left: 4px solid var(--nl-navy);
padding: 22px 26px;
margin: 36px 0;
border-radius: 2px;
}
.nl-lead p { margin: 0; font-size: 16px; line-height: 1.85; color: var(--nl-ink); }
.nl-lead p + p { margin-top: 12px; }
.nl-lead strong { color: var(--nl-navy); font-weight: 700; }

.nl-h2 {
font-weight: 800;
font-size: clamp(20px, 1.5vw + 14px, 26px);
color: var(--nl-navy-3);
margin: 64px 0 22px;
padding-bottom: 14px;
border-bottom: 2px solid var(--nl-navy);
display: flex;
align-items: baseline;
gap: 14px;
letter-spacing: -0.025em;
}
.nl-h2 .nl-h2-no {
font-size: 13px;
color: var(--nl-navy-soft);
letter-spacing: 0.2em;
font-weight: 700;
}

.nl-h3 {
font-weight: 700;
font-size: clamp(17px, 0.7vw + 14px, 19px);
color: var(--nl-navy);
margin: 36px 0 14px;
padding-left: 14px;
border-left: 3px solid var(--nl-navy);
letter-spacing: -0.015em;
}

.nl-wrap p { margin: 14px 0; }

.nl-defn {
background: var(--nl-bg-card);
border: 1px solid var(--nl-line);
border-top: 3px solid var(--nl-navy);
padding: 18px 22px;
margin: 24px 0;
border-radius: 2px;
font-size: 15px;
}
.nl-defn dt {
font-size: 12px;
letter-spacing: 0.14em;
color: var(--nl-navy);
font-weight: 700;
margin-bottom: 8px;
}
.nl-defn dd { margin: 0; color: var(--nl-ink); line-height: 1.8; }
.nl-defn dd b { color: var(--nl-navy); font-weight: 700; }

.nl-statute {
background: var(--nl-bg-soft);
border: 1px solid var(--nl-line);
border-left: 4px solid var(--nl-navy);
padding: 22px 26px;
margin: 28px 0;
border-radius: 2px;
position: relative;
}
.nl-statute::before {
content: "법령";
position: absolute;
top: 16px; right: 20px;
font-size: 10px;
letter-spacing: 0.18em;
font-weight: 700;
color: #fff;
background: var(--nl-navy);
padding: 3px 9px;
border-radius: 2px;
}
.nl-statute .nl-statute-h {
font-weight: 800;
font-size: 16px;
color: var(--nl-navy-3);
margin: 0 0 12px;
padding-right: 60px;
letter-spacing: -0.015em;
}
.nl-statute ol { padding-left: 18px; margin: 8px 0 0; }
.nl-statute li { margin-bottom: 6px; line-height: 1.85; }
.nl-statute .nl-cite { display: block; margin-top: 14px; font-size: 12px; color: var(--nl-mute); }
.nl-statute .nl-cite a { color: var(--nl-navy); }

.nl-issues {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 14px;
margin: 28px 0;
}
.nl-issue {
background: #ffffff;
border: 1px solid var(--nl-line);
border-radius: 2px;
padding: 18px 20px;
position: relative;
overflow: hidden;
transition: border-color 0.2s;
}
.nl-issue:hover { border-color: var(--nl-navy); }
.nl-issue::before {
content: "";
position: absolute;
top: 0; left: 0;
width: 4px; height: 100%;
background: var(--nl-navy);
}
.nl-issue h4 {
font-size: 15px;
color: var(--nl-navy-3);
margin: 0 0 8px;
font-weight: 700;
letter-spacing: -0.015em;
}
.nl-issue p {
font-size: 13.5px;
color: var(--nl-soft);
margin: 0;
line-height: 1.7;
}

.nl-steps {
counter-reset: nlstep;
display: grid;
gap: 12px;
margin: 28px 0;
}
.nl-step {
display: grid;
grid-template-columns: 64px 1fr;
gap: 18px;
background: #ffffff;
border: 1px solid var(--nl-line);
border-left: 4px solid var(--nl-navy);
border-radius: 2px;
padding: 18px 22px;
align-items: start;
}
.nl-step::before {
counter-increment: nlstep;
content: "STEP " counter(nlstep);
font-size: 11px;
font-weight: 700;
color: var(--nl-navy);
background: var(--nl-bg-soft);
padding: 6px 10px;
border-radius: 2px;
letter-spacing: 0.08em;
text-align: center;
line-height: 1.4;
align-self: start;
white-space: nowrap;
}
.nl-step h4 {
font-size: 16px;
color: var(--nl-navy-3);
margin: 2px 0 6px;
font-weight: 700;
letter-spacing: -0.015em;
}
.nl-step p {
font-size: 14.5px;
color: var(--nl-soft);
margin: 0;
line-height: 1.75;
}

.nl-table {
width: 100%;
border-collapse: collapse;
margin: 28px 0;
font-size: 14px;
background: #fff;
border: 1px solid var(--nl-line);
border-radius: 2px;
overflow: hidden;
}
.nl-table th, .nl-table td {
padding: 14px 16px;
border-bottom: 1px solid var(--nl-line);
border-right: 1px solid var(--nl-line);
vertical-align: top;
line-height: 1.7;
}
.nl-table th:last-child, .nl-table td:last-child { border-right: none; }
.nl-table tr:last-child td { border-bottom: none; }
.nl-table thead th {
background: var(--nl-navy);
color: #fff;
font-weight: 600;
letter-spacing: 0.02em;
text-align: left;
font-size: 13.5px;
}
.nl-table tbody th {
background: var(--nl-bg-soft);
color: var(--nl-navy-3);
font-weight: 600;
text-align: left;
width: 28%;
}
.nl-table .nl-td-good { color: var(--nl-navy); font-weight: 700; }
.nl-table .nl-td-bad { color: var(--nl-accent); font-weight: 700; }

.nl-checklist {
background: var(--nl-bg-card);
border: 1px solid var(--nl-line);
border-radius: 2px;
padding: 24px 26px;
margin: 28px 0;
}
.nl-checklist h4 {
font-size: 16px;
color: var(--nl-navy-3);
margin: 0 0 14px;
padding-bottom: 12px;
border-bottom: 1px solid var(--nl-line);
font-weight: 700;
letter-spacing: -0.015em;
}
.nl-checklist ul { list-style: none; padding: 0; margin: 0; }
.nl-checklist li {
position: relative;
padding-left: 30px;
margin-bottom: 10px;
font-size: 14.5px;
color: var(--nl-ink);
line-height: 1.75;
}
.nl-checklist li::before {
content: "";
position: absolute;
left: 0; top: 5px;
width: 18px; height: 18px;
border: 2px solid var(--nl-navy);
border-radius: 2px;
background: #fff;
}
.nl-checklist li::after {
content: "";
position: absolute;
left: 4px; top: 8px;
width: 10px; height: 5px;
border-left: 2px solid var(--nl-navy);
border-bottom: 2px solid var(--nl-navy);
transform: rotate(-45deg);
}

.nl-caution {
background: var(--nl-bg-soft);
border-left: 4px solid var(--nl-navy);
padding: 18px 22px;
margin: 28px 0;
border-radius: 2px;
}
.nl-caution h4 {
font-size: 15px;
color: var(--nl-navy-3);
margin: 0 0 8px;
font-weight: 700;
letter-spacing: -0.015em;
}
.nl-caution h4::before { content: "⚠ "; color: var(--nl-navy); }
.nl-caution p { margin: 0; font-size: 14.5px; color: var(--nl-soft); line-height: 1.75; }

.nl-law {
background: var(--nl-bg-card);
border: 1px solid var(--nl-line);
border-radius: 2px;
padding: 24px 26px;
margin: 28px 0;
}
.nl-law h4 {
font-size: 15px;
color: var(--nl-navy-3);
margin: 0 0 12px;
padding-bottom: 12px;
border-bottom: 1px solid var(--nl-line);
font-weight: 700;
letter-spacing: -0.015em;
}
.nl-law dl { margin: 0; font-size: 14px; }
.nl-law dt { color: var(--nl-navy); font-weight: 700; margin-top: 12px; }
.nl-law dt:first-child { margin-top: 0; }
.nl-law dd { margin: 4px 0 0; color: var(--nl-soft); line-height: 1.75; }

.nl-quote {
border-left: 3px solid var(--nl-navy);
padding: 8px 22px;
margin: 28px 0;
color: var(--nl-soft);
font-size: 16px;
line-height: 1.85;
}
.nl-quote p { font-style: normal; }
.nl-quote cite { display: block; font-style: normal; font-size: 13px; color: var(--nl-mute); margin-top: 8px; }

.nl-faq {
margin: 40px 0;
border-top: 2px solid var(--nl-navy);
}
.nl-faq h2 { margin-top: 24px; }
.nl-faq details {
border-bottom: 1px solid var(--nl-line);
padding: 20px 4px;
}
.nl-faq summary {
font-size: 16px;
font-weight: 700;
color: var(--nl-navy-3);
cursor: pointer;
list-style: none;
display: flex;
align-items: flex-start;
gap: 12px;
line-height: 1.55;
padding-right: 30px;
position: relative;
letter-spacing: -0.015em;
}
.nl-faq summary::-webkit-details-marker { display: none; }
.nl-faq summary::before {
content: "Q";
flex-shrink: 0;
width: 26px; height: 26px;
background: var(--nl-navy);
color: #fff;
border-radius: 50%;
display: flex; align-items: center; justify-content: center;
font-size: 13px;
font-weight: 700;
}
.nl-faq summary::after {
content: "+";
position: absolute;
right: 0; top: 0;
font-size: 22px;
color: var(--nl-navy);
font-weight: 300;
transition: transform 0.25s;
line-height: 1;
}
.nl-faq details[open] summary::after { content: "−"; }
.nl-faq .nl-a {
margin-top: 14px;
padding-left: 38px;
font-size: 14.5px;
color: var(--nl-soft);
line-height: 1.85;
}
.nl-faq .nl-a::before {
content: "A. ";
font-weight: 800;
color: var(--nl-navy);
}

.nl-related {
background: var(--nl-bg-soft);
border: 1px solid var(--nl-line);
border-radius: 2px;
padding: 24px 26px;
margin: 32px 0;
}
.nl-related h4 {
font-size: 14px;
color: var(--nl-navy-3);
letter-spacing: 0.04em;
margin: 0 0 14px;
padding-bottom: 12px;
border-bottom: 1px solid var(--nl-line);
font-weight: 700;
}
.nl-related ul { list-style: none; padding: 0; margin: 0; }
.nl-related li {
font-size: 14px;
margin: 8px 0;
padding-left: 14px;
position: relative;
}
.nl-related li::before { content: "›"; position: absolute; left: 0; color: var(--nl-navy); font-weight: 700; }
.nl-related a { color: var(--nl-navy); text-decoration: none; }
.nl-related a:hover { text-decoration: underline; }

.nl-cta {
margin: 48px 0 24px;
background: var(--nl-navy);
color: #fff;
border-radius: 2px;
padding: 38px 32px;
text-align: center;
position: relative;
overflow: hidden;
}
.nl-cta::before {
content: "";
position: absolute;
top: 0; left: 0; right: 0;
height: 3px;
background: linear-gradient(90deg, var(--nl-navy-soft) 0%, #ffffff 100%);
}
.nl-cta-h {
font-size: clamp(20px, 1.5vw + 12px, 26px);
font-weight: 800;
margin: 0 0 8px;
position: relative;
letter-spacing: -0.025em;
}
.nl-cta-sub {
font-size: 14.5px;
color: #c5d1e0;
margin: 0 0 24px;
line-height: 1.7;
position: relative;
}
.nl-cta-buttons {
display: flex;
flex-wrap: wrap;
gap: 10px;
justify-content: center;
position: relative;
}
.nl-cta-buttons a {
display: inline-flex;
align-items: center;
gap: 8px;
font-size: 14.5px;
font-weight: 600;
padding: 14px 26px;
border-radius: 2px;
text-decoration: none;
transition: transform 0.2s, box-shadow 0.2s;
letter-spacing: 0.01em;
}
.nl-cta-buttons a:hover { transform: translateY(-2px); box-shadow: 0 6px 16px rgba(0,0,0,0.25); }
.nl-cta-kakao { background: #fee500; color: #181600; }
.nl-cta-tel { background: #ffffff; color: var(--nl-navy-3); }
.nl-cta-web { background: #ffffff; color: var(--nl-navy); border: 1.5px solid var(--nl-navy); font-weight: 700; }
.nl-cta-secret {
display: inline-flex;
align-items: center;
margin-top: 18px;
font-size: 12px;
color: #c5d1e0;
letter-spacing: 0.08em;
position: relative;
}

.nl-footer-cite {
margin-top: 40px;
padding-top: 24px;
border-top: 1px solid var(--nl-line);
font-size: 12px;
color: var(--nl-mute);
line-height: 1.8;
}
.nl-footer-cite h4 {
font-size: 12px;
letter-spacing: 0.08em;
color: var(--nl-navy);
margin: 0 0 10px;
font-weight: 700;
}
.nl-footer-cite ul { padding-left: 18px; margin: 0; }
.nl-footer-cite li { margin: 4px 0; }
.nl-footer-cite a { color: var(--nl-navy); }

.nl-disclaimer {
margin-top: 28px;
font-size: 12px;
color: var(--nl-mute);
line-height: 1.75;
padding: 14px 16px;
background: var(--nl-bg-soft);
border: 1px solid var(--nl-line);
border-radius: 2px;
}

@media (max-width: 640px) {
.nl-wrap { padding: 16px 14px; }
.nl-issues { grid-template-columns: 1fr; }
.nl-summary dl { grid-template-columns: 1fr; gap: 4px 0; }
.nl-summary dt { border-right: none; border-bottom: 1px solid var(--nl-line); padding: 0 0 4px; margin-bottom: 4px; }
.nl-author { grid-template-columns: 1fr; text-align: center; }
.nl-author-badge { margin: 0 auto; }
.nl-table thead { display: none; }
.nl-table tr { display: block; border-bottom: 2px solid var(--nl-navy); padding: 8px 0; }
.nl-table th, .nl-table td { display: block; border-right: none; padding: 8px 14px; }
.nl-table tbody th { width: 100%; }
.nl-step { grid-template-columns: 1fr; gap: 8px; }
.nl-step::before { justify-self: start; }
.nl-cta { padding: 28px 20px; }
.nl-cta-buttons a { width: 100%; justify-content: center; }
}

@media (max-width: 380px) {
.nl-wrap { padding: 14px 12px; font-size: 14.5px; }
.nl-h2 { flex-direction: column; gap: 4px; align-items: flex-start; }
.nl-h2 .nl-h2-no { font-size: 12px; }
.nl-statute, .nl-defn, .nl-checklist, .nl-related, .nl-law { padding: 16px 18px; }
}

/* ==========================================================================
[ADD-ON] 담당 변호인 카드 (nl-team) — 기존 스타일 수정 없이 추가된 블록
사용처: 성공사례 하단, CTA 상단. 1~2인 카드 배치.
========================================================================== */

.nl-team {
margin: 40px 0 36px;
}

.nl-team-h {
font-size: 15px;
font-weight: 700;
color: var(--nl-navy);
letter-spacing: -0.01em;
margin: 0 0 4px;
padding-left: 12px;
border-left: 3px solid var(--nl-navy);
line-height: 1.4;
}

.nl-team-sub {
font-size: 13.5px;
color: var(--nl-mute);
margin: 0 0 18px;
padding-left: 15px;
line-height: 1.7;
}

.nl-team-grid {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 16px;
}

.nl-card {
display: grid;
grid-template-columns: 84px minmax(0, 1fr);
gap: 16px;
background: var(--nl-bg-card);
border: 1px solid var(--nl-line);
border-top: 3px solid var(--nl-navy);
border-radius: 2px;
padding: 20px 18px;
align-items: start;
}

.nl-card-photo {
width: 84px;
height: 84px;
border-radius: 2px;
overflow: hidden;
background: var(--nl-bg-soft);
border: 1px solid var(--nl-line);
}

.nl-card-photo img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
}

.nl-card-role {
display: inline-block;
font-size: 10.5px;
font-weight: 700;
letter-spacing: 0.08em;
text-transform: uppercase;
color: var(--nl-navy-soft);
margin: 0 0 4px;
line-height: 1.3;
}

.nl-card-name {
font-size: 16.5px;
font-weight: 800;
color: var(--nl-ink);
letter-spacing: -0.02em;
margin: 0 0 8px;
line-height: 1.35;
}

.nl-card-name a {
color: var(--nl-ink);
text-decoration: none;
}
.nl-card-name a:hover {
color: var(--nl-navy);
text-decoration: underline;
text-underline-offset: 3px;
}

.nl-card-tags {
display: flex;
flex-wrap: wrap;
gap: 5px;
margin: 0 0 10px;
padding: 0;
list-style: none;
}

.nl-card-tags li {
font-size: 11.5px;
color: var(--nl-navy);
background: rgba(31, 78, 121, 0.07);
border-radius: 2px;
padding: 2px 7px;
line-height: 1.6;
letter-spacing: -0.01em;
}

.nl-card-desc {
font-size: 13.5px;
color: var(--nl-soft);
line-height: 1.75;
margin: 0 0 10px;
letter-spacing: -0.01em;
}

.nl-card-list {
margin: 0;
padding: 0;
list-style: none;
border-top: 1px solid var(--nl-line-soft);
padding-top: 9px;
}

.nl-card-list li {
font-size: 12.5px;
color: var(--nl-mute);
line-height: 1.7;
padding-left: 10px;
position: relative;
letter-spacing: -0.01em;
}

.nl-card-list li::before {
content: "";
position: absolute;
left: 0;
top: 9px;
width: 3px;
height: 3px;
border-radius: 50%;
background: var(--nl-navy-soft);
}

.nl-card-list li b {
color: var(--nl-soft);
font-weight: 700;
}

.nl-card-link {
display: inline-block;
font-size: 12.5px;
color: var(--nl-navy);
margin-top: 10px;
text-decoration: none;
border-bottom: 1px solid var(--nl-line);
padding-bottom: 1px;
}
.nl-card-link:hover {
border-bottom-color: var(--nl-navy);
}

@media (max-width: 760px) {
.nl-team-grid { grid-template-columns: 1fr; gap: 14px; }
}

@media (max-width: 480px) {
.nl-card {
grid-template-columns: 64px minmax(0, 1fr);
gap: 13px;
padding: 17px 15px;
}
.nl-card-photo { width: 64px; height: 64px; }
.nl-card-name { font-size: 15.5px; }
.nl-card-desc { font-size: 13px; }
}

/* [ADD-ON] 1인 카드일 때 전체 폭 사용 */
.nl-team-grid:has(> .nl-card:only-child) {
grid-template-columns: minmax(0, 1fr);
}
.nl-team-grid > .nl-card:only-child {
grid-template-columns: 110px minmax(0, 1fr);
gap: 20px;
padding: 22px 20px;
}
.nl-team-grid > .nl-card:only-child .nl-card-photo {
width: 110px;
height: 110px;
}
@media (max-width: 480px) {
.nl-team-grid > .nl-card:only-child {
grid-template-columns: 64px minmax(0, 1fr);
gap: 13px;
padding: 17px 15px;
}
.nl-team-grid > .nl-card:only-child .nl-card-photo {
width: 64px;
height: 64px;
}
}

2026.09.03

공갈미수 불송치

아파트 허위 분양광고 및 건축물 하자로 인한 공갈미수 피의자변호 성공사례

아파트 허위분양광고 하자 손해배상 공갈미수 성공사례 | 경찰 단계 혐의없음 불송치





성공사례
부동산 · 특수분야
공갈미수 혐의없음 불송치




공갈미수 · 혐의없음 불송치
하자를 따졌더니 돌아온 것은 고소장,대형 시행사 상대로 혐의없음을 받아낸 사례
답변 없는 내용증명이 쌓이다 SNS에 글을 올리자 그제야 합의 이야기가 나왔고, 협상이 틀어지자 고소가 들어왔습니다. 소비자의 항의와 공갈의 경계를 법리로 갈라 경찰 단계에서 사건을 닫은 과정입니다.

카테고리 부동산 · 형사변호
결과 혐의없음 불송치 · 경찰 단계 종결
쟁점 불법영득의사 · 권리행사의 범위
작성일 2026. 8.





의뢰인
분양광고를 보고 아파트 분양권을 매수했다가 하자를 발견하고 문제를 제기한 매수인
사건 발단
사전점검에서 다수의 건축물 하자를 확인했으나 담당자들이 책임을 미루고 여러 차례 보낸 내용증명에도 답변이 없던 상황
고소에 이르기까지
SNS에 문제를 제기하자 상대가 합의를 제안했고, 협상 도중 말을 바꾸며 연락을 피하더니 허위사실로 거액을 요구한다며 고소
대응 전략
불법영득의사와 협박 행위라는 성립요건을 나눠 반박하고, 금전 언급을 먼저 꺼낸 쪽과 양측의 규모 차이를 함께 제시
결과
공갈미수 혐의없음 불송치 — 경찰 단계에서 종결




큰돈을 들여 산 집에서 하자를 발견하면 시행사에 책임을 묻는 것이 당연한 권리입니다. 그런데 상대가 책임을 인정하지 않고 담당자마저 연락을 피하기 시작하면 이야기가 달라집니다. 정상적인 소통 창구가 사라진 자리에서 매수인은 속만 태우게 됩니다.
이번에 전할 사건은 그 상황에서 한 걸음 더 나아간 경우입니다. 하자에 대한 배상을 요구하던 의뢰인이 오히려 공갈미수로 고소를 당했고, 저희는 경찰 단계에서 혐의없음을 받아냈습니다.
이런 사건은 상대가 문제 삼은 대화만 잘라 놓고 보면 위험해 보일 수 있습니다. 그러나 전체 흐름과 경위를 펼쳐 정리하면 사안에 따라 다툴 여지가 충분히 남아 있습니다. 뉴로이어 법률사무소가 어떤 논리로 대응했는지 순서대로 말씀드리겠습니다.


01사건 개요 — 답장 없는 내용증명이 쌓여 갔습니다

의뢰인은 분양광고를 보고 아파트 분양권을 사들이셨습니다. 그런데 사전점검 안내를 받고 현장에 가 보시고는 말을 잇지 못하셨습니다. 상대가 내세우던 홍보 문구와 달리 하자가 곳곳에서 나왔고, 설계 단계에서부터 문제가 있어 보이는 수준이었기 때문입니다.

의뢰인은 이를 바로잡고자 담당자들을 찾아갔습니다. 그러나 담당자들은 서로에게 책임을 넘겼고, 여러 차례 보낸 내용증명에는 한 번도 답이 오지 않았습니다. 다시 항의해 봐도 제대로 된 응대를 받을 수 없었고 대화가 오갈 창구 자체가 없는 상태였습니다.

결국 의뢰인이 SNS에 이 문제를 알리는 글을 올리자 그제야 상대 쪽에서 합의하자는 연락이 왔습니다. 그렇게 협상이 시작됐는데, 도중에 고소인이 갑자기 말을 바꾸며 책임을 피하고 합의를 미뤘습니다. 그러더니 연락마저 끊은 상태에서 의뢰인이 허위사실을 내세워 거액을 요구한다며 고소장을 냈습니다.

사실관계가 복잡하게 얽힌 사건이라 의뢰인은 이 분야를 다루는 변호사를 찾아 저희에게 연락을 주셨습니다.


항의와 공갈을 가르는 선
피해를 입은 사람이 배상을 요구하고 문제를 알리는 것은 권리행사입니다. 그런데 그 과정에서 금액이 오가고 언론 제보나 게시글 같은 수단이 등장하면 상대가 이를 협박으로 몰아가는 일이 생깁니다. 갈리는 지점은 요구 자체가 아니라, 그것이 사회통념상 허용되는 범위 안에 있었는지와 부당하게 이익을 취하려는 의사가 있었는지입니다.




불법영득의사
돈 자체를 노린 것이 아니라는 점을 무엇으로 보일 것인가.


협박 행위의 유무
문제 제기 방식이 의사결정의 자유를 제한할 정도였는지의 판단.


사회통념상 허용 범위
개인이 기업을 상대로 한 항의를 어느 선까지 정당하게 볼 것인가.


금전 언급의 출처
합의와 배상 이야기를 먼저 꺼낸 쪽이 누구였는지를 어떻게 밝힐 것인가.


고소의 의도
책임을 피하려는 수단으로 형사절차가 쓰였을 가능성을 어떻게 전할 것인가.


맥락의 복원
잘라 놓으면 위험해 보이는 대화를 전체 흐름 안에 어떻게 놓을 것인가.



02문제 해결 — 요건을 나눠 하나씩 무너뜨렸습니다

저희는 상대의 주장을 뜯어보며 대응 방향을 잡았습니다. 고소인은 언론 제보나 게시글 같은 행위를 문제 삼고 있었는데, 이 죄명의 성립요건에 비추어 보면 그 주장에는 빈틈이 있었습니다. 그 허점을 법리로 어떻게 짚느냐가 이 사건의 갈림길이 되리라고 봤습니다.




성립요건의 분해
이 죄가 인정되려면 재물이나 재산상 이익을 부당하게 취하려는 의사가 있어야 하고, 상대의 의사결정 자유를 제한할 만한 해악을 알리는 행위가 있어야 합니다. 두 요건을 갈라 놓고 각각 따져 나갔습니다.




권리행사임을 밝힘
의뢰인이 광고와 다른 하자를 문제 삼은 것은 피해를 본 소비자가 자신의 권리를 행사한 것에 지나지 않는다는 점을 분명히 했습니다.




목적이 금전이 아니었음을 논증
의뢰인이 중시한 것은 사과와 책임 인정이었고, 금전은 무너진 권리를 되돌리고 분쟁을 끝내기 위한 조건이었다는 점을 짚었습니다. 이는 부당하게 이익을 취하려는 의사로 볼 수 없다는 주장이었습니다.




양측 규모의 대비
이 죄명은 상대가 그 행위를 어떻게 받아들였는지가 쟁점이 되는 만큼, 의뢰인의 행동이 사회통념을 벗어나지 않았음을 보여야 했습니다. 상대는 대응 역량을 충분히 갖춘 회사인 반면 의뢰인은 별다른 지위나 영향력이 없는 개인이라는 점을 짚어, 그 행위가 허용되는 범위 안에 있었다고 소명했습니다.




금전 언급의 출처 제시
배상과 합의를 먼저 꺼낸 쪽이 시행사였다는 점을 밝혀 고소인 주장의 신빙성을 흔들었습니다. 나아가 고소인들이 책임을 피하려고 형사고소라는 수단을 택했을 가능성까지 언급하며, 수사기관이 그 점을 살펴볼 수 있도록 구체적인 정황을 함께 냈습니다.





이 사건 변호의 무게중심
상대가 잘라 낸 대화 한 토막만 놓고 보면 위험해 보이는 사건이었습니다. 그래서 저희가 한 일은 그 토막을 원래 자리에 되돌려 놓는 것이었습니다. 답 없는 내용증명이 쌓이던 시간, 게시글 뒤에야 온 연락, 협상 중에 뒤집힌 말까지 순서대로 펼쳐 놓으면 누가 무엇을 하고 있었는지가 저절로 드러납니다.



주의해야 할 점
배상을 요구하실 때는 그 과정이 기록으로 남게 하시는 편이 안전합니다. 내용증명과 회신 여부, 협상 과정에서 오간 연락은 나중에 누가 무엇을 먼저 제안했는지를 보여 주는 자료가 됩니다. 다만 요구의 표현이 지나치거나 공개를 무기처럼 앞세우면 다른 평가를 받을 수 있으니, 대응 방식은 미리 검토해 보시는 편이 좋습니다.


03최종 결과 — 혐의없음 불송치

경찰은 저희가 낸 의견과 협의 과정의 자료를 살펴본 뒤 의뢰인의 혐의에 대해 불송치를 결정했습니다. 당연한 결론처럼 보일 수도 있지만, 상대가 규모 있는 시행사인 데다 사실관계가 복잡하게 얽혀 자칫 오해를 부를 수 있는 사건이었습니다.

저희는 전체 흐름을 샅샅이 훑어 의견서로 묶어 냈습니다. 그 과정에서 수십 장에 이르는 자료를 정리하고 관련 법리와 판례를 찾아 인용하며 치열하게 다퉜습니다. 무혐의 결정이 나오자 의뢰인도 크게 기뻐하셨고, 저희로서도 큰 상대를 앞에 두고 온전한 결과를 이끌어냈다는 점에서 의미가 남았습니다.


"잘라 낸 대화 한 토막은 무엇이든 될 수 있습니다. 그 토막을 원래 자리에 돌려놓는 것이 이 사건의 변론이었습니다."
— 뉴로이어 법률사무소


이처럼 억울한 사건이라도 혐의를 벗기까지는 적지 않은 품이 듭니다. 비슷한 상황에서 혼자 판단해 움직이기보다 검토를 받아 보시는 편이 안전한 이유입니다. 특히 상대가 형사고소를 꺼내 들면 배상을 요구하던 쪽이 오히려 방어에 몰리게 되므로, 그 시점에는 대응의 순서부터 다시 잡아야 합니다.

저희는 분양과 하자를 둘러싼 분쟁과 그 과정에서 불거지는 형사 문제를 함께 다루고 있습니다. 하자에 대한 책임을 묻다 고소를 당하셨거나 상대가 형사절차로 압박해 오는 상황이라면, 그동안 오간 연락과 고소장을 가지고 연락 주시기 바랍니다. 지금 상황을 현실적으로 진단해 드리고 대응이 필요하다면 함께 방향을 잡겠습니다.


하자 배상을 요구하다 고소를 당했을 때 점검 포인트

하자를 발견한 시점과 내용을 사진·점검표로 확보했는가
내용증명 발송 내역과 상대의 회신 여부를 정리했는가
합의나 배상을 먼저 꺼낸 쪽이 누구였는지 기록으로 남아 있는가
협상 과정에서 오간 연락을 시간순으로 갈무리했는가
공개적으로 문제를 제기한 경위와 그 앞뒤 상황을 설명할 수 있는가
상대가 문제 삼는 대화가 어떤 맥락에 놓여 있었는지 복원했는가




관련 개념 정리

공갈죄의 성립요건
재물이나 재산상 이익을 부당하게 취하려는 의사가 있어야 하고, 상대의 의사결정 자유를 제한할 만한 해악을 알리는 행위가 함께 인정되어야 합니다. 두 요건 중 하나라도 채워지지 않으면 성립을 다툴 수 있습니다.
불법영득의사
부당하게 이익을 챙기려는 의사를 말합니다. 요구의 목적이 사과와 책임 인정에 있었고 금전이 분쟁을 끝내기 위한 조건이었다면 이 의사를 인정하기 어렵다고 다툴 수 있습니다.
사회통념상 허용되는 범위
같은 행위라도 당사자들의 처지에 따라 평가가 달라질 수 있습니다. 대응 역량을 갖춘 기업과 개인 사이의 차이는 그 행위가 허용 범위 안에 있었는지를 판단할 때 함께 고려됩니다.
불송치
수사기관이 사건을 검찰로 넘기지 않기로 하는 결정입니다. 재판으로 넘어가기 전 단계에서 사건이 정리된다는 점에서 부담의 차이가 큽니다.




이 사건을 담당한 변호인
형사 방어와 하자 분쟁의 맥락을 함께 읽어야 하는 사건이었습니다. 이 사건은 두 변호사가 나눠 수행했습니다.







CEO Lawyer
김수열 대표변호사

#협박·스토킹#명예훼손·모욕#사이버범죄

서울대학교 심리학과를 거쳐 서울대학교 법학전문대학원을 졸업했고, 법무법인 율촌을 거쳐 뉴로이어 법률사무소를 이끌고 있는 대한변호사협회 인증 형사전문변호사입니다. 권리행사와 협박의 경계가 쟁점이 되는 사건을 다수 수행해 왔습니다.

서울대 총학생회장 명예훼손 사건 대법원 파기환송 승소
언론사 가짜뉴스 명예훼손·업무방해 고소대리
방송 출연자·인플루언서 악성댓글 집단 고소 성공 수행

프로필 자세히 보기 →








Partner Lawyer
김민지 파트너변호사

#의료·상해#개인정보·정통망법#투자사기 집단소송

한의사 출신으로 고려대학교 법학전문대학원을 최우등 졸업한 뒤 국내 5대 대형로펌에서 근무했습니다. 법무법인 율촌·한누리를 거쳐 뉴로이어에 합류했으며, 자료 분석과 서면 구성이 필요한 분쟁을 폭넓게 수행합니다.

의사·약사의 의료법, 약사법 위반 불기소 처분 도출
의료기관 영업정지 처분 집행정지 가처분 인용
병의원 광고 관련 의료법·표시광고법 위반 검토 자문

프로필 자세히 보기 →







FAQ하자 배상 요구와 공갈미수, 자주 묻는 질문

하자에 대한 배상을 요구했는데 공갈로 고소당할 수도 있나요?
있습니다. 다만 요구했다는 사실만으로 성립하지는 않습니다. 부당하게 이익을 취하려는 의사가 있었는지, 상대의 의사결정 자유를 제한할 만한 해악을 알리는 행위가 있었는지가 함께 검토됩니다. 이 사건에서도 두 요건을 나눠 다퉈 혐의를 벗었습니다.


SNS에 문제를 올린 것이 협박으로 평가되나요?
공개적으로 문제를 제기했다는 사정만으로 곧바로 그렇게 보기는 어렵습니다. 그 행위가 사회통념상 허용되는 범위 안에 있었는지가 관건이며, 당사자들의 처지와 그동안의 경위가 함께 고려됩니다. 이 사건에서는 답변 없는 내용증명이 거듭된 뒤의 일이라는 점이 중요하게 작용했습니다.


합의금을 요구하면 불법영득의사가 인정되나요?
금액을 이야기했다는 사실만으로 정해지지는 않습니다. 요구의 목적이 어디에 있었는지가 함께 검토됩니다. 이 사건에서는 사과와 책임 인정이 중심이었고 금전은 분쟁을 끝내기 위한 조건이었다는 점을 밝혔습니다.


상대가 먼저 합의를 제안했다면 도움이 되나요?
됩니다. 배상이나 합의를 먼저 꺼낸 쪽이 상대였다면 고소인 주장의 신빙성을 다투는 근거가 됩니다. 협상 과정에서 오간 연락을 시간순으로 정리해 두시기 바랍니다.


대화 일부만 문제 삼는데 어떻게 대응하나요?
잘라 낸 부분만 보면 다르게 읽히기 마련입니다. 그 대화가 어떤 흐름 속에 있었는지를 복원해 보여 주는 작업이 필요합니다. 이 사건에서도 앞뒤 경위를 순서대로 펼쳐 놓는 것이 방어의 핵심이었습니다.


고소가 압박 수단으로 쓰인 것 같다면요?
그 정황을 구체적으로 정리해 수사기관에 전달할 수 있습니다. 이 사건에서도 상대가 책임을 피하려는 수단으로 형사절차를 택했을 가능성을 뒷받침하는 사정을 함께 제시했습니다.




함께 보면 좋은 글

통매음 합의금 요구, 내용증명 한 통으로 철회시킨 방어 사례
차임 연체 계약해지, 임차인 항변을 배척하고 건물인도를 받아낸 사례
부동산·특수분야 성공사례 더 보기




권리를 주장하다 몰리셨다면 순서부터 다시 잡아야 합니다
하자에 대한 책임을 묻다 고소를 당하셨거나 상대가 형사절차로 압박해 오고 있다면 그동안 오간 연락과 고소장을 준비해 문의해 주세요.지금 상황을 진단하고 대응 방향을 함께 잡아 드립니다.

카카오톡 상담
070-8098-0421
홈페이지 상담 신청

모든 상담 내용은 비밀이 보장됩니다



뉴로이어 법률사무소 · 서울 서초구 강남대로 525 세영제이타워 11층(06536) · 사업자등록번호 588-14-01388 · [email protected]


본 성공사례는 뉴로이어 법률사무소가 실제 수행한 사건을 바탕으로 작성됐으며, 의뢰인 보호를 위해 일부 사실관계를 조정했습니다. 개별 사건의 결과는 구체적 사정에 따라 달라질 수 있어, 본 글이 유사 사건에서 동일한 결과를 약속하는 것은 아닙니다.




{
"@context": "https://schema.org",
"@type": "Article",
"headline": "하자를 따졌더니 돌아온 것은 고소장, 대형 시행사 상대로 혐의없음을 받아낸 성공사례",
"description": "아파트 하자에 대한 손해배상을 요구하다 시행사로부터 공갈미수로 고소당한 사건. 불법영득의사와 협박 행위라는 성립요건을 나눠 반박하고 금전 언급의 출처와 양측 규모 차이를 제시해 경찰 단계에서 혐의없음 불송치를 받아낸 뉴로이어 형사변호 성공사례입니다.",
"inLanguage": "ko",
"datePublished": "2026-08-12",
"dateModified": "2026-08-12",
"author": [
{
"@type": "Person",
"name": "김수열",
"jobTitle": "대표변호사",
"url": "https://newlawyer.co.kr/page/21_view?wr_id=1",
"image": "https://newlawyer.co.kr/data/file/member/thumb-238321632_UzWE7X3O_a622b2fa6778b002d58c2ddc7bdddb15cb53f084_460x460.jpg",
"knowsAbout": [
"협박·스토킹",
"공갈죄",
"명예훼손·모욕",
"사이버범죄"
],
"alumniOf": {
"@type": "CollegeOrUniversity",
"name": "서울대학교 법학전문대학원"
},
"worksFor": {
"@type": "LegalService",
"name": "뉴로이어 법률사무소",
"url": "https://www.newlawyer.co.kr"
}
},
{
"@type": "Person",
"name": "김민지",
"jobTitle": "파트너변호사",
"url": "https://www.newlawyer.co.kr/page/21_view?wr_id=21",
"image": "https://www.newlawyer.co.kr/data/file/member/thumb-32451057_pUKBOLlA_faab429dd6fd63ff0422ae04f8a9381181ee5f50_460x460.png",
"knowsAbout": [
"민사 분쟁",
"의료·상해",
"개인정보·정통망법",
"투자사기 집단소송"
],
"alumniOf": {
"@type": "CollegeOrUniversity",
"name": "고려대학교 법학전문대학원"
},
"worksFor": {
"@type": "LegalService",
"name": "뉴로이어 법률사무소",
"url": "https://www.newlawyer.co.kr"
}
}
],
"publisher": {
"@type": "LegalService",
"name": "뉴로이어 법률사무소",
"url": "https://www.newlawyer.co.kr",
"address": {
"@type": "PostalAddress",
"streetAddress": "강남대로 525 세영제이타워 11층",
"addressLocality": "서초구",
"addressRegion": "서울",
"postalCode": "06536",
"addressCountry": "KR"
},
"telephone": "+82-70-8098-0421"
},
"mainEntityOfPage": {
"@type": "WebPage",
"@id": "https://www.newlawyer.co.kr/31/420"
},
"about": [
"아파트 허위분양광고 손해배상",
"건축물 하자 손해배상",
"손해배상 공갈미수",
"불법영득의사",
"정당한 권리행사",
"혐의없음 불송치"
]
}


{
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
{
"@type": "ListItem",
"position": 1,
"name": "홈",
"item": "https://www.newlawyer.co.kr"
},
{
"@type": "ListItem",
"position": 2,
"name": "성공사례",
"item": "https://www.newlawyer.co.kr/31"
},
{
"@type": "ListItem",
"position": 3,
"name": "부동산 · 특수분야",
"item": "https://www.newlawyer.co.kr/33"
},
{
"@type": "ListItem",
"position": 4,
"name": "공갈미수 혐의없음 불송치",
"item": "https://www.newlawyer.co.kr/31/420"
}
]
}


{
"@context": "https://schema.org",
"@type": "FAQPage",
"mainEntity": [
{
"@type": "Question",
"name": "하자에 대한 배상을 요구했는데 공갈로 고소당할 수도 있나요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "있습니다. 다만 요구했다는 사실만으로 성립하지는 않습니다. 부당하게 이익을 취하려는 의사가 있었는지, 상대의 의사결정 자유를 제한할 만한 해악을 알리는 행위가 있었는지가 함께 검토됩니다. 이 사건에서도 두 요건을 나눠 다퉈 혐의를 벗었습니다."
}
},
{
"@type": "Question",
"name": "SNS에 문제를 올린 것이 협박으로 평가되나요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "공개적으로 문제를 제기했다는 사정만으로 곧바로 그렇게 보기는 어렵습니다. 그 행위가 사회통념상 허용되는 범위 안에 있었는지가 관건이며, 당사자들의 처지와 그동안의 경위가 함께 고려됩니다. 이 사건에서는 답변 없는 내용증명이 거듭된 뒤의 일이라는 점이 중요하게 작용했습니다."
}
},
{
"@type": "Question",
"name": "합의금을 요구하면 불법영득의사가 인정되나요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "금액을 이야기했다는 사실만으로 정해지지는 않습니다. 요구의 목적이 어디에 있었는지가 함께 검토됩니다. 이 사건에서는 사과와 책임 인정이 중심이었고 금전은 분쟁을 끝내기 위한 조건이었다는 점을 밝혔습니다."
}
},
{
"@type": "Question",
"name": "상대가 먼저 합의를 제안했다면 도움이 되나요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "됩니다. 배상이나 합의를 먼저 꺼낸 쪽이 상대였다면 고소인 주장의 신빙성을 다투는 근거가 됩니다. 협상 과정에서 오간 연락을 시간순으로 정리해 두시기 바랍니다."
}
},
{
"@type": "Question",
"name": "대화 일부만 문제 삼는데 어떻게 대응하나요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "잘라 낸 부분만 보면 다르게 읽히기 마련입니다. 그 대화가 어떤 흐름 속에 있었는지를 복원해 보여 주는 작업이 필요합니다. 이 사건에서도 앞뒤 경위를 순서대로 펼쳐 놓는 것이 방어의 핵심이었습니다."
}
},
{
"@type": "Question",
"name": "고소가 압박 수단으로 쓰인 것 같다면요?",
"acceptedAnswer": {
"@type": "Answer",
"text": "그 정황을 구체적으로 정리해 수사기관에 전달할 수 있습니다. 이 사건에서도 상대가 책임을 피하려는 수단으로 형사절차를 택했을 가능성을 뒷받침하는 사정을 함께 제시했습니다."
}
}
]
}


{
"@context": "https://schema.org",
"@type": "HowTo",
"name": "권리행사 중 공갈 고소를 당했을 때 대응 절차",
"description": "하자 배상을 요구하다 공갈미수로 고소당한 경우 혐의를 다투는 순서입니다.",
"step": [
{
"@type": "HowToStep",
"name": "성립요건의 분해",
"text": "부당한 이익 취득 의사와 협박 행위라는 두 요건을 갈라 각각 검토합니다."
},
{
"@type": "HowToStep",
"name": "권리행사임을 밝힘",
"text": "광고와 다른 하자를 문제 삼은 것이 소비자의 권리행사임을 분명히 합니다."
},
{
"@type": "HowToStep",
"name": "목적의 논증",
"text": "사과와 책임 인정이 중심이었고 금전은 분쟁 종결의 조건이었음을 짚습니다."
},
{
"@type": "HowToStep",
"name": "양측 규모의 대비",
"text": "기업과 개인의 처지 차이를 들어 행위가 허용 범위 안에 있었음을 소명합니다."
},
{
"@type": "HowToStep",
"name": "금전 언급의 출처 제시",
"text": "합의를 먼저 꺼낸 쪽을 밝히고 고소가 압박 수단이었을 가능성을 함께 냅니다."
}
]
}



:root {
--nl-navy: #1f4e79;
--nl-navy-2: #2e5a8a;
--nl-navy-3: #0f2e4d;
--nl-navy-soft: #5b7ea1;
--nl-ink: #222222;
--nl-soft: #444444;
--nl-mute: #767676;
--nl-line: #e5e7eb;
--nl-line-soft: #eef0f3;
--nl-bg-soft: #f5f7fa;
--nl-bg-card: #fafbfc;
--nl-accent: #c0392b;
--nl-bg: #ffffff;
}

.nl-wrap {
font-family: "Pretendard", "Pretendard Variable", -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", sans-serif;
color: var(--nl-ink);
line-height: 1.85;
font-size: clamp(15px, 1.05vw + 12px, 17px);
background: var(--nl-bg);
-webkit-text-size-adjust: 100%;
text-size-adjust: 100%;
word-break: keep-all;
overflow-wrap: anywhere;
max-width: 880px;
margin: 0 auto;
padding: clamp(20px, 4vw, 48px) clamp(16px, 3vw, 32px);
position: relative;
font-feature-settings: "ss01", "ss02";
letter-spacing: -0.005em;
}

.nl-wrap * { box-sizing: border-box; }

.nl-wrap a { color: var(--nl-navy); text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; }
.nl-wrap a:hover { color: var(--nl-navy-3); }

.nl-crumb {
font-size: 13px;
color: var(--nl-mute);
letter-spacing: 0.01em;
margin-bottom: 24px;
padding-bottom: 14px;
border-bottom: 1px solid var(--nl-line);
}
.nl-crumb ol { list-style: none; padding: 0; margin: 0; display: flex; flex-wrap: wrap; gap: 6px 10px; }
.nl-crumb li + li::before { content: "›"; margin-right: 10px; color: var(--nl-navy-soft); }
.nl-crumb a { color: var(--nl-mute); text-decoration: none; }
.nl-crumb a:hover { color: var(--nl-navy); }

.nl-tag {
display: inline-flex;
align-items: center;
gap: 8px;
font-size: 12px;
font-weight: 600;
letter-spacing: 0.12em;
color: #ffffff;
background: var(--nl-navy);
padding: 7px 16px;
border-radius: 2px;
}
.nl-tag::before {
content: "";
width: 6px; height: 6px;
border-radius: 50%;
background: #ffffff;
}

.nl-h1 {
font-weight: 800;
font-size: clamp(24px, 3.2vw + 12px, 38px);
line-height: 1.35;
color: var(--nl-navy-3);
margin: 16px 0 14px;
letter-spacing: -0.025em;
}
.nl-h1 .nl-h1-accent { color: var(--nl-navy); }

.nl-sub {
font-size: clamp(14px, 0.6vw + 12px, 16px);
color: var(--nl-soft);
margin: 0 0 28px;
line-height: 1.75;
font-weight: 400;
}

.nl-meta {
display: flex;
flex-wrap: wrap;
gap: 14px;
font-size: 13px;
color: var(--nl-mute);
padding: 12px 0;
border-top: 1px solid var(--nl-line);
border-bottom: 1px solid var(--nl-line);
margin-bottom: 36px;
}
.nl-meta span { display: inline-flex; align-items: center; gap: 6px; }
.nl-meta strong { color: var(--nl-navy); font-weight: 600; }

.nl-author {
display: grid;
grid-template-columns: auto 1fr;
gap: 18px;
align-items: center;
background: var(--nl-bg-soft);
border-left: 4px solid var(--nl-navy);
padding: 22px 24px;
margin: 0 0 36px;
border-radius: 2px;
}
.nl-author-badge {
width: 60px; height: 60px;
border-radius: 50%;
background: var(--nl-navy);
color: #fff;
display: flex; align-items: center; justify-content: center;
font-weight: 800;
font-size: 20px;
letter-spacing: 0.02em;
}
.nl-author-name { font-weight: 700; font-size: 16px; color: var(--nl-navy-3); margin: 0 0 4px; letter-spacing: -0.01em; }
.nl-author-role { font-size: 13px; color: var(--nl-soft); line-height: 1.65; margin: 0; }
.nl-author-role b { color: var(--nl-navy); font-weight: 600; }

.nl-summary {
background: var(--nl-bg-card);
border: 1px solid var(--nl-line);
border-radius: 4px;
padding: 28px 28px 24px;
margin: 0 0 40px;
position: relative;
}
.nl-summary::before {
content: "한눈에 보기";
position: absolute;
top: -12px; left: 24px;
background: var(--nl-navy);
color: #fff;
font-size: 11px;
letter-spacing: 0.16em;
font-weight: 600;
padding: 5px 14px;
border-radius: 2px;
}
.nl-summary dl {
display: grid;
grid-template-columns: 100px 1fr;
gap: 12px 20px;
margin: 4px 0 0;
font-size: 14.5px;
}
.nl-summary dt {
color: var(--nl-mute);
font-weight: 500;
border-right: 1px solid var(--nl-line);
padding-right: 20px;
line-height: 1.7;
}
.nl-summary dd { margin: 0; color: var(--nl-ink); line-height: 1.7; }
.nl-summary dd b { color: var(--nl-navy); font-weight: 700; }
.nl-summary dd .nl-win { color: var(--nl-navy); font-weight: 700; border-bottom: 2px solid var(--nl-navy); padding-bottom: 1px; }

.nl-lead {
background: var(--nl-bg-soft);
border-left: 4px solid var(--nl-navy);
padding: 22px 26px;
margin: 36px 0;
border-radius: 2px;
}
.nl-lead p { margin: 0; font-size: 16px; line-height: 1.85; color: var(--nl-ink); }
.nl-lead p + p { margin-top: 12px; }
.nl-lead strong { color: var(--nl-navy); font-weight: 700; }

.nl-h2 {
font-weight: 800;
font-size: clamp(20px, 1.5vw + 14px, 26px);
color: var(--nl-navy-3);
margin: 64px 0 22px;
padding-bottom: 14px;
border-bottom: 2px solid var(--nl-navy);
display: flex;
align-items: baseline;
gap: 14px;
letter-spacing: -0.025em;
}
.nl-h2 .nl-h2-no {
font-size: 13px;
color: var(--nl-navy-soft);
letter-spacing: 0.2em;
font-weight: 700;
}

.nl-h3 {
font-weight: 700;
font-size: clamp(17px, 0.7vw + 14px, 19px);
color: var(--nl-navy);
margin: 36px 0 14px;
padding-left: 14px;
border-left: 3px solid var(--nl-navy);
letter-spacing: -0.015em;
}

.nl-wrap p { margin: 14px 0; }

.nl-defn {
background: var(--nl-bg-card);
border: 1px solid var(--nl-line);
border-top: 3px solid var(--nl-navy);
padding: 18px 22px;
margin: 24px 0;
border-radius: 2px;
font-size: 15px;
}
.nl-defn dt {
font-size: 12px;
letter-spacing: 0.14em;
color: var(--nl-navy);
font-weight: 700;
margin-bottom: 8px;
}
.nl-defn dd { margin: 0; color: var(--nl-ink); line-height: 1.8; }
.nl-defn dd b { color: var(--nl-navy); font-weight: 700; }

.nl-statute {
background: var(--nl-bg-soft);
border: 1px solid var(--nl-line);
border-left: 4px solid var(--nl-navy);
padding: 22px 26px;
margin: 28px 0;
border-radius: 2px;
position: relative;
}
.nl-statute::before {
content: "법령";
position: absolute;
top: 16px; right: 20px;
font-size: 10px;
letter-spacing: 0.18em;
font-weight: 700;
color: #fff;
background: var(--nl-navy);
padding: 3px 9px;
border-radius: 2px;
}
.nl-statute .nl-statute-h {
font-weight: 800;
font-size: 16px;
color: var(--nl-navy-3);
margin: 0 0 12px;
padding-right: 60px;
letter-spacing: -0.015em;
}
.nl-statute ol { padding-left: 18px; margin: 8px 0 0; }
.nl-statute li { margin-bottom: 6px; line-height: 1.85; }
.nl-statute .nl-cite { display: block; margin-top: 14px; font-size: 12px; color: var(--nl-mute); }
.nl-statute .nl-cite a { color: var(--nl-navy); }

.nl-issues {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 14px;
margin: 28px 0;
}
.nl-issue {
background: #ffffff;
border: 1px solid var(--nl-line);
border-radius: 2px;
padding: 18px 20px;
position: relative;
overflow: hidden;
transition: border-color 0.2s;
}
.nl-issue:hover { border-color: var(--nl-navy); }
.nl-issue::before {
content: "";
position: absolute;
top: 0; left: 0;
width: 4px; height: 100%;
background: var(--nl-navy);
}
.nl-issue h4 {
font-size: 15px;
color: var(--nl-navy-3);
margin: 0 0 8px;
font-weight: 700;
letter-spacing: -0.015em;
}
.nl-issue p {
font-size: 13.5px;
color: var(--nl-soft);
margin: 0;
line-height: 1.7;
}

.nl-steps {
counter-reset: nlstep;
display: grid;
gap: 12px;
margin: 28px 0;
}
.nl-step {
display: grid;
grid-template-columns: 64px 1fr;
gap: 18px;
background: #ffffff;
border: 1px solid var(--nl-line);
border-left: 4px solid var(--nl-navy);
border-radius: 2px;
padding: 18px 22px;
align-items: start;
}
.nl-step::before {
counter-increment: nlstep;
content: "STEP " counter(nlstep);
font-size: 11px;
font-weight: 700;
color: var(--nl-navy);
background: var(--nl-bg-soft);
padding: 6px 10px;
border-radius: 2px;
letter-spacing: 0.08em;
text-align: center;
line-height: 1.4;
align-self: start;
white-space: nowrap;
}
.nl-step h4 {
font-size: 16px;
color: var(--nl-navy-3);
margin: 2px 0 6px;
font-weight: 700;
letter-spacing: -0.015em;
}
.nl-step p {
font-size: 14.5px;
color: var(--nl-soft);
margin: 0;
line-height: 1.75;
}

.nl-table {
width: 100%;
border-collapse: collapse;
margin: 28px 0;
font-size: 14px;
background: #fff;
border: 1px solid var(--nl-line);
border-radius: 2px;
overflow: hidden;
}
.nl-table th, .nl-table td {
padding: 14px 16px;
border-bottom: 1px solid var(--nl-line);
border-right: 1px solid var(--nl-line);
vertical-align: top;
line-height: 1.7;
}
.nl-table th:last-child, .nl-table td:last-child { border-right: none; }
.nl-table tr:last-child td { border-bottom: none; }
.nl-table thead th {
background: var(--nl-navy);
color: #fff;
font-weight: 600;
letter-spacing: 0.02em;
text-align: left;
font-size: 13.5px;
}
.nl-table tbody th {
background: var(--nl-bg-soft);
color: var(--nl-navy-3);
font-weight: 600;
text-align: left;
width: 28%;
}
.nl-table .nl-td-good { color: var(--nl-navy); font-weight: 700; }
.nl-table .nl-td-bad { color: var(--nl-accent); font-weight: 700; }

.nl-checklist {
background: var(--nl-bg-card);
border: 1px solid var(--nl-line);
border-radius: 2px;
padding: 24px 26px;
margin: 28px 0;
}
.nl-checklist h4 {
font-size: 16px;
color: var(--nl-navy-3);
margin: 0 0 14px;
padding-bottom: 12px;
border-bottom: 1px solid var(--nl-line);
font-weight: 700;
letter-spacing: -0.015em;
}
.nl-checklist ul { list-style: none; padding: 0; margin: 0; }
.nl-checklist li {
position: relative;
padding-left: 30px;
margin-bottom: 10px;
font-size: 14.5px;
color: var(--nl-ink);
line-height: 1.75;
}
.nl-checklist li::before {
content: "";
position: absolute;
left: 0; top: 5px;
width: 18px; height: 18px;
border: 2px solid var(--nl-navy);
border-radius: 2px;
background: #fff;
}
.nl-checklist li::after {
content: "";
position: absolute;
left: 4px; top: 8px;
width: 10px; height: 5px;
border-left: 2px solid var(--nl-navy);
border-bottom: 2px solid var(--nl-navy);
transform: rotate(-45deg);
}

.nl-caution {
background: var(--nl-bg-soft);
border-left: 4px solid var(--nl-navy);
padding: 18px 22px;
margin: 28px 0;
border-radius: 2px;
}
.nl-caution h4 {
font-size: 15px;
color: var(--nl-navy-3);
margin: 0 0 8px;
font-weight: 700;
letter-spacing: -0.015em;
}
.nl-caution h4::before { content: "⚠ "; color: var(--nl-navy); }
.nl-caution p { margin: 0; font-size: 14.5px; color: var(--nl-soft); line-height: 1.75; }

.nl-law {
background: var(--nl-bg-card);
border: 1px solid var(--nl-line);
border-radius: 2px;
padding: 24px 26px;
margin: 28px 0;
}
.nl-law h4 {
font-size: 15px;
color: var(--nl-navy-3);
margin: 0 0 12px;
padding-bottom: 12px;
border-bottom: 1px solid var(--nl-line);
font-weight: 700;
letter-spacing: -0.015em;
}
.nl-law dl { margin: 0; font-size: 14px; }
.nl-law dt { color: var(--nl-navy); font-weight: 700; margin-top: 12px; }
.nl-law dt:first-child { margin-top: 0; }
.nl-law dd { margin: 4px 0 0; color: var(--nl-soft); line-height: 1.75; }

.nl-quote {
border-left: 3px solid var(--nl-navy);
padding: 8px 22px;
margin: 28px 0;
color: var(--nl-soft);
font-size: 16px;
line-height: 1.85;
}
.nl-quote p { font-style: normal; }
.nl-quote cite { display: block; font-style: normal; font-size: 13px; color: var(--nl-mute); margin-top: 8px; }

.nl-faq {
margin: 40px 0;
border-top: 2px solid var(--nl-navy);
}
.nl-faq h2 { margin-top: 24px; }
.nl-faq details {
border-bottom: 1px solid var(--nl-line);
padding: 20px 4px;
}
.nl-faq summary {
font-size: 16px;
font-weight: 700;
color: var(--nl-navy-3);
cursor: pointer;
list-style: none;
display: flex;
align-items: flex-start;
gap: 12px;
line-height: 1.55;
padding-right: 30px;
position: relative;
letter-spacing: -0.015em;
}
.nl-faq summary::-webkit-details-marker { display: none; }
.nl-faq summary::before {
content: "Q";
flex-shrink: 0;
width: 26px; height: 26px;
background: var(--nl-navy);
color: #fff;
border-radius: 50%;
display: flex; align-items: center; justify-content: center;
font-size: 13px;
font-weight: 700;
}
.nl-faq summary::after {
content: "+";
position: absolute;
right: 0; top: 0;
font-size: 22px;
color: var(--nl-navy);
font-weight: 300;
transition: transform 0.25s;
line-height: 1;
}
.nl-faq details[open] summary::after { content: "−"; }
.nl-faq .nl-a {
margin-top: 14px;
padding-left: 38px;
font-size: 14.5px;
color: var(--nl-soft);
line-height: 1.85;
}
.nl-faq .nl-a::before {
content: "A. ";
font-weight: 800;
color: var(--nl-navy);
}

.nl-related {
background: var(--nl-bg-soft);
border: 1px solid var(--nl-line);
border-radius: 2px;
padding: 24px 26px;
margin: 32px 0;
}
.nl-related h4 {
font-size: 14px;
color: var(--nl-navy-3);
letter-spacing: 0.04em;
margin: 0 0 14px;
padding-bottom: 12px;
border-bottom: 1px solid var(--nl-line);
font-weight: 700;
}
.nl-related ul { list-style: none; padding: 0; margin: 0; }
.nl-related li {
font-size: 14px;
margin: 8px 0;
padding-left: 14px;
position: relative;
}
.nl-related li::before { content: "›"; position: absolute; left: 0; color: var(--nl-navy); font-weight: 700; }
.nl-related a { color: var(--nl-navy); text-decoration: none; }
.nl-related a:hover { text-decoration: underline; }

.nl-cta {
margin: 48px 0 24px;
background: var(--nl-navy);
color: #fff;
border-radius: 2px;
padding: 38px 32px;
text-align: center;
position: relative;
overflow: hidden;
}
.nl-cta::before {
content: "";
position: absolute;
top: 0; left: 0; right: 0;
height: 3px;
background: linear-gradient(90deg, var(--nl-navy-soft) 0%, #ffffff 100%);
}
.nl-cta-h {
font-size: clamp(20px, 1.5vw + 12px, 26px);
font-weight: 800;
margin: 0 0 8px;
position: relative;
letter-spacing: -0.025em;
}
.nl-cta-sub {
font-size: 14.5px;
color: #c5d1e0;
margin: 0 0 24px;
line-height: 1.7;
position: relative;
}
.nl-cta-buttons {
display: flex;
flex-wrap: wrap;
gap: 10px;
justify-content: center;
position: relative;
}
.nl-cta-buttons a {
display: inline-flex;
align-items: center;
gap: 8px;
font-size: 14.5px;
font-weight: 600;
padding: 14px 26px;
border-radius: 2px;
text-decoration: none;
transition: transform 0.2s, box-shadow 0.2s;
letter-spacing: 0.01em;
}
.nl-cta-buttons a:hover { transform: translateY(-2px); box-shadow: 0 6px 16px rgba(0,0,0,0.25); }
.nl-cta-kakao { background: #fee500; color: #181600; }
.nl-cta-tel { background: #ffffff; color: var(--nl-navy-3); }
.nl-cta-web { background: #ffffff; color: var(--nl-navy); border: 1.5px solid var(--nl-navy); font-weight: 700; }
.nl-cta-secret {
display: inline-flex;
align-items: center;
margin-top: 18px;
font-size: 12px;
color: #c5d1e0;
letter-spacing: 0.08em;
position: relative;
}

.nl-footer-cite {
margin-top: 40px;
padding-top: 24px;
border-top: 1px solid var(--nl-line);
font-size: 12px;
color: var(--nl-mute);
line-height: 1.8;
}
.nl-footer-cite h4 {
font-size: 12px;
letter-spacing: 0.08em;
color: var(--nl-navy);
margin: 0 0 10px;
font-weight: 700;
}
.nl-footer-cite ul { padding-left: 18px; margin: 0; }
.nl-footer-cite li { margin: 4px 0; }
.nl-footer-cite a { color: var(--nl-navy); }

.nl-disclaimer {
margin-top: 28px;
font-size: 12px;
color: var(--nl-mute);
line-height: 1.75;
padding: 14px 16px;
background: var(--nl-bg-soft);
border: 1px solid var(--nl-line);
border-radius: 2px;
}

@media (max-width: 640px) {
.nl-wrap { padding: 16px 14px; }
.nl-issues { grid-template-columns: 1fr; }
.nl-summary dl { grid-template-columns: 1fr; gap: 4px 0; }
.nl-summary dt { border-right: none; border-bottom: 1px solid var(--nl-line); padding: 0 0 4px; margin-bottom: 4px; }
.nl-author { grid-template-columns: 1fr; text-align: center; }
.nl-author-badge { margin: 0 auto; }
.nl-table thead { display: none; }
.nl-table tr { display: block; border-bottom: 2px solid var(--nl-navy); padding: 8px 0; }
.nl-table th, .nl-table td { display: block; border-right: none; padding: 8px 14px; }
.nl-table tbody th { width: 100%; }
.nl-step { grid-template-columns: 1fr; gap: 8px; }
.nl-step::before { justify-self: start; }
.nl-cta { padding: 28px 20px; }
.nl-cta-buttons a { width: 100%; justify-content: center; }
}

@media (max-width: 380px) {
.nl-wrap { padding: 14px 12px; font-size: 14.5px; }
.nl-h2 { flex-direction: column; gap: 4px; align-items: flex-start; }
.nl-h2 .nl-h2-no { font-size: 12px; }
.nl-statute, .nl-defn, .nl-checklist, .nl-related, .nl-law { padding: 16px 18px; }
}

/* ==========================================================================
[ADD-ON] 담당 변호인 카드 (nl-team) — 기존 스타일 수정 없이 추가된 블록
사용처: 성공사례 하단, CTA 상단. 1~2인 카드 배치.
========================================================================== */

.nl-team {
margin: 40px 0 36px;
}

.nl-team-h {
font-size: 15px;
font-weight: 700;
color: var(--nl-navy);
letter-spacing: -0.01em;
margin: 0 0 4px;
padding-left: 12px;
border-left: 3px solid var(--nl-navy);
line-height: 1.4;
}

.nl-team-sub {
font-size: 13.5px;
color: var(--nl-mute);
margin: 0 0 18px;
padding-left: 15px;
line-height: 1.7;
}

.nl-team-grid {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 16px;
}

.nl-card {
display: grid;
grid-template-columns: 84px minmax(0, 1fr);
gap: 16px;
background: var(--nl-bg-card);
border: 1px solid var(--nl-line);
border-top: 3px solid var(--nl-navy);
border-radius: 2px;
padding: 20px 18px;
align-items: start;
}

.nl-card-photo {
width: 84px;
height: 84px;
border-radius: 2px;
overflow: hidden;
background: var(--nl-bg-soft);
border: 1px solid var(--nl-line);
}

.nl-card-photo img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
}

.nl-card-role {
display: inline-block;
font-size: 10.5px;
font-weight: 700;
letter-spacing: 0.08em;
text-transform: uppercase;
color: var(--nl-navy-soft);
margin: 0 0 4px;
line-height: 1.3;
}

.nl-card-name {
font-size: 16.5px;
font-weight: 800;
color: var(--nl-ink);
letter-spacing: -0.02em;
margin: 0 0 8px;
line-height: 1.35;
}

.nl-card-name a {
color: var(--nl-ink);
text-decoration: none;
}
.nl-card-name a:hover {
color: var(--nl-navy);
text-decoration: underline;
text-underline-offset: 3px;
}

.nl-card-tags {
display: flex;
flex-wrap: wrap;
gap: 5px;
margin: 0 0 10px;
padding: 0;
list-style: none;
}

.nl-card-tags li {
font-size: 11.5px;
color: var(--nl-navy);
background: rgba(31, 78, 121, 0.07);
border-radius: 2px;
padding: 2px 7px;
line-height: 1.6;
letter-spacing: -0.01em;
}

.nl-card-desc {
font-size: 13.5px;
color: var(--nl-soft);
line-height: 1.75;
margin: 0 0 10px;
letter-spacing: -0.01em;
}

.nl-card-list {
margin: 0;
padding: 0;
list-style: none;
border-top: 1px solid var(--nl-line-soft);
padding-top: 9px;
}

.nl-card-list li {
font-size: 12.5px;
color: var(--nl-mute);
line-height: 1.7;
padding-left: 10px;
position: relative;
letter-spacing: -0.01em;
}

.nl-card-list li::before {
content: "";
position: absolute;
left: 0;
top: 9px;
width: 3px;
height: 3px;
border-radius: 50%;
background: var(--nl-navy-soft);
}

.nl-card-list li b {
color: var(--nl-soft);
font-weight: 700;
}

.nl-card-link {
display: inline-block;
font-size: 12.5px;
color: var(--nl-navy);
margin-top: 10px;
text-decoration: none;
border-bottom: 1px solid var(--nl-line);
padding-bottom: 1px;
}
.nl-card-link:hover {
border-bottom-color: var(--nl-navy);
}

@media (max-width: 760px) {
.nl-team-grid { grid-template-columns: 1fr; gap: 14px; }
}

@media (max-width: 480px) {
.nl-card {
grid-template-columns: 64px minmax(0, 1fr);
gap: 13px;
padding: 17px 15px;
}
.nl-card-photo { width: 64px; height: 64px; }
.nl-card-name { font-size: 15.5px; }
.nl-card-desc { font-size: 13px; }
}

/* [ADD-ON] 1인 카드일 때 전체 폭 사용 */
.nl-team-grid:has(> .nl-card:only-child) {
grid-template-columns: minmax(0, 1fr);
}
.nl-team-grid > .nl-card:only-child {
grid-template-columns: 110px minmax(0, 1fr);
gap: 20px;
padding: 22px 20px;
}
.nl-team-grid > .nl-card:only-child .nl-card-photo {
width: 110px;
height: 110px;
}
@media (max-width: 480px) {
.nl-team-grid > .nl-card:only-child {
grid-template-columns: 64px minmax(0, 1fr);
gap: 13px;
padding: 17px 15px;
}
.nl-team-grid > .nl-card:only-child .nl-card-photo {
width: 64px;
height: 64px;
}
}

2026.09.02

뉴로이어 - 새로운 변호사들

분야별 법률 이슈, 영상으로 쉽고 빠르게 확인하세요.

변호사 사용법 - 뉴로이어 법률 가이드

변호사 사용법

변호사 선임 후엔 뭘 해야할까? 3가지 모르면 변호사 선임료 날립니다.

명예훼손·모욕 - 뉴로이어 법률 가이드

명예훼손·모욕

사이버 명예훼손·모욕죄 성립 요건, 이 영상 하나만 제대로 보세요

디지털 성범죄 - 뉴로이어 법률 가이드

디지털 성범죄

통매음 성립요건, 통매음 무혐의를 결정짓는 확실한 기준 알려드립니다.

스토킹·협박 - 뉴로이어 법률 가이드

스토킹·협박

사이버스토킹 성립요건 4가지, 이건 반드시 체크하셔야 합니다.(스토킹 범죄 판단 기준)

개인정보보호법 - 뉴로이어 법률 가이드

개인정보보호법

개인정보 침해 가해자 처벌하고 피해 보상 받는 법

저작권·지식재산권 - 뉴로이어 법률 가이드

저작권·지식재산권

소프트웨어 불법 다운로드 단속, 저작권법 위반 이렇게 대응하세요! (솔리드웍스, 오토캐드, 카티아 크랙)

사기·보이스피싱 - 뉴로이어 법률 가이드

사기·보이스피싱

전자금융거래법 위반 무혐의 받는 실전 대응법 알려드립니다 (작업대출 사기, 보이스피싱 대포통장)

인플루언서·MCN - 뉴로이어 법률 가이드

인플루언서·MCN

MCN 전속 계약 해지? 98%는 가능합니다. (버튜버·스트리머 필수 시청) | MCN 전문 변호사

행정·노동 - 뉴로이어 법률 가이드

행정·노동

식품위생법 위반 벌금 영업정지 처분, 폐업 위기 막는 가장 확실한 대응법 공개(미성년자 술 영업정지) | 행정소송 전문 변호사

성범죄 - 뉴로이어 법률 가이드

성범죄

성범죄 피해자라면 합의 전 이것만큼은 반드시 주의하세요!(성범죄 합의금 기준 · 합의 시기 · 주의사항)

외국인 사건 - 뉴로이어 법률 가이드

외국인 사건

[ENG] 외국인 전문 변호사를 찾고 있다면 Legal Advice In Korea Available For Foreigners

의뢰인 후기

생생한 실제 후기를 눈으로 직접 확인하세요.

뉴로이어 철칙

한번 사건을 맡겼던 의뢰인분들이 또다시 뉴로이어를 찾아 주시는 이유는 3가지 때문입니다.

NEWS ROOM

언론에서도 인정한 뉴로이어

뉴로이어 법률사무소

전국 어디서든 변호사 직접 상담.
짧은 상담만으로도 70%의 고민은 해결됩니다.