@charset "UTF-8";
/* CSS Document */
@import url("sp-under.css");
@import url("sp-contents.css");

@media screen and (min-width:1341px){
  #key.main .key-inner{
    padding-left: 100px;
  }
  #key.main::after{
    width: calc(100% - 100px);
  }
}
@media screen and (max-width:1240px){
  #key.main .key-inner{
    padding-left: 60px;
  }
  .sec-about_box .about_cmnt{
    width: 54%;
    padding-left: 50px;
  }
  .about_cmnt .cmnt-in{
    padding-right: 50px;
  }
  .about-more{
    width: calc(54% - 50px);
    padding-right: 50px;
  }
  .sec-nxtlive-blc{
    padding-left: 60px;
  }
  .sec-nxtlive_box::before{
    background-position: right -15% center;
        width: calc(100vw - 120px);
  }
}
@media screen and (max-width:1080px){
  .header_inner{
    padding-left: 20px;
    padding-right: 20px;
  }
  header h1.logo{
    width: 200px;
  }
  .header-link .btn-rag, .header-link .btn-login{
    width: 110px;
  }
  .btn-rag a, .btn-login a{
    font-size: .875em;
    padding-left: 2.5em;
  }
  .header-link{
    margin-left: 10px;
  }
  .menu__head article.menu__cat{
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    -o-flex-direction: column;
    flex-direction: column;
  }
  article.menu__cat.top .video-thumb::after{
/*    background: linear-gradient(180deg,rgba(0,0,0,0)0,rgba(0,0,0,0)70%,rgba(0,0,0,.065) 100%);*/
  }
  .sec-menu_box .menu__head article.menu__cat .menu-cmnt{
    width: 100%;
    
  }
  .sec-menu_box .menu__head article.menu__cat .menu-cmnt .cmnt-wrap{
    -ms-align-items: center;
    align-items: center;
  }

  .menu__head article.menu__cat .menu-cmnt::before{
    content: none;
  }
  .sec-about_box .about_thumb{
    width: 40%;
  }
  .sec-about_box .about_cmnt{
    width: 60%;
  }
}
@media screen and (max-width:950px){
  
  .header-nav
  ,.foot-link{
    display: none;
  }
  .foot_logo
  ,.foot_nav{
    width: 50%;
  }
  .footer-inner > * + *{
    border-left: none;
  }
  header h1.logo{
    max-width: 100%;
  }
  /*l-nav
  ==================*/
  .screen-reader-text {
    clip: rect(1px,1px,1px,1px);
    position: absolute!important;
    height: 1px;
    width: 1px;
    overflow: hidden;
  }
  #menu-hum{
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    position: absolute;
    z-index: 999;
    top: 0;
    right: 0;
    width: 100px;
    height:100%;
    justify-content: center;
    -ms-align-items: center;
    align-items: center;
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    -o-flex-direction: column;
    flex-direction: column;
    cursor: pointer;
    -webkit-transition: .3s;
    -o-transition:  .3s;
    transition: .3s;
    background: #314462;
  }
  #menu-hum > span.text{
    color: #fff;
    position: absolute;
    bottom: .9em;
    left: 50%;
    transform: translateX(-50%);
  }
  #menu-hum.fixed{
    width: 80px;
    height: 80px;
    top: 0;
  }
  #menu-hum::before{
    content: "";
    width: 60px;
    height: 60px;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
    display: block;
    background: rgba(255,255,255,0);
    -webkit-transition: background .3s;
    -o-transition: background .3s;
    transition: background .3s;
  }
  /*#menu-hum.fixed::before{
    background: rgba(255,255,255,.16);
  }*/
  #menu-hum button{
    position: relative;
  }
  #menu-hum button
  ,#menu-hum button::before
  /*,#menu-hum button::after*/{
    width: 38px;
    height: 3px;
    background: #fff;
    -webkit-transition: transform .3s;
    -o-transition: transform .3s;
    transition: transform .3s;
  }
  #menu-hum button::before{
    content: "";
    position: absolute;
    left: 0;
  }
  #menu-hum button::before{
    top: -11px;
  }
  /*#menu-hum button::after{
    top: 12px;
  }*/

  /*open*/
  #menu-hum.is-open button{
    transform: rotate(45deg);
    top: -.5em;
  }
  #menu-hum.is-open button::before{
    transform: rotate(-90deg);
    top: 0;
  }
  
  #l-nav{
    position: fixed;
    width: 100vw;
    height: 100vh;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #fff;
    z-index: 1000;
    display: none;
  }
  .l-nav__inner{
    height: 100%;
  }
  .l-nav__left
  ,.l-nav__right{
    width: 50%;
  }
  .l-nav__left{
    height: 100%;
    background: url( "/image/image_directly/vpalette/yoshihamatsutom/l-nav_bg.jpg") no-repeat top center/cover;
    justify-content: center;
    padding-bottom: 70px;
    padding-right: 50px;
  }
  .l-nav___title{
    margin-top: auto;
    margin-left: auto;
    width: 167px;
    max-width: calc(100% - 20px);
  }
  .l-nav__right{
    overflow-y: scroll;
    padding-bottom: 80px;
  }
  .l-nav___header{
    width: 100%;
    justify-content: space-between;
    -ms-align-items: center;
    align-items: center;
    padding: 45px 35px 0;
  }
  .l-nav___header .logo{
    width: 150px;
  }
  .l-nav__close{
    cursor: pointer;
    width: 4em;
    height: 4em;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    justify-content: center;
    -ms-align-items: flex-end;
    align-items: flex-end;
  }
  .l-nav__close p{
  }
  .l-nav__close::before
  ,.l-nav__close::after{
    content: "";
    width: 5px;
    border-radius: 3px;
    height: calc(100% - 1em);
    background: #314462;
    display: block;
    position: absolute;
    left: 50%;
    top: 0;
  }
  .l-nav__close::before{
    transform: translateX(-50%) rotate(-45deg);
  }
  .l-nav__close::after{
    transform: translateX(-50%) rotate(45deg);
  }
  .l-nav__contents{
    margin-top: 84px;
    margin-left: 70px;
  }
  .l-nav_btn {
    justify-content: space-between;
    padding-right: 20px;
  }
  .l-nav_btn > * + *{
    margin-left: 12px;
    
  }
  .l-nav_btn > *{
    width: calc((100% - 12px)/2);
    border-radius: 4px;
    overflow: hidden;
  }
  .l-nav_btn > .btn-member{
    width: 100%;
  }
  .l-nav_btn > * a{
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    justify-content: center;
    font-size: 1em;
    padding-left: 1em;
    padding-top: .9em;
    padding-bottom: .9em;
  }
  
  .l-nav_link{
    margin-top: 33px;
  }
  .l-nav_link li{
     padding-right: 2em;
  }
  .l-nav_link li::before{
    content: "";
    display: block;
    height: 1px;
    width: 100%;
    background: #D6DAE2;
    position: absolute;
    right: 0;
    bottom: 0;
  }
  .l-nav_link li a{
    font-size: 1.06em;
    padding-top: 1.5em;
    padding-bottom: 1.5em;
    display: block;
  }
  .l-nav_link li a::after{
    content: "";
    width: 1em;
    height: 1em;
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    background: url("/image/image_directly/vpalette/yoshihamatsutom/icn_arw.svg") no-repeat center/100%;
  }
  
  .l-nav_sns{
    margin-top: 70px;
    -ms-align-items: center;
    align-items: center;
    justify-content: center;
  }
  .l-nav_sns a{
    width: 25px;
  }
  .l-nav_sns a + a{
    margin-left: 33px;
  }
  
  .menu_livethumb{
    width: 50%;
  }

  .menu_livecmnt{
    width: 50%;
  }
  .menu_livecmnt .cmnt__inner{
    width: 100%;
    height: 100%;
    padding-left: 40px;
  }
  .menu_livebtn{
    margin-top: 22px;
  }
  .menu_livecmnt h3 span.en{
    font-size: 2.14em;
  }
  .menu_livecmnt h3 span.jp{
    font-size: 1.17em;
  }
  .key-cmnt .title{
    font-size: 2.5em;
  }
}

