@charset "UTF-8";

/** 共通項目 **/
/* --- webFont --- */
@import url(https://fonts.googleapis.com/earlyaccess/notosansjp.css);

/*背景画像*/
body{
    background-color: #363636;
    font-family: "Noto Sans Japanese",sans-serif;
    font-size: 16px;
    color: #000;
}

@media screen and (min-width:1370px){
    #app{
        background: url("../img/ib_background_img_2020-2021.jpg") 0 0 no-repeat;
        background-position: center bottom;
        background-size: cover;
        background-attachment: fixed;
        height: auto;
        width: auto;
    }
}
#app{
    background:none;
}
body::before{
    content:"";
    display:block;
    position:fixed;
    top:0;
    left:0;
    z-index:-1;
    width:100%;
    height:100vh;
    background: url("../img/ib_background_img_2020-2021.jpg") center bottom/cover no-repeat; 
    -webkit-background-size:cover;
}


body::after{
    content: "";
    display: block;
}

.col-md-12{
    padding-left: 8px;
    padding-right: 8px;
}

.page_margin{
    margin-top: 80px;
    margin-bottom: 80px;
}

.mg_top{
    margin-top: 30px;
}

/* ヘッダー関連スタイル */
/* ヘッダー黒背景 */

.navbar-default .navbar-nav>li>a{
    padding: 10px 13px;
    min-width: 85px;
    color: rgb(194, 194, 194);
    border: 1px solid #000;
    text-align: center;
    font-weight: 600;
}

.navbar-default .navbar-nav>li>a:hover{
    border: 1px solid #e67a00;
    color: rgb(194, 194, 194);
}

.navbar-fixed-top .navbar-collapse, .pre-scrollable {
    max-height: 350px;
}

.header-black{
    background-color: #000;
    padding: 12px;
    border-bottom: none;
    font-size: 11.4px;
}

/* アイスバックスロゴ */
.ib_logo{
    width: 87px;
    float: left;
    margin: 5px -5px;
}

/* ページ内容関連スタイル */
/* ページタイトルエリア */
.panel-heading{
    padding: 10px 0px 50px 0px;
}

.panel-body{
    padding: 3% 4%;
}

.title-heading{
    padding-bottom: 1%;
    text-align: center;
}

.site_title{
    max-width: 100%;
    min-width: 50%;
}

.page_title{
    text-align: center;
}

.title_txt{
    text-align: center;
}

/*白背景パネル*/
.panel{
    border-radius: 0;
    background-color: rgba(255, 255, 255, 0.9);
}

/**ボタン設定**/
/*デフォルトボタン1*/
.log-btn-orange{
    color: #fff;
    background-color: #ff8c00;
    border-color: #e67a00;
    border-radius: 0;
    font-size: 100%;
    font-weight: bold;
    border-radius: 5px;
}

.log-btn-orange:hover{
    color: #fff;
    background-color: #ff6600;
    border-radius: 5px;
}

/*デフォルトボタン2*/
.btn-orange{
    color: #fff;
    background-color: #ff8c00;
    border-radius: 5px;
    font-size: 100%;
    font-weight: bold;
}

.btn-orange:hover{
    color: #fff;
    background-color: #ff6600;
    border-radius: 5px;
}

/*非活性ボタン*/
.btn-gray{
    color: #000;
    background-color: #b8b8b8;
    border-radius: 5px;
    font-size: 100%;
    font-weight: bold;
}

.btn-gray:hover{
    color: #000;
    border-radius: 5px;
    border-radius: 5px;
}

/*非選択ボタン*/
.btn-off{
    color: #fff;
    background-color: #ffcc91;
    border-radius: 5px;
    font-size: 100%;
    font-weight: bold;
}

.btn-off:hover{
    color: #fff;
    background-color: #ff6600;
    border-radius: 5px;
}

/*successボタン*/
.btn-success{
    color: #fff;
    background-color: #2eb629;
    border-radius: 5px;
    font-size: 100%;
    font-weight: bold;
    margin-right: 10px;
    margin-bottom: 10px;
}

.btn-success:hover{
    color: #fff;
    background-color: #13860d;
    /* border-color: #10700b; */
    border-radius: 5px;
}

.btn_area{
    margin-top: 15px;
}

/* containerのmargin-bottom設定 */
.c_btm{
    margin-bottom: 20px;
}


h3{
    font-weight: bold;
}

h2{
    font-weight: bold;
}

/*赤文字文章*/
.txt_red{
    color: #e65400;
    font-weight: bold;
    margin-bottom: 15px;
}

.Required{
    width: 40px;
    margin-bottom: 10px;
}

.update_txt{
    left: 15px;
}




/**
ログインページ
**/
/*ボタンサイズ調整*/
.log_btn{
    width: 100%;
}

/*お忘れですかリンク*/
.pass_forget{
    text-align: center;
}

/*下余白削除*/
.btm_none{
    margin-bottom: 0;
}

/*左右余白削除*/
.pad_none{
    padding-left: 0;
    padding-right: 0;
}



