.twitter-card,
.js {
    display: none;
}


p {
    color: #48164e;
}


img {
    width: 100%;
}


/*==================*
アニメーション
*==================*/

/* 元々あったボタン消し */
header {
    display: none !important;
}

/* ローディングアニメーション 背景画面設定　*/
#chun_afb {
    /*fixedで全面に固定*/
    position: fixed;
    width: 100%;
    height: 100%;
    z-index: 999;
    background: #48164e;
    text-align: center;
    color: #fff;
}

/* ローディングアニメーション 画像中央配置　*/
#chun_afb_logo {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

/* ローディングアニメーション アイコンの大きさ設定　*/
#chun_afb_logo img {
    width: 400px;
}

/* ローディングアニメーション fadeUpをするアイコンの動き */
.fadeUp {
    animation-name: fadeUpAnime;
    animation-duration: 0.5s;
    animation-fill-mode: forwards;
    opacity: 0;
}

@keyframes fadeUpAnime {
    from {
        opacity: 0;
        transform: translateY(100px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.scroll_up {
    transition: 0.8s ease-in-out;
    transform: translateY(30px);
    opacity: 0;
}

.scroll_up.on {
    transform: translateY(0);
    opacity: 1;
}

.scroll_down {
    transition: 0.8s ease-in-out;
    transform: translateY(-30px);
    opacity: 0;
}

.scroll_down.on {
    transform: translateY(0);
    opacity: 1;
}

.scroll_left {
    -webkit-transition: 0.8s ease-in-out;
    -moz-transition: 0.8s ease-in-out;
    -o-transition: 0.8s ease-in-out;
    transition: 0.8s ease-in-out;
    transform: translateX(-30px);
    opacity: 0;
    filter: alpha(opacity=0);
    -moz-opacity: 0;
}

.scroll_left.on {
    opacity: 1;
    filter: alpha(opacity=100);
    -moz-opacity: 1;
    transform: translateX(0);
}

.scroll_right {
    -webkit-transition: 0.8s ease-in-out;
    -moz-transition: 0.8s ease-in-out;
    -o-transition: 0.8s ease-in-out;
    transition: 0.8s ease-in-out;
    transform: translateX(30px);
    opacity: 0;
    filter: alpha(opacity=0);
    -moz-opacity: 0;
}

.scroll_right.on {
    opacity: 1;
    filter: alpha(opacity=100);
    -moz-opacity: 1;
    transform: translateX(0);
}

.inview-blur {
    opacity: 0;
    -moz-transition: -moz-transform 0.5s linear;
    -webkit-transition: -webkit-transform 0.5s linear;
    -o-transition: -o-transform 0.5s linear;
    -ms-transition: -ms-transform 0.5s linear;
    transition: transform 0.5s linear;
    -webkit-animation-duration: 1.5s;
    animation-duration: 1.5s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
}

.blur {
    -webkit-animation-name: imageBlur;
    animation-name: imageBlur;
    opacity: 1;
    transition: .8s;
}

@-webkit-keyframes imageBlur {
    from {
        opacity: 0;
        -webkit-filter: blur(15px);
        -moz-filter: blur(15px);
        -ms-filter: blur(15px);
        -o-filter: blur(15px);
        filter: blur(15px);
    }

    to {
        opacity: 1;
        -webkit-filter: blur(0px);
        -moz-filter: blur(0px);
        -ms-filter: blur(0px);
        -o-filter: blur(0px);
        filter: blur(0px);
    }
}

@keyframes imageBlur {
    from {
        opacity: 0;
        -webkit-filter: blur(15px);
        -moz-filter: blur(15px);
        -ms-filter: blur(15px);
        -o-filter: blur(15px);
        filter: blur(15px);
    }

    to {
        opacity: 1;
        -webkit-filter: blur(0px);
        -moz-filter: blur(0px);
        -ms-filter: blur(0px);
        -o-filter: blur(0px);
        filter: blur(0px);
    }
}

/*========= レイアウトのためのCSS ===============*/


#scroll-img {
    width: 100%;
    height: 100vh;
    position: relative;
    background-color: #FFFCF4;
    z-index: -30;
}

#scroll-img:before {
    content: '';
    position: fixed;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 80vh;
    /*背景画像設定*/
    background: url("https://www.chunshuitang.jp/wp-content/themes/chunshuitang/shared/img/2023_af/scroll-img.jpg") no-repeat center;
    background-size: cover;
}

#reservation {
    position: relative;
    z-index: 1;
    background: #FFFCF4;
    text-align: center;
    height: 81vw;
}

