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

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

/* ------------------------------------------------------- */
@media (max-width: 1440px) {
    .top-f{
        max-width: 1200px;
    }  
}

/* ------------------------------------------------------- */
@media (max-width: 1280px) {
.logo-top img{
    width: 350px;
}     
 nav .inner {
    width: 85%;
}      
.footer-menu{
    margin: 20px auto;
    }    
.footer-menu-box{
    width: 50%;
    box-sizing: border-box;
    height: auto;
}       
}

/* ------------------------------------------------------- */
@media (max-width: 1024px) {
    .top-back{
        background-size: 90%;
        padding-bottom: 150px;
    }
    .top-news-f h2::after{
        left: 30%;
    }
    h2{
        font-size: 1.7em;
    }
    .front-l .menu-box div{
        margin: 5px;
        width: calc((100% - 40px)/4);
    }
    .front-l .menu-box div h2{
        font-size: 1em;
    }
}

/* ------------------------------------------------------- */
@media (max-width: 768px) {

 nav .inner {
    padding: 5em 2em;
    margin: auto;
}
.top-back{
    background-size: 80%;
    padding-bottom: 110px;
}    
.top-store-box{
    margin: 5px;
    width: calc((100% - 30px)/3);
}
h2 {
  font-size: 1.5em;
}    
.top-news-f h2{
    margin: 1em 0;
    width: 100%;
    text-align: left;
    }    
.top-news-f h2::after{
    left: 0;
    }
.news-f{
    margin-bottom: 2em;
    width: 100%;
    }    
.front-r,    
.front-l{
    width: 100%;    
    }   
.banner-f div{
    width: calc((100% - 40px)/2);
    height: auto;
    margin: 10px;
    padding: 10px;
}  
}

/* ------------------------------------------------------- */
@media (max-width: 600px) {
.pc_only{
    display: none;
}
.sp_only{
    display: block;
}
.font-small{
    font-size: 80%;}
.site-main {
    margin: auto;
    width: 95%; } 
h2{
    font-size: 1.7em;
    padding: 1em 0;
    margin: 0;
    }    
.news-single{
    width: 90% !important;
    margin: auto;
}       
#header-child{
    text-align: right;
    padding-right: 15px;
    }    
#header-child h1 img{
    height: 50px;
    width: auto;
    max-width: calc(100% - 70px);
    padding: 5px 0;
    vertical-align: middle;
}     
.header-top-menu{
    display: none;
}      
nav .inner {
    position: relative;
    width: 100%;
    padding: 2em 20px 0;
    margin: auto;
    text-align: center;
}
nav .nav_back{
    position: absolute; 
    top: 93%;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: var(--color_main);
    }
nav .inner .navlogo{
    text-align: center;
    width: 100%;    
    margin: 1em auto;
    }
nav .inner ul{
    width: 100%;
    }
nav .inner ul li {
  text-align: left;
  padding: 0;
}
nav .inner ul#Primary li{
}  
nav .inner ul li a {
  font-size: 13px;
letter-spacing: 0.1em;
}
nav .inner ul li ul.sub-menu li{
    padding-left: 15px;
    border-left:1px solid #fff;
    }
nav ul#STARRY li{
    height: 35px;
    line-height: 35px;
    }  
    
 nav .inner ul.sub-menu {
  left: 0;
}     
/* TOP */      
h1.header-top{
    position: absolute;
}
h1.header-top img{
    width: calc(100% - 50px) !important;
    height: auto !important;
}   
/* TOP IMAGES */
.top-back{
    background-size: 90%;
    padding-bottom: 70px;
}
.top-store p{
    font-size: 85%;
    margin: 0;
    }   
.top-store .bounce img{
    width: 10px;
    height: auto;
    }   
.front-l .menu-box div{
    width: calc((100% - 20px)/2);
    border: 2px solid var(--color_w);
}    
.banner-f div{
    width: calc((100% - 20px));
    height: auto;
    margin: 10px;
    padding: 10px;
}    
ul.news-menu li{
    margin: 5px 0;
    padding: 5px;
    font-size: 12px;
}
.single-f .line-h17{
    margin: 2em auto;
    font-size: 90%;
    }       
.report-box{
    width: 100%;
    padding: 5px;
    margin-bottom: 2em;
}  
.report-text,    
.report-thum{
    width: 100%;
    }    
.report-thum{
    margin-bottom: 1em;
    max-width: 150px;
    }
.report-thum img{
    object-fit: contain;
    }    
.report-text{
    margin: 0;
    padding: 0;
    }
.report-text h3{
    font-size: 16px;
    } 
.area{
    margin: 60px auto 5em;
    width: 100%;
}    
.single_title{
    font-size: 26px;
    padding: 10px 0 !important;
    line-height: 1.6;
}     
.news-menu{
    width: 100%;
    margin: 1em 0;
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
    -webkit-flex-wrap: wrap;    
    justify-content: flex-start;
    -webkit-justify-content: flex-start;    
}    
 
.menu-f div{
    margin: 0 10px;
    width: calc((100% - 40px)/2);
}       
a.shop-box,    
.photo-box,    
.video-box{
    width: calc((100% - 80px)/2);
}    
.photo-box h3{
    font-size: 14px;
}    
.photo-single img{
    width: calc((100% - 20px)/2);
    margin: 5px;
}    
.blog-box .thum{
    width: 100%;
    height: auto;
    margin-bottom: 15px;
}    
.content-area .blog-box .content{
    width: 100%;
    padding: 0 10px;   
}    
.fc-f h3{
    text-align: center;
    }    

footer{
    padding-top: 0;
    margin-top: auto;
    }
nav {
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}        
#page_top{
  right: 10px;
  bottom: -30px;
}     
.copy{
    padding: 10px;
    font-size: 10px;
    }    
}


/* ------------------------------------------------------- */
@media (max-width: 380px) {
 
}

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