@charset "utf-8";

/* splash-screen */
.splash-screen {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    max-width: 2000px;
    height: 100vh;
    z-index: 100000;
    opacity: 1;
    background: url(../img/splash_bg_index01.png) center center no-repeat;
    background-size: cover;
    transition: opacity 0.3s ease-out;
    display: none;
}
.splash-screenPhase01,
.splash-screenPhase02,
.splash-screenPhase03 {
    width: 100%;
    height: 100%;
    max-width: 1200px;
    margin: 0 auto;
    position: relative;
}
.splash-screenPhase02 {
    display: none;
}
.splash-screenPhase03 {
    display: none;
}
.splash-screenImg02,
.splash-screenImg03,
.splash-screenImg04,
.splash-screenImg02-02,
.splash-screenImg05,
.splash-screenImg06,
.splash-screenImg07,
.splash-screenImg07-02 {
    position: absolute;
    height: auto;
}
.splash-screenImg02 {
    width: 439px;
    top: calc(50% - 229px);
    left: calc(50% - 230px);
    animation: fadeInMoveImg02 1s forwards;
}
.splash-screenImg03 {
    width: 141px;
    top: calc(50% + 90px);
    left: calc(50% - 53px);
    animation: fadeInMoveImg03 1s forwards;
}
.splash-screenImg04 {
    width: 418px;
    top: calc(50% - 229px);
    left: calc(50% - 230px);
    animation: diagonalShake 0.8s 2 0.8s;
}
.splash-screenImg02-02 {
    width: 439px;
    top: calc(50% - 229px);
    left: calc(50% - 230px);
}
.splash-screenImg05 {
    width: 395px;
    top: calc(50% - 96px);
    left: calc(50% - 164px);
    animation: moveFromBottomLeft 1.8s forwards;
}
.splash-screenImg06 {
    width: 244px;
    top: calc(50% - 61px);
    left: calc(50% - 220px);
}
.splash-screenImg07 {
    width: 559px;
    top: calc(50% - 364px);
    left: calc(50% - 593px);
    animation: moveFromBottomRight 3s forwards;
}
.splash-screenImg07-02 {
	width: 559px;
    top: calc(50% + 107px);
    left: calc(50% + 119px);
    animation: moveFromTopLeft 3s forwards;
}
.splash-skipBtn {
    width: 150px;
    position: absolute;
    bottom: 30px;
    right: 30px;
}


@media screen and (max-width: 1200px) {
    .splash-screenImg02 {
        width: 36.5833vw;
        top: calc(50% - 19.0833vw);
        left: calc(50% - 19.1666vw);
    }
    .splash-screenImg03 {
        width: 11.75vw;
        top: calc(50% + 7.5vw);
        left: calc(50% - 4.4166vw);
    }
    .splash-screenImg04 {
        width: 34.8333vw;
        top: calc(50% - 19.0833vw);
        left: calc(50% - 19.1666vw);
    }
    .splash-screenImg02-02 {
        width: 36.5833vw;
        top: calc(50% - 19.0833vw);
        left: calc(50% - 19.1666vw);
    }
    .splash-screenImg05 {
        width: 32.9166vw;
        top: calc(50% - 8vw);
        left: calc(50% - 13.6666vw);
    }
    .splash-screenImg06 {
        width: 20.3333vw;
        top: calc(50% - 5.0833vw);
        left: calc(50% - 18.3333vw);
    }
    .splash-screenImg07 {
        width: 46.5833vw;
        top: calc(50% - 30.3333vw);
        left: calc(50% - 49.4166vw);
    }
    .splash-screenImg07-02 {
        width: 46.5833vw;
        top: calc(50% + 8.9166vw);
        left: calc(50% + 9.9166vw);
    }
}
@media screen and (min-width: 768px) {
    #ct_bg .walkAnime__wrap_sp {
        display: none;
    }
}

@media screen and (max-width: 767px) {
    .splash-screen {
        background-image: url(../img/splash_bg_index01_sp.png);
    }
    .splash-screenImg02 {
        width: 58.5333vw;
        top: calc(50% - 38.5333vw);
        left: 21.4666vw;
    }
    .splash-screenImg03 {
        width: 18.8vw;
        top: calc(50% + 4vw);
        left: 45.0666vw;
    }
    .splash-screenImg04 {
        width: 55.7333vw;
        top: calc(50% - 38.5333vw);
        left: calc(50% - 27.1vw);
    }
    .splash-screenImg02-02 {
        width: 58.5333vw;
        top: calc(50% - 38.5333vw);
        left: 21.4666vw;
    }
    .splash-screenImg05 {
        width: 52.6666vw;
        top: calc(50% - 20.8vw);
        left: calc(50% - 19.7333vw);
    }
    .splash-screenImg06 {
        width: 32.5333vw;
        top: calc(50% - 16.2666vw);
        left: calc(50% - 27.2vw);
    }
    .splash-screenImg07 {
        width: 74.5333vw;
        top: calc(50% - 54.5333vw);
        left: calc(50% - 69.6vw);
    }
    .splash-screenImg07-02 {
        width: 74.5333vw;
        top: calc(50% + 15.3333vw);
        left: calc(50% - 8.2666vw);
    }
}



#ct_bg::before {
    content: "";
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background-image: url(../../common/img/fuwamochi_bg01.png);
    background-repeat: repeat;
}


/* mainArea */
#ct_bg .mainArea {
    position: relative;
    opacity: 0;
    transition: opacity 0.5s ease-in;
}
#ct_bg .mainArea.on {
    display: block;
    opacity: 1;
}

#ct_bg .mainAreaInner {
    position: relative;
/*    z-index: 10;*/
}







/* mainVisual */
#ct_bg .mainVisual {
    width: 100%;
    height: 806px;
	background: url(../img/bg_index01.png) no-repeat 50% 50% / cover;
    position: relative;
    overflow: hidden;
}
#ct_bg .mainVisual::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 18px;
	background-image: url(../../common/img/bg04.png);
	background-position: center center;
	background-repeat: repeat-x;
}
#ct_bg .mainVisual .bg01,
#ct_bg .mainVisual .bg02,
#ct_bg .mainVisual .bg03,
#ct_bg .mainVisual .bg04,
#ct_bg .mainVisual .bg05,
#ct_bg .mainVisual .bg06,
#ct_bg .mainVisual .bg07,
#ct_bg .mainVisual .bg08,
#ct_bg .mainVisual .bg09,
#ct_bg .mainVisual .bg10,
#ct_bg .mainVisual .bg11 {
    position: absolute;

}
#ct_bg .mainVisual .bg01 {
    width: 100%;
    height: 130px;
    top: 0;
    left: 0;
}
#ct_bg .mainVisual .bg01 img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
#ct_bg .mainVisual .mainVisualInner01 .img03,
#ct_bg .mainVisual .mainVisualInner01 .img04,
#ct_bg .mainVisual .mainVisualInner01 .img05,
#ct_bg .mainVisual .mainVisualInner01 .img06,
#ct_bg .mainVisual .mainVisualInner01 .img07,
#ct_bg .mainVisual .bg02,
#ct_bg .mainVisual .bg03,
#ct_bg .mainVisual .bg04,
#ct_bg .mainVisual .bg05,
#ct_bg .mainVisual .bg06,
#ct_bg .mainVisual .bg07,
#ct_bg .mainVisual .bg08,
#ct_bg .mainVisual .bg09,
#ct_bg .mainVisual .bg10,
#ct_bg .mainVisual .bg11 {
    opacity: 0;
}

