@charset "utf-8";
/*------------------------------------------------------------
	index
------------------------------------------------------------*/

/*==================================================
	チケット購入ボタン　追加0610
	===================================*/

.cta.active {
    opacity: 1;
    visibility: visible;
    opacity: 1;
    visibility: visible;
    position: fixed;
    right: 0;
    bottom: 0px;
    cursor: pointer;
    transition: .3s;
    /* opacity: 0; */
    /* visibility: hidden; */
    width: 120px;
    z-index: 62;
}


#main .mainImg {
	margin-top: 5rem;
	text-align: center;	
}
#main .mainImg .title {
	margin-bottom: 1.5rem;
}
#main .mainImg .title img {
	width: 70%;
}
#main .mainImg .txt {
    color: #FFE62B;
    font-size: 2.2rem;
    line-height: 1.9;
    letter-spacing: 0.05em;
}
#main .indexBox {
	padding: 3.4rem 0 13.4rem;
	position: relative;
	z-index: 1;
}
#main .indexBox .headline01 {
	margin-bottom: 3.1rem;
}
#main .indexBox .headline01 img {
	height: 13.2rem;
}
#main .indexBox .linkUl {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 1.4rem;
    width: 90%;
margin: 0 auto;
}
#main .indexBox .linkUl li {
	width: 23%;
}
#main .indexBox .linkUl a {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.6rem;
    color: #2839C1;
    text-align: center;
    height: 7.4rem;
    border-radius: 1rem;
    background: #FFF;
}
#main .indexBox .linkUl .inner {
	width: 100%;
	display: block;
}
#main .indexBox .linkUl img {
	height: 2.7rem;
}
#main .indexBox .linkUl .txt {
	margin-top: -0.1rem;
	display: block;
}
@media all and (min-width: 897px) {
	#main .indexBox .linkUl a:hover {
		opacity: 0.7;
	}
}
@media all and (max-width: 896px) {
	#main .indexBox {
		padding: 4rem 0 10rem;
	}
    
    #main .indexBox .linkUl {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 1.4rem;
    width: 98%;
