/**********
 style-top.css
**********/

#main{
	padding-bottom:0;
}

#footer{
	margin-top:0;
}


/**********
 topImg
**********/
#topImgWrap{
	background: linear-gradient(white 0%, #f9f8f4 0%);
	padding-bottom:20px;
}

#topImg{
	position: relative;
	overflow: hidden;
}

#topImg img{
	display:block;
	width: 100%; /* 任意の幅を指定 */
	height: 56vh; /* 任意の高さを指定 */
	object-fit: cover;
	object-position:20%;
	text-align:right;
	margin-left:auto;
	font-family:"object-fit:cover;";
}

/** topImgContens **/

#topImgContens{}

#topImgCon_com{
	color:#000;
	line-height:1.5;
	font-family: 'Noto Sans JP';
	font-weight:700;
	width:88%;
	margin:0 auto;
	padding-top:20px;
	text-align:center;
	font-size:2.2rem;
	color:#004e89;
}
#topImgCon_com span{
	display:inline-block;
}



/*==========================================
 About us
===========================================*/
/**********
 topAbout
**********/
#topAbout{
	background:#f9f8f4;
}

#topAbout .contentBgTxt{
	background:url(../img_top/bgTxt_about.png) no-repeat bottom left;
}

@media only screen and (max-width: 768px) {
	#topAbout .contentBgTxt{
		background-size:100%;
	}

}

#topAbout .contentInner{
	padding-top:76px;
	padding-bottom:40px;
}

/** topAboutTxt **/
#topAboutTxt{
	width:50%;
}

#topAboutTxt p{
	font-size:2rem;
	font-weight:bold;
	display:block;
	padding-bottom:35px;
}

#topAboutTxt a{
	margin:0 auto 0 0;
}


/** topAbouImg **/
#topAboutImg{
	width:42%;
	max-width:428px;
}

#topAboutImg img{
	width:100%;
	max-width:428px;
	margin:0 0 0 auto;
}


@media only screen and (max-width: 768px) {
	#topAbout .contentInner{
		padding-top:10px;
	}
	#topAboutTxt{
		width:100%;
		padding-bottom:30px;
	}
	#topAboutTxt p{
		font-size:1.77rem;
		font-weight:normal;
	}
	#topAboutTxt a{
		margin:0 auto;
	}
	
	#topAboutImg{
		width:100%;
		max-width:100%;
		text-align:center;
	}
	#topAboutImg img{
		margin:0 auto;
	}
}




/*==========================================
 SERVICE
===========================================*/
/**********
 topService
**********/
#topService{}

#topService .contentBgTxt{
	padding:80px 0 90px 0;
	background:url(../img_top/bgTxt_service.png) no-repeat bottom right;
}

@media only screen and (max-width: 768px) {
	#topService .contentBgTxt{
		background-size:100%;
	}
}

#topService h2{
	display:block;
	width:100%;
	max-width:1050px;
	margin:0 auto 45px auto;
	font-size:1.7em;
	display:flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	text-align:left;
}

#topService h2 p{
	display:block;
}

#topService h2 p:first-of-type{
	width:30%;
}
#topService h2 p:last-of-type{
	width:60%;
	font-size:1.5rem;
	font-weight:normal;
}

#topService h2 p:last-of-type{
	padding-top:5px;
}

#topService h2 span{
	color:#ec881e;
	font-size:14px;
	font-weight:normal;
	display:block;
}

@media only screen and (max-width:1050px) {
	#topService h2{
		width:92%;
	}
}

@media only screen and (max-width: 768px) {
	#topService h2{
		width:92%;
		margin:0 auto 45px auto;
		
	}
	#topService h2 p:first-of-type{
		text-align:center;
		padding-bottom:15px;
	}
	#topService h2 p:last-of-type{
		padding-top:0;
	}
	#topService h2 p:first-of-type,
	#topService h2 p:last-of-type{
		width:100%;
	}
}


/** contentInner **/
#topService .contentInner{
	width:100%;
	max-width:87%;
	margin:0 auto 0 0;
}

/** topServiceInner **/
.topServiceInner{
	display:flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	padding-bottom:80px;
}

#topService .contentInner .topServiceInner:last-of-type{
	padding-bottom:0;
}