@media screen and (max-width:768px){
  
  #side-link{
    left: -100%;
  }
  .l-nav___header{
    padding-left: 20px;
    padding-right: 20px;
  }
  .l-nav__contents{
    margin-left: 20px;
  }
  .sec-inner{
    padding-left: 20px;
    padding-right: 20px;
  }
  /*key*/
  #key.main::before{
    padding-top: 100%;
    
  }
  #key.main::after{
    /*bottom: auto;
    top: 3em;*/
  }
  #key.main .key-inner{
    padding-left: 20px;
    background-position: top 20px right;
    background-size: 50%;
  }
  .key-cmnt{
    transform: translateY(3em);
  }
  .key-cmnt .title .en{
    
  }
  .key-cmnt .title .jp{
    
  }
  .key-cmnt .text{
    font-size: 1.125em;
  }
  /*about*/
  .sec-about-blc{
    padding-left: 20px;
  }
  .sec-about_box{
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    -o-flex-direction: column;
    flex-direction: column;
  }
  .sec-about_box .about_thumb{
    width: 50%;
    max-width: none;
  }
  .sec-about_box .about_cmnt{
    width: 100%;
    padding-top: 30px;
  }
  .sec-about_box::before{
    width: calc(100% - 20px);
    height: calc(100% + 50px);
    background-size: 60%;
  }
  .about_cmnt .cmnt-in{
    padding-right: 20px;
  }
  .about-more{
     width: calc(100% - 40px);
    padding-right: 20px;
  }
  /*menu*/
  .sec-menu_box .menu__head{
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    -o-flex-direction: column;
    flex-direction: column;
    margin-top: 30px;
  }
  .sec-menu_box .menu__head .menu-cmnt{
    width: 100%;
  }
  .sec-menu_box .menu__head article.menu__cat{
    width: 100%;
    margin-top: 30px;
  }
  .menu__body article.menu__cat{
    width: calc((100% - 20px)/2);
  }
  .menu__body article:nth-child(2), .menu__body article:nth-child(5){
    transform: none;
  }
  .sec-menu_box .menu__body > * + *:nth-child(n+3)
  ,.sec-menu_box .menu__body > * + *:nth-child(n+4){
    margin-top: 20px;
  }
  .menu__body article:nth-child(even){
  transform: translateY(20px);
  }
  
  /*info*/
  .sec-info_box{
    padding-left: 20px;
    padding-right: 20px;
  }
  .acv-news__list article .news-date{
    width: 13em;
  }
  .acv-news__list article{
    padding-left: 20px;
    padding-right: 20px;
  }
  /*join*/
  .sec-join_box{
    max-width: calc(100% - 40px);
    padding-left: 20px;
    padding-right: 20px;
  }
  .sec-join__step{
    margin-top: 10vw;
  }
  .sec-join__step .step__cat .step-num{
    width: 6em;
  }
  .sec-join__step .step__cat .cmnt{
    padding-left: 20px;
    width: calc(100% - 6em);
  }
  
  .sec-join__explain{
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    -o-flex-direction: column;
    flex-direction: column;
  }
  .sec-join__explain > *{
    width: 100%;
  }
  .sec-join__explain > *:first-child{
    padding-right: 0;
    padding-bottom: 5vw;
  }
  .sec-join__explain > *:last-child{
    padding-left: 0;
    padding-top: 5vw;
    border-left: none;
    border-top: 1px solid #41536E;
  }
  
  /*login index*/
  .sec-nxtlive-blc{
    padding-left: 20px;
    
  }
  .sec-nxtlive_box::before{
    width: calc(100vw - 40px);
    background-position: right -20% center;
  }
}