margin: 0 auto;
}
}
#main .showBox {
	padding-bottom: 8rem;
}
#main .showBox .content {
	position: relative;
	z-index: 2;
}
#main .showBox .headline01 {
	margin-bottom: 0.8rem;
}
#main .showBox .comPhoto {
	margin-bottom: 2rem;
}
#main .showBox .headline02 {
	margin-bottom: 1.5rem;
}
#main .showBox .comMidTxt {
	margin-bottom: 3.5rem;
}
#main .showBox .item + .item {
	margin-top: 4.5rem;
}
#main .showBox .listUl {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	font-weight: 500;
	font-size: 1.6rem;
	gap: 2.9rem 5.3rem;
}
#main .showBox .listUl li {
	width: 11rem;
	text-align: center;
}
#main .showBox .listUl p {
	margin: 0.8rem -3rem 0;
}
#main .showBox .comBtn {
	margin: 3.8rem 0 6.4rem;
}
#main .showBox .comBtn a {
    background-color: #76D0FF;
    border-color: #76D0FF;
    background-image: url("../img/common/icon05.png");
    background-size: 1.4rem auto;
    background-position: right 4rem center;
}
#main .showBox .listUl02 {
	padding: 0.7rem 0 1.7rem;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#main .showBox .listUl02 li {
	width: calc(50% - 3.7rem);
	text-align: center;
}
#main .showBox .listUl02 .image {
	margin-bottom: 1.1rem;
}
#main .showBox .listUl02 .image img {
	width: 80%;
	border-radius: 1rem;
}
#main .showBox .listUl02 .link {
	margin-top: 1rem;
}
#main .showBox .listUl02 .link a {
	font-size: 1.6rem;
	font-weight: 500;
	color: #76D0FF;
	display: inline-block;
	vertical-align: top;
	text-decoration: underline;
	letter-spacing: 0.05em;
}
#main .showBox .listUl02 .link a:hover {
	opacity: 0.7;
}
#main .showBox .listUl02 .link img {
	margin: -0.5rem 0.7rem 0 0.9rem;
	width: 1.6rem;
	display: inline-block;
	vertical-align: middle;
}
#main .showBox .subTitle {
	margin-bottom: 2.1rem;
	text-align: center;
	font-size: 2rem;
}
#main .showBox .listDl {
	gap: 0.5rem 0;
	line-height: 1.7;
	margin: 0;
	padding-bottom: 1.2rem;
}
#main .showBox .listDl dt {
	width: 13.4rem;
}
#main .showBox .listDl dd {
	width: calc(100% -  13.4rem);
}
#main .showBox .comMidTxt.big {
	font-size: 2rem;
	line-height: 1.7;
	margin: 2.3rem 0 0 0;
}
@media all and (min-width: 897px) {
	#main .showBox .comBtn a:hover {
		color: #3259A3;
		background-color: #FFF;
		background-image: url(../img/common/icon07.png);
	}
}
@media all and (max-width: 896px) {
	#main .mainImg {
		margin: 3rem 1.5rem 0;
	}
	#main .mainImg .txt {
		font-size: 1.7rem;
	}
	#main .indexBox .headline01 img {
		height: 9rem;
	}
	#main .indexBox .linkUl img {
		height: 2rem;
	}
    
    #main .indexBox .linkUl li {
	width: 48%;

}
	#main .indexBox .linkUl a {
		font-size: 1.3rem;
        width: 100%;

	}
	#main .showBox {
		padding-bottom: 8rem;
	}
	#main .showBox .listUl {
        width: 98%;
		margin: 0 auto;
		gap: 1.4rem;
		font-size: 1.2rem;
		justify-content: flex-start;
	}
	#main .showBox .listUl li {
		width: calc((100% - 5rem)/4);
	}
	#main .showBox .listUl img {
		width: 80%;
	}
	#main .indexBox .linkUl {
		margin: 0 auto;
  		max-width: 98%;
	}
	#main .showBox .listUl02 {
		display: block;
	}
	#main .showBox .listUl02 li {
		margin-bottom: 3rem;
		width: auto;
	}
	#main .showBox .listUl02 li:last-child {
		margin-bottom: 0;
	}
	#main .showBox .listUl02 .link a {
		font-size: 1.3rem;
	}
	#main .showBox .listUl02 .link img {
		margin: -0.4rem 0.7rem 0 0.9rem;
		width: 1.2rem;
	}
	#main .showBox .listUl02 .link {
		margin-top: 0.5rem;
	}
    #main .showBox .listUl02 .image img {
	width: 60%;
	border-radius: 1rem;
}
    
	#main .showBox .subTitle {
		font-size: 1.5rem;
	}
	#main .showBox .listDl dt {
		width: 11.4rem;
	}
	#main .showBox .listDl dd {
		width: calc(100% - 11.4rem);
	}
	#main .showBox .comMidTxt.big {
		font-size: 1.5rem;
	}
}



/* costume */
#main .costume {
   
    padding-bottom: 8rem;
}
#main .costume .headline01 {
	margin-bottom: 0.5rem;
}
#main .costume .comMidTxt {
	margin-bottom: 0
}
#main .costume .slideBox {
	position: relative;
	z-index: 10;
}
#main .costume .prev,
#main .costume .next {
	position: absolute;
	top: 50%;
	width: 4.2rem;
	transition: .3s;
	cursor: pointer;
	z-index: 9;
	transform: translateY(-50%);
}
#main .costume .slick-list {
	padding: 3.7rem 0 1.4rem !important;
}
#main .costume .pho {
	width: 31.8rem !important;
	margin: 0 3.5rem;
	vertical-align: top;
	overflow: hidden;
	border-radius: 1rem;
	box-shadow: 0 0 2rem rgba(102, 207, 253, 0.7);
    background-color: #FFFFFF;
}

