@charset "shift_jis";
:root {
	--main-color: #9a853c;
	--btn-color: #ff9c00;
	--bg-blue-color: #f4f1e7;
}
@media screen and (min-width: 769px) {
	/*--- sozokuここから ---*/
	.sale_sozoku_wrap {
		/* メイン画像 */
		.sozoku_main_wrap {
			background: url(../img/main_bg.webp);
			background-size: cover;
			background-position: center;
			height: 600px;
			box-sizing: border-box;
			padding-top: 80px;
			margin-top: 120px;
			.sozoku_main_inner {
				width: 1000px;
				margin: 0 auto;
				position: relative;
				/* text-align: center; */
				.sozoku_main_subti {
					span {
						color: #fff;
						font-size: 35px;
						font-weight: bold;
						line-height: 35px;
						border-bottom: 1px solid #fff;
						padding-bottom: 10px;
						margin: 0 10px;
					}
				}
				.sozoku_main_ti {
					margin: 50px 0 20px;
					p {
						color: #fff;
						font-size: 50px;
						line-height: 70px;
						font-weight: bold;
						margin: 0 0 15px;
						span {
							font-weight: bold;
							font-size: 70px;
						}
					}
					span {
						font-size: 25px;
						line-height: 30px;
						font-weight: bold;
						color: #fff;
						margin-top: 20px;
					}
				}
				ul {
					display: flex;
					justify-content: center;
					li {
						width: 215px;
						background: var(--main-color);
						color: #fff;
						line-height: 56px;
						border-radius: 10px;
						font-size: 20px;
						letter-spacing: 0.1em;
						font-weight: bold;
						&:first-child {
							margin-right: 10px;
						}
					}
				}
				.buy_main_img{
					position: absolute;
                    bottom: -64px;
                    right: 0;
				}
			}
		}
		/* 悩み */
		.sozoku_nayami_wrap {
			width: 1100px;
			margin: 80px auto;
			ul {
				position: relative;
				display: flex;
				flex-wrap: wrap;
				justify-content: center;
				&::after {
					content: "";
					display: block;
					background: url(../img/nayami_icon.webp);
					width: 329px;
					height: 218px;
					position: absolute;
					bottom: 40px;
					left: 360px;
					z-index: -1;
				}
				li {
					border: 1px solid #ccc;
					border-radius: 10px;
					padding: 20px 30px;
					font-size: 20px;
					font-weight: bold;
					line-height: 30px;
					position: relative;
					text-align: center;
					margin-bottom: 30px;
					background: #fff;
					span {
						font-weight: bold;
						background: linear-gradient(transparent 60%, #ffdbde 60%);
					}
					&::before {
						content: "";
						border-left: 16px solid transparent;
						border-top: 16px solid #ccc;
						position: absolute;
						right: 35px;
						bottom: -16px;
						transform: rotate(-90deg);
					}
					&::after {
						content: "";
						border-left: 15px solid transparent;
						border-top: 15px solid white;
						position: absolute;
						right: 35px;
						bottom: -14px;
						transform: rotate(-90deg);
					}
					&:nth-child(2) {
						margin: 0 35px 30px;
					}
					&:nth-child(3) {
						&::before {
							top: 56px;
							right: -16px;
							bottom: auto;
						}
						&::after {
							top: 57px;
							right: -14px;
							bottom: auto;
						}
					}
					&:nth-child(4) {
						margin: 0px 0 30px 410px;
						&::before {
							top: 36px;
							left: -16px;
							right: auto;
							bottom: auto;
							transform: none;
						}
						&::after {
							top: 37px;
							left: -14px;
							right: auto;
							bottom: auto;
							transform: none;
						}
					}
					&:nth-child(5),
					&:nth-child(6) {
						&::before {
							top: -16px;
							right: 35px;
							bottom: auto;
							transform: rotate(-180deg);
						}
						&::after {
							top: -14px;
							right: 35px;
							bottom: auto;
							transform: rotate(-180deg);
						}
					}
					&:nth-child(6) {
						margin: 0 0 30px 300px;
					}
				}
			}
		}
		/* 不動産の相続対策とは */
		.sozoku_about_wrap {
			background: var(--bg-blue-color);
			padding: 80px 0;
			.sozoku_about_inner {
				width: 1100px;
				margin: 0 auto;
				.sozoku_about_point {
					border: 3px solid var(--main-color);
					background: #fff;
					box-sizing: border-box;
					border-radius: 5px;
					padding: 50px 40px;
					position: relative;
					margin-bottom: 90px;
					h3 {
						color: var(--main-color);
						font-size: 40px;
						line-height: 40px;
						font-weight: bold;
						letter-spacing: 0.05em;
						margin: 0;
					}
					p {
						font-size: 25px;
						font-weight: bold;
						line-height: 25px;
						color: #000;
						letter-spacing: 0.18em;
						margin: 40px 0;
					}
					ul {
						li {
							position: relative;
							padding-left: 40px;
							font-size: 18px;
							color: #ff5050;
							font-weight: 500;
							line-height: 25px;
							margin-bottom: 10px;
							&::before {
								content: "";
								display: block;
								background: url(../img/check_icon.webp);
								width: 25px;
								height: 25px;
								position: absolute;
								top: 0;
								left: 0;
							}
						}
					}
					img {
						position: absolute;
						right: 40px;
						bottom: -15px;
						z-index: 10;
					}
				}
			}
			.sozoku_problem_wrap {
				width: 1100px;
				margin: 0 auto;
				.sozoku_problem_top {
					h2 {
						color: var(--main-color);
					}
					p {
						font-size: 25px;
						font-weight: bold;
						line-height: 40px;
						text-align: center;
						letter-spacing: 0.18em;
						margin: 0;
					}
					ul {
						display: flex;
						justify-content: space-between;
						flex-wrap: wrap;
						margin: 40px 0;
						li {
							margin-bottom: 20px;
							background: #fff;
							width: 350px;
							height: 130px;
							box-sizing: border-box;
							border: 1px solid #ccc;
							border-radius: 5px;
							text-align: center;
							padding: 20px 0;
							span {
								display: block;
								text-align: center;
								font-size: 25px;
								line-height: 30px;
								color: #000;
								font-weight: bold;
							}
							p {
								color: var(--main-color);
								font-size: 18px;
								line-height: 30px;
								letter-spacing: 0.05em;
								margin: 0;
								height: 60px;
								display: flex;
								justify-content: center;
								align-items: center;
								margin-top: 5px;
							}
						}
					}
				}
				.sozoku_problem_con {
					ul {
						li {
							background: #fff;
							padding: 20px;
							border-radius: 10px;
							margin-bottom: 30px;
							h3 {
								background: var(--bg-blue-color);
								line-height: 60px;
								border-radius: 10px;
								text-align: left;
								padding-left: 20px;
								color: var(--main-color);
								font-size: 35px;
								font-weight: bold;
								letter-spacing: 0.1em;
								margin: 0 0 30px;
							}
							.sozoku_problem_flex {
								display: flex;
								justify-content: space-between;
								.sozoku_problem_txt {
									width: 630px;
									margin-left: 20px;
									h4 {
										font-size: 25px;
										font-weight: bold;
										line-height: 30px;
										margin: 0 0 15px;
									}
									p {
										font-size: 18px;
										font-weight: 500;
										line-height: 35px;
										margin: 0;
									}
								}
							}
						}
					}
				}
			}
		}
		/* 不動産相続の成功と失敗の分岐点 */
		.sozoku_point_wrap {
			width: 1100px;
			margin: 100px auto;
			ul {
				display: flex;
				justify-content: space-between;
				flex-wrap: wrap;
				margin-top: 90px;
				li {
					width: 530px;
					height: 570px;
					box-sizing: border-box;
					border: 3px solid var(--main-color);
					border-radius: 10px;
					background: #fff;
					padding: 70px 15px 0;
					text-align: center;
					margin-bottom: 60px;
					position: relative;
					&:first-child {
						img {
							margin: 14px 0;
						}
					}
					&:last-child {
						width: 1100px;
						height: 380px;
						padding: 40px 15px;
						margin: 0;
						h3 {
							top: -30px;
						}
						img {
							position: absolute;
							right: 15px;
							top: 15px;
						}
						p {
							width: 690px;
						}
					}
					h3 {
						width: 490px;
						text-align: center;
						background: var(--main-color);
						border-radius: 10px;
						font-size: 24px;
						font-weight: bold;
						line-height: 36px;
						letter-spacing: 0.05em;
						padding: 10px 0;
						position: absolute;
						left: 17px;
						top: -40px;
						z-index: 10;
						margin: 0;
						color: #fff;
					}
					p {
						color: #333;
						font-size: 18px;
						line-height: 30px;
						margin: 15px 0 0;
						text-align: left;
						span {
							font-weight: bold;
							color: #f00;
						}
					}
				}
			}
		}
		/* よくある質問 */
		#sa_qa {
			padding: 0;
			background-color: var(--bg-blue-color);
			.sozoku_qa_wrap {
				padding: 80px 0;
				background-color: var(--bg-blue-color);
			}
		}
		/* title */
		h2 {
			font-size: 40px;
			line-height: 40px;
			font-weight: bold;
			text-align: center;
			color: #000;
			margin: 0 0 40px;
			display: block;
			&.sa_conts_tit_line::after {
				content: "";
				display: block;
				width: 70px;
				height: 5px;
				background-color: var(--main-color);
				margin: 30px auto 0;
			}
		}
		/* svg */
		svg {
			margin: 0 auto;
			display: block;
			.cls-1 {
				fill: var(--main-color);
			}
		}
		/* btn */
		.btn_link {
			display: block;
			width: 80%;
			line-height: 60px;
			background-color: var(--btn-color);
			color: #fff;
			text-align: center;
			position: relative;
			margin: 0 auto 00px;
			border-radius: 5px;
			font-weight: bold;
			font-size: 18px;
			&:hover {
				opacity: .8;
			}
		}
		/* fadein（下から上） */
		.fadein {
			opacity: 0;
			transform: translateY(30px);
			transition: all 0.8s ease-out;
			&.show {
				opacity: 1;
				transform: translateY(0);
			}
			&.fadein-1 {
				transition-delay: 0.2s;
			}
			&.fadein-2 {
				transition-delay: 0.4s;
			}
			&.fadein-3 {
				transition-delay: 0.6s;
			}
			&.fadein-4 {
				transition-delay: 0.8s;
			}
			&.fadein-5 {
				transition-delay: 1.0s;
			}
			&.fadein-6 {
				transition-delay: 1.2s;
			}
		}
	}
	/*--- sozokuここまで ---*/
}
/*-------------------------------
sp
--------------------------------*/
@media screen and (max-width: 768px) {
	/*--- sozokuここから ---*/
	.sale_sozoku_wrap {
		/* メイン画像 */
		.sozoku_main_wrap {
			background: url(../img/main_bg.webp);
			background-size: cover;
			background-position: 60% 0;
			box-sizing: border-box;
			padding: 30px 0;
			.sozoku_main_inner {
				width: 90%;
				margin: 0 auto;
				.sozoku_main_subti {
					text-align: center;
					span {
						color: #fff;
						font-size: clamp(14px, 4.2vw, 16px);
						font-weight: 500;
						line-height: 30px;
						border-bottom: 1px solid #fff;
						padding-bottom: 5px;
						margin: 0 5px;
					}
				}
				.sozoku_main_ti {
					margin: 15px 0;
					p {
						color: #fff;
						font-size: clamp(14px, 6vw, 28px);
						line-height: 1.4;
						margin: 15px 0;
						font-weight: bold;
						text-align: center;
						span {
							font-weight: bold;
							font-size: clamp(14px, 10vw, 38px);
						}
					}
					span {
						font-size: clamp(14px, 4.4vw, 24px);
						font-weight: 500;
						letter-spacing: 0.05em;
						color: #fff;
					}
				}
				ul {
					display: flex;
					justify-content: center;
					li {
						background: var(--main-color);
						color: #fff;
						line-height: 40px;
						border-radius: 5px;
						font-size: clamp(12px, 3.5vw, 14px);
						letter-spacing: 0.05em;
						font-weight: bold;
						padding: 0 10px;
						&:first-child {
							margin-right: 5px;
						}
					}
				}
				.buy_main_img{
					width: 100%;
                    margin: 20px auto 0 auto;
				}
			}
		}
		/* 悩み */
		.sozoku_nayami_wrap {
			width: 90%;
			margin: 60px auto 0;
			ul {
				position: relative;
				display: flex;
				justify-content: space-between;
				flex-wrap: wrap;
				&::after {
					content: "";
					display: block;
					background: url(../img/nayami_icon.webp);
					background-size: contain;
					background-repeat: no-repeat;
					width: 200px;
					height: 130px;
					margin: 20px auto 0;
				}
				li {
					width: 49%;
					border: 1px solid #ccc;
					border-radius: 5px;
					padding: 10px 3%;
					font-weight: bold;
					position: relative;
					text-align: center;
					margin-bottom: 2%;
					box-sizing: border-box;
					font-size: clamp(11px, 3vw, 20px);
					line-height: 1.8;
					span {
						font-weight: bold;
						background: linear-gradient(transparent 60%, #ffdbde 60%);
					}
				}
			}
		}
		/* 不動産の相続対策とは */
		.sozoku_about_wrap {
			background: var(--bg-blue-color);
			padding: 60px 0;
			.sozoku_about_inner {
				width: 90%;
				margin: 0 auto;
				.sozoku_about_point {
					border: 2px solid var(--main-color);
					background: #fff;
					box-sizing: border-box;
					border-radius: 5px;
					padding: 30px 5%;
					position: relative;
					margin-bottom: 70px;
					h3 {
						color: var(--main-color);
						font-size: clamp(14px, 6vw, 24px);
						line-height: 1.8;
						font-weight: bold;
						letter-spacing: 0.05em;
						margin: 0;
					}
					p {
						font-size: clamp(15px, 4.7vw, 18px);
						font-weight: bold;
						line-height: 28px;
						color: #000;
						letter-spacing: 0.1em;
						margin: 15px 0;
					}
					ul {
						li {
							position: relative;
							padding-left: 40px;
							font-size: clamp(15px, 4.7vw, 18px);
							color: #ff5050;
							font-weight: 500;
							line-height: 25px;
							margin-bottom: 10px;
							&::before {
								content: "";
								display: block;
								background: url(../img/check_icon.webp);
								width: 25px;
								height: 25px;
								position: absolute;
								top: 0;
								left: 0;
							}
						}
					}
					img {
						width: 84%;
						display: block;
						margin: 30px auto 15px;
					}
				}
			}
			.sozoku_problem_wrap {
				width: 90%;
				margin: 0 auto;
				.sozoku_problem_top {
					h2 {
						color: var(--main-color);
					}
					p {
						font-size: clamp(15px, 4.7vw, 18px);
						font-weight: 500;
						line-height: 28px;
						text-align: left;
						letter-spacing: 0.1em;
						margin: 0;
					}
					ul {
						display: flex;
						justify-content: space-between;
						flex-wrap: wrap;
						margin: 30px 0;
						li {
							margin-bottom: 2%;
							background: #fff;
							width: 49%;
							box-sizing: border-box;
							border: 1px solid #ccc;
							border-radius: 5px;
							text-align: center;
							padding: 15px 3%;
							span {
								display: block;
								text-align: center;
								font-size: clamp(11px, 4vw, 20px);
								line-height: 1.8;
								color: #000;
								font-weight: bold;
							}
							p {
								color: var(--main-color);
								margin: 0;
								margin-top: 5px;
								font-size: clamp(12px, 3vw, 20px);
								line-height: 1.8;
							}
						}
					}
				}
				.sozoku_problem_con {
					ul {
						li {
							background: #fff;
							padding: 15px;
							border-radius: 10px;
							margin-bottom: 30px;
							h3 {
								background: var(--bg-blue-color);
								line-height: 50px;
								border-radius: 10px;
								text-align: left;
								color: var(--main-color);
								font-size: clamp(20px, 5.8vw, 24px);
								font-weight: bold;
								letter-spacing: 0.1em;
								text-align: center;
								margin: 0px 0 20px;
							}
							.sozoku_problem_flex {
								.sozoku_problem_txt {
									h4 {
										font-size: clamp(14px, 5vw, 24px);
										font-weight: bold;
										line-height: 1.8;
										margin: 0 0 10px;
									}
									p {
										font-size: clamp(14px, 4vw, 16px);
										font-weight: 500;
										line-height: 28px;
										letter-spacing: 0.04em;
										margin: 0;
									}
								}
								img {
									width: 100%;
									margin-top: 20px;
								}
							}
						}
					}
				}
			}
		}
		/* 不動産相続の成功と失敗の分岐点 */
		.sozoku_point_wrap {
			width: 90%;
			margin: 80px auto;
			ul {
				margin-top: 60px;
				li {
					box-sizing: border-box;
					border: 2px solid var(--main-color);
					border-radius: 10px;
					background: #fff;
					padding: 50px 4% 20px;
					text-align: center;
					margin-bottom: 60px;
					position: relative;
					&:nth-child(2) {
						img {
							width: auto;
						}
					}
					&:last-child {
						h3 {
							top: -30px;
						}
					}
					h3 {
						width: 90%;
						box-sizing: border-box;
						text-align: left;
						background: var(--main-color);
						border-radius: 10px;
						font-size: clamp(14px, 4.8vw, 22px);
						font-weight: bold;
						line-height: 1.6;
						letter-spacing: 0.05em;
						padding: 5px 15px;
						position: absolute;
						left: 5%;
						top: -40px;
						z-index: 10;
						margin: 0;
						color: #fff;
					}
					img {
						width: 80%;
						display: block;
						margin: 0 auto;
					}
					p {
						color: #333;
						font-size: clamp(15px, 4.7vw, 18px);
						line-height: 30px;
						margin: 15px 0 0;
						text-align: left;
						letter-spacing: 0.05em;
						span {
							font-weight: bold;
							color: #f00;
						}
					}
				}
			}
		}
		/* よくある質問 */
		#sa_qa {
			padding: 0;
			background-color: var(--bg-blue-color);
			.sozoku_qa_wrap {
				padding: 60px 0;
				background-color: var(--bg-blue-color);
			}
		}
		/* CV */
		#sa_inq {
			.sa_inq_txt {
				width: 96%;
				margin: 0 auto;
				letter-spacing: normal !important;
			}
			h2 {
				margin: 10px auto 30px;
				line-height: 1.3;
			}
		}
		/* title */
		h2 {
			font-size: clamp(14px, 6vw, 24px);
			line-height: 1.8;
			font-weight: bold;
			text-align: center;
			color: #000;
			margin: 0 0 30px;
			&.sa_conts_tit_line::after {
				content: "";
				display: block;
				width: 70px;
				height: 5px;
				background-color: #9a853c;
				margin: 20px auto 0;
			}
		}
		/* svg */
		svg {
			margin: 0 auto;
			display: block;
			.cls-1 {
				fill: var(--main-color);
			}
		}
		/* btn */
		.btn_link {
			display: block;
			width: 80%;
			line-height: 60px;
			background-color: var(--btn-color);
			color: #fff;
			text-align: center;
			position: relative;
			margin: 0 auto 00px;
			border-radius: 5px;
			font-weight: bold;
			font-size: clamp(15px, 4.7vw, 18px);
			&:hover {
				opacity: .8;
			}
		}
		/* fadein（下から上） */
		.fadein {
			opacity: 0;
			transform: translateY(30px);
			transition: all 0.8s ease-out;
			&.show {
				opacity: 1;
				transform: translateY(0);
			}
			&.fadein-1 {
				transition-delay: 0.2s;
			}
			&.fadein-2 {
				transition-delay: 0.4s;
			}
			&.fadein-3 {
				transition-delay: 0.6s;
			}
			&.fadein-4 {
				transition-delay: 0.8s;
			}
			&.fadein-5 {
				transition-delay: 1.0s;
			}
			&.fadein-6 {
				transition-delay: 1.2s;
			}
		}
	}
	/*--- sozokuここまで ---*/
}