#ct_bg .mainVisual.start-animation .bg02 {
    width: 564px;
    top: 233px;
    left: calc(50% - 1000px);
    opacity: 0;
    animation: mvBlurAnime01 4s infinite, floating01 3.4s ease-in-out infinite 1s;
    animation-delay: 0.4s;
}
#ct_bg .mainVisual.start-animation .bg02 img {
    animation: floating02 2.1s ease-in-out infinite 1s;
    animation-delay: 0.4s;
}
#ct_bg .mainVisual.start-animation .bg03 {
    width: 961px;
    top: 100px;
    left: calc(50% - 797px);
    opacity: 0;
    animation: mvBlurAnime01 10s infinite, floating01 4.3s ease-in-out infinite 1s;
    animation-delay: 0.8s;
}
#ct_bg .mainVisual.start-animation .bg03 img {
    animation: floating02 2.6s ease-in-out infinite;
    animation-delay: 0.8s;
}
#ct_bg .mainVisual.start-animation .bg04 {
    width: 786px;
    top: 213px;
    left: calc(50% + 50px);
    opacity: 0;
    animation: mvBlurAnime01 6s infinite, floating01 2.9s ease-in-out infinite 1s;
    animation-delay: 0.6s;
}
#ct_bg .mainVisual.start-animation .bg04 img {
    animation: floating02 4.1s ease-in-out infinite;
    animation-delay: 0.6s;
}
#ct_bg .mainVisual.start-animation .bg05 {
    width: 508px;
    top: -69px;
    left: calc(50% + 443px);
    opacity: 0;
    animation: mvBlurAnime01 4.9s ease-out forwards, floating01 2.1s ease-in-out infinite 2s;
    animation-delay: 0.4s;
}
#ct_bg .mainVisual.start-animation .bg05 img {
    animation: floating02 3.3s ease-in-out infinite;
    animation-delay: 0.4s;
}
#ct_bg .mainVisual.start-animation .bg06 {
    width: 96px;
    top: 354px;
    left: calc(50% - 726px);
    opacity: 0;
    animation: mvAnime04 0.8s ease-out forwards, floating01 5.2s ease-in-out infinite;
    animation-delay: 0.8s, 1.6s;
}

#ct_bg .mainVisual.start-animation .bg06 img {
    animation: floating02 3.3s ease-in-out infinite;
    animation-delay: 1.6s;
}

#ct_bg .mainVisual.start-animation .bg07 {
    width: 52px;
    top: 582px;
    left: calc(50% - 552px);
    opacity: 0;
    animation: mvAnime04 0.5s ease-out forwards, floating01 4.2s ease-in-out infinite;
    animation-delay: 0.6s, 1.1s;
}
#ct_bg .mainVisual.start-animation .bg07 img {
    animation: floating02 2.3s ease-in-out infinite;
    animation-delay: 1.1s;
}
#ct_bg .mainVisual.start-animation .bg08 {
    width: 88px;
    top: 314px;
    left: calc(50% + 442px);
    opacity: 0;
    animation: mvAnime04 0.7s ease-out forwards, floating01 4.8s ease-in-out infinite;
    animation-delay: 0.9s, 1.6s;
}
#ct_bg .mainVisual.start-animation .bg08 img {
    animation: floating02 3.1s ease-in-out infinite;
    animation-delay: 1.6s;
}
#ct_bg .mainVisual.start-animation .bg09 {
    width: 81px;
    top: 435px;
    left: calc(50% + 633px);
    opacity: 0;
    animation: mvAnime04 0.9s ease-out forwards, floating01 4.9s ease-in-out infinite;
    animation-delay: 1.1s, 2.0s;
}
#ct_bg .mainVisual.start-animation .bg09 img {
    animation: floating02 3.6s ease-in-out infinite;
    animation-delay: 2.0s;
}
#ct_bg .mainVisual.start-animation .bg10 {
    width: 99px;
    top: 161px;
    left: calc(50% - 135px);
    opacity: 0;
    animation: mvAnime04 1.2s ease-out forwards, floating01 3.8s ease-in-out infinite;
    animation-delay: 0.8s, 2.0s;
}
#ct_bg .mainVisual.start-animation .bg10 img {
    animation: floating02 4.1s ease-in-out infinite;
    animation-delay: 2.0s;
}
#ct_bg .mainVisual.start-animation .bg11 {
    width: 60px;
    top: 684px;
    left: calc(50% - 512px);
    opacity: 0;
    animation: mvAnime04 0.8s ease-out forwards, floating01 3.8s ease-in-out infinite;
    animation-delay: 0.8s, 1.6s;
}
#ct_bg .mainVisual.start-animation .bg11 img {
    animation: floating02 3.7s ease-in-out infinite;
    animation-delay: 1.6s;
}
#ct_bg .mainVisual.start-animation .bg12 {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 72px;
	background: url(../../common/img/bg01.png) repeat-x 50% 0;
}

#ct_bg .mainVisual .mainVisualInner01 {
    width: 100%;
    height: 100%;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
	z-index: 3;
}
#ct_bg .mainVisual .mainVisualInner01 .logoWrap,
#ct_bg .mainVisual .mainVisualInner01 .img02,
#ct_bg .mainVisual .mainVisualInner01 .img03,
#ct_bg .mainVisual .mainVisualInner01 .img04,
#ct_bg .mainVisual .mainVisualInner01 .img05,
#ct_bg .mainVisual .mainVisualInner01 .img06,
#ct_bg .mainVisual .mainVisualInner01 .img07 {
    position: absolute;
}
#ct_bg .mainVisual .mainVisualInner01 .logoWrap {
    width: 75px;
    top: 10px;
    left: 0;
}
#ct_bg .mainVisual .mainVisualInner01 .logoWrap > .inner01 {
	display: flex;
	flex-wrap: wrap;
}
#ct_bg .mainVisual .mainVisualInner01 .logoWrap > .inner01 p + p {
	margin-top: 8px;
}
#ct_bg .mainVisual.start-animation .mainVisualInner01 .img02 {
    width: 603px;
    top: 15px;
    right: 15px;
/*
    animation: mvAnime01 0.8s ease-out forwards;
    animation-delay: 0.1s;
*/
}
#ct_bg .mainVisual.start-animation .mainVisualInner01 .img03 {
    width: 616px;
    top: 32px;
    left: 0;
    opacity: 0;
    animation: mvAnime02 0.5s ease-out forwards;
    animation-delay: 0.2s;
}
#ct_bg .mainVisual.start-animation .mainVisualInner01 .img04 {
    width: 533px;
    top: 309px;
    right: 24px;
    opacity: 0;
    animation: mvAnime02 0.5s ease-out forwards;
    animation-delay: 0.4s;
}
#ct_bg .mainVisual.start-animation .mainVisualInner01 .img05 {
    width: 287px;
    top: 496px;
    left: 134px;
    opacity: 0;
    animation: mvAnime02 0.5s ease-out forwards;
    animation-delay: 0.6s;
}
#ct_bg .mainVisual.start-animation .mainVisualInner01 .img06 {
    width: 361px;
    top: 478px;
    left: 420px;
    opacity: 0;
    animation: mvAnime02 0.5s ease-out forwards;
    animation-delay: 0.7s;
}
#ct_bg .mainVisual.start-animation .mainVisualInner01 .img07 {
    width: 401px;
    top: 495px;
    left: 763px;
    opacity: 0;
    animation: mvAnime02 0.5s ease-out forwards;
    animation-delay: 0.8s;
}



