\documentclass[12pt,a4paper]{article}
\usepackage[francais]{babel}
\usepackage{mafr}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[autolanguage,np]{numprint}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{lmodern}
\setlength{\parindent}{0pt}% indentation nulle
\usepackage{lipsum}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\newenvironment{retrait}[2]{%
% au début de l'environnement, on crée la liste
\begin{list}{}% aucun marquage nécessaire
{\setlength{\leftmargin}{#1}% retrait à gauche
\setlength{\rightmargin}{#2}% retrait à droite
}
\item\relax}
{% à la fin de l'environnement
 % on ferme la liste
\end{list}}

\begin{document}

% texte ordinaire
\lipsum[3]


% retrait à gauche de 3cm
% retrait à droite de 1cm
\begin{retrait}{3cm}{1cm}
\lipsum[3]
\end{retrait}


% retrait négatif pour déborder
% dans la marge
\begin{retrait}{-1cm}{-0.5cm}
\lipsum[3]
\end{retrait}


\end{document}
