@charset "UTF-8";

/* //////////////////////////////////////////////////
[init]
////////////////////////////////////////////////// */
body {
	overflow-y: hidden;
}

/* //////////////////////////////////////////////////
[マップヘッダー/施設ジャンルスライダ]
////////////////////////////////////////////////// */
/*マップヘッダー*/
#mapHeader {
	width: 100%;
	height: 47px;
	border-top: 3px solid #ff9300;
	position: relative;
	z-index: 3;
	overflow-x: scroll;
	-webkit-overflow-scrolling: touch;
	padding: 0;
	-webkit-box-shadow: 0px 0px 5px 0px rgba(50, 50, 50, 0.75);
	-moz-box-shadow: 0px 0px 5px 0px rgba(50, 50, 50, 0.75);
	box-shadow: 0px 0px 5px 0px rgba(50, 50, 50, 0.75);
}

/*矩形のオーバーレイ*/
.sliderOverlayL,
.sliderOverlayR {
	width: 30px;
	height: 47px;
	background-color: transparent;
	color: #FFF;
	position: absolute;
	z-index: 4;
	top: 3px;
}

.sliderOverlayL {
	text-align: left;
	background: -moz-linear-gradient(left, rgba(0, 0, 0, 0.4) 0%), rgba(0, 0, 0, 0) 100%;
	/* FF3.6+ */
	background: -webkit-gradient(linear, left top, right top, color-stop(0%, rgba(0, 0, 0, 0.4)), color-stop(100%, rgba(0, 0, 0, 0)));
	/* Chrome,Safari4+ */
	background: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0) 100%);
	/* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(left, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0) 100%);
	/* Opera 11.10+ */
	background: linear-gradient(to right, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0) 100%);
	/* W3C */
	left: 0;
}

.sliderOverlayR {
	text-align: right;
	background: -moz-linear-gradient(left, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.4) 100%);
	/* FF3.6+ */
	background: -webkit-gradient(linear, left top, right top, color-stop(0%, rgba(0, 0, 0, 0)), color-stop(100%, rgba(0, 0, 0, 0.4)));
	/* Chrome,Safari4+ */
	background: -webkit-linear-gradient(left, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.4) 100%);
	/* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(left, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.4) 100%);
	/* Opera 11.10+ */
	background: linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.4) 100%);
	/* W3C */
	right: 0;
}

