@charset "UTF-8";
#footer {
  margin-bottom: 70px; }
  @media (min-width: 1024px) {
    #footer {
      margin-bottom: 60px; } }

/*
---------------------------------------------------------------------------------------------------------------------
メインフォト
---------------------------------------------------------------------------------------------------------------------
*/
.RoomTopPhoto {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  position: relative;
  height: 70vh;
  margin-top: 50px; }
  .RoomTopPhoto.Menu {
    background-image: url("../img/Room/haeder_s1.webp"); }
  .RoomTopPhoto.Horizon {
    background-image: url("../img/Room/haeder_s2.webp"); }
  .RoomTopPhoto.Inverted {
    background-image: url("../img/Room/haeder_s3.webp"); }
  .RoomTopPhoto.barn {
    background-image: url("../img/Room/haeder_s4.webp"); }
  .RoomTopPhoto.machi {
    background-image: url("../img/Room/haeder_s5.webp"); }
  @media (min-width: 768px) {
    .RoomTopPhoto.Menu {
      background-image: url("../img/Room/haeder_1.webp"); }
    .RoomTopPhoto.Horizon {
      background-image: url("../img/Room/haeder_2.webp"); }
    .RoomTopPhoto.Inverted {
      background-image: url("../img/Room/haeder_3.webp"); }
    .RoomTopPhoto.barn {
      background-image: url("../img/Room/haeder_4.webp"); }
    .RoomTopPhoto.machi {
      background-image: url("../img/Room/haeder_5.webp"); } }
  @media (min-width: 1024px) {
    .RoomTopPhoto {
      height: 100vh;
      max-height: 850px;
      margin-top: 0px; } }
  .RoomTopPhoto .RoomName {
    position: absolute;
    left: 0;
    bottom: 0;
    background-color: rgba(239, 239, 239, 0.9);
    border-top-right-radius: 5px;
    max-width: 500px;
    width: 85%;
    height: auto;
    text-align: center; }
    .RoomTopPhoto .RoomName .NameBox {
      text-align: left;
      display: inline-block;
      margin: 25px auto 20px; }
      @media (min-width: 768px) {
        .RoomTopPhoto .RoomName .NameBox {
          margin: 35px auto 30px;
          margin-left: inherit; } }
      .RoomTopPhoto .RoomName .NameBox h1 {
        font-size: 2em;
        font-family: "FOT-筑紫ゴシック Pro B";
        margin-bottom: 10px; }
      .RoomTopPhoto .RoomName .NameBox p {
        font-size: 0.8em;
        margin-top: 10px;
        font-feature-settings: "palt";
        letter-spacing: 0.05em; }
      .RoomTopPhoto .RoomName .NameBox h6 {
        font-size: 0.8em;
        line-height: 1.5em;
        margin-top: 10px;
        font-feature-settings: "palt";
        letter-spacing: 0.08em;
        margin-left: -3px; }
        .RoomTopPhoto .RoomName .NameBox h6.Machi {
          margin-top: 20px; }

.foreword {
  position: relative;
  margin: 100px auto 50px; }
  @media (min-width: 1250px) {
    .foreword {
      margin: 200px auto 100px; }
      .foreword.Second {
        margin: 200px auto 200px; } }
  .foreword .Photo {
    margin: auto; }
    .foreword .Photo img {
      width: 95%;
      height: auto;
      margin-bottom: 20px;
      margin-right: 5%;
      border-top-right-radius: 5px;
      border-bottom-right-radius: 5px; }
      @media (min-width: 1024px) {
        .foreword .Photo img {
          margin-bottom: 0px; } }
      @media (min-width: 1750px) {
        .foreword .Photo img {
          width: 90%; } }
  .foreword .wordText {
    margin: auto;
    width: 90%; }
    @media (min-width: 1024px) {
      .foreword .wordText.right {
        width: 85%;
        margin-left: 0%; }
      .foreword .wordText.left {
        width: 85%;
        margin-top: 10%; } }
    @media (min-width: 1250px) {
      .foreword .wordText.right {
        width: 80%;
        margin-top: 5%; } }
    @media (min-width: 1750px) {
      .foreword .wordText.right {
        width: 75%;
        margin-top: 10%; } }
    .foreword .wordText h5 {
      font-size: 1.4em;
      margin-bottom: 30px; }
    .foreword .wordText h2 {
      font-size: 1.4em;
      line-height: 1.5em;
      margin-bottom: 40px;
      margin-top: -5px; }
      @media (min-width: 1640px) {
        .foreword .wordText h2 {
          margin-bottom: 60px; } }
    .foreword .wordText p {
      font-size: 0.9em;
      line-height: 2.2em;
      text-align: justify;
      margin-bottom: 20px; }
      @media (min-width: 1640px) {
        .foreword .wordText p {
          font-size: 1em; } }
    .foreword .wordText h6 {
      font-size: 0.7em;
      text-align: justify; }
      @media (min-width: 1250px) {
        .foreword .wordText h6.forewordText {
          font-size: 0.75em;
          position: absolute;
          bottom: -5px;
          width: 80%; } }
      @media (min-width: 1450px) {
        .foreword .wordText h6.conceptText {
          font-size: 0.75em;
          position: absolute;
          bottom: -5px;
          width: 80%; } }
  .foreword .video video, .foreword .video img {
    width: 100%;
    height: auto;
    margin-bottom: 20px; }
    @media (min-width: 1024px) {
      .foreword .video video, .foreword .video img {
        margin-bottom: 0px;
        border-bottom-left-radius: 5px;
        border-top-left-radius: 5px; } }
  .foreword .Copy {
    position: absolute;
    top: -30px;
    left: 5%; }
    @media (min-width: 768px) {
      .foreword .Copy.left {
        left: 0; } }
    @media (min-width: 1024px) {
      .foreword .Copy {
        top: -40px; }
        .foreword .Copy.left {
          left: 35%; } }
    @media (min-width: 1450px) {
      .foreword .Copy {
        top: -60px; } }
    .foreword .Copy img {
      width: auto;
      height: 50px; }
      @media (min-width: 768px) {
        .foreword .Copy img {
          height: 80px; } }
      @media (min-width: 1450px) {
        .foreword .Copy img {
          height: 100px; } }

