@charset "UTF-8";
/* CSS Document */



/* スライド（Swiper）*/
main .swiper {
  width: 100vw;
  height: 56.25vw;
  position: absolute;
  top: 0;
  /* top: 75px; */
  left: 0;
  z-index: 10;
}
main .swiper-slide {
  text-align: center;
  font-size: 18px;
  background: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
}
main .swiper-slide picture img {
/*  display: block;*/
  width: 100vw;
  height: 56.25vw;
  object-fit: cover; /* 画像の縦横比を維持しつつ、コンテナを完全にカバー */
}
main .swiper-pagination-bullet {
  --swiper-pagination-bullet-inactive-color: #ffffff; /* 非アクティブなbulletsの色を設定 */
  --swiper-pagination-bullet-inactive-opacity: 0.45; /* 非アクティブなbulletsの透明度を設定 */
}
main .swiper-pagination-bullet-active {
  --swiper-pagination-color: #ffffff; /* アクティブなbulletsの色を設定 */
  --swiper-pagination-bullet-opacity: 0.9; /* アクティブなbulletsの透明度を設定 */
}
main .swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet, .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 5px /* ドットの間隔調整 */
}



.details_discription {
  text-align: center;
  margin-top: 120px;
}
.details_discription > h3 {
  margin: 0 auto;
}
.details_discription > h3 > picture > img {
  margin: 0 auto;
  width: 60vw;
  min-width: 330px;
  height: auto;
}




.details_spec_01 {
  display: flex;
  flex-wrap: wrap;
  font-size: 1.4rem !important;
  text-align: center;
  margin: 100px auto !important;
  width: 14.5em;
  position: relative;
}
.details_spec_01::before,
.details_spec_01::after {
  content: '';
  position: absolute;
  width: 6em;
  height: 6em;
}
.details_spec_01::before {
  border-top: solid 1px #666666;
  border-left: solid 1px #666666;
}
.details_spec_01::after {
  border-bottom: solid 1px #666666;
  border-right: solid 1px #666666;
}
.details_spec_01::before {
  top: -8.0vw;
  left: -18.0vw;
}
.details_spec_01::after {
  bottom: -8.0vw;
  right: -18.0vw;
}
.details_spec_01 dt {
  width: 9.0em;
  text-align: right;
}
.details_spec_01 dd {
  width: 4.5em;
  text-align: left;
  margin-left: 1.0em;
}
.details_spec_01 dt:first-of-type,
.details_spec_01 dd:first-of-type {
  margin-bottom: 10px;
}
.details_spec_01 dt:last-of-type,
.details_spec_01 dd:last-of-type {
  margin-top: 10px;
}
.details_spec_02 {
  display: none;
}
.details_spec_03 {
  font-size: 1.4rem !important;
  text-align: center;
  margin: 100px auto !important;
  width: 100%;
  position: relative;
}
.details_spec_03::before,
.details_spec_03::after {
  content: '';
  position: absolute;
  width: 6em;
  height: 6em;
}
.details_spec_03::before {
  top: -8.0vw;
  left: 6.0vw;
  border-top: solid 1px #666666;
  border-left: solid 1px #666666;
}
.details_spec_03::after {
  bottom: -8.0vw;
  right: 6.0vw;
  border-bottom: solid 1px #666666;
  border-right: solid 1px #666666;
}


.details_room_wrap {
  display: flex;
  flex-wrap: wrap;
  margin: 75px auto 0;
  width: 100%;
}
.details_room_wrap > img {
  width: 100%;
  height: auto;
}
.details_room_wrap > div {
  margin-left: 10px;
  width: calc(100% - 10px - 10px);
}
.details_room_wrap > div > h5 {
  font-family: Adrianna, sans-serif;
  font-size: 2.0rem;
  font-weight: 600;
  letter-spacing: 0.05em;
  line-height: 1.25;
  margin-top: 30px;
}
.details_room_wrap > div > p {
  margin-top: 10px;
  position: relative;
}



