@charset "utf-8";
html,body{width:100%}body{width:100%;font-size:16px;line-height:1.8em;color:#222;font-family:"Zen Kaku Gothic New",sans-serif;font-weight:400;position:relative}
/*全体*/
#container{padding:0;margin:0;width:100%;background-image:url(../images/pt_stripe.png);background-repeat:repeat;background-size:50px auto}.pc_wrapper{position:fixed;top:100px;left:0;width:100%;height:500px;background-color:#e03279;z-index:1}.pc_wrapper .bg-image-loop{position:fixed;top:50px;right:100px;width:100%;height:100vh;background-image:url(../images/kv_pc_img_loop.webp);background-repeat:repeat-x;background-size:auto 600px;animation:bg-slider 35s linear infinite;z-index:2}.pc_wrapper .kv_pc_text{position:fixed;top:100px;right:0;width:100px;height:500px;background-image:url(../images/kv_pc_text.webp);background-repeat:no-repeat;background-size:22px auto;background-position:right 38px center;z-index:3}@keyframes bg-slider{from{background-position:0 0}to{background-position:-1581px 0}}@media screen and (min-width:768px) and (max-width:900px){.pc_wrapper .kv_pc_text,.pc_wrapper .bg-image-loop{background-image:none}}.sp_wrapper{width:100%;margin:0 auto 0 auto;position:relative;z-index:10;overflow:hidden}@media (min-width:901px){.sp_wrapper{width:480px;max-width:480px;box-shadow:-8px 0 16px rgba(0,0,0,.08),8px 0 16px rgba(0,0,0,.08);margin:0 100px 0 auto}}@media screen and (min-width:768px) and (max-width:900px){.sp_wrapper{width:480px;max-width:480px;box-shadow:-8px 0 16px rgba(0,0,0,.08),8px 0 16px rgba(0,0,0,.08);margin:0 auto 0 auto}}@media (max-width:767px){.sp_wrapper{width:100%;max-width:100%;margin:0 auto 0 auto}}@media (min-width:768px){.pc_only{}.sp_only{display:none}}@media (max-width:767px){.pc_only{display:none}}
/* ======================
contents共通
===================== */
.contents{width:100%}.inner{width:90%;margin:0 auto}.center{text-align:center}
/*見出し*/
.tit{width:90%;margin:0 auto 30px auto;text-align:center}.tit .tit_img{width:80%;margin:0 auto}.tit_img img{display:block;animation:fuwafuwa 3s ease-in-out infinite!important}.tit small{margin:0 auto 15px auto;display:block;font-weight:500;letter-spacing:2px}.text{text-align:justify}
/*ボタン*/
.bt{width:70%;margin:50px auto}
/*ピンク罫線ボタン*/
.css_btn_class{width:100%;text-align:center;font-size:16px;text-decoration:none;background-color:#FFF;color:#e03279;border:2px solid #e03279;display:inline-block;line-height:160%;padding:12px 0;border-radius:40px;font-weight:700;letter-spacing:1px;-webkit-box-shadow:3px 3px 5px 0 #666;box-shadow:3px 3px 5px 0 #666;background-image:url(../images/icon_btn_arrow_pink.webp);background-size:22px auto;background-position:92% center;transition:background-color .5s ease,color .5s ease,border-color .5s ease,box-shadow .5s ease}@media (max-width:767px){.css_btn_class{background-size:18px auto}}.css_btn_class:hover{background-color:#e03279;color:#FFF;border:2px solid #e03279;background-image:url(../images/icon_btn_arrow_wh.webp);opacity:1!important}
/*水色ベタボタン*/
.css_btn_class_b{width:100%;text-align:center;font-size:16px;text-decoration:none;background-color:#0dbfff;color:#FFF;border:2px solid #0dbfff;display:inline-block;line-height:160%;padding:12px 0;border-radius:40px;font-weight:700;letter-spacing:1px;-webkit-box-shadow:3px 3px 5px 0 #666;box-shadow:3px 3px 5px 0 #666;background-image:url(../images/icon_btn_arrow_wh.webp);background-size:22px auto;background-position:92% center;transition:background-color .5s ease,color .5s ease,border-color .5s ease,box-shadow .5s ease}@media (max-width:767px){.css_btn_class_b{background-size:18px auto}}.css_btn_class_b:hover{background-color:#fae54d;color:#0dbfff;border:2px solid #fae54d;background-image:url(../images/icon_btn_arrow_blue.webp);opacity:1!important}
/*グレーcomingsoon*/
.css_btn_class_soon{width:100%;text-align:center;font-size:16px;text-decoration:none;background-color:#FFF;color:#CCC;border:2px solid #CCC;display:inline-block;line-height:160%;padding:12px 0;border-radius:40px;font-weight:700;letter-spacing:1px}.css_btn_class_soon:hover{opacity:1!important}
/* ======================
#main
====================== */
#main{width:100%!important;height:650px!important;overflow:hidden;position:relative}#movie{text-align:center}#movie .mp4_wrap{width:100%;height:620px;overflow:hidden;position:absolute;z-index:1;text-align:center;background-image:url(../images/movie_sp.jpg);background-size:cover;background-position:bottom center}#movie .mp4_wrap video{width:100%;height:100%;position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);object-fit:cover;display:block;z-index:1}#movie .mp4_wrap img{width:100%}#movie .bg{width:100%;height:620px;position:absolute;z-index:2;background-image:url(../images/pt_dot.png);background-repeat:repeat;background-size:20px auto;overflow:hidden}#movie .main_cap{width:90%;position:absolute;top:12%;left:50%;transform:translateX(-50%);margin:auto;color:#FFF;z-index:3}#main .copy{width:85%;position:absolute;bottom:0;left:50%;transform:translateX(-50%);margin:auto;color:#FFF;z-index:3}@media (min-width:768px){#main{height:700px!important}#movie .mp4_wrap{height:650px}#movie .bg{height:650px}}@media screen and (min-width:501px) and (max-width:767px){#main{height:800px!important}#movie .mp4_wrap{height:750px}#movie .bg{height:750px}#movie .main_cap{width:70%;top:10%}#main .copy{width:65%}}
/*======================
header
======================*/
#header{width:100%;margin:0 auto;padding:0;position:relative}#header .logo_pj{width:30%;max-width:200px;margin:20px auto}#header .logo{width:50%;max-width:200px;margin:20px auto}.menu_fixed{position:fixed;width:100%;max-width:480px;margin:0 auto;z-index:9000}@media (max-width:767px){.menu_fixed{width:100%;max-width:100%}}
/*ハンバーガーメニュー*/
button.spmenu{z-index:9001;position:fixed;top:15px;right:15px;height:22px;width:34px;background-color:transparent;border:none;cursor:pointer;outline:none;padding:0;appearance:none}@media (max-width:767px){button.spmenu{right:15px}}@media (min-width:768px) and (max-width:900px){button.spmenu{right:calc(50% - 240px + 15px)}}@media (min-width:901px){button.spmenu{right:calc(100px + 15px)}}button.spmenu span{z-index:8998;position:absolute;left:0;width:100%;height:2px;border-radius:2px;background-color:#000;display:-moz-inline-box;display:inline-block;transition:0.4s}button.spmenu span:nth-of-type(1){top:0}button.spmenu span:nth-of-type(2){top:10px}button.spmenu span:nth-of-type(3){bottom:0}button.spmenu small{display:block;margin:25% 0 0;color:#000;font-family:'PT Sans Narrow',sans-serif;font-weight:700;letter-spacing:2px;font-size:15px}button.spmenu.active{z-index:9991}button.spmenu.active span:nth-of-type(1){-webkit-transform:translateY(10px) rotate(45deg);transform:translateY(10px) rotate(45deg)}button.spmenu.active span:nth-of-type(2){opacity:0}button.spmenu.active span:nth-of-type(3){-webkit-transform:translateY(-10px) rotate(-45deg);transform:translateY(-10px) rotate(-45deg)}button.spmenu.active small{display:none}
div.nav {
		z-index: 9990;
		position: absolute;
		top: 0;
		right: 0;
        width: 100%;
		max-width: 480px;
		height: 100vh;
		opacity: 0;
		visibility: hidden;
		transition: 0.4s;
        background: #fae54d;
        background-image: url(../images/pt_stripe.png);
        background-repeat: repeat;
        background-size: 50px auto;
        /* スクロール有効 */
        overflow-y: auto;
        /*ブラウザによってスクロールバー出現しない*/
        /* IE, Edge用 */
            -ms-overflow-style: none;
            /* Firefox用 */
            scrollbar-width: none;
}
/*ブラウザによってスクロールバー出現しない*/
/* Chrome, Safari用 */
div.nav::-webkit-scrollbar{display:none}

@media (max-width:767px){div.nav{width:100%;max-width:100%}}div.nav.active{opacity:1;visibility:visible}div.nav ul{width:90%;margin:0 auto;height:auto}div.nav ul li{font-size:18px;letter-spacing:1px;color:#AAA;font-weight:700;border-bottom:2px dotted #FFF;display:flex;align-items:center;padding:10px 0}@media (max-width:360px){div.nav ul li{font-size:15px;padding:7px 0}}@media (max-width:320px){div.nav ul li{font-size:14px;padding:5px 0}}div.nav ul li a{display:block;color:#e03279;text-decoration:none}div.nav ul li a:hover{color:#ed7a9b;opacity:1.0!important}div.nav ul li a:active{color:#A27F35;text-decoration:none}div.nav ul li.sub{margin-left:30px;display:block}div.nav ul li.sub span{font-size:14px;line-height:1;color:#0dbfff;display:block}div.nav ul li:before{content:'▶︎';display:inline-block;vertical-align:middle;font-size:10px;padding:0 5px 0 0;color:#0dbfff}div.nav ul li.sub a:before,div.nav ul li.sub:before{display:none}

/* ハンバーガーメニュー展開時、背景を固定 */
body.active{height:100%;overflow:hidden}
/* ======================
#about
====================== */
#about{padding:0 0 70px 0;position:relative}#about .logo_pj{width:30%;margin:0 auto;padding:30px 0 20px 0}#about .text{color:#FFF;text-align:center;font-weight:500;font-size:14px;line-height:2.3;letter-spacing:1px}

/* ======================
#tiktok
====================== */
#tiktok{padding:50px 0;text-align:center}#tiktok .sns_box li{margin-bottom:30px}
/* TikTok 埋め込みの横ズレ対策 */
#tiktok .tiktok-embed{max-width:100%!important;min-width:0!important;margin:0 auto!important}
/* ======================
#furisode_jk
====================== */
#furisode_jk{padding:70px 0}.slider_wrap{max-width:480px;margin:0 auto;padding-bottom:40px;overflow:hidden}.fs_wrap{position:relative;min-height:400px}.css_list{display:block;width:80%;max-width:300px;margin:0 auto}.css_list .main{display:flex;flex-direction:column}.css_list .main .image{position:relative}.css_list .main .image img{width:100%;display:block;vertical-align:bottom}.css_list .main .image span{position:absolute;bottom:3px;right:3px;color:#e03279}.css_list .main .num{font-size:12px;text-align:right}.css_list .thumbnail{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:10px}.css_list .thumb_img{width:64px;min-width:64px;flex-shrink:0;cursor:pointer;opacity:.5}.css_list .thumb_img.is-active{opacity:1}.css_list .thumb_img img{width:100%;display:block;vertical-align:bottom}

/*popup*/
.popup{position:fixed;inset:0;z-index:9999;display:block;overflow-y:auto;-webkit-overflow-scrolling:touch;pointer-events:none;padding:40px 20px;box-sizing:border-box}.popup:not(.is-open){visibility:hidden;opacity:0}.popup.is-open{visibility:visible;opacity:1;pointer-events:auto;transition:opacity 0.3s ease}.popup_bg{position:fixed;inset:0;background:rgba(0,0,0,.7);width:100%;height:100%;opacity:0;transition:opacity 0.4s ease}.popup.is-open .popup_bg{opacity:1}.popup_inner{position:relative;width:90%;max-width:480px;margin:10px auto 0 auto;background:#FFF;padding:15px;transform:translateY(-20px) scale(.95);opacity:0;transition:transform 0.3s ease,opacity 0.3s ease;box-sizing:border-box}.popup.is-open .popup_inner{transform:translateY(0) scale(1);opacity:1}@media (min-width:1200px){.popup_inner{position:relative;width:90%;max-width:600px}}.popup_close{position:absolute;top:-65px;right:-10px;font-size:60px;background:none;border:none;color:#FFF;cursor:pointer}.popup_main img{width:auto;margin:0 auto;max-height:60vh;display:block}@media screen and (min-width:641px) and (max-width:900px){.popup_main img{max-height:55vh}}@media (max-width:640px){.popup_main img{max-height:55vh}}@media (max-width:320px){.popup_main img{max-height:52vh}}.popup_main .num{font-size:12px;text-align:center}.popup_thumbnail{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:10px}.popup_thumbnail .thumb_img{opacity:.5;cursor:pointer}.popup_thumbnail .thumb_img img{width:auto;max-height:10vh;min-height:80px}.popup_thumbnail .thumb_img.is-active{opacity:1}

/* ======================
#ranking
====================== */
#ranking{padding:70px 0 30px 0}.tit{margin:0 auto 0 auto}.ranking_wrap{display:flex;flex-wrap:wrap;justify-content:flex-start}.accordion_area dl{margin-top:20px}@media (min-width:361px){.ranking_wrap{margin-right:-3.3%}.ranking_wrap dl{width:30%;margin-right:3.3%}}@media (max-width:360px){.ranking_wrap{width:80%;margin:0 auto 0 auto}.ranking_wrap dl{width:45%;margin-left:2.5%;margin-right:2.5%;margin-bottom:20px}.accordion_area dl{margin-bottom:0}}@media (max-width:360px){.ranking_wrap{width:90%;margin:0 auto 0 auto}}.ranking_wrap dt .num{font-weight:500;color:#FFF;background-color:#ed7a9b;text-align:center}.ranking_wrap .n1 dt .num{background-color:#c7b046}.ranking_wrap .n2 dt .num{background-color:gray}.ranking_wrap .n3 dt .num{background-color:#765a1d}.ranking_wrap dt .num i{font-style:normal;font-size:14px;padding-left:3px}.ranking_wrap dt .image{width:100%}.ranking_wrap dd{font-size:11px;text-align:right;position:relative;padding-right:24px}#ranking dd::after{content:"zoom_in";font-family:'Material Symbols Outlined';font-weight:400;font-style:normal;font-size:18px;position:absolute;right:0;top:50%;transform:translateY(-50%);cursor:pointer;color:#e03279}#ranking .bt{margin:50px auto 0 auto}.accordion_area{width:100%;margin:30px auto}.accordion_area .accordion_one{margin-bottom:10px}.accordion_area .accordion_one .ac_header{background-color:#e03279;color:#FFF;padding:1rem 4rem 1rem 1rem;position:relative;z-index:+1;cursor:pointer;transition:.2s}.accordion_area .accordion_one .ac_header .i_box{position:absolute;top:50%;right:1rem;width:20px;height:20px;margin-top:-10px}.accordion_area .accordion_one .ac_header .i_box:before,.accordion_area .accordion_one .ac_header .i_box:after{position:absolute;content:"";margin:auto;box-sizing:border-box;vertical-align:middle}.accordion_area .accordion_one .ac_header .i_box:before{border-top:2px solid #FFF;width:20px;height:0;top:0;bottom:0;right:0}.accordion_area .accordion_one .ac_header .i_box:after{border-left:2px solid #FFF;width:0;height:20px;top:0;bottom:0;right:9px;transition:.3s}.accordion_area .accordion_one .ac_header.open .i_box:after{height:0}.accordion_area .accordion_one .ac_inner{display:none;box-sizing:border-box}.p-faq__headinner{display:block;position:relative;line-height:1.5}.p-faq__headinner .p-faq__q-txt{font-size:16px;font-weight:500}@media (max-width:360px){.p-faq__headinner .p-faq__q-txt{font-size:14px}}@media (max-width:320px){.p-faq__headinner .p-faq__q-txt{font-size:12px}}.p-faq__bodyinner{display:block;position:relative}
/* ======================
#attempt
====================== */
#attempt{padding:70px 0 50px 0}.tit{margin:0 auto 30px auto}#attempt .tenpo{font-weight:700;font-size:24px;margin-bottom:0;text-align:center;letter-spacing:2px}#attempt .tenpo small{font-size:14px;letter-spacing:1px}@media (max-width:360px){#attempt .tenpo{font-size:22px}#attempt .tenpo small{font-size:12px}}#attempt .bg_wh{padding:20px 5%}#attempt .bg_wh li{margin-bottom:30px}#attempt .bg_wh .c_pink{font-weight:500;font-size:18px;margin-bottom:5px}#attempt .bg_wh .text{font-size:14px;line-height:1.6}#attempt .bg_wh .image{margin-top:15px}#attempt .bg_wh .bt{width:65%;margin:40px auto 20px auto}
/* ======================
#school
====================== */
#school{padding:70px 0 50px 0}#school .bg_wh{padding:20px 5%;margin-bottom:30px}#school .area img{width:auto;height:25px!important}#school .name{font-weight:500;font-size:18px;padding:10px 0 5px 0;background-image:url(../images/line_y.png);background-size:100% 15px;background-position:left bottom}#school .image{margin-top:15px}#school .c_pink{font-weight:700;font-size:18px;margin:15px auto 5px auto}@media (max-width:360px){#school .name{font-size:16px}#school .c_pink{font-size:16px}#school .text{font-size:14px}}#school .bt{margin:40px auto 20px auto}
/* ======================
詳細／#main
====================== */
#osaka #detail_main{padding:70px 0 40px 0;background-image:url(../images/osaka/kv.jpg);background-size:100% auto;background-position:center top;padding-top:85%;text-align:center}#tokyo #detail_main{padding:70px 0 40px 0;background-image:url(../images/tokyo/kv.jpg);background-size:100% auto;background-position:center top;padding-top:85%;text-align:center}#detail_main .copy{width:80%;margin:0 auto}#detail_main .area{width:30%;max-width:130px;margin:40px auto 10px auto}#detail_main .name{font-size:24px;line-height:1.6;font-weight:500}#taikendan{padding:50px 0 50px 0}#taikendan .taiken_wrap{display:flex;flex-wrap:wrap;justify-content:space-between}#taikendan .taiken_wrap li{width:48%;margin-bottom:15px;display:flex;flex-direction:column}#taikendan .taiken_wrap li .bg_wh{flex:1}#taikendan .taiken_wrap li .text{padding:15px;font-size:13px;line-height:1.6}#taikendan .taiken_wrap li .image{position:relative;width:100%;overflow:hidden}#taikendan .taiken_wrap li .image img{width:100%;height:100%;vertical-align:bottom}#taikendan .taiken_wrap li .image::after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-image:url(../images/fukidashi.png);background-size:15px auto;background-position:80% top;background-repeat:no-repeat;pointer-events:none}#taikendan .bt{margin:30px auto 30px auto}#taikendan .bt .css_btn_class{letter-spacing:0}@media (max-width:640px){#taikendan .bt{width:90%}}@media (max-width:320px){#taikendan .bt .css_btn_class{font-size:14px}}#taikendan .teacher .tit{margin:0 auto 0 auto}#taikendan .teacher small{margin:0 auto 15px auto;font-size:16px}#taikendan .teacher .text{padding:15px;font-size:13px;line-height:1.6}
/* ======================
詳細／#gallery
====================== */
#gallery {padding: 0 0 0 0;}
/* ======================
詳細／#list
====================== */
#list{padding:50px 0 20px 0}#list .bt{width:90%;margin:20px auto 0 auto}#list .bt .css_btn_class,#list .bt .css_btn_class_soon{font-size:14px}
/* ======================
footer
====================== */
.fixed_bnr{bottom:0;right:12.5%;position:fixed;z-index:99;width:75%}@media screen and (min-width:641px) and (max-width:767px){.fixed_bnr{right:5px;width:70%;max-width:300px}}@media screen and (min-width:768px) and (max-width:900px){.fixed_bnr{right:5px;width:70%;max-width:300px}}@media (min-width:901px){.fixed_bnr{right:5px;width:70%;max-width:300px}}.fixed_bnr img:hover{opacity:1.0!important}.pagetop{bottom:90px;right:20px;position:fixed;z-index:99;width:45px}.pagetop img:hover{opacity:1.0!important}#footer{padding:50px 0 0 0;text-align:center}#footer .ft_logo{width:50%;max-width:240px;margin:0 auto 30px auto;text-align:center}#footer .link_text a{color:#666;text-decoration:underline;background-image:url(../images/icon_blank.svg);background-size:auto 15px;background-position:right 53%;font-size:16px;line-height:15px;font-weight:500;padding-right:22px;letter-spacing:2px}#footer .sns_link{width:70%;margin:30px auto 30px auto;display:flex;flex-wrap:wrap;justify-content:center;align-items:center}#footer .sns_link li{width:25%;max-width:50px;margin:0 20px}#copyright{font-size:12px;padding-bottom:120px;text-align:center;color:#888}