@charset "utf-8";

/*=====================================================
COMMON-LAYOUT
======================================================*/

.main_slide{
	line-height: 0;
}

.slick-dotted.slick-slider
{
    margin-bottom: 0;
}

.slick-dots{
    position: absolute;
    bottom: 10px;
    left:10px;
    width: auto;
}

.slick-dots li{
    margin:0 5px 0 0;
}

.slick-dots li button{
    border:solid 3px #4e351d;
}

.slick-dots li button:before
{
    content:none;
}
.slick-dots li.slick-active button,
.slick-dots li:hover button{
    background:#4e351d;
}

/*=====================================================
INFO
======================================================*/


.vc_row.info,
section.info{
	padding: 80px 20px;
	position: relative;
}

.info_list{
	max-width: 1000px;
	margin: 0 auto 90px;
}

.info_list li{
	margin-bottom: 10px;
	font-size: 16px;
}

.info_list li.article .article_category{
	width: 90px;
	text-align: center;
	line-height: 1.2;
	padding: 5px;
	color: #FFFFFF;
	display: inline-block;
	vertical-align: middle;
	margin-right: 10px;
}
.info_list li a.cr {
    display: block;
    background: #387b4e;
    color: #fff;
    text-align: center;
    margin: 40px auto 0;
    padding: 5px 8px;
    width: 35%;
}
.info_list li .article_branch{
	margin-left: 5px;
  background: #000;
  color: #fff;
  padding: 5px;
}

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

}

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

}

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

    .vc_row.info,
	section.info{
		padding: 50px 20px;
		position: relative;
	}

	.info_list li{
		font-size: 14px;
		line-height: 2;
	}
	.info_list li .article_branch{
		font-size: 12px;
	}

}

@media screen and (max-width: 600px){
	
}
/*=====================================================
MAP
======================================================*/
.top_map_wrap{
	margin-top: 50px;
}

/*=====================================================
FEATURED ARTICLE
======================================================*/


.vc_row.featured,
section.featured{
	padding: 80px 20px 50px;
	position: relative;
	background: url("../images/top/bg_teatured.png") bottom center / cover no-repeat #387b4e;
	
	color: #FFFFFF;
}
.vc_row.featured{
	color: #000;
}
.vc_row.featured h2{
	color: #fff;
}

.feat_in{
	max-width: 1700px;
	width: 95%;
	margin: 0 auto;
}

.feat_list{
}
.feat_list.slick-initialized .slick-slide{
	padding-right: 10px;
}

.feat_list li{
	max-width: 560px;
	padding: 10px 10px 30px;
	margin-bottom: 30px;
	border: solid #fff 1px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	position: relative;
	background: #fff;
}

/*.feat_list li:last-child{
	margin-bottom: 0;
}*/

.feat_list li .txt{
	float: right;
	width: 50%;
	max-width: 400px;
	font-size: 12px;
	margin-bottom: 5px;
}

.feat_list li .img{
	float: left;
	width: 48%;
	max-width: 256px;
	height: 250px;
}
.feat_list li .img img{
	width: 100%;
	height: 100%;
	object-fit: cover;
  font-family: 'object-fit: cover;';
}

.feat_list li .txt .address{
	font-size: 12px;
	/*letter-spacing: 0.1em;*/
	/*margin-bottom: 5px;*/
}
.feat_list li .txt .address span{
	font-size: 14px;
	letter-spacing: normal;
	width: 110px;
	background: #FFFFFF;
	display: inline-block;
	padding: 5px;
	text-align: center;
	line-height: 1.2;
	margin-right: 10px;
	/*margin-bottom: 5px;*/
}

.feat_list li .txt .address:before{
	font-size: 14px;
	letter-spacing: normal;
	width: 110px;
	background: #FFFFFF;
	display: inline-block;
	padding: 5px;
	text-align: center;
	line-height: 1.2;
	margin-right: 10px;
}

.feat_list li .txt.residence .address span{
	color: #ff7300;
}

.feat_list li .txt.garden .address span{
	color: #00b575;
}

.feat_list li .txt.casa .address span{
	color: #387b4e;
}

.feat_list li .txt h6{
	font-size: 22px;
	line-height: 1.5;
	color: #387b4e;
}

.feat_list li .txt .status{
	font-size: 24px;
	letter-spacing: 0.1em;
	margin-bottom: 20px;
}

