@charset "utf-8";


body {
	/*スマホで勝手に文字が大きくなる対策*/
	-webkit-text-size-adjust: 100%;
}

#contents {
	width: 100%;
	padding: 0;
}
.l-contents {
	overflow: unset;
}
.result__path {
	overflow: hidden;
}

.org-main * {
	color: #1C1C1C;
	font-family: "Noto Sans JP";
}
.org-main {
	background: #FAFAFA;
}
.result-main {
	display: flex;
	flex-direction: row-reverse;
	justify-content: space-between;
	gap: 30px;
	width: 1140px;
	margin: 0 auto;
    padding-top: 10px;
    padding-bottom: 70px;
}
	.org-result__primary {
		width: 790px;
	}
		.result__headline {
			font-size: 24px;
			font-weight: 700;
			line-height: 1.25;
			margin-bottom: 8px;
		}
			.result__headline span {
				font-size: 24px;
				font-weight: 700;
				line-height: 1.25;
				color: #FF5800;
			}
		.result__head {
			display: flex;
			justify-content: space-between;
			align-items: center;
			margin-bottom: 8px;
		}
			.result__count {
				font-size: 14px;
				font-weight: 700;
				line-height: 1;
			}
				.result__count span {
					font-size: 24px;
					font-weight: 700;
					line-height: 1;
					color: #FF5800;
					margin-right: 3px;
				}
			.result__select {
				display: flex;
				justify-content: flex-end;
				align-items: center;
				gap: 6px;
				font-size: 12px;
				font-weight: 700;
				line-height: 1;
			}
				.org-orderby {
					width: 141px;
					height: 32px;
					background: #FFF url(/images/result/bg_select-arrow.svg) no-repeat 121px 12px / 8px 5px;
					border: 1px solid #CFCFCF;
					border-radius: 3px;
					padding: 0 22px 0 9px;
					font-size: 12px;
					font-weight: 500;
					line-height: 1;
				}
				.org-result__list {
					display: flex;
					flex-direction: column;
					gap: 10px;
				}
					.org-result__card {
						position: relative;
						z-index: 1;
					}
					.result__card-link {
						display: block;
						padding: 14px 19px 20px;
						background: #FFF;
						border: 1px solid #EBEBEB;
						box-shadow: 0 0 10px 2px rgba(0, 0, 0, 0.05);
					}
					.result__card-link:hover {
						opacity: 1;
					}
					.org-result__card .result__card-link:hover::before {
						content: '';
						width: 100%;
						height: 100%;
						position: absolute;
						top: 0;
						left: 0;
						right: 0;
						bottom: 0;
						border: 2px solid #FF5800;
					}
						.result__card-head {
							display: flex;
							justify-content: space-between;
							align-items: center;
							gap: 8px;
							margin-bottom: 12px;
						}
							/* グレードタイプと割引ラベルを右側へ寄せる（子が2つの従来ケースは space-between と同じ並び） */
							.result__card-head-left {
								display: flex;
								align-items: center;
								gap: 8px;
								margin-right: auto;
							}
								input[type="checkbox"].result__card-check {
									width: 24px;
									height: 24px;
									border-radius: 3px;
									background: #FFF;
									border: 1px solid #CFCFCF;
									margin: 0 auto;
									position: relative;
									z-index: 2;
									cursor: pointer;
								}
								input[type="checkbox"].result__card-check:checked {
									border-color: transparent;
									background: url(/images/result/img_result-check.webp) no-repeat center / cover;
									border: none;
								}
								.result__card-name {
									font-size: 16px;
									font-weight: 700;
									line-height: 1.25;
									margin-bottom: 3px;
								}
							.result__card-type {
								display: block;
								width: fit-content;
								height: fit-content;
								padding: 5px 11px;
								border-radius: 999px;
								border: 1px solid #FF5800;
								background: linear-gradient(0deg, rgba(255, 255, 255, 0.88) 0%, rgba(255, 255, 255, 0.88) 100%), #FF9D00;
								font-size: 12px;
								font-weight: 700;
								line-height: 1;
								color: #FF5800;
								text-align: center;
							}
							/* 割引ラベル（デバッグシート No.67）。配色・文字サイズは物件詳細カードの
							   .bkn__label-item--NN（pc/room.css）と揃える。一覧のカード見出しは
							   横並びのため、幅は内容量に合わせ（詳細カードの flex:1 は使わない）、
							   padding は隣の .result__card-type と同値にして高さを揃える。
							   modifier の対応は BknCardDiscountIcon::MODIFIERS が SSOT。 */
							.result__card-discount-list {
								display: flex;
								align-items: center;
								gap: 0 3px;
							}
								[class*="result__card-discount-item--"] {
									display: block;
									width: fit-content;
									height: fit-content;
									padding: 5px 11px;
									font-size: 12px;
									font-weight: 700;
									color: var(--white);
									line-height: 1;
									text-align: center;
								}
								.result__card-discount-item--01 {
									background: var(--orange);
								}
								.result__card-discount-item--02 {
									background: var(--red);
								}
								.result__card-discount-item--03 {
									background: var(--yellow);
								}
								.result__card-discount-item--04 {
									background: #5FB530;
								}
						.result__card-main {
							display: flex;
							gap: 16px;
						}
						.result__card-left {
							width: 415px;
							margin-bottom: 11px;
						}
							.result__card-image-wrap {
								display: flex;
								padding: 1px;
								background: #EBEBEB;
								margin-bottom: 10px;
							}
								.result__card-image {
									flex: 1;
									width: 100%;
									height: 155px;
									overflow: hidden;
									position: relative;
								}
									.result__card-image img {
										width: 100%;
										height: 100%;
										object-fit: cover;
										transition: .4s;
									}
									.result__card-image.js-photo:hover img {
										transform: scale(1.05);
									}
									.result__card-image.js-photo::before {
										content: '';
										background: url(/images/result/icon_result-zoom.webp) no-repeat center / cover;
										display: block;
										width: 30px;
										height: 30px;
										position: absolute;
										right: 4px;
										bottom: 4px;
										z-index: 2;
									}
							.result__card-equipment-list {
								display: grid;
								grid-template-columns: repeat(5, 1fr);
								gap: 1px;
								padding: 1px;
								background: #EBEBEB;
							}
								.result__card-equipment-item {
									display: flex;
									justify-content: center;
									align-items: center;
									width: 100%;
									height: 24px;
									background: #FFF;
									font-size: 9px;
									font-weight: 500;
									line-height: 1;
									color: #B9B9B9;
									text-align: center;
									padding-bottom: 1px;
								}
								.result__card-equipment-item.active {
									color: #FF5800;
								}
						.result__card-right {
							width: 320px;
						}
							.result__card-info-group {
								display: flex;
								flex-direction: column;
								gap: 10px;
								margin-bottom: 15px;
							}
								.result__card-info-text {
									font-size: 12px;
									font-weight: 400;
									line-height: 1;
									overflow: hidden;
									text-overflow: ellipsis;
									white-space: nowrap;
								}
								.result__card-info-text:empty::before {
									content: '-';
								}
							.result__card-price-contents {
								display: flex;
								flex-direction: column;
								gap: 1px;
								width: 100%;
								position: relative;
							}
								.result__card-price-contents.is-guarded .result__card-price-group {
									filter: blur(4px);
									user-select: none;
									pointer-events: none;
								}
								.result__card-price-guard {
									display: flex;
									justify-content: center;
									align-items: center;
									border: 1px solid #D82D2D;
									position: absolute;
									z-index: 1;
									padding: 20px 50px;
									margin: 0;
									font-size: var(--size-S);
									font-weight: 700;
									line-height: 1.4;
									white-space: nowrap;
									text-align: center;
									color: #D82D2D;
									pointer-events: none;
									top: 50%;
									left: 50%;
									transform: translate(-50%, -50%);
								}
								.result__card-price-group {
									display: flex;
									justify-content: space-between;
									align-items: center;
									gap: 12px;
									width: 100%;
									padding: 12px 10px 11px;
									background: #F4F4F4;
								}
									.result__card-price-title {
										display: flex;
										flex-direction: column;
										gap: 5px;
									}
										[class*="result__card-price-type--"] {
											width: 65px;
											font-size: 14px;
											font-weight: 700;
											line-height: 1;
										}
										.result__card-price-period {
											width: 46px;
											font-size: 10px;
											font-weight: 400;
											line-height: 1;
											color: #8F8F8F;
										}
									.result__card-price-detail {
										display: flex;
										align-items: center;
									}
										.result__card-price-plan {
											display: flex;
											justify-content: space-between;
											align-items: center;
											gap: 5px;
											width: 52px;
											font-size: 12px;
											font-weight: 500;
											line-height: 1;
											margin-right: 6px;
										}
											.result__card-price-plan::after {
												content: '';
												background: url(/images/result/icon_price-arrow.svg) no-repeat center / cover;
												display: block;
												width: 11px;
												height: 8px;
											}
											.result__card-price-plan.is-empty::before {
												content: '-';
											}
											.result__card-price-plan.is-empty::after {
												display: none;
											}
										.result__card-price-change {
											font-size: 12px;
											font-weight: 400;
											line-height: 1;
											text-decoration-line: line-through;
											margin-right: 3px;
										}
										/* Sショート取り扱い不可（org20）の注記。狭い価格枠に収めるため金額より小さく折り返す */
										.result__card-price-unavailable {
											font-size: 11px;
											font-weight: 500;
											line-height: 1.4;
										}
										.result__card-price {
											font-size: 12px;
											font-weight: 700;
											line-height: 1;
										}
											.result__card-price span {
												font-size: 20px;
												font-weight: 700;
												line-height: 1;
												color: #D82D2D;
											}
							.result__card-button-group {
								display: flex;
								gap: 5px;
								position: absolute;
								left: 20px;
								bottom: 19px;
							}
								[class*="result__card-button--"] {
									display: flex;
									justify-content: center;
									align-items: center;
									gap: 5px;
									width: 125px;
									height: 32px;
									border-radius: 3px;
									font-size: 12px;
									font-weight: 500;
									line-height: 1;
									color: #FFF;
									position: relative;
									z-index: 2;
								}
								.result__card-button--favorite {
									background: #D82D2D;
								}
								.result__card-button--favorite span {
									display: contents;
									color: #FFF;
									font-size: 12px;
									font-weight: 500;
								}
								.result__card-button--favorite.is-checked span {
									display: contents;
									color: #D82D2D;
								}
								.result__card-button--favorite.is-checked {
									background: #FFE7E7;
									color: #D82D2D;
									opacity: 1;
								}
								.result__card-button--favorite .result__card-favorite-suffix--done {
									display: none;
								}
								.result__card-button--favorite.is-checked .result__card-favorite-suffix--add {
									display: none;
								}
									.result__card-button--favorite svg {
										width: 13px;
										height: 11px;
										fill: #FFF;
										stroke: #FFF;
									}
									.result__card-button--favorite.is-checked svg {
										fill: #D82D2D;
										stroke: #D82D2D;
									}
									/* opacity は common.css の button:hover{opacity:.7} を打ち消すガード。タッチ端末の残留 :hover でもボタンが薄くならないよう無条件で当てる */
									.result__card-button--favorite:hover {
										opacity: 1;
									}
									/* 色・枠の hover 演出はマウス環境のみ。タッチ端末では :hover が残留し、お気に入り解除後も追加済みの見た目になるため（デバッグシート No.349）。
									   pointer: fine を併せることで hover 可能でも粗いポインタの端末を除外する（マウス接続 iPad は hover 演出なし＝許容）。
									   タッチ対応ノートPC（primary pointer が fine）は対象外＝指タップ時の残留は従来どおり。潰すなら JS 側で別途対応 */
									@media (hover: hover) and (pointer: fine) {
										.result__card-button--favorite:hover {
											background: #FFE7E7;
											color: #D82D2D;
										}
										.result__card-button--favorite:hover span {
											color: #D82D2D;
										}
										.result__card-button--favorite.is-checked:hover {
											border: 1px solid #D82D2D;
											transition: unset;
										}
										.result__card-button--favorite:hover svg {
											fill: #D82D2D;
											stroke: #D82D2D;
										}
									}
								.result__card-button--contact {
									background: #FF5800;
									border: 1px solid #FF5800;
								}
								.result__card-button--contact:hover {
									background: #FFF;
									color: #FF5800;
								}
									.result__card-button--contact svg {
										width: 14px;
										height: 11px;
										fill: none;
										stroke: #FFF;
									}
									.result__card-button--contact:hover svg {
										stroke: #FF5800;
									}
		.org-pager {
			display: flex;
			justify-content: center;
			align-items: center;
			gap: 22px;
			margin-top: 15px;
		}
			.org-pager__list {
				display: flex;
				align-items: center;
				justify-content: center;
				gap: 4px;
			}
			.org-pager__item {
				display: flex;
				justify-content: center;
				align-items: center;
				width: 23px;
				height: 23px;
			}
				.org-pager__item-link {
					font-size: 12px;
					font-weight: 500;
					line-height: 1;
				}
				.org-pager__item span {
					display: flex;
					justify-content: center;
					align-items: center;
					width: 100%;
					height: 100%;
					border-radius: 50%;
					background: #EBEBEB;
					font-size: 12px;
					font-weight: 500;
					line-height: 1;
					color: #FF5800;
				}
	.org-result__side {
		width: 320px;
		height: fit-content;
		background: #F4F4F4;
		padding: 20px 10px 20px 20px;
		position: sticky;
		top: 109px;
	}
		.result__side-headline {
			font-size: 20px;
			font-weight: 700;
			line-height: 1;
			margin-bottom: 12px;
		}
		.result__side-search {
			max-height: 531px;
			padding-right: 13px;

			.simplebar-track.simplebar-vertical {
				width: 3px;
				background: #FFF;
				border-radius: 0;
			}
			.simplebar-track.simplebar-vertical .simplebar-scrollbar:before {
				top: 0;
				left: 0;
				right: 0;
				bottom: 0;
				width: 3px;
				opacity: 1;
				background: #DADADA;
			}
		}
			[class*="result__side-contents--"] {
				width: 100%;
				padding-bottom: 14px;
				border-bottom: 1px solid #EBEBEB;
				margin-bottom: 12px;
			}
			.result__side-contents--selection,
			.result__side-contents--freeword,
			.result__side-contents--type,
			.result__side-contents--kodawari {
				padding-bottom: 0;
				border-bottom: none;
			}
				.result__side-contents--selection {
					display: flex;
					flex-direction: column;
					gap: 6px;
					padding: 12px;
					background: #FFF;
				}
					.result__side-selection-title {
						font-size: 14px;
						font-weight: 700;
						line-height: 1;
					}
					.result__side-selection-text {
						font-size: 12px;
						font-weight: 400;
						line-height: 1.5;
					}
				.result__side-contents--freeword {
					position: relative;
				}
					input[type="text"].result__slide-freeword-box {
						width: 100%;
						height: 36px;
						padding: 4px 35px 5px 14px;
						background: #FFF;
						border-radius: 9999px;
						border: 1px solid #1C1C1C;
						font-size: 12px;
						font-weight: 400;
						line-height: 1;
					}
						input[type="text"].result__slide-freeword-box::placeholder {
							color: #B9B9B9;
						}
					.result__slide-freeword-submit {
						display: flex;
						justify-content: center;
						align-items: center;
						width: 26px;
						height: 26px;
						background: #1C1C1C;
						border-radius: 50%;
						position: absolute;
						top: 50%;
						right: 5px;
						transform: translateY(-50%);
					}
						.result__slide-freeword-submit svg {
							width: 12px;
							height: 12px;
							fill: none;
							stroke: #FFF;
						}
				.result__side-type-list {
					display: flex;
				}
					[class*="result__side-type--"] {
						flex: 1;
						width: 100%;
						display: flex;
						justify-content: center;
						align-items: center;
						gap: 2px;
						height: 30px;
						background: #CFCFCF;
						border-radius: 5px 5px 0 0;
						font-size: 12px;
						font-weight: 500;
						line-height: 1;
						color: #FFF;
						padding-right: 4px;
						cursor: pointer;
					}
					[class*="result__side-type--"].active {
						background: #FF5800;
					}
						[class*="result__side-type--"]::before {
							content: '';
							display: block;
							width: 20px;
							height: 20px;
						}
						.result__side-type--area::before {
							background: url(/images/result/icon_side-area.svg) no-repeat center / cover;
						}
						.result__side-type--station::before {
							background: url(/images/result/icon_side-station.svg) no-repeat center / cover;
						}
					.result__side-type-box {
						display: none;
						padding: 10px;
						background: #FFF;

						.result__side-select {
							background: #FFF url(/images/result/bg_select-arrow.svg) no-repeat 234px 16px / 8px 5px;
							border: 1px solid #EBEBEB;
						}
						.result__side-select:first-of-type {
							margin-bottom: 5px;
						}
					}
					.result__side-type-box.is-active {
						display: block;
					}
						.result__side-select {
							width: 100%;
							height: 38px;
							background: #FFF url(/images/result/bg_select-arrow.svg) no-repeat 254px 16px / 8px 5px;
							border: 1px solid #CFCFCF;
							padding: 0 25px 0 9px;
							font-size: 12px;
							font-weight: 400;
							line-height: 1;
							cursor: pointer;
						}
						/* 市区町村の複数選択（BRATTO_HP2026-399）。トリガー外観は SP の駅選択と揃える。
						   ⚠️ サイドバーは simplebar のスクロール枠（.result__side-search）内にあるため、
						      候補パネルを position:absolute で重ねると枠にクリップされる。同じ枠内の
						      駅チェックボックスと同じ in-flow 展開（下に押し広げる）にする。 */
						.result__side-city-result {
							position: relative;
							display: flex;
							align-items: center;
							height: 38px;
							background: #FFF;
							border: 1px solid #EBEBEB;
							border-radius: 3px;
							padding: 0 25px 0 9px;
							cursor: pointer;
						}
						.result__side-city-result::before {
							content: '';
							background: url(/images/result/bg_select-arrow.svg) no-repeat center / cover;
							display: block;
							width: 8px;
							height: 5px;
							position: absolute;
							top: 50%;
							right: 12px;
							transform: translateY(-50%);
						}
						.result__side-city-result.is-active::before {
							transform: translateY(-50%) rotate(180deg);
						}
							.result__side-city-text {
								font-size: 12px;
								font-weight: 400;
								line-height: 1;
								overflow: hidden;
								text-overflow: ellipsis;
								white-space: nowrap;
							}
						/* 1行1件（縦積み）。駅チェックボックス（.result__side-station-box）は横並びだが、
						   市区町村名は駅名より長く字数のばらつきも大きいため、横に並べると行ごとに
						   折り返し位置がずれて揃って見えない（2026-08-19 先方FB）。SP と同じ1列にする。 */
						.result__side-city-box {
							display: none;
							flex-direction: column;
							align-items: stretch;
							gap: 8px;
							max-height: 200px;
							overflow-y: auto;
							border: 1px solid #F4F4F4;
							padding: 9px;
							margin-top: 5px;
						}
						.result__side-city-box.is-show {
							display: flex;
						}
							.result__side-city-label {
								display: flex;
								align-items: center;
								gap: 4px;
								font-size: 12px;
								font-weight: 400;
								line-height: 1;
							}
						.result__side-station-box {
							display: flex;
							flex-wrap: wrap;
							align-items: center;
							gap: 8px 9px;
							border: 1px solid #F4F4F4;
							padding: 9px;
							margin-top: 5px;
						}
						.result__side-station-box:empty {
							display: none;
						}
							.result__side-station-label {
								min-width: calc(50% - 5px);
								display: flex;
								align-items: center;
								gap: 4px;
								font-size: 12px;
								font-weight: 400;
								line-height: 1;
							}
								.org-result__side input[type="checkbox"] {
									-webkit-appearance: none;
									appearance: none;
									width: 18px;
									height: 18px;
									margin: 0;
									border-radius: 2px;
									border: 1px solid #CFCFCF;
									background: #FFF;
									cursor: pointer;
								}
								.org-result__side input[type="checkbox"]:checked {
									border-color: transparent;
									background: url(/images/result/img_result-slide-check.webp) no-repeat center / cover;
									border: none;
								}
				.result__side-contents--kodawari {
					margin-bottom: 0;
				}
				.result__side-title {
					font-size: 14px;
					font-weight: 700;
					line-height: 1;
					margin-bottom: 8px;
				}
					.result__side-checkbox-wrap {
						display: grid;
						grid-template-columns: 1fr 1fr;
						gap: 1px;
						padding: 1px;
						background: #EBEBEB;
					}
					.result__side-checkbox-wrap:has(> :last-child:nth-child(odd))::after {
						content: '';
						background: #FFF;
					}
						.result__side-check-label {
							display: flex;
							align-items: center;
							gap: 3px;
							width: 100%;
							height: 34px;
							padding: 0 8px;
							background: #FFF;
							font-size: 12px;
							font-weight: 400;
							line-height: 1;
							cursor: pointer;
						}
							
					.result__side-select-flex {
						display: flex;
						align-items: center;
						gap: 5px;
						font-size: 12px;
						font-weight: 400;
						line-height: 1;

						.result__side-select {
							width: 127px;
							background: #FFF url(/images/result/bg_select-arrow.svg) no-repeat 106px 15px / 8px 5px;
						}
					}
					.result__side-price-notes {
						font-size: 10px;
						font-weight: 400;
						line-height: 1.5;
						margin-top: 3px;
					}
		.result__side-bottom {
			display: flex;
			align-items: center;
			gap: 5px;
			margin-top: 12px;
		}
			.result__side-reset {
				display: flex;
				justify-content: center;
				align-items: center;
				width: 88px;
				height: 28px;
				border-radius: 9999px;
				background: #D2D2D2;
				box-shadow: 0 0 10px 2px rgba(0, 0, 0, 0.12);
				font-size: 12px;
				font-weight: 400;
				line-height: 1;
				color: #8F8F8F;
				transition: .4s;
				cursor: pointer;
			}
			.result__side-reset:hover {
				box-shadow: unset;
				color: #FFF;
				background: #1C1C1C;
			}
			.result__side-submit {
				display: flex;
				justify-content: center;
				align-items: center;
				gap: 4px;
				width: 184px;
				height: 40px;
				background: #1C1C1C;
				border: 1px solid #1C1C1C;
				border-radius: 9999px;
				box-shadow: 0 0 10px 2px rgba(0, 0, 0, 0.12);
				font-size: 14px;
				font-weight: 700;
				line-height: 1.5;
				opacity: 1;
				transition: .4s;
				color: #FFF;
			}
			.result__side-submit:hover {
				background: #FFF;
				color: #1C1C1C;
				box-shadow: unset;
			}
				.result__side-submit svg {
					width: 14px;
					height: 14px;
					fill: none;
					stroke: #FFF;
				}
				.result__side-submit:hover svg {
					stroke: #1C1C1C;
				}

