@charset "utf-8";
.l-page * img {
	max-width: 100%;
}
.l-page {
	background: #F6F7F1;
	padding-bottom: 101px;
	overflow: hidden;
}

.contents_inner {
	width: 1140px;
    margin: 0 auto;
}

.mv_contents {
	height: 413px;
}
.mv_contents img {
	width: 100%;
    height: 100%;
	object-fit: none;
}
[class*="contents_ttl"] {
	font-size: 32px;
	font-weight: bold;
	text-align: center;
	letter-spacing: 0.09em;
	position: relative;
	padding-bottom: 18px;
	margin-bottom: 39px;
}
.l-page [class*="contents_ttl"] span {
	font-size: 14px;
	color: #806A98;
	font-family: 'Noto Sans JP';
	display: block;
	letter-spacing: 0.08em;
}
[class*="contents_ttl"]::after {
	content: '';
	background: #806A98;
	width: 60px;
	height: 4px;
	border-radius: 5px;
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
}

.strength_inner {
	padding: 130px 0 104px;
	position: relative;
	z-index: 1;
}
.strength_inner::before {
	content: '';
	background: url(/images/top/bg_decoration01.png) no-repeat center;
	width: 347px;
	height: 231px;
	position: absolute;
    top: 303px;
    left: -285px;
	z-index: -1;
}
.strength_inner::after {
	content: '';
	background: url(/images/top/bg_decoration02.png) no-repeat center;
	width: 485px;
	height: 220px;
	position: absolute;
    bottom: -1px;
    right: -357px;
	z-index: -1;
}
.contents_ttl--strength::before {
	content: '';
	background: url(/images/top/img_strength.png) no-repeat center;
	background-size: 100%;
	width: 40px;
	height: 38px;
	position: absolute;
	top: -51px;
	left: 50%;
	transform: translateX(-50%);
}
.strength_ttl {
	font-size: 30px;
    font-weight: bold;
	text-align: center;
}
.decoration01 {
	font-size: 40px;
    font-weight: bold;
    color: #806A98;
}
.decoration02 {
    font-size: 40px;
    font-weight: bold;
}
.strength_point_wrap {
	margin-top: 26px;
}
.strength_text {
	font-size: 24px;
    font-weight: bold;
    text-align: center;
	margin-bottom: 28px;
}
.strength_text span {
	font-size: 28px;
	position: relative;
	z-index: 1;
}
.strength_text span::after {
	content: '';
	background: rgba(128, 106, 152, 0.3);
	width: 161px;
	height: 15px;
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	z-index: -1;
}

.point_list {
	display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
}
.point_item {
	background: #fff;
    padding: 30px;
	border-radius: 10px;
}
.point_item:nth-child(-n+2) {
	width: 555px;
}
.point_item:last-child {
	margin-top: 29px;
}
.point_top {
	display: flex;
    justify-content: flex-start;
    align-items: center;
}
.point_label {
    border: 2px dashed #806A98;
    border-radius: 25px;
    font-size: 16px;
    font-weight: 700;
    color: #806A98;
    padding: 8px 21px 7px;
    font-family: 'Noto Sans JP';
    margin-right: 10px;
}
.point_label span {
    font-size: 28px;
    font-weight: 500;
    color: #806A98;
    font-family: 'Noto Sans JP';
    line-height: 1;
	margin-left: 2px;
}
.point_ttl {
	font-size: 22px;
	font-weight: bold;
}
.l-page .point_text {
    font-size: 16px;
    font-family: 'Noto Sans JP';
    color: #333333;
    margin-top: 14px;
    line-height: 1.7;
}

