@charset "utf-8";

/*【スマートフォン横】*/
@media screen and (min-width: 481px) {
} 

/*【タブレット縦以上】*/
@media screen and (min-width: 769px) {
body{
}

#navi-sp,
.sp_view,
.sp_br{
	display: none;
}
.pc_view{
	display: block;
}
.pc_br{
	display: block;
}
.pc_pb0{
	padding-bottom:0 !important;
}
.priv {
	height:350px;
}


#wrapper{
	min-width:1000px;
}




#header{
    padding: 0;
	height:120px;
	display: flex;
	align-items: center;
}
#header .wrap{
	width:1200px;
	min-width:1200px;
	margin:0 auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
#logo{
	width:144px;
}
#logo a.pc_view{
	display: block;
}
#logo a.pc_view img{
	width:100%;
}
#logo a.sp_view{
	display: none;
}
ul.pc-navi{
	width:900px;
	display: flex;
    justify-content: space-between;
}
ul.pc-navi>li{
/*	margin-left:45px;*/
	margin-left:21px;
	position: relative;
	font-weight: 700;
	letter-spacing: 0.5px;
}
ul.pc-navi h2{
	font-weight: 700;
	letter-spacing: 0.5px;
	border-bottom:3px solid #c6c6c6;
	display: inline-block;
}
ul.pc-navi h2.active,
ul.pc-navi>li a.root.active{
	border-bottom:3px solid #f49f15;
}

ul.pc-navi>li a.root{
	font-size:1.5rem;
	font-weight: bold;
	border-bottom:3px solid #c6c6c6;
	padding-bottom:3px;
	font-size:1.5rem;
	font-weight: 700;
	letter-spacing: 0.5px;
}
ul.pc-navi>li a.contact{
	display: block;
	border:2px solid #ed8258;
	color:#3a3a3a;
	background-color:#fff;
	padding:17px 22px;
	font-size:1.5rem;
	font-weight: bold;
}
ul.pc-navi>li>ul:not(.contact-sub){
	display: flex;
	justify-content: flex-start;
	margin-top:12px;
}
ul.pc-navi>li>ul:not(.contact-sub)>li:nth-child(2){
	border-left:1px solid #000;
	padding-left:8px;
	margin-left:8px;
}
ul.pc-navi>li ul.sub{
	display: none;
	position: absolute;
	padding: 15px 15px 0px;
	border-radius: 10px;
	color: #fff;
	top: 58px;
	width: 220px;
box-shadow: 0px 3px 10px #00000057;
}
ul.pc-navi>li ul.sub.our{
	background-color:#ef8454;
}
ul.pc-navi>li ul.sub.owner{
	background-color:#8fa816;
}
ul.pc-navi>li ul.sub.selelot{
	background-color:#96c1d7;
	width: 330px;
}

ul.pc-navi>li ul.sub li{
	margin-bottom: 8px;
	border-bottom: 1px dotted #ffffff57;
	padding-bottom: 8px;
}
ul.pc-navi>li ul.sub li:last-child{
	border-bottom:0 none;
}
ul.pc-navi>li ul.sub li a{
	color:#fff;
	font-size:1.5rem;
	letter-spacing: 1px;
	font-weight: 500;
}
ul.contact-sub{
	display: none;
	position: absolute;
	background-color: #fff;
	padding: 24px 20px 9px;
	border: 1px solid #c6c6c6;
	right:0;
    box-shadow: 0px 3px 10px #0000003d;
	overflow: hidden;
}
ul.contact-sub li h2{
	width:348px;
	text-align: center;
	font-size:1.7rem;
	color:#fff;
	font-weight: bold;
	padding:10px 0;
	margin-bottom:15px;
}
ul.contact-sub li.our h2{
	background-color:#ef8454;
}
ul.contact-sub li.owner h2{
	background-color:#b0c91b;
}
ul.contact-sub li.selelot h2{
	background-color:#96c1d7;
}
ul.pc-navi>li>ul.contact-sub li a{
	display: block;
	width: 100%;
	border-bottom:1px solid #000;
	font-size:1.5rem;
	padding-bottom:1rem;
	text-align: center;
	margin-bottom:1.5rem;
}
ul.pc-navi>li>ul.contact-sub li.our a{
	border-bottom:2px solid #ef8454;
}
ul.pc-navi>li>ul.contact-sub li.owner a{
	border-bottom:2px solid #b0c91b;
}
ul.pc-navi>li>ul.contact-sub li.selelot a{
	border-bottom:2px solid #96c1d7;
}

