/* プラグイン用スタイル */
#grpbook_wrapper
{
    visibility:hidden;
    opacity:0;
    margin:0px auto 0 auto;
    width:100%;
    max-width:100%;
    color:#333333;
    font-family:"Helvetica", "Hiragino Kaku Gothic Pro","Hiragino Sans", "arial", "Meiryo", "MS PGothic", sans-serif;
    /* transition:opacity 0.5s 0s linear; */
}

#grpbook_wrapper .font_oswald
{
    font-family:"Helvetica", "Hiragino Kaku Gothic Pro","Hiragino Sans", "arial", "Meiryo", "MS PGothic", sans-serif;
}

#grpbook_wrapper .font_sans-serif
{
    font-family:"Helvetica", "Hiragino Kaku Gothic Pro","Hiragino Sans", "arial", "Meiryo", "MS PGothic", sans-serif;
}


.modal
{
    z-index:10001;
}

.modal-backdrop
{
    z-index:10000;
}

.modal-dialog
{
    margin-left:auto;
    margin-right:auto;
}


.grpbook_wrapper {
    overflow-x:hidden;
}

.grpbook_wrapper select
{
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    pointer-events: auto;
}

.grpbook_wrapper .select-wrap
{
    position:relative;
    pointer-events:none;
}
.grpbook_wrapper .select-wrap:after
{
    position:absolute;
    top:50%;
    right:5px;
    content:"\f0d7";
    font-family:"FontAwesome";
    height: 20px;
    font-size: 16px;
    line-height: 20px;
    margin-top: -10px;
    pointer-events：auto
}

.grpbook_wrapper select::-ms-expand {
    display: none;
}

/*
.grpbook_wrapper ::-webkit-calendar-picker-indicator {
    margin-left:0px;
}
.grpbook_wrapper input::-webkit-date-and-time-value {
  text-align: left;
}
*/

.grpbook_wrapper td:hover,
.grpbook_wrapper tr:hover td,
.grpbook_wrapper th:hover,
.grpbook_wrapper tr:hover th
{
    background-color:transparent;
}

.grpbook_wrapper tbody>tr:nth-child(odd)>th
{
    background-color:transparent;
}




.grpbook_wrapper input[type=text],
.grpbook_wrapper input[type=date],
.grpbook_wrapper input[type=number],
.grpbook_wrapper input[type=password],
.grpbook_wrapper select
{
    border-radius:0;
    background-color:#fff;
    padding:0.4em 0.8em;
    height:3.5em;
    transition:none;
}

.grpbook_wrapper button,
.grpbook_wrapper a.button
{
    display:inline-block;
    font-size:16px;
    font-weight:normal;
    padding:0.6em 1.2em 0.6em 1.2em;
    border-radius:2px;
    transition:background 0.1s 0s linear, color 0.1s 0s linear;
    text-decoration:none;
}

.grpbook_wrapper button.wide,
.grpbook_wrapper a.button.wide
{
    min-width:200px;
    max-width:100%;
}

.grpbook_wrapper button:focus,
.grpbook_wrapper a.button:focus
{
    border-radius:2px;
    outline:none;
}

.grpbook_wrapper button.green,
.grpbook_wrapper a.button.green
{
    background-color:#90804f;
    color:#fff;
    border:none;
}

.grpbook_wrapper button.green:hover,
.grpbook_wrapper a.button.green:hover
{
    background-color:#46412f;
}

.grpbook_wrapper button.green:disabled,
.grpbook_wrapper a.button.green:disabled
{
    background-color:#90804f;
    opacity:0.4;
    cursor:normal;
}

.grpbook_wrapper button.green:focus,
.grpbook_wrapper a.button.green:focus
{
    box-shadow: 0 0 0 .2rem #90804f80;
}



.grpbook_wrapper button.blue,
.grpbook_wrapper a.button.blue
{
    border:1px solid #589ACB;
    background-color:#589ACB;
    color:#fff;
    /*border:none;*/
}

.grpbook_wrapper button.blue:hover,
.grpbook_wrapper a.button.blue:hover
{
    border:1px solid #589ACB;
    background-color:#fff;
    color:#2279B7;
}


.grpbook_wrapper button.outline,
.grpbook_wrapper a.button.outline
{
    background-color:#fff;
    color:#333;
    border:1px solid #666;
}

.grpbook_wrapper button.outline:hover,
.grpbook_wrapper a.button.outline:hover
{
    background-color:#666;
    color:#fff;
}

.grpbook_wrapper button.outline:focus,
.grpbook_wrapper a.button.outline:focus
{
    box-shadow: 0 0 0 .2rem #90804f80;
}


.grpbook_wrapper button.dark,
.grpbook_wrapper a.button.dark
{
    background-color:#333333;
    color:#fff;
    border:1px solid #333333;
}

.grpbook_wrapper button.dark:not(:disabled):hover,
.grpbook_wrapper a.button.dark:not(:disabled):hover
{
    background-color:#fff;
    color:#333333;
}

.grpbook_wrapper button.dark:disabled,
.grpbook_wrapper a.button.dark:disabled
{
    opacity:0.4;
    cursor:normal;
}

.grpbook_wrapper button.dark:focus,
.grpbook_wrapper a.button.dark:focus
{
    box-shadow: 0 0 0 .2rem #90804f80;
}



