@charset "utf-8";
/* ====================================================================================================

	estate.css

==================================================================================================== */

/* ----------------------------------------------------------------------------------------------------
	list
---------------------------------------------------------------------------------------------------- */
.list {
	}
	.list .inner {
		}
		.list .inner .hit {
			text-align:right;
			margin:30px 0 -20px 0;
			}
		.list .inner .not_found {
			color:#de5253;
			text-align:center;
			margin:50px 0 0 0;
			}
		.list .inner ul.list_items {
			display:flex;
			flex-wrap:wrap;
			gap:30px;
			margin:50px 0 0 0;
			list-style:none;
			}
			.list .inner ul.list_items li {
				width:calc((100% - 90px) / 4);
				margin:0 0 10px 0;
				}
				.list .inner ul.list_items li a {
					display:block;
					height:100%;
					background:#edf2f5;
					}
					.list .inner ul.list_items li a dl {
						display:flex;
						flex-direction:column;
						height:100%;
						}
						.list .inner ul.list_items li a dl dt {
							position:relative;
							aspect-ratio:4 / 3;
							background:#ffffff;
							overflow:hidden;
							}
							.list .inner ul.list_items li a dl dt img {
								position:absolute;
								top:0;
								right:0;
								bottom:0;
								left:0;
								width:100%;
								height:100%;
								/*object-fit:contain;*/
								object-fit:cover;
								margin:auto;
								transition:all 0.5s 0s ease;
								}
							.list .inner ul.list_items li a:hover dl dt img {
								transform:scale(1.3,1.3);
								transition:all 0.5s 0s ease;
								}
						.list .inner ul.list_items li a dl dd {
							position:relative;
							flex:1;
							text-align:left;
							padding:25px 20px 40px 20px;
							}
							.list .inner ul.list_items li a dl dd p.type {
								position:absolute;
								bottom:-10px;
								display:block;
								width:calc(100% - 40px);
								color:#ffffff;
								font-size:17px;
								font-weight:bold;
								text-align:center;
								line-height:34px;
								}
							#pist_db1 .list ul.list_items li a dl dd p.type { background:#b8b8d4; }
							#pist_db2 .list ul.list_items li a dl dd p.type { background:#8fbbae; }
							.list .inner ul.list_items li a dl dd p.price {
								position:absolute;
								top:-23px;
								left:20px;
								color:#ec253c;
								font-size:35px;
								font-weight:bold;
								line-height:100%;
								letter-spacing:1;
								text-shadow:2px 2px 0px #ffffff,
											-2px 2px 0px #ffffff,
											2px -2px 0px #ffffff,
											-2px -2px 0px #ffffff,
											2px 0px 0px #ffffff,
											0px  2px 0px #ffffff,
											-2px 0px 0px #ffffff,
											0px -2px 0px #ffffff;
								}
								.list .inner ul.list_items li a dl dd p.price span {
									font-size:25px;
									}
							.list .inner ul.list_items li a dl dd p.size {
								color:#437062;
								font-size:17px;
								font-weight:bold;
								}
							.list .inner ul.list_items li a dl dd p.address {
								font-weight:bold;
								margin:0 0 10px 0;
								}
							.list .inner ul.list_items li a dl dd p.comment {
								display:-webkit-box;
								-webkit-line-clamp:2;
								-webkit-box-orient:vertical;
								overflow:hidden;
								}

@media screen and (max-width:1040px) {

		.list .inner ul.list_items {
			gap:20px;
			}
			.list .inner ul.list_items li {
				width:calc((100% - 20px) / 2);
				}

}

@media screen and (max-width:640px) {

	.list {
		padding:30px 0 0 0;
		}
		.list .inner ul.list_items {
			gap:20px;
			}
						.list .inner ul.list_items li a dl dd {
							padding:25px 20px 35px 20px;
							}
							.list .inner ul.list_items li a dl dd p.type {
								font-size:14px;
								line-height:30px;
								}
							.list .inner ul.list_items li a dl dd p.price {
								top:-13px;
								font-size:23px;
								line-height:100%;
								}
								.list .inner ul.list_items li a dl dd p.price span {
									font-size:14px;
									}

}


