@charset "utf-8";

html{
    overflow-x: hidden;
}
body{
    background-color: #FFF001;
    font-family: "Noto Sans JP", sans-serif;
    overflow-x: hidden;
    /* ↑p-kickboardのため */
}
.font-inter{
    font-family: "Inter", sans-serif;
}
/* mv */
.p-mv{
    padding-bottom: 7.152777777777778vw;
    padding-top: 7.638888888888889vw;
}
.p-mv__img{
    margin-top: -7.638888888888889vw;
    /* ボタンとの重なりのため */
    width: 95.41666666666667vw;
    position: relative;
    z-index: -1;
    /* ボタンのリンクが効かなくなるため */
}

/* about */
.p-about{
    background-color: #7BFFF6;
    padding-bottom: 3.4722222222222223vw;
}
.p-about__inner{
    width: 48.61111111111111vw;
    margin: 0 auto;
    margin-right: 13.88888888888889vw;
    position: relative;
    padding: 2.083333333333333vw 0 2.638888888888889vw 0;
}
.p-about__inner::before{
    position: absolute;
    content: "";
    background-image: url(../img/about-left.svg);
    background-repeat: no-repeat;
    width: 19.444444444444446vw;
    height: 34.72222222222222vw;
    left: -21.666666666666668vw;
    top: -8.333333333333332vw;
    z-index: 1;
    background-size: contain;
}
.p-about__inner::after{
    position: absolute;
    content: "";
    background-image: url(../img/about-right.svg);
    background-repeat: no-repeat;
    width: 7.638888888888889vw;
    height: 17.708333333333336vw;
    right: -7.847222222222222vw;
    top: 2.5vw;
    z-index: 1;
    background-size: contain;
}
.p-about__title{
    font-size: 2.2222222222222223vw;
    letter-spacing: 0.01em;
    line-height: 1.4;
    font-weight: 900;
}
.p-about__title-marker {
    position: relative;
    z-index: 1; /* テキストを前面に配置 */
}
.p-about__title-marker:before {
    content: "";
    display: inline-block;
    position: absolute;
    left: 0;
    bottom: -0.20833333333333334vw;
    width: 38.75vw;
    height: 1.8055555555555554vw;
    border-radius: 0.9027777777777777vw;
    background: #FFF001;
    z-index: -1; /* 疑似要素を背面に配置 */
}
.p-about__text{
    font-size: 1.0416666666666665vw;
    font-weight: 600;
    line-height: 2;
    padding-top: 1.597222222222222vw;
}

/* ticket */
.p-ticket{
    background-color: #B7FF90;
}
.p-ticket__inner{
    width: 31.944444444444443vw;
    margin: 0 auto;
    margin-left: 15.76388888888889vw;
    padding: 2.1527777777777777vw 0 5.555555555555555vw 0 ;
}
.p-ticket__title{
    width: 13.541666666666666vw;
}
.p-ticket__price{
    width: 28.819444444444443vw;
    display: flex;
    padding-top: 1.3888888888888888vw;
}
.p-ticket__title img{
    width: 13.541666666666666vw;
}
.p-ticket__price img{
    width: 22.916666666666664vw;
}
.p-ticket__tax{
    font-size: 1.3888888888888888vw;
    padding-top: 3.888888888888889vw;
}

/* 追加 */
.p-ticket__announce {
    color: #fff;
    padding-top: 2.083333333333333vw;
}
/* 追加 */

.p-ticket__announce-title{
    font-size: 1.25vw;
    font-weight: 900;
    padding: 1.25vw 0  1.6666666666666667vw 2.7777777777777777vw;
    position: relative;
/* 追加 */
    width: 18.75vw;
    margin: 0 auto;
/* 追加 */
}
.p-ticket__announce-title::before{
    position: absolute;
    content: "";
    background-image: url(../img/mark.png);
    width: 2.430555555555556vw;
    height: 2.083333333333333vw;
    top: 0.8333333333333334vw;
    left:0;
    background-size: contain;
    background-repeat: no-repeat;
}
.p-ticket__announce-list{
    font-size: 0.9722222222222222vw;
    padding-left: 1.25vw;
/* 追加 */
    width: 30.625000000000004vw;
    margin: 0 auto;
/* 追加 */
}
.p-ticket__announce-list p{
    position: relative;
    padding-bottom: 0.4166666666666667vw;
}
.p-ticket__announce-list p::before{
    position: absolute;
    content: "";
    width: 0.9027777777777777vw;
    height: 0.9027777777777777vw;
    border-radius: 50%;
    background-color: #9747FF;
    left: -1.1805555555555556vw;
    top: 0.1388888888888889vw;
}

