@charset "UTF-8";
/* -------------------------------
スタイルの初期化 */

body,div,pre,p,blockquote,
form,fieldset,input,textarea,select,option,
dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,
table,th,td,embed,object { margin:0; padding:0; }
html {
font-size: 62.5%; /*ベースを10pxにしています*/
}

body{
	font-family:"Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Meiryo", sans-serif;
	font-size:1.4rem;
	text-autospace:ideograph-alpha;
	color:#1e1e1e;
	line-height: 1.41;
}
/*box-sizingを全ブラウザに対応*/
*, *:before, *:after {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
a{
	text-decoration:none;
	color:#1e1e1e;
}
a img {
	border:0;
	outline:none;
}
img {
	vertical-align:top;
}

ul, ol { list-style-type:none; }
li{overflow-wrap:break-word;}
sup { position: relative; vertical-align: baseline; top: -0.9em; font-size: 0.5em; }
hr { display: none; }
h1,h2,h3,h4,h5,h6 { font-size: 100%;}
th, caption{ text-align: left; font-weight: normal; }
th,td { empty-cells:show; }

input[type="text"],input[type="password"],input[type="text"],
input[type="email"] { padding:0 2px; margin-right:0.1em; }
input[type="checkbox"] { margin-right:0.1em; vertical-align: middle; }
input[type="radio"] { margin-right:0.1em; }
textarea { padding:2px; }
optgroup { font-style:normal; }
option { padding-right:10px; }

.hproduct { display:none; }
/*ボタンデフォルトスタイルをリセット */
input,
select,
textarea{
	font-size:1.4rem;
}

input[type="submit"],
input[type="button"],button {
	border-radius: 0;
	-webkit-box-sizing: content-box;
	-webkit-appearance: button;
	appearance: button;
	border: none;
	cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
	display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
	outline-offset: -2px;
}
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="password"],
input[type="number"],
textarea{
	-webkit-appearance : none;
	appearance: none;
	border-radius:0;
	padding:10px 8px;
	border:1px solid #ddd;
	width: 100%;
}
area{
	border:none;
	outline:none;
}
select{
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: none;
	outline: none;
	padding: 8px 30px 8px 10px;
	border-radius:3px;
	border: 1px solid #dcdcdc;
	background: #fff url(/sp/img/rent/arrow_down.png) no-repeat right 10px center;
	background-size: auto 8px;
	line-height: inherit;
	vertical-align: middle;
	border: 1px solid #c8c8c8;
}
/*チェックボックスのスタイル*/
input[type="checkbox"]{
	border: 2px solid #bebebe;
	-webkit-appearance: none;
	position: relative;
	border-radius: 3px;
	box-sizing: border-box;
	width: 26px;
	height: 26px;
	background: #fff;
	margin-right:5px;
	vertical-align: -8px;
	box-shadow: 0 -2px 0 #f0f0f0 inset;
}
input[type="checkbox"]:checked {
	background:#0080ff;
	border: 2px solid #193c54;
	box-shadow:none;
}
input[type="checkbox"]:checked:before {
	position: absolute;
	left: 2px;
	top: 15px;
	display: block;
	content: "";
	width: 8px;
	height: 3px;
	background: #ffffff;
	-webkit-transform: rotate(45deg);
	-webkit-transform-origin: right center;
}
input[type="checkbox"]:checked:after {
	display: block;
	position: absolute;
	left: 9px;
	top: 15px;
	content: "";
	width: 14px;
	height: 3px;
	background: #ffffff;
	-webkit-transform: rotate(-53deg);
	-webkit-transform-origin: left center;
}
/*ラジオボタンのスタイル*/
input[type="radio"]{
	border: 2px solid #bebebe;
	-webkit-appearance: none;
	position: relative;
	margin-right: 7px;
	border-radius: 24px;
	box-sizing: border-box;
	width: 24px;
	height: 24px;
	background: #fff;
	position:relative;
	top:6px;
}
input[type="radio"]:checked{
	background:#81d6d6;
	border: 2px solid #21a6a6;
}
input[type="radio"]:checked:after {
	display: block;
	position: absolute;
	left: 6px;
	top: 6px;
	content: "";
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: #fff;
}

.red{
	color:#be0000;
}
/*----webfont----*/
.wf{
	font-family: 'Noto Sans JP', sans-serif;
}