#ct_bg .frameArea01 {
    position: relative;
    z-index: 2;
    padding: 120px 20px;
}
#ct_bg .frameArea02 {
    position: relative;
    z-index: 1;
    padding: 40px 20px;
    background: rgba(255, 253, 234, 0.6);
}
#ct_bg .frameArea02 > .inner01 {
    width: 100%;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}
#ct_bg .frameArea02 .col01 {
    width: 48%;
}
#ct_bg .frameArea02 .col01.left {
    margin-right: 2%;
}
#ct_bg .frameArea02 .col01.right {
    margin-left: 2%;
}
#ct_bg .frameArea02 .wrap02 {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
}
#ct_bg .frameArea02 .wrap02 .col02 {
    width: 55%;
}
#ct_bg .frameArea02 .wrap02 .col03 {
    width: 42%;
    display: flex;
    flex-direction: column;
    align-items: center;
}
#ct_bg .frameArea02 .wrap02 .txt01 {
    text-align: center;
    font-size: 1.0rem;
    color: #6a3906;
    margin-top: 8px;
}
#ct_bg .frameArea02 .wrap02 .img01 {
    max-width: 201px;
}
#ct_bg .frameArea02 .wrap02 .mallLinkTxt {
    width: 100%;
    max-width: 240px;
}
#ct_bg .frameArea02 .col01.left .wrap02 .img02 {
    max-width: 215px;
    margin-top: 8px;
}
#ct_bg .frameArea02 .col01.right .wrap02 .img02 {
    max-width: 233px;
    margin-top: 9px;
}
#ct_bg .frameArea02 .wrap02 .txt02 {
    font-size: 1.2rem;
    font-weight: bold;
    padding: 4px 10px 2px;
    background: #6a3906;
    color: #fff;
    margin-top: 8px;
}
#ct_bg .frameArea02 .wrap02 .txt03 {
    font-size: 1.3rem;
    text-align: center;
    margin-top: 8px;
}
#ct_bg .movieArea01 {
    width: 100%;
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
}
#ct_bg .movieArea01 .bgAnime01 {
    position: absolute;
    top: -100px;
    left: -148px;
    animation: floating02 3.7s ease-in-out infinite;
}
#ct_bg .movieArea01 .bgAnime01 img {
    animation: floating01 2.4s ease-in-out infinite;
}
#ct_bg .movieArea01 .bgAnime02 {
    position: absolute;
    bottom: -100px;
    right: -191px;
    animation: floating02 3.1s ease-in-out infinite;
}
#ct_bg .movieArea01 .bgAnime02 img {
    animation: floating01 2.6s ease-in-out infinite;
}
#ct_bg .movieArea01 .illust01 {
    position: absolute;
    left: -205px;
    top: -97px;
    animation: floating01 4.6s ease-in-out infinite;
}
#ct_bg .movieArea01 .illust02 {
    position: absolute;
    right: -197px;
    bottom: -147px;
    animation: floating01 5.6s ease-in-out infinite;
}
#ct_bg .movieWrap01 {
    position: relative;
    height: 0;
    padding-bottom: 56.25%;
    overflow: hidden;
}
#ct_bg .movieWrap01 > iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
#ct_bg .frameArea03 {
    position: relative;
    z-index: 2;
    padding: 118px 20px 110px;
}
#ct_bg .frameArea03 > .inner01 {
    width: 100%;
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
}
#ct_bg .frameArea03 > .inner01 .bgAnime01 {
    position: absolute;
    top: -186px;
    left: -379px;
    animation: floating02 3.7s ease-in-out infinite;
}
#ct_bg .frameArea03 > .inner01 .bgAnime01 img {
    animation: floating01 2.4s ease-in-out infinite;
}
#ct_bg .frameArea03 > .inner01 .bgAnime02 {
    position: absolute;
    top: 249px;
    right: -275px;
    animation: floating02 2.8s ease-in-out infinite;
}
#ct_bg .frameArea03 > .inner01 .bgAnime02 img {
    animation: floating01 3.3s ease-in-out infinite;
}
#ct_bg .frameArea03 > .inner01 .illust01 {
    position: absolute;
    top: 385px;
    right: -148px;
    animation: floating01 5.6s ease-in-out infinite;
}
#ct_bg .frameArea03 > .inner01 .bgAnime03 {
    position: absolute;
    bottom: -191px;
    right: -361px;
    animation: floating02 3.0s ease-in-out infinite;
}
#ct_bg .frameArea03 > .inner01 .bgAnime03 img {
    animation: floating01 4.1s ease-in-out infinite;
}

#ct_bg .frameArea03 .wrap02 {
    margin-top: 40px;
    display: block;
    width: 100%;
    background-image: url(../img/bg_index06.png);
    background-repeat: no-repeat;
    aspect-ratio: 800 / 806;
    background-size: contain;
    position: relative;
    padding-top: 44px;
}
#ct_bg .frameArea03 .wrap02 .ttl01 {
    width: 100%;
    max-width: 462px;
    position: absolute;
    top: -40px;
    left: 50%;
    transform: translateX(-50%);
}
#ct_bg .frameArea03 .wrap02 .txt01 {
    width: 86.375%;
    margin-left: auto;
    margin-right: auto;
}
#ct_bg .frameArea03 .wrap02 .img01 {
    width: 92.625%;
    margin-left: auto;
    margin-right: auto;
    margin-top: -5px;
}
#ct_bg .frameArea03 .wrap02 .btn01 {
    text-align: center;
}
#ct_bg .frameArea03 .wrap02 .btn01 a {
    display: inline-block;
    width: 52.5%;
}
#ct_bg .frameArea04 {
    position: relative;
    z-index: 2;
    padding: 0 20px;
}
#ct_bg .frameArea04 > .inner01 {
    width: 100%;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
}
#ct_bg .frameArea04 > .inner01 .bgAnime01 {
    position: absolute;
    top: -133px;
    left: -53px;
    animation: floating02 2.8s ease-in-out infinite;
}
#ct_bg .frameArea04 > .inner01 .bgAnime01 img {
    animation: floating01 2.0s ease-in-out infinite;
}
#ct_bg .frameArea04 > .inner01 .illust01 {
    position: absolute;
    top: -36px;
    left: 6px;
    animation: floating01 5.4s ease-in-out infinite;
}
#ct_bg .frameArea04 .wrap02 .ttl01 {
    width: 100%;
    max-width: 462px;
    margin-left: auto;
    margin-right: auto;
}
#ct_bg .frameArea04 .wrap02 .txt01 {
    text-align: center;
    margin-top: 20px;
}
#ct_bg .frameArea04 .wrap02 .col01 {
    text-align: center;
    width: fit-content;
    margin-top: 48px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
}
#ct_bg .frameArea04 .wrap02 .col01 + .col01 {
    margin-top: 28px;
}

