:root {
	--btn_requirements_common: clamp(16px, 1.45vw, 28px);
	--btn_requirements_common_02: 6%;
	--btn_requirements_common_before: clamp(3.5px, 0.365vw, 7px);
}

.page {
	.main {
		&.page_message {
			.page-title {
				/* margin-top: var(--s_200_half); */
				margin-top: var(--s_100_half);
			}

			.page_mv {
				width: 100%;
				position: relative;
				padding-bottom: clamp(120px, 12vw, 230px);
				margin-bottom: clamp(65px, 5.73vw, 110px);

				@media screen and (min-width:1000px) {
					width: 81.25%;
					margin-left: auto;
				}

				.deco_title {
					color: var(--mainColor);
					position: absolute;
					left: 9%;
					bottom: 5%;

					.en {
						font-size: var(--s_95_half);
						line-height: 1.2em;
						display: block;
						margin-bottom: clamp(10px, 1.82vw, 35px);
					}

					.ja {
						font-size: var(--s_30_half);
						display: block;
					}
				}
			}

			.content-wrapper {
				@media screen and (min-width:1000px) {
					margin-bottom: var(--s_20_half);
				}

				.ceo_name-wrapper {
					font-size: var(--s_10-14);
					margin-bottom: clamp(70px, 5.73vw, 110px);
					margin: var(--s_50_half) 0 clamp(70px, 5.73vw, 110px);

					>div:not(:last-child) {
						margin-bottom: 12px;
					}
				}

				.ceo_name_ja {
					font-size: clamp(17.5px, 1.5625vw, 30px);
				}

				.ceo_deco_en {
					font-size: var(--s_10-14);
				}

				.content {
					& p {
						line-height: 2.2;
						font-size: clamp(16px, 0.93vw, 18px);
						margin-bottom: 2rem;
					}
				}
			}

			.sec-property {
				.img-wrapper {
					margin-bottom: clamp(60px, 4.17vw, 80px);
				}

				.introduction_title {
					text-align: center;
					font-size: clamp(18px, 2.08vw, 35px);
					margin-bottom: var(--s_30_half);
				}

				.content_propertyManagement {
					color: var(--mainColor);
					font-size: clamp(15px, 1.3vw, 25px);
					text-align: center;
					margin-bottom: clamp(59px, 5.2vw, 100px);
					line-height: 1.68em;
				}

				.list-property {
					margin-bottom: var(--s_100_half);

					.lead {
						font-size: clamp(14px, 1.04vw, 20px);

						&:first-of-type {
							margin-bottom: var(--s_40_half);
						}
					}

					.title {
						color: var(--mainColor);
						font-size: clamp(14px, 1.04vw, 20px);
						margin-bottom: var(--s_10_half);
						font-weight: 500;
						padding-bottom: var(--s_5_half);
						border-bottom: solid 1px var(--mainColor);
						display: inline-block;
					}

					.description {
						margin-bottom: var(--s_40_half);
						font-size: clamp(14px, 1.04vw, 20px);

						&:last-of-type {
							margin-bottom: var(--s_60_half);
						}
					}
				}
			}
		}

		.page-title {
			padding: 0 5%;
			color: var(--mainColor);
			text-align: center;
			margin-bottom: 7.33vw;

			@media screen and (min-width:1000px) {
				text-align: left;
				margin-bottom: 0;
			}

			.en {
				font-style: italic;
				font-size: clamp(50px, 6.77vw, 130px);
				font-weight: 100;

			}

			.ja {
				font-size: clamp(15px, 2.08vw, 40px);
				font-weight: 200;
			}
		}




		/* 組織を知る */
		&.page_organization {
			.sec {
				padding-top: 0;

				.page-title {
					margin-bottom: 6vw;
				}

				.lead {
					font-size: var(--s_30_half);
					margin-bottom: var(--s_100_half);
				}
			}

			@media screen and (min-width:1000px) {
				margin-top: 0;
			}

			.content-wrapper {
				.list_btn {
					display: flex;
					justify-content: space-between;
					max-width: 1144px;
					margin: 0 auto;
					flex-wrap: wrap;
					padding-bottom: var(--s_150_half);

					.item {
						flex-basis: 39.2vw;

						& a {
							display: block;
							padding: 17.8%;
							color: var(--mainColor_dark02);
							border: 2px solid var(--mainColor_dark02);
							border-radius: 4.6px;
							font-size: clamp(11px, 1.04vw, 20px);

							&::before {
								/* right: calc(var(--btn_requirements_common_02) + (var(--btn_requirements_common) / 2.7)); */
								right: calc(20% - var(--btn_requirements_common_before) / 2);
								border-top: 1.2px solid var(--wh);
								border-right: 1.2px solid var(--wh);
								width: var(--btn_requirements_common_before);
								height: var(--btn_requirements_common_before);
							}

							&::after {
								/* right: var(--btn_requirements_common_02); */
								right: 20%;
								top: 50%;
								transform: translate(50%, -50%);
								background: var(--mainColor_dark02);
								width: var(--btn_requirements_common);
								height: var(--btn_requirements_common);
							}
						}


						&:nth-child(-n+2) {
							margin-bottom: 5.33vw;

							@media screen and (min-width:1000px) {
								margin-bottom: 0;
							}
						}

						@media screen and (min-width:1000px) {
							flex-basis: 22.6%;
						}
					}
				}
			}

			.sec-office,
			.sec-modal {
				/* padding-top: clamp(80px, 24vw, 180px); */
				padding-bottom: clamp(90px, 14vw, 268px);

				.content-wrapper_1440 {
					width: 100%;
				}

				.list_office,
				.list_picture {
					display: flex;
					flex-wrap: wrap;
					justify-content: space-between;

					.item {
						&:not(:last-child) {
							/* margin-bottom: 5.3vw; */
							margin-bottom: 0.5vw;
						}


						@media screen and (min-width:1000px) {
							flex-basis: 32.6%;
							margin-bottom: 0.52vw;
						}
					}
				}
			}

			.sec-modal {

				/*モーダルを開くボタン*/
				.modal-open {
					/* position: fixed; */
					display: flex;
					align-items: center;
					justify-content: center;
					/* top: 50%;
					left: 50%;
					width: 300px;
					height: 50px; */
					font-weight: bold;
					color: #fff;
					background: #000;
					margin: auto;
					cursor: pointer;
					/* transform: translate(-50%, -50%); */
				}

				/*モーダル本体の指定 + モーダル外側の背景の指定*/
				.modal-container {
					position: fixed;
					top: 0;
					left: 0;
					width: 100%;
					height: 100%;
					text-align: center;
					background: rgba(0, 0, 0, 50%);
					padding: 40px 10px;
					overflow: auto;
					opacity: 0;
					visibility: hidden;
					transition: .3s;
					box-sizing: border-box;
					z-index: 5;
				}

				/*モーダル本体の擬似要素の指定*/
				.modal-container:before {
					content: "";
					display: inline-block;
					vertical-align: middle;
					height: 100%;
				}

				/*モーダル本体に「active」クラス付与した時のスタイル*/
				.modal-container.active {
					opacity: 1;
					visibility: visible;
				}

				/*モーダル枠の指定*/
				.modal-body {
					position: relative;
					display: inline-block;
					vertical-align: middle;
					max-width: 600px;
					width: 98%;
				}

				/*モーダルを閉じるボタンの指定*/
				.modal-close {
					position: absolute;
					display: flex;
					align-items: center;
					justify-content: center;
					top: -30px;
					right: 0px;
					width: 30px;
					height: 30px;
					font-size: 30px;
					color: #fff;
					cursor: pointer;
				}

				/*モーダル内のコンテンツの指定*/
				.modal-content {
					background: #fff;
					text-align: left;
					padding: 10px;

					& img {
						width: 100%;
						margin-bottom: var(--s_10_half);
					}

					.caption {
						font-size: var(--s_16_half);
					}
				}
			}

			.sec-humanresources {
				padding-bottom: clamp(85px, 10.2vw, 195px);

				.content-wrapper {
					.picture-wrapper {
						display: flex;
						flex-wrap: wrap;
						justify-content: space-between;
						margin-bottom: clamp(22px, 3.49vw, 67px);

						.img-wrapper {
							@media screen and (min-width:1000px) {
								flex-basis: 48.6%;
							}
						}

						.icon_plus {
							color: var(--mainColor_dark02);
							font-size: 40px;
							font-weight: bold;
							margin: 0 auto;
						}
					}

					.img-wrapper {
						text-align: center;
						margin: 0 auto;

						&.img-arrow {
							max-width: 194px;
							width: 26.1vw;
							margin-bottom: clamp(55px, 2.45vw, 47px);
						}
					}
				}

				& picture {
					&:not(:last-child) {
						@media screen and (min-width:1000px) {
							margin-bottom: clamp(0px, 3.49vw, 67px);
						}

					}

					@media screen and (min-width:1000px) {
						flex-basis: 50%;
						width: 48.6%;
					}


					& img {
						width: 100%;
					}
				}
			}

			.sec-welfare {
				.list_welfare {
					display: flex;
					flex-wrap: wrap;
					justify-content: space-between;
					max-width: 1150px;
					margin: 0 auto;
					/* margin-bottom: clamp(99px, 11.4vw, 220px); */
					margin-bottom: var(--s_80_half);
					gap: 2%;

					@media screen and (min-width:1000px) {
						justify-content: center;
					}

					.item {
						flex-basis: 39.7vw;
						margin-bottom: var(--s_30_half);

						@media screen and (min-width:1000px) {
							flex-basis: 18%;
						}
					}
				}

				.welfare_history_title {
					color: var(--mainColor_dark02);
					/* border: solid var(--s_2_half) var(--mainColor_dark02); */
					border-radius: 50px;
					text-align: center;
					width: clamp(255px, 26.5vw, 509px);
					margin: 0 auto;
					display: block;
					font-size: var(--s_30_half);
					padding: var(--s_20_half);
					margin-bottom: var(--s_50_half);
				}

				.list_welfare_history {
					margin-left: var(--s_16_half);
					margin-bottom: var(--s_40_half);

					.item {
						border-left: solid var(--s_2_half) var(--mainColor_dark02);

						&:first-child {
							border-left: 0;

							.item_title {
								border-left: solid var(--s_2_half) var(--mainColor_dark02);

								&::after {
									content: "";
									position: absolute;
									width: var(--s_32_half);
									height: var(--s_32_half);
									background-color: var(--wh);
									z-index: 0;
									top: 0;
									left: -2%;
								}
							}

							.item_description {
								border-left: solid var(--s_2_half) var(--mainColor_dark02);
							}
						}

						&:last-child {
							border-left: 0;

							.item_date {
								border-left: solid var(--s_2_half) var(--mainColor_dark02);
							}

							.item_title {
								border-left: solid var(--s_2_half) var(--mainColor_dark02);

								&::after {
									content: "";
									position: absolute;
									width: var(--s_32_half);
									height: 100%;
									background-color: var(--wh);
									z-index: 0;
									bottom: -20%;
									left: -2%;
								}
							}
						}
					}

					.item_date {
						color: var(--mainColor_dark02);
						font-size: var(--s_24_half);
						padding-bottom: var(--s_10_half);
						padding-left: var(--s_45_half);
					}

					.item_title {
						font-size: var(--s_30_half);
						font-weight: bold;
						line-height: 1;
						padding-bottom: var(--s_10_half);
						position: relative;
						padding-left: var(--s_45_half);


						&::before {
							content: "";
							position: absolute;
							left: calc(var(--s_16_half)*-1);
							top: 0;
							transform: translateY(0%);
							border: solid var(--s_2_half) var(--mainColor_dark02);
							width: var(--s_32_half);
							height: var(--s_32_half);
							border-radius: 50%;
							background-color: var(--wh);
							z-index: 1;
						}
					}

					.item_description {
						font-size: var(--s_22_half);
						padding-bottom: var(--s_30_half);
						line-height: 2;
						padding-left: var(--s_45_half);
						line-height: 1.3;
					}
				}
			}

			.sec-event {
				padding-bottom: 0;

				@media screen and (min-width:1000px) {
					padding-bottom: 0;
				}

				.list_event {
					.item {
						display: flex;
						justify-content: space-between;
						/* flex-direction: column-reverse; */

						&:nth-child(2n) {
							@media screen and (min-width:1000px) {
								/* flex-direction: row; */
								margin-left: auto;
							}

							.text_wrapper {
								.item_description {
									@media screen and (min-width:1000px) {
										margin-left: 0;
									}
								}

								.name {
									margin: 0 auto 0 0;
								}
							}
						}

						&+.item {
							/* margin-top: clamp(72px, 9.74vw, 187px); */

							@media screen and (min-width:1000px) {
								/* margin-top: 9.74vw; */
							}
						}

						@media screen and (min-width:1000px) {
							flex-direction: row-reverse;
							max-width: 100%;
						}

						.text_wrapper {
							padding-top: clamp(52.5px, 3.125vw, 60px);

							@media screen and (min-width:1000px) {
								flex-basis: 43.2%;
							}

							.name {
								text-align: center;
								font-size: var(--s_36_half);
								line-height: 1;
								padding-bottom: clamp(44px, 3.125vw, 60px);

								@media screen and (min-width:1000px) {
									text-align: left;
									width: 84%;
									margin: 0 0 0 auto;
								}
							}

							.item_description {
								font-size: clamp(14px, 1.04vw, 20px);
								width: 84%;
								margin: 0 auto;
								line-height: 2.1;

								@media screen and (min-width:1000px) {
									margin-right: 0;
								}

								&:not(:last-child) {
									padding-bottom: 18vw;
								}
							}
						}

						.img_wrapper {
							flex-basis: 46.8%;

							& img {
								width: 100%;
							}
						}
					}
				}
			}
		}

		/* 新卒採用 */
		&.page_freshers {
			.sec-lead {
				margin-bottom: var(--s_50_half);

				.lead-title {
					text-align: center;
					font-size: clamp(18px, 2.5vw, 48px);
					line-height: 1.8;
					margin-bottom: clamp(35px, 5.2vw, 50px);
					background-color: var(--wh);
					padding: 4%;
					position: relative;
					z-index: 1;
					/* line-height: 1.4; */
					/* -webkit-box-reflect: below -10px -webkit-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0) 5%, rgba(0, 0, 0, 0.2)); */

					@media screen and (min-width:1000px) {
						padding: 2%;

						&::before {}
					}

					.underLine {
						background: linear-gradient(transparent 60%, var(--mainColor_20) 40%);
					}

					/* &::before {
						content: "";
						position: absolute;
						top: 0px;
						left: 0px;
						z-index: -1;
						width: var(--s_50_half);
						height: 100%;
						border-top: solid 1px var(--mainColor_dark02);
						border-left: solid 1px var(--mainColor_dark02);
					} */

					/* &::after {
						content: "";
						position: absolute;
						bottom: 0px;
						right: 0px;
						z-index: -1;
						width: var(--s_50_half);
						height: 100%;
						border-bottom: solid 1px var(--mainColor_dark02);
						border-right: solid 1px var(--mainColor_dark02);
					} */
				}

				.lead-desc {
					/* font-size: var(--s_30_half); */
					font-size: clamp(14px, 1.04vw, 20px);
					text-align: justify;
				}
			}

			.sec-personal {
				transform: skewY(-7deg);
				background-color: var(--mainColor_10);
				margin-bottom: var(--s_100_half);

				.sec-inner {
					padding: var(--s_50_half) 0;
					transform: skewY(7deg);
				}

				.lead {
					font-size: clamp(14px, 1.04vw, 20px);
					/* font-size: var(--s_30_half); */
					margin-bottom: var(--s_50_half);
				}

				.list-personal {
					.item {
						/* background-color: var(--wh); */
						border-radius: 15px;
						/* border: solid 1px var(--mainColor_dark02); */

						&+.item {
							margin-top: var(--s_10_half);
						}

						.list-title {
							color: var(--mainColor_dark02);
							/* background-color: var(--mainColor_dark02); */
							/* color: var(--wh); */
							font-weight: 600;
							font-size: var(--s_36_half);
							/* margin-bottom: var(--s_30_half); */
							padding: var(--s_20_half) var(--s_10_half);
							text-align: center;
							border-radius: 10px 10px 0 0;

							.smaller {
								font-size: var(--s_22_half);
								font-weight: 300;
							}
						}

						.content {
							padding: var(--s_10_half);

							.title {
								font-size: clamp(14px, 1.04vw, 20px);
								/* margin-bottom: var(--s_10_half); */
								padding-left: 3%;
							}

							.description {
								font-size: clamp(14px, 1.04vw, 20px);
								margin-bottom: var(--s_20_half);
							}
						}
					}

					.title {
						font-weight: 400;
						position: relative;

						&::before {
							content: "";
							width: var(--s_10_half);
							height: var(--s_10_half);
							background-color: var(--mainColor_dark02);
							border-radius: 50%;
							position: absolute;
							top: 50%;
							left: -1%;
							transform: translate(50%, -50%);
						}

						@media screen and (min-width:1000px) {
							&::before {
								left: 0%;
							}
						}
					}

					.description {
						font-size: var(--s_20_half);
						margin-bottom: var(--s_20_half);
					}
				}

				/* .unit {
					display: flex;
					flex-wrap: wrap;

					@media screen and (min-width:1000px) {
						justify-content: space-between;
					}

					.img-wrapper {
						&:not(:last-child) {
							margin-bottom: clamp(20px, 3.13vw, 60px);
						}

						@media screen and (min-width:1000px) {
							flex-basis: 48.6%;

							&:nth-child(-n+2) {
								margin-bottom: clamp(44px, 3.13vw, 60px);
							}
						}

					}
				} */
			}

			.sec-flow {
				padding-bottom: clamp(80px, 5.2vw, 100px);
			}

			.sec-entry {
				background-image: url(../../images/freshers_entry_bg_sp.png);
				background-size: cover;
				padding: clamp(50px, 6.77vw, 130px) 0 clamp(90px, 7.81vw, 150px) 0;

				@media screen and (min-width:1000px) {
					background-image: url(../../images/freshers_entry_bg.png);
				}

				.sec-title {
					color: var(--wh);
					font-style: italic;
					justify-content: center;
					font-size: var(--s_100_half);
					font-weight: 500;
				}

				.btn_entry {
					& a {
						display: block;
						background-color: var(--wh);
						color: var(--mainColor_dark02);
						text-align: center;
						font-size: var(--s_30_half);
						padding: var(--s_26-30) 0;
						position: relative;
						transition: var(--transition);

						&:hover {
							box-shadow: 2px 2px 3px 5px var(--mainColor_dark02);
							transition: var(--transition);
						}

						&::before {
							content: "";
							width: var(--s_10_half);
							height: var(--s_10_half);
							border-top: var(--s_2_half) solid var(--mainColor_dark02);
							border-right: var(--s_2_half) solid var(--mainColor_dark02);
							transform: rotate(45deg) translateY(-50%);
							position: absolute;
							right: 10%;
							top: 50%;
							z-index: 1;
						}

						@media screen and (min-width:1000px) {
							max-width: 630px;
							margin: 0 auto;
						}
					}
				}
			}
		}

		/* 実績で知る */
		&.page_portfolio {

			/* common */
			.number {
				font-style: italic;
				font-weight: bold;
			}

			.page-title {
				text-align: center;
				color: var(--bk);
				/* margin-bottom: clamp(60px, 7.81vw, 150px);
				margin-top: var(--s_250_half); */
				margin: var(--s_100_half);

				.ja {
					font-size: var(--s_40_half);
					font-weight: bold;
				}

				.en {
					font-size: var(--s_20_half);
					font-style: normal;
					font-weight: 300;
				}
			}

			.title {
				font-size: var(--s_30_half);
				justify-content: center;
				text-align: center;
				margin-bottom: var(--s_30_half);
			}

			.fukidashi {
				position: relative;
				width: 100%;

				background: #FFFFFF;
				padding: 10px;
				text-align: center;
				border: 1px solid #006837;

				font-size: 30px;
				font-weight: bold;
			}

			.fukidashi:after,
			.fukidashi:before {
				border: solid transparent;
				content: '';
				height: 0;
				width: 0;
				pointer-events: none;
				position: absolute;
				bottom: 100%;
				left: 94%;
			}

			.fukidashi:after {
				border-color: rgba(255, 255, 255, 0);
				border-top-width: var(--s_70_half);
				border-bottom-width: var(--s_70_half);
				border-left-width: var(--s_10_half);
				border-right-width: var(--s_10_half);
				margin-left: calc(var(--s_10_half)*-1);
				border-bottom-color: #FFFFFF;
			}

			.fukidashi:before {
				border-color: rgba(0, 104, 55, 0);
				border-top-width: var(--s_80_half);
				border-bottom-width: var(--s_80_half);
				border-left-width: var(--s_11_half);
				border-right-width: var(--s_11_half);
				margin-left: calc(var(--s_11_half)*-1);
				margin-bottom: 1px;
				border-bottom-color: #006837;
			}

			.sec-portfolio {
				padding-top: 0;

				.unit-wrapper {
					display: flex;
					flex-wrap: wrap;
					flex-direction: column;

					@media screen and (min-width:1000px) {
						justify-content: center;
						flex-direction: row;
					}

					.unit {
						flex-basis: 50%;
						padding-bottom: var(--s_80_half);

						@media screen and (min-width:1000px) {
							border-left: solid 1px var(--mainColor_dark02);

							&+.unit {
								border-right: solid 1px var(--mainColor_dark02);

							}
						}

						.unit-inner {
							margin: 0 auto;

							@media screen and (min-width:1000px) {
								width: 61.1%;
							}

							.caption {
								font-size: var(--s_30_half);
								text-align: center;
								margin-bottom: var(--s_70_half);
							}

							& img {
								width: 100%;
								margin-bottom: var(--s_60_half);
							}

							.total-wrapper {
								/* position: relative; */

								.total-amount {
									font-size: clamp(12px, 1.04vw, 20px);

									.date {
										font-size: var(--s_20_half);
									}

									margin-bottom: var(--s_8_half);
									/* position: absolute; */
									left: 0;
									top: calc(var(--s_60_half) - 2em);

								}

								.total-number {
									border: solid 1px var(--mainColor_dark02);
									text-align: center;
									position: relative;
									font-size: var(--s_24_half);

									@media screen and (min-width:1000px) {
										/* padding-top: var(--s_60_half); */
									}


									.number {
										font-size: var(--s_80_half);
									}
								}
							}



							.arrow {
								width: 15%;
								margin: 0 auto;

								& img {
									margin: var(--s_30_half) 0 var(--s_10_half);
								}
							}
						}
					}
				}
			}

			.sec-items {
				.amount {
					font-size: var(--s_24_half);
					text-align: center;
					margin-bottom: var(--s_80_half);

					.number {
						font-size: var(--s_80_half);
						font-weight: 800;
						font-style: italic;
					}
				}

				.unit-wrapper {
					/* margin-bottom: clamp(78px, 11.1vw, 214px); */
					/* margin-bottom: var(--s_100_half); */

					.unit-title {
						font-size: var(--s_20_half);
						display: inline-block;
						margin-bottom: var(--s_50_half);
						position: absolute;
						top: 0;
						left: 0;
						line-height: 2.2;

						.bg_green {
							color: var(--wh);
							background-color: var(--mainColor_dark02);
							font-size: var(--s_28_half);
							padding: var(--s_16_half) var(--s_36_half);
							margin-bottom: var(--s_30_half);
						}
					}

					.unit {
						display: flex;
						flex-direction: column-reverse;
						position: relative;


						@media screen and (min-width:1000px) {
							flex-direction: row;
							align-items: center;
							padding-top: var(--s_20_half);
						}

						&:first-child {
							@media screen and (min-width:1000px) {
								padding-bottom: var(--s_80_half);
								/* border-bottom: solid 1px var(--mainColor); */
							}

						}

						&:last-child {
							@media screen and (min-width:1000px) {
								margin-top: var(--s_80_half);
							}

						}

						.unit-inner {
							margin-top: var(--s_40_half);

							@media screen and (min-width:1000px) {
								flex-basis: 54.7%;
								padding-top: 0;
							}
						}

						.img-wrapper {
							margin-top: 30px;

							@media screen and (min-width:1000px) {
								margin-top: 0;
								flex-basis: 45.3%;
							}

							& img {

								transform: translateY(-20px);
								/* border-top: solid 1px var(--mainColor_dark02); */


								@media screen and (min-width:1000px) {
									max-width: 650px;
									margin: 0;
									border: unset;
								}
							}
						}

						.unit-inner {
							@media screen and (min-width:1000px) {
								margin-right: var(--s_40_half);
								margin-top: var(--s_70_half);
							}


							.list {
								display: flex;
								flex-wrap: wrap;
								align-items: center;
								justify-content: space-between;
								margin-bottom: var(--s_100_half);

								@media screen and (min-width:1000px) {
									margin-bottom: 0;
								}

								&.list-floor {
									& dt {
										&:nth-of-type(2) {
											&::before {
												background-color: var(--mainColor_light);
											}
										}

										&:nth-of-type(3) {
											&::before {
												background-color: var(--mainColor_light02);
											}
										}
									}
								}

								&.list-owner {
									margin-bottom: 0;

									& dt {
										&:nth-of-type(2) {
											&::before {
												background-color: var(--mainColor_light02);
											}
										}

										&:nth-of-type(3) {
											&::before {
												background-color: var(--mainColor_light);
											}
										}
									}
								}

								& dt {
									flex-basis: 40%;
									display: inline-block;
									padding-left: var(--s_40_half);
									font-size: clamp(12.5px, 1.45vw, 30px);
									margin-bottom: var(--s_10_half);
									position: relative;

									&::before {
										content: "";
										position: absolute;
										top: 50%;
										left: 0;
										width: var(--s_20_half);
										height: var(--s_20_half);
										z-index: 0;
										background-color: var(--mainColor_dark02);
										transform: translateY(-50%);
									}

									@media screen and (min-width:1000px) {
										flex-basis: 34%;
									}
								}

								& dd {
									flex-basis: 60%;
									text-align: right;
									margin-bottom: var(--s_10_half);
									position: relative;
									background-image: url(../../images/portfolio_line_dotted.png);
									background-size: 50%;
									background-position: left center;
									/* background-repeat: repeat-x; */
									display: flex;
									justify-content: flex-end;

									&::before {
										content: "";
										position: absolute;
										top: 50%;
										left: 0;
										width: 100%;
										height: 1px;
										/* border: 1px dashed var(--mainColor_dark02); */

									}

									@media screen and (min-width:1000px) {
										flex-basis: 66%;
									}

									.detail_num {
										display: flex;
										align-items: center;
										font-size: var(--s_20_half);
									}

									.number {
										font-size: var(--s_68_half);
										line-height: 1;
									}

									.tanni {
										display: flex;
										align-items: end;
										font-size: var(--s_20_half);
									}
								}

								.sum-wrapper {
									display: flex;
									justify-content: end;
									margin-left: auto;
								}

								.sum {
									display: flex;
									/* align-items: center; */

									.sum_name {
										font-size: var(--s_20_half);
										display: flex;
										align-items: center;
									}

									.number {
										font-size: var(--s_68_half);
										line-height: 1;
									}

									.tanni {
										display: flex;
										align-items: end;
										font-size: var(--s_20_half);
									}
								}

							}
						}
					}

					&.unit-wrapper02 {
						display: flex;
						flex-wrap: wrap;
						flex-direction: column;

						@media screen and (min-width:1000px) {
							flex-direction: row;
						}

						.unit {
							flex-basis: 50%;
							margin-top: 0;
							border: unset;

							&:first-child {
								margin-bottom: var(--s_130_half);

								@media screen and (min-width:1000px) {
									margin-bottom: 0;
								}
							}

							@media screen and (min-width:1000px) {
								border-left: solid 1px var(--mainColor_dark02);
								border-bottom: unset;
								padding-top: var(--s_36_half);
								padding-bottom: var(--s_60_half);

								&:last-child {
									border-right: solid 1px var(--mainColor_dark02);
								}
							}

							.unit-inner {
								margin: 0;
								width: 100%;

								@media screen and (min-width:1000px) {
									width: 78.5%;
									margin: 0 auto;
								}

								& figure {
									text-align: center;
									position: relative;
									margin-bottom: var(--s_90_half);

									& img {
										max-width: 340px;
									}

									.graph {
										border: unset;
										width: var(--s_340_half);
										margin: 0 auto;
										padding-top: 0;

										@media screen and (min-width:1000px) {
											max-width: 1000px;
										}
									}

									.icon {
										position: absolute;
										right: 0;
										bottom: -10%;
										border: unset;
										max-width: 20%;

										@media screen and (min-width:1000px) {
											right: -10%;
											max-width: 25%;
										}
									}
								}

								& img {
									width: 100%;
									border: unset;
									margin: 0;
									padding: 0;
								}

								.caption {
									text-align: center;
									font-weight: bold;
									font-size: var(--s_30_half);
									margin-bottom: var(--s_70_half);

									@media screen and (min-width:1000px) {}
								}
							}
						}
					}
				}
			}

			.sec-employees {
				margin-bottom: var(--s_160_half);

				.lead {}

				.unit {
					position: relative;
					display: flex;
					flex-direction: column-reverse;

					& img {
						width: 100%;
					}

					.graph {
						max-width: 375px;
						padding-top: var(--s_110_half);
					}

					.detail-num {
						width: 75.2%;
						margin: 0 auto;
						font-size: var(--s_20_half);

						@media screen and (min-width:1000px) {
							position: absolute;
							top: 0;
							right: 0;
							width: 50%;
						}

						.number {
							font-size: var(--s_120_half);
						}

						.warning {
							font-size: var(--s_20_half);
							position: absolute;
							bottom: calc(var(--s_40_half) * -1);
							right: 0;
						}

						&.fukidashi_left {
							display: none;

							@media screen and (min-width:1000px) {
								display: block;
							}
						}

						&.fukidashi_bottom {
							display: block;

							@media screen and (min-width:1000px) {
								display: none;
							}
						}
					}

					.icon {
						max-width: 383px;
						position: absolute;
						bottom: -27%;
						right: 5%;
					}
				}
			}

			.sec-rent {
				/* padding-bottom: clamp(84px, 10.93vw, 210px); */
				padding-bottom: var(--s_50_half);

				.lead {
					text-align: center;
					font-size: var(--s_24_half);
					margin-bottom: clamp(60px, 7.81vw, 150px);
				}

				.unit {
					display: flex;
					justify-content: space-between;
					flex-direction: column;

					@media screen and (min-width:1000px) {
						flex-direction: row;
					}

					.building-pic {
						flex-basis: 36.8%;
						width: 100%;
						margin-bottom: var(--s_70_half);

						@media screen and (min-width:1000px) {
							margin-bottom: 0;
						}

						& img {
							width: 100%;
						}
					}

					& picture {
						flex-basis: 56.6%;

						& img {
							width: 100%;
						}
					}
				}
			}

			.sec-renovation {
				.sub-title {
					text-align: center;
					font-size: var(--s_46_half);
					letter-spacing: normal;
					font-style: italic;
					line-height: 1;
					margin-bottom: var(--s_55_half);
				}

				.name {
					text-align: center;
					margin-bottom: var(--s_50_half);
					font-size: var(--s_30_half);
				}

				.desc {
					max-width: 1440px;
					width: 84%;
					margin: 0 auto;
					text-align: center;
					line-height: 1.5;
					margin-bottom: clamp(45px, 6.25vw, 120px);

				}

				.img_renovation {
					margin-bottom: var(--s_120_half);
				}

				.before-after {
					background-color: var(--secBg);
					padding: var(--s_100_half) 0;
					margin-bottom: clamp(58px, 4.17vw, 80px);

					@media screen and (min-width:1000px) {
						padding: var(--s_100_half) var(--s_110_half);
						/* margin-bottom: 0; */
					}

					.inner {
						display: flex;
						flex-direction: column;

						@media screen and (min-width:1000px) {
							flex-direction: row;
							align-items: center;
							justify-content: space-between;
						}
					}

					.floor-plan {
						flex-basis: 40%;
					}

					.arrow {
						width: 10.8vw;
						margin: 0 auto;
						flex-basis: 12.4%;
						margin: var(--s_50_half) auto;

						@media screen and (min-width:1000px) {
							flex-basis: 18%;
							display: flex;
							justify-content: center;
						}

						& img {
							@media screen and (min-width:1000px) {
								width: var(--s_26_half);
							}
						}
					}
				}

				.point {
					display: flex;
					flex-direction: column;
					margin-bottom: clamp(65px, 4.17vw, 80px);

					@media screen and (min-width:1000px) {
						flex-direction: row;
						justify-content: space-between;
					}

					.img-wrapper {
						&+.img-wrapper {
							margin-top: var(--s_60_half);

							@media screen and (min-width:1000px) {
								margin-top: 0;
							}
						}

						@media screen and (min-width:1000px) {
							flex-basis: 48.6%;
						}
					}
				}

				.img-table {
					margin-bottom: var(--s_100_half);
				}

				.list-room {
					display: flex;
					flex-wrap: wrap;
					justify-content: space-between;

					.item {
						flex-basis: calc((100% - clamp(8.5px, 1.04vw, 20px)) / 2);

						&:nth-child(-n+6) {
							margin-bottom: clamp(8.5px, 1.04vw, 20px);
						}

						@media screen and (min-width:1000px) {
							&:nth-child(-n+4) {
								margin-bottom: 1.04vw;
							}
						}

						@media screen and (min-width:1000px) {
							flex-basis: calc((100% - (clamp(8.5px, 1.04vw, 20px) * 3)) / 4);
						}

						& img {
							width: 100%;
						}
					}
				}
			}
		}
	}
}