#main .costume .pho p{
    text-align: center;
color: darkblue;
    padding: 0.5rem;
}

#main .greeting .item:not(:last-child) {
	margin-bottom: 8rem;
}
#main .photoSpot {
	padding-bottom: 8rem;
}
#main .bingo {
  
    padding-bottom: 8rem;
}
#main .bingo .textBox {
	padding: 1rem 19rem 3rem;
	position: relative;
}
#main .bingo .textBox .roundText {
	position: absolute;
	left: 2rem;
	top: -5.4rem;
	width: 15.9rem;
	height: 15.9rem;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #FFF;
	text-align: center;
	font-size: 2rem;
	background-color: #5D98DD;
	border-radius: 15rem;
}
#main .bingo .comTextList {
	margin-bottom: 4.1rem;
}
#main .bingo .content {
	z-index: 2;
}
#main .food {
  
    padding-bottom: 8rem;
}
#main .food .comPhoto {
	margin-bottom: 2.5rem;
}
#main .food .comMidTxt {
	margin-bottom: 2.5rem;
}
#main .goods {
	padding-bottom: 8rem;
}
@media all and (min-width: 897px) {
	#main .costume .prev {
		left: 3.3rem;
	}
	#main .costume .next {
		right: 3.6rem;
	}
	#main .costume .next:hover,
	#main .costume .prev:hover {
		opacity: 0.7;
	}
}
@media all and (max-width: 896px) {
	#main .costume {
		padding: 0rem 0 8rem;
	}
	#main .costume .pho {
		width: 26.8rem !important;
  		margin: 0 1.5rem;
	}
	#main .costume .prev,
	#main .costume .next {
		top: 50%;
		left: 50%;
		transform: translate(-50%,-50%);
	}
	#main .costume .prev {
		margin-left: -15rem;
	}
	#main .costume .next {
		margin-left: 15rem;
	}
	#main .bingo .textBox .roundText {
		width: 10rem;
  		height: 10rem;
		font-size: 1.2rem;
		left: 1rem;
		top: -2.4rem;
	}
	#main .bingo .textBox {
		padding: 0 0 0 8rem;	
	}
	#main .bingo .textBox .comMidTxt {
		text-align: left;
		margin: 0 0 3.5rem;
		line-height: 1.6;
	}
	#main .photoSpot {
		padding-bottom: 8rem;
	}
	#main .bingo {
		padding: 0rem 0 8rem;
	}
	#main .food {
		padding: 0rem 0 8rem;
	}
}

#main .goods .slideBox {
    position: relative;
	z-index: 10;
}
#main .goods .prev,
#main .goods .next {
	position: absolute;
	top: 50%;
	width: 4.2rem;
	transition: .3s;
	cursor: pointer;
	z-index: 9;
	transform: translateY(-50%);
}
#main .goods .slick-list {
	padding: 3.7rem 0 1.4rem !important;
}
#main .goods .pho {
	width: 70rem !important;
	margin: 0 3.5rem;
	vertical-align: top;
	overflow: hidden;
	border-radius: 1rem;
    background-color: #FFFFFF;
}

#main .goods .pho p{
    text-align: center;

    padding: 0.5rem;
}

@media all and (min-width: 897px) {
	#main .goods .prev {
		left: 1.0rem;
	}
	#main .goods .next {
		right: 1.0rem;
	}
	#main .goods .next:hover,
	#main .goods .prev:hover {
		opacity: 0.7;
	}
}

@media all and (max-width: 896px) {
	#main .goods {
		padding: 0rem 0 8rem;
	}
	#main .goods .pho {
		width: 35rem !important;
  		margin: 0 1.5rem;
	}
	#main .goods .prev,
	#main .goods .next {
		top: 50%;
		left: 50%;
		transform: translate(-50%,-50%);
	}
	#main .goods .prev {
		margin-left: -18.5rem;
	}
	#main .goods .next {
		margin-left: 18.5rem;
	}
}