.bkn__photo-modal *,
.ui-float-bottom * {
	font-family: var(--default-font);
}
.bkn__photo-modal {
	display: none;
	background: rgba(28, 28, 28, 0.55);
	backdrop-filter: blur(10px);
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 4;

	[class*="swiper-button-"] {
		width: 32px;
		height: 32px;
		background: #FFF;
		border: 1px solid #EBEBEB;
		border-radius: 50%;
		margin: 0;
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		transition: .4s;
	}
	[class*="swiper-button-"]:hover {
		background: #1C1C1C;
	}
	.swiper-button-prev {
		left: -15px;
	}
	.swiper-button-next {
		right: -15px;
		transform: translateY(-50%) rotate(-180deg);
	}
		[class*="swiper-button-"] svg {
			width: 7px;
			height: 11px;
			fill: none;
			stroke: #1C1C1C;
			position: absolute;
			top: 50%;
			left: 50%;
			transform: translate(-50%, -50%);
			transition: .4s;
		}
		[class*="swiper-button-"]:hover svg {
			stroke: #FFF;
		}
		.swiper-button-prev:after, .swiper-rtl .swiper-button-next:after,
		.swiper-button-next:after, .swiper-rtl .swiper-button-prev:after {
			content: none;
		}
}
	.bkn__photo-popup {
		width: 1140px;
		padding: 40px;
		background: #FFF;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%,-50%);
	}
		.photo__modal-close {
			width: 50px;
			height: 50px;
			position: absolute;
			top: 20px;
			right: 20px;
			cursor: pointer;
		}
		.photo__modal-inner {
			width: 690px;
			margin: 0 auto 30px;
		}
			.room__photo-main {
				margin-bottom: 10px;
				position: relative;
			}
				.room__photo-wrap {
					overflow: hidden;
				}
				.room__photo-item {
					width: 690px;
					height: 460px;
					background: #F4F4F4;
				}
					.room__photo-item img {
						width: 100%;
						height: 100%;
						object-fit: contain;
					}
			.room__photo-thumb {
				overflow: hidden;
			}
				.room__thumb-item {
					width: 120px;
					height: 90px;
					border: 1px solid #EBEBEB;
					cursor: pointer;
				}
				.room__thumb-item.swiper-slide-thumb-active {
					border: 2px solid #FF5800;
				}
					.room__thumb-item img {
						width: 100%;
						height: 100%;
						object-fit: cover;
					}
		.modal__more {
			margin-top: 30px;
		}
			.modal__more a {
				display: flex;
				justify-content: center;
				align-items: center;
				width: 280px;
				height: 50px;
				margin: 0 auto;
				background: #1C1C1C;
				box-shadow: 2px 2px 8px 0 rgba(0, 0, 0, 0.30);
				border-radius: 5px;
				font-size: 16px;
				font-weight: 700;
				line-height: 1.5;
				color: #FFF;
				font-family: "Noto Sans JP";
				position: relative;
			}
				.modal__more a span {
					width: 22px;
					height: 22px;
					background: #FFF;
					border-radius: 50%;
					position: absolute;
					top: 50%;
					right: 10px;
					transform: translateY(-50%);
				}
				.modal__more a span svg {
					width: 5px;
					height: 8px;
					fill: none;
					stroke: #1C1C1C;
					position: absolute;
					top: 50%;
					left: 50%;
					transform: translate(-50%, -50%) rotate(180deg);
				}

