@charset "utf-8";

/* -------------------------------------------------------------------------- */
/* Loading                                                                    */
/* -------------------------------------------------------------------------- */
.loading{
	position:fixed;
	left:0;
	top:0;
	right:0;
	bottom:0;
	z-index:6000;
	background:#fff;
	display:flex;
	justify-content:center;
	align-items:center;
	overflow:hidden;
	transition:all 0.3s ease;
}
.loading__logo{
	width:100%;
	height:min(calc(200 / var(--vw-min) * 100vw),200px);
	background:url(../img/common/logo.png) no-repeat center center / contain;
	transform:translateX(max(calc(-120 / var(--vw-min) * 100vw),-120px));
	opacity:0;
	transition:all 0.2s ease;
}
@supports (background-image:url(../img/common/logo.webp)){
	.loading__logo{
		background-image:url(../img/common/logo.webp);
	}
}
.loading.ani0 .loading__logo{
	opacity:1;
	transform:translate(0);
}
.loading.ani1{
	opacity:0;
}
.loading.ani1 .loading__logo{
	opacity:1;
	transform:translateX(min(calc(120 / var(--vw-min) * 100vw),120px));
}

/* -------------------------------------------------------------------------- */
/* Pre-registration                                                           */
/* -------------------------------------------------------------------------- */
.bg{
    position: fixed;
    z-index: -1;
    width: 100%;
    height: 100vh;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
	background:url(../img/common/court.jpg) no-repeat center center / cover;
}
@supports (background-image:url(../img/common/court.webp)){
	.bg{
		background-image:url(../img/common/court.webp);
	}
}
.header{
    position: relative;
    height:calc(860 / var(--vw-min) * 100vw);
}
.header::before{
    width: 100%;
    height:100%;
    content: '';
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    background: url(../img/fv_deco.png) no-repeat center top / 100% auto;
    z-index: 1;
    pointer-events: none;
}
@media screen and (max-width:768px){
    .header{
        height:calc(520 / var(--vw-min) * 100vw);
    }
}
.header__inner{
    background-color: #FFF;
}
.fvImg{
    width: 100%;
    height: auto;
    position: relative;
    opacity: 0;
    filter: brightness(2.4);
    transition: opacity 0.8s ease, filter 0.8s ease;
}
.header.is-show .fvImg{
    opacity: 1;
    filter: brightness(1);
}
.fvImg img{
    width: 100%;
    height: auto;
}
.fvCatch{
    position: absolute;
    right: calc(12 / var(--vw-min) * 100vw);
    top: calc(24 / var(--vw-min) * 100vw);
    z-index: 2;
    background: url(../img/fv_catch.svg) no-repeat center center / contain;
    width: calc(72 / var(--vw-min) * 100vw);
    height: calc(465 / var(--vw-min) * 100vw);
    opacity: 0;
    transform: scale(1.3);
    transition: opacity 0.15s ease, transform 0.15s ease;
}
@media screen and (max-width:768px){
    .fvCatch{
        width: calc(42 / var(--vw-min) * 100vw);
        height: calc(270 / var(--vw-min) * 100vw);
        top: calc(10 / var(--vw-min) * 100vw);
    }
}
.header.is-show .fvCatch{
    opacity: 1;
    transform: scale(1);
}
.hd{
    font-size: min(calc(40 / var(--vw-min) * 100vw),40px);
}
.pageTitle{
    background: url(../img/page_title.png) no-repeat center center / contain;
    width: min(calc(768 / var(--vw-min) * 100vw),768px);
    height: min(calc(138 / var(--vw-min) * 100vw),138px);
    margin: 0 auto;
    position: absolute;
    left: 0;
    right: 0;
    bottom: calc(70 / var(--vw-min) * 100vw);
    margin: auto;
    z-index: 2;
}
@media screen and (max-width:768px){
    .pageTitle{
        width: calc(720 / var(--vw-min) * 100vw);
        height: calc(100 / var(--vw-min) * 100vw);
        bottom: calc(30 / var(--vw-min) * 100vw);
    }
}

#preregistration{
    margin-top: max(calc(-50 / var(--vw-min) * 100vw),-50px);
    position: relative;
    z-index: 2;
}

.cpListsBlock{
    display: flex;
    flex-direction: column;
    gap: calc(30 / var(--vw-min) * 100vw);
    position: relative;
}
@media screen and (max-width:768px){
    .cpListsBlock{
        gap: calc(40 / var(--vw-min) * 100vw);
        padding-bottom: calc(40 / var(--vw-min) * 100vw);
    }
}

