@charset "utf-8"; /* default PC */
#contents .bnr-box {
  margin: 0 auto;
  max-width: 1220px;
}

td.txt-right {
  font-size: 13px;
}

#contents .num {
  font-family: "Zen Kaku Gothic New";
  font-size: 20px;
  margin-right: 5px;
}

#contents .hotel-main-txt {
  font-weight: 500;
}

.main-box {
  background-color: #F0F3F8;
  padding: 50px;
  border-radius: 40px 0 40px 0;
}

.table-box {
  display: grid;
  gap: 50px;
  grid-template-columns: 450px calc(100% - 500px);
  margin-bottom: 65px;
}

#contents .main-txt-box {
  background: url(../image/contents/bg_beige.jpg);
  border-radius: 40px 0 40px 0;
  margin: 0 auto 60px;
  max-width: 1050px;
  padding: 50px;
}

#contents .main-txt-box .look-red {
  font-weight: 500;
}

#contents .main-txt-box h2 {
  font-size: 18px;
  font-family: "Noto Sans JP", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ";
  font-weight: 400;
  letter-spacing: .03em;
  line-height: unset;
  margin: 0 0 5px;
  text-align: left;
}

.bg-box {
  background-color: #fff3e5;
  border-radius: 10px;
  border: 4px solid #ee7800;
  max-width: 1100px;
  margin: 0 auto 90px;
  padding: 50px;
}

.bg-box .btn-box {
  margin: 0 auto;
  max-width: 835px;
}

/* ホテルをご利用の方 */
#hotel {
  .bnr-box img {
    border-radius: 12px;
  }
}

#room {
  .main-box {
    background-color: #f8f0e2;
    padding: 50px;
    border-radius: 40px 0 40px 0;
  }
}

@media screen and (max-width: 1400px) {
  #contents .main-box .txt-center {
    text-align: left;
  }

  .table-box {
    gap: 40px;
    grid-template-columns: 400px calc(100% - 440px);
  }
}

/* view-1140 notePC,Tablet */
@media screen and (max-width: 1140px) {
  .table-box {
    gap: 40px;
    grid-template-columns: 320px calc(100% - 360px);
  }

  #contents .main-txt-box {
    padding: 30px;
  }

  #contents .main-txt-box h2 {
    font-size: 15px;
  }
}

/* view-959 Mobile,Tablet */
@media screen and (max-width: 959px) {
  #contents .main-txt-box h2 {
    text-align: left;
  }

  #contents .photo-box {
    gap: 14px;
  }

  #contents .photo-box img {
    width: 100%;
  }

  .photo-box .txt-3box:nth-child(n+2) {
    width: calc(50% - 7px);
  }

  .table-box {
    grid-template-columns: 100%;
  }

  #contents .hotel-main-txt {
    text-align: left;
  }

  .bg-box {
    padding: 40px 15px;
  }

  .bg-box .txt-center {
    text-align: left;
  }

  .bg-box .btn-box {
    gap: 15px 0;
  }

  .bg-box .btn-box .link-btn {
    margin: 0 auto;
  }

  #contents .bnr-box .txt-3box {
    margin-right: 15px;
    width: calc(100% / 2 - 8px);
  }

  #contents .bnr-box .txt-3box:nth-child(2) {
    margin-right: 0;
  }
}

@media screen and (max-width: 767px) {
  #room table.table-02.w-100.box-mb th {
    width: 130px;
  }
}

/* view-559 Mobile */
@media screen and (max-width: 559px) {
  #contents .num {
    font-size: 17px;
    margin-right: 2px;
  }

  #contents .main-txt-box {
    padding: 30px 15px;
  }

  .bg-box {
    margin-bottom: 55px;
  }

  #room table.table-02.w-100.box-mb th {
    width: 110px;
  }

  .bg-box {
    padding: 40px 15px;
  }

  #contents .item-area .txt-3box {
    margin-right: 0;
    width: 100%;
  }

  #room .main-box {
    padding: 35px 15px;
  }

  #contents .bnr-box {
    gap: 30px 0;
  }

  #contents .bnr-box .txt-3box {
    margin-right: 10px;
    width: calc(100% / 2 - 5px);
  }

  #hotel #contents h2 .en-ttl {
    font-size: 29px;
  }
}
