@charset "UTF-8";
/* css Document */

@media (max-width: 1440px) {
}

@media (max-width: 1280px) {
header .logo-top{    

}     
.child .gt_switcher_wrapper{
    top: 0 !important;
    right: 0 !important;    
    left: unset !important;
}  
 nav .inner {
    width: 85%;
}    
.prof-txt1{
    font-size: 90%;
    }    
.prof-txt2{
    width: 80%;
    padding: 3em;
    line-height: 1.7;
}
.prof-txt3{
    width: 80%;
    line-height: 1.7;
}    
.disco-box img{
    max-height: 285px;
}
.fc-content{
    width: calc((100% - 20px) / 4);
    margin-bottom: 20px;
}     
.footer-menu{
    margin: 20px auto;
    }    
.footer-menu-box{
    width: 50%;
    box-sizing: border-box;
}       
}


@media (max-width: 768px) {
header .logo-top{    
    top: 10%;
    left: 5%;
} 
header .logo-top img{
    width: 150px;
    height: auto;
}    
.topimg_back{
    width: 100%;
    height: 110%;
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 80%);
    background: var(--color_main);
}
.topimg{
    width: 100%;
    height: 100%;
    clip-path: polygon(0 0, 100% 0, 100% 90%, 0 80%);
}  
 nav .inner {
    padding: 5em 2em;
    margin: auto;
}
/* Granslate */
#gtranslate_wrapper{
    top: 25px !important;
    right: 10% !important;
}    
h2 {
  font-size: 3.2em;
}    
/* TOP NEWS */
.news-box-f a{
    width: calc((100% - 60px)/3);
    margin: 10px;
}    
.top-film-f li{
    width: calc((100% - 80px)/4.2);
}    
.prof-upper-box h2{
    padding: 0;
    }    
.prof-bottom-box{
    margin-top: 1em;
    }  
.prof-txt2{
    margin: auto;
    width: 90%;
    padding: 2em;
}
.prof-txt3{
    margin: 0 auto 2em;
    width: 90%;
    padding: 2em;
}       
.footer-menu-box img{
    max-width: calc(100% - 100px);
}    
.footer-menu-box{
    width: 100%;
    box-sizing: border-box;
}    
.footer-menu-box ul#Primary{
    display: none;
    }    
.footer-menu-box ul#STARRY{
    margin: 2em auto 6em;
    }    
.footer-menu-box ul#SNS{
    justify-content: center;
    -webkit-justify-content: cener;
    margin: auto;
    width: 100%;
}   
}


@media (max-width: 600px) {
.pc_only{
    display: none;
}
.sp_only{
    display: block;
}
.font-small{
    font-size: 80%;}
.site-main {
      margin: auto;
    width: 95%; } 
.news-single{
    width: 90% !important;
    margin: auto;
}    
.child h2{
    margin: 0 0 0.5em;
}    
/* Granslate */
.child .gt_switcher_wrapper{
    top: 0 !important;
    right: unset !important;    
    left: 0 !important;
}  
header .logo-top{    
    font-size: 50px;
}     
#header-child h1 img{
    height: auto;
    max-width: calc(100% - 70px);
    padding: 5px 0;
    vertical-align: middle;
}    
#header-child h1 a{
    font-weight: 300;
    font-size: 22px;
    line-height: 1.4;
    padding-left: 10px;
}    
.header-top-menu{
    display: none;
}   
nav {
  clip-path:unset;
}    
nav .inner {
    position: relative;
    width: 100%;
    padding: 2em 0 0;
    margin: auto;
    text-align: center;
}
nav .nav_back{
    position: absolute; 
    top: 93%;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: var(--color_main);
    transform: skewY(-10deg) translateY(70px); 
    clip-path:polygon(0 0, 100% 0, 100% 40%, 0 0);
    }
nav .inner .navlogo{
    text-align: left;
    width: calc(100% - 70px);    
    margin-bottom: 1em;
    }
nav .inner ul li {
  margin: auto;
  width: 90%;
  text-align: center;
  padding: 0;
}
nav .inner ul li a {
  font-size: 1.0em;
  font-weight: 600;
}
nav .inner ul#STARRY{
    margin: 2em auto;
    display: -webkit-flex;
    display: flex;
    flex-wrap: nowrap;
    -webkit-flex-wrap: nowrap;
    justify-content: center;
    -webkit-justify-content: center;
    position: relative;
}       
nav .inner ul#STARRY::before{
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: var(--color_main);
    transform: skewY(-5deg) translateY(90px);
    clip-path:polygon(0 30%, 100% 0, 100% 100%, 0 100%);
    z-index: -1;
    }     
nav .inner #STARRY li{
    border: 1px solid var(--color_main);
    border-radius: 10px;
    width: auto;
    margin: 10px;
    }    
nav .inner #STARRY li a{
    padding: 5px 20px;
    color: var(--color_main);        
    }    
nav .inner #STARRY li.entry{
    background-color:var(--color_main); 
}
nav .inner #STARRY li.entry:hover{
    background-color:var(--color_w);
    transition: 0.5s;
}
nav .inner #STARRY .entry a{
    color: var(--color_w);
    display: block;
}    
nav .inner #STARRY .entry a:hover{
    color: var(--color_main);
}    
nav .inner #SNS{
    position: relative;
    margin-top: 80px;
    padding: 3em 0;
    background-color: var(--color_b);
    }    