/*下余白追加*/
.form-horizontal .checkbox{
    margin-bottom: 15px;
}

.mg_top_log{
    margin-top: 45px;
}

/** ホーム画面 **/
.h_point{
    margin-top: 10px;
    text-align: center;
}

.koumoku_title{
    background: url("../img/logo_ib_translucent.png") 0 0 no-repeat;
    background-position-y: 20%;
    background-position-x: 50%;
    background-color: #2b1414;
    font-weight: bold;
    text-align: center;
    color: #fff;
    padding: 5px;
    font-size: 19px;
}

.kihon_title{
    padding: 0 0;
    text-align: center;
}

.welcome{
    width: 100%;
}


/**
アクティビティ
**/

/*コンテンツエリア*/
.contents_area{
    margin-bottom: 10px;
}

/*来場履歴td設定*/
.attend_td{
    width: 25%;
}

/*入会履歴td設定*/
.admission_td{
    width: 25%;
}

/*購入履歴td設定*/
.purchased_td{
    width: 30%;
}

.purchased_kounyuu_td{
    width: 50px;
}

/*tr設定*/
.tr_height{
    height: 40px;
}



/**
QRコードページ 
**/

.qr_code{
    border: 0.5px solid #ddd;
    text-align: center;
    padding: 0px 0px 0px 0px;
    background-color: #fff;
    height: 100%;
    margin-bottom: 50px;
}

.qr_txt{
    background: url("../img/logo_ib_translucent.png") 0 0 no-repeat;
    background-position-x: 50%;
    background-position-y: 15%;
}

.id_txt{
    margin-top: 15px;
    margin-bottom: 15px;
}

/*grade別背景色*/
.bg_kids{
    background-color: #65b920;
}

.bg_regular{
    background-color: #ff8c00;
}

.bg_silver{
    background-color: #979797;
}

.bg_gold{
    background-color: #e2ad5d;
}

.bg_platinum{
    background-color: #185099;
}

/*QRコード画像*/
.qr_img{
    max-width: 90%;
}

.data{
    padding-left: 0;
    padding-right: 0;
}

.radio-inline{
    margin-left: 10px;
}

.qr_titletxt{
    width: 180px;
    margin: 15px 0;
}

/** ポイント確認・アクティビティ 共通メニュータブスタイル **/
.nav-tabs>li{
    width: 33.32%;
    text-align: center;
    font-size: 100%;
}

.nav-tabs>li.active>a, .nav-tabs>li.active>a:focus, .nav-tabs>li.active>a:hover{
    color: #ff8c00;
    background-color: #fff;
    font-weight: bold;
    border-bottom: 1px solid #fff;

}
.nav-tabs>li>a{
    color: rgb(102, 37, 0);
    background-color:  #ffdec3;
    font-weight: bold;
    border-bottom: 1px solid #ddd;

}

.nav-tabs>li>a:hover{
    color: rgb(243, 89, 0);
    background-color:  #ffdec3;
    font-weight: bold;
    border-color: #ffdec3;
    border-bottom: 1px solid #ddd;

}

.nav-tabs>li>a{
    margin-right: 0;
}

.nav>li>a{
    padding: 6px;
}


/** ポイント確認・アクティビティ・会員登録情報 共通テーブルスタイル **/

.table{
    background-color: #fff;
    margin-bottom: 0;
 }

 .table>tbody>tr>td{
    border-top: none;
    vertical-align: middle;
    word-break: break-all;
 }

 tr{
     border-bottom: 1px solid #ddd;
 }


/** tdセルの背景色 **/
.bg_color{
    background-color: #fff;
}

/** bootstrap準拠のスタイル内容の無効化 **/
.table-responsive{
    border: none;

}

.table>tbody+tbody{
    border-top: none;
}

/** テーブル枠線が二重になってしまう問題の解決 **/
.tbl_border{
    border: 1px solid #ddd;
    border-bottom: none;
}

/** テーブルの上枠線削除 **/
.tab_table{
    border-top: none;
}

/**
 ポイント確認（付与履歴）
**/

/*td設定*/
.granted_td{
    width: 35%;
}

/** ポイント確認（使用履歴） **/
/*td設定*/
.used_td{
    width: 50%;
}

.tbl_title{
    font-weight: bold;
    font-size: 90%;
}


/**
基本登録情報
**/

/*basic内各項目テーブルタイトル*/
.td_title{
    width: 50%;
}

.basic_td_txt{
   width: 30%;
}

.set_area{
    border: 0.5px solid #c5c5c5;
    padding: 20px;
    margin-bottom: 20px;
    background-color: #fff;
}

.kihon_txt{
    width: 100%;
    padding: 5px;
    height: 40px;
}

.kihon_txtarea{
    width: 100%;
    padding: 5px;
    resize: none;
}

.k_txt_yohaku{
    margin-top: 9px;
}

.admission_pad_n{
    padding: 0;
}

.row_bottom{
    margin-bottom: 10px;
}


