@charset "UTF-8";

.lock {
    overflow:hidden;
}

.modal-content {
    position:relative;
    display:none;
    width:1000px;
    max-height:75%;
    padding:20px 10px;
    text-align: center;
    border:2px solid #aaa;
    background:#fff;
    overflow:auto;
}

.modal-content p {
    margin:0;
    padding:0;
}

.modal-content h2 {
  font-size: 20px;
  font-family: "Meiryo";
  color: rgb(38, 61, 102);
  font-weight: bold;
  line-height: 1.2;
  text-align: center;
  background: #e9e9e9;
  padding: 7px 0 3px;
  margin-bottom: 15px;
}


.modal-overlay {
    z-index:1;
    display:none;
    position:fixed;
    top:0;
    left:0;
    width:100%;
    height:120%;
    background-color:rgba(0,0,0,0.75);
}

.modal-wrap {
    z-index:2;
    display:none;
    position:fixed;
    top:0;
    left:0;
    width:100%;
    height:100%;
    overflow:auto;
}

.modal-open {
    color:#00f;
    text-decoration:underline;
}

.modal-open:hover {
    cursor:pointer;
    color:#f00;
}

.modal-close {
    color:#00f;
    text-decoration:underline;
    text-align: center;
}

.modal-close:hover {
    cursor:pointer;
    color:#f00;
}



/*remodal_contain
============================================================*/

.remodal_contain{
  width: 900px;
  margin:20px auto;
}
.remodal_contain-item{
  width: 90%;
  background-color: #f5f5f5;
  border-top: 1px solid #e5e5e5;
  padding: 20px;
  box-sizing: border-box;
margin: 0 auto;
}
.remodal_contain-item p{
  width: 49%;
  display: inline-block;
  text-align: left;
  font-size: 16px;
  color: #333333;
  font-weight: bold;


}
.remodal_contain-item p b{
  color: #b00000;
}
.remodal_contain-item a{
  width: 44%;
  display: inline-block;
  padding: 10.5px 7px;
  background-color: #377763;
  color: #fff;
  font-weight: bold;
  vertical-align: top;
  text-decoration: none;
  position: relative;

  border-radius: 3px;

}

.remodal_contain-item a:before{

  width:0px;
  height:0px;
  border-bottom:6px solid transparent;
  border-top:6px solid transparent;
  border-left:8px solid #ffffff; 
  position: absolute;
      top: 36%;
    left: 6%;
    content: "";
}
.remodal_contain-item a:hover{
  opacity: 0.8;
}
.modal_btn_bottom a{
  background-color: #375b77;
}
.remodal_close_up{
  font-size:14px;
  color: #1f1f1f;

}




@media screen and (min-width: 769px) {
  .is--sp {
    display: none;
  }
}

.booking_hidden {
  display: none;
}
.booking_hidden, .select_name {
  width: 100% !important;
}
.side__reservation {
  position: fixed;
  top: 46%;
  color: #fff;
  z-index: 100;
  right: -215px;
  margin-top: -132px; }
  .side__reservation .title-tag {
    position: absolute;
    width: 40px;
    height: 100%;
    top: 0;
    left: -40px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 10px;
    box-sizing: border-box;
    text-align: center;
    background-color: #2b4571;
/* background: rgba(51, 83, 138, 0.8);*/ }
.side__reservation .title-tag img {
  width: 16px; }
  .side__reservation .title-tag:hover {
    opacity: .75;
    cursor: pointer; }
    .side__reservation .input-area {
      background: rgba(43, 69, 113, 0.8);
      padding: 15px 10px;
      box-sizing: border-box;
      letter-spacing: 0em;
      width: 215px; }
      .side__reservation .input-area .reservation-form .unit {
        font-size: 12px;
        padding: 5px 0; }
        .side__reservation .input-area .reservation-form .unit.namisen {
          padding: 0;
          text-align: center; }
          .side__reservation .input-area .reservation-form .unit.namisen .namisen--vertical {
            height: 10px;
            display: inline-block; }
            .side__reservation .input-area .reservation-form .unit.people, .side__reservation .input-area .reservation-form .unit.room, .side__reservation .input-area .reservation-form .unit.facility {
              border-top: 1px dotted #fff;
              padding-top: 10px;
              margin-top: 5px; }
              .side__reservation .input-area .reservation-form .unit.people .caption, .side__reservation .input-area .reservation-form .unit.room .caption, .side__reservation .input-area .reservation-form .unit.facility .caption {
                float: right; }
                .side__reservation .input-area .reservation-form .unit.facility select {
                  width: 100%; }
                  .side__reservation .input-area .reservation-form .unit .title {
                    display: block;
                    font-size: 11px;
                    margin-bottom: 5px; }
                    .side__reservation .input-area .reservation-form .unit .title .ja {
                      float: left; }
                      .side__reservation .input-area .reservation-form .unit .title .en {
                        float: right;
                        font-size: 10px; }
                        .side__reservation .input-area .reservation-form .unit .title:after {
                          content: "";
                          display: block;
                          width: 0;
                          height: 0;
                          visibility: hidden;
                          clear: both; }
                          .side__reservation .input-area .reservation-form .unit .ghost-btn--white {
                            padding: 5px;
                            width: 100%;
                            margin-top: 15px;
                            font-weight: bold;
                            font-size: 14px;
                            letter-spacing: .1em; }
                            .side__reservation.ja__side__reservation .title-tag {
                              padding: 40px 10px; }

                              .ghost-btn--white {
                                color: #fff;
                                border: 1px solid #fff;
                                background: transparent;
                                transition: all .2s ease; }
                                .ghost-btn--white:hover {
                                  background: #fff;
                                  color: #231815;
                                  transition: all .2s ease;
                                  opacity: 1;
                                  cursor: pointer; }

                                  @media screen and (max-width: 768px) {
                                    .is--pc {
                                      display: none;
                                    }
                                    .side__reservation {
                                      top: auto;
                                      bottom: -408px;
                                      right: 0;
                                      margin-top: 0;
                                      width: 100%; }
                                      .side__reservation .title-tag {
                                        width: 100%;
                                        height: 40px;
                                        top: -40px;
                                        left: 0;
                                        padding: 10px; }
                                        .side__reservation .title-tag img {
                                          width: auto;
                                          height: 15px;
                                          margin: 0 auto; }
                                          .side__reservation .title-tag:hover {
                                            opacity: 1; }
                                            .side__reservation .input-area {
                                              width: 100%;
                                              height: 408px; }
                                              .side__reservation .input-area .grid-container {
                                                max-width: 230px;
                                                margin: 0 auto; }
                                                .side__reservation.ja__side__reservation .title-tag {
                                                  padding: 10px; }

                                                }