@charset "UTF-8";


/* ----------------------------------------------------------- */
/* 共通パーツCSS                                               */
/*                                                             */
/* 【このCSSファイルの適用場所】                               */
/* 共通レイアウトやヘッダーサイドメニュー、フッターを除く箇所  */
/* 2ページ以上で共通利用できるパーツ                           */
/*                                                             */
/*                                                             */
/* ----------------------------------------------------------- */






/* 準備中 */
div.example{
	font-size: 18px;
	background-color: #ddd;
	padding: 10px;
	margin: 5px;
}
table.example{
	
}
table.example .thumbnail-image{
	padding: 5px;
}
table.example .thumbnail-image > div{
	display: table-cell;
	vertical-align: middle;
	width: 320px;
	height: 240px;
	padding: 5px;
	background-color: white;
	border: 1px solid #bbb;
	text-align: center;
}
table.example .thumbnail-image > div> img{
	max-width: 320px;
	max-height: 240px;
}









/* 仮特集 */
.special-menu{
	margin-bottom: 10px;
}
.special-menu > ul{
	display : -webkit-box; /* Android 2～4 */
	display : -webkit-flex;
	display : -moz-flex;
	display : -ms-flex;
	display : flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: stretch;
}
.special-menu > ul > li{
	flex: 0 0 175px;
	margin: 5px;
}
.special-menu > ul > li > a{
	position: relative;
	display: block;
	overflow: hidden;
	
	width : 175px;
	min-height: 175px;
	
	background-color:#eeeeee;
	
	color: #008BCA;
	text-align:center;
	text-decoration: none;
}
.special-menu > ul > li > a > span{
	font-size: 72px;
	line-height: 110px;
}
.special-menu > ul > li > a > div{
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 30px;
	
	font-size: 18px;
	line-height: 30px;
	background-color: rgba( 0, 0, 0, 0.1 );
}
.special-menu > ul > li > a:hover{
	background-color: #18a0de !important;
}


.circle-type.special-menu > ul > li > a{
	border-radius: 100px;
}
.circle-type.special-menu > ul > li > a > div{
	position: static;
	height: auto;
	background-color: transparent;
}

.detail-type.special-menu > ul > li > a > img + div{
	position:absolute;
	top:0;
	left:0;
}

.detail-type.special-menu > ul > li > a{
	box-sizing: border-box;
	
	background-color:white;
	width : 175px;
	min-height: auto;
	height: 100%;
	
	border-radius: 5px;
}
.detail-type.special-menu > ul > li > a > span{
	font-size: 48px;
	line-height: 56px;
}
.detail-type.special-menu > ul > li > a > span > img{
	margin:8px;
	width: 48px;
	height: 48px;
}
.detail-type.special-menu > ul > li > a > img{
	position:absolute;
	top:0;
	left:0;
	height:auto;
	width:auto;
	max-height:100%;
	max-width:100%;
	display:block;
	margin-left:auto;
	margin-right:auto;
	margin-top:auto;
	margin-bottom:auto;
}

.detail-type.special-menu > ul > li > a > div{
	position: static;
	height: auto;
	background-color: transparent;
}
.detail-type.special-menu > ul > li > a > div:not(:first-of-type),
.detail-type.special-menu > ul > li > a > div >div{
	padding: 5px;
	font-size: 12px;
	text-align: left;
	line-height: 16px;
	color: #555;
}












/* ----------------------------------------------------------- */
/* ▼TOPコンテンツ用                                           */
/* ----------------------------------------------------------- */
/* ----------------------------------------------------------- */
/* 基本コンテンツ                                              */
/* ----------------------------------------------------------- */
/* TODO 名称変更 top-contents */
.main-contents{
	/* flexの50%指定の問題上、ここでは、幅についてpadding,marginセットしない。 */
	margin-bottom: 40px;
}
.main-contents > header{
	padding: 5px 10px;
	border-bottom: 2px solid black;
	
	font-size: 22px;
	line-height: 22px;
	font-weight: bold;
}
.main-contents > header > div{
	display: inline-block;
	vertical-align: bottom;
}
.main-contents > header > span[class^="icon-"]{
	display: inline-block;
	vertical-align: bottom;
	margin-right: 10px;
	font-size  : 32px;
	line-height: 32px;
}

span.bukken-b{
	display: inline-block;
	
	padding: 3px 5px 1px;
	margin-left: 10px;
	border-radius: 2px;
	background-color: #5cb4d9; /* TODO テンプレート色設定 */
	
	color      : white;
	font-size  : 18px;
	line-height: 22px;
	font-weight: normal;
}
span.bukken-r{
	display: inline-block;
	
	padding: 3px 5px 1px;
	margin-left: 10px;
	border-radius: 2px;
	background-color: #5cb4d9; /* TODO テンプレート色設定 */
	
	color      : white;
	font-size  : 18px;
	line-height: 22px;
	font-weight: normal;
}


/* ----------------------------------------------------------- */
/* ページ内メインコンテンツ                                    */
/* ----------------------------------------------------------- */
.page-main-contents{
	/* flexの50%指定の問題上、ここでは、幅についてpadding,marginセットしない。 */
	margin-bottom: 40px;
}
.page-main-contents > header{
	padding: 5px 10px;
	border-bottom: 2px solid black;
	
	font-size: 20px;
	font-weight: bold;
}
.page-main-contents > header > span[class^="icon-"]:before{
	display: inline-block;
	
	width: 55px;
	height: 40px;
	
	font-size: 38px;
	line-height: 1;
	margin-right: 10px;
}
.page-main-contents .sub-title{
	margin: 20px 10px 10px;
	font-size: 18px;
	font-weight: bold;
}
.page-main-contents > header > span{
	margin-right: 10px;
	display: inline-block;
}
/* [SCREEN SP] */
@media screen and (max-width: 768px){
	.page-main-contents .sub-title{
		margin: 10px 5px 5px;
		font-size: 14px;
	}
}/* }}} /[SCREEN SP] */



/* ----------------------------------------------------------- */
/* ●【共通】物件情報シンプル                                  */
/* ----------------------------------------------------------- */
.property-simple{
	display : -webkit-box; /* Android 2～4 */
	display : -webkit-flex;
	display : -moz-flex;
	display : -ms-flex;
	display : flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: stretch;
	
}
.width-slider .property-simple{
	flex-wrap: nowrap;
	width: 260px; /* chromeで、右を突き抜けるので、ここで小さい幅にすることで問題を回避 */
}
.property-simple > li{
	flex: 0 0 240px;
	margin: 10px 10px 0 0;
	padding: 5px;
	border: 1px solid #cccccc;
	
	box-sizing: border-box;
}
/* 物件画像表示部 */
.property-simple > li > .thumbnail-image{
	position: relative;
	display: block;
	float: none;
	width : 240px;
	height: 180px;
	margin-bottom: 15px;
	
	text-align: center;
	vertical-align: middle
}
.property-simple .thumbnail-image a{
	display: block;
	position: absolute; /* + for link color */
	left: 0;
	top:0;
	right:0;
	bottom:0;
}
.property-simple .thumbnail-image a:hover:after{ /* box link color */
	content: "";
	display: block;
	position: absolute;
	left: 0;
	top:0;
	right:0;
	bottom:0;
	z-index: 2;
	background-color: #000000;
	opacity: 0.1;
}
.property-simple .thumbnail-image > a > img{
	position: absolute;
	left: 0;
	top:0;
	right:0;
	bottom:0;
	
	margin: auto; /* 中央寄せ */
	display :block;
	
	max-width : 240px;
	max-height: 180px;
}

