@charset "utf-8";

body {
  margin: 0 auto;
  padding: 0;
  font-size: 14px;
  line-height: 1.7;
  background: #fff;
  position: relative;
  color: #63636d;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック",
    "MS PGothic", sans-serif;
  font-weight: 400;
  text-align: left;
}

a {
  color: inherit;
  text-decoration: none;
}

img {
  max-width: 100%;
}

.mincho {
  font-family: "Noto Serif JP", 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", serif;
}

.ivypresto-display {
  font-family: ivypresto-display, serif;
  font-weight: 400;
  font-style: normal;
}

.jost {
  font-family: "Jost", sans-serif;
}

.inner {
  width: 90%;
  margin: auto;
  position: relative;
}

.btn {
  max-width: 250px;
  width: 90%;
  height: 65px;
  margin: auto;
  background: #c0a799;
  /* background: -moz-linear-gradient(-45deg,  rgba(253,92,92,1) 15%, rgba(253,92,92,1) 15%, rgba(65,181,145,1) 100%);
	background: -webkit-linear-gradient(-45deg,  rgba(253,92,92,1) 15%,rgba(253,92,92,1) 15%,rgba(65,181,145,1) 100%);
	background: linear-gradient(135deg,  rgba(253,92,92,1) 15%,rgba(253,92,92,1) 15%,rgba(65,181,145,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fd5c5c', endColorstr='#41b591',GradientType=1 ); */
  border-radius: 100px;
  text-align: center;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}

.btn span {
  /* width: calc(100% - 4px);
	height: calc(100% - 4px);
	border-radius: 100px;
	background: #fff; */
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  margin: auto;
  font-size: 17px;
  color: #fff;
  position: relative;
}

.btn span::after {
  content: "";
  width: 13px;
  height: 6px;
  background: url(../img/arrow01_white.svg) no-repeat center/contain;
  position: absolute;
  top: 0;
  bottom: 0;
  right: -25%;
  margin: auto;
}

.btn.small {
  max-width: 175px;
  height: 45px;
}

.btn.small span {
  font-size: 14px;
}

.btn02 {
  width: 90%;
  height: 50px;
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
  background: #f7f7f7;
  border: 1px solid #8e8e8e;
  border-radius: 100px;
  margin: 20px auto 0;
}

.btn02::after {
  content: "";
  width: 12px;
  height: 5px;
  background: url(../img/arrow01_gray.svg) no-repeat center/contain;
  margin-left: 10px;
}

/*==================================================
$header
==================================================*/
header {
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
  background: rgba(255, 255, 255, 0.95);
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: stretch;
  min-height: 70px;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1000;
  transition: all 0.3s linear;
}

.logo {
  width: 75%;
  padding: 5px 10px;
}

header .right {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: stretch;
  width: 18.5%;
}

.burger_wrap {
  display: none;
}

.burger_wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  background: #63636d;
  color: #fff;
  position: relative;
  cursor: pointer;
  order: 2;
}

.burger_wrap .burger,
.burger_wrap .burger span {
  display: inline-block;
  transition: all 0.4s;
  box-sizing: border-box;
}

.burger_wrap .burger {
  width: 75px;
  height: 23px;
  z-index: 1000;
  margin: auto;
  z-index: 100;
  position: relative;
  top: -10px;
}

.burger_wrap .burger span {
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  width: 50%;
  height: 2px;
  background-color: #fff;
  border-radius: 4px;
}

.burger_wrap .burger span:nth-of-type(1) {
  top: 0;
}

.burger_wrap .burger span:nth-of-type(2) {
  top: 0;
  bottom: 0;
  margin: auto;
}

.burger_wrap .burger span:nth-of-type(3) {
  bottom: 0;
}

.burger_wrap.active .burger span:nth-of-type(1) {
  transform: translateY(10.5px) rotate(-45deg);
}

.burger_wrap.active .burger span:nth-of-type(2) {
  opacity: 0;
}

.burger_wrap.active .burger span:nth-of-type(3) {
  transform: translateY(-10.5px) rotate(45deg);
}

.burger_wrap .burger small {
  display: block;
  text-align: center;
  position: absolute;
  bottom: -2em;
  left: 5px;
  right: 0;
  margin: auto;
  font-size: 12px;
  letter-spacing: 0.2em;
}

header .right .tel {
  order: 1;
}

.header_nav {
  position: fixed;
  top: 18.5vw;
  right: -100%;
  width: 100%;
  height: calc(100dvh - 18.5vw);
  height: calc(100dvh - 18.5vw);
  background: rgba(0, 0, 0, 0.7);
  overflow-y: auto;
  z-index: 1000;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 15px;
  padding: 30px 15px;
  transition: 0.3s;
}

.header_nav.open {
  right: 0;
}

.header_nav nav > ul {
  display: block;
  width: auto;
  width: 100%;
  height: 100%;
  text-align: center;
}

.header_nav nav > ul > li {
  margin-right: 0;
  width: auto;
  font-size: 16px;
}

.header_nav nav > ul > li > a {
  display: block;
  padding: 14px 10px;
  color: #fff;
}

.header_nav nav > ul > li > span {
  display: block;
  padding: 30px 10px;
  color: #fff;
}

.header_nav nav > ul > li.main_menu,
.header_nav nav > ul > li.main_menu > span {
  position: relative;
  width: fit-content;
  margin: 0 auto;
  transition: all 0.4s linear;
}

.header_nav nav > ul > li.main_menu > span {
  padding: 14px 15px;
  /* padding-right: 15px; */
}

.header_nav nav > ul > li.main_menu > span::before,
.header_nav nav > ul > li.main_menu > span::after {
  content: "";
  display: block;
  background-color: #fff;
  position: absolute;
}

.header_nav nav > ul > li.main_menu > span::before {
  width: 2px;
  height: 8px;
  top: calc(50% - 4px);
  right: 3px;
  transition: all 0.5s;
}

.header_nav nav > ul > li.main_menu > span::after {
  width: 8px;
  height: 2px;
  position: absolute;
  top: calc(50% - 1px);
  right: 0;
}

.header_nav nav > ul > li.main_menu.is-show > span::before {
  transform: rotate(90deg);
  opacity: 0;
}

.header_nav nav > ul > li .sub_menu {
  pointer-events: none;
  opacity: 0;
  visibility: hidden;
  width: 100%;
  max-height: 0;
  overflow: hidden;
  transition: all 0.3s linear;
}

.header_nav nav > ul > li.main_menu.is-show .sub_menu {
  opacity: 1;
  pointer-events: all;
  visibility: visible;
  max-height: 340px;
  margin-bottom: 15px;
}

.header_nav nav > ul > li .sub_menu li {
  width: 100%;
  padding: 0 8px;
  text-align: center;
}

.header_nav nav > ul > li .sub_menu li a {
  color: #fff;
  display: inline-block;
  font-size: 14px;
  padding: 12px 0;
  transition: 0.3s ease-in-out;
}

header .right .tel {
  display: none;
}

header .houzin_link,
header .houzin_link2 {
  position: static;
}
header .houzin_link a,
header .houzin_link2 a {
  display: block;
}

/*==================================================
$footer
==================================================*/
.footer_upper {
  background: #8e8e8e;
  padding: 50px 5%;
  position: relative;
}

.footer_upper::before {
  content: "";
  background: url(../img/know_bg.jpg) no-repeat center/cover;
  opacity: 0.15;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  pointer-events: none;
  z-index: 1;
}

.footer_upper .inner {
  z-index: 2;
}

.footer_banner {
  margin-bottom: 50px;
}

.footer_banner ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: stretch;
}

.footer_banner ul li {
  /* max-width: 245px; */
  width: 100%;
  margin: 0 0 2%;
}

.footer_banner ul li a {
  display: block;
  width: 100%;
}

.footer_sns {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}

.footer_sns strong {
  max-width: 160px;
  width: 100%;
  margin: 0 auto 20%;
  position: relative;
}

.footer_sns strong::after {
  content: "";
  width: 1px;
  height: 10vw;
  background: #63636d;
  position: absolute;
  bottom: -14vw;
  left: 0;
  right: 0;
  margin: auto;
}

.footer_sns ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: stretch;
}

.footer_sns ul li {
  width: 60px;
  margin-right: 30px;
}

.footer_sns ul li:last-child {
  margin-right: 0;
}

.footer_under {
  background: #63636d;
  padding: 50px 10px;
}

.footer_pages ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  margin: auto;
}

.footer_pages ul li {
  margin: 0 5% 5%;
}

.footer_pages ul li a {
  color: #fff;
}

.footer_property {
  display: none;
}

.copyright {
  display: block;
  text-align: center;
  color: #fff;
  font-size: 10px;
  letter-spacing: 0.1em;
  opacity: 0.5;
  padding-top: 50px;
}

.copyright img {
  height: 100%;
}

/*==================================================
$toppage
==================================================*/
.contents.toppage {
  position: relative;
  transition: all 0.3s linear;
  clip-path: inset(0px);
  overflow-x: clip;
}

.contents.toppage::before {
  content: "";
  display: block;
  width: 100vw;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  background: url(../img/bg_fix.jpg) no-repeat center / cover;
  z-index: -1;
}

.bg_movie {
  display: none;
}

.mv {
  background: #fff;
  padding-bottom: 50px;
  position: relative;
}

.mv .mv_slider .slick-track {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: stretch;
}

.mv .mv_slider {
  max-width: 1080px;
  width: 100%;
  margin: auto;
  height: 106vw;
  /* height: calc(100vh - 60px - 70px - 20vw - 75px); */
}

.mv .mv_slider div {
  height: 100%;
}

.mv .mv_slider .dots {
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
  position: absolute;
  bottom: -20px;
  left: 0;
  right: 0;
  margin: auto;
}

.mv .mv_slider .dots li {
  width: 10px;
  height: 10px;
  line-height: 0;
  text-decoration: -300%;
  background: #e6e6e6;
  border-radius: 100px;
  overflow: hidden;
  margin: 0 10px;
  white-space: nowrap;
}

.mv .mv_slider .dots li.slick-active {
  background: #000;
}

.mv .mv_slider .dots li button {
  background: none;
  border: none;
  opacity: 0;
}

.mv .mv_slider .mv_slider_item {
  position: relative;
}

.mv .mv_slider .mv_slider_item img {
  height: 100%;
  width: 100%;
  object-fit: cover;
}

.mv .mv_slider .mv_slider_item.property a {
  display: block;
  width: 100%;
  height: 100%;
}

.mv .mv_slider .mv_slider_item.property.kyobashieast a {
  background: url(../img/mv03.jpg) no-repeat center/cover;
}

.mv .mv_slider .mv_slider_item.property.jusohonmachi a {
  background: url(../img/mv04.jpg) no-repeat center/cover;
}

.mv .mv_slider .mv_slider_item.property img {
  width: 100%;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}

.mv .mv_slider .mv_slider_item.property.kyobashieast img {
  bottom: 20%;
}

.mv .mv_slider .mv_slider_item.property span {
  position: absolute;
  bottom: 0;
  right: 0;
  padding: 10px 30px;
  background: rgba(0, 0, 0, 0.5);
  color: #fff;
  font-size: 17px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}

.mv .mv_slider .mv_slider_item.property span::after {
  content: "";
  width: 1.5em;
  height: 1.5em;
  background: url(../img/arrow04.svg) no-repeat center/contain;
  margin-left: 10px;
  display: inline-block;
}

.pickup_section {
  background: #fff;
  padding: 10px 0;
  width: 100%;
  overflow-x: hidden;
  margin-bottom: 50px;/*20260306LINEバナー追記の為変更*/
}

.pickup_section .inner {
  width: 100%;
}

.floor_detail .pickup_section {
  padding-top: 10px;
  background: #efefef;
  margin-bottom: 0;
}

.pickup_section .inner > strong,
.pickup_section .inner .txt_title {
  font-size: 16.5px;
  font-weight: bold;
  width: 90%;
  margin: auto;
  padding-left: 5%;
}

.pickup_section .inner .txt_title {
  padding-left: 0 !important;
}

.pickup_section .inner .s_txt {
  display: block;
  width: 90%;
  margin: auto;
  font-size: 11px;
}

.pickup_section .inner > strong::after {
  content: "";
  display: inline-block;
  vertical-align: text-bottom;
  width: 30px;
  height: 40px;
  background: url(../img/deco_0.png) no-repeat center/contain;
  margin-left: 8px;
  margin-right: 6px;
}

.pickup_section .inner .heading {
  font-size: 30px;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  border-top: 1px solid #707070;
  padding-top: 10px;
  margin-top: 10px;
  position: relative;
  font-weight: bold;
  width: 90%;
  margin: 10px auto 0;
}

.floor_detail .pickup_section .inner .heading {
  font-size: 20px;
  justify-content: center;
  border: none;
}

.pickup_section .pickupbtn {
  width: 90%;
  max-width: 400px;
  height: 45px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  background: #8e8e8e;
  color: #fff;
  border-radius: 100px;
  margin: 50px auto 0;
}

.pickup_section .pickupbtn span {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  text-align: center;
}

.pickup_section .pickupbtn span::after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 3px 0 3px 6px;
  border-color: transparent transparent transparent #fff;
  margin-left: 10px;
}

.pickup_slider {
  padding-bottom: 50px;
}

.pickup_slider .dots {
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: center;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 100%;
}

.pickup_slider .dots li {
  width: 100%;
  height: 1px;
  overflow: hidden;
  text-indent: -300%;
  background: #000;
  position: relative;
}

.pickup_slider .dots li.slick-active ~ li {
  background: #c0a799;
}

.pickup_slider .dots button {
  background: none;
  border: none;
}

.pickup_slider_item {
  margin-bottom: 30px;
}

.pickup_slider_item .inbox {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: flex-start;
  position: relative;
  padding: 5% 3% 0 5%;
}

.pickup_slider_item .inbox .badge,
.main_slider_wrap .badge {
  width: 55px;
  height: 55px;
  border-radius: 100px;
  color: #fff;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 3%;
  left: 0;
  z-index: 2;
  line-height: 1.2;
  font-weight: bold;
  animation: scale 1s ease-in-out alternate infinite;
  font-size: 11px;
  text-align: center;
}

@keyframes scale {
  0% {
    transform: scale(1, 1);
  }

  100% {
    transform: scale(1.2, 1.2);
  }
}

.pickup_slider_item .inbox .badge.freerent,
.main_slider_wrap .badge.freerent {
  background: #d95e59;
}

.pickup_slider_item .inbox .badge.recommend,
.main_slider_wrap .badge.recommend {
  background: #d5801d;
}

.pickup_slider_item .inbox .badge.attention,
.main_slider_wrap .badge.attention {
  background: #e61d1d;
}

.pickup_slider_item .inbox .image {
  position: relative;
  overflow: hidden;
  padding: 20% 0;
  width: 42%;
}

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

.pickup_slider_item .inbox .image .label {
  position: absolute;
  top: 0;
  right: 0;
  font-size: 11px;
  background: rgba(255, 255, 255, 0.9);
  padding: 5px 10px;
  z-index: 2;
}

.pickup_slider_item .inbox .text {
  width: 53%;
}

.pickup_slider_item .inbox .text .name {
  width: 100%;
  font-size: 14px;
  font-weight: bold;
  line-height: 1.2;
  padding-bottom: 10px;
  display: block;
}

.pickup_slider_item .inbox .text > div {
  /*display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: center;*/
  border-top: 1px solid #dcdcdc;
  border-bottom: 1px solid #dcdcdc;
  padding: 10px;
}

.pickup_slider_item .inbox .text > div .layout {
  /*width: 30%;*/
  display: block;
  color: #c0a799;
  font-size: 14px;
}

.pickup_slider_item .inbox .text > div .rent {
  /*width: 67%;*/
  font-size: 16px;
}

.pickup_slider_item .inbox .text .tag {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  margin-top: 10px;
}

.pickup_slider_item .inbox .text .tag li {
  width: 49.5%;
  background: #efefef;
  border-radius: 100px;
  font-size: 10px;
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: center;
  padding: 5px 0.5em;
  margin-bottom: 2%;
  line-height: 1.2;
}

.floor_detail .pickup_slider_item .inbox .text .tag li {
  background: #fff;
}

.pickup_slider_item .inbox .text .tag li::before {
  content: "";
  width: 1.5em;
  height: 1.5em;
  margin-right: 5px;
}

.pickup_slider_item .inbox .text .tag li.new::before {
  background: url(../img/ico_building.svg) no-repeat center/contain;
}

.pickup_slider_item .inbox .text .tag li.high_grade::before {
  background: url(../img/ico_highgrade.svg) no-repeat center/contain;
}

.pickup_slider_item .inbox .text .tag li.contactless_key::before {
  background: url(../img/ico_key.svg) no-repeat center/contain;
}

.pickup_slider_item .inbox .text .tag li.pet::before {
  background: url(../img/ico_pet.svg) no-repeat center/contain;
}

/*221220s*/
.pickup_slider .arrows,
.floor_list_btn .arrows {
  position: absolute;
  bottom: 10px;
  left: 10px;
  margin: auto;
  background-color: #6e6e6e;
  width: 35px;
  height: 35px;
  border-radius: 100px;
  opacity: 1;
  cursor: pointer;
}

.pickup_slider .arrows.next,
.floor_list_btn .arrows.next {
  left: auto;
  right: 10px;
}

.pickup_slider .arrows::before,
.floor_list_btn .arrows::before {
  content: "";
  width: 8px;
  height: 8px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
  position: absolute;
  top: 0;
  bottom: 0;
  right: 3px;
  left: 0;
  margin: auto;
}

.pickup_slider .arrows.prev::before,
.floor_list_btn .arrows.prev::before {
  transform: rotate(-135deg);
  right: -3px;
}

/*221220e*/
.area_section {
  background: rgba(99, 99, 108, 0.8);
  backdrop-filter: blur(20px);
  width: 100%;
  overflow: hidden;
  padding: 80px 0;
  position: relative;
}

.area_section::before {
  content: "";
  width: 100vw;
  height: 100vw;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
  background: url(../img/map_bg.png) no-repeat center/contain;
  opacity: 0.5;
  z-index: 1;
  pointer-events: none;
}

.area_section .inner .heading {
  font-size: 16px;
  color: #fff;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  position: relative;
  margin-bottom: 50px;
}

