@charset "shift_jis";
/*************************************************/
/* 制作を始める時にはtop.css、header.css、h_menu.cssの中身をを削除してください */
/* ナビメニューのプルダウンを使用したい場合にはh_menu.cssの記述を参考にしてみてください。 */
/* この下にあるコメントアウトを活用してください！ */
/* 「assessment」は売却査定フォームのデフォルトデザイン用cssです */
/*************************************************/
/*************************************************/
/*  assessment  */
/*************************************************/
.t_asse_form_wrap {
	width: 1000px;
	margin: 0 auto 40px;
}
.t_asse_form_wrap .h2_title {
	width: 1000px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.t_asse_form {
	margin: 20px auto;
	border-radius: 3px;
	box-shadow: 0 0 3px 0 #999;
	padding: 20px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.t_asse_form table {
	border-collapse: collapse;
	margin: 0;
	padding: 0;
	width: 100%;
}
.t_asse_form tr {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	margin-bottom: 3px;
}
.t_asse_form tr th,
.t_asse_form tr td {
	padding: 15px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.t_asse_form tr th {
	width: 25%;
	background: #FAFAF9;
}
.t_asse_form tr th {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
	font-size: 14px;
	align-items: flex-start;
	text-align: left;
}
.t_asse_form tr td {
	width: 75%;
	font-size: 15px;
	line-height: 22px;
}
.t_asse_form th span {
	font-size: 12px;
	font-weight: bold;
	padding: 0 10px;
	line-height: 22px;
	border-radius: 3px;
}
.t_asse_form th span.t_asse_required {
	border: 1px solid #ff4a32;
	color: #ff4a32;
	background: #FFE8E5;
}
.t_asse_form th span.t_asse_any {
	border: 1px solid #237dc0;
	color: #237dc0;
	background: #dfebf5;
}
.t_asse_form td p {
	color: #999;
}
.t_asse_form td input[type="text"],
.t_asse_form td input[type="tel"],
.t_asse_form td input[type="password"],
.t_asse_form td input[type="number"],
.t_asse_form td textarea,
.t_asse_form td select {
	font-size: 16px;
	line-height: 24px;
	padding: 8px 15px;
	border: 1px solid #ccdae4;
	background: #f5f9fc;
	font-family: 'Arial', '游ゴシック', YuGothic, 'ヒラギノ角ゴ Pro', 'Hiragino Kaku Gothic Pro', 'メイリオ', 'Meiryo', sans-serif;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	border-radius: 3px;
	margin-bottom: 4px;
	margin-right: 5px;
}
.t_asse_form td input[type="button"] {
	font-family: 'Arial', '游ゴシック', YuGothic, 'ヒラギノ角ゴ Pro', 'Hiragino Kaku Gothic Pro', 'メイリオ', 'Meiryo', sans-serif;
	font-size: 16px;
	line-height: 24px;
	padding: 8px 15px;
	border: 1px solid #ccc;
	background: #eee;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	border-radius: 3px;
	cursor: pointer;
}
.t_asse_form td input[type="button"]:hover {
	background: #ccc;
}
.t_asse_form td select {
	cursor: pointer;
	height: 42px;
	vertical-align: bottom;
}
.t_asse_form td textarea {
	height: 150px;
	display: block;
}
.t_asse_form td label {
	border: 1px solid #ccdae4;
	background: #f5f9fc;
	cursor: pointer;
	border-radius: 3px;
	padding: 9px 15px 9px 9px;
	display: inline-block;
	margin: 0 2px 5px 0;
}
.t_asse_form td label input {
	width: 20px;
	height: 20px;
	margin-right: 5px;
}
.t_asse_form td label input[type="checkbox"],
.t_asse_form td label input[type="radio"] {
	vertical-align: sub;
	margin: 0 5px 0 0;
	cursor: pointer;
}
.t_asse_form td input[type="text"]:hover,
.t_asse_form td input[type="tel"]:hover,
.t_asse_form td input[type="password"]:hover,
.t_asse_form td input[type="number"]:hover,
.t_asse_form td textarea:hover,
.t_asse_form td select:hover,
.t_asse_form td label:hover {
	background: #f9fcf5;
	border: 1px solid #d6eaba;
}
.t_asse_btn input[type="submit"] {
	-webkit-appearance: none;
	border: 2px solid #2799fb;
	background: #2799fb;
	color: #fff;
	border-radius: 30px;
	width: 400px;
	height: 60px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	box-shadow: 0 0 3px 0 #999;
	padding: 0 40px;
	font-weight: bold;
	cursor: pointer;
	margin: 0 auto;
	font-size: 20px;
	display: block;
	font-family: 'Arial', '游ゴシック', YuGothic, 'ヒラギノ角ゴ Pro', 'Hiragino Kaku Gothic Pro', 'メイリオ', 'Meiryo', sans-serif;
}
.t_asse_btn input[type="submit"]:hover {
	color: #2799fb;
	background: #fff;
}
.t_asse_btn input[type="button"] {
	-webkit-appearance: none;
	border: 1px solid #ccc;
	background: #eee;
	border-radius: 3px;
	width: 100px;
	height: 40px;
	font-weight: bold;
	cursor: pointer;
	margin: 0 auto;
	display: block;
	font-family: 'Arial', '游ゴシック', YuGothic, 'ヒラギノ角ゴ Pro', 'Hiragino Kaku Gothic Pro', 'メイリオ', 'Meiryo', sans-serif;
}
.t_asse_btn input[type="button"]:hover {
	background: #ccc;
}
#top_wrap {
	font-family: "Zen Kaku Gothic Antique", sans-serif;
	color: #000000;
	font-weight: 500;
	overflow-x: hidden;
	>h1 {
		line-height: 3em;
	}
	& img {
		max-width: 100%;
	}
	& ul {
		list-style: none;
	}
	& p, & ul, & h2, & h3, & hr {
		margin: 0;
		padding: 0;
	}
	& a {
		text-decoration: none;
		color: #000000;
	}
	.conts_mid {
		width: clamp(950px, 80vw, 1500px);
	}
	.conts_wide {
		width: clamp(1000px, 85vw, 1600px);
	}
	.t_tl {
		padding-bottom: clamp(35px, 2.8vw, 50px);
		position: relative;
		>h2 {
			margin-bottom: clamp(18px, 1.4vw, 25px);
			font-size: clamp(13px, 1vw, 18px);
			line-height: 1;
			letter-spacing: 0.05em;
		}
		>p {
			font-size: clamp(45px, 3.6vw, 64px);
			line-height: 1;
			font-weight: 300;
			letter-spacing: 0.1em;
		}
		&:after {
			content: "";
			width: clamp(24px, 1.8vw, 32px);
			aspect-ratio: 8 / 3;
			background-repeat: no-repeat;
			background-size: contain;
			background-position: center;
			position: absolute;
			bottom: 0;
		}
	}
	.t_tl_wh {
		>h2 {
			color: #FFF;
		}
		>p {
			color: #FFF;
		}
	}
	.t_tl_dot_ye {
		&:after {
			background-image: url(/img/top/tl_dot_ye.webp);
		}
	}
	.t_tl_dot_bl {
		&:after {
			background-image: url(/img/top/tl_dot_bl.webp);
		}
	}
	.t_tl_center {
		&:after {
			margin: auto;
			left: 0;
			right: 0;
		}
	}
	.t_btn {
		display: flex;
		align-items: center;
		justify-content: space-between;
		width: clamp(220px, 19vw, 340px);
		box-sizing: border-box;
		padding: 0.65em 1em 0.65em 1.75em;
		border-radius: 50px;
		border: 5px solid #FFF;
		box-shadow: 0px 0px 10px 0px RGBA(196, 196, 196, 0.4);
		font-size: clamp(15px, 1.1vw, 20px);
		line-height: 1;
		color: #FFF;
		letter-spacing: 0.05em;
		transition: all 0.2s;
		&:after {
			content: "";
			display: block;
			width: clamp(36px, 3vw, 54px);
			aspect-ratio: 1 / 1;
			background-repeat: no-repeat;
			background-size: cover;
			background-position: center;
			transition: all 0.2s;
		}
	}
	.t_btn_bl {
		background: #73b8e6;
		&:after {
			background-image: url(/img/top/btn_ar_bl.webp);
		}
		&:hover {
			background: #55ab7f;
			&:after {
				background-image: url(/img/top/btn_ar_gr.webp);
			}
		}
	}
	.t_btn_gr {
		background: #55ab7f;
		&:after {
			background-image: url(/img/top/btn_ar_gr.webp);
		}
		&:hover {
			background: #283f33;
			&:after {
				background-image: url(/img/top/btn_ar_bli.webp);
			}
		}
	}
	.t_btn_bli {
		background: #2e5e45;
		&:after {
			background-image: url(/img/top/btn_ar_bli.webp);
		}
		&:hover {
			background: #283f33;
		}
	}
	#t_header {
		display: flex;
		align-items: center;
		gap: clamp(18px, 1.4vw, 25px);
		width: fit-content;
		padding-right: clamp(70px, 5.8vw, 110px);
		padding-left: clamp(22px, 1.85vw, 35px);
		background: #FFF;
		border-radius: 30px;
		box-shadow: 0px 0px 10px 0px RGBA(196, 196, 196, 0.4);
		position: fixed;
		right: 20px;
		top: 60px;
		z-index: 20;
		>nav {
			>ul {
				display: flex;
				gap: clamp(18px, 1.4vw, 25px);
				>li {
					.child_menu_item {
						font-size: clamp(12px, 0.95vw, 18px);
						letter-spacing: 0.05em;
						transition: all 0.2s;
						cursor: pointer;
						>a {
							transition: all 0.2s;
						}
					}
					span.child_menu_item {
						display: flex;
						align-items: center;
						gap: 0 8px;
						&:after {
							content: "";
							display: block;
							width: clamp(8px, 0.6vw, 11px);
							aspect-ratio: 11 / 7;
							clip-path: polygon(50% 100%, 0 0, 100% 0);
							background: #73b8e5;
						}
					}
					.child_menu_box {
						position: absolute;
						width: 100%;
						min-height: 100px;
						box-sizing: border-box;
						padding: 30px 20px 20px 20px;
						top: calc(100%);
						left: 0;
						color: #333;
						visibility: hidden;
						&:before {
							content: "";
							width: 100%;
							height: calc(100% - 10px);
							background: #FFF;
							border-radius: 20px;
							position: absolute;
							left: 0;
							bottom: 0;
							z-index: -1;
						}
						>div {
							display: flex;
							gap: 0 clamp(10px, 0.8vw, 15px);
							.child_menu_box_img {
								flex-shrink: 0;
								width: 30%;
								background: #eaf6fb;
								border-radius: 10px;
								overflow: hidden;
								position: relative;
								>img {
									width: 100%;
									height: 100%;
									object-fit: cover;
									position: absolute;
									top: 0;
									left: 0;
								}
							}
							.child_menu_box_link {
								width: 100%;
								>ul {
									display: flex;
									flex-wrap: wrap;
									gap: 5px;
									>li {
										>a {
											display: flex;
											align-items: center;
											padding: 1em 0 1em 1em;
											background: #eaf6fb;
											border-radius: 10px;
											font-size: clamp(10px, 0.8vw, 15px);
											font-weight: 700;
											letter-spacing: 0.05em;
											&:hover {
												color: #FFF;
												background: #013b96;
											}
										}
									}
									.child_menu_box_link_t {
										width: calc((100% - 15px)/4);
									}
									.child_menu_box_link_m {
										width: calc((100% - 10px)/3);
									}
									.child_menu_box_link_w {
										width: calc((100% - 5px)/2);
									}
								}
							}
						}
					}
					&:hover {
						.child_menu_item {
							color: #013b96;
							>a {
								color: #013b96;
							}
						}
						span.child_menu_item {
							&:after {
								background: #013b96;
							}
						}
					}
				}
				.menu {
					padding-top: clamp(22px, 1.85vw, 35px);
					padding-bottom: clamp(22px, 1.85vw, 35px);
					&:hover {
						.child_menu_box {
							visibility: visible;
						}
					}
				}
			}
		}
		>div {
			display: flex;
			align-items: center;
			gap: 0 clamp(15px, 1.1vw, 20px);
			padding-left: clamp(15px, 1.1vw, 20px);
			&:before {
				content: "";
				display: block;
				width: 1px;
				height: clamp(18px, 1.4vw, 25px);
				background: #73b8e5;
			}
			>p {
				font-size: clamp(10px, 0.77vw, 14px);
				line-height: 1;
				color: #73b8e5;
				letter-spacing: 0.05em;
			}
			>ul {
				display: flex;
				gap: 0 7px;
				>li {
					width: clamp(20px, 1.65vw, 30px);
					>a {
						display: block;
						transition: all 0.2s;
						&:hover {
							opacity: 0.8;
						}
					}
				}
			}
		}
	}
	#t_main {
		margin: 0 0 55px 0;
		padding-top: clamp(190px, 15vw, 275px);
		padding-bottom: clamp(190px, 15vw, 275px);
		position: relative;
		&:before {
			content: "";
			width: clamp(360px, 28.5vw, 520px);
			aspect-ratio: 13 / 6;
			background-image: url(/img/top/main_curve.webp);
			background-repeat: no-repeat;
			background-size: cover;
			position: absolute;
			top: 0;
			right: 0;
			z-index: 1;
		}
		>a {
			display: block;
			padding: 30px 45px 40px 30px;
			background: #FFF;
			border-radius: 0 0 50px 0;
			position: absolute;
			top: 0;
			left: 0;
			z-index: 10;
			>img {
				width: clamp(190px, 15vw, 270px);
			}
		}
		.t_main_box {
			margin: 0 auto;
			position: relative;
			z-index: 10;
			>ul {
				display: flex;
				gap: 0 10px;
				margin: 0 0 5px 0;
				>li {
					padding: 3px;
					border: 2px dashed #FFF;
					border-radius: 10px;
					>span {
						display: block;
						padding: 0 1em;
						background: #FFF;
						border-radius: 10px;
						font-size: clamp(20px, 1.5vw, 27px);
						line-height: 1.65;
						color: #013b96;
					}
				}
			}
			>h2 {
				width: clamp(520px, 42vw, 750px);
				margin: 0 0 clamp(30px, 22vw, 40px) 0;
			}
			>p {
				font-size: clamp(13px, 1vw, 18px);
				letter-spacing: 0.05em;
				color: #FFF;
				font-weight: 800;
			}
		}
		.t_main_slide {
			width: calc(100% - 20px);
			height: 100%;
			position: absolute;
			top: 0;
			right: 0;
			z-index: 0;
			.swiper-slide {
				position: relative;
				border-radius: 0 0 0 100px;
				overflow: hidden;
				>img {
					width: 100%;
					height: 100% !important;
					object-fit: cover;
					transition: transform 8s ease-in-out;
					transform: scale(1);
				}
				& p {
					color: #FFF;
					font-weight: 800;
				}
				>div {
					display: flex;
					flex-direction: column;
					align-items: center;
					gap: 45px 0px;
					position: absolute;
					bottom: clamp(65px, 5vw, 90px);
					left: clamp(32px, 2.5vw, 45px);
					.t_main_slide_catch {
						display: flex;
						flex-direction: column;
						align-items: center;
						gap: 8px 0px;
						.t_main_slide_catch_num {
							font-size: clamp(13px, 1vw, 18px);
							letter-spacing: 0.05em;
						}
						>hr {
							width: 1px;
							height: 40px;
							border: none;
							background: #FFF;
						}
						.t_main_slide_catch_txt {
							font-size: clamp(12px, 0.95vw, 17px);
							letter-spacing: 0.05em;
							-ms-writing-mode: tb-rl;
							writing-mode: vertical-rl;
						}
					}
					.t_main_slide_num {
						display: flex;
						flex-direction: column;
						align-items: center;
						gap: 5px 0px;
						padding: 10px;
						border: 2px solid #FFF;
						>p {
							font-size: clamp(13px, 1vw, 18px);
							letter-spacing: 0.05em;
						}
						>hr {
							width: 22px;
							height: 3px;
							border: none;
							background: #FFF;
						}
					}
				}
			}
		}
		.swiper-slide-active .slide-img {
			transform: scale(1.1) !important;
		}
		.t_main_slide_ar {
			display: flex;
			gap: 0 7px;
			position: absolute;
			bottom: clamp(36px, 3.2vw, 60px);
			left: clamp(42px, 2.9vw, 52px);
			cursor: pointer;
			z-index: 10;
			>div {
				height: clamp(13px, 1vw, 18px);
				aspect-ratio: 11 / 18;
				background: #FFF;
			}
			.t_main_prev {
				clip-path: polygon(100% 0, 0 50%, 100% 100%);
			}
			.t_main_next {
				clip-path: polygon(0 0, 100% 50%, 0 100%);
			}
		}
		.t_main_info {
			display: flex;
			align-items: center;
			gap: 0 clamp(13px, 1vw, 18px);
			padding: clamp(18px, 1.4vw, 25px);
			background: #FFF;
			border-radius: 50px;
			position: absolute;
			bottom: clamp(36px, 3.2vw, 60px);
			right: clamp(25px, 2.1vw, 40px);
			z-index: 10;
			>h3 {
				display: flex;
				align-items: center;
				gap: 0 1em;
				font-size: clamp(13px, 1vw, 18px);
				line-height: 1;
				font-weight: 800;
				color: #73b8e5;
				letter-spacing: 0.05em;
				&:after {
					content: "";
					display: block;
					width: 2px;
					height: clamp(15px, 1.1vw, 20px);
					background: #cbcbcb;
				}
			}
			& iframe {
				width: clamp(430px, 34vw, 600px);
				aspect-ratio: 24 / 1;
			}
		}
	}
	#t_nav {
		width: clamp(900px, 75vw, 1360px);
		margin: 0 auto 70px auto;
		>ul {
			display: flex;
			flex-wrap: wrap;
			>li {
				width: 50%;
				&:nth-child(2n) {
					>a {
						padding: 0 0 0 clamp(10px, 8.5vw, 20px);
						border-left: 1px solid #d7d7d7;
					}
				}
				&:nth-child(1),
				&:nth-child(2) {
					padding-bottom: clamp(10px, 8.5vw, 20px);
					border-bottom: 1px solid #d7d7d7;
				}
				&:nth-child(3),
				&:nth-child(4) {
					padding-top: clamp(10px, 8.5vw, 20px);
				}
				>a {
					display: flex;
					align-items: center;
					gap: 0 clamp(18px, 14vw, 25px);
					.t_nav_img {
						flex-shrink: 0;
						width: clamp(200px, 15.5vw, 280px);
						aspect-ratio: 1 / 1;
						box-sizing: border-box;
						padding: clamp(10px, 0.85vw, 15px);
						background: #fbf7eb;
						border-radius: 30px;
						>div {
							border-radius: 24px;
							overflow: hidden;
							>img {
								transition: all 0.2s;
							}
						}
					}
					.t_nav_box {
						>div {
							margin-bottom: clamp(20px, 1.65vw, 30px);
							padding-bottom: clamp(15px, 1.1vw, 20px);
							position: relative;
							&:after {
								content: "";
								width: clamp(18px, 1.4vw, 25px);
								aspect-ratio: 5 / 2;
								background-image: url(/img/top/nav_dot.webp);
								background-position: center;
								background-repeat: no-repeat;
								background-size: cover;
								position: absolute;
								left: 0;
								bottom: 0;
							}
							.t_nav_en {
								font-size: clamp(12px, 0.88vw, 16px);
								line-height: 1;
								letter-spacing: 0.05em;
								color: #73c3e5;
							}
							.t_nav_name {
								display: flex;
								align-items: center;
								gap: 0 clamp(12px, 0.88vw, 16px);
								font-size: clamp(22px, 1.8vw, 36px);
								line-height: 1;
								letter-spacing: 0.05em;
								&:after {
									content: "";
									width: clamp(36px, 3.2vw, 60px);
									aspect-ratio: 1 / 1;
									background-image: url(/img/top/nav_ar.webp);
									background-position: center;
									background-repeat: no-repeat;
									background-size: cover;
								}
							}
						}
						>p {
							font-size: clamp(10px, 0.77vw, 14px);
							line-height: 1.7;
							letter-spacing: 0.05em;
						}
					}
					&:hover {
						.t_nav_img {
							>div {
								>img {
									filter: brightness(80%);
									transform: scale(1.1);
								}
							}
						}
						.t_nav_name {
							color: #73c3e5;
						}
					}
				}
			}
		}
	}
	#t_mem {
		margin: 0 0 40px 0;
		padding: 65px 0 70px 0;
		background: #d5edf7;
		position: relative;
		z-index: 1;
		.t_tl {
			margin: 0 0 20px 0;
			text-align: center;
		}
		.t_mem_box {
			display: flex;
			align-items: flex-end;
			gap: 0 clamp(40px, 3.3vw, 60px);
			margin: 0 auto;
			.t_mem_box_l {
				flex-shrink: 0;
				width: clamp(420px, 35.5vw, 673px);
				aspect-ratio: 1/ 1;
				box-sizing: border-box;
				padding: clamp(20px, 1.65vw, 30px);
				margin-bottom: clamp(25px, 2.1vw, 40px);
				border-radius: 50%;
				position: relative;
				&:before {
					content: "";
					display: block;
					width: 100%;
					height: 100%;
					border-radius: 50%;
					background-image: url(/img/top/mem_en.webp);
					background-position: center;
					background-size: cover;
					background-position: center;
					position: absolute;
					left: 0;
					top: 0;
					z-index: -1;
					animation: rotation 20s linear infinite;
					transform: rotate(0deg);
				}
				>a.t_mem_box_l_box {
					display: flex;
					flex-direction: column;
					align-items: center;
					justify-content: center;
					width: 100%;
					height: 100%;
					box-sizing: border-box;
					padding-top: clamp(15px, 1.3vw, 25px);
					border-radius: 50%;
					background: #FFF;
					position: relative;
					&:before, &:after {
						content: "";
						width: clamp(105px, 9vw, 170px);
						aspect-ratio: 17 / 35;
						background-repeat: no-repeat;
						background-size: cover;
						background-position: center;
						position: absolute;
						bottom: calc(clamp(45px, 3.7vw, 70px)*-1);
					}
					&:before {
						background-image: url(/img/top/mem_il01.webp);
						left: calc(clamp(45px, 3.7vw, 70px)*-1);
					}
					&:after {
						background-image: url(/img/top/mem_il02.webp);
						right: calc(clamp(45px, 3.7vw, 70px)*-1);
					}
					.t_mem_box_l_txt {
						margin-bottom: clamp(25px, 2vw, 40px);
						font-size: clamp(20px, 1.8vw, 34px);
						line-height: 1.55;
						font-weight: 700;
						letter-spacing: 0.05em;
						>span {
							color: #e04f4f;
						}
					}
					>div {
						margin-bottom: clamp(20px, 1.65vw, 30px);
						>p {
							display: flex;
							align-items: center;
							gap: 0 10px;
							margin-bottom: clamp(10px, 0.8vw, 15px);
							padding-bottom: clamp(10px, 0.8vw, 15px);
							border-bottom: 1px solid #000000;
							font-size: clamp(14px, 1.2vw, 22px);
							line-height: 1;
							letter-spacing: 0.1em;
							font-weight: 700;
							&:before {
								content: "";
								display: block;
								width: clamp(20px, 1.6vw, 30px);
								aspect-ratio: 1 / 1;
								background-image: url(/img/top/mem_house_icon.webp);
								background-repeat: no-repeat;
								background-size: cover;
								background-position: center;
							}
						}
						>ul {
							display: flex;
							align-items: center;
							gap: 0 clamp(20px, 1.65vw, 30px);
							>li {
								display: flex;
								align-items: center;
								gap: 0 clamp(10px, 0.8vw, 15px);
								.t_mem_box_num_item {
									padding: 0.5em;
									font-size: clamp(12px, 0.95vw, 18px);
									line-height: 1.2;
									font-weight: 700;
									letter-spacing: 0.1em;
								}
								.t_mem_box_num_count {
									font-size: clamp(24px, 1.9vw, 36px);
									line-height: 1;
									font-weight: 700;
									letter-spacing: 0.05em;
									>span {
										font-size: clamp(35px, 2.9vw, 55px);
									}
								}
								&:nth-child(1) {
									.t_mem_box_num_item {
										background: #ffe14c;
									}
								}
								&:nth-child(2) {
									.t_mem_box_num_item {
										background: #e04f4f;
										color: #FFF;
									}
									.t_mem_box_num_count {
										>span {
											color: #e04f4f;
										}
									}
								}
							}
						}
					}
					&:hover {
						.t_btn_bl {
							background: #55ab7f;
							&:after {
								background-image: url(/img/top/btn_ar_gr.webp);
							}
						}
					}
				}
				.t_mem_box_l_login {
					display: block;
					width: fit-content;
					margin: auto;
					font-size: clamp(9px, 0.75vw, 12px);
					color: #013b96;
					text-decoration: underline;
					position: absolute;
					left: 0;
					right: 0;
					bottom: clamp(40px, 3.4vw, 70px);
					z-index: 2;
					&:hover {
						text-decoration: none;
					}
				}
			}
			.t_mem_box_r {
				>ul {
					display: flex;
					flex-wrap: wrap;
					gap: 20px;
					counter-reset: item;
					>li {
						border-radius: 20px;
						background: #FFF;
						position: relative;
						&:before {
							counter-increment: item;
							content: '0'counter(item);
							display: flex;
							align-items: center;
							justify-content: center;
							width: 2.1em;
							aspect-ratio: 1 / 1;
							background: #73c3e5;
							border-radius: 50%;
							font-size: clamp(12px, 1vw, 20px);
							font-weight: 800;
							color: #FFF;
							letter-spacing: 0.05em;
							position: absolute;
							top: clamp(12px, 1vw, 20px);
							right: clamp(12px, 1vw, 20px);
						}
						>img {
							width: clamp(200px, 17vw, 320px);
						}
						>div {
							>p {
								letter-spacing: 0.1em;
							}
							.t_mem_box_r_name {
								margin-bottom: 0.8em;
								font-size: clamp(15px, 1.3vw, 25px);
								line-height: 1.35;
								font-weight: 700;
								color: #73c3e5;
							}
							.t_mem_box_r_txt {
								font-size: clamp(12px, 0.95vw, 18px);
								color: #747474;
								line-height: 1.6;
							}
						}
					}
					.t_mem_box_r_wide {
						display: flex;
						flex-direction: row-reverse;
						align-items: flex-end;
						gap: 0 15px;
						padding: clamp(20px, 1.6vw, 30px) clamp(45px, 4vw, 75px) clamp(12px, 1vw, 20px) clamp(22px, 1.85vw, 35px);
						>div {
							padding: 0 0 15px 0;
						}
						>img {
							flex-shrink: 0;
						}
					}
					.t_mem_box_r_thin {
						width: calc((100% - 20px)/2);
						box-sizing: border-box;
						padding: 0 clamp(20px, 1.6vw, 30px) clamp(20px, 1.6vw, 30px) clamp(20px, 1.6vw, 30px);
						>img {
							display: block;
							margin: 0 auto;
						}
					}
				}
			}
		}
	}
	#t_guide {
		margin: 0 0 135px 0;
		padding: 90px 0 60px 0;
		overflow: hidden;
		position: relative;
		&:before {
			content: "";
			display: block;
			width: calc(100% - 70px);
			height: 100%;
			background: #f2ebdf;
			border-radius: 30px;
			margin: auto;
			position: absolute;
			top: 0;
			left: 0;
			right: 0;
			z-index: -1;
		}
		.t_guide_tl {
			display: flex;
			justify-content: space-between;
			margin: 0 auto 55px auto;
			padding: 0 0 0 clamp(35px, 2.8vw, 50px);
			.t_tl_guide {
				padding-bottom: clamp(35px, 2.8vw, 50px);
				position: relative;
				>p {
					margin-bottom: clamp(18px, 1.4vw, 25px);
					font-size: clamp(13px, 1vw, 18px);
					line-height: 1;
					letter-spacing: 0.05em;
				}
				>h2 {
					font-size: clamp(40px, 3.1vw, 58px);
					line-height: 1;
					font-weight: 500;
					letter-spacing: 0.1em;
				}
			}
			.t_tl_dot_bl {
				&:after {
					content: "";
					width: clamp(24px, 1.8vw, 32px);
					aspect-ratio: 8 / 3;
					background-repeat: no-repeat;
					background-size: contain;
					background-position: center;
					position: absolute;
					bottom: 0;
					background-image: url(/img/top/tl_dot_bl.webp);
				}
			}
			.t_guide_tl_r {
				>p {
					letter-spacing: 0.05em;
				}
				.t_guide_tl_logo {
					display: flex;
					align-items: center;
					gap: 0 10px;
					margin-bottom: 1.5em;
					font-size: clamp(10px, 0.75vw, 13px);
					line-height: 1.7;
					color: #013b96;
					&:before {
						content: "";
						display: block;
						width: clamp(35px, 2.8vw, 50px);
						aspect-ratio: 5 / 3;
						background-image: url(/img/top/guide_logo.webp);
						background-repeat: no-repeat;
						background-size: cover;
						background-position: center;
					}
				}
				.t_guide_tl_txt {
					font-size: clamp(20px, 1.5vw, 26px);
					line-height: 1.5;
				}
			}
		}
		.t_guide_box {
			>ul {
				margin: 0 0 35px 0;
				>li {
					display: flex;
					justify-content: space-between;
					gap: 0 30px;
					width: clamp(900px, 75vw, 1360px);
					box-sizing: border-box;
					background: #FFF;
					>div {
						padding-top: clamp(35px, 2.9vw, 55px);
						padding-left: clamp(35px, 2.9vw, 55px);
						>div.t_guide_sl_name {
							margin-bottom: clamp(35px, 2.9vw, 55px);
							display: flex;
							align-items: center;
							gap: 0 clamp(15px, 1.1vw, 20px);
							& p {
								color: #73c3e5;
								letter-spacing: 0.05em;
							}
							>div {
								display: flex;
								align-items: baseline;
								gap: 0 5px;
								.t_guide_sl_num {
									font-size: clamp(30px, 2.2vw, 40px);
									font-weight: 400;
									>span {
										font-size: clamp(32px, 2.4vw, 43px);
										margin-left: 3px;
										font-weight: 400;
									}
								}
								.t_guide_sl_numall {
									display: flex;
									align-items: flex-end;
									gap: 0 10px;
									font-size: clamp(18px, 1.4vw, 25px);
									line-height: 1;
									font-weight: 400;
									&:before {
										content: "";
										display: block;
										width: 1px;
										height: clamp(15px, 1.1vw, 20px);
										background: #73c3e5;
										transform: rotate(20deg);
									}
								}
							}
							>hr {
								width: clamp(36px, 3.2vw, 60px);
								height: 1px;
								border: none;
								background: #73c3e5;
							}
							.t_guide_sl_item {
								font-size: clamp(15px, 1.1vw, 20px);
								line-height: 1;
								font-weight: 700;
								>span {
									font-size: clamp(10px, 0.85vw, 15px);
								}
							}
						}
						.t_guide_sl_catch {
							margin-bottom: clamp(20px, 1.65vw, 30px);
							font-size: clamp(20px, 1.65vw, 30px);
							line-height: 1.5;
							font-weight: 700;
							letter-spacing: 0.05em;
						}
						.t_guide_sl_txt {
							font-size: clamp(13px, 1.1vw, 20px);
							line-height: 1.6;
							color: #747474;
							letter-spacing: 0.05em;
							>ul {
								margin-top: clamp(15px, 1.1vw, 20px);
								>li {
									font-size: clamp(9px, 0.75vw, 13px);
									line-height: 1.5;
									color: #e04f4f;
								}
							}
						}
						>a {
							display: flex;
							align-items: center;
							justify-content: space-between;
							width: clamp(190px, 15vw, 270px);
							box-sizing: border-box;
							margin-top: clamp(22px, 1.85vw, 35px);
							padding: 0.65em 0.65em 0.65em 1.5em;
							background: #73b8e6;
							border-radius: 5px;
							font-size: clamp(12px, 0.9vw, 16px);
							line-height: 1;
							color: #FFF;
							letter-spacing: 0.05em;
							transition: all 0.2s;
							&:after {
								content: "";
								display: block;
								width: clamp(32px, 2.5vw, 45px);
								aspect-ratio: 1 / 1;
								background-image: url(/img/top/btn_ar_bl.webp);
								background-repeat: no-repeat;
								background-size: cover;
								background-position: center;
								transition: all 0.2s;
							}
							&:hover {
								background: #55ab7f;
								&:after {
									background-image: url(/img/top/btn_ar_gr.webp);
								}
							}
						}
					}
					>img {
						width: 48%;
						object-fit: cover;
					}
				}
			}
			.swiper-pagination {
				display: flex;
				justify-content: flex-end;
				gap: 0 18px;
				width: clamp(900px, 75vw, 1360px);
				margin: 0 auto;
				position: relative;
				bottom: 0;
				>span {
					margin: 0;
					width: 12px;
					height: 12px;
					background: #FFF;
					opacity: 0.5;
				}
				.swiper-pagination-bullet-active {
					background: #FFF;
					opacity: 1;
				}
			}
		}
	}
	.t_photo {
		height: 100vh;
		background-image: url(/img/top/scroll_bg_img.webp);
		background-size: cover;
		background-position: center;
		background-attachment: fixed;
	}
	#t_sr {
		padding: 0 0 0 0;
		background: #FFF;
		position: relative;
		z-index: 10;
		&:before {
			content: "";
			width: 100%;
			height: 100%;
			background: #FFF;
			border-radius: 60px 60px 0 0;
			position: absolute;
			top: calc(clamp(75px, 6.5vw, 120px)*-1);
			right: 0;
			z-index: -1;
		}
		.t_sr_map {
			width: clamp(680px, 57vw, 1080px);
			position: absolute;
			left: 0;
			top: clamp(20px, 1.65vw, 30px);
		}
		.t_sr_box {
			display: flex;
			justify-content: end;
			margin: 0 auto;
			>div {
				width: clamp(500px, 41vw, 775px);
				.t_sr_box_part {
					margin-bottom: clamp(22px, 1.85vw, 35px);
					padding-top: clamp(22px, 1.85vw, 35px);
					padding-right: clamp(22px, 1.85vw, 35px);
					padding-bottom: clamp(20px, 1.65vw, 30px);
					padding-left: clamp(35px, 2.9vw, 55px);
					border-radius: 30px;
					box-shadow: 0px 0px 10px 0px RGBA(196, 196, 196, 0.4);
					overflow: hidden;
					position: relative;
					z-index: 11;
					&:before {
						content: "";
						display: block;
						width: clamp(15px, 1.1vw, 20px);
						height: 100%;
						position: absolute;
						top: 0;
						left: 0;
					}
					>div {
						display: flex;
						align-items: baseline;
						gap: 0 12px;
						margin-bottom: clamp(18px, 1.4vw, 25px);
						padding-bottom: clamp(18px, 1.4vw, 25px);
						border-bottom: 1px solid #eaeaea;
						>h3 {
							display: flex;
							align-items: center;
							gap: 0 10px;
							font-size: clamp(20px, 1.5vw, 26px);
							line-height: 1;
							font-weight: 500;
							letter-spacing: 0.05em;
							&:before {
								content: "";
								width: clamp(18px, 1.4vw, 25px);
								aspect-ratio: 1 / 1;
								background-repeat: no-repeat;
								background-size: cover;
								background-position: center;
							}
						}
						>p {
							font-size: clamp(13px, 0.95vw, 17px);
							line-height: 1;
							letter-spacing: 0.05em;
						}
					}
					>ul {
						display: flex;
						flex-wrap: wrap;
					}
				}
				.t_sr_box_type {
					&:before {
						background-color: #8fc6eb;
					}
					>div {
						>h3 {
							color: #73b8e6;
							&:before {
								background-image: url(/img/top/sr_icon01.webp);
							}
						}
						>p {
							color: #73b8e6;
						}
					}
					>ul {
						gap: 0 25px;
						>li {
							width: calc((100% - 75px)/4);
							>a {
								display: flex;
								flex-direction: column;
								align-items: center;
								justify-content: flex-end;
								width: 100%;
								aspect-ratio: 1 / 1;
								box-sizing: border-box;
								padding-bottom: clamp(18px, 1.4vw, 25px);
								box-shadow: 0px 0px 10px 0px RGBA(196, 196, 196, 0.4);
								border-radius: 20px;
								font-size: clamp(12px, 0.95vw, 18px);
								font-weight: 700;
								text-align: center;
								transition: all 0.2s;
								>img {
									display: block;
									width: clamp(50px, 4.2vw, 80px);
									margin: 0 auto clamp(10px, 0.85vw, 15px) auto;
								}
								&:hover {
									box-shadow: 0px 0px 4px 0px RGBA(196, 196, 196, 0.4);
									transform: translateY(2px);
								}
							}
						}
					}
				}
				.t_sr_box_cond {
					&:before {
						background-color: #55ab7f;
					}
					>div {
						>h3 {
							color: #55ab7f;
							&:before {
								background-image: url(/img/top/sr_icon02.webp);
							}
						}
						>p {
							color: #55ab7f;
						}
					}
					>ul {
						gap: 10px;
						>li {
							width: calc((100% - 20px)/3);
							>a {
								display: flex;
								align-items: center;
								justify-content: space-between;
								box-sizing: border-box;
								padding: 0.5em 0.5em 0.5em 1em;
								border: 2px solid #55ab7f;
								border-radius: 40px;
								font-size: clamp(12px, 0.95vw, 17px);
								color: #55ab7f;
								transition: all 0.2s;
								&:after {
									content: "";
									display: block;
									width: clamp(22px, 1.85vw, 35px);
									aspect-ratio: 1 / 1;
									background-image: url(/img/top/sr_cond_ar.webp);
									background-repeat: no-repeat;
									background-size: cover;
									background-position: center;
									transition: all 0.2s;
								}
								&:hover {
									border: 2px solid #2e5e45;
									color: #2e5e45;
									&:after {
										background-image: url(/img/top/sr_cond_ar_h.webp);
									}
								}
							}
						}
					}
				}
				>a {
					display: block;
					width: 100%;
					overflow: hidden;
					border-radius: 30px;
					position: relative;
					z-index: 11;
					transition: all 0.2s;
					&:hover {
						filter: brightness(80%);
					}
				}
			}
		}
	}
	#t_reco {
		margin: 0 0 100px 0;
		padding: 140px 0 60px 0;
		position: relative;
		z-index: 12;
		&:before {
			content: "";
			width: 100%;
			height: 600px;
			background-image: url(/img/top/reco_bg.webp);
			background-position: top center;
			background-repeat: no-repeat;
			background-size: cover;
			position: absolute;
			top: 0;
			left: 0;
			z-index: -1;
		}
		&:after {
			content: "";
			width: 100%;
			height: 80%;
			background: #e3f1fa;
			position: absolute;
			bottom: 0;
			left: 0;
			z-index: -1;
		}
		>div {
			margin: 0 auto;
			.t_tl {
				margin: 0 0 35px 0;
			}
			& input[name="tab_group"] {
				display: none;
			}
			.reco_tab_content {
				display: none;
			}
			#content01 {
				display: block;
			}
			.tab-nav {
				display: flex;
				border-radius: 45px;
				border: 1px solid #73b8e5;
				margin: 0 0 35px 0;
				>label {
					cursor: pointer;
					display: flex;
					align-items: center;
					justify-content: center;
					gap: 0 clamp(15px, 1.1vw, 20px);
					width: 25%;
					aspect-ratio: 40 / 9;
					background: #FFF;
					transition: all 0.2s;
					>p {
						font-size: clamp(15px, 1.1vw, 20px);
						line-height: 1;
						color: #73b8e5;
						transition: all 0.2s;
					}
					&:before {
						content: "";
						display: block;
						width: clamp(35px, 2.8vw, 50px);
						aspect-ratio: 5 / 3;
						background-repeat: none;
						background-size: contain;
						background-position: center;
						transition: all 0.2s;
					}
					&:after {
						transition: all 0.2s;
					}
				}
				& label[for="tab01"] {
					border-radius: 50px 0 0 50px;
					border-right: 1px solid #73b8e5;
					&:before {
						background-image: url(/img/top/reco_icon01.webp);
					}
				}
				& label[for="tab02"] {
					border-right: 1px solid #73b8e5;
					&:before {
						background-image: url(/img/top/reco_icon02.webp);
					}
				}
				& label[for="tab03"] {
					border-right: 1px solid #73b8e5;
					&:before {
						background-image: url(/img/top/reco_icon03.webp);
					}
				}
				& label[for="tab04"] {
					border-radius: 0 50px 50px 0;
					&:before {
						background-image: url(/img/top/reco_icon04.webp);
					}
					>p {
						width: clamp(90px, 7.2vw, 130px);
						>img {
							transition: all 0.2s;
						}
					}
				}
				#tab01:checked~label[for="tab01"],
				#tab02:checked~label[for="tab02"],
				#tab03:checked~label[for="tab03"],
				#tab04:checked~label[for="tab04"] {
					background: #73b8e5;
					position: relative;
					>p {
						color: #FFF;
					}
					&:after {
						content: "";
						display: block;
						width: clamp(24px, 1.9vw, 36px);
						aspect-ratio: 2 / 1;
						margin: auto;
						clip-path: polygon(49% 100%, 0 0, 100% 0);
						background: #73b8e5;
						position: absolute;
						left: 0;
						right: 0;
						bottom: calc(clamp(12px, 0.85vw, 15px)*-1);
					}
				}
				#tab01:checked~label[for="tab01"] {
					&:before {
						background-image: url(/img/top/reco_icon01_ac.webp);
					}
				}
				#tab02:checked~label[for="tab02"] {
					&:before {
						background-image: url(/img/top/reco_icon02_ac.webp);
					}
				}
				#tab03:checked~label[for="tab03"] {
					&:before {
						background-image: url(/img/top/reco_icon03_ac.webp);
					}
				}
				#tab04:checked~label[for="tab04"] {
					&:before {
						background-image: url(/img/top/reco_icon04_ac.webp);
					}
					>p {
						background-image: url(/img/top/reco_insta.webp);
						background-repeat: no-repeat;
						background-size: contain;
						background-position: center;
						>img {
							opacity: 0;
						}
					}
				}
			}
			.tab-body {
				.reco_tab_content {
					>div {
						width: 100%;
						box-sizing: border-box;
						margin: 0 0 40px 0;
						background: #FFF;
						border-radius: 60px;
					}
					.reco_house_wrap {
						padding: clamp(35px, 2.8vw, 50px);
					}
					.reco_insta_wrap {
						padding: clamp(30px, 2.2vw, 40px) clamp(70px, 5.6vw, 100px) clamp(22px, 1.85vw, 35px) clamp(70px, 5.6vw, 100px);
						>iframe {
							width: 100%;
							aspect-ratio: 3.5 / 1;
						}
					}
					.t_btn {
						width: clamp(320px, 24.5vw, 440px);
						margin: 0 auto;
					}
				}
			}
			.reco_house {
				display: flex;
				gap: 0 clamp(32px, 2.5vw, 45px);
				>li {
					width: calc((100% - 3*(clamp(32px, 2.5vw, 45px)))/4);
					>a {
						display: block;
						.reco_house_img {
							width: 100%;
							aspect-ratio: 1 / 1;
							margin: 0 0 clamp(20px, 1.65vw, 30px) 0;
							border-radius: 40px;
							overflow: hidden;
							position: relative;
							box-shadow: 0px 8px 0px 0px #b2d5eb;
							transition: all 0.2s;
							>img {
								width: 100%;
								height: 100%;
								object-fit: cover;
								transition: all 0.2s;
							}
							&:after {
								content: "";
								width: clamp(25px, 2.1vw, 40px);
								aspect-ratio: 1 / 1;
								background-image: url(/img/top/house_ar.webp);
								background-position: center;
								background-repeat: no-repeat;
								background-size: cover;
								position: absolute;
								bottom: clamp(10px, 0.8vw, 15px);
								right: clamp(10px, 0.8vw, 15px);
							}
						}
						.reco_house_box {
							.reco_house_type {
								margin-bottom: clamp(10px, 0.85vw, 15px);
								font-size: clamp(10px, 0.75vw, 14px);
								line-height: 1;
								letter-spacing: 0.05em;
							}
							.reco_house_name {
								margin-bottom: 10px;
								font-size: clamp(14px, 1.2vw, 22px);
								line-height: 1.2;
								letter-spacing: 0.05em;
								>span {
									overflow: hidden;
									display: -webkit-box;
									-webkit-box-orient: vertical;
									-webkit-line-clamp: 1;
								}
							}
							>div {
								display: flex;
								align-items: flex-end;
								gap: 0 10px;
								margin-bottom: clamp(10px, 0.85vw, 15px);
								.reco_house_price {
									font-size: clamp(14px, 1.2vw, 22px);
									color: #e04f4f;
									letter-spacing: 0.05em;
								}
								.reco_house_floor {
									display: flex;
									align-items: flex-end;
									gap: 0 10px;
									font-size: clamp(12px, 0.95vw, 18px);
									letter-spacing: 0.05em;
									&:before {
										content: "";
										aspect-ratio: 2 / 15;
										height: clamp(10px, 0.85vw, 15px);
										background-color: #000000;
										transform: rotate(30deg);
									}
								}
							}
							>ul {
								>li {
									>span {
										font-size: clamp(10px, 0.77vw, 14px);
										line-height: 1.5;
										color: #747474;
										letter-spacing: 0.05em;
										>span {
											overflow: hidden;
											display: -webkit-box;
											-webkit-box-orient: vertical;
											-webkit-line-clamp: 1;
										}
									}
								}
							}
						}
						&:hover {
							.reco_house_img {
								box-shadow: 0px 0px 0px 0px #b2d5eb;
								transform: translateY(8px);
								>img {
									filter: brightness(80%);
								}
							}
						}
					}
				}
			}
		}
	}
	#t_sale {
		position: relative;
		margin: 0 0 120px 0;
		>div {
			margin: 0 auto;
			padding: clamp(50px, 4.5vw, 85px);
			border-radius: 80px;
			position: relative;
			z-index: 1;
			&:before, &:after {
				content: "";
				display: block;
				background: #88c4a5;
				position: absolute;
				bottom: 0;
				z-index: -1;
			}
			&:before {
				width: calc(50% + clamp(150px, 12vw, 215px));
				height: 100%;
				border-radius: 80px 80px 0 80px;
				left: 0;
			}
			&:after {
				width: calc(50% - clamp(150px, 12vw, 215px));
				height: calc(100% - clamp(130px, 10vw, 180px));
				border-radius: 0 80px 80px 0;
				right: 0;
			}
			.t_sale_tl {
				display: flex;
				align-items: flex-end;
				gap: 0 clamp(70px, 5.6vw, 100px);
				margin: 0 0 45px 0;
				>p {
					font-size: clamp(20px, 1.65vw, 30px);
					color: #FFF;
					line-height: 1.5;
					letter-spacing: 0.05em;
				}
			}
			.t_sale_box {
				width: clamp(720px, 54vw, 1000px);
				box-sizing: border-box;
				margin: 0 0 40px 0;
				padding: clamp(22px, 1.85vw, 35px) clamp(35px, 2.8vw, 50px) clamp(35px, 2.8vw, 50px) clamp(35px, 2.8vw, 50px);
				background: #FFF;
				border-radius: 50px;
				>div {
					margin: 0 0 clamp(20px, 1.65vw, 30px) 0;
					padding: 0 0 25px 0;
					border-bottom: 2px solid #2e5e45;
					>p {
						margin: 0 0 12px 0;
						font-size: clamp(12px, 0.88vw, 16px);
						line-height: 1;
						font-weight: 700;
						letter-spacing: 0.05em;
						color: #2e5e45;
					}
					>h3 {
						font-size: clamp(18px, 1.4vw, 24px);
						line-height: 1;
						letter-spacing: 0.05em;
						color: #2e5e45;
					}
				}
				.t_sale_case {
					display: flex;
					flex-wrap: wrap;
					gap: clamp(18px, 1.4vw, 25px);
					margin-bottom: clamp(18px, 1.4vw, 25px);
					>li {
						width: calc((100% - 2*clamp(18px, 1.4vw, 25px))/3);
						>a {
							display: block;
							padding: clamp(18px, 1.4vw, 25px) clamp(18px, 1.4vw, 25px) 15px clamp(18px, 1.4vw, 25px);
							border-radius: 20px;
							overflow: hidden;
							position: relative;
							z-index: 1;
							>img {
								width: 100%;
								height: 100%;
								margin: auto;
								object-fit: cover;
								position: absolute;
								left: 0;
								right: 0;
								top: 0;
								bottom: 0;
								z-index: -1;
								transition: all 0.2s;
							}
							>p {
								color: #FFF;
								letter-spacing: 0.05em;
							}
							.t_sale_case_name {
								margin-bottom: 2.3em;
								font-size: clamp(14px, 1.2vw, 22px);
								font-weight: 700;
							}
							&:hover {
								>img {
									transform: scale(1.1);
									filter: brightness(80%);
								}
							}
						}
					}
				}
				.t_sale_type {
					display: flex;
					flex-wrap: wrap;
					gap: clamp(10px, 0.85vw, 15px);
					>li {
						width: calc((100% - 3*clamp(10px, 0.85vw, 15px))/4);
						>a {
							display: flex;
							justify-content: space-between;
							padding: 0.8em 0.5em 0.8em 0.8em;
							border: 2px solid #2e5e45;
							border-radius: 20px;
							font-size: clamp(15px, 1.1vw, 20px);
							color: #2e5e45;
							line-height: 1.5;
							font-weight: 700;
							letter-spacing: 0.05em;
							transition: all 0.2s;
							&:after {
								content: "";
								width: clamp(22px, 1.85vw, 35px);
								aspect-ratio: 1 / 1;
								background-image: url(/img/top/sale_btn_icon02.webp);
								background-position: center;
								background-repeat: no-repeat;
								background-size: cover;
								transition: all 0.2s;
							}
							&:hover {
								background: #2e5e45;
								color: #FFF;
								&:after {
									background-image: url(/img/top/sale_btn_icon01.webp);
								}
							}
						}
					}
				}
			}
			>ul {
				display: flex;
				gap: 0 20px;
			}
			.t_sale_curve {
				height: clamp(55px, 4.4vw, 78px);
				aspect-ratio: 1 / 1;
				position: absolute;
				left: calc(50% + clamp(150px, 12vw, 215px));
				top: calc(clamp(130px, 10vw, 180px) - clamp(55px, 4.4vw, 78px));
			}
			.t_sale_il {
				width: clamp(280px, 21.5vw, 386px);
				position: absolute;
				top: clamp(25px, 2.1vw, 40px);
				right: clamp(110px, 9vw, 160px);
			}
		}
		>img {
			width: calc(50% - clamp(200px, 13.5vw, 250px));
			height: clamp(590px, 40.5vw, 735px);
			object-fit: cover;
			position: absolute;
			bottom: clamp(50px, 4.5vw, 85px);
			right: 0;
			z-index: 2;
		}
	}
	#t_news {
		margin: 0 0 100px 0;
		>iframe {
			width: 100%;
			height: clamp(250px, 19vw, 360px);
		}
	}
	#t_about {
		padding: clamp(50px, 4.2vw, 80px) 0;
		position: relative;
		&:before {
			content: "";
			display: block;
			width: 93%;
			height: clamp(130px, 10vw, 180px);
			box-sizing: border-box;
			margin: auto;
			background: #f5dec7;
			border-radius: 50px 50px 0 0;
			position: absolute;
			left: 0;
			right: 0;
			top: 0;
			z-index: -1;
		}
		&:after {
			content: "";
			width: 100%;
			height: calc(100% - clamp(130px, 10vw, 180px));
			background: #f5dec7;
			border-radius: 0 0 80px 80px;
			position: absolute;
			left: 0;
			bottom: 0;
			z-index: -1;
		}
		>div {
			margin: 0 auto 0 auto;
			&:before, &:after {
				content: "";
				display: block;
				width: clamp(25px, 2.1vw, 40px);
				aspect-ratio: 1 / 1;
				background-image: url(/img/top/ab_curve.webp);
				background-position: center;
				background-repeat: no-repeat;
				background-size: cover;
				position: absolute;
				top: calc(clamp(130px, 10vw, 180px) - clamp(25px, 2.1vw, 40px));
			}
			&:before {
				left: calc(3.5% - clamp(25px, 2.1vw, 40px));
				transform: rotate(270deg);
			}
			&:after {
				right: calc(3.5% - clamp(25px, 2.1vw, 40px));
			}
			>div {
				display: flex;
				justify-content: space-between;
				align-items: center;
				margin-bottom: clamp(35px, 2.9vw, 55px);
				.t_about_tl {
					display: flex;
					flex-direction: column;
					align-items: center;
					justify-content: center;
					>p {
						display: flex;
						align-items: flex-end;
						gap: 0 clamp(18px, 1.4vw, 25px);
						margin-bottom: clamp(25px, 2.1vw, 40px);
						font-size: clamp(12px, 0.95vw, 18px);
						line-height: 1.4;
						color: #8c6e56;
						font-weight: 700;
						letter-spacing: 0.05em;
						text-align: center;
						&:before, &:after {
							content: "";
							display: block;
							width: 1px;
							height: 2em;
							background: #8c6e56;
						}
						&:before {
							transform: rotate(-25deg);
						}
						&:after {
							transform: rotate(25deg);
						}
					}
					>h2 {
						font-size: clamp(36px, 3.2vw, 60px);
						line-height: 1.5;
						color: #8c6e56;
						font-weight: 700;
						letter-spacing: 0.05em;
						-ms-writing-mode: tb-rl;
						writing-mode: vertical-rl;
					}
					&:after {
						content: "";
						width: clamp(140px, 11.7vw, 220px);
						aspect-ratio: 11 / 16;
						background-image: url(/img/top/ab_tl_il.webp);
						background-position: center;
						background-repeat: no-repeat;
						background-size: cover;
					}
				}
				.t_about_box {
					width: clamp(850px, 67vw, 1200px);
					box-sizing: border-box;
					margin-bottom: clamp(20px, 1.65vw, 30px);
					padding: clamp(36px, 3.2vw, 60px);
					border-radius: 40px;
					background: #FFF;
					.t_about_box_tl {
						display: flex;
						align-items: center;
						justify-content: space-between;
						margin-bottom: clamp(22px, 1.85vw, 35px);
						>h3 {
							display: flex;
							align-items: center;
							gap: 0 15px;
							width: fit-content;
							border-bottom: 3px solid #8c6e56;
							padding-bottom: clamp(15px, 1.1vw, 20px);
							font-size: clamp(20px, 1.55vw, 28px);
							line-height: 1;
							color: #8c6e56;
							font-weight: 700;
							letter-spacing: 0.1em;
							&:before {
								content: "";
								display: block;
								width: clamp(20px, 1.65vw, 30px);
								aspect-ratio: 1 / 1;
								background-image: url(/img/top/t_ab_title_icon.webp);
								background-position: center;
								background-repeat: no-repeat;
								background-size: cover;
							}
						}
						>div {
							display: flex;
							align-items: center;
							gap: 0 clamp(18px, 1.4vw, 25px);
							.t_ab_slide_prev, .t_ab_slide_next {
								height: clamp(12px, 0.95vw, 18px);
								aspect-ratio: 11 / 18;
								background-image: url(/img/top/ab_slide_ar.webp);
								background-position: center;
								background-repeat: no-repeat;
								background-size: contain;
								cursor: pointer;
							}
							.t_ab_slide_next {
								transform: rotate(180deg);
							}
							.fraction-container {
								display: flex;
								align-items: center;
								gap: 0 clamp(15px, 1.1vw, 20px);
								>span {
									font-size: clamp(15px, 1.1vw, 20px);
									line-height: 1;
									color: #8c6e56;
									font-weight: 700;
								}
								>hr {
									width: clamp(25px, 2.1vw, 40px);
									height: 1px;
									border: none;
									background: #8c6e56;
								}
							}
						}
					}
					.t_about_slide {
						overflow: hidden;
						>ul {
							>li {
								display: flex;
								gap: 0 clamp(50px, 4.2vw, 80px);
								>img {
									width: clamp(320px, 25vw, 450px);
									aspect-ratio: 15 / 14;
									object-fit: cover;
									border-radius: 20px;
								}
								>div {
									width: calc(100% - clamp(320px, 25vw, 450px) - clamp(50px, 4.2vw, 80px));
									.t_about_catch {
										margin-bottom: clamp(45px, 3.7vw, 70px);
										font-size: clamp(20px, 1.55vw, 28px);
										line-height: 1.4;
										color: #8c6e56;
										font-weight: 700;
										letter-spacing: 0.05em;
									}
									.t_about_txt {
										font-size: clamp(12px, 0.9vw, 16px);
										line-height: 2.15;
										color: #747474;
										letter-spacing: 0.05em;
										position: relative;
										&:before {
											content: "";
											display: block;
											width: clamp(20px, 1.65vw, 30px);
											aspect-ratio: 5 / 4;
											background-image: url(/img/top/ab_slide_icon.webp);
											background-position: center;
											background-repeat: no-repeat;
											background-size: cover;
											position: absolute;
											top: calc(clamp(20px, 1.65vw, 30px)*-1);
											left: calc(clamp(20px, 1.65vw, 30px)*-1);
										}
									}
								}
							}
						}
					}
				}
				.custom-pagination {
					display: flex;
					justify-content: flex-end;
					gap: 0 clamp(13px, 1vw, 18px);
					.swiper-pagination-bullet {
						width: 12px;
						height: 12px;
						margin: 0;
						opacity: 0.4;
						background: #8c6e56;
					}
					.swiper-pagination-bullet-active {
						opacity: 1;
					}
				}
			}
			>section {
				padding: clamp(35px, 2.8vw, 50px);
				background: #FFF;
				border-radius: 40px;
				position: relative;
				&:after {
					content: "";
					display: block;
					width: clamp(165px, 13.8vw, 260px);
					aspect-ratio: 13 / 10;
					background-image: url(/img/top/content_bg.webp);
					background-position: center;
					background-repeat: no-repeat;
					background-size: cover;
					position: absolute;
					top: clamp(70px, 5.6vw, 100px);
					left: clamp(25px, 2.1vw, 40px);
				}
				.t_about_nav_bnr {
					display: flex;
					gap: 0 clamp(22px, 1.85vw, 35px);
					margin-bottom: clamp(25px, 2.1vw, 40px);
					padding-bottom: clamp(20px, 1.65vw, 30px);
					border-bottom: 1px solid #eaeaea;
					position: relative;
					z-index: 2;
					>div {
						width: clamp(130px, 10vw, 180px);
						position: relative;
						>div {
							display: flex;
							justify-content: center;
							gap: 0 clamp(15px, 1.1vw, 20px);
							>p {
								font-size: clamp(13px, 1vw, 18px);
								line-height: 1;
								letter-spacing: 0.05em;
								color: #8c6e56;
								font-weight: 700;
								-ms-writing-mode: tb-rl;
								writing-mode: vertical-rl;
							}
							>h2 {
								font-size: clamp(30px, 2.3vw, 42px);
								line-height: 1;
								letter-spacing: 0.05em;
								color: #8c6e56;
								font-weight: 700;
								-ms-writing-mode: tb-rl;
								writing-mode: vertical-rl;
							}
						}
						&:after {
							content: "";
							display: block;
							width: 100%;
							aspect-ratio: 1 / 1;
							background-image: url(/img/top/content_il.webp);
							background-position: center;
							background-repeat: no-repeat;
							background-size: cover;
							position: absolute;
							bottom: 0;
							left: 0;
						}
					}
					>ul {
						display: flex;
						flex-wrap: wrap;
						width: calc(100% - clamp(22px, 1.85vw, 35px) - clamp(130px, 10vw, 180px));
						gap: clamp(25px, 2.1vw, 40px);
						>li {
							width: calc((100% - clamp(25px, 2.1vw, 40px)*2)/3);
							>a {
								>div {
									width: 100%;
									margin-bottom: clamp(15px, 1.1vw, 20px);
									aspect-ratio: 20 / 9;
									border-radius: 20px;
									overflow: hidden;
									>img {
										width: 100%;
										height: 100%;
										object-fit: cover;
										transition: all 0.2s;
									}
								}
								.t_about_nav_bnr_name {
									margin-bottom: clamp(10px, 0.85vw, 15px);
									font-size: clamp(15px, 1.1vw, 20px);
									line-height: 1;
									letter-spacing: 0.05em;
									color: #eb9046;
									font-weight: 700;
								}
								.t_about_nav_bnr_txt {
									font-size: clamp(10px, 0.85vw, 15px);
									line-height: 1.6;
								}
								&:hover {
									>div {
										>img {
											filter: brightness(80%);
											transform: scale(1.1);
										}
									}
								}
							}
						}
					}
				}
				.t_about_nav_btn {
					display: flex;
					flex-wrap: wrap;
					gap: clamp(10px, 0.8vw, 15px);
					>li {
						width: calc((100% - clamp(10px, 0.8vw, 15px)*3)/4);
						>a {
							display: flex;
							align-items: center;
							justify-content: space-between;
							box-sizing: border-box;
							padding: clamp(10px, 0.8vw, 15px);
							border-radius: 20px;
							border: 2px solid #eb9046;
							transition: all 0.2s;
							>div {
								display: flex;
								align-items: center;
								gap: 0 clamp(10px, 0.8vw, 15px);
								>img {
									width: clamp(35px, 2.9vw, 55px);
								}
								>p {
									display: flex;
									align-items: center;
									height: 2.4em;
									font-size: clamp(15px, 1.1vw, 20px);
									line-height: 1.2;
									font-weight: 700;
									letter-spacing: 0.05em;
								}
							}
							&:after {
								content: "";
								display: block;
								width: clamp(22px, 1.85vw, 35px);
								aspect-ratio: 1 / 1;
								background-image: url(/img/top/ab_btn_ar.webp);
								background-repeat: no-repeat;
								background-size: cover;
								background-position: center;
							}
							&:hover {
								background: #fff9f2;
								color: #eb9046;
							}
						}
					}
				}
			}
		}
	}
	.header-logo-menu {
		position: fixed;
		top: calc(60px + clamp(20px, 1.65vw, 30px));
		right: calc(20px + clamp(30px, 2.4vw, 40px));
		z-index: 150;
		#nav-drawer {
			position: relative;
		}
		/*チェックボックス等は非表示に*/
		.nav-unshown {
			display: none;
		}
		/*アイコンのスペース*/
		#nav-open {
			width: clamp(20px, 1.65vw, 30px);
			height: clamp(20px, 1.65vw, 30px);
			display: inline-block;
			box-sizing: border-box;
			vertical-align: middle;
			z-index: 99;
			position: inherit;
			cursor: pointer;
			text-align: center;
		}
		/*ハンバーガーの形をCSSで表現*/
		#nav-open span {
			height: 2px;
			position: absolute;
		}
		#nav-open span:before,
		#nav-open span:after {
			position: absolute;
			height: 2px;
			/*線の太さ*/
			/*長さ*/
			border-radius: 3px;
			background: #73c3e5;
			display: block;
			content: '';
			cursor: pointer;
			transition: 0.2s;
		}
		#nav-open span {
			display: block;
			width: clamp(20px, 1.65vw, 30px);
			top: 0;
			left: 0;
			bottom: 0;
			right: 0;
			margin: auto;
		}
		#nav-open span:before {
			width: clamp(20px, 1.65vw, 30px);
			bottom: -5px;
			transition: 0.2s;
		}
		#nav-open span:after {
			width: clamp(20px, 1.65vw, 30px);
			bottom: 5px;
			transition: 0.2s;
		}
		/*メニューの中身*/
		#nav-content {
			overflow: auto;
			position: fixed;
			top: 0;
			right: 0;
			z-index: 98;
			width: 100%;
			height: 100%;
			background: #d5edf7;
			display: none;
			transform: translateX(-100%);
			transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1);
		}
		#nav-close {
			position: fixed;
			top: 0;
			left: 0;
			width: 100vw;
			height: 100vh;
			z-index: 90;
			background: rgba(0, 0, 0, 0.4);
			opacity: 0;
			visibility: hidden;
			transition: opacity 0.4s;
		}
		/*チェックがついたら表示させる*/
		#nav-input:checked~#nav-close {
			display: block;
			opacity: 1;
			visibility: visible;
		}
		#nav-input:checked~#nav-content {
			box-shadow: 6px 0 25px rgba(0, 0, 0, .15);
			display: block;
			transform: translateX(0);
			transition: 0.2s;
		}
		#nav-input:checked~#nav-open img {
			display: none;
		}
		#nav-input:checked~#nav-open span {
			height: 0px;
			/*線の太さ*/
		}
		#nav-input:checked~#nav-open span:before {
			transform: rotate(-45deg);
			bottom: 0;
		}
		#nav-input:checked~#nav-open span:after {
			transform: rotate(45deg);
			bottom: 0;
		}
		.nav_content_inner {
			display: flex;
			align-items: center;
			justify-content: center;
			height: 100%;
			>div {
				height: fit-content;
				display: flex;
				align-items: flex-start;
				justify-content: center;
				gap: 0 100px;
			}
		}
		.menu_box {
			margin-bottom: clamp(18px, 1.4vw, 25px);
			>a {
				display: block;
				width: clamp(110px, 8.6vw, 155px);
				margin-bottom: clamp(18px, 1.4vw, 25px);
			}
			>div {
				margin-bottom: clamp(18px, 1.4vw, 25px);
				.menu_ad {
					margin-bottom: clamp(10px, 0.85vw, 15px);
					font-size: clamp(10px, 0.85vw, 15px);
					line-height: 1;
				}
				>ul {
					display: flex;
					gap: 0 25px;
					margin-bottom: clamp(10px, 0.85vw, 15px);
					>li {
						display: flex;
						align-items: center;
						gap: 0 8px;
						.menu_tel_item {
							padding: 0 5px;
							background: #013b96;
							border-radius: 20px;
							font-size: clamp(10px, 0.75vw, 13px);
							line-height: 1.4;
							color: #FFF;
							font-weight: 700;
							letter-spacing: 0.05em;
						}
						.menu_tel_num {
							font-size: clamp(16px, 1.15vw, 21px);
							line-height: 1;
							color: #013b96;
							font-weight: 700;
						}
					}
				}
				.menu_time {
					font-size: clamp(10px, 0.85vw, 15px);
					line-height: 1;
				}
			}
			>ul {
				display: flex;
				gap: 0 7px;
				>li {
					width: clamp(22px, 1.8vw, 36px);
					>a {
						display: block;
						transition: all 0.2s;
						&:hover {
							opacity: 0.8;
						}
					}
				}
			}
		}
		.menu_link {
			display: flex;
			align-items: flex-start;
			gap: 0 20px;
			.menu_link_part {
				>div {
					&:not(:last-of-type) {
						margin: 0 0 10px 0;
					}
					>ul {
						padding-left: 5px;
						margin-top: clamp(10px, 0.85vw, 15px);
						margin-bottom: clamp(15px, 1.3vw, 25px);
						>li {
							display: flex;
							align-items: center;
							gap: 0 10px;
							&:before {
								content: "";
								display: block;
								width: 10px;
								height: 1px;
								background: #747474;
							}
							&:not(:last-child) {
								margin: 0 0 10px 0;
							}
							>a {
								font-size: clamp(10px, 0.77vw, 14px);
								color: #747474;
								letter-spacing: 0.05em;
								position: relative;
								&:after {
									content: "";
									width: 100%;
									height: 1px;
									background: #747474;
									transform: scale(0, 1);
									transform-origin: left top;
									transition: transform 0.3s;
									position: absolute;
									left: 0;
									bottom: -3px;
								}
								&:hover {
									&:after {
										transform: scale(1, 1);
									}
								}
							}
						}
					}
				}
				.menu_link_topic {
					display: flex;
					align-items: center;
					gap: 0 10px;
					width: clamp(180px, 13.5vw, 240px);
					height: 3.2em;
					box-sizing: border-box;
					padding: 0 0 0 1.25em;
					background: #eaf6fb;
					border-radius: 30px;
					font-size: clamp(10px, 0.77vw, 14px);
					color: #73b8e6;
					font-weight: 800;
					letter-spacing: 0.05em;
					transition: all 0.2s;
					&:before {
						content: "";
						display: block;
						width: 8px;
						height: 8px;
						border-radius: 50%;
						background: #73b8e6;
						transition: all 0.2s;
					}
					&:hover {
						background: #73b8e6;
						color: #FFF;
						&:before {
							background: #FFF;
						}
					}
				}
				.menu_link_part_btn {
					>li {
						&:not(:last-of-type) {
							margin: 0 0 10px 0;
						}
					}
				}
			}
		}
	}
}
.t_news_cms {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin: 0 auto;
	font-family: "Zen Kaku Gothic Antique", '游ゴシック', YuGothic, 'ヒラギノ角ゴ Pro', 'Hiragino Kaku Gothic Pro', 'メイリオ', 'Meiryo', 'Arial', sans-serif;
	position: relative;
	.t_news_tl {
		margin-left: calc((100% - clamp(1000px, 85vw, 1600px))/2);
		>p {
			margin-top: 0;
			margin-bottom: clamp(18px, 1.4vw, 25px);
			font-size: clamp(45px, 3.6vw, 64px);
			line-height: 1;
			font-weight: 300;
			letter-spacing: 0.1em;
		}
		>h2 {
			margin: 0 0 clamp(32px, 2.5vw, 45px) 0;
			font-size: clamp(13px, 1vw, 18px);
			line-height: 1;
			letter-spacing: 0.05em;
		}
		.t_news_ar_wrap {
			display: flex;
			gap: 0 10px;
			.t_news_ar {
				cursor: pointer;
				width: clamp(32px, 2.5vw, 45px);
				aspect-ratio: 9 / 11;
				border-radius: clamp(15px, 1.1vw, 20px);
				background: #e3f1fa;
				position: relative;
				transition: all 0.2s;
				&:before {
					content: "";
					height: clamp(12px, 0.88vw, 16px);
					aspect-ratio: 9 / 16;
					margin: auto;
					background-image: url(/img/top/news_ar.png);
					background-position: center;
					background-repeat: no-repeat;
					background-size: cover;
					position: absolute;
					top: 0;
					bottom: 0;
				}
				&:hover {
					background: #cfe1ed;
				}
			}
			.t_news_prev {
				&:before {
					transform: rotate(180deg);
					left: 0;
					right: 4px;
				}
			}
			.t_news_next {
				&:before {
					left: 4px;
					right: 0;
				}
			}
		}
	}
	.t_news_slide {
		width: 75vw;
		overflow: hidden;
		>ul {
			margin: 0;
			padding: 0;
			list-style: none;
			>li {
				width: 18.5vw;
				margin-right: 2.6vw;
				>a {
					display: block;
					text-decoration: none;
					color: #000;
					font-weight: 500;
					.t_news_img {
						width: 100%;
						margin: 0 0 clamp(10px, 0.85vw, 15px) 0;
						border-radius: 20px;
						aspect-ratio: 5 / 3;
						overflow: hidden;
						>img {
							width: 100%;
							height: 100%;
							transition: all 0.2s;
						}
					}
					.t_news_name {
						margin: 0 0 clamp(10px, 0.85vw, 15px) 0;
						font-size: clamp(13px, 1vw, 18px);
						line-height: 1.45;
						letter-spacing: 0.05em;
						>span {
							overflow: hidden;
							display: -webkit-box;
							-webkit-box-orient: vertical;
							-webkit-line-clamp: 2;
						}
					}
					.t_news_tag {
						margin: 0 0 clamp(10px, 0.85vw, 15px) 0;
						>p {
							display: flex;
							flex-wrap: wrap;
							gap: 0 8px;
							height: calc(clamp(10px, 0.77vw, 14px)*1.7 + 2px);
							margin: 0;
							overflow: hidden;
							>label {
								padding: 0 10px;
								background: #f8f8f8;
								border: 1px solid #e4e5e9;
								font-size: clamp(10px, 0.77vw, 14px);
								line-height: 1.7;
								letter-spacing: 0.05em;
							}
						}
					}
					.t_news_date {
						display: flex;
						align-items: center;
						gap: 0 10px;
						margin: 0;
						font-size: clamp(10px, 0.77vw, 14px);
						color: #747474;
						letter-spacing: 0.05em;
						&:before {
							content: "";
							display: block;
							width: clamp(12px, 1vw, 20px);
							height: 1px;
							background: #747474;
						}
					}
					&:hover {
						>.t_news_img {
							>img {
								transform: scale(1.1);
								filter: brightness(80%);
							}
						}
					}
				}
			}
		}
	}
}
.new_header {
	display: none;
}
.t_main_info_cms {
	font-family: "Zen Kaku Gothic Antique", '游ゴシック', YuGothic, 'ヒラギノ角ゴ Pro', 'Hiragino Kaku Gothic Pro', 'メイリオ', 'Meiryo', 'Arial', sans-serif;
	& ul {
		list-style: none;
	}
	& p, & ul, & h2, & h3, & hr {
		margin: 0;
		padding: 0;
	}
	.t_main_info_link {
		display: flex;
		align-items: center;
		gap: 0 15px;
		text-decoration: none;
		color: #000;
		>p {
			font-weight: 700;
			letter-spacing: 0.05em;
		}
		.t_main_info_date {
			flex-shrink: 0;
			font-size: clamp(13px, 3vw, 18px);
			line-height: 1.2;
			color: #cacaca;
		}
		.t_main_info_txt {
			width: 100%;
			font-size: clamp(12px, 2.7vw, 16px);
			line-height: 1.2;
			overflow: hidden;
			display: -webkit-box;
			-webkit-box-orient: vertical;
			-webkit-line-clamp: 1;
		}
		&:hover {
			.t_main_info_txt {
				text-decoration: underline;
			}
		}
	}
}
.reco_insta {
	display: flex;
	gap: 0 clamp(22px, 1.85vw, 35px);
	margin: 0;
	padding: 0;
	list-style: none;
	font-family: "Zen Kaku Gothic Antique", '游ゴシック', YuGothic, 'ヒラギノ角ゴ Pro', 'Hiragino Kaku Gothic Pro', 'メイリオ', 'Meiryo', 'Arial', sans-serif;
	>li {
		width: calc((100% - 4*(clamp(22px, 1.85vw, 35px)))/5);
		position: relative;
		>a {
			display: block;
			width: 100%;
			height: 100%;
			position: absolute;
			left: 0;
			top: 0;
			z-index: 10;
		}
		.reco_insta_img {
			width: 100%;
			aspect-ratio: 2 / 2.2;
			margin: 0 0 20px 0;
			box-sizing: border-box;
			border-radius: 20px;
			overflow: hidden;
			position: relative;
			border: 1px solid #b2d5eb;
			box-shadow: 0px 8px 0px 0px #b2d5eb;
			position: relative;
			transition: all 0.2s;
			>iframe {
				width: 100% !important;
				min-width: 100px !important;
				position: absolute;
				top: calc((100% / 3.5)*-1);
			}
			/*&:after {
				content: "";
				width: clamp(35px, 2.8vw, 50px);
				aspect-ratio: 1 / 1;
				margin: auto;
				background-image: url(/img/top/insta_more.webp);
				background-position: center;
				background-repeat: no-repeat;
				background-size: cover;
				position: absolute;
				top: 0;
				right: 0;
				bottom: 0;
				left: 0;
			}*/
		}
		.reco_insta_tag {
			height: 22px;
			margin-bottom: 10px;
			overflow: hidden;
			>p {
				display: flex;
				flex-wrap: wrap;
				gap: 0 7px;
				margin: 0;
				.cms_topic_tag {
					display: flex;
					align-items: center;
					gap: 0 3px;
					padding: 0 10px;
					border-radius: 11px;
					background: #73b8e6;
					font-size: clamp(10px, 0.75vw, 13px);
					line-height: 22px;
					color: #FFF;
					&:before {
						content: "#";
						font-size: clamp(10px, 0.85vw, 15px);
					}
				}
			}
		}
		>p {
			margin: 0;
			font-size: clamp(10px, 0.95vw, 14px);
			line-height: 1.3;
			color: #747474;
			letter-spacing: 0.05em;
			>span {
				overflow: hidden;
				display: -webkit-box;
				-webkit-box-orient: vertical;
				-webkit-line-clamp: 2;
			}
		}
		&:hover {
			.reco_insta_img {
				box-shadow: 0px 0px 0px 0px #b2d5eb;
				transform: translateY(8px);
				>iframe {
					filter: brightness(80%);
				}
			}
		}
	}
}
@keyframes rotation {
	0% {
		transform: rotate(0deg);
	}
	100% {
		transform: rotate(360deg);
	}
}