﻿@charset "utf-8";

/*==================================================
  GENERAL SETTINGS
==================================================*/
.indexWire {
  max-width: 1080px;
  width: 100%;
  margin: 0 auto;
}

.btn_archive {
  text-align: center;
}

.btn_archive a {
  display: block;
  width: 90%;
  max-width: 250px;
  margin: 0 auto;
  padding: 20px 0;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1;
  text-decoration: none;
  border-radius: var(--rad-button);
  border: 1px solid var(--color-black);
  position: relative;
  letter-spacing: 0.1em;
}

.btn_archive a::after {
  position: absolute;
  content: '';
  width: 20px;
  height: 5px;
  border-right: 1px solid var(--color-black);
  border-bottom: 1px solid var(--color-black);
  top: 50%;
  right: 10%;
  transform: translateY(-50%) skew(45deg);
  transition: right 0.3s;
}

.btn_archive a:hover {
  opacity: 1;
}

.btn_archive a:hover::after {
  right: 8%;
}

/*==================================================
  TITLE COMMON
==================================================*/
.eventBox,
.searchBox,
.pickupBox,
.galleryBox,
.shopInfoBox,
.noticeBox {
  padding: 50px 0;
}

.pickupBox {
  position: relative;
  padding: 80px 0;
}

.noticeBox {
  padding: 0;
  margin: 70px 0;
}


.indexPage__ttl-ja {
  font-weight: bold;
  font-size: 1.4em;
  letter-spacing: 0.1em;
  line-height: 1.4;
}

.indexPage__ttl-en {
  font-family: var(--font-en);
  font-weight: 600;
  font-size: 3.6em;
  text-transform: uppercase;
  line-height: 1.4;
  letter-spacing: 0.1em;
}


/*
===== SLIDER ==========================================
*/
.indexmainBox {
  max-height: 500px;
  overflow: hidden;
}

/*.indexmainBox .slick-list.draggable {
  width: 100%;
}*/

.indexmainBox__wrap {
  position: relative;
  /*list-style: none;*/
  margin: 0 auto;
  /*padding: 0;*/
  /*text-align: center;
  vertical-align: middle;*/
  width: min(100vw, 1200px);
}

.indexmainSlider.slick-dotted.slick-slider {
  margin-bottom: 0;
}

.indexmainSlider__item {
  width: min(100vw, 1200px) !important;
}

.slick-slider .indexmainSlider__item {
  display: block !important;
  /*padding: 0 10px;*/
}

/*dots*/
.indexmainBox .slick-dots {
  bottom: 0;
}

.slick-dots li,
.slick-dots li button {
  width: 30px !important;
  height: 5px !important;
}

.slick-dots li button:before {
  content: "" !important;
  width: 30px !important;
  height: 5px !important;
  border-radius: 0;
  opacity: 1 !important;
}

.indexmainBox .slick-dots li.slick-active button:before {
  background: var(--color-yellow);
}

.indexmainBox .slick-dots li button:before {
  background: #fff;
}

/*
.bannerWrap {
  text-align: center;
  margin: 60px auto 0;
  max-width: 1200px;
}
*/

/*.slick-list.draggable {
  width: calc(100% - 100px);
  overflow: hidden;
  margin: 0 auto;
}*/

/*
===== EVENTBOX ==========================================
*/
.eventBox {
  overflow: hidden;
}

.eventBox__ttl {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
}

.eventBox__inner {
  padding: var(--gutter) 0;
  overflow: hidden;
}

.eventBox__inner .slick-initialized {
  /*min-height: 450px;     checkアイコン分のゆとり*/
  display: block;
}

.eventBox__list {
  /*display: -webkit-flex;*/
  /* Safari */
  display: flex;
  /*-webkit-flex-wrap: nowrap;*/
  /* Safari */
  flex-wrap: nowrap;
  /*-webkit-justify-content: center;*/
  /* Safari */
  justify-content: center;
  position: relative;
  margin-bottom: var(--gutter);
}

.eventBox .slick-list {
  overflow: visible;
}

.eventBox__item {
  width: min(31%, 365px);
  background: #fff;
  position: relative;
  margin: 0 clamp(15px, 3.2vw, 45px) 0 0;
  box-shadow: 2px 2px 7px #dadada;
  transition: 0.3s;
}

.eventBox__item:last-child {
  margin-right: 0;
}

.eventBox__item a {
  display: block;
  width: 100%;
  height: 100%;
  text-decoration: none;
}

.eventBox__checkIcon {
  width: clamp(65px, 27vw, 95px);
  aspect-ratio: 190 / 190;
  position: absolute;
  top: -11%;
  left: 15%;
  animation: balloon ease-in-out 1s infinite alternate;
}

.eventBox__photo {
  aspect-ratio: 3/ 2;
  overflow: hidden;
}

.eventBox__photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.eventBox__detail {
  padding: 10px;
  width: 100%;
  text-align: left;
}

.eventBox__iconWrap {
  font-weight: bold;
  display: flex;
  align-items: flex-start;
  gap: 5px;
}

.eventBox__iconWrap span {
  min-width: 40px;
  display: inline-block;
  text-align: center;
  line-height: 1;
  padding: 5px 7px;
}

.eventBox__itemTtl {
  font-size: 1.6rem;
  font-weight: bold;
  /*display: -webkit-box;*/
  /*-webkit-line-clamp: 2;
  -webkit-box-orient: vertical;*/
  /*-webkit-box-orient: vertical;*/
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  margin: 0.5em 0 0.1em;
}

.eventBox__date {
  margin: 5px 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: var(--color-darkgray);
  font-weight: bold;
}

.eventBox__intro {
  line-height: 1.5;
  font-size: 1.4rem;
  font-weight: 500;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}

.eventBox .slick-dots {
  bottom: -45px;
}

/*.eventBox__btn {
  margin-top: var(--gutter-narrow);
}*/

@keyframes balloon {
  0% {
    transform: translateX(-50%) rotate(2deg);
  }

  10% {
    transform: translateX(-50%) rotate(-2deg);
  }

  20% {
    transform: translateX(-50%) rotate(2deg);
  }

  30% {
    transform: translateX(-50%) rotate(-2deg);
  }

  35% {
    transform: translateX(-50%) rotate(0deg);
  }

  100% {
    transform: translateX(-50%) rotate(0deg);
  }
}

/*
===== SEARCHBOX ==========================================
*/