/*--------------------------------*/
/*ヘッダー*/
.header-top{
	overflow:hidden;
	padding:10px 10px 6px;
}
.header-top .h-logo{
	float:left;
	display:table;
}
.header-top .h-logo a{
	display:block;
}
span.sub_title{
	font-size:12px;
	color: #323232;
}
span.business_hours{
	font-size: 11px;
	color: #232323;
}
#header-logo{
	display:table-cell;
	vertical-align:middle;
}
#header-logo img{
	width:190px;
	height:27px;
}
.header-top .right{
	float:right;
	padding-top:4px;
}
.header-top #menu-btn{
	height:54px;
	width:54px;
	position:relative;
	z-index:2200;
}
.header-top #menu-btn a{
	background:#000;
	color:#fff;
	height:100%;
	display:block;
	position:relative;
}
.header-top #menu-btn span{
	position:absolute;
	width:24px;
	height:2px;
	background:#fff;
	left:0;
	right:0;
	margin:auto;
	transition: all .4s;
}
.header-top #menu-btn .line01{
	top:14px;
}
.header-top #menu-btn .line02{
	top:20px;
}
.header-top #menu-btn .line03{
	top:26px;
}

.header-top #menu-btn b{
	font-weight:normal;
	text-align:center;
	font-size:10px;
	position:absolute;
	left:0;
	right:0;
	bottom:6px;
	margin:auto;
}
.header-bottom{
	clear:both;
}
/*グローバルメニュー*/
.global-nav{
	display:block;
	position: fixed;
	right: -82vw; /* これで隠れる */
	top: 0;
	width: 82vw; /* スマホに収まるくらい */
	height: 100%;
	padding-top: 72px;
	background-color: #fff;
	transition: all .4s;
	z-index:2100;
	overflow-y: auto; /* メニューが多くなったらスクロールできるように */
}
.global-nav::before{
	position: fixed;
	content:'';
	width: 82vw;
	height:74px;
	top:0;
	right: -82vw; /* これで隠れる */
	background:#fff;
	transition: all .4s;
}
.nav-open .global-nav::before{
	position: fixed;
	content:'';
	width: 82vw;
	height:72px;
	top:0;
	right:0;
	background:#fff;
}

.global-nav ul{
	margin-bottom:12px;
}
.global-nav li{
	border-bottom:1px solid #dcdcdc;
}
.global-nav li a{
	padding:10px 10px;
	display:block;
	font-weight:bold;
	background-image: url(/sp/img/common/arrow_right.png);
	background-size: 10px auto;
	background-repeat: no-repeat;
	background-position: right 10px center;
}
.global-nav .tel{
	padding:0 10px;
}
.global-nav .tel .name{
	font-size:13px;
	margin-bottom:2px;
	font-weight:bold;
}
.global-nav .tel .num a{
	display:inline-block;
	vertical-align:-2px;
}
.global-nav .tel .num  a b{
	font-size:26px;
	color:#be0000;
	line-height:1.2;
}
@media screen and (min-width:375px) {
	.global-nav li a{
		padding:11px 10px;
	}
	.global-nav .tel .num  a b{
		font-size:32px;
	}
}
.black-bg {
	position: fixed;
	left: 0;
	top: 0;
	display:block;
	width: 100vw;
	height: 100%;
	z-index: 2000;
	background-color: #000;
	opacity: 0;
	visibility: hidden;
	transition: all .4s;
	cursor: pointer;
}
/* 表示された時用のCSS */
body.nav-open{
	position: fixed;
	width:100%;
}
.nav-open .global-nav,
.nav-open .global-nav::before {
	right: 0;
}
.nav-open .black-bg {
	opacity: .8;
	visibility: visible;
}
/*クローズ*/
.nav-open #menu-btn .line01{
	top:20px;
	width:24px;
	right:0;
	-moz-transform: rotate(405deg);
	-webkit-transform: rotate(405deg);
	-o-transform: rotate(405deg);
	-ms-transform: rotate(405deg);
	transform: rotate(405deg);
}
.nav-open #menu-btn .line02{
	opacity:0;
}
.nav-open #menu-btn .line03{
	top:20px;
	right:0;
	width:24px;
	-moz-transform: rotate(-405deg);
	-webkit-transform: rotate(-405deg);
	-o-transform: rotate(-405deg);
	-ms-transform: rotate(-405deg);
	transform: rotate(-405deg);
}