/* 物件情報部 */
.property-simple > li > dl.bukken-info{
	display: block;
	font-size: 16px;
	line-height: 20px;
}
.property-simple > li > dl.bukken-info:after{
	display: block;
	content: '';
	clear:both;
}
.property-simple dl.bukken-info > dt{
	display: block;
	float: left;
	clear: both;
	
	margin-right: 5px;
	
	font-size: 14px;
	line-height: 24px;
}
.property-simple dl.bukken-info > dt a{
	font-weight: bold;
	text-decoration: none;
}
.property-simple dl.bukken-info > dt a:hover{
	text-decoration: underline;
}
.property-simple dl.bukken-info > dd{
	display: block;
	float: left;
}
.property-simple dl.bukken-info > dd + dd{
	clear: both;
}
.property-name.property-name.property-name.property-name{
	font-size  : 18px;
	font-weight: bold;
	line-height: 22px;
	clear: both;
}
.property-name.property-name.property-name.property-name > a{
	text-decoration: none;
}
.property-name.property-name.property-name.property-name > a:hover{
	text-decoration: underline;
}
.price-strong.price-strong.price-strong.price-strong{
	font-size: 18px;
	line-height: 24px;
	color: #dd0000;
	font-weight: bold;
}
.price-strong.price-strong.price-strong.price-strong:not( .rent-price ) > span:nth-of-type(2){
	font-size: 12px;
	font-weight: normal;
}
.price-strong.price-strong.price-strong.price-strong > span:nth-of-type(3){
	color: black;
	font-size  : 14px;
	font-weight: normal;
}

/* [SCREEN SP] */
@media screen and (max-width: 768px){
	.property-simple{
		justify-content: center;
	}
	.property-simple > li{
		flex: 0 1 100%;
		
		display : -webkit-box; /* Android 2～4 */
		display : -webkit-flex;
		display : -moz-flex;
		display : -ms-flex;
		display : flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		align-items: stretch;
		
		margin: 5px 5px 0;
	}
	.property-simple > li > .property-name{
		flex: 1 1 100%;
		order: 1;
		text-align: left;
	}
	.property-simple > li > dl.bukken-info{
		flex: 1 1 60%;
		order: 3;
		font-size: 12px;
		line-height: 16px;
		padding-left: 3px;
		
		box-sizing: border-box;
	}
	.property-simple > li > .thumbnail-image{
		flex: 1 1 40%;
		order: 2;
		width: auto;
		height: auto;
		margin: 0;
	}
	.property-simple .thumbnail-image > a{
		position: static;
	}
	.property-simple .thumbnail-image > a > img{
		position: static;
		max-width : 100%;
		max-height: 180px;
		width: auto;
		height: auto;
	}
}/* }}} /[SCREEN SP] */





/* ----------------------------------------------------------- */
/* ●【共通】物件情報一覧用                                    */
/* ----------------------------------------------------------- */
.property-list-one{
	display: block;
}
.property-list-one > li{
	border: 2px solid #cccccc;
	padding: 5px;
	
	margin: 20px 0;
}
table.room-list{
	width: 100%;
	border-collapse: separate;
	border-spacing : 3px;
}
table.room-list > thead > tr > th{
	padding: 2px 0;
	background-color: #999999;
	
	font-size  : 14px;
	font-weight: normal;
	color: white;
	text-align: center;
}
table.room-list > thead > tr.sub-title > th{
	padding: 5px;
	
	background-color: white;
	
	color: black;
	font-size: 20px;
	font-weight: bold;
	text-align: left;
}
table.room-list > tbody > tr > td{
	/* 170111 padding: 5px 0; */
	border-bottom: 1px solid #cccccc;
	background-color: white;
	
	font-size  : 16px;
	font-weight: normal;
	color: black;
	text-align: center;
}
table.room-list > tbody:last-of-type > tr > td{
	border-bottom-width: 0;
}
/* ボタン部分 */
table.room-list > tbody > tr > td.button-area > * {
	margin: 0 auto 3px;
	line-height: 1.4;
	display: inline-block;
}
table.room-list > tbody > tr > td.button-area{
	padding: 0;
}
/* 一覧のチェックボックスの設定 */
table.room-list td[data-column="bulk-chekbox"],
table.room-list td[data-column="multi-function"]{
	text-align: center !important;
}
table.room-list td[data-column="bulk-chekbox"] .rach,
table.room-list td[data-column="multi-function"] .rach{
	display: inline-block;
}
table.room-list td[data-column="bulk-chekbox"],
table.room-list td[data-column="multi-function"]{
	width: 40px;
}
table.room-list > tbody > tr > td.align-left{
	text-align: left;
}

.room-info{
	display : -webkit-box; /* Android 2～4 */
	display : -webkit-flex;
	display : -moz-flex;
	display : -ms-flex;
	display : flex;
	flex-wrap: nowrap;
	justify-content: flex-start;
	align-items: stretch;
}
.room-info > div.room-list{
	flex: 0 1 100%;
}
.room-info > .room-action{
	flex: 1 1 250px;
}


.property-list-one .member_bukken > a.hidden-bukken-info{
	background: url(/img/bukken_list/member_b_img.png);
	display: block;
	height: 269px;
}
.property-list-one .building-info{
	display: table;
	width: 100%;
}
.property-list-one .building-info > div.thumbnail-image{
	display: table-cell;
	vertical-align: middle;
	width: 260px;
	text-align: center;
}
.property-list-one .building-info > div.thumbnail-image img{
	max-width: 260px;
	max-height: 195px;
}
.property-list-one .building-info > dl{
	display: table-cell;
	vertical-align: top;
	padding: 5px 10px;
}
.property-list-one .building-info > dl > dt{
	font-size: 19px;
	font-weight: bold;
	text-decoration: none;
	line-height: 19px;
}
.property-list-one .building-info > dl > dd{
	margin-top: 5px;
	padding: 5px;
	background-color: #eeeeee;
	font-size: 14px;
}
.property-list-one .building-info > dl > dd b{
	font-size: 16px;
}
.property-list-one .building-info > dl > dd.staff-message{
	background-color: white;
	word-break: break-all; /* 長いURLなどが折り返れるように */
}
ul.one-info{
}
ul.one-info > li{
	display : -webkit-box; /* Android 2～4 */
	display : -webkit-flex;
	display : -moz-flex;
	display : -ms-flex;
	display : flex;
	flex-wrap: nowrap;
	justify-content: flex-start;
	align-items: flex-start;
	
	padding: 0 20px 5px 0;
}
ul.one-info > li:before{
	content: attr(aria-label);
	display: block;
	padding: 3px;
	margin-right: 10px;
	
	background-color: #999999;
	color: white;
	font-size:12px;
}
ul.one-info.width-list > li {
	float: left;
}
ul.one-info.width-list:after{
	content: "";
	display: block;
	clear: both;
}
.kodawari-info{
	display: inline-block;
	margin: 2px;
	min-width: 127px;
	width: 17.5%;
	
	padding: 2px 4px;
	border: 1px solid silver;
	border-radius: 2px;
	background-color: white;
	
	color: silver;
	font-size: 14px;
	text-align: center;
}
.kodawari-info.kodawari-on{
	border-color:#008BCA;
	background-color: #008BCA;
	color: white;
}