.sliderOverlayL::before,
.sliderOverlayR::before {
	content: "";
	position: absolute;
	top: 0;
	width: 20px;
	height: 100%;
	background-image: url(/ui/utility/common/svg/iconAP_arrow_right_white.svg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: 20px;
}

.sliderOverlayL::before {
	left: 0;
	-webkit-transform: rotate(-180deg);
	-moz-transform: rotate(-180deg);
	transform: rotate(-180deg);
}

.sliderOverlayR::before {
	right: 0;
}

/*施設ジャンルスライダ*/
ul.mapMenu {
	display: table;
	table-layout: fixed;
	width: 100%;
	height: 47px;
}

ul.mapMenu li {
	display: table-cell;
	border-right: 1px dotted #d5d5d5;
	vertical-align: top;
	font-size: 0.75rem;
	line-height: 1.2;
	width: 118px;
	height: 44px;
	text-align: left;
	margin-right: 0;
	padding: 0px 4px 0px 32px;
	background: #fff;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

ul.mapMenu li:last-child {
	border-right: none;
}

ul.mapMenu li span {
	height: 44px;
	vertical-align: middle;
	white-space: nowrap;
	display: table-cell;
}

ul.mapMenu li.gourmetRs {
	background: url(/ui/town/sp/images/common/catIcon01.png) 4px 9px no-repeat;
	background-size: 24px;
}

ul.mapMenu li.sport {
	background: url(/ui/town/sp/images/common/catIcon02.png) 4px 9px no-repeat;
	background-size: 24px;
}

ul.mapMenu li.policeFi {
	background: url(/ui/town/sp/images/common/catIcon03.png) 4px 9px no-repeat;
	background-size: 24px;
}

ul.mapMenu li.gasstation {
	background: url(/ui/town/sp/images/common/catIcon04.png) 4px 9px no-repeat;
	background-size: 24px;
}

ul.mapMenu li.schoolEd {
	background: url(/ui/town/sp/images/common/catIcon05.png) 4px 9px no-repeat;
	background-size: 24px;
}

ul.mapMenu li.kinder {
	background: url(/ui/town/sp/images/common/catIcon06.png) 4px 9px no-repeat;
	background-size: 24px;
}

ul.mapMenu li.bankPost {
	background: url(/ui/town/sp/images/common/catIcon07.png) 4px 9px no-repeat;
	background-size: 24px;
}

ul.mapMenu li.drugStore {
	background: url(/ui/town/sp/images/common/catIcon08.png) 4px 9px no-repeat;
	background-size: 24px;
}

ul.mapMenu li.hospital {
	background: url(/ui/town/sp/images/common/catIcon09.png) 4px 9px no-repeat;
	background-size: 24px;
}

ul.mapMenu li.conveni {
	background: url(/ui/town/sp/images/common/catIcon10.png) 4px 9px no-repeat;
	background-size: 24px;
}

ul.mapMenu li.storeDp {
	background: url(/ui/town/sp/images/common/catIcon11.png) 4px 9px no-repeat;
	background-size: 24px;
}

ul.mapMenu li.administ {
	background: url(/ui/town/sp/images/common/catIcon12.png) 4px 9px no-repeat;
	background-size: 24px;
}

ul.mapMenu li.library {
	background: url(/ui/town/sp/images/common/catIcon13.png) 4px 9px no-repeat;
	background-size: 24px;
}

ul.mapMenu li.cleaning {
	background: url(/ui/town/sp/images/common/catIcon15.png) 4px 9px no-repeat;
	background-size: 24px;
}

ul.mapMenu li.hotelSpa {
	background: url(/ui/town/sp/images/common/catIcon16.png) 4px 9px no-repeat;
	background-size: 24px;
}

ul.mapMenu li {
	position: relative;
}

ul.mapMenu li.is-selected::after {
	content: "";
	position: absolute;
	bottom: 0px;
	left: 0;
	width: 100%;
	height: 4px;
}

ul.mapMenu li.gourmetRs.is-selected::after {
	background-color: #F9A12C;
}

ul.mapMenu li.sport.is-selected::after {
	background-color: #E70D45;
}

ul.mapMenu li.policeFi.is-selected::after {
	background-color: #3A3B3B;
}

ul.mapMenu li.gasstation.is-selected::after {
	background-color: #B2C10C;
}

ul.mapMenu li.schoolEd.is-selected::after {
	background-color: #720FAD;
}

ul.mapMenu li.kinder.is-selected::after {
	background-color: #EDBF01;
}

ul.mapMenu li.bankPost.is-selected::after {
	background-color: #22A7BC;
}

ul.mapMenu li.drugStore.is-selected::after {
	background-color: #58A018;
}

ul.mapMenu li.hospital.is-selected::after {
	background-color: #D91E1E;
}

ul.mapMenu li.conveni.is-selected::after {
	background-color: #2483D0;
}

ul.mapMenu li.storeDp.is-selected::after {
	background-color: #0A8B5D;
}

ul.mapMenu li.administ.is-selected::after {
	background-color: #6C82B5;
}

ul.mapMenu li.library.is-selected::after {
	background-color: #FB419C;
}

ul.mapMenu li.cleaning.is-selected::after {
	background-color: #B550E9;
}

ul.mapMenu li.hotelSpa.is-selected::after {
	background-color: #BB8D21;
}

/* //////////////////////////////////////////////////
[ツールチップ]
////////////////////////////////////////////////// */
.ui-tooltip-common {
	position: absolute;
	z-index: 2;
	background-color: #FFF;
	-webkit-border-radius: 10px;
	border-radius: 10px;
	/*-webkit-box-shadow: 0px 0px 5px 0px rgba(50, 50, 50, 0.75);
	-moz-box-shadow:    0px 0px 5px 0px rgba(50, 50, 50, 0.75);
	box-shadow:         0px 0px 5px 0px rgba(50, 50, 50, 0.75);*/
	-webkit-filter: drop-shadow(0px 0px 2px rgba(0, 0, 0, 0.3));
}

.ui-tooltip-common .inner {
	display: table;
	width: 100%;
	position: relative;
	padding: 10px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

/*フキダシinit*/
.ui-tooltip-common.top .inner::before,
.ui-tooltip-common.bottom .inner::before,
.ui-tooltip-common.left .inner::before,
.ui-tooltip-common.right .inner::before {
	content: " ";
	position: absolute;
	width: 0;
	height: 0;
}

/*フキダシ↑*/
.ui-tooltip-common.top .inner::before {
	top: -12px;
	left: 50%;
	-webkit-transform: translateX(-50%);
	-moz-transform: translateX(-50%);
	transform: translateX(-50%);
	border-style: solid;
	border-width: 0 7.5px 12px 7.5px;
	border-color: transparent transparent #fff transparent;
}

/*フキダシ↓*/
.ui-tooltip-common.bottom .inner::before {
	bottom: -12px;
	left: 50%;
	-webkit-transform: translateX(-50%);
	-moz-transform: translateX(-50%);
	transform: translateX(-50%);
	border-style: solid;
	border-width: 12px 7.5px 0 7.5px;
	border-color: #ffffff transparent transparent transparent;
}

/*フキダシ←*/
.ui-tooltip-common.left .inner::before {
	top: 50%;
	left: -12px;
	-webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	transform: translateY(-50%);
	border-style: solid;
	border-width: 7.5px 12px 7.5px 0;
	border-color: transparent #ffffff transparent transparent;
}

/*フキダシ→*/
.ui-tooltip-common.right .inner::before {
	top: 50%;
	right: -12px;
	-webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	transform: translateY(-50%);
	border-style: solid;
	border-width: 7.5px 0 7.5px 12px;
	border-color: transparent transparent transparent #ffffff;
}

/* //////////////////////////////////////////////////
[ページ一意のツールチップの記述]
////////////////////////////////////////////////// */
#mapHeader+.ui-tooltip-common {
	width: 80%;
	top: 70px;
	left: 50%;
	-webkit-transform: translateX(-50%);
	-moz-transform: translateX(-50%);
	transform: translateX(-50%);
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	z-index: 100;
}

#mapHeader+.ui-tooltip-common .inner {
	padding: 0;
}

#mapHeader+.ui-tooltip-common .message {
	vertical-align: middle;
	text-align: center;
	padding: 20px 0;
}