.o-4column .col-12 {
  padding: 0px; }

.o-4column {
  margin: 0 0px; }

.foreword2 {
  max-width: 1400px;
  width: 75%;
  margin: auto; }
  @media (min-width: 768px) {
    .foreword2 {
      width: 90%; } }
  .foreword2 .Experience {
    margin-left: auto; }
    @media (min-width: 1024px) {
      .foreword2 .Experience {
        width: 850px; }
        .foreword2 .Experience.two {
          width: 50%; } }
    .foreword2 .Experience .ExperienceBox {
      margin-bottom: 60px; }
      .foreword2 .Experience .ExperienceBox img {
        width: 100%;
        height: auto;
        border-radius: 5px; }
      .foreword2 .Experience .ExperienceBox h3 {
        font-size: 1.05em;
        margin: 10px auto;
        line-height: 1.5em;
        font-family: "FOT-筑紫ゴシック Pro B"; }
      .foreword2 .Experience .ExperienceBox p {
        font-size: 0.9em;
        text-align: justify;
        line-height: 1.6em; }

@media only screen and (min-width: 1024px) {
  .o-6column .col-12 {
    padding: 20px; }

  .o-6column {
    margin: 0 -20px; } }
/*
---------------------------------------------------------------------------------------------------------------------
お部屋の間取り
---------------------------------------------------------------------------------------------------------------------
*/
.RoomDrawing {
  max-width: 1000px;
  width: 90%;
  margin: 80px auto; }
  @media (min-width: 768px) {
    .RoomDrawing {
      margin: 160px auto; } }
  .RoomDrawing .DrawingImg {
    margin: 0px auto 20px;
    text-align: center; }
    .RoomDrawing .DrawingImg img {
      width: 100%;
      height: auto; }
      @media (min-width: 1024px) {
        .RoomDrawing .DrawingImg img {
          width: 80%; } }
    @media (min-width: 1024px) {
      .RoomDrawing .DrawingImg.Machi {
        width: 70%;
        height: auto; } }
    .RoomDrawing .DrawingImg p {
      font-size: 0.9em;
      text-align: right; }

.o-1column .col-12 {
  padding: 0px; }

@media (min-width: 768px) {
  .o-1column .col-12 {
    padding: 20px; }

  .o-1column {
    margin: 0 -20px; } }
/*
---------------------------------------------------------------------------------------------------------------------
お食事について
---------------------------------------------------------------------------------------------------------------------
*/
.dish {
  max-width: 1000px;
  width: 90%;
  margin: 100px auto; }
  @media (min-width: 768px) {
    .dish {
      margin: 200px auto; } }
  .dish .Photo img {
    width: 100%;
    height: auto;
    border-radius: 5px; }
  .dish .Contents {
    margin-bottom: 30px; }
    @media (min-width: 1024px) {
      .dish .Contents {
        position: absolute;
        bottom: 25px;
        padding-right: 20px; } }
    .dish .Contents ul {
      margin: 40px auto 20px; }
      .dish .Contents ul li {
        margin: 10px 0;
        font-size: 1.2em;
        font-family: "FOT-筑紫ゴシック Pro B"; }
        .dish .Contents ul li .text {
          font-size: 0.80em;
          margin-top: 5px;
          line-height: 1.5em;
          font-family: "FOT-筑紫ゴシック Pr5 L"; }
    .dish .Contents p {
      font-size: 0.80em;
      text-align: justify; }
  .dish .dish-Btn {
    position: absolute;
    bottom: 0px;
    right: 0px; }
    @media (min-width: 1024px) {
      .dish .dish-Btn {
        bottom: 15px;
        right: 20px; } }