/* [SCREEN PC] */
@media print, screen and (min-width: 769px){
	/* PC版は、部屋一覧に間取り画像を表示しない */
	.property-list-one table.room-list > tbody > tr:nth-of-type(odd){
		display: none;
	}
	.property-list-one .building-info > div[data-column="property-name"]{
		display: none;
	}
	.property-list-one .building-info > dl > dd b,
	ul.one-info > li.info-list > div > div > b{
		font-size: 16px;
	}
	ul.one-info > li.info-main{
		font-size: 14px;
	}
	.property-list-one table.room-list .link-button,
	.property-list-one table.room-list button,
	.property-list-one table.room-list input[type="button"],
	.property-list-one table.room-list input[type="submit"]{
		min-width: 100px;
	}
	/* 幅設定 */
	table.room-list > tbody > tr > td{
		width: 50px;
	}
	table.room-list > tbody > tr > td[data-column="kyo_kan_hi"],
	table.room-list > tbody > tr > td[data-column="shikikin"],
	table.room-list > tbody > tr > td[data-column="reikin"],
	table.room-list > tbody > tr > td[data-column="price"]{
		width: 100px;
	}
	table.room-list > tbody > tr > td[data-column="madori"],
	table.room-list > tbody > tr > td[data-column="menseki"]{
		width: 80px;
	}
	table.room-list > tbody > tr > td[data-column="detail"],
	table.room-list > tbody > tr > td[data-column="add_favorite"]{
		width: 120px;
	}

}
/* /[SCREEN PC] */
/* [SCREEN SP] */
@media screen and (max-width: 768px){
	.property-list-one > li{
		padding: 0;
	}
	table.room-list > thead{
		display: none;
	}
	table.room-list > tbody{
		display : -webkit-box; /* Android 2～4 */
		display : -webkit-flex;
		display : -moz-flex;
		display : -ms-flex;
		display : flex;
		flex-wrap: nowrap;
		justify-content: flex-start;
		align-items: stretch;
		position: relative;
	}
	table.room-list > tbody:after{
		content: "";
		display: block;
		position: absolute;
		right: 5px;
		top: calc( 50% - 7px );
		
		width : 8px;
		height: 8px;
		
		background-color: transparent;
		border-top: 2px solid black;
		border-right: 2px solid black;
		
		transform: rotate(45deg);
	}
	table.room-list > tbody > tr:nth-of-type(odd){
		display: table-cell;
		width: 140px;
	}
	table.room-list > tbody > tr:nth-of-type(odd) > td{
		display: table-cell;
		float: none;
		padding: 0;
	}
	table.room-list > tbody > tr:nth-of-type(even){
		display : -webkit-box; /* Android 2～4 */
		display : -webkit-flex;
		display : -moz-flex;
		display : -ms-flex;
		display : flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		align-items: stretch;
		
		width: auto;
		padding-left: 10px;
	}
	.property-list-one .building-info,
	table.room-list > tbody{
		border-bottom: 1px solid #cccccc;
	}
	/* 項目制御 */
	table.room-list > tbody > tr > td{
		display :block;
		float: left;
		padding: 2px 0;
		border-width: 0;
		
		font-size: 14px;
		text-align: left;
		vertical-align: middle;
	}
	/* 一括処理チェックボックスは、tr(odd)にまとめる。 */
	table.room-list > tbody > tr > td[data-column="bulk-chekbox"]{
		display: none;
	}
	/* 間取を表示 */
	table.room-list > tbody > tr > td[data-column="madori_image"]{
		width: 100px;
	}
	table.room-list > tbody > tr > td[data-column="madori_image"] img{
		max-width: 100px;
		max-height: 100px;
	}
	/* 追加ボタンなど機能系は、tr(odd)にまとめる。 */
	table.room-list > tbody > tr > td.button-area{
		display: none;
	}
	/* 物件名の表示場所操作 */
	.property-list-one .building-info > div[data-column="property-name"]{
		display: table-caption;
		padding: 10px 0 5px;
		font-size: 14px;
	}
	.property-list-one .building-info > dl > dt[data-column="property-name"]{
		display :none;
	}
	
	/* スマホ用画像サイズ */
	.property-list-one .building-info > div.thumbnail-image{
		width: 100px;
	}
	.property-list-one .building-info > div.thumbnail-image img{
		max-width: 100px;
		max-height: 75px;
	}
	/* 項目並び順 */
	table.room-list > tbody > tr{
		display : -webkit-box; /* Android 2～4 */
		display : -webkit-flex;
		display : -moz-flex;
		display : -ms-flex;
		display : flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		align-items: center;
	}
	table.room-list td:before{
		
	}
	table.room-list td[data-column="price"]{
		flex: 1 1 100%;
		order: 1;
	}
	table.room-list td[data-column="kyo_kan_hi"]{
		flex: 1 1 100%;
		order: 2;
		color: #dd0000;
	}
	table.room-list td[data-column="kyo_kan_hi"]:before{
		content: "(管理費・共益費";
		display: inline;
	}
	table.room-list td[data-column="kyo_kan_hi"]:after{
		content: ")";
		display: inline;
	}
	table.room-list td[data-column="shikikin"]{
		flex: 1 1 50%;
		order: 3;
	}
	table.room-list td[data-column="shikikin"]:before{
		content: "敷：";
		display: inline;
	}
	table.room-list td[data-column="reikin"]{
		flex: 1 1 50%;
		order: 4;
	}
	table.room-list td[data-column="reikin"]:before{
		content: "礼：";
		display: inline;
	}
	table.room-list td[data-column="image_count"]:before{
		content: "写：";
		display: inline;
		font-size: 11px;
	}
	table.room-list td[data-column="shozai_kai"]{
		order: 5;
	}
	table.room-list td[data-column="madori"]{
		order: 6;
		padding-left: 10px;
	}
	table.room-list td[data-column="menseki"]{
		order: 7;
		padding-left: 10px;
	}
	table.room-list td[data-column="image_count"]{
		order: 8;
		padding-left: 10px;
	}
	
	/* ラベルを非表示にする。 */
	ul.one-info > li:before{
		display: none;
	}
	.property-list-one .building-info > dl{
		padding: 5px;
	}
	.property-list-one .building-info > dl > dt a{
		font-size: 16px;
		line-height: 16px;
	}
	.property-list-one .building-info > dl > dd{
		margin-top: 0;
		padding: 0;
		background-color: transparent;
		font-size: 14px;
		line-height: 14px;
	}
	ul.one-info > li{
		padding: 3px 0;
	/* 沿線駅などは、最大4つあるが、1つだけの表示とする。 */
	ul.one-info > li.info-list > div > div:not( :first-of-type ){
		display: none;
	}
	}
	ul.one-info.width-list > li {
		margin-right: 10px;
	}
	
	/* 表示を上下入れ替えるため ※PC版では、棟が後のため。 */
	.property-list-one > li{
		display : -webkit-box; /* Android 2～4 */
		display : -webkit-flex;
		display : -moz-flex;
		display : -ms-flex;
		display : flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: stretch;
		
		border-width: 1px 0 0;
		margin: 0;
		border-bottom: 2px solid #5cb4d9; /* TODO テンプレート色設定 */
	}
	.property-list-one .member_bukken > a.hidden-bukken-info{
		background: url(/img/bukken_list/member_s_img.png);
		display: block;
		height: 228px;
		width: 327px;
	}
	/* 棟情報を最初に持ってくる */
	.property-list-one > li > .building-info{
		flex: 1 1 100%;
		order: 1;
	}
	/* 部屋一覧は、棟の後にする */
	.property-list-one > li > table.room-list{
		flex: 1 1 100%;
		order: 2;
	}
}/* }}} /[SCREEN SP] */






/* ----------------------------------------------------------- */
/* 詳細画面用                                                  */
/* ----------------------------------------------------------- */
.bukken-icon{
	display: inline-block;
	vertical-align: text-bottom;
}
.bukken-icon > span{
	display: inline-block;
	margin: 0 3px;
	padding: 3px 10px;
	background-color: silver;
	
	font-size: 10px;
	color: white;
	vertical-align: middle;
}
.bukken-icon > .newest-icon{
	background-color: #dd0000;
}
.bukken-icon > .bk-sbt-icon{
	background-color: #1932af;
}
.bukken-comment{
	font-size: 16px;
	padding: 10px 15px;
}
.catch-comment{
	font-size: 21px;
	font-weight: bold;
}
.point-comment{
}

table.detail-table{
	width: 100%;
	margin: 10px auto;
	border-left: 1px solid #bbbbbb;
	border-right: 1px solid #bbbbbb;
}
table.detail-table > caption{
	padding: 10px 0;
}
table.detail-table > caption > div{
	float: left;
	color: #5cb4d9; /* TODO テンプレート色設定 */
	font-size: 24px;
	font-weight: bold;
}
table.detail-table > caption > span{
	float: right;
}
table.detail-table > caption > span > span{
	display: inline-block;
	margin: 0 5px;
}
table.detail-table > caption:after{
	content: "";
	display: block;
	clear: both;
}