#mapHeader+.ui-tooltip-common .message::before {
	content: "";
	width: 20px;
	height: 20px;
	display: inline-block;
	vertical-align: sub;
	background-image: url(/ui/utility/common/svg/info-circle.svg);
	background-position: left center;
	background-repeat: no-repeat;
	background-size: 20px;
}

#mapHeader+.ui-tooltip-common .clsBtn {
	vertical-align: middle;
	padding: 8px 0;
	border-top: 1px solid #d5d5d5;
	color: #3679CC;
	font-size: 0.9rem;
	text-align: center;
}

/* //////////////////////////////////////////////////
[マップページのトースト-latlngのエラー時などに表示]
////////////////////////////////////////////////// */
.ui-tooltip-common.toast {
	display: none;
	width: 280px;
	position: absolute;
	text-align: center;
	padding: 10px;
	background-color: rgba(0, 0, 0, 0.6);
	font-size: 0.8rem;
	color: #fff;
	top: 50%;
	left: calc(50% - 140px);
	-webkit-animation: toast 0.2s ease;
	-moz-animation: toast 0.2s ease;
	animation: toast 0.2s ease;
	z-index: 2;
	-webkit-filter: drop-shadow(0px 0px 2px rgba(0, 0, 0, 0.3));
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

.ui-tooltip-common.toast .message {
	color: #fff;
}

.ui-tooltip-common.inquiryLink {
	display: inline;
	width: 76%;
	top: 66px;
	left: 10px;
	padding: 0;
	background: #fff;
	border-radius: 5px;
	z-index: 50;
}

.ui-tooltip-common.inquiryLink .message {
	display: none;
}

.ui-tooltip-common .inquiryLinkMessage {
	display: none;
}

.ui-tooltip-common.inquiryLink .inquiryLinkMessage {
	display: block;
	color: #333;
	font-size: 11px;
	text-align: left;
}

.ui-tooltip-common.inquiryLink .inquiryLinkMessage .ui-btn-inquiry {
  display: inline;
  color: #1F7AEE;
  text-decoration: underline;
}

@-webkit-keyframes toast {
	0% {
		-webkit-transform: translateY(15px);
		-moz-transform: translateY(15px);
		transform: translateY(15px);
		opacity: 0;
	}

	80% {
		-webkit-transform: translateY(-5px);
		-moz-transform: translateY(-5px);
		transform: translateY(-5px);
	}

	100% {
		-webkit-transform: translateY(0px);
		-moz-transform: translateY(0px);
		transform: translateY(0px);
		opacity: 1;
	}
}

@-moz-keyframes toast {
	0% {
		-webkit-transform: translateY(15px);
		-moz-transform: translateY(15px);
		transform: translateY(15px);
		opacity: 0;
	}

	80% {
		-webkit-transform: translateY(-5px);
		-moz-transform: translateY(-5px);
		transform: translateY(-5px);
	}

	100% {
		-webkit-transform: translateY(0px);
		-moz-transform: translateY(0px);
		transform: translateY(0px);
		opacity: 1;
	}
}

@keyframes toast {
	0% {
		-webkit-transform: translateY(15px);
		-moz-transform: translateY(15px);
		transform: translateY(15px);
		opacity: 0;
	}

	80% {
		-webkit-transform: translateY(-5px);
		-moz-transform: translateY(-5px);
		transform: translateY(-5px);
	}

	100% {
		-webkit-transform: translateY(0px);
		-moz-transform: translateY(0px);
		transform: translateY(0px);
		opacity: 1;
	}
}

/* //////////////////////////////////////////////////
[地図高さの初期化]
////////////////////////////////////////////////// */
#map {
	height: 100%;
	height: -webkit-calc(100% - 152px);
	height: -moz-calc(100% - 152px);
	height: calc(100% - 152px);
}