/* discount */
.p-discount{
    background-color: #FF3B76;
}
.p-discount__inner{
    width: 52.083333333333336vw;
    margin: 0 auto;
    padding: 3.194444444444444vw 0 5.833333333333333vw 0;
}
.p-discount__title{
    color: #fff;
    font-size: 2.2222222222222223vw;
    font-weight: 900;
    letter-spacing: 0.1em;
    margin-bottom: -2.083333333333333vw;
    margin-left: -0.9722222222222222vw;
}
.p-discount__date img {
    width: 51.87500000000001vw;
    margin-left: -1.1805555555555556vw;
}
.p-discount__price{
    display: flex;
    justify-content: center;
    padding-top: 1.3888888888888888vw;
    margin-left: 1.3888888888888888vw;
}
.p-discount__price img{
    width: 30.833333333333336vw;
}
.p-discount__price span{
    color: #fff;
    font-size: 1.3888888888888888vw;
    padding-top: 6.25vw;
}
.p-discount__text{
    color: #fff;
    font-size: 0.9722222222222222vw;
    text-align: center;
    padding-top: 0.5555555555555556vw;
}

/* timetable */
.p-timetable {
    background-color: #FFF001;
    padding: 3.4722222222222223vw 0 10.069444444444445vw;
}
.p-timetable__title{
    text-align: center;
    padding-top: 1.3888888888888888vw;
    padding-bottom: 5.208333333333334vw;
}
.p-timetable__title img{
    width: 25.694444444444443vw;
}
.p-timetable__wrapper {
    display: flex;
    justify-content: center;
    gap: 3.125vw;
}
.p-timetable__date {
    padding-bottom: 2.638888888888889vw;
    text-align: center;
}
.p-timetable__date img{
    height: 5.347222222222222vw;
}
.p-time{
    text-align: center;
    padding-bottom: 1.3888888888888888vw;
}
.p-time img{
    width: 10.416666666666668vw;
}
.p-card{
    background-color: #fff;
    border: 0.06944444444444445vw solid #000;
    width: 35.55555555555556vw;
    box-shadow: 0.6944444444444444vw 0.6944444444444444vw 0.6944444444444444vw 0 rgba(0, 0, 0, 0.15);
    margin-bottom: 2.7777777777777777vw;
}
.p-card:last-child{
    margin-bottom: initial;
}
.p-card__image img{
    height: 19.930555555555557vw;
    width: 35.41666666666667vw;
}
.p-card__title{
    font-size: 1.6666666666666667vw;
    font-weight: 600;
    line-height: 1.4;
}
.p-card__title{
    padding: 1.25vw 1.7361111111111112vw;
    height: 11.805555555555555vw;
}
.p-instructor{
    display: flex;
    /* align-items: center; */
    gap: 1.3888888888888888vw;
    padding: 0 1.7361111111111112vw 2.083333333333333vw 1.7361111111111112vw;
}
.p-instructor__label{
    background-color: #000;
    color: #fff;
    font-size: 1.1111111111111112vw;
    font-family: "Zen Kaku Gothic New", sans-serif;
    padding: 0.4166666666666667vw 0.6944444444444444vw;
}
.p-instructor__name {
    font-size: 1.6666666666666667vw;
}
.p-instructor__name-three{
    font-size: 1.4583333333333333vw;
}

.p-card__button--link{
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #000;
    color: #fff;
    height: 4.166666666666666vw;
    font-size: 1.25vw;
    font-weight: 600;
    border-top: 0.06944444444444445vw solid #000;
}
.p-card__button--link:hover{
    background-color: #E5FF00;
    color: #1F1F1F;
    transition: 0.5s;
}
.p-timetable__day2 {
    border-right: 0.06944444444444445vw solid #000;
    border-left: 0.06944444444444445vw solid #000;
    padding: 0 3.125vw;
}
.p-timetable__day1 {
    padding-left: 3.125vw;
    border-left: 0.06944444444444445vw solid #000;
}