.grpbook_search_form {
    width:100%;
    padding:30px 30px;
    background-color:#fff;
    margin-bottom:20px;
}

.grpbook_wrapper input,
.grpbook_wrapper select
{
    outline-color:rgba(0,0,0,0.3)!important;
}


.grpbook_wrapper .grpbook_search_form input[type=text],
.grpbook_wrapper .grpbook_search_form input[type=date],
.grpbook_wrapper .grpbook_search_form input[type=number],
.grpbook_wrapper .grpbook_search_form select
{
    border:none;
    background-color:#ededed;
    outline-color:rgba(0,0,0,0)!important;
}


.grpbook_wrapper h3
{
    font-size:36px;
    font-weight:bold;
    color:#333333;
}

.grpbook_wrapper h3.left
{
    text-align:left;
}

.grpbook_wrapper h4
{
    font-size:24px;
    font-weight:bold;
    color:#333333;
}

.grpbook_wrapper h4.left
{
    text-align:left;
}

.grpbook_wrapper.modal h4
{
    font-size:16px;
}


.grpbook_search_form_item_list
{
    display:flex;
    justify-content:center;
    flex-wrap:nowrap;
    margin-bottom:30px;
}

.grpbook_search_form_item
{
    width:auto;
    /*max-width:32%;*/
    margin:0 10px;
}

.grpbook_search_form_item label
{
    display:inline-block;
    font-weight:bold;
    font-size:14px;
    margin-bottom:10px;
    margin-left:5px;
}

.grpbook_search_form .search_button
{
    width:20em;
    height:3.5em;
    max-width:100%;
}


@media screen and (max-width:767px) {
    .grpbook_search_form {
        width:100%;
        padding:30px 10px;
        text-align:center;
    }
    
    .grpbook_search_form_item_list
    {
        display:flex;
        flex-wrap:wrap;
        flex-flow:column;
        width:auto;
        margin-right:auto;
        margin-left:auto;
    }
    
    .grpbook_search_form_item
    {
        display:block;
        width:auto;
        max-width:100%;
        margin-bottom:3px;
    }
    
    .grpbook_search_form_item label
    {
        display:inline-block;
        width:120px;
        text-align:left;
        font-size:12px;
    }
    
    .grpbook_search_form_item input,
    .grpbook_search_form_item select
    {
        display:inline!important;
        width:150px!important;
    }
    
}


.grpbook_wrapper .select_unit_list {
    margin-bottom:30px;
}

.grpbook_wrapper .each_unit
{
    position:relative;
    margin-bottom:8px;
}

.grpbook_wrapper .each_unit ul
{
    display:flex;
    justify-content:space-between;
    background-color:#f5f5f5;
    margin:0 45px 0 0;
}

.grpbook_wrapper .select_unit_list.confirm .each_unit ul
{
    margin:0 0 0 0;
    background-color:transparent;
}

.grpbook_wrapper .each_unit ul li
{
    position:relative;
    width:20%;
    list-style:none;
    padding:20px 20px 15px 20px;
    
}

.grpbook_wrapper .each_unit ul li label
{
    display:block;
    font-size:12px;
    font-weight:bold;
    text-align:center;
    margin-bottom:12px;
    
}

.grpbook_wrapper .each_unit ul li .value
{
    display:block;
    font-size:14px;
    font-weight:normal;
    text-align:center;
}

.grpbook_wrapper .each_unit ul li .value strong
{
    font-size:18px;
    font-weight:bold;
}

.grpbook_wrapper .each_unit ul li:after
{
    content:' ';
    position:absolute;
    top:20%;
    right:0;
    width:1px;
    height:60%;
    background-color:#dedede;
}

.grpbook_wrapper .select_unit_list.confirm .each_unit ul li:after
{
    background-color:#fff;
}


.grpbook_wrapper .each_unit ul li:last-child:after
{
    display:none;
    content:'';
}

.grpbook_wrapper .each_unit ul li .two_price
{
    display:flex;
    flex-wrap:nowrap;
    justify-content:space-around;
    margin-top:-4px;
}

.grpbook_wrapper .each_unit ul li .two_price label
{
    display:block;
    margin:0 auto;
}


.grpbook_wrapper .each_unit .delete_icon
{
    position:absolute;
    right:0px;
    top:50%;
    width:30px;
    height:30px;
    text-align:center;
    line-height:25px;
    padding:0;
    margin-top:-15px;
    background-color:#fff;
    border:1px solid #666;
    color:#666;
    font-size:18px;
    border-radius:50%;
    cursor:pointer;
    transition:transform 0.1s 0s linear;
}

.grpbook_wrapper .each_unit .delete_icon:hover
{
    transform:scale(1.2);

}

.grpbook_wrapper .each_unit.unavailable
{
    opacity:0.5;
}

.grpbook_wrapper .each_unit.unavailable .delete_icon
{
    display:none;
}



#grpbook_add_cart_modal .modal-dialog
{
    width:800px;
    max-width:100%;
}

.grpbook_wrapper .each_unit.sp_mode {
    display:none;
}