#ct_bg .frameArea04 .wrap02 .col01 .bgAnime02 {
    position: absolute;
    top: -40px;
    left: calc(50% - 422px);
    animation: floating02 3.1s ease-in-out infinite;
}
#ct_bg .frameArea04 .wrap02 .col01 .bgAnime02 img {
    animation: floating01 2.8s ease-in-out infinite;
}
#ct_bg .frameArea04 .wrap02 .col01 .bgAnime03 {
    position: absolute;
    top: -39px;
    left: calc(50% + 145px);
    animation: floating02 2.8s ease-in-out infinite;
}
#ct_bg .frameArea04 .wrap02 .col01 .bgAnime03 img {
    animation: floating01 3.1s ease-in-out infinite;
}
#ct_bg .frameArea04 .wrap02 .col01 .bgAnime04 {
    position: absolute;
    top: -39px;
    left: calc(50% - 421px);
    animation: floating02 3.8s ease-in-out infinite;
}
#ct_bg .frameArea04 .wrap02 .col01 .bgAnime04 img {
    animation: floating01 2.9s ease-in-out infinite;
}
#ct_bg .frameArea04 .wrap02 .col01 .bgAnime05 {
    position: absolute;
    top: -38px;
    left: calc(50% + 168px);
    animation: floating02 2.3s ease-in-out infinite;
}
#ct_bg .frameArea04 .wrap02 .col01 .bgAnime05 img {
    animation: floating01 3.4s ease-in-out infinite;
}
#ct_bg .frameArea04 .wrap02 .col01 .img02 {
    position: relative;
}
#ct_bg .frameArea04 .wrap02 .col02 {
    width: 100%;
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 17px;
    position: relative;
}
#ct_bg .walkAnime__wrap {
    height: 320px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
#ct_bg .walkAnime__wrap .image-slider {
    display: flex;
    align-items: center;
    animation: moveImages 20s linear infinite;
    position: relative;
    left: 100%;
    width: 1327px;
}
#ct_bg .walkAnime__wrap .image-slider img {
    animation: wiggle 0.5s infinite;
    height: auto;
    margin-right: 20px;
}
#ct_bg .frameArea05 {
    padding: 0 20px;
}
#ct_bg .frameArea05 > .inner01 {
    width: 100%;
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
}
#ct_bg .frameArea05 > .inner01 .bgAnime01 {
    position: absolute;
    top: -77px;
    left: -279px;
    animation: floating01 2.6s ease-in-out infinite;
}
#ct_bg .frameArea05 > .inner01 .bgAnime01 img {
    animation: floating02 2.9s ease-in-out infinite;
}
#ct_bg .frameArea05 > .inner01 .bgAnime02 {
    position: absolute;
    bottom: -220px;
    right: -263px;
    animation: floating01 3.7s ease-in-out infinite;
}
#ct_bg .frameArea05 > .inner01 .bgAnime02 img {
    animation: floating02 2.4s ease-in-out infinite;
}
#ct_bg .frameArea05 .ttl01 {
    width: 100%;
    max-width: 462px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
}
#ct_bg .frameArea05 .txt07 {
	text-align: center;
    font-size: 2.4rem;
	line-height: 1.6;
    font-weight: bold;
    color: #6A3906;
	margin-top: 29px;
	margin-bottom: 98px;
	text-shadow: rgb(255, 255, 255) 2px 0px 0px, rgb(255, 255, 255) 1.755165px 0.958851px 0px, rgb(255, 255, 255) 1.080605px 1.682942px 0px, rgb(255, 255, 255) 0.141474px 1.99499px 0px, rgb(255, 255, 255) -0.832294px 1.818595px 0px, rgb(255, 255, 255) -1.602287px 1.196944px 0px, rgb(255, 255, 255) -1.979985px 0.28224px 0px, rgb(255, 255, 255) -1.872913px -0.701566px 0px, rgb(255, 255, 255) -1.307287px -1.513605px 0px, rgb(255, 255, 255) -0.421592px -1.95506px 0px, rgb(255, 255, 255) 0.567324px -1.917849px 0px, rgb(255, 255, 255) 1.41734px -1.411081px 0px, rgb(255, 255, 255) 1.920341px -0.558831px 0px;
}
#ct_bg .frameArea05 .col01 {
    background-image: url(../img/bg_index17.png);
    background-repeat: repeat-y;
    background-size: contain;
    position: relative;
    padding: 0 3% 0 5%;
    margin-top: 90px;
}
#ct_bg .frameArea05 .col01 .col01-top {
    content: "";
    position: absolute;
    left: 0;
    top: -80px;
    width: 100%;
}
#ct_bg .frameArea05 .col01 .col01-top img {
    width: 100%;
}
#ct_bg .frameArea05 .col01 .col01-bottom {
    content: "";
    position: absolute;
    left: 0;
    bottom: -40px;
    width: 100%;
}
#ct_bg .frameArea05 .col01 .col01-bottom img {
    width: 100%;
}
#ct_bg .frameArea05 .col01 .col01-inner01 {
    position: relative;
    z-index: 10;
    padding-bottom: 20px;
}
#ct_bg .frameArea05 .col01 .mallLinkBtn .mallLink.reserve::before {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(../../common/img/btn01.png) no-repeat 0 0/100%;
	content: "";
}
#ct_bg .frameArea05 .col01 .mallLinkBtn .mallLink.waiting::before {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(../../common/img/btn03.png) no-repeat 0 0/100%;
	content: "";
}
#ct_bg .frameArea05 .col05 .mallLinkBtn .mallLink.reserve::before {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(../../common/img/btn05.png) no-repeat 0 0/100%;
	content: "";
}
#ct_bg .frameArea05 .col05 .mallLinkBtn .mallLink.waiting::before {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(../../common/img/btn06.png) no-repeat 0 0/100%;
	content: "";
}
#ct_bg .frameArea05 .col05 {
    background-image: url(../img/bg_index20.png);
    background-repeat: repeat-y;
    background-size: contain;
    position: relative;
    padding: 0 3% 0 5%;
    margin-top: 130px;
    z-index: 10;
}
#ct_bg .frameArea05 .col05 .col05-top {
    content: "";
    position: absolute;
    left: 0;
    top: -80px;
    width: 100%;
}
#ct_bg .frameArea05 .col05 .col05-top img {
    width: 100%;
}
#ct_bg .frameArea05 .col05 .col05-bottom {
    content: "";
    position: absolute;
    left: 0;
    bottom: -40px;
    width: 100%;
}
#ct_bg .frameArea05 .col05 .col05-bottom img {
    width: 100%;
}
#ct_bg .frameArea05 .col05 .col05-inner01 {
    position: relative;
    z-index: 10;
    padding-bottom: 20px;
}
#ct_bg .frameArea05 .wrap01 {
    justify-content: space-between;
    align-items: center;
}
#ct_bg .frameArea05 .wrap01 .col02 {
    width: 54.34%;
    cursor: pointer;
}
#ct_bg .frameArea05 .splide__pagination {
    bottom: -16px;
}
#ct_bg .frameArea05 .col01 .splide__pagination__page {
    background: url(../img/icon_index01.png);
    background-repeat: no-repeat;
    background-size: contain;
    width: 13px;
    height: 11px;
    opacity: .4;
    margin: 0 3px;
}
#ct_bg .frameArea05 .col05 .splide__pagination__page {
    background: url(../img/icon_index02.png);
    background-repeat: no-repeat;
    background-size: contain;
    width: 13px;
    height: 11px;
    opacity: .4;
    margin: 0 3px;
}
#ct_bg .frameArea05 .splide__pagination__page.is-active {
    transform: scale(1);
    opacity: 1;
}
#ct_bg .frameArea05 .wrap01 .col03 {
    width: 42.28%;
    display: flex;
    flex-direction: column;
    align-items: center;
}
#ct_bg .frameArea05 .wrap01 .col03 .img01 {
    width: 71.7223%;
}
#ct_bg .frameArea05 .wrap01 .col03 .img02 {
    width: 77.3778%;
    margin-top: 6px;
}
#ct_bg .frameArea05 .wrap01 .col03 .img03 {
    width: 100%;
    margin-top: 20px;
}
#ct_bg .frameArea05 .wrap01 .col03 .img04 {
    width: 83.3033%;
    margin-top: 6px;
}
#ct_bg .frameArea05 .col04 {
    width: 100%;