.area_section .inner .heading span {
  font-size: 50px;
  margin-right: 20px;
}

.area_section .inner .heading::before {
  content: "";
  width: 100%;
  height: 1px;
  background: #fff;
  position: absolute;
  top: 0;
  bottom: 0;
  left: -101%;
  margin: auto;
}

.area_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: stretch;
}

.area_list div {
  width: 100%;
  padding: 5px 20px 20px;
  margin-bottom: 4%;
  position: relative;
}

.area_list div.chubu {
  background: #c2b4ae;
}

.area_list div.kanto {
  /* background: #A7ADB6; */
  background: #98a7a3;
  margin-top: 0;
  padding-top: 0;
}

.area_list div.kansai {
  background: #98a7a3;
  margin-bottom: 0;
}

.area_list .top_search ul li.all_property_btn a {
  background: #d95e59;
  display: block;
  text-align: center;
  color: #fff;
}

.area_list .top_search ul li a::after {
  content: "";
  width: 5px;
  height: 5px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
  position: absolute;
  top: 0;
  bottom: 0;
  right: 10px;
  margin: auto;
}

.top_search {
  background: #98a7a3;
}

.top_search .search_box .search_inbox dl dd strong {
  display: block;
  border-bottom: 1px solid #fff;
  padding: 10px;
  margin-bottom: 20px;
  width: 100%;
  font-size: 16px;
}
.top_search .search_box.allopen .search_inbox dl.station dd strong::before,
.top_search .search_box.allopen .search_inbox dl.station dd strong::after {
  content: "";
  width: 15px;
  height: 2px;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 15px;
  margin: auto;
  background: #fff;
}

.top_search .search_box .search_inbox dl dd label input[type="checkbox"] + span {
  position: relative;
  cursor: pointer;
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: center;
  line-height: 1.2;
  height: 100%;
  padding: 0 10px;
  color: #fff;
}

.top_search .search_box .search_inbox dl.station dd .feas_clevel_01 {
  width: 100%;
  margin-top: 20px;
  background: none;
}

.area_list div strong {
  display: block;
  color: #fff;
  margin-bottom: 10px;
}

.area_list div strong span {
  font-size: 25px;
  margin-right: 10px;
}

.area_list div ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: stretch;
}

.area_list div ul li {
  width: 49%;
  margin-bottom: 10px;
}

.area_list div ul li:last-child {
  margin-right: 0;
  /* width: 100%; */
}
.area_list div ul li:last-child.all_property_btn {
  margin-right: 0;
  width: 100%;
}

.area_list div ul li a {
  width: 100%;
  height: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  background: #fff;
  border-radius: 7px;
  padding: 5px 15px 5px 5px;
  position: relative;
  font-size: 12px;
}

.area_list div ul li a::after {
  content: "";
  width: 5px;
  height: 5px;
  border-top: 2px solid #63636d;
  border-right: 2px solid #63636d;
  transform: rotate(45deg);
  position: absolute;
  top: 0;
  bottom: 0;
  right: 7px;
  margin: auto;
}

.area_list div ul li.all_property_btn a {
  background: #e2c447;
  display: block;
  text-align: center;
}

.area_list div ul li.all_property_btn a::after {
  position: static;
  margin-left: 10px;
  display: inline-block;
  vertical-align: middle;
}

.feature_section {
  padding: 50px 0;
  background: #f5f0ed;
}

.feature_section .inner .heading {
  font-size: 12px;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  position: relative;
  margin-bottom: 50px;
}

.feature_section .inner .heading span {
  font-size: 35px;
  margin-right: 20px;
}

.feature_section .inner .heading::before {
  content: "";
  width: 100%;
  height: 1px;
  background: #63636d;
  position: absolute;
  top: 0;
  bottom: 0;
  left: -101%;
  margin: auto;
}

.feature_section .inner ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: stretch;
  margin-bottom: 50px;
}

.feature_section .inner ul li {
  width: 32%;
  max-width: 145px;
  height: 28.8vw;
  max-height: 145px;
  margin-bottom: 10%;
}

.feature_section .inner ul li a {
  width: 100%;
  height: 100%;
  background: #fff;
  border-radius: 35px;
  border: 1px solid #63636d;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  position: relative;
  box-shadow: 0 10px 0 #63636d;
}

.feature_section .inner ul li a::before {
  content: "";
  width: 40%;
  height: 1px;
  background: #fff;
  position: absolute;
  top: -1px;
  left: 0;
  right: 0;
  margin: auto;
}

.feature_section .inner ul li a::after {
  content: "";
  width: 100%;
  height: 35px;
  position: absolute;
  top: -15px;
  left: 0;
  right: 0;
  margin: auto;
}

.feature_section .inner ul li.shinchiku a::after {
  background: url(../img/ico_shinchiku.png) no-repeat center/contain;
}

.feature_section .inner ul li.single a::after {
  background: url(../img/ico_single.png) no-repeat center/contain;
}

.feature_section .inner ul li.pet a::after {
  background: url(../img/ico_pet.png) no-repeat center/contain;
}

.feature_section .inner ul li a strong {
  font-size: 4.27vw;
  width: 100%;
  text-align: center;
  line-height: 1.3;
  margin-bottom: 10px;
}

.feature_section .inner ul li a span {
  position: absolute;
  bottom: 20px;
  left: 0;
  right: 0;
  margin: auto;
  font-size: 12px;
  text-align: center;
}

.feature_section .inner ul li a span::before {
  content: "";
  width: 15px;
  height: 15px;
  background: url(../img/arrow02.svg) no-repeat center/contain;
  display: inline-block;
  margin-right: 5px;
  vertical-align: middle;
}

.feature_section .inner ul li a span::after {
  content: "";
  width: 5em;
  height: 1px;
  background: #63636d;
  position: absolute;
  bottom: -2px;
  left: 1.8em;
  right: 0;
  margin: auto;
}

.know_section {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: stretch;
  background: rgba(99, 99, 108, 0.8);
  backdrop-filter: blur(20px);
  width: 100%;
  overflow: hidden;
}

.know_section .heading {
  width: 100%;
  color: #f5f0ed;
  font-size: 62px;
  line-height: 1.2;
  padding: 50px 0;
}

.know_section .heading strong {
  position: relative;
  display: block;
  width: 100%;
  text-align: center;
}

.know_section .heading span {
  font-size: 18px;
  display: block;
  line-height: 1.2;
  text-align: left;
  position: relative;
  margin-bottom: 10px;
  padding: 0 5% 10px;
}

.know_section .heading strong span::after {
  content: "";
  width: calc(10vw + 14em);
  height: 1px;
  background: #fff;
  position: absolute;
  bottom: 0;
  left: -10vw;
}

.know_section .heading span br {
  display: none;
}

.know_inbox {
  width: 100%;
  position: relative;
}

.know_inbox ol {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  width: 90%;
  counter-reset: knownum 0;
  margin: 0 auto 80px;
}

.know_inbox ol li {
  background: #fff;
  width: 100%;
  counter-increment: knownum 1;
  position: relative;
  margin-top: 80px;
}

.know_inbox ol li::before {
  content: counter(knownum, decimal-leading-zero);
  font-family: ivypresto-display, serif;
  font-style: italic;
  font-size: 55px;
  color: #f5f0ed;
  position: absolute;
  top: -1.1em;
  left: 0;
  right: 0;
  margin: auto;
  z-index: 2;
  line-height: 1;
  width: 100%;
  text-align: center;
}

.know_inbox ol li::after {
  content: "";
  width: 100px;
  height: 1px;
  background: #f5f0ed;
  transform: rotate(-45deg);
  position: absolute;
  top: 0;
  left: 55px;
  right: 0;
  margin: auto;
}

.know_inbox ol li .text {
  padding: 5px 30px 30px;
  position: relative;
}

.know_inbox ol li .text::before {
  content: "";
  width: 90%;
  height: 25px;
  background: #fff;
  position: absolute;
  top: -24px;
  left: 0;
  right: 0;
  margin: auto;
}

.know_inbox ol li .text .inheading {
  display: block;
  margin-bottom: 10px;
  font-size: 17px;
  text-align: center;
}

.know_inbox ol li .text .know_btn {
  width: 90%;
  height: 50px;
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
  background: #f7f7f7;
  border: 1px solid #8e8e8e;
  border-radius: 100px;
  margin: 20px auto 0;
}

.know_inbox ol li .text .know_btn::after {
  content: "";
  width: 12px;
  height: 5px;
  background: url(../img/arrow01_gray.svg) no-repeat center/contain;
  margin-left: 10px;
}

/*20240119 追加 inokuchi ここから*/
.column_section {
  background-color: #fff;
  padding: 30px 0;

  .heading {
    font-size: 12px;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
    border-bottom: 1px solid #63636d;
    margin-bottom: 30px;

    & span {
      font-size: 35px;
      margin-right: 20px;
    }
  }

  .column_slider {
    margin: 0 45px 75px;

    .slick-track {
      display: flex;
    }

    .slick-slide {
      height: auto !important;
      margin: 0 10px;
    }

    .arrows {
      position: absolute;
      bottom: calc(50% - 17.5px);
      margin: auto;
      background-color: #6e6e6e;
      width: 35px;
      height: 35px;
      border-radius: 50%;
      opacity: 1;
      cursor: pointer;

      &::before {
        content: "";
        width: 8px;
        height: 8px;
        border-top: 2px solid #fff;
        border-right: 2px solid #fff;
        transform: rotate(45deg);
        position: absolute;
        top: 0;
        bottom: 0;
        right: 3px;
        left: 0;
        margin: auto;
      }

      &.prev {
        left: -45px;

        &::before {
          transform: rotate(-135deg);
          right: -3px;
        }
      }

      &.next {
        right: -45px;
      }
    }
  }
}

.columnbtn {
  width: 90%;
  max-width: 400px;
  height: 45px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  background: #8e8e8e;
  color: #fff;
  border-radius: 100px;
  margin: 50px auto 0;

  & span {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    text-align: center;

    &::after {
      content: "";
      width: 0;
      height: 0;
      border-style: solid;
      border-width: 3px 0 3px 6px;
      border-color: transparent transparent transparent #fff;
      margin-left: 10px;
    }
  }
}

/*20240119 追加 inokuchi ここまで*/

.news_section {
  background: #fff;
  backdrop-filter: blur(20px);
  padding: 30px 5%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: stretch;
}

.news_section > div {
  width: 100%;
  position: relative;
  margin: 0 auto;
}

.news_section > div .heading {
  font-size: 12px;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  border-bottom: 1px solid #63636d;
  margin-bottom: 30px;
}

.news_section > div .heading span {
  font-size: 35px;
  margin-right: 20px;
}

.news_section > div > div ul li {
  border-bottom: 1px solid #dcdcdc;
}

.news_section > div > div ul li a {
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: center;
  padding: 20px 0;
}

.news_section > div > div ul li a span:first-child {
  margin-right: 5%;
  min-width: 5em;
  color: #c0a799;
}

.news_section > div > div ul li a span:last-child {
  width: 100%;
}

.news_section > div .newsbtn {
  width: 90%;
  max-width: 400px;
  height: 45px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  background: #8e8e8e;
  color: #fff;
  border-radius: 100px;
  margin: 50px auto 0;
}

.news_section > div .newsbtn span {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  text-align: center;
}

.news_section > div .newsbtn span::after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 3px 0 3px 6px;
  border-color: transparent transparent transparent #fff;
  margin-left: 10px;
}

.news_section > div > div.news_list ul li a {
  flex-wrap: wrap;
}

.news_section .news_box .news_list ul li a span.date {
  width: 100%;
  margin-bottom: 5px;
}

.news_section .column_box .column_list ul li a span.thumbnail {
  width: 137px;
  min-width: 137px;
  height: 80px;
  position: relative;
  overflow: hidden;
}

.news_section .column_box .column_list ul li a span.thumbnail::before {
  content: "";
  width: calc(100% - 10px);
  height: calc(100% - 10px);
  border: 1px solid #f5f0ed;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  z-index: 2;
}

.news_section .column_box .column_list ul li a span img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: auto;
}

.movie_block {
  background: rgba(99, 99, 108, 0.8);
  backdrop-filter: blur(20px);
  padding: 30px 0;
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: stretch;
}

.movie_block .inner .heading {
  font-size: 20px;
  text-align: center;
  margin-bottom: 20px;
  width: 100%;
  color: #fff;
}

.movie_block .inner .inbox div {
  width: 90%;
  margin: 0 auto 5%;
  position: relative;
  overflow: hidden;
  aspect-ratio: 16 / 9;
}

.movie_block .inner .inbox div iframe,
.movie_block .inner .inbox div object,
.movie_block .inner .inbox div embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.fixed_banner {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 60px;
  z-index: 999;
}

.fixed_banner .inner {
  height: 100%;
  width: 100%;
}

.fixed_banner .inner ul {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: center;
  height: 100%;
  background: #fff;
}

.fixed_banner .inner ul li {
  width: 100%;
  height: 100%;
}

.fixed_banner .inner ul li.balloon {
  position: absolute;
  bottom: 100%;
  left: 0;
  right: 0;
  margin: auto;
  width: 100%;
  font-size: 10px;
  font-weight: bold;
  height: auto;
  pointer-events: none;
  background: rgba(255, 255, 255, 0.5);
  backdrop-filter: blur(20px);
  padding: 5px 22vw 5px 5px;
  line-height: 1.2;
}

.fixed_banner .inner ul li.balloon::after {
  content: "";
  width: 25vw;
  height: 25vw;
  background: url(../img/footer_img.png) no-repeat bottom center/contain;
  position: absolute;
  bottom: 0;
  right: 0;
}

.fixed_banner .inner ul li.balloon > span span {
  color: #fd5c5c;
}

.fixed_banner .inner ul li.balloon > span span:first-of-type {
  margin-left: 0;
}

.fixed_banner .inner ul li.balloon small {
  font-size: 9px;
  display: block;
}

.fixed_banner .inner ul li.tel {
  width: 40%;
  /* order: 3; */
}

.fixed_banner .inner ul li.tel a {
  display: block;
  width: 100%;
  height: 100%;
  position: relative;
  line-height: 1;
  background: #5f5f5f url(../img/ico_tel_white.svg) no-repeat center/auto 50%;
}

.fixed_banner .inner ul li.tel a > span {
  display: none;
}

/* .fixed_banner .inner ul li.contact {
  order: 2;
} */

.fixed_banner .inner ul li.contact a {
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  font-size: 11px;
  background: #d95e59;
  color: #fff;
}

.fixed_banner .inner ul li.contact a::before {
  content: "";
  width: 1.5em;
  height: 1.5em;
  margin-right: 5px;
  background: url(../img/ico_mail.svg) no-repeat center/contain;
}

.fixed_banner .inner ul li.line {
  height: 100%;
  position: relative;
  /* order: 1; */
}

.fixed_banner .inner ul li.line a {
  background: #4cc764;
  height: 100%;
  position: relative;
  color: #fff;
  font-size: 11px;
  font-weight: bold;
  /* padding-left: 40px; */
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}

.fixed_banner .inner ul li.line a::before {
  content: "";
  width: 100%;
  max-width: 35px;
  height: 75%;
  /* margin-right: 10px; */
  background: url(../img/ico_line.png) no-repeat center/contain;
  position: relative;
  top: 0;
  bottom: 0;
  left: 0;
  /* margin: auto; */
  z-index: 1;
}

.fixed_banner .inner ul li.line a > span {
  line-height: 1.3;
  position: relative;
  z-index: 2;
}

.fixed_banner .inner ul li.line a > span span {
  color: #4cc764;
  background: #f5ff00;
  padding: 0 5px;
  border-radius: 100px;
}

.bottom_fix + footer .footer_under {
  padding-bottom: 150px;
}

/*==================================================
$page
==================================================*/
.property_title_block {
  background: #fff;
  position: relative;
  padding: 20px 0;
}

.property_title_block .label {
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: center;
}

.property_title_block .label span {
  min-width: 80px;
  text-align: center;
  padding: 0 10px;
  margin-right: 10px;
  border-radius: 100px;
  font-size: 10px;
  font-weight: bold;
}

.property_title_block .label span.area {
  color: #fff;
  background: #6e6e6e;
  border: 1px solid #6e6e6e;
}

.property_title_block .label span.station {
  color: #6e6e6e;
  border: 1px solid #6e6e6e;
  background: #fff;
}

.property_title_block .title strong {
  font-size: 25px;
  font-weight: bold;
  display: block;
}

.property_title_block .title span {
  font-size: 10px;
  color: #a7adb6;
  font-weight: bold;
  display: block;
}

.title_block {
  background: #f5f0ed;
  position: relative;
  overflow: hidden;
  margin-bottom: 80px;
}

.title_block::before {
  content: "";
  background: url(../img/bg_fix.jpg) no-repeat center/cover;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 100%;
  height: 100%;
  z-index: 1;
  mix-blend-mode: hard-light;
  opacity: 0.03;
  pointer-events: none;
}

.title_block .inner {
  padding: 50px 0 80px;
  z-index: 2;
}

.title_block .inner::before {
  content: "";
  width: 320px;
  height: 100%;
  position: absolute;
  top: 0;
  left: -200px;
  background: url(../img/deco_title.svg) no-repeat top center/contain;
  pointer-events: none;
  z-index: -1;
}

.title_block .inner .title {
  display: block;
  font-size: 30px;
  font-weight: bold;
  margin-bottom: 20px;
  line-height: 1.3;
}

.title_block .inner .title .label {
  font-size: 14px;
  width: 130px;
  padding: 5px 10px;
  background: #fff;
  border-radius: 5px;
  display: block;
  text-align: center;
}

.title_block .inner .title + p {
  margin-bottom: 30px;
}

.title_block .inner .title + p br {
  display: none;
}

.title_block .inner .tag ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
}

.title_block .inner .tag ul li {
  padding: 5px 15px;
  background: #fff;
  border-radius: 5px;
  margin-right: 5px;
  text-align: center;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.2);
  margin-bottom: 5px;
  font-size: 12px;
}

.title_block .inner .banner {
  padding-top: 5%;
}

.title_block .inner .banner a {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}

.lightbox {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.8);
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  z-index: 1000;
  overflow: hidden;
}

.lightbox div {
  width: 95vw;
  height: 90vh;
}

