@charset "utf-8";
#CAMPAIGN:has(a)
{
	height: 150px;
	max-width: 850px;
	margin: auto auto 20px auto;
}
#CAMPAIGN img
{
	object-fit: contain;
	width: 100%;
	height: 100%;
}

/* ===================================物件詳細ページ */
/* ↓共通 */
.sample{
	background-color: var(--color-lightgray);
	padding : 30px;
}
.sample *{
	color: magenta !important;
}
.content_base{
	width : 100%;
	margin : 0px auto;
}
.content_line{
	width : 100%;
	margin : 10px auto 30px auto;
	position : relative;
	padding : 30px 0px;
	border-bottom: 2px dashed var(--color-lightgray);
}
.estate h3{
	margin-bottom : 20px;
}
.estate_syubetu{
	display:-ms-flexbox;
	display:flex;
	-ms-flex-wrap:wrap;
	flex-wrap:wrap;
}
#TATOU_IMG_KUKAKUZU img {
	border: 1px solid var(--color-palegrayline);
    max-height: 500px;
}
.estate_header {
	display: grid;
	grid-template-rows: 1fr auto auto;
}
.estate_fav{
    width : 50px;
    cursor: pointer;
    text-align: center;
	position: relative;
}
.estate_fav svg{
    text-align: center;
    display: block;
    margin: auto;
    margin-bottom: 5px;
}
.estate_fav span{
    font-size : 10px;
	letter-spacing: 0;
    text-align: center;
    display: block;
    line-height: 1em;
    color: var(--color-gray);
}
.favorite .favorite_button{
	
	vertical-align: middle;
	
}
.favorite_button{
	fill: none;
	stroke: #b3b3b3;
	stroke-width: 2;
	stroke-linecap: round;
	stroke-linejoin: round;
	cursor: pointer;
	transition: stroke 0.2s ease;
	width: 30px;
	height: 30px;
}
.favorite_button:hover {
	stroke: #FF3B30; 
}
.estate_name{
    font-size: min(1.5rem, 5vw);
    line-height: 1.3em;
    width: 100%;
}
.estate_name h1
{
	color : var(--color-black);
}
.estate_content dl
{
	display: grid;
	grid-template-columns: 70px 1fr 70px 1fr;
}
.estate_content dl dd:nth-of-type(1)
{
	grid-column: 1 / -1;
}
.estate_content dl dd.dd_wide
{
	grid-column: 2 / -1;
}
.estate_content dl dt, .estate_content dl dd
{
	border-bottom: 1px var(--color-palegrayline) solid;
	padding: 5px 10px;
}
.estate_content dl dt
{
	text-align: center;
	background-color: var(--color-palegray);
}






.preference_container {
	/*max-width: 340px;*/
}
.estate_icon_tile{
	padding: 7px 15px 9px 15px;
    background-color: var(--color-palegray);
    display: inline-block;
    border-radius: 20px;
    font-weight: normal;
    line-height: 12px;
}
/*
.preference_icon_tile span {
	padding: 5px;
	line-height: 1rem;
}
.preference_icon_tile img {
	width: 30px;
	height: 30px;
	padding-left: 2px;
}
	*/

/* ↑共通 */
#ESTATE_DETAILS_NAV_WRAPPER {
    position: sticky;
    top: 80px;
    z-index: 100;
    background: var(--color-white);
	border-bottom: 1px solid var(--color-lightgray);
}
#ESTATE_DETAILS_NAV {
	display: grid;
	grid-template-columns: repeat(auto-fit,minmax(100px,1fr));
}
#ESTATE_DETAILS_NAV a{
	padding: 10px 2px;
	line-height: 1em;
	font-size: 14px;
	text-align: center;
	color: var(--color-brown);
	letter-spacing: 0;
	border-right: 1px solid var(--color-palegrayline);
	display:-ms-flexbox;
	display:flex;
	-ms-flex-wrap:wrap;
	flex-wrap:wrap;
	justify-content : center;
	align-items : center;
}
#ESTATE_DETAILS_NAV a:first-of-type{
	border-left: 1px solid var(--color-palegrayline);
}
#ESTATE_DETAILS_NAV a:hover{
    background: var(--color-palegray);
	
}

#ESTATE_OVERVIEW{
	width : 100%;
}
#ESTATE_OVERVIEW .estate_syubetu span{
	display : block;
	float : left;
	margin : 10px 10px 10px 0px;
}