/*    padding-right: 2%;*/
    margin-top: 34px;
    display: flex;
    flex-direction: column;
    align-items: center;
}
#ct_bg .frameArea05 .col04 .txt02 {
    font-size: 1.4rem;
    font-weight: bold;
    background: #eb6da5;
    border-radius: 9999px;
    color: #fff;
    padding: 8px 10px 7px;
    margin-right: 12px;
    margin-left: 8px;
}
#ct_bg .frameArea05 .col05 .txt02 {
    background: #3ebbbe;
}

#ct_bg .frameArea05 .col04 .txt03 {
    font-size: 1.8rem;
    font-weight: bold;
}
#ct_bg .frameArea05 .col04 .txt03 .txt03Col01 {
    margin: 0 0.5em;
}
#ct_bg .frameArea05 .col04 .txt04 {
    font-size: 1.4rem;
}
#ct_bg .frameArea05 .col04 .txtWrap01 {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    margin-top: 10px;
}
#ct_bg .frameArea05 .col04 .txtWrap01 .txt05 {
    font-size: 1.4rem;
    margin-right: 1em;
}
#ct_bg .frameArea05 .col04 .txtWrap01 .txt06 {
    font-size: 1.4rem;
}
#ct_bg .frameArea05 .col01 .mallLinkBtn {
    position: relative;
    margin-top: 20px;
}
#ct_bg .frameArea05 .col05 .mallLinkBtn {
    position: relative;
    margin-top: 20px;
}
#ct_bg .frameArea05 .col01 .mallLinkBtn::before {
    content: "";
    background-image: url(../img/bg_index28.png);
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    top: 13px;
    left: -69px;
    display: block;
    width: 43px;
    height: 44px;
    animation: sparkle 2.5s infinite alternate;
}
#ct_bg .frameArea05 .col01 .mallLinkBtn::after {
    content: "";
    background-image: url(../img/bg_index29.png);
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    top: 13px;
    right: -69px;
    display: block;
    width: 43px;
    height: 44px;
    animation: sparkle 2.2s infinite alternate;
}
#ct_bg .frameArea05 .col05 .mallLinkBtn::before {
    content: "";
    background-image: url(../img/bg_index30.png);
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    top: 13px;
    left: -69px;
    display: block;
    width: 43px;
    height: 44px;
    animation: sparkle 2.1s infinite alternate;
}
#ct_bg .frameArea05 .col05 .mallLinkBtn::after {
    content: "";
    background-image: url(../img/bg_index31.png);
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    top: 13px;
    right: -69px;
    display: block;
    width: 43px;
    height: 44px;
    animation: sparkle 2.6s infinite alternate;
}
#ct_bg .frameArea06 {
    padding: 154px 20px 0;
}
#ct_bg .frameArea06 > .inner01 {
    width: 100%;
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
}
#ct_bg .frameArea06 > .inner01 .bgAnime01 {
    position: absolute;
    top: -144px;
    left: -200px;
    animation: floating02 3.7s ease-in-out infinite;
}
#ct_bg .frameArea06 > .inner01 .bgAnime01 img {
    animation: floating01 2.4s ease-in-out infinite;
}
#ct_bg .frameArea06 > .inner01 .illust01 {
    position: absolute;
    top: 11px;
    left: -82px;
    animation: floating01 4.4s ease-in-out infinite;
}
#ct_bg .frameArea06 > .inner01 .bgAnime02 {
    position: absolute;
    top: -151px;
    right: -277px;
    animation: floating02 3.7s ease-in-out infinite;
}
#ct_bg .frameArea06 > .inner01 .bgAnime02 img {
    animation: floating01 2.4s ease-in-out infinite;
}
#ct_bg .frameArea06 .ttl01 {
    width: 100%;
    max-width: 462px;
    margin-left: auto;
    margin-right: auto;
}
#ct_bg .frameArea06 .col01 {
    padding: 25px 30px;
    background: #fffdea;
    border-radius: 30px;
    margin-top: 40px;
    position: relative;
    z-index: 10;
}
#ct_bg .frameArea06 .col01 + .col01 {
    margin-top: 20px;
}
#ct_bg .frameArea06 .col01 .qa01 {

}
#ct_bg .frameArea06 .col01 .qa01 dt {
    display: flex;
}
#ct_bg .frameArea06 .col01 .qa01 .icon01 {
    width: 30px;
    margin-right: 20px;
}
#ct_bg .frameArea06 .col01 .qa01 .icon01 img {
    width: 28px;
}
#ct_bg .frameArea06 .col01 .qa01 .txt01 {
    width: calc(100% - 50px);
    font-size: 1.8rem;
    font-weight: bold;
    padding-top: 1px;
}
#ct_bg .frameArea06 .col01 .qa01 dd {
    display: flex;
    border-top: 3px dotted #d2c2a5;
    padding-top: 20px;
    margin-top: 20px;
}
#ct_bg .frameArea06 .col01 .qa01 .icon02 {
    width: 30px;
    margin-right: 20px;
}
#ct_bg .frameArea06 .col01 .qa01 .icon02 img {
    width: 28px;
}
#ct_bg .frameArea06 .col01 .qa01 .txt02 {
    width: calc(100% - 50px);
    font-size: 1.6rem;
    padding-top: 3px;
}
#ct_bg .frameArea07 {
    padding: 114px 20px 60px;
    position: relative;
}
#ct_bg .frameArea07 .bgAnime01 {
    position: absolute;
    top: calc(50% - 171px);
    left: calc(50% - 735px);
    animation: mvBlurAnime01 4s infinite, floating01 3.2s ease-in-out infinite;
    width: 559px;
}
#ct_bg .frameArea07 .bgAnime01 img {
    animation: floating02 3.6s ease-in-out infinite;
}
#ct_bg .frameArea07 .bgAnime02 {
    position: absolute;
    top: calc(50% + 73px);
    left: calc(50% + 175px);
    animation: mvBlurAnime01 5.8s infinite, floating01 3.2s ease-in-out infinite;
    width: 559px;
}
#ct_bg .frameArea07 .bgAnime02 img {
    animation: floating02 3.6s ease-in-out infinite;
}
#ct_bg .frameArea07 .img01 {
    text-align: center;
    position: relative;
    z-index: 10;
}