.details_specification_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  font-size: 1.4rem;
  line-height: 1.5;
  margin-top: 30px;
}
.details_specification_list > dt {
  font-weight: 500;
  text-align: right;
  margin: 14px 1.0em 0 0;
  width: calc(50% - 1.0em);
}
.details_specification_list > dd {
  margin: 14px 0 0 1.0em;
  width: calc(50% - 1.0em);
}

.details_specification_list + img {
  margin-top: 50px;
}





@media print, screen and (min-width:1000px) {
  
  
  header nav ul li:nth-of-type(4) a::after {
    width: 35px;
  }
  
  
  /* スライド（Swiper）*/
  main .swiper {
    overflow: hidden; /* コンテナからはみ出した部分を隠す */
    height: 512px;
  }
  main .swiper-slide {

  }
  main .swiper-slide picture img {
    height: 512px; /* 画像の高さを512pxに設定 */
    position: absolute; /* 絶対配置を指定 */
    top: 50%; /* 垂直方向の中央に移動 */
    left: 50%; /* 水平方向の中央に移動 */
    transform: translate(-50%, -50%); /* 画像の中心を基準に位置を調整 */
  }
  main .swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet, .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 10px /* ドットの間隔調整 */
  }
  
  
  .h4_1 + img {
    margin-top: 50px;
  }
  img + .h4_1 {
    margin-top: 80px;
  }
  
  
  .details_discription {
    margin: 150px auto 0;
  }
  .details_discription > h3 > picture > img {
    margin: 0 auto;
    width: 930px;
    height: auto;
  }

  
  .details_spec_01 {
    display: none;
  }
  .details_spec_02,
  .details_spec_03 {
    display: block;
    font-size: 1.8rem !important;
    text-align: center;
    margin: 200px auto 100px !important;
    width: 100%;
    position: relative;
  }
  .details_spec_02::before,
  .details_spec_03::before,
  .details_spec_02::after,
  .details_spec_03::after {
    content: '';
    position: absolute;
    width: 8em;
    height: 8em;
  }
  .details_spec_02::before,
  .details_spec_03::before {
    top: -5.0vw;
    left: 2.0vw;
    border-top: solid 1px #666666;
    border-left: solid 1px #666666;
  }
  .details_spec_02::after,
  .details_spec_03::after {
    bottom: -5.0vw;
    right: 2.0vw;
    border-bottom: solid 1px #666666;
    border-right: solid 1px #666666;
  }
  
  
  
  .details_room {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
/*    display: inline-block;*/
    margin: 350px auto 0;
    width: 1000px;
  }
  .details_room > p {
    display: inline-block;
    background-color: #efefef;
    font-size: 2.0rem;
    line-height: 2.0;
    text-align: center;
    margin: 120px auto;
    padding: 5px 20px;
    width: auto;
  }
  
  .details_room_wrap {
/*    display: inline-block;*/
    margin: 0;
    width: 430px;
    height: 590px;
  }
  .details_room_wrap:nth-of-type(odd) {
    margin-top: -150px;
  }
  .details_room_wrap:nth-of-type(even) {
    margin-top: 50px;
  }

  .details_room_wrap > img {
    width: 430px;
    height: 430px;
  }
  .details_room_wrap > div {
    margin-top: -40px;
    margin-left: 0;
    width: 430px;
  }
/*
  .details_room_wrap:nth-of-type(odd) > div {
    margin-top: 5px;
  }
*/
  .details_room_wrap > div > h5 {
    font-size: 2.4rem;
    line-height: 1.34;
    margin-top: 10px;
  }

  .details_room_wrap > div > p {
    font-size: 1.4rem;
    line-height: 1.5;
    text-align: left;
    text-orientation: mixed;
    margin: 0;
  }

  
  
  
  .details_specification_list {
    font-size: 1.6rem;
    margin: 50px auto 0;
    width: 500px
  }
  .details_specification_list > dt {
    margin-top: 16px;
  }
  .details_specification_list > dd {
    margin-top: 16px;
  }
  
  .details_specification_list + img {
    margin-top: 100px;
  }

  
}