@media screen and (max-width:768px) {

    #scroll-img,
    #scroll-img:before {
        height: 90vh;
    }

}


/*==================*
背景
*==================*/

.background {
    background-image: url(shared/img/25af_autumn/background_image_sm2.jpg),
        url(shared/img/25af_autumn/background_image_sm1.jpg);
    background-size: 50% auto,
        cover;
    background-position: 50%,50%;
    background-repeat: no-repeat,
        no-repeat;
    height: 525.5vw;
    position: relative;
}

/*==================*
トップ
*==================*/

.top {
    height: 49.8vw;
}

header {
    background-color: rgba(255, 255, 255, 1);
    height: 58px;
    position: relative;
    z-index: 50;
}


.top-btn {
    position: absolute;
    top: 7%;
    left: 59%;
    width: 14%;
}

#block-bg1 {
    background-image: url(https://www.chunshuitang.jp/wp-content/themes/chunshuitang/shared/img/2023_af/top-img.jpg);
    background-repeat: no-repeat;
    background-position: center top;
    background-size: 100% auto;
    height: 52.5vw;
    position: relative;
    color: #fff;
}

#block-bg2 {
    background-size: 100% auto;
    height: 52.5vw;
    position: relative;
}


/*==================*
商品詳細　通常店舗
*==================*/

.shop3-title {
    position: absolute;
    top: 10.2%;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
}

.shop3-title p {
    margin: 0;
    padding: 10px;
    font-size: 1.5vw;
    letter-spacing: 0px;
}

.shop3-txbox-1 {
    position: absolute;
    top: 25.6%;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    font-size: 1.5vw;
}

.shop3-sweets-tx-1 {
    padding: 0 .4em .2em;
    border-bottom: 2px solid #48164e;
    /*padding-top: 8%;一瞬隠す、元のCSSにはないみたい*/
}

.shop3-sweets-tx-2 {
    line-height: 2em;
    padding-top: 8%;
}


.shop3-txbox-2 {
    position: absolute;
    top: 41%;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    font-size: 1.5vw;
}

.shop3-food-tx-1 {
    padding-top: 80px;
    padding-right: 0.4em;
    padding-bottom: 0.2em;
    padding-left: 0.4em;
    border-bottom: 2px solid #48164e
    ;
}

.shop3-food-tx-2 {
    line-height: 2em;
    padding-top: 8%;
}


.shop3-txbox-3 {
    position: absolute;
    top: 46.2%;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    font-size: 1.5vw;
}

.shop3-drink-tx-1 {
    padding-top: 80px;
    padding-right: 0.4em;
    padding-bottom: 0.2em;
    padding-left: 0.4em;
    border-bottom: 2px solid #48164e;
}

.shop3-drink-tx-2 {
    line-height: 2em;
    padding-top: 8%;
}


/*==================*
商品詳細　smc/藤沢
*==================*/


.smc-title {
    position: absolute;
    top: 54.8%;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
}

.smc-title p {
    margin: 0;
    padding: 10px;
    font-size: 1.5vw;
     /*padding-top: 5%;*/

}

.smc-txbox-1 {
    position: absolute;
    top: 71.8%;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    font-size: 1.5vw;
}

.smc-sweets-tx-1 {
    padding: 0 .4em .2em;
    border-bottom: 2px solid #48164e;
}

.smc-sweets-tx-2 {
    line-height: 2em;
    padding-top: 8%;
}


.smc-txbox-2 {
    position: absolute;
    top: 89.3%;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    font-size: 1.5vw;
}

.smc-food-tx-1 {
    padding: 0 .4em .2em;
    border-bottom: 2px solid #48164e;
}

.smc-food-tx-2 {
    line-height: 2em;
    padding-top: 8%;
}


.smc-txbox-3 {
    position: absolute;
    top: 94.6%;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    font-size: 1.5vw;
}

.smc-drink-tx-1 {
    padding: 0 .4em .2em;
    border-bottom: 2px solid #48164e;
}

.smc-drink-tx-2 {
    line-height: 2em;
    padding-top: 8%;
}



/*==================*
予約ページ
*==================*/

.reservation-tx {
    padding: .5em .7em;
    background-color: #48164e;
    color: #feffff;
    width: 30vw;
    position: absolute;
    top: 3%;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    font-size: 1.5vw;
}




