@charset "utf-8";



/* ==========================
      article__header
===========================*/
.mainVisual .logo__pc {
    display: none;
}

.logo__sp {
    display: block;
    width: 375px;
    height: 473px;
    margin: 22px auto 0;
}


.logo__sp--picture {
    margin-top: 22px;
    width: 100%;
}

.mainVisual {
    text-align: center;
}

/* pc 769px */
@media screen and (min-width:769px) {

    .logo__sp {
        display: none;
    }

    .mainVisual .logo__pc {
        display: block;
    }

    .logo__pc {
        display: block;
        width: 1200px;
        height: auto;
        margin: 0 auto;
    }

}/* pc 769px */


/* ==========================
    section section--choki
===========================*/
.topic__pc {
    display: none;
}

.topic__sp {
    display: block;
    width: 374px;
    height: 111px;
    margin: 0 auto;
}

.topic__sp--choki {
    margin-top: 30px;
}

.mainCaption {
    font-family: Noto Sans JP;
    font-size: 2.4rem;
    font-weight: 300;
    line-height: 2.29;
    padding: 22px 26px;
}

.content {
    text-align: center;
    font-size: 2.6rem;
    letter-spacing: 0.2em;
    margin: 118px auto 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
    max-width: 600px;
}

.content__txt {
    font-family: "Noto Sans JP";
    color: #333;
    font-size: 2.4rem;
    font-weight: 300;
    line-height: 1.87;
    margin: 0 14px;
}

.content__box {
    background-color: #FFF7AF;
    border-radius: 20px;
    margin: 11px 13px;
    margin-top: 22px;
}

.year__list {
    text-align: center;
    font-size: 3.6rem;
    font-weight: 300;
}

.year__class,
.year__when {
    text-align: center;
    font-size: 2.4rem;
    font-weight: 300;
}

.year__only {
    text-align: center;
    font-size: 2.0rem;
    font-weight: 300;
}

.year__list {
    margin-top: 12px;
}

.year--one {
    margin: 71px auto 20px;
    padding: 40px 10px;
    padding-bottom: 93px;
    border-radius: 20px;
    background-color: #FFD9D9;
    width: 313px;
    max-width: 100%;
    text-align: center;
}

.year__class,
.year__when {
    font-family: "Noto Sans JP";
    margin-top: 36px;
}

.year--two {
    margin: 20px auto;
    padding: 40px 10px;
    padding-bottom: 93px;
    border-radius: 20px;
    background-color: #ECE1FF;
    width: 313px;
    max-width: 100%;
    text-align: center;
}

.year--three {
    margin: 20px auto;
    padding: 40px 10px;
    padding-bottom: 37px;
    border-radius: 20px;
    background-color: #FFDEAF;
    width: 313px;
    max-width: 100%;
    text-align: center;
}

.year__class--three,
.year__when--three {
    margin-top: 0;
    margin-top: 28px;
}

.cite {
    text-align: center;
    font-size: 1.0rem;
    font-weight: 300;
    line-height: 1.6;
    margin-top: 20px;
}

.voice {
    text-align: center;
    font-size: 2.6rem;
    margin-top: 144px;
}

.voice__pc {
    display: none;
}

.voice__sp {
    display: block;
    width: 375px;
    height: auto;
    margin: 20px auto 5px;
}

