@charset "utf-8";


body {
	/*スマホで勝手に文字が大きくなる対策*/
	-webkit-text-size-adjust: 100%;
}

#contents {
	background: #FFF;
	width: 100%;
	padding: 0;
}

.org-main * {
	color: #1C1C1C;
	font-family: "Noto Sans JP";
}
.org-main * a:hover {
	opacity: 1;
}
.org-main {
	overflow: hidden;
}

.org-page [class*="__section"] {
	padding-block: 100px;
}
[class*="__section"].bg-gray {
	background: #F4F4F4;
}
	.section__inner {
		width: 1140px;
		margin: 0 auto;
	}
		[class*="section__headline--"] {
			display: flex;
			flex-direction: column;
			justify-content: center;
			align-items: center;
			gap: 14px;
			font-size: 42px;
			font-weight: 700;
			line-height: 1.25;
			letter-spacing: 1.68px;
		}
		.section__headline--white {
			color: #FFF;
		}
			[class*="section__headline--"] span {
				font-size: 24px;
				font-weight: 700;
				line-height: 1;
				font-family: "Lato", sans-serif;
				background: linear-gradient(134deg, var(--color-primary-default-main, #FF5800) 13.84%, var(--color-primary-default-sub, #FF9D00) 85.38%);
				background-clip: text;
				-webkit-background-clip: text;
				-webkit-text-fill-color: transparent;
				letter-spacing: 0;
			}

/*---------------------- メイン画像 ----------------------*/

.mainview__section {
	padding: 63px 0 46px;
	background: url(../images/bg_mainview.webp) no-repeat center / cover;
}
	.mainview__label {
		display: flex;
		justify-content: center;
		align-items: center;
		width: fit-content;
		background: rgba(255, 255, 255, 0.20);
		padding: 7px 10px;
		font-size: 14px;
		font-weight: 500;
		line-height: 1;
		color: #FFF;
		margin-bottom: 10px;
	}
	.mainview__catch {
		font-size: 46px;
		font-weight: 700;
		line-height: 1.3;
		color: #FFF;
		margin-bottom: 19px;
		position: relative;
	}
	.mainview__catch::before {
		content: '';
		background: url(../images/img_mainview-deco.webp) no-repeat center / cover;
		display: block;
		width: 94px;
		height: 105px;
		position: absolute;
		top: -66px;
		left: 485px;
	}
	.mainview__text {
		font-size: 20px;
		font-weight: 500;
		line-height: 1.5;
		color: #FFF;
		margin-bottom: 40px;
	}
	.mainview__result {
		margin-bottom: 41px;
	}
	.mainview__more a {
		display: flex;
		justify-content: center;
		align-items: center;
		width: 320px;
		height: 70px;
		background: #FF5800;
		border: 1px solid #FF5800;
		border-radius: 5px;
		box-shadow: 2px 2px 8px 0 rgba(0, 0, 0, 0.30);
		font-size: 20px;
		font-weight: 700;
		line-height: 1.5;
		color: #FFF;
		padding-right: 5px;
		position: relative;
	}
	.mainview__more a:hover {
		background: #FFF;
		color: #FF5800;
		box-shadow: unset;
	}
		.mainview__more a span {
			display: flex;
			justify-content: center;
			align-items: center;
			width: 22px;
			height: 22px;
			background: #FFF;
			border-radius: 50%;
			position: absolute;
			top: 50%;
			right: 15px;
			transform: translateY(-50%);
		}
		.mainview__more a:hover span {
			background: #FF5800;
			color: #FFF;
		}
			.mainview__more a span svg {
				width: 5px;
				height: 8px;
				fill: none;
				stroke: #FF5800;
			}
			.mainview__more a:hover svg {
				stroke: #FFF;
			}
/*-------------- マンスリーマンション運営代行とは --------------*/

.management__sub-title {
	margin-top: 41px;
	font-size: 24px;
	font-weight: 700;
	line-height: 1.5;
	text-align: center;
}
	.management__sub-title span {
		font-size: 24px;
		font-weight: 700;
		line-height: 1.5;
		position: relative;
		z-index: 1;
	}
		.management__sub-title span::before {
			content: '';
			display: block;
			width: 100%;
			height: 12px;
			background: #FFCF8C;
			position: absolute;
			left: 0;
			right: 0;
			bottom: 0;
			z-index: -1;
		}
.management__list {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 28px 38px;
	margin-top: 38px;
}
	.management__item {
		display: flex;
		align-items: center;
		gap: 20px;
	}
		.management__image {
			min-width: 182px;
			position: relative;
		}
			.management__number {
				font-size: 30px;
				font-weight: 700;
				line-height: 1.25;
				letter-spacing: 1.2px;
				font-family: "Lato", sans-serif;
				background: linear-gradient(134deg, var(--color-primary-default-main, #FF5800) 13.84%, var(--color-primary-default-sub, #FF9D00) 85.38%);
				background-clip: text;
				-webkit-background-clip: text;
				-webkit-text-fill-color: transparent;
				position: absolute;
				top: -8px;
				left: 11px;
			}
		.management__title {
			font-size: 24px;
			font-weight: 700;
			line-height: 1.25;
			margin-bottom: 12px;
		}
		.management__text {
			font-size: 14px;
			font-weight: 400;
			line-height: 1.5;
		}

/*-------------- こんな方は運営代行がオススメ --------------*/

.recommend__contents {
	display: flex;
	justify-content: center;
	gap: 15px;
	margin-top: 41px;
	position: relative;
}
	.recommend__contents::before {
		content: '';
		background: url(../images/icon_recommend-mascot.svg) no-repeat center / cover;
		display: block;
		width: 87px;
		height: 116px;
		position: absolute;
		top: -104px;
		left: 55px;
	}
	.recommend__box {
		width: 370px;
		padding: 40px 28px 0;
		background: #FFF;
		border: 1px solid #EBEBEB;
		border-radius: 10px;
	}
		.recommend__title {
			font-size: 24px;
			font-weight: 700;
			line-height: 1.5;
			text-align: center;
			margin-bottom: 12px;
		}
		.recommend__text {
			font-size: 14px;
			font-weight: 400;
			line-height: 1.8;
			margin-bottom: 24px;
		}
		.recommend__image {
			width: 290px;
			height: 170px;
		}

/*-------------- 運営代行サービス --------------*/

.service__list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 30px;
	margin-top: 42px;
}
	.service__item {
		display: flex;
		align-items: center;
		gap: 30px;
		width: 555px;
		background: #FFF;
	}
		.service__image {
			min-width: 151px;
		}
		.service__detail {
			padding-right: 30px;
		}
			.service__title {
				font-size: 20px;
				font-weight: 700;
				line-height: 1;
				margin-bottom: 12px;
			}
			.service__text {
				font-size: 14px;
				font-weight: 400;
				line-height: 1.8;
			}

/*-------------- 弊社が選ばれる3つのポイント --------------*/

.point__section {
	padding-block: 100px 153px;
	background: url(../images/bg_point.webp) no-repeat center / cover;
}
	.point__top-text {
		font-size: 24px;
		font-weight: 700;
		line-height: 1.7;
		color: #FFF;
		text-align: center;
		margin-top: 39px;
	}
		.point__top-text span {
			font-size: 36px;
			font-weight: 700;
			line-height: 1.25;
			letter-spacing: 1.44px;
			color: #FF5800;
			margin-left: 5px;
		}
	.point__list {
		margin-top: 37px;
		display: flex;
		gap: 80px;
		position: relative;
	}
	.point__list::after {
		content: '';
		background: url(../images/icon_point-mascot.svg) no-repeat center / cover;
		display: block;
		width: 116px;
		height: 110px;
		position: absolute;
		right: 0;
		bottom: -128px;
	}
		.point__item {
			width: 306px;
		}
		.point__item:first-child {
            transform: translatey(53px);
        }
        .point__item:nth-child(2) {
            transform: translateY(26px);
        }
			.point__top {
				display: flex;
				gap: 0 4px;
				position: relative;
			}
				.point__image {
					min-width: 306px;
				}
				.point__title {
					height: max-content;
					writing-mode: vertical-rl;
					font-size: 24px;
					font-weight: 700;
					color: var(--white);
					margin-top: 4px;
					letter-spacing: 0.24em;
					position: absolute;
					top: 0;
					right: -40px;
				}
				.point__item:nth-child(3) .point__title {
					right: -64px;
					line-height: 1.2;
				}
			.point__text {
				font-weight: 500;
				line-height: 1.8;
				color: var(--white);
				margin-top: 9px;
			}

/*-------------- 管理運用の流れ --------------*/

.flow__top-text {
	margin-top: 42px;
	font-size: 24px;
	font-weight: 700;
	line-height: 1.5;
	text-align: center;
	margin-bottom: 40px;
}
	.flow__top-text span {
		font-size: 24px;
		font-weight: 700;
		line-height: 1.5;
		position: relative;
		z-index: 1;
	}
	.flow__top-text span::before {
		content: '';
		background: #FFCF8C;
		display: block;
		width: 242px;
		height: 12px;
		position: absolute;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: -1;
	}
.flow__team {
	padding: 29px 34px 35px;
	border: 1px solid #1C1C1C;
	margin-bottom: 30px;
	position: relative;
}
.flow__team::after {
	content: '';
	background: url(../images/icon_flow-arrow.svg) no-repeat center / cover;
	display: block;
	width: 15px;
	height: 162px;
	position: absolute;
	left: 50%;
	bottom: -162px;
	transform: translateX(-50%);
}
	.flow__team-title {
		display: flex;
		justify-content: center;
		align-items: center;
		gap: 5px;
		font-size: 24px;
		font-weight: 700;
		line-height: 1.25;
		margin-bottom: 29px;
	}
		.flow__team-title span {
			width: 83px;
			height: 40px;
		}
	.flow__team-list {
		display: flex;
		justify-content: space-between;
		gap: 10px;
		position: relative;
	}
		.flow__team-item {
			width: 260px;
			height: 173px;
			position: relative;
		}
			.flow__team-name {
				width: max-content;
				padding: 6px 15px 8px;
				background: #FF5800;
				border-radius: 9999px;
				font-size: 16px;
				font-weight: 700;
				line-height: 1;
				color: #FFF;
				position: absolute;
				left: 50%;
				bottom: -14px;
				transform: translateX(-50%);
			}
.flow__middle-text {
	padding: 10px 0;
	font-size: 30px;
	font-weight: 700;
	line-height: 1.25;
	letter-spacing: 1.2px;
	text-indent: 1.2px;
	text-align: center;
	background: #FFF;
	margin-bottom: 31px;
	position: relative;
}
	.flow__middle-text span {
		font-size: 30px;
		font-weight: 700;
		line-height: 1.25;
		letter-spacing: 1.2px;
		color: #FF5800;
	}
.flow__service-list {
	display: flex;
	justify-content: space-between;
	gap: 10px;
	padding: 35px;
	background: #F4F4F4;
}
	.flow__service-item {
		width: 260px;
		height: auto;
		background: #FFF;
	}
		.flow__service-image {
			width: 260px;
			height: 173px;
		}
		.flow__service-detail {
			padding: 20px;
		}
			.flow__service-name {
				font-size: 20px;
				font-weight: 700;
				line-height: 1;
				margin-bottom: 5px;
			}
			.flow__service-text {
				font-size: 14px;
				font-weight: 400;
				line-height: 1.76;
			}

/*-------------- 選べる2つのプラン --------------*/

.plan__section {
	background: url(../images/bg_plan.webp) no-repeat center / cover;
}
	.plan__top-text {
		font-size: 24px;
		font-weight: 700;
		line-height: 2.05;
		text-align: center;
		margin-top: 39px;
		margin-bottom: 30px;
	}
		.plan__top-text span {
			font-size: 24px;
			font-weight: 700;
			line-height: 1.25;
			color: #FFF;
			border-radius: 5px;
			margin-right: 4px;
		}
		.plan__top-text .sublease {
			display: inline-block;
			height: fit-content;
			padding: 8px 0 8px 12px;
			background: #FF9D00;
		}
		.plan__top-text .plan {
			display: inline-block;
			height: fit-content;
			padding: 8px 12px;
			background: #FF5800;
		}
	.plan__contents {
		padding: 20px 30px 30px;
		background: #FFF;
		border-radius: 20px;
	}
		.plan__example {
			font-size: 24px;
			font-weight: 700;
			line-height: 1.25;
			text-align: center;
			margin-bottom: 30px;
		}
		.plan__list {
			display: flex;
			justify-content: space-between;
			gap: 20px;
		}
			[class*="plan__group--"] {
				width: 530px;
				padding: 36px 20px 20px;
				border-radius: 20px;
				position: relative;
			}
			.plan__group--sublease {
				background: linear-gradient(0deg, rgba(255, 255, 255, 0.88) 0%, rgba(255, 255, 255, 0.88) 100%), var(--color-primary-default-sub, #FF9D00);

				.plan__label {
					background: #FF9D00;
				}
				.plan__item:not(:first-of-type) {
					margin-top: 67px;
				}
			}
			.plan__group--plan {
				background: linear-gradient(0deg, rgba(255, 255, 255, 0.90) 0%, rgba(255, 255, 255, 0.90) 100%), #FF5800;

				.plan__label {
					background: #FF5800;
				}
			}
				.plan__label {
					font-size: 16px;
					font-weight: 700;
					line-height: 1.8;
					color: #FFF;
					padding: 2px 15px 4px;
					border-radius: 9999px;
					position: absolute;
					top: -19px;
					left: 50%;
					transform: translateX(-50%);
				}
				.plan__title {
					font-size: 24px;
					font-weight: 700;
					line-height: 1;
					text-align: center;
					margin-bottom: 20px;
				}
					.plan__title span {
						font-size: 20px;
						font-weight: 700;
						line-height: 1;
					}
				.plan__box {
					padding: 29px 30px 30px;
					background: #FFF;
					border-radius: 10px;
				}
					.plan__item:not(:first-of-type) {
						margin-top: 20px;
						padding-top: 20px;
						border-top: 1px solid #EBEBEB;
					}
						.plan__item-title {
							font-size: 16px;
							font-weight: 700;
							line-height: 1;
							text-align: center;
						}
						.plan__item-text {
							font-size: 14px;
							font-weight: 400;
							line-height: 1.5;
							text-align: center;
							margin-top: 12px;
						}
						.plan__table {
							margin-top: 13px;
						}
						.plan__item-bottom-text {
							font-size: 14px;
							font-weight: 400;
							line-height: 1.5;
							text-align: center;
							margin-top: 11px;
						}
							.plan__item-bottom-text span {
								font-size: 12px;
								font-weight: 400;
								line-height: 1.5;
							}
		.plan__flow {
			margin-top: 39px;
		}
			.plan__flow-title {
				font-size: 30px;
				font-weight: 700;
				line-height: 1.25;
				letter-spacing: 1.2px;
				text-align: center;
				margin-bottom: 33px;
			}
			.plan__flow-list {
				display: flex;
				justify-content: center;
				gap: 24px;
				position: relative;
			}
			.plan__flow-list::before {
				content: '';
				background: #FFF;
				width: 900px;
				height: 4px;
				margin: 0 140px;
				position: absolute;
				top: 82px;
			}
			.plan__flow-list::after {
				content: '';
				background: url(../images/icon_plan-mascot.svg) no-repeat center / cover;
				display: block;
				width: 95px;
				height: 133px;
				position: absolute;
				left: -48px;
				bottom: -40px;
			}
				.plan__flow-item {
					width: 170px;
					position: relative;
				}
					.plan__flow-step {
						display: flex;
						justify-content: center;
						align-items: center;
						width: 82px;
						height: 26px;
						background: #1C1C1C;
						border-radius: 110px;
						font-size: 14px;
						font-weight: 700;
						line-height: 1;
						color: #FFF;
						position: absolute;
						top: -12px;
						left: 50%;
						transform: translateX(-50%);
					}
					.plan__flow-image {
						width: 170px;
						height: 170px;
						margin-bottom: 10px;
					}
					.plan__flow-text {
						font-size: 14px;
						font-weight: 700;
						line-height: 1.25;
						text-align: center;
					}

.achievements__contents {
	margin-top: 40px;
	display: flex;
	justify-content: space-between;
}
	.achievements__box {
		width: 555px;
	}
		.achievements__image {
			margin-bottom: 22px;
		}
			.achievements__image span {
				display: block;
				font-size: 14px;
				font-weight: 400;
				line-height: 1;
				text-align: right;
				margin-top: 4px;
			}
		.achievements__info {
			display: flex;
			gap: 24px;
			margin-bottom: 24px;
			margin-left: 9px;
		}
			.achievements__info span {
				font-size: 14px;
				font-weight: 700;
				line-height: 1.25;
			}
		.achievements__title {
			font-size: 24px;
			font-weight: 700;
			line-height: 1.25;
			margin-bottom: 10px;
		}
			.achievements__title span {
				font-size: 24px;
				font-weight: 700;
				line-height: 1.25;
				color: #FF5800;
			}
		.achievements__text {
			font-size: 16px;
			font-weight: 400;
			line-height: 1.8;
		}

/*-------------- 弊社管理物件 --------------*/

.properties__contents {
	display: flex;
	align-items: center;
	gap: 80px;
}
	.section__head-left {
		min-width: 280px;

		.section__headline--main {
			align-items: flex-start;
		}
		.more__button {
			margin-top: 50px;
		}
	}
		.more__button a {
			display: flex;
			justify-content: center;
			align-items: center;
			width: 280px;
			height: 50px;
			background: #1C1C1C;
			border: 1px solid #1C1C1C;
			border-radius: 5px;
			box-shadow: 2px 2px 8px 0 rgba(0, 0, 0, 0.30);
			font-size: 16px;
			font-weight: 700;
			line-height: 1.5;
			color: #FFF;
			padding-right: 6px;
			position: relative;
		}
		.more__button a:hover {
			background: #FFF;
			color: #1C1C1C;
			box-shadow: unset;
		}
			.more__button a span {
				display: flex;
				justify-content: center;
				align-items: center;
				width: 22px;
				height: 22px;
				background: #FFF;
				border-radius: 50%;
				position: absolute;
				top: 50%;
				right: 15px;
				transform: translateY(-50%);
				padding-left: 2px;
			}
			.more__button a:hover span {
				background: #1C1C1C;
			}
				.more__button a svg {
					width: 5px;
					height: 8px;
					fill: none;
					stroke: #1C1C1C;
				}
				.more__button a:hover svg {
					stroke: #FFF;
				}
	.slider__contents-right {
		overflow: hidden;
		min-width: 1430px;
		z-index: 0;
	}
		.slider__item {
			width: 270px;
		}
			.slider__image {
				width: 100%;
				height: 203px;
				margin-bottom: 8px;
				overflow: hidden;
			}
				.slider__image img {
					width: 100%;
					height: 100%;
					object-fit: cover;
					transition: .4s;
				}
				.slider__item a:hover img {
					transform: scale(1.05);
				}
			.column__date {
				font-size: 14px;
				font-weight: 700;
				line-height: 1;
				margin-bottom: 5px;
			}
			.column__text {
				font-size: 16px;
				font-weight: 700;
				line-height: 1.25;
				display: -webkit-box;
				-webkit-box-orient: vertical;
				-webkit-line-clamp: 2;
				overflow: hidden;
			}

/*-------------- オーナー様の声 --------------*/

.voice__list {
	margin-top: 42px;
	display: flex;
	justify-content: space-between;
	gap: 30px;
}
	.voice__item {
		width: 360px;
	}
		.voice__image {
			width: 100%;
			height: 240px;
			margin-bottom: 15px;
			position: relative;
		}
			.voice__note {
				font-size: 14px;
				font-weight: 400;
				line-height: 1;
				position: absolute;
				top: 4px;
				right: 3px;
			}
			.voice__name {
				padding: 5px 0 5px 8px;
				background: #FFF;
				font-size: 14px;
				font-weight: 700;
				line-height: 1;
				position: absolute;
				left: 0;
				bottom: 0;
			}
		.voice__title {
			font-size: 20px;
			font-weight: 700;
			line-height: 1.5;
			text-align: center;
			margin-bottom: 5px;
		}
			.voice__title span {
				font-size: 20px;
				font-weight: 700;
				line-height: 1.5;
				color: #FF5800;
			}
		.voice__text {
			font-size: 16px;
			font-weight: 400;
			line-height: 1.8;
		}

/*-------------- お役立ちコラム --------------*/

.column__contents {
	display: flex;
	align-items: center;
	gap: 78px;
	position: relative;
}
	.column__contents::before {
		content: '';
		background: url(../images/icon_column-mascot.svg) no-repeat center / cover;
		display: block;
		width: 99px;
		height: 119px;
		position: absolute;
		top: -116px;
		right: -10px;
		z-index: 1;
	}
	.column__contents .section__head-left {
		min-width: 305px;
	}

/*-------------- よくある質問 --------------*/

.faq__contents {
	margin-top: 40px;
	display: flex;
	flex-direction: column;
	gap: 26px;
}
	.faq__question {
		display: flex;
		align-items: center;
		gap: 10px;
		padding: 12px;
		background: #F4F4F4;
		font-size: 14px;
		font-weight: 700;
		line-height: 1.8;
		margin-bottom: 10px;
	}
		.faq__question::before {
			content: 'Q';
			display: flex;
			justify-content: center;
			align-items: center;
			width: 58px;
			height: 58px;
			background: #1C1C1C;
			border-radius: 50%;
			font-size: 24px;
			font-weight: 700;
			line-height: 1;
			color: #FFF;
			font-family: "Lato", sans-serif;
		}
	.faq__answer {
		display: flex;
		align-items: center;
		gap: 10px;
		font-size: 14px;
		font-weight: 400;
		line-height: 1.8;
		padding: 12px;
	}
	.faq__answer::before {
		content: 'A';
		display: flex;
		justify-content: center;
		align-items: center;
		width: 58px;
		height: 58px;
		background: #FFF;
		border: 1px solid #FF5800;
		border-radius: 50%;
		font-size: 24px;
		font-weight: 700;
		line-height: 1;
		color: #FF5800;
		font-family: "Lato", sans-serif;
	}

/*-------------- Brattoにお任せください --------------*/

.contact__section {
	background: url(../images/bg_contact.webp) no-repeat top center / cover;
}
	.contact__inner {
		position: relative;
	}
		.contact__inner::before {
			content: '';
			background: url(../images/icon_contact-mascot.svg) no-repeat center / cover;
			display: block;
			width: 94px;
			height: 124px;
			position: absolute;
			top: -213px;
			left: -48px;
		}
	.contact__head {
		display: flex;
		justify-content: space-between;
		margin-bottom: 30px;
	}
		.contact__head-title {
			font-size: 30px;
			font-weight: 700;
			line-height: 1.25;
			letter-spacing: 1.2px;
			color: #FFF;
		}
			.contact__head-title span {
				display: inline-block;
				font-size: 16px;
				font-weight: 700;
				line-height: 1.5;
				color: #FFF;
				letter-spacing: 0;
				margin-bottom: 12px;
			}
			.contact__head-title .contact__head-logo {
				width: 214px;
				margin-bottom: 0;
			}
			.contact__head-flex {
				display: flex;
				align-items: center;
				gap: 8px;
				font-size: 30px;
				font-weight: 700;
				line-height: 1.25;
				letter-spacing: 1.2px;
				color: #FFF;
			}
		.contact__more a {
			display: flex;
			justify-content: center;
			align-items: center;
			width: 400px;
			height: 96px;
			border-radius: 5px;
			background: #FF5800;
			border: 1px solid #FF5800;
			font-size: 20px;
			font-weight: 700;
			line-height: 1;
			color: #FFF;
			padding-right: 9px;
			position: relative;
		}
		.contact__more a:hover {
			background: #FFF;
			color: #FF5800;
		}
			.contact__more a span {
				display: flex;
				justify-content: center;
				align-items: center;
				width: 26px;
				height: 26px;
				background: #FFF;
				border-radius: 50%;
				position: absolute;
				top: 50%;
				right: 25px;
				transform: translateY(-50%);
				padding-left: 2px;
			}
			.contact__more a:hover span {
				background: #FF5800;
			}
				.contact__more a svg {
					width: 5px;
					height: 8px;
					fill: none;
					stroke: #FF5800;
				}
				.contact__more a:hover svg {
					stroke: #FFF;
				}
	.contact__list {
		display: flex;
		justify-content: space-between;
		gap: 30px;
	}
		.contact__item {
			width: 204px;
		}
			.contact__image {
				margin-bottom: 8px;
			}
			.contact__text {
				font-size: 16px;
				font-weight: 700;
				line-height: 1.5;
				color: #FFF;
				text-align: center;
			}