As I wrote in the comment I suggest the package mdframed
. I am sure the packages framed
or tcolorbox
are also able to do this.
All listed options can be found in the documentation. I also recommend the example of the question mdframed-Put something on the start of one vertical left rule where I explain most of the following code.
\documentclass{article}
\usepackage[framemethod=tikz]{mdframed}
\usetikzlibrary{calc}%need for tikz let operation
\usepackage{kantlipsum}%filling text
\newmdenv[%
skipabove=\topskip,%
skipbelow=\topskip,%
rightmargin=.5cm,%
leftmargin=2cm, %
middlelinewidth=2pt,%
middlelinecolor=blue!70,%
firstextra={\path[overlay] let \p1=(P), \p2=(O) in ($(\x2,0)+1*(0,\y1)$)
node[rotate=90,anchor=east,yshift=2em,font=\bfseries\large] {Short Header};},%
singleextra={\path[overlay] let \p1=(P), \p2=(O) in ($(\x2,0)+1*(0,\y1)$)
node[rotate=90,anchor=east,yshift=2em,font=\bfseries\large] {Short Header};},%
]{myframe}
\begin{document}
\kant[1]
\begin{myframe}
\kant[2]
\end{myframe}
\kant[3]
\end{document}