/** topSvTxt **/
.topServiceInner .topSvTxt{
	-webkit-box-ordinal-group:2;
	-ms-flex-order:2;
	-webkit-order:2;
	order:2;
	width:52%;
}

.topServiceInner .topSvTxt h3{
	font-family: "Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif;
	font-size:1.5em;
	margin-bottom:30px;
}

.topServiceInner .topSvTxt h3 span{
	border-bottom:4px solid #ec881e;
	padding-bottom:2px;
}


/** topSvImg **/
.topServiceInner .topSvImg{
	-webkit-box-ordinal-group:1;
	-ms-flex-order:1;
	-webkit-order:1;
	order:1;
	width:44%;
}

.topServiceInner .topSvImg img{
	display: block;
    object-fit: cover;
	font-family: 'object-fit: cover;'; /*IE*/
    height: 200px;
    width: 100%;
}




@media only screen and (min-width: 961px) and (max-width:1250px) {
	#topService .contentInner{
		width:100%;
		max-width:100%;
	}
	.topServiceInner{
		padding-right:80px;
	}
	
	/** topSvTxt **/
	.topServiceInner .topSvTxt{
		width:47%;
		max-width:574px;	
	}
	
	/** topSvImg **/
	.topServiceInner .topSvImg{
		width:49%;
	}

}
@media only screen and (min-width: 769px) and (max-width:960px) {
	#topService .contentInner{
		width:100%;
		max-width:100%;
	}
	.topServiceInner{
		width:92%;
		padding-left:0;
		padding-bottom:50px;
	}
	
	/** topSvTxt **/
	.topServiceInner .topSvTxt{
		width:53%;
		margin:0 auto;
		padding-bottom:25px;
	}
	
	/** topSvImg **/
	.topServiceInner .topSvImg{
		width:39%;
	}
	
	.topServiceInner .topSvImg img{
		height:250px;
		width:100%;
		margin:0 autt 0 0;
	}
}

@media only screen and (max-width: 768px){
	#topService .contentInner{
		width:100%;
		max-width:92%;
		margin:0 auto;
	}

	/** topServiceInner **/
	.topServiceInner{
		padding-bottom:80px;
	}
	
	/** topSvTxt **/
	.topServiceInner .topSvTxt{
		-webkit-box-ordinal-group:1;
		-ms-flex-order:1;
		-webkit-order:1;
		order:1;
		width:92%;
		max-width:800px;
		margin:0 auto;
		padding-bottom:25px;
	}
	
	.topServiceInner .topSvTxt h3{
		text-align:center;
		font-size:1.4em;
	}
	
	/** topSvImg **/
	.topServiceInner .topSvImg{
		-webkit-box-ordinal-group:2;
		-ms-flex-order:2;
		-webkit-order:2;
		order:2;
		width:92%;
		max-width:800px;
		margin:0 auto;
	}

	
}



/*==========================================
 物件を探す
===========================================*/
/**********
 topSearch
**********/
#topSearch{
	width:100%;
	background:#004e89;
	display:flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	height: 240px;
}

#topSearch a#topSearchTxt{
	width:50%;
	text-align:center;
	padding-top:55px;
	transition: all 0.3s ease 0s;
	text-decoration:none;
}

#topSearch a#topSearchTxt:hover,
#topSearch a#topSearchTxt:active{
	background:#007aaa;
}

#topSearch #topSearchTxt p:first-of-type{
	color:#fff;
	padding-bottom:25px;
	font-size:24px;
	display:block;
	padding-top:7px;
	position:relative;
	text-align:center;
	margin-left:-30px;
}

#topSearch #topSearchTxt p:first-of-type:after{
	content:"";
	background:url(../img/icon_search_50.png) no-repeat;
	width:50px;
	height:50px;
	position:absolute;
	margin-left:10px;
}

#topSearch #topSearchTxt .linkBtn{
	border-radius:2px;
	-webkit-border-radius:2px;
	-moz-border-radius:2px;
	width:auto;
	max-width:250px;
	display:block;
	text-align:center;
	text-decoration:none;
	padding:7px 0;
	font-size:0.9em;
	background:#fff;
	color:#000;
	margin:0 auto;
}