.searchBox {
  background: var(--color-palegray);
}

.searchBox__ttl {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  margin-bottom: 30px;
}

.searchBox__container {
  display: flex;
  justify-content: space-between;
  gap: 40px;
}

/* conditionsSearchBox */
.conditionsSearchBox {
  max-width: 420px;
  width: 40%;
  margin: 0;
  padding: var(--gutter-narrow);
  background: #fff;
  border-radius: var(--rad-common);
  display: flex;
  flex-direction: column;
  align-items: center;
}

.conditionsSearchBox .box_ttl {
  font-weight: bold;
  font-size: 20px;
  text-align: center;
  margin-bottom: 20px;
  display: inline-block;
  position: relative;
  padding: 0 55px;
}

.conditionsSearchBox .box_ttl::before,
.conditionsSearchBox .box_ttl::after {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 40px;
  height: 1px;
  background-color: var(--color-black);
}

.conditionsSearchBox .box_ttl::before {
  left: 0;
}

.conditionsSearchBox .box_ttl::after {
  right: 0;
}

.conditionsSearchBox form {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
}

.conditionsSearchBox .select_tbl tr {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 15px;
}

.conditionsSearchBox .select_tbl th {
  font-size: 1.6rem;
  font-weight: 400;
  letter-spacing: .14em;
  width: 24%;
}

.conditionsSearchBox .select_tbl td {
  width: 76%;
}

.conditionsSearchBox .select_tbl td select {
  width: 280px;
  min-height: 50px;
  padding: 13px 18px;
  border-radius: 8px;
  font-size: 1.6rem;
  font-weight: normal;
  -webkit-appearance: none;
  appearance: none;
  position: relative;
}

.conditionsSearchBox .select_tbl .select_price .select_wrap {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.conditionsSearchBox .select_tbl .select_price td select {
  width: 125px;
}

.conditionsSearchBox .select_tbl td.select_arrow {
  position: relative;
}

.conditionsSearchBox .select_tbl td.select_arrow::after {
  content: "";
  position: absolute;
  top: 21px;
  right: 0;
  width: 8px;
  height: 8px;
  border-right: 1px solid var(--color-black);
  border-bottom: 1px solid var(--color-black);
  transform: rotate(45deg);
  pointer-events: none;
}

.conditionsSearchBox .select_tbl .select_price .select_arrow {
  position: relative;
}

.conditionsSearchBox .select_tbl .select_price .select_arrow::after {
  content: "";
  position: absolute;
  top: 21px;
  right: 10px;
  width: 8px;
  height: 8px;
  border-right: 1px solid var(--color-black);
  border-bottom: 1px solid var(--color-black);
  transform: rotate(45deg);
  pointer-events: none;
}


.conditionsSearchBox .select_tbl .select_price .select_while {
  margin: 0 5px;
  font-size: 1.8rem;
}

.conditionsSearchBox .btn_search {
  margin: 0!important;
  background: #fff;
  color: var(--color-black);
  border: solid 1px var(--color-black);
  border-radius: var(--rad-button);
  letter-spacing: .14em;
  text-align: center;
  font-weight: 500;
  position: relative;
}

.conditionsSearchBox [type="button"].btn_search {
  max-width: 250px;
  width: 90%;
  padding: 0.7em 1.5em;
}

.conditionsSearchBox .btn_search::after {
  position: absolute;
  content: '';
  width: 20px;
  height: 5px;
  border-right: 1px solid var(--color-black);
  border-bottom: 1px solid var(--color-black);
  top: 50%;
  right: 10%;
  transform: translateY(-50%) skew(45deg);
  transition: right 0.3s;
}

.conditionsSearchBox .btn_search:hover::after {
  right: 8%;
}

/*
----- areasearchBox rightCont --------------------
*/
.searchBox__rightCont {
  max-width: 740px;
  width: 60%;
}

.areasearchBox__tabList {
  width: 100%;
  border-bottom: 2px solid var(--color-gray);
  display: flex;
  -webkit-flex-wrap: nowrap;
  /* Safari */
  flex-wrap: nowrap;
  /*-webkit-justify-content: flex-end;*/
  /* Safari */
  /*justify-content: flex-end;*/
  gap: 2px;
  margin-bottom: 5px;
}

.areasearchBox__tabItem {
  /*max-width: 140px;*/
  width: calc(100% / 2);
  background-color: var(--color-palegray);
  color: var(--color-darkgray);
  font-size: 1.4rem;
  font-weight: bold;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  padding: 18px 5px;
}

@media (any-hover:hover) {
  .areasearchBox__tabItem:hover {
    cursor: pointer;
    opacity: 0.7;
  }
}

.areasearchBox__tabItem.active {
  background-color: var(--color-black);
  color: #fff;
}

.areasearchBox__tabTxt {
  line-height: 1.1;
}

.areasearchBox__mapBox {
  width: 100%;
  height: 570px;
  position: relative;
  border-radius: var(--rad-common);
  overflow: hidden;
}

.areasearchBox__mapBox::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background: url(../img/index/areasearchBox_map1.webp) center / cover no-repeat;
}

.areasearchBox__mapBox::before {
  position: absolute;
  content: attr(data-en);
  text-transform: uppercase;
  display: inline-block;
  left:0;
  top: -9%;
  font-family: var(--font-en);
  font-size: clamp(30px, 14vw, 123px);
  letter-spacing: -0.05em;
  font-weight: bold;
  color: #fff;
  z-index: 0;
}

.areasearchBox__mapItem {
  text-decoration: none;
  display: block;
  z-index: 10;
}

.areasearchBox__mapItemTtl,
.areasearchBox__mapItemNumBox {
  font-weight: bold;
  text-align: center;
  line-height: 1;
}

.areasearchBox__mapItemTtl {
  margin-bottom: 5px;
  font-size: 20px;
  white-space: pre-wrap;
  background: var(--color-black);
  color: #fff;
  padding: 5px 10px;
  border-radius: var(--rad-common);
}

.areasearchBox__mapItemNumBox {
  font-size: 18px;
  color: #fff;
}

.areasearchBox__mapItemNum {
  font-family: var(--font-en);
  font-size: 24px;
  line-height: 1;
}