/*nav*/
.header-bottom {
	display: flex;
	align-items: center;
	width: 100%;
	color: #fff;
	background: #000;
	padding: 0 5px 0 10px;
	border-bottom: 5px solid #be0000;
}
.header-bottom .t{
	font-size: 1.3rem;
	display: flex;
	width: 8em;
	padding-left: 18px;
	font-weight: bold;
	/* display: block; */
	background: url(/sp/img/common/icon_glass_w.svg) no-repeat;
	background-size: 14px;
	background-position: left center;
}
.header-bottom ul{
	display:flex;
	align-items:center;
	width:100%;
}
.header-bottom ul li{
	width:50%;
	text-align:center;
	padding:8px 5px;
}
.header-bottom ul li a{
	font-size: 1.3rem;
	padding: 5px 0 6px;
	display:flex;
	align-items:center;
	justify-content:center;
	background: #065eb6;
	color: #fff;
	border-radius: 2px;
	font-weight: 500;
	position: relative;
}
.header-bottom ul .office a::before{
	content: '';
	position: absolute;
	left: 10px;
	background: url(/sp/img/common/icon_building_w.svg);
	width: 14px;
	height: 14px;
	background-size: contain;
}
.header-bottom ul .shop a::before{
	content: '';
	position: absolute;
	left: 10px;
	background: url(/sp/img/common/icon_shop_w.svg);
	width: 14px;
	height: 14px;
	background-size: contain;
}

@media screen and (max-width:359px) {
	.header-bottom ul li a{
		font-size:1.3rem;
	}
}

/*グローバルナビ固定*/
body.fixed:not(.not){
	padding-top: 50px;/*スクロール固定検索バーの高さ*/
}
.fixed:not(.not) #globalnavi{
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 5000;
}

/*パンくず*/
#breadcrumb{
	overflow-x:scroll;
	white-space:nowrap;
	padding:4px 10px;
	margin-bottom:5px;
}
#breadcrumb li{
	color:#5c5c5c;
	display:inline-block;
	font-size:1.2rem;
}
#breadcrumb li + li:before,
#breadcrumb li + script + li:before{
	content: "＞";
	color:#be0000;
	margin: 0 .5em;
}