/* pc 955px */
@media screen and (min-width:955px) {
    .topic__sp {
        display: none;
    }

    .topic__pc {
        display: block;
        width: 887px;
        height: 144px;
        margin: 0 auto;
    }

    .topic__pc--choki {
        margin-top: -20px;
    }

    .mainCaption {
        text-align: center;
        margin-top: 62px;
    }

    .mainCaption .spBr {
        display: block;
    }

    .content {
        margin-top: 94px;
        font-size: 3.6rem;
        font-weight: 400;
    }

    .content__box {
        padding: 10px 52px;
        margin: 29px auto 0;
        max-width: 1010px;
    }

    .content__txt {
        margin: 0;
    }

    .study {
        display: flex;
        justify-content: space-between;
        gap: 20px;
        flex-wrap: wrap;
        max-width: 1028px;
        margin: 0 auto;
        margin-top: 81px;
        text-align: center;
    }

    .study__box {
        flex: 1;
        min-width: 300px;
        max-width: 400px;
        text-align: center;
    }

    .year--one {
        margin: 0;
        margin-top: 0;
        max-width: 313px;
    }

    .year--two {
        margin: 0;
        margin-top: 0;
        max-width: 313px;
    }

    .year--three {
        margin: 0;
        margin-top: 0;
        max-width: 313px;
    }

    .cite {
        text-align: center;
        font-size: 2rem;
    }

    .cite .spBr {
        display: none;
    }

    .voice {
        font-size: 3.6rem;
        font-weight: 400;
        margin-top: 191px;
        text-align: center;
    }

    .voice__sp {
        display: none;
    }

    .voice__pc {
        display: block;
        width: 1440px;
        height: auto;
        margin: 0 auto;
        margin-top: 50px;
    }

    .btn--student_works {
        margin-top: 23px;
    }
}/* pc 940px */


/* ==========================
    section--moving_image
===========================*/
.section--moving_image {
    text-align: center;
}

.choki__group {
    margin-top: 130px;
}

.cyoki__span {
    font-family: "Noto Sans JP";
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 1.2;
    letter-spacing: 0.2em;
    text-align: center;
}

.cyoki__txt {
    font-size: 2.0em;
    font-weight: 300;
    line-height: 1.2;
    letter-spacing: 0.2em;
    text-align: center;
}

.cyoki__time {
    font-family: "Noto Sans JP";
    margin: 0 auto;
    font-size: 1.6rem;
    font-weight: 300;
    line-height: 1.87;
    text-align: center;
}

.choki__title {
    font-family: "Noto Sans JP";
    text-align: center;
    font-size: 2.5rem;
    font-weight: 400;
    letter-spacing: 0.1em;
}

.movie__choki {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 9;
    margin: 14px auto 0;
}

.btn--details {
    margin-top: 55px;
    padding: 10px 0;
    letter-spacing: 0.05em;
}


/* pc 849px */
@media screen and (min-width:849px) {
    .movingBox {
        display: flex;
        align-items: center;
        max-width: 1190px;
        width: 100%;
        height: auto;
        margin: 199px auto 0;
        background-color: rgba(255, 247, 175);
        padding: 20px;
        overflow: hidden;
        border-radius: 20px 20px;
    }

    .choki {
        display: flex;
        flex-direction: row-reverse;
        width: 100%;
        max-width: 1160px;
        justify-content: space-between;
        align-items: center;
        gap: 20px;
    }

    .choki li {
        flex: 1 1 50%;
        max-width: 50%;
    }

    .movie {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 100%;
        max-width: 571px;
        height: auto;
    }

    .movie__choki {
        width: 100%;
        height: auto;
        aspect-ratio: 16 / 9;
        border-radius: 20px 20px;
    }


    .btn--details {
        margin-top: 40px;
        padding: 25px 0;
    }

    .choki__group {
        margin-top: 0;
        text-align: center;
        flex: 1;
        min-width: 300px;
    }

    .choki__txt .spBr {
        display: block;
    }

    .choki__title {
        font-family: "Noto Sans JP";
        font-size: 3.0em;
        font-weight: 400;
        line-height: 2;
        text-align: center;
        width: 100%;
    }

    .cyoki__span,
    .cyoki__time {
        font-family: "Noto Sans JP";
        font-size: 2.5rem;
        font-weight: 300;
        line-height: 1.68px;
        letter-spacing: 0.2em;
        margin-top: 16px;
        text-align: center;
    }

    .cyoki__span {
        font-weight:400;
        font-size: 1.8em;
        line-height: 1.5;
    }

}/* pc 849px */


/* ==========================
      fadeIN
===========================*/
.fadeIn {
    transform: translate(0, 50px);
    opacity: 0;
    transition: 0.8s;
}

.fadeIn.animated {
    transform: translate(0, 0);
    opacity: 1;
}