@media screen and (max-width:1024px) {
    #select_unit_list_container.input {
        max-width:calc(100% - 10px);
    }
    
    .grpbook_wrapper .each_unit ul {
        margin:0 40px 0 0;
    }
    
    .grpbook_wrapper .each_unit .delete_icon {
        right:3px;
    }
    
}


@media screen and (max-width:767px) {
    #select_unit_list_container.input {
        max-width:calc(100% - 5px);
    }
    .grpbook_wrapper .each_unit {
        display:none;
    }
    
    .grpbook_wrapper .each_unit.sp_mode {
        display:block;
    }
    
    .grpbook_wrapper .each_unit ul {
        margin:0;
        margin-right:10px;
    }
    
    .grpbook_wrapper .each_unit ul li
    {
        position:relative;
        width:20%;
        list-style:none;
        padding:10px 0 5px 0;
        
    }
    
    .grpbook_wrapper .each_unit ul li label
    {
        font-size:12px;
    
    }
    
    .grpbook_wrapper .each_unit ul li .value
    {
        font-size:12px;
        line-height:1.25em;
    }
    
    .grpbook_wrapper .each_unit ul li .value strong
    {
        font-size:16px;
    }
    
    .grpbook_wrapper .each_unit ul li .value.date
    {
        margin-top:-8px;
    }
    
    .grpbook_wrapper .each_unit ul li .two_price
    {
        display:flex;
        flex-wrap:nowrap;
        justify-content:space-around;
        margin-top:-7px;
        font-size:16px;
    }

    .grpbook_wrapper .each_unit ul li .two_price label
    {
        display:block;
        margin:0 auto;
    }    
    
    
    .grpbook_wrapper .each_unit .delete_icon
    {
        width:20px;
        height:20px;
        line-height:16px;
        top:25px;
        right:0;
    }
    
    #grpbook_add_cart_modal .modal-body
    {
        padding:20px 5px 40px 5px;
    }

}


.grpbook_wrapper .each_unit.unavailable .delete_icon,
.grpbook_wrapper .select_unit_list.confirm .delete_icon
{
    display:none;
}

.grpbook_wrapper .modal-content
{
    border-radius:0!important;
    max-width:98%;
    margin-right:auto;
    margin-left:auto;
}






.grpbook_wrapper .modal-content
{
    border-radius:0!important;

}

.grpbook_wrapper.modal button.close
{
    background-color:transparent;
    color:#333;
    opacity:1;
    font-size:18px;
}
.grpbook_wrapper.modal button.close:hover
{
    border:none!important;
}






.grpbook_cart_icon_container
{
    display:flex;
    justify-content:space-between;
    position:fixed;
    right:10px;
    bottom:10px;
    width:200px;
    height:48px;
    box-shadow:0px 0px 10px rgba(0,0,0,0.4);
    background-color:#fff;
    z-index:1030;
    opacity:1;
    cursor:pointer;
    transition:opacity 0.3s 0s linear;
}

.grpbook_cart_icon_container.empty
{
    opacity:0;
    pointer-events:none;
}

.grpbook_cart_icon_container .cart_icon
{
    width:60px;
    height:48px;
    background-color:#62593d;
    background-image:url(../image/cart_icon.png);
    background-repeat:no-repeat;
    background-position:49% 50%;
    background-size:auto 32px;
}

.grpbook_cart_icon_container .select_count
{
    width:140px;
    line-height:48px;
    text-align:center;
    font-size:12px;
    font-weight:bold;
    color:#000;
}






.grpbook_input_container
{
    width:1000px;
    max-width:calc(100% - 10px);
    margin:80px auto 50px auto;
    /*border:1px solid #000;*/
    padding:30px 30px;
    background-color:#fff;
}

.grpbook_input_container.confirm
{
    border:none;
    margin:20px auto 50px auto;
    background-color:transparent;
}

.grpbook_input_container table.input_table
{
    width:100%;
    border:none;
    
    font-size:14px;
    
}

.grpbook_input_container.confirm table.input_table
{
    width:auto;
    margin-left:auto;
    margin-right:auto;
}

.grpbook_input_container table.input_table input,
.grpbook_input_container table.input_table select,
.grpbook_input_container table.input_table textarea
{
    border:none;
    background-color:#ededed;
    border-radius:4px;
    height:3em;
    max-width:100%;
}

.grpbook_input_container table.input_table input:not([type="checkbox"]),
.grpbook_input_container table.input_table select,
.grpbook_input_container table.input_table textarea
{
    width:40em;
    max-width:100%;
    
    
}

.grpbook_input_container table.input_table input.inline,
.grpbook_input_container table.input_table select.inline
{
    display:inline;
}

.grpbook_input_container table.input_table td,
.grpbook_input_container table.input_table th
{
    border:none;
    background-color:transparent;
}

.grpbook_input_container table.input_table th
{
    width:14em;
    padding:16px 10px 5px 0px;
    text-align:center;
    white-space:nowrap;
}

.grpbook_input_container.confirm table.input_table th
{
    width:1em;
    padding:5px 20px 5px 0px;
    text-align:left;
    white-space:nowrap;
}

.grpbook_input_container table.input_table td
{
    vertical-align:middle;
    padding:5px 0px;
    text-align:left;
}

.grpbook_input_container table.input_table td input.error,
.grpbook_input_container table.input_table td select.error
{
    outline:1px solid #F00;
}