h2.heading span.estate_price{
	font-size : 14px;
	margin-right : 10px;
}
#ESTATE_OVERVIEW_PRICE strong{
	font-size : min(2rem,7vw);
	letter-spacing: 0;
	display: inline-block;
	line-height: 1.1em;
	color : var(--color-black);
}
.estate_contact_btn img{
	width : 20px;
	height : 20px;
	margin-right : 5px;
}
.estate_contact_btn{
	cursor : pointer;
}
#ESTATE_MAIN_CONTENTS{
	display : -webkit-box;
	display : -webkit-flex;
	display : -ms-flexbox;
	display : flex;
	-webkit-flex-wrap : wrap;
	-ms-flex-wrap : wrap;
	flex-wrap : wrap;
	width : 100%;
}
#ESTATE_STAFF{
	display:-ms-flexbox;
	display:-webkit-flex;
	display:flex;
	-ms-flex-wrap:wrap;
	flex-wrap:wrap;
	align-items : center;
	margin : 0px 0px 20px 0px;
	width : 100%;
	
	-webkit-box-ordinal-group : 1;
	-ms-flex-order : 1;
	-webkit-order : 1;
	order : 1;
}
#ESTATE_STAFF_COMMENT{
	width : 100%;
	float : left;
	margin-top : 30px;
}
#ESTATE_STAFF_IMAGE{
	width : 100%;
	display:-ms-flexbox;
	display:-webkit-flex;
	display:flex;
	-ms-flex-wrap:wrap;
	flex-wrap:wrap;
	text-align : left;
	position : relative;
	-ms-align-items : baseline; /* IE10 */
	align-items : center;
}
#ESTATE_STAFF_IMAGE div{
	font-size : 14px;
	margin : 10px auto;
}
#ESTATE_STAFF_IMAGE .staff_photo{
	width : 60px;
	height : 60px;
	margin : 0;
	margin-right: 10px;
}
.three_column{
	display:-ms-flexbox;
	display:-webkit-flex;
	display:flex;
	-ms-flex-wrap:wrap;
	flex-wrap:wrap;
	-webkit-justify-content: center; /* Safari etc. */
	-ms-justify-content : center; /* IE10 */
	justify-content : center;
	align-items : center;
	margin : 30px auto;
}
.three_column div{
	width : calc(100% / 3 - 10px);
	text-align : center;
}
.estate_relation_link a{
	margin : 20px auto;
}
.estate_relation_link div{
	border : none;
}
.estate_relation_link div p{
	margin : 10px;
}
/* イベント情報 */
#ESTATE_EVENT{
	display:-ms-flexbox;
	display:-webkit-flex;
	display:flex;
	-webkit-justify-content: center; /* Safari etc. */
	-ms-justify-content : center; /* IE10 */
	justify-content : center;
}
#ESTATE_EVENT div{
	width : calc(100% / 4 - 20px);
	text-align : center;
	float : left;
	margin : 10px;
}
#ESTATE_EVENT div h4{
	font-weight : bold;
	font-size : 21px;
	color : var(--color-gray);
}
#ESTATE_EVENT div img{
	width :200px;
	margin : 10px;
}
#ESTATE_EVENT div p,
#ESTATE_EVENT div ul{
	text-align : left;
}
#ESTATE_EVENT div p{
	font-size : 12px;
	width : 100%;
}
.estate_link_btn{
	margin : 20px auto;
}
#ESTATE_EVENT div ul li:before {
	content : "●";
	margin-right : 5px;
	vertical-align : middle;
	line-height : 28px;
	color : var(--color-black);
}
#ESTATE_EVENT_BANNER{
	margin : 10px 0px 20px 0px;
	font-weight : bold;
}
.kakaku strong
{
	font-size : 24px;
	color: var(--color-red);
	font-weight: bold;
	padding-right: 5px;
}
#ESTATE_EVENT_BANNER img{
	width : 30px;
	margin : 0px 10px 0px 0px;
}
#ESTATE_EVENT_BANNER a{
	color : var(--color-black);
	border-bottom : 1px solid var(--color-black);
	margin : 20px;
	font-weight : normal;
	font-size : 14px;
}
#ESTATE_EVENT_BANNER a:hover{
	opacity : 0.8;
}
#EVENT_COMMENT{
	width : 100%;
	margin : 10px auto;
	padding : 20px;
	background-color: var(--color-palegray);
	border-left : 5px solid var(--color-deeporange);
}
/* ===================================画像まわり */
.estate_image_list{
	width : 100%;
	font-size: 0;
	scroll-snap-type: x mandatory;
	grid-template-columns: repeat(auto-fill, 300px);
	gap: 20px;
	padding-bottom: 20px;
}
.estate_image
{
	position: relative;
}
#SEARCH_LIST .estate_image ul
{
	display: grid;
	grid-template-columns: 4fr 2fr;
	grid-template-rows: 1fr 1fr;
	gap: 10px;
	margin-top: 12px;
	max-height: 200px;
	overflow: hidden;
    height: 100%;
}
#SEARCH_LIST .estate_image ul li
{
	border: 1px var(--color-palegrayline) solid;
	overflow: hidden;
}
#SEARCH_LIST .estate_image ul li:nth-of-type(1)
{
	grid-row: 1 / 3;
}
#SEARCH_LIST .estate_image img
{
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
#SEARCH_LIST .estate_image > div
{
	margin-top: 10px;
}
/*.estate_image {
	display: grid;
	min-width: 237px;
	min-height: 163px;
}
.estate_image img {
	position: absolute;
	height: 100%;
	width: 100%;
	box-sizing: border-box;
}
.estate_image > div
{
	max-width: 1200px;
	overflow-x: auto;
}*/
.estate_image_tile{
	width: 300px;
	max-width: 100%;
	display: inline-block;
	white-space: normal;
	vertical-align: top;
	padding: 0px;
	scroll-snap-align: start;
}
.estate_image_list .estate_image_tile:last-of-type{
	margin-right: 0;
}
.estate_image_comment{
	margin-top: 15px;
	font-size: 14px;
	line-height: 1.3em;
	text-align: left;
}
#ESTATE_IMAGE .contents_title
{
	padding : 0;
}
/*
#GALLERY{
	position : relative;
	-webkit-box-ordinal-group : 2;
	-ms-flex-order : 2;
	-webkit-order : 2;
	order : 2;
	width : 100%;
}
#ENVIRONMENT_GALLERY{
	display:-ms-flexbox;
	display:-webkit-flex;
	display:flex;
	-ms-flex-wrap:wrap;
	-webkit-flex-wrap:wrap;
	flex-wrap:wrap;
	margin : 10px auto;
}
#ESTATE_MAIN_IMAGE img{
	position : absolute;
	top : 0px;
	right : 0px;
	bottom : 0px;
	left : 0px;
	max-width: 100%;
	max-height : 100%;
	margin : auto;
	cursor : pointer;
}
*/
/* 周辺環境 */
#ENVIRONMENT_GALLERY .envitoment_tile{
	width : calc((100% - 80px) / 5);
	margin-right: 20px;
	margin-bottom: 20px;
}
#ENVIRONMENT_GALLERY .envitoment_tile:nth-of-type(5n){
	margin-right: 0px;
}
#ENVIRONMENT_GALLERY .envitoment_tile_img{
	margin-bottom : 10px;
}
#ENVIRONMENT_GALLERY .environment_normal_image:before{
	content : "";
	display : block;
	padding-top : 75%;
}
/*
#ESTATE_MAIN_IMAGE span:before{
	content : "";
	display : block;
	padding-top : 65%;
}
#ESTATE_MAIN_IMAGE span{
	width : 50%;
	display : block;
}
#ESTATE_MAIN_IMAGE{
	width : 1200px;
}
*/
#ENVIRONMENT_GALLERY .environment_comment{
	line-height: 1.3em;
	font-size: 12px;
}
#MODAL_THUMBNAIL_WRAPPER,
#THUMBNAIL_WRAPPER{
	display: flex;
	margin-top: 10px;
	align-items: center;
}
#THUMBNAIL_WRAPPER #THUMBNAIL{
	/*width: calc(100% - 80px);*/
	width: 100%;
	gap: 10px;
}
#MODAL_THUMBNAIL_WRAPPER #MODAL_THUMBNAIL{
	/*width: calc(100% - 80px);*/
	width: 100%;
}
.photo_btn_right,
.photo_btn_left{
	width : 35px;
	height : 35px;
	background-color : var(--color-black);
	position : relative;
	cursor : pointer;
	background-repeat : no-repeat;
	background-size : 25px;
	background-position : center;
	background-image : url(../img/icon_arrow_white.svg);

	display: none;
}
.photo_btn_left{
	transform: rotate(180deg);
}
#PHOTO_BTN_RIGHT{
	transform : scale(-1, 1);
}
.photo_btn_close{
	opacity : 0.2;
	pointer-events : none;
}
/* ===================================パノラマ */
#PANORAMA {
    border: 0px none;
    width: 100%;
    height: 550px;
}
/* ===================================問い合わせボタン */
.estate_contact_base{
	margin : 0px auto;
	background-color: var(--color-palegray);
	padding: 15px;
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 10px;
}
.estate_contact_base a{
	background-color: var(--color-white);
    border: 2px solid var(--color-palegrayline);
    padding: 10px;
	width : 100%;
	height : 100%;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    justify-content: center;
}
.estate_contact_base a:hover{
	background-color: var(--color-paleorange);
    border: 2px solid var(--color-deeporange);
}
.estate_contact_title{
    display: flex;
    align-items: center;
    justify-content: center;
	width : fit-content;
}
.estate_contact_title img{
	max-width : 40px;
	display: block;
	margin: auto;
}
.estate_contact_title p{
	color: var(--color-black);
	font-size : 1.5rem;
	width : fit-content;
	padding-left: 10px;
	text-align : center;
	display: block;
	margin-bottom: 5px;
	line-height: 1.3em;
}
.estate_contact_base a:hover .estate_contact_title p{
    color: var(--color-deeporange);
}
.estate_contact_title .view_branch_tel{
	white-space: nowrap;
}
.estate_contact_base div span{
	font-size : 14px;
	display: block;
	text-align : center;
	line-height: 1.3em;
	color: var(--color-gray);
}
#LOAN_LINK{
	font-size: 0.75rem;
    padding: 5px 10px;
    min-width: 0;
	letter-spacing: 0;
}
#LOAN_LINK .button_icon {
    width: 15px;
    height: 15px;
    display: inline-block;
    vertical-align: middle;
	margin-right: 5px;
}
.price{
	vertical-align: middle;
}
.loan_icon {
	fill: none;
	stroke: var(--color-gray);
	stroke-miterlimit: 10;
	stroke-width: 2px;
}
#INFORMATION td ul li{
    display: inline-block;
    font-size: 0.875rem;
    line-height: 1em;
    border: 2px solid;
    padding: 0.4em 0.6em;
    margin-bottom: 5px;
    margin-right: 5px;
    background-color: var(--color-palegray);
    border-color: var(--color-palegrayline);
    color: var(--color-black);
}
.estate_contact_base div span.contact_tenpo{
	font-size : 12px;
	color : var(--color-gray);
	display : block;
	font-weight : normal;
	line-height : 16px;
}
.long_cell{
	width : calc(100% - 150px - 0.1px) ;
}
.map_link a{
	display: block;
    float: right;
    border-radius: 50px;
    margin-right: 10px;
    border: 2px solid var(--color-palegrayline);
	color: var(--color-palered);
    font-size: 12px;
    padding: 5px 15px;
}
.map_link a:hover {
	opacity: 0.7;
}