.CompanyMapView #map {
	height: 100%;
}

/* //////////////////////////////////////////////////
[物件自身/施設情報]
////////////////////////////////////////////////// */
#facilityDetailWrap {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
}

/*物件詳細*/
.estateDetail {
	position: relative;
	border-top: 2px solid #ff6a30;
	background-color: #FFF;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

.estateDetailTable {
	display: table;
	width: 100%;
}

.estateDetail .ui-btn-inquiry-A {
	padding: 10px;
}

.estateDetail .photo {
	display: table-cell;
	vertical-align: top;
	width: 60px;
	padding: 5px 0px 5px 10px;
	box-sizing: border-box;
}

.estateDetail .photoImg {
	background: url(/ui/utility/common/svg/iconI_no-image.svg);
	background-size: cover;
	width: 60px;
	height: 60px;
	z-index: 1;
	-webkit-border-radius: 5px;
	border-radius: 5px;
}

#facilityDetailWrap .cvrBtn {
	padding: 5px 10px 10px;
}

.estateDetail .specs {
	display: table-cell;
	max-width: 1px;
	/*table-cell内でtext-overflow: ellipsis;を有効にする*/
	vertical-align: top;
	padding: 5px 10px;
	font-size: 0.7rem;
	text-align: left;
	line-height: 1.4;
}

.estateDetail .specs .name {
	border-bottom: 1px dotted #d5d5d5;
	padding-bottom: 2px;
	margin-bottom: 4px;
	font-size: 0.9rem;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	width: 90%;
	line-height: initial;
}

.estateDetail .specs .address {
	color: #a0a0a0;
	padding: 1px 0 1px 16px;
	background: url(/ui/utility/common/svg/iconI_locate_gray.svg) left 1px / 15px no-repeat;
}

.estateDetail .specs .traffic {
	color: #a0a0a0;
	padding: 1px 0 1px 15px;
	background: url(/ui/utility/common/svg/iconT_route_gray.svg) left 1px / 14px no-repeat;
}

.estateDetail .specs .price {
	display: inline-block;
	vertical-align: middle;
	margin-right: 6px;
	color: #000;
	font-weight: normal;
	font-size: 0.7rem;
}

.estateDetail .specs .price span {
	color: #ff4800;
	font-weight: bold;
	font-size: 0.9rem;
}

.estateDetail .specs .layout {
	display: inline-block;
	vertical-align: middle;
	font-size: 0.9rem;
}

.estateDetail .specs .price::before,
.estateDetail .specs .layout::before {
	font-size: 0.7rem;
	display: inline-block;
	vertical-align: middle;
	-webkit-border-radius: 20px;
	border-radius: 20px;
	text-align: center;
	margin-right: 4px;
	line-height: 19px;
}

.estateDetail .specs .price::before {
	content: "価格";
}

#chintai .estateDetail .specs .price::before {
	content: "賃料";
}

.estateDetail .specs .layout::before {
	content: "間取り";
}

.estateDetail .clsBtn {
	position: absolute;
	top: 0;
	right: 0;
	width: 36px;
	height: 36px;
	border-radius: 0 0 0 5px;
	background-color: #d5d5d5;
	background-image: url(/ui/utility/common/svg/iconI_close_white.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: 20px;
}

/* 新築一戸建て　物件詳細地図内ボタン */
#houseNew .cvrBtn .ui-btn-inquiry-A {
	padding: 0 0 2px;
}

#houseNew .cvrBtn .inq-txt::before {
	content: '';
	display: inline-block;
	width: 40px;
	height: 40px;
	background: url(/ui/utility/sp/images/png/icn_btn_inquiry.png) center top 11px / 36px no-repeat;
}

#houseNew .cvrBtn .inq-txt-wrap {
	display: inline-block;
	line-height: 1.4;
}

#houseNew .cvrBtn .inq-txt-up {
	font-size: 0.73rem;
	display: block;
	letter-spacing: 0.1px;
	font-weight: normal;
	line-height: 1.2;
	text-align: left;
}