#topSearch #topSearchTxt .linkBtn span{
	padding:0 5px;
}

#topSearch #topSearchTxt .linkBtn span:after{
	content: "\f061";
	font-family:'Font Awesome 5 Free';
	font-weight:900;
	margin-left:10px;
}

#topSearch img{
	display: block;
    object-fit: cover;
	font-family: 'object-fit: cover;'; /*IE*/
    height: 240px;
    width: 50%;
}



@media only screen and (max-width: 768px){
	#topSearch{
		height:auto;
	}
	
	#topSearch a#topSearchTxt{
		width:100%;
		max-width:100%;
		padding:30px 0;
		margin:0 auto;
	}
	#topSearch img{
		width:100%;
		height:170px;
	}
	
}


/*==========================================
 トップページナビゲーションボタン
===========================================*/
/**********
 topNavi
**********/
#topNavi{
	max-width:990px;
	margin:0 auto;
	display:flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	padding:70px 0;
}

#topNavi a{
	display:block;
	width:310px;
}

#topNavi a img{
	width:310px;
}

@media only screen and (min-width: 769px) and (max-width:1050px) {
	#topNavi a{
		width:31%;
	}
	
	#topNavi a img{
		width:100%;
		max-width:310px;
	}
}
@media only screen and (max-width: 768px){
	
	#topNavi{
		padding:50px 0;
	}
	#topNavi a{
		width:310px;
		margin:0 auto;
		margin-bottom:20px;
	}
	#topNavi a:last-of-type{
		margin-bottom:0;
	}
}



/*==========================================
 Pickup
===========================================*/
/**********
 topPickup
**********/
#topPickup{
	background:#f9f8f4;
}

#topPickup .contentBgTxt{
	background:url(../img_top/bgTxt_pickup.png) no-repeat bottom left;
}

@media only screen and (max-width: 768px) {
	#topPickup .contentBgTxt{
		background-size:100%;
	}
}

#topPickup .contentInner{
	padding:60px 0;
}

#topPickup .contentInner > div:first-of-type{
	width:27%;
	padding-top:70px;
}

#topPickup .contentInner > div:first-of-type h2{
	display:block;
	width:100%;
	max-width:1050px;
	margin:0 auto 45px auto;
	font-size:1.7em;
	text-align:left;
}

#topPickup .contentInner > div:first-of-type h2 span{
	color:#ec881e;
	font-size:14px;
	font-weight:normal;
	display:block;
}

#topPickup .contentInner > div:first-of-type a{
	margin:0 auto 0 0;
}

#topPickup .contentInner > div:last-of-type{
	width:69%;
}

#topPickup .contentInner > div:last-of-type a{
	width:48%;
	text-decoration:none;
	color:#282828;
}

#topPickup .contentInner > div:last-of-type a img{
	display: block;
    object-fit: cover;
	font-family: 'object-fit: cover;'; /*IE*/
    height: 220px;
    width: 100%;
}

#topPickup .contentInner > div:last-of-type a p{
	display:block;
	width:100%;
	position:relative;
	padding-top:10px;
}

#topPickup .contentInner > div:last-of-type a p span:after{
	content:"詳細　→";
	position:absolute;
	right:0;
	bottom:0;
	font-size:0.9em;
	color:#f0a53b;
}

#topPickup .contentInner > div:last-of-type .linkBtn{
	display:none;
}



@media only screen and (max-width: 768px){
	#topPickup .contentInner > div:first-of-type{
		width:100%;
		padding-top:0;
		padding-bottom:0;
	}
	
	#topPickup .contentInner > div:first-of-type h2{
		padding-bottom:0;
		text-align:center;
	}
	
	#topPickup .contentInner > div:first-of-type .linkBtn{
		display:none;
	}
	
	#topPickup .contentInner > div:last-of-type{
		width:100%;
		
	}
	
	#topPickup .contentInner > div:last-of-type a{
		width:100%;
		margin-bottom:30px;
	}
	
	#topPickup .contentInner > div:last-of-type a img{
		height:170px;
	}
	
	#topPickup .contentInner > div:last-of-type .linkBtn{
		display:block;
		margin-top:10px;
		color:#fff;
	}

}