/* ===================================MAP */
#VIEW_MAP{
	height : 300px;
	background-color : var(--color-lightgray);
	position: relative;
}
#VIEW_MAP iframe
{
	width: 100%;
	height: 100%;
}
#VIEW_MAP > a
{
	background-color: #ffffff;
	position: absolute;
	top: 10px;
	left: 10px;
	z-index: 100;
	padding: 10px;
	color: #1a73e8;
}
#VIEW_MAP > a svg
{
	width: 20px;
	position: relative;
    top: 4px;
    margin: 0px 0px 0px 5p
}
#VIEW_MAP > a svg path
{
	fill: #1a73e8;
}
#VIEW_MAP_SP{
	height : calc(100% - 100px);
	background-color : var(--color-lightgray);
}
#ENVIRONMENT{
	margin-bottom : 30px;
}
#ENVIRONMENT_MAP p{
	margin : 10px auto;
}
p.attention{
	font-size : 10px;
	line-height : 14px;
}
ul#ENVIRONMENT_MAP_LIST{
	width : 100%;
	border : 2px solid var(--color-palegrayline);
	display: grid;
	grid-template-columns: repeat(auto-fit,minmax(150px,1fr));
	gap : 10px;
	padding : 10px;
}
#ENVIRONMENT_MAP_LIST input[type="checkbox"]{
	appearance : checkbox;
}
#MAP_BTN{
	display : none;
}
#VIEW_MAP #GOOGLEMAP_BANNER,
#MW_WRAPPER #VIEW_MAP_SP #GOOGLEMAP_BANNER{
	height : 100%;
	z-index : 20;
	background-color : rgba(0,0,0,0.7);
	position : relative;
	color : var(--color-white);
	text-align : center;
	padding : 20px !important;
}
#VIEW_MAP #GOOGLEMAP_BANNER .members_registration_banner,
#MW_WRAPPER #VIEW_MAP_SP #GOOGLEMAP_BANNER .members_registration_banner{
	margin: auto !important;
	padding : 50px !important;
	width: 100% !important;
	height : 100%;
	position : relative;
	background-color: var(--color-palegray);
}
#VIEW_MAP #GOOGLEMAP_BANNER .members_registration_banner h4,
#MW_WRAPPER #VIEW_MAP_SP #GOOGLEMAP_BANNER .members_registration_banner h4{
	max-width: 500px;
	margin : auto !important;
	color: var(--color-black);
}
#VIEW_MAP #GOOGLEMAP_BANNER .members_registration_banner p,
#MW_WRAPPER #VIEW_MAP_SP #GOOGLEMAP_BANNER .members_registration_banner p{
	color: var(--color-gray);
}
#VIEW_MAP #GOOGLEMAP_BANNER #CLOSE_BANNER,
#MW_WRAPPER #VIEW_MAP_SP #GOOGLEMAP_BANNER #CLOSE_BANNER{
	position : absolute;
	top : 0;
	right : 0;
	padding : 10px 12px !important;
	font-size : 18px;
	line-height: 1em !important;
	background-color: var(--color-white);
	color : var(--color-black);
	cursor: pointer;
}
#MAP_ICON_MOBILE{
	display : none;
}
/* ===================================ローン */
#LOAN_TABLE div{
	height : auto;
}
#LOAN_OPEN_CHECK{
	display : none;
}
.loan_block{
	background-color : var(--color-palegray);
	width : calc(100% / 4 - 20px - 1px);
	float : left;
	margin : 20px 10px;
}
.view_none{
	border : none;
	border-bottom : 2px solid var(--color-palegrayline);
}
.loan_block > div{
	box-sizing : content-box;
	padding : 10px;
}
.loan_block div input{
	font-size : 2em;
	background : transparent;
	letter-spacing: 0;
}
.loan_large input{
	width : 60%
}
.loan_block div.loan_input input{
	padding : 5px;
	margin : 0px 5px;
	border : 2px solid var(--color-palegrayline);
	background-color : var(--color-white);
}
.loan_block div.loan_input input:focus {
    border: 2px solid var(--color-lightgray);
    outline: 1px solid var(--color-lightgray);
}
.loan_block div input#LOAN_HIYOU_P{
	width : 30px;
	font-size : 14px;
}
#LOAN_YEAR{
	font-size : 16px;
	padding : 5px 10px;
	width : 50%;
}
.text_hosoku{
	font-size : 12px;
}
#BLOCK_LOAN_PAY input{
	width : 200px;
	height : 44px;
	font-size : 36px;
	line-height : 44px;
	letter-spacing: 0;
}
.loan_pay{
	font-weight : bold;
	font-size : 18px;
}
.loan_fukudasi{
	color: var(--color-white);
	background-color: var(--color-black);
	text-align : center;
	margin : 5px 5px 20px 5px;
	padding : 5px;
}
.br_all{
	display : block;
	clear : both;
}
.loan_btn{
	margin : auto;
}
.wrapper_link:hover{
	background-color : rgba(255,255,255,0.2);
}
.text_link:hover{
	opacity : 0.5;
}

/* 多棟表示 */
.kukakuzu_image{
	display : block;
	height : 150px;
	width : 100%;
	overflow : hidden;
	margin-bottom: 10px;
}
.kukakuzu_image img{
	object-fit : cover;
	width : auto;
	height : 100%;
	text-align : center;
}
#TATOU_KUKAKU{
	display : flex;
}
#TATOU_KUKAKU div.kukaku_box{
	width : 200px;
	height : 100%;
	position : relative;
	margin-right : 10px;
	margin-top : 10px;
	margin-bottom : 10px;
	cursor : pointer;
	padding : 5px;
	text-align: center;
}
#TATOU_KUKAKU .button_style{
	min-width: 0;
}
.kukakuzu_image:hover{
	opacity : 0.5;
}
.plan_name{
	font-size: min(1.3rem,4vw);
    letter-spacing: 0em;
	text-align: center;
	line-height: 1.3em;
	width : 100%;
}
#TATOU_KUKAKU .button_style{
	margin-top : 10px;
	padding : 5px 30px;
}
#MODAL_ESTATE_BOX .kukaku_name{
	font-size: min(1.3rem,4vw);
	margin: 15px 0;
}
/* ===================================詳細情報テーブル */

.table_base {
	width : 100%;
	margin : 30px auto;
}
.table_base tr {
	border-bottom : 2px solid var(--color-palegrayline);
}
.table_base th {
	width : 100px;
	padding : 10px;
	padding-left: 0;
	vertical-align : middle;
	font-weight : bold;
	text-align : right;
	font-size : 0.875rem;
	color: var(--color-black);
}
.table_base td {
	min-width : calc(50% - 150px);
	padding : 10px 0px 10px 10px;
	vertical-align : middle;
}
/* スタッフ写真 */
.staff_comment_wrapper{
	padding: 15px 30px;
	background-color: var(--color-palegray);
}
.staff_comment_title{
	width: fit-content;
    background-color: var(--color-orange);
    line-height: 1.3em;
    color: var(--color-white);
    padding: 10px;
}
.staff_photo {
    width: 90px;
    height: 90px;
    border-radius: 50%;
    overflow: hidden;
    position: absolute;
    right: -20px;
    bottom: 10px;
}
.staff_photo img {
	max-height: 100%;
	max-width: none;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}
.staff_name {
    width: 100%;
    justify-content: flex-end;
    align-items: center;
    padding-right: 50px;
}
/* 会員登録バナー */


.estate .required_count{
	position : absolute;
	display : block;
	top : 0px;
	right : 0px;
}
/*GoogleMAP*/
#MODAL_OVERLAY #ENVIRONMENT_MAP .gm-svpc img{
	max-width : unset;
	max-height : unset;
}

/* ===================================お気に入り */
.favorite_entry {
	color : var(--color-red);
	background-color : var(--color-palered);
	border : solid 2px var(--color-red);
	position : absolute;
	display : inline-block;
	top : calc(100% + 15px);
	left : -15px;
	font-size : 13px;
	padding : 7px 10px;
	min-width : 260px;
	max-width : 100%;
	box-sizing : border-box;
	line-height: 1.3em;
}
#ESTATE_TOP_CONTACT .favorite_entry a{
	text-align : center;
	display : block;
	padding : 5px 0px 0px 0px;
	text-decoration : underline;
	margin : 0px auto;
	float : none;
}
.favorite_popup:after,
.favorite_entry:after{
	content : "";
	position : absolute;
	border : solid;
	border-width : 12px 10px;
	width : 20px;
	border-color : transparent transparent var(--color-red) transparent;
	top : -24px;
	left : 30px;
	margin : auto;
}
.favorite_entry span {
	display : block;
	background-color : var(--color-black);
	text-align : center;
	width : 30px;
	padding : 10px 0px;
	top : -13px;
	position : absolute;
	right : -15px;
	cursor : pointer;
}
.favorite_button{
	vertical-align: middle;
	position: static;
}
.estate_title_favorite_button{
	position : relative;
	cursor : pointer;
}

