html body{
	padding-bottom: 0;
}
.footer__inner {
    padding: 0 20px 80px;
}
.detail-btn__end{
    position: relative;
}
.detail-btn__end > p{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%) rotate(-10deg);
    font-size: 1.6rem;
    border-radius: 10px;
    background-color: #FFFFFF;
    border: 2px solid #000000;
    z-index: 1;
    padding: 1em;
	opacity: 0.9;
}
@media (min-width:768px) {
    .detail-btn__end > p{
        font-size: 2rem;
        padding: 1em 2em;
    }
}

.registration{
	padding: 10px 15px;
	background-color: hsla(43,79%,59%,0.80);
	border: solid 4px #E9BA46;
	max-width: 300px;
	top: auto;
    bottom: 5%;
    left: auto;
	right: 4%;
	position: fixed;
    z-index: 99;
	border-radius: 10px;
}
@media (max-width:767px){
	.registration{
		max-width: 180px;
		padding: 5px 10px;
	}
}

.btn-0316{
	background-color: #e52e8a;
	border: 3px solid #fff;
	display: block;
	text-align: center;
	padding: 1em;
	font-size: 3.2rem;
	color: #fff;
	margin: 0 auto 40px;
	text-decoration: none;
	font-weight: 600;
	max-width: 1000px;
}
.btn-0316:hover{
	color: #fff;
	opacity: 0.8;
}
@media screen and (max-width: 768px){
	.btn-0316{
		font-size: 2.4rem;
	}
}

.ticket .text-banner{
	font-size: 2.2rem;
	font-weight: 600;
	margin-bottom: 0.3em;
	text-align: center;
}
.ekinetbooth__btn {
    text-decoration: none;
    font-size: 2.6rem;
    font-weight: 500;
    padding: 1em 50px 1em 30px;
    display: block;
    border-radius: 50px;
    border: 2px solid #487e33;
    position: relative;
    -webkit-box-shadow: 6px 6px 0 #487e33;
    box-shadow: 6px 6px 0 #487e33;
    margin: 0 auto;
	background-color: #fff;
	text-align: center;
	color: #45b035;
}
@media screen and (max-width: 767px){
	.ekinetbooth__btn{
		 font-size: 1.6rem;
	}
}
.ekinetbooth__btn::before {
    position: absolute;
    top: 50%;
    right: 20px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    content: url(../images/icon-pdf.svg);
}

.member .sign-up {
    margin-bottom: 50px;
}
@media screen and (min-width: 1024px){
	.member .sign-up {
    margin-bottom: 50px;
	}
}

/* 202403追記 */
.tokudane__title{
	padding-top: 20px;
}
@media screen and (min-width:768px) {
	.tokudane__title{
		padding-top: 0;
	}
}
.tokudane__title picture{
	position: relative;

}
/*.tokudane__title picture::before{
	position: absolute;
	top: 0;
	left: 0;
	transform: translate(-40%,-120%);
	content: "";
	aspect-ratio: 124.4/124.4;
	width: 16.197916666vw;
	max-width: 124.4px;
	background-image: url(../images/tokudane-title-text.svg);
	background-repeat: no-repeat;
	background-size: cover;
	z-index: 2;
}
@media screen and (min-width:1024px) {
	.tokudane__title picture::before{
		transform: translate(40%,-70%);
		width: 8.638888888vw;
	}
	
	
}*/
.tokudane__title img{
	width: 69.6015625vw;
	max-width: 534.54px;
}
@media screen and (min-width:1024px) {
	.tokudane__title img{
		width: 58.177083333vw;
		max-width: 837.75px;
	}
}

