/* contents
--------------*/
#contents {
  margin: 0px auto;
  padding: 0px 0px 30px 0px;
  background-color: inherit; }
  #contents *, #contents *:before, #contents *:after {
    -webkit-box-sizing: border-box;
    box-sizing: border-box; }
  @media screen and (max-width: 650px) {
    #contents {
      width: 100%;
      max-width: 650px;
      padding: 0;
      box-sizing: border-box; } }

.sectionCopy {
  width: 90%;
  max-width: 1000px;
  margin: auto;
  padding: 3rem 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  text-align: left; }
  .sectionCopy li, .sectionCopy div {
    min-height: 0%; }
  .sectionCopy span {
    display: inline-block; }
    .sectionCopy span img {
      height: 52px;
      width: auto; }
  .sectionCopy .line {
    position: relative;
    background-color: #eae7d9;
    display: block;
    content: "";
    flex-grow: 1;
    margin-left: 3%;
    height: 2px;
    margin-top: 2%; }
    .sectionCopy .line:after, .sectionCopy .line:before {
      position: absolute;
      background-color: #eae7d9;
      content: "";
      display: block;
      width: 100%;
      height: 2px;
      left: 0px; }
    .sectionCopy .line:after {
      top: 3px; }
    .sectionCopy .line:before {
      top: 6px; }
  @media screen and (max-width: 650px) {
    .sectionCopy span {
      display: block;
      max-width: 320px;
      margin: auto; }
      .sectionCopy span img {
        width: 100%;
        height: auto; }
    .sectionCopy .line {
      display: none; } }

.img {
  position: relative; }
  .img img {
    width: 100%;
    height: auto; }

.slide-container {
  width: 100%;
  margin: 0 auto;
  overflow: hidden; }
  .slide-container .slide li {
    position: relative; }
    .slide-container .slide li .img {
      width: 100%; }
      .slide-container .slide li .img .cap {
        position: absolute;
        bottom: 10px;
        right: 10px;
        max-width: 50%;
        display: inline-block;
        text-shadow: 0 0 3px #000;
        letter-spacing: .1em;
        color: #fff; }
    .slide-container .slide li .room {
      position: absolute;
      bottom: 3%;
      left: 3%;
      max-width: 50%;
      background: rgba(0, 0, 0, 0.8);
      font-family: "Noto Serif JP", serif;
      -webkit-font-smoothing: antialiased;
      font-feature-settings: "palt";
      font-weight: 300;
      padding: .5rem 1rem;
      display: grid;
      gap: 0;
      grid-template-columns: 10rem 1fr;
      color: #fff;
      z-index: 3; }
      .slide-container .slide li .room .type {
        display: grid;
        place-content: center;
        text-align: center;
        font-size: 1.4rem;
        line-height: 1.4;
        letter-spacing: .1em;
        padding: .5rem;
        border-right: solid 1px rgba(255, 255, 255, 0.5); }
        .slide-container .slide li .room .type .num {
          display: block;
          font-size: 160%; }
      .slide-container .slide li .room .spec {
        padding: .5rem 0 .5rem 1rem;
        display: grid;
        gap: 5px;
        place-content: start center; }
        .slide-container .slide li .room .spec .ldk {
          font-size: 1.2rem;
          line-height: 1.2;
          letter-spacing: .1em; }
          .slide-container .slide li .room .spec .ldk .txt-l {
            font-size: 120%; }
            .slide-container .slide li .room .spec .ldk .txt-l .num {
              font-size: 120%; }
        .slide-container .slide li .room .spec .menseki {
          font-size: 1rem;
          line-height: 1.2; }
          .slide-container .slide li .room .spec .menseki .num {
            font-size: 120%; }
  @media screen and (max-width: 768px) {
    .slide-container .slide li .img .cap {
      right: 5px;
      bottom: 5px; }
      .slide-container .slide li .img .cap .txt {
        font-size: 12px; }
    .slide-container .slide li .room {
      bottom: 30px;
      padding: .25rem .5rem;
      grid-template-columns: 1fr; }
      .slide-container .slide li .room .type {
        font-size: .875rem;
        border-right: none;
        padding: 0 0 .5rem 0;
        border-bottom: solid 1px rgba(255, 255, 255, 0.5); }
      .slide-container .slide li .room .spec {
        padding: .5rem 0 0 0; }
        .slide-container .slide li .room .spec .ldk {
          display: block;
          font-size: 1rem; }
        .slide-container .slide li .room .spec .menseki {
          display: block;
          font-size: .875rem; } }
  @media screen and (max-width: 480px) {
    .slide-container .slide li .room {
      position: relative;
      bottom: auto;
      left: auto;
      width: 100%;
      max-width: 100%;
      grid-template-columns: 30% 1fr;
      background: #000; }
      .slide-container .slide li .room .type {
        border-right: solid 1px rgba(255, 255, 255, 0.5);
        padding: 0 0 0 .5rem;
        border-bottom: none;
        font-size: 13px; }
        .slide-container .slide li .room .type .num {
          display: inline-block; }
      .slide-container .slide li .room .spec {
        padding: 0 0 0 .5rem;
        text-align: center; }
        .slide-container .slide li .room .spec .ldk {
          display: block;
          font-size: 13px; }
        .slide-container .slide li .room .spec .menseki {
          display: block;
          font-size: 12px; } }
  .slide-container .nav-slide {
    width: 90%;
    max-width: 800px;
    margin: 20px auto 0 auto;
    display: grid;
    place-items: center;
    place-content: center;
    gap: 20px;
    grid-template-columns: repeat(4, 1fr); }
    .slide-container .nav-slide li {
      cursor: pointer; }
      .slide-container .nav-slide li .img {
        background: #000; }
        .slide-container .nav-slide li .img img {
          opacity: .4;
          transition: .3s; }
      .slide-container .nav-slide li.thumbnail-current .img img, .slide-container .nav-slide li:hover .img img {
        opacity: 1; }
    @media screen and (max-width: 768px) {
      .slide-container .nav-slide {
        gap: 10px; } }
    @media screen and (max-width: 480px) {
      .slide-container .nav-slide {
        max-width: 260px;
        grid-template-columns: repeat(2, 1fr); } }

#caption .aw {
  margin-right: 1rem; }