/* ===================================多棟物件モーダルウィンドウ */
#MW_KUKAKU{
	overflow-y : scroll;
	padding : 10px;
	background-color : var(--color-white);
	height : 100%;
}
#MODAL_ESTATE_BOX .estate_image_tile{
	width : 500px;
}
#MODAL_MAIN_IMG_WRAPPER{
	height : 450px;
	position: relative;
}
#MODAL_COMMENT{
	margin : 15px 0px;
	font-size : 0.875rem;
	line-height: 1.3em;
}
#CONTACT_DATE,
#CONTACT_TIME{
	display : none;
}
/* プラチナ物件 */
#BACKGROUNG_IMAGE LI{
	width : 50%;
	float : left;
	height: 40vh;
}
#BACKGROUNG_IMAGE LI SPAN{
	display : block;
	width : 100%;
	height : 100%;
	background-color : var(--color-black);
	position : relative;
	overflow : hidden;
}
#BACKGROUNG_IMAGE LI SPAN IMG{
	min-height: 100%;
	min-width: 100%;
	max-width: none;
	position : absolute;
	top : 50%;
	left : 50%;
	transform : translate(-50%, -50%);
}
#ARTICLE_TITLE{
	position : absolute;
	top: 50%;
	left: 50%;
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	z-index: 10;
	background-color: rgba(0,0,0,0.7);
	padding : 50px;
	width : calc(100% - 40px);
	max-width : 800px;
	padding-top : 30px;
}
#ARTICLE_TITLE h1{
	padding-bottom : 20px;
	margin-bottom: 20px;
	border-bottom: 1px solid var(--color-white);
}
#EYECATCH{
	position :relative;
	height: 80vh;
}
#ARTICLE_LINE_NUM{
	margin-right: 15px;
	padding-right: 15px;
	border-right: 1px solid;
}
#DIV_RESIDENCE_GALLERY.min4 UL{
	width : 1100px;
	margin : 0px auto 0px auto;
}
#DIV_RESIDENCE_GALLERY LI{
	width : 20%;
	height : auto;
	position : relative;
	cursor: pointer;
}
#DIV_RESIDENCE_GALLERY.min4 UL LI{
	width : 25%;
}
#DIV_RESIDENCE_GALLERY LI SPAN.image_residence:after{
	content : "";
	display : block;
	padding-top : 100%;
}
#DIV_RESIDENCE_GALLERY LI SPAN.image_residence{
	display : block;
	width : 100%;
	height : 100%;
	overflow : hidden;
	background-size : cover;
	background-position : 50%;
	cursor : pointer;

	text-indent : -99999px;
	
	border-width : 0px 2px 2px 0px;
	border-style : none solid solid none;
	border-color : var(--color-white);
	box-sizing : border-box;
}
#DIV_RESIDENCE_GALLERY LI SPAN SPAN{
	display : none;
}
/* 動画表示 */
#EYECATCH_MOVIE{
	width : 100%;
	clear: both;
	position :relative;
}
#EYECATCH_MOVIE:before{
	content : "";
	position : absolute;
	width : 100%;
	height : 100%;
	background-color: var(--color-black);
	background-size: cover;
	top : 0;
	left : 0;
	opacity: 1;
	transition : 0.5s;
	display: block;
	z-index: 10;
}
#EYECATCH_MOVIE.hidden_preview:before{
	opacity: 0;
}
#MOVIE_PLAY_SWITCH_BUTTON{
	cursor: pointer;
}
#MOVIE_PLAY_VOL_WRAPPER{
	position : absolute;
	z-index: 20;
	bottom : 10px;
	left: 10px;
}
#MOVIE_PLAY_VOL{
    appearance:none;
    background:rgba(255,255,255,0.5);
    height:4px;
    width:50px;
	border-radius:8px;
	opacity: 0;
}
#MOVIE_PLAY_VOL_WRAPPER:hover #MOVIE_PLAY_VOL{
	opacity: 1;
}
#MOVIE_PLAY_VOL::-webkit-slider-thumb{
	appearance:none;
	background:var(--color-white);
	height:10px;
	width:10px;
	border-radius:50%;
}
#MOVIE_PLAY_VOL::-ms-tooltip{
	display:none;
}
#MOVIE_PLAY_VOL::-moz-range-track{
	height:0;
}
#MOVIE_PLAY_VOL::-moz-range-thumb{
	background:var(--color-white);
	height:10px;
	width:10px;
	border:none;
	border-radius:50%;
}
#MOVIE_PLAY_VOL_ICON{
	width : 30px;
	height : 30px;
	background-image: url(/img/icon_vol.png);
	background-repeat: no-repeat;
	background-position: center;
	cursor: pointer;
}
#MOVIE_PLAY_VOL_SWITCH:checked + #MOVIE_PLAY_VOL_ICON{
	background-image: url(/img/icon_mute.png);
}
.inlinePlayButton{
	opacity: 0;
}
#MOVIE_SEEK_WRAPPER{
	position: absolute;
	bottom : 50px;
	width : 100%;
	z-index: 20;
}
#MOVIE_SEEK{
	width: calc(100% - 20px);
	margin: auto;
	display: block;
    background:rgba(255,255,255,0.5);
    height:4px;
	border-radius:8px;
	opacity: 0;
}
#MOVIE_SEEK_WRAPPER:hover #MOVIE_SEEK{
	opacity: 1;
}
#MOVIE_SEEK::-webkit-slider-thumb{
	appearance:none;
	background:var(--color-white);
	height:10px;
	width:10px;
	border-radius:50%;
}
#MOVIE_SEEK::-ms-tooltip{
	display:none;
}
#MOVIE_SEEK::-moz-range-track{
	height:0;
}
#MOVIE_SEEK::-moz-range-thumb{
	background:var(--color-white);
	height:10px;
	width:10px;
	border:none;
	border-radius:50%;
}
#HEADER_ESTATE_CONTACT{
	display: none;
}
#ESTATE_HEADER_LINEUP{
	background-color: var(--color-lightgray);
	background-image: linear-gradient(0deg,rgba(0,0,0,0.3),rgba(0,0,0,0.3)),url(/img/estate_sample.jpg);
	background-size: cover;
	background-position: center;
	padding: 10px;
	max-width: 650px;
	margin: auto;
}
#ESTATE_LINEUP_NAME{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	color: var(--color-white);
}
#ESTATE_LINEUP_NAME .icon_lineup_logo{
	display: block;
	width : 60px;
	height: 60px;
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
}
#ESTATE_LINEUP_NAME .lineup_text{
	width : calc(100% - 60px);
	padding-left: 15px;
}
/* ===================================類似物件 */

#SIMILAR1, #SIMILAR2, #ESTATE_RESULT
{
	width : 100%;
	display: grid;
    grid-template-columns: repeat(auto-fill,minmax(320px,1fr));
    gap: 30px;
	padding-bottom: 10px;
}
#SIMILAR1
{
	margin-top: 80px;
}
#SIMILAR2
{
	margin-top: 70px;
}

.similar_category{
	background-color : var(--color-white);
	text-align : center;
	padding : 8px 10px;
	color: var(--color-black);
	border: 2px solid var(--color-black);
}
#SIMILAR1 .similar_category{
	color: var(--color-black);
	border: 2px solid var(--color-black);
}
#SIMILAR1 .similar_category:before{
	content : "価格が近い";
	display : block;
}
#SIMILAR2 .similar_category{
	color: var(--color-orange);
	border: 2px solid var(--color-orange);
}
#SIMILAR2 .similar_category:before{
	content : "住所が近い";
	display : block;
}

