/* Custom checkboxes by CSS */
.custom-checkbox{
    position: relative;
}
.custom-checkbox input[type=checkbox]{
    display: inline-block;
    visibility: hidden;
}
.custom-checkbox label{
    display: inline-block;
    position: relative;
    padding-left: 5px;
    margin: 0;
    z-index: 9;
    cursor: pointer;
    -webkit-transition: all 0.25s linear;
}
.custom-checkbox:hover label{
    color: #00bac6;
}
.custom-checkbox input[type=checkbox]:checked ~ label{
    color: #00bac6;
}
.custom-checkbox .check{
    display: block;
    position: absolute;
    height: 15px;
    width: 15px;
    top: 4px;
    left: 0;
    z-index: 5;
    transition: border .25s linear;
    -webkit-transition: border .25s linear;
}
.custom-checkbox .check::before {
    display: block;
    position: absolute;
    content: '';
    border-radius: 100%;
    width: 16px;
    height: 16px;
    top: 0;
    left: 0;
    margin: auto;
    transition: background 0.25s linear;
    -webkit-transition: background 0.25s linear;
    border: 1px solid #888;
    background: none;
}

.custom-checkbox input[type=checkbox]:checked ~ .check:before{
    border: 1px solid #00bac6;
}

.custom-checkbox input[type=checkbox]:checked ~ .check:after,
.custom-checkbox input[type=checkbox]:not(:checked) ~ .check:after {
    content: '';
    width: 8px;
    height: 8px;
    background: #00bac6;
    position: absolute;
    top: 4px;
    left: 4px;
    border-radius: 100%;
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
}
.custom-checkbox input[type=checkbox]:not(:checked) ~ .check:after {
    opacity: 0;
    -webkit-transform: scale(0);
    transform: scale(0);
}
.custom-checkbox input[type=checkbox]:checked ~ .check:after {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
}

/* Custom radio by css */
.custom-radio{
    position: relative;
}
.custom-radio input[type=radio]{
    display: inline-block;
    visibility: hidden;
}
.custom-radio label{
    display: inline-block;
    position: relative;
    padding-left: 5px;
    margin: 0;
    z-index: 9;
    cursor: pointer;
    -webkit-transition: all 0.25s linear;
}
.custom-radio:hover label{
    color: #00bac6;
}
.custom-radio input[type=radio]:checked ~ label{
    color: #00bac6;
}
.custom-radio .check{
    display: block;
    position: absolute;
    height: 15px;
    width: 15px;
    top: 4px;
    left: 0;
    z-index: 5;
    transition: border .25s linear;
    -webkit-transition: border .25s linear;
}
.custom-radio .check::before {
    display: block;
    position: absolute;
    content: '';
    border-radius: 100%;
    width: 16px;
    height: 16px;
    top: 0;
    left: 0;
    margin: auto;
    transition: background 0.25s linear;
    -webkit-transition: background 0.25s linear;
    border: 1px solid #888;
    background: none;
}

.custom-radio input[type=radio]:checked ~ .check:before{
    border: 1px solid #00bac6;
}

.custom-radio input[type=radio]:checked ~ .check:after,
.custom-radio input[type=radio]:not(:checked) ~ .check:after {
    content: '';
    width: 8px;
    height: 8px;
    background: #00bac6;
    position: absolute;
    top: 4px;
    left: 4px;
    border-radius: 100%;
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
}
.custom-radio input[type=radio]:not(:checked) ~ .check:after {
    opacity: 0;
    -webkit-transform: scale(0);
    transform: scale(0);
}
.custom-radio input[type=radio]:checked ~ .check:after {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
}