.service_inner {
	padding: 47px 0 96px;
	position: relative;
	z-index: 1;
}
.service_inner::before {
	content: '';
	background: url(/images/top/bg_decoration03.png) no-repeat center;
	width: 547px;
	height: 188px;
	position: absolute;
	top: 111px;
    left: -421px;
	z-index: -1;
}
.service_inner::after {
	content: '';
	background: url(/images/top/bg_decoration04.png) no-repeat center;
	width: 496px;
	height: 224px;
	position: absolute;
    bottom: 2px;
    right: -314px;
	z-index: -1;
}
.contents_ttl--service {
	margin-bottom: 62px;
}
.contents_ttl--service::before {
	content: '';
	background: url(/images/top/img_service.png) no-repeat center;
	width: 39px;
	height: 40px;
	position: absolute;
	top: -53px;
	left: 50%;
	transform: translateX(-50%);
}
.service_wrap {
	background: url(/images/top/bg_service.png) no-repeat center;
	height: 518px;
	position: relative;
}
[class*="service_item"] dt {
	font-size: 30px;
    font-weight: bold;
    margin-bottom: 16px;
}
[class*="service_item"] dd {
    font-size: 16px;
    font-weight: bold;
}
.service_item--buy {
	position: absolute;
    top: -46px;
    left: 209px;
}
.service_item--build {
	position: absolute;
	top: 142px;
	left: 53px;
}
.service_item--management {
	position: absolute;
	top: 363px;
	left: 110px;
}
.service_item--rent {
	position: absolute;
	top: -46px;
	right: 200px;
}
.service_item--sell {
	position: absolute;
	top: 142px;
	right: 94px;
}
.service_item--lend {
	position: absolute;
	top: 362px;
	right: 210px;
}
.service_item--buy dt {
	color: #96CC7A;
}
.service_item--build dt {
	color: #81C1B5;
}
.service_item--management dt {
	color: #806A98;
}
.service_item--rent dt {
	color: #D3923E;
}
.service_item--sell dt {
	color: #EFBF03;
}
.service_item--lend dt {
	color: #5DAD45;
}

.operation_inner {
	padding-top: 35px;
	padding-bottom: 100px;
	position: relative;
	z-index: 1;
}
.operation_inner::before {
	content: '';
	background: url(/images/top/bg_decoration05.png) no-repeat center;
	width: 480px;
	height: 197px;
	position: absolute;
    top: 480px;
    left: -321px;
	z-index: -1;
}
.contents_ttl--operation::before {
	content: '';
	background: url(/images/top/img_operation.png) no-repeat center;
	width: 43px;
	height: 46px;
	position: absolute;
	top: -60px;
	left: 50%;
	transform: translateX(-50%);
}
.operation_voice_list {
	background: url(/images/top/bg_operation.png) no-repeat center;
	height: 436px;
	position: relative;
}
[class*="voice_item"] {
	font-size: 20px;
    font-weight: bold;
    color: #806A98;
    text-align: center;
    position: absolute;
    line-height: 1.4;
}
.voice_item--01 {
	left: 168px;
    bottom: 134px;
}
.voice_item--02 {
    top: 65px;
    left: 323px;
}
.voice_item--03 {
    top: 53px;
    right: 342px;
}
.voice_item--04 {
    bottom: 97px;
    right: 160px;
}

.flow_wrap {
	margin-top: 97px;
}
.flow_ttl {
	font-size: 32px;
    font-weight: bold;
    text-align: center;
	position: relative;
	margin-bottom: 25px;
}
.flow_ttl::after {
	content: '';
	width: 560px;
	height: 3px;
	background: #806A98;
	border-radius: 50px;
	position: absolute;
	bottom: -6px;
	left: 50%;
	transform: translateX(-50%);
}
.flow_ttl .big_text {
	font-size: 54px;
    font-weight: 500;
    color: #54AC3A;
}
.half_text {
	font-size: 46px;
    font-weight: bold;
}
.flow_text {
	font-size: 20px;
	font-weight: bold;
	text-align: center;
	margin-bottom: 39px;
}
.flow_list {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	width: 950px;
	margin: 0 auto;
}
.flow_item {
	display: flex;
	justify-content: center;
	align-items: center;
	color: #fff;
	font-size: 20px;
	font-weight: bold;
	border-radius: 12px;
	width: 254px;
	height: 80px;
	background: #806A98;
	position: relative;
}
.flow_item:nth-child(-n+3) {
	margin-bottom: 63px;
}
.flow_item:nth-child(-n+2)::before {
	content: '';
	background: url(/images/top/img_arrow01.png) no-repeat center;
	width: 74px;
	height: 29px;
	position: absolute;
	top: 50%;
	right: -84px;
	transform: translateY(-50%);
}
.flow_item:nth-child(3)::before {
	content: '';
	background: url(/images/top/img_arrow03.png) no-repeat center;
	width: 29px;
	height: 43px;
	position: absolute;
	top: 90px;
	left: 50%;
	transform: translateX(-50%);
}
.flow_item:nth-child(4)::before {
	content: '';
	background: url(/images/top/img_arrow04.png) no-repeat center;
	width: 29px;
	height: 43px;
	position: absolute;
	top: -53px;
	left: 50%;
	transform: translateX(-50%);
}
.flow_item:nth-child(5)::before,
.flow_item:nth-child(6)::before {
	content: '';
	background: url(/images/top/img_arrow02.png) no-repeat center;
	width: 74px;
	height: 29px;
	position: absolute;
	top: 50%;
	left: -84px;
	transform: translateY(-50%);
}

