/* ------------------------------------------------
 */
.top-fig-beginner img {
    transform-origin: center bottom;
    animation: yurayura 5s linear infinite;
}



@keyframes yurayura {
    0%, 100% {
        transform: rotate(10deg);
    }

    50% {
        transform: rotate(-10deg);
    }
}


@keyframes yurayura-reverse {
    0%, 100% {
        transform: rotate(-10deg);
    }

    50% {
        transform: rotate(10deg);
    }
}

.fig-trial01 {
    animation: yurayura-updown 4s ease-in-out infinite;
}

.fig-trial02 {
    animation: yurayura-updown 5s ease-in-out infinite;
}

@keyframes yurayura-updown {
    0% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-10px);
    }

    /* 上に移動 */
    100% {
        transform: translateY(0);
    }
}

/* ------------------------------------------------
 */

.image-hover a {
    color: #000;
}

.image-hover-effect {
    position: relative;
    overflow: hidden;
    display: inline-block;
}

.image-hover-effect img {
    display: block;
    width: 100%;
    height: auto;
}

/* グラデーションオーバーレイ */
.image-hover-effect::before {
    content: "";
    position: absolute;
    top: 0;
    left: -100%;
    width: 0;
    height: 100%;
    background-image: linear-gradient(to right in oklab, #fbe105, #f91fae);
    /* background-image: linear-gradient(to right in oklab,#f7c6d9,#e88ab3); */
    opacity: 0;
    pointer-events: none;
    background-blend-mode: overlay, normal;
    mix-blend-mode:soft-light;
    /* mix-blend-mode: darken; */
    transition: left 0.5s ease;
    animation: huerotator 14s infinite alternate;
    z-index: 1;
    background-size: 400% 100%;
    border-radius: 10px;
}



/* @keyframes huerotator {
    0% {
        -webkit-filter: hue-rotate(0deg);
        filter: hue-rotate(0deg);
    }

    100% {
        -webkit-filter: hue-rotate(360deg);
        filter: hue-rotate(360deg);
    }
} */

.image-hover-effect:hover {}




.image-hover a:hover .image-hover-effect::before {
    opacity: 1;
    left: 0;
    width: 100%;
}

.image-hover-effect:hover .-cnt {
    color: #000;
}



/* ------------------------------------------------
 */
.grade-card {
    position: relative;
    display: inline-block;
    overflow: hidden;
}

.grade-card img {
    display: block;
    width: 100%;
    height: auto;
}

/* グラデーションレイヤー */

/* .grade-card {
  --c1: #ff0066;
  --c2: #fbe105;
  --c3: #f91fae;
  position: relative;
} */
.grade-card::before {
    content: '';
    position: absolute;
    inset: 0;
    width: 0;
    background-image: linear-gradient(to right in oklab, #fbe105, #f91fae);
    opacity: 0;
    /* transition: background 0.5s ease; */
    pointer-events: none;
    background-blend-mode: overlay, normal;
    mix-blend-mode: screen;
    transition: .7s;
    animation: huerotator 14s infinite alternate;
    border-radius: 10px;
}

/* ホバー時 */
/* .sec-teacher-list a:hover {
    background-color: red;
} */

.grade-card-list a:hover .grade-card::before {
    opacity: 1;
    left: 0;
    width: 100%;
}


/* .grad-effect-over {
    background: var(--grad-bg, linear-gradient(45deg, #ff9a9e, #fad0c4));
    transition: background 0.5s ease;
    cursor: pointer;
    display: inline-block;
    color: white;
    text-align: center;
} */