#houseNew .cvrBtn .inq-txt-btm {
	font-size: 1.2rem;
	letter-spacing: 3px;
}

.inquiryNotice-map {
	text-align: center;
	padding: 4px 0 0;
	box-sizing: border-box;
	font-size: 0.65rem;
	color: #a0a0a0;
}

/*施設情報-住みやすい街より*/
.popUpBack {
	position: relative;
	font-size: 12px;
	display: none;
}

.popUpBack .clsBtn {
	position: absolute;
	top: 2px;
	right: 0;
	width: 36px;
	height: 36px;
	border-radius: 0 0 0 5px;
	background-color: #d5d5d5;
	background-image: url(/ui/utility/common/svg/iconI_close_white.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: 20px;
}

.mapInner {
	width: 100%;
	background: #fff;
	border-left: 0;
	border-right: 0;
	text-align: left;
	padding: 10px;
	box-sizing: border-box;
}

.mapInner .shoptitleWrap {
  display: flex;
  margin-right: 30px;
  margin-bottom: 2px;
}

.mapPhoto img {
	width: 36px;
  height: 36px;
}

.mapShopName {
	line-height: 1.1em;
	font-size: 0.9rem;
  margin-left: 8px;
}

.mapShopName p {
	font-size: 1rem;
	line-height: 1.2;
}

.mapShopName span {
	font-size: 0.9rem;
	display: block;
	color: #999;
	margin-top: 2px;
}

.mapShopTel {
	background: url(/ui/town/sp/images/common/calldial.png) no-repeat left center;
	background-size: 16px;
	padding-left: 20px;
}

.mapShopPrice {
	background: url(/ui/town/sp/images/common/noon.png) no-repeat left center;
	background-size: 16px;
	padding-left: 20px;
	margin-right: 10px;
	display: inline-block;
}

.mapShopPrice2 {
	background: url(/ui/town/sp/images/common/night.png) no-repeat left center;
	background-size: 16px;
	padding-left: 20px;
	display: inline-block;
}

.mapInner .close {
	position: absolute;
	right: 7px;
	bottom: 10px;
}

.mapInner .close img {
	width: 26px;
}

/*食べログ用 4T用*/
.mapInner.col01 .mapPhoto img,
.mapInner.col02 .mapPhoto img {
	width: 60px;
  height: 60px;
	-webkit-border-radius: 5px;
	border-radius: 5px;
}

.mapInner.col01 .mapShopName,
.mapInner.col02 .mapShopName {
	line-height: 1.2;
	font-size: 0.8rem;
}

.mapInner.col01 .mapShopName p,
.mapInner.col02 .mapShopName p {
	font-size: 1rem;
}

.mapInner.col01 .mapShopName .starTypeB,
.mapInner.col02 .mapShopName .starTypeB {
	display: inline-block;
	margin-right: 4px;
}

.mapInner.col01 .mapShopName .point,
.mapInner.col02 .mapShopName .point {
	width: auto;
	display: inline-block;
	vertical-align: bottom;
	color: #ff4800;
	font-size: 1rem;
	line-height: 1.5;
}

/*カテゴリ別枠色*/
.mapInner.col01 {
	border-top: 2px solid #F9A12C;
}

.mapInner.col02 {
	border-top: 2px solid #E70D45;
}

.mapInner.col03 {
	border-top: 2px solid #3A3B3B;
}

.mapInner.col04 {
	border-top: 2px solid #B2C10C;
}

.mapInner.col05 {
	border-top: 2px solid #720FAD;
}

.mapInner.col06 {
	border-top: 2px solid #EDBF01;
}

.mapInner.col07 {
	border-top: 2px solid #22A7BC;
}

.mapInner.col08 {
	border-top: 2px solid #58A018;
}

.mapInner.col09 {
	border-top: 2px solid #D91E1E;
}

.mapInner.col10 {
	border-top: 2px solid #2483D0;
}

.mapInner.col11 {
	border-top: 2px solid #0A8B5D;
}

.mapInner.col12 {
	border-top: 2px solid #6C82B5;
}

.mapInner.col13 {
	border-top: 2px solid #FB419C;
}

.mapInner.col15 {
	border-top: 2px solid #B550E9;
}

.mapInner.col16 {
	border-top: 2px solid #BB8D21;
}

.mapInner.col17 {
	border-top: 2px solid #219b39;
}

.mapInner.col20 {
	border-top: 2px solid #d84b73;
}

/*評価☆-住みやすい街より*/
div.starTypeB {
	background: url(/ui/town/sp/images/common/star_type_b.png) no-repeat 0 0;
	background-size: 105px 220px;
	-webkit-background-size: 105px 220px;
	-moz-background-size: 105px 220px;
	width: 105px;
	height: 20px;
}

div.starB00 {
	background-position: 0 0;
}

div.starB05 {
	background-position: 0 -20px;
}

div.starB10 {
	background-position: 0 -40px;
}

div.starB15 {
	background-position: 0 -60px;
}

div.starB20 {
	background-position: 0 -80px;
}

div.starB25 {
	background-position: 0 -100px;
}

div.starB30 {
	background-position: 0 -120px;
}

div.starB35 {
	background-position: 0 -140px;
}

div.starB40 {
	background-position: 0 -160px;
}

div.starB45 {
	background-position: 0 -180px;
}

div.starB50 {
	background-position: 0 -200px;
}

/* //////////////////////////////////////////////////
[元の座標にもどる/ルート表示/アプリで開くボタン]
////////////////////////////////////////////////// */
.AppBtnWrap {
	position: relative;
}
.AppBtn {
  top: 62px;
  right: 8px;
  position: absolute;
  z-index: 1;
}

.AppBtn a {
	vertical-align: bottom;
	width: auto;
	line-height: 34px;
	height: 36px;
	box-shadow: inset 0px -3px 0px 0px rgba(230, 230, 230, 1);
}

.AppBtn a.backToMyLocation {
	display: block;
	background-color: #ff6a30;
	box-shadow: inset 0px -3px 0px 0px #f65719;
	border: 1px solid #fff;
	width: 44px;
	height: 44px;
	background-image: url(/ui/utility/common/svg/home_white.svg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: 18px;
}

.AppBtn a.backToMyLocation.company {
	background-image: url(/ui/utility/common/svg/office_white.svg);
}

.AppBtn .rootBtnWrap {
	margin-top: 12px;
	position: relative;
}

.AppBtn .row {
	display: block;
	line-height: 37px;
}

.AppBtn .joint {
	display: inline;
	float: right;
}

.AppBtn a.appBtn {
	color: #3679CC;
	display: table;
	margin-top: 12px;
	padding: 4px 0;
	background-color: #ffffff;
	width: 44px;
	line-height: 1.1;
	font-weight: bold;
	font-size: 0.6rem;
	box-shadow: none;
}

.AppBtn a.appBtn span {
	display: table-cell;
	vertical-align: middle;
}

#rootTooltip .row>label {
	display: none;
}

.AppBtn a.rootBtn {
	color: #3679CC;
	display: table;
	padding-top: 25px;
	background-color: #ffffff;
	background-image: url(/ui/utility/common/svg/split_blue.svg);
	background-repeat: no-repeat;
	background-position: center 6px;
	background-size: 19px;
	box-shadow: inset 0px -3px 0px 0px #e8e8e8;
	border: 1px solid #d5d5d5;
	width: 44px;
	height: 44px;
	line-height: 1.1;
	font-weight: normal;
	font-size: 0.6rem;
}

.AppBtn a.rootBtn.is-selected {
	background-image: url(/ui/utility/common/svg/close_plane_blue.svg);
	background-position: center 1px;
	background-size: 27px;
}

span.icn-position {
	padding-left: 20px;
	font-weight: normal;
}

#rootTooltip {
	display: none;
	top: 50%;
	right: 60px;
	width: 240px;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	transform: translateY(-50%);
}

