@charset "utf-8";


body {
	/*スマホで勝手に文字が大きくなる対策*/
	-webkit-text-size-adjust: 100%;
}

#contents{
	width: 100%;
	padding: 0;
}

.l-main *{
	font-family: 'メイリオ', 'Meiryo', 'ＭＳ ゴシック', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', sans-serif;
}

.l-main{
	position: relative;
	width: auto;
	padding: 0;
	overflow: hidden;
}

.reservation-side-link{
	display: none!important;/* テンプレでHTMLにstyleかかっているのでこちらで強制的に上書きしています */
}

html {
    scrollbar-gutter: stable;
}

/* メイン画像 */

.main__box{
	position: relative;
}

.main__img{
	height: 450px
}

.main__img img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

/* フロート */

.float__box {
	position: fixed;
	top: 250px;
	right: 2px;
	z-index: 3;
	display: flex;
	flex-direction: column;
	gap: 5px;
	width: 96px;
}

.float__box.is-hidden {
	visibility: hidden;
	opacity: 0;
	pointer-events: none;
}

.float__item {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 2px;
	width: 96px;
	padding: 10px 16px;
	border-radius: 5px;
	box-sizing: border-box;
	text-decoration: none;
}

.float__item--mail {
	background-color: #114786;
}

.float__item--satei {
	background-color: #EC9929;
}

.float__img {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 40px;
	height: 40px;
}

.float__img img {
	display: block;
	object-fit: contain;
}

.float__txt {
	color: #FFF;
	font-size: 16px;
	font-weight: 700;
	line-height: normal;
	text-align: center;
	white-space: nowrap;
}

/* 共通 */

[class*="section__wrapper--"]{
	position: relative;
	padding-block: 80px;
}

[class*="section__inner--"]{
	position: relative;
	width: 1140px;
	margin: 0 auto;
}

[class*="ttl__box--"]{
	position: relative;
	text-align: center;
	margin-bottom: 30px;
}

[class*="section__ttl--"]{
	color: #333;
	text-align: center;
	font-size: 26px;
	font-weight: 700;
	margin-bottom: 6px;
}

[class*="section__sub-ttl--"]{
	color: #114786;
	text-align: center;
	font-size: 12px;
	font-weight: 400;
	line-height: 208%;
	letter-spacing: 2.4px;
}

[class*="flex__list--"]{
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
}

[class*="detail__txt--"]{
	text-align: center;
	color: #040000;
	font-size: 20px;
	font-weight: 700;
	margin-bottom: 15px;
}

/* こんなお悩みありませんか */