.grpbook_input_container table.input_table .input_alert
{
    margin-top:5px;
    font-weight:bold;
    color:#F00;
}

.grpbook_input_container table.input_table .input_alert:before
{
    content:'\f071';
    font-family:FontAwesome;
    margin-right:0.2em;
}

.grpbook_input_container table.input_table .terms
{
    width:100%;
    min-height:10em;
    max-height:15em;
    padding:0.8em;
    margin-top:10px;
    font-size:12px;
    white-space:pre-wrap;
    overflow-y:auto;
    border:1px solid #333;
}

.grpbook_input_container table.input_table .agreement
{
    margin-top:10px;
}

.grpbook_input_container table.input_table .input_notice
{
    font-weight:bold;
    font-size:12px;
}

.grpbook_wrapper .submit_button_area
{
    text-align:center;
    margin-top:20px;
    margin-bottom:5px;
}

.grpbook_input_container .lost_password 
{
    margin-top:10px;
}

.grpbook_input_container .lost_password a
{
    font-size:14px;
    text-decoration:underline;
}

.grpbook_input_container hr
{
    margin:40px 0 40px 0;
}

.grpbook_input_container p.lead
{
    font-size:16px;
    margin-bottom:20px;
}


@media screen and (max-width:767px) {
    
    .grpbook_input_container
    {
        max-width:100%;
        padding:30px 10px;
    }
    
    .grpbook_input_container table.input_table th,
    .grpbook_input_container table.input_table td
    {
        display:block;
        text-align:left;
        line-height:1.2em;
    }
    
    .grpbook_input_container table.input_table th
    {
        padding:12px 0 8px 0;
    }
    
    .grpbook_input_container table.input_table td
    {
        padding:0 0 12px 0;
    }

    
    .grpbook_input_container table.input_table td:not(.zipcode) input[type="text"],
    .grpbook_input_container table.input_table td input[type="password"],
    .grpbook_input_container table.input_table td select,
    .grpbook_input_container table.input_table td textarea
    {
        width:100%!important;
    }
    
    .grpbook_input_container table.input_table .terms
    {
        margin-top:0px;
    }
    
    
    
    
}


















#grpbook_wrapper .thanks_container
{
    text-align:center;
}

#grpbook_wrapper .thanks_container .explain
{
    font-size:32px;
    color:#000;
    font-weight:bold;
    margin-bottom:1.5em;
}

#grpbook_wrapper .thanks_container p
{

}

#grpbook_wrapper .grpbook_navigation
{
    text-align:center;
    
}

#grpbook_wrapper .grpbook_navigation ul
{
    display:flex;
    justify-content:center;
    flex-wrap:nowrap;
    width:100%;
    margin:0px auto 50px auto;
    padding:0;
}

#grpbook_wrapper .grpbook_navigation ul li
{
    position:relative;
    display:block;
    width:25%;
    height:50px;
    margin:0;
    margin-right:30px;
    list-style:none;
    
}

#grpbook_wrapper .grpbook_navigation ul li > div
{
    width:100%;
    height:100%;
    padding:0;
    background-color:#c9c9c9;
    color:#fff;
    /*font-family: "Oswald", Sans-serif;*/
    /*font-family: "Oswald", Sans-serif;*/
    font-size:12px;
    line-height:40px;
    vertical-align:baseline;
    text-align:left;
    padding-left:20px;
}

#grpbook_wrapper .grpbook_navigation ul li .navigation_number
{
    position:relative;
    top:3px;
    display:inline-block;
    font-size:20px;
    margin-right:0.3em;
}

#grpbook_wrapper .grpbook_navigation ul li.active > div
{
    background-color:#000;
}

#grpbook_wrapper .grpbook_navigation ul li > div:after
{
    content:" ";
    position:absolute;
    top:0;
    right:-50px;
    width: 0;
    height: 0;
    border-top: 25px solid transparent;
    border-right: 25px solid transparent;
    border-bottom: 25px solid transparent;
    border-left: 25px solid #c9c9c9;
}

#grpbook_wrapper .grpbook_navigation ul li.active > div:after
{
    border-left: 25px solid #000;
}



@media screen and (max-width:1024px) {
    
    #grpbook_wrapper .grpbook_navigation ul
    {
        /*max-width:95%;*/
        margin:0px auto 50px auto;
    }
    
}