#hero{
	height:700px;
	display: flex;
	align-items: center;
}
#hero div.bg{
	height: 408px;
	margin-top: 120px;
}
#hero div.hero_wrap{
	width:1000px;
	margin:120px auto 0;
}
#hero div.hero_wrap img{
	height: 267px;
	width:393px;
}
h1{
	padding:15px 0;
}
h1 div.wrapper{
	width:1000px;
	margin:0 auto;
	font-size:2.5rem;
}
h1 div.wrapper div.icon-house{
	margin-right:10px;
	width:43px;
	height:47px;
}

div.container ul.top-list{
	width:1000px;
	margin:0 auto 52px;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-template-rows: repeat(2, 1fr);
	grid-column-gap: 28px;
	grid-row-gap: 28px;
	margin-bottom:50px;
}
div.container ul.top-list li {
    width: auto;
	margin-bottom:0
}
div.container ul.top-list li h2 a {
    font-size:2.1rem;
	line-height: 1;
	font-weight: 500;
}
div.container ul.top-list li p {
    padding: 15px;
}



#whatsnew {
	background-color:#fff;
}
#whatsnew div.wrap {
	width:1000px;
	margin:0 auto;
    background-image:url(../img/whatsnew.png);
	background-repeat: no-repeat;
	background-position: top right;
}
#whatsnew h1{
    background-color: transparent;
}
#whatsnew div.container{
    width: 1000px;
    margin: 0 auto;
	background-color: transparent;
}
#whatsnew div.container ul {
	width:55%;
	margin:0;
    padding-top: 20px;
}
#whatsnew div.container ul li h2 {
    font-size: 1.7rem;
}
#whatsnew div.container ul li p{
	letter-spacing: 1px;;
    font-size: 1.7rem;
}
#contents {
}
#contents h1{
	margin-top:0;
}
#contents div.container{
	padding:60px 0 50px;
}
#contents div.container>ul {
    width: 1000px;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
#contents div.container>ul>li {
    font-size: 1.4rem;
}
#contents div.container>ul>li:nth-child(1) {
    width: 28%;
}
#contents div.container>ul>li:nth-child(2) {
    width: 40%;
}
#contents div.container>ul>li:nth-child(3) {
    width: 25%;
}
#contents div.container>ul>li a {
    font-size: 1.4rem;
	letter-spacing: 1px;;
}
#contents div.container>ul>li>ul>li {
    margin-bottom: 3rem;
}
#footer p {
    font-size: 1.5rem;
}


#pageHeader{
	padding: 2.6rem 0 5rem;
}
#pageHeader .container{
	width:1000px;
	min-width: 1000px;
	margin:0 auto;
}
#pageHeader .container.small{
	width: 96%;
	min-width: 96%;
	margin:0 auto;
}
#pageHeader .container .wrapper .breadcrumb{
	display: flex;
	align-items: center;
}
#pageHeader .container .wrapper .breadcrumb li{
	font-size:1.4rem;
	margin-bottom:0;
}
#pageHeader .container .wrapper .breadcrumb li a{
	font-size:1.4rem;
}
#pageHeader .container .wrapper .breadcrumb li i{
	margin:0 5px;
}
#pageHeader .container h1{
	margin:35px 0 30px;
	padding:0;
	font-size:2.7rem;
	justify-content: flex-start;
}
#pageHeader .container h1 span{
	margin-left:50px;
}
#pageHeader .container h2{
	margin:25px 0 20px;
	padding:0;
	font-size:2.4rem;
	font-weight: normal;
}
#pageHeader .container h1 img{
	margin-right:2.2rem;
}
#pageHeader .container p{
	font-size:1.8rem;
}
#pageHeader .container .otherPage{
	margin-top:2.7rem;
	font-size:1.5rem;
	display: flex;
	justify-content: end;
	align-items: center;
}
#pageHeader .container .otherPage a{
	font-size:1.5rem;
}

#faq {
	width:1000px;
	min-width: 1000px;
}