.lightbox div img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.lightbox div .close {
  position: absolute;
  top: 0;
  right: 0;
  width: 40px;
  height: 40px;
  cursor: pointer;
}

.lightbox div .close::before,
.lightbox div .close::after {
  content: "";
  width: 100%;
  height: 2px;
  background: #fff;
  transform: rotate(45deg);
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}

.lightbox div .close::after {
  transform: rotate(-45deg);
}

/*==================================================
$property
==================================================*/
.property_link a {
  width: 90%;
  max-width: 400px;
  height: 56px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  background: #8e8e8e;
  color: #fff;
  border-radius: 100px;
  margin: 0 auto 50px;
}

.property_link a span {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  text-align: center;
}

.property_link a span::after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 3px 0 3px 6px;
  border-color: transparent transparent transparent #fff;
  margin-left: 10px;
}

.property_list .heading {
  font-size: 20px;
  font-weight: bold;
  padding-bottom: 10px;
  margin-bottom: 50px;
  border-bottom: 3px solid #f5f0ed;
  width: 100%;
  display: block;
  position: relative;
}

.property_list .heading::after {
  content: "";
  width: 80px;
  height: 3px;
  background: #63636d;
  position: absolute;
  bottom: -3px;
  left: 0;
}

.property_list .heading span {
  color: #41b591;
}

.property_list .heading + small {
  text-align: right;
  margin-bottom: 20px;
  display: block;
  font-size: 14px;
}

.property_list .subheading {
  font-weight: bold;
  margin-bottom: 20px;
  padding: 5px 20px;
  border-left: 3px solid #63636d;
  background: #f5f0ed;
}

/*20250905追加*/
.property_list > ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  width: 100%;
  max-width: 1366px;
  margin: auto;
}

.property_list > ul > li {
  /*padding: 5%;
	border: 1px solid #C0A799;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: stretch;
	margin-bottom: 50px;*/
  width: 100%;
  position: relative;
  margin: auto;
  padding-left: 5%;
  margin-bottom: -45px;
}

.property_list > ul > li .campaign {
  display: block;
  font-size: 16px;
  color: #fff;
  background: #c0a799;
  margin-bottom: 20px;
  padding: 10px 15px;
  width: 100%;
  order: 1;
  line-height: 1.5;
}

.property_list > ul > li .campaign > span {
  display: block;
}

.property_list > ul > li .name {
  font-size: 18px;
  font-weight: bold;
  order: 3;
  margin-bottom: 15px;
  margin-top: 15px;
}

.property_list > ul > li .tag {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  order: 2;
  width: 100%;
}

.property_list > ul > li .tag li {
  font-size: 12px;
  padding: 5px 10px;
  background: #fff;
  border-radius: 5px;
  margin-bottom: 5px;
  margin-right: 5px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
}

.property_list > ul > li .inbox {
  width: 100%;
  margin-top: 0px;
  align-items: stretch;
  /*display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	order: 4;*/
}

.property_list > ul > li .inbox .left {
  width: 100%;
  position: relative;
  margin-bottom: 30px;
}

.property_list > ul > li .inbox .left::after {
  content: "";
  width: 1px;
  height: 100%;
  /*ackground: #DCDCDC;*/
  position: absolute;
  top: 0;
  bottom: 0;
  right: -10%;
  margin: auto;
}

.property_list > ul > li .inbox .left .badge {
  width: 50px;
  height: 50px;
  border-radius: 100px;
  color: #fff;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: -2%;
  left: -5%;
  z-index: 2;
  line-height: 1.2;
  font-weight: bold;
  animation: scale 1s ease-in-out alternate infinite;
  font-size: 9px;
}

@keyframes scale {
  0% {
    transform: scale(1, 1);
  }

  100% {
    transform: scale(1.2, 1.2);
  }
}

.property_list > ul > li .inbox .left .badge.freerent {
  background: #d95e59;
}

.property_list > ul > li .inbox .left .badge.recommend {
  background: #d5801d;
}

.property_list > ul > li .inbox .left .badge.attention {
  background: #e61d1d;
}

.property_list > ul > li .inbox .left .image {
  margin-bottom: 20px;
  width: 100%;
  overflow: hidden;
}

.property_list > ul > li .inbox .left .image div {
  width: 100%;
  overflow: hidden;
  position: relative;
  border: 1px solid #fff;
  padding: 100px 0;
  margin-bottom: 10px;
}

.property_list > ul > li .inbox .left .image div img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: auto;
}

.property_list > ul > li .inbox .left .image div.floor img {
  width: 90%;
  height: 90%;
  object-fit: contain;
}

.property_list > ul > li .inbox .left .image div span {
  position: absolute;
  top: 0;
  right: 0;
  background: #fff;
  padding: 5px 20px;
  z-index: 2;
  border: 1px solid #dcdcdc;
}

.property_list > ul > li .inbox .left .text p {
  font-size: 16px;
}

.property_list > ul > li .inbox .right {
  width: 100%;
  padding: 25px 25px 0 25px;
  background: #fff;
  top: -60px;
  position: relative;
  z-index: 2;
  border: 1px solid #dcdcdc;
  left: -20px;
}

.property_list > ul > li .inbox .right .data {
  margin-bottom: 30px;
}

.property_list > ul > li .inbox .right .txt dl {
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  margin-bottom: 20px;
  padding-bottom: 20px;
  margin-bottom: 20px;
  border-bottom: 1px solid #dcdcdc;
}

.property_list > ul > li .inbox .right .txt dl dt {
  width: 5em;
  min-width: 5em;
  color: #c0a799;
  margin-right: 1em;
}

.property_list > ul > li .inbox .right .data dl {
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  margin-bottom: 10px;
}

.property_list > ul > li .inbox .right .data dl dt {
  width: 5em;
  min-width: 5em;
  color: #c0a799;
  margin-right: 1em;
  font-size: 12px;
  font-weight: bold;
  border-right: 1px solid #dcdcdc;
}

.property_list > ul > li .inbox .right .data dl dd {
  font-size: 10px;
}

.property_list > ul > li .inbox .right .data dl dd {
  font-size: 10px;
}

.property_list > ul > li .inbox .right .data dl.rent dd,
.property_list > ul > li .inbox .right .data dl.cost dd {
  font-size: 16px;
  font-weight: bold;
}

.property_list > ul > li .inbox .right .data div.cost,
.pickup_slider_item div.cost {
  text-align: center;
  color: #c0a799;
  background-color: #ece3e3;
  border: #c0a799 1px solid;
  border-radius: 10px;
  font-weight: bold;
}

.property_list > ul > li .inbox .right .data div.cost {
  padding: 4px;
  margin-bottom: 7px;
}

.pickup_slider_item div.cost {
  padding: 4px;
  width: 90%;
  margin: 8px auto 0;
}

.pickup_slider_item div.cost p {
  font-size: 0.85rem !important;
}

.property_list > ul > li .inbox .right .data dl dd .label {
  font-size: 11px;
  font-weight: bold;
  color: #fff;
  background: #fd5c5c;
  border-radius: 100px;
  padding: 5px 20px;
  margin-left: 20px;
  display: inline-block;
}

.property-btn {
  display: flex;
  position: relative;
  left: 0%;
  gap: 10px;
}

.property-btn a {
  max-width: 230px;
  margin-bottom: 0px;
  height: 40px;
}

.property-btn a span {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  margin: auto;
  font-size: 12px;
  color: #fff;
  position: relative;
}

.property-btn .contact-btn {
  max-width: 230px;
  width: 90%;
  height: 40px;
  margin: auto;
  background: #d95e59;
  border-radius: 100px;
  text-align: center;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}

.pager {
  padding: 50px 0;
  margin: 0 auto;
  text-align: center;
}

.wp-pagenavi {
  width: 95%;
  margin: auto;
  text-align: center;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: stretch;
}

.wp-pagenavi a,
.wp-pagenavi span {
  margin: 5px;
  transition: 0.3s;
  text-decoration: none;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  width: 35px;
  height: 35px;
}

.wp-pagenavi .pages,
.wp-pagenavi .first,
.wp-pagenavi .last {
  display: none;
}

.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink {
  position: relative;
  overflow: hidden;
  text-indent: -300%;
}

.wp-pagenavi .previouspostslink::before,
.wp-pagenavi .nextpostslink::before {
  content: "";
  width: 5px;
  height: 5px;
  border-bottom: 2px solid #63636d;
  border-left: 2px solid #63636d;
  transform: rotate(45deg);
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}

.wp-pagenavi .nextpostslink::before {
  border: none;
  border-top: 2px solid #63636d;
  border-right: 2px solid #63636d;
}

.wp-pagenavi .current {
  background-color: #616161;
  color: #fff;
}

.pager ul {
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
}

.pager ul li a {
  margin: 5px;
  padding: 5px 10px;
  background-color: #fff;
  display: inline-block;
  transition: 0.3s;
  text-decoration: none;
}

/*==================================================
$property detail
==================================================*/
.main_slider_wrap {
  margin-bottom: 60px;
}

.main_slider_wrap .main_slider {
  margin-bottom: 30px;
  width: 100%;
  height: 400px;
}

.main_slider_wrap .main_slider div {
  height: 100%;
  background: #ededed;
}

.main_slider_wrap .main_slider .main_slider_item {
  position: relative;
}

.main_slider_wrap .main_slider .main_slider_item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.main_slider_wrap .main_slider .main_slider_item span {
  padding: 10px 20px;
  background: rgba(0, 0, 0, 0.8);
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 100%;
  color: #fff;
  height: auto;
}

.main_slider_wrap .main_slider .main_slider_item i {
  background: url(../img/ico_zoom.svg) no-repeat center/contain;
  width: 20px;
  height: 20px;
  position: absolute;
  bottom: 15px;
  right: 15px;
  margin: auto;
  z-index: 2;
  cursor: pointer;
}

.main_slider_wrap .main_slider_thumbnail {
  width: 80%;
  margin: auto;
}

.main_slider_wrap .main_slider_thumbnail .main_slider_item {
  width: calc(80vw / 3);
  height: 70px;
  background: #ededed;
  margin-right: 10px;
}

.main_slider_wrap .main_slider_thumbnail .main_slider_item img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.property_detail_upper .property_detail_data {
  width: 100%;
}

.property_detail_upper .property_detail_data dl {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: center;
  padding: 10px;
  border-bottom: 1px solid #dcdcdc;
  line-height: 1.2;
}

.property_detail_upper .property_detail_data dl:first-child {
  border-top: 1px solid #dcdcdc;
}

.property_detail_upper .property_detail_data dl dt {
  font-size: 18px;
  font-weight: bold;
  color: #d5801d;
  width: 50px;
  min-width: 70px;
  margin-right: 10px;
}

.property_detail_upper .property_detail_data dl dt small { /* 2608文字被り修正　内田 */
  font-size: .8rem;
}

.property_detail_upper .property_detail_data dl dd {
  width: 100%;
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: center;
}

.property_detail_upper .property_detail_data dl dd > span {
  font-size: 18px;
  font-weight: bold;
}

.property_detail_upper .property_detail_data dl dd a {
  width: 100px;
  min-width: 100px;
  height: 30px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  text-align: center;
  background: #6e6e6e;
  border: 1px solid #6e6e6e;
  border-radius: 100px;
  font-size: 10px;
  color: #fff;
}

.property_detail_upper .property_detail_data dl dd a span::after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 3px 0 3px 6px;
  border-color: transparent transparent transparent #fff;
  margin-left: 5px;
  display: inline-block;
  vertical-align: middle;
}

.property_detail_upper .property_detail_data > div {
  margin-bottom: 20px;
}

.property_detail_upper .pickup_tag {
  width: 100%;
  margin-top: 30px;
}

.property_detail_upper .pickup_tag ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
}

.property_detail_upper .pickup_tag ul li {
  width: 32%;
  /* background: #efefef; */
  border-radius: 100px;
  font-size: 10px;
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: center;
  padding: 10px;
  margin-right: 1%;
  margin-bottom: 2%;
  border: 1px solid #efefef;
}

.property_detail_upper .pickup_tag ul li:nth-child(3n) {
  margin-right: 0;
}

.property_detail_upper .pickup_tag ul li::before {
  content: "";
  width: 1.5em;
  height: 1.5em;
  margin-right: 5px;
}

.property_detail_upper .pickup_tag ul li.new::before {
  background: url(../img/ico_building.svg) no-repeat center/contain;
}

.property_detail_upper .pickup_tag ul li.high_grade::before {
  background: url(../img/ico_highgrade.svg) no-repeat center/contain;
}

.property_detail_upper .pickup_tag ul li.contactless_key::before {
  background: url(../img/ico_key.svg) no-repeat center/contain;
}

.property_detail_upper .pickup_tag ul li.pet::before {
  background: url(../img/ico_pet.svg) no-repeat center/contain;
}

.property_detail_upper .property_banner {
  width: 100%;
  max-width: 1000px;
  margin: 50px auto 0;
}

.floor_list {
  width: 100%;
  padding: 30px 0 0;
  position: relative;
}

.floor_list > .heading {
  display: block;
  font-size: 25px;
  font-weight: bold;
  text-align: center;
  margin-bottom: 30px;
}

.floor_detail_item.on {
  display: block !important;
}

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

.floor_detail_item .inner .name {
  font-size: 25px;
  font-weight: bold;
  padding-bottom: 20px;
  margin-bottom: 50px;
  display: block;
  border-bottom: 1px solid #c0a799;
  position: relative;
  width: 100%;
}

.floor_detail_item .inner .name::after {
  content: "";
  width: 160px;
  height: 1px;
  background: #000;
  position: absolute;
  bottom: -1px;
  left: 0;
}

.floor_detail_item .inner .images_slider_wrap {
  width: 100%;
  margin-bottom: 30px;
}

.floor_detail_item .inner .images_slider_wrap .images_slider {
  margin-bottom: 15px;
}

.floor_detail_item .inner .images_slider_wrap .images_slider .arrows {
  width: 35px;
  height: 35px;
  background: #6e6e6e;
  border-radius: 100px;
  position: absolute;
  top: 0;
  bottom: 0;
  left: -5%;
  margin: auto;
  z-index: 2;
}

.floor_detail_item .inner .images_slider_wrap .images_slider .arrows.next {
  left: auto;
  right: -5%;
  transform: scale(-1, 1);
}

.floor_detail_item .inner .images_slider_wrap .images_slider .arrows::before {
  content: "";
  width: 8px;
  height: 8px;
  border-bottom: 2px solid #fff;
  border-left: 2px solid #fff;
  transform: rotate(45deg);
  position: absolute;
  top: 0;
  bottom: 0;
  left: 3px;
  right: 0;
  margin: auto;
}

.floor_detail_item .inner .images_slider_wrap .images_slider .images_slider_item {
  position: relative;
  height: 300px;
}

.floor_detail_item .inner .images_slider_wrap .images_slider .images_slider_item img {
  width: 100%;
  height: calc(100% - 40px);
  object-fit: contain;
}

.floor_detail_item .inner .images_slider_wrap .images_slider .images_slider_item span {
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  padding: 5px 10px;
  background: rgba(0, 0, 0, 0.8);
  color: #fff;
  text-align: center;
}

.floor_detail_item .inner .images_slider_wrap .images_slider_thumbnail .images_slider_item {
  width: 23%;
  margin-right: 15px;
  height: 50px;
  background: #ededed;
}

.floor_detail_item .inner .images_slider_wrap .images_slider_thumbnail .images_slider_item img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.floor_detail_item .inner .images_slider_wrap .images_slider_thumbnail .images_slider_item span {
  display: none;
}

.floor_detail_item .inner .floor_layout {
  width: 100%;
  border: 1px solid #63636d;
  padding: 20px;
}

.floor_detail_item .inner .floor_layout div img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.floor_detail_item .inner .floor_info {
  width: 100%;
}

.floor_detail_item .inner .floor_info .heading {
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 20px;
  text-align: center;
}

.floor_detail_item .inner .floor_info dl {
  font-size: 16px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: stretch;
  border-top: 1px solid #dcdcdc;
}

.floor_detail_item .inner .floor_info dl dt {
  color: #c0a799;
  min-width: 30%;
  width: 30%;
  padding-right: 1em;
  padding-top: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid #dcdcdc;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
}

.floor_detail_item .inner .floor_info dl dd {
  width: calc(100% - 30%);
  padding-top: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid #dcdcdc;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  gap: .3em; /* 260817文字被り修正　内田 */
}

.floor_detail_item .inner .floor_info dl dd .emphasize {
  font-size: 20px;
  font-weight: bold;
  color: #fd5c5c;
}

.floor_detail_data .floor_detail_data_facility {
  background: #efefef;
  padding: 30px 0;
  margin-bottom: 100px;
}

.floor_detail_data .floor_detail_data_facility .heading {
  display: block;
  width: 100%;
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 20px;
  text-align: center;
}

.floor_detail_data .floor_detail_data_facility ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: stretch;
}

.floor_detail_data .floor_detail_data_facility ul li {
  width: 31%;
  height: 44px;
  margin: 0 1% 2%;
  background: #fff;
  border-radius: 5px;
  text-align: center;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  box-shadow: 3px 3px 10px rgba(0, 0, 0, 0.2);
  font-weight: bold;
  font-size: 10px;
  line-height: 1;
  position: relative;
  padding: 20px 0px 0px;
}

.floor_detail_data > .inner {
  width: 90%;
  margin: 50px auto 0;
  padding-top: 50px;
  border-top: 1px solid #dcdcdc;
}

.floor_detail_data > .inner > div {
  width: 100%;
  margin-bottom: 50px;
}

.floor_detail_data > .inner > div .heading {
  font-size: 20px;
  padding-bottom: 10px;
  margin-bottom: 20px;
  border-bottom: 1px solid #c0a799;
  position: relative;
  font-weight: bold;
  text-align: center;
}

.floor_detail_data > .inner > div dl {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: stretch;
  width: 100%;
  margin-bottom: 30px;
  font-size: 12px;
}

.floor_detail_data > .inner > div dl dt {
  min-width: 30%;
  width: 30%;
  padding-right: 1em;
  padding: 10px 0;
  border-bottom: 1px solid #333;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
}

.floor_detail_data > .inner > div dl dd {
  width: calc(100% - 30%);
  padding: 10px;
  border-bottom: 1px solid #dcdcdc;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
}