@media screen and (max-width:480px){
  
  body{
    font-size: 3.7vw;
  }
  header{
    height: 53px;
  }
  .header_inner{
    padding-top: 0;
    padding-bottom: 0;
    padding-left: 10px;
  }
  header h1.logo{
    max-width: 45%;
  }
  #menu-hum{
    width: 20vw;
  }
  #menu-hum > span.text{
    bottom: .5em;
  }
  .l-nav__contents{
    margin-top: 10vw;
  }
  .l-nav_link{
    margin-top: 8vw;
  }
  .l-nav___header{
    padding-top: 5vw;
  }
  .l-nav__left{
    display: none;
  }
  .l-nav__right{
    width: 100%;
  }
  .l-nav___header .logo{
    width: 30%;
  }
  
  /*key*/
  #key.main .key-inner{
    padding-right: 20px;
    background-size: calc(100% - 20px);
    justify-content: flex-end;
    background-position: top 60px right 10px;
    -webkit-transition: background .6s;
    -o-transition: background .6s;
    transition: background .6s;
  }
  .is-finish #key.main .key-inner{
    background-position: top 20px right
  }
  #key.main::before{
    padding-top: calc(100vh - 120px);
  }
  #key.main::after{
    width: calc(100% - 20px);
    border-bottom-left-radius: 35%;
    border-top-right-radius: 35%;
    height: 55%;
    transform: scale(1,1);
    transform-origin: top;
    bottom: 32%;
    left: 10px;
    transition: all .6s ease-in-out;
  }
  .is-finish #key.main::after{
    bottom: 12%;
    left: 0;
  }
  .key-cmnt{
    transform: none;
  }
  .key-cmnt .text{
    font-weight: 400;
  }
  .key-btn-wrap{
    margin-top: 10vw;
  }
  
  /*index contents
  =============================*/
  h2.sec-title span.jp{
    font-size: 2em;
  }
  #content.page-index{
    padding-bottom: 20vw;
  }
  /*about*/
  .sec-about-blc{
    padding-bottom: 25vw;
  }
  .sec-about_box .about_thumb{
    width: 100%;
    margin-left: -20px;
  }
  .sec-about_box::before{
    width: 100%;
        height: calc(100% + 30px);
  }
  .sec-about_box .about_cmnt{
    padding-left: 20px;
  }
  .about_cmnt .cmnt-in .in-title{
    font-size: 1.5em;
  }
  /*menu*/
  .sec-menu-blc{
    padding-bottom: 15vw;
  }
  .sec-menu_box .menu__head article.menu__cat{
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    -o-flex-direction: column;
    flex-direction: column;
  }
  .menu__body article.menu__cat .cmnt-wrap
  ,.menu__head article.menu__cat .cmnt-wrap{
    margin-top: 0;
  }
  article.menu__cat.top .video-thumb::after{
/*    background:linear-gradient(180deg,rgba(0,0,0,0)0,rgba(0,0,0,0)70%,rgba(0,0,0,.065) 100%),url("../image/yoshihama/video/thumb_menu01.png") no-repeat center/cover;*/
    background:url("/image/image_directly/vpalette/yoshihamatsutom/video/thumb_menu01.png") no-repeat center/cover;
  }
  article.menu__cat .video-thumb video.played{
    z-index: 1;
  }
  .menu__body article.menu__cat .video-thumb::after{
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
  }
  .menu__body article.menu__cat .video-thumb.menu02::after{
    background-image: url("/image/image_directly/vpalette/yoshihamatsutom/video/thumb_menu02.png");
  }
  .menu__body article.menu__cat .video-thumb.menu03::after{
    background-image: url("/image/image_directly/vpalette/yoshihamatsutom/video/thumb_menu03.png");
  }
  .menu__body article.menu__cat .video-thumb.menu04::after{
    background-image: url("/image/image_directly/vpalette/yoshihamatsutom/video/thumb_menu04.png");
  }
  .menu__body article.menu__cat .video-thumb.menu05::after{
    background-image: url("/image/image_directly/vpalette/yoshihamatsutom/video/thumb_menu05.png");
  }
  .menu__body article.menu__cat .video-thumb.menu06::after{
    background-image: url("/image/image_directly/vpalette/yoshihamatsutom/video/thumb_menu06.png");
  }
  .menu__body article.menu__cat .video-thumb.menu07::after{
    background-image: url("/image/image_directly/vpalette/yoshihamatsutom/video/thumb_menu07.png");
  }
  .sec-menu_box .menu__head article.menu__cat .menu-thumb, .sec-menu_box .menu__head article.menu__cat .menu-cmnt{
    width: 100%;
  }
  .menu__head article.menu__cat .menu-cmnt::before{
    content: none;
  }
  .sec-menu_box .menu__head article.menu__cat .menu-cmnt {
/*
    margin-top: -2px;
    z-index: 3;
*/
  }
  .sec-menu_box .menu__head article.menu__cat .menu-cmnt .cmnt-wrap{
    padding: 1em 0 2em;
    width: calc(100% - 40px);
    margin: 0 auto;
    background: none;
/*    margin: -2em auto 0;*/
  }
  .sec-menu_box .menu__head article.menu__cat .menu-cmnt h3{
    padding: 0;
    margin-top: 0;
  }
  article.menu__cat h3{
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    justify-content: center;
  }
  .menu__body article.menu__cat{
    width: 100%;
  }
  .menu__body article:nth-child(even){
    transform: none;
  }
  .sec-menu_box .menu__body > * + *{
    margin-top: 20px;
  }
  /*info - news*/
  .acv-news__list article{
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    -o-flex-direction: column;
    flex-direction: column;
  }
  .acv-news__list article h3{
    padding-top: 1em;
    padding-left: 0;
  }
  .acv-news__list article > p + h3::before{
    content: none;
  }
  .acv-news__list article .news-date{
    width: 100%;
    padding: 2px 0 0 1em;
    border-left: 1px solid #707070;
  }
  .sec-info_box > .btn-wrap{
    justify-content: center;
  }
  /*join*/
  .sec-join_box h3.step{
    font-size: 1.5em;
  }
  .sec-join__step > * + *{
    margin-top: 8vw;
  }
  .sec-join__step .step__cat{
    padding-top: 1em;
  }
  .sec-join__step .step__cat .step-num{
    position: absolute;
    width: 4.5em;
    height: 4.5em;
    top: -.75em;
    left: -.5em;
    border: 1px solid #314462;
  }
  .sec-join__step .step__cat .cmnt{
    width: 100%;
    border-left: none;
  }
  .step__cat .cmnt h4{
    text-align: center;
  }
  .step__cat .cmnt p.in-text{
    padding-top: 1em;
  }
  
  /*footer*/
  
  footer{
    padding-top: 10vw;
    padding-bottom: 20px;
  }
  .footer-inner{
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    -o-flex-direction: column;
    flex-direction: column;
    -ms-align-items: center;
    align-items: center;
  }
  .foot_nav{
    width: 100%;
  }
  .foot_nav .btn-wrap{
    display: none;
  }
  .foot_logo{
    width: 75%;
    margin-right: auto;
  }

  .foot_nav .copy{
    margin-top: 10vw;
    text-align: right;
    width: 100%;
  }
  
  /*login index*/
  .sec-nxtlive_box{
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    -o-flex-direction: column;
    flex-direction: column;
  }
  .menu_livethumb{
    width: 100%;
    max-width: none;
    margin-left: -20px;
  }
  .menu_livecmnt{
    width: calc(100% - 40px);
    margin-left: auto;
    padding-top: 5vw;
  }
  .menu_livecmnt .cmnt__inner{
    padding: 0;
  }
  .menu_livecmnt .cmnt__inner::before{
    content: none;
  }
  .sec-nxtlive_box::before{
    width: calc(100vw - 20px);
    height: calc(100% + 5vw);
    background-size: auto 40%;
    background-position: bottom right -25%;
  }
  
  
}