#faq h1 div{
    padding: 15px 50px 13px 35px;
    clip-path: polygon(0% 0%, 90% 0%, 100% 100%, 0% 100%);
    font-size: 2rem;
	min-width: 420px;
}
#faq h1 i{
	font-size:3rem;
}
#faq div.container{
	margin:0 auto 60px;
}
#faq div.container h2{
    font-size: 2.5rem;
	margin-top:4rem;
	letter-spacing: 1px;
}
#faq div.container h3{
	margin-top:3.8rem;
	font-size:1.6rem;
}
#faq div.container div.answer{
	font-size:1.5rem;
	/*display: flex;
	justify-content: space-between;*/
}
#faq div.container div.answer div{
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
	position: relative;
}
#faq div.container div.answer h4{
    text-indent: -2.5rem;
    padding-left: 2.5rem;
    margin: 3rem 0;
	width: 100%;
}
#faq div.container div.answer p{
	padding-left:2.5rem;
	width:800px;
}
#faq div.container div.answer p.pcimg{
	width:250px;
	text-align: right;
}

/* c_mansion */
#pageHeader .container p.c_mansion,
#c_mansion p.c_mansion {
    font-size: 2.9rem;
    margin: 10px 0;
}
#c_mansion .container,
#c_mansion p.c_mansion,
#c_mansion p.arrow{
	width: 1000px;
	margin:0 auto 50px;
}
#c_mansion .container p img{
	width:auto;
}
#c_mansion p.arrow img{
	width:auto;
}
#c_mansion p.c_mansion.low{
	font-size:1.8rem;
}
.c_mansion-contact{
	width: 1000px;
	margin:0 auto 30px;
	border:5px solid #b0c91b;
	border-radius: 15px;
	padding:3rem 4rem;
	font-size:2.5rem;
}


/* company */
#message div.container{
	width:1000px;
	margin:0 auto 30px;
}
#pageHeader .container h1.company span{
	margin-left:5.5rem;
}


/* lookup */
#lookup div.container{
	width:1000px;
	margin:0 auto 30px;
}
/* broker */
#broker div.container{
	width:1000px;
	margin:0 auto 30px;
}
/* form */
#form div.container{
	width:1000px;
	margin:0 auto 30px;
}
#lookup .contact p,
#lookup .contact h3{
	width:720px;
	margin-left:auto;
	margin-right:auto;
}

#wrapper .lookupPage .pointBlock{
	display: flex;
}
#wrapper .lookupPage .wrap{
	width:460px;
	min-width:460px;
}
#wrapper .lookupPage .wrap.long{
	width:100%;
}
#wrapper .lookupPage .pointIcon img {
  width: 100%;
  height: auto;
  object-fit: contain;
}
#lookup .contact,
#broker .contact{
	width: 960px;
	margin:0 auto 30px;
	border-radius: 15px;
	padding:3rem 4rem;
	font-size:1.8rem;
}
#broker .contact p{
	margin:0 auto;
	width:520px;
}
/* privacy */
#privacy div.container{
	width:1000px;
	margin:0 auto 30px;
}
#privacy div.container.small{
	width:96%;
	margin:0 auto 30px;
}