table.detail-table > tbody{
	border-top: 1px solid #bbbbbb;
}
table.detail-table > tbody > tr > th{
	width: 165px;
	min-width: 165px;
	padding: 8px 0 8px 10px;
	background-color: #ededeb;
	border-bottom: 1px solid #bbbbbb;
	
	vertical-align: top;
	font-size: 16px;
	font-weight: normal;
	color: black;
}
table.detail-table > tbody > tr > td{
	width: 50%;
	padding: 5px 0 5px 10px;
	background-color: white;
	border-bottom: 1px solid #bbbbbb;
	
	vertical-align: top;
	font-size: 16px;
}
table.detail-table.th-widh-100 > tbody > tr > td{
	width: 270px;
}
table.detail-table > tbody > tr > td .detail-text{
	font-size: 16px;
}
table.detail-table.one-column > tbody > tr > td{ /* 店舗詳細などでは、tdとの幅を大きく */
	width: auto;
}

/* #19669 サイドメニューがあるため、IEの場合、画面幅が狭いと崩れるため調整 */
table.detail-table.th-widh-100 > tbody > tr > th{
	width: auto;
	min-width: 60px;
	font-size: 14px;
}
table.detail-table > tbody > tr > td > span.price-red-strong{
	color: #dd0000;
	font-weight: bold;
}

/* 物件へのお問い合わせについての表示 */
.contact-bukken-area{
	display : -webkit-box; /* Android 2～4 */
	display : -webkit-flex;
	display : -moz-flex;
	display : -ms-flex;
	display : flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: flex-start;
	
	/* akiya #19549 物件詳細サイドメニュー表示のため
	width: 870px;
	*/
	width: 860px;
	margin: 5px auto;
	padding: 10px;
	border: 2px solid silver;
	box-sizing: border-box;
	border-radius: 2px;
	font-size: 16px;
	background-color: #f0f0f0;
}
.contact-bukken-area > div{
	width: 420px;
}
.contact-bukken-area .title-info b{
	color: #5cb4d9; /* TODO テンプレート色設定 */
}
.contact-bukken-area .title-info{
	width: 850px;
	border-bottom: 1px solid silver;
	margin-bottom: 10px;
	font-size: 18px;
	line-height: 24px;
}
.contact-bukken-area .tel-info > a{
	color: #5cb4d9; /* TODO テンプレート色設定 */
	font-size: 36px;
	line-height: 36px;
	text-decoration: none;
}
.contact-bukken-area .button-area{
	width: 850px;
	border-top: 2px solid silver;
	margin-top: 10px;
	padding-top: 10px;
}
div.map-disp{
	/* akiya #19549 物件詳細サイドメニュー表示のため
	width: 1000px;
	*/
	width: 860px;
	margin:auto;
}
div.map-disp section{
	display : -webkit-box; /* Android 2～4 */
	display : -webkit-flex;
	display : -moz-flex;
	display : -ms-flex;
	display : flex;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: stretch;
	max-width: 1000px;
	margin: 0 auto;
	margin-top: 1rem;
	flex-grow: 1;
}

.detail_img_title{
	width: 120px;
	min-width: 120px;
	padding: 8px 0 8px 10px;
	background-color: #999999;
	border-bottom: 1px solid #bbbbbb;

	vertical-align: top;
	font-size: 16px;
	font-weight: normal;
	color: white;
}
.shop-image{
	width: 870px;
	margin: 10px auto;
}
.shop-image img{
	width: 100%;
}


a.link-blue:link,
a.link-blue:visited,
.link-blue{
	color: #0000ff;
}

/* [SCREEN PC] */
@media print, screen and (min-width: 769px){
	table.detail-table.th-widh-100{
		width: 100%;
		/* akiya #19549 物件詳細サイドメニュー表示のため
		min-width: 870px;
		*/
		min-width: 860px;
	}
	table.detail-table > tbody > tr > td[colspan="3"]{
		width: 100%;
	}
	table.detail-table.th-widh-100 > tbody > tr > td[colspan="3"]{
		width: 705px;
	}
	/* PC版は、部屋一覧に間取り画像を表示しない */
	.madori-photo{
		display: none;
	}
}
/* /[SCREEN PC] */
/* [SCREEN SP] */
@media screen and (max-width: 768px){
	.main-contents.bukken-one-detail > header{
		padding: 5px 0;
		/* スマホ版を考慮して、連続英文字があっても改行 ただ、英文字が変なところで改行される */
		word-wrap : break-word;
		word-break: break-all;
	}
	.bukken-icon{
		display: block;
	}
	/* 一覧の場合は改行しない */
	.building-info .bukken-icon{
		display: inline-block;
	}
	/* 詳細画面用の部屋情報は、スマホでは非表示 */
	.room-info .room-list{
		display: none;
	}
	/* 物件詳細の表示順変更 */
	.bukken-data{
		display : -webkit-box; /* Android 2～4 */
		display : -webkit-flex;
		display : -moz-flex;
		display : -ms-flex;
		display : flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		align-items: flex-start;
		
		width: 100%;
	}
	.bukken-data > *{
		width: 100%;
		order : 6;
	}
	.bukken-data > .detail_img_title{
		order: 2;
	}
	.bukken-data > #image_slider{
		order: 1;
	}
	.bukken-data > .detail-table:first-of-type{
		order: 5;
	}
	.bukken-data > .bukken-detail-button-area{
		order: 3;
	}
	.bukken-data > .bukken-comment{
		order: 4
	}
	.bukken-detail-button-area{
		width: 100%;
	}
	.bukken-detail-button-area.bukken-detail-button-area > button{
		display: inline-block;
		width  : 49%;
		min-width: 0;
		min-height: 62px;
		box-sizing: border-box;
		font-size: 16px;
		vertical-align: top;
	}
	.bukken-detail-button-area.bukken-detail-button-area > button[data-func="area_research"]{
		width  : 100%;
		font-size: 21px;
		border-width: 0;
		margin: 0;
	}
	.bukken-comment{
		font-size: 12px;
		padding: 5px;
	}
	.catch-comment{
		font-size: 16px;
		font-weight: bold;
	}
	.point-comment{
	}
	
	table.detail-table{
		width: 100%;
	}
	table.detail-table caption{
		padding:0;
	}
	table.detail-table caption div{
		font-size: 18px;
	}
	table.detail-table > tbody > tr > td,
	table.detail-table > tbody > tr > th{
		font-size: 14px;
		padding: 3px;
	}
	table.detail-table.detail-table > tbody > tr > th{
		width: 80px;
		min-width: 80px;
	}
	table.detail-table.th-widh-100 > tbody > tr > th{
		width: 80px;
		min-width: 80px;
	}
	table.detail-table .kodawari-info{
		font-size: 14px;
		min-width: 97px;
		width: 42%;
	}
	/* 縦表示 
	table.detail-table{
		border-width: 0;
		width: 100%;
		box-sizing: border-box;
		display: block;
	}
	table.detail-table,
	table.detail-table > caption,
	table.detail-table > tbody,
	table.detail-table > tbody > tr,
	table.detail-table > tbody > tr > *{
		width: 100%;
		box-sizing: border-box;
		display: block;
	}
	table.detail-table.detail-table > tbody > tr > th{
		width: 100%;
		background-color: #999999;
		color: white;
		padding: 5px;
	}
	table.detail-table > tbody > tr > td{
		width :auto;
	}
	*/
	.contact-bukken-area,
	.contact-bukken-area > div{
		width: 98% !important;
		font-size: 12px;
	}
	div.map-disp{
		width: 100%;
	}
	div.map-disp section{
		flex-wrap: wrap;
	}
	.shop-image{
		width: 100%;
	}
}/* }}} /[SCREEN SP] */







/* 店舗詳細などの写真 */
.photo-explorer{
	display : -webkit-box; /* Android 2～4 */
	display : -webkit-flex;
	display : -moz-flex;
	display : -ms-flex;
	display : flex;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: stretch;
}
.photo-explorer .thumbnail-image{
	padding: 5px;
}
.photo-explorer .thumbnail-image img{
	max-width: 400px;
	max-height: 300px;
}





/* 条件一覧表示のスマホ用 */
.condition-list-box:first-of-type{
	border-top: 1px solid silver;
}
.condition-list-box{
	margin: 5px;
	border-bottom: 1px solid silver;
}
.condition-list-box > div:first-of-type{
	font-size: 16px;
	font-weight: bold;
}
.condition-list-box > div:nth-of-type(2){
	font-size: 14px;
}






