@charset "uft-8";

/* ====================
header
==================== */

.hum__trigger span {
    background-color: var(--primary-white);
}

header.active2 .hum__trigger span {
    background-color: var(--primary-black);
}

.hum__trigger span.active {
    background-color: var(--primary-black);
}

/* ====================
Article header
==================== */
.article__header {
    margin-top: -24px;
    position: relative;

    width: 100%;
    aspect-ratio: 1 / 1;
    overflow: hidden;
}

.article__logo {
    width: 65px;
    height: 65px;
    position: absolute;
    top: 20px;
    left: 5.13%;
    z-index: 1;
}

.article__header video#bgvid {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.article__title {
    color: var(--primary-white);
    position: absolute;
    top: 50%;
    left: 52.5%;
    transform: translate(-50%, -50%);
    font-size: 2.0rem;
    font-weight: bold;
    white-space: nowrap;
    letter-spacing: 0.2em;
}

.article__title .yakumono {
    letter-spacing: -0.1em;
}

.articleHeaderNav__item {
    letter-spacing: 0.03em;
}

.articleHeaderNav__item a img {
    display: block;
}

/* article header pc */
@media screen and (min-width:769px) {
    /* 769px~ */

    .article__header {
        height: 100vh;
    }

    .article__logo {
        width: 110px;
        height: 110px;
        position: absolute;
        left: 5.56%;
    }

    .article__header video#bgvid {
        height: 100vh;
    }

    .article__title {
        left: 52.08%;
        font-size: 4.0rem;
    }

    .articleHeaderNav__list {
        display: none;
    }

}

/* pc 769px~ */

@media screen and (min-width:1250px) {
    /* 1250px~ */

    .article__header {
        margin-top: 0;
    }

    .articleHeaderNav__list {
        display: flex;
        align-items: center;
        position: absolute;
        top: 6.67%;
        right: 0;
        padding: 20px 5.56%;
    }

    .articleHeaderNav__item {
        color: var(--primary-white);
        text-align: center;
        font-size: 1.7rem;
        margin: 0 0 0 40px;
    }

    .articleHeaderNav__item:last-child {
        width: 25px;
        height: 25px;
    }

    .article__logo {
        width: 150px;
        height: 150px;
        position: absolute;
        top: 6.67%;
        left: 5.56%;
    }

}

/* pc 1250px~ */


/* ====================
About
==================== */
.section--about {
    padding: 70px 5.13% 60px;
}

.section--about-item {
    display: flex;
    flex-wrap: wrap;
}

.section--about-item01 {
    margin-bottom: 44px;
}

.about__txt1 {
    font-size: 2.0rem;
    font-weight: 500;
    display: inline-block;
    margin-left: auto;
    margin-bottom: 32px;
}

.about__txt1 span {
    display: inline-block;
}

.about__img1 {
    width: 71.4%;
}

.section--about-item02 {
    flex-direction: row-reverse;
    align-items: flex-start;
    justify-content: space-between;
}

.about__img2 {
    width: 40.8%;
}

.about__img3 {
    width: 41.4%;
    margin: 79px 0 47px;
}

.about__txt2 {
    font-size: 1.5rem;
    letter-spacing: 0.1em;
    text-align: center;
    width: 100%;
    margin-bottom: 43px;
}

.about__txt2 span {
    display: inline-block;
}

.right {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
}

.about__img4 {
    width: 62.85%;
}

.about__txt3 {
    display: block;
    margin: 33px 0 0 auto;
    margin-left: auto;
    font-size: 1.5rem;
    letter-spacing: 0.1em;
}

.about__img5 {
    display: block;
    width: 70%;
    margin-left: auto;
    margin-top: 36px;
}

/* about 600px~ */
@media screen and (min-width:599px) {
    /* .section--about {
        max-width: 1160px;
        padding: 130px 5.56% 0;
    } */

    .section--about-item01 {
        flex-direction: column;
    }

}

/* pc 599px */

