Ask for help, I want to make a rectangular div, with protuberance. How can it be realized?

I want to make a div of this shape

the code is as follows

<div class="leftSide">
        <div class="qq_number fl">
            <div>QQ[1]</div>
  
            <div>QQ[2]</div>
         
            <div>QQ[3]</div>
     
            <div>QQ[4]</div>
   
            <div>QQ[5]</div>
 
        </div>
        

        <div class="join_us fl">
            <br /><br /><br />
        </div>
        
        
    </div>
.leftSide {
    height: 300px;
    background: rgba(0,0,204,0);
    position: fixed;
    top: 50%;
    margin-top: -100px;
    z-index: 100;
    left: -120px;
}

.qq_number {
    width: 120px;
    background: rgba(0,255,0,1);
    height: 100%;
    cursor: pointer;
}

.join_us {
    width: 30px;
    height: 150px;
    background: rgba(204,0,0,1);
    margin-top: 75px;
    border-top-right-radius: 20px;
    border-bottom-right-radius: 20px;
    cursor: pointer;
    margin-left: 0px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 15px;
    color: rgba(255,255,255,1);
}

when you encounter a problem with .leftSide: hover, there will also be hover events in the space above and below [join us]

.

how can I make a div, that is larger on the left side and smaller on the right side

< H2 > after I modify it, I will go down < / H2 >.
.leftSide:hover .join_us{
    animation: bounceInRight 0.5s 1;
    animation-direction: normal;
    -webkit-animation-direction: normal; /* Safari  Chrome */
    animation-fill-mode : forwards;
}

.leftSide:hover .qq_number {
    animation: bounceInRight 0.5s 1;
    animation-direction: normal;
    -webkit-animation-direction: normal; /* Safari  Chrome */
    animation-fill-mode : forwards;
}

but the blank space still triggers the hover event

Sep.26,2021

you can change the layout. The on the right joins us is the absolute layout

.

refer to the following

clipboard.png

in this case, there is no hover

in the right margin.
.box{
    width: 200px;
    height: 200px;
    position: relative;
    background: yellowgreen
}

.side{
    position: absolute;
    right: -50px;
    width: 50px;
    height: 100px;
    top: 50px;
    background: violet;
}

.box:hover{
    background: turquoise;
}
<div class="box">
    <div class="side"></div>
</div>

you can take a look at the:: after pseudo element

Menu