.tokudane__terms{
	text-align: center;
	width: fit-content;
	margin:  40px auto 20px;
}
.tokudane__terms + p,
.tokudane__terms + p + p{
	font-size: 1.5rem;
	text-align: left;
	text-indent: -1em;
	padding-left: 1em;
}
@media screen and (min-width:576px) {
	.tokudane__terms + p,
	.tokudane__terms + p + p{
		font-size: 1.5rem;
		text-align: center;
		text-indent: ０;
		padding-left: ０;
	}
}
.tokudane__fee{
	margin-bottom: 50px;
}
@media screen and (min-width:1024px) {
	.tokudane__fee__box__inner{
		display: grid;
		grid-template-columns: repeat(2,1fr);
		gap: 5%;
	}
}
.tokudane__fee__box__list + .tokudane__fee__box__list{
	margin-top: 5%;
}
@media screen and (min-width:1024px) {
	.tokudane__fee__box__list + .tokudane__fee__box__list{
		margin-top: 0;
	}
}
.tokudane__fee__box__list li{
	margin-bottom: 5%;
}
.tokudane__fee__box__list li:last-child{
	margin-bottom: 0;
}
.tokudane__fee__box__list li img{
	width: 100%;
}
.tokudane__fee__note{
	font-size: 1.6rem;
	font-weight: 500;
	color: #009944;
	width: fit-content;
	margin: 0 auto;
}
@media screen and (min-width:768px) {
	.tokudane__fee__note{
		font-size: 1.8rem;
		text-align: center;
	}
}
.tokudane__fee + .detail-btn{
	margin-bottom: 50px;
}
@media screen and (min-width:768px) {
	.tokudane__fee + .detail-btn{
		margin-bottom: 60px;
	}
}
@media screen and (min-width:1024px) {
	.tokudane__fee + .detail-btn{
		margin-bottom: 80px;
	}
}
.tokudane__special__text{
	text-align: center;
	margin-bottom: 20px;
}
.campaign__inner{
	margin-bottom: 0;
}
.campaign__title{
	width: fit-content;
	padding-top: 5%;
	margin: 0 auto 10%;
}
@media screen and (min-width:576px) {
	.campaign__title{
		margin-bottom: 5%;
	}
}
@media screen and (min-width:768px) {
	.campaign__title{
		margin-bottom: 2.5%;
	}
}
@media screen and (min-width:1024px) {
	.campaign__title{
		padding-top: 2.5%;
		margin-bottom: 0;
	}
}
.campaign__title img{
	width: 92.161458333vw;
	max-width: 707.8px;
}
@media screen and (min-width:1024px) {
	.campaign__title img{
		width: 50.46875vw;
		max-width: 726.75px;
	}
}
.campaign__text{
	font-size: 1.6rem;
	font-weight: 500;
	text-align: center;
	margin-bottom: 1em;
}
.campaign__text span{
	font-size: 1.8rem;
}
.campaign__text .red{
	color: #D80C18;
}
.campaign__text .green{
	color: #45B035;
}
.ticket__btn + .ticket__btn{
	margin-top: 20px;
}
#target4{
	scroll-margin-top: 40px;
}
.sideNav{
	transform: translateY(100%);
	transition: ease-in-out .3s;
}
@media screen and (min-width:1024px) {
	.sideNav{
		transform: translate(calc(100% + 20px),-30%);
	}
}
.sideNav.visible{
	transform: none;
}
@media screen and (min-width:1024px) {
	.sideNav.visible{
		transform: translate(20px, -30%);
	}
}

.movie-container {
    margin: 20px auto 60px;
    max-width: 1000px;
    text-align: center;
}
.va-middle {
    display: flex;
    justify-content: center;
    align-items: center;
}

.flow_note{
	font-size: 1.8rem; 
	font-weight: normal;
}
@media screen and (max-width:767px) {
	.flow_note{
		font-size: 1.2rem; 
	}
}

@media screen and (min-width: 1024px) {
    .reserve {
        padding: 100px 0 180px;
    }
}

.tokudane::before{
	display: none;
}
.tokudane{
	position: inherit;
}
@media screen and (min-width: 1024px) {
    .point {
        padding: 60px 0 0;
    }
}

.info{
	padding-bottom: 80px;
}

.point{
	padding-bottom: 0;
}
.ticket{
	padding-bottom: calc(25% + 30px);
}
@media screen and (min-width: 768px) {
    .tokudane__special {
        padding-top: 140px;
    }
}
.tokudane__special {
    padding: 100px 0 0;
}
@media screen and (min-width: 1024px){
	.tokudane__special {
		margin-bottom: 60px;
	}
}
.tokudane__fee {
    max-width: 916px;
}
.fv__head--white .fv__head__btn span {
    background-color: #000;
}

@media screen and (max-width: 767px) {
	.info__mainTitle img {
		max-width: 310px; 
   }
}