@media screen and (min-width: 768px) {

  .areasearchBox__mapItem {
    position: absolute;
  }
  
  /*旭川市*/
  .areasearchBox__mapBox .c-01204{
    top: 342px;
    left: 22%;
    transform: translateX(calc(-50% + 135px));
  }
  
  /*鷹栖町*/
  .areasearchBox__mapBox .c-01452{
    top: 120px;
    left: 40%;
    transform: translateX(calc(50% - 110px));
  }
  
  /*東神楽町*/
  .areasearchBox__mapBox .c-01453{
    top: 382px;
    left: 63%;
    transform: translateX(calc(-50% + 14px));
  }

  /*東川町*/
  .areasearchBox__mapBox .c-01458{
    top: 367px;
    left: 82%;
    transform: translateX(calc(-50% + 14px));
  }

  /*美瑛町*/
  .areasearchBox__mapBox .c-01459{
    top: 484px;
    left: 78%;
    transform: translateX(calc(-50% + 14px));
  }

  /*深川市*/
  .areasearchBox__mapBox .c-01228{
    top: 326px;
    left: 8%;
    transform: translateX(calc(-50% + 14px));
  }

  /*補助線*/
  .areasearchBox__mapBox .c-23102::before,
  .areasearchBox__mapBox .c-23103::before {
    position: absolute;
    content: '';
    width: 40px;
    border-top: 2px solid var(--color-darkgray);
    transform: rotate(45deg);
    top: 40px;
    left: 40px;
  }
  .areasearchBox__mapBox .c-23102::before{
    width:100px;
    top:-40px;
    left:-80px;
  }
  .areasearchBox__mapBox .c-23103::before{
    top:-20px;
    left:-40px;
  }

  /*○○群*/
  .areasearchBox__mapBox .c-23103 .areasearchBox__itemTtl{
    font-size:16px;
  }
}

/*件数表示・会員ログイン*/
.searchBox__signupBox {
  display: flex;
  align-items: stretch; 
  justify-content: center;
  gap: 20px;
  margin-top: 40px;
}

.searchBox__estateCount {
  width: 480px;
}

.searchBox__countAllTtl {
  font-weight: bold;
  font-size: 2rem;
}

.searchBox__countAllNum {
  font-size: 3.9em;
  font-weight: bold;
  font-family: var(--font-en);
  line-height: 1.1;
  margin-right: 3px;
}

.searchBox__countAllTxt {
  font-weight: bold;
  font-size: 2.2em;
  text-align: right;
}

.searchBox__countDetail {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 40px;
  margin-top: 10px;
}

.searchBox__detailItem {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.searchBox__detailItemTtl {
  font-size: 1.6rem;
}

.searchBox__detailItemTxt {
  font-weight: 500;
  font-size: 1.6rem;
}

.searchBox__detailItemTxt .num {
  font-size: 2.5em;
  font-family: var(--font-en);
  font-weight: 600;
  line-height: 1.3;
  margin-right: 3px;
}

.searchBox__detailItemTxt--emember .num {
  color: var(--color-red);
}

.searchBox__loginBox {
  width: 340px;
  background: #fff;
  border-radius: var(--rad-common);
}

.searchBox__login {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 20px;
  padding: 40px 25px;
}

.searchBox__loginTtl {
  font-size: 1.4em;
  font-weight: 500;
  display: inline-block;
  padding: 0 55px;
  position: relative;
  text-align: center;
}

.searchBox__loginTtl::before,
.searchBox__loginTtl::after {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 40px;
  height: 1px;
  background-color: var(--color-black);
}

.searchBox__loginTtl::before {
  left: 0;
}

.searchBox__loginTtl::after {
  right: 0;
}

.searchBox__loginInner {
  width: 100%;
}

.searchBox__loginInner form {
  display: flex;
  flex-direction: column;
  gap: 10px;
  align-items: center;
}

.searchBox__inputLoginBox {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
}

.searchBox__loginLabel {
  font-weight: bold;
  font-size: 1.6rem;
  font-family: var(--font-en);
  color: #333;
}

input[type="text"].searchBox__loginInput,
input[type="password"].searchBox__loginInput {
  padding: 6px 10px;
  -webkit-appearance: none;
  appearance: none;
  max-width: 70%;
}

.searchBox__loginBtnBox {
  width: 90%;
  max-width: 230px;
  text-align: center;
  margin-top: 10px;
  position: relative;
}

input[type="submit"].searchBox__loginBtn {
  border: solid 1px var(--color-black);
  border-radius: var(--rad-button);
  width: 100%;
  font-size: 1.3em;
  padding: 12px 20px;
  font-weight: 500;
}

.searchBox__loginBtnBox::after {
  position: absolute;
  content: '';
  width: 20px;
  height: 5px;
  border-right: 1px solid var(--color-black);
  border-bottom: 1px solid var(--color-black);
  top: 50%;
  right: 10%;
  transform: translateY(-50%) skew(45deg);
  transition: right 0.3s;
}

.searchBox__loginBtnBox:hover::after {
  right: 8%;
}

/*ログイン時は会員メニュー*/
.searchBox__memberInner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
}

.searchBox__memberName {
  font-size: 1.2em;
  font-weight: 500;
}

.searchBox__menuBtn {
  max-width: 290px;
  text-align: center;
  margin: 10px 0;
  position: relative;
}

.searchBox__menuBtn a {
  border: solid 1px var(--color-black);
  border-radius: var(--rad-button);
  display: block;
  width: 100%;
  font-size: 1.3em;
  padding: 12px 20px;
  font-weight: 500;
}

.searchBox__logoutBtn {
  max-width: 290px;
  text-align: center;
  margin: 10px 0;
  position: relative;
}

input[type="submit"].searchBox__logout {
  border-radius: var(--rad-button);
  display: block;
  width: 100%;
  font-size: 1.3em;
  padding: 18px 20px;
  font-weight: 500;
}

.searchBox__signup {
  background: #fff;
  border-radius: var(--rad-common);
  width: 340px;
}