.basic_p{
    margin: 20px 0;
    text-align: center;
}


.grade_img{
    width: 100%;
    padding: 0;
}

.basic_sub{
    font-size: 15px;
    margin-bottom: 20px;
}

.autopayment-btn
{
    margin: 0 0 0 100px;
}

.auto-payment .table>tbody>tr>td
{
    white-space: nowrap;
}
/**
エラーページ
**/

.error_img{
    width: 30%;
}

.error_title{
    color: #ff8c00;
    text-align: center;
    margin-bottom: 20px;
}

.error_txt{
    text-align: center;
    margin-bottom: 20px;
    font-weight: bold;
    font-size: 17px;
}

select.input-sm{
    height: 40px;
}

.mg_btm{
   margin-bottom: 20px;
}

/**
応援メッセージ
**/

.cheering_img{
    width: 100%;
}

.cheering_txt{
    padding: 20px;
    background-color: #fff;
    font-size: 15px;
    font-weight: bold;
    text-align: center;
    border: 1px solid #ddd;
}

.coming_soon_img{
    width: 100%;
    height: 100%;
}

/* フッター */
.footer{
    text-align: center;
    font-size: 11.4px;
    line-height: 20px;
    color : rgb(194, 194, 194);
}
.footer>a{
    color: #ff8c00;
}

/* 利用規約 */
.terms_of_service{
    margin: 20px;
    font-size: 14px;
}

ol ol{
    list-style-type: square;
}

.terms_of_service h1{
    font-size: 30px;
    font-weight: 700;
}
.terms_of_service h2{
    font-size: 20px;
}
.terms_of_service .page_title{
    margin-bottom: 15px;
}

.terms_of_service .sign{
    text-align: right;
}

.text-warning{
    color: #5079c4;
}
.text-warning , .text-danger
{
    font-weight: 600;
}
ul.rfc_example li::before{
    content: '（例）';
}

.rfc_attn li{
    list-style-type: none;
}

.logo_anime{
    width: 60px;
    margin-bottom: 30px;
    animation: logo_anime 5s linear 0s infinite normal none running;
  }

  @keyframes logo_anime {
      0%{
        transform: rotateY(0deg);
      }
      100%{
        transform: rotateY(360deg);
      }
  }

/* 自動継続 */
.auto-payment-col{
    padding-left: 0px;
    padding-right: 0px;
}
.auto-payment-row{
    border-top: none;
    vertical-align: middle;
    word-break: break-all;
    padding: 8px;
    line-height: 2.0;
    background-color: #fff;
    border: 1px solid #ddd;
    margin-left: 0px;
    white-space: nowrap;
}
.auto-payment-btn{
    color: #fff;
    background-color: #ff8c00;
}
.auto-payment-btn:hover{
    color: #fff;
    background-color: #ff6600;
}
/* 自動継続ボタンの非活性状態 */
.auto-payment-disable-btn {
   color: #fff;
   background-color: #b8b8b8;
   cursor: default;
}
.auto-payment-disable-btn:hover{
    color: #fff;
    background-color: #b8b8b8;
}

.d-flex-space-between{
    display: flex;
    justify-content: space-between;
}

/* ポイントの使い方バナーについて */
.howto-use-point{
    margin: 15px 0;
}

/* 壁紙ダウンロード*/
.wallpaper_no_authority {
    position:absolute;
    top:0;
    left:0;
    height:100%;
    width:100%;
    background-color:rgba(0, 0, 0, 0.5);
    z-index:2;
    display: flex;
    align-items: center;
    justify-content: center;
}
.white_span{
    color:whitesmoke;
}
.wallpaper_img_title {
    border: 1px solid rgb(194, 194, 194);
    min-height: 20px;
    padding: 19px;
    margin-bottom: 20px;
    border-radius: 4px;
}
.thumbnail_img_box {
    width: 100%; 
    height:500px;
}
.thumbnail_img {
    width: 100%; 
    height: 100%;
    object-fit: scale-down;
    object-position: 50% 50%;
}
.wallpaper_banner_img {
    width: 100%;
}
.row-eq-height {
    display: flex;
    flex-wrap: wrap;
}

/*navbarが表示崩れを起こす為、追加*/
@media (max-width: 991px) {
    .navbar-header {
        float: none;
    }
    .navbar-toggle {
        display: block;
    }
    .navbar-collapse {
        border-top: 1px solid transparent;
        box-shadow: inset 0 1px 0 rgba(255,255,255,0.1);
    }
    .navbar-collapse.collapse {
        display: none!important;
    }
    .navbar-nav {
        float: none!important;
        margin: 7.5px -15px;
    }
    .navbar-nav>li {
        float: none;
    }
    .navbar-nav>li>a {
        padding-top: 10px;
        padding-bottom: 10px;
    }
    .navbar-text {
        float: none;
        margin: 15px 0;
    }
    /* since 3.1.0 */
    .navbar-collapse.collapse.in { 
        display: block!important;
    }
    .collapsing {
        overflow: hidden!important;
    }
}