nav .inner #SNS::before{
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: var(--color_b);
    transform: skewY(-5deg) translateY(-20px);
    clip-path:polygon(0 0, 100% 0, 100% 100%, 0 75%);
    z-index: -1;
    }     
nav .inner #SNS li{
    width: 20%;}
nav .inner #SNS li img{
    width: auto !important;
    height: 35px !important;
}    
/* toggle_btn */
.toggle_btn {
  top: 0;
  right: 10px;
}   
 nav .inner ul.sub-menu {
  left: 0;
}     
h2{
    position: relative;    
    font-size: 3.2em;
    line-height: 1;
    padding:1.5rem 0;}
h2 span{
    position: absolute;
    top: 0;
    left: 45px;
    font-size: 18px;
    padding-left: unset;
}    
h2::before{
    padding-right: 10px;}    

/* TOP */    
h1.header-top{
    position: absolute;
}
h1.header-top img{
    width: calc(100% - 50px) !important;
    height: auto !important;
}  
/* 画像上のロゴ表示はなし　*/    
header .logo-top{
    display: none;
    }    
.topimg_back{
    position: relative;
    height: calc(100vh + 200px);
    background: var(--color_main);
}    
.topimg_back::before{
    position: absolute;
    transform: skewY(-10deg) translateY(70px); 
    }
.topimg{
    height: 100vh;
    clip-path: polygon(0 0, 100% 0, 100% calc(100vh + 110px), 0 calc(100vh - 20px));
}
.topimg img{
    height: calc(100vh + 110px);        
    }
    
/* TOP NEWS */
.news-box-f a{
    width: calc(100% - 20px);
}
.news-box{
    border: unset;
    border-bottom: 1px solid var(--color_gray1);
    padding: 10px 0;
    position: unset;
    overflow:inherit;
    background-color: unset;
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
}
.news-box p{
    font-size: 14px;
    color: var(--color_gray1);
    position: unset;
    width: 100px;
}
.news-box::before {
    content: '';
    position: unset;}    
.news-box .content{
    width: calc(100% - 100px);
    padding: 0 10px;   
}       
/* TOP MOVIE FILM */  
.back_movie::before {
    top: 10%;
    transform: skewY(-4deg) translateY(150px);
}    
.back_film {
    padding: 100px 0 250px;
}    
.top-film-f li{
    /* 横スクロール用 */
    width: calc((100% - 40px)/1.8);
    aspect-ratio: 3 / 4;
    margin: 10px;
}
.sns .sns-box{
    width: calc(100% - 20px);
    margin: 10px;
}
    
.single_title{
    font-size: 26px;
    padding: 10px 0 !important;
}     
.news-single p{
    font-size: 100%;
}    
.news-r-f .more img,    
.site-main .more img{
    width: 50px;
    height: auto;
    }    
.prof-upper-box h2{
    text-align: left !important;
    }    
.prof-upper-box{
    z-index: 3;
    width: 100%;
}    
.disco-box{
    margin: 10px;
    width: calc((100% - 40px)/2);
}
.disco-box img{
    max-height: 180px;
}
.disco-titile{
    font-size: 100%;
} 
.disco-single-r img{
    width: 100%;
    height: auto;
    margin: 10px;
}
.menu-f div{
    margin: 0 10px;
    width: calc((100% - 40px)/2);
}     
.fc-cat{
    font-size: 10px;
    width: 60px;
    height: 25px;
    line-height: 25px;
}    
.shop-box,    
.photo-box,    
.video-box{
    width: calc((100% - 40px)/2);
}    
.photo-single img{
    width: calc((100% - 20px)/2);
    margin: 5px;
}    
.disco-single-l,
.disco-single-r{
    margin: 0 auto 10px;
    width: 95%;
}     
.disco-single-r img{
    width: 100%;
    height: auto;
    margin: 0 auto 10px;
}    
.fc-f h3{
    text-align: center;
    }    
.fc-content{
    width: calc((100% - 40px) / 2);
    margin-bottom: 20px;
}    
.member-info.number{
    bottom: 6%;
    left: 37%;
    font-size: 14px;
    right: unset;
}
.member-info.name{
    bottom: 3%;
    left: 2%;
    font-size: 18px;
}
.member-info.info-date{
    bottom: 3%;
    left: 37%;
    font-size: 9px;
    right: unset;
}   
    
    
footer{
    padding-top: 0;
    margin-top: 50px;
}    
.footer-menu-box img{
    max-width: calc(100% - 50px);
}    
nav .inner #SNS li{
    margin: 0;
}    
#page_top{
  right: 10px;
  bottom: -30px;
}     
.copy{
    padding: 10px;
    }    
}



@media (max-width: 380px) {
h2{
    font-size: 2.6em;}
    
.shop-box,    
.photo-box,    
.video-box{
    margin: 0 auto 1.5em;
    width: 95%;;
}   
 
}

@media (max-width: 340px) {
  
}