#SIMILAR2 .similar_bax:last-child{
	margin : 10px 0px;
}
#SIMILAR1 .exhibition_and_sale_tile, #SIMILAR2 .exhibition_and_sale_tile{
	display: grid;
	grid-template-rows: auto 1fr;
	gap: 10px;
}
#SIMILAR1 .exhibition_and_sale_content, #SIMILAR2 .exhibition_and_sale_content{
	height: 100%;
}
#SIMILAR1 .kakaku br, #SIMILAR2 .kakaku br{
	display: none;
}
#ESTATE_RESULT .similar_category
{
	display: none;
}

/* ===================================キャンペーン */
#CAMPAIGN_IMAGE{
	width : 300px;
	display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
}
#CAMPAIGN_IMAGE img{
	width: 100%;
	height: auto;
	border : 1px solid var(--color-palegray);
}
#CAMPAIGN_TEXT{
	background-color : var(--color-palegray);
	padding : 20px;
	border-left: 5px solid var(--color-deeporange);
	margin-left : 30px;
	width : calc(100% - 350px);
}
.off{
	display : none;
}
.on{
	display : block;
}
/* 店舗情報 */
#ESTATE_SHOP #SHOP_FLOATING_NAV, #ESTATE_SHOP .contents_title 
{
	display: none;
}
/* フロートボタン */
#CV_BUTTON
{
	position: fixed;
	bottom: 0px;
	right: 0px;
	z-index: 100;

	opacity: 0;
	transform: translateY(20px);
	transition: opacity .3s, transform .3s;
}
#CV_BUTTON em
{
	display: none;
}
#CV_BUTTON a:nth-of-type(1)
{
	display: grid;
	place-items: center;
    background-color: var(--color-red);
    width: 120px;
    height: 120px;
    text-align: center;
    border-radius: 60px;
	margin: 0px 20px 20px 0px;
}
#CV_BUTTON a:nth-of-type(2)
{
	display: none;
}
#CV_BUTTON *
{
    color: var(--color-white);
	line-height: 14px;
}
#CV_BUTTON span.font_size_18
{
	display: block;
	line-height: 23px;
}
#CV_BUTTON > a:nth-of-type(1) div::after
{
	content: "▼";
	display: block;
	line-height: 14px;
}
#CV_BUTTON.show
{
  opacity: 1;
  transform: translateY(0);
}
#CV_BUTTON > a:nth-of-type(1) div span:nth-of-type(1), #CV_BUTTON > a:nth-of-type(1) div span:nth-of-type(2)
{
    font-size: 16px;
	display: block;
	line-height: 20px;
}

