@media screen and (max-width: 768px){.desktop{display:none}}.mobile{display:none}@media screen and (max-width: 768px){.mobile{display:block}}html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;background:transparent;box-sizing:border-box;font:inherit;vertical-align:baseline;outline:0;word-break:break-word;font-feature-settings:"palt"}main,article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}html{font-size:62.5%}body{font-family:"游ゴシック体",YuGothic,"ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN","メイリオ",Meiryo,sans-serif;width:100%;-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;color:#000;font-size:1.6rem;font-weight:300;word-wrap:break-word;line-height:1;font-feature-settings:"palt"}a{margin:0;padding:0;font-size:100%;vertical-align:baseline;box-sizing:border-box;background:transparent;text-decoration:none;transition:all .2s ease}a:hover{opacity:0.7}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none}table{border-collapse:collapse;border-spacing:0}ins{background-color:#ff9;color:#000;text-decoration:none}mark{background-color:#ff9;color:#000;font-style:italic;font-weight:bold}del{text-decoration:line-through}abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help}hr{display:block;height:1px;border:0;border-top:1px solid #cccccc;margin:1em 0;padding:0}input,select{vertical-align:middle}input[type="text"],input[type="email"],input[type="tel"],select,textarea{width:100%;height:45px;padding:0 1em;border-radius:3px;border:1px solid #3E3E3E;background:#fff;transition:all .4s ease;box-sizing:border-box}input[type="text"]:focus,input[type="email"]:focus,input[type="tel"]:focus,select:focus,textarea:focus{outline:none}label{display:inline-flex;align-items:center;margin-right:25px}label input[type="radio"]{margin-right:5px}.oa{overflow:auto}.oh{overflow:hidden}.ti{text-indent:-9999px}.db{display:block}.dib{display:inline-block}.dn{display:none}.di{display:inline}.dt{display:table;width:100%}.dtr{display:table-row}.dtc{display:table-cell;vertical-align:top}.flL{float:left}.flR{float:right}.clr{clear:both}.clr_after:after{content:"";clear:both;display:table}.tal{text-align:left}.tar{text-align:right}.tac{text-align:center}.vat{vertical-align:top}.vam{vertical-align:middle}.vab{vertical-align:bottom}.vabl{vertical-align:baseline}.fz12{font-size:12px}.fz16{font-size:16px}.fz18{font-size:18px}.fwb{font-weight:700}.m00{margin:0}.p00{padding:0}.m05{margin:5px}.p05{padding:5px}.m10{margin:10px}.p10{padding:10px}.m15{margin:15px}.p15{padding:15px}.m20{margin:20px}.p20{padding:20px}.m25{margin:25px}.p25{padding:25px}.m30{margin:30px}.p30{padding:30px}.m35{margin:35px}.p35{padding:35px}.m40{margin:40px}.p40{padding:40px}.m45{margin:45px}.p45{padding:45px}.m50{margin:50px}.p50{padding:50px}.m55{margin:55px}.p55{padding:55px}.m60{margin:60px}.p60{padding:60px}.m65{margin:65px}.p65{padding:65px}.m70{margin:70px}.p70{padding:70px}.m75{margin:75px}.p75{padding:75px}.m80{margin:80px}.p80{padding:80px}.m85{margin:85px}.p85{padding:85px}.m90{margin:90px}.p90{padding:90px}.m95{margin:95px}.p95{padding:95px}.m100{margin:100px}.p100{padding:100px}.mt00{margin-top:0}.pt00{padding-top:0}.mt05{margin-top:5px}.pt05{padding-top:5px}.mt10{margin-top:10px}.pt10{padding-top:10px}.mt15{margin-top:15px}.pt15{padding-top:15px}.mt20{margin-top:20px}.pt20{padding-top:20px}.mt25{margin-top:25px}.pt25{padding-top:25px}.mt30{margin-top:30px}.pt30{padding-top:30px}.mt35{margin-top:35px}.pt35{padding-top:35px}.mt40{margin-top:40px}.pt40{padding-top:40px}.mt45{margin-top:45px}.pt45{padding-top:45px}.mt50{margin-top:50px}.pt50{padding-top:50px}.mt55{margin-top:55px}.pt55{padding-top:55px}.mt60{margin-top:60px}.pt60{padding-top:60px}.mt65{margin-top:65px}.pt65{padding-top:65px}.mt70{margin-top:70px}.pt70{padding-top:70px}.mt75{margin-top:75px}.pt75{padding-top:75px}.mt80{margin-top:80px}.pt80{padding-top:80px}.mt85{margin-top:85px}.pt85{padding-top:85px}.mt90{margin-top:90px}.pt90{padding-top:90px}.mt95{margin-top:95px}.pt95{padding-top:95px}.mt100{margin-top:100px}.pt100{padding-top:100px}.mb00{margin-bottom:0}.pb00{padding-bottom:0}.mb05{margin-bottom:5px}.pb05{padding-bottom:5px}.mb10{margin-bottom:10px}.pb10{padding-bottom:10px}.mb15{margin-bottom:15px}.pb15{padding-bottom:15px}.mb20{margin-bottom:20px}.pb20{padding-bottom:20px}.mb25{margin-bottom:25px}.pb25{padding-bottom:25px}.mb30{margin-bottom:30px}.pb30{padding-bottom:30px}.mb35{margin-bottom:35px}.pb35{padding-bottom:35px}.mb40{margin-bottom:40px}.pb40{padding-bottom:40px}.mb45{margin-bottom:45px}.pb45{padding-bottom:45px}.mb50{margin-bottom:50px}.pb50{padding-bottom:50px}.mb55{margin-bottom:55px}.pb55{padding-bottom:55px}.mb60{margin-bottom:60px}.pb60{padding-bottom:60px}.mb65{margin-bottom:65px}.pb65{padding-bottom:65px}.mb70{margin-bottom:70px}.pb70{padding-bottom:70px}.mb75{margin-bottom:75px}.pb75{padding-bottom:75px}.mb80{margin-bottom:80px}.pb80{padding-bottom:80px}.mb85{margin-bottom:85px}.pb85{padding-bottom:85px}.mb90{margin-bottom:90px}.pb90{padding-bottom:90px}.mb95{margin-bottom:95px}.pb95{padding-bottom:95px}.mb100{margin-bottom:100px}.pb100{padding-bottom:100px}.ml00{margin-left:0}.pl00{padding-left:0}.ml05{margin-left:5px}.pl05{padding-left:5px}.ml10{margin-left:10px}.pl10{padding-left:10px}.ml15{margin-left:15px}.pl15{padding-left:15px}.ml20{margin-left:20px}.pl20{padding-left:20px}.ml25{margin-left:25px}.pl25{padding-left:25px}.ml30{margin-left:30px}.pl30{padding-left:30px}.ml35{margin-left:35px}.pl35{padding-left:35px}.ml40{margin-left:40px}.pl40{padding-left:40px}.ml45{margin-left:45px}.pl45{padding-left:45px}.ml50{margin-left:50px}.pl50{padding-left:50px}.ml55{margin-left:55px}.pl55{padding-left:55px}.ml60{margin-left:60px}.pl60{padding-left:60px}.ml65{margin-left:65px}.pl65{padding-left:65px}.ml70{margin-left:70px}.pl70{padding-left:70px}.ml75{margin-left:75px}.pl75{padding-left:75px}.ml80{margin-left:80px}.pl80{padding-left:80px}.ml85{margin-left:85px}.pl85{padding-left:85px}.ml90{margin-left:90px}.pl90{padding-left:90px}.ml95{margin-left:95px}.pl95{padding-left:95px}.ml100{margin-left:100px}.pl100{padding-left:100px}.mr00{margin-right:0}.pr00{padding-right:0}.mr05{margin-right:5px}.pr05{padding-right:5px}.mr10{margin-right:10px}.pr10{padding-right:10px}.mr15{margin-right:15px}.pr15{padding-right:15px}.mr20{margin-right:20px}.pr20{padding-right:20px}.mr25{margin-right:25px}.pr25{padding-right:25px}.mr30{margin-right:30px}.pr30{padding-right:30px}.mr35{margin-right:35px}.pr35{padding-right:35px}.mr40{margin-right:40px}.pr40{padding-right:40px}.mr45{margin-right:45px}.pr45{padding-right:45px}.mr50{margin-right:50px}.pr50{padding-right:50px}.mr55{margin-right:55px}.pr55{padding-right:55px}.mr60{margin-right:60px}.pr60{padding-right:60px}.mr65{margin-right:65px}.pr65{padding-right:65px}.mr70{margin-right:70px}.pr70{padding-right:70px}.mr75{margin-right:75px}.pr75{padding-right:75px}.mr80{margin-right:80px}.pr80{padding-right:80px}.mr85{margin-right:85px}.pr85{padding-right:85px}.mr90{margin-right:90px}.pr90{padding-right:90px}.mr95{margin-right:95px}.pr95{padding-right:95px}.mr100{margin-right:100px}.pr100{padding-right:100px}.bdn{border:none}.bdtn{border-top:none}.bdrn{border-right:none}.bdbn{border-bottom:none}.bdln{border-left:none}.por{position:relative}.poa{position:absolute}.pof{position:fixed}.flex-wrap{display:flex;flex-wrap:wrap;justify-content:space-around}.flex-row{flex-direction:row}:root{--color-yellow: #EEB31F;--color-pink: #E58392;--color-green: #86B74A;--color-blue: #1098D0;--color-orange: #E8754D;--color-text: #2F4956}*::-moz-selection{background:rgba(0,0,0,0.08)}*::selection{background:rgba(0,0,0,0.08)}body{background:url(../images/bg.jpg) 0 0;line-height:1.8;color:var(--color-text)}@media screen and (max-width: 768px){body{font-size:1.4rem}}a{color:var(--color-text)}input[type="text"],input[type="email"],input[type="tel"],select,textarea{display:block;min-height:90px;border:none}input[type="text"]:focus,input[type="email"]:focus,input[type="tel"]:focus,select:focus,textarea:focus{background:#fff}textarea{resize:vertical}.vt{-ms-writing-mode:tb-rl;writing-mode:vertical-rl;-webkit-text-orientation:upright;text-orientation:upright}


body{
    background: url(../images/bg.jpg) 0 0;
}
.bg--yellow{
    background: #FFFF00;
}
.container{
    width: 100%;
    max-width: 600px;
    margin: 0 auto;
    background: #fff;
}
img{
    display: block;
    width: 100%;
}
.logo{
    position: fixed;
    top: 20px;
    left: 20px;
    width: 100%;
    max-width: 300px;
}
@media screen and (max-width: 1200px){
    .logo{
        max-width: 120px;
    }
    .logo img{
        width: 100%;
    }
}

.title{
    position: relative;
}
.cta-btn{
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 20px;
}
.cta-btn img{
    animation: poyopoyo 2s ease-out infinite;
}
@keyframes poyopoyo {
    0%, 40%, 60%, 80% {
      transform: scale(1.0);
    }
    50%, 70% {
      transform: scale(0.8);
    }
}
.cta{
    padding: 10px 0 40px;
    background: url(../images/button-bg1.png) 0 0  / cover no-repeat;
}

.menu{
    padding: 81% 41px 56px;
    background: url(../images/menu.jpg) 0 0 / cover no-repeat ,#FFFF00;
}
.menu img{
    animation: poyopoyo 2s ease-out infinite;
    position: relative;
    top: -5px;
}
.vip{
    padding: 50px 30px 0;
}
.vip .btn{
    display: block;
    width: 70%;
    margin: 0 auto 40px;
}
.summary{
    padding: 30px 20px;
}
.summary dl{
    display: block;
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid #D9D9D9;
    color: #333;
    line-height: 1.2;
}
.summary dt{
    margin-bottom: 10px;
    font-size: 32px;
    font-weight: bold;
}
@media screen and (max-width: 768px){
    .summary dt{
        font-size: 24px;
    }
}
.summary dd{
    font-size: 30px;
}
@media screen and (max-width: 768px){
    .summary dd{
        font-size: 20px;
    }
}
.summary:last-of-type{
    border-bottom: none;
}
.summary iframe{
    width: 100%;
    height: auto;
    aspect-ratio: 600 / 450;
}
.map{
    display: block;
    text-align: center;
    font-size: 30px;
}
@media screen and (max-width: 768px){
    .map{
        font-size: 16px;
    }
}
.map img{
    border: 1px solid #D9D9D9;
}

footer{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap:  30px 20px;
    margin-top: 50px;
    padding: 20px;
    background: #000;
}
.sponsor-text{
    width: 60%;
}
.banner{
    width: 45%;
}
.close-modal {
    display: none!important;
}


.sns{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    margin-top: 20px;
    padding: 0 30px;
}

.contactform{
    margin-top: 30px;
    text-align: center;
    font-size: 22px;
    font-weight: bold;
}
@media screen and (max-width: 600px){
    .contactform{
        font-size: 16px;
    }
}
.contactform .icon-down{
    margin: 10px auto;
    width: 30px;
}
.contactform a img{
    width: 60%;
    margin: auto;
}
.comingsoon{
    margin: 30px auto;
    width: 70%;
}


.modal{
    width: 100%!important;
    height: calc( 100vh - 40px );
    background: none!important;
    box-shadow: none!important;
    padding: 0!important;
}
.modal[style="display: inline-block;"]{
    display: flex!important;
    justify-content: center;
    align-items: center;
}
.blocker{
    display: flex;
    justify-content: center;
    align-items: center;
    background: url(../images/bg.jpg) 0 0 / cover no-repeat;
    padding: 20px;
}
.modal-content{
    position: relative;
    opacity: 0.2;
    pointer-events: none;
    position: absolute;
    display: flex;
    width: 100%;
    max-width: 600px;
    max-height: 700px;
    height: 80vh;
    padding: 50px;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    transition: all 0.3s ease;
}
.modal-content:before,
.modal-content:after{
    content: '';
    position: absolute;
    border: 1px solid rgba(255, 255, 255, 0.7);
    pointer-events: none;
}
.modal-content:before{
    top: 0;
    left: 6px;
    width: calc( 100% - 12px );
    height: 100%;
}
.modal-content:after{
    top: 6px;
    left: 0;
    width: 100%;
    height: calc( 100% - 12px );
}
.modal-content img{
    display: block;
    width: 100%;
}

.modal-input{
    position: absolute;
    z-index: 10;
    display: grid;
    grid-template-columns: 1fr;
    align-items: center;
    justify-content: center;
    gap: 30px;
    width: calc( 100% - 60px );
    max-width: 768px;
    padding: 40px 20px;
    background: #fff;
    transition: all 0.3s ease;
}
.modal-input input{
    min-height: 60px;
    background: #F5F5F5;
    border: 1px solid #D9D9D9;
}
button{
    display: block;
    appearance: none;
    border: none;
    background: none;
}
.modal-back{
    margin: auto auto 0;
    width: 100px;
}


.is--clear .modal-input{
    opacity: 0;
    pointer-events: none;
    visibility: hidden;
}
.is--clear .modal-content{
    opacity: 1;
    pointer-events: auto;
}


.fixed{
    position: fixed;
    bottom: 80px;
    left: 80px;
    display: grid;
    grid-template-columns: 1fr;
    gap: 20px;
    width: 403px;
    min-width: 220px;
}
.fixed-sns{
    display: grid;
    grid-template-columns: auto auto;
    justify-content: flex-start;
    gap: 20px;
    margin-top: 20px;
}
.fixed-sns img{
    height: 54px;
}
.sp-fixed-line{
    display: none;
}
@media screen and (max-width: 1550px){
    .fixed{
        width: calc( (100% - 600px ) / 2  - 120px);
    }
    .fixed-sns img{
        height: 40px;
    }
}
@media screen and (max-width: 1200px){
    .fixed{
        display: none;
    }
    .sp-fixed-line{
        position: fixed;
        bottom: 30px;
        right: 30px;
        display: block;
        width: 115px;
        opacity: 0;
        pointer-events: none;
        transition: all 0.3s ease;
    }
    .is--scrolled .sp-fixed-line{
        opacity: 1;
        pointer-events: auto;
    }
}




.contact-form{
    padding: 90px 30px;
    font-size: 27px;
    font-weight: bold;
    color: #0A0A0A;
}
.contact-form input,
.contact-form textarea{
    width: 100%;
    padding: 10px;
    border: 1px solid #D9D9D9;
    border-radius: 5px;
    background: #F5F5F5;
    min-height: 63px;
}
.contact-form textarea{
    min-height: 200px;
}
.contact-form form{
    display: grid;
    grid-template-columns: 1fr;
    gap: 30px;
}
.contact-form h2{
    width: fit-content;
    margin: 0 auto 40px;
    border-bottom: 2px solid #0A0A0A;
    font-size: 35px;
    line-height: 1.4;
}
.contact-form dt{
    display: flex;
    align-items: center;
    gap: 10px;
}
.contact-form dt:before{
    content: '必須';
    display: block;
    background: #E20004;
    font-size: 22px;
    line-height: 1.4;
    color: #fff;
    padding: 0 8px;
}
.contact-form [type="submit"]{
    display: block;
    width: 60%;
    margin: 20px auto 0;
}
.contact-form a:has(img){
    display: block;
    width: 100px;
    margin: 20px auto 0;
}
@media screen and (max-width: 1200px){
    .contact-logo{
        mix-blend-mode: difference;
    }
}
@media screen and (max-width: 600px){
    .contact-logo{
        position: relative;
        top: 0;
        left: 0;
        display: flex;
        justify-content: center;
        align-items: center;
        width: 100%;
        max-width: 100%;
        height: 85px;
        padding: 10px;
        box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.25);
        background: #fff;
    }
    .contact-logo img{
        width: 195px;
    }
    .contact-form{
        padding: 50px 20px 40px;
        font-size: 17px;
    }
    .contact-form h2{
        font-size: 22px;
    }
    .contact-form dt:before{
        font-size: 15px;
    }
}