.section__wrapper--worries{
	background: linear-gradient(180deg, #DFE6EF 0%, #D6DEE9 100%);
	padding-bottom: 0;
}

.flex__list--worries::before{
	display: block;
	content: "";
	background: url(../images/worries_before.webp) no-repeat center / cover;
	width: 267px;
	height: 235px;
	margin: 190px auto 0;
}

[class*="worries__item--"]{
	position: absolute;
	display: flex;
	align-items: center;
	height: 220px;
	padding-left: 29px;
}

.worries__item--reform{
	background: url(../images/worries_bubble01.webp) no-repeat center / cover;
	width: 254px;
	left: 120px;
	bottom: 54px;
}

.worries__item--management{
	background: url(../images/worries_bubble02.webp) no-repeat center / cover;
	width: 238px;
	left: 297px;
	bottom: 212px;
}

.worries__item--sell{
	background: url(../images/worries_bubble03.webp) no-repeat center / cover;
	width: 235px;
	right: 310px;
	bottom: 212px;
	padding-left: 46px;
}

.worries__item--inheritance{
	background: url(../images/worries_bubble04.webp) no-repeat center / cover;
	width: 249px;
	right: 130px;
	bottom: 54px;
	padding-left: 57px;
}

.worries__txt{
	color: #040000;
	text-align: center;
	font-size: 18px;
	font-weight: 400;
	line-height: 154%; 
}

/* 空き家を放置し続けるとこんな問題が */

.section__wrapper--trouble *{
	color: #fff;
}

.section__wrapper--trouble{
	background: linear-gradient(180deg, #90A3BA -12.97%, #90A3BA 100%);
	z-index: 1;
	padding-bottom: 9px;
}

.section__wrapper--trouble::before{
	position: absolute;
	content: "";
	background: url(../images/trouble_before.webp) no-repeat center / cover;
	width: 100%;
	height: 118px;
	bottom: -114px;
	left: 50%;
	transform: translateX(-50%);
	z-index: 0;
}

.flex__list--trouble{
	gap: 45px;
}

[class*="trouble__item--"]{
	width: 212px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 17px;
}

.trouble__img{
	width: 212px;
}

.trouble__img img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.trouble__txt{
	color: #FFF;
	text-align: center;
	font-size: 20px;
	font-weight: 700;
}

/* そのお悩み弊社で解決いたします！ */

.section__wrapper--solution{
	background: url(../images/solution_bg.webp) no-repeat center / cover;
	width: 100%;
	padding-top: 192px;
}

.flex__list--solution{
	position: relative;
	flex-direction: column;
	gap: 20px;
	counter-reset: number;
}

.solution__item{
	position: relative;
	width: 1140px;
	display: flex;
	/* align-items: center; */
	gap: 40px;
	background-color: #fff;
	counter-increment: number;
}

.solution__item:nth-child(even){
	flex-direction: row-reverse;
}

.solution__item::before{
	position: absolute;
	content: "";
	background-color: #FFEACD;
	width: 10px;
	height: 280px;
	top: 0;
	bottom: 0;
	margin: auto;
	right: 0;
}

.solution__item:nth-child(even)::before{
	right: inherit;
	left: 0 ;
}

.solution__img{
	width: 345px;
}

.solution__img img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.solution__box{
	width: 705px;
	padding: 47px 0 0;
}

.solution__ttl{
	position: relative;
	color: #040000;
	font-size: 20px;
	font-weight: 700;
	padding-left: 50px;
	margin-bottom: 15px;
}

.solution__ttl::before{
	position: absolute;
	content: counter(number);
	background-color: #EC9929;
	width: 40px;
	height: 40px;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #FFF;
	font-size: 20px;
	font-weight: 700;
	top: 0;
	bottom: 0;
	margin: auto;
	left: 0;
}

.solution__txt{
	color: #333;
	font-size: 16px;
	font-weight: 400;
	line-height: 187%;
}

/* 不動産取引実績一覧 */

.ttl__box--achievement{
	margin-bottom: 33px;
}

.achievement__swiper{
	width: 1920px;
	margin-left: calc((1140px - 1920px) / 2);
	overflow: hidden;
}

.achievement__swiper.noslide{
	width: 1140px;
	margin-left: 0;
	overflow: visible;
}

.achievement__swiper.noslide .flex__list--achievement.swiper-wrapper{
	justify-content: center;
	gap: 30px;
}

.achievement__swiper.noslide .swiper-option-wrap,
.swiper-option-wrap.is-hidden{
	display: none;
}

.flex__list--achievement.swiper-wrapper{
	justify-content: flex-start;
	align-items: stretch;
	list-style: none;
	padding: 0;
	margin: 0;
}

.achievement__item{
	width: 300px;
}

.achievement__item a{
	display: block;
	text-decoration: none;
}

.achievement__img{
	position: relative;
	width: 300px;
	height: 225px;
	overflow: hidden;
	margin-bottom: 12px;
}

.achievement__img img{
	width: 100%;
	height: 100%;
	object-fit: contain;
	display: block;
	background-color: #f5f5f5;
}

.achievement__box{
	display: flex;
	flex-direction: column;
	gap: 5px;
}

.achievement__ttl{
	color: #114786;
	font-size: 18px;
	font-weight: 700;
	line-height: 160%;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
	line-clamp: 1;
}

.achievement__txt{
	color: #263238;
	font-size: 16px;
	font-weight: 400;
	line-height: 175%;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	line-clamp: 3;
}

.achievement__swiper .swiper-option-wrap{
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 20px;
	margin-top: 30px;
}

.achievement__swiper .swiper-button-prev,
.achievement__swiper .swiper-button-next{
	position: relative;
	top: auto;
	left: auto;
	right: auto;
	width: 30px;
	height: 30px;
	margin: 0;
}

.achievement__swiper .swiper-button-prev::after,
.achievement__swiper .swiper-button-next::after{
	content: "";
	width: 30px;
	height: 30px;
	background: url(../images/bkn_arrow.svg) no-repeat center / contain;
}

.achievement__swiper .swiper-button-next::after{
	transform: rotate(180deg);
}

.achievement__swiper .swiper-pagination{
	position: relative;
	top: auto;
	bottom: auto;
	left: auto;
	width: auto;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 10px;
}

.achievement__swiper .swiper-pagination-bullet{
	width: 10px;
	height: 10px;
	margin: 0!important;
	border-radius: 50%;
	background-color: #E3E3E3;
	opacity: 1;
}

.achievement__swiper .swiper-pagination-bullet-active{
	background-color: #114786;
}

.section__inner--achievement .btn__box{
	margin-top: 30px;
	text-align: center;
}

.section__inner--achievement .btn__link{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 209px;
	height: 55px;
	margin: 0 auto;
	border-radius: 4px;
	background-color: #EC9929;
	color: #FFF;
	font-size: 14px;
	font-weight: 400;
	text-decoration: none;
}

/* あなたに最適な「不動産活用・処分」診断 */

.section__wrapper--assessment{
	background-color: #F3F7FB;
}

.section__inner--assessment{
	width: auto;
}

.ttl__box--assessment{
	margin-bottom: 32px;
}

.assessment__img{
	width: 1260px;
	height: 796px;
	margin: 0 auto;
}

.assessment__img img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

/* 管理プランをお選びいただけます */

.section__ttl--plant{
	position: relative;
}

.section__ttl--plant::before{
	display: block;
	content: "";
	background: url(../images/plan_sub-ttl.webp) no-repeat center / cover;
	width: 180px;
	height: 46px;
	margin: 0 auto 7px;
}

.flex__list--plan{
	justify-content: space-between;
	counter-reset: consist;
}

.plan__item{
	width: 374px;
	border: 1px solid #D7E5EB;
	border-radius: 10px;
	background-color: #fff;
	display: flex;
	align-items: center;
	gap: 15px;
	counter-increment: consist;
	padding: 34px 18px 29px 25px;
}

.plan__img{
	width: 90px;
}

.plan__img img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.plan__box{
	display: flex;
	flex-direction: column;
	gap: 15px;
}

.plan__ttl{
	position: relative;
	color: #EC9929;
	font-size: 20px;
	font-weight: 700;
	padding-left: 42px;
}

.plan__ttl::before{
	position: absolute;
	content: counter(consist, decimal-leading-zero);
	width: 36px;
	height: 36px;
	background-color: #EC9929;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #FFF;
	text-align: center;
	font-size: 20px;
	font-weight: 700;
	top: 0;
	bottom: 0;
	margin: auto;
	left: 0;
}

.plan__txt{
	color: #333;
	font-size: 16px;
	font-weight: 400;
	line-height: 160%;
}

.detail__txt--service{
	margin-top: 40px;
	margin-bottom: 28px;
}

/* プラン別 サービス内容比較 */

.service__table-wrap{
	width: 1140px;
}

.service__table{
	width: 1140px;
	border-collapse: collapse;
	table-layout: fixed;
}

.service__table th,
.service__table td{
	box-sizing: border-box;
}

.service__col--category{
	width: 56px;
}

.service__col--item{
	width: 226px;
}

.service__col--light,
.service__col--premium{
	width: 286px;
}

.service__col--standard{
	width: 286px;
}

.service__corner{
	width: 282px;
	height: 110px;
	margin-top: 13px;
	background-color: #6B7B9D;
	border-radius: 10px 10px 0 0;
	vertical-align: top;
}

.service__head{
	width: 286px;
	height: 110px;
	padding: 19px 10px 0;
	color: #FFF;
	text-align: center;
	vertical-align: top;
	border-radius: 10px 10px 0 0;
}

.service__head--light{
	margin-top: 13px;
	height: 110px;
	background-color: #4882C4;
}

.service__head--standard{
	position: relative;
	background-color: #F4823B;
}

.service__head--premium{
	margin-top: 13px;
	height: 110px;
	background-color: #426D9F;
}

.service__badge{
	position: absolute;
	top: -12px;
	left: 50%;
	transform: translateX(-50%);
	width: 100px;
	height: 26px;
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 9999px;
	background-color: #FFFF00;
	color: #F4823B;
	font-size: 14px;
	font-weight: 700;
	line-height: 160%;
}

.service__head-name{
	font-size: 20px;
	font-weight: 700;
	line-height: normal;
	margin-bottom: 5px;
	color: #fff;
}

.service__head--standard .service__head-name{
	/* margin-top: 13px; */
}

.service__head-price{
	display: flex;
	justify-content: center;
	align-items: flex-end;
	gap: 3px;
	margin-bottom: 4px;
	font-weight: 400;
	line-height: 1;
	color: #fff;
}

.service__head-yen{
	font-size: 14px;
}

.service__head-num{
	font-size: 20px;
}

.service__head-unit{
	font-size: 14px;
}

.service__head-time{
	font-size: 16px;
	font-weight: 400;
	line-height: 1;
	color: #fff;
}

.service__category{
	width: 56px;
	min-width: 56px;
	max-width: 56px;
	padding: 0;
	background-color: #6B7B9D;
	color: #FFF;
	font-size: 20px;
	font-weight: 700;
	line-height: 110%;
	writing-mode: vertical-rl;
	text-orientation: mixed;
	text-align: center;
	vertical-align: middle;
	border-top: 1px solid #FFF;
}

.service__category--last{
	border-radius: 0 0 0 10px;
}

.service__item{
	width: 226px;
	min-width: 226px;
	max-width: 226px;
	height: 52px;
	padding: 0 10px;
	border-bottom: 1px solid #DDD;
	border-right: 1px solid #DDD;
	background-color: #FFF;
	color: #333;
	font-size: 14px;
	font-weight: 400;
	line-height: 160%;
	text-align: center;
	vertical-align: middle;
}

.service__item--gray{
	background-color: #F4F4F4;
}

.service__item-ttl{
	font-size: 14px;
	line-height: 160%;
}

.service__item-sub{
	color: #898989;
	font-size: 10px;
	line-height: 160%;
}

.service__row--section-end .service__item{
	height: 51px;
	border-bottom: 1px solid #6B7B9D;
}

.service__cell{
	width: 286px;
	height: 52px;
	border-bottom: 1px solid #DDD;
	text-align: center;
	vertical-align: middle;
	font-size: 14px;
	font-weight: 400;
	line-height: 160%;
	color: #333;
}

.service__row--section-end .service__cell{
	height: 51px;
	border-bottom: 1px solid #6B7B9D;
}

.service__cell--light{
	border-left: 1px solid #DDD;
	background-color: #F8FAFF;
}

.service__cell--light.service__cell--gray{
	background-color: #EDF3FF;
}

.service__cell--premium{
	border-right: 1px solid #DDD;
	background-color: #F8FAFF;
}

.service__cell--premium.service__cell--gray{
	background-color: #EDF3FF;
}

.service__cell--standard{
	position: relative;
	width: 286px;
	background-color: #FFF9F2;
	background-clip: padding-box;
}

.service__cell--standard::before{
	position: absolute;
	content: "";
	background-color: #F4823B;
	width: 5px;
	height: 52px;
	top: 0;
	bottom: 0;
	margin: auto;
	left: 0;
}

.service__cell--standard::after{
	position: absolute;
	content: "";
	background-color: #F4823B;
	width: 5px;
	height: 52px;
	top: 0;
	bottom: 0;
	margin: auto;
	right: 0;
}

.service__cell--standard-even{
	background-color: #FFEEDD;
}

.service__row--section-end .service__cell--standard{
	border-bottom: 1px solid #F4823B;
}

.service__cell--standard-last{
	border-bottom: 5px solid #F4823B;
}

.service__check{
	display: block;
	width: 24px;
	height: 24px;
	margin: 0 auto;
}

.service__none{
	color: #BBB;
	font-size: 18px;
	font-weight: 400;
	line-height: 1;
}

.service__notes{
	margin-top: 10px;
}

.service__notes-item{
	color: #333;
	font-size: 12px;
	font-weight: 400;
	line-height: 18px;
}

/* よくある質問 */

.section__wrapper--faq{
	background-color: #F3F7FB;
}

.faq__contents{
	display: flex;
	flex-direction: column;
	gap: 40px;
}

.flex__list--faq-type{
	justify-content: space-between;
	align-items: flex-start;
	gap: 40px;
	list-style: none;
	padding: 0;
	margin: 0;
}

.faq__type{
	width: 550px;
}

.faq__type-head{
	display: flex;
	justify-content: center;
	align-items: center;
	height: 62px;
	border-radius: 5px 5px 0 0;
	color: #FFF;
	font-size: 20px;
	font-weight: 700;
	line-height: normal;
	text-align: center;
}

.faq__type--agency .faq__type-head{
	background-color: #5794E4;
}

.faq__type--purchase .faq__type-head{
	background-color: #F4823B;
}

.faq__type-body{
	display: flex;
	flex-direction: column;
	gap: 10px;
	align-items: center;
	padding: 20px 40px 30px;
	border-radius: 0 0 5px 5px;
	background-color: #FFF;
}

.faq__type-txt{
	width: 460px;
	color: #040000;
	font-size: 18px;
	font-weight: 400;
	line-height: 160%;
	text-align: center;
}

.faq__type-em{
	font-weight: 700;
	line-height: 160%;
}

.faq__type-em--blue{
	color: #114786;
}

.faq__type-em--orange{
	color: #F4823B;
}

.faq__type-list{
	display: flex;
	justify-content: center;
	gap: 12px;
	width: 470px;
	list-style: none;
	padding: 0;
	margin: 0;
}

.faq__type--agency .faq__type-list,
.faq__type--purchase .faq__type-list{
	width: 470px;
}

.faq__type-item{
	display: flex;
	justify-content: center;
	align-items: center;
	height: 78px;
	padding: 0 6px;
	border-radius: 10px;
	font-size: 18px;
	font-weight: 700;
	line-height: 140%;
	text-align: center;
}

.faq__type--agency .faq__type-item{
	flex: 1;
}

.faq__type--purchase .faq__type-item{
	flex: 1;
}

.faq__type-item--blue{
	background-color: #F2F4FF;
	color: #8899CC;
}

.faq__type-item--orange{
	background-color: #FFFADD;
	color: #F4823B;
}

.faq__box{
	border-radius: 10px;
	background-color: #FFF;
	padding-bottom: 35px;
}

.faq__tab-list{
	display: flex;
	list-style: none;
	padding: 0;
	margin: 0;
}

.faq__tab-item{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 570px;
	height: 65px;
	font-size: 20px;
	font-weight: 700;
	line-height: normal;
	text-align: center;
	border-radius: 10px 10px 0 0;
	cursor: pointer;
}

.faq__tab-item:not(.is-active){
	background-color: #E3E3E3;
	color: #898989;
}

.faq__tab-item--agency.is-active{
	background-color: #5794E4;
	color: #FFF;
}

.faq__tab-item--purchase.is-active{
	background-color: #F4823B;
	color: #FFF;
}

.faq__panel{
	display: none;
	padding: 0 35px;
}

.faq__panel.is-active{
	display: block;
}

.faq__list{
	width: 100%;
}

.faq__item{
	display: flex;
	flex-direction: column;
	gap: 15px;
	padding: 38px 0;
	border-bottom: 1px solid #D7E6EB;
}

.faq__question{
	display: flex;
	align-items: flex-end;
	gap: 12px;
	margin: 0;
}

.faq__answer{
	display: flex;
	align-items: flex-start;
	gap: 12px;
}

.faq__icon{
	flex-shrink: 0;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 33px;
	height: 33px;
	font-size: 16px;
	font-weight: 400;
	line-height: 160%;
}

.faq__icon--q{
	border: 1px solid #114786;
	background-color: #FFF;
	color: #727272;
}

.faq__icon--a{
	background-color: #EC9929;
	color: #FFF;
}

.faq__question-txt{
	color: #114786;
	font-size: 18px;
	font-weight: 700;
	line-height: 160%;
}

.faq__answer-txt{
	color: #333;
	font-size: 16px;
	font-weight: 400;
	line-height: 160%;
	margin: 0;
}

/* お問い合わせ */

.section__wrapper--contact {
    background: url(../images/contact_bg.webp) no-repeat center / cover;
    width: 100%;
    padding-block: 82px 92px;
}

.ttl__box--contact {
    margin-bottom: 32px;
}

.contact__box {
    width: 760px;
    margin: 0 auto;
}

.contact__txt {
    font-size: 16px;
    font-weight: 400;
    color: #040000;
    text-align: center;
}

.btn__box {
    display: flex;
    justify-content: space-between;
    margin-top: 30px;
}

[class*="btn__item--"] a {
    position: relative;
    width: 370px;
    height: 65px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 20px;
    font-weight: 700;
    color: #fff;
    background-color: #114786;
    border-radius: 32.5px;
    padding-left: 33px;
}

.btn__item--satei a {
    background-color: #EC9929;
}

[class*="btn__item--"] a::before {
    position: absolute;
    content: "";
    background: url(/images/freehtml/icon_mail.webp) no-repeat center / cover;
    width: 26px;
    height: 22px;
    top: 0;
    bottom: 0;
    margin: auto;
    left: 88px;
}

.btn__item--satei a::before {
    background: url(/images/freehtml/icon_satei.webp) no-repeat center / cover;
    width: 23px;
    height: 27px;
    left: 80px;
}

.time__box {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 11px;
    margin-top: 20px;
}

.time__item p {
    font-size: 14px;
    font-weight: 400;
    color: #010101;
}
