@charset "UTF-8";

:root {
	--main-color: #52A88E;
	--sub-color: #A4BE39;
}

/*フォント読み込み*/
@font-face {
	font-family: icomoon;
	font-style: normal;
	font-weight: 400;
	src: url(https://memory-house.co.jp/page/wp-content/themes/swell/assets/fonts/icomoon.woff2?fq24x) format("woff2"), url(https://memory-house.co.jp/page/wp-content/themes/swell/assets/fonts/icomoon.ttf?fq24x) format("truetype"), url(https://memory-house.co.jp/page/wp-content/themes/swell/assets/fonts/icomoon.woff?fq24x) format("woff"), url(https://memory-house.co.jp/page/wp-content/themes/swell/assets/fonts/icomoon.svg?fq24x#icomoon) format("svg") !important;
}

@font-face {
	font-family: 'GenEiGothicP';
	font-style: normal;
	font-weight: 700;
	src: url('https://memory-house.co.jp/page/wp-content/themes/swell_child/fonts/GenEiGothicP-Bold.otf') format('OpenType');
}

@font-face {
	font-family: 'GenEiGothicP';
	font-style: normal;
	font-weight: 600;
	src: url('https://memory-house.co.jp/page/wp-content/themes/swell_child/fonts/GenEiGothicP-SemiBold.otf') format('OpenType');
}

@font-face {
	font-family: 'GenEiGothicP';
	font-style: normal;
	font-weight: 400;
	src: url('https://memory-house.co.jp/page/wp-content/themes/swell_child/fonts/GenEiGothicP-Regular.otf') format('OpenType');
}

body.no_top {
	padding-top: 100px;
}

/* サイト内のメインフォントはここに追加 */
html,
button,
input,
select,
textarea {
	/* 不要な指定は消す */
	font-family: "Roboto", sans-serif;
	font-family: "Patua One", serif;
	font-family: "GenEiGothicP", sans-serif;
}

body>* {
	font-family: "GenEiGothicP", sans-serif;
}

body {
	color: #2B2B2B;
	font-size: 16px;
	line-height: 1.7;
	min-width: 1240px;
	margin: 0 !important;
}

a[href $='.pdf'] {
	display: flex;
	align-items: center;
	flex-wrap: nowrap;
	text-decoration: underline;
	color: #000;
	line-height: 1.5;
}

a[href $='.pdf']::before {
	content: "";
	display: block;
	flex-shrink: 0;
	width: 30px;
	height: 38px;
	background-image: url(/wp-content/themes/child/image/icon/icon_pdf.svg);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
	margin-right: 15px;
}

a[href $='.pdf']:hover {
	text-decoration: none;
}

.wrap {
	width: 1140px;
	margin-inline: auto;
}

.wrap.mid {
	width: 1240px;
}

.wrap.lr {
	width: 1340px;
}

/* PC固定ページ 共通設定 */
.common_page_main {
	background: #F5F5F5;
	padding-block: 140px;
	margin-block: 0 1em;
}

.common_page_main .title_box {
	text-align: center;
}

.common_page_main .title_box .title {
	font-size: 40px;
	letter-spacing: .08em;
	font-weight: 400;
	line-height: 1.5;
}

.common_page_wrap {
	padding: 110px 0;
}

.not_found .text {
	text-align: center;
}

.reserve_text {
	text-align: center;
	font-size: 30px;
}

/* パンくず */
.breadcrumb {
	font-size: 12px;
	color: #3E3E3E;
	letter-spacing: .08em;
}

.breadcrumb a {
	text-decoration: none;
	color: #3E3E3E;
}

.no-scroll {
	overflow: hidden;
	position: fixed;
	width: 100%;
}

/* ここから下部にCSSを追加してください */
.header {
	width: 100%;
	height: 100px;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 1000;
	display: flex;
	justify-content: space-between;
	min-width: 1140px;
	background-color: transparent;
	transition: all 0.3s ease;
}

.header.is-active {
	background-color: #fff;
	height: 110px;
	padding-top: 13px;
	padding-bottom: 13px;
}

.header .logo_box {
	background-color: #fff;
	border-radius: 0 0 12px 0;
	padding: 14px 40px 14px 30px;
}

.header .logo_box .title {
	font-weight: 400;
	font-size: 12px;
	line-height: 1.33;
	letter-spacing: 0.05em;
	color: #747474;
}

.header .logo_box .logo {
	margin-top: 6px;
	width: 237px;
}

.header .logo_box .logo .img {
	aspect-ratio: 475 / 99;
	width: 100%;
	height: auto;
	object-fit: contain;
}

.header .wrapper {
	display: flex;
	flex-grow: 1;
}

.header .nav_box {
	display: flex;
	flex-direction: column;
	width: 100%;
	align-items: end;
}

.header .tel_box {
	margin-top: 16px;
	display: flex;
	align-items: end;
	gap: 8px;
}

.header.is-active .tel_box {
	margin-top: 7px;
}

.header .tel_box a {
	pointer-events: none;
}

.header .tel_box .tel {
	position: relative;
	font-family: "Roboto", sans-serif;
	font-weight: 700;
	font-size: 30px;
	line-height: 1.3;
	color: #fff;
	letter-spacing: 0;
	padding-left: 42px;
	transition: all 0.3s ease;
}

.header.is-active .tel_box .tel {
	color: #2B2B2B;
}

.header .tel_box .tel::before {
	content: "";
	position: absolute;
	background: url(../image/icon-tel.png) no-repeat center center / cover;
	aspect-ratio: 1 / 1;
	width: 34px;
	height: 34px;
	top: 50%;
	transform: translateY(-50%);
	left: 0;
}

.header .tel_box .time {
	font-weight: 600;
	font-size: 12px;
	line-height: 1.33;
	letter-spacing: 0.05em;
	color: #E5E5E5;
	transition: all 0.3s ease;
}

.header.is-active .tel_box .time {
	margin-bottom: 6px;
}

.header.is-active .tel_box .time {
	color: #626262;
}

.header .nav_box nav {
	margin-top: 6px;
}

.header .nav_box .items {
	display: flex;
	align-items: center;
	gap: 40px;
}

.header .nav_box .item_menu {
	position: relative;
	font-weight: 600;
	font-size: 14px;
	line-height: 1.35;
	letter-spacing: 0.1em;
	color: #fff;
	padding: 5px 20px 5px 5px;
	white-space: nowrap;
	transition: all 0.3s ease;
}

.header.is-active .nav_box .item_menu {
	color: #2B2B2B;
}

.header .nav_box .item_menu::before {
	content: "";
	position: absolute;
	border-left: 2px solid #fff;
	border-bottom: 2px solid #fff;
	width: 8px;
	height: 8px;
	top: 7px;
	right: 0;
	transform: rotate(-45deg) rotateY(0deg);
	transform-style: preserve-3d;
	transition: all 0.3s ease;
	transform-origin: center center;
}

.header.is-active .nav_box .item_menu::before {
	border-color: #2B2B2B;
}

.header .nav_box .item_menu .sub_menu {
	position: absolute;
	bottom: 0;
	left: 50%;
	background-color: #fff;
	padding: 20px 10px;
	border-radius: 8px;
	width: 160px;
	opacity: 0;
	visibility: hidden;
	transform: translate(-50%, 100%);
	transition: all 0.3s ease;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
}

.header .nav_box .item a {
	display: inline-block;
	font-weight: 600;
	font-size: 14px;
	line-height: 1.35;
	letter-spacing: 0.1em;
	color: #fff;
	padding: 5px;
	white-space: nowrap;
	transition: all 0.3s ease;
}

.header.is-active .nav_box .item a {
	color: #2B2B2B;
}

.header .nav_box .sub_item+.sub_item {
	margin-top: 10px;
}

.header .nav_box .sub_item a {
	display: inline-block;
	font-weight: 400;
	font-size: 12px;
	line-height: 1.33;
	letter-spacing: 0.1em;
	color: #2b2b2b;
	transition: all 0.3s ease;
}

.header .btn_box {
	gap: 10px;
	margin-left: 36px;
	max-width: 440px;
	width: 100%;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
}

.header .btn_box .btn a {
	position: relative;
	display: block;
	border-radius: 0 0 12px 12px;
	color: #fff;
	font-weight: 700;
	font-size: 14px;
	line-height: 1.35;
	letter-spacing: 0.09em;
	height: 100px;
	text-align: center;
	/* padding-top: 66px; */
	transition: all 0.3s ease;
}

.header.is-active .btn_box .btn a {
	border-radius: 10px;
	height: 84px;
	/* padding-top: 54px; */
}

.header .btn_box .btn svg {
	fill: #fff;
}

.header .btn_box .btn .btn_assesment,
.header .btn_box .btn .btn_request,
.header .btn_box .btn .btn_consultation {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

.header .btn_box .btn .btn_assesment span,
.header .btn_box .btn .btn_request span,
.header .btn_box .btn .btn_consultation span {
	transition: all 0.3s ease;
}

.header .btn_box .btn .btn_assesment {
	background-color: #A37B44;
	gap: 15px;
	border: 3px solid #A37B44;
}

.header .btn_box .btn .btn_assesment svg {
	width: 21px;
	fill: #fff;
	transition: all 0.3s ease;
}

.header .btn_box .btn .btn_assesment span {
	display: block;
}


.header.is-active .btn_box .btn .btn_assesment::before {
	top: 14px;
}

.header .btn_box .btn .btn_request {
	background-color: #A4BE39;
	gap: 17px;
	border: 3px solid #A4BE39;
}

.header .btn_box .btn .btn_request svg {
	width: 34px;
	fill: #fff;
	transition: all 0.3s ease;
}


.header .btn_box .btn .btn_consultation {
	background-color: #52A88E;
	gap: 17px;
	border: 3px solid #52A88E;
}

.header .btn_box .btn .btn_consultation svg {
	width: 26px;
	fill: #fff;
	transition: all 0.3s ease;
}

.header .hamburger_pc {
	position: relative;
	max-width: 110px;
	width: 100%;
	height: 100px;
	text-align: center;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

.header .hamburger_pc .box {
	width: 50px;
	height: 22px;
	position: relative;
}

.header .hamburger_pc span {
	position: absolute;
	display: block;
	width: 50px;
	height: 3px;
	background-color: #fff;
	transition: all 0.3s ease;
}

.header.is-active .hamburger_pc span {
	background-color: #2B2B2B;
}

.header .hamburger_pc span:nth-child(1) {
	top: 0;
}

.header .hamburger_pc span:nth-child(2) {
	top: 9px;
}

.header .hamburger_pc span:nth-child(3) {
	top: 18px;
}

.hamburger_pc.is-active span:nth-child(1) {
	transform: rotate(205deg);
	top: 9px;
}

.hamburger_pc.is-active span:nth-child(2) {
	opacity: 0;
	visibility: hidden;
}

.hamburger_pc.is-active span:nth-child(3) {
	transform: rotate(-205deg);
	top: 9px;
}

.header .hamburger_pc .text {
	margin-top: 10px;
	font-family: "Roboto", sans-serif;
	font-weight: 700;
	font-size: 15px;
	line-height: 1.33;
	letter-spacing: 0.02em;
	color: #fff;
	opacity: 0;
	visibility: hidden;
	display: none;
	transition: all 0.5s ease;
}

.header.is-active .hamburger_pc .text {
	color: #2B2B2B;
}

.header .hamburger_pc .text.is-active {
	display: block;
	opacity: 1;
	visibility: visible;
}

nav.globalMenuPc {
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	transform: translateX(100%);
	transition: all 0.4s;
	width: 100%;
	height: 100vh;
	align-items: center;
	background: #695335;
	overflow: scroll;
	z-index: 900;
	padding-top: 162px;
	padding-bottom: 30px;
}

nav.globalMenuPc.is-active {
	transform: translateX(0);
}

nav.globalMenuPc .wrapper {
	display: flex;
	padding-bottom: 40px;
	border-bottom: 2px solid #B4A590;
}

nav.globalMenuPc .logo_box {
	text-align: left;
}

nav.globalMenuPc .logo_box .head {
	font-weight: 400;
	font-size: 12px;
	line-height: 1.33;
	letter-spacing: 0.05em;
	color: #F0F0F0;
}

nav.globalMenuPc .logo_box .image {
	margin-top: 10px;
	width: 265px;
}

nav.globalMenuPc .logo_box .image img {
	aspect-ratio: 574 / 120;
	width: 100%;
	height: auto;
	object-fit: contain;
}

nav.globalMenuPc .logo_box .address {
	margin-top: 17px;
	font-weight: 400;
	font-size: 13px;
	line-height: 1.61;
	letter-spacing: 0.05em;
	color: #E5E5E5;
}

nav.globalMenuPc .logo_box .text {
	margin-top: 13px;
	font-weight: 400;
	font-size: 13px;
	line-height: 1.61;
	letter-spacing: 0.05em;
	color: #E5E5E5;
}

nav.globalMenuPc .logo_box .cta {
	margin-top: 23px;
	text-align: center;
	display: flex;
	flex-direction: column;
	gap: 12px;
}

nav.globalMenuPc .logo_box .cta .btn {
	display: flex;
	flex-direction: column;
	align-items: center;
}

nav.globalMenuPc .logo_box .cta .head {
	position: relative;
	display: inline-block;
	font-weight: 700;
	font-size: 14px;
	line-height: 1.78;
	letter-spacing: 0.12em;
	padding-left: 18px;
	padding-right: 18px;
}

nav.globalMenuPc .logo_box .cta .head::before {
	content: "";
	position: absolute;
	background: url(../image/title-effect3.png) no-repeat center center / cover;
	aspect-ratio: 20 / 30;
	width: 8px;
	top: 50%;
	transform: translateY(-50%);
	left: 0;
}

nav.globalMenuPc .logo_box .cta .head::after {
	content: "";
	position: absolute;
	background: url(../image/title-effect4.png) no-repeat center center / cover;
	aspect-ratio: 20 / 30;
	width: 8px;
	top: 50%;
	transform: translateY(-50%);
	right: 0;
}

nav.globalMenuPc .nav_box {
	margin-top: 65px;
	margin-left: auto;
	padding-right: 115px;
}

nav.globalMenuPc .nav_box .top_lists {
	display: flex;
	gap: 50px;
}

nav.globalMenuPc .nav_box .list .head {
	font-weight: 700;
	font-size: 14px;
	line-height: 1.35;
	letter-spacing: 0.1em;
	color: #fff;
}

nav.globalMenuPc .nav_box .sub_list a {
	display: inline-block;
	font-weight: 400;
	font-size: 14px;
	line-height: 1.35;
	letter-spacing: 0.1em;
	color: #F2F2F2;
}

nav.globalMenuPc .nav_box .sub_list {
	margin-top: 10px;
}

nav.globalMenuPc .nav_box .head_list+.head_list {
	margin-top: 14px;
}

nav.globalMenuPc .nav_box .head_list a {
	display: inline-block;
	font-weight: 700;
	font-size: 14px;
	line-height: 1.35;
	letter-spacing: 0.1em;
	color: #fff;
}

nav.globalMenuPc .nav_box .bottom_lists {
	margin-top: 109px;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 14px 90px;
}

nav.globalMenuPc .nav_box .bottom_list a {
	display: inline-block;
	font-weight: 700;
	font-size: 14px;
	line-height: 1.35;
	letter-spacing: 0.1em;
	color: #fff;
}

nav.globalMenuPc .copyright {
	display: block;
	text-align: center;
	margin-top: 20px;
	font-weight: 400;
	font-size: 12px;
	line-height: 1.75;
	letter-spacing: 0.04em;
	color: #CBCBCB;
}


/* トップページのメインビジュアル */
.top_mv {
	position: relative;
	width: 100%;
	height: 100%;
}

.top_mv .image {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -2;
}

.top_mv .image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/*
	.top_mv::before {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background: url(../image/mv-pc.jpg) no-repeat center center / cover;
		z-index: -2;
	}
*/
.top_mv::after {
	content: "";
	position: absolute;
	background: url(../image/fv-bg-circle.png) no-repeat center center / cover;
	aspect-ratio: 2880 / 479;
	width: 100%;
	height: auto;
	bottom: -100px;
	left: 0;
}

.top_mv .bg {
	position: relative;
	width: 100%;
	height: 100%;
	padding-top: 100px;
}

.top_mv .bg::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #646464;
	opacity: 0.3;
	z-index: -1;
}

.top_mv .bg::after {
	content: "";
	position: absolute;
	background: transparent linear-gradient(180deg, #00000080 0%, #00000033 100%) 0% 0% no-repeat padding-box;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: -1;
	opacity: 1;
}

.top_mv .wrapper {
	position: relative;
	padding-top: 157px;
	padding-bottom: 180px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

.top_mv .wrapper::before {
	content: "";
	position: absolute;
	background: url(../image/leaf-img6.png) no-repeat center center / cover;
	aspect-ratio: 269 / 220;
	width: 140px;
	bottom: 30px;
	left: 140px;
	z-index: 10;
}

.top_mv .lead {
	font-weight: 700;
	font-size: 30px;
	line-height: 1.33;
	letter-spacing: 0.11em;
	color: #fff;
}

.top_mv .title_jp {
	margin-top: 14px;
	font-weight: 600;
	font-size: 14px;
	line-height: 1.35;
	letter-spacing: 0.12em;
	color: #fff;
	text-align: center;
}

.top_mv .title {
	max-width: 490px;
}

.top_mv .title img {
	aspect-ratio: 978 / 148;
	width: 100%;
	height: auto;
	object-fit: contain;
}

.top_mv .text {
	font-weight: 600;
	font-size: 18px;
	line-height: 1.33;
	letter-spacing: 0.14em;
	color: #fff;
	margin-top: 21px;
}

.top_mv .btn {
	position: relative;
	margin-top: 31px;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 20px;
	z-index: 10;
}

/*CTA*/
.cta_real_estate {
	position: fixed;
	bottom: 30px;
	right: 30px;
	z-index: 1000;
	transition: all 0.3s ease;
}

.cta_real_estate a {
	display: inline-block;
	width: 176px;
}

.cta_real_estate img {
	aspect-ratio: 176 / 168;
	width: 100%;
	height: auto;
	object-fit: cover;
}

.cta_sns {
	position: fixed;
	bottom: 30px;
	left: 30px;
	z-index: 1000;
}

.cta_sns .text {
	position: relative;
	padding-bottom: 116px;
	text-align: center;
}

.cta_sns .text svg {
	fill: #fff;
	transition: all 0.3s ease;
}

.cta_sns.is-color svg {
	fill: #2b2b2b;
}

.cta_sns .text::before {
	content: "";
	position: absolute;
	background-color: #fff;
	width: 1px;
	height: 90px;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	transition: all 0.3s ease;
}

.cta_sns.is-color .text::before {
	background-color: #2b2b2b;
}

.cta_sns .box {
	margin-top: 25px;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 15px;
}

.cta_sns .box a {
	transition: all 0.3s ease;
}

.cta_sns .box .youtube {
	width: 42px;
}

.cta_sns .box .youtube img {
	aspect-ratio: 86 / 60;
	width: 100%;
	height: auto;
	object-fit: cover;
}

.cta_sns .box .insta {
	width: 36px;
}

.cta_sns .box .insta img {
	aspect-ratio: 72 / 72;
	width: 100%;
	height: auto;
	object-fit: cover;
}

.cta_sns .box .line {
	width: 36px;
}

.cta_sns .box .line img {
	aspect-ratio: 72 / 72;
	width: 100%;
	height: auto;
	object-fit: cover;
}

.sp_cta {
	display: none;
}

.cta_sns.page_sns svg {
	fill: #2b2b2b;
}

.cta_sns.is-color.page_sns svg {
	fill: #fff;
}

.cta_sns.page_sns .text::before {
	background-color: #2b2b2b;
}

.cta_sns.is-color.page_sns .text::before {
	background-color: #fff;
}




/*共通　LINE CTA*/


/*共通　SNS*/

.common_cta img {
	aspect-ratio: 2280 / 663;
	width: 100%;
	height: auto;
	object-fit: cover;
}

/*共通ボタン*/
.common_btn_request,
.common_btn_consultation,
.common_btn_assessment {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: start;
	min-width: 250px;
	/* padding: 21px 20px 19px 17px; */
	text-align: center;
	border-radius: 8px;
	padding-top: 13px;
	padding-bottom: 14px;
	padding-left: 17px;
}

.common_btn_assessment {
	background-color: #A37B44;
	transition: all 0.3s ease;
	border: 3px solid #A37B44;
	gap: 24px;
	padding-bottom: 15px;
}

.common_btn_request {
	border: 3px solid #A4BE39;
	background-color: #A4BE39;
	transition: all 0.3s ease;
	gap: 26px;
}

.btn .common_btn_request svg,
.btn .common_btn_consultation svg,
.btn .common_btn_assessment svg {
	fill: #fff;
	transition: all 0.3s ease;
}

.common_btn_consultation {
	background-color: #52A88E;
	transition: all 0.3s ease;
	border: 3px solid #52A88E;
	gap: 26px;
}

.common_btn_request span,
.common_btn_consultation span,
.common_btn_assessment span {
	margin-top: 4px;
	display: inline-block;
	position: relative;
	color: #fff;
	font-weight: 700;
	font-size: 15px;
	line-height: 1.5;
	letter-spacing: 0.1em;
	transition: all 0.3s ease;
}

.common_btn_assessment::before,
.common_btn_request::before,
.common_btn_consultation::before {
	content: "";
	position: absolute;
	background-color: #fff;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	top: 50%;
	transform: translateY(-50%);
	right: 10px;
}

.common_btn_assessment::after {
	content: "";
	position: absolute;
	background-color: #A37B44;
	width: 8px;
	height: 11px;
	clip-path: polygon(0 0, 0% 100%, 100% 50%);
	top: 50%;
	transform: translateY(-50%);
	right: 15px;
	transition: all 0.3s ease;
}

.common_btn_request::after {
	content: "";
	position: absolute;
	background-color: #A4BE39;
	width: 8px;
	height: 11px;
	clip-path: polygon(0 0, 0% 100%, 100% 50%);
	top: 50%;
	transform: translateY(-50%);
	right: 15px;
	transition: all 0.3s ease;
}

.common_btn_consultation::after {
	content: "";
	position: absolute;
	background-color: #52A88E;
	width: 8px;
	height: 11px;
	clip-path: polygon(0 0, 0% 100%, 100% 50%);
	top: 50%;
	transform: translateY(-50%);
	right: 15px;
	transition: all 0.3s ease;
}

.common_btn_consultation svg {
	width: 22px;
}

.common_btn_request svg {
	width: 27px;
}

.common_btn_assessment svg {
	width: 18px;
}


.common_btn {
	border-radius: 8px;
	background-color: #8D6A3A;
	padding: 20px 15px;
	display: inline-block;
	width: 100%;
	position: relative;
	border: 2px solid #8D6A3A;
	transition: all 0.3s ease;
}

.common_btn span {
	position: relative;
	display: block;
	color: #fff;
	font-weight: 700;
	font-size: 15px;
	line-height: 1;
	letter-spacing: 0.1em;
	padding-right: 22px;
	transition: all 0.3s ease;
}

.common_btn span::before {
	content: "";
	position: absolute;
	background-color: rgba(255, 255, 255, 0.8);
	width: 20px;
	height: 20px;
	border-radius: 50%;
	top: 50%;
	transform: translateY(-50%);
	right: 0;
	transition: all 0.3s ease;
}

.common_btn span::after {
	content: "";
	position: absolute;
	background-color: #8E6A3A;
	width: 8px;
	height: 11px;
	clip-path: polygon(0 0, 0% 100%, 100% 50%);
	top: 50%;
	transform: translateY(-50%);
	right: 5px;
	transition: all 0.3s ease;
}

.common_contact .common_btn_request,
.common_contact .common_btn_consultation {
	padding-top: 15px;
	padding-bottom: 16px;
}

/*共通タイトル*/
.common_section_title .title_en {
	font-family: "Patua One", serif;
	font-weight: 400;
	font-size: 20px;
	line-height: 1.35;
	letter-spacing: 0;
	color: #7B6D64;
}

.common_section_title .title_jp {
	margin-top: 9px;
	font-weight: 700;
	font-size: 40px;
	line-height: 1.45;
	letter-spacing: 0.14em;
}

/*共通Contact*/
.common_contact {
	position: relative;
	padding-top: 68px;
	padding-bottom: 71px;
	background-color: #F8F8F8;
}

.common_contact::before {
	content: "";
	position: absolute;
	background: url(../image/contact-cta-bg.png) no-repeat center center / cover;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	border-radius: 40px 40px 0 0;
}

.common_contact .title_box {
	position: relative;
	text-align: center;
}

.common_contact .title_en {
	font-family: "Patua One", serif;
	font-weight: 400;
	font-size: 20px;
	line-height: 1.35;
	letter-spacing: 0;
	color: #fff;
}

.common_contact .title_jp {
	margin-top: 10px;
	font-weight: 700;
	font-size: 34px;
	line-height: 1.70;
	letter-spacing: 0.12em;
	color: #fff;
}

.common_contact .lead {
	margin-top: 14px;
	font-weight: 400;
	font-size: 14px;
	line-height: 1.57;
	letter-spacing: 0.12em;
	color: #EFEFEF;
}

.common_contact .text {
	margin-top: 25px;
	font-weight: 700;
	font-size: 15px;
	line-height: 1.66;
	letter-spacing: 0.12em;
	color: #fff;
}

.common_contact .tel_box {
	display: flex;
	justify-content: center;
	align-items: baseline;
	gap: 9px;
}

.common_contact .tel_box .tel {
	position: relative;
	display: inline-block;
	font-family: "Roboto", sans-serif;
	font-weight: 700;
	font-size: 34px;
	line-height: 1.32;
	letter-spacing: 0;
	color: #fff;
	padding-left: 42px;
}

.common_contact .tel_box .tel::before {
	content: "";
	position: absolute;
	background: url(../image/icon-tel.png) no-repeat center center / cover;
	aspect-ratio: 1 / 1;
	width: 36px;
	top: 50%;
	transform: translateY(-50%);
	left: 0;
}

.common_contact .tel_box .time {
	font-weight: 600;
	font-size: 13px;
	line-height: 1.30;
	letter-spacing: 0.05em;
	color: #E5E5E5;
}

.common_contact .cta_box {
	position: relative;
	margin-top: 13px;
	background-color: #fff;
	border-radius: 16px;
	display: flex;
	justify-content: center;
	padding: 20px;
}

.common_contact .btn_box {
	text-align: center;
}

.common_contact .head {
	position: relative;
	display: inline-block;
	font-weight: 700;
	font-size: 14px;
	line-height: 1.78;
	letter-spacing: 0.12em;
	padding-left: 22px;
	padding-right: 22px;
}

.common_contact .head::before {
	content: "";
	position: absolute;
	background: url(../image/title-effect1.png) no-repeat center center / cover;
	aspect-ratio: 20 / 30;
	width: 8px;
	top: 50%;
	transform: translateY(-50%);
	left: 0;
}

.common_contact .head::after {
	content: "";
	position: absolute;
	background: url(../image/title-effect2.png) no-repeat center center / cover;
	aspect-ratio: 20 / 30;
	width: 8px;
	top: 50%;
	transform: translateY(-50%);
	right: 0;
}

.common_contact .btn {
	padding-left: 40px;
	padding-right: 40px;
}

.common_contact .btn.line {
	border-left: 2px dashed #ADADAD;
	border-right: 2px dashed #ADADAD;
}

.common_contact .tel_box a {
	pointer-events: none;
}

/*共通mv*/
.common_page_mv {
	position: relative;
	overflow: hidden;
}

.common_page_mv::before {
	content: "";
	position: absolute;
	background: url(../image/page-mv-bg.png) no-repeat center center / cover;
	aspect-ratio: 1440 / 750;
	width: 100%;
	height: auto;
	bottom: 0;
	left: 0;
	z-index: -1;
}

.common_page_mv .bg {
	position: relative;
	padding-top: 67px;
	padding-bottom: 83px;
}

.common_page_mv .bg::before {
	content: "";
	position: absolute;
	background: url(../image/leaf-img4.png) no-repeat center center / cover;
	aspect-ratio: 280 / 267;
	width: 87px;
	height: auto;
	bottom: 35px;
	left: 153px;
	z-index: -1;
	transform: scaleX(-1);
}

.common_page_mv .bg::after {
	content: "";
	position: absolute;
	background: url(../image/leaf-img7.png) no-repeat center center / cover;
	aspect-ratio: 241 / 197;
	width: 120px;
	height: auto;
	bottom: 38px;
	right: 99px;
	z-index: -1;
}

.common_page_mv .title_box {
	text-align: center;
}

.common_page_mv .title_en {
	font-family: "Patua One", serif;
	font-weight: 400;
	font-size: 22px;
	line-height: 1.36;
	letter-spacing: 0;
	color: #7B6D64;
	text-transform: capitalize;
}

.common_page_mv .title_jp {
	position: relative;
	display: inline-block;
	margin-top: 12px;
	font-weight: 700;
	font-size: 40px;
	line-height: 1.025;
	letter-spacing: 0.1em;
	padding-bottom: 14px;
	padding-left: 10px;
	padding-right: 10px;
}

.common_page_mv .title_jp::before {
	content: "";
	position: absolute;
	background: url(../image/line-green4.png) no-repeat center center / cover;
	aspect-ratio: 764 / 12;
	width: 100%;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	z-index: -1;
}

/*共通フロー(不動産売却の流れ・不動産買取の流れ)*/
.common_flow {
	padding-top: 80px;
}

#page_sale .common_flow {
	padding-top: 0;
}

.common_flow .common_section_title {
	text-align: center;
}

.common_flow .wrapper {
	position: relative;
	margin-top: 80px;
	max-width: 840px;
	margin-inline: auto;
}

.common_flow .wrapper::before {
	content: "";
	position: absolute;
	background: url(../image/leaf-img6.png) no-repeat center center / cover;
	aspect-ratio: 269 / 220;
	width: 120px;
	height: auto;
	bottom: -50px;
	right: -150px;
	z-index: -1;
}

.common_flow .flow_item {
	position: relative;
	display: flex;
	gap: 40px;
	padding-bottom: 60px;
}

.common_flow .flow_item:not(:last-child):before {
	content: "";
	position: absolute;
	background-image: radial-gradient(circle, #A4BE39 3px, transparent 3px);
	background-repeat: repeat-y;
	background-size: 100% 20px;
	/* 横幅100%、縦方向20px間隔でリピート */
	width: 9.5%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: -1;
}


.common_flow .circle {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 80px;
	height: 80px;
	background-color: #52A88E;
	border-radius: 50%;
	flex-shrink: 0;
}

.common_flow .circle .en {
	font-family: "Patua One", serif;
	font-weight: 400;
	font-size: 16px;
	line-height: 1.35;
	letter-spacing: 0;
	color: #fff;
}

.common_flow .circle .number {
	font-family: "Roboto", sans-serif;
	font-weight: 700;
	font-size: 24px;
	line-height: 1.33;
	letter-spacing: 0;
	color: #fff;
}

.common_flow .text_box {
	background-color: rgba(250, 250, 250, 0.8);
	padding: 30px 20px;
	flex-grow: 1;
	border-radius: 16px;
}

.common_flow .text_box .title {
	font-weight: 700;
	font-size: 24px;
	line-height: 1.33;
	letter-spacing: 0.14em;
	color: rgba(141, 106, 58, 1);
}

.common_flow .text_box .text {
	margin-top: 20px;
	font-weight: 400;
	font-size: 16px;
	line-height: 1.75;
	letter-spacing: 0.05em;
	color: #2B2B2B;
}



/*パンくず*/
.breadcrumbs {
	margin-top: 47px;
}

.breadcrumbs ul {
	display: flex;
	justify-content: center;
}

.breadcrumbs ul li {
	font-weight: 600;
	font-size: 13px;
	line-height: 2;
	letter-spacing: 0.14em;
	color: #644E3F;
}

.breadcrumbs ul li:first-child {
	padding-right: 10px;
}

.breadcrumbs ul li:not(:first-child) {
	padding-left: 10px;
	position: relative;
}

.breadcrumbs ul li:not(:first-child)::before {
	content: ">";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 0;
}

.breadcrumbs ul li:last-child {
	padding-right: 0;
}

.breadcrumbs ul li a {
	color: #848484;
}

.breadcrumbs .wrap>div {
	display: flex;
	justify-content: center;
}

.breadcrumbs .wrap>div>span {
	font-weight: 600;
	font-size: 13px;
	line-height: 2;
	letter-spacing: 0.14em;
	color: #644E3F;
}

.breadcrumbs .wrap>div>span:first-child {
	padding-right: 10px;
}

.breadcrumbs .wrap>div>span:not(:first-child) {
	padding: 0 10px;
	position: relative;
}

.breadcrumbs .wrap>div>span:last-child {
	padding-right: 0;
}

.breadcrumbs .wrap>div>span a {
	color: #848484;
}


/*TOP　メモリーハウスについて*/
.top_bg {
	padding-top: 115px;
	position: relative;
	z-index: 5;
	width: 100%;
	height: 100%;
}

.top_bg::before {
	content: "";
	position: absolute;
	background: url(../image/toppage-bg1.png) no-repeat center center / cover;
	aspect-ratio: 1440 / 2140;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: -1;
}

.top_bg .cta a {
	transition: all 0.3s ease;
}

.top_bg .cta .common_cta {
	position: relative;
}

.top_bg .cta .common_cta::before {
	content: "";
	position: absolute;
	background: url(../image/leaf-img2.png) no-repeat center center / cover;
	aspect-ratio: 141 / 182;
	width: 70px;
	bottom: -40px;
	right: -30px;
	z-index: 1;
}

.top_about {
	position: relative;
	padding-top: 93px;
	padding-bottom: 47px;
}

.top_about::before {
	content: "";
	position: absolute;
	background: url(../image/leaf-img3.png) no-repeat center center / cover;
	aspect-ratio: 148 / 158;
	width: 74px;
	height: auto;
	top: 127px;
	right: 245px;
	z-index: -1;
}

.top_about::after {
	content: "";
	position: absolute;
	background: url(../image/leaf-img4.png) no-repeat center center / cover;
	aspect-ratio: 280 / 267;
	width: 151px;
	height: auto;
	bottom: 0;
	left: 110px;
	z-index: -1;
}

.top_about .wrap.mid {
	position: relative;
}

.top_about .img1_box {
	position: absolute;
	top: 70px;
	left: -100px;
	border-radius: 20px;
}

.top_about .img1 {
	position: relative;
	width: 300px;
}

.top_about .img1 img {
	aspect-ratio: 300 / 250;
	width: 100%;
	height: auto;
	object-fit: cover;
	border-radius: 20px;
}

.top_about .img1::before {
	content: "";
	position: absolute;
	background-color: #E6EFC2;
	border-radius: 20px;
	width: 100%;
	height: 100%;
	top: 8px;
	left: 8px;
	z-index: -1;
}

.top_about .title {
	text-align: center;
}

.top_about .title_en {
	font-family: "Patua One", serif;
	font-weight: 400;
	font-size: 22px;
	line-height: 1.36;
	letter-spacing: 0;
	color: #7B6D64;
}

.top_about .title_jp {
	display: inline-block;
	position: relative;
	font-weight: 700;
	font-size: 13px;
	line-height: 1.30;
	letter-spacing: 0.12em;
	color: #fff;
}

.top_about .title_jp::before {
	content: "";
	position: absolute;
	background: url(../image/title-ribbon-green.png) no-repeat center center / cover;
	aspect-ratio: 520 / 74;
	width: 260px;
	top: -5px;
	left: 50%;
	transform: translateX(-50%);
	z-index: -1;
}

.top_about .head {
	margin-top: 34px;
	font-weight: 700;
	font-size: 33px;
	line-height: 1.63;
	letter-spacing: 0.14em;
	text-align: center;
}

.top_about .head span {
	font-size: 41px;
	line-height: 1.31;
	color: #8D6A3A;
}

.top_about .wrapper {
	position: relative;
	margin-top: 24px;
	text-align: center;
}

.top_about .lead {
	display: inline-block;
	position: relative;
	font-weight: 700;
	font-size: 20px;
	line-height: 1.35;
	letter-spacing: 0.12em;
	color: #5C2B0A;
	padding-bottom: 7px;
}

.top_about .lead::before {
	content: "";
	position: absolute;
	background: url(../image/line-green.png) no-repeat center center / cover;
	aspect-ratio: 862 / 16;
	width: 450px;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	z-index: -1;
}

.top_about .text {
	margin-top: 21px;
	font-weight: 400;
	font-size: 14px;
	line-height: 2;
	letter-spacing: 0.14em;
	color: #4D4D4D;
}

.top_about .btn {
	margin-top: 47px;
	width: 250px;
	margin-inline: auto;
}

.top_about .img2_box {
	position: absolute;
	bottom: 0;
	right: 0;

}

.top_about .img2 {
	position: relative;
	width: 190px;
}

.top_about .img2::before {
	content: "";
	position: absolute;
	background-color: #E1F0E3;
	border-radius: 20px;
	width: 100%;
	height: 100%;
	top: -8px;
	right: 8px;
	z-index: -1;
}

.top_about .img2 img {
	aspect-ratio: 190 / 190;
	width: 100%;
	height: auto;
	object-fit: cover;
	border-radius: 20px;
}

/*TOPページ service*/
.top_service {
	padding-top: 80px;
	padding-bottom: 187px;
}

.top_service .common_section_title {
	text-align: center;
}

.top_service .lead {
	margin-top: 17px;
	font-weight: 400;
	text-align: center;
	font-size: 14px;
	line-height: 1.71;
	letter-spacing: 0.14em;
	color: #4D4D4D;
	max-width: 632px;
	margin-inline: auto;
}

.top_service .cards {
	margin-top: 52px;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
}

.top_service .card {
	position: relative;
	background-color: #fff;
	border-radius: 16px;
}

.top_service .card a {
	display: block;
	padding: 27px 16px 23px;
}

.top_service .card .head {
	position: absolute;
	top: -14px;
	left: 50%;
	transform: translateX(-50%);
	border-radius: 14px;
	background-color: #89BE9C;
	color: #fff;
	font-family: "Patua One", serif;
	font-weight: 400;
	font-size: 17px;
	line-height: 1.29;
	letter-spacing: 0;
	padding: 2px 27px 4px;
}

.top_service .card:nth-child(even) .head {
	background-color: #B1CC8F;
}

.top_service .card .title_box {
	text-align: center;
}

.top_service .card .title {
	position: relative;
	display: inline-block;
	font-weight: 700;
	font-size: 22px;
	line-height: 2.40;
	letter-spacing: 0.14em;
	padding-left: 4px;
	padding-right: 4px;
	color: #2B2B2B;
}

.top_service .card .title::before {
	content: "";
	position: absolute;
	background: url(../image/line-green2.png) no-repeat center center / cover;
	aspect-ratio: 328 / 8;
	width: 100%;
	bottom: 0;
	left: 0;
}

.top_service .card .title .brown {
	color: #8D6A3A;
}

.top_service .card .title .big {
	font-size: 28px;
	line-height: 1.89;
}

.top_service .card .body {
	margin-top: 10px;
}

.top_service .card .img {
	margin-top: 15px;
	border-radius: 14px;
	overflow: hidden;
}

.top_service .card .img img {
	aspect-ratio: 263 / 140;
	width: 100%;
	height: auto;
	object-fit: cover;
	transition: all 0.3s ease;
	transform: scale(1);
}

.top_service .card .text {
	font-weight: 400;
	font-size: 12px;
	line-height: 1.5;
	letter-spacing: 0.14em;
	color: #4D4D4D;
}

.top_service .card .btn {
	position: relative;
	margin-top: 7px;
}

.top_service .card .btn::before {
	content: "";
	position: absolute;
	background-color: #8D6A3A;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	top: 50%;
	transform: translateY(-50%);
	right: 0;
	transition: all 0.3s ease;
}

.top_service .card .btn::after {
	content: "";
	position: absolute;
	background-color: #fff;
	width: 8px;
	height: 11px;
	clip-path: polygon(0 0, 0% 100%, 100% 50%);
	top: 50%;
	transform: translateY(-50%);
	right: 5px;
}

.top_service .card .btn p {
	position: relative;
	padding-top: 16px;
	padding-bottom: 16px;
	padding-right: 24px;
	font-weight: 700;
	font-size: 14px;
	line-height: 1.35;
	letter-spacing: 0.1em;
	color: #2B2B2B;
	border-bottom: 2px dotted #ADA293;
	width: 100%;
	transition: all 0.3s ease;
}

/* TOP 新潟の物件を探す */

.top_search {
	padding-top: 117px;
	padding-bottom: 130px;
}

.top_search .common_section_title {
	text-align: center;
}

.top_search .lead {
	margin-top: 17px;
	font-weight: 400;
	text-align: center;
	font-size: 14px;
	line-height: 1.71;
	letter-spacing: 0.14em;
	color: #4D4D4D;
}

.top_search .wrapper {
	margin-top: 35px;
	display: flex;
	gap: 90px;
}

.top_search .area_box {
	flex: 0 0 670px;
}

.top_search .area_box .title_box {
	text-align: center;
}

.top_search .area_box .title_box .title_en {
	font-family: "Patua One", serif;
	font-weight: 400;
	font-size: 20px;
	line-height: 1.35;
	letter-spacing: 0;
	color: #7B6D64;
}

.top_search .area_box .title_box .title_jp {
	position: relative;
	margin-top: 1px;
	font-weight: 700;
	font-size: 20px;
	line-height: 1.35;
	letter-spacing: 0.1em;
}

.top_search .area_box .title_box .title_jp::before {
	content: "";
	position: absolute;
	background: url(../image/line-green3.png) no-repeat center center / cover;
	aspect-ratio: 484 / 14;
	max-width: 242px;
	width: 100%;
	top: 50%;
	transform: translateY(-50%);
	left: 0;
}

.top_search .area_box .title_box .title_jp::after {
	content: "";
	position: absolute;
	background: url(../image/line-green3.png) no-repeat center center / cover;
	aspect-ratio: 484 / 14;
	max-width: 242px;
	width: 100%;
	top: 50%;
	transform: translateY(-50%);
	right: 0;
}

.top_search .area_grid {
	margin-top: 22px;
	display: grid;
	grid-template-columns: repeat(12, 1fr);
	grid-template-rows: repeat(6, 1fr);
	gap: 7px;
}

.top_search .area_grid a {
	display: flex;
	justify-content: center;
	align-items: center;
	color: #fff;
	font-weight: 700;
	font-size: 16px;
	line-height: 1.25;
	letter-spacing: 0.1em;
	background-color: #9FBC29;
	border-radius: 8px;
	border: 2px solid #9FBC29;
	transition: all 0.3s ease;
	text-align: center;
}

.top_search .area_grid a.lightgreen {
	background-color: #BCC955;
	border-color: #BCC955;
}

.top_search .area_grid .area1 {
	grid-column: span 3 / span 3;
	grid-row: span 2 / span 3;
	grid-column-start: 1;
	grid-row-start: 1;
	width: 175px;
	height: 92px;
}

.top_search .area_grid .area2 {
	grid-column: span 3 / span 3;
	grid-row: span 2 / span 3;
	grid-column-start: 1;
	grid-row-start: 3;
	width: 175px;
	height: 92px;
}

.top_search .area_grid .area3 {
	grid-column: span 2 / span 2;
	grid-row: span 2 / span 2;
	grid-column-start: 1;
	grid-row-start: 5;
	width: 112px;
	height: 90px;
}

.top_search .area_grid .area4 {
	grid-column: span 2 / span 2;
	grid-row: span 2 / span 2;
	grid-column-start: 4;
	grid-row-start: 1;
	width: 112px;
	height: 90px;
}

.top_search .area_grid .area5 {
	grid-column: span 2 / span 2;
	grid-row: span 2 / span 2;
	grid-column-start: 6;
	grid-row-start: 1;
	width: 112px;
	height: 90px;
}

.top_search .area_grid .area6 {
	grid-column: span 4 / span 4;
	grid-row: span 2 / span 2;
	grid-column-start: 4;
	grid-row-start: 3;
	width: 231px;
	height: 90px;
}

.top_search .area_grid .area7 {
	grid-column: span 2 / span 2;
	grid-row: span 2 / span 2;
	grid-column-start: 3;
	grid-row-start: 5;
	width: 112px;
	height: 90px;
}

.top_search .area_grid .area8 {
	grid-column: span 3 / span 3;
	grid-row: span 2 / span 2;
	grid-column-start: 5;
	grid-row-start: 5;
	width: 175px;
	height: 90px;
}

.top_search .area_grid .area9 {
	grid-column: span 2 / span 2;
	grid-row: span 4 / span 4;
	grid-column-start: 8;
	grid-row-start: 1;
	width: 112px;
	height: 187px;
}

.top_search .area_grid .area10 {
	grid-column: span 2 / span 2;
	grid-row: span 2 / span 2;
	grid-column-start: 10;
	grid-row-start: 1;
	width: 112px;
	height: 90px;
}

.top_search .area_grid .area11 {
	grid-column: span 3 / span 3;
	grid-row: span 2 / span 2;
	grid-column-start: 10;
	grid-row-start: 3;
	width: 168px;
	height: 90px;
}

.top_search .area_grid .area12 {
	grid-column: span 3 / span 3;
	grid-row: span 2 / span 2;
	grid-column-start: 8;
	grid-row-start: 5;
	width: 113px;
	height: 90px;
}

.top_search .area_grid .area13 {
	grid-row: span 2 / span 2;
	grid-column-start: 12;
	grid-row-start: 1;
}

.top_search .area_grid .area14 {
	grid-column: span 2 / span 2;
	grid-row: span 2 / span 2;
	grid-column-start: 11;
	grid-row-start: 5;
}

.top_search .area_grid .area15 {
	grid-column: span 1 / span 1;
	grid-row: span 2 / span 2;
	grid-column-start: 10;
	grid-row-start: 5;
}

.top_search .category_box {
	margin-top: 40px;
	flex: 0 0 380px;
}

.top_search .btn_box {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.top_search .btn_box .btn {
	display: flex;
	border-radius: 10px;
	height: 100px;
}

.top_search .btn.btn_mobile {
	display: none;
}


.top_search .btn_box .img {
	flex: 0 0 110px;
	height: 100px;
	border-radius: 10px 0 0 10px;
	overflow: hidden;
}

.top_search .btn_box .img img {
	width: 100%;
	object-fit: cover;
	border-radius: 10px 0 0 10px;
	transition: all 0.3s ease;
	transform: scale(1);
}

.top_search .btn_box .body {
	display: flex;
	justify-content: space-between;
	background-color: #F7F7F7;
	width: 100%;
	height: 100%;
	padding-left: 30px;
	border-radius: 0 10px 10px 0;
}

.top_search .btn_box .title_box {
	display: flex;
	flex-direction: column;
	justify-content: center;

}

.top_search .btn_box .title_box .title_en {
	font-family: "Patua One", serif;
	font-weight: 400;
	font-size: 15px;
	line-height: 1.33;
	letter-spacing: 0;
	color: #BEAFA5;
	transition: all 0.3s ease;
}

.top_search .btn_box .title_box .title_jp {
	margin-top: 2px;
	font-weight: 700;
	font-size: 16px;
	line-height: 1.31;
	letter-spacing: 0.1em;
	color: #2B2B2B;
	transition: all 0.3s ease;
}

.top_search .btn_box .arrow {
	position: relative;
	background-color: #A4BE39;
	flex: 0 0 30px;
	height: 100%;
	border-radius: 0 10px 10px 0;
}

.top_search .btn_box .arrow::before {
	content: "";
	position: absolute;
	background-color: #fff;
	border-radius: 50%;
	width: 20px;
	height: 20px;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	transition: all 0.3s ease;
}

.top_search .btn_box .arrow::after {
	content: "";
	position: absolute;
	background-color: #A4BE39;
	width: 8px;
	height: 11px;
	clip-path: polygon(0 0, 0% 100%, 100% 50%);
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.top_search .search_box {
	margin-top: 27px;
}

.top_search .search_box .title_box {
	display: flex;
	align-items: center;
	gap: 15px;
}

.top_search .search_box .title_jp {
	font-weight: 700;
	font-size: 16px;
	line-height: 1;
	letter-spacing: 0.1em;
}

.top_search .search_box .title_en {
	font-family: "Patua One", serif;
	font-weight: 400;
	font-size: 18px;
	line-height: 1;
	letter-spacing: 0;
	color: #BEAFA5;
}

.top_search .search_form {
	margin-top: 6px;
	position: relative;
}

.top_search .search_form input {
	width: 100%;
	border: 2px solid #E3E3E3;
	background-color: #FCFCFC;
	border-radius: 10px;
	padding: 13px 20px;
	max-width: 380px;
}

.top_search .search_form input::placeholder {
	font-weight: 600;
	font-size: 13px;
	line-height: 1.84;
	letter-spacing: 0.14em;
	color: #D9D9D9;
}

.top_search .search_form button {
	position: absolute;
	top: 13px;
	right: 17px;
	width: 30px;
	height: 30px;
	padding: 2px;
	border: none;
	cursor: pointer;
}

.top_search .search_form button img {
	aspect-ratio: 1 / 1;
	width: 100%;
	height: auto;
	object-fit: contain;
}

/*新着物件　プライスダウン物件*/

.top_property {
	position: relative;
	padding-top: 100px;
	padding-bottom: 127px;
	/* background-color: rgba(250, 250, 250, 0.8); */
	overflow: hidden;
}

.top_property::before {
	content: "";
	position: absolute;
	background: url(../image/toppage-bg2.png) no-repeat center center / cover;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: -1;
}

.top_property .wrapper {
	display: flex;
	gap: 30px;
	margin-right: calc(50% - 50vw);
}

.top_property .title_box {
	margin-top: 44px;
	text-align: left;
	flex: 0 0 337px;
}

.top_property .title_en {
	font-family: "Patua One", serif;
	font-weight: 400;
	font-size: 18px;
	line-height: 1.33;
	letter-spacing: 0;
	color: #7B6D64;
}

.top_property .title_jp {
	margin-top: 6px;
	font-weight: 700;
	font-size: 36px;
	line-height: 1.61;
	letter-spacing: 0.12em;
}

.top_property .lead {
	margin-top: 19px;
	font-weight: 400;
	font-size: 14px;
	line-height: 1.64;
	letter-spacing: 0.14em;
	color: #4D4D4D;
}

.top_property .title_box .btn {
	margin-top: 102px;
	max-width: 210px;
	text-align: center;
}

.top_property .title_box .btn span {
	padding-right: 40px;
}

.top_property .card {
	margin-top: 20px;
	position: relative;
	display: inline-block;
	padding-left: 40px;
	padding-right: 40px;
	padding-bottom: 3px;
	border-right: 2px dashed #D3D3D3;
	width: 360px !important;
}

.top_property .card.new::before {
	content: "";
	position: absolute;
	background: url(../image/new.png) no-repeat center center / cover;
	aspect-ratio: 120 / 112;
	width: 60px;
	top: -20px;
	left: 10px;
	z-index: 1;
}

.top_property .card .body::before {
	content: "";
	position: absolute;
	background-color: #8D6A3A;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	bottom: 5px;
	right: 40px;
}

.top_property .card .body::after {
	content: "";
	position: absolute;
	background-color: #fff;
	width: 8px;
	height: 10px;
	clip-path: polygon(0 0, 0% 100%, 100% 50%);
	bottom: 11px;
	right: 46px;
}

.top_property .card .img {
	overflow: hidden;
	width: 280px;
	height: 180px;
	border-radius: 14px;
	position: relative;
}

.top_property .card .img img {
	aspect-ratio: 280 / 180;
	width: 100%;
	height: auto;
	object-fit: cover;
	border-radius: 14px;
	transition: all 0.3s ease;
	transform: scale(1);
}

.top_property .card .category {
	margin-top: 12px;
	font-weight: 700;
	font-size: 13px;
	line-height: 1.30;
	letter-spacing: 0.1em;
	color: #8D6A3A;
}

.top_property .card .name {
	margin-top: 4px;
	font-weight: 700;
	font-size: 18px;
	line-height: 1.33;
	letter-spacing: 0.1em;
	color: #2B2B2B;
}

.top_property .card .address {
	position: relative;
	margin-top: 10px;
	font-weight: 400;
	font-size: 13px;
	line-height: 1.7;
	letter-spacing: 0.1em;
	color: #818181;
	padding: 4px 26px;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
}

.top_property .card .address::before {
	content: "";
	position: absolute;
	background: url(../image/icon-marker-brown.png) no-repeat center center / cover;
	aspect-ratio: 30 / 44;
	width: 14px;
	top: 2px;
	left: 0;
}

.top_property .card .access {
	position: relative;
	margin-top: 7px;
	font-weight: 400;
	font-size: 13px;
	line-height: 1.7;
	color: #818181;
	padding: 4px 26px;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
}

.top_property .card>* {
	display: inline;
}

.top_property .card .access::before {
	content: "";
	position: absolute;
	background: url(../image/icon-train-brown.png) no-repeat center center / cover;
	aspect-ratio: 29 / 41;
	width: 14px;
	top: 0;
	left: 0;
}

.top_property .card .price {
	margin-top: 14px;
	font-family: "Roboto", sans-serif;
	font-weight: 700;
	letter-spacing: 0;
	color: #8D6A3A;
}

.top_property .card .price {
	font-size: 26px;
	line-height: 0.76;
}

.top_property .card .price span {
	font-size: 15px;
	line-height: 1.33;
}

.top_property .property_box {
	width: 100%;
	max-width: calc(100% - 367px);
	/* 337pxのtitle_box + gap 30px を引く */
}

.top_property .splide__slide {
	width: 360px !important;
}

.top_property .splide__arrows {
	position: absolute;
	left: -380px;
	top: 240px;
}

.top_property .top_property_arrow {
	width: 32px;
	height: 32px;
	background-color: #8D6A3A;
	opacity: 1;
}

.top_property .top_property_next {
	left: 150px;
}

.top_property .top_property_prev::before {
	content: "";
	position: absolute;
	background-color: #fff;
	width: 11px;
	height: 15px;
	clip-path: polygon(100% 0, 0 50%, 100% 100%);
	top: 50%;
	transform: translateY(-50%);
	right: 12px;
}

.top_property .top_property_next::before {
	content: "";
	position: absolute;
	background-color: #fff;
	width: 11px;
	height: 15px;
	clip-path: polygon(0 0, 0% 100%, 100% 50%);
	top: 50%;
	transform: translateY(-50%);
	left: 12px;
}

.top_property .top_property_pagination {
	right: initial;
	left: -330px;
	top: 120px;
	gap: 10px;
}

.top_property .top_property_page {
	width: 8px;
	height: 8px;
	background-color: #D6D6D6;
	margin: 0;
}

.top_property .top_property_page.is-active {
	background-color: #B19C7F;
	transform: scale(1);
}

.top_property .wrapper+.wrapper {
	margin-top: 120px;
}

.top_property .price_down .title_jp {
	font-size: 30px;
}

.top_property .property_box .body_sp .price_sp {
	display: none;
}

.top_property .price_down .btn .common_btn {
	background-color: #A29149;
	border-color: #A29149;
}

.top_property .price_down .btn .common_btn span::after {
	background-color: #A29149;
}

.top_property .price_down .category {
	color: #A29149;
}

.top_property .price_down .price {
	color: #A29149;
}

.top_property .price_down .card .body::before {
	background-color: #A29149;
}

.top_property .price_down .top_property_arrow {
	background-color: #A29149;
}

.top_property .btn_sp {
	display: none;
}

/*topおすすめ物件*/

.top_recommended {
	padding-top: 107px;
	padding-bottom: 130px;
}

.top_recommended .common_section_title {
	text-align: center;
}

.top_recommended .common_section_title .title_jp {
	position: relative;
	padding-bottom: 8px;
}

.top_recommended .common_section_title .title_jp::before {
	content: "";
	position: absolute;
	background: url(../image/line-green4.png) no-repeat center center / cover;
	aspect-ratio: 764 / 12;
	max-width: 262px;
	width: 100%;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
}

.top_recommended .lead {
	margin-top: 19px;
	font-weight: 400;
	text-align: center;
	font-size: 14px;
	line-height: 1.71;
	letter-spacing: 0.14em;
	color: #4D4D4D;
}

.top_recommended .wrapper {
	margin-top: 41px;
}

.top_recommended .cards {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 30px;
}

.top_recommended .card {
	position: relative;
	box-shadow: 0 2px 4px #0000000F;
	border-radius: 14px;

}

.top_recommended .card::before {
	content: "";
	position: absolute;
	background-color: #fff;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	top: 50%;
	transform: translateY(-50%);
	right: 5px;
	transition: all 0.3s ease;
	z-index: 1;
}

.top_recommended .card::after {
	content: "";
	position: absolute;
	background-color: #A4BE39;
	width: 8px;
	height: 11px;
	clip-path: polygon(0 0, 0% 100%, 100% 50%);
	top: 50%;
	right: 10px;
	transform: translateY(-50%);
	z-index: 2;
}

.top_recommended .card a {
	display: block;
	position: relative;
	display: flex;
	gap: 30px;

}

.top_recommended .card .img {
	flex: 0 0 200px;
	border-radius: 12px 0 0 12px;
	overflow: hidden;
	height: 220px;
}

.top_recommended .card .body {
	position: relative;
	flex: 1;
	padding-right: 40px;
}

.top_recommended .card .body::before {
	content: "";
	position: absolute;
	background-color: #A4BE39;
	width: 30px;
	height: 100%;
	border-radius: 0 14px 14px 0;
	top: 0;
	right: 0;
}

.top_recommended .card .img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transform: scale(1);
	transition: all 0.3s ease;
}

.top_recommended .card .category {
	margin-top: 20px;
	font-weight: 700;
	font-size: 13px;
	line-height: 1.30;
	letter-spacing: 0.1em;
	color: #A4BE39;
}

.top_recommended .card .name {
	margin-top: 8px;
	font-weight: 700;
	font-size: 18px;
	line-height: 1.33;
	letter-spacing: 0.1em;
	color: #2B2B2B;
}

.top_recommended .card .price_pc {
	margin-top: 16px;
	font-family: "Roboto", sans-serif;
	font-weight: 700;
	line-height: 0.76;
	font-size: 26px;
	letter-spacing: 0;
	color: #A0BC2B;
}

.top_recommended .card .price_pc span {
	font-size: 15px;
	line-height: 1.33;
}

.top_recommended .card .address_box {
	background-color: #FAFCF4;
	border-radius: 10px;
	display: inline-block;
	padding: 10px 20px 10px 15px;
	margin-top: 8px;
}

.top_recommended .card .address {
	position: relative;
	font-weight: 400;
	font-size: 12px;
	line-height: 1.7;
	letter-spacing: 0.1em;
	color: #818181;
	padding: 5px 27px;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
}

.top_recommended .card .address::before {
	content: "";
	position: absolute;
	background: url(../image/icon-marker-green.png) no-repeat center center / cover;
	aspect-ratio: 30 / 44;
	width: 14px;
	top: 0;
	left: 0;
}

.top_recommended .card .access {
	position: relative;
	margin-top: 1em;
	font-weight: 400;
	font-size: 12px;
	line-height: 1.7;
	color: #818181;
	padding: 4px 27px;
	display: block;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
}

.top_recommended .card .access>* {
	display: inline;
}

.top_recommended .card .access::before {
	content: "";
	position: absolute;
	background: url(../image/icon-train-green.png) no-repeat center center / cover;
	aspect-ratio: 29 / 41;
	width: 14px;
	top: 0;
	left: 0;
}

.top_recommended .card .price_sp {
	display: none;
}

.top_recommended .btn {
	margin-top: 40px;
	text-align: center;
}

.top_recommended .btn .common_btn {
	display: inline-block;
	min-width: 250px;
	width: auto;
}

/*topリノベーションについて*/

.top_renovation {
	position: relative;
}

.top_renovation::before {
	content: "";
	position: absolute;
	background: url(../image/toppage-bg3.png) no-repeat center center / cover;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: -1;
}

.top_renovation::after {
	content: "";
	position: absolute;
	background: url(../image/leaf-img5.png) no-repeat center center / cover;
	aspect-ratio: 143 / 153;
	width: 71px;
	left: 138px;
	bottom: -20px;
	z-index: 1;
}

.top_renovation .bg {
	position: relative;
	padding-top: 157px;
	padding-bottom: 173px;

}

.top_renovation .wrap_wide {
	max-width: 1440px;
	width: 100%;
	margin: 0 auto;
}

.top_renovation .title_box {
	position: relative;
	display: flex;
	align-items: end;
	gap: 21px;
	z-index: 2;
}

.top_renovation .title_lead {
	text-align: left;
	flex: 0 0 514px;
}

.top_renovation .title_lead .title_en {
	font-family: "Patua One", serif;
	font-weight: 400;
	font-size: 20px;
	line-height: 1.35;
	letter-spacing: 0;
	color: #7B6D64;
}

.top_renovation .title_lead .title_jp {
	margin-top: 23px;
}

.top_renovation .title_lead .title_head {
	font-weight: 700;
	font-size: 22px;
	line-height: 2.22;
	letter-spacing: 0.12em;
}

.top_renovation .title_lead .title {
	position: relative;
	display: inline-block;
	font-weight: 700;
	font-size: 43px;
	line-height: 1.46;
	letter-spacing: 0.1em;
	color: #8D6A3A;
	padding-bottom: 2px;
}

.top_renovation .title_lead .title::before {
	content: "";
	position: absolute;
	background: url(../image/line-green.png) no-repeat center center / cover;
	aspect-ratio: 862 / 16;
	width: 100%;
	bottom: 0;
	left: 0;
}

.top_renovation .title_lead .title span {
	font-size: 30px;
	line-height: 2.1;
	letter-spacing: 0.12em;
	color: #2B2B2B;
}

.top_renovation .title_logo {
	position: relative;
	width: 472px;
	padding-bottom: 12px;
}

.top_renovation .title_logo::before {
	content: "- メモリーハウス -";
	position: absolute;
	font-weight: 600;
	font-size: 14px;
	line-height: 1.35;
	letter-spacing: 0.12em;
	color: #844D26;
	bottom: -10px;
	right: -50px;
}

.top_renovation .title_logo::after {
	content: "";
	position: absolute;
	background: url(../image/leaf-img6.png) no-repeat center center / cover;
	aspect-ratio: 269 / 220;
	width: 134px;
	top: -100px;
	right: -140px;
}

.top_renovation .title_logo img {
	aspect-ratio: 944 / 142;
	width: 100%;
	height: auto;
	object-fit: contain;
}

.top_renovation .container {
	margin-top: 53px;
	display: flex;
	gap: 100px;
}

.top_renovation .container .image {
	position: relative;
	flex: 0 0 540px;
}

.top_renovation .container .image::before {
	content: "";
	position: absolute;
	background: url(../image/leaf-img2.png) no-repeat center center / cover;
	aspect-ratio: 58 / 74;
	width: 58px;
	top: -20px;
	right: -20px;
	z-index: 1;
}

.top_renovation .container .image img {
	aspect-ratio: 540 / 710;
	width: 100%;
	height: auto;
	object-fit: cover;
	border-radius: 20px;
}

.top_renovation .container .body {
	padding-top: 50px;
	position: relative;
}

.top_renovation .container .body::before {
	content: "";
	position: absolute;
	background: url(../image/leaf-img4.png) no-repeat center center / cover;
	aspect-ratio: 280 / 267;
	width: 134px;
	bottom: 0;
	right: 0;
	z-index: 5;
	transform: scale(-1, 1);
}

.top_renovation .container .title {
	position: relative;
	display: inline-block;
	font-weight: 700;
	font-size: 22px;
	line-height: 1.59;
	letter-spacing: 0.16em;
	color: #4B2307;
	padding-bottom: 13px;
	padding-right: 40px;
}

.top_renovation .container .title::before {
	content: "";
	position: absolute;
	background: url(../image/line-green4.png) no-repeat center center / cover;
	width: 100%;
	height: 6px;
	bottom: 0;
	left: 0;
}

.top_renovation .container .text {
	margin-top: 26px;
	font-weight: 600;
	font-size: 14px;
	line-height: 1.85;
	letter-spacing: 0.14em;
	color: #4D4D4D;
	padding-right: 150px;
}

.top_renovation .container .btn {
	position: relative;
	z-index: 2;
	margin-top: 40px;
	text-align: left;
}

.top_renovation .container .btn .common_btn {
	display: inline-block;
	min-width: 280px;
	width: auto;
}

.top_renovation .container .btn .common_btn span {
	padding-left: 10px;
}

/*topキャンペーン情報*/
.top_campaign {
	padding-top: 117px;
	padding-bottom: 59px;
}

.top_campaign .head {
	display: flex;
	justify-content: space-between;
	align-items: end;
}

.top_campaign .lead {
	margin-top: 18px;
	font-weight: 400;
	font-size: 14px;
	line-height: 1.64;
	letter-spacing: 0.14em;
	color: #4D4D4D;
}

.top_campaign .common_btn {
	min-width: 250px;
	text-align: center;
}

.top_campaign .cards {
	margin-top: 40px;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 30px;
}

.top_campaign .card a {
	display: block;
	position: relative;
}

.top_campaign .card .image {
	overflow: hidden;
	width: 100%;
	border-radius: 14px;
}

.top_campaign .card .image img {
	aspect-ratio: 2 / 1;
	width: 100%;
	height: auto;
	object-fit: cover;
	border-radius: 14px;
	transition: all 0.3s ease;
	transform: scale(1);
}

.top_campaign .card .body {
	padding-top: 14px;
}

.top_campaign .card .title {
	font-weight: 700;
	font-size: 16px;
	line-height: 1.56;
	letter-spacing: 0.12em;
	color: #2B2B2B;
	height: 46px;
	transition: all 0.3s ease;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	/* 行数指定 */
}

.top_campaign .card .text {
	margin-top: 10px;
	font-weight: 400;
	font-size: 13px;
	line-height: 1.61;
	letter-spacing: 0.14em;
	color: #898989;
	height: 38px;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	/* 行数指定 */
}

.top_campaign .card .date {
	position: relative;
	margin-top: 16px;
	font-family: "Roboto", sans-serif;
	font-weight: 500;
	font-size: 14px;
	line-height: 1.35;
	letter-spacing: 0;
	color: #8D6A3A;
	padding-left: 22px;
	transition: all 0.3s ease;
}

.top_campaign .card .date::before {
	content: "";
	position: absolute;
	background: url(../image/icon-watch-brown.png) no-repeat center center / cover;
	aspect-ratio: 1/1;
	width: 14px;
	top: 1px;
	left: 0;
	transition: all 0.3s ease;
}

/*スタッフ紹介*/

.top_staff {
	padding-top: 100px;
	padding-bottom: 154px;
}

.top_staff .head {
	display: flex;
	justify-content: space-between;
	align-items: end;
}

.top_staff .container {
	display: flex;
	gap: 50px;
	flex-direction: column;
}

.top_staff .title_box {
	text-align: left;
	flex: 0;
	flex-grow: 1;
}

.top_staff .title_en {
	font-family: "Patua One", serif;
	font-weight: 400;
	font-size: 18px;
	line-height: 1.33;
	letter-spacing: 0;
	color: #7B6D64;
}

.top_staff .title_jp {
	margin-top: 6px;
	font-weight: 700;
	font-size: 36px;
	line-height: 1.61;
	letter-spacing: 0.12em;
}

.top_staff .lead {
	margin-top: 19px;
	font-weight: 400;
	font-size: 14px;
	line-height: 1.64;
	letter-spacing: 0.14em;
	color: #4D4D4D;
}

.top_staff .btn {
	margin-top: 30px;
	width: 250px;
	text-align: center;
	flex-shrink: 0;
}


.top_staff .images .card {
	display: block;
	border-radius: 18px;
	background-color: #B9C977;
	padding: 7px;
}

.top_staff .images .card.brown {
	background-color: #B7A58D;
}

.top_staff .images .image {
	overflow: hidden;
	border-radius: 14px;
	position: relative;
}

.top_staff .images .image img {
	aspect-ratio: 226 / 306;
	width: 100%;
	height: auto;
	object-fit: cover;
	transition: all 0.3s ease;
	transform: scale(1);
	border-radius: 14px;
}

.top_staff .images .image::before {
	content: "";
	position: absolute;
	background: transparent linear-gradient(180deg, #00000000 0%, #00000000 60%, #00000080 100%) 0% 0% no-repeat padding-box;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	border-radius: 14px;
	z-index: 1;
}

.top_staff .images .name_box {
	position: absolute;
	bottom: 17px;
	left: 0;
	z-index: 5;
	width: 100%;
	text-align: center;
}

.top_staff .images .head {
	font-weight: 700;
	font-size: 13px;
	color: #fff;
	letter-spacing: 0.12em;
	display: block;
}

.top_staff .images .name {
	margin-top: 3px;
	font-weight: 700;
	font-size: 20px;
	letter-spacing: 0.12em;
	color: #fff;
}

.top_staff .splide.is-initialized:not(.is-active) .splide__list {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
}

.top_staff .top_staff_arrow {
	display: none;
}

/*top SNS*/

.top_sns {
	position: relative;
	padding-top: 195px;
}

.top_sns::before {
	content: "";
	position: absolute;
	background: url(../image/toppage-bg4.png) no-repeat center center / cover;
	aspect-ratio: 2878 / 1850;
	width: 100%;
	top: 0;
	left: 0;
	z-index: -1;
}

.top_sns .bg {
	background-color: #F8F8F8;
	padding-bottom: 128px;
}

.top_sns .title_box {
	position: relative;
	text-align: center;
}

.top_sns .title_box::before {
	content: "";
	position: absolute;
	background: url(../image/logo-icon.png) no-repeat center center / cover;
	aspect-ratio: 1 / 1;
	width: 90px;
	top: -120px;
	left: 50%;
	transform: translateX(-50%);
}

.top_sns .title_box .title {
	position: relative;
	display: flex;
	justify-content: center;
}

.top_sns .title_box .title::before {
	content: "- メモリーハウス -";
	position: absolute;
	font-weight: 600;
	font-size: 12px;
	line-height: 1.33;
	letter-spacing: 0.12em;
	color: #844D26;
	top: -15px;
	left: 350px;

}

.top_sns .title_box .title img {
	aspect-ratio: 310 / 46;
	width: 310px;
	height: auto;
	object-fit: contain;
}

.top_sns .title_box .title .text {
	font-weight: 700;
	font-size: 38px;
	line-height: 1.52;
	letter-spacing: 0.12em;
}

.top_sns .title_box .title .brown {
	font-family: "Roboto", sans-serif;
	font-weight: 700;
	font-size: 50px;
	line-height: 1.16;
	letter-spacing: 0.02em;
	color: #8D6A3A;
}

.top_sns .title_box .title .letter_spacing {
	letter-spacing: 0.12em;
}

.top_sns .lead {
	margin-top: 20px;
	font-weight: 400;
	font-size: 14px;
	line-height: 1.71;
	letter-spacing: 0.12em;
	color: #4D4D4D;
}

.top_sns .container {
	margin-top: 47px;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
}

.top_sns .insta_box {
	text-align: center;
	padding-right: 100px;
}

.top_sns .insta_box .title {
	position: relative;
	display: inline-block;
	font-family: "Roboto", sans-serif;
	font-weight: 500;
	font-size: 34px;
	line-height: 1.32;
	letter-spacing: 0;
	padding-left: 60px;
}

.top_sns .insta_box .title::before {
	content: "";
	position: absolute;
	background: url(../image/icon-instagram.png) no-repeat center center / cover;
	aspect-ratio: 1 / 1;
	width: 40px;
	left: 0;
	top: 0;
}

.top_sns .insta_box .insta_widget {
	position: relative;
	margin-top: 24px;
	aspect-ratio: 1;
}

.top_sns .insta_box .insta_widget .widget_link {
	position: absolute;
	inset: 0;
}

.top_sns .insta_box .insta_widget iframe {
	pointer-events: none;
	width: 100%;
}

.top_sns .search_form {
	position: relative;
	margin-top: 15px;
	max-width: 310px;
	margin-inline: auto;
}

.top_sns .search_form .text {
	position: relative;
	background-color: #fff;
	border-radius: 27px;
	padding: 12px 16px 13px 22px;
	font-family: "Roboto", sans-serif;
	font-weight: 500;
	font-size: 16px;
	line-height: 1.31;
	letter-spacing: 0;
	color: #989898;
	text-align: left;
}

.top_sns .search_form .text::before {
	content: "";
	position: absolute;
	background: url(../image/icon-search.png) no-repeat center center / cover;
	aspect-ratio: 1 / 1;
	width: 22px;
	height: 22px;
	top: 50%;
	transform: translateY(-50%);
	right: 16px;
}

.top_sns .search_form .text span {
	font-size: 14px;
}

.top_sns .search_form input {
	width: 100%;
	max-width: 310px;
	border-radius: 27px;
	background-color: #fff;
	padding: 12px 28px 13px 22px;
	text-align: left;
}

.top_sns .search_form input::placeholder {
	font-family: "Roboto", sans-serif;
	font-weight: 500;
	font-size: 16px;
	line-height: 1.31;
	letter-spacing: 0;
	color: #989898;
}

.top_sns .search_form button {
	position: absolute;
	right: 20px;
	top: 10px;
	width: 26px;
	height: 26px;
	padding: 2px;
	border-radius: 27px;
}

.top_sns .search_form button img {
	aspect-ratio: 1 / 1;
	width: 100%;
	height: auto;
	object-fit: contain;
}

.top_sns .insta_box .items {
	margin-top: 24px;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 30px;
}

.top_sns .insta_box .items a {
	transition: all 0.3s ease;
	overflow: hidden;
	border-radius: 14px;
	aspect-ratio: 1 / 1;
}

.top_sns .youtube_box {
	text-align: center;
	padding-left: 100px;
	border-left: 2px dashed #707070;
}

.top_sns .youtube_box .title {
	position: relative;
	display: inline-block;
	font-family: "Roboto", sans-serif;
	font-weight: 500;
	font-size: 34px;
	line-height: 1.32;
	letter-spacing: 0;
	padding-left: 60px;
}

.top_sns .youtube_box .title::before {
	content: "";
	position: absolute;
	background: url(../image/icon-youtube.png) no-repeat center center / cover;
	aspect-ratio: 48 / 34;
	width: 48px;
	left: 0;
	top: 2px;
}

.top_sns .youtube_box .items {
	margin-top: 22px;
}

.top_sns .youtube_box .item {

	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 20px;
}

.top_sns .youtube_box .item:not(:first-child) {
	padding-top: 22px;
}

.top_sns .youtube_box .item:not(:last-child) {
	padding-bottom: 22px;
	border-bottom: 2px dashed #D6D6D6;
}

.top_cta {
	background-color: #F8F8F8;
}

.top_cta a {
	transition: all 0.3s ease;
}

/*topお知らせ*/

.top_news {
	padding-top: 130px;
	padding-bottom: 100px;
	background-color: #F8F8F8;
}

.top_news .container {
	display: flex;
	align-items: center;
	gap: 80px;
}

.top_news .title_box {
	text-align: left;
	flex: 0 0 330px;
}

.top_news .title_en {
	font-family: "Patua One", serif;
	font-weight: 400;
	font-size: 18px;
	line-height: 1.33;
	letter-spacing: 0;
	color: #7B6D64;
}

.top_news .title_jp {
	margin-top: 6px;
	font-weight: 700;
	font-size: 36px;
	line-height: 1.61;
	letter-spacing: 0.12em;
}

.top_news .lead {
	margin-top: 19px;
	font-weight: 400;
	font-size: 14px;
	line-height: 1.64;
	letter-spacing: 0.14em;
	color: #4D4D4D;
}

.top_news .btn {
	margin-top: 30px;
	max-width: 250px;
	text-align: center;
}

.top_news li+li {
	margin-top: 12px;
}

.top_news .list a {
	position: relative;
	display: block;
	padding: 20px 80px 20px 30px;
	background-color: #fff;
	border-radius: 10px;
}

.top_news .list a:before {
	content: "";
	position: absolute;
	background-color: #8D6A3A;
	width: 31px;
	height: 31px;
	border-radius: 50%;
	top: 50%;
	transform: translateY(-50%);
	right: 25px;
	transition: all 0.3s ease;
}

.top_news .list a::after {
	content: "";
	position: absolute;
	background-color: #fff;
	width: 11px;
	height: 14px;
	clip-path: polygon(0 0, 0% 100%, 100% 50%);
	top: 50%;
	transform: translateY(-50%);
	right: 33px;
}

.top_news .list .date {
	font-family: "Roboto", sans-serif;
	font-weight: 500;
	font-size: 13px;
	line-height: 1.38;
	letter-spacing: 0;
	color: #8D6A3A;
	transition: all 0.3s ease;
}

.top_news .list .title {
	margin-top: 5px;
	font-weight: 700;
	font-size: 16px;
	line-height: 1.56;
	letter-spacing: 0.12em;
	color: #2B2B2B;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
	/* 行数指定 */
	transition: all 0.3s ease;
}

.top_news .list .text {
	margin-top: 11px;
	font-weight: 400;
	font-size: 12px;
	line-height: 1.58;
	letter-spacing: 0.14em;
	color: #A8A8A8;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	/* 行数指定 */
}

/*フッター*/
.footer {
	padding-top: 100px;
	padding-bottom: 72px;
	background-color: #695335;
}

.footer .top_container {
	padding-bottom: 56px;
	border-bottom: 2px dotted #907B5D;
}

.footer .top_wrapper {
	display: flex;
	gap: 70px;
}

.footer .top_wrapper .map {
	flex: 0 0 530px;
	border-radius: 20px;
}

.footer .top_wrapper .map iframe {
	aspect-ratio: 530 / 340;
	width: 100%;
	height: auto;
	border-radius: 20px;
}

.footer .top_wrapper .head {
	margin-top: 20px;
	font-weight: 400;
	font-size: 12px;
	line-height: 1.33;
	letter-spacing: 0.05em;
	color: #F0F0F0;
}

.footer .top_wrapper .logo {
	margin-top: 8px;
	width: 286px;
}

.footer .top_wrapper .logo img {
	aspect-ratio: 574 / 120;
	width: 100%;
	height: auto;
	object-fit: contain;
}

.footer .top_wrapper .content_box.flex {
	align-items: end;
	gap: 37px;
}

.footer .top_wrapper .address {
	margin-top: 19px;
	font-weight: 400;
	font-size: 14px;
	line-height: 1.5;
	letter-spacing: 0.05em;
	color: #E5E5E5;
}

.footer .top_wrapper .address .text {
	margin-top: 10px;
}

.footer .top_wrapper .sns {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 10px;
}

.footer .top_wrapper .sns .sns_item {
	width: 57px;
	height: 57px;
	border-radius: 50%;
	background-color: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
}

.footer .top_wrapper .sns .sns_item.youtube img {
	aspect-ratio: 86 / 60;
	width: 34px;
	height: auto;
	object-fit: contain;
}

.footer .top_wrapper .sns .sns_item.insta img {
	aspect-ratio: 60 / 60;
	width: 29px;
	height: auto;
	object-fit: contain;
}

.footer .top_wrapper .sns .sns_item.line img {
	aspect-ratio: 29 / 29;
	width: 29px;
	height: auto;
	object-fit: contain;
}

.footer .top_wrapper .text_box {
	margin-top: 22px;
	background-color: #fff;
	border-radius: 12px;
	padding: 20px;
}

.footer .top_wrapper .text_box .text {
	font-weight: 400;
	font-size: 12px;
	line-height: 1.75;
	letter-spacing: 0.05em;
	color: #4A4A4A;
}

.footer .bottom_wrapper {
	margin-top: 39px;
}

.footer .bottom_wrapper .business_head {
	font-weight: 700;
	font-size: 14px;
	line-height: 1.35;
	letter-spacing: 0.1em;
	color: #fff;
}

.footer .bottom_wrapper .business_items {
	margin-top: 5px;
	display: flex;
	gap: 36px;
	margin-bottom: 25px;
}

.footer .bottom_wrapper .business_item a {
	font-weight: 400;
	font-size: 14px;
	line-height: 1.35;
	letter-spacing: 0.1em;
	color: #F2F2F2;
	padding: 5px 5px 5px 0;
}

.footer .bottom_wrapper .nav_items {
	display: flex;
	justify-content: space-between;
}

.footer .bottom_wrapper .nav_item a {
	font-weight: 700;
	font-size: 14px;
	line-height: 1.35;
	letter-spacing: 0.1em;
	color: #fff;
	padding: 5px;
}

.footer .middle_container {
	padding-top: 60px;
}

.footer .search_title {
	font-weight: 700;
	font-size: 13px;
	line-height: 1.30;
	letter-spacing: 0.1em;
	color: #fff;
}

.footer .link_items {
	margin-top: 10px;
	display: flex;
	max-width: 100%;
	flex-wrap: wrap;
	gap: 10px 39px;
}

.footer .link_item a {
	font-weight: 400;
	font-size: 13px;
	line-height: 1.30;
	letter-spacing: 0.1em;
	color: #F2F2F2;
}

.footer .middle_container .wrapper+.wrapper {
	margin-top: 25px;
}

.footer .bottom_container {
	margin-top: 75px;
}

.footer .bottom_container .box {
	display: flex;
	gap: 48px;
	padding-bottom: 11px;
	border-bottom: 2px solid #B4A590;
}

.footer .bottom_container .box a {
	font-weight: 700;
	font-size: 12px;
	line-height: 1.33;
	letter-spacing: 0.1em;
	color: #fff;
}

.footer .bottom_container .copyright {
	margin-top: 9px;
	font-weight: 400;
	font-size: 12px;
	line-height: 1.75;
	letter-spacing: 0.04em;
	color: #E3E3E3;
}

.footer a {
	transition: all 0.3s ease;
}

/*下部ページ　不動産でお悩みの方へ*/

.support {
	padding-top: 65px;
	padding-bottom: 99px;
}

.support .title_box {
	text-align: center;
}

.support .title_box .title {
	position: relative;
	display: inline-block;
	font-weight: 700;
	font-size: 32px;
	line-height: 1.28;
	letter-spacing: 0.1em;
	padding-bottom: 8px;
	padding-left: 10px;
	padding-right: 10px;
}

.support .title_box .title::before {
	content: "";
	position: absolute;
	background: url(../image/line-green.png) no-repeat center center / cover;
	aspect-ratio: 862 / 16;
	width: 100%;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
}

.support .title_box .title .brown {
	color: #8D6A3A;
}

.support .title_box .title .big {
	font-size: 46px;
	line-height: 0.89;
}

.support .lead {
	margin-top: 15px;
	font-weight: 400;
	font-size: 14px;
	line-height: 1.64;
	letter-spacing: 0.14em;
	max-width: 632px;
	margin-inline: auto;
	text-align: center;
}

.support .cards {
	margin-top: 36px;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 50px 30px;
}

.support .card .image {
	position: relative;
}

.support .card .image .number {
	position: absolute;
	top: 0;
	left: 15px;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 50px;
	height: 50px;
	background-color: #A37B44;
	border-radius: 0 0 12px 12px;
	font-weight: 700;
	font-family: "Roboto", sans-serif;
	font-size: 28px;
	line-height: 1.32;
	letter-spacing: 0;
	color: #fff;
}

.support .card .image img {
	aspect-ratio: 360 / 200;
	width: 100%;
	height: auto;
	object-fit: cover;
	border-radius: 16px;
}

.support .card .title {
	font-weight: 700;
	font-size: 20px;
	line-height: 2.65;
	letter-spacing: 0.12em;
}

.support .card .text {
	font-weight: 400;
	font-size: 13px;
	line-height: 1.53;
	letter-spacing: 0.14em;
	color: #7B7B7B;
}

.support .card .title span {
	color: #8D6A3A;
}

/*about*/

.about_service_bg {
	position: relative;
	padding-top: 60px;
	padding-bottom: 60px;
}

.about_service_bg::before {
	content: "";
	position: absolute;
	background: url(../image/page-bg-top.png) no-repeat center center / cover;
	aspect-ratio: 2880 / 240;
	width: 100%;
	top: 0;
	left: 0;
}

.about_service_bg::after {
	content: "";
	position: absolute;
	background: url(../image/page-bg-bottom.png) no-repeat center center / cover;
	aspect-ratio: 2880 / 240;
	width: 100%;
	bottom: 0;
	left: 0;
	z-index: -1;
}

.about_service_bg .page_bg {
	position: relative;
	padding-bottom: 120px;
}

.about_service_bg .page_bg::before {
	content: "";
	position: absolute;
	background: url(../image/page-bg.png) no-repeat center center / cover;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: -1;
}

.about_service_bg .page_bg::after {
	content: "";
	position: absolute;
	background: url(../image/leaf-img5.png) no-repeat center center / cover;
	aspect-ratio: 143 / 153;
	width: 71px;
	height: auto;
	bottom: -20px;
	left: 100px;
	z-index: 1;
}

.about_service_bg .wrap {
	position: relative;
}

.about {
	position: relative;
	padding-top: 137px;
}

.about::before {
	content: "";
	position: absolute;
	background: url(../image/leaf-img3.png) no-repeat center center / cover;
	aspect-ratio: 148 / 158;
	width: 74px;
	height: auto;
	top: 170px;
	right: 245px;
	z-index: -1;
}

.about::after {
	content: "";
	position: absolute;
	background: url(../image/leaf-img4.png) no-repeat center center / cover;
	aspect-ratio: 280 / 267;
	width: 151px;
	height: auto;
	top: 550px;
	left: 115px;
	z-index: -1;
}

.about .img1_box {
	position: absolute;
	top: 50px;
	left: -100px;
	border-radius: 20px;
}

.about .img1 {
	position: relative;
	width: 300px;
}

.about .img1 img {
	aspect-ratio: 300 / 250;
	width: 100%;
	height: auto;
	object-fit: cover;
	border-radius: 20px;
}

.about .img1::before {
	content: "";
	position: absolute;
	background-color: #E6EFC2;
	border-radius: 20px;
	width: 100%;
	height: 100%;
	top: 8px;
	left: 8px;
	z-index: -1;
}

.about .title {
	text-align: center;
}

.about .title_en {
	font-family: "Patua One", serif;
	font-weight: 400;
	font-size: 22px;
	line-height: 1.36;
	letter-spacing: 0;
	color: #7B6D64;
}

.about .title_jp {
	display: inline-block;
	position: relative;
	font-weight: 700;
	font-size: 13px;
	line-height: 1.30;
	letter-spacing: 0.12em;
	color: #fff;
}

.about .title_jp::before {
	content: "";
	position: absolute;
	background: url(../image/title-ribbon-green.png) no-repeat center center / cover;
	aspect-ratio: 520 / 74;
	width: 260px;
	top: -5px;
	left: 50%;
	transform: translateX(-50%);
	z-index: -1;
}

.about .head {
	margin-top: 22px;
	font-weight: 700;
	font-size: 33px;
	line-height: 1.63;
	letter-spacing: 0.14em;
	text-align: center;
}

.about .head span {
	font-size: 41px;
	line-height: 1.31;
	color: #8D6A3A;
}

.about .wrapper {
	position: relative;
	margin-top: 24px;
	text-align: center;
}

.about .lead {
	display: inline-block;
	position: relative;
	font-weight: 700;
	font-size: 20px;
	line-height: 1.35;
	letter-spacing: 0.12em;
	color: #5C2B0A;
	padding-bottom: 7px;
}

.about .lead::before {
	content: "";
	position: absolute;
	background: url(../image/line-green.png) no-repeat center center / cover;
	aspect-ratio: 862 / 16;
	width: 450px;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	z-index: -1;
}

.about .text {
	margin-top: 21px;
	font-weight: 600;
	font-size: 14px;
	line-height: 2;
	letter-spacing: 0.14em;
	color: #4D4D4D;
}

.about .btn {
	margin-top: 47px;
	width: 250px;
	margin-inline: auto;
}

.about .img2_box {
	position: absolute;
	bottom: 0;
	right: 0;

}

.about .img2 {
	position: relative;
	width: 190px;
}

.about .img2::before {
	content: "";
	position: absolute;
	background-color: #E1F0E3;
	border-radius: 20px;
	width: 100%;
	height: 100%;
	top: -8px;
	right: 8px;
	z-index: -1;
}

.about .img2 img {
	aspect-ratio: 190 / 190;
	width: 100%;
	height: auto;
	object-fit: cover;
	border-radius: 20px;
}

.page_support .page_cta {
	margin-top: 130px;
	padding-bottom: 10px;
}

.thought {
	padding-top: 140px;
}

.thought .wrapper {
	display: flex;
	gap: 99px;
	align-items: center;
}

.thought .image {
	position: relative;
	flex: 0 0 530px;
	border-radius: 20px;
}

.thought .image::before {
	content: "";
	position: absolute;
	background-color: #A4BE39;
	border-radius: 20px;
	width: 100%;
	height: 100%;
	top: 10px;
	left: 10px;
	z-index: -1;
}

.thought .image::after {
	content: "";
	position: absolute;
	background: url(../image/leaf-img8.png) no-repeat center center / cover;
	aspect-ratio: 97 / 75;
	width: 97px;
	height: auto;
	bottom: -30px;
	right: -35px;
	z-index: 1;
}

.thought .image img {
	aspect-ratio: 530 / 430;
	width: 100%;
	height: auto;
	object-fit: cover;
	border-radius: 20px;
}

.thought .body {
	flex-grow: 1;
}

.thought .title_box {
	position: relative;
	text-align: left;
}

.thought .title_box::before {
	content: "";
	position: absolute;
	background: url(../image/leaf-img5.png) no-repeat center center / cover;
	aspect-ratio: 143 / 153;
	width: 53px;
	top: 40px;
	right: 0;
}

.thought .title_box .head {
	text-align: left;
	font-weight: 700;
	font-size: 16px;
	line-height: 3.06;
	letter-spacing: 0.12em;
}

.thought .title_box .title {
	position: relative;
	display: inline-block;
	text-align: left;
	margin-top: 19px;
	font-weight: 700;
	font-size: 24px;
	line-height: 1.45;
	letter-spacing: 0.16em;
	padding-right: 20px;
	padding-bottom: 10px;
	color: #4B2307;
}

.thought .title_box .title::before {
	content: "";
	position: absolute;
	background: url(../image/line-green2.png) no-repeat center center / cover;
	aspect-ratio: 862 / 16;
	width: 100%;
	bottom: 0;
	left: 0;
}

.thought .text {
	margin-top: 20px;
	font-weight: 600;
	font-size: 14px;
	line-height: 1.85;
	letter-spacing: 0.14em;
	color: #4D4D4D;
}

.page_cta {
	margin-top: 60px;
	padding-bottom: 60px;
}

.page_cta .cta {
	position: relative;
}

.page_cta a {
	transition: all 0.3s ease;
}

.page_cta .cta::before {
	content: "";
	position: absolute;
	background: url(../image/leaf-img2.png) no-repeat center center / cover;
	aspect-ratio: 141 / 182;
	width: 70px;
	height: auto;
	bottom: -35px;
	right: -20px;
	z-index: 1;
}

.service {
	padding-top: 127px;
}

.service .common_section_title {
	text-align: center;
}

.service .lead {
	margin-top: 17px;
	font-weight: 400;
	text-align: center;
	font-size: 14px;
	line-height: 1.71;
	letter-spacing: 0.14em;
	color: #4D4D4D;
	max-width: 632px;
	margin-inline: auto;
}

.service .cards {
	margin-top: 52px;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
}

.service .card {
	position: relative;
	background-color: #fff;
	border-radius: 16px;
}

.service .card a {
	display: block;
	padding: 27px 16px 23px;
}

.service .card .head {
	position: absolute;
	top: -14px;
	left: 50%;
	transform: translateX(-50%);
	border-radius: 14px;
	background-color: #89BE9C;
	color: #fff;
	font-family: "Patua One", serif;
	font-weight: 400;
	font-size: 17px;
	line-height: 1.29;
	letter-spacing: 0;
	padding: 2px 27px 4px;
}

.service .card:nth-child(even) .head {
	background-color: #B1CC8F;
}

.service .card .title_box {
	text-align: center;
}

.service .card .title {
	position: relative;
	display: inline-block;
	font-weight: 700;
	font-size: 22px;
	line-height: 2.40;
	letter-spacing: 0.14em;
	padding-left: 4px;
	padding-right: 4px;
	color: #2B2B2B;
}

.service .card .title::before {
	content: "";
	position: absolute;
	background: url(../image/line-green2.png) no-repeat center center / cover;
	aspect-ratio: 328 / 8;
	width: 100%;
	bottom: 0;
	left: 0;
}

.service .card .title .brown {
	color: #8D6A3A;
}

.service .card .title .big {
	font-size: 28px;
	line-height: 1.89;
}

.service .card .body {
	margin-top: 10px;
}

.service .card .img {
	margin-top: 15px;
	border-radius: 14px;
	overflow: hidden;
}

.service .card .img img {
	aspect-ratio: 263 / 140;
	width: 100%;
	height: auto;
	object-fit: cover;
	transition: all 0.3s ease;
	transform: scale(1);
}

.service .card .text {
	font-weight: 400;
	font-size: 12px;
	line-height: 1.5;
	letter-spacing: 0.14em;
	color: #4D4D4D;
}

.service .card .btn {
	position: relative;
	margin-top: 7px;
}

.service .card .btn::before {
	content: "";
	position: absolute;
	background-color: #8D6A3A;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	top: 50%;
	transform: translateY(-50%);
	right: 0;
	transition: all 0.3s ease;
}

.service .card .btn::after {
	content: "";
	position: absolute;
	background-color: #fff;
	width: 8px;
	height: 11px;
	clip-path: polygon(0 0, 0% 100%, 100% 50%);
	top: 50%;
	transform: translateY(-50%);
	right: 5px;
}

.service .card .btn p {
	position: relative;
	padding-top: 16px;
	padding-bottom: 16px;
	font-weight: 700;
	font-size: 14px;
	line-height: 1.35;
	letter-spacing: 0.1em;
	color: #2B2B2B;
	border-bottom: 2px dotted #ADA293;
	width: 100%;
	transition: all 0.3s ease;
}

.recommended {
	padding-top: 97px;
	padding-bottom: 37px;
}

.recommended .common_section_title {
	text-align: center;
}

.recommended .common_section_title .title_jp {
	position: relative;
	padding-bottom: 8px;
}

.recommended .common_section_title .title_jp::before {
	content: "";
	position: absolute;
	background: url(../image/line-green4.png) no-repeat center center / cover;
	aspect-ratio: 764 / 12;
	max-width: 262px;
	width: 100%;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
}

.recommended .lead {
	margin-top: 19px;
	font-weight: 400;
	text-align: center;
	font-size: 14px;
	line-height: 1.71;
	letter-spacing: 0.14em;
	color: #4D4D4D;
}

.recommended .wrapper {
	margin-top: 41px;
}

.recommended .cards {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 30px;
}

.recommended .card {
	position: relative;
	box-shadow: 0 2px 4px #0000000F;
	border-radius: 14px;

}

.recommended .card::before {
	content: "";
	position: absolute;
	background-color: #fff;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	top: 50%;
	transform: translateY(-50%);
	right: 5px;
	transition: all 0.3s ease;
	z-index: 1;
}

.recommended .card::after {
	content: "";
	position: absolute;
	background-color: #A4BE39;
	width: 8px;
	height: 11px;
	clip-path: polygon(0 0, 0% 100%, 100% 50%);
	top: 50%;
	right: 10px;
	transform: translateY(-50%);
	z-index: 2;
}

.recommended .card a {
	display: block;
	position: relative;
	display: flex;
	gap: 30px;

}

.recommended .card .img {
	flex: 0 0 200px;
	border-radius: 12px;
	overflow: hidden;
}

.recommended .card .body {
	position: relative;
	flex: 1;
	padding-right: 40px;
}

.recommended .card .body::before {
	content: "";
	position: absolute;
	background-color: #A4BE39;
	width: 30px;
	height: 100%;
	border-radius: 0 14px 14px 0;
	top: 0;
	right: 0;
}

.recommended .card .img img {
	aspect-ratio: 1 / 1;
	width: 100%;
	height: auto;
	object-fit: cover;
	transform: scale(1);
	transition: all 0.3s ease;
}

.recommended .card .category {
	margin-top: 17px;
	font-weight: 700;
	font-size: 13px;
	line-height: 1.30;
	letter-spacing: 0.1em;
	color: #A4BE39;
}

.recommended .card .name {
	margin-top: 4px;
	font-weight: 700;
	font-size: 18px;
	line-height: 1.33;
	letter-spacing: 0.1em;
	color: #2B2B2B;
}

.recommended .card .price_pc {
	margin-top: 5px;
	font-family: "Roboto", sans-serif;
	font-weight: 700;
	font-size: 26px;
	line-height: 1.33;
	letter-spacing: 0;
	color: #A0BC2B;
}

.recommended .card .price_pc span {
	font-size: 15px;
	line-height: 0.76;
}

.recommended .card .address_box {
	background-color: #FAFCF4;
	border-radius: 10px;
	display: inline-block;
	padding: 10px 20px 10px 15px;
	margin-top: 7px;
}

.recommended .card .address {
	position: relative;
	font-weight: 400;
	font-size: 12px;
	line-height: 1.33;
	letter-spacing: 0.1em;
	color: #818181;
	padding-left: 27px;
}

.recommended .card .address::before {
	content: "";
	position: absolute;
	background: url(../image/icon-marker-green.png) no-repeat center center / cover;
	aspect-ratio: 30 / 44;
	width: 14px;
	top: 2px;
	left: 0;
}

.recommended .card .access {
	position: relative;
	margin-top: 6px;
	font-weight: 400;
	font-size: 12px;
	line-height: 1.33;
	color: #818181;
	padding-left: 27px;
}

.recommended .card .access>* {
	display: inline;
}

.recommended .card .access::before {
	content: "";
	position: absolute;
	background: url(../image/icon-train-green.png) no-repeat center center / cover;
	aspect-ratio: 29 / 41;
	width: 14px;
	top: -2px;
	left: 0;
}

.recommended .card .price_sp {
	display: none;
}

.recommended .btn {
	margin-top: 40px;
	text-align: center;
}

.recommended .btn .common_btn {
	display: inline-block;
	min-width: 250px;
	width: auto;
}

.faq {
	padding-top: 80px;
	padding-bottom: 40px;
}

.faq .common_section_title {
	text-align: center;
}

.faq .lead {
	text-align: center;
	margin-top: 14px;
	font-weight: 400;
	font-size: 14px;
	line-height: 1.71;
	letter-spacing: 0.14em;
	color: #4D4D4D;
}

.faq .cards {
	margin-top: 40px;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 30px;
}

.faq .card {
	list-style: none;
	text-align: center;
}

.faq .card .title {
	display: inline-block;
	position: relative;
	font-weight: 700;
	font-size: 20px;
	line-height: 2.9;
	letter-spacing: 0.12em;
	padding-left: 8px;
	padding-right: 8px;
}

.faq .card .title::before {
	content: "";
	position: absolute;
	background: url(../image/line-green3.png) no-repeat center center / cover;
	aspect-ratio: 484 / 14;
	width: 100%;
	height: 3px;
	bottom: 8px;
	left: 0;
}

.faq .card .title .big {
	font-size: 30px;
	line-height: 1.93;
	color: #8D6A3A;
}

.faq .card .title .middle {
	font-size: 24px;
	line-height: 2.41;
	letter-spacing: 0.12em;
	color: #8D6A3A;
}

.faq .card .items {
	margin-top: 11px;
	display: grid;
	grid-template-columns: repeat(1, 1fr);
	gap: 15px;
}

.faq .card .item {
	padding: 18px 15px 17px;
	border-radius: 16px;
	background-color: #F9FCEF;
}

.faq .card .item .head {
	position: relative;
	text-align: left;
	font-weight: 700;
	font-size: 16px;
	line-height: 1.43;
	letter-spacing: 0.12em;
	padding-left: 61px;
	min-height: 44px;
	display: flex;
	align-items: center;
}

.faq .card .item .head::before {
	content: "Q";
	position: absolute;
	font-family: "Roboto", sans-serif;
	font-weight: 900;
	font-size: 30px;
	line-height: 1.3;
	letter-spacing: 0;
	color: #8D6A3A;
	top: 4px;
	left: 14px;
	z-index: 2;
}

.faq .card .item .head::after {
	content: "";
	position: absolute;
	background-color: #fff;
	border-radius: 50%;
	width: 50px;
	height: 50px;
	top: 0;
	left: 0;
	z-index: 1;
}

.faq .card .item .text {
	position: relative;
	margin-top: 13px;
	min-height: 80px;
	background-color: #fff;
	border-radius: 12px;
	padding: 13px 16px 13px 53px;
	font-weight: 400;
	font-size: 12px;
	line-height: 1.58;
	letter-spacing: 0.1em;
	color: #6F6F6F;
	text-align: left;
}

.faq .card .item .text::before {
	content: "A.";
	position: absolute;
	font-family: "Roboto", sans-serif;
	font-weight: 900;
	font-size: 26px;
	line-height: 1.3;
	letter-spacing: 0;
	color: #EDB15E;
	top: 10px;
	left: 15px;
	z-index: 2;
}

.faq .cards .card:nth-child(even) .item {
	background-color: #F4FAF4;
}

/*会社概要*/
.page_company .philosophy {
	padding-top: 80px;
	padding-bottom: 40px;
	overflow: hidden;
}

.page_company .philosophy .wrap_wide {
	max-width: 1440px;
	width: 100%;
	margin-inline: auto;
}

.page_company .philosophy .common_section_title {
	text-align: center;
}

.page_company .philosophy .wrapper {
	margin-top: 40px;
	padding-left: 150px;
	display: flex;
	gap: 100px;
	align-items: center;
}

.page_company .philosophy .text_box {
	width: 60%;
}

.page_company .philosophy .text {
	font-weight: 600;
	font-size: 14px;
	line-height: 2;
	letter-spacing: 0.14em;
}

.page_company .philosophy .text.margin_top {
	margin-top: 20px;
}

.page_company .philosophy .box {
	margin-top: 20px;
	background-color: #F5FFF5;
	border-radius: 8px;
	padding: 10px 20px;
	display: block;
	max-width: 550px;
}

.page_company .philosophy .box .head {
	color: #A4BE39;
	font-family: "Patua One", serif;
	font-weight: 700;
	font-size: 16px;
	line-height: 1.25;
	letter-spacing: 0.1em;
}

.page_company .philosophy .box .text {
	margin-top: 6px;
	font-weight: 600;
	font-size: 14px;
	line-height: 1.57;
	letter-spacing: 0.14em;
	color: #4D4D4D;
}


.page_company .philosophy .image_box {
	width: 40%;
}

.page_company .philosophy .image_box img {
	aspect-ratio: 780 / 1260;
	width: 100%;
	height: auto;
	object-fit: cover;
	border-radius: 20px;
}

.page_company .message {
	padding-top: 100px;
	padding-bottom: 40px;
}

.page_company .message .common_section_title {
	text-align: center;
}

.page_company .message .wrapper {
	margin-top: 40px;
	position: relative;
	display: flex;
	align-items: center;
}

.page_company .message .image_box {
	position: relative;
	width: 35%;
	border-radius: 20px;
	aspect-ratio: 1;
}

.page_company .message .image_box::before {
	content: "";
	position: absolute;
	background-color: #A4BE39;
	width: 100%;
	height: 100%;
	top: 10px;
	left: 10px;
	border-radius: 20px;
	z-index: -1;
}

.page_company .message .image_box img {
	width: 100%;
	height: auto;
	object-fit: cover;
	border-radius: 20px;
}

.page_company .message .text_box {
	width: 65%;
	padding-left: 40px;
}

.page_company .message .text {
	font-weight: 600;
	font-size: 14px;
	line-height: 2;
	letter-spacing: 0.14em;
}

.page_company .message .text span {
	font-weight: 700;
}

/*会社概要*/
.page_company .overview {
	padding-top: 80px;
	padding-bottom: 40px;
}

.page_company .overview .common_section_title {
	text-align: center;
}

.page_company .overview table {
	margin-top: 40px;
	width: 100%;
	border-collapse: collapse;
	max-width: 1000px;
	margin-inline: auto;
}

.page_company .overview table tr {
	width: 100%;
	border-bottom: 2px dashed #E3E3E3;
}

.page_company .overview table th {
	padding: 20px;
	width: 30%;
	font-weight: 700;
	font-size: 16px;
	line-height: 1.25;
	letter-spacing: 0.05em;
}

.page_company .overview table td {
	padding: 20px;
	width: 70%;
	font-weight: 500;
	font-size: 16px;
	line-height: 1.25;
	letter-spacing: 0.05em;
}

/*不動産の購入*/

.page_purchase .flow {
	padding-top: 80px;
	padding-bottom: 40px;
}

.page_purchase .flow .common_section_title {
	text-align: center;
}

.page_purchase .flow .lists {
	margin-top: 80px;
}

.page_purchase .flow .list {
	position: relative;
}

.page_purchase .flow .list:not(:last-child):before {
	content: "";
	position: absolute;
	background-color: #52A88E;
	width: 80px;
	height: 30px;
	clip-path: polygon(50% 100%, 0 0, 100% 0);
	bottom: -70px;
	left: 50%;
	transform: translateX(-50%);
}

.page_purchase .flow .list+.list {
	margin-top: 120px;
}

.page_purchase .flow .list .title_box {
	position: relative;
	display: flex;
	align-items: center;
	padding: 15px 20px;
	background-color: #A4BE39;
	border-radius: 10px;
}

.page_purchase .flow .list .title_box::before {
	content: "";
	position: absolute;
	background: url(../image/leaf-img8.png) no-repeat center center / cover;
	aspect-ratio: 196 / 151;
	width: 80px;
	top: -20px;
	right: 0;
}

.page_purchase .flow .list:nth-child(even) .title_box::before {
	background: url(../image/leaf-img3.png) no-repeat center center / cover;
	aspect-ratio: 148 / 158;
	width: 60px;
	right: 20px;
}


.page_purchase .flow .list .title_en {
	position: relative;
	font-family: "Patua One", serif;
	font-weight: 400;
	font-size: 16px;
	line-height: 1.36;
	letter-spacing: 0;
	color: #fff;
	padding-left: 35px;
}

.page_purchase .flow .list .title_en::before {
	content: "";
	position: absolute;
	background: url(../image/icon-house.png) no-repeat center center / cover;
	aspect-ratio: 69 / 60;
	width: 30px;
	top: 50%;
	transform: translateY(-50%);
	left: 0;
}

.page_purchase .flow .list .title_jp {
	display: inline-block;
	position: relative;
	font-weight: 700;
	font-size: 20px;
	line-height: 1.30;
	letter-spacing: 0.12em;
	color: #fff;
	padding-left: 20px;
}

.page_purchase .flow .list .body {
	margin-top: 15px;
	display: flex;
	align-items: center;
}

.page_purchase .flow .list .body .image {
	flex: 0 0 300px;
}

.page_purchase .flow .list .body .image img {
	aspect-ratio: 3 / 2;
	width: 100%;
	height: auto;
	object-fit: cover;
	border-radius: 10px;
}

.page_purchase .flow .list .text {
	font-weight: 600;
	font-size: 16px;
	line-height: 1.57;
	letter-spacing: 0.14em;
	color: #4D4D4D;
	padding-left: 20px;
	padding-right: 20px;
}

/*スタッフ紹介*/

.page_staff .common_section_title {
	text-align: center;
}

.page_staff .staff_archive {
	padding-top: 80px;
	padding-bottom: 40px;
}

.page_staff .staff_list {
	position: relative;
	margin-top: 60px;
	max-width: 840px;
	margin-inline: auto;
}

.page_staff .staff_list::before {
	content: "";
	position: absolute;
	background: url(../image/leaf-img6.png) no-repeat center center / cover;
	aspect-ratio: 269 / 220;
	width: 120px;
	height: auto;
	top: -120px;
	right: -100px;
	z-index: 1;
}

.page_staff .staff_list::after {
	content: "";
	position: absolute;
	background: url(../image/leaf-img4.png) no-repeat center center / cover;
	aspect-ratio: 280 / 267;
	width: 80px;
	height: auto;
	bottom: -80px;
	left: -100px;
	z-index: 1;
}

.page_staff .staff_list .items {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 30px;
}

.page_staff .staff_list .item a {
	display: block;
	position: relative;
}

.page_staff .staff_list .item .image_box {
	position: relative;
	border-radius: 20px;
}

.page_staff .staff_list .item .image_box::before {
	content: "";
	position: absolute;
	background-color: #E6EFC2;
	width: 100%;
	height: 100%;
	top: 8px;
	left: 8px;
	border-radius: 20px;
	z-index: -1;
}

.page_staff .staff_list .item:nth-child(even) .image_box::before {
	background-color: #E1F0E3;
}

.page_staff .staff_list .item .image {
	border-radius: 20px;
	overflow: hidden;
}

.page_staff .staff_list .item .image img {
	aspect-ratio: 3 / 4;
	width: 100%;
	height: auto;
	object-fit: cover;
	transition: all 0.3s ease;
	transform: scale(1);
}

.page_staff .staff_list .item .text_box {
	margin-top: 16px;
}

.page_staff .staff_list .item .text_box .position {
	font-weight: 700;
	font-size: 16px;
	line-height: 1.43;
	letter-spacing: 0.1em;
	color: #7B6D64;
}

.page_staff .staff_list .item .text_box .name {
	margin-top: 4px;
	font-weight: 700;
	font-size: 20px;
	line-height: 1.33;
	letter-spacing: 0.1em;
	color: #2B2B2B;
}

.page_staff .staff_list .item .text_box .text {
	font-family: "Patua One", serif;
	font-weight: 400;
	font-size: 14px;
	line-height: 1.57;
	letter-spacing: 0;
	color: #4D4D4D;
}

/*スタッフ紹介　詳細*/

.page_staff_single .staff_single {
	padding-top: 80px;
	padding-bottom: 80px;
}

.page_staff_single .staff_single .staff_box {
	display: flex;
	max-width: 840px;
	margin-inline: auto;
}

.page_staff_single .staff_single .staff_box .image {
	width: 30%;
}

.page_staff_single .staff_single .staff_box .image img {
	border-radius: 16px;
}

.page_staff_single .staff_single .staff_box .text_box {
	width: 70%;
	padding-left: 60px;
}

.page_staff_single .staff_single .staff_box .text_box .head {
	font-family: "Patua One", serif;
	font-weight: 400;
	font-size: 36px;
	line-height: 1.25;
	letter-spacing: 0;
	color: #52A88E;
}

.page_staff_single .staff_single .staff_box .text_box .lists {
	margin-top: 30px;
}

.page_staff_single .staff_single .staff_box .text_box .list {
	display: flex;
	align-items: center;
	padding-top: 15px;
	padding-bottom: 15px;
	border-bottom: 1px solid #E6E6E6;
}

.page_staff_single .staff_single .staff_box .text_box .list:first-child {
	padding: 0;
}

.page_staff_single .staff_single .staff_box .text_box .list .main_text {
	font-weight: 700;
	font-size: 20px;
	line-height: 1.5;
	letter-spacing: 0.05em;
	color: #A37B44;
	margin-bottom: 1em;
}

.page_staff_single .staff_single .staff_box .text_box .list .label {
	flex: 0 0 100px;
	font-weight: 700;
	font-size: 14px;
	line-height: 1.25;
	letter-spacing: 0.05em;
	color: #4D4D4D;
}

.page_staff_single .staff_single .staff_box .text_box .list .value {
	flex: 1;
	font-weight: 700;
	font-size: 16px;
	line-height: 1.25;
	letter-spacing: 0.05em;
}

.page_staff_single .staff_message {
	position: relative;
	padding-top: 80px;
	padding-bottom: 120px;
	background-color: rgba(250, 250, 250, 0.8);
}

.page_staff_single .staff_message::before {
	content: "";
	position: absolute;
	background: url(../image/leaf-img3.png) no-repeat center center / cover;
	aspect-ratio: 148 / 158;
	width: 74px;
	height: auto;
	top: -50px;
	right: 80px;
}

.page_staff_single .staff_message::after {
	content: "";
	position: absolute;
	background: url(../image/leaf-img7.png) no-repeat center center / cover;
	aspect-ratio: 241 / 197;
	width: 120px;
	height: auto;
	bottom: 10px;
	left: 100px;
}

.page_staff_single .staff_message .container {
	max-width: 840px;
	margin-inline: auto;
}

.page_staff_single .staff_message .box {
	display: flex;
	align-items: center;
	gap: 80px;
	background-color: #fff;
	border-radius: 16px;
	padding: 20px;
}

.page_staff_single .staff_message .box+.box {
	margin-top: 40px;
}

.page_staff_single .staff_message .box:nth-child(even) {
	flex-direction: row-reverse;
}

.page_staff_single .staff_message .text_box {
	flex-grow: 1;
}

.page_staff_single .staff_message .image {
	width: 40%;
	flex-shrink: 0;
}

.page_staff_single .staff_message .image img {
	border-radius: 16px;
	aspect-ratio: 4 / 3;
	width: 100%;
	height: auto;
	object-fit: cover;
}

.page_staff_single .staff_message .head {
	display: inline-block;
	position: relative;
	padding-bottom: 6px;
	padding-right: 10px;
	font-weight: 700;
	font-size: 24px;
	line-height: 1.33;
	letter-spacing: 0.1em;
	color: #8D6A3A;
}

.page_staff_single .staff_message .head::before {
	content: "";
	position: absolute;
	background: url(../image/line-green3.png) no-repeat center center / cover;
	aspect-ratio: 484 / 14;
	width: 100%;
	height: auto;
	bottom: 0;
	left: 0;
}

.page_staff_single .staff_message .text {
	margin-top: 20px;
	font-weight: 400;
	font-size: 14px;
	line-height: 1.57;
	letter-spacing: 0.14em;
	color: #4D4D4D;
}

.common_page_wrap_staff {
	padding-bottom: 0;
}

/*リノベーションについて*/

.page_renovation .difference {
	padding-top: 80px;
	padding-bottom: 80px;
}

.page_renovation .difference .common_section_title {
	text-align: center;
}

.page_renovation .difference .wrapper {
	margin-top: 80px;
}

.page_renovation .difference .box {
	display: flex;
	align-items: center;
	gap: 40px;
}

.page_renovation .difference .box:nth-child(even) {
	flex-direction: row-reverse;
}

.page_renovation .difference .box+.box {
	margin-top: 60px;
}

.page_renovation .difference .box .image {
	width: 40%;
}

.page_renovation .difference .box .image img {
	border-radius: 16px;
	aspect-ratio: 3 / 2;
	width: 100%;
	height: auto;
	object-fit: cover;
}

.page_renovation .difference .box .text_box {
	width: 60%;
}

.page_renovation .difference .box .text_box .title {
	font-weight: 700;
	font-size: 28px;
	line-height: 1.30;
	letter-spacing: 0.12em;
	color: #8D6A3A;
}

.page_renovation .difference .box .text_box .text {
	margin-top: 20px;
	font-weight: 400;
	font-size: 16px;
	line-height: 1.57;
	letter-spacing: 0.14em;
	color: #4D4D4D;
}

.page_renovation .construction_flow {
	padding-top: 80px;
	padding-bottom: 80px;
	background-color: rgba(250, 250, 250, 0.8);
}

.page_renovation .construction_flow .common_section_title {
	text-align: center;
}

.page_renovation .construction_flow .lead {
	margin-top: 17px;
	text-align: center;
	font-weight: 400;
	font-size: 14px;
	line-height: 1.71;
	letter-spacing: 0.14em;
}

.page_renovation .construction_flow .cards {
	margin-top: 52px;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 60px 40px;
}

.page_renovation .construction_flow .card {
	position: relative;
	background-color: #fff;
	border-radius: 20px;
	box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.06);
	padding: 27px 18px 20px;
}

.page_renovation .construction_flow .card:not(:last-child):before {
	content: "";
	position: absolute;
	background-color: #A4BE39;
	width: 15px;
	height: 30px;
	clip-path: polygon(0 0, 0% 100%, 100% 50%);
	top: 50%;
	right: -30px;
}

.page_renovation .construction_flow .card .head {
	display: inline-block;
	position: absolute;
	top: -13px;
	left: 50%;
	transform: translateX(-50%);
	border-radius: 14px;
	background-color: #89BE9C;
	color: #fff;
	font-family: "Patua One", serif;
	font-weight: 400;
	font-size: 17px;
	line-height: 1.29;
	letter-spacing: 0;
	padding: 2px 27px 3px;
}

.page_renovation .construction_flow .card:nth-child(even) .head {
	background-color: #B1CC8F;
}

.page_renovation .construction_flow .card .title_box {
	text-align: center;
}

.page_renovation .construction_flow .card .title {
	position: relative;
	display: inline-block;
	text-align: center;
	font-weight: 700;
	font-size: 20px;
	line-height: 1.30;
	letter-spacing: 0.12em;
	color: #8D6A3A;
	padding-bottom: 4px;
	padding-left: 10px;
	padding-right: 10px;
}

.page_renovation .construction_flow .card .title::before {
	content: "";
	position: absolute;
	background: url(../image/line-green2.png) no-repeat center center / cover;
	aspect-ratio: 328 / 8;
	width: 100%;
	height: 3px;
	bottom: 0;
	left: 0;
}

.page_renovation .construction_flow .card .img {
	margin-top: 15px;
}

.page_renovation .construction_flow .card .img img {
	aspect-ratio: 263 / 140;
	width: 100%;
	height: auto;
	object-fit: cover;
	border-radius: 14px;
}

.page_renovation .construction_flow .card .body {
	margin-top: 10px;
}

.page_renovation .construction_flow .card .text {
	font-weight: 400;
	font-size: 14px;
	line-height: 1.58;
	letter-spacing: 0.14em;
	color: #4D4D4D;
}

.page_renovation .achievement {
	padding-top: 80px;
	padding-bottom: 80px;
}

.page_renovation .achievement .common_section_title {
	text-align: center;
}

.page_renovation .achievement .cards {
	margin-top: 30px;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 30px;
}

.page_renovation .achievement .card {
	position: relative;
	background-color: #fff;
	border-radius: 20px;
	box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.08);
	padding: 30px;
	position: relative;
}

.page_renovation .achievement .card a {
	position: absolute;
	inset: 0;
}

.page_renovation .achievement .card .images {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 10px;
}

.page_renovation .achievement .card .head {
	font-family: "Patua One", serif;
	font-weight: 700;
	font-size: 22px;
	line-height: 1.25;
	letter-spacing: 0;
	color: #7B6D64;
	text-align: center;
	padding-bottom: 8px;
}

.page_renovation .achievement .card .image img {
	aspect-ratio: 3 / 2;
	border-radius: 16px;
	width: 100%;
	height: auto;
	object-fit: cover;
}

.page_renovation .achievement .card .title {
	margin-top: 10px;
	font-weight: 700;
	font-size: 18px;
	line-height: 1.25;
	letter-spacing: 0.05em;
	color: #8D6A3A;
}

.page_renovation .achievement .card .text_comment {
	margin-top: 6px;
	background-color: rgba(250, 250, 250, 0.8);
	border-radius: 16px;
	font-weight: 400;
	font-size: 14px;
	line-height: 1.57;
	letter-spacing: 0.14em;
	color: #4D4D4D;
	padding: 15px;
}

.page_renovation .achievement .card .text_comment .letter {
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
}

.page_renovation .achievement .card .text {
	margin-top: 6px;
	font-weight: 400;
	font-size: 14px;
	line-height: 1.57;
	letter-spacing: 0.14em;
}

.page_renovation .achievement .btn_box {
	margin-top: 50px;
}

.page_renovation .achievement .btn {
	max-width: 350px;
	margin-inline: auto;
}

.page_renovation .plan_menu {
	padding-top: 80px;
	padding-bottom: 80px;
	background-color: rgba(250, 250, 250, 0.8);
}

.page_renovation .plan_menu .common_section_title {
	text-align: center;
}

.page_renovation .plan_menu .image {
	margin-top: 60px;
	max-width: 840px;
	margin-inline: auto;
}

.page_renovation .plan_menu .image img {
	aspect-ratio: 2 / 1;
	border-radius: 16px;
}

.page_renovation .plan_menu .wrapper {
	margin-top: 30px;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 30px;
	max-width: 840px;
	margin-inline: auto;
}

.page_renovation .plan_menu .wrapper .box {
	position: relative;
	background-color: #fff;
	border-radius: 20px;
	padding: 20px;
}

.page_renovation .plan_menu .wrapper .box::before {
	content: "";
	position: absolute;
	background-color: #E6EFC2;
	width: 100%;
	height: 100%;
	top: 6px;
	left: 6px;
	border-radius: 20px;
	z-index: -1;
}

.page_renovation .plan_menu .wrapper .box:nth-child(even)::before {
	background-color: #E1F0E3;
}

.page_renovation .plan_menu .wrapper .box .title {
	font-weight: 700;
	font-size: 20px;
	line-height: 1.30;
	letter-spacing: 0.12em;
	color: #8D6A3A;
}

.page_renovation .plan_menu .wrapper .box .price {
	font-family: "Roboto", sans-serif;
	font-weight: 700;
	margin-top: 10px;
	font-weight: 700;
	font-size: 20px;
	line-height: 1.25;
	letter-spacing: 0.05em;
	color: #A0BC2B;
}

.page_renovation .plan_menu .wrapper .box .price span {
	font-size: 32px;
}

.desktop {
	display: block;
}

.mobile {
	display: none;
}

.page_assessment .page_assessment_cont {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
}

.page_assessment .page_assessment_cont .assessment_btn {
	border-radius: 10px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: 20px;
	background-color: #fff;
	transition: .3s;
}

.page_assessment .page_assessment_cont .assessment_btn.mansion {
	border: 3px solid #A37B44;
	color: #A37B44;
}

.page_assessment .page_assessment_cont .assessment_btn.house {
	border: 3px solid #A4BE39;
	color: #A4BE39;
}

.page_assessment .page_assessment_cont .assessment_btn.land {
	border: 3px solid #52A88E;
	color: #52A88E;
}

.page_assessment .page_assessment_cont .assessment_btn.income {
	border: 3px solid #A29149;
	color: #A29149;
}

.page_assessment .page_assessment_cont .assessment_btn.mansion:hover {
	background-color: #A37B44;
	color: #fff;
}

.page_assessment .page_assessment_cont .assessment_btn.house:hover {
	background-color: #A4BE39;
	color: #fff;
}

.page_assessment .page_assessment_cont .assessment_btn.land:hover {
	background-color: #52A88E;
	color: #fff;
}

.page_assessment .page_assessment_cont .assessment_btn.income:hover {
	background-color: #A29149;
	color: #fff;
}


.page_assessment .page_assessment_cont .assessment_btn .icon {
	width: 55px;
	height: 55px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.page_assessment .page_assessment_cont .assessment_btn .icon svg {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.page_assessment .page_assessment_cont .assessment_btn .icon svg path,
.page_assessment .page_assessment_cont .assessment_btn .icon svg polygon {
	transition: .3s;
}

.page_assessment .page_assessment_cont .assessment_btn:hover .icon svg path,
.page_assessment .page_assessment_cont .assessment_btn:hover .icon svg polygon {
	fill: #fff !important;
}

.page_assessment .page_assessment_cont .assessment_btn .letter {
	font-size: 18px;
	margin-top: 1em;
	line-height: 1;
	text-align: center;
	font-weight: 700;
	letter-spacing: 0.04em;
}

.page_single_renovation .ttl {
	font-size: 24px;
	font-weight: 700;
	letter-spacing: .02em;
	line-height: 1.5;
	color: #000;
	margin-bottom: 1.5em;
	padding-bottom: .3em;
	border-bottom: 4px solid #A37B44;
}

.page_single_renovation .single_renovation_cont {
	display: grid;
	grid-template-columns: 1fr 350px;
	gap: 50px;
	align-items: flex-start;
}

.page_single_renovation .single_renovation_cont .ba_img_area {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 30px;
}

.page_single_renovation .single_renovation_cont .ba_img_area .inner_ttl {
	font-family: "Patua One", serif;
	font-weight: 700;
	font-size: 22px;
	line-height: 1.25;
	letter-spacing: 0;
	color: #7B6D64;
	text-align: center;
	margin-bottom: .5em;
}

.page_single_renovation .single_renovation_cont .ba_img_area .img_list .img {
	aspect-ratio: 4 / 3;
	border-radius: 16px;
	overflow: hidden;
	background-color: #f7f6f2;
	display: block;
}

.page_single_renovation .single_renovation_cont .ba_img_area .img_list .img img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.page_single_renovation .single_renovation_cont .ba_img_area .img_list .img+.img {
	margin-top: 20px;
}

.page_single_renovation .single_renovation_cont .text_area {
	padding: 20px;
	background-color: #F7F7F7;
	border-radius: 10px;
}

.page_single_renovation .single_renovation_cont .text_area .text {
	font-size: 15px;
	letter-spacing: .02em;
	line-height: 1.5;
	display: flex;
	align-items: flex-start;
	gap: .3em;
}

.page_single_renovation .single_renovation_cont .text_area .text+.text {
	margin-top: .4em;
}

.page_single_renovation .single_renovation_cont .text_area .text::before {
	content: "・";
	color: var(--main-color);
}

.page_single_renovation .single_renovation_cont .text_area .text_comment {
	margin-top: 1em;
	padding: 20px;
	background-color: #fff;
	border-radius: 10px;
	font-size: 16px;
	letter-spacing: .02em;
	line-height: 1.5;
}

#lightbox .lb-details {
	display: none;
}

.top_ban_area {
	padding-bottom: 120px;
	background-color: #F8F8F8;
}

.top_ban_area .flex_box {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 20px;
	width: 560px;
	margin: 0 auto;
}

.top_ban_area .flex_box .ban_link {
	display: block;
	width: 100%;
	transition: .3s;
}

.top_ban_area .flex_box .ban_link:hover {
	opacity: 0.7;
}

.top_ban_area .flex_box .ban_link img {
	width: 100%;
}

/* ホバーアクションまとめ */

@media(any-hover: hover) {

	.top_service .card:hover .img img {
		transform: scale(1.1);
	}

	.top_service .card:hover .btn::before {
		background-color: #52A88E;
	}

	.top_service .card:hover .btn p {
		color: #52A88E;
		border-color: #52A88E;
	}

	.btn a:hover.common_btn_request {
		background-color: #fff;
	}

	.btn a:hover.common_btn_request span {
		color: #A4BE39;
	}

	.btn a:hover.common_btn_request svg {
		fill: #A4BE39;
	}

	.btn a:hover.common_btn_request::before {
		background-color: #A4BE39;
	}

	.btn a:hover.common_btn_request::after {
		background-color: #fff;
	}

	.btn a:hover.common_btn_consultation {
		background-color: #fff;
	}

	.btn a:hover.common_btn_consultation span {
		color: #52A88E;
	}

	.btn a:hover.common_btn_consultation::before {
		background-color: #52A88E;
	}

	.btn a:hover.common_btn_consultation::after {
		background-color: #fff;
	}

	.btn a:hover.common_btn_consultation svg {
		fill: #52A88E;
	}

	.btn a:hover.common_btn_assessment {
		background-color: #fff;
	}

	.btn a:hover.common_btn_assessment span {
		color: #A37B44;
	}

	.btn a:hover.common_btn_assessment::before {
		background-color: #A37B44;
	}

	.btn a:hover.common_btn_assessment::after {
		background-color: #fff;
	}

	.btn a:hover.common_btn_assessment svg {
		fill: #A37B44;
	}


	.top_bg .cta a:hover {
		opacity: 0.7;
	}

	.top_cta a:hover {
		opacity: 0.7;
	}

	.common_btn:hover {
		background-color: #fff;
	}

	.common_btn:hover span {
		color: #8D6A3A;
	}

	.common_btn:hover span::before {
		background-color: #8D6A3A;
	}

	.common_btn:hover span::after {
		background-color: #fff;
	}

	.top_property .price_down .btn .common_btn:hover {
		background-color: #fff;
		border-color: #A29149;
	}

	.top_property .price_down .btn .common_btn:hover span {
		color: #A29149;
	}

	.top_property .price_down .btn .common_btn:hover span::before {
		background-color: #A29149;
	}

	.top_property .price_down .btn .common_btn:hover span::after {
		background-color: #fff;
	}

	.top_search .area_grid a:hover {
		background-color: #fff;
		color: #9FBC29;
	}

	.top_search .btn_box a:hover .img img {
		transform: scale(1.1);
	}

	.top_search .btn_box a:hover .title_box .title_jp {
		color: #9FBC29;
	}

	.top_search .btn_box a:hover .title_box .title_en {
		color: #9FBC29;
	}

	.top_recommended .card:hover .img img {
		transform: scale(1.1);
	}

	.top_campaign .card:hover .image img {
		transform: scale(1.1);
	}

	.top_campaign .card:hover .title {
		color: #A4BE39;
	}

	.top_campaign .card:hover .date {
		color: #A4BE39;
	}

	.top_campaign .card:hover .date::before {
		background: url(../image/icon-watch-green.png) no-repeat center center / cover;
	}

	.top_staff .images .card:hover .image img {
		transform: scale(1.1);
	}

	.top_sns .insta_box .items a:hover {
		opacity: 0.7;
	}

	.top_news .list a:hover .date {
		color: #A4BE39;
	}

	.top_news .list a:hover .title {
		color: #A4BE39;
	}

	.top_news .list a:hover::before {
		background-color: #A4BE39;
	}

	.footer a:hover {
		opacity: 0.7;
	}

	.header .nav_box .item_menu:hover span {
		opacity: 0.7;
	}

	.header .nav_box .item_menu:hover .sub_menu {
		opacity: 1;
		visibility: visible;
	}

	.header .nav_box .item a:hover {
		opacity: 0.7;
	}

	.header .nav_box .item_menu:hover::before {
		top: 10px;
		transform: rotate(-135deg) rotateY(180deg);
	}

	.header .nav_box .sub_item a:hover {
		opacity: 0.7;
	}

	.header .btn_box .btn a:hover.btn_assesment {
		background-color: #fff;
	}

	.header .btn_box .btn a:hover.btn_assesment span {
		color: #A37B44;
	}

	.header .btn_box .btn a:hover.btn_assesment svg {
		fill: #A37B44;
	}

	.header .btn_box .btn a:hover.btn_request {
		background-color: #fff;
	}

	.header .btn_box .btn a:hover.btn_request span {
		color: #A4BE39;
	}

	.header .btn_box .btn a:hover.btn_request svg {
		fill: #A4BE39;
	}

	.header .btn_box .btn a:hover.btn_consultation {
		background-color: #fff;
	}

	.header .btn_box .btn a:hover.btn_consultation span {
		color: #52A88E;
	}

	.header .btn_box .btn a:hover.btn_consultation svg {
		fill: #52A88E;
	}

	.hamburger_pc:hover {
		cursor: pointer;
	}

	.cta_real_estate:hover {
		opacity: 0.7;
	}

	.cta_sns a:hover {
		opacity: 0.7;
	}

	.service .card:hover .img img {
		transform: scale(1.1);
	}

	.service .card:hover .btn::before {
		background-color: #52A88E;
	}

	.service .card:hover .btn p {
		color: #52A88E;
		border-color: #52A88E;
	}

	.about .common_btn:hover span:after {
		background-color: #fff;
	}

	.page_cta a:hover {
		opacity: 0.7;
	}

	.recommended .card:hover .img img {
		transform: scale(1.1);
	}

	.recommended .btn a:hover.common_btn span::after {
		background-color: #fff;
	}

	.page_staff .staff_list .item a:hover .image img {
		transform: scale(1.1);
	}

	.page_renovation .achievement .btn a:hover.common_btn span::after {
		background-color: #fff;
	}

	.top_property .property_box a:hover .img img {
		transform: scale(1.1);
	}

}


@media (max-width: 750px) {

	body.no_top {
		padding-top: 70px;
	}

	/* 弊社のハンバーガーメニュー */
	header#sp_header {
		position: fixed;
		left: 0;
		top: 0;
		width: 100%;
		z-index: 1001;
		height: 70px;
	}

	/*　ハンバーガーボタン　*/
	.hamburger {
		display: block;
		position: fixed;
		z-index: 99999;
		right: 20px;
		top: 6px;
		width: 42px;
		height: 65px;
		cursor: pointer;
		text-align: center;
	}

	.hamburger span {
		display: block;
		position: absolute;
		width: 40px;
		height: 3px;
		left: 6px;
		background: #FFFFFF;
		-webkit-transition: 0.5s ease-in-out;
		-moz-transition: 0.5s ease-in-out;
		transition: 0.5s ease-in-out;
	}

	.hamburger span:nth-child(1) {
		top: 10px;
	}

	.hamburger span:nth-child(2) {
		top: 20px;
	}

	.hamburger span:nth-child(3) {
		top: 30px;
	}

	/* sideの場合,popup1の場合ここから */
	.hamburger.active span:nth-child(1) {
		top: 16px;
		left: 6px;
		-webkit-transform: rotate(335deg);
		-moz-transform: rotate(335deg);
		transform: rotate(335deg);
	}

	.hamburger.active span:nth-child(2),
	.hamburger.active span:nth-child(3) {
		top: 16px;
		-webkit-transform: rotate(-335deg);
		-moz-transform: rotate(-335deg);
		transform: rotate(-335deg);
	}

	/* sideの場合,popup1の場合ここまで */

	/* sideの場合ここから */
	nav.globalMenuSp {
		position: fixed;
		z-index: 999;
		top: 0;
		left: 0;
		transform: translateX(100%);
		transition: all 0.6s;
		width: 100%;
		height: 100vh;
		align-items: center;
		background: #695335;
		overflow: scroll;
	}

	/* sideの場合ここまで */

	nav.globalMenuSp .logo {
		display: inline-block;
		background-color: #fff;
		padding: 14px 21px 15px 17px;
		border-radius: 0 0 10px 0;
	}

	nav.globalMenuSp .logo img {
		aspect-ratio: 192 / 40;
		width: 192px;
		height: auto;
		object-fit: contain;
	}

	nav.globalMenuSp .inner {
		padding: 10px 20px 47px;
	}

	nav.globalMenuSp .top_lists .list {
		position: relative;
		font-weight: 700;
		font-size: 3.84vw;
		line-height: 1.33;
		letter-spacing: 0.1em;
		color: #fff;
		padding-bottom: 16px;
		/* border-bottom: 2px solid #D1C6B9; */
	}

	nav.globalMenuSp .top_lists .list::before {
		content: "";
		position: absolute;
		width: 2.90vw;
		height: 2.90vw;
		border-bottom: 2px solid #fff;
		border-right: 2px solid #fff;
		top: 0;
		transform: rotate(45deg);
		right: 2px;
		transition: all 0.3s ease;
	}

	nav.globalMenuSp .top_lists .list.open::before {
		top: 4px;
		transform: rotate(225deg);
	}

	nav.globalMenuSp .top_lists .list {
		margin-top: 30px;
	}

	nav.globalMenuSp .top_lists .sub_lists {
		margin-top: 18px;
		border-top: 2px solid #D1C6B9;
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		column-gap: 18px;
		max-height: 0;
		overflow: hidden;
		transition: max-height 0.3s ease;
		padding-bottom: 4px;
	}

	nav.globalMenuSp .top_lists .sub_list a {
		position: relative;
		display: block;
		padding-top: 15px;
		padding-bottom: 15px;
		font-weight: 600;
		font-size: 3.33vw;
		line-height: 1.30;
		letter-spacing: 0.1em;
		color: #F2F2F2;
		border-bottom: 2px dotted #847661;
	}

	nav.globalMenuSp .top_lists .sub_list a::before {
		content: "";
		position: absolute;
		background-color: rgba(255, 255, 255, 0.3);
		width: 3.84vw;
		height: 3.84vw;
		border-radius: 50%;
		top: 50%;
		transform: translateY(-50%);
		right: 0;
	}

	nav.globalMenuSp .top_lists .sub_list a::after {
		content: "";
		position: absolute;
		background-color: #6A5335;
		width: 1.36vw;
		height: 1.73vw;
		clip-path: polygon(0 0, 0% 100%, 100% 50%);
		top: 50%;
		transform: translateY(-50%);
		right: 1.06vw;
	}

	nav.globalMenuSp .bottom_lists {
		margin-top: 15px;
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: 18px;
	}

	nav.globalMenuSp .bottom_list a {
		position: relative;
		display: block;
		padding-top: 15px;
		padding-bottom: 15px;
		font-weight: 700;
		font-size: 3.58vw;
		line-height: 1.35;
		letter-spacing: 0.1em;
		color: #fff;
		border-bottom: 2px solid #D1C6B9;
	}

	nav.globalMenuSp .bottom_list a::before {
		content: "";
		position: absolute;
		background-color: rgba(255, 255, 255, 0.3);
		width: 3.84vw;
		height: 3.84vw;
		border-radius: 50%;
		top: 50%;
		transform: translateY(-50%);
		right: 0;
	}

	nav.globalMenuSp .bottom_list a::after {
		content: "";
		position: absolute;
		background-color: #6A5335;
		width: 1.36vw;
		height: 1.73vw;
		clip-path: polygon(0 0, 0% 100%, 100% 50%);
		top: 50%;
		transform: translateY(-50%);
		right: 1.06vw;
	}

	nav.globalMenuSp .cta1 {
		margin-top: 66px;
		display: block;
		width: 79.48vw;
		height: 12.82vw;
		margin-inline: auto;
		background-color: #F8EBBF;
		border-radius: 6px;
		padding: 5px;
	}

	nav.globalMenuSp .cta1 .box {
		position: relative;
		background-color: #fff;
		border-radius: 6px;
		width: 100%;
		height: 100%;
		display: flex;
		align-items: center;
		justify-content: center;
	}

	nav.globalMenuSp .cta1 .box::before {
		content: "";
		position: absolute;
		background: url(../image/fudosan-chara.png) no-repeat center center / cover;
		aspect-ratio: 133 / 119;
		width: 16.92vw;
		height: auto;
		left: 8px;
		bottom: 0;
	}

	nav.globalMenuSp .cta1 .box .text {
		position: relative;
		font-weight: 700;
		font-size: 3.84vw;
		line-height: 1.13vw;
		letter-spacing: 0.1em;
		color: #2B2B2B;
		padding-left: 9.23vw;
	}

	nav.globalMenuSp .cta1 .box .text::before {
		content: "";
		position: absolute;
		background-color: #FAE9AD;
		width: 5.12vw;
		height: 5.12vw;
		border-radius: 50%;
		top: 50%;
		transform: translateY(-50%);
		right: -10.51vw;
	}

	nav.globalMenuSp .cta1 .box .text::after {
		content: "";
		position: absolute;
		background-color: #fff;
		width: 2.05vw;
		height: 2.82vw;
		clip-path: polygon(0 0, 0% 100%, 100% 50%);
		top: 50%;
		transform: translateY(-50%);
		right: -9.23vw;
	}

	nav.globalMenuSp .cta1 .box .text span {
		font-size: 4.61vw;
		color: #E28110;
	}

	nav.globalMenuSp .cta2 {
		margin-top: 15px;
		background-color: #fff;
		border-radius: 14px;
		padding: 23px 20px 25px;
		display: flex;
		flex-direction: column;
		gap: 14px;
	}

	nav.globalMenuSp .cta2 .btn {
		text-align: center;
	}

	nav.globalMenuSp .cta2 .head {
		position: relative;
		display: inline-block;
		font-weight: 700;
		font-size: 3.58vw;
		line-height: 1.78;
		letter-spacing: 0.12em;
		padding-left: 5.64vw;
		padding-right: 5.64vw;
	}

	nav.globalMenuSp .cta2 .head::before {
		content: "";
		position: absolute;
		background: url(../image/title-effect1.png) no-repeat center center / cover;
		aspect-ratio: 20 / 30;
		width: 2.05vw;
		height: auto;
		left: 0;
		top: 50%;
		transform: translateY(-50%);
	}

	nav.globalMenuSp .cta2 .head::after {
		content: "";
		position: absolute;
		background: url(../image/title-effect2.png) no-repeat center center / cover;
		aspect-ratio: 20 / 30;
		width: 2.05vw;
		height: auto;
		right: 0;
		top: 50%;
		transform: translateY(-50%);
	}

	nav.globalMenuSp .cta2 .common_btn_assessment,
	nav.globalMenuSp .cta2 .common_btn_request,
	nav.globalMenuSp .cta2 .common_btn_consultation {
		min-width: initial;
		width: 100%;
		padding-left: 15px;
		padding-right: 15px;
	}

	nav.globalMenuSp .cta2 .common_btn_assessment {
		gap: 56px;
	}

	nav.globalMenuSp .cta2 .common_btn_request {
		gap: 56px;
	}

	nav.globalMenuSp .cta2 .common_btn_consultation {
		gap: 56px;
	}

	nav.globalMenuSp .bottom_wrapper {
		margin-top: 50px;
		text-align: center;
	}

	nav.globalMenuSp .bottom_wrapper .head {
		font-weight: 400;
		font-size: 3.33vw;
		line-height: 1.33;
		letter-spacing: 0.05em;
		color: #F0F0F0;
	}

	nav.globalMenuSp .bottom_wrapper .bottom_logo {
		margin-top: 10px;
		width: 54.87vw;
		margin-inline: auto;
	}

	nav.globalMenuSp .bottom_wrapper .bottom_logo img {
		aspect-ratio: 574 / 120;
		width: 100%;
		height: auto;
		object-fit: contain;
	}

	nav.globalMenuSp .bottom_wrapper .address {
		margin-top: 16px;
		font-weight: 400;
		font-size: 3.33vw;
		line-height: 1.5;
		letter-spacing: 0.05em;
		color: #E5E5E5;
	}

	nav.globalMenuSp .bottom_wrapper .text {
		margin-top: 10px;
		font-weight: 400;
		font-size: 3.33vw;
		line-height: 1.5;
		letter-spacing: 0.05em;
		color: #E5E5E5;
	}

	nav.globalMenuSp .bottom_wrapper .tel {
		margin-top: 18px;
	}

	nav.globalMenuSp .bottom_wrapper .tel a {
		display: inline-block;
		font-weight: 700;
		font-size: 4.10vw;
		line-height: 1.125vw;
		letter-spacing: 0.04em;
		color: #fff;
	}

	nav.globalMenuSp .bottom_wrapper .sns_box {
		margin-top: 18px;
		display: flex;
		justify-content: center;
		gap: 12px;
	}

	nav.globalMenuSp .bottom_wrapper .sns_box a {
		display: inline-block;
		width: 17.94vw;
		height: 17.94vw;
		background-color: #fff;
		border-radius: 50%;
		display: flex;
		justify-content: center;
		align-items: center;
	}

	nav.globalMenuSp .bottom_wrapper .sns_box .youtube img {
		aspect-ratio: 86 / 60;
		width: 11.72vw;
		height: auto;
		object-fit: contain;
	}

	nav.globalMenuSp .bottom_wrapper .sns_box .insta img {
		aspect-ratio: 1/ 1;
		width: 10.25vw;
		height: auto;
		object-fit: contain;
	}

	nav.globalMenuSp .bottom_wrapper .sns_box .line img {
		aspect-ratio: 29 / 29;
		width: 10.25vw;
		height: auto;
		object-fit: contain;
	}

	nav.globalMenuSp .bottom_wrapper .box {
		margin-top: 30px;
		display: flex;
		justify-content: center;
		gap: 47px;
		padding-bottom: 15px;
		border-bottom: 2px solid #B4A590;
	}

	nav.globalMenuSp .bottom_wrapper .box .link {
		font-weight: 700;
		font-size: 3.33vw;
		line-height: 1.33;
		letter-spacing: 0.1em;
		color: #fff;
	}

	nav.globalMenuSp .bottom_wrapper .copyright {
		display: block;
		margin-top: 13px;
		font-weight: 400;
		font-size: 3.33vw;
		line-height: 1.75;
		letter-spacing: 0.04em;
		color: #E3E3E3;
	}


	nav.globalMenuSp .btn_box {
		margin-top: 30px;
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: 20px;
	}

	nav.globalMenuSp .btn_box .btn a {
		display: block;
		padding: 15px 0;
		background-color: #fff;
		border-radius: 10px;
		text-align: center;
	}

	nav.globalMenuSp .btn_box .btn a span {
		font-weight: 700;
		font-size: 3.33vw;
		line-height: 1.30;
		letter-spacing: 0.1em;
		color: #695335;
	}



	nav.globalMenuSp.active {
		transform: translateX(0%);
	}

	/* ここまで弊社のハンバーガーメニュー */

	.wrap,
	.wrap.lr,
	.wrap.mid {
		max-width: 90%;
	}

	a[href $='.pdf']::before {
		width: 7vw;
		height: 8vw;
		margin-right: 2.5vw;
	}

	a[href $='.pdf']:hover {
		text-decoration: underline;
	}

	body {
		font-size: 13px;
		/* padding-top: 55px; */
		min-width: unset;
	}

	/* SP固定ページ 共通設定 */
	.common_page_main {
		padding-block: 20vw;
	}

	.common_page_main .title_box .title {
		font-size: 5.6vw;
	}

	.common_page_wrap {
		padding: 20vw 0;
	}

	.common_page_wrap_staff {
		padding: 20vw 0 0;
	}

	.reserve_text {
		font-size: 6vw;
	}

	/* パンくず */
	.breadcrumb {
		font-size: 2.5vw;
	}


	/* ここから下部にCSSを追加してください */

	/*ヘッダーsp*/

	.sp_header {
		background-color: transparent;
		transition: all 0.3s ease;
	}

	.sp_header.is-color {
		background-color: #fff;
	}

	.sp_header .logo {
		display: inline-block;
		background-color: #fff;
		padding: 14px 21px 15px 17px;
		border-radius: 0 0 10px 0;
	}

	.sp_header .logo img {
		aspect-ratio: 192 / 40;
		width: 192px;
		height: auto;
		object-fit: contain;
	}

	.sp_header_tel {
		position: fixed;
		top: 11px;
		right: 74px;
		z-index: 1050;
	}

	.sp_header_tel a {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 48px;
		height: 48px;
		background-color: #A37B44;
		border-radius: 10px;

	}

	.hamburger .text {
		font-family: "Roboto", sans-serif;
		color: #fff;
		font-weight: 700;
		font-size: 13px;
		line-height: 1.38;
		letter-spacing: 0.04em;
		position: absolute;
		bottom: 8px;
		left: 9px;
		transition: all 0.3s ease;
	}

	.hamburger.is-color span {
		background-color: #2B2B2B;
	}

	.hamburger.is-color .text {
		color: #2B2B2B;
	}

	.js-text {
		opacity: 0;
		visibility: hidden;
	}

	.js-text.is-active {
		opacity: 1;
		visibility: visible;
	}




	.top_mv::after {
		bottom: -20px;
	}

	.top_mv .bg {
		padding-top: 70px;
	}

	.top_mv .wrapper {
		padding-top: 175px;
		padding-bottom: 58px;
	}

	.top_mv .wrapper::before {
		width: 80px;
		left: 20px;
		bottom: 0;
		z-index: 11;
	}

	.top_mv .lead {
		font-size: 5.38vw;
	}

	.top_mv .title_jp {
		margin-top: 9px;
		font-size: 3.58vw;
	}

	.top_mv .title {
		margin-top: 3px;
		max-width: 84.6vw;
	}

	.top_mv .text {
		margin-top: 10px;
		font-size: 3.84vw;
		text-align: center;
	}

	.top_mv .btn {
		grid-template-columns: repeat(1, 1fr);
		gap: 12px;
	}

	.top_mv .common_btn_request,
	.top_mv .common_btn_consultation {
		min-width: 290px;
	}

	.top_mv .common_btn_request {
		gap: 50px;
	}

	.top_mv .common_btn_consultation {
		gap: 46px;
	}


	/*共通タイトル*/
	.common_section_title .title_en {
		font-size: 18px;
		line-height: 1.33;
	}

	.common_section_title .title_jp {
		margin-top: 5px;
		font-size: 30px;
		line-height: 1.93;
	}

	/*共通Contact*/

	.common_contact {
		padding-top: 58px;
		padding-bottom: 70px;
	}

	.common_contact::before {
		background: url(../image/contact-cta-bg-sp.jpg) no-repeat center center / cover;
		border-radius: 28px 28px 0 0;
	}

	.common_contact .title_en {
		font-size: 4.61vw;
	}

	.common_contact .title_jp {
		margin-top: 7px;
		font-size: 5.89vw;
	}

	.common_contact .lead {
		margin-top: 11px;
		font-size: 3.33vw;
	}

	.common_contact .text {
		margin-top: 26px;
		font-size: 3.58vw;
	}

	.common_contact .tel_box {
		flex-direction: column;
		align-items: center;
	}

	.common_contact .tel_box a {
		pointer-events: auto;
	}

	.common_contact .tel_box .tel {
		font-size: 8.20vw;
		padding-left: 9.48vw;
	}

	.common_contact .tel_box .tel::before {
		width: 7.69vw;
	}

	.common_contact .tel_box .time {
		font-size: 3.33vw;
	}

	.common_contact .cta_box {
		margin-top: 15px;
		flex-direction: column;
		padding: 23px 30px 25px;
		gap: 14px;
		border-radius: 14px;
	}

	.common_contact .btn {
		padding-left: initial;
		padding-right: initial;
	}

	.common_contact .btn.line {
		border: none;
	}

	.common_contact .common_btn_request,
	.common_contact .common_btn_consultation,
	.common_contact .common_btn_assessment {
		min-width: 290px;
	}

	.common_contact .common_btn_request {
		gap: 52px;
	}

	.common_contact .common_btn_consultation {
		gap: 46px;
	}

	.common_contact .common_btn_assessment {
		gap: 46px;
	}


	/*下層ページ共通*/

	.common_page_mv::before {
		background: url(../image/page-mv-bg-sp.png) no-repeat center center / cover;
		aspect-ratio: 782 / 760;
	}

	.common_page_mv .bg {
		padding-top: 50px;
		padding-bottom: 74px;
	}

	.common_page_mv .bg::before {
		content: none;
	}

	.common_page_mv .bg::after {
		width: 17.17vw;
		right: 14px;
		bottom: 10px;
	}

	.common_page_mv .title_en {
		font-size: 4.61vw;
	}

	.common_page_mv .title_jp {
		margin-top: 10px;
		font-size: 6.66vw;
		padding-bottom: 12px;
	}

	/*共通フロー（不動産の売却・不動産の買取）*/
	.common_flow {
		padding-top: 60px;
		padding-bottom: 0;
	}

	.common_flow .wrapper {
		margin-top: 40px;
	}

	.common_flow .wrapper::before {
		width: 60px;
		bottom: -50px;
		right: 0;
	}

	.common_flow .flow_item {
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: initial;
		padding-bottom: initial;
	}

	.common_flow .flow_item+.flow_item {
		margin-top: 30px;
	}

	.common_flow .flow_item:not(:last-child):before {
		content: none;
	}

	.common_flow .circle {
		position: relative;
		width: 15.38vw;
		height: 15.38vw;
	}

	.common_flow .circle .en {
		font-size: 3.33vw;
		line-height: 1.2;
	}

	.common_flow .circle .number {
		font-size: 5.12vw;
	}

	.common_flow .text_box {
		margin-top: -20px;
		padding: 35px 20px 20px;
	}

	.common_flow .text_box .title {
		font-size: 4.61vw;
	}

	.common_flow .text_box .text {
		margin-top: 15px;
		font-size: 3.33vw;
	}


	/*パンくず*/
	.breadcrumbs {
		margin-top: 24px;
	}

	.breadcrumbs ul {
		flex-wrap: wrap;
	}

	.breadcrumbs ul li {
		font-size: 12px;
	}

	.breadcrumbs .wrap>div {
		flex-wrap: wrap;
	}

	.breadcrumbs .wrap>div>span {
		font-size: 12px;
	}


	/*CTA*/
	.cta_sns {
		display: none;
	}

	.cta_real_estate {
		display: none;
	}

	.sp_cta {
		display: block;
		position: fixed;
		bottom: 0;
		left: 0;
		width: 100%;
		padding: 8px;
		background-color: #6A5335;
		z-index: 500;
		opacity: 1;
		visibility: visible;
		transition: all 0.3s ease;
	}

	.sp_cta.is-hidden {
		opacity: 0;
		visibility: hidden;
	}

	.sp_cta .cta1 {
		display: block;
		width: 100%;
		height: 12.82vw;
		background-color: #F8EBBF;
		border-radius: 6px;
		padding: 5px;
	}

	.sp_cta .cta1 .box {
		position: relative;
		background-color: #fff;
		border-radius: 6px;
		width: 100%;
		height: 100%;
		display: flex;
		align-items: center;
		justify-content: center;
	}

	.sp_cta .cta1 .box::before {
		content: "";
		position: absolute;
		background: url(../image/fudosan-chara.png) no-repeat center center / cover;
		aspect-ratio: 133 / 119;
		width: 16.92vw;
		height: auto;
		left: 8px;
		bottom: 0;
	}

	.sp_cta .cta1 .box .text {
		position: relative;
		font-weight: 700;
		font-size: 3.84vw;
		line-height: 1.13vw;
		letter-spacing: 0.1em;
		color: #2B2B2B;
		padding-top: 3px;
		padding-left: 7vw;
	}

	.sp_cta .cta1 .box .text::before {
		content: "";
		position: absolute;
		background-color: #FAE9AD;
		width: 5.12vw;
		height: 5.12vw;
		border-radius: 50%;
		top: 50%;
		transform: translateY(-50%);
		right: -17.69vw;
	}

	.sp_cta .cta1 .box .text::after {
		content: "";
		position: absolute;
		background-color: #fff;
		width: 2.05vw;
		height: 2.82vw;
		clip-path: polygon(0 0, 0% 100%, 100% 50%);
		top: 50%;
		transform: translateY(-50%);
		right: -16.41vw;
	}

	.sp_cta .cta1 .box .text span {
		font-size: 4.61vw;
		color: #E28110;
	}

	.sp_cta .btn_box {
		margin-top: 7px;
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		gap: 7px;
	}

	.sp_cta .btn_box a {
		position: relative;
		text-align: center;
		display: flex;
		justify-content: center;
		align-items: end;
		border-radius: 6px;
		color: #fff;
		font-weight: 700;
		font-size: 3.33vw;
		line-height: 1.33;
		letter-spacing: 0.09em;
		padding-top: 9.23vw;
		padding-bottom: 8px;
	}

	.sp_cta .btn_box .btn_assessment {
		background-color: #A37B44;
	}

	.sp_cta .btn_box .btn_assessment::before {
		content: "";
		position: absolute;
		background: url(../image/icon-calculator.png) no-repeat center center / cover;
		aspect-ratio: 44 / 60;
		width: 4.33vw;
		height: auto;
		left: 50%;
		transform: translateX(-50%);
		top: 8px;
	}

	.sp_cta .btn_box .btn_request {
		background-color: #A4BE39;
	}

	.sp_cta .btn_box .btn_request::before {
		content: "";
		position: absolute;
		background: url(../image/icon-house.png) no-repeat center center / cover;
		aspect-ratio: 69 / 60;
		width: 6.86vw;
		height: auto;
		left: 50%;
		transform: translateX(-50%);
		top: 8px;
	}

	.sp_cta .btn_box .btn_consultation {
		background-color: #52A88E;
	}

	.sp_cta .btn_box .btn_consultation::before {
		content: "";
		position: absolute;
		background: url(../image/icon-calendar.png) no-repeat center center / cover;
		aspect-ratio: 52 / 56;
		width: 5.22vw;
		height: auto;
		left: 50%;
		transform: translateX(-50%);
		top: 8px;
	}



	/*TOP　メモリーハウスについて*/

	.common_cta img {
		aspect-ratio: 726 / 572;
		width: 100%;
		height: auto;
		object-fit: cover;
	}

	.top_bg {
		padding-top: 40px;
	}

	.top_bg::before {
		background: url(../image/bg.png) no-repeat center center / cover;
		aspect-ratio: initial;
	}

	.top_bg::after {
		content: "";
		position: absolute;
		background: url(../image/wave-bottom.png) no-repeat center center / cover;
		aspect-ratio: 780 / 112;
		bottom: -30px;
		left: 0;
		width: 100%;
	}

	.top_bg .cta {
		padding-left: 20px;
		padding-right: 8px;
	}

	.top_bg .cta .common_cta::before {
		width: 47px;
		bottom: -35px;
		right: 0;
	}

	.top_about {
		padding-top: 65px;
		padding-bottom: 205px;
	}

	.top_about::before {
		width: 51px;
		top: initial;
		bottom: 80px;
		right: 0;
		z-index: 1;
	}

	.top_about::after {
		width: 63px;
		left: 0;
		z-index: 1;
	}

	.top_about .img1_box {
		top: initial;
		left: -20px;
		bottom: -180px;
	}

	.top_about .img1 {
		position: relative;
		width: 230px;
	}

	.top_about .img1 img {
		aspect-ratio: 230 / 140;
	}

	.top_about .img1::before {
		top: 6px;
		left: 6px;
	}

	.top_about .title_en {
		font-size: 5.12vw;
	}

	.top_about .title_jp {
		font-size: 3.33vw;
	}

	.top_about .title_jp::before {
		width: 62.05vw;
	}

	.top_about .head {
		margin-top: 16px;
		font-size: 5.64vw;
	}

	.top_about .head span {
		font-size: 6.92vw;
	}

	.top_about .wrapper {
		margin-top: 19px;
	}

	.top_about .lead {
		font-size: 4.10vw;
	}

	.top_about .lead::before {
		width: 100%;
	}

	.top_about .text {
		margin-top: 17px;
		font-size: 3.33vw;
		letter-spacing: 0.13em;
	}

	.top_about .img2_box {
		bottom: -200px;
	}

	.top_about .img2 {
		width: 100px;
	}

	.top_about .img2::before {
		top: -6px;
		right: 6px;
	}

	/*事業内容*/

	.top_service {
		padding-bottom: 110px;
	}

	.top_service .lead {
		margin-top: 14px;
		font-size: 3.33vw;
	}

	.top_service .cards_sp {
		margin-top: 30px;
	}

	.top_service .card+.card {
		margin-top: 15px;
	}

	.top_service .card a {
		padding: 14px 15px 20px;
	}

	.top_service .card .head {
		font-size: 3.33vw;
		padding: 2px 14px 3px;
		top: 25px;
		left: 48%;
	}

	.top_service .cards_sp .card .top {
		display: flex;
		flex-direction: row-reverse;
		justify-content: start;
		gap: 21px;
	}

	.top_service .card .title_box {
		margin-top: 35px;
	}

	.top_service .card .title {
		font-size: 5.12vw;
		padding-left: 2px;
		padding-right: 2px;
	}

	.top_service .card .title .big {
		font-size: 6.66vw;
	}

	.top_service .card .img {
		flex: 0 0 23.07vw;
		margin-top: initial;
	}

	.top_service .card .img img {
		aspect-ratio: 90 / 90;
		width: 100%;
		height: auto;
		object-fit: cover;
	}

	.top_service .card .body {
		margin-top: 10px;
	}

	.top_service .card .text {
		font-size: 3.33vw;
		background-color: #F7FDF9;
		border-radius: 12px;
		padding: 11px 10px;
		letter-spacing: 0.11em;
	}

	.top_service .card .btn {
		margin-top: 3px;
	}

	.top_service .card .btn p {
		padding-top: 13px;
		padding-bottom: 13px;
		font-size: 3.58vw;
	}

	.top_service .top_service_pagination {
		bottom: -35px;
		gap: 10px;
	}

	.top_service .top_service_page {
		margin: 0;
		width: 9px;
		height: 9px;
		background-color: #D6D6D6;
	}

	.top_service .top_service_page.is-active {
		transform: scale(1);
		background-color: #B19C7F;
	}

	.top_service .top_service_arrow {
		width: 32px;
		height: 32px;
		background-color: #8D6A3A;
		opacity: 1;
		top: initial;
		transform: initial;
		bottom: -40px;
	}

	.top_service .top_service_prev {
		left: 28%;
		bottom: -45px;
	}

	.top_service .top_service_next {
		right: 28%;
		bottom: -45px;
	}

	.top_service .top_service_prev::before {
		content: "";
		position: absolute;
		clip-path: polygon(100% 0%, 0% 50%, 100% 100%);
		width: 11px;
		height: 15px;
		background-color: #fff;
		left: 9px;
	}

	.top_service .top_service_next::before {
		content: "";
		position: absolute;
		clip-path: polygon(0% 0%, 100% 50%, 0% 100%);
		width: 11px;
		height: 15px;
		background-color: #fff;
		right: 9px;
	}

	/* TOP 新潟の物件を探す */

	.top_search {
		padding-top: 100px;
		padding-bottom: 70px;
	}

	.top_search .lead {
		margin-top: 13px;
		font-size: 3.33vw;
	}

	.top_search .wrapper {
		margin-top: 30px;
		display: block;
	}

	.top_search .area_box {
		display: none;
	}

	.top_search .btn.btn_mobile {
		display: flex;
	}

	.top_search .btn_box {
		gap: 12px;
	}

	.top_search .btn_box .btn {
		height: 80px;
		border-radius: 8px;
	}

	.top_search .btn_box .img {
		flex: 0 0 100px;
		height: 80px;
		border-radius: 8px 0 0 8px;
	}

	.top_search .btn_box .body {
		padding-left: 20px;
		border-radius: 0 8px 8px 0;
	}

	.top_search .btn_box .title_box .title_en {
		font-size: 3.84vw;
	}

	.top_search .btn_box .title_box .title_jp {
		margin-top: 1px;
		font-size: 3.84vw;
	}

	.top_search .btn_box .arrow {
		border-radius: 0 8px 8px 0;
	}

	.top_search .btn_box .arrow::before {
		width: 18px;
		height: 18px;
	}

	.top_search .btn_box .arrow::after {
		width: 8px;
		height: 9px;
	}

	.top_search .search_box .title_box {
		gap: 34px;
	}

	.top_search .search_box .title_jp {
		font-size: 4.10vw;
	}

	.top_search .search_box .title_en {
		font-size: 4.61vw;
	}

	.top_search .search_form {
		margin-top: 5px;
	}

	.top_search .search_form input {
		max-width: initial;
	}

	.top_search .search_form input::placeholder {
		font-size: 3.33vw;
	}

	.top_search .search_form button {
		width: 26px;
		height: 26px;
	}

	/*新着物件　プライスダウン物件*/

	.top_property {
		padding-top: 68px;
		padding-bottom: 83px;
	}

	.top_property::before {
		background: url(../image/toppage-bg2-sp.png) no-repeat center center / cover;
	}

	.top_property .wrapper {
		flex-direction: column;
		margin-right: initial;
	}

	.top_property .title_box {
		text-align: center;
		margin-top: initial;
		flex: initial;
	}

	.top_property .title_en {
		font-size: 4.61vw;
	}

	.top_property .title_jp {
		margin-top: 5px;
		font-size: 7.69vw;
	}

	.top_property .lead {
		margin-top: 13px;
		font-size: 3.33vw;
	}

	.top_property .title_box .btn {
		display: none;
	}

	.top_property .property_box {
		max-width: initial;
		position: relative;
	}


	.top_property .card {
		margin-top: 15px;
		padding-left: 31px;
		padding-right: 31px;
		padding-bottom: 12px;
		width: 100% !important;
		border-right: initial;
	}

	.top_property .card::after {
		content: "";
		position: absolute;
		width: 97%;
		height: 100%;
		top: 0;
		left: 50%;
		transform: translateX(-50%);
		border-left: 2px dashed #B4A590;
		border-right: 2px dashed #B4A590;
		z-index: -1;
	}

	.top_property .card .body::before {
		bottom: 12px;
		right: 40px;
	}

	.top_property .card .body::after {
		bottom: 18px;
		right: 46px;
	}

	.top_property .card.new::before {
		width: 37px;
		top: -10px;
		left: 20px;
	}

	.top_property .property_box .body_sp {
		display: flex;
		gap: 20px;
	}

	.top_property .property_box .body_sp .img {
		flex: 0 0 110px;
		height: 110px;
	}

	.top_property .card .img img {
		aspect-ratio: 110 / 110;
	}

	.top_property .card .category {
		font-size: 3.33vw;
	}

	.top_property .card .name {
		margin-top: 3px;
		font-size: 4.10vw;
	}

	.top_property .property_box .body_sp .price_sp {
		display: block;
		margin-top: 28px;
		font-family: "Roboto", sans-serif;
		font-weight: 700;

		letter-spacing: 0;
		color: #8D6A3A;
	}

	.top_property .property_box .body_sp .price_sp strong {
		font-size: 6.41vw;
		line-height: 0.76;
	}

	.top_property .property_box .body_sp .price_sp span {
		font-size: 3.58vw;
		line-height: 1.35;
	}

	.top_property .card .address {
		margin-top: 12px;
		font-size: 3.33vw;
		padding-left: 25px;
	}

	.top_property .card .access {
		font-size: 3.33vw;
		padding-left: 25px;
		padding-right: 30px;
	}

	.top_property .card .price {
		display: none;
	}

	.top_property .splide__arrows {
		left: 50%;
		transform: translateX(-50%);
		top: initial;
		bottom: -30px;
	}

	.top_property .top_property_next {
		left: 45px;
	}

	.top_property .top_property_prev {
		left: initial;
		right: 45px;
	}

	.top_property .top_property_pagination {
		left: 50%;
		transform: translateX(-50%);
		top: initial;
		bottom: -36px;
	}

	.top_property .btn_sp {
		display: block;
		margin-top: 80px;
		max-width: 210px;
		margin-inline: auto;
		text-align: center;
	}

	.top_property .wrapper+.wrapper {
		margin-top: 80px;
	}

	.top_property .price_down .btn_sp .common_btn {
		background-color: #A29149;
		border-color: #A29149;
	}

	.top_property .price_down .btn_sp .common_btn span::after {
		background-color: #A29149;
	}

	.top_property .splide__slide {
		width: 100% !important;
	}


	/*topおすすめ物件*/
	.top_recommended {
		padding-top: 58px;
		padding-bottom: 120px;
		overflow: hidden;
	}

	.top_recommended .common_section_title .title_jp {
		padding-bottom: 3px;
	}

	.top_recommended .common_section_title .title_jp::before {
		max-width: 49.74vw;
	}

	.top_recommended .lead {
		margin-top: 15px;
		font-size: 3.33vw;
	}

	.top_recommended .wrapper {
		margin-top: 20px;
	}

	.top_recommended .cards {
		display: grid;
		grid-template-columns: repeat(4, 1fr);
		gap: 20px;
		overflow-x: scroll;
		padding: 4px;
	}

	.top_recommended .cards::-webkit-scrollbar {
		display: none;
	}

	.top_recommended .card {
		box-shadow: 0 1px 4px #0000001A;
	}

	.top_recommended .card::before {
		width: 22px;
		height: 22px;
		top: initial;
		transform: initial;
		bottom: 20px;
		right: 20px;
		background-color: #A4BE39;
	}

	.top_recommended .card::after {
		width: 7px;
		height: 10px;
		top: initial;
		transform: initial;
		bottom: 26px;
		right: 26px;
		background-color: #fff;
	}

	.top_recommended .card a {
		flex-direction: column;
		padding: 20px 20px 16px;
		gap: 11px;
	}

	.top_recommended .card .img {
		flex: initial;
		width: 260px;
		height: 170px;
	}

	.top_recommended .card .img img {
		width: 100%;
		object-fit: cover;
	}

	.top_recommended .card .body {
		padding-right: initial;
	}

	.top_recommended .card .body::before {
		content: none;
	}

	.top_recommended .card .category {
		margin-top: initial;
		font-size: 12px;
	}

	.top_recommended .card .name {
		margin-top: 2px;
		font-size: 17px;
	}

	.top_recommended .card .price_pc {
		display: none;
	}

	.top_recommended .card .address_box {
		background-color: initial;
		padding: initial;
		margin-top: 9px;
	}

	.top_recommended .card .address {
		padding-left: 25px;
	}

	.top_recommended .card .access {
		padding-left: 25px;
	}

	.top_recommended .card .price_sp {
		display: block;
		margin-top: 15px;
		font-family: "Roboto", sans-serif;
		font-weight: 700;
		font-size: 25px;
		line-height: 0.76;
		letter-spacing: 0;
		color: #A0BC2B;
	}

	.top_recommended .card .price_sp span {
		font-size: 14px;
		line-height: 1.35;
	}

	.top_recommended .btn {
		margin-top: 30px;
	}

	.top_recommended .btn .common_btn {
		min-width: 210px;
		padding: 17px 19px;
	}

	/*topリノベーション*/


	.top_renovation::before {
		background: url(../image/bg.png) no-repeat center center / cover;
	}

	.top_renovation .bg {
		position: relative;
		padding-top: 30px;
		padding-bottom: 40px;
	}

	.top_renovation .bg::before {
		content: "";
		position: absolute;
		background: url(../image/wave-top.png) no-repeat center center / cover;
		aspect-ratio: 780 / 140;
		width: 100%;
		top: -50px;
		left: 0;
	}

	.top_renovation .bg::after {
		content: "";
		position: absolute;
		background: url(../image/wave-bottom.png) no-repeat center center / cover;
		aspect-ratio: 780 / 140;
		width: 100%;
		bottom: -50px;
		left: 0;
		z-index: -1;
	}

	.top_renovation::after {
		width: 60px;
		left: 12px;
		bottom: -70px;
	}

	.top_renovation .wrap_wide {
		max-width: initial;
		width: initial;
	}

	.top_renovation .title_box {
		flex-direction: column;
		gap: 7px;
		align-items: initial;
	}

	.top_renovation .title_lead {
		flex: initial;
	}

	.top_renovation .title_lead .title_en {
		font-size: 4.61vw;
	}

	.top_renovation .title_lead .title_jp {
		margin-top: 12px;
	}

	.top_renovation .title_lead .title_head {
		font-size: 4.61vw;
	}

	.top_renovation .title_lead .title {
		font-size: 6.41vw;
		padding-bottom: 2px;
	}

	.top_renovation .title_lead .title span {
		font-size: 4.35vw;
	}

	.top_renovation .title_logo {
		margin-top: 6px;
		width: 69.48vw;
	}

	.top_renovation .title_logo::before {
		font-size: 3.33vw;
	}

	.top_renovation .title_logo::after {
		width: 14.35vw;
		top: -20px;
		right: -34%;
	}

	.top_renovation .container {
		margin-top: 45px;
		flex-direction: column;
		gap: initial;
	}

	.top_renovation .container .image {
		flex: initial;
		width: 100%;
		padding-right: 20px;
	}

	.top_renovation .container .image::before {
		width: 31px;
		top: initial;
		right: initial;
		left: 5px;
		bottom: -10px;
	}

	.top_renovation .container .image img {
		aspect-ratio: 370 / 180;
		border-radius: 0 20px 20px 0;
	}

	.top_renovation .container .body {
		flex: initial;
		padding-top: 20px;
		padding-left: 20px;
	}

	.top_renovation .container .body::before {
		width: 71px;
		right: 0;
		bottom: -50px;

	}

	.top_renovation .container .title {
		font-size: 4.61vw;
		padding-bottom: 9px;
		padding-right: 20px;
	}

	.top_renovation .container .text {
		margin-top: 18px;
		font-size: 3.33vw;
		letter-spacing: 0.1em;
		padding-right: 20px;
	}

	.top_renovation .container .btn {
		margin-top: 33px;
	}

	/*topキャンペーン情報*/
	.top_campaign {
		padding-top: 110px;
		padding-bottom: 23px;
	}

	.top_campaign .head {
		display: block;
	}

	.top_campaign .title_box {
		text-align: center;
	}

	.top_campaign .lead {
		margin-top: 13px;
		font-size: 3.33vw;
	}

	.top_campaign .cards {
		margin-top: 10px;
		grid-template-columns: repeat(1, 1fr);
		gap: initial;
	}

	.top_campaign .card a {
		padding-top: 20px;
		padding-bottom: 20px;
		display: flex;
		gap: 18px;
		border-bottom: 2px dashed #D9D9D9;
	}

	.top_campaign .card:last-child a {
		border-bottom: none;
	}

	.top_campaign .card .image {
		border-radius: 12px;
		flex: 0 0 100px;
	}

	.top_campaign .card .image img {
		aspect-ratio: 1 / 1;
		border-radius: 12px;
	}

	.top_campaign .card .body {
		display: flex;
		flex-direction: column;
		padding-top: initial;
	}

	.top_campaign .card .title {
		margin-top: 8px;
		font-size: 3.33vw;
		height: auto;
		order: 2;
	}

	.top_campaign .card .text {
		margin-top: 5px;
		font-size: 3.33vw;
		height: auto;
		order: 3;
	}

	.top_campaign .card .date {
		font-size: 3.33vw;
		padding-left: 18px;
		margin-top: initial;
		order: 1;
	}

	.top_campaign .card .date::before {
		width: 12px;
		height: 12px;
	}

	.top_campaign .btn {
		margin-top: 40px;
		text-align: center;
	}

	.top_campaign .common_btn {
		max-width: 210px;
	}

	/*top スタッフ紹介*/
	.top_staff {
		padding-top: 60px;
		padding-bottom: 85px;
	}

	.top_staff .container {
		display: block;
	}

	.top_staff .title_box {
		text-align: center;
	}

	.top_staff .title_en {
		font-size: 4.61vw;
	}

	.top_staff .title_jp {
		margin-top: 5px;
		font-size: 7.69vw;
	}

	.top_staff .lead {
		margin-top: 13px;
		font-size: 3.33vw;
	}

	.top_staff .images {
		margin-top: 28px;
		display: block;
	}

	.top_staff .images .card {
		border-radius: 14px;
		padding: 6px;
	}

	.top_staff .images .image {
		border-radius: 10px;
	}

	.top_staff .images .image img {
		aspect-ratio: 158 / 208;
		border-radius: 10px;
	}

	.top_staff .images .image::before {
		border-radius: 10px;
	}

	.top_staff .images .name_box {
		bottom: 19px;
	}

	.top_staff .images .head {
		font-size: 3.33vw;
	}

	.top_staff .images .name {
		font-size: 4.10vw;
	}

	.top_staff .top_staff_arrow {
		display: block;
		width: 32px;
		height: 32px;
		background-color: #8D6A3A;
		opacity: 1;
		top: initial;
		transform: initial;
		bottom: -50px;
	}

	.top_staff .top_staff_prev {
		left: 100px;
	}

	.top_staff .top_staff_prev::before {
		content: "";
		position: absolute;
		clip-path: polygon(100% 0%, 0% 50%, 100% 100%);
		width: 11px;
		height: 15px;
		background-color: #fff;
		top: 9px;
		left: 9px;
	}

	.top_staff .top_staff_next {
		right: 100px;
	}

	.top_staff .top_staff_next::before {
		content: "";
		position: absolute;
		clip-path: polygon(0% 0%, 100% 50%, 0% 100%);
		width: 11px;
		height: 15px;
		background-color: #fff;
		top: 9px;
		right: 9px;
	}

	.top_staff .top_staff_pagination {
		bottom: -40px;
		gap: 10px;
	}

	.top_staff .top_staff_page {
		margin: 0;
		width: 8px;
		height: 8px;
		background-color: #D6D6D6;
	}

	.top_staff .top_staff_page.is-active {
		transform: scale(1);
		background-color: #B19C7F;
	}

	.top_staff .btn {
		margin-top: 84px;
		margin-inline: auto;
	}

	/*top SNS紹介*/

	.top_sns {
		padding-top: 146px;
	}

	.top_sns::before {
		background: url(../image/toppage-bg4-sp.png) no-repeat center center / cover;
		aspect-ratio: 780 / 780;
	}

	.top_sns .bg {
		padding-bottom: 84px;
	}

	.top_sns .title_box::before {
		width: 70px;
	}

	.top_sns .title_box::before {
		top: -100px;
	}

	.top_sns .title_box .title {
		flex-direction: column;
	}

	.top_sns .title_box .title::before {
		font-size: 2.82vw;
		left: 50%;
		transform: translateX(-50%);
	}

	.top_sns .title_box .title img {
		width: 51.28vw;
	}

	.top_sns .title_box .title .text.small {
		display: inline-block;
		font-size: 5.64vw;
		margin-left: 6px;
	}

	.top_sns .title_box .title .brown {
		font-size: 9.23vw;
	}

	.top_sns .title_box .title .text {
		font-size: 6.92vw;
	}

	.top_sns .lead {
		display: none;
	}

	.top_sns .container {
		margin-top: 36px;
		grid-template-columns: repeat(1, 1fr);
	}

	.top_sns .insta_box {
		padding-right: initial;
		padding-bottom: 50px;
		border-bottom: 2px dashed #707070;
	}

	.top_sns .insta_box .title {
		font-size: 7.69vw;
		padding-left: 11.02vw;
	}

	.top_sns .insta_box .title::before {
		width: 7.43vw;
		top: 3px;
	}

	.top_sns .insta_box .insta_widget {
		position: relative;
		margin-top: 4vw;
	}

	.top_sns .search_form {
		margin-top: 9px;
	}

	.top_sns .search_form button {
		right: 16px;
	}

	.top_sns .youtube_box {
		padding-left: initial;
		border-left: initial;
		padding-top: 37px;
	}

	.top_sns .insta_box .items {
		margin-top: 20px;
		gap: 14px;
	}

	.top_sns .insta_box .items a {
		border-radius: 12px;
	}

	.top_sns .youtube_box .items {
		margin-top: 7px;
	}

	.top_sns .youtube_box .item {
		padding-top: 7px;
		gap: 14px;
		border-bottom: initial;
	}

	.top_sns .youtube_box .item:not(:last-child) {
		border-bottom: initial;
		padding-bottom: 7px;
	}

	.top_sns .youtube_box .title {
		font-size: 7.69vw;
		padding-left: 11.02vw;
	}

	.top_sns .youtube_box .title::before {
		width: 7.43vw;
		top: 50%;
		transform: translateY(-50%);
	}

	/*topお知らせ*/
	.top_news {
		padding-top: 73px;
		padding-bottom: 85px;
	}

	.top_news .container {
		display: block;
	}

	.top_news .title_box {
		text-align: center;
	}

	.top_news .title_en {
		font-size: 4.61vw;
	}

	.top_news .title_jp {
		font-size: 6.92vw;
	}

	.top_news .lead {
		margin-top: 13px;
		font-size: 3.33vw;
	}

	.top_news .lists {
		margin-top: 20px;
	}

	.top_news .list a {
		padding: 16px 15px 18px 15px;
	}

	.top_news .list a::before {
		content: none;
	}

	.top_news .list a::after {
		content: none;
	}

	.top_news .list .date {
		font-size: 3.33vw;
	}

	.top_news .list .title {
		margin-top: 9px;
		font-size: 3.58vw;
		-webkit-line-clamp: 2;
		/* 行数指定 */
	}

	.top_news .list .text {
		margin-top: 5px;
		font-size: 3.33vw;
	}

	.top_news .btn {
		max-width: 210px;
		margin-inline: auto;
	}

	.footer {
		padding-top: 54px;
		padding-bottom: 38px;
	}

	.footer .top_container {
		padding-bottom: 30px;
	}

	.footer .top_wrapper {
		flex-direction: column;
		gap: initial;
	}

	.footer .top_wrapper .map {
		margin-top: 20px;
		flex: initial;
		border-radius: 14px;
		order: 2;
	}

	.footer .top_wrapper .map iframe {
		aspect-ratio: 350 / 190;
		border-radius: 14px;
	}

	.footer .content_box {
		display: contents;
	}

	.footer .logo_box {
		text-align: center;
		order: 1;
	}

	.footer .top_wrapper .head {
		margin-top: initial;
		font-size: 3.33vw;
	}

	.footer .top_wrapper .logo {
		margin-top: 9px;
		width: 59.48vw;
		margin-inline: auto;
	}

	.footer .top_wrapper .address {
		margin-top: 9px;
		text-align: center;
		font-size: 3.33vw;
		order: 3;
	}

	.footer .top_wrapper .address .text {
		margin-top: 8px;
	}

	.footer .sns_box {
		margin-top: 20px;
		width: 60vw;
		margin-inline: auto;
		order: 5;
	}

	.footer .top_wrapper .sns {
		gap: 12px;
		display: flex;
		justify-content: center;
	}

	.footer .top_wrapper .sns .sns_item {
		width: 70px;
		height: 70px;
	}

	.footer .top_wrapper .sns .sns_item.youtube img {
		width: 45px;
	}

	.footer .top_wrapper .sns .sns_item.insta img {
		width: 40px;
	}

	.footer .top_wrapper .sns .sns_item.line img {
		width: 40px;
	}

	.footer .top_wrapper .text_box {
		margin-top: 21px;
		order: 4;
		padding: 15px;
	}

	.footer .top_wrapper .text_box .text {
		font-size: 3.33vw;
	}

	.footer .bottom_wrapper {
		display: none;
	}

	.footer .middle_container {
		padding-top: 29px;
	}

	.footer .search_title {
		font-size: 3.58vw;
	}

	.footer .link_items {
		gap: 10px 29px;
	}

	.footer .link_item a {
		font-size: 3.33vw;
	}

	.footer .middle_container .wrapper+.wrapper {
		margin-top: 20px;
	}

	.footer .bottom_container {
		margin-top: 55px;
	}

	.footer .bottom_container .box {
		justify-content: center;
		gap: 47px;
	}

	.footer .bottom_container .copyright {
		margin-top: 13px;
		text-align: center;
		margin-left: initial;
		display: block;
	}

	/*下層ページ*/

	.support {
		padding-bottom: 60px;
	}

	.support .title_box .title {
		font-size: 6.15vw;
	}

	.support .title_box .title .big {
		font-size: 8.84vw;
	}

	.support .lead {
		font-size: 3.33vw;
	}

	.support .cards {
		grid-template-columns: repeat(1, 1fr);
		gap: 30px;
	}

	.support .card .image .number {
		width: 10.25vw;
		height: 10.25vw;
		font-size: 5.12vw;
	}

	.support .card .title {
		font-size: 3.84vw;
	}

	.support .card .text {
		font-size: 2.82vw;
	}

	.about_service_bg {
		padding-top: 30px;
		padding-bottom: 30px;
	}

	.about_service_bg::before {
		background: url(../image/page-bg-top-sp.png) no-repeat center center / cover;
		aspect-ratio: 780 / 140;
	}

	.about_service_bg::after {
		background: url(../image/page-bg-bottom-sp.png) no-repeat center center / cover;
		aspect-ratio: 780 / 140;
	}

	.about_service_bg .page_bg {
		padding-bottom: 100px;
	}

	.about_service_bg .page_bg::after {
		width: 11.53vw;
		left: 20px;
		bottom: -10px;
	}

	.about {
		padding-top: 60px;
		padding-bottom: 205px;
	}

	.about::before {
		width: 51px;
		top: initial;
		bottom: 80px;
		right: 0;
		z-index: 1;
	}

	.about::after {
		width: 63px;
		top: initial;
		left: 0;
		bottom: 0;
		z-index: 1;
	}

	.about .img1_box {
		top: initial;
		left: -20px;
		bottom: -180px;
	}

	.about .img1 {
		position: relative;
		width: 230px;
	}

	.about .img1 img {
		aspect-ratio: 230 / 140;
	}

	.about .img1::before {
		top: 6px;
		left: 6px;
	}

	.about .title_en {
		font-size: 5.12vw;
	}

	.about .title_jp {
		font-size: 3.33vw;
	}

	.about .title_jp::before {
		width: 62.05vw;
	}

	.about .head {
		margin-top: 16px;
		font-size: 5.64vw;
	}

	.about .head span {
		font-size: 6.92vw;
	}

	.about .wrapper {
		margin-top: 19px;
	}

	.about .lead {
		font-size: 4.10vw;
	}

	.about .lead::before {
		width: 100%;
	}

	.about .text {
		margin-top: 17px;
		font-size: 3.33vw;
		letter-spacing: 0.13em;
	}

	.about .img2_box {
		bottom: -200px;
	}

	.about .img2 {
		width: 100px;
	}

	.about .img2::before {
		top: -6px;
		right: 6px;
	}

	.page_support .page_cta {
		margin-top: 50px;
		padding-bottom: 0;
	}


	.thought {
		padding-top: 80px;
	}

	.thought .wrapper {
		flex-direction: column;
		align-items: initial;
		gap: initial;
	}

	.thought .image {
		margin-top: 20px;
		flex: initial;
		width: 100%;
		order: 2;
	}

	.thought .image::after {
		width: 15.3vw;
		right: -10px;
		bottom: -10px;
	}

	.thought .image img {
		aspect-ratio: 2 / 1;
		object-fit: cover;
		object-position: top;
	}

	.thought .body {
		display: contents;
	}

	.thought .title_box {
		order: 1;
	}

	.thought .title_box .head {
		font-size: 3.58vw;
	}

	.thought .title_box .title {
		margin-top: 4px;
		font-size: 4.61vw;
	}

	.thought .text {
		order: 3;
		font-size: 3.33vw;
	}

	.page_cta {
		margin-top: 40px;
		padding-bottom: 30px;
	}

	.page_cta .cta::before {
		width: 10.25vw;
		bottom: -10px;
		right: 0;
	}

	.service {
		padding-top: 65px;
		padding-bottom: 0;
	}

	.service .lead {
		margin-top: 14px;
		font-size: 3.33vw;
	}

	.service .cards_sp {
		margin-top: 30px;
	}

	.service .card+.card {
		margin-top: 15px;
	}

	.service .card a {
		padding: 14px 15px 20px;
	}

	.service .card .head {
		font-size: 3.33vw;
		padding: 2px 14px 3px;
		top: 25px;
		left: 48%;
	}

	.service .cards_sp .card .top {
		display: flex;
		flex-direction: row-reverse;
		justify-content: start;
		gap: 21px;
	}

	.service .card .title_box {
		margin-top: 35px;
	}

	.service .card .title {
		font-size: 5.12vw;
		padding-left: 2px;
		padding-right: 2px;
	}

	.service .card .title .big {
		font-size: 6.66vw;
	}

	.service .card .img {
		flex: 0 0 23.07vw;
		margin-top: initial;
	}

	.service .card .img img {
		aspect-ratio: 90 / 90;
		width: 100%;
		height: auto;
		object-fit: cover;
	}

	.service .card .body {
		margin-top: 10px;
	}

	.service .card .text {
		font-size: 3.33vw;
		background-color: #F7FDF9;
		border-radius: 12px;
		padding: 11px 10px;
		letter-spacing: 0.11em;
	}

	.service .card .btn {
		margin-top: 3px;
	}

	.service .card .btn p {
		padding-top: 13px;
		padding-bottom: 13px;
		font-size: 3.58vw;
	}

	.service .top_service_pagination {
		bottom: -35px;
		gap: 10px;
	}

	.service .top_service_page {
		margin: 0;
		width: 9px;
		height: 9px;
		background-color: #D6D6D6;
	}

	.service .top_service_page.is-active {
		transform: scale(1);
		background-color: #B19C7F;
	}

	.service .top_service_arrow {
		width: 32px;
		height: 32px;
		background-color: #8D6A3A;
		opacity: 1;
		top: initial;
		transform: initial;
		bottom: -40px;
	}

	.service .top_service_prev {
		left: 105px;
		bottom: -45px;
	}

	.service .top_service_next {
		right: 105px;
		bottom: -45px;
	}

	.service .top_service_prev::before {
		content: "";
		position: absolute;
		clip-path: polygon(100% 0%, 0% 50%, 100% 100%);
		width: 11px;
		height: 15px;
		background-color: #fff;
		left: 9px;
	}

	.service .top_service_next::before {
		content: "";
		position: absolute;
		clip-path: polygon(0% 0%, 100% 50%, 0% 100%);
		width: 11px;
		height: 15px;
		background-color: #fff;
		right: 9px;
	}

	.recommended {
		padding-top: 58px;
		padding-bottom: 70px;
		overflow: hidden;
	}

	.recommended .common_section_title .title_jp {
		padding-bottom: 3px;
	}

	.recommended .common_section_title .title_jp::before {
		max-width: 49.74vw;
	}

	.recommended .lead {
		margin-top: 15px;
		font-size: 3.33vw;
	}

	.recommended .wrapper {
		margin-top: 20px;
	}

	.recommended .cards {
		display: grid;
		grid-template-columns: repeat(4, 1fr);
		gap: 20px;
		overflow-x: scroll;
		padding: 4px 1px;
	}

	.recommended .cards::-webkit-scrollbar {
		display: none;
	}

	.recommended .card {
		box-shadow: 0 1px 4px #0000001A;
	}

	.recommended .card::before {
		width: 22px;
		height: 22px;
		top: initial;
		transform: initial;
		bottom: 20px;
		right: 20px;
		background-color: #A4BE39;
	}

	.recommended .card::after {
		width: 7px;
		height: 10px;
		top: initial;
		transform: initial;
		bottom: 26px;
		right: 26px;
		background-color: #fff;
	}

	.recommended .card a {
		flex-direction: column;
		padding: 20px 20px 16px;
		gap: 11px;
	}

	.recommended .card .img {
		flex: initial;
		width: 260px;
	}

	.recommended .card .img img {
		aspect-ratio: 260 / 170;
		width: 100%;
		height: auto;
		object-fit: cover;
	}

	.recommended .card .body {
		padding-right: initial;
	}

	.recommended .card .body::before {
		content: none;
	}

	.recommended .card .category {
		margin-top: initial;
		font-size: 12px;
	}

	.recommended .card .name {
		margin-top: 2px;
		font-size: 17px;
	}

	.recommended .card .price_pc {
		display: none;
	}

	.recommended .card .address_box {
		background-color: initial;
		padding: initial;
		margin-top: 9px;
	}

	.recommended .card .address {
		padding-left: 25px;
	}

	.recommended .card .access {
		padding-left: 25px;
	}

	.recommended .card .price_sp {
		display: block;
		margin-top: 15px;
		font-family: "Roboto", sans-serif;
		font-weight: 700;
		font-size: 25px;
		line-height: 1.35;
		letter-spacing: 0;
		color: #A0BC2B;
	}

	.recommended .card .price_sp span {
		font-size: 15px;
		line-height: 0.76;
	}

	.recommended .btn {
		margin-top: 30px;
	}

	.recommended .btn .common_btn {
		min-width: 210px;
		padding: 17px 19px;
	}

	.faq {
		padding-top: 40px;
		padding-bottom: 10px;
	}

	.faq .lead {
		margin-top: 10px;
		font-size: 3.33vw;
	}

	.faq .cards {
		margin-top: 20px;
		grid-template-columns: repeat(1, 1fr);
	}

	.faq .card .title {
		font-size: 3.84vw;
	}

	.faq .card .title .big {
		font-size: 5.76vw;
	}

	.faq .card .title .middle {
		font-size: 4.61vw;
	}

	.faq .card .item .head {
		font-size: 3.58vw;
	}

	.faq .card .item .head::before {
		font-size: 22px;
		left: 16px;
	}

	.faq .card .item .head::after {
		width: 38px;
		height: 38px;
		left: 5px;
	}

	.faq .card .item .text {
		margin-top: 8px;
		font-size: 2.56vw;
		min-height: initial;
	}

	.faq .card .item .text::before {
		font-size: 22px;
	}

	/*会社概要sp*/
	.page_company .philosophy {
		padding-top: 60px;
		padding-bottom: 40px;
	}

	.page_company .philosophy .wrap_wide {
		max-width: initial;
		width: 90%;
	}

	.page_company .philosophy .wrapper {
		margin-top: 25px;
		display: block;
		padding-left: initial;
	}

	.page_company .philosophy .text_box {
		width: 100%;
	}

	.page_company .philosophy .text {
		font-size: 3.33vw;
	}

	.page_company .philosophy .box {
		margin-top: 10px;
		padding: 8px 16px;
	}

	.page_company .philosophy .box .head {
		font-size: 3.58vw;
	}

	.page_company .philosophy .box .text {
		margin-top: 5px;
		font-size: 3.33vw;
	}

	.page_company .philosophy .image_box {
		margin-top: 20px;
		width: 100%;
	}

	.page_company .philosophy .image_box img {
		aspect-ratio: 2 / 1;
		border-radius: 20px;
	}

	.page_company .message {
		padding-top: 60px;
		padding-bottom: 20px;
	}

	.page_company .message .wrapper {
		margin-top: 20px;
		flex-direction: column-reverse;
		align-items: initial;
	}

	.page_company .message .image_box {
		margin-top: 20px;
		width: 100%;
	}

	.page_company .message .image_box::before {
		top: 6px;
		left: 6px;
	}

	.page_company .message .text_box {
		width: 100%;
		padding-left: initial;
	}

	.page_company .message .text {
		font-size: 3.33vw;
	}

	/*会社概要*/
	.page_company .overview {
		padding-top: 80px;
		padding-bottom: 20px;
	}

	.page_company .overview table {
		margin-top: 20px;
	}

	.page_company .overview table tr {
		display: flex;
		flex-direction: column;
		border-bottom: 1px dashed #A4BE39;

	}

	.page_company .overview table th {
		width: 100%;
		font-size: 3.58vw;
		padding-top: 10px;
		padding-left: 10px;
		padding-right: 10px;
		padding-bottom: initial;
	}

	.page_company .overview table td {
		width: 100%;
		font-size: 3.33vw;
		padding: 10px;
	}

	/*不動産購入*/
	.page_purchase .flow {
		padding-top: 60px;
		padding-bottom: 0;
	}

	.page_purchase .flow .lists {
		margin-top: 30px;
	}

	.page_purchase .flow .list:not(:last-child):before {
		width: 40px;
		height: 15px;
		bottom: -35px;
	}

	.page_purchase .flow .list+.list {
		margin-top: 60px;
	}

	.page_purchase .flow .list .title_box {
		padding: 10px 15px;
		border-radius: 8px;
	}

	.page_purchase .flow .list .title_box::before {
		width: 10.25vw;
		top: -10px;
	}

	.page_purchase .flow .list:nth-child(even) .title_box::before {
		width: 7.69vw;
	}

	.page_purchase .flow .list .title_en {
		font-size: 3.33vw;
		padding-left: 6.41vw;
	}

	.page_purchase .flow .list .title_en::before {
		width: 5.12vw;
	}

	.page_purchase .flow .list .title_jp {
		font-size: 4.10vw;
		padding-left: 3.84vw;
	}

	.page_purchase .flow .list .text {
		font-size: 3.33vw;
		padding-top: 10px;
		padding-left: initial;
		padding-right: initial;
	}

	.page_purchase .flow .list .body {
		margin-top: 10px;
		flex-direction: column;
	}

	.page_purchase .flow .list .body .image {
		flex: initial;
	}

	.page_purchase .flow .list .body .image img {
		aspect-ratio: 2 / 1;
		border-radius: 8px;
	}

	/*スタッフ紹介一覧*/

	.page_staff .staff_archive {
		padding-top: 60px;
		padding-bottom: 20px;
	}

	.page_staff .staff_list {
		margin-top: 30px;
	}

	.page_staff .staff_list::before {
		width: 60px;
		top: -80px;
		right: -10px;
	}

	.page_staff .staff_list::after {
		width: 50px;
		left: 0;
		bottom: -60px;
	}

	.page_staff .staff_list .items {
		grid-template-columns: repeat(2, 1fr);
		gap: 30px 20px;
	}

	.page_staff .staff_list .item .image_box::before {
		top: 6px;
		left: 6px;
	}

	.page_staff .staff_list .item .text_box .position {
		font-size: 3.33vw;
	}

	.page_staff .staff_list .item .text_box .name {
		font-size: 4.10vw;
	}

	.page_staff .staff_list .item .text_box .text {
		font-size: 3.33vw;
	}

	/*スタッフ紹介　詳細*/
	.page_staff_single .staff_single {
		padding-top: 60px;
		padding-bottom: 60px;
	}

	.page_staff_single .staff_single .staff_box {
		flex-direction: column;
	}

	.page_staff_single .staff_single .staff_box .image {
		width: 100%;
	}

	.page_staff_single .staff_single .staff_box .image img {
		aspect-ratio: 3 / 2;
		width: 100%;
		height: auto;
		object-fit: cover;
	}

	.page_staff_single .staff_single .staff_box .text_box {
		padding-left: initial;
		width: 100%;
		margin-top: 15px;
	}

	.page_staff_single .staff_single .staff_box .text_box .lists {
		margin-top: 15px;
	}

	.page_staff_single .staff_single .staff_box .text_box .list {
		flex-direction: column;
		align-items: initial;
		padding-top: 10px;
		padding-bottom: 10px;
	}

	.page_staff_single .staff_single .staff_box .text_box .list .main_text {
		font-size: 4.2vw;
	}

	.page_staff_single .staff_single .staff_box .text_box .list .label {
		flex: initial;
		font-size: 3.33vw;
	}

	.page_staff_single .staff_single .staff_box .text_box .list .value {
		margin-top: 10px;
		flex: initial;
		font-size: 3.58vw;
	}

	.page_staff_single .staff_message {
		padding-top: 40px;
		padding-bottom: 60px;
	}

	.page_staff_single .staff_message::before {
		width: 40px;
		top: -20px;
		right: 0;
	}

	.page_staff_single .staff_message::after {
		width: 60px;
		left: 0;
		bottom: 10px;
	}

	.page_staff_single .staff_message .box {
		flex-direction: column-reverse;
		gap: 20px;
		padding: 10px;
	}

	.page_staff_single .staff_message .box:nth-child(even) {
		flex-direction: column-reverse;
	}


	.page_staff_single .staff_message .text_box {
		width: 100%;
	}

	.page_staff_single .staff_message .image {
		width: 100%;
	}

	.page_staff_single .staff_message .image img {
		aspect-ratio: 3 / 2;
	}

	.page_staff_single .staff_message .head {
		font-size: 4.61vw;
	}

	.page_staff_single .staff_message .text {
		margin-top: 10px;
		font-size: 3.33vw;
	}

	/*リノベーションについて*/

	.page_renovation .difference {
		padding-top: 60px;
		padding-bottom: 40px;
	}

	.page_renovation .difference .common_section_title .title_jp {
		line-height: 1.5;
	}

	.page_renovation .difference .wrapper {
		margin-top: 40px;
	}


	.page_renovation .difference .box {
		flex-direction: column-reverse;
		gap: 20px;
	}

	.page_renovation .difference .box:nth-child(even) {
		flex-direction: column-reverse;
	}


	.page_renovation .difference .box .image {
		width: 100%;
	}

	.page_renovation .difference .box .text_box {
		width: 100%;
	}


	.page_renovation .difference .box .text_box .title {
		font-size: 5.12vw;
	}

	.page_renovation .difference .box .text_box .text {
		margin-top: 10px;
		font-size: 3.58vw;
	}

	.page_renovation .construction_flow {
		padding-top: 60px;
	}

	.page_renovation .construction_flow .common_section_title .title_jp {
		line-height: 1.5;
	}

	.page_renovation .construction_flow .lead {
		margin-top: 14px;
		font-size: 3.33vw;
	}

	.page_renovation .construction_flow .cards {
		margin-top: 30px;
		grid-template-columns: repeat(2, 1fr);
		gap: 25px 10px;
	}

	.page_renovation .construction_flow .card {
		padding: 15px 5px;
		border-radius: 15px;
	}

	.page_renovation .construction_flow .card:not(:last-child):before {
		content: none;
	}

	.page_renovation .construction_flow .card .head {
		font-size: 3.33vw;
		padding: 2px 14px 3px;
		top: -10px;
		left: 48%;
	}

	.page_renovation .construction_flow .cards_sp .card .top {
		display: flex;
		flex-direction: row-reverse;
		justify-content: start;
		gap: 21px;
	}

	.page_renovation .construction_flow .card .title_box {
		margin-top: 10px;
	}

	.page_renovation .construction_flow .card .title {
		font-size: 4.10vw;
		padding-left: 2px;
		padding-right: 2px;
	}

	.page_renovation .construction_flow .card .img {
		margin-top: 10px;
	}

	.page_renovation .construction_flow .card .img img {
		aspect-ratio: 2 / 1;
		width: 100%;
		height: auto;
		object-fit: cover;
	}

	.page_renovation .construction_flow .card .body {
		margin-top: 10px;
	}

	.page_renovation .construction_flow .card .text {
		font-size: 3.33vw;
		background-color: #F7FDF9;
		border-radius: 12px;
		padding: 10px 5px;
		letter-spacing: 0.11em;
	}

	.page_renovation .construction_flow .top_service_pagination {
		bottom: -35px;
		gap: 10px;
	}

	.page_renovation .construction_flow .top_service_page {
		margin: 0;
		width: 9px;
		height: 9px;
		background-color: #D6D6D6;
	}

	.page_renovation .construction_flow .top_service_page.is-active {
		transform: scale(1);
		background-color: #B19C7F;
	}

	.page_renovation .construction_flow .top_service_arrow {
		width: 32px;
		height: 32px;
		background-color: #8D6A3A;
		opacity: 1;
		top: initial;
		transform: initial;
		bottom: -40px;
	}

	.page_renovation .construction_flow .top_service_prev {
		left: 105px;
		bottom: -45px;
	}

	.page_renovation .construction_flow .top_service_next {
		right: 105px;
		bottom: -45px;
	}

	.page_renovation .construction_flow .top_service_prev::before {
		content: "";
		position: absolute;
		clip-path: polygon(100% 0%, 0% 50%, 100% 100%);
		width: 11px;
		height: 15px;
		background-color: #fff;
		left: 9px;
	}

	.page_renovation .construction_flow .top_service_next::before {
		content: "";
		position: absolute;
		clip-path: polygon(0% 0%, 100% 50%, 0% 100%);
		width: 11px;
		height: 15px;
		background-color: #fff;
		right: 9px;
	}

	.page_renovation .achievement {
		padding-top: 60px;
		padding-bottom: 60px;
	}

	.page_renovation .achievement .cards {
		margin-top: 30px;
		grid-template-columns: repeat(1, 1fr);
		gap: 20px;
	}

	.page_renovation .achievement .card {
		padding: 15px 10px;
		border-radius: 15px;
	}

	.page_renovation .achievement .card .images {
		gap: 10px;
	}

	.page_renovation .achievement .card .head {
		font-size: 4.10vw;
		padding-bottom: 5px;
	}

	.page_renovation .achievement .card .image img {
		border-radius: 15px;
	}

	.page_renovation .achievement .card .title {
		margin-top: 8px;
		font-size: 3.58vw;
	}

	.page_renovation .achievement .card .text_comment {
		font-size: 3.33vw;
		padding: 10px;
	}

	.page_renovation .achievement .card .text {
		font-size: 3.33vw;
	}

	.page_renovation .achievement .btn_box {
		margin-top: 40px;
	}

	.page_renovation .plan_menu {
		padding-top: 60px;
		padding-bottom: 60px;
	}

	.page_renovation .plan_menu .image {
		margin-top: 20px;
	}

	.page_renovation .plan_menu .wrapper {
		margin-top: 20px;
		grid-template-columns: repeat(1, 1fr);
		gap: 20px;
	}

	.page_renovation .plan_menu .wrapper .box {
		padding: 15px;
		border-radius: 15px;
	}

	.page_renovation .plan_menu .wrapper .box::before {
		border-radius: 15px;
	}

	.page_renovation .plan_menu .wrapper .box .title {
		font-size: 4.10vw;
	}

	.page_renovation .plan_menu .wrapper .box .price {
		margin-top: 8px;
		font-size: 4.10vw;
	}

	.page_renovation .plan_menu .wrapper .box .price span {
		font-size: 6.15vw;
	}

	.desktop {
		display: none;
	}

	.mobile {
		display: block;
	}

	.page_assessment .page_assessment_cont {
		grid-template-columns: 1fr;
		gap: 4vw;
	}

	.page_assessment .page_assessment_cont .assessment_btn {
		padding: 4vw;
		flex-direction: row;
		gap: 3.8vw;
		justify-content: flex-start;
	}

	.page_assessment .page_assessment_cont .assessment_btn .icon {
		width: 8vw;
		height: 8vw;
		flex-shrink: 0;
	}

	.page_assessment .page_assessment_cont .assessment_btn .letter {
		font-size: 3.8vw;
		margin-top: 0;
	}

	.page_single_renovation .ttl {
		font-size: 5.5vw;
		border-bottom: 3px solid #A37B44;
	}

	.page_single_renovation .single_renovation_cont {
		grid-template-columns: 1fr;
		gap: 6vw;
	}

	.page_single_renovation .single_renovation_cont .tab_area {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: 1.5vw;
	}

	.page_single_renovation .single_renovation_cont .tab_area .tab {
		background-color: #fff;
		border: 2px solid #A37B44;
		border-bottom: none;
		font-size: 3.5vw;
		line-height: 1;
		padding: .7em;
		text-align: center;
		border-radius: 5px 5px 0 0;
		color: #A37B44;
		font-weight: 700;
		cursor: pointer;
	}

	.page_single_renovation .single_renovation_cont .tab_area .tab.active {
		background-color: #A37B44;
		color: #fff;
	}

	.page_single_renovation .single_renovation_cont .panel_area .img_list {
		display: none;
		padding: 3vw;
		border: 2px solid #A37B44;
		background-color: #fff;
		grid-template-columns: repeat(3, 1fr);
		gap: 2vw;
	}

	.page_single_renovation .single_renovation_cont .panel_area .img_list.active {
		display: grid;
	}

	.page_single_renovation .single_renovation_cont .panel_area .img_list .img {
		aspect-ratio: 4/3;
		border-radius: 5px;
		overflow: hidden;
		display: block;
	}

	.page_single_renovation .single_renovation_cont .panel_area .img_list .img img {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}

	.page_single_renovation .single_renovation_cont .ba_img_area .inner_ttl {
		font-family: "Patua One", serif;
		font-weight: 700;
		font-size: 22px;
		line-height: 1.25;
		letter-spacing: 0;
		color: #7B6D64;
		text-align: center;
		margin-bottom: .5em;
	}

	.page_single_renovation .single_renovation_cont .text_area {
		padding: 4vw;
		border-radius: 8px;
	}

	.page_single_renovation .single_renovation_cont .text_area .text {
		font-size: 3.6vw;
	}

	.page_single_renovation .single_renovation_cont .text_area .text_comment {
		margin-top: 1em;
		padding: 3.5vw;
		border-radius: 8px;
		font-size: 3.6vw;
	}

	.top_ban_area {
		padding-bottom: 20vw;
	}

	.top_ban_area .flex_box {
		gap: 4vw;
		width: 100%;
	}
}