.reservation-tel-tx {
    position: absolute;
    top: 10%;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    font-size: 1.5vw;
}


.reservation-list-tx {
    position: absolute;
    top: 20%;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    font-size: 1.5vw;
    line-height: 55.5px;
}




.fixed_navi p{
    color: #fff;
  }

/*==================*
タプレット
*==================*/


@media (max-width: 810px) {


    header {
        position: fixed;
        width: 100%;
        top: 0px;
        left: 0px;
        z-index: 10000;
    }

    #toplogo {
        top: 18.2%;
        right: 51%;
        width: 41%;
    }

    .shop3-txbox-1,
    .shop3-txbox-2,
    .shop3-txbox-3,
    .smc-txbox-1,
    .smc-txbox-2,
    .smc-txbox-3
     {
        width: 21%;
    }

    .smc-title {
        top: 53.4%;
    }

    .br_sp {
        display: flex;
    }


    #scroll-img {
        width: 100%;
        height: 37vh;
        position: relative;
        background-color: #FFFCF4;
        z-index: -30;
    }

    #scroll-img::before {
        height: 67vh;
    }

    #reservation {
        height: 130vw;
    }

    .shop3-title p,
    .smc-title p,
    .reservation-tx {
        font-size: 2vw;
    }


    .reservation-tel-tx,
    .reservation-list-tx {
        font-size: 1.5vw;
    }

    .shop3-title p {
        padding: 2px;
    }

    .smc-title p {
        padding:2px;
    }

}



/*==================*
スマホ
*==================*/

@media screen and (max-width: 479px) {

    .background {
        background-image: url(shared/img/25af_autumn/background_image_sm2.jpg),
            url(shared/img/25af_autumn/background_image_sm1.jpg);
        background-size: 100% auto,
            cover;
        background-repeat: no-repeat;
        height: 1058vw;
        position: relative;
    }

    .top {
        height: 80vw;
    }

    .div2 {
        height: 1126vw;
    }

    header {
        position: fixed;
        width: 100%;
        top: 0px;
        left: 0px;
        z-index: 10000;
    }

    .shop3-title p,
    .smc-title p,
    .shop3-sweets-tx-2,
    .shop3-sweets-tx-2,
    .shop3-drink-tx-2,
    .shop3-food-tx-2,
    .smc-sweets-tx-2,
    .smc-drink-tx-2,
    .smc-food-tx-2,
    .bag-tx-1,
    .bag-tx-2 {
        font-size: 4.2vw;
        color: #48164e;
        font-weight: 300;
    }

    p {
        font-size: 5vw;
        color: #48164e;
        font-weight: 300;
    }

    #toplogo {
        top: 0%;
        right: 46%;
        width: 51%;
    }

    .top-btn {
        top: 7.2%;
        left: 67%;
        width: 30%;
    }

    #block-bg1 {
        background-image: url(https://www.chunshuitang.jp/wp-content/themes/chunshuitang/shared/img/2023_af/top-img2.jpg);
        height: 79.5vw;
        background-position: center bottom;
    }

    .shop3-txbox-1,
    .shop3-txbox-2,
    .shop3-txbox-3,
    .smc-txbox-1,
    .smc-txbox-2,
    .smc-txbox-3
    {
        left: 50%;
        width: 57%;
        transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
    }


    .shop3-title {
        top: 10.2%;
        width: 80%;
    }

    .shop3-txbox-1 {
        top: 25.5%;
    }

    .shop3-txbox-2 {
        top: 40%;
    }

    .shop3-txbox-3 {
        top: 47%;
    }



    .smc-title {
        top: 54.4%;
        width: 80%;
    }

    .smc-txbox-1 {
        top: 70.6%;
    }

    .smc-txbox-2 {
        top: 88.1%;
    }

    .smc-txbox-3 {
        top: 94.5%;
    }


    .br_sp {
        display: flex;
    }


    .reservation-tx,
    .reservation-tel-tx {
        font-size: 4.2vw;
    }
    .reservation-list-tx {
        font-size: 4vw;
         line-height: 24.5px;
    }
   
    
    #reservation {
        height: 250vw;
    }

    .reservation-tx {
        width: 57%;
    }

    #scroll-img,
    #scroll-img::before {
        height: 78vh;
    }

    .shop3-title p {
        padding: 10px;
    }
    .smc-title p {
        padding: 10px;
    }


}