.feat_list li .copy{
	font-size: 13px;
	padding: 5px;
	background: #FFFFFF;
	color: #000000;
	clear: both;
	border: 1px solid #387b4f;
}
.feat_list_box{
	display: flex;
	align-items: center;
	justify-content: space-between;
	background: #387b4e;
	padding: 5px;
}
.feat_list_box .price{
	color: #fff;
	line-height: 1;
	margin-right: 10px;
	white-space: nowrap;
}
.feat_list_box .price span{
	font-size: 26px;
}
.feat_list .address_txt{
	color: #000;
	font-size: 12px;
	border-bottom: 1px solid #387b4e;
	margin-top: 5px;
}
.feat_list .price_box{
	border: 2px solid #00b575;
	padding: 5px 30px;
	font-size: 14px;
	color: #387b4e;
	margin-bottom: 4px;
}
.feat_list .price_box dl{
	display: flex;
	justify-content: space-between;
}
.feat_list .price_box dl:first-child{
	margin-bottom: 5px;
}
.feat_list .size_box{
	border: 1px solid rgba(0,0,0,.1);
	padding: 5px 12px;
}
.feat_list .size_box dl{
	display: flex;
	border-bottom: 1px solid rgba(0,0,0,.1);
	line-height: 2;
}
.feat_list .size_box dl:last-child{
	border-bottom: none;
}
.feat_list .size_box dl dt{
	width: 65px;
	position: relative;
}
.feat_list .size_box dl dt::after{
	content: ":";
	position: absolute;
	top: 0;
	right: 0;
}
.feat_list .size_box dl dd{
	padding-left: 10px;
}
.feat_list li .txt.residence .copy{
	border-color: #ff7300;
}
.feat_list li .txt.garden .copy{
	/*border-color: #00b575;*/
	border: none;
	margin-top: 10px;
}
.feat_list li .txt.casa .copy{
	border-color: #387b4e;
}
.feat_list li .btn_diagonal{
	clear: both;
	position: absolute;
	left: 0;
	right: 0;
	bottom: -21px;
}
#top_feat_slide .slick-list{
	padding-bottom: 20px;
}
#top_feat_slide .slick-dots li.slick-active button,
#top_feat_slide .slick-dots li:hover button{
	background: #fff;
}
#top_feat_slide .slick-dots li button::before{
	display: none;
}
#top_feat_slide .slick-dots li button{
	width: 18px;
	height: 18px;
}
#top_feat_slide .slick-next:before{
	content: url("../images/top/arrow_type_next.png");
}
#top_feat_slide .slick-prev:before{
	content: url("../images/top/arrow_type_prev.png");
}
#top_feat_slide .slick-dots li{
	background: transparent;
}


/*btn_diagonal*/
.btn_diagonal{
	line-height: 0;
	text-align: center;
	-moz-font-feature-settings: "palt";
	-webkit-font-feature-settings: "palt";
	font-feature-settings: "palt";
}
.btn_diagonal_inner{
	display: inline-block;
/*	max-width: 200px;*/
	max-width: 184px;
	width: 100%;
}
.btn_diagonal_inner_wrap{
	display: block;
	background-color: #333333;
	border: solid 1px #333333;
	transform: skewX(-21.80140948635deg);
	position: relative;
	overflow: hidden;
}
body:not(.mobile ) .btn_diagonal_inner_wrap:hover{
	text-decoration: none;
}
.btn_diagonal_inner_wrap::before{
	position: absolute;
	top: 0;
	left: 0;
	width: 0;
	height: 100%;
	content: "";
	display: block;
	background-color: #fff;
	z-index: 1;
	transition: all 0.2s ease-in-out 0s;
}
.btn_diagonal_inner_wrap::after{
	position: absolute;
	top: 50%;
	right: 0;
	width: 20px;
	height: 1px;
	background-color: #fff;
	content: "";
	z-index: 3;
	transition: all 0.2s ease-in-out 0s;
}
body:not(.mobile ) .feat_list li .img:hover ~ .btn_diagonal .btn_diagonal_inner_wrap::after,
body:not(.mobile ) .btn_diagonal_inner_wrap:hover::after{
	background-color: #333333;
}
body:not(.mobile ) .feat_list li .img:hover ~ .btn_diagonal .btn_diagonal_inner_wrap::before,
body:not(.mobile ) .btn_diagonal_inner_wrap:hover::before{
	width: 100%;
}
.btn_diagonal_inner_wrap span{
	display: block;
	font-size: 16px;
	color: #ffffff;
	height: 40px;
	line-height: 40px;
	/*line-height\0: 36px;
	padding-top\0: 4px;*/
	transform: skewX(21.80140948635deg);
	position: relative;
	z-index: 2;
	transition: all 0.2s ease-in-out 0s;
	letter-spacing: 0.05em;
}
body:not(.mobile ) .feat_list li .img:hover ~ .btn_diagonal .btn_diagonal_inner_wrap span,
body:not(.mobile ) .btn_diagonal_inner_wrap:hover span{
	color: #333333;
	font-weight: bold;
}
/*btn_diagonal//*/




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

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

}

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

}