.contact_contents {
	background: #DDEDD5;
}
.contact_inner {
	width: 1140px;
    margin: 0 auto;
	padding: 98px 0 99px;
}
.cnt_ttl {
	font-size: 32px;
	font-weight: bold;
	text-align: center;
	margin-bottom: 18px;
}
.bnr_item {
	width: 1140px;
	margin: 0 auto 30px;
}
.contact_wrap {
	border: 5px solid #54AC3A;
	background: #fff;
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	padding: 34px 177px 36px 177px;
}
.contact_left {
	margin-right: 61px;
}
.contact_tel {
	display: flex;
	justify-content: center;
	align-items: center;
	margin-top: 4px;
}
.tel_icon {
	margin-right: 3px;
}
.tel_num {
	font-family: 'Noto Sans JP';
	font-size: 40px;
	font-weight: 500;
	color: #54AC3A;
	line-height: 1.4;
}
.company_info {
	font-size: 14px;
	text-align: center;
}
.contact_right a {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	width: 400px;
	height: 80px;
	background: #54AC3A;
	font-size: 25px;
	font-weight: bold;
	color: #fff;
	border-radius: 40px;
}
.mail_icon {
	margin: 0 20px 0 98px;
}

.reform_inner {
	padding: 194px 0 153px;
	position: relative;
	z-index: 1;
}
.reform_inner::before {
	content: '';
	background: url(/images/top/bg_decoration06.png) no-repeat center;
	width: 547px;
	height: 188px;
	position: absolute;
    top: 100px;
    right: -390px;
	z-index: -1;
}
.reform_inner::after {
	content: '';
	background: url(/images/top/bg_decoration07.png) no-repeat center;
	width: 398px;
	height: 261px;
	position: absolute;
    bottom: 248px;
    left: -347px;
	z-index: -1;
}
.contents_ttl--reform {
	margin-bottom: 50px;
}
.contents_ttl--reform::before {
	content: '';
	background: url(/images/top/img_reform.png) no-repeat center;
	width: 39px;
	height: 40px;
	position: absolute;
	top: -53px;
	left: 50%;
	transform: translateX(-50%);	
}
.reform_list {
	display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
}
.reform_item {
	position: relative;
	width: 360px;
}
.reform_item:nth-child(-n+3) {
	margin-bottom: 50px;
}
.reform_item dt {
	font-size: 30px;
    font-weight: 500;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    position: absolute;
    width: 190px;
    height: 60px;
    top: -29px;
    left: 50%;
    transform: translateX(-50%);
}
.reform_item:nth-child(odd) dt {
    background: rgba(173,194,190, 0.9);
}
.reform_item:nth-child(even) dt {
    background: rgba(128,106,152, 0.9);
}
.reform_ttl {
	font-size: 26px;
	font-weight: bold;
	text-align: center;
	margin: 25px 0 12px;
}
.reform_text {
	font-size: 16px;
	font-weight: 500;
	text-align: center;
	line-height: 1.7;
}

