/* åŸºæœ¬è¨­å®š */
html,
body {
  height: 100%;
  box-sizing: border-box;
  scroll-behavior: smooth;
  background-color: #1a1a1a;
  z-index: -1;
  margin: auto;
  overflow-x: hidden;
  width: 100%;
  letter-spacing: 0.1rem;
  color: #fff;
  font-family: "FOT-ãƒžãƒ†ã‚£ã‚¹ ProN M";
  /* font-family: "ãƒ’ãƒ©ã‚®ãƒŽæ˜Žæœ Pro", "Hiragino Mincho Pro", "æ¸¸æ˜Žæœä½“",
        "Yu Mincho", YuMincho, "MS Pæ˜Žæœ", "MS PMincho", serif; */
}




a,
button,
i {
  transition: all 0.4s;
  color: #fff;
  text-decoration: none;
}

.btn:hover,
.contact_btn:hover,
.btc:active,
.contact_btn:active {
  opacity: 0.5 !important;
  transition: 0.5s !important;
}

a:hover {
  opacity: 0.5 !important;
  transition: 0.5s !important;
}

.container {
  max-width: 1180px;
  margin: 0 auto;
  padding: 0 3%;
}

.concept {
  margin: 200px 0;
}

.grad {
  background: linear-gradient(#333, #1a1a1a);
  padding: 150px 0;
}

.golf_grad {
  padding-top: 150px;
  padding-bottom: 0;
}

.sp {
  display: none;
}

/* åŸºæœ¬è¨­å®šã“ã“ã¾ã§ */

/* ãƒ•ã‚¡ãƒ¼ã‚¹ãƒˆãƒ“ãƒ¥ãƒ¼ */

.first_view img {
  object-fit: cover;
  width: 100%;
  height: 90vh;
  filter: brightness(0.9);
  /* margin-top: 120px; */
}

@media screen and (max-width: 800px) {
  .first_view img {
    /* margin-top: 80px; */
  }
}

@media screen and (max-width: 428px) {
  .first_view img {
    /* margin-top: 60px; */
  }
}

/* ãƒ•ã‚¡ãƒ¼ã‚¹ãƒˆãƒ“ãƒ¥ãƒ¼ã“ã“ã¾ã§ */

/* ã‚»ã‚«ãƒ³ãƒ‰ãƒ“ãƒ¥ãƒ¼ */
.second_view {
  width: 100%;
}

.slider .slide .inner {
  padding: 10px 15px;
}

.slider .slide img {
  width: 100%;
}

.second_view .slide img {
  height: auto;
}

.second_view p {
  text-align: center;
}

.second_view p::after {
  content: "";
  width: 5%;
  height: 1px;
  background-color: #fff;
  display: inline-block;
  margin-left: 10px;
  vertical-align: middle;
}

/* ã‚»ã‚«ãƒ³ãƒ‰ãƒ“ãƒ¥ãƒ¼ã“ã“ã¾ã§ */

/* ã‚³ãƒ³ã‚»ãƒ—ãƒˆ */

.concept * {
  text-align: center;
  margin-bottom: 2%;
  font-size: 1.2rem;
}

.concept p:first-child {
  margin-bottom: 6%;
  font-size: 2.2rem;
}

.concept p:last-child {
  margin-bottom: 0;
}

.btn .arrow {
  object-fit: cover;
  width: 5% !important;
  margin-left: 0.5rem !important;
  margin-top: 0 !important;
}

/* ã‚³ãƒ³ã‚»ãƒ—ãƒˆã“ã“ã¾ã§ */

/* è©³ç´°è¨­å®š */

.section_1,
.section_2,
.lounge {
  margin-bottom: 150px;
}

.flex_container {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 3%;
}

.grad .flex_item p:first-child {
  font-size: 1.5rem;
  margin-bottom: 2.5rem;
}

.grad .flex_container img {
  width: 50%;
  height: 40vh;
  object-fit: cover;
}

.item_container h3 {
  /* font-size: 2rem;
    letter-spacing: 0.5rem;
    border-bottom: 1px solid;
    border-image: linear-gradient(to right, #fff 0%, transparent 100%);
    border-image-slice: 1;
    width: 60%;
    margin-bottom: 2.5rem;
    white-space: nowrap; */

  font-size: 2rem;
  color: #d1b692;
  border-bottom: solid 1px;
  border-image: linear-gradient(to right, #d7b98e 0%, transparent 100%);
  border-image: -webkit-linear-gradient(to right, #d7b98e 0%, transparent 100%);
  border-image-slice: 1;
  display: inline-block;
  line-height: 1.8;
  letter-spacing: 0.2em;
  font-weight: lighter;
  margin-bottom: 2.5rem;
}

.sub_container {
  width: 40%;
  margin: 0 auto;
}

.sub_container p:first-child {
  border-bottom: 1px solid;
  border-image: linear-gradient(to right,
      transparent 0%,
      #d7b98e 50%,
      transparent 100%);
  border-image-slice: 1;
  display: block;
  text-align: center;
  padding-bottom: 0.5rem;
  margin-bottom: 30px;
  font-size: 2rem;
  color: #d1b692;
  line-height: 1.5;
}

/* è©³ç´°è¨­å®šã“ã“ã¾ã§ */

/* ã‚µã‚¦ãƒŠ */

.section_1 .fac-title {
  /* margin-bottom: 150px; */
  text-align: center;
  font-size: 2rem;
  border-bottom: 2px solid;
  border-image: linear-gradient(to right,
      transparent 0%,
      #d7b98e 50%,
      transparent 100%);
  border-image-slice: 1;
  padding-bottom: 1rem;
  color: #d7b98e;
  display: block;
}

.section_1 .sub-title {
  text-align: center;
  font-size: 1.5rem;
  padding-top: 0.5%;
  margin-bottom: 150px;
}

/* .section_1 h2 {
    margin-bottom: 150px;
    text-align: center;
    font-size: 1.5rem;
    border-bottom: 2px solid;
    border-image: linear-gradient(
        to right,
        transparent 0%,
        #d7b98e 50%,
        transparent 100%
    );
    border-image-slice: 1;
    padding-bottom: 1rem;
    color: #d7b98e;
}
 */
.item_container .flex_container>img {
  width: 40%;
}

.item_container .flex_container.self {
  justify-content: flex-start;
  margin-bottom: 40px;
}

.item_container .flex_container.self.space_2 {
  margin-bottom: 0;
}

.item_container .flex_container .section_1_tree {
  position: relative;
  width: 40%;
  height: 35vh;
}

.item_container .flex_container .section_1_tree img {
  width: 30%;
  height: 100%;
  object-fit: cover;
  position: absolute;
}

.item_container .flex_container .section_1_tree img:nth-child(2) {
  /* top: -35px; */
  right: 50%;
  transform: translate(50%, 0);
}

.item_container .flex_container .section_1_tree img:last-child {
  top: 0;
  right: 0;
}

.space {
  margin-top: 150px;
}

.space .flex_container .wrap {
  width: 100%;
}

.flex_container .wrap p:last-of-type {
  margin-bottom: 30px;
}

.space .flex_container>img {
  height: 100%;
  display: block;
  object-fit: cover;
  align-self: flex-end;
}

.space .flex_container.self {
  width: 100%;
  position: relative;
}

.space .flex_container.self>img {
  height: 20vh;
  width: 50%;
}

.flex_container.sp {
  display: none;
}

.saunatext-flex,
.saunaimg-flex {
  width: 50%;
}

.saunaimg-flex {
  display: flex;
  gap: 3%;
}

.grad .flex_container .saunaimg-flex img {
  width: 50%;
  height: -webkit-fill-available;
}

.grad .flex_container .saunaimg-flex img:nth-child(2) {
  object-position: right;
}

/* ã‚µã‚¦ãƒŠã“ã“ã¾ã§ */

/* ãƒ†ãƒ©ã‚¹ */

.section_2 .container .item_container .flex_container.self {
  position: relative;
  display: flex;
}

.section_2 .container .item_container .flex_container.self .text {
  position: absolute;
  left: 60%;
  /* left: 50%; */
}

.amenities {
  margin-top: 150px;
}

.transparent {
  position: relative;
  width: 60%;
  display: flex;
  gap: 2%;
}

.transparent::before {
  content: "";
  width: 100%;
  height: 100%;
  display: block;
  background: linear-gradient(to right, transparent 50%, #1a1a1a 100%);
  position: absolute;
  top: 0;
  left: 0;
}

.transparent img {
  object-fit: cover;
  width: 49%;
  height: 30vh;
  object-position: bottom;
}

.container .flex_container .two_1 {
  width: 20%;
  height: 25vh;
  object-fit: cover;
}

.container .flex_container .two_1.gym {
  filter: brightness(0.8) contrast(1.1);
}

.container .flex_container .two_2 {
  width: 40%;
  height: 25vh;
  object-fit: cover;
}

.grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(4, auto);
  width: 100%;
}

.grid img {
  object-fit: cover;
  width: 100%;
  height: 20vh;
}

.grid .g_img_6 {
  object-position: 50% 78%;
}

.grid p {
  padding-top: 10px;
  text-align: center;
}

.grid p span {
  color: #4d4d4d;
  font-weight: bold;
}

.grid .text {
  align-self: flex-end;
  text-align: left;
}

.grid .towel {
  display: flex;
  gap: 5%;
}

.towel .g_img_2 {
  width: 60%;
}

.towel .g_img_3 {
  width: 40%;
}

/* ãƒ†ãƒ©ã‚¹ã“ã“ã¾ã§ */

/* ãƒ©ã‚¦ãƒ³ã‚¸ */

.section_3 {
  margin-bottom: 0;
}

.grad .flex_container img {
  height: auto;
}

.grad .flex_container .flex_item div {
  background: linear-gradient(#d7b98e, #1a1a1a);
  margin-top: 40px;
}

.grad .flex_container .flex_item div a {
  display: block;
  padding: 0.6rem;
  text-align: center;
}

/* ãƒ©ã‚¦ãƒ³ã‚¸ã“ã“ã¾ã§ */

/* ãŠå•ã„åˆã‚ã›ãƒœã‚¿ãƒ³ */

.contact_btn {
  background: linear-gradient(#fff, #1a1a1a);
  margin-bottom: 150px;
}

.contact_btn a {
  display: block;
  text-align: center;
  padding: 1rem;
  color: #000;
  font-weight: bold;
}

/* ã‚´ãƒ«ãƒ• */
/* ãƒˆãƒ¬ãƒ¼ãƒ‹ãƒ³ã‚° */

.item_container .flex_container .section_1_tree.gym img {
  object-position: 38% 50%;
}

.item_container .flex_container .section_1_tree.golf img:nth-child(2) {
  object-position: right;
}

.item_container .flex_container .section_1_tree.golf img:last-child {
  object-position: center;
}

.golf-grid {
  display: grid;
  gap: 3%;
  grid-template-columns: 1fr 1fr;
  margin-top: 3%;
}

.golf-grid01 {
  display: grid;
  gap: 3%;
  grid-template-columns: 1fr 1fr 1fr;
  margin-top: 3%;
}

.golf_wrap,
.golf_text {
  width: 50%;
}

.golf_wrap.image-trim {
  position: relative;
  overflow: hidden;
  padding-top: 30%;
}

.golf_wrap.image-trim img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 30%;
}

.section_2 .container .item_container .flex_container.self .text.golf_text1 {
  position: static;
  width: 50%;
}

.golf_grid {
  display: grid;
  gap: 10%;
  width: 80%;
  grid-template-columns: 1fr 1fr;
  margin: 0 auto;
}

.golf_ameni_flex {
  display: flex;
  gap: 2%;
}

.golf_amenities img {
  height: 30vh;
}

.golf_ameni_img1 {
  width: 60%;
}

.golf_ameni_img2 {
  width: 40%;
}

/* ãƒ©ã‚¦ãƒ³ã‚¸ */

.section_3.golf .grad .flex_container .flex_item {
  width: 45%;
}

.section_3.golf .grad .flex_container .two_1 {
  width: 15%;
  height: 20vh;
  align-self: flex-end;
}

.section_3.golf .grad .flex_container .two_2 {
  width: 40%;
  height: auto;
  align-self: flex-end;
}

/* ãƒ©ã‚¦ãƒ³ã‚¸ã“ã“ã¾ã§ */
/* ã‚´ãƒ«ãƒ•ã“ã“ã¾ã§ */

/* ã‚¸ãƒ  */
/* ãƒˆãƒ¬ãƒ¼ãƒ‹ãƒ³ã‚° */

.item_container .flex_container .section_1_tree.gym img {
  object-position: 55% 50%;
}

.item_container .flex_container .section_1_tree.gym img:nth-child(2) {
  object-position: 60% 50%;
}

.item_container .flex_container .section_1_tree.gym img:last-child {
  object-position: 60% 50%;
}

.gym_text {
  position: absolute;
  left: 60%;
  /* left: 50%; */
}

/* ã‚·ãƒ¼ãƒ³ */

.section_4 h3 {
  font-size: 2rem;
  letter-spacing: 0.5rem;
  border-bottom: 1px solid;
  border-image: linear-gradient(to right, #d7b98e 0%, transparent 100%);
  border-image-slice: 1;
  width: 60%;
  margin-bottom: 2.5rem;
  white-space: nowrap;
  color: #d7b98e;
}

.section_4 .flex_container {
  margin-bottom: 80px;
}

.section_4 .flex_container:last-child {
  margin-bottom: 0;
}

/* ã‚·ãƒ¼ãƒ³ã“ã“ã¾ã§ */

.g_img_4 {
  object-position: center 30%;
}

/* ã‚¸ãƒ ã“ã“ã¾ã§ */

/* ipad */
@media (min-width: 429px) and (max-width: 1053px) {
  .section_1 .fac-title {
    font-size: 1.5rem;
  }

  .item_container h3 {
    font-size: 1.5rem;
  }

  .sub_container p:first-child {
    font-size: 1.4rem;
  }
}

/* SP */
@media (max-width: 428px) {
  /* åŸºæœ¬è¨­å®š */

  html,
  body {
    font-size: 0.8rem;
  }

  .sp {
    display: block;
  }

  .pc {
    display: none;
  }

  .grad {
    padding: 80px 0;
  }

  .section_1 h2 {
    /* margin-bottom: 60px; */
    font-size: 1.2rem;
  }

  .section_1 .sub-title {
    font-size: 1.2rem;
    padding-top: 0.5%;
    margin-bottom: 60px;
  }

  .flex_container {
    display: block;
  }

  .flex_container img {
    margin-bottom: 2%;
  }

  .sub_container {
    width: 100%;
  }

  .sub_container * {
    text-align: center;
  }

  .arrow.gym {
    width: 10% !important;
  }

  /* ã‚µã‚¦ãƒŠ */

  .section_1 .fac-title {
    font-size: 1.5rem;
    padding-bottom: 0.5rem;
  }

  .first_view img {
    height: 45vh;
  }

  .second_view p {
    font-size: 0.7rem;
  }

  .concept {
    margin: 100px 0;
  }

  .concept * {
    font-size: 0.95rem;
  }

  .concept p:first-child {
    font-size: 1.6rem;
  }

  .grad .flex_item p {
    font-size: 0.8rem;
    text-align: center;
  }

  .grad .flex_item p:first-child {
    font-size: 1.2rem;
    text-align: center;
    margin-bottom: 1.5rem;
  }

  .grad .flex_container img {
    width: 100%;
    margin-top: 30px;
  }

  .section_1,
  .section_2 {
    margin-bottom: 80px;
  }

  .section_3 {
    margin-bottom: 0;
  }

  .item_container h3 {
    font-size: 1.5rem;
    width: 100%;
    margin-bottom: 1.5rem;
    border-bottom: 1px solid;
    line-height: 1.8;
  }

  .item_container .flex_container>img {
    width: 100%;
    /* margin-bottom: 1.5rem; */
    height: 20vh !important;
    object-fit: cover;
  }

  .sub_container p:first-child {
    margin-bottom: 15px;
    font-size: 1.5rem;
  }

  .item_container .flex_container .section_1_tree {
    width: 100%;
    margin-top: 60px;
    height: 25vh;
  }

  .space {
    margin-top: 80px;
  }

  .space .flex_container .wrap {
    margin-bottom: 3%;
  }

  .wrap .flex_container.self {
    display: flex;
    width: 100%;
    justify-content: space-between;
    margin-bottom: 15px;
  }

  .space .flex_container.self>img {
    width: 48%;
    display: block;
    margin-bottom: 0;
  }

  .item_container .flex_container>img {
    /* margin-bottom: 0; */
    height: 20vh;
    height: auto;
  }

  .section_1 .container .item_container .flex_container.self .text,
  .section_2 .container .item_container .flex_container.self .text {
    position: initial;
  }

  .section_2 .container .item_container .flex_container.self {
    display: block;
  }

  .transparent {
    width: 100%;
  }

  .container .flex_container .two_1 {
    width: 30%;
    height: 15vh !important;
    margin-top: 15px;
    display: inline;
  }

  .container .flex_container .two_2 {
    width: 65%;
    height: 15vh !important;
    margin-top: 15px;
    margin-left: 3%;
    display: inline;
  }

  .amenities {
    margin-top: 80px;
  }

  .amenities .flex_container .grid {
    display: none;
  }

  .flex_container.sp {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    flex-wrap: wrap;
  }

  .flex_container.sp .flex_item {
    width: 48%;
    margin-bottom: 20px;
  }

  .flex_container.sp .flex_item img {
    object-fit: cover;
    width: 100%;
    height: 17vh;
  }

  .flex_container.sp .flex_item p {
    font-size: 0.8rem;
    text-align: center;
  }

  .flex_container.sp .flex_item:last-child,
  .flex_container.sp .flex_item:nth-last-child(2) {
    margin-bottom: 0;
  }

  .flex_container.sp .flex_item p span {
    font-size: 0.7rem;
    color: #4d4d4d;
  }

  .grad .flex_container .sp {
    background: linear-gradient(#d7b98e, #1a1a1a);
    margin: 20px auto 0;
    width: 80%;
  }

  .grad .flex_container .sp a {
    padding: 0.6rem;
    display: block;
    text-align: center;
  }

  .contact_btn {
    margin-bottom: 80px;
  }

  .flex_container .towel {
    display: flex;
    gap: 5%;
  }

  .flex_container.sp .flex_item .towel .g_img_2 {
    width: 60%;
    height: 17vh;
  }

  .flex_container.sp .flex_item .towel .g_img_3 {
    width: 40%;
    height: 17vh;
  }

  .saunatext-flex,
  .saunaimg-flex {
    width: 100%;
  }

  .saunaimg-flex {
    display: flex;
    gap: 3%;
  }

  .grad .flex_container .saunaimg-flex img {
    height: auto;
  }

  .sauna-text {
    margin-top: 5%;
  }

  /* ã‚´ãƒ«ãƒ• */

  .section_3.golf .grad .flex_container .flex_item {
    width: 100%;
  }

  .section_3.golf .grad .flex_container .two_1 {
    width: 35%;
    height: auto !important;
  }

  .section_3.golf .grad .flex_container .two_2 {
    width: 60%;
    height: auto !important;
  }

  .section_1 .transparent {
    position: relative;
    width: 100%;
  }

  .golf_wrap,
  .golf_text {
    width: 100%;
  }

  .golf_wrap.image-trim {
    padding-top: 50%;
    margin-bottom: 4%;
  }

  .section_2 .container .item_container .flex_container.self .text.golf_text1 {
    width: 100%;
    margin-bottom: 5%;
  }

  .golf_grad {
    padding-top: 80px;
    padding-bottom: 0;
  }

  .golf_amenities img {
    height: 15vh;
  }

  /* ã‚¸ãƒ  */
  .section_4 h3 {
    font-size: 1.5rem;
    border-bottom: 1px solid;
    width: 100%;
    margin-bottom: 1.5rem;
    white-space: nowrap;
  }

  .section_4 .flex_container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 40px;
  }

  .section_4 .flex_container .flex_item {
    align-self: flex-end;
  }

  .section_4 .flex_container .flex_item p {
    font-size: 1rem;
  }

  .section_4 .flex_container>* {
    width: 50% !important;
    margin: 0 !important;
  }

  .section_4 .grad .flex_container .flex_item div {
    margin-top: 20px;
  }

  .grad .flex_container .flex_item div a {
    padding: 0.4rem;
  }

  .gym_text {
    padding-top: 5%;
  }

  .item_container .flex_container .gym_i_1 {
    margin-bottom: 5%;
  }

  .flex_container.sp .flex_item.gymameni-img img {
    height: 20vh;
  }
}