#breadcrumb li a{
	color:#5c5c5c;
}
/*ページタイトル*/
.page-title{
	font-size:2.2rem;
	font-weight:bold;
	border-bottom:1px solid #d9d1bd;
	padding:6px 10px 7px;
}
/*高級賃貸探偵*/
main .detective{
	border:solid #a2a2a2 0.5rem;
	position: relative;
}
.look_for img{
	position: absolute;
	right: 21%;
	top: -35%;
	width: 93px;
	height: 61px;
}
span.office{
	display: block;
}
main .detective a{
	display:block;
}
main .detective h2{
	font-weight:bold;
	font-size: 15px;
	margin-bottom:2.5%;
	line-height:1;
}
.detective p{
	font-size: 13px;
}
.detective-inner{
	background-size:320px 116px;
	background-repeat: no-repeat;
	width: 100%;
}
.blue_text{
	color: #233d54;
}
.detective a .detective-inner{
	overflow:hidden;
}
.detective a .detective_text{
	padding: 2%;
	width: calc(100% - 132.5px);
	float: left;
}
.detective a .detective_img{
	width:112.5px;
	height:94.5px;
	float:right;
}
.detective a .detective_img img{
	display: block;
	vertical-align: bottom;
	width: 100%;
	height: auto;
	margin-bottom: 0;

}
/*事務所検索バナー*/
.footer-menu{
	border-top: 1px solid #bbb;
	padding-top: 30px;
}
.footer-menu .bannaer-wrapper{
	margin:0 10px 35px;
}
.bnr-link {
	margin-bottom: 10px;
}
.bnr-link:last-child {
	margin-bottom:0px;
}
.bnr-link a{
	display:block;
}
.bnr-link a img{
	width:100%;
	height:auto;
}
/*コンテンツ*/
.contents-list{
	background:#e6e2da;
	padding:0 3%;
}
.contents-list h2{
	background:#1e1e1e;
	color:#fff;
	font-weight:bold;
	font-size:1.8rem;
	line-height:1;
	padding:3%;
}
.contents-list ul li{
	width:100%;
	display:table;
	background:url(/sp/img/common/arrow_right.png) no-repeat;
	background-position:right 0.5rem top 50%;
	background-size:3%;
	border-bottom:1px solid #d2d2d2;
}
.contents-list ul li:last-child{
	background:none;
}
.contents-list ul li a{
	padding:3%;
	display:block;
}
.contents-list ul li a .image{
	display:table-cell;
	width:20%;
}
.contents-list ul li a .image img{
	width:100%;
}
.contents-list ul li a .text{
	padding-left:3%;
	display:table-cell;
	vertical-align:middle;
	font-size:1.8rem;
	font-weight:bold;
	font-family:"Noto Sans Japanese";
}
.contents-list ul li h3{
	font-weight:bold;
	margin-bottom:2%;
	font-size:1.6rem;
}
.foot-stationlist {
	padding: 3%;
	display: block;
}
.foot-stationlist dt {
	font-weight: bold;
	padding-bottom: 2%;
	font-size: 1.6rem;
	border-bottom: 1px solid #d2d2d2;
}
.foot-stationlist dd {
	width: 100%;
	display: table;
	border-bottom: 1px solid #d2d2d2;
}
.foot-stationlist dd a {
	padding:7px 20px 7px 10px;
	display: block;
	background: url(/sp/img/common/arrow_right.png) no-repeat right center;
	background-size: 10px auto;
}
.foot-stationlist:nth-of-type(2) dd:last-child{
	border:none;
}
/*フッター*/
footer{
}
#to-page-top{
	text-align:right;
	padding:0 3%;
	bottom:3%;
	position:fixed;
	width:18%;
	right:3%;
	margin:0 auto 12px;
}
#to-page-top a{
	display:block;
	padding:2.8vw 0;
	background:#1e1e1e;
	border-radius:0.4rem;
	text-align:center;
}
#to-page-top a img{
	width:60%;
}
footer .copyright{
	background:#1e1e1e;
	color:#fff;
	text-align:center;
	padding:1rem 0;
}
/*付いてくるバナー*/
footer .detactive{
	position:fixed;
	bottom:0;
}
footer .detactive a{
	display:block;
}
footer .detactive a img{
	width:100%;
	height:auto;
}
/*フッター固定問い合わせ*/
.contact-bottom{
	display: none;
	position: fixed;
	width:100%;
	bottom: 0;
	z-index: 1;
	padding:10px;
	box-sizing:border-box;
	background:rgba(0,0,0,0.7);
}
.contact-bottom ul{
	width:100%;
	display: flex;
	justify-content:space-between;
}
.contact-bottom li{
	width:calc((100% - 6px) / 2);
}
.contact-bottom li a{
	display: flex;
	height: 42px;
	padding-bottom: 1px;
	border-radius: 3px;
	font-size: 1.4rem;
	font-weight: bold;
	justify-content: center;
	align-items: center;
	color: #6d4440;
	background: #ffffff;
	box-shadow: 0px -2px 0px 0px rgba(0,0,0,0.4) inset;
}
.contact-bottom .mail a:before{
	content: '';
	display: inline-block;
	width: 16px;
	height: 15px;
	background: url(/sp/img/common/icon_contact_mail.svg) no-repeat right 2px;
	background-size:contain;
	vertical-align:5px;
	margin-right: 5px;
}
.contact-bottom .mail a{
	letter-spacing: -.02em;
}
.contact-bottom .tel a:before{
	content: '';
	display: inline-block;
	width: 14px;
	height: 14px;
	background: url(/sp/img/common/icon_contact_tel.svg) no-repeat right center;
	background-size:contain;
	vertical-align:middle;
	margin-right: 5px;
}
@media screen and (max-width:359px) {
	.contact-bottom li a{
		font-size:1.2rem;
	}
}

/*--ヘッダーから呼び出すメニュー類
#overlay{
	display: none;
	position:fixed;
	top:0;
	width:100%;
	height:100%;
	background:rgba(0,0,0,0.5);
	z-index:2000;
}
#overlay .inner{
	display:none;
	padding:3% 3% 1%;
}
#overlay h2{
	padding:0.5rem;
	margin:0 1px 3px;
	background:#4b4b4b;
	color:#fff;
	font-size:1.6rem;
}
#overlay h2 span.close{
	font-weight:800;
	padding:0 0.5rem;
	float:right;
	background:#fff;
	display:inline-block;
	color:#4b4b4b;
}
/*ヘッダーから呼び出すメニュー
#header-menu-nav{
	background:#f0f0f0;
}
#header-menu-nav ul li{
	margin:1px 1px 3px 1px;
	background:#065eb6;
}
#header-menu-nav ul li a{
	display:block;
	padding:1rem;
	font-size:1.6rem;
	color:#fff;
}
/*ヘッダーから呼び出す物件検索
#header-search-nav ul{
	padding:3% 3% 0 3%;
	margin:1px;
	background:#fff;
}
#header-search-nav ul .search{
	margin-bottom:3%;
}
#header-search-nav ul .search a{
	padding:1.2rem 0;
	display:inline-block;
	border-radius:0.4rem;
	width:100%;
	color:#fff;
	background:url(/sp/img/index/icon_arrow-w.png) no-repeat #065eb6;
	background-position:right 0.5rem top 50%;
	background-size:2%;
	box-shadow:rgba(3,58,112,1)0 -0.2rem 0 inset;
	font-size:1.6rem;
	text-align:center;
}
#overlay div.close{
	color:#4b4b4b;
	text-align:center;
	font-weight:bold;
	font-size:1.6rem;
}
#overlay div.close a{
	padding:0.5rem;
	display:block;
}
#overlay div.close a span{
	font-size:1.8rem;
}
/*ページャー*/
div.pager-txt {
	padding:0 10px;
	margin: 10px 0 20px;
	text-align: center;
	color: #323232;
	background-color: #fff;
}

