<div class="character eric">
  <div class="body">
    <div class="legs"></div>
    <div class="feet">
      <div class="foot foot-left"></div>
      <div class="foot foot-right"></div>
    </div>
    <div class="jacket">
      <div class="jacket-body"></div>
      <div class="jacket-stroke jacket-stroke-center"></div> 
      <div class="jacket-buttons"></div>
      <div class="glove glove-left"></div>
      <div class="glove glove-right"></div>
    </div>
  </div>
  <div class="head">
    <div class="cap-top"></div>
    <div class="cap-border"></div>
    <div class="face">
      <div class="eyes">
        <div class="eye eye-left"></div>
        <div class="eye eye-right"></div>
      </div>
      <div class="mouth"></div>
      <div class="chin"></div>
    </div>
  </div>
</div>
$character-size: 300px;
$color-skin: #f2d5ad;
$color-red: #c1042e;
$color-brown: #583714;
$color-blue-light: #48c2b5;
$color-yellow: #ede10f;

.character * {
  position: absolute;
  box-sizing: border-box;
  &::before,
  &::after {
    display: block;
    content: "";
    position: absolute;
  }
}


.eric {
  position: relative;
  width: $character-size - 10px;
  height: $character-size - 10px;
  margin: 10px auto;

  .head {
    top: 9%;
    left: 10%;
    width: 80%;
    height: 63%;
    background-color: $color-blue-light;
    border-radius: 50%;
  }
  .face {
    bottom: 0;
    left: 0;
    background-color: $color-skin;
    width: 100%;
    height: 60%;
    border-radius: 50% 50% 50% 50% / 20% 20% 80% 80%;
  }
  .cap-border {
    bottom: 0;
    left: 0;
    background-color: $color-yellow;
    width: 100%;
    height: 70%;
    border-radius: 50% 50% 50% 50% / 18% 18% 75% 75%;
  }
  .cap-top {
    top: -5%;
    left: 35%;
    background-color: $color-yellow;
    width: 30%;
    height: 15%;
    border-radius: 50%;
  }
  .eyes {
    bottom: 50%;
    left: 27%;
    height: 47%;
    width: 46%;
  }
  .eye {
    background-color: #fff;
    height: 100%;
    width: 49%;
    &:before {
      width: 10%;
      height: 10%;
      background-color: #000;
      top: 45%;
      left: 70%;
      border-radius: 50%;
    }
  }
  .eye-left {
    border-radius: 60% 40% 60% 40% / 60% 40% 60% 40%;
  }
  .eye-right {
    right: 0;
    border-radius: 40% 60% 40% 60% / 40% 60% 40% 60%;
  }
  .mouth {
    left: 42%;
    top: 20%;
    width: 15%;
    height: 50%;
    border: solid 3px #000;
    border-color: transparent transparent #000 transparent;
    border-radius: 0 0 50% 50% / 10%;
  }

  .chin {
    border: 0px solid #000;
    bottom: 6%;
    left: 10%;
    width: 80%;
    height: 80%;
    border-bottom: 2px solid #000;
    border-radius: 0 0 50% 50%;

    &::before {
      bottom: 10%;
      left: 35%;
      width: 30%;
      height: 10%;
      border-bottom: 2px solid #000;
      border-radius: 0 0 50% 50%;
    }
  }

  .body {
    bottom: 0;
    width: 100%;
    height: 50%;

    .jacket {
      top: 0;
      left: 3%;
      width: 94%;
      height: 90%;

      .jacket-body {
        left: 0%;
        bottom: 0%;
        width: 100%;
        height: 100%;
        border-radius: 13% 87% 85% 15% / 72% 53% 47% 28%;
        background-color: $color-red;

        &::before {
          width: 100%;
          height: 100%;
          background-color: $color-red;
          border-radius: 87% 15% 13% 87% / 47% 72% 28% 53%;
        }
      }

      .jacket-stroke-center {
        left: 49.5%;
        width: 1%;
        background-color: #000;
        height: 96%;
        transform: rotate(1deg);
      }
      .jacket-buttons {
        top: 72%;
        left: 46%;
        width: 2%;
        height: 4%;
        background-color: #000;
        border-radius: 50%;
        transform: rotate(2deg);
        &::before,
        &::after {
          height: 100%;
          width: 100%;
          background-color: #000;
          border-radius: 50%;
        }
        &::before {
          top: -450%;
        }
        &::after {
          top: 450%;
        }
      }
      .glove {
        bottom: 40%;
        width: 18%;
        height: 36%;
        border-radius: 50%;
        background-color: $color-yellow;

        &::before {
          width: 40%;
          height: 40%;
          background-color: $color-yellow;
          top: 14%;
          border-radius: 50%;
        }
      }

      .glove-left {
        left: -2%;

        &::before {
          right: -12%;
        }
      }
      .glove-right {
        right: -2%;

        &::before {
          left: -12%;
        }
      }
    }
  }

  .legs {
    bottom: 3%;
    left: 4%;
    width: 92%;
    height: 40%;
    background-color: $color-brown;
    clip-path: polygon(0 0, 100% 0%, 90% 100%, 10% 100%);
  }
  .feet {
    bottom: 0;
    left: 9%;
    width: 82%;
    height: 8%;
    .foot {
      bottom: 0;
      width: 52%;
      height: 100%;
      background-color: #000;
      border-radius: 50% 50% 50% 50% / 100% 100% 0% 0%;
    }
    .foot-left {
      left: 0;
    }
    .foot-right {
      right: 0;
    }
  }
}
View Compiled

External CSS

This Pen doesn't use any external CSS resources.

External JavaScript

This Pen doesn't use any external JavaScript resources.