.AppBtn a.rootBtn.is-selected+#rootTooltip {
	display: block;
}

#rootTooltip select#rootStaSelect {
	width: 80%;
	margin-right: 6px;
}

#rootTooltip .btnWrap {
	margin-top: 10px;
}

#rootTooltip .btnWrap .rootShowBtn {
	cursor: default;
	-webkit-border-radius: 5px;
	border-radius: 5px;
	background-color: #fbfbfb;
	border: 1px solid #d5d5d5;
	text-align: center;
	line-height: 36px;
}

/* //////////////////////////////////////////////////
[インジケーター]
////////////////////////////////////////////////// */
/*マップローダー*/
.spinner-box {
	position: absolute;
	z-index: 199;
	width: 100%;
	height: 100%;
	height: -webkit-calc(100% - 77px);
	height: calc(100% - 77px);
	top: 50px;
	background: rgba(255, 255, 255, 0.7);
}

.spinner-box .spinner-loader {
	position: relative;
	top: -webkit-calc(50% - 50px);
	top: calc(50% - 50px);
	-webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	transform: translateY(-50%);
}

/* //////////////////////////////////////////////////
[地図プロットアイコンクリック時のパルスエフェクト]
////////////////////////////////////////////////// */
@-webkit-keyframes pulseEffect {
	0% {
		-webkit-transform: scale(0);
		opacity: 0;
	}

	59% {
		-webkit-transform: scale(0);
		opacity: 0;
	}

	60% {
		-webkit-transform: scale(0.5);
		opacity: 1;
	}

	80% {
		opacity: 1;
	}

	100% {
		opacity: 0;
		-webkit-transform: scale(1);
	}
}