.floor_detail_data > .inner > div dl dd .emphasize {
  font-size: 20px;
  font-weight: bold;
  color: #fd5c5c;
}

.floor_detail_data > .inner > div ul:not(.dots) {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: stretch;
}

.floor_detail_data > .inner > div ul:not(.dots) li {
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
  background: #f5f0ed;
  border-radius: 5px;
  margin: 0 5px 5px 0;
  text-align: center;
  padding: 5px 15px;
}

.floor_detail_data > .inner > div .map {
  position: relative;
  padding: 35% 0;
  height: 0;
  overflow: hidden;
}

.floor_detail_data > .inner > div .map iframe,
.floor_detail_data > .inner > div .map object,
.floor_detail_data > .inner > div .map embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.floor_detail_data > .inner > div .banner {
  display: block;
  width: 100%;
  margin: 0 auto 20px;
  position: relative;
}

.floor_detail_data > .inner > div .banner span {
  font-size: 10px;
  color: #fd5c5c;
  line-height: 1.3;
  padding-left: 2em;
  text-indent: -1em;
  display: block;
  margin-top: 10px;
}

.property_detail_under_link {
  padding: 30px 0;
  background: #6e6e6e;
  /* position: sticky;
	top: 120px; */
  z-index: 10;
  margin-top: 30px;
  margin-bottom: 30px;
}

.property_detail_under_link.after {
  background: none;
  padding-top: 0;
}

.property_detail_under_link ul {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: center;
}

.property_detail_under_link ul li {
  width: 23.5%;
  height: 50px;
}

.property_detail_under_link a {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  background: #fff;
  border-radius: 5px;
  font-size: 12px;
  font-weight: bold;
  text-align: center;
  position: relative;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
  line-height: 1.1; /* 260817文字被り修正　内田 */
}

.property_detail_under_link a::after {
  content: "";
  position: absolute;
  bottom: 10px;
  left: 0;
  right: 0;
  margin: auto;
  width: 10px;
  height: 5px;
  background: url(../img/arrow05.svg) no-repeat center/contain;
}

.property_detail_under_link.after a::after {
  transform: scale(1, -1);
  top: 10px;
  bottom: auto;
}

.property_detail_under_link a.active {
  background: #41b591;
  color: #fff;
}

.property_detail_under_link a.active::after {
  background: url(../img/arrow05_white.svg) no-repeat center/contain;
}

.property_detail_under_link .floor_list_btn {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  align-items: center;
}

.property_detail_under_link .floor_list_btn > span {
  display: block;
  width: 100%;
  text-align: center;
  font-size: 20px;
  color: #fff;
  font-weight: bold;
  margin: 20px 0 10px;
}

.property_detail_under_link.after .floor_list_btn > span {
  color: inherit;
}

.property_detail_under_link .floor_list_btn .floor_list_btn_item {
  width: 32%;
  max-width: 350px;
  height: 70px; /* 260817文字被り修正　内田 */
  margin-bottom: 1%;
}

/*==================================================
$contact
==================================================*/
.contact_block .inner .heading {
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 30px;
}

.contact_block .inner .flow {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: center;
  counter-reset: flow 0;
  position: relative;
  max-width: 700px;
  margin: 0 auto 50px;
}

.contact_block .inner .flow::before {
  content: "";
  width: 96%;
  height: 1px;
  background: #dcdcdc;
  position: absolute;
  top: 30px;
  left: 0;
  right: 0;
  margin: auto;
  z-index: 1;
}

.contact_block .inner .flow li {
  color: #dcdcdc;
  text-align: center;
  counter-increment: flow 1;
  position: relative;
  z-index: 2;
}

.contact_block .inner .flow li::before {
  content: "";
  width: 56px;
  min-width: 56px;
  height: 56px;
  background: #dcdcdc;
  border-radius: 100px;
  display: block;
  margin-bottom: 10px;
}

.contact_block .inner .flow li::after {
  content: counter(flow, decimal-leading-zero);
  color: #fff;
  width: 46px;
  height: 46px;
  border-radius: 100px;
  position: absolute;
  top: 5px;
  left: 0;
  right: 0;
  margin: auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  text-align: center;
  font-size: 24px;
  font-family: ivypresto-display, serif;
  font-style: italic;
  letter-spacing: 0.1em;
}

.contact_block .inner .flow li.current {
  color: #fd5c5c;
  font-weight: bold;
}

.contact_block .inner .flow li.current::before {
  background: rgb(253, 92, 92);
  background: -moz-linear-gradient(-45deg, rgba(253, 92, 92, 1) 15%, rgba(253, 92, 92, 1) 15%, rgba(65, 181, 145, 1) 100%);
  background: -webkit-linear-gradient(-45deg, rgba(253, 92, 92, 1) 15%, rgba(253, 92, 92, 1) 15%, rgba(65, 181, 145, 1) 100%);
  background: linear-gradient(135deg, rgba(253, 92, 92, 1) 15%, rgba(253, 92, 92, 1) 15%, rgba(65, 181, 145, 1) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fd5c5c', endColorstr='#41b591', GradientType=1);
}

.contact_block .inner .flow li.current::after {
  background: #fff;
  color: #63636d;
  font-weight: normal;
}

.form_box dl {
  border-bottom: 1px solid #dcdcdc;
}

.form_box dl dt {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  font-size: 16px;
  font-weight: bold;
  background: #f1f1f1;
  padding: 10px;
}

.form_box dl dt .required {
  font-size: 12px;
  font-weight: bold;
  background: #fd5c5c;
  color: #fff;
  padding: 5px 20px;
  margin-right: 10px;
}

.form_box dl dd {
  width: 100%;
  font-size: 16px;
  padding: 20px 0;
}

.form_box dl dd br {
  display: none;
}

.form_box dl dd small,
.form_box dl dd span {
  margin-bottom: 10px;
  display: block;
}

.form_box dl dd input[type="text"],
.form_box dl dd input[type="email"],
.form_box dl dd select,
.form_box dl dd textarea {
  padding: 10px 20px;
  border: 1px solid #dcdcdc;
  border-radius: 5px;
  width: 100%;
}

.form_box dl dd textarea {
  height: 180px;
}

.form_box dl dd .nowrap {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: center;
}

.form_box dl dd .nowrap > * {
  width: 100%;
  margin: 0 5px;
}

.form_box dl dd .nowrap > *:first-child {
  margin-left: 0;
}

.form_box dl dd .nowrap > *:last-child {
  margin-right: 0;
}

.form_box dl dd .radio input[type="radio"],
.form_box dl dd .checkbox input[type="checkbox"] {
  display: none;
}

.form_box dl dd .radio input[type="radio"] + span,
.form_box dl dd .checkbox input[type="checkbox"] + span {
  position: relative;
  cursor: pointer;
  display: inline-block;
}

.form_box dl dd .radio input[type="radio"] + span::before,
.form_box dl dd .checkbox input[type="checkbox"] + span::before {
  content: "";
  width: 25px;
  min-width: 25px;
  height: 25px;
  border: 1px solid #c4c4c4;
  margin-right: 10px;
  display: inline-block;
  vertical-align: middle;
}

.form_box dl dd .radio input[type="radio"] + span::before {
  border-radius: 100px;
}

.form_box dl dd .radio input[type="radio"]:checked + span::after {
  content: "";
  width: 15px;
  height: 15px;
  background: #fd5c5c;
  border-radius: 100px;
  position: absolute;
  top: 2px;
  bottom: 0;
  left: 6px;
  margin: auto;
}

.form_box dl dd .checkbox input[type="checkbox"]:checked + span::after {
  content: "";
  width: 8px;
  height: 18px;
  border-bottom: 5px solid #fd5c5c;
  border-right: 5px solid #fd5c5c;
  transform: rotate(45deg);
  position: absolute;
  top: 0;
  bottom: 5px;
  left: 7px;
  margin: auto;
}

.form_box dl dd .notes {
  font-size: 14px;
}

.form_box dl.floorplan dd {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}

.form_box dl.floorplan dd > .checkbox {
  width: 49%;
  margin-bottom: 2%;
}

.form_box .form_button {
  padding: 80px 0;
}

.form_box .form_button button,
.form_box .form_button input[type="submit"] {
  background: #fd5c5c;
  color: #fff;
  max-width: 420px;
  width: 90%;
  margin: auto;
  height: 55px;
  text-align: center;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  border: 1px solid #fd5c5c;
  font-size: 16px;
  font-weight: bold;
}

.form_box.thanks strong {
  display: block;
  text-align: center;
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 10px;
}

.form_box.thanks p {
  text-align: center;
}

.mw_wp_form .form_box .horizontal-item + .horizontal-item {
  margin-left: 0;
}

.contact_telbox {
  background: #41b591;
}

.contact_telbox .inner {
  padding: 50px 0;
}

.contact_telbox .inner dl {
  border-bottom: 1px solid #fff;
  margin-bottom: 30px;
}

.contact_telbox .inner dl dt {
  width: 100%;
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: stretch;
  margin-bottom: 30px;
}

.contact_telbox .inner dl dt span {
  font-size: 18px;
  font-weight: bold;
  color: #fff;
  background: rgba(255, 255, 255, 0.3);
  border-radius: 5px;
  text-align: center;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  width: 33%;
  padding: 5px;
}

.contact_telbox .inner dl dt span:last-child {
  margin-bottom: 0;
}

.contact_telbox .inner dl dd {
  width: 100%;
  position: relative;
  margin-bottom: 30px;
}

.contact_telbox .inner dl dd div > * {
  font-weight: bold;
  text-align: center;
  display: block;
  color: #fff;
  line-height: 1.2;
}

.contact_telbox .inner dl dd div span {
  font-size: 16px;
  color: #ffff2b;
  margin-bottom: 10px;
}

.contact_telbox .inner dl dd div a.tel {
  font-size: 35px;
  margin-bottom: 5px;
}

.contact_telbox .inner dl dd div a.tel::before {
  content: "";
  display: inline-block;
  width: 45px;
  height: 45px;
  background: #fff url(../img/ico_tel_red.svg) no-repeat center/60% auto;
  vertical-align: middle;
  border-radius: 10px;
  margin-right: 10px;
  margin-bottom: 5px;
}

.contact_telbox .inner dl dd div small {
  font-size: 14px;
  line-height: 1.5em;
}

.contact_telbox .inner dl dd div small a {
  text-decoration: underline;
}

.contact_telbox .inner > span {
  font-size: 14px;
  font-weight: bold;
  text-align: center;
  display: block;
  color: #fff;
}

/*221220s*/
.contact_privacy {
  padding: 25px 5% 0;
}

.contact_privacy_ttl {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 15px;
}

.contact_privacy_txt {
  margin-bottom: 35px;
}

.contact_doui {
  background-color: #f9f9f9;
  padding: 20px;
}

.contact_doui_ttl {
  font-size: 16px;
  font-weight: bold;
}

/*.contact_doui_txt {}*/
/*221220e*/

/*==================================================
$privacy
==================================================*/
.privacy_box {
  padding-bottom: 100px;
  line-height: 2;
}

.privacy_box a {
  color: #41b591;
}

.privacy_list {
  counter-reset: prinum 0;
}

.privacy_list > ol {
  margin-bottom: 50px;
}

.privacy_list > ol > li {
  counter-increment: prinum 1;
  margin-bottom: 50px;
}

.privacy_list > ol > li .heading {
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 20px;
  line-height: 1.3;
}

.privacy_list > ol > li .heading::before {
  content: counter(prinum) ". ";
}

.privacy_list > ol > li > *:not(:last-child) {
  margin-bottom: 20px;
}

.privacy_list > ol > li .innumulist {
  counter-reset: priinnum 0;
}

.privacy_list > ol > li .innumulist li {
  counter-increment: priinnum 1;
  margin-bottom: 5px;
  padding-left: 1em;
  text-indent: -1em;
}

.privacy_list > ol > li .innumulist li::before {
  content: counter(priinnum) ".";
  margin-right: 0.15em;
}

/*==================================================
$guide
==================================================*/
.guide_box {
  padding-bottom: 100px;
}

.guide_box .inner .heading {
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 30px;
}

.guide_box .inner .guide_list ol {
  counter-reset: guidenum 0;
  border-top: 1px solid #dcdcdc;
}

.guide_box .inner .guide_list ol li {
  counter-increment: guidenum 1;
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: stretch;
  border-bottom: 1px solid #dcdcdc;
  padding: 50px 0;
}

.guide_box .inner .guide_list ol li::before {
  content: counter(guidenum, decimal-leading-zero);
  width: 50px;
  min-width: 50px;
  height: 50px;
  background: #fff;
  box-shadow: 0 5px 20px rgba(0, 0, 0, 0.1);
  font-size: 30px;
  color: #41b591;
  font-family: ivypresto-display, serif;
  margin-right: 20px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  text-align: center;
}

.guide_box .inner .guide_list ol li div {
  width: 100%;
  padding-top: 8px;
}

.guide_box .inner .guide_list ol li div .guide_list_heading {
  font-size: 20px;
  margin-bottom: 30px;
  font-weight: bold;
}

/*==================================================
$faq
==================================================*/
.faq_box {
  padding-bottom: 100px;
}

.faq_list {
  border-top: 1px solid #dcdcdc;
}

.faq_list dl {
  padding: 30px 0;
  border-bottom: 1px solid #dcdcdc;
}

.faq_list dl dt {
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: stretch;
  font-size: 18px;
  font-weight: bold;
  width: 100%;
  margin-bottom: 30px;
}

.faq_list dl dt::before {
  content: "Q";
  width: 50px;
  min-width: 50px;
  height: 50px;
  background: #fff;
  box-shadow: 0 5px 20px rgba(0, 0, 0, 0.1);
  font-size: 30px;
  color: #41b591;
  font-family: ivypresto-display, serif;
  margin-right: 30px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  text-align: center;
}

.faq_list dl dd {
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: stretch;
  position: relative;
}

.faq_list dl dd::before {
  content: "A";
  width: 50px;
  min-width: 50px;
  height: 50px;
  font-size: 30px;
  font-weight: bold;
  line-height: 1;
  color: #c0a799;
  font-family: ivypresto-display, serif;
  margin-right: 30px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  text-align: center;
}

/*==================================================
$news
==================================================*/
.news_block {
  padding-bottom: 100px;
}

.news_block .inner .news_box .news_list ul li {
  border-bottom: 1px solid #dcdcdc;
}

.news_block .inner .news_box .news_list ul li a {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  padding: 20px 0;
  font-size: 16px;
}

.news_block .inner .news_box .news_list ul li a .date {
  min-width: 6em;
  width: 6em;
  margin-right: 1em;
}

.news_block .inner .news_box .news_list ul li a .label {
  background: #c0a799;
  color: #fff;
  min-width: 130px;
  height: 30px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  font-size: 14px;
}

.news_block .inner .news_box .news_list ul li a .text {
  width: 100%;
  margin-top: 10px;
}

.news_block .news_title + .date {
  display: block;
}

/*--
2024/01/19 column追加変更　inokuchi
お知らせ、コラム共通投稿コンテンツ 
--*/
.column_block .column_title,
.news_block .news_title {
  font-size: 30px;
  font-weight: bold;
  margin-bottom: 10px;
  line-height: 1.3;
}

.column_block .incontents,
.news_block .incontents {
  padding: 50px 0;
}

.column_block .incontents h1,
.news_block .incontents h1 {
  font-weight: bold;
  font-size: 200%;
  margin-bottom: 20px;
}

.column_block .incontents h2,
.news_block .incontents h2 {
  font-weight: bold;
  font-size: 175%;
  margin-bottom: 20px;
}

.column_block .incontents h2.column-item_title,
.news_block .incontents h2.column-item_title,
.column_first_txt h2.column-item_title {
  font-weight: bold;
  font-size: 150%;
  margin-bottom: 20px;
}

.column_block .incontents h3,
.news_block .incontents h3 {
  font-weight: bold;
  font-size: 125%;
  margin-bottom: 20px;
}

.column_block .incontents h4,
.news_block .incontents h4 {
  font-weight: bold;
  font-size: 125%;
  margin-bottom: 20px;
}

.column_block .incontents h5,
.news_block .incontents h5 {
  font-weight: bold;
  font-size: 100%;
  margin-bottom: 20px;
}

.column_block .incontents h6,
.news_block .incontents h6 {
  font-weight: bold;
  font-size: 100%;
  margin-bottom: 20px;
}

.column_block .incontents pre,
.news_block .incontents pre {
  margin-bottom: 20px;
}

.column_block .incontents p,
.news_block .incontents p {
  margin-bottom: 20px;
}

.column_block .incontents p strong,
.news_block .incontents p strong {
  font-weight: bold;
}

.column_block .incontents p em,
.news_block .incontents p em {
  font-style: italic;
}

.column_block .incontents p a,
.news_block .incontents p a {
  text-decoration: underline;
  color: #41b591;
}

.column_block .incontents ul,
.news_block .incontents ul {
  margin-bottom: 20px;
}

.column_block .incontents ul li,
.news_block .incontents ul li {
  margin-bottom: 10px;
  padding-left: 2em;
  position: relative;
}

.column_block .incontents ul li::before,
.news_block .incontents ul li::before {
  content: "";
  width: 0.5em;
  height: 0.5em;
  background: #000;
  border-radius: 100px;
  position: absolute;
  top: 0.7em;
  left: 0.5em;
  margin: auto;
}

.column_block .incontents ol,
.news_block .incontents ol {
  counter-reset: newscount;
  margin-bottom: 20px;
}

.column_block .incontents ol li,
.news_block .incontents ol li {
  counter-increment: newscount;
  margin-bottom: 10px;
  padding-left: 2em;
  text-indent: -0.8em;
}

.column_block .incontents ol li::before,
.news_block .incontents ol li::before {
  content: counter(newscount) ".";
  margin-right: 10px;
  display: inline-block;
}

.column_block .incontents blockquote:not([class]),
.news_block .incontents blockquote {
  display: block;
  padding: 30px;
  background: #f1f1f1;
  position: relative;
  margin-bottom: 20px;
}

.column_block .incontents blockquote:not([class])::before,
.news_block .incontents blockquote::before {
  content: "\201C";
  position: absolute;
  top: -0.2em;
  left: 0.2em;
  margin: auto;
  font-size: 500%;
  font-weight: bold;
  line-height: 1;
  pointer-events: none;
}

.column_block .incontents blockquote:not([class]) p:last-child,
.news_block .incontents blockquote p:last-child {
  margin-bottom: 0;
}

.column_block .incontents img,
.news_block .incontents img {
  height: auto;
}

/*==================================================
$know
==================================================*/
.know_block {
  padding: 100px 0;
}

.know_headline {
  position: relative;
  margin-bottom: 100px;
  padding-bottom: 200px;
}

.know_headline::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  height: 100%;
  max-height: 500px;
  width: calc(100% - 15vw);
  background: url(../img/bg_fix.jpg) no-repeat center/cover;
}