/* ----------------------------------------------------------------- */
/* 以下PC～タブレットサイズ */
/* 1230px～ */
/* ----------------------------------------------------------------- */
@media screen and (max-width: 1230px){
	/*
	#ESTATE_MAIN_IMAGE{
		width : 100%;
	}
	*/
	#BLOCK_LOAN_PAY input{
		font-size : 2em;
		width : 160px;
	}
	.loan_block div input{
		font-size : 1.5em;
	}
}
@media screen and (max-width: 1100px){
	#ESTATE_TATOU .table_base th{
		width : auto;
	}
}
@media screen and (max-width: 1050px){
	.preference_container {
		max-width: 430px;
	}
	.preference_icon {
		display: grid;
		grid-template-columns: repeat(2, minmax(70px, 230px));
		gap: 7px; 
	}
}
@media screen and (max-width: 980px){
	#BLOCK_LOAN_PAY input{
		font-size : 1.5em;
		width : 120px;
	}
	.tatou_contact_btn img{
		display : block;
		width : 30px;
		float : unset;
	}
	#ESTATE_TATOU table td a{
		display : block;
		overflow : hidden;
		width : 50px;
	}
	.tatou_contact_btn span{
		display : none;
	}
	#SIMILAR1,
	#SIMILAR2{
		width : 100%;
	}
	.table_base{
		margin : 20px auto;
	}
	.table_base tr{
		width : 100%;
		display:-ms-flexbox;
		display:-webkit-flex;
		display:flex;
		justify-content : center;
		-ms-flex-wrap:wrap;
		-webkit-flex-wrap:wrap;
		flex-wrap:wrap;
		border-bottom: none;
	}
	.table_base tr:first-child{
		border-top : 1px solid var(--color-palegrayline);
	}
	.table_base th{
		width : 25%;
		border-bottom: 1px var(--color-palegrayline) solid;
		padding : 10px 5px;
		display : block;
		text-align: left;
	}
	.table_base td{
		width : 75%;
		display : block;
		padding : 10px 5px;
		border-bottom: 1px var(--color-palegrayline) solid;
	}
	.estate_contact_base div a p{
		font-size : 18px;
		width: calc(100% - 40px);
		margin : 0;
		color : var(--color-black);
	}
	.estate_contact_base div span{
		font-size: 12px;
	}
	#ENVIRONMENT_GALLERY .envitoment_tile{
		width : calc((100% - 20px) / 2);
		margin-right: 20px;
		margin-bottom: 20px;
		display:-ms-flexbox;
		display:flex;
		-ms-flex-wrap:wrap;
		flex-wrap:wrap;
		-ms-align-items : center; /* IE10 */
		align-items : center;
	}
	#ENVIRONMENT_GALLERY .envitoment_tile:nth-of-type(5n){
		margin-right: 20px;
	}
	#ENVIRONMENT_GALLERY .envitoment_tile:nth-of-type(2n){
		margin-right: 0px;
	}
	#ENVIRONMENT_GALLERY .envitoment_tile_img{
		margin-bottom : 0px;
		width : 120px;
	}
	#ENVIRONMENT_GALLERY .envitoment_tile_text{
		width : calc(100% - 120px);
		padding-left: 10px;
	}
	/* フローティングボタン */
	#CV_BUTTON
	{
		width: 100%;
		background-color: rgba(0, 0, 0, 0.6);
		display: grid;
    	grid-template-columns: 1fr 1fr;
		padding: 10px;
        gap: 10px;
	}
	#CV_BUTTON em
	{
		display: inline;
	}
	#CV_BUTTON a
	{
		padding: 5px;
	}
	#CV_BUTTON a:nth-of-type(1)
	{
		width: unset;
		height: unset;
		border-radius: 0px;
		margin: 0px;
		text-align: center;
	}
	#CV_BUTTON > a:nth-of-type(1) div::after
	{
		display: none;
	}
	#CV_BUTTON a:nth-of-type(1) span:nth-of-type(1)::after
	{
		display: inline-block;
		content: "／";
	}
	#CV_BUTTON a:nth-of-type(1) span:nth-last-of-type(1)
	{
		display:none;
	}
	#CV_BUTTON a:nth-of-type(2)
	{
		display: block;
		text-align: center;
		background-color: var(--color-star_darkblue);
		line-height: 18px;
	}
	#CV_BUTTON a:nth-of-type(2) span
	{
		line-height: 12px;
		margin-top: 3px;
		display: block;
	}
	#CV_BUTTON br
	{
		line-height: 12px;
	}
	#CV_BUTTON > a:nth-of-type(1) div span:nth-of-type(1), #CV_BUTTON > a:nth-of-type(1) div span:nth-of-type(2)
	{
		display: inline;
	}
}
@media screen and (max-width: 950px){
	#ESTATE_DETAILS_NAV_WRAPPER{
		top : 65px;
	}
	#ESTATE_DETAILS_NAV{
    	grid-template-columns: repeat(auto-fit,minmax(60px,1fr));
	}
	#ESTATE_DETAILS_NAV a{
		font-size: 12px;
	}
	#SHOP_CONTACT{
		display: none;
	}
}
@media screen and (max-width: 850px){
	#ESTATE_EVENT{
		-ms-flex-wrap:wrap;
		-webkit-flex-wrap:wrap;
		flex-wrap:wrap;
	}
	#ESTATE_EVENT div{
		width : calc(100% / 3 - 20px);
	}
	#ESTATE_EVENT div#EVENT_SUMMARY{
		width : 100%;
		margin : 20px;
	}
	#SIMILAR2 .similar_bax:last-child{
		margin : 0px;
	}
	.similar_bax{
		width : calc(100% / 2 - 10px);
		margin : -1px 0px 0px -1px;
	}
	.similar_bax div{
		width : calc(60% - 20px);
		float : right;
	}
	.similar_image{
		width : 40%;
		float : left;
		margin : 0px 10px 10px 10px;
		height : calc(100% - 45px);
		position : absolute;
		top : 45px;
		bottom : 0;
		right : 0;
		left : 0;
	}
	.similar_price span{
		display : block;
		font-size : 14px;
		margin : 0px;
	}
	.similar_bax p{
		margin : 5px;
	}
	.similar_bax p.similar_price{
		padding-top : 20px;
	}
	.similar_bax:nth-child(odd){
		border-left : 2px solid var(--color-palegrayline);
	}
	.loan_block div input{
		font-size : 1em;
	}
	.loan_large input{
		width : 65%;
	}
	/* ローンシミュレーション */
	#LOAN_TABLE{
		overflow : hidden;
		margin : 0px auto 10px auto;
		width : 100%;
	}
	.text_hosoku{
		margin : 0px 10px;
	}
	.loan_block{
		width : 100%;
		margin : 10px auto;
	}
	#PAYMENT_YEARS,
	.loan_block div input{
		font-size : 1.5em;
	}
	#PAYMENT_YEARS{
		width: 73%;
	}
	.loan_large{
		text-align : right;
	}
	#LOAN_YEAR{
		float : right;
		margin : 10px 10px 20px 0px;
	}
	.loan_large input{
		width : 50%;
		text-align : center;
	}
	.br_all{
		display : none;
	}
	#LOAN_TABLE div {
		display: flex;
		width: 100%;
		flex-wrap: wrap;
	}
	#LOAN_TABLE div .loan_large{
		width: 75%;
		text-align: right;
    	display: unset;
	}
	#BLOCK_LOAN_PAY{
		text-align : center;
	}
	#BLOCK_LOAN_PAY input{
		font-size : 2em;
		width : 200px;
		text-align : center;
	}
	.loan_item_title{
		/*border-bottom : 1px solid var(--color-palegrayline);*/
		width: 25%;
		margin: auto 0px;
	}
	.loan_item_title.loan_pay,
	.loan_fukudasi{
		width: 100%;
	}
	.loan_item_title.loan_pay{
		text-align: center;
	}
	.loan_pay:nth-last-of-type(1){
		margin-top: 20px;
	}
	#LOAN_TABLE div.annotation
	{
		margin-top: 20px;
		font-size: 14px;
	}
	#LOAN_TABLE div #BLOCK_LOAN_PAY{
		display: unset;
	}
	#LOAN_TABLE div #HIYOU_TYUUSYAKU{
		width: 100%;
		text-align: right;
		display: unset;
		font-size: 12px;
		margin-top: 10px;
	}
	#BLOCK_MONTHLY_PAY,#BLOCK_BONUS_PAY,#BLOCK_LOAN_KINRI{
		margin-bottom: 10px;
	}
	#ENVIRONMENT_GALLERY p{
		width : calc(100% / 3 - 15px);
	}
	/* 類似物件 */
	#SIMILAR1{
		display: block;
		margin-top: 30px;
	}
	#SIMILAR2{
		display: block;
		margin-top: 0px;
	}
	.exhibition_and_sale_tile{
		width : 100%;
		margin-right: 0;
		display:-ms-flexbox;
		display:flex;
		-ms-flex-wrap:wrap;
		flex-wrap:wrap;
		-ms-align-items : center; /* IE10 */
		align-items : center;
		padding-bottom : 10px;
	}
	.exhibition_and_sale_image{
		width : 200px;
		margin-right: 15px;
	}
	.exhibition_and_sale_content{
		width : calc(100% - 200px - 15px);
	}
}
@media screen and (max-width: 768px){
	#CAMPAIGN
	{
		height: unset;
	}
	#CAMPAIGN:has(a)
	{
		height: unset;
	}
	.similar_price{
		font-size : 16px;
		font-weight : bold;
	}
	#ESTATE_TATOU table tr{
		display : block;
	}
	#ESTATE_TATOU table th{
		display : none;
	}
	#ESTATE_TATOU table td{
		display : inline-block;
		min-width : calc(100% / 3 - 10px);
	}
	.tatou_contact_btn{
		position : absolute;
		right : 20px;
		bottom : 30px;
	}
	#ESTATE_TATOU table tr{
		position : relative;
	}
	.similar_title:hover,
	#ESTATE_EVENT_BANNER a:hover,
	#ESTATE_TOP_CONTACT a:hover{
		opacity : 1;
	}
	#DIV_ARTICLE_LINE > div{
		width : 100%;
		text-align: center;
		border: none;
		padding : 0;
		margin: 0;
	}
	#ENVIRONMENT_GALLERY{
		overflow-y: auto;
		max-height: 408px;
		padding-right: 10px;
		margin-bottom: 30px;
	}
	#ENVIRONMENT_GALLERY .envitoment_tile{
		width : 100%;
		margin-right: 0px;
		margin-bottom: 10px;
		padding-bottom: 10px;
		border-bottom: 1px solid var(--color-lightgray);
	}
	#ENVIRONMENT_GALLERY .envitoment_tile:nth-of-type(5n){
		margin-right: 0px;
	}
	#SEARCH_LIST .estate_image
	{
		max-height: unset;
		height: 100%;
	}
	.estate_header {
		width: 100%;
		padding-left: 0;
		grid-template-rows: auto auto;
	}
}
/* ----------------------------------------------------------------- */
/* 以下モバイルサイズ */
/* 650px～ */
/* ----------------------------------------------------------------- */
@media screen and (max-width: 650px){
	#WRAPPER .estate{
		margin : 50px 0px 0px 0px;
		width : 100%;
	}
	#ESTATE_DETAILS_NAV a{
		padding : 15px 2px;
	}
	#WRAPPER .estate #BREADCRUMB{
		margin : 0px 10px;
	}
	#ESTATE_STAFF_IMAGE div{
		font-size : 12px;
	}
	#ESTATE_STAFF_IMAGE div.staff_photo{
		margin : 10px auto;
	}
	#ESTATE_STAFF{
		margin : 20px auto;
	}
	#ESTATE_EVENT_BANNER img{
		width : 25px;
	}
	#ESTATE_EVENT_BANNER a{
		padding : 10px 10px 10px 30px;
	}
	.three_column div{
		width : 100%;
	}
	.estate h3{
		margin : 10px 0px 10px 10px;
	}
	#ESTATE_EVENT_BANNER{
		margin : 10px;
		width : calc(100% - 20px);
	}
	.estate_fav{
		width: 100%;
	}
	.estate_fav > div{
		width: 100%;
		display:-ms-flexbox;
		display:flex;
		-ms-flex-wrap:wrap;
		flex-wrap:wrap;
		align-items : center;
		justify-content: right;
	}
	.estate_fav svg{
		margin: 0;
		margin-right: 0px;
		margin-bottom: 5px;
	}
	.estate_fav .favorite_entry {
		left: auto;
		right: 0px;
		max-width: 260px;
		display:-ms-flexbox;
		display:flex;
		-ms-flex-wrap:wrap;
		flex-wrap:wrap;
		align-items : center;
		justify-content: center;
	}
	.estate_fav .favorite_entry::after{
		left: auto;
		right: 30px;
	}
	#ESTATE_OVERVIEW_PRICE{
		width: 100%;
		margin-bottom: 10px;
	}
	.estate_date 
	{
		width: 100%;
	}
	#LOAN_LINK{
		display: block;
		width: fit-content;
		margin-top: 10px;
	}
	/*
	.preference_container{
  		grid-column: 1 / -1;
		max-width: 100%;
	}*/
	/* 画像 */
	#ESTATE_IMAGE_THUMBNAIL div{
		height : 90px;
	}
	#ESTATE_IMAGE_THUMBNAIL span{
		width : 120px;
	}
	.photo_btn_right, .photo_btn_left{
		height : 80px;
	}
	.estate_syubetu{
		width : 100%;
	}
	#ESTATE_TOP_CONTACT{
		display : block;
		position : relative;
		overflow : visible;
		height : 40px;
	}
	.estate_syubetu{
		position : absolute;
		bottom : -60px;
	}
	#ESTATE_EVENT_BANNER{
		margin : 0px;
		width : 100%;
	}
	#ESTATE_EVENT_BANNER a{
		display : block;
		width : 110px;
		padding : 0px;
		margin : 10px 0px;
	}
	#ESTATE_EVENT_BANNER strong{
		font-size : 18px;
	}
	#ESTATE_STAFF_COMMENT p{
		clear : both;
	}
	.estate_image {
		width: 100%;
		height: 100%;
		/*max-width: 440px;
		max-height: 330px;*/
	}
	.estate_image_list
	{
		grid-template-columns: repeat(auto-fill, 250px);
	}
	.estate_image_tile {
		width: 250px;
	}
	
	.preference_icon {
		grid-template-columns: repeat(2, minmax(70px, 300px));
		gap: 7px;
		grid-template-rows: unset;
	}
	
	/* 問い合わせボタン */
	.estate_contact_base{
		grid-template-columns: 1fr;
	}
	.estate_contact_base a{
		justify-content: start;
	}
	.estate_contact_title{
		width: 230px;
	}
	.estate_contact_base div span{
		width : calc(100% - 230px)
	}
	
	/* 物件 */
	.similar_bax{
		width : 100%;
		margin : 0px;
		border : none;
		border-bottom : 1px solid var(--color-palegrayline);
	}
	.similar_bax:first-child{
		border-top : 1px solid var(--color-palegrayline);
	}
	.similar_bax:nth-child(odd){
		border-left : none;
	}
	.similar_bax:last-child{
		border-bottom : none;
	}
	.similar_bax p.similar_price{
		position : relative;
		padding-top : 30px;
		margin : 10px 5px 5px 5px;
	}
	.similar_bax p.estate_syubetu{
		width : unset;
	}
	.similar_bax p.similar_price{
		position : static;
	}
	.similar_price span{
		display : block;
		position : absolute;
		top : 10px;
		font-weight : normal;
	}
	.similar_category{
		top : 0;
		left : 0;
		padding : 5px;
		z-index : 5;
		color : var(--color-white);
	}
	.similar_image{
		margin : 10px;
		position : relative;
		height : 150px;
		top : 0;
	}
	.exhibition_and_sale_image{
		width : 100%;
		margin-right: 0;
		margin-top: 50px;
	}
	.exhibition_and_sale_content{
		width : 100%;
	}
	/* 周辺スポットDB */
	.environment_box{
		display : block;
	}
	.environment_db_photo,
	.environment_db_text{
		width : calc(100% - 20px);
		margin : 10px;
		clear : both;
	}
	.environment_db_text h4{
		font-size : 21px;
	}
	.environment_db_text h4 span{
		font-size : 12px;
	}
	.environment_db_text p{
		margin : 5px 10px;
	}
	.environment_db_text span{
		margin : 10px auto 20px auto;
	}
	#ENVIRONMENT_DB_DESCRIPTION{
		margin : 10px auto;
		width : calc(100% - 40px);
	}
	#MW_WRAPPER #GOOGLEMAP_BANNER{
		position : absolute;
		top : 0px;
		width : 100%;
	}
	#MW_WRAPPER #GOOGLEMAP_BANNER .members_registration_banner{
		margin : 0px;
		padding : 20px;
		width : 100%;
	}
	#MW_WRAPPER #GOOGLEMAP_BANNER .members_registration_banner,
	#MW_WRAPPER #VIEW_MAP_SP #GOOGLEMAP_BANNER .members_registration_banner{
		left: 0;
		width : 100% !important;
	}
	#MW_WRAPPER #GOOGLEMAP_BANNER .members_registration_banner h4,
	#MW_WRAPPER #VIEW_MAP_SP #GOOGLEMAP_BANNER .members_registration_banner h4{
		font-size : 21px;
		padding: 0px 0px 0px 30px !important;
		background-size : 30px;
	}
	#MW_WRAPPER #GOOGLEMAP_BANNER  .members_registration_button a,
	#MW_WRAPPER #VIEW_MAP_SP #GOOGLEMAP_BANNER  .members_registration_button a{
		width : 100% !important;
		margin : 0 auto !important;
		font-size : 14px;
	}
	#MW_WRAPPER #GOOGLEMAP_BANNER .members_registration_button .member_link span,
	#MW_WRAPPER #VIEW_MAP_SP #GOOGLEMAP_BANNER .members_registration_button .member_link span{
		margin : 0;
		background-position: left top;
	}
	#MW_WRAPPER .members_registration_button .member_link li span span,
	#MW_WRAPPER #VIEW_MAP_SP .members_registration_button .member_link li span span{
		padding : 0 0 5px 1.2em  !important;
		line-height : 1.2em !important;
	}
	/*
	.gm-style-iw{
	    width: 150px;
	    height: 50px;
	}*/
	#MAP_ICON_MOBILE{
		display : inline-block;
	}
	#MAP_BTN{
		display : block;
	}
	#MAP_ICON_PC{
		display : none;
	}
	#MW_WRAPPER #ENVIRONMENT_MAP{
		display : block;
	}
	#MW_WRAPPER #ENVIRONMENT_MAP_LIST {
		display : block;
		text-align : left;
	}
	#MW_WRAPPER #ENVIRONMENT_MAP_LIST li{
		width : calc(100% / 2 - 20px);
		float : left;
		margin : 10px;
		border : 1px solid var(--color-palegrayline);
		padding : 10px;
		background-color : var(--color-white);
	}
	#MW_WRAPPER #ENVIRONMENT_MAP_LIST li input{
		margin-right : 10px;
	}
	#MW_WRAPPER #ENVIRONMENT_MAP_LIST li label{
		width : 100%;
		display : block;
	}
	#MW_WRAPPER p.attention{
		text-align : left;
		margin :10px;
	}
	
	#VIEW_BRANCH_ID{
		width : calc(100% - 20px);
		margin : 10px auto;
	}
	#MODAL_MAIN_IMG_WRAPPER{
		height : 300px;
	}
	#MW_KUKAKU .form_table_style th,
	#MW_KUKAKU .form_table_style td{
		display : table-cell;
	}
	#MW_KUKAKU .form_table_style th{
		width : 80px;
	}
	#MW_KUKAKU .form_table_style td{
		padding-left : 10px;
	}
	.estate_contact_base div a p.view_branch_tel img{
		height : 100%;
	}
	.favorite_button{
		left : 0px;
	}
	.favorite_entry{
		left : 0px;
	}
	#HEADER_ESTATE_CONTACT{
		width : calc(100% - 170px);
	}
	#CAMPAIGN_TEXT{
		width: 100%;
		margin: 20px auto;
	}
	#CAMPAIGN_IMAGE{
		width : 100%;
	}
	#CAMPAIGN_IMAGE img{
		max-width : 50%;
	}
	
	.privacy_policy input[type="checkbox"]
	{
		margin-left: 10px;
	}
}