/* ----------------------------------------------------------- */
/* ●【共通】入力フォーム                                      */
/* ----------------------------------------------------------- */
div.explain{
	margin: 10px 0;
	font-size: 14px;
	line-height: 21px;
}
div.explain-note{
	font-size: 12px;
}
.bottom-message{
	margin: 10px 0;
}
section.input-area-group{
	font-size: 16px;
}

section.input-area > header > label:after{
	display: block;
	float: right;
	padding: 2px 5px;
	font-size: 12px;
	line-height: 16px;
}
section.input-area > header > label.input-optional:after{
	content: "任意";
	background-color: #ddd;
	color: #777;
}
section.input-area > header > label.input-condition:after{
	content: "いずれか必須";
	background-color: #d77;
	color: white;
}
section.input-area > header > label.input-required:after{
	content: "必須";
	background-color: #d77;
	color: white;
}

/* [SCREEN PC] */
@media print, screen and (min-width: 769px){
	.input-form-area .input-area-group{
		width: 640px;
		/* margin: 0 auto;  */
	}
	.finish-form-area .input-area-group{
		width: auto;
	}
	section.input-area-group{
		display: table;
		width: 100%;
	}
	section.input-area-group > header{
		display: table-caption;
		margin-top: 50px;
		padding: 10px;
		border: 1px solid #bbbbbb;
		border-width: 1px 1px 0 0;
		
		background-color: #dddddd;
		
		font-size: 16px;
		text-align: center;
	}

	section.input-area{
		display: table-row;
		width: 100%;
	}
	section.input-area:first-of-type > *{
		border-top: 1px solid #bbbbbb;
	}
	section.input-area > *{
		border-bottom: 1px solid #bbbbbb;
	}
	section.input-area > header{
		display: table-cell;
		width: 150px;
		padding: 10px 0 0 10px;
		background-color: #dddddd;
		
		vertical-align: top;
		font-size: 16px;
	}
	section.input-area > header > label{
		display: block;
		padding: 11px 5px;
	}
	section.input-area > div{
		display: table-cell;
		width: auto;
		padding: 10px;
		border-right: 1px solid #bbbbbb;
		background-color: white;
		vertical-align: top;
	}
	section.input-area > div > span{
		display: block;
		padding: 6px 5px;
		background-color: white;
	}

}/* }}} /[SCREEN PC] */
/* [SCREEN SP] */
@media screen and (max-width: 768px){
	section.input-area > header,
	section.input-area > div{
		padding: 10px 10px 0 10px;
	}
	section.input-area > header > label:after{
		display: inline-block;
		margin-left: 10px;
		float: none;
	}
}/* }}} /[SCREEN SP] */










/* エラーメッセージ */
.error-detail {
	background-color: #ffeeee;
	border: 1px solid #dd5555;
	border-radius: 3px;
	color: #dd5555;
	font-weight: bold;
	padding: 3px 10px;
	margin: 5px;

	height: auto;
	overflow-y: auto;
	position: relative;
	top: 0;
	opacity: 1;
	transition: top 0.5s, opacity 0.5s;
}
.error-detail.width-def-fit{
	max-width: 1180px;
	margin: 5px auto;
}
.error-detail > div{
	font-size: 12px;
}
.error-detail ol li{
	margin: 3px 0 3px 20px;
	display: inline-block;
	border: 1px solid #dd5555;
	border-radius: 3px;
	padding: 3px;
	background-color: rgba( 255, 0, 0, 0.1 );
}
.error-detail ol li:hover{
	background-color: rgba( 255, 0, 0, 0.3 );
}

.error-detail a{
	color: #dd5555;
}






/* 小さいスタッフ写真の表示 */
.thumbnail-mini-image > img{
	max-width : 80px;
	max-height: 80px;
}
















/* ----------------------------------------------------------- */
/* 物件検索標準デザイン                                        */
/* ----------------------------------------------------------- */
/* 検索画面の大枠 */
.search-container-wrapper{
	/* flexの50%指定の問題上、ここでは、幅についてpadding,marginセットしない。 */
	margin-bottom: 40px;
}

.search-container-wrapper > h2{
	padding: 5px 10px;
	border-bottom: 2px solid black;
	
	font-size: 26px;
	line-height: 26px;
	font-weight: bold;
}
.search-container-wrapper > h2 > .page-title{
	display: inline-block;
	vertical-align: bottom;
}
.search-container-wrapper > h2 > span[class^="icon-"]{
	display: inline-block;
	vertical-align: bottom;
	margin-right: 10px;
	font-size  : 32px;
	line-height: 32px;
}

/* 検索エリア(ステップ区切り) */
.search-container{
}

/* ステップタイトル */
.search-container > header{
	vertical-align: middle;
	font-size: 18px;
	padding-bottom: 10px;
}
.search-container > header > .hit-status{
	font-weight: bold;
}
.search-container > header > .hit-status > .hit-count{
	display: inline-block;
	min-width: 42px;
	padding: 0 5px;
	
	color: #dd0000;
	font-size: 24px;
	text-align: right;
}


/* [SCREEN PC] */
@media print, screen and (min-width: 769px){
	.search-container{
		margin-top : 15px;
		padding: 10px;
	}
	.search-container > header > .step-box{
		display :inline-block;
		box-sizing: border-box;
		
		width: 100px;
		
		padding: 10px 0;
		margin-right: 20px;
		
		color: white;
		line-height: 18px;
		text-align: center;
	}
	.search-container > header > .hit-status{
		display: inline-block;
	}
}/* }}} /[SCREEN PC] */
/* [SCREEN SP] */
@media screen and (max-width: 768px){
	/* スマホではタイトル系はなくていい */
	.search-container > header{
		display: none;
	}
	.search-container:not( :first-of-type ){
		margin-top: 50px;
	}
	.search-container-wrapper > h2{
		padding: 10px;
		
		font-size  : 20px;
		line-height: 26px;
	}
	/* 変な改行になるのでアイコン非表示 */
	.search-container-wrapper > h2 > span[class^="icon-"]{
		display: none;
	}
}/* }}} /[SCREEN SP] */



/* さらに絞り込むボタン */
.search-container .detail-search-button-area{
	text-align: right;
}
.search-container .detail-search-button-area > input[type="button"],
.search-container .detail-search-button-area > button{
	display: inline-block;
	margin: 0;
	padding: 5px 10px;
}
/* 検索ボタン */
.search-container-wrapper .form-button-area > input[type="button"],
.search-container-wrapper .form-button-area > button{
	font-size: 22px;
	padding: 10px;
}


.bulk-button-area{
	position: relative;
}
.bulk-button-area > div{
	position: absolute;
	top: -50px;
	display: inline-block;
	padding: 0 10px 0 0;
	margin: 5px;
	border: 1px solid black;
}
.bulk-button-area > div > .bulk-title{
	position: relative;
	margin-right: 5px;
	padding: 7px;
	background-color: black;
	font-size: 14px;
	line-height: 22px;
	color: white;
	vertical-align: top;
}
.bulk-button-area > div > .bulk-title:after{
	content: "";
	position: absolute;
	left: 9px;
	bottom: -9px;
	width: 16px;
	height: 16px;
	background-color: black;
	transform: rotate( 45deg );
}
.bulk-button-area > div > *{
	display: inline-block;
}

.bulk-button-area > div.bulk-button-static{
	position: static;
	margin-bottom: -50px;
}