@media (max-width: 1270px) {
	.bkn__photo-popup {
		width: 1080px;
	}
		.photo__modal-inner {
			width: 620px;
		}
		.room__photo-item {
			height: 390px;
		}
}

/* まとめてお問い合わせフロート（物件一覧）。
   閲覧履歴 history.css の .result__float-button--* と同一の見た目。
   一覧は view-common.css（--color-primary-* 等）を読み込まないため実値で定義し、
   共通 common.css の緑 .ui-btn--flat_contact に勝つよう .ui-float-bottom 付きの詳細度にする。 */
.ui-float-bottom {
	background-color: rgba(236, 239, 241, .5);
	padding: 10px 0;
}
	.ui-float-bottom [class*="result__float-button--"] {
		display: flex;
		align-items: center;
		gap: 5px;
		height: 50px;
		box-shadow: 2px 2px 8px 0 rgba(0, 0, 0, 0.30);
		border-radius: 5px;
		font-size: 16px;
		font-weight: 700;
		color: #FFFFFF;
		cursor: pointer;
		transition: .4s;
		position: relative;
	}
	.ui-float-bottom .result__float-button--change {
		width: 280px;
		background: #1C1C1C;
		border: 1px solid #1C1C1C;
		justify-content: center;
	}
	.ui-float-bottom .result__float-button--change:hover {
		background: #FFF;
		color: #1C1C1C;
		box-shadow: unset;
		opacity: 1;
	}
	.ui-float-bottom .result__float-button--change:hover .more__arrow {
		background: #1C1C1C;
	}
	.ui-float-bottom .result__float-button--contact {
		width: 280px;
		background: #FF5800;
		border: 1px solid #FF5800;
		padding-left: 39px;
	}
		.ui-float-bottom .result__float-button--contact .icon-contact {
			width: 22px;
			height: 18px;
			fill: none;
			stroke: #FFFFFF;
		}
		.ui-float-bottom [class*="result__float-button--"] .more__arrow {
			display: block;
			width: 22px;
			height: 22px;
			background: #FFFFFF;
			border-radius: 50%;
			position: absolute;
			top: 50%;
			right: 15px;
			transform: translateY(-50%);
		}
			.ui-float-bottom [class*="result__float-button--"] .more__arrow svg {
				width: 5px;
				height: 8px;
				fill: none;
				stroke: #FF5800;
				position: absolute;
				top: 50%;
				left: 50%;
				transform: translate(-50%, -50%);
			}
			.ui-float-bottom .result__float-button--change .more__arrow svg {
				stroke: #1C1C1C;
			}
			.ui-float-bottom .result__float-button--change:hover .more__arrow svg {
				stroke: #FFF;
			}
	.ui-float-bottom .result__float-button--contact:hover {
		background: #FFFFFF;
		color: #FF5800;
		box-shadow: unset;
	}
	.ui-float-bottom .result__float-button--contact:hover .more__arrow {
		background: #FF5800;
	}
	.ui-float-bottom .result__float-button--contact:hover .more__arrow svg {
		stroke: #FFF;
	}
	.ui-float-bottom .result__float-button--contact:hover .icon-contact {
		stroke: #FF5800;
	}
