@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;
}
#t_wrap {
	& 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);
		margin-right: auto;
		margin-left: auto;
	}
	.conts_wide {
		width: clamp(1000px, 85vw, 1600px);
		margin-right: auto;
		margin-left: auto;
	}
	.font_min {
		font-family: 游明朝, 'Yu Mincho', 'YuMincho', 'Hiragino Mincho Pro', 'HGS明朝E', serif;
		font-weight: bold;
	}
	.bg_grad {
		background: linear-gradient(135deg, #124688 0%, #1956af 100%);
	}
	.bg_gold {
		background: #bfbda0;
	}
	.bg_navy {
		background: #003e64;
	}
	.font_grad {
		background: linear-gradient(135deg, #124688 0%, #1956af 100%);
		color: transparent;
		-webkit-background-clip: text;
		background-clip: text;
		-webkit-text-fill-color: transparent;
		text-fill-color: transparent;
	}
	.t_tl {
		>h2 {
			display: flex;
			align-items: center;
			gap: 0 8px;
			margin-bottom: clamp(10px, 0.85vw, 15px);
			font-size: clamp(15px, 1.1vw, 20px);
			line-height: 1;
			letter-spacing: 0.05em;
			&:before {
				content: "";
				display: block;
				width: clamp(7px, 0.52vw, 10px);
				aspect-ratio: 1 / 1;
			}
		}
		>p {
			font-size: clamp(45px, 4vw, 75px);
			line-height: 1;
			letter-spacing: 0.025em;
			font-weight: 400;
		}
	}
	.t_tl_dot_wh {
		color: #FFF;
		>h2 {
			&:before {
				background-color: #FFF;
			}
		}
	}
	.t_tl_dot_gold {
		color: #b1ae87;
		>h2 {
			&:before {
				background-color: #b1ae87;
			}
		}
	}
	.t_tl_dot_navy {
		color: #003e64;
		>h2 {
			&:before {
				background-color: #003e64;
			}
		}
	}
	.t_btn {
		display: block;
		padding: 1.5em 0;
		font-size: clamp(15px, 1.1vw, 20px);
		line-height: 1;
		color: #FFF;
		text-align: center;
		letter-spacing: 0.1em;
		position: relative;
		&:after {
			content: "";
			display: block;
			width: clamp(10px, 0.75vw, 14px);
			height: clamp(10px, 0.75vw, 14px);
			margin: auto;
			background-image: url(/img/top/btn_ar.webp);
			background-position: center;
			background-repeat: no-repeat;
			background-size: cover;
			position: absolute;
			top: 0;
			bottom: 0;
			right: clamp(20px, 1.65vw, 30px);
		}
	}
	#t_main {
		width: 100%;
		box-sizing: border-box;
		padding: clamp(15px, 1.1vw, 20px);
		position: relative;
		.t_main_inner {
			display: flex;
			align-items: flex-end;
			box-sizing: border-box;
			padding: 0 clamp(36px, 3.2vw, 60px) clamp(30px, 2.8vw, 50px) clamp(36px, 3.2vw, 60px);
			background-image: url(/img/top/main_bg.webp);
			background-repeat: no-repeat;
			background-size: cover;
			aspect-ratio: 47 / 19;
			position: relative;
			&:before {
				content: "";
				display: block;
				width: 100%;
				aspect-ratio: 188 / 45;
				background: linear-gradient(0deg, RGBA(25, 86, 175, 1) 0%, RGBA(18, 70, 136, 0) 100%);
				opacity: 0.7;
				position: absolute;
				bottom: 0;
				left: 0;
			}
			>div {
				color: #FFF;
				position: relative;
				z-index: 2;
				.t_main_year {
					width: fit-content;
					margin-bottom: clamp(12px, 1vw, 20px);
					padding: 3px clamp(9px, 0.75vw, 12px) 0 clamp(9px, 0.75vw, 12px);
					font-size: clamp(20px, 1.5vw, 27px);
					line-height: 1.55;
					letter-spacing: 0.1em;
					>span {
						font-size: 0.85em;
					}
				}
				>h2 {
					margin-bottom: clamp(18px, 1.4vw, 25px);
					font-size: clamp(35px, 2.8vw, 50px);
					line-height: 1.2;
					letter-spacing: 0.05em;
					font-weight: 500;
				}
				.t_main_txt {
					font-size: clamp(13px, 1vw, 18px);
					line-height: 1;
				}
			}
			>p {
				display: flex;
				align-items: center;
				gap: 0 clamp(10px, 0.77vw, 14px);
				font-size: clamp(10px, 0.77vw, 14px);
				line-height: 1;
				color: #FFF;
				font-weight: bold;
				transform: rotate(90deg);
				transform-origin: right bottom;
				position: absolute;
				right: clamp(25px, 2vw, 40px);
				bottom: clamp(105px, 9.2vw, 170px);
				z-index: 2;
				&:before {
					content: "";
					display: block;
					width: clamp(70px, 5.8vw, 110px);
					height: 1px;
					background: #FFF;
				}
			}
		}
		.t_main_news {
			width: clamp(420px, 35vw, 650px);
			box-sizing: border-box;
			padding: clamp(15px, 1.1vw, 20px) clamp(18px, 1.4vw, 25px) clamp(10px, 0.8vw, 15px) clamp(20px, 1.65vw, 30px);
			background: #FFF;
			position: absolute;
			bottom: 0;
			right: 0;
			>h3 {
				width: fit-content;
				border: 1px solid #1956af;
				border-radius: 15px;
				padding: 0 0.66em;
				font-size: clamp(10px, 0.85vw, 15px);
				line-height: 1.35;
				font-weight: 500;
				color: #1956af;
				letter-spacing: 0.05em;
			}
			& iframe {
				width: 100%;
				height: clamp(75px, 5.9vw, 108px);
			}
		}
	}
	.t_begin {
		margin-bottom: clamp(36px, 3.2vw, 60px);
		padding: clamp(70px, 5.8vw, 110px) 0 clamp(55px, 5vw, 90px) 0;
		background: #f7f7f7;
		>div {
			display: flex;
			justify-content: space-between;
		}
		#t_quick {
			width: clamp(370px, 31vw, 590px);
			box-sizing: border-box;
			padding: clamp(20px, 2.65vw, 30px) clamp(32px, 2.5vw, 45px) 0 clamp(32px, 2.5vw, 45px);
			background: #FFF;
			border-radius: 10px;
			box-shadow: 0px 0px 10px 0px RGBA(196, 196, 196, 0.6);
			.t_quick_tl {
				margin-bottom: clamp(18px, 1.4vw, 24px);
				color: #003e64;
				>h2 {
					margin-bottom: clamp(9px, 0.75vw, 12px);
					font-size: clamp(13px, 1vw, 18px);
					line-height: 1;
					letter-spacing: 0.05em;
				}
				>p {
					font-size: clamp(20px, 1.55vw, 28px);
					line-height: 1;
					letter-spacing: 0.1em;
				}
			}
			.t_quick_txt {
				margin-bottom: clamp(20px, 1.65vw, 30px);
				font-size: clamp(12px, 0.9vw, 16px);
				line-height: 1;
				letter-spacing: 0.05em;
			}
			.t_quick_box {
				.t_quick_box_inner {
					margin-bottom: clamp(20px, 1.65vw, 30px);
					padding: clamp(18px, 1.4vw, 24px) clamp(20px, 1.65vw, 30px) clamp(18px, 1.4vw, 24px) clamp(20px, 1.65vw, 30px);
					background: #edf2f7;
					border-radius: 10px;
					.t_quick_part {
						>p {
							margin-bottom: clamp(9px, 0.75vw, 12px);
							font-size: clamp(10px, 0.77vw, 14px);
							line-height: 1;
							color: #003e64;
							letter-spacing: 0.05em;
						}
						&:not(:last-of-type) {
							margin-bottom: clamp(15px, 1.1vw, 20px);
							padding-bottom: clamp(15px, 1.1vw, 20px);
							border-bottom: 1px solid RGBA(0, 62, 100, 0.3);
						}
					}
					.t_quick_type {
						>div {
							display: flex;
							flex-wrap: wrap;
							justify-content: space-between;
							gap: 5px 0;
							>label {
								width: calc((100% - 5px)/2);
							}
							.t_quick_type_item {
								cursor: pointer;
								display: block;
								width: 100%;
								box-sizing: border-box;
								background: #FFF;
								border: 1px solid #cadbe5;
								border-radius: 20px;
								font-size: clamp(10px, 0.77vw, 14px);
								line-height: 2.5em;
								color: #383838;
								text-align: center;
							}
							.t_quick_type_input {
								display: none;
								&:checked+.t_quick_type_item {
									color: #edf2f7;
									background: #003e64;
								}
							}
						}
					}
					.t_quick_price {
						>div {
							display: flex;
							align-items: center;
							justify-content: space-between;
							gap: 6px;
							>span {
								display: block;
								width: clamp(15px, 1.1vw, 20px);
								text-align: center;
							}
							>div {
								width: calc((100% - 12px - clamp(15px, 1.1vw, 20px))/2);
								position: relative;
								&:after {
									cursor: pointer;
									content: "";
									width: clamp(4px, 0.32vw, 6px);
									height: clamp(4px, 0.32vw, 6px);
									margin: auto;
									border-right: 1px solid #003e64;
									border-bottom: 1px solid #003e64;
									transform: rotate(45deg);
									position: absolute;
									top: 0;
									bottom: 0;
									right: clamp(9px, 0.75vw, 12px);
								}
								>select {
									cursor: pointer;
									-webkit-appearance: none;
									appearance: none;
									width: 100%;
									height: 3.2em;
									box-sizing: border-box;
									padding: 0 clamp(7px, 0.52vw, 10px);
									border: none;
									font-size: clamp(10px, 0.77vw, 14px);
									color: #383838;
								}
							}
						}
					}
					.t_quick_rimawari {
						display: flex;
						align-items: center;
						>p {
							margin: 0;
							width: clamp(75px, 6.5vw, 120px);
						}
						>div {
							width: calc(100% - clamp(75px, 6.5vw, 120px));
							position: relative;
							&:after {
								cursor: pointer;
								content: "";
								width: clamp(4px, 0.32vw, 6px);
								height: clamp(4px, 0.32vw, 6px);
								margin: auto;
								border-right: 1px solid #003e64;
								border-bottom: 1px solid #003e64;
								transform: rotate(45deg);
								position: absolute;
								top: 0;
								bottom: 0;
								right: clamp(9px, 0.75vw, 12px);
							}
							>select {
								cursor: pointer;
								-webkit-appearance: none;
								appearance: none;
								width: 100%;
								height: 3.2em;
								box-sizing: border-box;
								padding: 0 clamp(7px, 0.52vw, 10px);
								border: none;
								font-size: clamp(10px, 0.77vw, 14px);
								color: #383838;
							}
						}
					}
					.t_quick_free {
						display: flex;
						align-items: center;
						>p {
							margin: 0;
							width: clamp(75px, 6.5vw, 120px);
						}
						>div {
							width: calc(100% - clamp(75px, 6.5vw, 120px));
							>input {
								cursor: pointer;
								-webkit-appearance: none;
								appearance: none;
								width: 100%;
								height: 3.2em;
								box-sizing: border-box;
								padding: 0 clamp(7px, 0.52vw, 10px);
								border: none;
								font-size: clamp(10px, 0.77vw, 14px);
								color: #383838;
								&::placeholder {
									color: #a4a4a4;
								}
							}
						}
					}
				}
				.t_quick_btn_wrap {
					width: clamp(220px, 18.5vw, 350px);
					margin: 0 auto clamp(15px, 1.1vw, 20px) auto;
					position: relative;
					&:after {
						cursor: pointer;
						content: "";
						display: block;
						width: clamp(9px, 0.75vw, 12px);
						height: clamp(9px, 0.75vw, 12px);
						margin: auto;
						background-image: url(/img/top/btn_ar.webp);
						background-position: center;
						background-repeat: no-repeat;
						background-size: cover;
						position: absolute;
						top: 0;
						bottom: 0;
						right: clamp(12px, 3.1vw, 20px);
					}
					&:hover .t_quick_btn {
						background: linear-gradient(135deg, #bfbda0 0%, #bfbda0 100%);
					}
				}
				.t_quick_btn {
					cursor: pointer;
					display: block;
					width: 100%;
					padding: 1.45em 0;
					border: none;
					border-radius: 40px;
					font-size: clamp(13px, 1vw, 18px);
					line-height: 1;
					color: #FFF;
					letter-spacing: 0.05em;
					text-align: center;
					transition: all 0.2s;
				}
				.t_quick_reset {
					cursor: pointer;
					display: block;
					width: fit-content;
					margin: 0 auto;
					padding: 0 0 5px 0;
					background: none;
					border-top: none;
					border-right: none;
					border-left: none;
					border-bottom: 1px solid #00263d;
					font-size: clamp(10px, 0.77vw, 14px);
					color: #00263d;
					letter-spacing: 0.05em;
				}
			}
		}
		#t_mem {
			width: clamp(600px, 50vw, 950px);
			box-sizing: border-box;
			padding: clamp(50px, 3.7vw, 70px) clamp(30px, 3.2vw, 60px);
			border-radius: clamp(20px, 1.65vw, 30px);
			background-image: url(/img/top/mem_bg.webp);
			background-repeat: no-repeat;
			background-size: cover;
			.t_mem_txt {
				display: flex;
				justify-content: space-between;
				margin-bottom: clamp(32px, 2.5vw, 45px);
				color: #FFF;
				.t_mem_txt_l {
					display: flex;
					flex-direction: column;
					justify-content: space-between;
					.t_mem_tl {
						>h2 {
							margin-bottom: clamp(15px, 1.3vw, 25px);
							font-size: clamp(22px, 1.8vw, 36px);
							line-height: 1;
							letter-spacing: 0.05em;
						}
						>p {
							display: flex;
							align-items: center;
							gap: 0 9px;
							font-size: clamp(12px, 0.9vw, 16px);
							line-height: 1;
							&:before {
								content: "";
								display: block;
								width: 6px;
								height: 2px;
								background: #FFF;
							}
						}
					}
					>p {
						font-size: clamp(12px, 0.88vw, 16px);
						line-height: 1.75;
						letter-spacing: 0.05em;
					}
				}
				.t_mem_txt_r {
					padding: clamp(10px, 0.85vw, 15px) clamp(15px, 1.1vw, 20px) clamp(15px, 1.1vw, 20px) clamp(15px, 1.1vw, 20px);
					background: #FFF;
					border: 2px solid #FFF;
					>h3 {
						display: flex;
						align-items: center;
						justify-content: center;
						gap: 0 clamp(7px, 0.52vw, 10px);
						margin-bottom: clamp(10px, 0.85vw, 15px);
						padding-bottom: clamp(10px, 0.85vw, 15px);
						border-bottom: 2px solid #003e64;
						font-size: clamp(14px, 1vw, 19px);
						line-height: 1;
						color: #003e64;
						&:before {
							content: "";
							display: block;
							width: clamp(20px, 1.65vw, 30px);
							aspect-ratio: 6 / 5;
							background-image: url(/img/top/mem_num_tl.webp);
							background-repeat: no-repeat;
							background-size: cover;
						}
					}
					>ul {
						>li {
							display: flex;
							align-items: flex-end;
							justify-content: space-between;
							gap: 0 clamp(10px, 0.85vw, 15px);
							&:not(:last-child) {
								margin-bottom: clamp(7px, 0.52vw, 10px);
							}
							>p {
								font-weight: bold;
							}
							.t_mem_num_item {
								padding: 0.66em;
								font-size: clamp(10px, 0.85vw, 15px);
								line-height: 1;
								letter-spacing: 0.1em;
							}
							.t_mem_num_count {
								font-size: clamp(20px, 1.55vw, 28px);
								line-height: 1;
								>span {
									font-size: clamp(28px, 2.3vw, 44px);
									line-height: 1;
									letter-spacing: 0.05em;
								}
							}
							&:nth-child(1) {
								.t_mem_num_count {
									color: #b1ae87;
								}
							}
							&:nth-child(2) {
								.t_mem_num_count {
									color: #dc0311;
								}
							}
						}
					}
				}
			}
			>ul {
				display: flex;
				gap: 0 clamp(15px, 1.1vw, 20px);
				margin: 0 0 clamp(25px, 2.1vw, 40px) 0;
				>li {
					width: calc((100% - clamp(15px, 1.1vw, 20px)*2)/2);
					box-sizing: border-box;
					padding: clamp(18px, 1.4vw, 25px) clamp(15px, 1.1vw, 20px) clamp(15px, 1.1vw, 20px) clamp(15px, 1.1vw, 20px);
					background: #FFF;
					border-radius: 10px;
					>img {
						display: block;
						width: clamp(115px, 9.3vw, 175px);
						margin: 0 auto clamp(7px, 0.52vw, 10px) auto;
					}
					>h3 {
						width: fit-content;
						margin: 0 auto clamp(10px, 0.85vw, 15px) auto;
						background: linear-gradient(transparent 50%, #e0dfcc 50%);
						font-size: clamp(13px, 1.1vw, 20px);
						line-height: 1.2;
						letter-spacing: 0.1em;
					}
					>p {
						font-size: clamp(9px, 0.77vw, 14px);
						line-height: 1.55;
						color: #747474;
						font-weight: bold;
						letter-spacing: 0.05em;
					}
				}
			}
			.t_btn {
				width: clamp(320px, 27vw, 500px);
				margin: 0 auto;
				transition: all 0.2s;
			}
			&:hover {
				.t_btn {
					background: linear-gradient(135deg, #bfbda0 0%, #bfbda0 100%);
				}
			}
		}
	}
	#t_nav {
		width: clamp(900px, 75vw, 1360px);
		margin: 0 auto clamp(45px, 3.7vw, 70px) auto;
		>ul {
			display: flex;
			flex-wrap: wrap;
			>li {
				width: 50%;
				&:nth-child(2n) {
					>a {
						padding: 0 0 0 clamp(15px, 1.1vw, 20px);
						border-left: 1px solid #d7d7d7;
					}
				}
				&:nth-child(1),
				&:nth-child(2) {
					padding-bottom: clamp(15px, 1.1vw, 20px);
					border-bottom: 1px solid #d7d7d7;
				}
				&:nth-child(3),
				&:nth-child(4) {
					padding-top: clamp(15px, 1.1vw, 20px);
				}
				>a {
					display: flex;
					align-items: center;
					gap: 0 clamp(18px, 14vw, 25px);
					.t_nav_img {
						flex-shrink: 0;
						width: fit-content;
						box-sizing: border-box;
						padding: clamp(10px, 0.85vw, 15px);
						background: #f0f0f0;
						>div {
							width: clamp(160px, 13.2vw, 250px);
							aspect-ratio: 5 / 4;
							overflow: hidden;
							>img {
								transition: all 0.2s;
							}
						}
					}
					.t_nav_box {
						>div {
							margin-bottom: clamp(10px, 0.85vw, 15px);
							position: relative;
							.t_nav_en {
								display: flex;
								align-items: center;
								gap: 0 clamp(7px, 0.52vw, 10px);
								margin-bottom: 5px;
								font-size: clamp(12px, 0.88vw, 16px);
								line-height: 1;
								letter-spacing: 0.05em;
								color: #00263d;
								&:before {
									content: "";
									display: block;
									width: clamp(5px, 0.45vw, 8px);
									aspect-ratio: 1 / 1;
									background: linear-gradient(135deg, #124688 0%, #1956af 100%);
								}
							}
							.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;
								color: #00263d;
								letter-spacing: 0.05em;
								>span {
									>span {
										display: block;
										margin-bottom: 3px;
										font-size: clamp(20px, 1.5vw, 26px);
									}
								}
								&: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;
						}
					}
				}
				&:nth-child(3) {
					>a {
						.t_nav_box {
							>div {
								.t_nav_en {
									margin-bottom: clamp(10px, 0.77vw, 14px);
								}
							}
						}
					}
				}
			}
		}
	}
	#t_guide {
		margin: 0 0 135px 0;
		padding: clamp(70px, 5.8vw, 110px) 0 clamp(50px, 4.5vw, 85px) 0;
		overflow: hidden;
		position: relative;
		&:before {
			content: "";
			display: block;
			width: calc(100% - 70px);
			height: 100%;
			background: linear-gradient(135deg, #124688 0%, #1956af 100%);
			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 clamp(35px, 2.9vw, 55px) auto;
			padding: 0 0 0 0;
			.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: #8fadcf;
					&: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;
					color: #ffffff;
				}
			}
		}
		.t_guide_box {
			margin-bottom: clamp(45px, 3.7vw, 70px);
			>ul {
				margin: 0 0 35px 0;
				align-items: stretch;
				>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: #013b96;
								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: #013b96;
										transform: rotate(20deg);
									}
								}
							}
							>hr {
								width: clamp(36px, 3.2vw, 60px);
								height: 1px;
								border: none;
								background: #013b96;
							}
							.t_guide_sl_item {
								font-size: clamp(13px, 1vw, 18px);
								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;
							color: #003e64;
							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;
						}
						& li.t_guide_sl_txt {
							display: flex;
							align-items: flex-start;
							gap: 0 clamp(9px, 0.75vw, 12px);
							&:before {
								flex-shrink: 0;
								content: "";
								display: block;
								margin-top: calc((1.6em - clamp(5px, 0.45vw, 8px))/2);
								width: clamp(5px, 0.45vw, 8px);
								aspect-ratio: 1 / 1;
								background: linear-gradient(135deg, rgb(18, 70, 136) 0%, rgb(25, 86, 175) 100%);
							}
						}
						>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: 1.55em 1.55em 1.55em 1.55em;
							font-size: clamp(12px, 0.9vw, 16px);
							line-height: 1;
							color: #FFF;
							font-weight: 400;
							letter-spacing: 0.05em;
							transition: all 0.2s;
							&:after {
								content: "";
								display: block;
								width: clamp(9px, 0.75vw, 12px);
								aspect-ratio: 1 / 1;
								background-image: url(/img/top/btn_ar.webp);
								background-repeat: no-repeat;
								background-size: cover;
								background-position: center;
								transition: all 0.2s;
							}
							&:hover {
								background: linear-gradient(135deg, #000 100%, #000 100%);
							}
						}
					}
					>img {
						width: 48%;
						aspect-ratio: 650 / 595;
						object-fit: cover;
						flex-shrink: 0;
					}
				}
			}
			.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_data {
			display: flex;
			justify-content: space-between;
			padding: clamp(30px, 2.2vw, 40px) clamp(30px, 2.2vw, 40px) clamp(30px, 2.2vw, 40px) clamp(45px, 3.7vw, 70px);
			background: #e5ebf4;
			border-radius: 20px;
			.t_data_tl {
				margin-top: clamp(20px, 1.65vw, 30px);
				>p {
					margin-bottom: clamp(18px, 1.4vw, 25px);
					font-size: clamp(35px, 2.9vw, 55px);
					line-height: 1;
					font-weight: 400;
					letter-spacing: 0.025em;
				}
				>h2 {
					font-size: clamp(15px, 1.1vw, 20px);
					line-height: 1;
				}
			}
			>ul {
				display: flex;
				flex-wrap: wrap;
				justify-content: space-between;
				gap: clamp(7px, 0.52vw, 10px) 0;
				width: clamp(675px, 56vw, 1070px);
				>li {
					display: flex;
					flex-direction: column;
					justify-content: space-between;
					width: calc((100% - clamp(7px, 0.52vw, 10px)*2)/3);
					aspect-ratio: 1 / 1;
					box-sizing: border-box;
					padding: clamp(18px, 1.4vw, 25px);
					background: #FFF;
					border-radius: 10px;
					.t_data_name {
						font-size: clamp(18px, 1.5vw, 26px);
						line-height: 1.7;
						color: #003e64;
						letter-spacing: 0.05em;
						>span {
							display: block;
							font-size: clamp(10px, 0.85vw, 15px);
							letter-spacing: 0;
						}
					}
					.t_data_catch {
						width: clamp(145px, 12vw, 230px);
						margin: 0 auto;
					}
					.t_data_num {
						display: flex;
						justify-content: center;
						align-items: baseline;
						gap: 0 5px;
						font-size: clamp(18px, 1.5vw, 26px);
						color: #003e64;
						>span {
							font-size: clamp(30px, 2.5vw, 45px);
						}
					}
					&:nth-child(5) {
						.t_data_name {
							letter-spacing: -0.05em;
						}
						.t_data_catch {
							margin-top: calc(clamp(10px, 0.85vw, 15px)*-1);
						}
					}
				}
			}
		}
	}
	#t_sr {
		margin-bottom: clamp(100px, 7.9vw, 150px);
		.t_sr_tl {
			display: flex;
			align-items: flex-end;
			gap: 0 clamp(36px, 3.2vw, 60px);
			margin-bottom: clamp(36px, 3.2vw, 60px);
			>p {
				font-size: clamp(18px, 1.4vw, 25px);
				line-height: 1.45;
				color: #003e64;
				letter-spacing: 0.05em;
			}
		}
		.t_sr_box {
			position: relative;
			#mapster_wrap_0 {
				width: clamp(600px, 48.5vw, 920px);
				position: absolute !important;
				top: 0;
				left: 0;
			}
			>img {
				width: clamp(600px, 48.5vw, 920px);
				position: absolute;
				top: 0;
				left: 0;
			}
			>div {
				display: flex;
				justify-content: flex-end;
				>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(30px, 2.9vw, 55px);
						border-radius: 0;
						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%;
							background: linear-gradient(135deg, #124688 0%, #1956af 100%);
							position: absolute;
							top: 0;
							left: 0;
						}
						>div {
							display: flex;
							align-items: baseline;
							gap: 0 12px;
							margin-bottom: clamp(15px, 1.4vw, 25px);
							padding-bottom: clamp(15px, 1.4vw, 25px);
							border-bottom: 1px solid #eaeaea;
							color: #003e64;
							>h3 {
								display: flex;
								align-items: center;
								gap: 0 10px;
								font-size: clamp(16px, 1.5vw, 26px);
								line-height: 1;
								font-weight: 500;
								letter-spacing: 0.05em;
								&:before {
									content: "";
									width: clamp(20px, 1.5vw, 26px);
									aspect-ratio: 1 / 1;
									background-image: url(/img/top/sr_tl_icon.webp);
									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 {
						>ul {
							justify-content: space-between;
							gap: clamp(7px, 0.8vw, 15px) 0;
							>li {
								width: calc((100% - clamp(7px, 0.8vw, 15px))/2);
								>a {
									display: flex;
									align-items: center;
									justify-content: space-between;
									gap: 0 clamp(7px, 0.52vw, 10px);
									width: 100%;
									box-sizing: border-box;
									padding: clamp(5px, 0.52vw, 10px) clamp(5px, 0.52vw, 10px) clamp(5px, 0.52vw, 10px) clamp(5px, 0.52vw, 10px);
									border: 2px solid #003e64;
									box-shadow: 0px 0px 10px 0px RGBA(196, 196, 196, 0.4);
									border-radius: 60px;
									font-size: clamp(11px, 1vw, 18px);
									color: #003e64;
									position: relative;
									transition: all 0.2s;
									>img {
										flex-shrink: 0;
										display: block;
										width: clamp(30px, 3.2vw, 60px);
										border-radius: 50%;
									}
									>p {
										padding-right: 10px;
									}
									&:hover {
										box-shadow: 0px 0px 4px 0px RGBA(196, 196, 196, 0.4);
										transform: translateY(2px);
									}
									&:after {
										content: "";
										display: block;
										width: clamp(25px, 2.8vw, 50px);
										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;
									}
								}
							}
						}
					}
					.t_sr_box_cond {
						>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 #003e64;
									border-radius: 40px;
									font-size: clamp(12px, 0.95vw, 17px);
									color: #003e64;
									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 {
										background: #edf2f7;
										&:after {
											background-image: url(/img/top/sr_cond_ar.webp);
										}
									}
								}
							}
						}
					}
				}
			}
		}
	}
	#t_reco {
		margin: 0 0 clamp(70px, 5.6vw, 100px) 0;
		padding: clamp(70px, 5.6vw, 100px) 0 clamp(40px, 3.4vw, 70px) 0;
		background: #edf2f7;
		>div {
			.t_tl {
				margin: 0 0 clamp(32px, 2.5vw, 45px) 0;
			}
			& input[name="tab_group"] {
				display: none;
			}
			.reco_tab_content {
				display: none;
			}
			#content01 {
				display: block;
			}
			.tab-nav {
				display: flex;
				border: 1px solid #003e64;
				margin: 0 0 35px 0;
				>label {
					cursor: pointer;
					display: flex;
					align-items: center;
					justify-content: center;
					gap: 0 clamp(15px, 1.1vw, 20px);
					width: 33.33%;
					aspect-ratio: 6 / 1;
					background: #FFF;
					transition: all 0.2s;
					>p {
						font-size: clamp(15px, 1.1vw, 20px);
						line-height: 1;
						color: #003e64;
						transition: all 0.2s;
					}
					&:before {
						content: "";
						display: block;
						width: clamp(35px, 2.8vw, 50px);
						aspect-ratio: 5 / 3;
						background-repeat: no-repeat;
						background-size: contain;
						background-position: center;
						transition: all 0.2s;
					}
					&:after {
						transition: all 0.2s;
					}
				}
				& label[for="tab01"] {
					border-right: 1px solid #003e64;
					&:before {
						background-image: url(/img/top/reco_icon01_ac.webp);
					}
				}
				& label[for="tab02"] {
					border-right: 1px solid #003e64;
					&:before {
						background-image: url(/img/top/reco_icon02_ac.webp);
					}
				}
				& label[for="tab03"] {
					border-right: 1px solid #003e64;
					&:before {
						background-image: url(/img/top/reco_icon03_ac.webp);
					}
				}
				#tab01:checked~label[for="tab01"],
				#tab02:checked~label[for="tab02"],
				#tab03:checked~label[for="tab03"] {
					background: #003e64;
					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: #003e64;
						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.webp);
					}
				}
				#tab02:checked~label[for="tab02"] {
					&:before {
						background-image: url(/img/top/reco_icon02.webp);
					}
				}
				#tab03:checked~label[for="tab03"] {
					&:before {
						background-image: url(/img/top/reco_icon03.webp);
					}
				}
			}
			.tab-body {
				.reco_tab_content {
					>div {
						width: 100%;
						box-sizing: border-box;
						margin: 0 0 clamp(30px, 2.2vw, 40px) 0;
						background: #FFF;
					}
					.reco_house_wrap {
						padding: clamp(35px, 2.8vw, 50px);
					}
					.t_btn {
						width: clamp(320px, 24.5vw, 440px);
						margin: 0 auto;
						transition: all 0.2s;
						&:hover {
							background: linear-gradient(135deg, #bfbda0 0%, #bfbda0 100%);
						}
					}
				}
			}
			.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: 5px;
							box-shadow: 0px 8px 0px 0px #f7f7f7;
							overflow: hidden;
							position: relative;
							transition: all 0.2s;
							>img {
								width: 100%;
								height: 100%;
								object-fit: cover;
								transition: all 0.2s;
							}
							&:after {
								content: "";
								width: clamp(20px, 1.8vw, 34px);
								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: 0;
								right: 0;
							}
						}
						.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_move {
		margin-bottom: clamp(70px, 5.6vw, 100px);
		padding: clamp(50px, 4.2vw, 80px) 0 clamp(70px, 5.6vw, 100px) 0;
		position: relative;
		&:before, &:after {
			content: "";
			background: #bfbda0;
			position: absolute;
			bottom: 0;
			z-index: -1;
		}
		&:before {
			width: 57vw;
			height: 100%;
			border-radius: 10px 10px 0 10px;
			left: 4vw;
		}
		&:after {
			width: 39vw;
			height: calc(100% - clamp(130px, 10vw, 180px));
			right: 0;
		}
		>div {
			.t_tl {
				margin-bottom: clamp(50px, 4.2vw, 80px);
				>h2 {
					font-size: clamp(18px, 1.4vw, 24px);
				}
			}
			& input[name="move-tab_group"] {
				display: none;
			}
			.move_tab_content {
				display: none;
			}
			#move-content01 {
				display: block;
			}
			.t_move_box {
				.tab-container {
					display: flex;
					justify-content: space-between;
					.t_move_l {
						display: flex;
						flex-direction: column;
						justify-content: space-between;
						width: clamp(220px, 19vw, 340px);
						.move-tab-nav {
							& li {
								>a {
									cursor: pointer;
									display: block;
									width: fit-content;
									padding: 0.9em 1.5em;
									background: #003e64;
									border-radius: 100px;
									color: #ffffff;
									font-size: clamp(13px, 1vw, 18px);
									line-height: 1.25;
									transition: all 0.2s;
									&:hover {
										background: #000;
									}
								}
								&:not(:last-of-type) {
									margin: 0 0 clamp(10px, 0.85vw, 15px) 0;
								}
							}
							#move-tab01:checked~label[for="move-tab01"],
							#move-tab02:checked~label[for="move-tab02"],
							#move-tab03:checked~label[for="move-tab03"],
							#move-tab04:checked~label[for="move-tab04"],
							#move-tab05:checked~label[for="move-tab05"] {
								background: #FFF;
								color: #b1ae87;
							}
						}
						.t_btn {
							transition: all 0.2s;
							&:hover {
								background: #000;
							}
						}
					}
				}
			}
			& iframe {
				width: clamp(730px, 60.5vw, 1150px);
				height: clamp(400px, 33.5vw, 640px);
			}
		}
	}
	#t_news {
		display: flex;
		justify-content: space-between;
		margin-bottom: clamp(60px, 5vw, 95px);
		.t_news_box {
			width: clamp(470px, 40vw, 750px);
			& iframe {
				width: 100%;
				height: clamp(350px, 27vw, 500px);
			}
			.t_news_tl {
				margin-bottom: clamp(45px, 4vw, 75px);
				>p {
					display: flex;
					align-items: center;
					gap: 0 clamp(7px, 0.52vw, 10px);
					margin-bottom: clamp(20px, 1.65vw, 30px);
					font-size: clamp(12px, 0.88vw, 16px);
					line-height: 1;
					letter-spacing: 0.05em;
					color: #003e64;
					&:after {
						content: "";
						width: clamp(35px, 2.8vw, 50px);
						height: 1px;
						background: #003e64;
					}
				}
				>h2 {
					font-size: clamp(30px, 2.2vw, 40px);
					letter-spacing: 0.025em;
					color: #003e64;
				}
			}
		}
		.t_btn {
			width: clamp(250px, 19vw, 360px);
			margin: clamp(35px, 2.8vw, 50px) auto 0 auto;
			&:hover {
				background: linear-gradient(135deg, #bfbda0 0%, #bfbda0 100%);
			}
		}
	}
	#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: #003e64;
			position: absolute;
			left: 0;
			right: 0;
			top: 0;
			z-index: -1;
		}
		&:after {
			content: "";
			width: 100%;
			height: calc(100% - clamp(130px, 10vw, 180px));
			background: #003e64;
			position: absolute;
			left: 0;
			bottom: 0;
			z-index: -1;
		}
		>div {
			.t_about_tl {
				margin-bottom: clamp(36px, 3.2vw, 60px);
				color: #FFF;
				text-align: center;
				>p {
					margin-bottom: clamp(10px, 0.85vw, 15px);
					font-size: clamp(45px, 4vw, 75px);
					line-height: 1;
					letter-spacing: 0.025em;
					font-weight: 400;
				}
				>h2 {
					font-size: clamp(15px, 1.1vw, 20px);
					line-height: 1;
					letter-spacing: 0.05em;
				}
			}
			.t_about_conts {
				display: flex;
				justify-content: space-between;
				margin-bottom: clamp(65px, 5vw, 90px);
				.t_about_conts_tl {
					display: flex;
					flex-direction: column;
					align-items: center;
					>p {
						width: clamp(180px, 15.5vw, 280px);
						margin-bottom: clamp(25px, 2.1vw, 40px);
					}
					>h3 {
						font-size: clamp(36px, 3.2vw, 60px);
						line-height: 1.5;
						letter-spacing: 0.05em;
						color: #FFF;
						font-weight: normal;
						-ms-writing-mode: tb-rl;
						writing-mode: vertical-rl;
						>span {
							color: #bfbda0;
						}
					}
				}
				.t_about_box {
					width: clamp(830px, 67vw, 1200px);
					box-sizing: border-box;
					margin-bottom: clamp(20px, 1.65vw, 30px);
					padding: clamp(36px, 3.2vw, 60px);
					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: 2px solid #003e64;
							padding-bottom: clamp(15px, 1.1vw, 20px);
							font-size: clamp(20px, 1.55vw, 28px);
							line-height: 1;
							color: #003e64;
							font-weight: 700;
							letter-spacing: 0.1em;
						}
						>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: #b1ae87;
									font-weight: 700;
								}
								>hr {
									width: clamp(25px, 2.1vw, 40px);
									height: 1px;
									border: none;
									background: #b1ae87;
								}
							}
						}
					}
					.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 / 15;
									object-fit: cover;
								}
								>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: #003e64;
										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: #FFF;
					}
					.swiper-pagination-bullet-active {
						opacity: 1;
					}
				}
			}
			.t_about_nav_bnr {
				display: flex;
				gap: 0 clamp(22px, 1.85vw, 35px);
				padding: clamp(35px, 2.8vw, 50px);
				background: #FFF;
				overflow: hidden;
				position: relative;
				&:after {
					content: "";
					width: clamp(350px, 29.5vw, 560px);
					aspect-ratio: 1 / 1;
					border-radius: 50%;
					background: #f2f2ec;
					position: absolute;
					bottom: calc(clamp(10px, 0.85vw, 15px)*-1);
					left: calc(clamp(70px, 5.6vw, 100px)*-1);
				}
				>div {
					width: clamp(130px, 10vw, 180px);
					position: relative;
					z-index: 2;
					>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: #003e64;
							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: #003e64;
							font-weight: 700;
							-ms-writing-mode: tb-rl;
							writing-mode: vertical-rl;
						}
					}
				}
				>ul {
					display: flex;
					flex-wrap: wrap;
					width: calc(100% - clamp(22px, 1.85vw, 35px) - clamp(130px, 10vw, 180px));
					gap: clamp(25px, 2.1vw, 40px);
					position: relative;
					z-index: 2;
					>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;
								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: #b1ae87;
							}
							.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);
									}
								}
							}
						}
					}
				}
			}
		}
	}
}
ul.t_move_cms {
	display: flex;
	gap: 0 clamp(22px, 3.1vw, 35px);
	width: 100%;
	box-sizing: border-box;
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 500;
	list-style: none;
	margin: 0;
	padding: 0;
	& p, & ul, & h2, & h3, & hr {
		margin: 0;
		padding: 0;
	}
	& a {
		text-decoration: none;
		color: #000;
	}
	>li {
		width: calc((100% - clamp(22px, 3.1vw, 35px)*2)/3);
		box-sizing: border-box;
		padding: clamp(45px, 6.1vw, 70px) clamp(20px, 2.65vw, 30px) clamp(70px, 9.6vw, 110px) clamp(20px, 2.65vw, 30px);
		background: #FFF;
		position: relative;
		.t_move_samune {
			width: 100%;
			aspect-ratio: 2 / 3;
			>iframe {
				width: 100%;
				height: 100%;
				object-fit: cover;
			}
		}
		>a {
			display: flex;
			flex-direction: column;
			justify-content: space-between;
			width: 100%;
			height: 100%;
			box-sizing: border-box;
			padding: clamp(14px, 2vw, 22px) clamp(20px, 2.65vw, 30px) clamp(18px, 2.4vw, 27px) clamp(20px, 2.65vw, 30px);
			position: absolute;
			left: 0;
			top: 0;
			&:after {
				content: "";
				width: clamp(18px, 2.55vw, 29px);
				aspect-ratio: 1 / 1;
				background-image: url(/img/top/movie_ar.webp);
				background-position: center;
				background-repeat: no-repeat;
				background-size: cover;
				position: absolute;
				bottom: 0;
				right: 0;
			}
			.t_move_info {
				display: flex;
				align-items: center;
				gap: 0 clamp(10px, 1.35vw, 15px);
				.t_move_date {
					flex-shrink: 0;
					font-size: clamp(13px, 1.55vw, 18px);
					letter-spacing: 0.05em;
					color: #003e64;
				}
				.t_move_tag {
					width: 100%;
					>p {
						display: flex;
						flex-wrap: wrap;
						gap: 6px;
						height: calc(1.875em + 2px);
						font-size: clamp(12px, 0.88vw, 16px);
						overflow: hidden;
						>label {
							padding: 0 clamp(9px, 1.4vw, 12px);
							color: #003e64;
							line-height: 1.875;
							border: 1px solid #003e64;
							border-radius: 20px;
						}
					}
				}
			}
			.t_move_txt {
				font-size: clamp(16px, 1.85vw, 21px);
				line-height: 1.5;
				letter-spacing: 0.05em;
				transition: all 0.2s;
				>span {
					overflow: hidden;
					display: -webkit-box;
					-webkit-box-orient: vertical;
					-webkit-line-clamp: 2;
				}
			}
			&:hover {
				.t_move_txt {
					color: #b1ae87;
				}
			}
		}
	}
}
.t_news_cms {
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 500;
	list-style: none;
	margin: 0;
	padding: 0;
	& p, & ul, & h2, & h3, & hr {
		margin: 0;
		padding: 0;
	}
	& a {
		text-decoration: none;
		color: #000;
	}
	>li {
		>a {
			display: flex;
			gap: 0 clamp(18px, 3.4vw, 25px);
			padding: clamp(12px, 2.7vw, 20px) 0;
			border-bottom: 1px dashed #003e64;
			position: relative;
			.t_news_img {
				flex-shrink: 0;
				width: clamp(130px, 24vw, 180px);
				aspect-ratio: 3 / 2;
				overflow: hidden;
				>img {
					width: 100%;
					height: 100%;
					object-fit: cover;
					transition: all 0.2s;
				}
			}
			.t_news_txt {
				width: 100%;
				padding: clamp(7px, 1.4vw, 10px) 0 0 0;
				>p {
					font-size: clamp(13px, 2.4vw, 18px);
					line-height: 1;
					letter-spacing: 0.025em;
				}
				p.t_news_date {
					margin: 0 0 clamp(18px, 3.4vw, 25px) 0 !important;
					color: #7f9eb1;
				}
				p.t_news_name {
					padding: 0 clamp(45px, 10vw, 75px) 0 0 !important;
					color: #003e64;
					transition: all 0.2s;
					>span {
						overflow: hidden;
						display: -webkit-box;
						-webkit-box-orient: vertical;
						-webkit-line-clamp: 1;
					}
				}
			}
			&:after {
				content: "";
				width: clamp(30px, 5.4vw, 40px);
				aspect-ratio: 2 / 1;
				background-image: url(/img/top/news_plus.webp);
				background-position: center;
				background-repeat: no-repeat;
				background-size: cover;
				position: absolute;
				bottom: clamp(12px, 2.7vw, 20px);
				right: 0;
			}
			&:hover {
				p.t_news_name {
					color: #7f9eb1;
				}
				.t_news_img {
					>img {
						transform: scale(1.2);
						filter: brightness(0.8);
					}
				}
			}
		}
	}
}
.t_main_news_cms {
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 500;
	list-style: none;
	margin: 0;
	padding: 0;
	& p, & ul, & h2, & h3, & hr {
		margin: 0;
		padding: 0;
	}
	& a {
		text-decoration: none;
		color: #000;
	}
	>li {
		&:not(:last-child) {
			border-bottom: 1px solid RGBA(25, 86, 175, 0.3);
		}
		>a {
			display: flex;
			gap: 0 clamp(12px, 2.8vw, 18px);
			padding: clamp(12px, 3.1vw, 20px) 0;
			>p {
				font-size: clamp(10px, 2.3vw, 15px);
				line-height: 1.2;
				letter-spacing: 0.05em;
			}
			.t_main_news_date {
				color: #bdbdbd;
			}
			.t_main_news_txt {
				>span {
					display: -webkit-box;
					-webkit-box-orient: vertical;
					-webkit-line-clamp: 1;
					overflow: hidden;
					transition: all 0.2s;
				}
			}
			&:hover {
				.t_main_news_txt {
					>span {
						color: #1956af;
					}
				}
			}
		}
	}
}