.know_headline .inner {
  z-index: 2;
}

.know_headline .inner .heading {
  font-size: 20px;
  color: #fff;
  position: relative;
  padding: 50px 0 150px;
}

.know_headline .inner .heading strong span {
  background: #c0a799;
  padding: 0 10px;
  display: inline-block;
  margin-bottom: 10px;
}

.know_headline .inner .heading strong span:first-child {
  color: #63636d;
}

.know_headline .inner .heading strong span:last-child {
  font-size: 50px;
  line-height: 1.2;
}

.know_list > ol {
  counter-reset: knowlinum 0;
}

.know_list > ol > li {
  counter-increment: knowlinum 1;
  position: relative;
  width: 100%;
  overflow: hidden;
  padding-top: 60px;
  margin-bottom: 100px;
  line-height: 2;
}

.know_list > ol > li::before {
  content: "";
  width: 100vw;
  height: 1px;
  background: #707070;
  position: absolute;
  top: 0;
  right: 70%;
}

.know_list > ol > li .heading {
  position: relative;
  font-size: 24px;
  font-weight: bold;
  line-height: 1.2;
  padding: 42px 0 20px;
  border-bottom: 1px solid #707070;
  margin-bottom: 50px;
  min-height: 4.5em;
}

.know_list > ol > li .heading::after {
  content: counter(knowlinum, decimal-leading-zero);
  font-size: 100px;
  color: #c0a799;
  opacity: 0.5;
  line-height: 0.78;
  position: absolute;
  top: -0.5em;
  left: 0.5em;
  font-family: ivypresto-display, serif;
  font-weight: normal;
}

.know_list > ol > li .heading small {
  font-size: 12px;
  font-family: ivypresto-display, serif;
  transform: rotate(90deg);
  position: absolute;
  top: -20px;
  left: -20px;
  font-weight: normal;
  text-align: left;
  letter-spacing: 0.2em;
}

.know_list > ol > li .heading span {
  font-size: 30px;
  color: #c0a799;
}

/*.know_list>ol>li .inner .col2 {}*/
.know_list > ol > li .inner .col2 > div {
  width: 100%;
}

.know_list > ol > li .inner p {
  margin-bottom: 30px;
  counter-reset: knowliinnum 0;
}

.know_list > ol > li .inner p .num {
  counter-increment: knowliinnum 1;
  position: relative;
  display: inline-block;
  padding: 0 1em;
}

.know_list > ol > li .inner p .num::before {
  content: counter(knowliinnum);
  display: inline-block;
  color: #41b591;
}

.know_list > ol > li .inner p .num::after {
  content: "";
  width: 1.2em;
  height: 1.2em;
  border-radius: 100px;
  border: 1px solid #41b591;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}

.know_list > ol > li .inner .image {
  margin-bottom: 30px;
}

.know_list > ol > li .inner .image * {
  width: 100%;
}

.know_list > ol > li .inner .inarrowimage strong {
  display: block;
  text-align: center;
  font-size: 20px;
  color: #41b591;
  margin-bottom: 10px;
  position: relative;
  width: 100%;
  font-weight: bold;
}

.know_list > ol > li .inner .inarrowimage strong::after {
  content: "";
  width: 15em;
  height: 1px;
  background: #707070;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}

.know_list > ol > li .inner .inarrowimage div {
  width: 100%;
  margin-bottom: 100px;
  padding-top: 10px;
  position: relative;
}

.know_list > ol > li .inner .inarrowimage div span {
  display: block;
  text-align: center;
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 10px;
}

.know_list > ol > li .inner .inarrowimage .left::after {
  content: "";
  width: 80px;
  height: 60px;
  background: url(../img/arrow03.svg) no-repeat center/contain;
  position: absolute;
  bottom: -90px;
  left: 0;
  right: 0;
  margin: auto;
  transform: rotate(90deg);
}

.know_list > ol > li .inner .inballoonblock > div {
  display: block;
  text-align: center;
  font-size: 16px;
  background: #fff;
  width: 100%;
  margin: 0 auto 30px;
  padding: 5%;
  position: relative;
  filter: drop-shadow(0px 3px 10px rgba(0, 0, 0, 0.1));
}

.know_list > ol > li .inner .inballoonblock > div::after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 20px 10px 0 10px;
  border-color: #fff transparent transparent transparent;
  position: absolute;
  bottom: -20px;
  left: 0;
  right: 0;
  margin: auto;
}

.know_list > ol > li .inner .inballoonblock > div span {
  color: #41b591;
}

.know_list > ol > li .inner .inballoonblock > div strong {
  font-size: 35px;
  color: #ff8a03;
  line-height: 1;
}

.know_list > ol > li .inner .inballoonblock > span {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: stretch;
}

.know_list > ol > li .inner .inballoonblock > span img {
  width: 100%;
  display: block;
  margin-bottom: 30px;
}

.know_list > ol > li .inimages .inimages_slider {
  width: 100%;
  position: relative;
  padding: 45% 0;
}

.know_list > ol > li .inimages .inimages_slider * {
  height: 100%;
  position: relative;
  overflow: hidden;
}

.know_list > ol > li .inimages .inimages_slider > div {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}

.know_list > ol > li .inimages .inimages_slider .inimages_slider_item img {
  height: 100%;
  width: auto;
  max-width: none;
  position: absolute;
  top: 0;
  left: -50%;
}

.know_list > ol > li .inimages .inimages_slider .arrows {
  width: 45px;
  height: 95px;
  background: rgba(0, 0, 0, 0.5);
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  z-index: 2;
  cursor: pointer;
}

.know_list > ol > li .inimages .inimages_slider .arrows::before {
  content: "";
  width: 20px;
  height: 20px;
  border-bottom: 1px solid #fff;
  border-left: 1px solid #fff;
  transform: rotate(45deg);
  position: absolute;
  top: 0;
  bottom: 0;
  left: 8px;
  right: 0;
  margin: auto;
}

.know_list > ol > li .inimages .inimages_slider .arrows.next {
  transform: scale(-1, 1);
  left: auto;
  right: 0;
}

/*==================================================
$404
==================================================*/
.notfound {
  padding: 100px 0;
}

.notfound .main_heading {
  font-size: 20px;
  font-weight: bold;
  padding-bottom: 10px;
  margin-bottom: 50px;
  border-bottom: 3px solid #f5f0ed;
  width: 100%;
  display: block;
  position: relative;
}

.notfound .main_heading::after {
  content: "";
  width: 80px;
  height: 3px;
  background: #63636d;
  position: absolute;
  bottom: -3px;
  left: 0;
}

.notfound .main_heading span {
  display: block;
}

.notfound .main_heading span:first-child {
  font-size: 12px;
}

.notfound .inbox p {
  margin-bottom: 50px;
}

.VideoWrapper {
  width: 100%;
  margin: auto;
  position: relative;
  overflow: hidden;
  padding: 28.1% 0;
}

.VideoWrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.movie_block .inner {
  width: 100%;
}

.page_linkbox.fixed_banner {
  position: relative;
  top: auto;
  left: auto;
  right: auto;
  bottom: auto;
  background: none;
  width: auto;
  height: auto;
  padding: 0;
}

/* 230307 */
p.address,
p.station,
p.price {
  font-size: 3.6vw;
  margin-bottom: 7px;
  text-align: center;
}

p.address span,
p.station span {
  display: none;
}

p.price {
  font-size: 4.5vw;
  font-weight: bold;
  color: #873030;
  margin-top: 14px;
}

p.price span.kugiri:first-of-type {
  display: none;
}

.info_box {
  background-color: rgba(255, 255, 255, 0.6);
  padding: 5%;
  border-radius: 10px;
  font-weight: bold;
}

/* p.station {
	position: relative;
	padding-left:84.16px;
}

p.station::before {
	content: "アクセス：";
	font-size: 17px;
	color: #7e6759;
	position: absolute;
	top: 0;
	left: 0;
} */

.point_list ul {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  margin-top: 11%;
}

.point_list ul li {
  width: 48%;
  position: relative;
  background-color: #fff;
  border-radius: 5px;
  margin-bottom: 4%;
  padding: 4% 2%;
  text-align: center;
  border: 1px solid #d1d1d9;
  font-size: 4vw;
}

.point_list ul li::before {
  content: "";
  width: 7vw;
  height: 7vw;
  display: inline-block;
  margin-right: 5%;
  margin-bottom: -5%;
}

.point_list ul li.ekitika::before {
  background: url(../img/point_ekitika.png) no-repeat center/contain;
}

.point_list ul li.pet::before {
  background: url(../img/point_pet.png) no-repeat center/contain;
}

.point_list ul li.hutarikurashi::before {
  background: url(../img/point_hutarikurashi.png) no-repeat center/contain;
}

.fixed_banner.page_linkbox .inner {
  width: 95%;
}

.fixed_banner.page_linkbox .page_contact_title {
  display: block;
  text-align: center;
  margin: 27% auto 5%;
  font-size: 5.3vw;
  font-weight: bold;
}

.fixed_banner.page_linkbox .inner ul {
  flex-wrap: wrap;
}

.fixed_banner.page_linkbox .inner ul li {
  height: auto;
  text-align: center;
  margin-bottom: 4%;
}

.fixed_banner.page_linkbox .inner ul li.tel a,
.fixed_banner.page_linkbox .inner ul li.contact a,
.fixed_banner.page_linkbox .inner ul li.line a {
  padding-top: 40px;
  padding-left: 0;
  display: block;
  padding-bottom: 5%;
}

.fixed_banner.page_linkbox .inner ul li.tel {
  width: 48%;
}

.fixed_banner.page_linkbox .inner ul li.contact {
  width: 48%;
}

.fixed_banner.page_linkbox .inner ul li.line {
  width: 100%;
}

.fixed_banner.page_linkbox .inner ul li.tel a::before,
.fixed_banner.page_linkbox .inner ul li.contact a::before,
.fixed_banner.page_linkbox .inner ul li.line a::before {
  left: 50%;
  transform: translateX(-50%);
  top: 7%;
}

.fixed_banner.page_linkbox .inner ul li.tel a::before {
  top: -40%;
}

.fixed_banner.page_linkbox .inner ul li.contact a::before {
  top: -45%;
}

.fixed_banner.page_linkbox .inner ul li.line a {
  flex-wrap: wrap;
  padding-bottom: 3%;
  padding-top: 3%;
  padding-left: 15%;
}

.fixed_banner.page_linkbox .inner ul li.line a::before {
  position: absolute;
  width: 11vw;
  height: 11vw;
  top: 50%;
  transform: translate(0, -50%);
  left: 10%;
}

.fixed_banner.page_linkbox .inner ul li.tel a small.tel_txt span {
  font-size: 4vw;
}

.fixed_banner.page_linkbox .inner ul li.tel a small.tel_txt {
  font-size: 5vw;
  text-align: center;
}

.contact_txt {
  font-size: 5vw;
}

.contact_txt small {
  font-size: 3.6vw;
  font-weight: normal;
  display: block;
}

.fixed_banner.page_linkbox .inner ul li.line a > span {
  font-size: 5vw;
  color: #63636d;
}

.fixed_banner.page_linkbox .inner ul li.line a > span span {
  color: #4cc764;
}

.fixed_banner.page_linkbox .inner ul li.line .sp_txt {
  text-align: center;
  font-size: 4vw;
  color: #4cc764;
  font-weight: bold;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}

.fixed_banner.page_linkbox .inner ul li.line .sp_txt::before,
.fixed_banner.page_linkbox .inner ul li.line .sp_txt::after {
  content: "";
  width: 1em;
  height: 1em;
  margin: 0 5px;
  background: url(../img/deco_text01.svg) no-repeat center/contain;
}

.fixed_banner.page_linkbox .inner ul li.line .sp_txt::after {
  transform: scale(-1, 1);
}

.property_detail_under_link.archive_link {
  background: #fff;
  margin-bottom: 12%;
  position: relative;
  top: auto;
}

.property_detail_under_link.archive_link ul {
  width: 100%;
  flex-wrap: wrap;
}

.property_detail_under_link.archive_link ul li {
  width: 31%;
  margin-bottom: 4%;
}

.property_detail_under_link.archive_link ul li a {
  background: #f5f0ed;
  display: block;
  font-size: 3.4vw;
  padding: 10% 3% 25%;
}

/* 230310 */
.point_list .main_txt_imgbox {
  margin-top: 5%;
}

.point_list ul li.shintiku::before {
  background: url(../img/point_shintiku.png) no-repeat center/contain;
}

.point_list ul li.highgrade::before {
  background: url(../img/point_highgrade.png) no-repeat center/contain;
}

.point_list ul li.key::before {
  background: url(../img/point_key.png) no-repeat center/contain;
}

.point_list ul li.market::before {
  background: url(../img/point_market.png) no-repeat center/contain;
}

.point_list ul li.park::before {
  background: url(../img/point_park.png) no-repeat center/contain;
}

.contact_box {
  padding: 50px 0;
}

.contact_box .inner strong {
  display: block;
  text-align: center;
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 20px;
}

.contact_box .inner ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}

.contact_box .inner ul li {
  width: 48%;
  margin-bottom: 3%;
}

.contact_box .inner ul li.line {
  width: 100%;
}

.contact_box .inner ul li a {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  border-radius: 10px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
  text-align: center;
  background: #4cc764;
  padding: 5px 10px;
  border: 2px solid #fff;
  height: 75px;
  color: #fff;
}

.contact_box .inner ul li a > span {
  font-size: 16px;
  font-weight: bold;
  line-height: 1.3;
}

.contact_box .inner ul li a::before {
  content: "";
  width: 100%;
  height: 1.5em;
}

.contact_box .inner ul li a > span small {
  display: block;
  width: 100%;
  font-size: 10px;
}

.contact_box .inner ul li.tel a {
  background: #63b393;
  border: 2px solid #63b393;
  color: #fff;
}

.contact_box .inner ul li.tel a::before {
  background: url(../img/ico_tel_white.svg) no-repeat center/contain;
}

.contact_box .inner ul li.form a {
  background: rgb(234, 99, 93);
  /* background: -moz-linear-gradient(top, rgba(234, 99, 93, 1) 0%, rgba(167, 77, 74, 1) 100%); */
  /* background: -webkit-linear-gradient(top, rgba(234, 99, 93, 1) 0%, rgba(167, 77, 74, 1) 100%); */
  /* background: linear-gradient(to bottom, rgba(234, 99, 93, 1) 0%, rgba(167, 77, 74, 1) 100%); */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ea635d', endColorstr='#a74d4a', GradientType=0);
  color: #fff;
}

.contact_box .inner ul li.form a::before {
  background: url(../img/ico_mail.svg) no-repeat center/contain;
}

.contact_box .inner ul li.line a::before {
  background: url(../img/ico_line.png) no-repeat center/contain;
  width: 40px;
  height: 40px;
  margin-right: 10px;
  border: 1px solid #fff;
  border-radius: 5px;
}

.contact_box .inner ul li.line a > span small {
  color: #f5ff00;
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
}

.contact_box .inner ul li.line a > span small::before,
.contact_box .inner ul li.line a > span small::after {
  content: "";
  width: 1em;
  height: 1em;
  margin-right: 5px;
  background: url(../img/deco_text01.svg) no-repeat center/contain;
}

.contact_box .inner ul li.line a > span small::after {
  margin-right: 0;
  margin-left: 5px;
  transform: scale(-1, 1);
}

.contact_box .inner ul li.line a > span span {
  color: #fff;
}

.pankuzu {
  padding: 20px 0;
  font-size: 10px;
}

.pankuzu .inner {
  overflow-x: auto;
  width: 100%;
  padding: 5px 10px;
}

.pankuzu ul {
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: center;
}

.pankuzu ul li {
  white-space: nowrap;
  margin-right: 10px;
}

.pankuzu ul li a {
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: center;
}

.pankuzu ul li:not(:last-child) a::after {
  content: "";
  width: 8px;
  height: 8px;
  border-top: 1px solid #63636d;
  border-right: 1px solid #63636d;
  transform: rotate(45deg);
  margin-left: 10px;
}

.pankuzu ul li:last-child a {
  pointer-events: none;
}

/* 230518追加　空室一覧 */

@media only screen and (max-width: 767px) {
  #vacancy .list {
    border-collapse: collapse;
    margin: auto;
    overflow-x: scroll;
  }

  #vacancy .list td,
  th {
    vertical-align: middle;
  }

  #vacancy .list th {
    border: solid 1px #666666;
    color: #000000;
    background-color: #41b591;
  }

  #vacancy .list td {
    border: solid 1px #666666;
    color: #000000;
    background-color: #ffffff;
    width: 90px;
  }

  #vacancy .list tr:nth-child(2) {
    background-color: #41b591;
    padding: 0.05rem;
  }

  #vacancy .list tr:nth-child(odd) td {
    background-color: #ffe3b5;
    padding: 0.05rem;
  }

  #vacancy .list tr > * {
    border-right: 1px solid #000;
    border-bottom: 1px solid #000;
    text-align: center;
    padding: 0.35rem 0.6rem;
  }

  #vacancy .list .done {
    font-size: 0.9rem;
    font-weight: bold;
    background: #aaa;
  }

  #vacancy .list td .vacancy {
    background-color: rgb(240, 240, 255);
  }

  #vacancy .list .vacancy {
    font-size: 1.2rem;
    font-weight: bold;
    color: rgb(217 94 89);
  }

  #vacancy .list td .moveout {
    background-color: rgb(240, 240, 255);
  }

  #vacancy .list .moveout {
    font-size: 0.9rem;
    font-weight: bold;
    color: rgb(3 126 18);
  }

  #vacancy .list tr > td {
    white-space: nowrap;
  }

  #vacancy .list thead tr > th {
    left: 0;
    min-width: 5rem;
    z-index: 1;
    position: sticky;
  }

  #vacancy .list tbody tr > th,
  #vacancy .list tbody tr > th + td,
  #vacancy .list tbody tr > td:first-child {
    position: sticky;
    left: 5rem;
    min-width: 5rem;
    z-index: 1;
  }

  #vacancy .list tbody tr > th {
    left: 0;
  }

  #vacancy .list tbody tr > td:first-child {
    background-color: #fff;
  }

  .list table thead tr > th:after,
  .list table tbody tr > th:after,
  .list table tbody tr > th + td:after,
  .list table tbody tr > td:first-child:after {
    content: "";
    position: absolute;
    top: -1px;
    left: -1px;
    right: -1px;
    bottom: -1px;
    border: 1px solid #000;
  }

  .pr_area {
    background: #d95e59;
    font-weight: bold;
    color: #fff;
    border-radius: 10px;
    padding: 5px 15px;
    text-align: center;
    font-size: 19px;
    margin: 10px auto 30px;
    line-height: 1.7em;
    max-width: 900px;
    width: 90%;
  }

  .pr_area p span {
    font-size: 30px;
    display: inline-block;
    margin: 0 7px;
  }

  .pr_area p .noprice {
    border: 3px solid #fff;
    padding: 1% 1% 3%;
  }

  .pr_area .pr_cam_info {
    font-size: 18px;
    letter-spacing: 0.08em;
    line-height: 1.5;
  }
}