.l-wrapper:has(.ui-float-bottom.is-show) .org-footer {
	margin-bottom: 70px;
}

.link__section {
	background: var(--color-primary-grayscale-background-01);
}

/*------------- 0件表示 --------------*/

.empty__headline {
	font-size: var(--size-XL);
	font-weight: 700;
	line-height: 1.25;
	text-align: center;
	margin-top: 60px;
	margin-bottom: 30px;
}
.empty__search-message {
	font-size: var(--size-M);
	font-weight: 700;
	line-height: 1.55;
	text-align: center;
	margin-bottom: 20px;
}
	.empty__search-message::before {
		content: '';
		background: url(/images/result/img_error-mascot.webp) no-repeat center / cover;
		display: block;
		width: 172px;
		height: 220px;
		margin: 0 auto 30px;
		aspect-ratio: 43/55;
	}

.result__empty-contact {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 20px;
	margin: 0;
}
	.result__empty-button a {
		padding-right: 7px;
	}
	.more__button--request a {
		background: var(--color-primary-default-main);
		border: 1px solid var(--color-primary-default-main);
	}
		.more__button--request a .more__arrow {
			background: var(--color-primary-grayscale-white);
		}
			.more__button--request a .more__arrow svg {
				stroke: var(--color-primary-default-main);
			}
	.more__button--request a:hover {
		background: var(--color-primary-grayscale-white);
		color: var(--color-primary-default-main);
	}
		.more__button--request a:hover .more__arrow {
			background: var(--color-primary-default-main);
		}
			.more__button--request a:hover .more__arrow svg {
				stroke: var(--color-primary-grayscale-white);
			}