/* ----------------------------------------------------------------------------------------------------
	detail
---------------------------------------------------------------------------------------------------- */
.detail {
	}
	.detail .inner {
		}
		.detail .inner .detail_head {
			margin:50px 0 0 0;
			}
			.detail .inner .detail_head .type_block {
				display:flex;
				justify-content:space-between;
				}
				.detail .inner .detail_head .type_block .type01,
				.detail .inner .detail_head .type_block .type02 {
					display:inline-block;
					color:#ffffff;
					font-size:17px;
					padding:5px 30px;
					}
				.detail .inner .detail_head .type_block .type01 { background:#b8b8d4; }
				.detail .inner .detail_head .type_block .type02 { background:#8fbbae; }
				.detail .inner .detail_head .type_block .update {
					display:inline-block;
					font-size:13px;
					background:#dddddd;
					padding:10px 30px 0 30px;
					}
			.detail .inner .detail_head .comment {
				display:block;
				font-size:25px;
				text-align:left;
				border-bottom:1px solid #cccccc;
				margin:20px 0;
				padding:0 0 10px 0;
				}
			.detail .inner .detail_head .heading_block {
				display:flex;
				flex-wrap:wrap;
				gap:10px;
				}
				.detail .inner .detail_head .heading_block dl {
					display:flex;
					flex-wrap:wrap;
					margin:0 10px 0 0;
					}
					.detail .inner .detail_head .heading_block dl dt {
						display:inline-block;
						color:#ffffff;
						font-size:17px;
						text-align:center;
						line-height:1;
						background:#14116e;
						margin-right:0.5em;
						padding:8px;
						}
					.detail .inner .detail_head .heading_block dl dd {
						color:#14116e;
						font-size:20px;
						font-weight:bold;
						}
			.detail .inner .detail_head .address {
				display:block;
				font-size:20px;
				text-align:left;
				margin:10px 0 0 0;
				}

/* photoarea */
		.detail .inner ul.main_photo {
			display:flex;
			width:100%;
			justify-content:space-between;
			margin:30px auto 0 auto;
			list-style:none;
			}
			.detail .inner ul.main_photo li {
				position:relative;
				display:block;
				width:calc((100% - 30px) / 2);
				aspect-ratio:4 / 3;
				background:#ffffff;
				overflow:hidden;
				}
				.detail .inner ul.main_photo li a {
					display:block;
					width:100%;
					height:100%;
					}
					.detail .inner ul.main_photo li a img {
						position:absolute;
						top:0;
						right:0;
						bottom:0;
						left:0;
						width:100%;
						height:100%;
						/*object-fit:contain;*/
						object-fit:cover;
						margin:auto;
						transition:all 0.5s 0s ease;
						}
					.detail .inner ul.main_photo li a:hover img {
						transform:scale(1.3,1.3);
						transition:all 0.5s 0s ease;
						}

					.detail .inner .alart {
						font-size:15px;
						background-color:#dddddd;
						margin:30px 0 0 0;
						padding:15px;
						}

		.detail .inner ul.sub_photo {
			display:flex;
			flex-wrap:wrap;
			gap:20px;
			width:100%;
			background:#f4f4f4;
			margin:30px auto 0 auto;
			padding:20px;
			list-style:none;
			}
			.detail .inner ul.sub_photo li {
				position:relative;
				display:block;
				width:calc((100% - 100px) / 6);
				aspect-ratio:4 / 3;
				background:#ffffff;
				overflow:hidden;
				}
				.detail .inner ul.sub_photo li a {
					display:block;
					width:100%;
					height:100%;
					}
					.detail .inner ul.sub_photo li a img {
						position:absolute;
						top:0;
						right:0;
						bottom:0;
						left:0;
						width:100%;
						height:100%;
						/*object-fit:contain;*/
						object-fit:cover;
						margin:auto;
						transition:all 0.5s 0s ease;
						}
					.detail .inner ul.sub_photo li a:hover img {
						transform:scale(1.3,1.3);
						transition:all 0.5s 0s ease;
						}

/*
.sub-photo .more_button {
background: #fff;
border: 2px solid #1f2c5c;
border-radius: 100px;
padding: 15px 50px;
display: flex;
align-items: center;
justify-content: center;
gap: 30px;
max-width: 330px;
position: relative;
margin: 0 auto;
transition: all .3s;
color:#1f2c5c;
font-size: clamp(14px, 1.8vw, 16px);
font-weight: normal;
}
.sub-photo .more_button:hover {
background: #1f2c5c;
color: #fff;
}

.sub-photo .more-photo {
display:none;
}

/* favbuttons
.detail_button {
width:100%;
display:flex;
justify-content:space-between;
margin:30px 0;
}
*/


/* table */
		.detail .inner table {
			width:100%;
			text-align:left;
			border:1px solid #7e7cb8;
			margin:30px auto 0 auto;
			}
			.detail .inner table tbody {
				}
				.detail .inner table tbody tr {
					}
					.detail .inner table tbody tr th,
					.detail .inner table tbody tr td {
						text-align:left;
						border-bottom:1px solid #7e7cb8;
						border-right:1px solid #7e7cb8;
						padding:20px;
						}
					.detail .inner table tbody tr th {
						width:175px;
						background:#e0e1f2;
						}
					.detail .inner table tbody tr td {
						width:calc((100% - 350px) / 2);
						background:#ffffff;
						}

/* youtube */
		.detail .inner .youtube {
			width:100%;
			aspect-ratio:16 / 9;
			border:none;
			margin:30px auto 0 auto;
			}
			.detail .inner .youtube iframe {
				width:100%;
				height:100%;
				}

/* theta */
		.detail .inner .theta {
			width:100%;
			aspect-ratio:73 / 25;
			margin:23px auto 0 auto;
			}

/* gmap */
		.detail .inner .gmap {
			width:100%;
			aspect-ratio:12 / 5;
			margin:30px auto 0 auto;
			}
			.detail .inner .gmap iframe {
				width:100%;
				height:100%;
				}

@media screen and (max-width:1040px) {

			.detail .inner ul.main_photo li {
				width:calc((100% - 20px) / 2);
				}

}

@media screen and (max-width:640px) {

				.detail .inner .detail_head .type_block .update {
					font-size:13px;
					}
			.detail .inner .detail_head .comment {
				font-size:20px;
				}
			.detail .inner ul.sub_photo li {
				width:calc((100% - 40px) / 3);
				}

		.detail .inner table {
			display:block;
			border:2px solid #7e7cb8;
			}
			.detail .inner table tbody {
				display:block;
				width:100%;
				}
				.detail .inner table tbody tr {
					display:flex;
					flex-direction:column;
					width:100%;
					}
					.detail .inner table tbody tr th,
					.detail .inner table tbody tr td {
						display:block;
						width:100%;
						border:none;
						}
					.detail .inner table tbody tr th {
						padding:10px 20px;
						}
					.detail .inner table tbody tr td {
						border-top:2px solid #7e7cb8;
						border-bottom:2px solid #7e7cb8;
						}
					.detail .inner table tbody tr:nth-of-type(1) th {
						border-top:none;
						}
					.detail .inner table tbody tr:nth-last-of-type(1) td {
						border-bottom:none;
						}

}