@charset "UTF-8";
/* CSS Document */
* {
  margin: 0;
  padding: 0;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
  font-size: 16px;
  color: #333; }

body {
  position: relative; }

article {
  padding: 90px 0; }
  article.black {
    background-color: #000; }
    article.black h2 {
      color: #fff;
      font-size: 26px;
      font-family: "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
      text-align: center; }
  article section {
    width: 1000px;
    margin: 0 auto; }
    article section.flexbox {
      display: flex;
      justify-content: space-between; }
    article section h2 {
      font-size: 26px;
      font-family: "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
      text-align: center; }

a {
  transition: all  0.3s ease; }
  a:hover {
    color: #32b7b3; }

/*================================================
				header
================================================*/
@media screen and (max-width: 1199px) {
  .open .menu-btn span:after {
    content: attr(data-txt-close); }

  .open nav {
    transition: all .5s;
    visibility: visible;
    opacity: 1; }

  header {
    width: 100%;
    height: 70px;
    background-color: rgba(0, 0, 0, 0.7);
    z-index: 1;
    position: absolute;
    top: 0;
    left: 0;
    display: flex;
    justify-content: space-between;
    align-items: center; }
    header .logo {
      max-width: 370px;
      width: 80%; }
    header .menu-btn {
      border: 1px solid #fff;
      border-radius: 10px;
      padding: 0 5px;
      margin-right: 12px;
      cursor: pointer;
      z-index: 1; }
      header .menu-btn span {
        color: #fff;
        font-size: 10px; }
        header .menu-btn span:after {
          content: attr(data-txt-menu); }
    header nav {
      position: fixed;
      display: table;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: rgba(0, 0, 0, 0.8);
      transition: all .5s;
      visibility: hidden;
      opacity: 0; }
      header nav ul {
        display: flex;
        flex-wrap: wrap;
        margin: 80px 0 0 0; }
        header nav ul li {
          box-sizing: border-box;
          width: 50%;
          height: 60px;
          line-height: 60px;
          text-align: center;
          list-style: none;
          border-top: 1px solid #fff; }
          header nav ul li:nth-child(even) {
            border-right: solid 1px #fff; }
          header nav ul li:nth-child(6), header nav ul li:nth-child(7) {
            border-bottom: 1px solid #fff; }
          header nav ul li:first-child {
            width: 100%; }
          header nav ul li.reserve {
            width: 100%;
            margin: 20px;
            border: none; }
            header nav ul li.reserve a {
              background-color: #600473; }
            header nav ul li.reserve ul {
              margin: 0; }
              header nav ul li.reserve ul li {
                border-top: 1px solid #370242; }
                header nav ul li.reserve ul li:first-child {
                  width: 50%; }
                header nav ul li.reserve ul li:nth-child(odd) {
                  border-right: solid 1px #370242; }
                header nav ul li.reserve ul li:nth-child(even) {
                  border-right: none; }
                header nav ul li.reserve ul li a {
                  font-size: 14px; }
          header nav ul li a {
            display: block;
            font-size: 18px;
            color: #fff;
            text-decoration: none; } }
@media screen and (min-width: 1200px) {
  header {
    width: 100%;
    background-color: rgba(0, 0, 0, 0.7);
    z-index: 1;
    position: absolute;
    top: 0;
    left: 0; }
    header .menu-btn {
      display: none; }
    header nav {
      position: absolute;
      top: 0;
      right: 0;
      z-index: 2; }
      header nav ul {
        display: flex;
        justify-content: space-between; }
        header nav ul li {
          height: 76px;
          line-height: 76px;
          list-style-type: none; }
          header nav ul li a {
            display: block;
            padding: 0 20px;
            text-decoration: none;
            color: #fff;
            font-family: "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif"; }
          header nav ul li.reserve {
            position: relative;
            overflow: hidden;
            transition: all .3s ease-out; }
            header nav ul li.reserve a {
              font-size: 20px;
              background-color: #600473;
              transition: all .5s ease-out;
              position: relative;
              z-index: 2;
              border-bottom: 1px solid #370242;
              cursor: pointer; }
              header nav ul li.reserve a:hover {
                color: #fff; }
            header nav ul li.reserve:hover {
              height: 228px; }
            header nav ul li.reserve ul {
              position: absolute;
              bottom: 0;
              display: block;
              z-index: 1;
              margin: 0; }
              header nav ul li.reserve ul li {
                border-bottom: 1px solid #370242; }
                header nav ul li.reserve ul li:last-child {
                  border-bottom: none; }
                header nav ul li.reserve ul li a {
                  width: 87px;
                  font-size: 14px;
                  padding: 0 10px;
                  text-align: center; }
                  header nav ul li.reserve ul li a.check {
                    font-size: 12px; }
                  header nav ul li.reserve ul li a:hover {
                    background-color: #370242;
                    color: #fff; } }
.visual {
  width: 100%;
  height: 600px;
  padding: 0;
  background-size: cover; }

.roomsHead {
  background-image: url(../img/h1_room.jpg);
  background-position: center center; }

.facilityHead {
  background-image: url(../img/h1_facility.jpg);
  background-position: center center; }

.tourismHead {
  background-image: url(https://picsum.photos/2000/1500?image=959);
  background-position: center 10%; }

.diningHead {
  background-image: url(../img/h1_dining.jpg);
  background-position: center 80%; }

.etcHead {
  background-image: url(../img/h1_etc.jpg);
  background-position: center center; }

.spaHead {
  background-image: url(../img/h1_spa.jpg);
  background-position: center 60%; }

.liveHead {
  background-image: url(../img/h1_alacarte.jpg);
  background-position: center 10%; }

/*================================================
				MainContents
================================================*/
/* index */

p.resizeimage img { width: 100%; }

.keyvisual {
  width: 100%;
  height: 100vh;
  padding: 0;
  background-size: cover;
  position: relative; }
  .keyvisual .news {
    width: 100%;
    padding: 10px 0;
    margin: 0;
    background-color: #000;
    position: absolute;
    bottom: 0; }
    .keyvisual .news > p {
      width: 1000px;
      margin: 0 auto;
      color: #fff; }
      .keyvisual .news > p a {
        color: #fff;
        transition: all  0.3s ease; }
        .keyvisual .news > p a:hover {
          color: #32b7b3; }

.greeting {
  background-image: url(../img/greeting.jpg);
  background-position: bottom right;
  background-repeat: no-repeat;
  background-size: contain; }
  .greeting > h3, .greeting p {
    text-align: center;}
  .greeting > h3 {
    font-size: 26px;
    color: #745283;
    margin-bottom: 50px; }
  .greeting > p {
    width: 800px;
    margin: 0 auto;
    font-size: 18px;
    line-height: 30px; }

.greeting-2 {
  background-size: contain; }
  .greeting-2 > h3, .greeting p {
    text-align: center;
   ; }

.indexLive {
  margin-top: 90px;
  padding-top: 90px;
  border-top: 1px solid #ccc; }
  .indexLive > a:hover {
    opacity: .7; }

.indexBox {
  display: flex;
  justify-content: space-between;
  margin-top: 60px; }
  .indexBox > .info, .indexBox img {
    width: 470px;
    height: 310px; }
  .indexBox > .info {
    position: relative; }
    .indexBox > .info .white {
      color: #fff; }
    .indexBox > .info a {
      display: block;
      width: 200px;
      height: 60px;
      line-height: 60px;
      text-align: center;
      text-decoration: none;
      border: 1px solid #000;
      position: absolute;
      bottom: 0;
      left: 50%;
      transform: translateX(-50%); }
      .indexBox > .info a.white {
        border: solid 1px #fff; }
      .indexBox > .info a:hover {
        color: #32b7b3;
        border: 1px solid #32b7b3; }

iframe {
  margin: 60px 0; }

.map {
  display: block;
  width: 200px;
  height: 60px;
  margin: 0 auto;
  line-height: 60px;
  text-align: center;
  text-decoration: none;
  border: 1px solid #000; }
  .map:hover {
    border: 1px solid #32b7b3; }

.banner {
  display: flex;
  justify-content: space-between; }
  .banner > a:hover {
    opacity: .7; }

/* pages */
h1 {
  font-family: "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
  font-size: 36px;
  text-align: center;
  position: relative;
  margin: 1em 0; }
  h1:after {
    content: '';
    position: absolute;
    left: 50%;
    bottom: -40px;
    /*線の上下位置*/
    display: inline-block;
    width: 45px;
    /*線の長さ*/
    height: 4px;
    /*線の太さ*/
    transform: translateX(-50%);
    background-color: #333;
    border-radius: 4px;
    /*線の丸み*/ }

h4 {
  margin-bottom: 40px;
  padding-bottom: .5em;
  border-bottom: 1px solid #ccc; }

table {
  border-collapse: collapse;
  border: #e3e3e3 1px solid;
  width: 100%; }
  table th {
    width: 250px;
    background-color: #f1f1f1;
    border-bottom: #e3e3e3 1px solid;
    border-right: #e3e3e3 1px solid;
    text-align: left;
    padding: 10px;
    font-weight: normal; }
    table th.t_top {
      border-top: #530c70 3px solid; }
  table td {
    border-bottom: #e3e3e3 1px solid;
    text-align: left;
    padding: 10px; }
    table td.t_top {
      border-top: #b3b3b3 3px solid; }
    table td > span {
      color: red; }

ol, ul {
  margin-left: 30px; }
  ol > li, ul > li {
    line-height: 1.5em; }

div {
  cursor: pointer;
}

.roomsPhoto {
  width: 500px; }
  .roomsPhotoBig {
    width: 500px;
    overflow: hidden; }
    .roomsPhotoBig img {
      width: 100%; }
  .roomsPhotoMini {
    margin: 0; }
    .roomsPhotoMini > li, .roomsPhotoMini > div {
      list-style-type: none;
      overflow: hidden;
      margin: 10px 0 0 0; }
      .roomsPhotoMini > li img, .roomsPhotoMini > div img {
        width: 100%; }
      .roomsPhotoMini > li p, .roomsPhotoMini > div p {
        display: none; }
  .roomsPhoto .sp-thumbnail-container {
    opacity: 1.2; }
  .roomsPhoto .sp-selected-thumbnail {
    opacity: 1; }

.roomsInfo {
  width: 450px;
  position: relative; }
  .roomsInfo > .title {
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 40px; }
  .roomsInfo > p > span {
    font-family: "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
    font-weight: bold; }
  .roomsInfo > p.text > span {
    font-weight: bold;
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
    padding-bottom: 10px;
    display: block; }
  .roomsInfo > a {
    display: block;
    width: 200px;
    height: 60px;
    line-height: 60px;
    text-align: center;
    text-decoration: none;
    border: 1px solid #000;
    position: absolute;
    bottom: 20%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%); }
    .roomsInfo > a:hover {
      border: 3px solid #3d3d3d; }

.fixtures {
  display: flex; }
  .fixturesBox {
    margin-right: 30px; }
    .fixturesBox > p {
      text-align: center;
      margin-top: 10px; }
    .fixturesBox > img {
      border: 2px solid #ccc; }

.firework a {
  display: block;
  width: 250px;
  margin: 20px auto;
  padding: 10px 20px;
  border-radius: 30px;
  text-decoration: none;
  text-align: center;
  font-size: 24px;
  color: #FFF;
  background-color: #530c70;
  transition: all  0.3s ease; }
  .firework a:hover {
    background-color: #32b7b3; }

.golf .golfPhoto {
  width: 300px; }
  .golf .golfPhotoBig {
    width: 300px;
    overflow: hidden; }
    .golf .golfPhotoBig img {
      width: 100%; }
.golf > .roomsInfo {
  width: 650px; }

.covenant > h3 {
  margin: 40px 0 10px 0; }
  .covenant > h3:first-child {
    margin-top: 0; }
.covenant > ol {
  padding: 0 0 0 3em;
  margin: 0; }
  .covenant > ol li {
    list-style-type: none;
    list-style-position: inside;
    counter-increment: cnt;
    text-indent: -1.7em; }
    .covenant > ol li:before {
      display: marker;
      content: "(" counter(cnt) ") "; }

.live > h2, .privacy > h2, .faq > h2 {
  font-size: 26px;
  font-family: "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
  text-align: left;
  margin: 40px 0 10px 0; }
  .live > h2:first-child, .privacy > h2:first-child, .faq > h2:first-child {
    margin-top: 0; }

.faq > h4 {
  color: #32b7b3;
  border: none;
  margin: 10px 0 0 0;
  padding: 0; }

.youtube, .alacarte {
  display: inline-block;
  color: #fff;
  font-size: 18px;
  text-decoration: none;
  padding: 10px 20px; }
  .youtube > i, .alacarte > i {
    color: #fff;
    font-size: 18px; }

.youtube {
  background-color: #cd201f; }
  .youtube:hover {
    background-color: #e65c5b;
    color: #fff; }

.alacarte {
  margin: 10px auto;
  background-color: #530c70; }
  .alacarte:hover {
    background-color: #32b7b3;
    color: #fff; }

/*================================================
					footer
================================================*/
#page-top {
  position: fixed;
  bottom: 50px;
  right: 50px; }
  #page-top > a {
    width: 42px;
    height: 48px;
    display: block; }
    #page-top > a .fa-chevron-circle-up {
      color: #32b7b3; }

footer {
  width: 100%;
  background-color: #000; }
  footer .footerBox {
    width: 1000px;
    margin: 0 auto;
    padding: 40px 0 50px 0;
    border-bottom: solid 1px #fff;
    display: flex; }
    footer .footerBoxLeft {
      width: 645px;
      margin-right: 30px; }
      footer .footerBoxLeftSmall {
        display: flex;
        justify-content: space-between;
        margin-top: 15px; }
        footer .footerBoxLeftSmall > p {
          font-size: 14px;
          color: #fff; }
          footer .footerBoxLeftSmall > p > a {
            font-size: 14px;
            color: #fff; }
            footer .footerBoxLeftSmall > p > a:hover {
              color: #32b7b3; }
          footer .footerBoxLeftSmall > p > span {
            font-weight: bold;
            color: #fff; }
            footer .footerBoxLeftSmall > p > span.tel {
              color: #32b7b3;
              font-size: 28px; }
    footer .footerBoxRight {
      list-style: none; }
      footer .footerBoxRight > li {
        color: #fff;
        padding-bottom: 10px; }
        footer .footerBoxRight > li:before {
          font-size: 14px;
          font-family: FontAwesome;
          content: '\f0da';
          padding-right: 5px; }
        footer .footerBoxRight > li > a {
          font-size: 14px;
          text-decoration: none;
          color: #fff; }
          footer .footerBoxRight > li > a:hover {
            color: #32b7b3; }
  footer .copyright {
    font-size: 12px;
    text-align: center;
    color: #fff;
    padding: 25px 0; }