@charset "utf-8"; 
a, abbr, acronym, address, applet, article, aside, audio,b, big, blockquote, body, caption, canvas, center, cite, code, dd, del, details, dfn, dialog, div, dl, dt, em, embed, fieldset, figcaption, figure, form, footer, header, hgroup, h1, h2, h3, h4, h5, h6, html, i, iframe, img, ins, kbd, label, legend, li, mark, menu, nav, object, ol, output, p, pre, q, ruby, s, samp, section, main, small, span, strike, strong, sub, summary, sup, tt, table, tbody, textarea, tfoot, thead, time, tr, th, td, u, ul, var, video{font-size:100%; vertical-align:baseline; white-space:normal; margin:0; padding:0; border:0; outline:0; background:transparent;}article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, main{display:block;} ol, ul{list-style:none;} blockquote, q{quotes:none;}table{border-collapse:collapse; border-spacing:0;} *{-webkit-box-sizing:border-box; -moz-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box; -webkit-text-size-adjust:100%;} img{vertical-align:top; width: 100%;height: auto;} h1, h2, h3, h4, h5, h6{font-weight:normal;}


/*---------------------------
Link
---------------------------*/
a{outline:none; text-decoration: none; color: #01328A;}
a:hover{ opacity: 0.8;}
a:hover{-webkit-transition:all .3s ease; transition:all .3s ease;}

/*---------------------------
Body
---------------------------*/
body{font-family:'Noto Sans JP', sans-serif, "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic"; font-style: normal; font-weight: 400; color: #fff; word-wrap:break-word; font-kerning:normal;font-size:18px;letter-spacing: 0.1em;}


/*---------------------------
共通
---------------------------*/
.cf:before,
.cf:after {content: " ";display: table;}
.cf:after {clear: both;}
.cf{*zoom: 1;}

.pc{display:block;}
.sp{display:none;}

#whats, #rule, #schedule, #entry, #supporter, #event{padding-top: 80px; margin-top: -80px;}


@media only screen and (max-width:768px){
body{font-size:13px;}
.pc{display:none;}
.sp{display:block;}
}

header{width: 100%;}
header{position: fixed; top: 0; left: 0; z-index: 1;background:rgba(0,0,0,0.5);}
header .head-logo{max-width:100px;width: 25%; padding: 15px 0; margin-left: 20px;}

@media only screen and (max-width:768px){
header .head-logo{ max-width: 70px; padding: 10px 0;}
}

#section1 {height: 100vh; display: flex;justify-content: center;flex-flow: column;}
#section1 .hero-inner{max-width:980px; width: 90%; margin:0 auto; display: flex; justify-content: center; align-items: center;}
#section1 .copy-box{margin-right: 5%;}
#section1 .copy-box .copy{font-size:85px; font-family:futura-pt, sans-serif;font-weight: 700; line-height: 100%;}
#section1 .copy-box .txt{font-size: 24px; font-weight: 600; margin-top: 10px;}
#section1 .logo-box{max-width: 410px; width: 40%; margin-right: 7%;}
#section1 .entry-box{margin-top: 60px;}
#section1 .day-box{margin-top: 30px;}
#section1 .day{ font-size:20px; text-align: center; margin-bottom: 10px;}
#section1 .day span{ font-weight: 700;}

@media only screen and (max-width:768px){
#section1 {display: block;height:auto; }
#section1 .hero-inner{display: block;}
#section1 .copy-box{margin-right:0; text-align: center; margin-top: 80px;}
#section1 .copy-box .copy{font-size:26px;}
#section1 .copy-box .txt{font-size: 16px; margin-top: 10px; text-align: center;}
#section1 .logo-box{ width: 70%; margin:30px auto 0;}
#section1 .entry-box{margin-top: 40px;}
#section1 .day{ font-size:15px;}
#section1 .day span{ font-weight: 700;}
}

@media screen and (max-width:320px){
#section1 .copy-box .copy{font-size:24px;}
#section1 .copy-box .txt{font-size: 14px;}
}

#section2{ padding: 100px 0;}
#section2 .balloon.bal-w05{width: 180px;}
#section2 .balloon.bal-w05:before{width: 85px;}
#section2 .balloon.bal-w05:after{width: 85px;}
#section2 .balloon.bal-w05 p{padding: 35px 20px 33px 20px;}
#section2 .inner{max-width:980px; width: 90%; margin:0 auto;}
#section2 .txt{ margin-top: 30px;font-size:20px; text-align: center;}
#section2 .txt span{ font-weight: 700;}
#section2 .txt-box{max-width: 350px; width:100%; margin: 20px auto 0;}
#section2 .txt2{font-size:16px;line-height: 180%;}
#section2 .txt3{font-size:16px;margin-top: 10px; line-height: 180%; padding-left: 4.4em; text-indent: -4.4em;}
#section2 .guest-box{display: flex; justify-content: center; margin: 30px auto 0;width: 100%;}
#section2 .guest-box li{max-width: 300px; padding: 0 1%;}
#section2 .guest-box li .pict{width: 100%;}
#section2 .guest-box li .name{font-size: 16px; margin-top: 10px; text-align: center;}
#section2 .guest-box li .name span{display: block; font-size: 12px;}

@media only screen and (max-width:768px){
#section2{ padding: 50px 0 0 0;}
#section2 .inner{ margin: 40px auto 0;}
#section2 .txt{ font-size:18px; text-align: center; }
#section2 .txt2{font-size:13px;}
#section2 .txt3{font-size:13px;padding-left: 4.4em; text-indent: -4.4em;}
#section2 .guest-box li .name{font-size: 13px;}
#section2 .guest-box li .name span{font-size: 10px;}
}


#section3{ padding: 100px 0;}
#section3 .inner{display: flex;justify-content: center; align-items:flex-start; max-width:1100px; width: 90%; margin: 80px auto 0;}
#section3 .left-box{ width: 46%; margin-right: 4%;}
#section3 .balloon.bal-w02{width: 200px; margin-top: 17px;}
#section3 .balloon.bal-w02:before{width: 95px;}
#section3 .balloon.bal-w02:after{width: 95px;}
#section3 .balloon.bal-w02 p{padding: 25px 20px 23px 20px;}
#section3 h2{ font-size:38px; font-weight: 600;line-height: 180%; text-decoration: underline; letter-spacing: 0.2em;}
#section3 .pict{ width: 100%; margin-top: 30px;}

@media only screen and (max-width:768px){
#section3{ padding: 50px 0 0 0;}
#section3 .inner{display: block; width: 90%; margin: 30px auto 0;}
#section3 .left-box{ width: 100%; margin-right:0;}
#section3 h2{ font-size:21px; letter-spacing: 0.1em; text-align: center;}
#section3 .pict{ width: 100%; margin-top: 20px;}
}

@media screen and (max-width:320px){
#section3 h2{ font-size:18px; }
}

#section3 .right-box{width:50%;}
#section3 .copy{font-size: 20px; font-weight: 500; letter-spacing: 0.15em; line-height: 180%;}
#section3 .txt-box{margin-top: 40px;}
#section3 .balloon.bal-w03{width: 110px; margin-top: 17px; background:#FBC2D9; margin: 0 0 20px 0;}
#section3 .balloon.bal-w03:before{width: 50px;background:#FBC2D9;}
#section3 .balloon.bal-w03:after{width: 50px;background:#FBC2D9;}
#section3 .balloon.bal-w03 p{padding: 5px 10px 0px 10px; font-size: 15px; color: #333; font-weight: 700;}
#section3 .balloon.bal-w03 i:before {}
#section3 .balloon.bal-w03 i:after {background:#FBC2D9;}
#section3 .balloon.bal-w03 i{background:#FBC2D9;}
#section3 .txt{font-size:16px; padding-left: 1em; text-indent:-1em; margin-top: 10px;}
#section3 .txt span{font-size: 12px;}
#section3 .txt2{font-size:12px; padding-left: 1em; text-indent:-1em; margin-top: 10px;}

@media only screen and (max-width:768px){
#section3 .right-box{width:100%; margin-top: 10px;}
#section3 .copy{font-size: 14px; letter-spacing: 0.1em;}
#section3 .txt-box{margin-top: 20px;}
#section3 .txt{font-size:13px;}
}

@media screen and (max-width:320px){
#section3 .copy{font-size: 13px;}
}

#section4{ padding: 100px 0;}
#section4 .balloon.bal-w04{width: 100px;}
#section4 .balloon.bal-w04:before{width: 45px;}
#section4 .balloon.bal-w04:after{width: 45px;}
#section4 .balloon.bal-w04 p{padding: 35px 20px 33px 20px;}
#section4 .inner{ margin-top:  80px;}
#section4 h2{text-align: center;font-size:28px; font-weight: 600;line-height: 180%; text-decoration: underline; letter-spacing: 0.2em;}
#section4 ul{max-width:1100px; width: 90%; margin: 60px auto 0; display: flex; justify-content: center; align-items: center;}
#section4 li{width: 33.3333%;}
#section4 li .icon{width:70px; margin: 0 auto;}
#section4 li h3{font-size:18px; font-weight: 600; text-align: center; margin-top: 20px;}
#section4 .txt{font-size:18px; text-align: center; margin-top: 60px; line-height: 180%; }

@media only screen and (max-width:768px){
#section4{padding: 50px 0 0 0}
#section4 .inner{ margin:30px auto 0; width: 90%}
#section4 h2{font-size:16px; letter-spacing: 0.1em;}
#section4 ul{ margin: 30px auto 0;}
#section4 li .icon{width:50px; margin: 0 auto;}
#section4 li h3{font-size:15px; margin-top: 10px;}
#section4 .txt{font-size:14px;  margin-top: 30px; }
}

@media only screen and (max-width:768px){
#section4 li h3{font-size:13px;}
#section4 .txt{font-size:13px; }
}

#section5{ padding: 100px 0;}
#section5 .balloon.bal-w05{width: 180px;}
#section5 .balloon.bal-w05:before{width: 85px;}
#section5 .balloon.bal-w05:after{width: 85px;}
#section5 .balloon.bal-w05 p{padding: 35px 20px 33px 20px;}
#section5 .inner{max-width:640px;width: 100%; margin: 100px auto 0;}

@media only screen and (max-width:768px){
#section5{ padding: 60px 0 0 0;}
#section5 .inner{ margin: 40px auto 0;}
}

#section6{ padding: 100px 0 100px 0;}
#section6 .balloon.bal-w06{width: 220px;}
#section6 .balloon.bal-w06:before{width: 105px;}
#section6 .balloon.bal-w06:after{width: 105px;}
#section6 .balloon.bal-w06 p{padding: 35px 20px 33px 20px;}
#section6 .inner{display: flex;justify-content: center; align-items:flex-start; max-width:1100px; width: 90%; margin: 40px auto 0;}
#section6 .left{width: 50%; margin-right:3%; }
#section6 .right{width: 47%;}
#section6 .balloon.bal-w07{width: 110px; margin-top: 17px; background:#FBC2D9; margin: 0 0 20px 0;}
#section6 .balloon.bal-w07:before{width: 50px;background:#FBC2D9;}
#section6 .balloon.bal-w07:after{width: 50px;background:#FBC2D9;}
#section6 .balloon.bal-w07 p{padding: 5px 10px 0px 10px; font-size: 15px; color: #333; font-weight: 700;}
#section6 .balloon.bal-w07 i:before {}
#section6 .balloon.bal-w07 i:after {background:#FBC2D9;}
#section6 .balloon.bal-w07 i{background:#FBC2D9;}
#section6 .balloon.bal-w08{width: 110px; margin: 40px 0 0 0;}
#section6 .balloon.bal-w08:before{width: 50px;}
#section6 .balloon.bal-w08:after{width: 50px;}
#section6 .balloon.bal-w08 p{padding:5px 10px 0px 10px; color: #fff; font-size: 13px;font-weight: 700; }
#section6 h3{font-size: 20px; font-weight: 600; color:#FBC2D9; margin-top: 20px; line-height: 160%;}
#section6 .day{font-size: 18px;}
#section6 .txt{font-size: 18px; margin-top: 20px;}
#section6 .icon-box{display: flex;align-items:center; margin-top: 40px;}
#section6 .icon{max-width: 95px; width: 25%; margin-right: 4%;}
#section6 .txt02{font-size: 18px; font-weight: 600; text-decoration: underline;line-height: 180%;}
#section6 .txt-box{ margin-top: 20px;}
#section6 .inline{font-size: 14px;padding-left: 1em; text-indent:-1em; margin-top: 10px; line-height: 180%;}
#section6 .inline02{font-size: 14px;padding-left: 1em; text-indent:-1em; margin-top: 10px; margin-left:1em;line-height: 180%;}
#section6 .end{text-align: center; font-size: 28px;font-weight: 600;color: #fff; margin-top: 60px; text-decoration: underline; letter-spacing: 0.1em;}

@media only screen and (max-width:768px){
#section6{ padding: 60px 0 60px 0;}
#section6 .inner{display: block;margin: 30px auto 0;}
#section6 .left{width: 100%; margin-right:0; }
#section6 .right{width: 100%; margin-top: 30px;}
#section6 .balloon.bal-w07{margin: 20px auto 20px;}
#section6 .balloon.bal-w08{ margin: 30px auto 0;}
#section6 h3{font-size: 18px;text-align: center;}
#section6 .day{font-size: 16px; text-align: center;}
#section6 .txt{font-size: 14px;text-align: center;}
#section6 .icon{max-width:100px; width: 50%; margin-right: 4%;}
#section6 .txt02{font-size: 14px; }
#section6 .txt-box{ margin-top: 10px;}
#section6 .inline{font-size: 13px; margin-top: 5px;}
#section6 .inline02{font-size: 13px;margin-top: 5px;}
#section6 .end{font-size: 16px;margin-top: 30px;}

}


#section7{ padding: 100px 0 0 0; background:rgba(255,255,255,1);}
#section7 .balloon.bal-w09{width: 180px;}
#section7 .balloon.bal-w09:before{width: 85px;}
#section7 .balloon.bal-w09:after{width: 85px;}
#section7 .balloon.bal-w09 p{padding: 35px 20px 33px 20px;}
#section7 .balloon2.bal-w09{width: 180px;}
#section7 .balloon2.bal-w09:before{width: 85px;}
#section7 .balloon2.bal-w09:after{width: 85px;}
#section7 .balloon2.bal-w09 p{padding: 35px 20px 33px 20px;}
#section7 .inner{ width: 90%; margin: 80px auto 0;}
#section7 h3{font-family:futura-pt, sans-serif;font-weight: 400; letter-spacing: 0.3em; font-size: 18px; text-align: center; color: #FF3688;}
#section7 h3 span{display: block; font-size: 10px; color: #333; margin-top: 10px;}
#section7 .logo01{ margin: 30px auto 60px; max-width: 140px; width:22%; }
#section7 .grp{text-align: center;margin: 30px auto;}
#section7 .logo02{ vertical-align: middle; display: inline-block; margin: 0 2% 30px 2%;}
#section7 .w8{width: 8%;}
#section7 .w10{width: 10%;}
#section7 .w13{width: 13%;}
#section7 .w15{width: 15%;}
#section7 .w17{width: 17%;}
#section7 .w20{width: 20%;}
#section7 .w25{width: 25%;}
#section7 .w30{width: 30%;}
#section7 .w35{width: 35%;}
#section7 .more{text-align: center; color: #333; font-size: 16px;font-family:futura-pt, sans-serif;font-weight: 400; letter-spacing: 0.1em; }

@media only screen and (max-width:768px){
#section7{ padding: 50px 0 0 0}
#section7 .inner{ margin: 40px auto 0;}
#section7 .logo02{ margin: 0 5% 30px 5%;}
#section7 .w8{width: 20%;}
#section7 .w10{width: 20%;}
#section7 .w13{width: 25%;}
#section7 .w15{width: 38%;}
#section7 .w17{width: 38%;}
#section7 .w20{width: 35%;}
#section7 .w25{width: 20%;}
#section7 .w30{width: 20%;}
#section7 .w35{width: 20%;}
}

.fullPageScroll {
  width: 100%;
  height: 100vh;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}

.section {
  width: 100%;
  scroll-snap-align: start;
}

 .pagination {
        position: fixed;
        top: 50%;
        right: 32px;
        transform: translateY(-50%);
      }

      .pagination a {
        display: block;
        width: 10px;
        height: 10px;
        margin: 24px 0;
        border-radius: 50%;
        background-color: #FBC2D9;
        transition: transform 0.2s;
      }

      .pagination a.active {
        transform: scale(1.6);
         background: none;
         border: 1px solid #FBC2D9;
      }


.icon-line:before{color: #ff3688!important;}






footer{width: 100%; margin: 150px auto 0; padding: 50px 0 90px 0; background: #000;}
footer .inner2{max-width: 1000px; width: 90%; margin: 0 auto; display: flex; justify-content: center; align-items: center;font-family:futura-pt, sans-serif;font-weight: 300;}
footer .left,footer .right{width: 33.33333%; margin-right: 0!important;}
footer .cent{width: 52%;}
footer .txt{font-size: 12px!important; text-align: center!important;letter-spacing: 0.2em!important;}
footer .txt a{color: #FBC2D9;}
footer .icon{width: 20px!important; margin: 20px auto 0!important;}
footer .logo{width: 110px; margin: 0 auto;}
footer .copyright{ font-size: 10px; text-align: center; margin-top: 20px; color: #FBC2D9;}

@media only screen and (max-width:768px){
footer{width: 100%; margin: 100px auto 0; padding: 50px 0 90px 0;}
footer .copyright{ letter-spacing: 0.05em;}
footer .inner2{display: block; }
footer .left, footer .cent,footer .right{width: 100%;}
footer .right{margin-top: 20px;}
footer .cent{ margin-top: 30px;}
}


#trigger-overlay{ display: none;}
.menu{position: fixed; right: 29px; top: 44px; font-size:12px; color: #FBC2D9;font-family:futura-pt, sans-serif;font-weight: 400;letter-spacing: 0.1em; z-index: 1;}
.open .btn{display:block !important;}
.overlay{position:fixed; width:100%; height:100%; top:0; right:0; background:rgba(251,194,217,1); z-index:7777; }
.overlay .inner{height: 100vh; overflow:auto;display: flex;align-items:center;justify-content:center; flex-flow: column; }
.overlay nav{position:relative;width: 100%;}
.overlay ul{display:inline-block; position:relative; margin:0; text-align: center; width: 100%;}
.overlay ul li{ padding: 1% 0;display:block; -webkit-backface-visibility:hidden; backface-visibility:hidden; text-align: center; font-family: futura-pt, sans-serif;font-weight: 400;}
.overlay ul li a{font-size:22px; display:block; color:#ff3688 !important; -webkit-transition:color 0.2s; transition:color 0.2s; letter-spacing: 0.1em;}
.overlay ul li a:hover, .overlay ul li a:focus{color:#ff3688;}
.overlay .sns{ text-align: center; margin-bottom: 0;}
.overlay .sns li{  width:25px; margin:0 10px; display: inline-block; vertical-align: middle; border-bottom: none;}
.overlay .sns li a{ font-size: 24px;}
.overlay-door{visibility:hidden; width:0; right:0; -webkit-transition:width 0.5s 0.3s, visibility 0s 0.8s; transition:width 0.5s 0.3s, visibility 0s 0.8s;}
.open .overlay-door{visibility:visible; width:100%; height:100vh; -webkit-transition:width 0.5s; transition:width 0.5s; }
.overlay-door nav{width:100%;}
.overlay-door nav, .overlay-door .overlay-close{opacity:0; -webkit-transition:opacity 0.3s 0.5s; transition:opacity 0.3s 0.5s;}
.open .overlay-door nav, .open .overlay-door .overlay-close{opacity:1; -webkit-transition-delay:0.5s; transition-delay:0.5s;}
.overlay-door.close nav, .overlay-door.close .overlay-close{-webkit-transition-delay:0s; transition-delay:0s;}
.overlay .sns_box{font-size:20px; margin:0 0 5% 0;}
.overlay .sns_box a{color:#fff; margin:0 5% 0 0;}
.overlay dl{margin:0 0 30px; float:left; width:100%; color:#fff;}
.overlay dt{margin:0 0 10px; color:#fff;}
.overlay dd{margin:0;}
.overlay dd a{margin:0 5% 0 0;}
.btn{display:block; width:60px; height:60px; position:fixed; z-index:8888; right:10px; top:4px;}
.btn button{border:none; outline:none; background:none; text-indent:-9999px; position:absolute; top:20px; right:17px; width:25px; height:21px; cursor:pointer; z-index:4444; overflow:hidden; }
.btn button::before, .btn button::after{position:absolute; left:0; content:""; width:25px; height:0; border-top:1px solid #FBC2D9;}
.other .btn button::before, .other .btn button::after{position:absolute; left:0; content:""; width:25px; height:0; border-top:1px solid #ff3688;}
.open .btn button::before, .open .btn button::after{position:absolute; left:0; content:""; width:25px; height:0; border-top:1px solid #ff3688;}
.btn button::before{top:3px; -webkit-transition:all .2s ease; transition:all .2s ease;}
.btn button::after{bottom:3px; -webkit-transition:all .2s ease; transition:all .2s ease;}
.open button{border-top:none; top:18px !important; width:25px; height:25px;}
.open button::before, .open button::after{top:12px; width:25px;}
.open button::before{-webkit-transform:rotate(-45deg); transform:rotate(-45deg); -webkit-transition:all .2s ease; transition:all .2s ease;}
.open button::after{-webkit-transform:rotate(45deg); transform:rotate(45deg); -webkit-transition:all .2s ease; transition:all .2s ease;}	
#trigger-overlay{ display:block;}

@media screen and (max-width:768px){
.btn{ right:0; top: -6px;}
.btn button::before, .btn button::after{border-top:1px solid #FBC2D9;}
.open .overlay-door{visibility:visible; width:100%;} 
.overlay .inner{height: 100vh; padding-bottom: 15%;}
.overlay ul li{ padding: 3% 0;}
.overlay ul li a{font-size:16px;}
.menu{ right: 10px; top: 44px; }
}


/* アコーディオン */
.ac-container{
    width: auto;
    margin: 30px auto;
    position: fixed; bottom: 0; left: 0; right: 0; margin: auto; z-index: 100;}
.ac-container label{
    max-width: 550px;
    width: 90%;
    background: #FF3688;
    margin: auto;
    padding: 10px 5px;
    position: relative;
    display:flex;
    align-items:center;justify-content:center; flex-flow: column; 
    height: 70px;
    cursor: pointer;
    color: #fff;
    border-radius:15px 15px 0 0;
}


.ac-container label .logo{ width: 40px; position: absolute; left: 25px; top: 17px;}
.ac-container label .txt{right: 30px; text-align: center; font-size:38px; font-weight: 700;font-family:futura-pt, sans-serif; min-height: 0%; letter-spacing: 0.2em;}

.ac-container label:after{
    content:"";
    position: absolute;
    right: 20px;
    width:36px; height: 36px;
    background: url("../images/icon_up.svg") no-repeat; background-size: cover;
    top: 19px;
}
.ac-container input:checked ~ label:after {
    content:"";
    position: absolute;
    right: 20px;
    width:36px; height: 36px;
    background: url("../images/icon_down.svg") no-repeat; background-size: cover;
    
}

@media screen and (max-width:768px){
.ac-container label:after{
    width:30px; height: 30px;
}
.ac-container input:checked ~ label:after {
    width:30px; height: 30px;
}
}

.ac-container input{
   display: none;
}
.ac-container div{
   background:#FF3688;
   margin-top: -1px;
   overflow: hidden;
   height: 0px;
   position: relative;
   z-index: 10;
   transition: height 0.3s ease-in-out;
}
.ac-container input:checked ~ div{
   transition: height 0.5s ease-in-out;
}

.ac-container div .tit{ font-size:28px; text-align: center; font-family:futura-pt, sans-serif; color: #fff; font-weight: 700; margin-top: 20px;}
.ac-container div span{ display: block; font-size: 20px; font-weight: 400;}
.ac-container div .txt{ color: #fff; padding: 20px 40px; text-align: center;}
.ac-container div .enter{width: 100%; position: absolute; bottom: 0;}
.ac-container div .enter a{display: block; width: 100%;text-align: center; background: #ff0000; color: #fff;font-family:futura-pt, sans-serif; font-weight: 700; font-size: 22px; letter-spacing: 0.2em; padding: 15px;}
.ac-container div .enter a:hover{ opacity: 0.8;}
.ac-container div .pict{ width: 90%; margin: 0 auto;}
.ac-container div .ent_btn{width: 70%; margin: 0 auto 10px;}
.ac-container div .note{font-size: 15px; text-align: center; font-weight: 600; margin-bottom: 20px;}

@media screen and (max-width:768px){
.ac-container label {height: 50px;}
.ac-container label .logo{ width: 30px; left: 10px; top: 12px;}
.ac-container label .txt{ font-size:20px; font-weight: 700; }
.ac-container div .tit{ font-size:18px; }
.ac-container div span{ font-size: 16px; font-weight: 400;}
.ac-container div .pict{ width: 100%; margin: 0 auto;}
.ac-container div .ent_btn{width: 90%; margin: 10px auto 10px;}
.ac-container div .note{font-size: 12px; }


.ac-container label .txt:after{
    font-size: 24px;
}
}

@media only screen and (max-width:320px){
.ac-container div .note{font-size: 11px; }
}

/* 高さの定義 */
.ac-container input:checked ~ div.ac-small{
   height: 150px;
    max-width: 600px;
    width: 90%;
    margin: auto;
}
.ac-container input:checked ~ div.ac-medium{
   height: auto;
       max-width: 550px;
    width: 90%;
    margin: auto;
}
.ac-container input:checked ~ div.ac-large{
   height: 300px;
       max-width: 600px;
    width: 90%;
    margin: auto;
}

div.ac-small, div.ac-medium, div.ac-large{
  max-width: 650px;
    width: 90%;
    margin: auto;
}







.balloon {
	position: relative;
	display: block;
	width: 300px;
	margin: 0 auto 0;
    text-align: center;
    z-index: -1;
}

.balloon p {
	overflow: hidden;
	padding: 10px 20px 7px 20px;
	color: #FBC2D9;
	border: 1px solid #FBC2D9;
	border-bottom: none;
    font-family:futura-pt, sans-serif;font-weight: 400; letter-spacing: 0.3em; font-size: 18px;
}

.balloon i,
.balloon i:before,
.balloon i:after,
.balloon:before,
.balloon:after {
	content: "";
	position: absolute;
	display: block;
}

.balloon:before {
	left: 0;
	bottom: -6px;
	width: 145px;
	height: 5px;
	border-bottom: 1px solid #FBC2D9;
	border-left: 1px solid #FBC2D9;
}

.balloon:after {
	right: 0;
	bottom: -6px;
	width: 145px;
	height: 5px;
	border-bottom: 1px solid #FBC2D9;
	border-right: 1px solid #FBC2D9;
}

.balloon.bal-w01:before{width: 145px;}
.balloon.bal-w01:after{width: 145px;}

.balloon i {
	line-height: 0;
	font-size: 0;
	bottom: -5px;
	left: calc(50% - 4px);
	display: block;
	width: 8px;
	height: 5px;
}

.balloon i:before {
	top: 5px;
	left: calc(50% - 5px);
	width: 0;
	height: 0;
	border: 5px solid transparent;
}

.balloon i:after {
	top: 2px;
	left: 0;
	width: 7px;
	height: 7px;
	border-right: 1px solid #FBC2D9;
	border-bottom: 1px solid #FBC2D9;
	transform: rotate(45deg);
}

.balloon p {
	overflow: hidden;
}

.balloon span {
	display: block;
	overflow: hidden;
	animation: marquee 10s linear 0s infinite;
}



.balloon2 {
	position: relative;
	display: block;
	width: 300px;
	margin: 0 auto 0;
    text-align: center;
}

.balloon2 p {
	overflow: hidden;
	padding: 10px 20px 7px 20px;
	color: #FF3688;
	border: 1px solid #FF3688;
	border-bottom: none;
    font-family:futura-pt, sans-serif;font-weight: 400; letter-spacing: 0.3em; font-size: 18px;
}

.balloon2 i,
.balloon2 i:before,
.balloon2 i:after,
.balloon2:before,
.balloon2:after {
	content: "";
	position: absolute;
	display: block;
}

.balloon2:before {
	left: 0;
	bottom: -6px;
	width: 145px;
	height: 5px;
	border-bottom: 1px solid #FF3688;
	border-left: 1px solid #FF3688;
}

.balloon2:after {
	right: 0;
	bottom: -6px;
	width: 145px;
	height: 5px;
	border-bottom: 1px solid #FF3688;
	border-right: 1px solid #FF3688;
}

.balloon2.bal-w01:before{width: 145px;}
.balloon2.bal-w01:after{width: 145px;}

.balloon2 i {
	line-height: 0;
	font-size: 0;
	bottom: -5px;
	left: calc(50% - 4px);
	display: block;
	width: 8px;
	height: 5px;
}

.balloon2 i:before {
	top: 5px;
	left: calc(50% - 5px);
	width: 0;
	height: 0;
	border: 5px solid transparent;
}

.balloon2 i:after {
	top: 2px;
	left: 0;
	width: 7px;
	height: 7px;
	border-right: 1px solid #FF3688;
	border-bottom: 1px solid #FF3688;
	transform: rotate(45deg);
}

.balloon2 p {
	overflow: hidden;
}

.balloon2 span {
	display: block;
	overflow: hidden;
	animation: marquee 10s linear 0s infinite;
}

.scroll-box{position: fixed; right: -20px; top: 90%;}

.scroll-box a {
  display: inline-block;
  position: absolute;
  right: 40px;
  bottom: 0;
  z-index: 2;
  padding: 10px 10px 110px;
  overflow: hidden;
  color: #FBC2D9;
  font-size: 12px;
  font-family:futura-pt, sans-serif;
  line-height: 1;
  letter-spacing: .2em;
  text-transform: uppercase;
  text-decoration: none;
  writing-mode: vertical-lr;
}
.scroll-box a:hover{opacity: 1;}
.scroll-box a::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 1px;
  height: 100px;
  background: #FBC2D9;
}

.scroll-box a::after {
  animation: sdl 2s cubic-bezier(1, 0, 0, 1) infinite;
}
@keyframes sdl {
  0% {
    transform: scale(1, 0);
    transform-origin: 0 0;
  }
  30% {
    transform: scale(1, 1);
    transform-origin: 0 0;
  }
  70% {
    transform: scale(1, 1);
    transform-origin: 0 100%;
  }
  100% {
    transform: scale(1, 0);
    transform-origin: 0 100%;
  }
}


.sns-box{position: fixed; right:25px; top: 12%;}
.sns-box li{ margin-bottom: 10px;}
.sns-box a{color:#fbc2d9; font-size: 20px;}
.sns-box .icon-line:before{ color: #fbc2d9!important;}





.video-box {
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  overflow: hidden;
  position: fixed;
  top: 0; left: 0;
  z-index: -2;
}
 
.video-box video {
  position: absolute;
  top: 50%;
  left: 50%;
  min-width: 100%;
  min-height: 100%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
 
.video-box .bg-white {
  background: rgba(0, 0, 0, 0.6);
  position: absolute;
  height: 100vh; width: 100%;
  top: 0; left: 0;
}