/* about 1000px~ */
@media screen and (min-width:999px) {
    .section--about {
        max-width: 1160px;
        padding: 130px 5.56% 0;
    }

    .section--about-item01 {
        margin-bottom: 0;
        flex-direction: row-reverse;
    }

    .about__txt1 {
        font-size: 2.8rem;
        line-height: 2.0;
        letter-spacing: 0.05em;
        margin: 97px 2.8% 0 auto;
    }

    .about__img1 {
        width: 65%;
    }

    .section--about-item02 {
        justify-content: flex-start;
        flex-wrap: nowrap;
        position: relative;
    }

    .about__img2 {
        width: 28%;
        margin-top: -115px;
    }

    .about__img3 {
        position: absolute;
        left: 0;
        top: 245px;
        width: 29%;
        margin: 0;
    }

    .about__txt2 {
        width: fit-content;
        font-size: 2.0rem;
        white-space: nowrap;
        line-height: 2.40;
        text-align: left;
        margin: 77px 109px 0 -52px;

    }

    .section--about-item03 {
        justify-content: space-between;
        margin-top: 80px;
        flex-direction: row-reverse;
    }

    .section--about-item03 .right {
        width: 51%;
    }

    .about__img4 {
        width: 94.1%;
        margin-left: auto;
    }

    .about__txt3 {
        width: 100%;
        margin: 80px 0 0 auto;
        font-size: 2.0rem;
        text-align: right;
        white-space: nowrap;
    }

    .left {
        width: 40.5%;
        margin-top: 286px;
    }

    .about__img5 {
        display: block;
        width: 100%;
        margin-left: 0;
        margin-top: 0px;
    }

}

/* pc 999px */

/* ====================
Features
==================== */
.features__item {
    width: 76%;
    margin: 45px auto 0;
}

.features__item:first-child {
    margin: 70px auto 0;
}

.featuresItem__img {
    position: relative;
}

.featuresItem__img::after {
    content: "";
    position: absolute;
    bottom: 0;
    right: -15.7%;
    width: 45.1%;
    aspect-ratio: 1 / 1;
    background-image: url("../images/kanji1.png");
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    transform: translate(20px, 0);
    transition: 2s;
    opacity: 0;
}

.featuresItem__img.animated::after {
    opacity: 1;
    transform: translate(0, 0);
    transition: 2s;
}

.featuresItem__img--img2::after {
    background-image: url("../images/kanji2.png");
}

.featuresItem__img--img3::after {
    background-image: url("../images/kanji3.png");
}

.featuresItem__img--img4::after {
    background-image: url("../images/kanji4.png");
}

.featuresItem__img--img5::after {
    background-image: url("../images/kanji5.png");
}

.features__item h4 {
    font-size: 2.0rem;
    font-weight: 500;
    line-height: 1;
    margin-top: 25px;
}

.features__item p {
    margin-top: 20px;
}

.btn--features {
    margin-top: 40px;
}

/* Features pc */
@media screen and (min-width:769px) {
    .section--features {
        padding: 150px 5.56% 130px;
    }

    .features {
        margin-top: -193px;
    }

    .features__item {
        width: 39.84%;
        margin: 0 auto 0 0;
    }

    .features__item:first-child {
        margin: 0 auto 0 0;
    }

    .features__item:nth-child(2) {
        margin: -183px 7.81% 0 auto;
    }

    .features__item:nth-child(3) {
        margin: -183px auto 0 0;
    }

    .features__item:nth-child(4) {
        margin: -183px 7.81% 0 auto;
    }

    .features__item:nth-child(5) {
        margin: -183px auto 0 0;
    }

    .featuresItem__img::after {
        right: -19.61%;
        width: 47.06%;
        background-image: url(../images/kanji1.png);
        background-size: contain;
        background-position: center;
        background-repeat: no-repeat;
        transform: translate(60px, 0);
    }

    .featuresItem__img--img2::after {
        background-image: url(../images/kanji2.png);
    }

    .featuresItem__img--img3::after {
        background-image: url(../images/kanji3.png);
    }

    .featuresItem__img--img4::after {
        background-image: url(../images/kanji4.png);
    }

    .featuresItem__img--img5::after {
        background-image: url(../images/kanji5.png);
    }

    .features__item h4 {
        font-size: 2.8rem;
        font-weight: 500;
        margin-top: 25px;
    }

    .features__item p {
        margin-top: 25px;
    }

    .btn--features {
        margin-top: 75px;
    }

}