@media screen and (max-width:767px) {
    
    #grpbook_wrapper .grpbook_navigation ul
    {
        width:400px;
        max-width:100%;
        justify-content: space-evenly;
        margin:0px auto 50px auto;
    }
    #grpbook_wrapper .grpbook_navigation ul li
    {
        width:100px;
        max-width:calc(25% - 10px);
        margin-right:auto;
        margin-left:auto;
        list-style:none;
        color:#fff;
        /*font-family: "Oswald", Sans-serif;*/
        font-size:12px;
        line-height:0px;
        vertical-align:baseline;
        text-align:left;
        line-height:1em;
        height:auto;
        
    }
    
    #grpbook_wrapper .grpbook_navigation ul li > div
    {
        position:relative;
        top:0;
        left:0;
        width:100%;
        height:0px;
        padding-top:100%;
        border-radius:50%;
        background-color:#E1E1E1;
    }
    
    #grpbook_wrapper .grpbook_navigation ul li .navigation_number
    {
        position:absolute;
        left:0;
        top:50%;
        width:100%;
        padding:0;
        margin:-35px 0 0 0 ;
        display:block;
        font-size:20px;
        text-align:center;
    }
    
    #grpbook_wrapper .grpbook_navigation ul li .navigation_title
    {
        position:absolute;
        left:0;
        top:50%;
        width:100%;
        padding:0;
        margin:0px 0 0 0 ;
        display:block;
        font-size:12px;
        text-align:center;
        line-height:1em;
    }
    
    #grpbook_wrapper .grpbook_navigation ul li.active > div
    {
        background-color:#C1C1C1;
    }
    
    
    #grpbook_wrapper .grpbook_navigation ul li > div:after
    {
        content:"";
        display:none;
    }

}





/* datepicker */

.ui-datepicker {
    z-index: 10!important;
}

.ui-datepicker-calendar td {
    background-color:transparent!important;
    vertical-align:middle!important;
}

.ui-datepicker {
  display: none;
  margin-top: 4px;
  padding: 10px;
  width: 260px;
  background: #FFFFFF;
  border: 1px solid #E3E5EB;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-box-shadow: 0px 10px 14px rgba(0, 0, 0, 0.12);
          box-shadow: 0px 10px 14px rgba(0, 0, 0, 0.12);
  border-radius: 6px;
}

.ui-datepicker table th span {
  color: #333;
  font-weight: 400;
  font-size: 13px;
}

.ui-datepicker .ui-datepicker-title .ui-datepicker-month, .ui-datepicker .ui-datepicker-title .ui-datepicker-year {
  font-size: 20px;
  font-weight: 500;
  color: #212327;
}

.ui-datepicker .ui-datepicker-calendar {
  table-layout: fixed;
  width: 100%;
  border: 0px !important;
}

.ui-datepicker .ui-datepicker-calendar .ui-state-default {
  border: none;
  background: none;
}

.ui-datepicker .ui-datepicker-calendar .ui-state-default.ui-state-highlight {
  border-radius: 100% !important;
  background-color: #E9EDFB !important;
  color: #41454F !important;
  border: none !important;
  padding: 5px;
}

.ui-datepicker .ui-datepicker-calendar td {
  width: 30px;
  height: 30px;
  border-radius: 50% !important;
  cursor: pointer;
  -webkit-transition: background-color 0.1s ease-in-out, color 0.1s ease-in-out;
  transition: background-color 0.1s ease-in-out, color 0.1s ease-in-out;
}

.ui-datepicker .ui-datepicker-calendar td:hover {
  border-radius: 100% !important;
  background-color: #E9EDFB !important;
  color: #41454F !important;
  border: none !important;
}

.ui-datepicker .ui-datepicker-calendar td a {
  text-decoration: none;
}

.ui-datepicker .ui-datepicker-calendar tbody {
  border: 0px !important;
}

.ui-datepicker .ui-datepicker-calendar th, .ui-datepicker .ui-datepicker-calendar td {
  text-align: center;
  padding: 0;
  border: 0px !important;
}

.ui-datepicker .ui-datepicker-calendar th
{
    color:#333;
}

.ui-datepicker .ui-datepicker-calendar .ui-datepicker-unselectable:hover {
  background-color: #fff;
  cursor: default;
}

.ui-datepicker .ui-datepicker-current-day {
  border-radius: 100% !important;
  background-color: #3E64DE !important;
}

.ui-datepicker .ui-datepicker-current-day, .ui-datepicker .ui-datepicker-current-day a {
  color: #fff !important;
}

.ui-datepicker .ui-datepicker-prev.ui-corner-all, .ui-datepicker .ui-datepicker-next.ui-corner-all {
  color: #3E64DE;
}

.ui-datepicker .ui_tpicker_hour_slider, .ui-datepicker .ui_tpicker_minute_slider {
  border: 1px solid !important;
}

.ui-datepicker a, .ui-datepicker a:hover {
  text-decoration: none;
}

.ui-datepicker a:hover, .ui-datepicker td:hover a {
  color: #2a6496;
  -webkit-transition: color 0.1s ease-in-out;
  transition: color 0.1s ease-in-out;
}

.ui-datepicker .ui-datepicker-header {
  margin-bottom: 4px;
  text-align: center;
}

.ui-datepicker .ui-datepicker-header .ui-datepicker-title {
  font-weight: 700;
}


.ui-datepicker-prev,
.ui-datepicker-next
{
    white-space:nowrap;
    font-size:12px;
    color:#444;
    cursor:pointer;
}


.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next {
  cursor:pointer;
  -webkit-font-smoothing: antialiased;
  font-style: normal;
  font-weight: normal;
  height: 20px;
  line-height: 1;
  margin-top: 10px;
  width: 30px;
}

.ui-datepicker .ui-datepicker-prev {
  float: left;
  text-align: left;
}

/*.ui-datepicker .ui-datepicker-prev:before {
  content: "\e921";
}*/

.ui-datepicker .ui-datepicker-next {
  float: right;
  text-align: right;
}