/*------------------------------------------------------------
	popupBox
------------------------------------------------------------*/
body.popFix {
	touch-action: none;
	overscroll-behavior: none;
	overflow: hidden;
}
.mfp-bg {
	background-color: #b7b7b7;
	opacity: 1;
	mix-blend-mode: multiply;
}
.mfp-wrap {
	overflow-y: auto;
}
@media all and (min-width: 897px) {
	body.fixed {
		overflow-y: scroll;
	}
}
.mfp-container {
	position: fixed;
	overflow-y: auto;
}
.popupBox {
	margin: 0 auto;
	padding: 6rem 2rem;
	width: fit-content;
	height: 100%;
	position: relative;
}
.popupBox .icon a:hover,
.popupBox .btn a:hover {
	opacity: 0.8;
}
.popupBox .btn {
	text-align: center;
}
/* --popupBox01-- */
.popupBox01 .innerBox {
	padding: 2.4rem;
	margin: 0 auto;
	max-width: 90rem;
	position: relative;
	background-color: #fff;
	border-radius: 1rem;
}
.popupBox01 .icon {
	position: absolute;
	z-index: 1;
	top: -1.5rem;
	right: -1.5rem;
	width: 5rem;
	height: 5rem;
	border-radius: 50%;
	background-color: #f749ad;
	box-shadow: 0 0 1rem #fff;
}
.popupBox01 .icon a {
	height: inherit;
	position: relative;
	display: block;
}
.popupBox01 .icon a:after,
.popupBox01 .icon a:before {
    display: block;
    content: " ";
    position: absolute;
    top: 1.4rem;
    left: 2.3rem;
    width: 0.4rem;
    height: 2.2rem;
    border-radius: 0.4rem;
    background: #fff;
}
.popupBox01 .icon a:before {
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg)
}
.popupBox01 .icon a:after {
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg)
}
.popupBox01 .title {
	margin-bottom: 1.6rem;
	font-weight: 700;
	font-size: 3.2rem;
}
.popupBox01 .ttl {
	margin-bottom: 0.7rem;
	font-size: 2.2rem;
}
.popupBox01 .textList {
	margin-left: 2rem;
	font-size: 2.2rem;
}
.popupBox01 .textList li {
	margin-bottom: 0.5rem;
	padding-left: 2rem;
	text-indent: -2rem;
}
.popupBox01 .textList li:last-child {
	margin-bottom: 0;
}
.popupBox01 .textList li span {
	color: #F00;
}
.popupBox01 .link {
	margin: 2rem 0;
	text-align: center;
}
.popupBox01 .link a {
	display: inline-block;
	color: #76D0FF;
	font-size: 2.2rem;
	text-decoration: underline;
}
.popupBox01 .link a:hover {
	opacity: 0.7;
}
.popupBox01 .btn {
	margin-top: 2.4rem;
}
.popupBox01 .btn a {
	color: #f749ad;
	font-weight: 700;
	font-size: 2.2rem;
	display: inline-block;
	text-decoration: underline;
}
.popupBox01 .btn a:hover {
	opacity: 0.7;
}
@media all and (max-width: 896px) {
	.popupBox01 .title {
		font-size: 1.8rem;
	}
	.popupBox01 .ttl {
		margin-bottom: 1rem;
		font-size: 1.6rem;
	}
	.popupBox01 .link {
		margin: 1rem 0;
	}
	.popupBox01 .link a {
		font-size: 1.4rem;
	}
	.popupBox01 .textList {
		margin-left: 1rem;
		font-size: 1.4rem;
	}
	.popupBox01 .textList li {
		margin-bottom: 0.5rem;
		padding-left: 1.4rem;
		text-indent: -1.4rem;
	}
	.popupBox01 .btn {
		margin-top: 2rem;
	}
	.popupBox01 .btn a {
		font-size: 1.4rem;
	}
}
/* --popupBox02-- */
.popupBox02 .innerBox {
	margin: 0 auto;
	max-width: 90rem;
}
.popupBox02 .innerBox .photo {
	margin: 0 auto 3.6rem;
	width: 34rem;
	border-radius: 2rem;
	overflow: hidden;
}
.popupBox02 .innerBox .icon {
	margin: 0 auto;
	width: 11.1rem;
}
.popupBox02 .innerBox .icon a {
	padding: 0.4rem;
	display: block;
	text-align: center;
	color: #faa7dd;
	font-size: 1.6rem;
	letter-spacing: 0.1em;
	background-color: #fff;
	border-radius: 1.6rem;
}
.popupBox02 .innerBox .icon span {
	padding-right: 2rem;
	background: url("../images/close_img.png") no-repeat right top 0.7rem / 1.3rem;
}
@media all and (max-width: 896px) {
	.popupBox02 .innerBox .photo {
		max-width: 30rem;
	}
}
/* --popupBox03-- */
.popupBox03 .innerBox {
	margin: 0 auto;
	max-width: 50rem;
}
.popupBox03 .imgBox {
	margin-bottom: 3.1rem;
	padding: 2.6rem 2.4rem 2rem;
	border-radius: 1rem;
	background-color: #ffe6f1;
}
.popupBox03 .imgBox .pho {
	margin-bottom: 1.3rem;
	border-radius: 1rem;
	overflow: hidden;
}
.popupBox03 .imgBox .pho img {
	width: 100%;
}
.popupBox03 .imgBox .textBox .name {
	margin-bottom: 0.9rem;
	font-size: 2rem;
	font-weight: 700;
	letter-spacing: 0.02em;
}
.popupBox03 .imgBox .textBox .text {
	font-size: 1.6rem;
	line-height: 1.625;
    margin-bottom: 0.8rem;
}