@media only screen and (max-width: 576px) {
}

@media only screen and (max-width: 480px) {
}

@media print, screen and (min-width: 768px) {
  .scroll-hint-icon-wrap.is-active .scroll-hint-icon {
    opacity: 0;
  }
}

@media print, screen and (min-width: 992px) {
}

@media print, screen and (min-width: 1200px) {
}

/*==================================================
$検索フォーム
==================================================*/
.search_box {
  margin-bottom: 50px;
  border: 1px solid #c0a799;
}

.search_box > strong {
  font-size: 16px;
  font-weight: bold;
  background: #c0a799;
  padding: 5px 20px;
  color: #fff;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  position: relative;
  cursor: pointer;
}

.search_box.allopen > strong {
  cursor: initial;
}

.search_box > strong::before {
  content: "";
  width: 1.5em;
  height: 1.5em;
  background: url(../img/ico_search.svg) no-repeat center/contain;
  margin-right: 10px;
}

.search_box > strong::after {
  content: "";
  width: 10px;
  height: 10px;
  border-bottom: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
  position: absolute;
  top: 0;
  bottom: 4px;
  right: 15px;
  margin: auto;
  transition: 0.3s;
}

.search_box > strong.open::after {
  transform: rotate(225deg);
  bottom: -4px;
}

.search_box.allopen > strong::after {
  display: none;
}

.search_box .search_inbox {
  padding: 20px 5%;
}

.search_box .search_inbox dl.hidden_area {
  opacity: 0;
  height: 0;
  overflow: hidden;
  pointer-events: none;
}

.search_box .search_inbox dl dt {
  font-weight: bold;
  padding: 5px 10px;
  background: #f5f0ed;
  position: relative;
  cursor: pointer;
  margin-bottom: 10px;
}

.search_box.allopen .search_inbox dl dt {
  cursor: initial;
}

.search_box .search_inbox dl dt::before,
.search_box .search_inbox dl dt::after {
  content: "";
  width: 15px;
  height: 2px;
  background: #c0a799;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 10px;
  margin: auto;
  transition: 0.3s;
  opacity: 1;
}

.search_box .search_inbox dl dt::after {
  transform: rotate(90deg);
}

.search_box .search_inbox dl dt.open::after {
  opacity: 0;
}

.search_box.allopen .search_inbox dl dt::before,
.search_box.allopen .search_inbox dl dt::after {
  display: none;
}

.search_box .search_inbox dl dd {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: stretch;
  padding: 0 0 20px;
}

.search_box .search_inbox dl dd strong {
  display: block;
  border-bottom: 1px solid #c0a799;
  padding: 5px 10px;
  margin-bottom: 10px;
  width: 100%;
}

.search_box .search_inbox dl dd label {
  width: 49%;
  cursor: pointer;
  margin-bottom: 10px;
}

.search_box .search_inbox dl.floorplan.clm3 dd label {
  width: 33%;
}

.search_box .search_inbox dl dd label input[type="checkbox"] {
  display: none;
}

.search_box .search_inbox dl dd label input[type="checkbox"] + span {
  position: relative;
  cursor: pointer;
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: center;
  line-height: 1.2;
  padding: 0 10px;
  height: 100%;
  font-size: 13px;
}

.search_box .search_inbox dl dd label input[type="checkbox"] + span::before {
  content: "";
  width: 15px;
  min-width: 15px;
  height: 15px;
  border: 1px solid #c4c4c4;
  margin-right: 10px;
  display: inline-block;
  vertical-align: middle;
  background: #fff;
}

.search_box .search_inbox dl dd label input[type="checkbox"]:checked + span::after {
  content: "";
  width: 8px;
  height: 18px;
  border-bottom: 5px solid #fd5c5c;
  border-right: 5px solid #fd5c5c;
  transform: rotate(45deg);
  position: absolute;
  top: 0;
  bottom: 5px;
  left: 17px;
  margin: auto;
}

.search_box.allopen .search_inbox dl.station dd strong {
  position: relative;
  cursor: pointer;
}

.search_box.allopen .search_inbox dl.station dd strong::before,
.search_box.allopen .search_inbox dl.station dd strong::after {
  content: "";
  width: 15px;
  height: 2px;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 15px;
  margin: auto;
  background: #c0a799;
}

.search_box.allopen .search_inbox dl.station dd strong::after {
  transform: rotate(90deg);
}

.search_box.allopen .search_inbox dl.station dd strong.active::after {
  opacity: 0;
}

.search_box .search_inbox dl.station dd div {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: stretch;
}

.search_box .search_inbox dl.station dd .feas_clevel_01 {
  width: 100%;
  background: #f1f1f1;
  margin-top: 20px;
}

.search_box .search_inbox dl.station dd div .feas_clevel_01:first-of-type,
.search_box .search_inbox dl.station dd strong + .feas_clevel_01 {
  margin-top: 0;
}

.search_box .search_inbox dl.station dd .feas_clevel_01 span {
  padding: 10px;
}

.search_box .search_inbox .search_btn {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: center;
}

.search_box .search_inbox .search_btn input[type="reset"],
.search_box .search_inbox .search_btn input[type="submit"] {
  width: 250px;
  width: 49%;
  max-width: 250px;
  height: 40px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  color: #fff;
  border-radius: 100px;
  cursor: pointer;
}

.search_box .search_inbox .search_btn input[type="reset"] {
  border: 1px solid #8e8e8e;
  background: #8e8e8e;
}

.search_box .search_inbox .search_btn input[type="submit"] {
  border: 1px solid #d95e59;
  background: #d95e59;
}

.not_match_text {
  text-align: center;
  margin-bottom: 100px;
}

/*==================================================
$column arcive 2024/01/19追加 inokuchi
==================================================*/
.column_block {
  padding-bottom: 100px;

  .column_title {
    padding-bottom: 15px;
    margin-bottom: 15px;
    border-bottom: 1px solid #dfdfdf;
  }
}

.column-card {
  .column-card_item {
    width: 100%;
    max-width: 350px;
    margin: 0 auto;
    background-color: #fff;
    position: relative;
    z-index: auto;

    & + .column-card_item {
      margin-top: 30px;
    }

    & a {
      display: flex;
      flex-direction: column;
      justify-content: flex-start;
      align-items: flex-start;
      min-height: 400px;
      height: 100%;
      padding: 0 0 15px;
      border: 1px solid #dfdfdf;
    }

    .column_date {
      position: absolute;
      top: 0;
      left: 0;
      font-size: 13px;
      color: #fff;
      padding: 3px 5px;
      background: #988980;
      z-index: 10;
    }

    .card_image {
      width: 100%;
      text-align: center;
      overflow: hidden;
      aspect-ratio: 4 / 3;

      & img {
        object-fit: cover;
        width: 100%;
        height: 100%;
        position: relative;
        z-index: 1;
        transition: all 0.2s linear;
      }
    }

    .card_title {
      font-size: 15px;
      text-align: left;
      letter-spacing: 0.05em;
      color: #63636d;
      margin: 15px 15px auto;
    }

    .card_text {
      margin-top: 20px;
      text-align: justify;
    }

    .card_label {
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
      padding: 0 15px;
      margin-top: 20px;

      & span {
        display: inline-block;
        font-size: 12px;
        color: #63636d;
        padding: 3px 6px;
        background: #f5f0ed;
      }
    }
  }
}

/*==================================================
$column single 2024/01/19追加 inokuchi
==================================================*/

.p-column .l-container {
  .l-main {
    width: 100%;

    .column_date {
      .label {
        display: inline-block;
        font-weight: bold;
        letter-spacing: 0.05em;
        color: #fff;
        line-height: 1.1;
        padding: 3px 8px;
        margin-right: 5px;
        background-color: #d5801d;
        border-radius: 2px;
      }

      .post_date {
        display: block;
        letter-spacing: 0.05em;
        margin-right: 15px;
      }

      .last_date {
        display: block;
        letter-spacing: 0.08em;
      }
    }

    .toc {
      /*目次*/
      max-width: 600px;
      padding: 20px 25px 30px;
      margin: 0 auto 50px;
      background-color: #f5f0ed;
      border-radius: 5px;

      .toc_ttl {
        font-size: 16px;
        letter-spacing: 0.1em;
        text-align: center;
        font-weight: bold;
        margin-bottom: 5px;
      }

      & ol {
        margin: 0;
        padding: 0;

        & li {
          text-indent: 0;
          font-size: 14px;
          display: flex;
          align-items: flex-start;
          gap: 3px;
          padding: 13px 0 13px 15px;
          margin: 0;
          border-bottom: 1px dashed #aaa;

          &::before {
            flex-shrink: 0;
          }

          & a {
            flex: 1;
            position: relative;
            padding-right: 30px;
          }

          & a::after {
            content: "";
            width: 8px;
            aspect-ratio: 1 / 1;
            position: absolute;
            top: calc(50% - 6px);
            right: 10px;
            border-right: 1px solid #707070;
            border-bottom: 1px solid #707070;
            transform: rotate(45deg);
          }

          & a:active::after {
            border-color: #d95e59;
          }

          & a:active {
            color: #d95e59;
          }
        }
      }
    }

    .column-content {
      .column-item + .column-item {
        margin-top: 50px;
      }

      .column-item_block + .column-item_block {
        margin-top: 30px;
      }
    }

    .writer {
      padding: 35px 10px;
      margin-top: 50px;
      border-top: 1px solid #dcdcdc;
      border-bottom: 1px solid #dcdcdc;

      .writer_img {
        width: 120px;
        aspect-ratio: 1 / 1;
        overflow: hidden;
        border-radius: 50%;
        margin: 0 auto;

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

      .writer_box {
        flex: 1;
      }

      .writer_ttl {
        width: 100%;
        text-align: center;
        font-size: 18px;
        font-weight: bold;
        letter-spacing: 0.08em;
        line-height: 1.3;
        color: #c0a799;

        &::before {
          content: "";
          display: inline-block;
          width: 18px;
          aspect-ratio: 1 / 1;
          -webkit-mask-image: url(../img/ico_pencil.svg);
          mask-image: url(../img/ico_pencil.svg);
          -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
          -webkit-mask-position: center center;
          mask-position: center center;
          -webkit-mask-size: contain;
          mask-size: contain;
          margin-right: 0.15em;
          background-color: currentColor;
        }
      }

      .writer_text {
        padding-top: 20px;

        .writer_name {
          font-size: 18px;
          text-align: center;
          letter-spacing: 0.08em;
          color: #8e8e8e;
        }

        .writer_profile {
          color: #8e8e8e;
          letter-spacing: 0.08em;
          line-height: 2;
        }
      }
    }

    .column_single_nav {
      display: flex;
      flex-direction: column;
      gap: 30px;
      margin-top: auto;
      padding-top: 20px;
      border-top: 1px solid #efefef;

      .prev,
      .next {
        width: 100%;

        & a {
          display: flex;
          align-items: center;
          gap: 10px;
        }

        & figure {
          flex-shrink: 0;
          width: 80px;
          aspect-ratio: 1 / 1;
          overflow: hidden;

          & img {
            object-fit: cover;
            width: 100%;
            height: 100%;
            transition: all 0.2s ease;
          }
        }
      }

      .next a {
        flex-direction: row-reverse;
        text-align: right;
      }

      .arcive {
        order: 3;
        width: 100%;
        text-align: center;

        & a {
          display: inline-block;
          padding: 3px 12px;
          border: 1px solid currentColor;
        }
      }

      .empty {
        display: none;
      }
    }
  }

  .l-side {
    width: 100%;

    .side_block {
      margin-bottom: 50px;
    }

    .side_title {
      font-size: 16px;
      letter-spacing: 0.05em;
      color: #fff;
      padding: 5px 10px;
      margin-bottom: 8px;
      background-color: #c0a799;
    }

    .side-column_cat > ul > li {
      padding: 10px;
      border-bottom: dotted 2px #dfdfdf;

      & a {
        position: relative;
        display: block;
        padding-right: 20px;

        &:active {
          color: #d95e59;
        }

        &::after {
          position: absolute;
          top: calc(50% - 4px);
          right: 5px;
          content: "";
          display: block;
          width: 8px;
          aspect-ratio: 1 / 1;
          border-right: 2px solid #c0a799;
          border-bottom: 2px solid #c0a799;
          transform: rotate(-45deg);
        }
      }

      .child li {
        padding: 10px 0 10px 12px;

        & a {
          color: #aaa;

          &:active {
            color: #d95e59;
          }
        }
      }
    }

    .side-column_rank,
    .side-column_new {
      & ul li {
        margin-bottom: 10px;
      }

      & ul li a {
        display: flex;
        align-items: flex-start;
        gap: 5px;

        &:active {
          color: #d95e59;

          & img {
            transform: scale(1.1);
          }
        }

        & figure {
          flex-shrink: 0;
          width: 80px;
          aspect-ratio: 1 / 1;
          overflow: hidden;

          & img {
            object-fit: cover;
            width: 100%;
            height: 100%;
            transition: all 0.2s linear;
          }
        }

        & span {
          display: block;
          font-size: 12px;
          letter-spacing: 0.05em;
          margin-bottom: 5px;
        }

        & p {
          font-size: 14px;
          padding: 5px;
        }
      }
    }

    .side-column_rank {
      & ul li {
        position: relative;

        & figure::before {
          position: absolute;
          top: 0;
          left: 0;
          display: flex;
          align-items: center;
          justify-content: center;
          width: 20px;
          aspect-ratio: 1 / 1;
          color: #fff;
          line-height: 20px;
          z-index: 3;
        }

        &:first-child figure::before {
          content: "1";
          background-color: #d4ca3a;
        }

        &:nth-child(2n) figure::before {
          content: "2";
          background-color: #acacac;
        }

        &:nth-child(3n) figure::before {
          content: "3";
          background-color: #c0a799;
        }
      }
    }

    .side-column_new {
      .new_more {
        .btn {
          height: auto;
          color: #fff;
          letter-spacing: 0.02em;
          line-height: 1.3;
          padding: 10px 35px 8px 15px;
          background: #c0a799 url(../img/arrow01_white.svg) no-repeat center right 15px / 13px auto;
          transition: all 0.2s ease;

          &:active {
            background-color: #d0bdb2;
          }
        }
      }
    }
  }

  .pickup_section {
    /*関連物件*/
    margin-top: 30px;
    margin-bottom: 50px;

    .heading {
      width: 100%;
      font-size: 18px;
      margin: 15px 0;
    }

    .pickup_list {
      .pickup_item {
        margin-bottom: 30px;

        & a {
          display: flex;
          align-items: flex-start;
          gap: 5%;
          transition: all 0.2s linear;
        }
      }

      .image {
        flex-basis: 120px;
        flex-shrink: 0;
        position: relative;
        aspect-ratio: 1 / 1;
        overflow: hidden;

        .label {
          position: absolute;
          top: 0;
          right: 0;
          font-size: 11px;
          background: rgba(255, 255, 255, 0.9);
          padding: 3px 5px;
          z-index: 2;
        }

        & img {
          object-fit: cover;
          width: 100%;
          height: 100%;
          transition: all 0.2s linear;
        }
      }

      .text {
        flex: 1;
        border-bottom: 1px solid #dcdcdc;

        .name {
          font-size: 14px;
          font-weight: bold;
          line-height: 1.2;
          padding-bottom: 10px;
          display: block;
        }
      }

      .detail {
        height: 100%;
        border-top: 1px solid #dcdcdc;
        padding: 10px;

        .layout {
          display: block;
          color: #c0a799;
          font-size: 13px;
        }

        .rent {
          display: block;
          font-size: 15px;
        }
      }
    }
  }

  .bottom_fix {
    position: absolute;
  }
}

/* 240221 */
.property_title_block .label span.badge.recommend {
  color: #fff;
  border: 1px solid #d5801d;
  background: #d5801d;
}

.property_title_block .label span.badge.freerent {
  color: #fff;
  border: 1px solid #d95e59;
  background: #d95e59;
}

.property_title_block .label span.badge.attention {
  color: #fff;
  border: 1px solid #e61d1d;
  background: #e61d1d;
}

/* 240313 */
.pageview {
  font-size: 18px;
  margin-top: 10px;
  position: relative;
  text-align: center;
  background: #f3f3f3;
  line-height: 260%;
  border-radius: 50px;
}

.pageview strong {
  font-size: 28px;
  font-weight: bold;
  color: #fd5c5c;
}

/* 240530　特徴と設備のアイコン追加 */
.property-icon-p li::before {
  content: "";
  width: 100%;
  height: 25px;
  position: absolute;
  top: 34%;
  left: 0;
  right: 0;
  margin: auto;
  transform: translateY(-50%);
}

.property-icon-p li.system_kitchen::before,
.property-icon-p li.shoes_box::before {
  content: "";
  width: 100%;
  height: 25px;
  position: absolute;
  top: 34%;
  left: 0px;
  right: 0;
  margin: auto;
  transform: translateY(-50%);
}

.property-icon-p li.system_kitchen::before {
  background: url(../img/systemkitchen.png?240531) no-repeat center/contain;
}

.property-icon-p li.shoes_box::before {
  background: url(../img/shoes.png) no-repeat center/contain;
}

.property-icon-p li.internet::before {
  content: "";
  width: 100%;
  height: 25px;
  position: absolute;
  top: 32%;
  left: 0;
  right: 0;
  margin: auto;
  transform: translateY(-50%);
}

.property-icon-p li.internet::before {
  background: url(../img/internet.png) no-repeat center/contain;
}

.property-icon-p li.interphone::before {
  background: url(../img/bell.png) no-repeat center/contain;
}

.property-icon-p li.autolock::before {
  background: url(../img/auto-lock.png) no-repeat center/contain;
}

.property-icon-p li.wash_basin::before {
  background: url(../img/senmen.png) no-repeat center/contain;
}

.property-icon-p li.reheating::before {
  background: url(../img/yuwakashi.png) no-repeat center/contain;
}

.property-icon-p li.toilet_and_bath::before {
  background: url(../img/toilet-bath.png) no-repeat center/contain;
}

.property-icon-p li.security_camera::before {
  background: url(../img/bouhan-camera.png) no-repeat center/contain;
}

.property-icon-p li.air_conditioner::before {
  background: url(../img/aircon.png) no-repeat center/contain;
}

.property-icon-p li.elevator::before {
  background: url(../img/elevator.png) no-repeat center/contain;
}

.property-icon-p li.delivery_box::before {
  background: url(../img/takuhai-box.png) no-repeat center/contain;
}

.property-icon-p li.closet::before {
  background: url(../img/closet.png) no-repeat center/contain;
}

.property-icon-p li.parking_bicycle::before {
  background: url(../img/jitensya.png) no-repeat center/contain;
}

.property-icon-p li.parking_bike::before {
  background: url(../img/bike.png) no-repeat center/contain;
}

.property-icon-p li.wi-fi::before {
  background: url(../img/wifi.png) no-repeat center/contain;
}

.property-icon-p li.pet::before {
  background: url(../img/dog.png) no-repeat center/contain;
}

.property-icon-p li.near_the_station_5::before {
  background: url(../img/toho.png) no-repeat center/contain;
}

.property-icon-p li.near_the_station_5::before {
  background: url(../img/toho.png) no-repeat center/contain;
}

.property-icon-p li.parking_car::before {
  background: url(../img/car.png) no-repeat center/contain;
}

.property-icon-p li.washlet::before {
  background: url(../img/wash-let.png) no-repeat center/contain;
}

.property-icon-p li.high_grade::before {
  background: url(../img/ico_highgrade.png) no-repeat center/contain;
}

.property-icon-p li.new::before {
  background: url(../img/ico_building.png) no-repeat center/contain;
}

.property-icon-p li.contactless_key::before {
  background: url(../img/key.png) no-repeat center/contain;
}

.property-icon-p li.bathroom_heater_dryer::before {
  background: url(../img/bathroom_heater_dryer.png) no-repeat center/contain;
}

.property-icon-p li.iot::before {
  background: url(../img/iot.png) no-repeat center/contain;
}

.property-icon-p li.all-elect::before {
  background: url(../img/all-elect.png) no-repeat center/contain;
}

.property-icon-p li.gas::before {
  background: url(../img/gas.png) no-repeat center/contain;
}

.property-icon-p li.walk_in::before {
  background: url(../img/wic.png) no-repeat center/contain;
}

/* 条件・設備から探すアイコン */
.property-icon-p li.triple_0::before {
  background: url(../img/triple_0.png) no-repeat center/contain;
}

.property-icon-p li.auto_lock::before {
  background: url(../img/auto-lock.png) no-repeat center/contain;
}

.property-icon-p li.pet_ok::before {
  background: url(../img/dog.png) no-repeat center/contain;
}

.property-icon-p li.wifi_free::before {
  background: url(../img/wifi.png) no-repeat center/contain;
}

.property-icon-p li.parking::before {
  background: url(../img/car.png) no-repeat center/contain;
}

.property-icon-p li.bicycle_parking::before {
  background: url(../img/jitensya.png) no-repeat center/contain;
}

.property-icon-p li.bike_parking::before {
  background: url(../img/bike.png) no-repeat center/contain;
}

.property-icon-p li.toilet_bath::before {
  background: url(../img/toilet-bath.png) no-repeat center/contain;
}

.property-icon-p li.double_ok::before {
  background: url(../img/2nyukyo.png) no-repeat center/contain;
}

.property-icon-p li.child_ok::before {
  background: url(../img/child_ok.png) no-repeat center/contain;
}

.property-icon-p li.new_construction::before {
  background: url(../img/new-house.png) no-repeat center/contain;
}

.property-icon-p li.fr::before {
  background: url(../img/free-rent.png) no-repeat center/contain;
}

.property-icon-p li.bathroom_heating_dryer::before {
  background: url(../img/bathroom_heating_dryer.png) no-repeat center/contain;
}

.property-icon-p li.floor-heating::before {
  background: url(../img/floor-heating.png) no-repeat center/contain;
}

/* 240606 */
/* .houzin_link {
	width: 80%;
	text-align: center;
	position: relative;
	bottom: 13%;
}

.houzin_link.is-show {
	bottom: auto;
}

.houzin_link a {
	position: relative;
	background-color: #fff;
	padding: 7% 0 7% 8%;
	text-align: center;
	width: 100%;
	display: block;
	border-radius: 10px;
	font-size: 4.2vw;
	font-family: "Noto Serif JP", 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", serif;
}

.houzin_link a::before {
	content: "";
	background: url(../img/ico_houzin_orange.png) no-repeat center / contain;
	width: 5.0vw;
	height: 5.0vw;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 16%;
} */

/* 240613 */
.contact_telbox_property {
  background: #41b591;
}

.contact_telbox_property .inner {
  padding: 50px 0;
}

.contact_telbox_property .inner dl {
  border-bottom: 1px solid #fff;
  margin-bottom: 30px;
  display: block;
}

.contact_telbox_property .inner dl dt {
  width: 100%;
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: stretch;
  margin-bottom: 30px;
}

.contact_telbox_property .inner dl dt span {
  font-size: 18px;
  font-weight: bold;
  color: #fff;
  background: rgba(255, 255, 255, 0.3);
  border-radius: 5px;
  text-align: center;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  width: 33%;
  padding: 5px;
}

.contact_telbox_property .inner dl dt span:last-child {
  margin-bottom: 0;
}

.contact_telbox_property .inner dl dd {
  width: 100%;
  position: relative;
  margin-bottom: 30px;
}

.contact_telbox_property .inner dl dd:after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  width: 28%;
  height: 300px;
  background: url(../img/footer_fix01.png) no-repeat bottom center/contain;
  transform: scale(-1, 1);
  display: none;
}