@-moz-keyframes pulseEffect {
	0% {
		-moz-transform: scale(0);
		opacity: 0;
	}

	59% {
		-moz-transform: scale(0);
		opacity: 0;
	}

	60% {
		-moz-transform: scale(0.5);
		opacity: 1;
	}

	80% {
		opacity: 1;
	}

	100% {
		opacity: 0;
		-moz-transform: scale(1);
	}
}

.pulseBase .pulseRays {
	-moz-border-bottom-colors: none;
	-moz-border-left-colors: none;
	-moz-border-right-colors: none;
	-moz-border-top-colors: none;
	animation-name: pulseEffect;
	animation-duration: 1s;
	animation-timing-function: linear;
	animation-delay: 0s;
	animation-iteration-count: infinite;
	animation-direction: normal;
	animation-fill-mode: none;
	animation-play-state: running;
	-webkit-animation-name: pulseEffect;
	-webkit-animation-duration: 1s;
	-webkit-animation-timing-function: linear;
	-webkit-animation-delay: 0s;
	-webkit-animation-iteration-count: infinite;
	-webkit-animation-direction: normal;
	-webkit-animation-fill-mode: none;
	-webkit-animation-play-state: running;
	background-color: transparent;
	border-color: #FFFFFF;
	border-image: initial;
	border-radius: 100px;
	border-style: solid;
	border-width: 4px;
	height: 33px;
	width: 33px;
	margin: 0 auto;
	opacity: 0.1;
	z-index: 10;
}

.pulseBase .pulseRays.col01 {
	border-color: #F9A12C;
}

.pulseBase .pulseRays.col02 {
	border-color: #E70D45;
}

.pulseBase .pulseRays.col03 {
	border-color: #3A3B3B;
}

.pulseBase .pulseRays.col04 {
	border-color: #B2C10C;
}

.pulseBase .pulseRays.col05 {
	border-color: #720FAD;
}

.pulseBase .pulseRays.col06 {
	border-color: #EDBF01;
}

.pulseBase .pulseRays.col07 {
	border-color: #22A7BC;
}

.pulseBase .pulseRays.col08 {
	border-color: #58A018;
}

.pulseBase .pulseRays.col09 {
	border-color: #D91E1E;
}

.pulseBase .pulseRays.col10 {
	border-color: #2483D0;
}

.pulseBase .pulseRays.col11 {
	border-color: #0A8B5D;
}

.pulseBase .pulseRays.col12 {
	border-color: #6C82B5;
}

.pulseBase .pulseRays.col13 {
	border-color: #FB419C;
}

.pulseBase .pulseRays.col15 {
	border-color: #B550E9;
}

.pulseBase .pulseRays.col16 {
	border-color: #BB8D21;
}

.pulseBase .pulseRays.col17 {
	border-color: #219b39;
}

.pulseBase .pulseRays.col20 {
	border-color: #d84b73;
}

/* //////////////////////////////////////////////////
[お問い合わせボタン]
////////////////////////////////////////////////// */
a.ui-btn-inquiry-A .icn-inquiry-mail {
	text-shadow: none;
	font-size: 1rem;
}

@media screen and (max-width:320px) {
	a.ui-btn-inquiry-A .icn-inquiry-mail {
		font-size: .925rem;
	}

	a.ui-btn-inquiry-A .icn-inquiry-mail::before {
		width: 25px;
		height: 25px;
		background-size: 25px;
		left: -2px;
	}
}

/* /// t38909 地図内のボタン、フローティング内別レイアウトパターンのテスト /// */
@font-face {
  font-family: "sumaity-icons";
  src: url("/ui/utility/common/font/sumaity-icons.woff2?20250618") format("woff2");
  font-weight: normal;
  font-style: normal;
  font-display: block;
}