/* 追従機能付きフォームボタン */
.fixed-contents.form-button-area{
	text-align: center;
	padding: 20px 0;
	color: black;
}
.fixed-contents.form-button-area > input[type="button"],
.fixed-contents.form-button-area > button{
	display: inline-block;
	margin: 0;
	padding: 5px 10px;
}
.fixed-contents.form-button-area > button:not( .submit-search-button ),
.fixed-contents.form-button-area > input[type="button"]:not( .submit-search-button ){
	font-size: 16px;
	margin: 5px 10px;
}
.fixed-contents.form-button-area > .hit-status{
	display: inline-block;
	padding: 5px 20px;
	margin: 0 20px;
	
	border-left: 2px solid white;
	
	font-weight: bold;
	font-size: 16px;
}
.fixed-contents.form-button-area > .hit-status .hit-count{
	display: inline-block;
	min-width: 42px;
	padding: 0 5px;
	
	color: #dd0000;
	font-size: 24px;
	text-align: right;
	text-shadow: 1px 1px 1px white;
}
/* 非表示モード */
.fixed-contents.form-button-area.fixed-none{
	display: none;
}
/* 追従モード */
.fixed-contents.form-button-area.fixed-on{
	position: fixed;
	left: 0;
	right: 0;
	bottom : 0;
	z-index: 100;
	background-color: rgba( 0, 0, 0, 0.8 );
	color: white;
	
	animation: under-slide-in .5s 1;
	-moz-animation: under-slide-in .5s 1;
	-webkit-animation: under-slide-in .5s 1;
	transform: translate3d( 0, 0,     0 ) scale( 1   ); /* IE11で、初期値？を設定しないと表示がおかしくなり、ボタンが押せなくなる。 */
}
.fixed-contents.form-button-area.fixed-on.fixed-no-animation{
	animation: none;
	-moz-animation: none;
	-webkit-animation: none;
}

@keyframes under-slide-in {
	0%   { transform: translate3d( 0, 100px, 0 ) scale( 1.5 ); }
	50%  { transform: translate3d( 0, 0,     0 ) scale( 1.1 ); }
	100% { transform: translate3d( 0, 0,     0 ) scale( 1   ); }
}
@-webkit-keyframes under-slide-in {
	0%   { transform: translate3d( 0, 100px, 0 ) scale( 1.5 ); }
	100% { transform: translate3d( 0, 0,     0 ) scale( 1   ); }
}
@-moz-keyframes under-slide-in {
	0%   { transform: translate3d( 0, 100px, 0 ) scale( 1.5 ); }
	100% { transform: translate3d( 0, 0,     0 ) scale( 1   ); }
}


/* サイドメニュー用 */
#side_area .fixed-contents.form-button-area > .hit-status{
	border-left-width: 0;
	padding: 5px 0;
	margin : 0;
}
#side_area .fixed-contents.form-button-area{
	background-color: rgba( 0, 0, 0, 0.8 );
	margin-bottom: -10px;
	padding: 0 0 10px 0;
	color: white;
}
/* サイドメニュー用追従モード */
#side_area .fixed-contents.form-button-area.fixed-on{
	left: 40px;
	width: 300px;
	right: auto;
	margin: 0;
}
#side_area .fixed-contents-space{
	min-height: 100px;
}



/* [SCREEN SP] */
@media screen and (max-width: 768px){
	.fixed-contents.form-button-area{
		display : -webkit-box; /* Android 2～4 */
		display : -webkit-flex;
		display : -moz-flex;
		display : -ms-flex;
		display : flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: stretch;
		
		padding: 5px 0;
	}
	.fixed-contents.form-button-area > .top-text{
		flex: 0 1 100%;
		order: 1;
		padding: 0;
		font-size: 16px;
	}
	.fixed-contents.form-button-area > *:not( .top-text ){
		flex: 0 1 45%;
		order: 2;
	}
	/* フローティング中は、「詳細な条件を追加する」の表示を調整する */
	.fixed-contents.form-button-area.fixed-on {
		
	}
	.fixed-contents.form-button-area > .hit-status{
		border-width: 0;
	}
	#side_area .fixed-contents.form-button-area.fixed-on{
		left : 0;
		right : 0;
		width : auto;
	}
}/* }}} /[SCREEN SP] */


/* [SCREEN PC] */
@media print, screen and (min-width: 769px){
	.pc-display-none{
		display: none !important;
	}
}/* }}} /[SCREEN PC] */
/* [SCREEN SP] */
@media screen and (max-width: 768px){
	.smp-display-none{
		display: none !important;
	}
}/* }}} /[SCREEN SP] */

/* 印刷時のみ表示する */
.print-only-display{
	display: none;
}
@media print{
	.print-only-display{
		display: block;
	}
}

/* ----------------------------------------------------------- */
/* 2段階チェックボックス選択                                   */
/* ----------------------------------------------------------- */
.two-class-checkbox{
}
.two-class-checkbox > dl{
	display: block;
	margin-bottom: 20px;
}
.two-class-checkbox > dl > dd{
}
/* 県内をさらに分解 市に対する区など */
.two-class-checkbox > dl > dd > div:not( :empty ){
	padding: 5px 0;
	border-bottom: 1px solid #ddd;
	font-size: 18px;
}

/* 一括チェック系 */
.two-class-checkbox .bulk-child-checker > *{
	display: inline-block;
}
.two-class-checkbox .bulk-child-checker > *:first-child{
	font-size: 18px;
}
.two-class-checkbox .bulk-child-checker > *:first-child > span{
	font-size: 14px;
}
.two-class-checkbox .bulk-child-checker .bulk-title-big{
	padding: 5px 0;
	
	color: black;
	font-size: 24px;
}
.two-class-checkbox .bulk-child-checker > div.rach{
	transform: scale( 0.7 );
}


/* [SCREEN PC] */
@media print, screen and (min-width: 769px){
	.two-class-checkbox > dl{
		padding: 20px;
		border: 1px solid black;
	}
	.two-class-checkbox > dl > dt{
	}
	.two-class-checkbox > dl > dd > ul{
		display : -webkit-box; /* Android 2～4 */
		display : -webkit-flex;
		display : -moz-flex;
		display : -ms-flex;
		display : flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		align-items: stretch;
		
		margin: 5px 0 10px;
	}
	.two-class-checkbox > dl > dd > ul:after{ /* IE9以下用 */
		display: block;
		content: "";
		clear: both;
	}
	.two-class-checkbox > dl > dd > ul > li{
		white-space: nowrap;
		flex: 0 1 170px;
		float: left; /* IE9以下用 */
	}
	.two-class-checkbox > dl > dd > ul > li.width-school{
		flex: 0 1 220px;
	}
	.two-class-checkbox > dl > dd > ul > li.width-rail{
		flex: 0 1 280px;
	}
}/* }}} /[SCREEN PC] */
/* [SCREEN SP] */
@media screen and (max-width: 768px){
	.two-class-checkbox > dl > dt{
		display :block;
		padding: 5px 0 5px 5px;
		background-color: #dddddd;
		border-bottom: 1px solid #999999;
		text-align: left;
		font-weight: bold;
	}
	.two-class-checkbox > dl > dt a{
		font-size: 18px;
	}
	.two-class-checkbox > dl > dd > div:not( :empty ){
		background-color: #eeeeee;
		border-bottom: 1px solid #999999;
		padding-left: 5px;
		text-align: left;
		font-weight: bold;
	}
	.two-class-checkbox > dl > dd > ul > li{
		display: block;
		padding: 5px;
		border-bottom: 1px solid #999999;
	}
	.two-class-checkbox > dl > dd > ul > li a{
		font-size: 18px;
	}
}/* }}} /[SCREEN SP] */











/* ----------------------------------------------------------- */
/* ●【共通】変形自在入力フォーム                              */
/* ----------------------------------------------------------- */
/* 幅広バージョン */
/* [SCREEN PC] */
@media print, screen and (min-width: 769px){
	.search-container .multi-transform-input{
		margin-bottom: 20px;
	}
	.search-container .multi-transform-input > .input-pairs{
		display: table-row;
		width: 100%;
	}
	.search-container .multi-transform-input > .input-pairs:first-child > *{
		border-top: 1px solid #cccccc;
	}
	.search-container .multi-transform-input > .input-pairs > *{
		border-bottom: 1px solid #bbbbbb;
	}
	.search-container .multi-transform-input > .input-pairs > header{
		display: table-cell;
		width: 150px;
		padding: 10px 0 0 10px;
		background-color: #dddddd;
		
		vertical-align: top;
		font-size: 18px;
	}
	.search-container .multi-transform-input > .input-pairs > div{
		display: table-cell;
		width: auto;
		padding: 10px;
		border-right: 1px solid #bbbbbb;
		vertical-align: top;
	}
}/* }}} /[SCREEN PC] */
/* [SCREEN SP] */
@media screen and (max-width: 768px){
	.search-container .multi-transform-input{
		
	}
	.search-container .multi-transform-input > .input-pairs > header{
		display :block;
		
		padding: 5px 0;
		
		background-color: #dddddd;
		
		font-size: 16px;
		text-align: center;
	}
	.search-container .multi-transform-input > .input-pairs > div{
		padding: 10px 0;
		text-align: center; /* select box の中央配置 */
	}
}/* }}} /[SCREEN SP] */