/* join */
.p-join{
    background-color: #BDFFFB;
    padding-bottom: 6.388888888888888vw;
}
.p-join__inner{
    width: 68.05555555555556vw;
    margin: 0 auto;
}
.p-join__title{
    font-size: 2.2222222222222223vw;
    letter-spacing: 0.1em;
    font-weight: 900;
    padding-top: 1.9444444444444444vw;
}
.p-step__number{
    padding: 1.1111111111111112vw 0 1.7361111111111112vw 0;
}
.p-step__number img{
    height: 3.958333333333333vw;
}
.p-step__number-second{
    text-align: right;
    padding-right: 1.3888888888888888vw;
    padding-top: 2.2916666666666665vw;
}
.p-step__title{
    font-size: 1.6666666666666667vw;
    font-weight: 900;
    background: #fff;
    width: 44.93055555555556vw;
    height: 5.486111111111111vw;
    border-radius: 2.7777777777777777vw;
    border: 0.4166666666666667vw solid #E5FF00;
    display: flex;
    justify-content: center;
    align-items: center;
}
.p-step{
    width: 45.69444444444444vw;
}
.p-step__second{
    width: 45.48611111111111vw;
    margin: 0 0 0 auto;
    margin-top: -3.2638888888888893vw;
}
.p-step__text{
    font-size: 1.0416666666666665vw;
    font-weight: 500;
    line-height: 1.6;
    padding: 1.8055555555555554vw 0;
}
.p-step__announce li{
    padding-bottom: 0.20833333333333334vw;
}
.p-step__announce{
    font-size: 0.9722222222222222vw;
    font-weight: 400;
}
.p-step__announce-title{
    text-align: center;
    padding-bottom: 1.1111111111111112vw;
}
.p-step__announce-text li{
    line-height: 1.45;
}

/* footer */
.l-footer{
    background-color: #140878;
    color: #fff;
}
.l-footer__inner{
    text-align: center;
    padding: 5.555555555555555vw 0 6.944444444444445vw 0;
}
.l-footer__logo{
    width: 20.069444444444446vw;
}
.l-footer__cgworld img{
    width: 7.222222222222221vw;
    padding: 1.3888888888888888vw 0 2.430555555555556vw;
}
.l-footer__sns img{
    margin: 0 1.3888888888888888vw;
}
.p-sns-icon--facebook img{
    width: 3.3333333333333335vw;
}
.p-sns-icon--x img{
    width: 2.7777777777777777vw;
}
.l-footer__text{
    line-height: 1.57;
    font-size: 0.9722222222222222vw;
    padding: 2.986111111111111vw 0 0.6944444444444444vw 0;
}
.l-footer__copyright img{
    width: 14.374999999999998vw;
}

/* ボタン */
.c-buttonArea{
    display: flex;
    margin-top: 2.430555555555556vw;
    justify-content: end;
    gap: 1.0416666666666665vw;
    margin-right: 3.4722222222222223vw;
    position: fixed;
    right: 0;
    top: 0;
    z-index: 100;
}

/* チケット20%OFF!早期割引実施中 */
.c-button__off{
    display: flex;
    justify-content: flex-end;
    /* margin-right: 3.4722222222222223vw; */
    /* margin-top: 2.430555555555556vw; */
}
.c-button__off--text {
    flex-direction: column;
    width: 16.666666666666664vw;
    height: 4.861111111111112vw;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #000;
    font-weight: 900;
    font-size: 1.25vw;
    line-height: 0.7;
    border-radius: 2.430555555555556vw;
    color: #fff;
}
.c-button__off--text .sub{
    font-size: 1.0416666666666665vw;
}
.c-button__off--text:hover{
    background-color: #000;
    color: #FFF001;
    transition: 0.5s;
    border: 0.06944444444444445vw solid #FFF001;
}

/* 通常ボタン */
.c-button{
    display: flex;
    justify-content: flex-end;
    /* margin-right: 3.4722222222222223vw; */
    /* margin-top: 2.430555555555556vw; */
}
.c-button__text {
    flex-direction: column;
    width: 16.666666666666664vw;
    height: 4.861111111111112vw;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #000;
    font-weight: 900;
    font-size: 1.25vw;
    line-height: 0.7;
    border-radius: 2.430555555555556vw;
    color: #fff;
}
.c-button__text:hover{
    background-color: #000;
    color: #FFF001;
    border: 0.06944444444444445vw solid #FFF001;
    transition: 0.5s;
}

/* 法人ボタン */
.c-button--corporate a{
    background-color: #7BFFF6;
    color: #FF3B76;
    border: 0.06944444444444445vw solid #000;
}
.c-button__text:hover{
    background-color: #000;
    color: #7BFFF6;
    border: 0.06944444444444445vw solid #7BFFF6;
    transition: 0.5s;
}