.searchBox__signupTtl {
  background: var(--color-red);
  color: #fff;
  font-size: clamp(3rem, 9vw, 3.8rem);
  font-weight: bold;
  padding: 15px 45px;
  text-align: center;
  border-radius: var(--rad-common) var(--rad-common) 0 0;
  line-height: 1.4;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.searchBox__signupTtl--sub {
  font-size: 0.5em;
}

.searchBox__signupTtlWrap {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
}

.searchBox__signupTtl--free {
  font-size: 1.4rem;
  background: var(--color-yellow);
  color: var(--color-black);
  width: 45px;
  height: 45px;
  border-radius: 50%;
  line-height: 1.1;
  display: flex;
  align-items: center;
  justify-content: center; 
}

.searchBox__signupTtl--member {
  background: var(--color-yellow);
  color: var(--color-black);
}

.searchBox__signupTtl--member .searchBox__signupTtl--free {
  background: #fff;
  border: solid 1px var(--color-black);
}

.searchBox__signupWrap {
  padding: 20px var(--gutter);
}

.searchBox__signupTxt {
  font-size: 1.6rem;
  font-weight: 500;
}

.searchBox__signupTxt--member {
  text-align: center;
}

.searchBox__shopCount {
  color: var(--color-red);
  font-size: 1.2em;
  font-weight: bold;
}

.searchBox__shopCountNum {
  font-family: var(--font-en);
  font-weight: 800;
  font-size: 1.7em;
}

.searchBox__signupBtn {
  max-width: 230px;
  width: 300px;
  text-align: center;
  margin-top: 10px;
}

.searchBox__signupBtn a {
  display: block;
  position: relative;
  background: var(--color-red);
  color: #fff;
  border: solid 1px var(--color-black);
  border-radius: var(--rad-button);
  font-size: 1.3em;
  padding: 12px 20px;
  font-weight: 500;
}

.searchBox__signupBtn a::after {
  position: absolute;
  content: '';
  width: 20px;
  height: 5px;
  border-right: 1px solid #fff;
  border-bottom: 1px solid #fff;
  top: 50%;
  right: 9%;
  transform: translateY(-50%) skew(45deg);
  transition: right 0.3s;
}

.searchBox__signupBtn--member a {
  background: var(--color-yellow);
  color: var(--color-black);
}

.searchBox__signupBtn--member a::after {
  border-color: var(--color-black);
}

.searchBox__signupBtn a:hover::after {
  right: 7%;
}


/*
===== RECOMBOX 注目物件／リフォーム済みおすすめ物件 ==========================================
*/

.recom {
  padding: 50px 0 70px;
  overflow: hidden;
}

/*
.recomBox {
  padding-bottom: 100px;
}
*/

.pickupBox__ttl,
.recomBox__ttl {
  text-align: left;
  margin-bottom: 30px;
  display: flex;
  flex-direction: column;
  position: relative;
}

.pickupBox__ttl .indexPage__ttl-en,
.recomBox__ttl .indexPage__ttl-en {
  font-size: 5em;
  line-height: 1;
}

.pickupBox__ttl::before,
.recomBox__ttl::before {
  content: '';
  position: absolute;
  top: 37%;
  display: inline-block;
  width: calc((100vw - 1200px) / 2 - 40px);
  height: 1px;
  background-color: var(--color-black);
  left: 0;
}

.pickupBox__ttl .indexPage__ttl-ja,
.recomBox__ttl .indexPage__ttl-ja {
  font-size: 1.4em;
}

.recom .slick-dots {
  bottom: -50px;
}

.recom #itemList {
  display: flex;
  align-items: stretch;
  justify-content: center;
  flex-wrap: wrap;
  min-height: 200px;
  position: relative;
  display: flex;
}

.recom .slick-list {
  overflow: visible;
}

.recom .item {
  display: inline-block;
  width: 300px;
  background: #FFF;
  border: solid 1px var(--color-black);
  border-radius: var(--rad-common);
  margin: 0 15px;
  overflow: hidden;
  min-height: 190px;
}

.recomBox.recom_re .item.emember {
  border: solid 1px #CCC;
}

/*
.recomBox.recom .item.emember {
  border: none;
}
*/

.recomBox.recom .item.emember a {
  padding: 0;
}

.recom .item.emember a img {
  width: 100%;
  height: 100%;
  overflow: hidden;
  object-fit: cover;
}

/*-------------------------▲*/
.recom .item .generalItem {
  width: 100%;
  height: 100%;
  display: block;
  text-decoration: none;
}

.recom .item .inner {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.recom .item .box01 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 0 10px;
  height: 40px;
}

.recom .item .box01 .icon img {
  width: 50px;
  aspect-ratio: 120 / 48;
  display: inline-block !important;
  margin-right: 3px;
}

.recomBox_inner {
  display: flex;
  margin-bottom: 10px;
  height: 7.6em;
  flex-grow: 1;
}

.recom .item .price {
  font-weight: bold;
  font-size: 1.2rem;
}

.recom .item .price span {
  font-size: 1.8rem;
  font-weight: bold;
  font-family: var(--font-en);
}

.recom .item .photo {
  max-width: 107px;
  margin: 0 10px;
}

.recom .item .photo img {
  aspect-ratio: 270 / 185;
  width: 100%;
  height: auto;
  object-fit: contain;
}

.recom .item .box03 {
  overflow: hidden;
}

.recom .item .info {
  text-align: left;
  margin-right: 10px;
}

.recom .item .info h3.ttl {
  font-size: 1.4rem;
  font-weight: bold;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}


.recom .item .info .details {
  font-size: 1.2rem;
  font-weight: 500;
}