/*@media screen and (max-width: 768px){
	.container {
		overflow-x: hidden;
	}
}*/
.info .lead-txt{
	font-size: 3.8rem;
	color: #009944;
	text-align: center;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: bold;
	margin: 50px auto 30px;
}

@media screen and (max-width: 767px) {
	.info .lead-txt{
		font-size: 2.5rem;
	}
}
.info .lead-txt span {
	background: linear-gradient(transparent 85%, #fff462 50%);
	font-weight: bold; 
   }

.info .yearend{
	font-size: 2.1rem;
	color: #009944;
	max-width: 700px;
	padding: 13px 20px;
	text-align: center;
	border: solid 2px #009944;
	border-radius: 10px;
	font-weight: bold; 
	margin: 0 auto 10px;
}
@media screen and (min-width: 1140px){
	.info .yearend{
		white-space: nowrap；
	}
}
@media screen and (max-width: 767px) {
	.info .yearend{
		font-size: 1.8rem;
		padding: 10px 20px;
	}
}
@media (min-width: 1024px) {
    .ozora__box__list {
        gap: 10px;
    }
}
@media (min-width: 768px) {
    .ozora__box__list {
        gap: 10px;
    }
}

@media (min-width: 768px) {
    .ozora__box__list2 {
        grid-template-columns: repeat(2, 1fr);
    }
}
.ozora__box__list2 {
    display: grid;
    margin-top: 15px;
	gap: 3px;
}
@media (min-width: 769px) {
	.ozora__box__list2 li:last-child{
		padding-top: 8px;
	}
}
.ozora__box__list img{
	max-width: 400px;
}
.ozora__box__list2 img {
	width: 100%;
    max-width: 400px;
}
.ozora__box__list2 li:nth-child(2) img{
	max-width: 184px;
}
.ozora{
	padding-top: 0;
}
.point{
	padding-top: 0;
}
.summer-container{
	margin: 0 auto 50px;
	width: 100%;
	text-align: center;
	padding: 40px 0px 0px;
}
@media (min-width: 768px) {
	.summer-container{
		margin: 0 auto 80px;
		width: 100%;
		max-width: 900px;
		text-align: center;
		padding: 40px 40px 20px;
	}
}

.detail-btn-date p{
	color: #ff0000;
	font-size: 2.0rem;
	font-weight: bold;
}
.point.no-before::before {
  content: none;
  background-image: none;
}
@media screen and (min-width: 1024px) {
    .member__movie__list {
        grid-template-columns: repeat(3, 1fr);
    }
}


@media (max-width: 767px) {
	.reserve {
		padding-bottom: 30px;
	}
}
@media screen and (min-width: 768px) {
    .reserve {
        padding: 60px 0 70px;
    }
}
@media screen and (min-width: 1024px) {
    .reserve {
        padding: 100px 0 180px;
    }
}



.nyh {
    padding: 0 20px;
    margin-bottom: 70px;
}
nyh__title {
    text-align: center;
}
.nyh__text {
    font-size: 1.6rem;
    font-weight: 700;
    color: #009944;
    margin-top: 1.25em;
    margin-bottom: 1em;
	text-align: left;
}
@media (min-width: 576px) {
    .nyh__text {
        font-size: 1.8rem;
		text-align: center;
    }
}
@media (min-width: 768px) {
    .nyh__text {
        font-size: 2rem;
    }
}

.nyh__box {
    border-radius: 0 0 20px 20px;
    border: 2px solid #009944;
    border-top: none;
    padding: 0 30px 30px 30px;
}
@media (min-width: 1024px) {
    .nyh__box {
        display: grid;
        grid-template-columns: 2fr 1fr;
        padding: 40px;
        padding-top: 0;
    }
}
.nyh__box__item--1 {
    margin: 0 -30px;
}
.nyh__box__title {
    font-size: 1.8rem;
    font-weight: 900;
    color: #FFFFFF;
    text-align: center;
    background-color: #009944;
    padding: 0.125em 1em 0.25em 1em;
}
@media (min-width: 576px) {
    .nyh__box__title {
        font-size: 2.2rem;
    }
}
@media (min-width: 768px) {
    .nyh__box__title {
        font-size: 2.7rem;
    }
}
@media (min-width: 1024px) {
    .nyh__box__title {
        font-size: 3.2rem;
        grid-row: 1 / 2;
        grid-column: 1 / 2;
    }
}

.nyh__box__text {
    font-size: 1.6rem;
    font-weight: 900;
    color: #009944;
    margin-top: 1.125em;
}
@media (min-width: 576px) {
    .nyh__box__text {
        font-size: 1.8rem;
    }
}
@media (min-width: 768px) {
    .nyh__box__text {
        font-size: 2rem;
    }
}
.nyh__box__list {
    font-size: 1.4rem;
}
@media (min-width: 576px) {
    .nyh__box__list {
        font-size: 1.5rem;
    }
}
@media (min-width: 768px) {
    .nyh__box__list {
        font-size: 1.6rem;
    }
}
@media (min-width: 1024px) {
    .nyh__box__list {
        font-size: 1.6rem;
        display: grid;
        grid-template-columns: 6em 1fr;
        gap: 0.375em;
        align-items: center;
        margin-top: 0.5em;
    }
}
.nyh__box__list > dd dl {
    display: grid;
    grid-template-columns: 3em 1fr;
    gap: 0.5em 0;
    margin-top: 0.5em;
}
@media (min-width: 1024px) {
    .nyh__box__list > dd dl {
        margin-top: 0;
        gap: 0;
    }
}

.nyh__box__list > dt {
    font-weight: 900;
    color: #FFFFFF;
    background-color: #009944;
    padding: 0.125em 0.5em 0.25em;
    margin-top: 0.5em;
}
@media (min-width: 1024px) {
    .nyh__box__list > dt {
        display: flex;
        justify-content: center;
        align-items: center;
        height: 100%;
        margin-top: 0;
    }
}

.nyh__box__list > dd dl dt {
    font-weight: 500;
}
.nyh__box__character {
    position: relative;
}

.nyh__box__border {
    border-width: 2px;
    border-color: #000000;
    margin-top: 20px;
}
.nyh__box__item--1 {
    margin: 0 -30px;
}
@media (min-width: 1024px) {
    .nyh__box__item--1 {
        margin: 0 -40px;
        margin-right: 20px;
    }
}
@media (min-width: 1024px) {
    .nyh__box__item--2 {
        grid-row: 2 / 3;
        grid-column: 1 / 2;
    }
}
@media (min-width: 1024px) {
    .nyh__box__item--3 {
        grid-row: 3 / 4;
        grid-column: 1 / 3;
    }
}
.nyh__box__item--4 {
    width: 107.4%;
    transform: translateX(-7.4%);
    text-align: center;
    margin-top: 20px;
}
@media (min-width: 1024px) {
    .nyh__box__item--4 {
        grid-row: 1 / 3;
        grid-column: 2 / 3;
        margin-top: 0;
        width: 100%;
        transform: none;
    }
}
.nyh__box__item--4 img {
    max-width: 250px;
}
@media (min-width: 576px) {
    .nyh__box__item--4 img {
        max-width: 350px;
    }
}
@media (min-width: 1024px) {
    .nyh__box__item--4 img {
        max-width: 100%;
    }
}


.nyh__box__item--2 img {
    max-width: 250px;
}
@media (min-width: 576px) {
    .nyh__box__item--2 img {
        max-width: 350px;
    }
}
@media (min-width: 1024px) {
    .nyh__box__item--2 img {
        max-width: 100%;
    }
}
.nyh{
    padding: 0 20px;
    margin-bottom: 70px;
    &__title{
        text-align: center;
        img{
            width: 295px;
            @media (min-width:576px) {
                width: 395px;
            }
            @media (min-width:768px) {
                width: 100%;
                max-width: 900px;
            }
        }
    }
    &__text{
        font-size: 1.6rem;
        font-weight: 700;
        color: #009944;
        margin-top: 1.25em;
        margin-bottom: 1em;
        @media (min-width:576px) {
            font-size: 1.8rem;
        }
        @media (min-width:768px) {
            font-size: 2rem;
        }
        @media (min-width:1024px) {
            font-size: 2.4rem;
        }
    }
    &__box{
        border-radius: 0 0 20px 20px;
        border: 2px solid #009944;
        border-top: none;
        padding: 0 30px 30px 30px;
        @media (min-width:1024px) {
            display: grid;
            grid-template-columns: 2fr 1fr;
            padding: 40px;
            padding-top: 0;
        }
        &__title{
            font-size: 1.8rem;
            font-weight: 900;
            color: #FFFFFF;
            text-align: center;
            background-color: #009944;
            padding: .125em 1em .25em 1em;
            @media (min-width:576px) {
                font-size: 2.2rem;
            }
            @media (min-width:768px) {
                font-size: 2.7rem;
            }
            @media (min-width:1024px) {
                font-size: 3.2rem;
                grid-row: 1/2;
                grid-column: 1/2;
            }
            @media (min-width:1280px) {
                font-size: 3.6rem;
            }
        }
        &__item{
            &--1{
                margin: 0 -30px;
                @media (min-width:1024px) {
                    margin: 0 -40px;
                    margin-right: 20px;
                }
            }
            &--2{
                @media (min-width:1024px) {
                    grid-row: 2/3;
                    grid-column: 1/2;
                }
            }
            &--3{
                @media (min-width:1024px) {
                    grid-row: 3/4;
                    grid-column: 1/3;
                }
            }
            &--4{
                width: 107.4%;
                transform: translateX(-7.4%);
                text-align: center;
                margin-top: 20px;
                @media (min-width:1024px) {
                    grid-row: 1/3;
                    grid-column: 2/3;
                    margin-top: 0;
                    width: 100%;
                    transform: none;
                }
                img{
                    max-width: 250px;
                    @media (min-width:576px) {
                        max-width: 350px;
                    }
                    @media (min-width:1024px) {
                        max-width: 100%;
                    }
                }
            }
        }
        &__border{
            border-width: 2px;
            border-color: #000000;
            margin-top: 20px;
        }
        &__text{
            font-size: 1.6rem;
            font-weight: 900;
            color: #009944;
            margin-top: 1.125em;
            @media (min-width:576px) {
                font-size: 1.8rem;
            }
            @media (min-width:768px) {
                font-size: 2rem;
            }
            @media (min-width:1024px) {
                font-size: 2.2rem;
            }
            @media (min-width:1280px) {
                font-size: 2.4rem;
            }
        }
        &__list{
            font-size: 1.4rem;
            @media (min-width:576px) {
                font-size: 1.5rem;
            }
            @media (min-width:768px) {
                font-size: 1.6rem;
            }
            @media (min-width:1024px) {
                font-size: 1.6rem;
                display: grid;
                grid-template-columns: 6em 1fr;
                gap: .375em;
                align-items: center;
                margin-top: .5em;
            }
            @media (min-width:1280px) {
                font-size: 1.7rem;
            }
            >dt{
                font-weight: 900;
                color: #FFFFFF;
                background-color: #009944;
                padding: .125em .5em .25em;
                margin-top: 0.5em;
                @media (min-width:1024px) {
                    display: flex;
                    justify-content: center;
                    align-items: center;
                    height: 100%;
                    margin-top: 0;
                }
            }
            >dd{
                dl{
                    display: grid;
                    grid-template-columns: 3em 1fr;
                    gap: .5em 0;
                    margin-top: .5em;
                    @media (min-width:1024px) {
                        margin-top: 0;
                        gap: 0;
                    }
                    dt{
                        font-weight: 500;
                    }
                    dd{
                        font-weight: 500;
                    }
                }
            }
        }
        &__character{
            position: relative;
            &::before{
                position: absolute;
                bottom: 0;
                right: 0;
                transform: translateX(10%);
                content: "";
                aspect-ratio: 472/705;
                width: 120px;
                background-image: url(../images/nyh-ph01-sp.png);
                background-repeat: no-repeat;
                background-size: cover;
                @media (min-width:576px) {
                    bottom: auto;
                    top: 50%;
                    transform: translate(15%,-60%);
                    z-index: 1;
                }
                @media (min-width:1024px) {
                    top: auto;
                    bottom: 0;
                    transform: translateY(10%);
                    aspect-ratio: 615/403;
                    width: 300px;
                    background-image: url(../images/nyh-ph01-pc.png);
                }
            }
            &--sp{
                &::before{
                    @media (min-width:1024px) {
                        content: none;
                    }
                }
            }
            &--pc{
                &::before{
                    content: none;
                    @media (min-width:1024px) {
                        content: "";
                    }
                }
            }
        }
    }
}