.cpLists{
    position: relative;
    font-family: "Hiragino Kaku Gothic Std", var(--font-sans), sans-serif;
    opacity: 0;
    transform: scale(0.85);
    transition: opacity 0.35s ease, transform 0.45s cubic-bezier(0.34, 1.4, 0.64, 1);
}
.cpLists.is-in{
    opacity: 1;
    transform: scale(1);
}
.cpLists::before{
    display: block;
    position: absolute;
    content: '';
    width: min(calc(220 / var(--vw-min) * 100vw),220px);
    height: min(calc(190 / var(--vw-min) * 100vw),190px);
    background: url(../img/stamp_tassei.png) no-repeat center center / 100% 100%;
    top: min(calc(-30 / var(--vw-min) * 100vw),-30px);
    left: min(calc(-40 / var(--vw-min) * 100vw),-40px);
    opacity: 0;
    transform: scale(1.6) rotate(-12deg);
    z-index: 2;
    pointer-events: none;
}
@media screen and (max-width:768px){
    .cpLists::before{
        width: calc(220 / var(--vw-min) * 100vw);
        height: calc(190 / var(--vw-min) * 100vw);
        top: calc(-20 / var(--vw-min) * 100vw);
        left: calc(-20 / var(--vw-min) * 100vw);
    }
}
.cpLists._achieve.is-in::before{
    animation: cpStampIn 0.45s cubic-bezier(0.2, 0.9, 0.3, 1.2) 0.35s both;
}
@keyframes cpStampIn{
    0%{
        opacity: 0;
        transform: scale(1.6) rotate(-12deg);
    }
    60%{
        opacity: 1;
        transform: scale(0.92) rotate(2deg);
    }
    100%{
        opacity: 1;
        transform: scale(1) rotate(0deg);
    }
}
@media screen and (max-width:768px){
    .cpLists._achieve{
        margin-top: calc(40 / var(--vw-min) * 100vw);
    }
}
.cpLists__inner{
    display: flex;
    background-color: #FFF;
    border-radius: min(calc(10 / var(--vw-min) * 100vw),10px);
    border: 2px solid var(--color-orange);
    overflow: hidden;
}
@media screen and (max-width:768px){
    .cpLists__inner{
        flex-direction: column;
    }
}
.cpLists__ttl{
    position: relative;
    border-right: 2px solid var(--color-orange);
    display: flex;
    justify-content: center;
    align-items: center;
    width: min(calc(260 / var(--vw-min) * 100vw),260px);
}
.cpLists__ttl::after{
    content: '';
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    margin: auto;
    width: min(calc(146 / var(--vw-min) * 100vw),146px);
    height: min(calc(146 / var(--vw-min) * 100vw),146px);
    background: url(../img/deco_ball.svg) no-repeat center center / 100% 100%;
    z-index: 0;
    opacity: 0.6;
}
.cpLists__ttlInner{
    display: flex;
    justify-content: center;
    align-items: flex-end;
    color: #000;
    -webkit-text-stroke-width: 2px;
    -webkit-text-stroke-color: #FFAE00;
    font-weight: 900;
    line-height: normal;
    line-height: 1;
    gap: min(calc(10 / var(--vw-min) * 100vw),10px);
    position: relative;
    z-index: 1;
}
@media screen and (max-width:768px){
    .cpLists__ttl{
        width: 100%;
        border-right: none;
        border-bottom: 2px solid var(--color-orange);
        height: calc(174 / var(--vw-min) * 100vw);
    }
}
.count{
    -webkit-text-stroke-width: 3px;
    margin-bottom: max(calc(-5 / var(--vw-min) * 100vw),-5px);
    font-size: min(calc(80 / var(--vw-min) * 100vw),80px);
    letter-spacing:  max(calc(-5 / var(--vw-min) * 100vw),-5px);
}
.unit{
    font-size: min(calc(50 / var(--vw-min) * 100vw),50px);
}
@media screen and (max-width:768px){
    .count{
        -webkit-text-stroke-width: calc(3 / var(--vw-min) * 100vw);
        font-size: calc(80 / var(--vw-min) * 100vw);
    }
    .unit{
        -webkit-text-stroke-width: calc(2 / var(--vw-min) * 100vw);
        font-size: calc(50 / var(--vw-min) * 100vw);
    }
}

.cpItemWrap{
    display: flex;
    flex-direction: column;
    width: calc(100% - min(calc(260 / var(--vw-min) * 100vw),260px));
}
.cpItem:not(:last-child){
    border-bottom: 2px solid var(--color-orange);
    height: min(calc(174 / var(--vw-min) * 100vw),174px);
}
@media screen and (max-width:768px){
    .cpItemWrap{
        width: 100%;
    }
}
.cpItem__inner{
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    height: 100%;
    position: relative;
}
.cpItem__txt{
    font-size: min(calc(40 / var(--vw-min) * 100vw),40px);
    font-weight: 700;
    color: #000;
    text-align: left;
    padding: min(calc(42 / var(--vw-min) * 100vw),42px);
    line-height: 1.2;
}
.txt_s{
    font-size: min(calc(24 / var(--vw-min) * 100vw),24px);
    color: #000;
}
.txt_s._ml{
    display: block;
    margin-top: min(calc(5 / var(--vw-min) * 100vw),5px);
    margin-left: max(calc(-12 / var(--vw-min) * 100vw),-12px);
}
.cpItem__img{
    position: absolute;
    right: min(calc(40 / var(--vw-min) * 100vw),40px);
    top: 0;
    bottom: 0;
    margin: auto;
    width: min(calc(180 / var(--vw-min) * 100vw),180px);
    max-height: 90%;
    overflow: hidden;
    display: flex;
    justify-content: flex-start;
    align-items: center;
}
.cpItem__img img{
    width: 100%;
    height: 100%;
    object-fit: contain;
}
@media screen and (max-width:768px){
    .cpItem__img{
        right:calc(20 / var(--vw-min) * 100vw);
    }
}
.cpLists__ttlInner._819{
    flex-direction: column;
    align-items: center;
    gap: 0;
}