.check2{
	text-align: center;
	font-size: 2.5rem !important;
	font-weight: 700;
	margin:3rem 0;
}
/* ai output */

	#wrapper .sectionTitle{
		font-size:2.5rem;
		margin:3.5rem 0 1.8rem;
	}
	#form .sectionTitle2{
		font-size:2.2rem;
	}
	#wrapper .bodyText{ font-size:1.8rem; }
	#wrapper .bodyText.strong{ font-size:2.5rem; }
	#wrapper .bodyText .note{ font-size:1.8rem; color:#666; display:block; }


	#wrapper .numberedList > li{ font-size:1.6rem; }
	#wrapper .numberedList .indent{ font-size:1.5rem; }

	#wrapper .dotList > li{ font-size:1.6rem; }

	#wrapper .feeList{ font-size:1.6rem; }
	#wrapper .feeList .label{ min-width:22em; }
	#wrapper .feeList .small{ width:auto; margin-left:1em; }

	#wrapper .ctaBox{ padding:3.5rem; }
	#wrapper .ctaBox p{ font-size:1.6rem; }
	#wrapper .ctaBox .ctaButton{ font-size:1.7rem; }

	/* フォームを左ラベル・右入力の2カラムに */
	#wrapper .formRow{
		flex-direction:row;
		align-items:flex-start;
		gap:2rem;
		padding:1.8rem 0;
	}
	#wrapper .formRow .formLabel{
		flex:0 0 22em;
		font-size:1.7rem;
		padding-top:.6em;
	}
	#wrapper .formRow .formField{ flex:1 1 auto; }
	#wrapper .formRow input[type=text],
	#wrapper .formRow input[type=tel],
	#wrapper .formRow input[type=email]{ max-width:32em; }
	#wrapper .formRow textarea{ max-width:50em; }

	#wrapper .agreeBlock{ font-size:1.6rem; }
	#wrapper .submitBlock .submitButton{ font-size:1.7rem; }

	#wrapper .checkList > li{ font-size:1.5rem; padding:0;margin-bottom:1rem;line-height: 1.4; }

	#wrapper .message p{ font-size:2rem; }
	#wrapper .message .catchLine{ font-size:4.6rem; }

	#wrapper .philosophy .lead{ font-size:2rem; }
	#wrapper .philosophy .slogan{ font-size:2rem; }
	#wrapper .principle h3{ font-size:4.4rem; }
	#wrapper .principle p{ font-size:2rem; }

	#wrapper .companyTable{ font-size:1.8rem; }
	#wrapper .companyTable th{ width:12em; padding:0.5rem 1.5rem; }
	#wrapper .companyTable td{ padding:0.5rem 1.5rem; }

	#wrapper .socialBlock .csr-container{
		display:flex;
		gap:11rem;
	}
	#wrapper .socialBlock .csr-container .supporter{
		width:420px;
		margin-bottom:0;
	}
	#wrapper .socialBlock .csr-container .clearn{
		width:350px;	
	}
	#wrapper .socialBlock .leadText{ font-size:2rem; }
	#wrapper .socialBlock .subTitle{ font-size:2.2rem; }
	#wrapper .socialBlock .badgeRow{ gap:4rem; }
	#wrapper .socialBlock .badgeRow img{ max-width:180px; }
	#wrapper .socialBlock .caption{ font-size:1.8rem; }
	#wrapper .socialBlock .photoRow img{ height:179px;}

	#wrapper .relatedList{
		flex-direction:row;
		justify-content: space-between;
	}
	#wrapper .relatedCard{ width:30%;; }
	#wrapper .relatedCard h4{ font-size:1.7rem; }
	#wrapper .relatedCard p{ font-size:1.5rem; }
#wrapper .relatedCard p.img{ padding-top:2rem;}

	#wrapper .privacyTitle{ font-size:3rem; }
	#wrapper .privacyIntro{ font-size:1.6rem; }
	#wrapper .privacySection h3{ font-size:1.9rem; }
	#wrapper .privacySection .indent{ font-size:1.6rem; }



	/* lookup：PCでは2カラム＋写真ギャラリーは横並び */
	#wrapper .lookupPage .leadBlock{
		flex-direction:row;
		gap:4rem;
		align-items:flex-start;
		margin-bottom:2.5rem;
	}
	#wrapper .lookupPage .leadBlock .leadCol{ flex:1 1 0; }
	#wrapper .lookupPage .leadImage{ flex:0 0 38%; }
	#wrapper .lookupPage .leadImage .imgPlaceholder{ min-height:42rem; }
	#wrapper .lookupPage .pointTitle{ font-size:2rem; }
	#wrapper .lookupPage .pointBody{ font-size:1.8rem; }
	#wrapper .lookupPage .pointIcon{
		 width:5rem;
		 height:auto;
		 margin-right:2.7rem;
	}
	#wrapper .lookupPage .photoGallery{
		flex-direction:row;
		gap:0rem;
	}
	#wrapper .lookupPage .photoGallery .photoItem{
		/*flex:1 1 0;
		min-height:22rem;*/
	}
	#wrapper .lookupPage .photoGallery .photoItem img{
		width:auto;
		margin: 0 auto
	}
	#wrapper .lookupPage .contactBox{ padding:4rem 3rem; }
	#wrapper .lookupPage .contactBox .contactTitle{ font-size:2rem; }
	#wrapper .lookupPage .contactBox p{ font-size:1.5rem; }
	#wrapper .lookupPage .contactBox .contactButton{ font-size:1.6rem; }




}