@media screen and (min-width: 769px) {
    #ct_bg .frameArea03 .wrap02 .btn01 a img:hover {
        animation: btnHover 0.3s ease-in-out;
    }
    #ct_bg .frameArea04 > .inner01 .bgAnime06 {
        display: none;
    }
}


@media screen and (max-width: 1200px) {
    #ct_bg .mainVisual.start-animation {
        height: 67.1666vw;
    }
    #ct_bg .mainVisual.start-animation .mainVisualInner01 .logoWrap {
        width: 6.25vw;
        top: 0.8333vw;
        left: 0;
    }
	#ct_bg .mainVisual .mainVisualInner01 .logoWrap > .inner01 p + p {
		margin-top: 0.66vw;
	}
    #ct_bg .mainVisual.start-animation .mainVisualInner01 .img02 {
        width: 50.25vw;
        top: 1.25vw;
        right: 1.25vw;
    }
    #ct_bg .mainVisual.start-animation .mainVisualInner01 .img03 {
        width: 51.3333vw;
        top: 2.6667vw;
        left: 0;
    }
    #ct_bg .mainVisual.start-animation .mainVisualInner01 .img04 {
        width: 44.4167vw;
        top: 25.75vw;
        right: 2vw;
    }
    #ct_bg .mainVisual.start-animation .mainVisualInner01 .img05 {
        width: 23.9167vw;
        top: 41.3333vw;
        left: 11.1667vw;
    }
    #ct_bg .mainVisual.start-animation .mainVisualInner01 .img06 {
        width: 30.0833vw;
        top: 39.8333vw;
        left: 35vw;
    }
    #ct_bg .mainVisual.start-animation .mainVisualInner01 .img07 {
        width: 33.4167vw;
        top: 41.25vw;
        left: 63.5833vw;
    }
    #ct_bg .mainVisual.start-animation .bg01 {
        width: 100%;
        height: 10.8333vw;
        top: 0;
        left: 0;
    }
    #ct_bg .mainVisual.start-animation .bg01 img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
    #ct_bg .mainVisual.start-animation .bg02 {
        width: 47vw;
        top: 19.4167vw;
        left: calc(50% - 83.3333vw);
    }
    #ct_bg .mainVisual.start-animation .bg03 {
        width: 80.0833vw;
        top: 8.3333vw;
        left: calc(50% - 66.4167vw);
    }
    #ct_bg .mainVisual.start-animation .bg04 {
        width: 65.5vw;
        top: 17.75vw;
        left: calc(50% + 4.1667vw);
    }
    #ct_bg .mainVisual.start-animation .bg05 {
        width: 42.3333vw;
        top: -5.75vw;
        left: calc(50% + 36.9167vw);
    }
    #ct_bg .mainVisual.start-animation .bg06 {
        width: 8vw;
        top: 29.5vw;
        left: calc(50% - 60.5vw);
    }
    #ct_bg .mainVisual.start-animation .bg07 {
        width: 4.3333vw;
        top: 48.5vw;
        left: calc(50% - 46vw);
    }
    #ct_bg .mainVisual.start-animation .bg08 {
        width: 7.3333vw;
        top: 26.1667vw;
        left: calc(50% + 36.8333vw);
    }
    #ct_bg .mainVisual.start-animation .bg09 {
        width: 6.75vw;
        top: 36.25vw;
        left: calc(50% + 52.75vw);
    }
    #ct_bg .mainVisual.start-animation .bg10 {
        width: 8.25vw;
        top: 13.4167vw;
        left: calc(50% - 11.25vw);
    }
    #ct_bg .mainVisual.start-animation .bg11 {
        width: 5vw;
        top: 57vw;
        left: calc(50% - 42.6667vw);
    }
	#ct_bg .mainVisual.start-animation .bg12 {
		height: 6vw;
		background: url(../../common/img/bg01.png) repeat-x 50% 0 / 10.66vw;
	}
	
	
    #ct_bg .frameArea02 {
        padding-left: 4vw;
        padding-right: 4vw;
    }
    #ct_bg .frameArea02 .inner01 {
        padding-left: 0;
        padding-right: 0;
    }
    #ct_bg .frameArea02 .col01 {
        max-width: 330px;
    }
    #ct_bg .frameArea02 .wrap02 {
        flex-direction: column;
        align-items: center;
    }
    #ct_bg .frameArea02 .wrap02 .col02 {
        width: 100%;
    }
    #ct_bg .frameArea02 .wrap02 .col03 {
        width: 100%;
        margin-top: 10px;
    }
    #ct_bg .frameArea02 .wrap02 .txt01 {
        text-align: left;
    }
}

@media screen and (max-width: 1040px) {
    #ct_bg .frameArea05 .col01 .col01-top {
        top: -7vw;
    }
    #ct_bg .frameArea05 .col01 .col01-bottom {
        bottom: -3.8vw;
    }
    #ct_bg .frameArea05 .col05 .col05-top {
        top: -7vw;
    }
    #ct_bg .frameArea05 .col05 .col05-bottom {
        bottom: -3.8vw;
    }
}

