.absolute-center, .menu, .menu .btn .fa, .menu .btn.trigger .line {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
}

.menu {
    width: 1rem;
    height: 1rem;
    border-radius: 50%;
}
.menu .btn {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background: #ccc;
    opacity: 0;
    z-index: -10;
    cursor: pointer;
    -webkit-transition: opacity 1s, z-index 0.3s, -webkit-transform 1s;
    transition: opacity 1s, z-index 0.3s, -webkit-transform 1s;
    transition: opacity 1s, z-index 0.3s, transform 1s;
    transition: opacity 1s, z-index 0.3s, transform 1s, -webkit-transform 1s;
    -webkit-transform: translateX(0);
    transform: translateX(0);
}
.menu .btn .fa {
    font-size: 3em;
    -webkit-transition: color 0.3s;
    transition: color 0.3s;
}
.menu .btn:hover .fa {
    color: rgba(255, 255, 255, 0.7);
}
.menu .btn.trigger {
    opacity: 1;
    z-index: 100;
    cursor: pointer;
    -webkit-transition: -webkit-transform 0.3s;
    transition: -webkit-transform 0.3s;
    transition: transform 0.3s;
    transition: transform 0.3s, -webkit-transform 0.3s;
}
.menu .rotater {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
}
.menu.active .btn-icon {
    opacity: 1;
    z-index: 50;
}
.menu.active .trigger .line {
    height: 0px;
    top: 45%;
}
.menu.active .trigger .line:before {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    width: 110%;
}
.menu.active .trigger .line:after {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    width: 110%;
}

.rotater:nth-child(1) {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
}

.menu.active .rotater:nth-child(1) .btn-icon {
    -webkit-transform: translateY(-10em) rotate(0deg);
    transform: translateY(-10em) rotate(0deg);
}

.rotater:nth-child(2) {
    -webkit-transform: rotate(30deg);
    transform: rotate(30deg);
}

.menu.active .rotater:nth-child(2) .btn-icon {
    -webkit-transform: translateY(-10em) rotate(-30deg);
    transform: translateY(-10em) rotate(-30deg);
}

.rotater:nth-child(3) {
    -webkit-transform: rotate(60deg);
    transform: rotate(60deg);
}

.menu.active .rotater:nth-child(3) .btn-icon {
    -webkit-transform: translateY(-10em) rotate(-60deg);
    transform: translateY(-10em) rotate(-60deg);
}

.rotater:nth-child(4) {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
}

.menu.active .rotater:nth-child(4) .btn-icon {
    -webkit-transform: translateY(-10em) rotate(-90deg);
    transform: translateY(-10em) rotate(-90deg);
}

.rotater:nth-child(5) {
    -webkit-transform: rotate(120deg);
    transform: rotate(120deg);
}

.menu.active .rotater:nth-child(5) .btn-icon {
    -webkit-transform: translateY(-10em) rotate(-120deg);
    transform: translateY(-10em) rotate(-120deg);
}

.rotater:nth-child(6) {
    -webkit-transform: rotate(150deg);
    transform: rotate(150deg);
}

.menu.active .rotater:nth-child(6) .btn-icon {
    -webkit-transform: translateY(-10em) rotate(-150deg);
    transform: translateY(-10em) rotate(-150deg);
}

.rotater:nth-child(7) {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
}

.menu.active .rotater:nth-child(7) .btn-icon {
    -webkit-transform: translateY(-10em) rotate(-180deg);
    transform: translateY(-10em) rotate(-180deg);
}

.rotater:nth-child(8) {
    -webkit-transform: rotate(210deg);
    transform: rotate(210deg);
}

.menu.active .rotater:nth-child(8) .btn-icon {
    -webkit-transform: translateY(-10em) rotate(-210deg);
    transform: translateY(-10em) rotate(-210deg);
}

.rotater:nth-child(9) {
    -webkit-transform: rotate(240deg);
    transform: rotate(240deg);
}

.menu.active .rotater:nth-child(9) .btn-icon {
    -webkit-transform: translateY(-10em) rotate(-240deg);
    transform: translateY(-10em) rotate(-240deg);
}

.rotater:nth-child(10) {
    -webkit-transform: rotate(270deg);
    transform: rotate(270deg);
}

.menu.active .rotater:nth-child(10) .btn-icon {
    -webkit-transform: translateY(-10em) rotate(-270deg);
    transform: translateY(-10em) rotate(-270deg);
}

.rotater:nth-child(11) {
    -webkit-transform: rotate(300deg);
    transform: rotate(300deg);
}

.menu.active .rotater:nth-child(11) .btn-icon {
    -webkit-transform: translateY(-10em) rotate(-300deg);
    transform: translateY(-10em) rotate(-300deg);
}

.rotater:nth-child(12) {
    -webkit-transform: rotate(330deg);
    transform: rotate(330deg);
}

.menu.active .rotater:nth-child(12) .btn-icon {
    -webkit-transform: translateY(-10em) rotate(-330deg);
    transform: translateY(-10em) rotate(-330deg);
}
.menu img {
    width: 100%;
    height: 100%;
}
.menu .img-mask {
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background-color: rgba(0, 0, 0, .3);
}
.menu .img-mask-active {
    background-color: rgba(0, 0, 0, 0);
}
.menu .center-txt {
    width: 100%;
    line-height: 1.5;
    box-sizing: border-box;
    padding: .1rem .2rem;
    background-color: rgba(255, 255, 255, .5);
    color: #000;
    top: 50%;
    font-size: .2rem;
    transform: translateY(-50%);
    position: absolute;
}