div.pager-txt b{
	color: #be0000;
}
div.num{
	padding: 3.33% 0;
}
.pager{
	text-align:center;
	margin-bottom: 16.66%;
	overflow:hidden;
}
.pager .prev{
	margin-right:2px;
}
.pager .prev,
.pager .next{
	width:calc((100% - 4px) / 2);
	height:auto;
	float:left;
	font-size: 16px;
}
.pager .prev a{
	background-color: #323232;
	background-image: url(/sp/img/common/arrow_w_left.png);
	background-size: 6px 10px;
	background-repeat: no-repeat;
	background-position: left 10px center;
}
.pager .next a{
	background-color: #323232;
	background-image: url(/sp/img/common/arrow_w_right.png);
	background-size: 6px 10px;
	background-repeat: no-repeat;
	background-position: right 10px center;
}
.pager a{
	color:#fff;
	display:block;
	padding:1.2rem 0;
}
.pager .none span{
	background:#dcdcdc;
	color:#999;
	display:block;
	padding:1.2rem 0;
}
/*カレント*/
.current{
	margin-bottom:6%;
}
/*前のページへ戻る*/
.page-back a{
	position: relative;
	display: inline-block;
	border: 2px solid #ccc;
	padding: 11px 24px;
	border-radius: 3px;
	font-size: 1.2rem;
}
.page-back a:before{
	position: absolute;
	content: '';
	top: 50%;
	left: 10px;
	width: 6px;
	height: 6px;
	border-bottom: 2px solid #be0000;
	border-left: 2px solid #be0000;
	transform: translateY(-50%)rotate(45deg);
}
/*物件ページのアラート*/
#check-alert{
	width:100%;
	height:100%;
	position:fixed;
	z-index:9999;
	display: flex; /* 子要素をflexboxで揃える */
	flex-direction: column; /* 子要素をflexboxにより縦方向に揃える */
	justify-content: center; /* 子要素をflexboxにより中央に配置する */
	align-items: center;  /* 子要素をflexboxにより中央に配置する */
}
#check-alert div{
	font-size:16px;
	line-height:1;
	text-align:center;
	color:#fff;
	width:90%;
	padding:20px;
	max-width:460px;
	background:rgba(6,94,182,0.8);
	box-shadow: 2px 3px 8px rgba(0,0,0,0.2);
}
/*お気に入り*/
#check-alert p{
	font-weight:bold;
	font-size:16px;
}
#alert-title{
	display:none;
}
/* -------------------------------
スマホ以外の表示設定 */
@media (min-width:767px) {
	#wrapper{
		width:480px!important;
		margin:0 auto;
	}
	#overlay{
		width:480px;
	}
	#to-page-top{
		padding:0 10px;
		margin:0 auto 10px;
	}
	#to-page-top.hide{
		margin-bottom:10px;
	}
	.detactive,
	.contact-bottom{
		width: 480px!important;
	}
	#wrapper{

		background:#fff;
	}
}
/*アイコン 色*/
.icon .type,
.icon.type{
	color: #fff;
	background-color: #495763;
	display:inline-block;
	vertical-align:middle;
	text-align:center;
}
.icon .membericon{
	color: #be0000;
	font-weight: bold;
	background:#fff;
	border: 1px solid #be0000;
	display:inline-block;
	vertical-align:middle;
	text-align:center;
}
.icon .new{
	position: relative;
	font-weight: 600;
	color: #fff;
	background: #fab20a;
	background-position: center center;
	display:inline-block;
	vertical-align:middle;
	text-align:center;
}
.icon .new::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: linear-gradient(to bottom right, #fbc13b 50%, transparent 50.1%) top left/ 100% 100% no-repeat;
}
.icon .new b{
	position: relative;
	z-index:1;
}
.icon .fearure {
	background: #7dd62e;
	color: #fff;
	display:inline-block;
	vertical-align:middle;
	text-align:center;
}