.commitment_contents {
	position: relative;
	z-index: 1;
}
.contents_ttl--commitment::before {
	content: '';
	background: url(/images/top/img_commitment.png) no-repeat center;
	width: 45px;
	height: 43px;
	position: absolute;
	top: -56px;
	left: 50%;
	transform: translateX(-50%);	
}
.commitment_inner {
	position: relative;
	z-index: 1;
}
.commitment_inner::before {
	content: '';
	background: url(/images/top/bg_decoration08.png) no-repeat center;
	width: 485px;
	height: 220px;
	position: absolute;
    top: -95px;
    right: -336px;
	z-index: -1;
}
.kodawari_list {
	display: flex;
    justify-content: flex-start;
    align-items: center;
}
.kodawari_item {
	width: 196px;
    text-align: center;
}
.kodawari_item.family {
	width: 216px;
}
.kodawari_item:not(:first-child) {
	margin-left: 40px;
}
.kodawari_item:nth-child(4),
.kodawari_item:last-child {
	margin-left: 30px;
}
.kodawari_item a {
	font-size: 24px;
	font-weight: bold;
	color: #806A98;
}
.kodawari_item a img {
	margin-bottom: 11px;
}

.swiper-slide {
	width: 320px !important;
}
.recommend_inner {
    padding: 153px 0px 0;
    position: relative;
}
.contents_ttl--recommend::before {
	content: '';
	background: url(/images/top/img_reform.png) no-repeat center;
	width: 39px;
	height: 40px;
	position: absolute;
	top: -53px;
	left: 50%;
	transform: translateX(-50%);	
}
.bkn_list {
	position: relative;
}
.bkn_list02 {
	display: flex;
	justify-content: center;
}
.bkn_list02 .bkn_item:not(:last-child) {
	margin-right: 30px;
}
.case_list {
	width: calc(320px + 15px);
    margin: 0 auto 26px;
    position: relative;
}
.bkn_list.noslide,
.case_list.noslide {
	display: flex;
    justify-content: center;
}
.bkn_list .slick-list,
.case_list .slick-list {
	overflow: visible;
}
.bkn_item a {
	display: block;
	width: 320px;
}
.case_item a {
	display: block;
	width: 320px;
    margin: 0 15px;
}
.bkn_img,
.case_img {
	width: 320px;
	height: 240px;
	position: relative;
	margin-bottom: 6px;
}
.bkn_img span {
	display: flex;
    justify-content: center;
    align-items: center;
    font-size: 16px;
    font-weight: 500;
    color: #fff;
    background: #806A98;
    border-radius: 30px;
    position: absolute;
    top: 12px;
    left: 12px;
    padding: 4px 16px;
}
.bkn_img img,
.case_img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.bkn_address {
	font-size: 18px;
	font-weight: bold;
	overflow: hidden;
	white-space: nowrap;
    text-overflow: ellipsis;
}
.bkn_detail {
	display: flex;
	justify-content: flex-start;
	align-items: baseline;
}
.bkn_price {
	font-size: 20px;
	font-weight: bold;
	margin-right: 8px;
}
.bkn_price .price {
	font-size: 22px;
	font-weight: bold;
}
.bkn_madori {
	font-size: 16px;
	font-weight: 500;
}
.bkn_traffic {
	font-size: 16px;
	overflow: hidden;
	white-space: nowrap;
    text-overflow: ellipsis;
}
.bkn_list .slick-dots {
	position: absolute;
    bottom: -50px;
    left: 50%;
    transform: translateX(-50%);
}
.case_list .slick-dots {
	position: absolute;
    bottom: -47px;
    left: 50%;
    transform: translateX(-50%);
}
.bkn_list .slick-dots button,
.case_list .slick-dots button {
	background: #ADC2BE;
	width: 14px;
	height: 14px;
}
.slick-dots .slick-active button {
	background: #806A98;
}
.bkn_more {
    width: 1140px;
    margin: 0 auto;
    text-align: right;
    position: relative;
	z-index: 100;
}
.bkn_more a {
    font-size: 22px;
    font-weight: 500;
    padding-right: 50px;
	position: absolute;
	bottom: 3px;
    right: 0;
	z-index: 100;
}
.bkn_more a::before {
	content: '';
	background: #333333;
	width: 242px;
	height: 1px;
	position: absolute;
	bottom: 3px;
	left: 0;
}
.bkn_more a::after {
	content: '';
	background: url(/images/top/img_more.png) no-repeat center;
	width: 40px;
	height: 40px;
	position: absolute;
	top: -7px;
	right: 0;
}
[class*="mainSlide__arw"] {
	position: absolute;
	top: 358px;
	cursor: pointer;
}
.case_list [class*="mainSlide__arw"] {
	position: absolute;
	top: 344px;
	cursor: pointer;
}
.mainSlide__arw--prev {
	background: url(/images/top/img_arrow-prev.png) no-repeat center;
	width: 40px;
	height: 40px;
	left: 17px;
}
.case_list .mainSlide__arw--prev {
	left: 41px;
}
.mainSlide__arw--next {
	background: url(/images/top/img_arrow-next.png) no-repeat center;
	width: 40px;
	height: 40px;
	right: 16px;
}
.case_list .mainSlide__arw--next {
	right: 40px;
}