/* ==========================
 section--hometown
===========================*/
.topic__sp--charm {
    margin-top: 175px;
}

.hometown__about {
    font-family: "Noto Sans JP";
    color: #333;
    font-size: 2.4rem;
    font-weight: 300;
    line-height: 1.75;
    padding: 0 8.2%;
    margin-top: 17px;
}

.hometown__photograph {
    text-align: center;
}

.hometown__camp {
    margin-top: 17px;
}

.hometown__sika {
    font-size: 2.4rem;
    font-weight: 300;
    line-height: 1.25;
    margin-top: 5px;
}

.hometown__tourism {
    color: var(--primary-green);
    font-size: 1.8rem;
    font-weight: 300;
    line-height: 1.25;
    margin-top: 10px;
}

.hometown__camp {
    margin-top: 100px;
}

.hometown__tokiwa,
.hometown__anpeizan {
    font-size: 2.4rem;
    font-weight: 300;
    line-height: 1;
    letter-spacing: 0.07em;
    margin-top: 5px;
}

.hometown__tokiwa{
    margin-top: 5px;
}

.hometown__anpeizan{
    line-height: 1.25;
}

.hometown__siteNappu {
    color: var(--primary-green);
    font-size: 1.8rem;
    font-weight: 300;
    margin-top: 10px;
}

.hometown__clickNappu {
    display: block;
    width: 207px;
    height: 25px;
    margin: 6px auto 80px;
}

.hometown__skiing {
    margin-top: 100px;
}

.hometown-skiImg {
    display: none;
}

.hometown__txtPc {
    display: none;
}

.hometown__txtSp {
    display: block;
    width: 100%;
    margin: 100px auto 0;
    }

.hometown__sp {
    text-align: center;
    font-family: "Zen Kaku Gothic New";
    font-size: 2.0em;
    font-weight: 400;
    line-height: 4; 
    letter-spacing: 0.08em;
    margin-top: 20px;
}


/* pc 849px */
@media screen and (min-width:849px) {
    .hometown__sikaCamp,
    .hometown__tokiwa {
        line-height: 1.25;
    }

    .hometown__tokiwa{
        margin-top: 5px;
    }

}/* pc 849px */




.fadeIn {
    opacity: 0;
    visibility: hidden;
    transform: translateY(50px);
    transition: opacity 0.8s ease-out, transform 0.8s ease-out;
}

.fadeIn.animated {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.rainbow {
    display: block;
    max-width: 100%;
    height: auto;
    margin-top: 100px;
    margin: 100px auto 0;
}

.linklink {
    font-size: 1.3rem;
    color: var(--primary-green);
    text-align: center;
    margin-top: 10px;
}

.hometown__about .spBr {
    display: block;
}

.linklink .spBr {
    display: block;
}


/* pc 900px */
@media screen and (min-width:900px) {
    .topic__pc--charm {
        margin-top: 163px;
    }

    .hometown__about {
        padding: 0;
        margin-top: 20px;
        text-align: center;
    }

    .hometown__photograph {
        display: flex;
        justify-content: center;
        gap: 80px;
    }

    .hometown__camp,
    .hometown__skiing {
        margin-top: 0;
        margin-top: 61px;
    }

    .hometown__txtSp {
        display: none;
    }

    .hometown__txtPc  {
        display: block;
        margin-top: 500px;
        color: #333;
        text-align: center;
        font-family: "Kiwi Maru";
        font-size: 2.6rem;
        line-height: 2.7;
        letter-spacing: 2.88px;
    }


    .rainbow {
        display: block;
        margin: 0 auto -500px;
    }

}/* pc 900px */


/* ==========================
 section--access
===========================*/
.topic__sp--access {
    margin-top: 100px;
}

.btn--access {
    margin-top: 37px;
}

.btn--access .abirahp {
    font-size: 1.3rem;
}

/* pc 769px */
@media screen and (min-width:769px) {
    .topic__pc--access {
        margin-top: 120px;
    }

    .btn--access {
        margin-top: 60px;
    }

    .btn--access .abirahp {
        font-size: 1.8rem;
    }
}/* pc 769px */