@charset "UTF-8";

/*
rgb(48,226,255) #2fe2ff blue
*/
:root{
    --color_w:#Fff;
    --color_b:#000;
    --color_gray:#a8a194;
    --color_gray2:#bababb;
    --color_pink:#da9f9c;
    --color_ore:#ffe7bd;
    --color_link:#cc8900;
}
/* STARRY  ------------------------------------*/
/* STARRY */
/**/
button#btn.stry-ec02-item-button{
    border: 1px solid var(--color_gray2) !important;
}

/* 12ヶ月コースボタン */
.stry-course-select-table button{
height: 40px;
line-height: 40px;
background:var(--color_w);
border:solid var(--color_pink) 1px;}
.fc-f button{
height: 40px;
line-height: 40px;
}
/* カード情報入力 */
#div_entry09 input,#div_entry09 select{
margin: 10px auto;
padding: 5px;
}
#div_entry09 select{
width: 100px;
}
/*　決済ボタン、ページ全体　*/
#div_item_ec04 input, #div_item_ec04 option, #div_item_ec04 select{
height: 40px;
}
button.stry-login01-button{
    border: 1px solid #fff !important;
}

/* 共通  ------------------------------------*/
.fc-site,.fc-site h1,.fc-site h2,.fc-site h3,.fc-site h4,.fc-site h5, .fc-site h6{
    font-family: 'Zen Kaku Gothic Antique', sans-serif;
}
.color-pink,.color-pink a{
    color:var(--color_pink) !important;}
.color-w,.color-w a{
    color:var(--color_w) !important;}
.color-gray,.color-gray a{
    color:var(--color_gray) !important;}
.back-pink{
    background-color: var(--color_pink);}
.back-ore{
    background-color: var(--color_ore);}
.back-w{
    background-color: var(--color_w);}
.font-small{
    font-size: 90%;}
.font-bold{
    font-weight: bold;}
.text-c{
    text-align: center;}
.text-r{
    text-align: right;}
.text-line13{
    line-height: 1.3;
}
.shadow{
    box-shadow: 2px 2px 2px 2px rgba(0, 0, 0, .2);    
}
a img:hover{
    filter: brightness(115%);
    transition: 0.5s;}
/* display  ------------------------------------*/
.pc_only{
    display: block;
}
.sp_only{
    display: none;
}

/* Flex  ------------------------------------*/
.flexwrap{
 display: -webkit-flex;
 display: flex;
 flex-wrap: wrap;
 -webkit-flex-wrap: wrap;
}
.flexnowrap{
 display: -webkit-flex;
 display: flex;
 flex-wrap: nowrap;
 -webkit-flex-wrap: nowrap;
}
.JCfs{
 justify-content: flex-start;
 -webkit-justify-content: flex-start;
}
.JCfe{
 justify-content: flex-end;
 -webkit-justify-content: flex-end;
}
.JCc{
 justify-content: center;
 -webkit-justify-content: center;
}
.JCsb{
 justify-content: space-between;
 -webkit-justify-content: space-between;
}
.AIc{
    align-items: center;
    -webkit-align-items: center;
}
.mt10{
    margin-top: 1em;
}
.mt20{
    margin-top: 2em;
}
.mt30{
    margin-top: 3em;
}
.mt50{
    margin-top: 5em;
}
.mb10{
    margin-bottom: 1em;
}
.mb20{
    margin-bottom: 2em;
}
.mb30{
    margin-bottom: 3em;
}
.mb50{
    margin-bottom: 5em;
}
.wp-pagenavi{
    width: 100%;
    margin-top: 2em;
    margin-bottom: 1em;
}
.wp-pagenavi a, .wp-pagenavi span{
    border: none !important;
}
.wp-pagenavi a:hover, .wp-pagenavi span.current{
    border: none;
    background: var(--color_ore);
}
.fc-site .wp-pagenavi a{
    display: initial !important;
}
/* 公式サイト*/
figure.wp-block-image{
    margin: 0 !important;
}