/*==========================================
 STAFF
===========================================*/
/**********
 topStaff
**********/
#topStaff{
	background: linear-gradient(#004e89 35%, white 35%);
}

#topStaff .contentBgTxt{
	background:url(../img_top/bgTxt_staff.png) no-repeat top right;
	padding:90px 0 60px;
}


#topStaff h2{
	display:block;
	width:100%;
	text-align:right;
	font-size:1.8em;
	background:#ddd url(../img_top/topStaffImg.jpg) no-repeat top center;
	background-size:cover;
	min-height:300px;
}

#topStaff h2 p{
	display:block;
	padding:25px;
}

#topStaff h2 p span{
	display:block;
}


@media only screen and (max-width: 768px){
	#topStaff{
		background: linear-gradient(#004e89 21%, white 21%);
	}
		
	#topStaff .contentBgTxt{
		padding-top:80px;
		background:url(../img_top/bgTxt_staff.png) no-repeat top center;
		background-size:80%;
		padding-bottom:10px;
	}

	#topStaff h2{
		background:none;
		min-height:auto;
		text-align:center;
		color:#fff;
		font-size:2.2rem;
		line-height:1.6;
		padding-top:10px;
	}
	#topStaff h2 p span{
		display:inline-block;
	}
}

#topPickup #mbBtn{
	width:100%;
	padding-bottom:60px;
}



/**********
 staffTxt
**********/
#staffTxt{
	padding-top:50px;
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
}

/** staffBlk **/
#staffTxt .staffBlk{
	width:47%;
}

#staffTxt .staffBlk img{
	display: block;
    object-fit: cover;
	font-family: 'object-fit: cover;'; /*IE*/
    width: 30%;
	height:170px;
}

#staffTxt .staffBlk > div{
	/*width:62%;*/
	width:100%;
}

#staffTxt .staffBlk h3{
	color:#004e89;
	border-left:5px solid #004e89;
	padding-left:15px;
	margin-bottom:25px;
	font-size:1.3em;
}

#staffTxt .staffBlk h3 p{
	font-size:1.6rem;
}

#staffTxt .staffBlk h3 span{
	font-weight:normal;
	font-size:14px;
	color:#4d4d4d;
	display:block;
}

#staffTxt .staffBlk ul{}
#staffTxt .staffBlk ul li{
	font-size:0.9em;
	padding-bottom:7px;
	line-height:1.5;
}

#staffTxt .staffBlk ul li:last-of-type{
	padding-bottom:0;
}


#staffTxt .staffBlk .linkBtn{
	width:100%;
	margin:35px auto 0 auto;
	max-height:40px!important;
}



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

	#staffTxt{
		padding-top:60px;
	}
	
	/** staffBlk **/
	#staffTxt .staffBlk{
		width:100%;
		margin-bottom:50px;
	}
	#staffTxt .staffBlk:last-of-type{
		margin-bottom:40px;
	}


}



/*==========================================
 INFO
===========================================*/
/**********
 topInfo
**********/
#topInfo{
	background:#f9f8f4;
	padding:60px 0;
}

#topInfo .contentInner{}

#topInfo .contentInner > div{
	width:47%;
}

#topInfo .contentInner > div h3{
	border-top:4px solid #004e89;
	padding-top:10px;
	padding-bottom:20px;
	color:#004e89;
	font-size:24px;
}

#topInfo .contentInner > div h3 span{
	padding-left:15px;
	font-weight:normal;
	color:#808080;
	font-size:14px;
}


#topInfo .contentInner a.linkBtn{
	background:#4d4d4d;
	margin-top:30px;
}

#topInfo .contentInner a.linkBtn:hover,
#topInfo .contentInner a.linkBtn:active{
	background:#808080;
}

#topInfo .contentInner > div ul li{
	padding-bottom:10px;
}

#topInfo .contentInner > div ul li a{
	text-decoration:none;
	color:#000;
}

#topInfo .contentInner > div ul li a:hover,
#topInfo .contentInner > div ul li a:active{
	color:#007aaa;
	
}

#topInfo .contentInner > div ul li p{
	display:inline-block;
}

#topInfo .contentInner > div ul li p:first-of-type{
	width:24%;
}



