/* 共通スタイル */


.grpbook_wrapper .w300px
{
    width:300px;
    max-width:100%;
}
.grpbook_wrapper .w400px
{
    width:400px;
    max-width:100%;
}

.grpbook_wrapper .tablet_only
{
    display:none!important;
}
.grpbook_wrapper .sp_only
{
    display:none!important;
}

@media screen and (max-width:1028px)
{
    .grpbook_wrapper .tablet_only
    {
        display:initial!important;
    }
    
    .grpbook_wrapper .tablet_only.table_row
    {
        display:table-row!important;
    }
    
    .grpbook_wrapper .tablet_hide
    {
        display:none!important;
    }

}

@media screen and (max-width:767px)
{
    .grpbook_wrapper .tablet_only
    {
        display:none!important;
    }
    .grpbook_wrapper .sp_only
    {
        display:initial!important;
    }
    
    .grpbook_wrapper .sp_only.table_row
    {
        display:table-row!important;
    }
    
    .grpbook_wrapper .sp_hide
    {
        display:none!important;
    }

    .grpbook_wrapper .sp_small_text
    {
        font-size:90%;
    }
    
    .grpbook_wrapper .sp_width_60px
    {
        width:60px!important;
    }
}


.grpbook_week_table table
{
    width:100%;
    border:none;
    border-collapse:collapse;
    /*font-family: "Oswald", Sans-serif;*/
    font-size:16px;
    user-select:none;
}

.grpbook_week_table table.preparing
{
    opacity:0;
}

.grpbook_week_table table thead th
{
    background-color:transparent;
    border:1px solid #d3d3d3!important;
    text-align:center;
    vertical-align:bottom;
    height:2em;
    padding:5px 2px 7px 2px!important;
    font-weight:normal;
    line-height:1.2em;
}

.grpbook_week_table table thead th.no_border
{
    border:none!important;
}

.grpbook_week_table table thead th.month_column
{
    padding-top:0.8em!important;
    padding-bottom:0.8em!important;
}


.grpbook_week_table table thead th.date_column
{
    width:6.5%;
}

.grpbook_week_table table thead th.date_column.saturday
{
    background-color:#e4ecf7!important;
    color:#0f69b1!important;
}

.grpbook_week_table table thead th.date_column.holiday
{
    background-color:#ffdada!important;
    color:#c90720!important;
}



.grpbook_week_table table tbody td
{
    background-color:#f5f5f5!important;
    border:1px solid #d3d3d3!important;
    text-align:center;
    vertical-align:middle;
    height:2.2em;
    padding:0;
    color:#000;
    /*font-weight:bold;*/
    width:6.5%;
    white-space:nowrap;
   
}

.grpbook_week_table table tbody td.no_border
{
    border:none!important;
}

.grpbook_week_table table tbody tr:hover td
{
    background-color:#f5f5f5!important;
}

.grpbook_week_table table tfoot
{
    display:none;
}



.grpbook_week_table table tbody td.unit_title
{
    font-weight:normal;
    background-color:#dbdbdb!important;
    color:inherit;
    width:65px;
}

.grpbook_week_table table tbody td.unit_title.bold
{
    font-weight:bold;
}

.grpbook_week_table table tbody tr:hover td.unit_title
{
    background-color:#dbdbdb!important;
}


.grpbook_week_table table tbody td .two_price
{
    display:flex;
    flex-wrap:nowrap;
    justify-content: space-evenly;
}

.grpbook_week_table table tbody td .two_price > div
{
    text-align:center;
}

.grpbook_week_table table tbody td .two_price > div label
{
    display:block;
    font-size:12px;
    margin:0px auto;
}

.grpbook_week_table table tbody td .two_price > div .price
{
}




.grpbook_week_table table tbody td.can_book
{
    cursor:pointer;
    transition:background-color 0.1s 0s linear;
    font-family:serif;
    font-weight:bold;
    background-color:#fff!important;
}

.grpbook_week_table table tbody tr:hover td.can_book
{
    background-color:#fff!important;
}

.grpbook_week_table table tbody td.unabled,
.grpbook_week_table table tbody tr:hover td.unabled
{
    background-color:#f5f5f5!important;
}


.grpbook_week_table table tbody tr td.can_book:hover
{
    background-color:#e8e8e8!important;
};



.grpbook_week_table table tbody td.cannot_book,
.grpbook_week_table table tbody td.force_cannot_book
{
    pointer-events:none;
}