/* FC用ヘッダー　*/
.fc-logo{
    max-width: 1024px;
    margin: auto;
}
.fc-logo img{
    position: absolute;
    width: 200px;
    height: auto;
    top: 80px;
}

.stry-ec02-breadcrumbs{
    display: none;
}

/* 公式サイト FCログインMENU  */
/*検索サーチ用アイコン*/
.search-toggle{
    right: 0 !important;
}
#menu-primary-items{
    width: 100%;
}
ul#menu-login_menu-1,
ul#menu-fc_menu,
ul#menu-login_menu{
    box-sizing: border-box;
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    align-items: center;
    -webkit-align-items: center;
    padding: 0;
}
ul#menu-login_menu-1,
ul#menu-login_menu{
    justify-content: flex-start;
    -webkit-justify-content: flex-start;    
}
ul#menu-login_menu-1 li,
ul#menu-login_menu li{
    margin: 0 5px;
    list-style: none;
    width: 75px;
    height: 30px;  
    line-height: 30px;
    text-align: center;
    font-size: 14px;
}
ul#menu-login_menu-1 li a,
ul#menu-fc_menu li a,
ul#menu-login_menu li a{
    display: block;
    font-weight: bold;
}
.login_menu{
    position: absolute;
    top: 0;
}

/* FCのみのメニュー */
ul#menu-fc_menu{
    z-index: 999;
    margin: auto;
    max-width: 1024px;
    justify-content: flex-end;
    -webkit-justify-content: flex-end;        
}
ul#menu-fc_menu li{
    margin: 0 10px;
    list-style: none;   
    height: 40px;
    line-height: 40px;
}
ul#menu-fc_menu li a{
    color: var(--color_gray);
    font-size: 90%;
}
ul#menu-fc_menu li:hover{
    background: var(--color_w);
    transition: 1s;
}
ul#menu-login_menu-1 li:hover, ul#menu-login_menu li:hover{
    background: var(--color_w) !important;
    border-bottom: 2px solid var(--color_pink);
    transition: 1s;
    color:var(--color_gray) !important;
}
ul#menu-login_menu-1 li a:hover, ul#menu-login_menu li a:hover{
    color:var(--color_gray) !important;    
}


/* FC PAGE  ------------------------------------*/
.fc-site #primary{
    margin-top: 5em !important;
}
.fc-site #menu-login_menu{
    padding-right: 60px;
}
.fc-site .wide-container:after{
    content: unset;
}
.fc-site h1{
    margin-bottom: 2em;
    text-align: center;
}
/* MAIN SITE誘導*/
.fc-site h1.mainsite{
    margin-bottom: 0;
    font-size: 90%;
}
.fc-site #content{
    margin-bottom: 3em;
}
.fc-title h2{
    font-size: 120%;
}
.fc-title img{
    width: 50%;
    height: auto;
}
.fc-contents-entry{
    margin: 1em 10px 5em;
    background: var(--color_gray2);
    color: var(--color_w);
    height: 40px;
    line-height: 40px;
}
.fc-contents-entry a{
    display: block;
    color: var(--color_w) !important;    
}
.fc-contents-entry:hover,.fc-contents-entry a:hover{
    background: var(--color_ore);
    color: var(--color_gray) !important;
    transition: 1s;
}
/*　ログイン時　*/
.fc-contents-in div{
    width: calc((100% - 80px)/3);
    text-align: center;
    margin: 10px;
}
.fc-contents-in div img{
    width: 100%;
    height: auto;
}

/* 非ログイン時 */
.fc-contents div{
    width: calc((100% - 80px)/4);
    text-align: center;
    margin: 10px;
}
.fc-contents div img{
    width: 100%;
    height: auto;
}