.contact_telbox_property .inner dl dd div > * {
  font-weight: bold;
  text-align: center;
  display: block;
  color: #fff;
  line-height: 1.2;
}

.contact_telbox_property .inner dl dd div span {
  font-size: 16px;
  color: #ffff2b;
  margin-bottom: 10px;
}

.contact_telbox_property .inner dl dd div a {
  font-size: 37px;
}

.contact_telbox_property .inner dl dd div a::before {
  content: "";
  display: inline-block;
  width: 50px;
  height: 50px;
  background: #fff url(../img/ico_tel_red.svg) no-repeat center/60% auto;
  vertical-align: middle;
  border-radius: 10px;
  margin-right: 10px;
  margin-bottom: 5px;
}

.contact_telbox_property .inner dl dd div small {
  font-size: 14px;
  line-height: 1.5em;
}

.contact_telbox_property .inner dl dd div small a {
  text-decoration: underline;
}

.contact_telbox_property .inner > span {
  font-size: 14px;
  font-weight: bold;
  text-align: center;
  display: block;
  color: #fff;
}

.column_blue {
  color: #00b7ff;
  font-weight: bold;
}

.column_red {
  color: #ff0015dc;
  font-weight: bold;
}

/* 240729 */
.search_box .search_inbox dl.station dd,
.search_box .search_inbox dl.floorplan dd,
.search_box .search_inbox dl.tag dd {
  display: none;
}

.search_box .search_inbox dl dd div.search_flex_box {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: stretch;
  padding: 0 0 20px;
}

.search_box.allopen .search_inbox dl dt.accordion {
  padding: 5px 13% 5px 10px;
}

.search_box.allopen .search_inbox dl dt.accordion::after {
  content: "";
  display: block;
  width: 3vw;
  height: 3vw;
  border-top: 1px solid #c0a799;
  border-right: 1px solid #c0a799;
  position: absolute;
  top: 50%;
  right: 5%;
  margin: auto;
  transform: translateY(-80%) rotate(135deg);
  transition: 0.3s;
  z-index: 10;
  background: none;
}

.search_box.allopen .search_inbox dl dt.accordion.open::after {
  bottom: 30%;
  transform: rotate(315deg);
  opacity: 1;
}

/* 240918 */
.houzin_link {
  width: 80%;
  text-align: center;
  position: relative;
  bottom: 2%;
}

.houzin_link.is-show {
  bottom: auto;
}

.houzin_link a {
  font-size: clamp(14px, 10.267px + 1.333vw, 16px);
  font-weight: bold;
  letter-spacing: 0.1em;
  text-align: center;
  padding: 5px 28px;
  background: rgb(254, 126, 2);
  background: linear-gradient(0deg, rgba(254, 126, 2, 1) 0%, rgba(245, 199, 33, 1) 100%);
  border: 2px solid #fff;
  border-radius: 100px;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.6);
  font-family: "Noto Serif JP", 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", serif;
  color: white;
  width: 100%;
  display: block;
}

.houzin_link a ::after {
  content: "";
  width: 12px;
  height: 12px;
  right: 12px;
  transform: translateY(-50%);
  -webkit-mask-image: url(../img/arrow_next.svg);
  mask-image: url(../img/arrow_next.svg);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: 100% auto;
  mask-size: 100% auto;
  background-color: currentColor;
}

.houzin_link2 {
  width: 80%;
  text-align: center;
  position: relative;
  bottom: 3%;
}

.houzin_link2.is-show {
  bottom: auto;
}

.houzin_link2 a {
  font-size: clamp(14px, 10.267px + 1.333vw, 16px);
  font-weight: bold;
  letter-spacing: 0.1em;
  text-align: center;
  padding: 16px 85px;
  background: rgb(254, 126, 2);
  background: linear-gradient(0deg, rgba(0, 123, 76, 1) 0%, rgba(0, 158, 98, 1) 100%);
  border: 2px solid #fff;
  border-radius: 100px;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.6);
  font-family: "Noto Serif JP", 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", serif;
  color: white;
  width: 100%;
}

.houzin_link2 a ::after {
  content: "";
  width: 12px;
  height: 12px;
  right: 12px;
  transform: translateY(-50%);
  -webkit-mask-image: url(../img/arrow_next.svg);
  mask-image: url(../img/arrow_next.svg);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: 100% auto;
  mask-size: 100% auto;
  background-color: currentColor;
}

/* 241127 */
.surrounding-items-slider {
  display: block;
}
.surrounding-item {
  width: 100%;
  margin-bottom: 10px;
  text-align: center;
}

/* 241205 */
.column_first_txt {
  margin: 50px 0 10px;
}

/* 250128　ポップアップ */
.top_lightbox {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  background-color: rgba(0, 0, 0, 0.8);
  z-index: 2547483645;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  opacity: 0;
  pointer-events: none;
  transition: 0.3s;
}

.top_lightbox.active {
  opacity: 1;
  pointer-events: auto;
}

.top_lightbox div {
  background: #fff;
  width: 90%;
  /* max-width: 650px; */
  padding: 14% 5%;
  text-align: center;
  position: relative;
  box-sizing: border-box;
  border: 3px solid #caa670;
  /* height: 70vh; */
  overflow-y: auto;
  min-height: 250px;
  margin-top: -10%;
}

.top_lightbox div img {
  max-width: 80%;
  display: block;
  margin: 0 auto 20px;
}

.top_lightbox div p {
  margin-bottom: 30px;
  text-align: center;
  font-size: 14px;
}

.top_lightbox div p strong {
  font-size: 4.3vw;
  font-weight: bold;
  display: block;
  width: 95%;
  border-bottom: 2px solid #9f864c;
  padding-bottom: 13px;
  color: #000;
}

.top_lightbox div p strong.popup_strong {
  font-size: 3.8vw;
  padding: 5% 0;
  border: none;
  color: #63636d;
}

.top_lightbox div p strong.popup_strong span {
  font-size: 5vw;
  color: red;
  position: relative;
  z-index: 1;
}

.top_lightbox div p strong.popup_strong span::after {
  content: "";
  width: 100%;
  height: 7px;
  background-color: #fff141;
  position: absolute;
  bottom: 4px;
  left: 0;
  z-index: -2;
}

.top_lightbox div .close {
  position: absolute;
  top: 15px;
  right: 10px;
  width: 30px;
  height: 20px;
  cursor: pointer;
  opacity: 1;
}

