.js-toggle-btn {
    position: relative;
    cursor: pointer;
}

.js-toggle-target {
    display: none;
}

/* toggle plus */
.js-toggle-btn .toggle-plus {
    display: block;
    position: absolute;
    right: .5em;
    top: 50%;
    width: .75em;
    height: .75em;
    transform: translateY(-50%) rotate(0deg);
    transition: transform .3s 0s ease;
    cursor: pointer;
}

.js-toggle-btn .toggle-plus::before,
.js-toggle-btn .toggle-plus::after {
    content: "";
    position: absolute;
    background-color: #222;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

.js-toggle-btn .toggle-plus::before {
    width: 100%;
    height: 2px;
}

.js-toggle-btn .toggle-plus::after {
    width: 2px;
    height: 100%;
}

.js-toggle-btn:not(.open):hover .toggle-plus {
    transform: translateY(-50%) rotate(90deg);
}

.js-toggle-btn.open .toggle-plus::after {
    opacity: 0;
}