/* 共通入力フォームの変形 */
.multi-transform-input div.check-group{
	margin: -5px -10px;
}
.multi-transform-input div.check-group:after{
	content: "";
	display: block;
	clear: both;
}
.multi-transform-input div.check-group:hover{
	background-color: rgba( 0, 0, 0, 0.1 );
}
.multi-transform-input div.check-group label {
	border-radius: 2px;
	border-color: #999999;
	padding: 5px;
	
	min-width: 90px;
	
	color: black;
	font-size: 14px;
	line-height: 14px;
}
/* [SCREEN PC] */
@media print, screen and (min-width: 769px){/* タップすると、hoverと同じなので、解除できないように見えてしまう。 */
	.multi-transform-input div.check-group label:hover {
		background: #008BCA;
		border-color: #008BCA;
		color: white;
	}
}

.multi-transform-input div.check-group input:checked + label,
.multi-transform-input div.check-group label {
	margin: 5px;
	min-width: 70px;
}
/* こだわり条件 */

.multi-transform-input .kodawari div.check-group input:checked + label,
.multi-transform-input .kodawari div.check-group label{
	min-width: 150px;
}
/* フリーワードなど */
.multi-transform-input input[type="text"]{
	width: 100%;
	padding: 3px 7px;
	font-size: 14px;
	border-color: #aaa;
}

/* [SCREEN SP] */
@media screen and (max-width: 768px){
	.multi-transform-input div.check-group{
		display : -webkit-box; /* Android 2～4 */
		display : -webkit-flex;
		display : -moz-flex;
		display : -ms-flex;
		display : flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		align-items: stretch;
		
		margin: 0;
	}
	.multi-transform-input div.check-group > p{
		flex: 0 1 50%;
	}
	.multi-transform-input div.check-group.smp-three-column > p{
		flex: 0 1 33%;
	}
	.multi-transform-input div.check-group input:checked + label,
	.multi-transform-input div.check-group label {
		display: block;
		margin: 5px;
		min-width: auto;
		float: none;
	}
	.multi-transform-input .kodawari div.check-group input:checked + label,
	.multi-transform-input .kodawari div.check-group label{
		min-width: 120px;
	}
}/* }}} /[SCREEN SP] */



/* サイドメニューバージョン */
.side-search-container .multi-transform-input{
	
}
.side-search-container .multi-transform-input > .input-pairs{
}
.side-search-container .multi-transform-input > .input-pairs > header{
	padding: 5px 0 0 5px;
	
	font-size  : 18px;
	font-weight: bold;
}
.side-search-container .multi-transform-input > .input-pairs > div{
	padding: 5px;
}
.side-search-container .multi-transform-input div.check-group input:checked + label,
.side-search-container .multi-transform-input div.check-group label {
	min-width: 110px;
	padding: 3px;
	margin: 0 5px 5px 0;
	border-radius: 0;
}
.side-search-container .multi-transform-input div.check-group{
	margin: 0;
}

.side-search-container .multi-transform-input label.select-cover > select{
	min-width: 110px;
	padding: 3px 30px 3px 10px;
	border-radius: 0;
}







/* ----------------------------------------------------------- */
/* 検索条件表示用                                              */
/* ----------------------------------------------------------- */
.display-search-condition{
	display : -webkit-box; /* Android 2～4 */
	display : -webkit-flex;
	display : -moz-flex;
	display : -ms-flex;
	display : flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: flex-start;
	
	background-color: #eeeeee;
}
.display-search-condition > dl{
	display : -webkit-box; /* Android 2～4 */
	display : -webkit-flex;
	display : -moz-flex;
	display : -ms-flex;
	display : flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: flex-start;
	
	margin: 5px 10px 0;
	min-width: 240px;
	font-size: 14px;
}
.display-search-condition > dl.normal-column{
	flex: 0 1 240px;
}

.display-search-condition > dl > dt{
	min-width: 60px;
	margin: 5px;
	background-color: #999999;
	
	color: white;
	text-align: center;
}
.display-search-condition > dl > dd{
	margin: 5px;
}
.display-search-condition > dl > dd > div{
	display: inline-block;
}
.display-search-condition > dl > dd > ul{
	display: inline-block;
	margin: 0 5px;
	font-size: 12px;
}
.display-search-condition > dl > dd > ul > li{
	display: inline-block;
}
.display-search-condition > dl.no-set > dd{
	color: #aaaaaa;
}
.input-area-group .display-search-condition > dl{
	min-width: 200px;
	font-size: 12px;
}
.input-area-group .display-search-condition > dl.normal-column{
	flex: 0 1 200px;
}
/* [SCREEN SP] */
@media screen and (max-width: 768px){
	.display-search-condition > dl{
		margin: 3px 3px 0;
		min-width: 140px;
		font-size: 10px;
	}
	.display-search-condition > dl.normal-column{
		flex: 0 1 140px;
	}
	.display-search-condition > dl > dt{
		width: 40px;
	}
	.display-search-condition > dl > dt,
	.display-search-condition > dl > dd{
		margin: 2px;
	}
}/* }}} /[SCREEN SP] */




/* 見つかりませんでした。 */
.not_hit_search{
	margin: 5px;
	padding: 5px;
	border: 1px solid #cccccc;
	background-color: #eeeeee;
}
.not_hit_search > div{
	color: #dd0000;
	font-size: 16px;
}







.pattern001{
	background-image: url( '/img/pattern/pattern001.png' );
}
.pattern002{
	background-image: url( '/img/pattern/pattern002.png' );
}
.pattern003{
	background-image: url( '/img/pattern/pattern003.png' );
}











/* ----------------------------------------------------------- */
/* ●PC・タブレット横                                          */
/* ----------------------------------------------------------- */
@media print, screen and (min-width: 769px){


/* ----------------------------------------------------------- */
/* 2列表示領域                                                 */
/* ----------------------------------------------------------- */
#contents .two-layer{
	display : -webkit-box; /* Android 2～4 */
	display : -webkit-flex;
	display : -moz-flex;
	display : -ms-flex;
	display : flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: stretch;
}
#contents .two-layer > .main-contents{
	flex: 0 0 50%; /* IE では、flexにcalc()が使えない */
}
.width-slider{
	overflow-x: auto;
	overflow-y: hidden; /* なぜかchromeで縦スクロールバーがvisibleでも表示されたのでhidden */
}




}/* min-width: 769px; */






.date-left{
	text-align: left;
}
.date-right{
	text-align: right;
}

/* ----------------------------------------------------------- */
/* お知らせ一覧                                                */
/* ----------------------------------------------------------- */
.news-simple{
	display: block;
	background-color: white;
}
.news-simple li{
	margin: 5px;
	border-bottom: 2px dotted #cccccc;
}
.news-simple dl > dt,
.news-simple dl > dd{
	padding: 5px;
}
.news-simple dl > dt{
	font-size: 18px;
}
.news-simple dl > dd{
	font-size: 16px;
}
/* [SCREEN PC] */
@media print, screen and (min-width: 769px){
	.news-simple dl > dt{
		width : 150px;
		float : left;
		clear : both;
		
		text-align: center;
	}
	/* タイトルと本文を縦に並べる */
	.news-simple dl > dd{
		margin-left : 160px;
	}
	.news-simple img{
		max-width: 600px;
		max-height: 400px;
	}
}/* }}} /[SCREEN PC] */
/* [SCREEN SP] */
@media screen and (max-width: 768px){
	.news-simple dl > dt,
	.news-simple dl > dd{
		display: block;
	}
	.news-simple img{
		max-width: 100%;
	}
}/* }}} /[SCREEN SP] */