/*  .ui-datepicker .ui-datepicker-next:before {
  content: "\e903";
}

.ui-datepicker .ui-icon {
  display: none;
}*/

.ui-datepicker .ui-state-disabled {
    color:#bbb!important;
}


.loading_spinner .grpbook_spinner {
  -webkit-animation: rotate 2s linear infinite;
          animation: rotate 2s linear infinite;
  z-index: 2;
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -25px 0 0 -25px;
  width: 50px;
  height: 50px;
}
.loading_spinner .grpbook_spinner .path {
  stroke: #93bfec;
  stroke-linecap: round;
  -webkit-animation: dash 1.5s ease-in-out infinite;
          animation: dash 1.5s ease-in-out infinite;
}

@-webkit-keyframes rotate {
  100% {
    transform: rotate(360deg);
  }
}

@keyframes rotate {
  100% {
    transform: rotate(360deg);
  }
}
@-webkit-keyframes dash {
  0% {
    stroke-dasharray: 1, 150;
    stroke-dashoffset: 0;
  }
  50% {
    stroke-dasharray: 90, 150;
    stroke-dashoffset: -35;
  }
  100% {
    stroke-dasharray: 90, 150;
    stroke-dashoffset: -124;
  }
}
@keyframes dash {
  0% {
    stroke-dasharray: 1, 150;
    stroke-dashoffset: 0;
  }
  50% {
    stroke-dasharray: 90, 150;
    stroke-dashoffset: -35;
  }
  100% {
    stroke-dasharray: 90, 150;
    stroke-dashoffset: -124;
  }
}


#dialog-confirm-common .loading_spinner
{
    display:none;
}

#dialog-confirm-common.loading .loading_spinner
{
    display:block;
    position:fixed;
    top:40%;
    left:50%;
    margin-left:-64px;
    width:128px;
    height:128px;
}

#dialog-confirm-common.loading .modal-dialog
{
    display:none!important;
}



/*下記修正箇所*/

/*カレンダーのPrevとNextの表示
 * 1506,1515,1519をコメントアウト:*/
/*159コメントアウト*/
/*ヘッダーに記載していたcssを削除*/


/*取り消しのボタンの修正*/
.grpbook_wrapper .btn-outline-dark {
    border-color: snow;
}
.grpbook_wrapper .btn-primary {
    border-color: snow;
}


/*カレンダー、バックグラウンドカラーの位置*/
.grpbook_wrapper table td, table th {
    vertical-align: middle;
}

/*予約メニューページの予約ボタンの余白*/
.text-center {
    /*margin-top: 10px;*/
}

/*申込完了の表記*/
.grpbook_wrapper  .thanks_container .explain {
    line-height: 3rem;
}

.grpbook_wrapper a.button.blue.pull-right {
	padding: 3px 12px!important;
}




/* 予約メニューリスト */
.grpbook_wrapper .booking_item_list
{
    list-style-type:none;
    width:800px;
    max-width:100%;
    margin:0 auto 30px auto;
    padding:0 0 0 2px;
    
}

.grpbook_wrapper .booking_item_list li
{
    color:#333333;
    border-bottom:1px solid #e7e7e7;
    padding:2em 0;
}

.grpbook_wrapper .booking_item_list li .item_name
{
    font-size:18px;
}

.grpbook_wrapper .booking_item_list li .item_name input
{
    position:relative;
    top:1px;
    margin-right:0.4em;
    transform:scale(1.5) translate(2px,-1px);
}

.grpbook_wrapper .booking_item_list li .item_price
{
    font-size:22px;
    font-weight:bold;
}

.grpbook_wrapper .booking_item_list li .item_description
{
    margin:0.8em auto 0em auto;
    font-size:16px;
    text-align:left;
    line-height:1.7em;
    white-space:pre-wrap;
}

@media screen and (max-width:767px) {
    .grpbook_wrapper .booking_item_list li .item_name
    {
        float:none!important;
        clear:left!important;
        text-align:left;
    }
    .grpbook_wrapper .booking_item_list li .item_price
    {
        float:none!important;
        clear:right!important;
        text-align:right;
    }
}


/* 確認用テーブル */
.grpbook_wrapper .confirm_table
{
    width:100%;
    max-width:800px;
    margin:20px auto 20px;
    border-collapse:separate;
    border-spacing:1px;
    border:none;
    background-color:#dedede;
    font-family:;
}

.grpbook_wrapper .confirm_table th
{
    border:none;
    background-color:#f5f5f5!important;
    width:35%;
    text-align:left;
    font-size:18px;
    font-weight:normal;
    white-space:nowrap;
}

.grpbook_wrapper .confirm_table td
{
    border:none;
    background-color:#fff!important;
    width:65%;
    text-align:left;
    font-size:18px;
}

@media screen and (max-width:767px) {
    .grpbook_wrapper .confirm_table th
    {
        display:none;
    }
    .grpbook_wrapper .confirm_table td
    {
        width:100%;
    }
    
    .grpbook_wrapper .confirm_table.sp_th_show th
    {
        display:table-cell;
        width:1%;
    }
}



/* 入力テーブル */
.grpbook_wrapper .input_table
{
    width:100%;
    margin:0 auto;
    border:none;
    font-size:16px;
}

