<!doctype html>

 <style>
    html { -webkit-writing-mode: vertical-lr }

    .test_paragraph {
        margin-left: 1em;
        margin-right: 1em;
        text-align: justify;
        font-family: Ahem;
        font-size: 10px;
        -webkit-font-smoothing: none;
    }

    /* Created to justify the last line of text in the div */
    #paragraph1:after {
        content: " ____";
        line-height: 0;
        visibility: hidden;
    }
    
    #region1 {
        border: 1px solid black;
        width: 190px;
        height: 90px;
        padding: 5px;
    }
    
    #first-box1 {
        border: 1px solid blue;
        border-right: none;
    }
    
    #second-box1 {
        margin:10px;
        border: 1px solid green;
        border-right: none;
        width: 183px;
        height: 66px;
    }
    
    #first-paragraph2 {
        margin-left: 0px;
    }

    /* Created to justify the last line of text in the div */
    #third-paragraph2:after {
        content: " ____";
        line-height: 0;
        visibility: hidden;
    }

    #region2 {
        border: 1px solid black;
        width: 290px;
        height: 170px;
        padding: 5px;
    }
    
    #first-box2 {
        border: 1px solid blue;
        border-left: none;
        border-right: none;
    }
    
    #second-box2 {
        margin-top:10px;
        margin-left: -5px;
        padding: 0px;
        border: 1px solid green;
        border-left: none;
        border-right: none;
        width: 300px;
        height: 146px;
    }
    
    #paragraph3 {
        margin-left: 0px;
    }
    
    #region3 {
        border: 1px solid black;
        width: 110px;
        height: 110px;
        padding: 5px;
    }
    
    #first-box3 {
        border: 1px solid blue;
        border-left: none;
    }
    
    #second-box3 {
        margin:10px;
        margin-left: -5px;
        border: 1px solid green;
        border-left: none;
        height: 86px;
    }
</style>

<div id="content">
    <div id="region1">
        <div id="first-box1">
            <div id="second-box1">
                <div class="test_paragraph" id="paragraph1">This line of text should not get out of the region. This line of text should not get</div>
            </div>
        </div>
    </div>
    
    <div id="region2">
        <div id="first-box2">
            <div id="second-box2">
                <div class="test_paragraph" id="first-paragraph2">out of the region. This line of text should not get out of the region. This line of text should not get out of the region.</div>
                <div class="test_paragraph">This line of text should not get out of the region. This line of text should not get out of the region. This line of text should not get out of the region. This line of text should not get out of the region.</div>
                <div class="test_paragraph" id="third-paragraph2">This line of text should</div>
            </div>
        </div>
    </div>
    
    <div id="region3">
        <div id="first-box3">
            <div id="second-box3">
                <div class="test_paragraph" id="paragraph3">not get out of the region.</div>
            </div>
        </div>
    </div>
</div>