/* FC アーカイブ　--------------------*/
/*　サムネイルアリのアーカイブ　*/
.fc-image-box{
    width: calc((100% - 80px)/4);
    margin: 0 10px 1em;
    line-height: 1;
}
.fc-image-box h2{
    font-size: 16px;
    margin-bottom: 10px;
    line-height: 1.5;
}
/*サムネイルMOVIE用*/
.thum-1 img{
    aspect-ratio: 16 / 9;
    padding: 5px;
    border-radius: 10px;
    object-fit: cover;
    width: 100%;
}
/*サムネイル正方形*/
.thum-2 img{
    aspect-ratio: 1 / 1;
    padding: 5px;
    border-radius: 10px;
    object-fit: contain;
    background: #fff;
}
/*サムネイルPHOTO用*/
.thum-3 img{
    aspect-ratio: 4 / 3;
    padding: 5px;
    border-radius: 10px;
    object-fit: cover;
    width: 100%;
}

/*　FC　シングルページ　--------------------*/
.fc-image-box-single iframe{
    aspect-ratio: 16 / 9;        
    width: 100%;
    height: auto;    
}
/* 写真用*/
.photo-only{
 display: -webkit-flex;
 display: flex;
 flex-wrap: wrap;
 -webkit-flex-wrap: wrap;    
 justify-content: flex-start;
 -webkit-justify-content: flex-start;    
}
.photo-only img{
    width: auto;
    margin: 5px;
}
.photo-only figure{
    margin: 10px;
}
.photo-only .wp-caption-text{
    font-style: normal !important;
    font-size: 12px !important;
}
.back-btn{
    filter: invert(39%) sepia(1%) saturate(2267%) hue-rotate(333deg) brightness(96%) contrast(81%);
}
.icon-cat img,
.back-btn img{
    vertical-align: middle;    
}
.list-btn{
    width: 100%;
    height: 30px;
    line-height: 30px;
}
.list-btn a{
    display: block;
}
.list-btn:hover{
    background: var(--color_gray2);
    transition: 1s;    
    color: var(--color_w) !important;
}
.list-btn a:hover{
    color: var(--color_w) !important;
    transition: 0.7s;    
}


/* FC GALLLERY　--------------------*/
.icon-cat{
    padding-right: 10px;
    filter: invert(89%) sepia(0%) saturate(7494%) hue-rotate(22deg) brightness(84%) contrast(93%);
}
/* FC RADIO　--------------------*/
.radio-f a{
    display: block;
}
.new-radio-box{
    padding: 30px 30px 2em;
    border:1px solid var(--color_pink);
    border-radius: 10px;
}
.radio-box{
    border-left:5px solid var(--color_gray);    
    padding-left: 10px;
}
.new-radio-box h2,.radio-box h2{
    margin: 0 0 15px;
    padding-bottom: 5px;
}
.radio-box:hover{
    background: var(--color_ore);
    transition: 1s;
}
/* instagram Live　--------------------*/
.insta-form{
    border: 1px solid var(--color_ore);
    padding: 15px;
    line-height: 1.5;
}
.insta-form input{
    width: 100%;
}


/* Membership card　--------------------*/
.membercard-f{
    position: relative;
}
.member-info{
    position: absolute;
}
.info-name{
    top: 60%;
    left: 8%;
    font-size: 46px;
}
.info-number{
    bottom: 17%;
    left: 8%;  
    font-size: 36px;
}
.info-date{
    bottom: 10%;
    left: 8%;   
    font-size: 24px;
}

/* Footer固定  ------------------------------------*/
#page {
      display: flex;
      flex-direction: column;
      min-height: 100vh;
}
footer.fc-footer {
    margin-top: auto;
    background-color: var(--color_gray2) !important;
}
.fc-footer div{
    padding: 20px 0;
}
.official-link{
    background-color: #d4dbdf;    
    width: 100%;
}
.official-link p{
    margin: auto;
    height: 35px;
    line-height: 35px;
    width: 50%;
    background-color: #fff;
    box-shadow: 5px 5px 0 var(--color_pink);
}
.official-link p:hover{
    color: var(--color_w) !important;
    background-color: var(--color_gray2);        
    transition: 1s;
}
.official-link a{
    display: block;
    font-size: 140%;
}
.official-link a:hover{
    color: var(--color_w) !important;
    transition: 0.7s;
}


@media screen and (max-width: 320px) {
      
}