.sale_inner {
	padding: 154px 0 0;
	position: relative;
}
.sale_inner::before {
	content: '';
	background: url(/images/top/bg_decoration09.png) no-repeat center;
	width: 348px;
	height: 231px;
	position: absolute;
	top: 62px;
    left: -8px;
}
.contents_ttl--sale::before {
	content: '';
	background: url(/images/top/img_reform.png) no-repeat center;
	width: 39px;
	height: 40px;
	position: absolute;
	top: -53px;
	left: 50%;
	transform: translateX(-50%);	
}
.sale_more a::before {
	content: '';
	background: #333333;
	width: 154px;
	height: 1px;
	position: absolute;
	bottom: 3px;
	left: 0;
}

.case_inner {
	padding: 157px 0 51px;
}
.contents_ttl--case::before {
	content: '';
	background: url(/images/top/img_case.png) no-repeat center;
	width: 48px;
	height: 40px;
	position: absolute;
	top: -53px;
	left: 50%;
	transform: translateX(-50%);	
}
.case_ttl {
	font-size: 18px;
	font-weight: bold;
	text-align: center;
	margin-bottom: 4px;
}
.case_text {
	font-size: 14px;
	display: -webkit-box;
	overflow: hidden;
	-webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.blog_inner {
	padding: 146px 0 0;
	position: relative;
	z-index: 1;
}
.blog_inner::before {
	content: '';
	background: url(/images/top/bg_decoration10.png) no-repeat center;
	width: 480px;
	height: 197px;
	position: absolute;
	top: -35px;
    right: -421px;
	z-index: -1;
}
.blog_inner::after {
	content: '';
	background: url(/images/top/bg_decoration11.png) no-repeat center;
	width: 485px;
	height: 220px;
	position: absolute;
    bottom: 3px;
    left: -594px;
	z-index: -1;
}
.contents_ttl--blog::before {
	content: '';
	background: url(/images/top/img_blog.png) no-repeat center;
	width: 48px;
	height: 40px;
	position: absolute;
	top: -57px;
	left: 50%;
	transform: translateX(-50%);	
}
.blog_list {
	display: flex;
    justify-content: center;
	margin-bottom: 28px;
}
.blog_item {
	width: 360px;
}
.blog_item:not(:last-child) {
	margin-right: 30px;
}
.blog_img {
	width: 360px;
	height: 270px;
	margin-bottom: 10px;
}
.blog_img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.blog_label {
	display: flex;
    justify-content: flex-start;
    align-items: center;
	margin-bottom: 8px;
}
.l-page .category_name {
	background: #806A98;
    border-radius: 15px;
    color: #fff;
    font-size: 14px;
    font-weight: 500;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 4px 17px;
    margin-right: 10px;
	font-family: 'Noto Sans JP';
}
.l-page .category_time {
	font-family: 'Noto Sans JP';
	font-size: 14px;
	font-weight: 500;
}
.blog_ttl {
	font-size: 18px;
	font-weight: bold;
	display: -webkit-box;
	overflow: hidden;
	-webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
	margin-bottom: 6px;
}
.blog_text {
	font-size: 14px;
	display: -webkit-box;
	overflow: hidden;
	-webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}
.blog_more {
	width: 1140px;
	margin: 0 auto 0;
	text-align: right;
	padding-top: 6px;
}
.blog_more a {
    font-size: 22px;
    font-weight: 500;
    position: relative;
    padding-right: 50px;
}
.blog_more a::before {
	content: '';
	background: #333333;
	width: 220px;
	height: 1px;
	position: absolute;
	bottom: 3px;
	left: 0;
}
.blog_more a::after {
	content: '';
	background: url(/images/top/img_more.png) no-repeat center;
	width: 40px;
	height: 40px;
	position: absolute;
	top: -7px;
	right: 0;
}

.bkn__slider {
	min-height: 398px;
}
.l-page .slide-pagination-wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
    -moz-column-gap: 16px;
    column-gap: 16px;
    position: absolute;
    bottom: 0px;
    right: 0;
    left: 0;
    margin: auto;
    z-index: 10;
}
.l-page .swiper-button-prev,
.l-page .swiper-button-next {
	width: 40px;
    height: 40px;
    top: 50%;
    position: static;
    margin-top: initial;
}
.swiper-button-next:after, .swiper-rtl .swiper-button-prev:after,
.swiper-button-prev:after, .swiper-rtl .swiper-button-next:after {
    content: unset !important;
}
.l-page .swiper-pagination {
    position: static;
}
.l-page .swiper-horizontal > .l-page .swiper-pagination-bullets,
.l-page .swiper-pagination-bullets.swiper-pagination-horizontal,
.l-page .swiper-pagination-custom, .swiper-pagination-fraction {
    width: auto;
}
.l-page .swiper-pagination-bullet {
    width: 14px;
    height: 14px;
    background: #ADC2BE;
	opacity: 1;
}
.l-page .swiper-pagination-bullet.swiper-pagination-bullet-active {
    width: 14px;
    height: 14px;
    background: #806A98;
}
/*------------------------------
更新情報
--------------------------------*/
.news-list {
    width: 1040px;
    padding: 30px;
    box-sizing: border-box;
    overflow-y: scroll;
    background-color: #fff;
    height: 270px;
    margin: 0 auto;
}
ul.news-list::-webkit-scrollbar {
	width: 8px;
}
ul.news-list::-webkit-scrollbar-thumb {
    border-radius: 100px;
    background: #806a98;
}

	ul.news-list::-webkit-scrollbar-track{
		border-radius: 10px;
    background: #c9c6c6;
	}

	.news-list__items:first-of-type {
		border-top: none;
		padding-top: 11px;
	}
	
	.news-list__items {
		border-top: 1px solid #D8D8D8;
		padding: 24px 0;
		margin-right: 19px;
		display: flex;
	}
	.ui-narrow-section {
		padding: 60px 0 100px;
		position: relative;
		z-index: 1;
	}

.news_inner {
    padding: 154px 0 0;
    position: relative;
}

.news-more {
	width: 1140px;
	margin: 0 auto 0;
	text-align: right;
	padding-top: 50px;
}
.news-more a {
    font-size: 22px;
    font-weight: 500;
    position: relative;
    padding-right: 50px;
}
.news-more a::before {
    content: '';
    background: #333333;
    width: 154px;
    height: 1px;
    position: absolute;
    bottom: 1px;
    left: 0;
}
.news-more a::after {
    content: '';
    background: url(/images/top/img_more.png) no-repeat center;
    width: 40px;
    height: 40px;
    position: absolute;
    top: -7px;
    right: 2px;
    z-index: 2;
}
.contents_ttl--news::before {
    content: '';
    background: url(/images/top/img_news.png) no-repeat center;
    width: 39px;
    height: 40px;
    position: absolute;
    top: -53px;
    left: 50%;
    transform: translateX(-50%);
}
.news-list__date time {
    font-size: 16px;
}

.news-list__text {
    font-size: 16px;
}

.news-list__date {
    margin-right: 20px;
}