.recom .item .info .details li {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.recom .item .box04 {
  background: var(--color-palegray);
}

.recom .item .payment_pay {
  height: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  min-height: 34px;
}

.recom .item .payment_pay dl {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.recom .item .payment_pay dt,
.recom .item .payment_pay dd {
  font-weight: bold;
  font-size: 1.1rem;
  white-space: nowrap;
}

.recom .item .payment_pay dd span {
  font-size: 1.6rem;
  margin: 0 3px;
}

.recom .item .payment_pay .payment_txt {
  padding: 5px;
  font-size: 1rem;
  line-height: 1.2;
  font-weight: 500;
  text-align: center;
}

/* スタッフコメント */
.recom .item .staffComment {
  display: flex;
  justify-content: space-between;
  border-top: 1px dotted #ccc;
}

.recom .item .staffComment_img {
  width: 80px;
  height: auto;
  aspect-ratio: 1 / 1;
  margin: 5px 0 5px 8px;
}

.recom .item .staffComment_img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.recom .item .staffComment_txtBox {
  width: calc(100% - 80px);
  padding: 7px 8px 5px;
  text-align: left;
}

.recom .item .staffComment_name {
  font-size: 1.3rem;
  font-weight: bold;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.recom .item .staffComment_txt {
  font-size: 1.2rem;
  line-height: 1.4;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/*会員限定物件*/
.recom .item.emember {
  position: relative;
}

.recom .item .memberItem {
  width: 100%;
  height: 100%;
}

.recom .memberItem .memberItem__body {
  width: 100%;
  height: 100%;
  aspect-ratio: auto;
  background: url(../img/basic/btn_prpregist.webp) no-repeat center/cover;
}

.recom .memberItem .memberItem__txt {
  font-size: 1.6rem;
  margin: 10px auto clamp(10px, 2vw, 15px);
  letter-spacing: 0.05em;
  line-height: 1.5;
  color: var(--color-black);
}

.memberItemBtn {
  margin: 0;
  display: block;
  width: 100%;
  max-width: 210px;
}

.memberItemBtn__inner {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  position: relative;
  width: 100%;
  height: 100%;
  font-size: 1.2rem;
  padding: 0.8em 1.5em;
  text-align: center;
  background-color: var(--color-red);
  color: #fff;
  font-weight: bold;
  line-height: 1.3;
  font-feature-settings: 'palt';
  letter-spacing: 0.1em;
  border: solid 1px var(--color-black);
  border-radius: var(--rad-button);
  animation: 1.4s fuwafuwa infinite ease-in-out;
}

@keyframes fuwafuwa {
  0%, 100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-4px);
  }
}

.memberItemBtn__main {
  font-size: 1.6em;
}

.memberItemBtn::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transition: 0.3s;
}

.memberItemBtn__inner::after {
  position: absolute;
  content: '';
  width: 20px;
  height: 5px;
  border-right: 1px solid #fff;
  border-bottom: 1px solid #fff;
  top: 50%;
  right: 9%;
  transform: translateY(-50%) skew(45deg);
  transition: right 0.3s;
}

/*
===== MODELROOMBOX ==========================================
*/
.modelroomBox {
  overflow: hidden;
  background: var(--color-navy);
  padding: 110px 0 70px;
  position: relative;
}

.modelroomBox::before {
  position: absolute;
  content: "";
  width: clamp(180px, 31vw, 500px);
  background: url(../img/index/bg_modelroom.webp) no-repeat right / contain;
  aspect-ratio: 998 / 425;
  top: 14%;
  right: 3%;
}

.modelroomBox__inner {
  position: relative;
  margin-bottom: 60px;
}

.modelroomBox__ttl {
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--font-en);
  font-size: clamp(3rem, 9vw, 3.6em);
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  line-height: 1.1;
  color: #fff;
  margin-bottom: 25px;
  position: relative;
}

.modelroomBox__ttl::before {
  content: "";
  position: absolute;
  width: clamp(200px, 32vw, 270px);
  aspect-ratio: 226 / 45;
  background: url(../img/index/ttl_modelroom_01.svg) no-repeat center / contain;
  top: -70%;
  left: 10%;
}

.modelroomBox__ttl--symbol {
  font-size: 0.8em;
  position: relative;
  top: 0.07em;
}

.modelroomBox__intro {
  text-align: center;
  font-size: 2rem;
  line-height: 2;
  letter-spacing: 0.1em;
  color: #fff;
  margin-bottom: 60px;
}

.modelroomBox__info {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 60px;
  color: #fff;
}

.modelroomBox__info img {
  max-width: 45%;
}