@media screen and (max-width: 600px){
	.estate #FORM .table_base{
		margin-top : 70px;
	}
	#DIV_RESIDENCE_GALLERY LI {
		width: 25%;
	}
}
@media screen and (max-width: 550px){
	.estate .contact_tel_sp{
		border : none;
	}
	.estate .shop_data_text ul{
		margin : 0px;
	}
	.staff_comment_wrapper{
		padding : 10px;
		font-size : 14px;
	}
	.estate .staff_comment .staff_name{
		position : static;
	}
	.estate .staff_comment p{
		margin : 10px;
	}
	.staff_photo {
		width: 70px;
		height: 70px;
		right: -10px;
		bottom: 10px;
	}
	.estate_contact_title{
		width: 100%;
		justify-content: start;
	}
	.estate_contact_base a{
		background-color: var(--color-paleorange);
		border-color: var(--color-orange);
		padding: 5px;
	}
	.estate_contact_title p{
		color: var(--color-darkgray);
	}
	.estate_contact_base div span{
		display: none;
	}
}
@media screen and (max-width: 500px){
	#TH_SETUBI{
		text-align: left;
	}
	#TH_SETUBI,
	#ED_SETUBI{
		width : 100%;
	}
	#ESTATE_EVENT div{
		width : 100%;
	}
	#ESTATE_EVENT div img{
		width : 120px;
		float : left;
	}
	#ESTATE_EVENT div p{
		float : left;
		width : 60%;
	}
	#ESTATE_EVENT div h4{
		margin-bottom : 10px;
		font-size : 1em;
		background-color : var(--color-palegray);
	}
	#TATOU_KUKAKU div.kukaku_box{
		width : 150px;
	}
	#ESTATE_TATOU table td{
		display : inline-block;
		width : calc(100% / 3 - 10px);
		border : none;
		padding : 10px;
	}
	#ESTATE_TATOU table td.td_tatou_name{
		width : 100%;
		max-width : 100%;
		border-bottom : 1px solid var(--color-palegrayline);
	}
	#ESTATE_TATOU table tr{
		border : 1px solid var(--color-palegrayline);
		margin : 10px auto;
		width : calc(100% - 20px);
	}
	#ESTATE_TATOU table td a.tatou_contact_btn{
		right : 20px;
		bottom : 10px;
		width : 150px;
		background-color : var(--color-black);
		background-image : url(../img/icon_mail_white.png);
		background-repeat : no-repeat;
		background-position : 10px center;
		background-size : 20px;
	}
	.tatou_contact_btn img{
		display : none;
	}
	.tatou_contact_btn span{
		display : inline-block;
		background-color : transparent;
		padding-left : 40px;
	}
	#MW_WRAPPER #ENVIRONMENT_MAP_LIST li{
		width : calc(100% / 2);
		margin : 0px;
		border-radius : 0px;
		padding : 10px;
	}
	#ARTICLE_TITLE{
		padding : 20px;
		padding-top : 10px;
		width: calc(100% - 20px);
	}
	#EYECATCH{
		height : 70vh;
	}
	#BACKGROUNG_IMAGE LI{
		height : 35vh;
	}
	#GOOGLEMAP_BANNER .members_registration_button .member_link span{
		display : block;
	}
	
}
@media screen and (max-width: 450px){
	#HEADER_ESTATE_CONTACT{
		width : calc(100% - 140px);
		font-size : 12px;
	}
	#HEADER_ESTATE_CONTACT svg{
		display: none;
	}
	#CV_BUTTON > a:nth-of-type(1) div span:nth-of-type(1), #CV_BUTTON > a:nth-of-type(1) div span:nth-of-type(2)
	{
		font-size: 14px;
	}
}
@media screen and (max-width: 420px){
	.estate h3{
		font-size : 1.85rem;
		margin : 10px 15px 15px 15px;
	}
	#ESTATE_OVERVIEW h2{
		padding-top : 30px;
	}
	#ESTATE_HEAD{
		position : relative;
	}
	#GALLERY{
		-webkit-box-ordinal-group : 1;
		-ms-flex-order : 1;
		-webkit-order : 1;
		order : 1;
	}
	#ESTATE_STAFF{
		-webkit-box-ordinal-group : 2;
		-ms-flex-order : 2;
		-webkit-order : 2;
		order : 2;
	}
	#ESTATE_OVERVIEW h2.heading{
		font-size : 32px;
		line-height : 32px;
		margin : 15px 0px;
	}
	#ESTATE_IMAGE_THUMBNAIL span:nth-child(2){
		width : 120px;
		display : inline-block;
		box-sizing : border-box;
		max-height : none;
		position : relative;
		border : 1px solid var(--color-palegray);
		vertical-align: top;
		margin : 0px 5px;
	}
	#ESTATE_MAIN_IMAGE span,
	#ESTATE_IMAGE_THUMBNAIL span:first-child{
		width : 100%;
	}
	#ESTATE_IMAGE_THUMBNAIL span{
		margin : 0px 5px;
		border : 1px solid var(--color-palegray);
	}
	#ESTATE_IMAGE_THUMBNAIL{
		height : 85px;
	}
	#ESTATE_STAFF{
		display : block;
	}
	#ESTATE_STAFF_IMAGE{
		width : 100%;
		border : none;
	}
	#ESTATE_STAFF_COMMENT{
		width : calc(100% - 20px);
	}
	#ESTATE_STAFF_IMAGE div{
		float : right;
		margin : 10px 10px;
	}
	#ESTATE_STAFF_IMAGE div.staff_photo{
		float : right;
		margin : 5px 10px 5px 0px;
	}
	/* 周辺環境 */
	#ENVIRONMENT_GALLERY p{
		width : 100%;
		text-align : left;
		display:-ms-flexbox;
		display:-webkit-flex;
		display:flex;
		align-items : center;
		margin : 0px;
		padding : 5px 5px 5px 0px;
		border-bottom : 1px solid var(--color-palegray);
	}
	#ENVIRONMENT_GALLERY p:first-child{
		border-top : 1px solid var(--color-palegray);
	}
	#ENVIRONMENT_GALLERY p br{
		display : none;
	}
	#ENVIRONMENT_GALLERY .environment_normal_image{
		width : 120px;
		float : right;
		margin : 5px 10px 5px 5px;
		border : none;
	}
	/* ローン */
	#LOAN_BASE{
		display : none;
	}
	#LOAN_OPEN_CHECK{
		display:-ms-flexbox;
		display:-webkit-flex;
		display:flex;
		-webkit-justify-content: center; /* Safari etc. */
		-ms-justify-content : center; /* IE10 */
		justify-content : center;
		align-items : center;
		text-align : center;
		font-size : 1rem;
		margin : 30px auto 20px auto;
		padding: 10px;
		background-color: var(--color-deeporange);
		color: var(--color-white);
		cursor : pointer;
	}
	#LOAN_OPEN_CHECK img{
		width : 25px;
		margin-left : 10px;
		margin-bottom : 10px;
	}
	.estate #VIEW_BRANCH_ID{
		width : calc(100% - 20px);
		margin : auto;
	}
	/* スタッフ */
	.estate .staff_comment .staff_name{
		left : 100px;
	}
	.estate .shop_data_text dt{
		width : 100px;
	}
	.estate .shop_data_text dd{
		width : calc(100% - 100px);
	}
	.estate .staff_photo{
		width : 70px;
		height : 70px;
	}
	.estate .staff_comment{
		width : 100%;
	}
	.estate .staff_comment .staff_name{
		position : absolute;
		left : 90px;
	}
	.estate_contact_base div a p.view_branch_tel img{
		display : none;
	}
	#TATOU_KUKAKU .button_style{
		min-width: 150px;
	}
	#MODAL_ESTATE_BOX .estate_details_table th:after{
		display : none;
	}
	#MODAL_ESTATE_BOX .estate_details_table td{
		padding-right : 0px;
	}
	/* 物件写真 */
	.photo_btn_right,
	.photo_btn_left{
		width: 25px;
	}
	.est
	/*ate_image_list {
		width: calc(100% - 70px);
	}
	#THUMBNAIL_WRAPPER #THUMBNAIL{
		width: calc(100% - 50px);
	}*/
	/* cta */
	.estate_contact_title img{
		max-width: 30px;
	}
	.estate_contact_base div a p{
		width: calc(100% - 30px);
	}
	#CAMPAIGN_IMAGE img{
		max-width : 100%;
	}
}
@media screen and (max-width: 380px){
	#ESTATE_EVENT div img{
		display : none;
	}
	#ESTATE_EVENT div p{
		width : 100%;
	}
	#GOOGLEMAP_BANNER .members_registration_banner > p{
		font-size : 12px;
		padding : 0;
	}
	#GOOGLEMAP_BANNER .members_registration_button a{
		font-size : 12px;
	}
	#GOOGLEMAP_BANNER .members_registration_button .member_link li{
		margin: 5px 0;
	}
}
@media screen and (max-width: 320px){
	#ESTATE_OVERVIEW h2{
		font-size : 1.2em;
	}
	#ESTATE_TATOU table td a.tatou_contact_btn{
		right : 10px;
		bottom : 10px;
		width : 130px;
	}
	#ESTATE_TATOU table td{
		padding : 10px 5px;
	}
	.tatou_contact_btn span{
		font-size : 12px;
	}
	.similar_image{
		min-height : 180px;
	}
	#TATOU_KUKAKU div.kukaku_box{
		width : 100%;
	}
}