* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

#heart {
    margin: 100px;
    position: relative;
    display: inline-block;
    transition: all .5s;
    animation: heart 400ms infinite alternate;
}

@keyframes heart {
    0% {
        transform: scale(1.0);
    }
    100% {
        transform: scale(1.2);
    }
}

#heart > .bottom {
    width: 50px;
    height: 50px;
    transform: rotate(45deg);
    background: red;
}

#heart > .left {
    width: 50px;
    height: 50px;
    border-radius: 50% 0 0 50%;
    position: absolute;
    bottom: 100%;
    right: 100%;
    transform: rotate(45deg) translateX(30px);
    background: red;
}

#heart > .right {
    width: 50px;
    height: 50px;
    border-radius: 50% 50% 0 0;
    position: absolute;
    bottom: 100%;
    left: 100%;
    transform: rotate(45deg) translateY(30px);
    background: red;
}