/* triangle */
.p-triangle{
    position: relative;
}
.p-triangle::before,
.p-triangle::after
{
    position: absolute;
    content: "";
    display: inline-block;
    /* border: solid; */
    height: 0;
    width: 0;
}
.p-triangle__about::before {
    border-width: 3.8194444444444446vw 0 0 100vw;
    right: 0;
    top: -3.5416666666666665vw;
    border-color: transparent transparent transparent #7BFFF6;
}
.p-triangle__ticket::before {
    border-width: 3.8194444444444446vw 0 0 100vw;
    right: 0;
    top: -3.5416666666666665vw;
    border-color: transparent transparent transparent #B7FF90;
}
.p-triangle__discount::before {
    top: -3.680555555555556vw;
    border-color: transparent transparent #FF3B76 transparent;
    right: 0;
    border-width: 0 0 3.8194444444444446vw 100vw;
}
.p-triangle__timetable::before{
    top: -3.75vw;
    border-color: transparent transparent #FFF001 transparent;
    right: 0;
    border-width: 0 0 3.8194444444444446vw 100vw;
}
.p-triangle__join::before{
        border-width: 4.861111111111112vw 0 0 100vw;
        right: 0;
        top: -4.722222222222222vw;
        border-color: transparent transparent transparent #BDFFFB;
}

/* animation */
.p-kickboard{
    position: relative;
}
/* .p-kickboard::before{
    position: absolute;
    content: "";
    background-image: url(../img/kickboard.svg);
    background-repeat: no-repeat;
    width: 10.416666666666668vw;
    height: 18.819444444444443vw;
    top: 2.2916666666666665vw;
    right: 5.138888888888888vw;
    background-size: contain;
    animation: p-kickboard 0.1s  infinite;
}
@keyframes p-kickboard {
    0% {transform: translate(0px, 0px) rotateZ(0deg)}
    25% {transform: translate(2px, 2px) rotateZ(1deg)}
    50% {transform: translate(0px, 2px) rotateZ(0deg)}
    75% {transform: translate(2px, 0px) rotateZ(-1deg)}
    100% {transform: translate(0px, 0px) rotateZ(0deg)}
} */

.p-kickboard::before{
    position: absolute;
    content: "";
    background-image: url(../img/kickboard.svg);
    background-repeat: no-repeat;
    width: 10.416666666666668vw;
    height: 18.819444444444443vw;
    top: 9.86111111111111vw;
    right: 5.138888888888888vw;
    background-size: contain;
    animation: p-kickboard 3s cubic-bezier(0.25, 1, 0.5, 1) infinite;
}
@keyframes p-kickboard {
    0% {
      transform: translate(180px, -50px); /* 右上から */
    opacity: 0;
    }
    100% {
    transform: translate(0, 0);
    }
    20%, 100% {
    opacity: 1;
    }
}

.p-bike{
    position: relative;
}
.p-bike::before{
    position: absolute;
    content: "";
    background-image: url(../img/bike.svg);
    background-repeat: no-repeat;
    width: 14.166666666666666vw;
    height: 16.805555555555557vw;
    bottom: 4.861111111111112vw;
    right: 44.44444444444444vw;
    background-size: contain;
    animation: p-bike 2s cubic-bezier(0.25, 1, 0.5, 1) infinite;
}
@keyframes p-bike {
    0% {
    transform: translate(-180px,-50px); /* 左上から */
    opacity: 0;
    }
    100% {
    transform: translate(0,0);
    }
    20%,100% {
    opacity: 1;
    }
}

.p-family{
    position: relative;
}
.p-family::before{
    position: absolute;
    content: "";
    background-image: url(../img/family.svg);
    background-repeat: no-repeat;
    width: 12.152777777777777vw;
    height: 21.944444444444443vw;
    bottom: 3.2638888888888893vw;
    right: 22.77777777777778vw;
    background-size: contain;
    animation: p-family 3s infinite ease;
}
@keyframes p-family {
    0% {
    transform: translate(0, 0);
    }
    5% {
    transform: translate(0, 0);
    }
    10% {
    transform: translate(0, 0);
    }
    20% {
    transform: translate(0, -5px);
    }
    25% {
    transform: translate(0, 0);
    }
    30% {
    transform: translate(0, -5px);
    }
    50% {
    transform: translate(0, 0);
    }
    100% {
    transform: translate(0, 0);
    }
}

.p-girl{
    position: relative;
}
.p-girl::before{
    position: absolute;
    content: "";
    background-image: url(../img/girl.svg);
    background-repeat: no-repeat;
    width: 8.61111111111111vw;
    height: 16.180555555555557vw;
    top: 9.027777777777777vw;
    right: 29.02777777777778vw;
    background-size: contain;
    animation: p-girl 3s infinite ease;
}
@keyframes p-girl {
    0%, 100% { transform: translateX(0); }
    25% { transform: translateX(-6px); }
    75% { transform: translateX(6px); }
}