@media screen and (max-width: 768px) {
    #ct_bg .mainVisual {
		padding-top: 6.9vw;
    }
	#ct_bg .mainVisual::after {
		background-image: url(../../common/img/bg04_sp.png);
		background-size: auto 4.125vw;
	}
    #ct_bg .mainVisual.start-animation {
        height: 148.8vw;
        background-image: url(../img/bg_index01_sp.png);
    }
	#ct_bg .mainVisual.start-animation .mainVisualInner01 .logoWrap {
		width: auto;
		top: -6.3vw;
		left: inherit;
		right: 2.5vw;
	}
	#ct_bg .mainVisual.start-animation .mainVisualInner01 .logoWrap > .inner01 {
		align-items: center;
	}
	#ct_bg .mainVisual.start-animation .mainVisualInner01 .logoWrap > .inner01 p {
		width: 14.0625vw;
	}
	#ct_bg .mainVisual.start-animation .mainVisualInner01 .logoWrap > .inner01 p + p {
		margin-top: 0;
		margin-left: 2.5vw;
	}
	
    #ct_bg .mainVisual.start-animation .bg01 {
        height: 20vw;
    }
    #ct_bg .mainVisual.start-animation .bg02 {
        width: 81.2vw;
        top: 80vw;
        left: 40.4vw;
    }
    #ct_bg .mainVisual.start-animation .bg03 {
        width: 118.4vw;
        top: 26.1333vw;
        left: 9.6vw;
    }
    #ct_bg .mainVisual.start-animation .bg06 {
        width: 12.8vw;
        top: 92.6666vw;
        left: 83.0666vw;
    }
    #ct_bg .mainVisual.start-animation .bg08 {
        width: 11.7333vw;
        top: 74.2666vw;
        left: 88.2666vw;
    }
    #ct_bg .mainVisual.start-animation .bg09 {
        width: 10.8vw;
        top: 94.4vw;
        left: 44.1333vw;
    }
    #ct_bg .mainVisual.start-animation .bg10 {
        width: 13.2vw;
        top: 34vw;
        left: 83.4666vw;
    }
	#ct_bg .mainVisual.start-animation .bg12 {
		height: 9vw;
		background: url(../../common/img/bg01.png) repeat-x 50% 0 / 16vw;
	}
    #ct_bg .mainVisual.start-animation .mainVisualInner01 .img02 {
        width: 78.8vw;
        top: 2.5333vw;
        left: 10.6666vw;
    }
    #ct_bg .mainVisual.start-animation .mainVisualInner01 .img03 {
        width: 80vw;
        top: 38.6666vw;
        left: 0.8vw;
    }
    #ct_bg .mainVisual.start-animation .mainVisualInner01 .img04 {
        width: 40.8vw;
        top: 41.1vw;
        left: 55.6vw;
    }
    #ct_bg .mainVisual.start-animation .mainVisualInner01 .img05 {
        width: 33.2vw;
        top: 102.2666vw;
        left: 0.2666vw;
    }
    #ct_bg .mainVisual.start-animation .mainVisualInner01 .img06 {
        width: 41.7333vw;
        top: 100.2666vw;
        left: 29.2vw;
    }
    #ct_bg .mainVisual.start-animation .mainVisualInner01 .img07 {
        width: 35.8666vw;
        top: 100.8666vw;
        left: 65.6vw;
    }
    #ct_bg .frameArea01 {
        padding: 32vw 4vw 29.3333vw;
    }
    #ct_bg .movieArea01 .bgAnime01 {
        width: 74.5333vw;
        top: -24vw;
        left: 25.4666vw;
    }
    #ct_bg .movieArea01 .bgAnime02 {
        width: 74.5333vw;
        bottom: -26.2vw;
        right: 18vw;
    }
    #ct_bg .movieArea01 .illust01 {
        width: 38.5333vw;
        top: -26.5333vw;
        left: 0.4vw;
    }
    #ct_bg .movieArea01 .illust02 {
        width: 38.5333vw;
        bottom: -26.4vw;
        right: -1.3333vw;
    }

    @keyframes moveImagesSp {
        0% {
            left: 0%;
        }
        100% {
            left: -1327px; /* 元のサイズの長さ分左に移動 */
        }
    }
    #ct_bg .walkAnime__wrap {
        display: none;
    }
    #ct_bg .walkAnime__wrap_sp {
        overflow: hidden;
        display: flex;
        flex-direction: column;
        justify-content: center;
        padding-top: 100px;
        padding-bottom: 110px;
        position: relative;
        z-index: 10;
    }
    #ct_bg .walkAnime__wrap_sp .image-slider_sp {
        display: flex;
        align-items: center;
        animation: moveImagesSp 10s linear infinite;
        position: relative;
        left: 100%;
        width: 663.5px;
    }
    #ct_bg .walkAnime__wrap_sp .image-slider_sp img {
        animation: wiggle 0.5s infinite;
        height: auto;
        margin-right: 10px;
    }
    #ct_bg .walkAnime__wrap_sp .image-slider_sp .img01 {
        width: 71.5px;
    }
    #ct_bg .walkAnime__wrap_sp .image-slider_sp .img02 {
        width: 20.5px;
    }
    #ct_bg .walkAnime__wrap_sp .image-slider_sp .img03 {
        width: 71.5px;
    }
    #ct_bg .walkAnime__wrap_sp .image-slider_sp .img04 {
        width: 21px;
    }
    #ct_bg .walkAnime__wrap_sp .image-slider_sp .img05 {
        width: 66.5px;
    }
    #ct_bg .walkAnime__wrap_sp .image-slider_sp .img06 {
        width: 21.5px;
    }
    #ct_bg .walkAnime__wrap_sp .image-slider_sp .img07 {
        width: 71.5px;
    }
    #ct_bg .walkAnime__wrap_sp .image-slider_sp .img08 {
        width: 20.5px;
    }
    #ct_bg .walkAnime__wrap_sp .image-slider_sp .img09 {
        width: 68.5px;
    }
    #ct_bg .walkAnime__wrap_sp .image-slider_sp .img10 {
        width: 20px;
    }
    #ct_bg .walkAnime__wrap_sp .image-slider_sp .img11 {
        width: 69.5px;
    }
    #ct_bg .walkAnime__wrap_sp .image-slider_sp .img12 {
        width: 20.5px;
    }
	
	
    #ct_bg .frameArea02 .wrap02 .txt01 {
        font-size: 1.0rem;
    }
    #ct_bg .frameArea02 .wrap02 .img01 {
        width: 32.1333vw;
    }
    #ct_bg .frameArea02 .col01.left .wrap02 .img02 {
        width: 34.4vw;
    }
    #ct_bg .frameArea02 .col01.right .wrap02 .img02 {
        width: 37.3333vw;
    }
    #ct_bg .frameArea02 .wrap02 .txt02 {
        font-size: 1.0rem;
        padding: 4px 8px 2px;
    }
    #ct_bg .frameArea02 .wrap02 .txt03 {
        font-size: 1.1rem;
    }
    #ct_bg .frameArea03 {
        padding: 27.3333vw 4vw 7.2vw;
    }
    #ct_bg .frameArea03 > .inner01 .bgAnime01 {
        width: 66.1333vw;
        top: -43.2666vw;
        left: -12vw;
    }
    #ct_bg .frameArea03 > .inner01 .bgAnime02,
    #ct_bg .frameArea03 > .inner01 .illust01 {
        display: none;
    }
    #ct_bg .frameArea03 > .inner01 .bgAnime03 {
        width: 72vw;
        bottom: -22.9333vw;
        right: -14.6666vw;
    }
    #ct_bg .frameArea03 .wrap02 {
        background-image: url(../img/bg_index06_sp.png);
        background-repeat: no-repeat;
        aspect-ratio: 689 / 805;
        padding: 4.8vw 0 0;
		margin-top: 12vw;
    }
    #ct_bg .frameArea03 .wrap02 .ttl01 {
        max-width: 100%;
        top: -13.0666vw;
    }
    #ct_bg .frameArea03 .wrap02 .txt01 {
        width: 86.2%;
		margin-right: 7.5%;
    }
    #ct_bg .frameArea03 .wrap02 .img01 {
        width: 92.1291%;
        margin-top: -0.4vw;
		margin-left: 4.8%;
    }
    #ct_bg .frameArea03 .wrap02 .btn01 {
        margin-top: 1.3333vw;
    }
    #ct_bg .frameArea03 .wrap02 .btn01 a {
        width: 67.2vw;
    }
    #ct_bg .frameArea04 {
        padding: 0 4vw;
    }
    #ct_bg .frameArea04 > .inner01 .bgAnime01,
    #ct_bg .frameArea04 > .inner01 .illust01 {
        display: none;
    }
    #ct_bg .frameArea04 > .inner01 .bgAnime06 {
        width: 72vw;
        position: absolute;
        bottom: -24vw;
        right: -14.6666vw;
        animation: floating02 2.8s ease-in-out infinite;
    }
    #ct_bg .frameArea04 > .inner01 .bgAnime06 img {
        animation: floating01 3.1s ease-in-out infinite;

    }
    #ct_bg .frameArea04 .wrap02 .txt01 {
        margin-top: 5.3333vw;
    }
    #ct_bg .frameArea04 .wrap02 .col01 {
        margin-top: 5.3333vw;
    }
    #ct_bg .frameArea04 .wrap02 .col01 .bgAnime02 {
        width: 38.2666vw;
        top: -4.8vw;
        left: calc(50% - 48.4vw);
    }
    #ct_bg .frameArea04 .wrap02 .col01 .bgAnime03 {
        width: 36.6666vw;
        top: -4.8vw;
        left: calc(50% + 11.2vw);
    }
    #ct_bg .frameArea04 .wrap02 .col01 .bgAnime04 {
        width: 38.2666vw;
        top: -4.8vw;
        left: calc(50% - 48.4vw);
    }
    #ct_bg .frameArea04 .wrap02 .col01 .bgAnime05 {
        width: 36.6666vw;
        top: -4.8vw;
        left: calc(50% + 11.2vw);
    }
    #ct_bg .frameArea04 .wrap02 .col02 {
        margin-top: 5.3333vw;
    }
    #ct_bg .frameArea05 {
        padding: 0 4%;
    }
    #ct_bg .frameArea05 > .inner01 .bgAnime01 {
        width: 66.1333vw;
        top: -28vw;
        left: -12vw;
    }
    #ct_bg .frameArea05 > .inner01 .bgAnime02 {
        width: 72vw;
        bottom: -27.7333vw;
        right: -17.8666vw;
        /* top: -28vw;
        left: -12vw; */
    }
    #ct_bg .frameArea05 .col01 .col01-top {
        top: -11vw;
    }
	#ct_bg .frameArea05 .txt07 {
		text-align: left;
		font-size: 2.0rem;
		margin-top: 20px;
		margin-bottom: 70px;
	}
    #ct_bg .frameArea05 .col01 {
        background-image: url(../img/bg_index17_sp.png);
        background-repeat: repeat-y;
        background-size: contain;
        position: relative;
        padding: 2.6666vw 9.2753%;
        margin-top: 17.4666vw;
    }
    #ct_bg .frameArea05 .col01 .col01-bottom {
        bottom: -5.8vw;
    }
    #ct_bg .frameArea05 .wrap01 {
        flex-direction: column;
    }
    #ct_bg .frameArea05 .wrap01 .col02 {
        width: 100%;
    }
    #ct_bg .frameArea05 .wrap01 .col03 {
        width: 85.5%;
        margin-top: 9.0666vw;
    }
    #ct_bg .frameArea05 .wrap01 .col03 .img03 {
        margin-top: 3.3333vw;
    }
    #ct_bg .frameArea05 .col04 {
        margin-top: 5.3333vw;
    }
    #ct_bg .frameArea05 .col04 .txt01 {
        display: flex;
        flex-direction: column;
        align-items: center;
    }
    #ct_bg .frameArea05 .col04 .txt02 {
        font-size: 1.2rem;
        margin-right: 0;
    }
    #ct_bg .frameArea05 .col04 .txt03 {
        margin-top: 2.2vw;
        font-size: 1.6rem;
    }
    #ct_bg .frameArea05 .col04 .txt03.txt03Wrap01 {
        display: flex;
        justify-content: center;
        flex-wrap: wrap;
    }
    #ct_bg .frameArea05 .col04 .txt04 {
        font-size: 1.2rem;
    }
    #ct_bg .frameArea05 .col04 .txtWrap01 {
        flex-direction: column;
        align-items: normal;
    }
    #ct_bg .frameArea05 .col04 .txtWrap01 .txt05 {
        font-size: 1.2rem;
    }
    #ct_bg .frameArea05 .col04 .txtWrap01 .txt06 {
        font-size: 1.2rem;
    }
    #ct_bg .mallLinkBtn {
        width: 63.4666vw;
    }
    #ct_bg .frameArea05 .col01 .mallLinkBtn::before {
        width: 7.2vw;
        top: 2.5666vw;
        left: -9.3333vw;
    }
    #ct_bg .frameArea05 .col01 .mallLinkBtn::after {
        width: 7.2vw;
        top: 2.5666vw;
        right: -9.3333vw;
    }
    #ct_bg .frameArea05 .col05 .col05-top {
        top: -11vw;
    }
    #ct_bg .frameArea05 .col05 .col05-bottom {
        bottom: -5.8vw;
    }
    #ct_bg .frameArea05 .col05 {
        background-image: url(../img/bg_index20_sp.png);
        background-repeat: repeat-y;
        background-size: contain;
        position: relative;
        padding: 2.6666vw 9.2753%;
        margin-top: 17.4666vw;
    }
    #ct_bg .frameArea05 .col05 .mallLinkBtn::before {
        width: 7.2vw;
        top: 2.5666vw;
        left: -9.3333vw;
    }
    #ct_bg .frameArea05 .col05 .mallLinkBtn::after {
        width: 7.2vw;
        top: 2.5666vw;
        right: -9.3333vw;
    }
    #ct_bg .frameArea06 {
        padding: 29.3333vw 4vw 0;
    }
    #ct_bg .frameArea06 > .inner01 .bgAnime01,
    #ct_bg .frameArea06 > .inner01 .illust01 {
        display: none;
    }
    #ct_bg .frameArea06 > .inner01 .bgAnime02 {
        width: 72vw;
        top: -35.8666vw;
        right: -18.41333vw;
    }
    #ct_bg .frameArea06 .col01 {
        padding: 25px 15px;
        margin-top: 5.3333vw;
    }
    #ct_bg .frameArea06 .col01 .qa01 .icon01 {
        width: 20px;
        margin-right: 8px;
    }
    #ct_bg .frameArea06 .col01 .qa01 .txt01 {
        width: calc(100% - 28px);
        font-size: 1.6rem;
    }
    #ct_bg .frameArea06 .col01 .qa01 .icon02 {
        width: 20px;
        margin-right: 8px;
    }
    #ct_bg .frameArea06 .col01 .qa01 .txt02 {
        width: calc(100% - 28px);
        font-size: 1.4rem;
    }
    #ct_bg .frameArea06 .col01 .qa01 dd {
        padding-top: 10px;
        margin-top: 10px;
    }
    #ct_bg .frameArea07 {
        padding: 25.3333vw 4vw 16vw;
    }
    #ct_bg .frameArea07 .img01 {
        width: 79.2vw;
        margin-left: auto;
        margin-right: auto;
    }
    #ct_bg .frameArea07 .bgAnime01 {
        width: 74.5333vw;
        top: 10vw;
        left: calc(50% - 70vw);
    }
    #ct_bg .frameArea07 .bgAnime02 {
        width: 74.5333vw;
        top: 55vw;
        left: calc(50% - 10vw);
    }
}