/*フローティング内のテストパターン*/
.t38491 .p-map-floating{
  display: none;
  position: relative;
  border-top: none;
  background-color: #FFFFFF;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding-bottom: 4px;
}
.t38491 .p-map-floating__inner{
  display: flex;
  margin-top: 4px;
}
.t38491 .p-map-floating-estate-name{
  border-bottom: none !important;
  padding: 12px 2px 0 12px;
  box-sizing: border-box;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  width: 90%;
  line-height: initial;
  font-size: 14px;
  font-weight: bold;
  color: #1B1B1B;
}
.t38491 .p-map-floating-photo{
  width: 70px;
  padding: 0px 0px 0 12px;
}
.t38491 .p-map-floating-photo__image{
  background-size: cover;
  width: 60px;
  height: 60px;
  z-index: 1;
  -webkit-border-radius: 2px !important;
  border-radius: 2px !important;
}
.t38491 .p-map-floating-specs{
  display: block;
  max-width: 100%;
  min-width: 0;
  width: 100%;
  padding: 0px 22px 5px 10px;
  font-size: 11px;
  text-align: left;
  line-height: 1.4;
}
.t38491 .p-map-floating-specs__price{
  font-size: 12px;
  font-weight: bold;
  font-size: 12px;
  font-weight: bold;
  color: #FF6A30;
}
.t38491 .p-map-floating-specs__price::before{
  content: none;
}
.t38491 .p-map-floating-specs__cost{
  display: flex !important;
  align-items: baseline !important;
  color: #FF4949 !important;
  font-weight: bold!important;
  font-size: 12px !important;
  line-height: 1;
}
.t38491 .p-map-floating-specs__cost::before{
  content: none !important;
}
.t38491 .p-map-floating-specs__initial-cost{
  color: #1B1B1B;
  margin-top: 4px !important;
}
.t38491 .p-map-floating-specs__payment{
  font-size: 12px;
}
.t38491 .p-map-floating-specs__number{
  font-size: 18px;
}
.t38491 .p-map-floating-specs__payment::before{
  content: none !important;
}
.p-map-floating-specs__management-fee::before{
  content: '+';
  display: inline-block;
  margin: 0 2px;
}
.t38491 .p-map-floating-specs__place{
  display: flex;
  gap: 0 2px;
  color: #1B1B1B !important;
  padding: 1px 0 !important;
  background: none !important;
  margin-top: 4px !important;
  font-size: 12px !important;
}
.t38491 .p-map-floating-specs__address{
  overflow-wrap: break-word;
  width: 98%;
}
.t38491 .p-map-floating-specs__address::before{
  display: inline-block;
  content: "\e915";
  font-family: "sumaity-icons";
  font-size: 14px;
  color: #A4A4A4;
  line-height: 1;
} 
.t38491 .p-map-floating-specs__deposit-key{
  display: flex;
  align-items: center;
  margin-bottom: 2px;
}
.t38491 .p-map-floating-specs__deposit-key dt{
  background-color: #E9E9E9;
  box-sizing: border-box;
  border-radius: 2px;
  display: inline-block;
  text-align: center;
  margin: 0 3px 0 0;
  width: 18px;
  height: 18px;
  font-size: 12px;
  font-weight: normal;
  color: #494949;
  line-height: 18px;
}
.t38491 .p-map-floating-specs__deposit-key dd{
  margin-right: 8px;
  font-size: 13px;
  line-height: 1;
}
.t38491 .p-map-floating-button__close {
  position: absolute;
  top: 8px;
  right: 8px;
  width: 26px;
  height: 26px;
  background-color: unset !important; 
  background-image: none;
}
.t38491 .p-map-floating-button__close::after {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  content: "\e932";
  font-family: "sumaity-icons";
  color: #767676;
  font-size: 24px;
  line-height: 1;
}
.t38491 .p-map-floating-button{
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 4px;
  border: 1px solid transparent;
  background-color: transparent;
  text-align: center;
  text-decoration: none !important;
  line-height: 1;
  cursor: pointer;
  vertical-align: middle;
  font-family: inherit;
  position: relative;
  padding: 12px 36px 12px 44px;
  color: #FFFFFF;
  border: 0;
  vertical-align: middle;
  width: 100%;
  background: #6FBF08;
  box-shadow: 0 3px 0 #4E8606;
  width: calc(100% - 24px);
  margin-inline: auto;
  margin-block-end: 8px;
  margin-block-start: 4px;
}
.t38491 .p-map-floating-button__catch{
  content: "無料";
  font-weight: bold;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  padding: 3px 8px 0;
  background: rgba(27, 27, 27, 0.15);
  color: #FFFFFF;
  font-size: 14px;
  border-radius: 4px 0 0 4px;
  display: flex;
  align-content: center;
  flex-wrap: wrap;
}
.t38491 .p-map-floating-button__text{
  font-weight: bold;
}

/* スライドアップアニメーション */
@keyframes slideUpFromBottom {
  0% {
    transform: translateY(100%);
    opacity: 0;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}

/* p-map-floatingがdisplay: blockされた時のアニメーション */
.t38491 .p-map-floating {
  animation: slideUpFromBottom 0.3s ease-out;
}