.grpbook_week_table table tbody td.can_book .cannot_book
{
    display:none;
}

.grpbook_week_table table tbody td.cannot_book .can_book,
.grpbook_week_table table tbody td.force_cannot_book .can_book
{
    display:none;
}
.grpbook_week_table table tbody td.cannot_book .cannot_book,
.grpbook_week_table table tbody td.force_cannot_book .cannot_book
{
    display:inline;
}

.grpbook_week_table table tbody td.can_book:hover
{
    background-color:#dbdbdb!important;

}

.grpbook_week_table table tbody td.can_booking_count
{
    /*font-family: "Oswald", Sans-serif;*/
    font-weight:normal;
}

.grpbook_week_table table tbody td.selected,
.grpbook_week_table table tbody tr:hover td.selected
{
    
    background-image:url(../image/check_mark.png);
    background-repeat:no-repeat;
    background-size:8px;
    background-position:left 8px top 50%;
    background-color:#dbdbdb!important;
    
}


.grpbook_week_table table.lock
{
    opacity:0.4;
    pointer-events:none;
}

.grpbook_week_table table tr.sp_month
{
    display:none;
}

@media screen and (max-width:1024px) and (min-width:768px) {
    /* タブレット */
    .grpbook_week_table
    {
        /*padding-right:10px;
        padding-left:10px;*/
    }
    
    .grpbook_week_table table tbody td .two_price > div label
    {
        font-size:10px;
        margin:2px auto -3px auto;
    }

    .grpbook_week_table table tbody td .two_price > div .price
    {
        font-size:12px;
    }
    
    
    
}

@media screen and (max-width:767px) {
    
    /* スマホ */
    .grpbook_week_table
    {
        /*padding-right:10px;
        padding-left:10px;*/
    }
    
    .grpbook_week_table table thead th.date_column
    {
        width:12%;
        font-size:14px;
    }
    
    .grpbook_week_table table thead th.month_column
    {
        font-size:14px;
    }
    
    .grpbook_week_table table tr.sp_month
    {
        display:table-row;
    }
    
    .grpbook_week_table table tr.sp_month th:not(.target)
    {
        display:none;
    }
    
    .grpbook_week_table table tbody td
    {
        width:12%;
    }    
    .grpbook_week_table table tbody td.unit_title
    {
        width:50px;
        font-size:14px;
    }
    
    .grpbook_week_table table .date_column:not(.target)
    {
        display:none;
    }
    
    
    .grpbook_week_table table tfoot {
        display:table-footer-group;
    }
    
    .grpbook_week_table table tfoot th
    {
        background-color:transparent;
        border-bottom:none!important;
        border-left:none!important;
        border-right:1px solid #fff;
        border-top:1px solid #fff;
        
        text-align:center;
        vertical-align:top;
        height:4em;
        font-weight:normal;
    }

    .grpbook_week_table table tfoot td
    {
        background-color:transparent!important;
        border-bottom:none!important;
        border-left:none!important;
        border-right:1px solid #fff;
        border-top:1px solid #fff;
        
        text-align:center;
        vertical-align:middle;
        height:3em;
        padding:0;
        /*font-weight:bold;*/
        
    }
    
}


.grpbook_week_table .navigation_buttons
{
    display:flex;
    justify-content:space-between;
    flex-wrap:nowrap;
    width:100%;
    margin-bottom:20px;
    margin-top:20px;
    font-weight:bold;
}

.grpbook_week_table .navigation_buttons a
{
    cursor:pointer;
}


.grpbook_week_table .navigation_buttons a .arrow_icon
{
    display:inline-block;
    margin-top:-3px;
    width:22px;
    height:22px;
    line-height:19px;
    text-align:center;
    background-color:#fff;
    border:2px solid #BBB;
    border-radius:3px;
    vertical-align:middle;
    font-weight:normal;
}

.grpbook_week_table .navigation_buttons a.previous .arrow_icon
{
    margin-right:8px;
    padding-right:1px;
}
.grpbook_week_table .navigation_buttons a.next .arrow_icon
{
    margin-left:8px;
    padding-left:2px;
}

.grpbook_week_table .navigation_buttons a .arrow_icon::after
{
    font-size:16px;
    font-family:FontAwesome;
}

.grpbook_week_table .navigation_buttons a.previous .arrow_icon::after
{
    content:'\f0d9';

}
.grpbook_week_table .navigation_buttons a.next .arrow_icon::after
{
    content:'\f0da';
}