@media screen and (max-width: 800px){
/*	.feat_list li .img {
		width: 35.273%;
	}
	.feat_list li .txt {
		width: 56.182%;
	}*/
}

@media screen and (max-width: 767px){
	.vc_row.featured{
		padding: 80px 30px 50px;
	}
	.feat_list li .txt .address{
		font-size: 12px;
	}

	.feat_list li .txt .address span{
		font-size: 12px;
		width: 80px;
	}

	.feat_list li .txt h6{
		font-size: 18px;
	}

	.feat_list li .txt .status{
		font-size: 16px;
	}

	.feat_list li .txt .copy{
		font-size: 12px;
		padding: 7px;
		border: double 3px;
	}

}

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

	.vc_row.featured h2{
		margin-bottom: 10px!important;
	}

	.feat_list li{
		max-width: 280px;
		padding: 5px 10px;
		padding-bottom: 26px;
		margin-bottom: 40px;
	}
	.feat_list li .txt{
		float: none;
		width: auto;
	}
	.feat_list li .img.vpc600{
		display: block!important;
	}

	.feat_list li .img{
		float: none;
		margin: 0 auto 5px;
		width: 100%;
		text-align: center;
		/*height: 140px;*/
		height: 256px;
	}
	.feat_list .price_box{
		padding: 2px 10px;
		margin-bottom: 2px;
		font-size: 12px;
	}
	.feat_list .price_box dl:first-child{
		margin-bottom: 2px;
	}
	.feat_list .price_box dl dd{
		white-space: nowrap;
	}
	.feat_list .size_box{
		padding: 2px 12px;
	}
	.feat_list .size_box dl{
		line-height: 1.6;
	}
	.feat_list li .txt .address{
		text-align:left;
		line-height: 1;
	}
	.feat_list li .txt.garden .address span{
		display: block;
	}

	.feat_list li .txt h6{
		text-align:center;
	}

	.feat_list li .txt .status{
		text-align:center;
	}

}
@media screen and (max-width: 420px){
	.feat_list.slick-initialized .slick-slide{
		padding-right: 0;
	}
	.feat_list li{
		max-width: 320px;
	}
	.feat_list li .txt h6 {
    text-align: left;
	}
}

@media (max-width: 374px) {
	.btn_diagonal_inner_wrap span {
		font-size: 14px;
		height: 35px;
		line-height: 35px;
		/*line-height\0: 32px;
		padding-top\0: 3px;*/
		letter-spacing: 0.02em;
	}
	.btn_diagonal_inner_wrap::after {
		width: 10px;
	}
}
@media screen and (max-width: 360px){
	.feat_list li{
		max-width: 280px;
	}
}



/*=====================================================
SEARCH
======================================================*/


.vc_row.search,
section.search{
	padding: 80px 0 0;
	position: relative;
}

.vc_row.search .area,
section.search .area{
	padding: 25px 20px 50px;
	position: relative;
	background: url("../images/top/bg_search.jpg") center center / cover no-repeat;
}

.vc_row.search .area:before,
section.search .area:before{
	content: "";
	height: 250px;
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	background: rgba(44,69,151,0.6);
}

.vc_row.search h3,
section.search h3{
	margin-bottom: 30px;
	font-size: 26px;
	letter-spacing: 0.1em;
	text-align: center;
}

.vc_row.search .area h3,
section.search .area h3{
	color: #001f65;
}
.vc_row.search .type h3,
section.search .type h3{
	color: #085500;
}

.vc_row.search .type,
section.search .type{
	padding: 80px 20px 40px;
	position: relative;
}



.area_list{
	max-width: 1280px;
	margin: 0 auto;
	position: relative;
	overflow: hidden;
}

.area_list li{
	width:31.25%;
	float: left;
	margin-right: 3.125%;
}

.area_list li:nth-child(3n){
	margin-right: 0;
}

.area_list li a{
	display: block;
	text-decoration: none;
}

.area_list li a .img{
	overflow: hidden;
	background: rgba(44,69,151,1);
}

.area_list li a .img img{
	transition: all 0.5s ease-in-out 0s;
}

.area_list li a:hover .img img{
	transform: scale(1.1);
	opacity: 0.7;
}

.area_list li a .txt{
	height: 200px;
	padding: 20px 60px;
	background: rgba(255,255,255,0.9);
	display: flex;
	flex-direction: column;
	justify-content: center;
	text-align: center;
	align-items: center;
	position: relative;
}