.modelroomBox__infoTxtWrap {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.modelroomBox__infoTxt {
  font-size: 1.6rem;
  line-height: 2;
}

/*アイテムスライダー*/
.modelroomBox__slide {
  margin-bottom: 60px;
  position: relative;
}

.modelroomBox__item {
  color: #fff;
  margin-right: 60px;
}

.modelroomBox__list .slick-list.draggable {
  width: 100%;
}

.modelroomBox__photo {
  margin-bottom: 100px;
}

.modelroomBox__photo .object_fit_img {
  max-width: 800px;
  height: 450px;
  aspect-ratio: 800 / 450;
}

.modelroomBox .icon_reservable {
  /*background: #D7CBA0;
  border-color: #D7CBA0;*/
  border-radius: 0;
  padding: 5px 20px;
  margin-bottom: 12px;
}

.modelroomBox__item a {
  position: relative;
  display: block;
}

.modelroomBox__itemInfo {
  position: absolute;
  top: 380px;
  left: 30px;
}

/* Firefox */
@-moz-document url-prefix() {
  .modelroomBox__itemInfo {
    min-width: 600px;
    top: 400px;
  }
}

.modelroomBox .icon_reservable p {
  font-size: clamp(1.4rem, 2vw, 1.6rem);
  font-weight: 500;
  color: var(--color-black);
}

.modelroomBox__itemTtl--en {
  font-family: var(--font-en);
  font-size: clamp(3rem, 5vw, 5rem);
  font-family: var(--font-en);
  font-weight: 600;
  margin-bottom: 5px;
  line-height: 1;
  letter-spacing: 0.2em;
}

.modelroomBox__itemTtl--ja {
  font-size: 1.6rem;
  font-weight: 400;
}

.modelroomBox__slide .slick-dots li.slick-active button::before {
  background: #fff;
}

.modelroomBox__slide .slick-dots li button:before {
  background: rgba(255, 255, 255, 0.2);
}

.modelroomBox__btn a {
  background: #fff;
}

/*
===== GALLERYBOX ==========================================
*/
.galleryBox {
  margin: 70px 0;
  padding: 0;
  overflow: hidden;
  position: relative;
}

.galleryBox::after {
  position: absolute;
  background: var(--color-paleyellow);
  content: "";
  display: block;
  width: 80%;
  height: 95.5%;
  bottom: 0;
  transform: translateX(28%);
  z-index: -1;
}

.galleryBox__ttl {
  text-align: center;
  margin-bottom: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  flex-wrap: wrap;
}

@media (min-width: 768px) and (max-width: 786px) {
  .galleryBox__ttl {
    gap: 0;
  }
}

.galleryBox__ttl .indexPage__ttl-en {
  font-size: clamp(2.3rem, 7vw, 3.6em);
  text-align: left;
}

.galleryBox__inner {
  overflow: hidden;
}

.galleryBox__inner .slick-initialized {
  min-height: 200px;
}

.galleryBox__list {
  display: -webkit-flex;
  /* Safari */
  display: flex;
  -webkit-flex-wrap: nowrap;
  /* Safari */
  flex-wrap: nowrap;
  -webkit-justify-content: center;
  /* Safari */
  justify-content: center;
  position: relative;
}

.galleryBox__item {
  width: min(31%, 380px);
  text-align: center;
  position: relative;
  margin: 0 15px;
}

.galleryBox__item a {
  display: block;
  width: 100%;
  height: 100%;
  text-decoration: none;
}

.galleryBox__photo img {
  width: 100%;
  height: 495px;
}

.galleryBox__detailTtl {
  font-weight: bold;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  font-size: 20px;
  text-align: left;
  margin-top: 10px;
}

.galleryBox__btn {
  margin: 40px 0;
}

.galleryBox__btn a {
  background: #fff;
}

/*
===== SHOPINFOBOX ==========================================
*/
.shopInfoBox{
  padding-bottom: 0;
}

/*
===== NOTICEBOX ==========================================
*/
.noticeBox__inner {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.topicsBox__ttl,
.columnBox__ttl {
  margin-bottom: 40px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.topicsBox__item {
  border-bottom: solid 1px var(--color-black);
}

.topicsBox__item a {
  display: flex;
  -webkit-align-items: center;
  align-items: flex-start;
  flex-direction: column;
  padding: 10px 0;
  position: relative;
}

.topicsBox__item:first-of-type a {
  padding-top: 0;
}

.topicsBox__item a::after {
  position: absolute;
  content: '';
  width: 20px;
  height: 5px;
  border-right: 1px solid var(--color-black);
  border-bottom: 1px solid var(--color-black);
  top: 50%;
  right: 5%;
  transform: translateY(-50%) skew(45deg);
  transition: right 0.3s;
}

.topicsBox__item a:hover:after {
  right: 3%;
}

.topicsBox__date {
  width: 60%;
  max-width: 150px;
  flex-shrink: 0;
  font-weight: 400;
  font-family: var(--font-en);
  color: #333;
}

.topicsBox__itemTtl {
  width: 75%;
  max-width: 360px;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

.noticeBox .cate_new,
.noticeBox .cate_popular {
  padding: 0 5px;
  font-weight: bold;
  font-size: 1rem;
  border-radius: 2px;
}

.columnBox__item {
  display: block;
}

.columnBox__item:nth-child(even) {
  margin: 20px 0;
}

.columnBox__item a {
  display: flex;
  text-decoration: none;
  align-items: flex-start;
  gap: 15px;
}

.columnBox__photo {
  width: 25%;
  display: inline-block;
  vertical-align: middle;
}

.columnBox__photo img {
  width: 130px;
  height: 90px;
}

.columnBox__detail {
  width: calc(100% - 30%);
  max-width: 410px;
  display: inline-block;
  vertical-align: middle;
  margin-left: 10px;
}

.columnBox__detail dt {
  display: flex;
  align-items: center;
  gap: 5px;
}

.columnBox__iconWrap {
  font-weight: bold;
  display: flex;
  align-items: flex-start;
  gap: 5px;
}

.columnBox__infoList {
  display: inline-block;
}

.columnBox__infoItem {
  margin-right: 5px;
  display: inline-block;
}

.columnBox__date {
  font-weight: 400;
  font-family: var(--font-en);
  color: #333;

}

.columnBox__cate {
  font-weight: normal;
}

.topicsBox,
.columnBox {
  width: calc((100% - 80px)/2);
  position: relative;
}

.topicsBox__inner,
.columnBox__inner {
  min-height: 280px;
  margin-bottom: 40px;
}

/*
===== SNSBOX ==========================================
*/
.SNSBox {
  background: var(--color-palegray);
  padding: 50px;
}

.SNSBox ul {
  max-width: 1080px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  text-align: center;
}

.SNSBox ul li {
  width: 48%;
  margin-bottom: 30px;
}

.SNSBox ul li.col1{
  width: 100%;
}

/*==================================================
  tablet SETTINGS : Min768px Max1080px
==================================================*/
@media screen and (min-width: 768px) and (max-width: 1080px) {
  .indexWire {
    width: 98%;
    margin: 0 auto;
    overflow: hidden;
  }

  .indexmainBox .slick-dots {
    bottom: 15px;
  }

  .indexmainBox .slick-dots li button:before {
    background: var(--color-palegray);
  }

  .indexmainSlider__item {
    width: 100%;
    height: 46.3vw !important;
  }

  .bannerWrap {
    margin: 30px auto;
    width: 96%;
  }

  /*イベント情報*/
  .eventBox__list {
    gap: 0;
  }

  .searchBox__container {
    flex-wrap: wrap;
  }

  .conditionsSearchBox {
    width: 100%;
    max-width: 100%;
  }

  .conditionsSearchBox .select_tbl {
    width: 100%;
  }

  .conditionsSearchBox .select_tbl td, 
  .conditionsSearchBox .select_tbl td select {
    width: 100%;
  }

  .conditionsSearchBox .select_tbl .select_price td select {
    width: 100%;
  }

  .conditionsSearchBox .select_tbl .select_price .select_arrow {
    width: 40%;
  }

  .conditionsSearchBox .select_tbl td.select_arrow::after {
    right: 20px;
  }

  .conditionsSearchBox .select_tbl .select_price .select_arrow::after {
    right: 12px;
  }

  .areasearchBox {
    width: 100%;
    max-width: 100%;
  }

  .areasearchBox__tabItem {
    max-width: calc(100% / 2);
  }

  .areasearchBox__mapBox::after {
    background-position: -10px 80%;
  }

  
  .searchBox__signupBox {
    flex-wrap: wrap;
    justify-content: center;
    gap: 30px;
  }

  .searchBox__estateCount {
    width: 100%;
    margin-bottom: 20px;
    display: flex;
    justify-content: center;
    gap: 30px;
  }

  .searchBox__countAllTxt {
    font-size: 2em;
  }

  .searchBox__countDetail {
    justify-content: flex-start;
    transform: translateY(3vh);
    gap: 10px
  }

  .searchBox__loginBox {
    width: 46%;
  }

  .searchBox__inputLoginBox {
    /*justify-content: center;*/
    gap: 15px;
    width: clamp(85%,34vw,90%);
  }
  

  /* 地図 */
  .areasearchBox__mapBox {
    background-size: cover;
  }

  /*名古屋市千種区*/
   .areasearchBox__mapBox .c-23101{
    top: 241px;
  }

  /*名古屋市中川区*/
  .areasearchBox__mapBox .c-23102{
    top: 327px;
  }

  /*名古屋市港区*/
  .areasearchBox__mapBox .c-23103{
    top: 416px;
  }

  /*北区*/
  .areasearchBox__mapBox .c-01102 {
    top: 80px;
    left: 58%;
    transform: translateX(calc(-80% - 50px));
  }

  /*
  ===== MODELROOMBOX ==========================================
  */
  .modelroomBox__ttl::before {
    top: -88%;
    left: -3%;
  }

  .modelroomBox__slide {
    margin-bottom: var(--gutter-wide);
  }

  .modelroomBox .slick-dots {
    bottom: -45px;
  }

  .modelroomBox__photo .object_fit_img {
    width: 680px;
    height: 380px
  }

  .modelroomBox__item {
    margin-right: 30px;
  }

  .modelroomBox__itemInfo {
    top: 320px;
  }
  

}

/*==================================================
  tablet SETTINGS : Min1081px Max1200px
==================================================*/
@media screen and (min-width: 1081px) and (max-width: 1200px) {
  .eventBox__item {
    width: 370px;
  }
}

/*==================================================
  SP SETTINGS : Max767px
==================================================*/

@media screen and (max-width: 767px) {
  .indexWire {
    width: 98%;
    margin: 0 auto;
    overflow: hidden;
  }

  .eventBox,
  .searchBox,
  .galleryBox,
  .shopInfoBox,
  .topicsBox,
  .columnBox {
    padding: 10% 0;
  }

  
  .indexmainBox{
    max-height: 47vw;
    /*aspect-ratio: 1200 / 500;*/
  }
  

  .indexmainSlider.slick-dotted.slick-slider {
    margin-bottom: 30px;
  }

  .indexmainBox .slick-dots {
    bottom: -25px;
  }



  /*.slick-list.draggable {
    width: calc(100% - 60px);
    overflow: visible;
  }*/

  .indexPage .slick-track {
    min-width: 1200px;
  }

  .indexmainSlider__item {
    width: auto !important;
  }

  .slick-slider .indexmainSlider__item {
    padding: 0;
  }

  /*
  .slick-dots li button:before {
    width: 8px !important;
    height: 8px !important;
  }
  */

  .indexmainBox .slick-dots li button:before {
    background: var(--color-lightgray);
  }

  .bannerWrap--fv {
    margin-top: 10px;
  }

  /*
  ===== spInfoBox - SP   ==========================================
  */
  .spInfoBox {
    width: 100%;
    margin: 20px auto 0;
    padding: 10px 0;
  }

  .spInfoBox__countAll {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    line-height: 1.2;
    font-size: 1.6rem;
    font-weight: bold;
    padding: 3% 5%;
    background: var(--color-navy);
    color: #fff;
  }

  .spInfoBox__countAllNum {
    font-size: 3rem;
    font-family: var(--font-en);
  }

  .spInfoBox__countDetail {
    padding: 10px;
    display: flex;
    justify-content: space-around;
    align-items: center;
    flex-wrap: wrap;
    gap: 5%;
  }

  .spInfoBox__detailItem {
    margin: 10px 0;
    text-align: center;
    font-weight: bold;
    line-height: 1.2;
  }

  .spInfoBox__detailItemTxt .num {
    font-size: 2.5rem;
    font-family: var(--font-en);
  }

  .spInfoBox__detailItemTtl-general,
  .spInfoBox__detailItemTxt-general {
    color: var(--color-black);
  }

  .spInfoBox__detailItemTtl-emember,
  .spInfoBox__detailItemTxt-emember {
    color: var(--color-red);
  }

  .spInfoBox__detailItemTtl-shop,
  .spInfoBox__detailItemTxt-shop {
    color: var(--color-black);
  }

  .spInfoBox__btnBox {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 3%;
    margin-top: 15px;
    font-weight: 500;
    padding: 0 10px;
  }

  .spInfoBox__btnBalloon {
    position: absolute;
    font-size: 0.75em;
    display: block;
    top: -15px;
    white-space: nowrap;
    padding: 0.3em 0.5em;
    background-color: var(--color-yellow);
    color: var(--color-black);
    border-radius: var(--rad-button);
    left: 50%;
    transform: translateX(-50%);
    font-feature-settings: "palt";
    letter-spacing: 0.05em;
    transform-origin: center;
    animation: balloon ease-in-out 1s infinite alternate;
  }

  .spInfoBox__btn {
    width: 90%;
    max-width: 250px;
    padding: 1em 0;
    text-align: center;
    font-size: clamp(1.3rem, 5vw, 1.6rem);
    letter-spacing: 0.1em;
    position: relative;
    border: 1px solid var(--color-black);
    border-radius: var(--rad-button);
  }

  .spInfoBox__btn::after {
    position: absolute;
    content: '';
    width: 20px;
    height: 5px;
    border-right: 1px solid var(--color-black);
    border-bottom: 1px solid var(--color-black);
    top: 50%;
    right: 10%;
    transform: translateY(-50%) skew(45deg);
  }

  .spInfoBox__btnBalloon::after {
    content: "";
    border-top: 4px solid var(--color-yellow);
    border-left: 4px solid transparent;
    border-right: 4px solid transparent;
    position: absolute;
    bottom: -4px;
    left: 50%;
    transform: translateX(-50%);
  }

  /*
  ===== EVENTBOX - SP ==========================================
  */
  .eventBox {
    overflow: hidden;
  }

  /*
  .eventBox__ttl {
    width: 45%;
    margin: 0 auto 20px;
  }
  */

  .eventBox__inner {
    width: 96%;
    margin: 0 auto;
    padding: 10% 0;
  }

  /*.eventBox__inner .slick-initialized {
    min-height: 100px;
  }*/

  .eventBox__list {
    display: block;
    text-align: center;
    margin-bottom: 40px!important;
  }

  .eventBox .slick-dots {
    bottom: -35px;
  }

  .eventBox__item {
    max-width: 80vw;
    width: 360px;
    margin: 0 2vw;
    display: inline-block;
  }

  .eventBox__item:last-child {
    margin: 0 2vw;
  }

  /*スライドのばらけ防止*/
  .eventBox__item:not(:first-child) {
    display: none;
  }

  .slick-slider .eventBox__item {
    display: block !important;
  }

  .eventBox__checkIcon {
    left: 17%;
    top: -9%;
  }


  .eventBox__detail {
    padding: 10px;
    display: inline-block;
    width: 100%;
  }

  .eventBox__iconWrap {
    margin-bottom: 5px;
  }

  .eventBox__iconWrap span {
    padding: 5px;
    font-size: 11px;
    margin-right: 5px;
  }

  .eventBox__detail dt,
  .eventBox__detail dd {
    /*white-space: nowrap;*/
    text-overflow: ellipsis;
    overflow: hidden;
    font-size: 1.4rem;
  }

  /*
  ===== SEARCHBOX - SP ==========================================
  */

  .searchBox__ttl {
    margin-bottom: 20px;
  }

  .searchBox__ttl img {
    width: 45%;
  }

  .searchBox__container {
    flex-direction: column-reverse;
  }

  /*条件で検索*/
  .conditionsSearchBox {
    width: 100%;
    max-width: 100%;
  }

  .conditionsSearchBox .select_tbl {
    width: 100%;
  }

  .conditionsSearchBox .select_tbl th {
    width: 28%;
  }

  .conditionsSearchBox .select_tbl td {
    width: 85%;
  }

  .conditionsSearchBox .select_tbl td select {
    width: 100%;
    padding: 10px;
    font-size: 1.5rem;
  }

  .conditionsSearchBox .select_tbl th {
    width: 28%;
    font-size: 1.5rem;
  }

  .conditionsSearchBox .select_tbl td {
    width: 85%;
  }

  .conditionsSearchBox .select_tbl .select_price td select {
    width: 100%;
  }

  /*エリア別物件一覧*/
  .searchBox__rightCont {
    width: 100%;
    max-width: unset;
  }

  .areasearchBox__tabList {
    background: none;
    flex-wrap: wrap;
    justify-content: center;
  }

  .areasearchBox__tabItem {
    width: 32%;
    max-width: unset;
    flex-grow: 1;
  }

  .areasearchBox__tabItem:nth-of-type(1),
  .areasearchBox__tabItem:nth-of-type(2) {
    width: 49%;
  }

  .areasearchBox__mapBox {
    background: none;
    height: unset;
  }

  .areasearchBox__mapBox::before,
  .areasearchBox__mapBox::after {
    content: none;
  }

  .areasearchBox__mapInner {
    display: flex;
    flex-wrap: wrap;
  }

  .areasearchBox__mapItem {
    border: 1px solid #ccc;
    width: 48%;
    margin: 5px 1% 0;
    position: static;
    background-color: #fff;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }

  .areasearchBox__mapItemInner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 15px 5px;
    width: 100%;
  }

  .areasearchBox__mapItemTtl,
  .areasearchBox__mapItemNumBox {
    font-size: 18px;
    font-weight: 600;
    text-shadow: none;
    color: var(--color-black);
    background: none;
  }

  .areasearchBox__mapItemNum {
    font-size: 17px;
  }

  /*物件数～会員登録*/
  .searchBox__signupBox {
    flex-direction: column;
    gap: 20px;
  }

  .searchBox__estateCount {
    width: 100%;
  }

  .searchBox__countAllNum {
    font-size: 3em;
  }
  
  .searchBox__loginBox {
    width: 100%;
  }

  .searchBox__signupWrap {
    display: flex;
    flex-direction: column;
    align-items: center;
  }


  /*
  ===== PICKUPBOX・RECOMBOX ==========================================
  */

  .pickupBox,
  .recomBox {
    overflow: hidden;
  }

  .pickupBox {
    padding: 15% 0;
  }

  .pickupBox__ttl .indexPage__ttl-en,
   .recomBox__ttl .indexPage__ttl-en {
    font-size: 4em;
   }

  .recom .slick-dots {
    bottom: -60px;
  }

  /*
  ===== MODELROOMBOX ==========================================
  */
  .modelroomBox {
    padding: 80px 0 50px;
  }

  .modelroomBox::before {
    top: 6%;
  }

  .modelroomBox__ttl {
    flex-direction: column;
  }

  .modelroomBox__ttl::before {
    top: -35%;
    left: 0%;
  }

  .modelroomBox__intro {
    margin-bottom: var(--gutter);
  }

  .modelroomBox__info {
    flex-direction: column;
    gap: 30px;
  }

  .modelroomBox__info img {
    max-width: 95%;
  }

  /*スライダー*/
  .modelroomBox__slide {
    margin-bottom: 30px;
  }

  .modelroomBox__list .slick-list.draggable {
    overflow: hidden;
  }

  .modelroomBox__photo .object_fit_img {
    max-width: 100%;
    width: 390px;
    /* width: 100%; */
    height: 220px;
    aspect-ratio: 390 / 220;
  }

  .modelroomBox__itemInfo {
    top: 165px;
    padding-right: 30px;
  }

  /* Firefox */
  @-moz-document url-prefix() {
    .modelroomBox__itemInfo {
      min-width: 320px;
    }
  }

  .modelroomBox__slide .slick-dots {
    bottom: 0;
  }

  /*
  ===== GALLERYBOX ==========================================
  */
  .galleryBox {
    overflow: hidden;
    padding: 0;
    margin: 10% 0;
  }

  .galleryBox::after {
    height: 92.5%;
  }

  .galleryBox__ttl {
    margin-bottom: 5%;
    gap: 0;
  }

  .galleryBox__item{
    max-width: 85vw;
    width: 360px;
  }

  /*
  ===== noticeBox ==========================================
  */
  .noticeBox {
    padding: 0;
    margin: 10% 0;
  }

  .noticeBox__inner {
    flex-direction: column;
    padding: 0;
    width: 96%;
  }

  .topicsBox,
  .columnBox {
    width: 100%;
    max-width: unset;
  }

  .topicsBox__inner,
  .columnBox__inner {
    min-height: unset;
  }

  .topicsBox__item a {
    flex-direction: column;
    align-items: baseline;
  }

  .topicsBox__item a::after {
    top: 60%;
  }

  .topicsBox__date,
  .topicsBox__itemTtl {
    width: 100%;
    margin: 0;
  }

  .topicsBox__itemTtl {
    padding-right: var(--gutter-wide);
  }

  /*
  ===== SNSBOX ==========================================
  */
  .SNSBox {
    padding: 10% 2%;
  }

  .SNSBox ul {
    flex-direction: column;
    gap: 10px;
  }

  .SNSBox ul li {
    width: 100%;
  }
}