.top_lightbox div .close::before,
.top_lightbox div .close::after {
  content: "";
  width: 100%;
  height: 2px;
  background: #000;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}

.top_lightbox div .close::before {
  transform: rotate(45deg);
}

.top_lightbox div .close::after {
  transform: rotate(-45deg);
}

.top_lightbox div .btn {
  cursor: pointer;
  padding: 15px 10px;
  display: block;
  margin: 0 auto 0;
  line-height: 130%;
  height: auto;
  width: 83%;
  background: linear-gradient(0deg, rgba(0, 123, 76, 1) 0%, rgba(0, 158, 98, 1) 100%);
  color: #fff;
  font-size: 5.5vw;
  max-width: 310px;
  border-radius: 20px;
  font-weight: bold;
}

.top_lightbox div .btn::after {
  display: none;
}

.top_lightbox div {
  height: auto;
}

.top_lightbox div p {
  font-size: 3.2vw;
}

.top_lightbox div .btn {
  padding: 25px 0px 25px 5px;
}

/* 250911物件一覧CSS見た目調整 */

.exterior span {
  font-size: 10px;
  font-family: "Noto Serif JP", 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", serif;
}

.property_map_section {
  margin-bottom: 30px;
}

/* 250929 竣工予定物件一覧*/
/* ===== upcoming 一覧：レイアウトを /line/ に寄せる ===== */

.l-container.upcoming.inner {
  max-width: 100%;
  width: 100%;
  margin-top: -40px;
}
.l-container.upcoming.inner .inner {
  max-width: 100%;
  width: 100%;
}

.l-container.upcoming .property-list {
  margin: 0;
  padding: 0;
  list-style: none;
}

/* 行の背景：奇数=白 / 偶数=ベージュ */
.l-container.upcoming .property-item {
  width: 100%;
  margin: 0; /* 指定：margin-topは入れない */
}
.l-container.upcoming .property-item:nth-child(odd) {
  background: #fff;
}
.l-container.upcoming .property-item:nth-child(even) {
  background: #f5f0ed;
}

/* カード全体：横並び */
.l-container.upcoming .property-card {
  display: flex;
  align-items: center;
  gap: 28px;
  padding: 28px 0;
  max-width: 1080px;
  margin: 0 auto;
  width: 100%;
}

/* サムネ左 */
.l-container.upcoming .thumb-wrap {
  position: relative;
  flex: 0 0 240px; /* 220〜260で調整可 */
  aspect-ratio: 4 / 3;
  overflow: hidden;
  background: #eee;
}
.l-container.upcoming .thumb-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* 画像右上のエリアアイコン（指定に合わせて） */
.l-container.upcoming .badge-area {
  position: absolute;
  top: 0;
  right: 0;
  padding: 5px 10px;
  font-size: 10px;
  line-height: 1;
  background: #fff;
  border: 1px solid #dcdcdc;
  color: #333;
  font-family: "Noto Serif JP", 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", serif;
  white-space: nowrap;
}

/* タイトル左 / メタ右（flexで横並び） */
.l-container.upcoming .info {
  display: flex; /* 指定：grid → flex */
  align-items: center;
  gap: 36px;
  flex: 1 1 auto;
  min-width: 0;
}

/* 指定：タイトルの方を少し広く */
.l-container.upcoming .prop-title {
  flex: 0 1 60%;
  margin: 0;
  font-size: clamp(20px, 2.2vw, 32px);
  letter-spacing: 0.04em;
  font-weight: bold; /* 指定：太字 */
  min-width: 0;
}
.l-container.upcoming .meta {
  /* flex: 0 1 40%; */
  margin: 0;
  padding: 0;
  list-style: none;
  font-size: 14px;
  color: #5c5c5c;
}

/* メタ内の行・区切り線 */
.l-container.upcoming .meta li {
  display: flex;
  align-items: baseline;
  gap: 12px;
  /* white-space: nowrap; */
}
.l-container.upcoming .meta li span {
  color: #8b8b8b;
  letter-spacing: 0.06em;
  /* border-right: 1px solid #707070; */ /* 指定：縦線 */
  padding: 0.2em 0.3em; /* 見栄え用 */
  background: #f5f0ed;
  margin-right: 0.2em; /* 見栄え用 */
  min-width: 6em;
  text-align: center;
  font-size: 12px;
}
.l-container.upcoming .property-item:nth-child(even) .meta li span {
  background: #fff;
}

/* スマホ：縦積みへ */
@media (max-width: 600px) {
  .l-container.upcoming .property-card {
    flex-direction: column;
    align-items: stretch;
    gap: 16px;
    padding: 20px 25px;
  }
  .l-container.upcoming .thumb-wrap {
    flex-basis: auto;
    width: 100%;
    aspect-ratio: 16/9;
  }
  .l-container.upcoming .info {
    flex-direction: column;
    gap: 12px;
  }
  .l-container.upcoming .prop-title,
  .l-container.upcoming .meta {
    flex-basis: auto;
    width: 100%;
    display: flex;
    gap: 5px;
    flex-direction: column;
  }
}
.property_block.upcoming-block .pager {
  display: none;
}
.property_block.upcoming-block .contact_box {
  width: 90%;
  margin: 0 auto;
}

/* 3物件同時竣工LP */
.know_block.completion3 {
        padding: 0 0 100px;
    }

.completion3_MV_box img {
  width: 100%;
}

.completion3_contents {
  padding: 50px 0 10px;
  background: url(../img/completion3_bg.jpg) no-repeat top / cover;
}

.completion3_contents_box{
  text-align: center;
  margin-bottom: 15%;
}

.completion3_contents_box .contents_link a {
        text-align: center;
        background-color: #d95e59;
        border-radius: 70px;
        max-width: 750px;
        width: 87%;
        padding: 10px;
        color: #fff;
        font-weight: bold;
        font-size: 5.0vw;
        display: block;
        margin: auto;
        transition: .3s;
    }

.completion3_contents_box .contents_link a span {
  display: block;
  font-size: 3.5vw;
  letter-spacing: 3px;
}

.completion3_contents_box .contents_link a:hover {
  transform: scale(0.97);
}

.completion3_contents_box .contents_banner {
  width: 90%;
  margin: 8% auto 0;
}

.completion3_contents_box .fixed_banner {
  position: relative;
  bottom: auto;
        left: auto;
        padding: 0;
        margin-top: 10%;
        height: auto;
}

.completion3_contents_box .fixed_banner .inner {
        width: 90%;
}

.completion3_contents_box .fixed_banner .inner ul {
flex-wrap: wrap;
 gap: 1%;
}

.completion3_contents_box .fixed_banner::before {
  display: none;
}

.completion3_contents_box .fixed_banner .inner ul li {
width: auto;
}

.completion3_contents_box .fixed_banner .inner ul li.tel {
order: 2;
width: 49%;
height: 23vw;
}

.completion3_contents_box .fixed_banner .inner ul li.line {
order: 1;
width: 100%;
margin-bottom: 2%;
height: 17vw;
}

.completion3_contents_box .fixed_banner .inner ul li.contact {
width: 49%;
height: 23vw;
}

.completion3_contents_box .fixed_banner .inner ul li.tel a {
background: #5f5f5f;
display: flex;
align-items: center;
justify-content: center;
}

.completion3_contents_box .fixed_banner .inner ul li.tel a > span {
display: block;
color: #fff;
}

.completion3_contents_box .fixed_banner .inner ul li.tel a > span > span {
  display: block;
  margin-bottom: 12px;
  font-size: 4.0vw;
}

.completion3_contents_box .fixed_banner .inner ul li.tel a > span small {
  font-size: 2.8vw;
}

.completion3_contents_box .fixed_banner .inner ul li.tel a > span > span::before {
        content: "";
        width: 7vw;
        height: 7vw;
        border-radius: 10px;
        margin-right: 10px;
        background: #fff url(../img/ico_tel_red.svg) no-repeat center / 50% auto;
        display: inline-block;
        margin-bottom: -2vw;
    }

    .completion3_contents_box .fixed_banner .inner ul li.contact a {
      font-size: 3.5vw;
    }

    .completion3_contents_box .fixed_banner .inner ul li.line a {
font-size: 4.5vw;
padding-left: 15vw;
    }

    .completion3_contents_box .fixed_banner .inner ul li.line a > span > span {
font-size: 3.5vw;
    }

        .completion3_contents_box .fixed_banner .inner ul li.line a::before {
        max-width: 20vw;
        left: 12%;
    }

    .completion3_lineup_box {
  margin-top: 18%;
}

.completion3_maintitle {
  text-align: center;
  font-size: 6.5vw;
  padding-bottom: 5vw;
  font-weight: bold;
  margin-bottom: 50px;
  position: relative;
  z-index: 1;
}

.completion3_maintitle::before {
  content: "";
  display: block;
  height: 3px;
  width: 50px;
  background-color: #ded5cb;
  position: absolute;
  bottom: -3px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 2;
}

.completion3_maintitle::after {
  content: "";
  display: block;
  height: 3px;
  width: 100%;
  background-color: #fff;
  position: absolute;
  bottom: -3px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1;
}

.completion3_maintitle span {
  color: #808080;
  display: block;
  font-size: 2.5vw;
  font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.completion3_lineup_list li.completion3_lineup_list_item {
  margin-bottom: 12%;
}

.lineup_title {
  font-size: 5.5vw;
  font-weight: bold;
  padding: 5px 10px 9px;
  border-left: 4px solid #317977;
  margin-bottom: 5px;
}

.completion3_lineup_list li:nth-child(2) .lineup_title {
  border-left: 4px solid #21568b;
}

.completion3_lineup_list li:nth-child(3) .lineup_title {
  border-left: 4px solid #6c605c;
}

.lineup_title span {
  font-size: 18px;
}

.lineup_title small {
  display: block;
  font-size: 14px;
}

.lineup_mainbox {
  margin-bottom: 5%;
  background-color: #d1bd9e;
}

.completion3_lineup_list li:nth-child(2) .lineup_mainbox {
  background-color: #e7e2d5;
}

.completion3_lineup_list li:nth-child(3) .lineup_mainbox {
  background-color: #817d78;
}

.lineup_mainbox_txt {
  padding: 0 5% 5%;
  margin-top: -5vw;
}

.lineup_mainbox_txt h4 {
  font-size: 4.5vw;
  font-weight: bold;
  text-shadow: 0 0 15px rgba(255, 255, 255, 0.9), /* 内側の強い光 */
    0 0 30px rgba(255, 255, 255, 0.6); /* 外側の淡い光 */;
    filter: url(#smooth-outline);
  margin-bottom: 5%;
  color: #333;
}

.lineup_mainbox_txt h4 span {
  font-size: 6vw;
}

.lineup_mainbox_txt h4 span strong {
  font-size: 10vw;
  color: #d87843;
  letter-spacing: 2px;
}

.lineup_mainbox .campaign_box {
  text-align: center;
  background-color: #494039bd;
  padding: 7% 5%;
  color: #fff;
  font-weight: bold;
  max-width: 520px;
  width: 100%;
}

.completion3_lineup_list li:nth-child(3) .lineup_mainbox .campaign_box {
  background-color: #5d5957b4;
}

.lineup_mainbox .campaign_box strong.campaign_boxlist_title {
  font-size: 4.6vw;
  position: relative;
  display: inline-block;
  width: fit-content;
  margin-bottom: 4%;
}

.lineup_mainbox .campaign_box strong.campaign_boxlist_title::before {
  content: "＼";
        font-size: 4vw;
        position: absolute;
        bottom: 0;
        left: -7vw;
}

.lineup_mainbox .campaign_box strong.campaign_boxlist_title::after {
  content: "／";
  font-size: 4vw;
  position: absolute;
  bottom: 0;
        right: -7vw;
}

.lineup_mainbox .campaign_box ul {
  display: flex;
  justify-content: center;
  gap: 5px;
  flex-wrap: wrap;
}

.lineup_mainbox .campaign_box ul li {
  width: 75%;
}

.lineup_mainbox .campaign_box ul li p {
  background-color: #fff;
  color: #494039;
  font-size: 3.8vw;
  padding: 2% 7%;
}

.lineup_mainbox .campaign_box ul li p strong {
  background-color: #403a31;
        color: #fff;
        display: inline-block;
        margin: 0 5px 7px 0;
        font-size: 3.3vw;
        padding: 0 8%;
        font-weight: normal;
        margin-top: 2%;
}

.lineup_mainbox .campaign_box ul li p strong.red_txt {
background-color: #403a3100;
        color: #d95e59;
        display: inline-block;
        margin: auto;
        font-size: 5vw;
        padding: 0 2%;
        font-weight: bold;
        /* margin-top: -1px; */
}

.lineup_mainbox .campaign_box ul li p small {
  font-size: 3.3vw;
}

.lineup_mainbox .campaign_box ul li span {
  font-size: 3.1vw;
  font-weight: normal;
}

.lineup_linkbox {
  display: flex;
  flex-wrap: wrap;
  gap: 25px;
}

.lineup_linkbox .lineup_link {
  max-width: 551px;
  width: 100%;
}

.lineup_linkbox .lineup_link ul {
  display: flex;
  gap: 2vw;
  margin-bottom: 20px;
  flex-wrap: wrap;
  justify-content: center;
}

.lineup_linkbox .lineup_link ul li {
  width: 75%;
}

.lineup_linkbox .lineup_link ul li a {
  display: block;
  width: 100%;
  color: #fff;
  background-color: #42424d;
  font-size: 3.6vw;
  position: relative;
  border-radius: 50px;
  padding: 5% 5% 5% 25%;
  transition: .3s;
}

.lineup_linkbox .lineup_link ul li a.contact_btn {
  background-color: #d95e59;
}

.lineup_linkbox .lineup_link ul li a::before {
        content: "";
        background: url(../img/bild_ico.svg) no-repeat center / cover;
        width: 3.2vw;
        height: 4vw;
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        left: 32px;
}

.lineup_linkbox .lineup_link ul li a.contact_btn::before {
        content: "";
        background: url(../img/mail_ico.svg) no-repeat center / cover;
        width: 4vw;
        height: 3vw;
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        left: 32px;
}

.lineup_linkbox .lineup_link ul li a::after {
  content: '';
        display: block;
        width: 7px;
        height: 7px;
        border-top: 2px solid #fff;
        border-right: 2px solid #fff;
        position: absolute;
        top: 0;
        bottom: 0;
        right: 40px;
        margin: auto;
        transform: rotate(45deg);
        transition: .3s;
        z-index: 10;
}

.lineup_linkbox .lineup_link ul li a:hover {
  transform: scale(0.97);
}

.lineup_linkbox .lineup_popup {
  position: relative;
}

.lineup_linkbox .lineup_popup .popup_btn {
          position: absolute;
        bottom: -8px;
        right: -9px;
        max-width: 38px;
        width: 100%;
}

/* ポップアップ背景（暗幕） */
#modal_overlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.7);
    z-index: 10000;
    cursor: pointer;
}

/* 画像を表示する枠 */
#modal_content {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 95%;          /* スマホ画面の幅いっぱいに近く */
    text-align: center;
}

/* 表示される画像 */
#modal_img {
    max-width: 100%;
    max-height: 75vh;    /* 上下のブラウザバー考慮して少し控えめに */
    height: auto;
    box-shadow: 0 0 10px rgba(0,0,0,0.5);
    background: #fff;
    border-radius: 4px;
}

/* 閉じるボタン（指で押しやすいよう調整） */
#modal_close {
    position: absolute;
    top: -50px;          /* 間隔を少し広げる */
    right: 0;
    color: #fff;
    font-size: 36px;     /* 文字サイズを大きく */
    font-weight: bold;
    cursor: pointer;
    width: 40px;         /* タップ判定エリア拡大 */
    height: 40px;
    line-height: 40px;
    text-align: center;
    text-shadow: 0 0 5px rgba(0,0,0,0.5);
}

/* クリック用ボタン */
.popup_btn {
    cursor: pointer;
}






/*260227_一覧改修*/
.group-heading {
    font-size: 22px;
    font-weight: bold;
    padding-bottom: 15px;
    margin: 80px 0 40px;
    border-bottom: 1px solid #ccc;
    position: relative;
}

#floating-nav {
    position: fixed;
    right: 0;
    top: 100px;
    z-index: 9999;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.4s ease;
}

#floating-nav.is-visible {
    opacity: 1;
    pointer-events: auto;
}

#floating-nav ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

#floating-nav li {
    margin-bottom: 1px;
}

#floating-nav a {
    display: block;
    width: 200px; 
    padding: 8px 15px;
    background-color: #00955c;
    color: #fff;
    text-align: left;
    text-decoration: none;
    font-size: 16px;
    font-weight: bold;
    border-radius: 0;
    opacity: 0.6;
    transition: opacity 0.3s ease;
}

#floating-nav a:hover,
#floating-nav a.is-active {
    opacity: 1;
}

    #floating-nav a {
        width: 140px;
        font-size: 13px;
        padding: 6px 10px;
    }
    #floating-nav {
        top: 80px; 
    }
/*260227_一覧改修*/

/*260306LINEバナー*/
section.line_section {
    margin-bottom: 50px;
    background: #fff;
        padding: 50px 0;
}


/*==================================================
$know 260519ページ改修
==================================================*/
.know .know_block {
  padding: 100px 0;
}


.know .know_gallery_title {
  font-size: 5vw;
  font-weight: bold;
  text-align: center;
}

/* 画像ギャラリー表示 */
.know .know_gallery {
  max-width: 1000px;
  margin: 0 auto;
}

.know .know_gallery-main {
  width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-bottom: 20px;
}

.know .know_gallery-main img {
  width: 100%;
  height: auto;
  display: block;
}

.know .know_gallery-thumbs {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 10px;
  margin-top: 20px;
}

.know .know_gallery-thumbs button {
  padding: 0;
  border: none;
  background: none;
  cursor: pointer;
}

.know .know_gallery-thumbs img {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  display: block;
  opacity: 0.7;
  transition: opacity 0.3s;
}

.know .know_gallery-thumbs button:hover img,
.know .know_gallery-thumbs button.is-active img {
  opacity: 1;
}

/* 物件の設備 */
.know .know_equipment_title {
  margin-top: 50px;
  font-size: 5vw;
  font-weight: bold;
  text-align: center;
}

.know .know_equipment_txt {
  text-align: center;
}

.know .know_equipment_list_text {
  text-align: center;
  border: 1px solid #707070;
  margin: 0 auto;
  padding: 3px 8px;
}

.know .know_equipment ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 20px;
  margin: 50px 0;
}

.know .know_equipment ul li {
  width: 520px;
  display: flex;
  justify-content: space-evenly;
  align-items: center;
  gap: 10px;
  padding: 10px;
  border: 1px solid;
}

.know .know_equipment ul li img {
  width: 50%;
}

.know .know_equipment ul li .know_equipment_p {
  width: 50%;
  text-align: center;
}

.know .know_equipment ul li .know_equipment_p p {
  font-weight: bold;
  font-size: 4vw;
  margin-bottom: 20px;
}

.know .know_equipment ul li .know_equipment_p a {
  background: #c0a799;
  display: inline-block;
  width: 100%;
  border-radius: 50px;
  color: #fff;
}

.know .know_equipment ul li .know_equipment_p a::after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 5px 0 5px 10px;
  border-color: transparent transparent transparent #fff;
  margin-left: 10px;
  margin-bottom: 3px;
  display: inline-block;
  vertical-align: middle;
}

.know .know_pickupbtn_area {
  text-align: center;
}

.know .know_pickupbtn {
  background: #d5801d;
  display: inline-block;
  width: 100%;
  text-align: center;
  margin: 0 auto;
  border-radius: 50px;
  color: #fff;
  font-size: 13px;
  padding: 5px 10px;
}

.know .know_pickupbtn::after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 5px 0 5px 10px;
  border-color: transparent transparent transparent #fff;
  margin-left: 10px;
  margin-bottom: 3px;
  display: inline-block;
  vertical-align: middle;
}

.know .know_security_txt {
  text-align: center;
}

.know .know_triple_zero_txt {
  text-align: center;
}

/*==================================================
property 260624 バナーレイアウト変更
==================================================*/

.property_detail_upper .property_detail_data.bnr {
  margin-top: 30px;
  padding: 0 20px;
}
.property_detail_upper .property_detail_data.bnr .bnr-flex {
  display: block;
  gap: 0;
  margin-bottom: 8px;
}
.property_detail_upper .property_detail_data.bnr .bnr-flex figure:first-child {
    margin-bottom: 8px;
}

/*==================================================
 temp-side.php 260724 CVボタン変更
==================================================*/

.fixed_banner .inner ul li.contact a > span span {
  color: #d95e59;
  background: #f5ff00;
  padding: 0 5px;
  border-radius: 100px;
  font-size: 11px;
}
.fixed_banner .inner ul li.contact a > span {
  text-align: center;
  font-weight: bold;
  line-height: 1.3;
}

.fixed_banner .inner ul li.line a > span {
  text-align: center;
}

.contact_box .inner ul li.form a > span small {
  font-size: 9px !important;
}

@media (max-width: 600px) {  
  .nopc {
  display: block !important;
  }
  .nosp {
  display: none !important;
  }
}

/*==================================================
 260728 家賃比較シミュレーション追加
==================================================*/
.rent_simulation {
    margin: 40px 0 60px;
    padding: 0 20px;
}

.rent_simulation h4.rent_simulation_title{
    text-align: center;
    padding-bottom: 20px;
}

.rent_simulation h4.rent_simulation_title img{
    max-width: 412px;
    width: 80%;
}

.rent_simulation picture {
    display: block;
    width: 100%;
    margin: 0 auto;
}

.rent-simulation img {
  display: block;
  width: 100%;
  max-width: 100%;
  margin: 0 auto;
}

.rent_simulation_table{
    padding-bottom: 10px;
}

.rent_simulation_table img{
    width: 100%;
}

.rent_simulation_txt {
  display: block;
  max-width: 600px;
  width: 100%;
  margin: 0 auto;
  font-size: 12px;
}
.rent_simulation_detail {
  padding-bottom: 10px;
  border-bottom: #8a8a8a solid 1px;
  margin-bottom: 10px;
}

/* 以下、ポップアップ（モーダル）用のCSS */
.modal {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 9999;
}
.modal.is-open {
  display: block;
}
.modal__bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.7);
  cursor: pointer;
}
.modal__content {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 90%;
  max-width: 1200px;
  max-height: 80vh;
  background-color: #fff;
  padding: 40px 20px 20px;
  border-radius: 8px;
  overflow-y: auto; /* 縦にはみ出した場合はスクロールバーを表示 */
  box-sizing: border-box;
}
.modal__close-btn {
  position: absolute;
  top: 10px;
  right: 15px;
  font-size: 30px;
  cursor: pointer;
  color: #333;
  line-height: 1;
  font-weight: bold;
}
.modal__close-btn:hover {
  opacity: 0.7;
}
.rent_simulation_btn_wrap{
  text-align: center;
  margin: 30px 20px;
}

/* 間取り図スライダーに拡大ボタン追加 */
.images_slider_item {
  position: relative; /* アイコンを絶対配置するための基準点 */
}
.images_slider_item i {
  background: url(../img/ico_zoom.svg) no-repeat center/contain;
  width: 15px;
  height: 15px;
  position: absolute;
  bottom: 8px;
  right: 5px;
  margin: auto;
  z-index: 2;
  cursor: pointer;
}
.images_slider_thumbnail .images_slider_item i{
  display: none;
}