.area_list li a .txt:before{
	content: "";
	background: url("../images/top/arrow_area@2x.png") center center / contain no-repeat;
	height: 40px;
	width: 17px;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 15px;
	margin:auto 0;
}

.area_list li a .en{
	display: block;
	width: 100%;
}

.area_list li a .ja{
	display: block;
	width: 100%;
	padding-top: 10px;
	font-size: 26px;
	letter-spacing: 0.1em;
	
}


.type_list{
	margin: 0 -20px;
	position: relative;
	overflow: hidden;
}

.type_list li{
	width:25%;
	float: left;
	border-left: solid 1px #FFFFFF;
}

.type_list li a{
	display: block;
	text-decoration: none;
	position: relative;
	overflow: hidden;
	background: #000000;
}

.type_list li a:before{
	content: "";
	position: absolute;
	top: -1px;
	bottom: -1px;
	right: -1px;
	left: -1px;
	background: center center  / cover no-repeat;
	transition: all 0.5s ease-in-out 0s;
}

.type_list li.garden a:before{
	background-image: url("../images/top/bg_garden.jpg");
}
.type_list li.residence a:before{
	background-image: url("../images/top/bg_residence.jpg");
}
.type_list li.casa a:before{
	background-image: url("../images/top/bg_casa.jpg");
}
.type_list li.land a:before{
	background-image: url("../images/top/bg_land.jpg");
}

.type_list li a:hover:before{
	transform: scale(1.1);
	opacity: 0.7;
}
.type_list li a .txt{
	height: 31.25vw;
	max-height: 400px;
	padding: 20px 60px 20px 30px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	position: relative;
	color: #FFFFFF;
}

.type_list li a .en{
	display: block;
	width: 100%;
}

.type_list li a .ja{
	display: block;
	width: 100%;
	padding-top: 10px;
	font-size: 32px;
	letter-spacing: 0.1em;
	
}

.type_list li a .txt:before{
	content: "";
	background: url("../images/top/arrow_type.png") center center / contain no-repeat;
	height: 40px;
	width: 13px;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 15px;
	margin:auto 0;
}

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

	.type_list li a .ja{
		font-size: 26px;
	}	

}

@media screen and (max-width: 960px){
	section.search .area:before {
		height: auto;
		top: 200px;
	}
	
	.area_list li a .txt{
		height: 100px;
		padding: 20px;
	}
	.area_list li a .ja {
		font-size: 20px;
		line-height: 1.2;
	}
	
	.area_list li a .txt:before {
		height: 20px;
		width: 17px;
		right: 6px;
	}
	
	section.search.sub .area:before,
	section.search .area:before {
		height: auto;
		top: 220px;
	}
/*
	.area_list{
		max-width: 400px;
		margin-bottom: -30px;
	}

	.area_list li{
		width:auto;
		float: none;
		margin-right: 0;
		margin-bottom: 30px;
	}
	
	.area_list li a .txt{
		height: auto;
		padding: 20px 60px;
	}
	
	section.search .area:before{
		height: auto;
		top: 200px;
	}
*/
	
	
	.type_list li{
		width: auto;
		float: none;
		border-left: none;
		border-bottom: solid 1px #FFFFFF;
	}

}


/*===============//max-width: 800px===============*/
@media (max-width: 800px) {
	section.search.sub .area:before,
	section.search .area:before {
		height: auto;
		top: 210px;
	}
}
/*===============//max-width: 800px===============*/

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

	.area_list li a .ja{
		font-size: 20px;
	}
	
	section.search h3{
		font-size: 20px;
	}

	section.search h3 img{
		height: 15px;
	}

	.type_list li a .ja{
		font-size: 24px;
	}
	.info_list li a.cr{
		width: 74%;
		max-width: 195px;
	}

}

@media screen and (max-width: 600px){
	
	.type_list li a .txt{
		height: 80vw;
	}
	
	
	.area_list li a .txt{
		height: 70px;
		padding: 10px;
	}
	.area_list li a .ja {
		font-size: 14px;
		padding-top: 5px;
	}
	.area_list li a .en {
	}
	.area_list li a .en img{
		height: 10px;
		line-height: 0;
	}
	.area_list li a .txt:before {
		height: 13px;
		width: 12px;
		right: 0px;
	}
	section.search .area {
		padding: 25px 10px 50px;
	}
	section.search.sub .area:before,
	section.search .area:before {
		height: auto;
		top: 146px;
	}
	
}


/*===============//max-width: 375px===============*/
@media (max-width: 375px) {

	section.search.sub .area:before,
	section.search .area:before {
		height: auto;
		top: 142px;
	}
}
/*===============//max-width: 375px===============*/