/*
---------------------------------------------------------------------------------------------------------------------
お部屋の概要
---------------------------------------------------------------------------------------------------------------------
*/
.Overview {
  max-width: 1000px;
  width: 90%;
  margin: auto;
  padding-bottom: 200px; }
  .Overview table {
    letter-spacing: 1px;
    margin-top: 30px;
    width: 100%; }
    .Overview table th {
      color: #333333;
      font-size: 0.90em;
      width: 90px;
      text-align: left;
      vertical-align: top;
      padding-top: 25px; }
      @media (min-width: 768px) {
        .Overview table th {
          width: 130px;
          padding-top: 40px; } }
    .Overview table tr {
      border-bottom: 1px solid rgba(51, 51, 51, 0.5); }
      .Overview table tr:first-child {
        border-top: 1px solid rgba(51, 51, 51, 0.5); }
    .Overview table td {
      line-height: 1.8em;
      text-align: left;
      font-size: 0.80em;
      padding: 25px 0px;
      font-feature-settings: "palt";
      vertical-align: top;
      letter-spacing: 0.1em; }
      @media (min-width: 768px) {
        .Overview table td {
          font-size: 0.9em;
          padding: 40px 0px; } }
      .Overview table td .item {
        color: #777777;
        font-size: 0.8em; }
  .Overview h3 {
    font-size: 1.5em;
    margin-top: 50px;
    font-family: "FOT-筑紫ゴシック Pr5 M"; }
  .Overview .Photo {
    margin-top: 20px; }
    .Overview .Photo a {
      transition: .5s; }
      .Overview .Photo a:hover {
        opacity: 0.9; }
    .Overview .Photo img {
      width: 100%;
      height: auto;
      border-radius: 2px; }
    .Overview .Photo p {
      font-size: 0.9em;
      margin-top: 10px; }

.Overview-column .col-lg-4 {
  padding: 0 10px; }

.Overview-column {
  margin: 0 -10px; }

@media only screen and (max-width: 450px) {
  .Overview-column .col-lg-4 {
    padding: 0 5px; }

  .Overview-column {
    margin: 0 -5px; } }
@media only screen and (min-width: 1024px) {
  .Overview-column .col-lg-4 {
    padding: 0 20px; }

  .Overview-column {
    margin: 0 -20px; } }
/*
---------------------------------------------------------------------------------------------------------------------
この宿を予約するフローターボタン
---------------------------------------------------------------------------------------------------------------------
*/
#Room_appointment {
  background-color: #EFEFEF;
  width: 100%;
  height: 70px;
  bottom: 0;
  position: fixed;
  z-index: 100; }
  @media (min-width: 1024px) {
    #Room_appointment {
      height: 60px; } }
  #Room_appointment img {
    width: 36%;
    height: auto;
    float: left;
    position: relative; }
    @media (min-width: 768px) {
      #Room_appointment img {
        width: auto;
        height: 70px;
        margin-left: 5%;
        margin-right: 10px; } }
    @media (min-width: 1024px) {
      #Room_appointment img {
        height: 60px; } }
  #Room_appointment .RoomText {
    display: flex; }
    #Room_appointment .RoomText h3 {
      font-size: 1.2em;
      margin-top: 22px; }
      @media (min-width: 1024px) {
        #Room_appointment .RoomText h3 {
          margin-top: 20px; } }
    #Room_appointment .RoomText p {
      font-size: 0.7em;
      margin-top: 27px;
      margin-left: 5px; }
      @media (min-width: 1024px) {
        #Room_appointment .RoomText p {
          margin-top: 25px; } }
  #Room_appointment .Btn {
    background-color: #333333;
    position: absolute;
    top: 0;
    right: 0;
    height: 80px;
    width: 64%;
    transition: .5s; }
    @media (min-width: 768px) {
      #Room_appointment .Btn {
        width: 100%;
        max-width: 300px; } }
    #Room_appointment .Btn:hover {
      opacity: 0.9; }
    #Room_appointment .Btn .Text {
      display: inline-block;
      text-align: center;
      position: absolute;
      top: 0;
      bottom: 0;
      margin: auto;
      height: 46px;
      right: 0;
      left: 0;
      color: #fff; }
      @media (min-width: 1024px) {
        #Room_appointment .Btn .Text {
          height: 60px; } }
      #Room_appointment .Btn .Text h4 {
        font-size: 1.0em;
        letter-spacing: 0.1em; }
        #Room_appointment .Btn .Text h4:after {
          content: "";
          width: 11px;
          height: 11px;
          background: url(../img/external.svg);
          position: relative;
          display: inline-block;
          margin-left: .4vw; }
      #Room_appointment .Btn .Text p {
        font-size: 0.8em;
        letter-spacing: 0.05em; }