/* pc 769px */

/* ====================
Information
==================== */
.section--information {
    background-image: url(../images/bg_white.jpg);
    background-size: cover;
}

.information {
    margin-top: 70px;
}

.information__item {
    margin-top: 40px;
}

.information__item h4 {
    font-size: 2.0rem;
    font-weight: 500;
    text-align: center;
    margin-top: 10px;
}

.btn--information {
    margin-top: 40px;
}

.events {
    background-image: url(../images/benner_events_sp.png);
    background-size: cover;
    background-position: center;
    margin-top: 70px;
}

.events__txt {
    padding: 63px 30px;
    color: var(--primary-white);
}

.events__txt h3 {
    line-height: 1;
    font-size: 3.0rem;
    font-weight: 500;
    text-align: center;
}

.events__txt p {
    text-align: center;
    margin-top: 20px;
}

.btn--events a {
    margin-top: 20px;
    color: var(--primary-white);
}

.btn--events a::after {
    background-image: url("data:image/svg+xml;utf8,<svg width='21' height='10' viewBox='0 0 21 10' fill='none' xmlns='http://www.w3.org/2000/svg'><path d='M15.1154 9.5L20.5 5.03728M20.5 5.03728L15.1154 0.5M20.5 5.03728L0.499999 5.03728' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round'/></svg>");
}

/* information pc */
@media screen and (min-width:769px) {
    .section--information {
        padding: 150px 5.56% 170px;
        background-image: none;
    }

    .information {
        display: flex;
        justify-content: space-between;
        margin-top: 130px;
    }

    .information__item {
        width: 30.47%;
        margin-top: 0;
    }

    .information__item h4 {
        font-size: 2.8rem;
        margin-top: 20px;
        line-height: 1.75;
    }

    .btn--information {
        margin-top: 80px;
    }

    .events {
        background-image: url(../images/benner_events.png);
        margin: 110px auto 0;
        max-width: 1000px;
    }

    .events__txt h3 {
        font-size: 5.0rem;
    }

    .events__txt {
        padding: 75px 0;
    }

    .events__txt p {
        margin-top: 24px;
    }

    .btn--events {
        margin-top: 30px;
    }

}

/* pc 769px */

/* ====================
instructor
==================== */
.instructor__txt {
    margin-top: 40px;
}

.btn--instructor {
    margin-top: 40px;
}

.instructor {
    margin-top: 45px;
}

.instructor {
    overflow: hidden;
    padding-bottom: 33px;
}

.instructor__item {
    position: relative;
}

.slick-list {
    overflow: inherit;
}

.slick-slide {
    margin: 0 10px;
    width: 280px;
    transition: .5s;
}

.slick-cloned {
    transition: .5s;
}

.instructorItem__txt {
    color: var(--primary-white);

    position: absolute;
    bottom: 25px;
    left: 15px;
}

.instructorItem__title {
    font-size: 2.0rem;
    font-weight: 700;
    line-height: 1.5;
}

.instructorItem__name {
    font-family: "Noto Sans JP";
    font-size: 1.4rem;
    font-weight: 500;
    line-height: 1;
    margin-top: 15px;
}

.slick-dots {
    bottom: 0;
}

.slick-dots li {
    width: 8px;
    height: 8px;
    margin: 0 4px;
}

.slick-dots li button {
    width: fit-content;
    height: fit-content;
    padding: 0
}

.slick-dots li button:before {
    width: 8px;
    height: 8px;
    font-size: 0;
    background-color: var(--primary-lightGray);
    border-radius: 50%;
    opacity: 1;
}

.slick-dots li.slick-active button:before {
    background-color: var(--primary-blue);
}

.slick-dotted.slick-slider {
    margin-bottom: 0;
}