.grpbook_wrapper .input_table input,
.grpbook_wrapper .input_table select,
.grpbook_wrapper .input_table textarea
{
    border:none;
    background-color:#ededed;
    border-radius:4px;
    height:3em;
    max-width:100%;
}

.grpbook_wrapper .input_table input:not([type="checkbox"]),
.grpbook_wrapper .input_table select,
.grpbook_wrapper .input_table textarea
{
    width:100%;
    max-width:100%;
}

.grpbook_wrapper .input_table input.inline,
.grpbook_wrapper .input_table select.inline
{
    display:inline;
}

.grpbook_wrapper .input_table td,
.grpbook_wrapper .input_table th
{
    border:none;
    background-color:transparent;
}

.grpbook_wrapper .input_table th
{
    width:auto;
    padding:16px 20px 5px 0px;
    text-align:left;
    white-space:nowrap;
    vertical-align:top;
}


.grpbook_wrapper .input_table td
{
    vertical-align:middle;
    padding:5px 0px;
    text-align:left;
    width:100%;
}

.grpbook_wrapper .input_table td input.error,
.grpbook_wrapper .input_table td select.error
{
    outline:1px solid #F00;
}

.grpbook_wrapper .input_table .input_alert
{
    margin-top:5px;
    font-weight:bold;
    color:#F00;
}

.grpbook_wrapper .input_table .input_alert:before
{
    content:'\f071';
    font-family:FontAwesome;
    margin-right:0.2em;
}

.grpbook_wrapper .input_table .terms
{
    width:100%;
    min-height:10em;
    max-height:15em;
    padding:0.8em;
    margin-top:10px;
    font-size:12px;
    white-space:pre-wrap;
    overflow-y:auto;
    border:1px solid #333;
}

.grpbook_wrapper .input_table .agreement
{
    margin-top:10px;
}

.grpbook_wrapper .input_table .input_notice
{
    font-weight:bold;
    font-size:14px;
}


@media screen and (max-width:767px) {
    .grpbook_wrapper .input_table th
    {
        display:none;
    }
    .grpbook_wrapper .input_table td
    {
        width:100%;
    }
}







/* 予約メニュー内容テーブル */
.booking_item_table_container
{
    width:100%;
    max-width:800px;
    text-align:center;
    margin:0 auto 50px auto;
}


/* ログイン */
.grpbook_wrapper .login_container
{
    width:100%;
    max-width:800px;
    text-align:left;
    margin:0 auto 50px auto;
}

.grpbook_wrapper .login_container .lead
{
    font-size:18px;
    font-weight:bold;
    margin-bottom:0.5em;
}


.grpbook_wrapper .login_container .table_container
{
    width:100%;
    padding:30px 50px;
    border:2px solid #dedede;
    border-radius:8px;
    text-align:center;

}

.grpbook_wrapper .login_container .table_container .lost_password 
{
    margin-top:10px;
}

.grpbook_wrapper .login_container .table_container .lost_password a
{
    font-size:14px;
    text-decoration:underline;
    color:#333;
}

@media screen and (max-width:767px) {
    .grpbook_wrapper .login_container .table_container
    {
        padding:20px 15px;
    }
}



/* お客様情報入力 */
.grpbook_wrapper .user_information_input
{
    width:100%;
    max-width:800px;
    text-align:left;
    margin:0 auto 50px auto;
}

.grpbook_wrapper .user_information_input .lead
{
    font-size:18px;
    font-weight:bold;
    margin-bottom:0.5em;
}


.grpbook_wrapper .user_information_input .table_container
{
    width:100%;
    padding:30px 50px;
    border:2px solid #dedede;
    border-radius:8px;
    text-align:center;

}

.grpbook_wrapper .user_information_input .table_container .submit_button_area
{
    margin:30px auto 10px auto;
}

@media screen and (max-width:767px) {
    .grpbook_wrapper .user_information_input .table_container
    {
        padding:20px 15px;
    }
}

/* 予約メニュー内容テーブル */
.user_information_confirm
{
    width:100%;
    max-width:800px;
    text-align:center;
    margin:0 auto 50px auto;
}


/* ログアウト */
.grpbook_wrapper .logout_container
{
    width:100%;
    max-width:800px;
    text-align:left;
    margin:0 auto 50px auto;
}

.grpbook_wrapper .logout_container .lead
{
    font-size:18px;
    font-weight:bold;
    margin-bottom:0.5em;
}


.grpbook_wrapper .logout_container .table_container
{
    width:100%;
    padding:30px 50px;
    border:2px solid #dedede;
    border-radius:8px;
    text-align:center;

}

@media screen and (max-width:767px) {
    .grpbook_wrapper .logout_container .table_container
    {
        padding:20px 15px;
    }
}


/* 利用規約 */
.grpbook_wrapper .terms_container
{
    width:100%;
    max-width:800px;
    text-align:left;
    margin:0 auto 50px auto;
}

.grpbook_wrapper .terms_container .lead
{
    font-size:18px;
    font-weight:bold;
    margin-bottom:0.5em;
}


.grpbook_wrapper .terms_container .table_container
{
    width:100%;
    padding:3px;
    border:2px solid #dedede;
    border-radius:8px;
    text-align:center;
}