@media only screen and (max-width: 768px){
	#topInfo .contentInner > div{
		width:100%;
		padding-bottom:45px;
	}
	#topInfo .contentInner > div:last-of-type{
		padding-bottom:0;
	}

}





/*==========================================
 マップ
===========================================*/
/**********
 topMap
**********/
#topMap{
	margin-top:100px;
}

#topMap #topMap_address{
	width:100%;
	max-width:1050px;
	padding:25px 0;
	text-align:left;
	display:flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	margin:0 auto;
}

@media only screen and (min-width: 769px) and (max-width: 1100px) {
	#topMap #topMap_address{
		width:94%;
		margin:0 auto;
	}

}
	
#topMap #topMap_address h2{
	padding-bottom:0;
	width:20%;
	color:#004e89;
	padding-right:15px;
	font-family: "Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif;
	font-weight:bold;
	font-size:20px;
}

#topMap #topMap_address div{
	padding-bottom:0;
	width:70%;
	text-align:right;
	display:flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: end;
     -ms-flex-pack: end;
   justify-content: flex-end;
}

#topMap #topMap_address div p{
	display:block;
	text-align:right;
	width:71%;
	font-size:0.94em;
	padding-top:6px;
}


#topMap #topMap_address div a.linkBtn{
	display:block;
	width:24%;
	max-width:240px;
	margin:0 0 0 auto;
}


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

	#topMap #topMap_address h2{
		padding-bottom:10px;
		width:100%;
		text-align:center;
	}
	
	#topMap #topMap_address div{
		width:100%;
		text-align:center;
		display:block;
	}
	
	#topMap #topMap_address div p{
		width:100%;
		margin:0 auto;
		text-align:center;
		font-weight:1.6rem;
	}
	
	#topMap #topMap_address div a.linkBtn{
		width:90%;
		max-width:360px;
		margin:15px auto 0 auto;
		padding:10px 0;
	}

}








/* PC・大型タブレット：769px～1050px */
@media only screen and (min-width: 769px) and (max-width: 1050px) {
/**@media only screen and (min-width: 769px) and (max-width: 1100px) {**/


#main{
	padding-top:0;
}

/**********
 stopImg
**********/
#topImgWrap{
	position:static;
	background:none;
	padding-top:0;
	padding-bottom:0;
	background: linear-gradient(white 80%, #f9f8f4 80%);

}

#topImg{
	position: relative;
	overflow: hidden;
	padding-right:100px;
}

#topImg img{
	width: 80%; /* 任意の幅を指定 */
	height: 500px; /* 任意の高さを指定 */
	object-fit: cover;
	object-position:20%;
	text-align:right;
	margin-left:auto;
	font-family:"object-fit:cover;";
}

/** topImgContens **/

#topImgContens{
	z-index:99;
	width:60%;
	top:130px;
	position:absolute;
	
}

#topImgCon_com{
	width:auto;
	margin:auto;
	text-align:left;
	color:#000;
	line-height:1.5;
	padding-top:250px;
	padding-left:20px;
	font-size:3.1rem;
}

#topImgCon_com span{
	display:block;
}

}


/* PC向け：1050px以上で固定 */
@media only screen and (min-width: 1051px) {

#main{
	padding-top:0;
}

/**********
 stopImg
**********/
#topImgWrap{
	position:static;
	background:none;
	padding-top:0;
	padding-bottom:0;
	background: linear-gradient(white 86%, #f9f8f4 86%);
}

#topImg{
	position: relative;
	overflow: hidden;
	padding-right:100px;
}

#topImg img{
	width: 80%; /* 任意の幅を指定 */
	height: 500px; /* 任意の高さを指定 */
	object-fit: cover;
	object-position:right;
	text-align:right;
	margin-left:auto;
	font-family:"object-fit:cover;";
}

/** topImgContens **/

#topImgContens{
	z-index:99;
	width:60%;
	top:130px;
	position:absolute;
	
}

#topImgCon_com{
	width:auto;
	margin:auto;
	text-align:left;
	color:#000;
	line-height:1.5;
	padding-top:250px;
	padding-left:100px;
	font-size:3.3rem;
}


#topImgCon_com span{
	display:block;
}



}

@media print {





}