.p-ticket__illustration{
    position: relative;
}
.p-ticket__illustration::before{
    position: absolute;
    content: "";
    background-image: url(../img/ticket-right.svg);
    background-repeat: no-repeat;
    width: 36.736111111111114vw;
    height: 16.944444444444446vw;
    right: -38.19444444444444vw;
    top: -17.083333333333332vw;
    background-size: contain;
    animation: p-ticket__illustration 3s infinite ease;
}
@keyframes p-ticket__illustration {
    0% {
    transform: translate(0, 0);
    }
    5% {
    transform: translate(0, 0);
    }
    10% {
    transform: translate(0, 0);
    }
    20% {
    transform: translate(0, -15px);
    }
    25% {
    transform: translate(0, 0);
    }
    30% {
    transform: translate(0, -15px);
    }
    50% {
    transform: translate(0, 0);
    }
    100% {
    transform: translate(0, 0);
    }
}

.p-discount__inner{
    position: relative;
}
.p-discount__inner::before{
    position: absolute;
    content: "";
    background-image: url(../img/discount-left.svg);
    background-repeat: no-repeat;
    width: 9.027777777777777vw;
    height: 16.875vw;
    top: -3.4722222222222223vw;
    left: -10.972222222222221vw;
    background-size: contain;
    animation: p-discount__inner-left 7s infinite linear;
}
@keyframes p-discount__inner-left {
    0% {
    transform: rotateY(0deg);
    }
    50% {
    transform: rotateY(180deg);
    }
    100% {
    transform: rotateY(360deg);
    }
}

.p-discount__inner::after{
    position: absolute;
    content: "";
    background-image: url(../img/discount-right.svg);
    background-repeat: no-repeat;
    width: 9.930555555555555vw;
    height: 16.875vw;
    bottom: 1.597222222222222vw;
    right: -8.125vw;
    z-index: 1;
    background-size: contain;
    animation: p-discount__inner-right 7s infinite linear;
}
@keyframes p-discount__inner-right {
    0% {
        transform: rotateY(0deg);
    }
    50% {
        transform: rotateY(-180deg);
    }
    100% {
        transform: rotateY(-360deg);
    }
}

.p-join__illustration{
    position: relative;
}
.p-join__illustration::before,
.p-join__illustration::after{
    position: absolute;
    content: "";
}
.p-join__illustration--top::before{
    background-image: url(../img/join-top1.svg);
    background-repeat: no-repeat;
    width: 8.402777777777779vw;
    height: 13.541666666666666vw;
    top: -1.7361111111111112vw;
    right: 17.01388888888889vw;
    background-size: contain;
}
.p-join__illustration--top::after{
    background-image: url(../img/join-top2.svg);
    background-repeat: no-repeat;
    width: 8.333333333333332vw;
    height: 7.777777777777778vw;
    top: 11.805555555555555vw;
    right: 26.25vw;
    background-size: contain;
    animation: p-join__illustration-top 1.8s ease-in-out infinite alternate-reverse;
}

@keyframes p-join__illustration-top {
    0% {
    transform: translateY(-15px);
    }
    100% {
    transform: translateY(15px);
    }
}

.p-join__illustration--bottom::before{
    background-image: url(../img/join-bottom1.svg);
    background-repeat: no-repeat;
    width: 8.125vw;
    height: 11.041666666666666vw;
    top: -24.305555555555554vw;
    left: 26.38888888888889vw;
    background-size: contain;
}
.p-join__illustration--bottom::after{
    background-image: url(../img/join-bottom2.svg);
    background-repeat: no-repeat;
    width: 11.11111111111111vw;
    height: 12.63888888888889vw;
    top: -14.027777777777779vw;
    left: 15.277777777777779vw;
    background-size: contain;
    animation: p-join__illustration-bottom 2s ease-in-out infinite;
}
@keyframes p-join__illustration-bottom {
    0%, 100% { transform: translate(0, 0); }
    50% { transform: translate(30px, -30px); } /* X方向に右・Y方向に上で斜め */
}

/* レスポンシブ */
@media screen and (min-width: 441px){
    .p-mv__img--sp,
    .p-discount__date--sp,
    .p-discount__price--sp,
    .c-buttonSp__off,
    .c-buttonSp__bottom
    {
        display: none;
    }
}