/* ----------------------------------------------------------- */
/* 物件一覧種別切り替えリンク用                                */
/* ----------------------------------------------------------- */
.link-width-area{
	padding: 5px;
	font-size: 16px;
}
.link-width-area > *{
	padding: 10px;
	white-space: nowrap;
}
.link-width-area > *:before{
	content : "▼";
	display : inline-block;
	padding-right: 5px;
}







/* ----------------------------------------------------------- */
/* 地図検索切り替え用                                          */
/* ----------------------------------------------------------- */

.map-tabs{
	display: block;
	float: right;
	font-weight: normal; /* headerの中に置いているため */
}
.map-tabs li{
	display: inline-block;
}
.map-tabs li > label{
	/* border-radius: 6px; TODO 女性向け */
	border: 1px solid black;
	background-color: white;
	padding: 5px 10px;
	margin: 0 10px 0 0;
	
	color: black;
	font-size: 14px;
	
	cursor: pointer;
}
.map-tabs li > input:checked + label{
	color: white;
	border: 1px solid transparent;
	background-color: #008BCA;
}

/* 地図上の物件情報 */
.estate_box_s > table td{
	padding-left: 3px;
}

/* ----------------------------------------------------------- */
/* 地図検索用                                                  */
/* ----------------------------------------------------------- */
#map_canvas a:visited,
#map_canvas a:link{
	color:#427fed;
	text-decoration:none;
}
#map_canvas a{
	color:#333;
	font-family:Roboto,Arial;
	font-size:13px;
	background-color:white;
    -moz-user-select: text;
    -webkit-user-select: text;
    -ms-user-select: text;
    user-select: text;moz
}
#open_map{
	color:#333;
	font-size:13px;
    -moz-user-select: text;
    -webkit-user-select: text;
    -ms-user-select: text;
    user-select: text;moz
}
#open_map:visited,
#open_map:link{
	color:#427fed;
	text-decoration:none;
}
.map-disp{
	text-align:right;
}


/* 凡例 ※地図用 */
/* ----------------------------------------------------------- */
/* ●凡例                                                      */
/* ----------------------------------------------------------- */
.map-explain{
	float: right;
}
.map-explain > div{
	background-color:transparent;
	border: 1px solid #008BCA;
	display: inline-block;
	
	margin: 3px;
	padding: 3px;
	
	font-size: 14px;
	color: #222222;
}
.map-explain > div > span:first-child{
	display: block;
	float: left;
	height: 19px;
	margin-right: 6px;
	background-color: #008BCA;
	color: white;
	padding: 4px 8px;
}
.map-explain > div > div{
	float: left;
	position: relative;
	padding: 0 5px;
	margin: 2px;
}




/* ----------------------------------------------------------- */
/* 注釈                                                        */
/* ----------------------------------------------------------- */
.annotation-wrapper{
	padding: 5px;
	font-size: 12px;
}
.annotation-wrapper:after{
	content: "";
	display:block;
	clear: both;
}
.annotation-wrapper > ul{
	float: right;
}
.annotation-wrapper .annotation-red{
	color: #dd0000;
}























/* ----------------------------------------------------------- */
/* ●アニメーション関連                                        */
/* ----------------------------------------------------------- */
.success-command-white{
	animation: success-place-white 2s 1;
	-moz-animation: success-place-white 2s 1;
	-webkit-animation: success-place-white 2s 1;
}
@keyframes success-place-white {
	10%  { background-color: white;  }
	20%  { background-color: orange; }
	30%  { background-color: white;  }
	50%  { background-color: orange; }
	70%  { background-color: orange; }
}
@-webkit-keyframes success-place-white {
	10%  { background-color: white;  }
	20%  { background-color: orange; }
	30%  { background-color: white;  }
	50%  { background-color: orange; }
	70%  { background-color: orange; }
}
@-moz-keyframes success-place-white {
	10%  { background-color: white;  }
	20%  { background-color: orange; }
	30%  { background-color: white;  }
	50%  { background-color: orange; }
	70%  { background-color: orange; }
}


.flash-button{
	animation: flash-button 0.3s 1;
	-moz-animation: flash-button 0.3s 1;
	-webkit-animation: flash-button 0.3s 1;
}
@keyframes flash-button {
	50%  { transform: scale( 1.3 ); background-color: white; }
}
@-webkit-keyframes flash-button {
	50%  { transform: scale( 1.3 ); background-color: white; }
}
@-moz-keyframes flash-button {
	50%  { transform: scale( 1.3 ); background-color: white; }
}








/* [SCREEN SP] */
@media screen and (max-width: 768px){
	/* スマホでは、デバッグ情報を出さない */
	#cms_debug_dump,
	#php_debug_error{
		display: none;
	}
}/* }}} /[SCREEN SP] */








a.back-search-button{
	position: relative;
    display: inline-block;
    margin: 0 3px;
    padding: 3px 10px;
    border-radius: 3px;
    background-color: #E8F4FF;
    color: white;
    text-decoration: none;
    font-size: 12px;
    line-height: 18px;
}


ul.search-icon{
	text-align:center;
}
li.search-icon{
/* akiya
	width:33%;
*/
	width:49.6%;
	float:left;
	cursor:pointer;
	border-right: 1px solid #bbbbbb;
	border-top: 1px solid #bbbbbb;
	border-bottom: 1px solid #bbbbbb;
}
li.search-icon:last-child{
	border-right: none;
}
li.search-icon.change-search-gakku-button{
	display:none;
}
ul.search-icon:after{
	clear:both;
}
a.search-icon.link-button{
	padding:1px;
}

li.search-icon > p > span{
	display: inline-block;
	margin-bottom: 5px;
	
	font-size  : 32px;
	line-height: 48px;
}

ul.search-icon:after{
	display: block;
	content: '';
	clear: both;
}









/* ----------------------------------------------------------- */
/* 文字アニメーション                                          */
/* ----------------------------------------------------------- */
div.text-fade-in-animation {
	opacity: 0;
	transform: scale( 2 ) translate3d( 0, 0, 0 );
}
/* 表示 */
div.text-fade-in-animation.do-animation{
	opacity: 1;
	transform: scale( 1 ) translate3d( 0, 0, 0 );
	/* 消えている状態から表示する場合は、スライドが終わるまで待つ */
	transition: opacity 1s 1.5s, transform 1s 1.5s;
}

/* ----------------------------------------------------------- */
/* 特集ページ                                                  */
/* ----------------------------------------------------------- */

div#banner-img {
	position: relative;
	height: 100%;
	background-position:center center;
	background-size:cover;
	width: 100%; 
	overflow: hidden;
}
div.banner-img-in-div {
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
}
div.feature-message {
	position: absolute;
	top: 50%;
	left: 50%;
	color: white;
	text-shadow: 1px 1px 3px black;
	font-size: 36px;
	font-weight: bold;
	text-align: center;
	transform: translate(-50%, -50%);
	width: 100%;
}
div.feature-message {
	margin-top: 15px;
	font-weight: bold;
	margin-bottom: 20px;
}

/*環境によってフォント等調整*/
/*PC*/
@media print, screen and (min-width: 769px){
	div.feature-message {
		font-size: 36px;
	}
}
/*スマホ*/
@media screen and (max-width: 768px){
	div.feature-message {
		font-size: 20px;
	}
	div.feature_detail{
		font-size: 90%;
	}
}
















/* ----------------------------------------------------------- */
/* お問い合わせできないエラー用                                */
/* ----------------------------------------------------------- */
.main-contents-under-space{
	margin-bottom: 100px;
}
.no-contact-message{
	margin: 10px;
	padding: 10px;
	border: 2px solid red;
	border-radius: 5px;
	background-color: #f0f0f0;
	
	color: #dd0000;
	font-size: 14px;
	line-height: 1.5;
	font-weight: bold;
}
.no-contact-message > div{
	margin-top: 10px;
	
	color: black;
	font-size: 18px;
	font-weight: normal;
}