.grpbook_wrapper .terms_container .terms
{
    width:100%;
    min-height:10em;
    max-height:15em;
    padding:1.2em;
    font-size:12px;
    white-space:pre-wrap;
    overflow-y:auto;
    text-align:left;
    line-height:1.8em;
}

@media screen and (max-width:767px) {
    .grpbook_wrapper .terms_container .terms
    {
        padding:0.4em;
    }
}




/* 支払い情報入力 */
.grpbook_wrapper .payment_input
{
    width:100%;
    max-width:800px;
    text-align:center;
    margin:0 auto 50px auto;
}

.grpbook_wrapper .payment_input .lead
{
    font-size:18px;
    font-weight:bold;
    margin-bottom:0.5em;
}


.grpbook_wrapper .payment_input .table_container
{
    width:100%;
    padding:30px 50px;
    border:2px solid #dedede;
    border-radius:8px;
    text-align:center;

}

.grpbook_wrapper .payment_input .table_container table
{
    max-width:500px;
}

.grpbook_wrapper .payment_input .table_container .submit_button_area
{
    margin:30px auto 10px auto;
}

@media screen and (max-width:767px) {
    .grpbook_wrapper .payment_input .table_container
    {
        padding:20px 15px;
    }
}


/* 完了文 */

.grpbook_wrapper .thanks_container
{
    text-align:center;
    margin-bottom:50px;
}

.grpbook_wrapper .thanks_container .thanks_message
{
    width:100%;
    max-width:800px;
    margin:30px auto 0 auto;
    text-align:center;
    white-space:pre-wrap;
    line-height:1.8em;
}


/* ログアウト */
.grpbook_wrapper .common_container
{
    width:100%;
    max-width:800px;
    text-align:left;
    margin:0 auto 50px auto;
}

.grpbook_wrapper .common_container .lead
{
    font-size:18px;
    font-weight:bold;
    margin-bottom:0.5em;
}

.grpbook_wrapper .common_container .h3
{
    font-size:18px;
    font-weight:bold;
    margin-bottom:0.5em;
}


.grpbook_wrapper .common_container .table_container
{
    width:100%;
    padding:30px 50px;
    border:2px solid #dedede;
    border-radius:8px;
    text-align:center;

}

.grpbook_wrapper .common_container .confirm_table th
{
    width:30%;
}

.grpbook_wrapper .common_container .confirm_table td
{
    width:70%;
}

.grpbook_wrapper .common_container .bottom_buttons
{
    text-align:right;
}

.grpbook_wrapper .common_container .bottom_buttons button,
.grpbook_wrapper .common_container .bottom_buttons a
{
    margin-bottom:3px;
}

@media screen and (max-width:767px) {
    .grpbook_wrapper .common_container .table_container
    {
        padding:20px 15px;
    }
    
    .grpbook_wrapper .common_container .bottom_buttons
    {
        text-align:center;
    }
}




/* 営業時間テーブル */
.grpbook_wrapper .common_container .business_hour_table
{
    width:auto;
    margin:0;
    border:none;
}

.grpbook_wrapper .common_container .business_hour_table td
{
    width:auto;
    vertical-align:top;
    background-color:#fff;
    border:none;
}

.grpbook_wrapper .common_container .business_hour_table td.weekday
{
    padding:0 4em 0.8em 0;
}

.grpbook_wrapper .common_container .business_hour_table td.business_hour
{
    padding:0 0 0.8em 0;
}

@media screen and (max-width:767px) {
    .grpbook_wrapper .common_container .business_hour_table td.weekday
    {
        padding:0 1em 0.8em 0;
        white-space:nowrap;
    }
}



/* マイページ予約リスト */

.grpbook_wrapper .common_container .mypage_booking_list_table
{
    width:100%;
    margin:20px auto 20px;
    border-collapse:separate;
    border-spacing:1px;
    border:none;
    background-color:#dedede;
    font-size:18px;
}

.grpbook_wrapper .common_container .mypage_booking_list_table td
{
    width:auto;
    vertical-align:middle;
    background-color:#fff!important;
    border:none;
    line-height:1.6em;
}

.grpbook_wrapper .common_container .mypage_booking_list_table td.item
{
    width:60%;
}

.grpbook_wrapper .common_container .mypage_booking_list_table td.start_time
{
    width:20%;
    white-space:nowrap;
}

.grpbook_wrapper .common_container .mypage_booking_list_table td.button_cell
{
    width:20%;
    white-space:nowrap;
}

.grpbook_wrapper .common_container .mypage_booking_list_table td.button_cell a
{
    font-size:14px;
    padding: 0em 0.5em 0em 0.5em;
    width:100px;
}

.grpbook_wrapper .common_container .mypage_booking_list_table td.button_cell .start_time
{
    display:none;
}

.grpbook_wrapper .common_container .mypage_booking_list_table tr.disabled,
.grpbook_wrapper .common_container .mypage_booking_list_table td.disabled
{
    color:#aaa;
}

@media screen and (max-width:767px) {
    .grpbook_wrapper .common_container .mypage_booking_list_table td.start_time
    {
        display:none;
    }
    
    .grpbook_wrapper .common_container .mypage_booking_list_table td.button_cell .start_time
    {
        display:block;
        margin-bottom:0.1em;
        margin-top:-0.8em;
    }
}