@media screen and (max-width: 440px){
    .p-mv__img,
    .c-button__off,
    .p-discount__date,
    .p-discount__price,
    .p-join__illustration--bottom::before,
    .p-join__illustration--bottom::after,
    .c-button
    {
        display: none;
    }

    /* mv */
    .p-mv{
        padding-bottom: 10.666666666666668vw;
        padding-top: 0.5333333333333333vw;
    }
    .p-mv__img--sp{
        width: 100vw;
    }

    /* about */
    .p-about{
        padding-bottom: 8.799999999999999vw;
    }
    .p-about__inner{
        width: 88vw;
        margin-right: initial;
        margin: 0 auto;
        padding: 4vw 0 2.666666666666667vw 0;
    }
    .p-about__inner::before{
        background-image: url(../img/about-left-sp.png);
        width: 10.4vw;
        height: 32.266666666666666vw;
        left: 77.60000000000001vw;
        top: -14.666666666666666vw;
    }
    .p-about__inner::after{
        background-image: url(../img/about-right-sp.png);
        width: 15.2vw;
        height: 32vw;
        right: 0.26666666666666666vw;
        /* top: 96vw; */
        top: 88vw;
    }
    .p-about__title{
        font-size: 4.266666666666667vw;
        letter-spacing: 0.02em;
        line-height: 1.6;
    }
    .p-about__title-marker:before {
        bottom: -0.5333333333333333vw;
        width: 73.33333333333333vw;
        height: 4vw;
        border-radius: 2.1333333333333333vw;
    }
    .p-about__text{
        font-size: 3.4666666666666663vw;
        font-weight: 600;
        line-height: 1.84;
        padding-top: 4vw;
    }

    /* ticket */
    .p-ticket__inner{
        width: 72.53333333333333vw;
        margin-left: 24.53333333333333vw;
        padding: 2.666666666666667vw 0 48.53333333333333vw 0 ;
    }
    .p-ticket__title{
        width: 29.599999999999998vw;
    }
    .p-ticket__price{
        width: 63.2vw;
        padding-top: 1.3333333333333335vw;
    }
    .p-ticket__title img{
        width: 29.599999999999998vw;
    }
    .p-ticket__price img{
        width: 52.26666666666666vw;
    }
    .p-ticket__tax{
        font-size: 2.666666666666667vw;
        padding-top: 10.133333333333333vw;
    }
    /* 追加ここから */
    .p-ticket__announce {
        padding-top: 2.666666666666667vw;
    }
    /* 追加ここまで */

    .p-ticket__announce-title{
        font-size: 3.4666666666666663vw;
    /* 修正ここから */
        /* padding: 3.2vw 0 3.4666666666666663vw 7.466666666666668vw; */
        padding: 3.2vw 0 3.4666666666666663vw 5.866666666666666vw;

    /* 修正ここまで */

    /* 追加 */
        width: initial;
    /* 追加 */
    }
    .p-ticket__announce-title::before{
        position: absolute;
        content: "";
        background-image: url(../img/mark.png);
        background-repeat: no-repeat;
        background-size: contain;
        width: 6.4vw;
        height: 5.6000000000000005vw;
        top: 2.4vw;
    /* 修正 */
        /* left:0; */
        left: -2.1333333333333333vw;
        /* 修正 */
    }
    .p-ticket__announce-list{
        font-size: 2.666666666666667vw;
        padding-left: 2.666666666666667vw;
    /* 追加 */
        width: initial;
        padding-bottom: 21.333333333333336vw;
    /* 追加 */
    }
    .p-ticket__announce-list p{
        padding-bottom: 1.3333333333333335vw;
    }
    .p-ticket__announce-list p::before{
        position: absolute;
        content: "";
        width: 2.4vw;
        height: 2.4vw;
        left: -3.733333333333334vw;
        top: 0.5333333333333333vw;
    }
    .p-ticket__price--sp{
        position: relative;
    }
    .p-ticket__price--sp::before{
        position: absolute;
        content: "";
        background-image: url(../img/ticket-sp.png);
        background-size: contain;
        width: 16.266666666666666vw;
        height: 41.6vw;
        top: -11.733333333333333vw;
        left: -19.466666666666665vw;
        background-repeat: no-repeat;
    }

    /* discount */
    .p-discount__inner{
        width: 84.26666666666667vw;
        margin: 0 auto;
        padding: 9.866666666666667vw 0 2.666666666666667vw 0;
    }
    .p-discount__title{
        font-size: 8.533333333333333vw;
        margin-bottom: initial;
        margin-left: initial;
        text-align: center;
    }
    .p-discount__date--sp{
        padding-top: 5.333333333333334vw;
    }
    .p-discount__date--sp img {
        width: 81.33333333333333vw;
    }
    .p-discount__price--sp{
        padding-top: 2.666666666666667vw;
        margin-left: -2.666666666666667vw;
    }
    .p-discount__price--sp img{
        width: 85.06666666666666vw;
    }
    .p-discount__price--sp span{
        font-size: 2.666666666666667vw;
        color: #fff;
        display: flex;
        justify-content: flex-end;
        margin-top: -2.933333333333333vw;
    }
    .p-discount__text{
        font-size: 3.733333333333334vw;
        text-align: left;
        padding-top: 4vw;
    /* 修正 */
        padding-bottom: initial;
    /* 修正 */
        margin-left: -2.1333333333333333vw;
    }

    /* timetable */
    .p-timetable {
        padding: 6.933333333333333vw 0 2.666666666666667vw;
    }
    .p-timetable__title {
        padding-bottom: 2.666666666666667vw;
        font-size: 12.8vw;
    }
    .p-timetable__title img{
        width: 73.86666666666667vw;
    }
    .p-timetable__wrapper {
        display: block;
    }
    .p-timetable__date {
        font-size: 26.666666666666668vw;
        padding-bottom: 5.333333333333334vw;
    }
    .p-timetable__date img{
        height: 20.533333333333335vw;
    }
    .p-time{
        font-size: 7.466666666666668vw;
        padding-bottom: 4vw;
    }
    .p-time img{
        width: 38.666666666666664vw;
    }
    .p-card{
        border: 0.26666666666666666vw solid #000;
        width: 90.66666666666666vw;
        box-shadow: 2.666666666666667vw 2.666666666666667vw 2.666666666666667vw 0 rgba(0, 0, 0, 0.15);
        margin: 0 auto 10.666666666666668vw;
    }
    .p-card:last-child{
        margin-bottom: 18.666666666666668vw;
    }
    .p-card__image img{
        height: 50.93333333333333vw;
        width: 90.13333333333333vw;
    }
    .p-card__title{
        font-size: 4.266666666666667vw;
    }
    .p-card__title{
        padding: 4.533333333333333vw 2.666666666666667vw;
        height: 32vw;
    }
    .p-instructor{
        gap: 3.2vw;
        padding: 0 4.533333333333333vw 6.4vw;
    }
    .p-instructor__label{
        font-size: 2.666666666666667vw;
        padding: 1.3333333333333335vw 1.866666666666667vw;
    }
    .p-instructor__name {
        font-size: 4.266666666666667vw;
    }
    .p-instructor__name-three{
        font-size: 3.733333333333334vw;
    }
    .p-card__button--link{
        height: 10.666666666666668vw;
        font-size: 3.733333333333334vw;
        border-top: 0.26666666666666666vw solid #000;
    }
    .p-timetable__day2 {
        border-right: none;
        border-left: none;
        padding: initial;
    }
    .p-timetable__day1 {
        padding-left: initial;
        border-left: none;
    }

    /* join */
    .p-join{
        padding-bottom: 12.533333333333333vw;
    }
    .p-join__inner{
        width: 90.66666666666666vw;
    }
    .p-join__title{
        text-align: center;
        font-size: 6.4vw;
        padding-top: 11.466666666666667vw;
    }
    .p-step__number{
        padding: 6.933333333333333vw 0 3.2vw 0;
        text-align: center;
    }
    .p-step__number img{
        height: 8.799999999999999vw;
    }
    .p-step__number-second{
        padding-right: initial;
        padding-top: initial;
    }
    .p-step__title{
        font-size: 6.4vw;
        width: 90.66666666666666vw;
        height: 18.666666666666668vw;
        border-radius: 9.333333333333334vw;
        border: 1.6vw solid #E5FF00;
    }
    .p-step{
        width: initial;
    }
    .p-step__second{
        width: initial;
        margin: initial;
        margin-top: 10.666666666666668vw;
    }
    .p-step__text{
        font-size: 3.733333333333334vw;
        padding: 4.266666666666667vw 0 3.4666666666666663vw 0;
    }
    .p-step__announce li{
        padding-bottom: 1.0666666666666667vw;
        line-height: 1.4;
    }
    .p-step__announce{
        font-size: 3.733333333333334vw;
    }
    .p-step__announce-title{
        text-align: center;
        padding-bottom: 3.733333333333334vw;
        padding-top: 1.866666666666667vw;
    }
    .p-step__announce-text li{
        line-height: 1.45;
    }

    /* footer */
    .l-footer__inner{
        padding: 21.333333333333336vw 0 40vw 0;
    }
    .l-footer__logo{
        width: 77.06666666666668vw;
    }
    .l-footer__cgworld img{
        width: 27.46666666666667vw;
        padding: 5.333333333333334vw 0 9.333333333333334vw;
    }
    .l-footer__sns img{
        margin: 0 2.666666666666667vw;
    }
    .p-sns-icon--facebook img{
        width: 12.8vw;
    }
    .p-sns-icon--x img{
        width: 10.666666666666668vw;
    }
    .l-footer__text{
        font-size: 3.733333333333334vw;
        padding: 11.466666666666667vw 0 2.666666666666667vw 0;
    }
    .l-footer__copyright img{
        width: 55.2vw;
    }

    .c-buttonSp__off {
        width: 50vw;
    }
    .c-buttonSp__off--text {
        flex-direction: column;
        width: 50vw;
        height: 21.866666666666667vw;
        display: flex;
        justify-content: center;
        align-items: center;
        background-color: #000;
        color: #fff;
        font-weight: 900;
        font-size: 4.8vw;
        line-height: 0.7;
        position: fixed;
        bottom: 0;
        z-index: 1;
    }
    .c-buttonSp__off--text .sub{
        font-size: 4.266666666666667vw;
    }
    .c-buttonSp__off--text:hover{
        color: #FFF001;
        transition : 0.5s;
    }

    /* 通常ボタン */
    .c-buttonSp__bottom {
        width: 50vw;
    }
    .c-buttonSp__bottom a{
        flex-direction: column;
        width: 50vw;
        height: 21.866666666666667vw;
        display: flex;
        justify-content: center;
        align-items: center;
        background-color: #7BFFF6;
        color: #FF3B76;
        font-weight: 900;
        font-size: 4.8vw;
        line-height: 1.3;
        position: fixed;
        bottom: 0;
        z-index: 1;
        text-align: center;
        border: 0.26666666666666666vw solid #000;
    }
    .c-buttonSp__bottom a:hover{
        background-color: #000;
        border: 0.26666666666666666vw solid #7BFFF6;
        color: #7BFFF6;
        transition : 0.5s;
    }
    .c-buttonArea{
        bottom: 0;
        left: 0;
        margin-right: initial;
        gap: initial;
        height: 0;
    }

    /* triangle */
    .p-triangle__discount::before {
        border-width: 0 100vw 3.8194444444444446vw 0;
    }
    .p-triangle__timetable::before{
        border-width: 0 100vw 3.8194444444444446vw 0;
    }
    .p-triangle__timetable::before{
        /* top: -3.75vw; */
        top: -3.4666666666666663vw;
    }

    /* animation */
    .p-kickboard::before{
        background-image: url(../img/kickboard.png);
        width: 17.333333333333336vw;
        height: 31.2vw;
        top: 37.86666666666667vw;
        right: 3.4666666666666663vw;
    }
    .p-bike::before{
        background-image: url(../img/bike.png);
        width: 23.466666666666665vw;
        height: 28.000000000000004vw;
        bottom: 84.26666666666667vw;
        right: 61.6vw;
    }
    .p-family{
        position: relative;
    }
    .p-family::before{
        background-image: url(../img/family.png);
        width: 20.266666666666666vw;
        height: 36.53333333333333vw;
        bottom: 85.33333333333334vw;
        right: 30.4vw;
    }
    .p-girl::before{
        background-image: url(../img/girl.png);
        width: 14.399999999999999vw;
        height: 26.93333333333333vw;
        top: 46.93333333333333vw;
        right: 25.333333333333336vw;
    }
    .p-ticket__illustration::before{
        background-image: url(../img/ticket-right.png);
        width: 80vw;
        height: 37.06666666666666vw;
        right: 7.199999999999999vw;
        top: 2.1333333333333333vw;
    }
    .p-discount__inner::before{
        background-image: url(../img/discount-left.png);
        width: 16.266666666666666vw;
        height: 30.4vw;
        top: -9.066666666666666vw;
        left: -2.666666666666667vw;
    }
    .p-discount__inner::after{
        background-image: url(../img/discount-right.png);
        width: 18.666666666666668vw;
        height: 31.733333333333334vw;
        bottom: -9.066666666666666vw;
        right: -1.6vw;
    }
    .p-join__illustration{
        position: relative;
    }
    .p-join__illustration::before,
    .p-join__illustration::after{
        position: absolute;
        content: "";
    }
    .p-join__illustration--top::before{
        background-image: url(../img/join-top1.png);
        width: 19.733333333333334vw;
        height: 32vw;
        top: -9.866666666666667vw;
        right: 73.33333333333333vw;
    }
    .p-join__illustration--top::after{
        background-image: url(../img/join-top2.png);
        width: 16.8vw;
        height: 15.733333333333333vw;
        top: 2.666666666666667vw;
        right: 9.6vw;
    }
}