.checkbox{ margin: 0; border-radius: 50%; display: inline-block; overflow: hidden; position: relative; } .checkbox input[type=checkbox]{ margin: 0; visibility: hidden; left: 7px; top: 7px; } .checkbox label{ width: 30px; height: 30px; padding: 0; margin: 0; border-radius: 50%; border: 5px solid #666; box-shadow: 0 2px 4px rgba(0,0,0,0.2) inset; cursor: pointer; display: block; position: relative; transition: all 0.3s ease 0s; } .checkbox label:hover{ border-width: 7px; } .checkbox input[type=checkbox]:checked+label{ background-color: #07d410; border: 7px solid #07d410; box-shadow: none; } .checkbox label:before, .checkbox label:after{ content: ""; background: #fff; width: 4px; height: 18px; opacity: 0; transform: translateX(-50%) rotate(55deg); position: absolute; left: 160%; top: -10px; transition: all 0.2s ease 0s; } .checkbox label:after{ height: 10px; transform: translateX(-50%) rotate(-33deg); left: -35%; top: -6px; } .checkbox input[type=checkbox]:checked+label:before{ opacity: 1; transform: translateX(-50%) rotate(55deg); left: 62%; top: 0px; } .checkbox input[type=checkbox]:checked+label:after{ opacity: 1; transform: translateX(-50%) rotate(-33deg); left: 12%; top: 6px; } @media only screen and (max-width:767px){ .checkbox{ margin: 0 0 20px; } }