.popupBox03 .imgBox .textBox .text2 {
	font-size: 1.6rem;
	line-height: 1.625;
    margin-top: 2rem;
}

.popupBox03 .innerBox .icon {
	margin: 0 auto;
	width: 11.1rem;
}
.popupBox03 .innerBox .icon a {
	padding: 0.4rem;
	display: block;
	text-align: center;
	color: #faa7dd;
	font-size: 1.6rem;
	letter-spacing: 0.1em;
	background-color: #fff;
	border-radius: 1.6rem;
}
.popupBox03 .innerBox .icon span {
	padding-right: 2rem;
	background: url(../img/common/close_img.png) no-repeat right top 0.7rem / 1.3rem;
}
@media all and (max-width: 896px) {
	.popupBox03 .imgBox {
		padding: 1.5rem;
	}
	.popupBox03 .imgBox .textBox .name {
		font-size: 1.8rem;
	}
	.popupBox03 .imgBox .textBox .text {
		font-size: 1.4rem;
        margin-bottom: 2rem;
	}
    

}


 .costume {
	margin-bottom: 4rem;

}
 .costume h2 {
	margin: 0;
}
 .costume .ttl {
	margin-bottom: 1.2rem;
	text-align: center;
	line-height: 1.88;
}
 .costume .costumeList li {
	margin-bottom: 4rem;
     text-align: center;
	width: calc(100% / 4);
}

 .costume .costumeList a {
	display: block;
}
 .costume .costumeList a:hover {
	opacity: 0.7;
}
 .costume .costumeList img {
	width: 100%;
}



@media all and (max-width: 896px) {


	 .costume {
		padding-bottom: 8rem;
	}
	 .costume .ttl {
		margin: 0 -0.5rem 2rem;
		font-size: 1.3rem;
	}
	 .costume .costumeList li {
		margin-bottom: 2rem;
         text-align: center;
	}

}