/* instructor pc */
@media screen and (min-width:769px) {

    .section--instructor {
        padding: 0 0 130px;
        max-width: inherit;
    }

    .topic__row--instructor {
        max-width: 1440px;
        margin: -80px auto 0;
        padding: 0 5.56%;
        display: flex;
        flex-direction: row-reverse;
        align-items: flex-end;
        justify-content: space-between;
    }

    .topic__wrap--instructor {
        margin: 0 2.66% 0 0;
    }

    .instructor-area {
        position: relative;
    }

    .instructor {
        margin-top: 100px;
        padding-bottom: 58px;
    }

    .slick-slide {
        margin: 0 30px;
    }

    .prev {
        width: 20px;
        height: 24px;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 19'%3E%3Cpath d='M9.12435 0.505859L1.01562 9.38677L9.12435 18.2677' fill='none' stroke='%235A5A5A' stroke-width='1.5'/%3E%3C/svg%3E");
        background-repeat: no-repeat;
        background-position: center;
        background-size: contain;
        position: absolute;
        top: 40%;
        left: calc(50% - 170px);
        cursor: pointer;
    }

    .next {
        width: 20px;
        height: 24px;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 19'%3E%3Cpath d='M9.12435 0.505859L1.01562 9.38677L9.12435 18.2677' fill='none' stroke='%235A5A5A' stroke-width='1.5'/%3E%3C/svg%3E");
        background-repeat: no-repeat;
        background-position: center;
        background-size: contain;
        transform: scaleX(-1);
        position: absolute;
        top: 40%;
        right: calc(50% - 170px);
        filter: grayscale(2);
        cursor: pointer;
    }

}

/* pc 769px */


/* ====================
voices
==================== */

.section--voices {
    background-image: url(../images/bg_white.jpg);
    background-size: cover;
}

.section--voices h4:first-of-type {
    font-size: 2.0rem;
    font-weight: 500;
    text-align: center;
    margin-top: 70px;
}

.section--voices h4:last-of-type {
    font-size: 2.0rem;
    font-weight: 500;
    text-align: center;
    margin-top: 40px;
}

.voices {
    margin-top: 30px;
}

.voices__item {
    padding: 30px 25px 25px;
    margin-top: 20px;
    background-color: var(--primary-white);
}

.voicesItem__title {
    display: flex;
    align-items: center;
}

.voicesItem__title img {
    width: 50px;
}

.voicesItem__title h5 {
    color: var(--primary-blue);
    font-size: 1.8rem;
    font-family: "Noto Sans JP";
    font-weight: 500;
    line-height: 1.3;
    margin-left: 10px;
}

.voicesItem__txt {
    font-family: "Noto Sans JP";
    margin-top: 10px;
}

.voicesItem__txt--2 {
    line-height: 1;
    text-align: right;
}

.btn--voices {
    margin-top: 40px;
}

/* voices pc */
@media screen and (min-width:769px) {
    .section--voices h4:first-of-type {
        font-size: 2.8rem;
        line-height: 1.75;
        margin-top: 130px;
    }

    .section--voices h4:last-of-type {
        font-size: 2.8rem;
        line-height: 1.75;
        margin-top: 75px;
    }

    .voices {
        margin-top: 50px;
        display: flex;
        justify-content: space-between;
    }

    .voices__item {
        padding: 40px 30px 30px;
        margin-top: 0;
        width: 48.44%;
    }

    .voicesItem__title img {
        width: 60px;
    }

    .voicesItem__title h5 {
        font-size: 2.0rem;
        margin-left: 20px;
    }

    .voicesItem__txt {
        margin-top: 20px;
    }

    .voicesItem__txt--2 {
        font-size: 1.4rem;
    }

    .btn--voices {
        margin-top: 75px;
    }

}

/* pc 769px */

/* ====================
instagram
==================== */
.instagram__txt {
    margin-top: 40px;
}

.section #sb_instagram #sbi_images {
    padding: 0;
    margin-top: 45px;
}

/* instagram pc */
@media screen and (min-width:769px) {
    .section--instagram {
        max-width: 1160px;
    }

    .instagram__txt {
        text-align: center;
    }

    .section #sb_instagram #sbi_images {
        margin-top: 85px;
    }

}

/* pc 769px */